9 ms·
AstroNvim is an aesthetic and feature-rich Neovim config
- jb1991 4y agoThe vim ecosystem is starting to look a lot like the JavaScript ecosystem, new shiny projects every month! I’m just joking of course, as vim is a far superior entry into world of technology than JavaScript has been, look, I’m joking again!
- BanazirGalbasi 4y agoUnlike Javascript, this isn't a whole new framework that you have to learn all over again. This is just a set of configurations that change the look and feel of NeoVim - which doesn't take re-learning if you're used to Vi/Vim. The whole point of this is that you can install NeoVim as your editor, install this config, and get started without having to customize things yourself. Most people will tweak it as they go in order to fit personal preferences, but this provides a good starting point. It's a _lot_ saner than the JS ecosystem in my opinion.
- jatins 4y agoI spent few weeks playing around with AstroVim and NvChad recently and both of them were pretty good. I personally found NvChad configuration easier to modify. Yet I found myself pretty far from any IDE level configuration that I'd have wanted. It'd have taken me months to get to the level of productivity that Intellij offers on day one. I settled on Intellij with Vim bindings. At this point I just want JetBrains to make a terminal based editor.
- mehalter 4y agoIf you haven't tried out AstroNvim v3.0 yet over the past couple years when you were playing around with AstroNvim I would definitely recommend trying it out. The new v3.0 release made a lot of improvements to the configuration structure to decrease abstraction and make things easier. Although, if you have a setup that you like with NvChad that's definitely a good approach as well. All comes down to personal preference.
- alkori 4y agoWhat did you find missing with nvchad and astroVim? The reason I ask is that I switched from intellij to lunarvim (similar to nvchad) about a year ago, and I felt like it only took me a couple hours to add a few extra keybinds and plugins like trouble.nvim and copilot.lua to make my IDE experience match intellij
- soperj 4y agoThe best part of this is that I don't want to have everything here, but I can pick and choose which pieces I'll actually use!
- buf 4y agoAs a 20+ year vim user, I love seeing new configs come out still. Although I won't be using Astro because I like my current setup, I really enjoy looking through other people's configs.
- rs_rs_rs_rs_rs 4y agoYou can't use this with Vim anyway, it's for Neovim. Edit: why the downvotes? This is a Lua based neovim setup that can't be used with vim.
- noah_buddy 4y agoI think to many neovim users, the term is absolutely synonymous. I don’t know anyone that prefers the feature set of vim to neovim at this point. The benefit of vim/vi is that you will probably have it on most unix systems by default. This comment will probably be a bat signal for vim users though.
- rs_rs_rs_rs_rs 4y agoShould definitely not be synonymous, it just confuses people.
- INTPenis 4y agoOk so the natural question from a long time vim user is; don't all these plugins make (neo)vim less stable and therefore defeats the purpose of using vim in the first place?
- dmix 4y agoAs someone who tried to use Spacevim for a year+ I will say that a) it makes it more stable in a way, instead of your own hyper-custom config that could still break on updating vim/plugins you have a hundred plus other people having the same issues to debug it + a big community finding best of class Vim plugins doing the work of iterating it for you, but b) it's a bit rigid and even with the ability to tweak them you're better off either fully committing or not doing it at all because you'll be caught in between their complex config and your own breaking changes which is the worse of both worlds (as a starting config it's still very useful though). This is ideal for people who can't be bothered to invest the time in a very personalized set up (like Linux desktop VS MacOS) but still want something more powerful and widely accessible than VSCode for most languages (the big exception being VSCode for Typescript/JS, as a Vim obsessed dev I've finally conceded to Code, since that's my day job).
- 3np 4y ago> the big exception being VSCode for Typescript/JS Why? As a neovim user with a lot of ts/js at $job, curious what if I'm missing especially useful (outside of the proprietary live-remote-session stuff)
- dmix 4y agoAlmost entirely because I develop Vue 3 w/ Vite on top of Rails 7 (plus a very opinionated Eslint + Prettier set up) so cutting edge plugin support = key, combined with a team that uses a mix of Vim and other stuff. VSCode's community will always completely dominate Vim for Typescript support and it's far easier to establish VSCode as the standard editor than a mix of custom Vim configs. Even the base Vue VSCode plugin + native TS engine doesn't support my needs for modern Vue 3 <script setup /> syntax without a ton of false positive redline errors. When I switched to using Volar my life became way easier (Neovims LSP plugins are usually a year behind the VSCode native ones let alone plugins): https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin https://marketplace.visualstudio.com/items?itemName=Vue.vsco... Otherwise our Ruby backend devs can use what they want. So can frontend but they'll be constantly fighting the current.
- threatofrain 4y agoWhat do people here think of Helix? https://helix-editor.com https://helix-editor.com
- newaccount2023 4y agoI want to like helix and have tried to daily-drive it it just seems missing so much still a quick example - in emacs, I can do "comment-region" and I will get to comment out a selection with the right comment sequence - afaik even something as simple as that doesn't work in helix so many other things minor modes are important...in emacs I can have spell checking as a "minor mode" when editing markdown...how do I do this in helix? easy support for lsp is fine but that means helix is useless if you don't have lsp for a file format you are working on...like .txt! emacs is still a great TEXT editor maybe one day helix will be an option, not today
- johnchristopher 4y agoIt looks nice and fresh but I don't understand how to quickly add support for a language. hx --health show red crosses everywhere, LSP column has red crosses with elm-lang, elvish, etc. or None. Documentation about adding languages seems more about adding new languages. What should I do to get niceties ? edit: ah, thanks search engine then arch wiki then https://docs.helix-editor.com/languages.html https://docs.helix-editor.com/languages.html then https://github.com/helix-editor/helix/wiki/How-to-install-the-default-language-servers https://github.com/helix-editor/helix/wiki/How-to-install-th...
- doix 4y agoIt gets brought up a lot in vim discussions. It's missing a few major things for me; 1. Tabs (like in vim). I've found only vim and emacs have tabs in a way that makes sense to me. Kakoune also has a cool model, where I can use my window manager (or tmux) to recreate tabs. 2. Code folding, I like to fold everything as soon as I open a file to get an "overview" and then slowly unfold as look into the details. Wasn't in Helix last time I checked. 3. Narrowing. Emacs has it built in [0], (neo)vim requires a plugin [1]. Similar to code folding, when I'm working on a large function, I want to pretend it's the entirety of my buffer. Other than that, I'm not convinced that changing the order of key combinations makes sense. Kakoune did the same, I'm not a fan. I spent too long "thinking" in vim mode. I think it's great at bringing the "floor" up, it's much easier to get productive in helix. But the ceiling is lower than vim. [0] https://www.gnu.org/software/emacs/manual/html_node/emacs/Narrowing.html https://www.gnu.org/software/emacs/manual/html_node/emacs/Na... [1] https://github.com/hoschi/yode-nvim https://github.com/hoschi/yode-nvim
- rektide 4y agoI've shied away from using preassembled vim toolkits, but I saw the pre-release for AstroVim 3.0 (just released) & really appreciated how configuration is now done in each plugin's native format, with AstroVim defaults one can extend (or ignore). Previously AstroVim like many toolkits had it's own configuration system, which was top down & not 1:1 for the plugins. Now there's a much more bottom-up configurability granted to users, and the existing docs on configuring whichever plugin still stand. This has greatly assuage my concerns abouts picking an off the shelf vim toolkit & I've become a happy new AstroVim convert. I also appreciate the leap from the Packer plugin manager — which AstroVim 2 & I had been using — to lazy.nvim. It's much faster & requires much less hand holding. Most work is async, automatically compiled. And LazyVim detects changes & deals with it, rather than needing to kick the plugin manager. Really great set of leading edge tools, well integrated here. Sensible defaults for a lot of good things one would have to wire up themselves. Divine option to have. The switch in configuration style should become a textbook example of core computing principles, is such a night & day practical difference: an example of how dangerous over-encapsulation can be & how nice having a less compositional & more aggregative model can be. There's a decent amount of good discussion on Reddit on the new 3.0: https://old.reddit.com/r/neovim/comments/11ntuef/astronvim_v30_now_with_lazynvim_and_a_plugin/ https://old.reddit.com/r/neovim/comments/11ntuef/astronvim_v...
- alkori 4y agoYou're really doing a good job of selling astroVim. I've been using lunarvim for a year and it's been decent but I'm going to give astroVim a try now. Are there any other vim toolkits that take the astroVim 3.0 approach?
- kjuulh 4y agoLazyVim is also quite minimal and super easy to get started with. There are some defaults which are bothersome but you can just turn them off. I've been using it for a while and it is pretty good. it is by folke I believe the same author of lazy.nvim.
- Offler 4y agoAnother vote for LazyVim, it's been great.
- circularfoyers 4y agoI noticed the credits of the README mention a few other configs I hadn't looked at before including NvChad, LunarVim and CosmicVim. I'll have to try all these at some point to compare them to what I started using not long ago, SpaceVim.
- hummus_bae 4y ago[dead]
- saintfiends 4y agoI'm a long term vim user and now exclusively a neovim user. I adopted this from the first time I came across this. It's pretty neat, it does break from time to time but there's always a GitHub issue describing a workaround. It's pretty stable these days and breaks far less comparatively.
- renewiltord 4y agoIs there a simple way for me to have two configurations, my own and Astronvim? I don't want it to clobber my plugins and init.vim or anything.
- crispinb 4y agoI’d be interested in this too. Seems a bit daunting to move from an existing neovim setup. Lazy.nvim does look good so it’s a little tempting. Any hints to smooth the way?
- kzrdude 4y agoThe $NVIM_APPNAME in neovim 0.9 can do this.
- phonebucket 4y agoYou can specify which config to use while launching NeoVim with the -u flag.
- hgomersall 4y agoIt looks interesting. I'm always keen to consolidate my complex config. Neovim is great, but does anyone know of any neovim front end that properly supports middle click copy and paste through the primary buffer? I've sort of hacked something with neovim-qt, but it misses highlighting that isn't click-drag-unclick.
- anon23432343 4y agoI love this theme and how it looks! If someone is new to VIM/NVIM: I would go first with the basic. I have seen a lot of people being overwhelmed with this pre-made configs and lost interest really fast. Also if your not into config stuff and making it yours then maybe something like vim/nvim is not for you. If you want to use vscode use vscode. Its not about the tool but how good you know the tool :) I love vim motions :D
- bionsystem 4y agoI use vim daily and have been for years. I find those initiatives really interesting and especially I see things like org mode for vim which, although it is only a subset of org mode for emacs, could help me with some usecases. However I also find those things overwhelming. Just looking at the readme I feel like I'll need a few nights of learning and weeks of practice to figure out a workflow, plus it won't be available soon on my few computers and ever on my many servers. What I like in vim is also it's ubiquity and simplicity. I know my vim config by heart (it's just 6 lines) and just type it in when I login and I don't like the installed config. How would you or anyone recommend approaching a transition to those kind of framework or frontends or whatever it's called ?
- ammmir 4y agoMany of these vim distros (haven’t used AstroNvim specifically) with plug-in managers automatically download and execute random code on your system anytime you start the editor or open a new file type. I just want my own secure config that doesn’t do random network calls when I’m trying to open local files. Piping shit to bash and running npx whatever has really normalized this and it sucks. Your editor should be a safe haven.
- the_gipsy 4y agoRandom node packages processes truly sounds horrible for both security and performance, but you do want at least one LSP process spawned per filetype, right?
- ammmir 4y agoSeparating out the LSP process from the editor is a good idea. One sure hopes the blast radius is small enough if there’s a vulnerability. My beef is really with the auto-update culture. If I can specify lock files for plugins, it helps, but no way most people are going to have the time or expertise to audit editor plugins. I guess it’s the classic security vs. UX compromise!
- the_gipsy 4y agoYea and updating is daunting because something always breaks. I install my vim plugins with nixos for that reason.
- kzrdude 4y agoYou can turn autoscan (fetch from git repos) off, update should normally be opt-in already. You can use a lockfile and only update on demand. That's a more sane option. But yes, auditing 50+ git repos is not something I've attempted.
- benjaminwootton 4y agoThis is really impressive. Having finally cracked a Vim workflow, I've spent 6 months trying to replicate this by hand.
- FR10 4y agoAs a DOOM Emacs user, I feel this looks great as I always use vim/nvim for simple file edits (but maybe thats the drawback of using something like Doom on old hardware)
- DogLover_ 4y agoFor someone considering trying Neovim, the main obstacle is the abundance of GitHub projects promising an effortless way to get started. This abundance can lead to analysis paralysis, making it challenging to choose a path forward.
- fileeditview 4y agoIf you are new to vim/nvim in general give https://www.lunarvim.org/ https://www.lunarvim.org/ a try. Most things should just work / are easy to set up. If you already have some experience and want to configure your own this is a great scaffold to build your own thing: https://github.com/LunarVim/nvim-basic-ide https://github.com/LunarVim/nvim-basic-ide
- dotancohen 4y agoDon't use any of them. Use Neovim just as if it were VIM. I've been doing that since I've started using Neovim, the only thing that I missed were encrypted files.
- kzrdude 4y agoThe reason that people use them is to have good LSP integration and completion you need to manage 2-3 or 4 plugins and how they cooperate
- throwaway290 4y agoIt's doable by hand. I wanted to run LSP servers in Docker so I don't need to juggle versions and dependencies and virtual environments on my main machine and nothing out of the box had this. Took a couple of days. It's sad that it's perceived to be so difficult that an extra thing is needed to make it usable. As a result everyone uses those and the actual plugins have poor docs and API, if not that I would've spend less than a day I guess.
- jamal-kumar 4y agoI appreciate the fact that I have time and everything to spend two whole days doing that but some others out there are on a clock
- w4rh4wk5 4y agoThis looks actually really nice! I especially like the debug functionality being treated like a first-class citizen, emulating VSCode's panel layout. I might actually be using this in the future. :)
- tmdh 4y agoI use nvim mostly when I want to edit some conf file in the terminal. Recently I wanted to change that. So I tried AstroNvim, but it was so slow, like I was getting input lags. Now I am using mainly vscode and helix. I want to use vim so badly, but I can't.
- petepete 4y agoIf anyone is looking for a middle ground between nothing and a fully-fledged project like Astro/Lunar vim, I'd really recommend kickstart.nvim https://github.com/nvim-lua/kickstart.nvim https://github.com/nvim-lua/kickstart.nvim It's a single, well-commented config file that will provide you with a neovim that has TreeSitter, LSPs, Lazy, Telescope and a few other useful tools. It's intended to be customised and tailored to your needs.
- commandersaki 4y agoAlso check out teej-dv video on kickstart.nvim. I would link but on phone. Very happy with kickstart though.
- fredoliveira 4y agoHere's the link, for folks looking for it: https://www.youtube.com/watch?v=stqUbv-5u2s https://www.youtube.com/watch?v=stqUbv-5u2s Just watched it. Pretty decent introduction to kickstart!
- zabil 4y agoI love kickstart. Astro/Lunar, got me started with what's possible with neovim. I easily ported these features to kickstart. The benefit is an maintainable vim config and better understanding of lua to extend according to my preferences.
- cutler 4y agoAfter too much time fiddling with nVim configs I returned to Vim and have been quite happy. If I want an IDE I just use IntelliJ+IdeaVim.
- kzrdude 4y agoI tried to get LSPs properly set up in Vim but I think with the help of the these "distributions" in neovim, I finally found something where neovim works much better than Vim. For me, neovim is finally showing its net positive value.
- bokwoon 4y agoI want to stress that for anyone looking to use Neovim as an IDE (lite), all you need is something that speaks the Language Server Protocol (LSP). You don't really need to download all these configuration frameworks. - Neovim's native LSP (with the neovim-lspconfig plugin) handles completions, go-to-definition, linting, formatting and refactoring. (Here's my init.vim config for the LSP https://gist.github.com/bokwoon95/d9420fce4836f6b518b02bd60a1bc376#file-init-vim-L206-L291 https://gist.github.com/bokwoon95/d9420fce4836f6b518b02bd60a...). - Instead of trying to get an autcompletion plugin to work, just use vim's native omnicompletion <C-x><C-o>. - Instead of a plugin manager, use Vim8 native packages (https://vi.stackexchange.com/a/9523 https://vi.stackexchange.com/a/9523). I use a custom shell script for updating plugins via git (https://gist.github.com/bokwoon95/172ecc04039afdbe94256789467afbc7 https://gist.github.com/bokwoon95/172ecc04039afdbe9425678946...) - I use Fern.vim for a file explorer. - I use Telescope.nvim for fuzzy jump-to-file. - Dynamic statusline is just a few lines of config (https://gist.github.com/bokwoon95/d9420fce4836f6b518b02bd60a1bc376#file-init-vim-L162-L179 https://gist.github.com/bokwoon95/d9420fce4836f6b518b02bd60a...), no statusline plugin needed. - No debugger support, I'll use a CLI debugger or an IDE if I need one. I've been using this setup for very a long time, and I barely touch my init.vim anymore. Here's a recent thread from the neovim subreddit where the OP talks about how much effort it takes to properly setup a configuration framework https://www.reddit.com/r/neovim/comments/11p6iiu/i_love_vim_but_i_dont_want_it_as_a_hobby/ https://www.reddit.com/r/neovim/comments/11p6iiu/i_love_vim_...: > I want to fix my problems and consolidate my environments BUT setting it up is too painful and I don't another hobby as a job (I already have servers and a 3d printer lol). I've tried multiple times this week to setup either pure neovim, lunarvim, nvChad, astrovim and LazyVim starter and there's always something that I can't find how to change even after searching online and not even taking into account that setting it up takes like a day for each. I don't really want to dedicate a whole month to reading docs, debugging and discovering plugins to fix issues that i'm hitting and I don't wan to blindly learn some commands to then throw them away because that distro didn't work out.
- mehalter 4y agoVery cool to see this with such good discussion on Hacker News! I am the lead developer for AstroNvim (https://astronvim.com/ https://astronvim.com/) and am happy to answer any questions that anyone has. This new release has been a while in the making and is truly only possible because of the great community we have been building. We have been able to receive so much feedback, see how many of our users are using this pre-configuration to drive their own setups, and have been able to work together to meet their needs. The biggest goal of this latest major release was to decrease abstraction from our configuration schema. Rather than implementing our own ways of configuring plugins, we expose it to the user in the same way that they would configure it themselves. That way users don't have to relearn Neovim configuration. Another cool project that we have been spinning up along side this new release is AstroCommunity! (https://github.com/AstroNvim/astrocommunity https://github.com/AstroNvim/astrocommunity) This repository aims to empower the community to get more involved with the project and to share their own configurations of plugins that we might not want to ship with the base installation of AstroNvim. This ranges from single plugins such as colorschemes, all the way up to full language packs that setup language specific plugins/language servers/debuggers.
- qudat 4y agoNice work, added to https://neovimcraft.com/?search=astro https://neovimcraft.com/?search=astro
- wirrbel 4y agoFeeling a bit bad about putting up a support question here, but here I go (long term vim user and sponsor of the initial nvim fundraiser). I am using a dark-on-black terminal style, but when I launch astrovim it seems to superimpose a light on dark color scheme. How can I default to a non-invasive colorscheme?
- divan 4y agoThis is cool! So basically it's enough to add astrocommunity/pack/go plugin and it will handle all plugins/sitters/syntax/etc needed for the lastest Go nvim experience, right? I've been looking for such an option for a long time.
- YeGoblynQueenne 4y agoThat looks cool so I thought I'd give Neovim a try, first. First thing I tried -> :colorsc<tab> Result: got a pop-up with colorscheme options. So far, so good. Second thing I tried -> :so ~/Documents/Session.vim Result: a whole bunch of errors. Caught some about Lua. One file opened, and nothing else. Verdict: my vim session scripts don't work with Neovim. Third thing I tried-> :browse confirm e (intending to open my _gvimrc) Result: [No file name] error. Verdict: Neovim does not behave like vim. Oh well.
- YeGoblynQueenne 4y agoKeep downvoting, you guys, I think it's working now!
- clktmr 4y agoDoes someone know how the outline in the second image is created? I'm using tagbar but I would prefer to get the outline from LSP or Treesitter and only fallback to ctags.
- mehalter 4y agoAstroNvim is using aerial.nvim which is a great code outline plugin. It has several supported backends on top of LSP and Treesitter it also supports Man page structure and Markdown structure explicitly. We also use the API for building the breadcrumbs at the top of each window as well! https://github.com/stevearc/aerial.nvim https://github.com/stevearc/aerial.nvim
- benjaminwootton 4y agoAny idea how to make it persistent in the bottom left like the screenshot? I couldn't find any leads in the documentation.
- clktmr 4y agoThanks, I will give it a try! Maybe event AstroNvim, because it's very close to my current config, which is probably pretty outdated in many places. Especially the all in lua config is very compelling.
- erksa 4y agoThe VSCode Vim-keybinding plugin is subpar, so making a VS-Code plugin extension to nvim seems like the better choice indeed. Jokes aside, beautifully composed aesthetic, and particularly like the right window in the preview. Will prob do something similar with imenu in emacs. Seems like a way more usefull than seeing a non-readable minimap of your source code file.
- sai_c 4y agoI love vim. It's a fantastic OS. Unfortunately it lacks a good editor.
- zhengyi13 4y agoI love the fact that we can now start to make this joke about vim.
- dzonga 4y agojust wish some of these vim+ thing would come with sane defaults. so that no one would configure anything. ready editor with lsp for most commonly used languages etc. I think that's why VScode won.