LazyVim got me back into vim. After years of custom configs and/or heavily editing lunarvim and nvChad I was getting a bit burnt out but decided to give lazyVim a try, and I was absolutely blown away. For the first time a vim setup actually felt like a real IDE. It took about 60 seconds to go from having lazyvim installed to having a fully functional IDE that I could use at work in a real environment. That's the same amount of effort it would have taken me to set up a fresh install of vs code with whatever plug-ins I wanted.
If you've ever been put off by the complexity and setup of nvChad or lunarVim, then I highly suggest giving lazyvim (or astrovim, its similar but with more "batteries included") a try
I don't buy it. I have so many custom little quirks that no ammount of integrated out of the box setup is gonna replace it in 60s. Thats unrealistic. I believe its good, but it must be for certain class of working habits (for example, its probably great for those people that use vanilla anything, including vim).
That's the thing, I absolutely don't want to do a bunch of tiny tweaks. I want to write (react) code. For me personally I feel like tweaking an IDE gets in the way of that. Yet I can take a clean install of lazyvim, use mason to install the react language server, and install copilot, and then I can immediately start working.
And so that's what I actually do, and I find that to be much more pleasant (and lightweight) than other IDEs like VS code.
Can you actually explain how it's suboptimal UX, and what I could be doing better. I want a simple IDE, not suboptimal bloat. I don't need 200 keybinds to make a vue component.
Just because you have a bunch of custom quirks doesn't mean that I do.
The thing about vim and emacs is that both of them, out of the box, suck. BUT, what they both offer better than anything else, is the ability to gradually modify them to match what your brain needs.
I 100% agree with your hyperbolic "200 keybinds to make a view component" But that's ...that's not how it works unless that's what your brain wants.
With ALL editors you eventually encounter "ugh, this is frustrating" or "i wish i didn't have to do that" and then you have 30+ years of plugins and configs you can draw on to modify it to match your liking without any coding. VERY rarely, you'll want to tweak it in a way that there isn't a plugin / config for and you'll find communities of very helpful people who'll respond with "what about this solution..."
The fact is that _your_ brain is different from everyone else's. The less configurable an editor is the less it will be able to support the way your brain likes to work.
You _can_ accept pre-made defaults like those provided by VSCode OR you can gradually refine your editor to be a perfectly crafted tool for your particular and very individual way of thinking.
I choose the latter because i spend SO much time staring at my editor and trying to convince it to do things that are almost always better with automated assistance from it.
In my case, I'd prefer to do so. I'm a different use-case though, I'm a server admin so I want to be as comfortable with bare-bones defaults as possible so that I can jump on any server and just use Vim (or sometime just vi!). I can't afford the time it would take to set up a custom config on every server in every environment, so the most I need is a basic .vimrc that has `set number` and a couple netrw tweaks that I can copy with scp and get going. Most of the time I don't even copy that over and run `:set number` when I open a file.
Note that I'm still an intermediate Vim user at best, splits and markers are the most complex features I use (no macros yet). I know I can edit remote files, so maybe once I'm comfortable with that then I can set up some real customization in each environment.
Sysadm here as well, been using vi since the '80s. A year or so ago I threw away all my custom vimrc and went with (nearly) bone stock LunarVim, and have really enjoyed getting off the treadmill of maintaining a custom vim setup. Partly because of the 100s of machines issue, partly because of managing plugins and interactions between them. I program maybe 5% of the time, so the stuff I do to make it IDE-like often isn't worth maintaining for that 5% time, so I often end up with partially working plugins or whatnot.
LunarVIM has been a bit tricky, mostly related to upgrades around LunarVIM, usually neovim updates. But, the capabilities of having Language Server in vim have been so refreshing! Particularly when working with Python 2 code to bring it up to Python 3, pretty much just follow what Language Server says.
When it gets right down to it, there are only a couple little tweaks from my old setup I want to carry over, everything else I want to go back to using defaults (places where I've diverged my own functionality) and stop pushing around a poorly maintained manual config that gives me 10% of what Lunar or similar gives.
One of the things I noticed about LunarVim is that they were not very receptive about it in the official NeoVim rooms whereas people there (including NeoVim developers) were quite positive about LazyVim. The other alternative they suggested was https://github.com/echasnovski/mini.nvim
TLDR is that with the global lvim object, custom path, breakages because of unstable plugins it causes a lot of support issues where people go to the official NeoVim channel and not the LunarVim one.
I switched to LazyVim, which is developed by folke (one of the main developers of most of the plugins (trouble.nvim, tokyonight, which-key, lazy.nvim etc) https://github.com/folke?tab=repositories) the other "vim distributions" use anyway.
I'm also very happy I only maintain now "one configuration", I really disliked having "nvim" and "lvim" simultaneously on the same machine.
The method of checking out the "starter" repo https://www.lazyvim.org/installation and simply deleting the .git folder is a LOT nicer than an annoying installation script that does a gazillion things (LunarVim).
I've got a painstakingly crafted neovim config that approximately works how I want it to, most of the time, and I'm happy with it. But it's taken a while, a lot of nights inevitably spent mucking with plugins and LSP and gluing it all together instead of working on more rewarding things.
I'd be lying if I said I'd never thrown something at a wall in frustration due to vim acting in some bizarre, inexplicable way and not knowing why, although that definitely happens less nowadays with nvim.
I hadn't heard of lazyvim until the other day and I doubted I'd really need it, but now that I know it's something new from folke, I'm gonna have to give it a shot. Always quality stuff from him -- dude is a machine, when does he sleep?
Exactly. You absolutely need maximum configurability for the most important tools in your arsenal. You can pass with defaults on less used tools but everyday stuff should be as efficient as possible. In my case those tools are editor, shell, browser, OS, media player - they are customized extensivelly.
Any time somebody else creates something instead of you, it must be accepted as suboptimal. We are all unique human beeings and have different kinds of habits and disfunctions, levels of knowledge etc. so 1 setup for all is pretty much impossible and nobody else can do it but you. Any time you accept that, you are accepting suboptimal UX. If you are doing so you are admiting that you are either lazy, or you are good with your potential being maxed out at that point (if you are accepting anything less then most efficent workflow, given that time is the most precious resource).
Actually, when I look at how most of my colegues are slow using their tools of choice, even senior ones, I imagine I would rather kill myself then using such setup.
On the flip side, I've been using VIM/emacs for over a dozen years, and have gone from extensive user made configs to these starter packs (DOOM Emacs with some custom stuff on top). I mean I'm happy with a well thought out "total conversion" of emacs. I learn the UX on top (that is really nice) and I add my own. If I started from scratch it would probably be sub-optimal ( I mean I could recreate DOOM, but why?)
Or rather it's a matter of trade-offs and some things are just "good enough". It's not up to you what's good enough for him or me, especially weighed against the amount of effort I might have to invest to get something that's "optimal" for me.
Cant wait until you create your programming language to use in the company you created racking up the optimal millions while laughing at us lazy slobs!
Maybe YOU should stop calling other people lazy for something actually very productive, aka not wasting million hours tinkering with lua for marginal returns over investment, often on company time…
Just because it’s predefined doesn’t mean it’s suboptimal. On the contrary - anything I do myself likely has less about of thought and consideration from an officially published configuration.
That is just not true. Anything not customized to your specific need and context is certainly more complex and bloated. "Officially published" is a common falacy (resorting to authority)
Agreed. Back then, I tried to get into neovim with packer and a ton of plugins, then tried AstroVim and stuff broke all the time. Went back to vscode.
I tried it again about half a year ago with a much leaner, custom lazy (plugin manager, not LazyVim) setup, and now it's my main IDE for everything except C++ (clangd sucks, sorry)
It took me less than a day to get a decent config, and now I rarely touch it (occasionally there may be a nice plugin to throw in). Config is about 2-300 lines, with LSP (rust, typescript), harpoon, oil.nvim telescope, etc. Works great.
I had the same issues with AstroVim when it was first coming together. Looks like the creator was rapidly iterating to try and make it easier to configure.
It’s now in a stable enough state that I haven’t had any issues.
That's interesting to me since I've been using close-to-vanilla lunarvim for the past year and it's been great. I'm just not into customizing my editor much, and only touch my config when I'm annoyed by something. This seems to be your goal as well. Can I ask then what makes lazyvim easier or quicker to set up how you want?
I found lunarvim to just not work that well for web development out of the box (if I tried doing anything past vanilla JS), and I have no interest in learning about lunarvim specific things like the lvim global object to be able to tweak it.
With LazyVim I basically got rid of the both, and now my vim config is literally a few overrides https://www.lazyvim.org/configuration/general that are not distribution specific at all.
How's the latency when doing live performances or just practicing piano? Because recently I've stopped doing much production and moved from using DAWs to lighter programs like Gig Performer since I'm more of a pianist than a producer, I use like 5 plugins max (a modeled piano with a few effects like reverb and comp) and I'd be interested in a Linux alternative if the delay isn't going to annoy me during practice.
For now using Native Instruments without any configuration i don't have a good enough latency for performance. However i didn't follow yet Archlinux's pro-audio tutorial to use realtime capabilities and improve latency (i didn't have time yet). Before i used a Yamaha p-125 with its internal sounds directly redirected through the usb connection to Ardour which was amazing for practicing and live performance (it was still under Jack I think, i switched to Pipewire this year). (Although need to be careful the p125-a removed all those nice features). With fewer, linux based virtual instrument/plugin, latency would be less of an issue, but honestly i didn't take enough time yet on it to give you a viable answer. I am also more of a pianist than a producer, i still prefer a real piano when i can over any virtual appliances for performance, although as I said a Yamaha p-125 is quite alright for that purpose too (i don't know well Roland's equivalents). I know Pianoteq has some Linux native virtual instruments which are very good i heard. If you only play piano i would look into that, before paying they must have some demo version.
If you want more information and help, we could stay in contact I would be pleased to help and see if we can find any ways to make it work for your needs. But basically what I would do is: based on the distro you want to use, configure it for real time and pro-audio according to the community recommendations. Then depending on your needs for the virtual instruments, see whether specific plugins increase latency to a level that is sustainable or not for your usage. I could do some testing if i have time. Anyway it was my next step to look into for my new native instruments setup.
Forget everything I said.
I just spent an hour trying to fix things because you motivated me.
I found out there was an issue with my Focusrite and my pipewire config.
By setting the config to "Pro-Audio" in PAVU (Pulse-Audio Volume Control) in the configuration tab for my interface and disabling all others. As well as changing the the `jack.conf` with according node latency that I copied from `/usr/share/pipewire/jack.conf` to `/etc/pipewire/jack.conf`, restarting pipewire, wireplumber and disconnect/reconnect my inerface then running `pw-metadata -n settings 0 clock.force-quantum 256` (with the quantom value I set in the `jack.conf`.
I have now amazing latency (5ms) even in Native Instrument.
(of course I did overkill and did all i could find on internet, with more time we could pin down to the few things that really fixed the issue, sorry to send all those informations like that).
Do you think it'd be possible to make a shell script that anyone (running the same distro as you) could run to get all of this working? Alternatively just a readme detailing every single thing you did (and how you did it) would also make for an interesting read.
From the testing I did, the main culprit for the latency I was experiencing with my USB interface and my MIDI controller was the fact that my Pipewire profile wasn't set as `pro audio` (which can be set in PulseAudio Volume Control software in the `Configuration` tab for your USB audio interface).
However as its a full profile, it must be one of the specific setting inside that fixes the issue, but I don't know which one.
I might need to look into Wireplumber settings (the session manager I use for Pipewire instead of the default one `pipewire-sessions-manager`)
On another note, I found out that my focusrite was held back by factory defaults (3rd gen) and needed to follow a procedure to unlock higher samplerate.
Now I am using 1024/192000 Hz and I reach 5.3ms latency without XRuns. (although when the pro audio profile isn't set Ardour would still say that the latency is 5.3 however you can clearly hear its not the case).
Good morning!(i am back from the dead).
I think the best would be that I first pinpoint which parameter was the culprit (also given what I read it might be related to which sound card we use). Then we could see whether a short tutorial or a script would be the best. My first idea was to do an installation video of Archlinux fron scratch for Pro-audio, however i can understand that you would like to use your own distribution. I will try to see tonight (if i have time) what exactly was the issue and then explain how to solve it. Hopefully i could have a better understanding of what happened.
I'm surprised more people aren't talking about this. I'm active in some video game subreddits and I even mod a video game related sub with about 25k subscribers. And on multiple occasions I've had terrible interactions with those big multi-sub moderators. A particularly infamous multi-sub mod (whom you can probably figure out) has threatened me for my subreddit on multiple occasions, making statements like "I'll have you blacklisted from modding other subs". That same exact mod on multiple occasions has deleted my posts from subs he mods, just to reupload them for karma himself. I don't even care about the karma, I just wish mods wouldn't delete my posts that don't break any rules in any way, shape, or form, especially when it's for blatant karma farming.
If you look around Google you can even find several posts of subreddits getting "liberated" of this particular multi sub mod... Something needs to change so this stops happening
This problem became much worse when Covid-19 came around too. Still to this day, there is a mod that will auto ban you from like 30 different subs including /r/pics and others if you so much as make a comment in a sub that they consider "covid minimizing" at all. How on earth reddit continues to allow such actions like that are beyond me.
I have this theory that religion is part of the human psyche, and that in 2023 we have more people that belong to a specific but as of yet unnamed religion than any point in history.
It just doesn’t have a bible, it’s a screen. Requires conformity, but doesn’t have a dress code. There is ceremony seen in emojis. And the priests are people you know are lying but it’s the other guys that are always “the problem”. You are a good person only if you do what you are told.
I agree. But the word 'religion' doesn't fit anymore. It is believe system and the need to be part of a group that one can identify with. Compliance with the set of rules that this group subscribes to gives one an feeling of belonging and identity. The German author Juli Zeh talks about this. We are social animals and with the collapse of basically all societal institutions - not just religion, but also political organizations - we are desperately trying to figure out how we are and how we have to be.
Reddit was behind those actions, dude. It's not about mods. That's tech companies controlling narratives and, specially in the case of covid, happened well beyond Reddit.
Instagram, to name one, was using these "media mods" to basically ban or tag news that they claimed were misinformation. Those media outlets were absolutely pro government in every country and any criticism of covid gov policies was "misinformation".
Don't let the fact that reddit mods can be assholes distract from anti user policies made by reddit pre Ipo
Agreed, although in this case it was a mix of Reddit itself and individual mods. The mods in /r/coronavirus for example got media attention and it was clear that it went right to their heads. They stopped making the mod log public, transparency went out the window, and AutoModerator basically went nuts.
It was so obvious that they wanted to portray a specific narrative and silent any dissent. Absolutely disgusting behavior.
This stuff happens on the mental health subreddits too. Its bad enough to always second guess your own diagnosis but its worse when a mod decides you are excluded from one of the few places that will tentatively accept you.
I have a direct family member that was very ill, thought maybe they were transgender, tried that out, their mental state was not improving, got professional help from a doctor that listened instead of supporting every thought, got a lot better, and spent this year de-transitioning.
I talked a little about their experience and, instantly banned from a handful of Reddit including a ban on my account that I appealed.
Yeah, mental health is so stigmatised that there is little room for the grey, like in your example. A few radicals end up controlling the discussion and most of us, who are too busy with life, are left confused and locked out by the hysteria. I am more sympathetic to those who support trans rights but go too far because the other side is literally calling for their extermination, but the lack of reasonable voices leaves eveyone poorer and disenfranchised.
> the other side is literally calling for their extermination
If literally… citations please.
I ask because I was accused of “supporting genocide” or some such nonsense.
I have not seen anyone literally calling for murder. The point of my post is that I have seen, first hand, people saying it’s rampant out there though. And since I was accused of exactly that, I’d like to see just how real this threat is.
I guess it is very marginal rhetoric. People like De Santis are not actively saying it, although their actions indicate a great deal of opposition. For what it’s worth, I dont think its fair or right that you were blocked for your example. But I think it is the siege mentality of the marginalised trans community that explains why you got blocked.
> But I think it is the siege mentality of the marginalised trans community that explains why you got blocked.
100%. Trans people will talk about all kinds of possibilities and realities with nuance, patience, and insight when they feel safe with the people they're talking to and confident that the discussion is in good faith. But the 'issue' is so hot right now that those conditions are virtually never met in public online spaces.
This creates some serious bias problems in terms of what people get to see. If you're not close to any trans people IRL, most or all you get to hear from trans people will be colored by that 'siege mentality'.
I think it'll unfortunately be several years before that dynamic can change. It may take a generation.
If you've ever been put off by the complexity and setup of nvChad or lunarVim, then I highly suggest giving lazyvim (or astrovim, its similar but with more "batteries included") a try