Skip to content

RayJameson/astronvim_config

Repository files navigation

AstroNvim user configuration

This is user configuration for AstroNvim, to use it you first need to install AstroNvim.

Make a backup of your current nvim folder

mv ~/.config/nvim ~/.config/nvim.bak

Clean neovim folders (Optional but recommended)

rm -rf ~/.local/{share,state}/nvim && rm -rf ~/.cache/nvim

Clone the repository

git clone --depth 1 https://github.com/AstroNvim/AstroNvim ~/.config/nvim

Clone this config

git clone --depth 1 https://github.com/RayJameson/astronvim_config ~/.config/nvim/lua/user
# or
git clone --depth 1 https://github.com/RayJameson/astronvim_config ~/.config/astronvim

Install plugins

nvim --headless "+Lazy! sync" +qa

I doubt anyone wish to use this config as is, so here is some cool features if anyone wants to yoink them:
image image

Red line numbers above cursor, cyan current line, green below current line

How to set it up

Highlight function arguments used in function body

hlargs repo config file image

Fully transparent background via transparent.nvim

transparent.nvim I'm using pinned version of astrotheme with those colors and additional highlight groups toggle transparency using <leader>uT or :TransparentToggle

Code runner via code_runner.nvim

code_runner.nvim config file Very simple to add additional filetypes to run
code runner options are in submenu using <leader>r

No neo-tree.nvim, I use mini.files and oil.nvim insted

oil config file I don't thik you need that permanent filetree sidebar as in your IDE or code editor.
If you need to see some project structure - use tree command in terminal.
If you need to naviagate files inside Neovim - use Telescope.
If you need to move/copy/delete a file or two - use terminal commands mv, cp and rm.
If you need to make some bulk file operation - then you may need filetree, in this case use mini.files (<leader>e) or oil.nvim (-) and edit your files just like text buffer

Why both mini.files and oil.nvim? mini.files doesn't support nvim . command and can't be used for ssh. Oil does (for ssh use nvim oil-ssh://user@host/path/to/file)

No bufferline and tabline

Same reason as above, for navigating I use Telescope and grapple.nvim plugin. I used harpoon.nvim before, but grapple.nvim has a little bit more functionality, although they both are very similar.

Check this video of ThePrimeagen explaining harpoon.nvim
harpoon-video

AI completion via codeium.vim

codeium.vim config file Very useful for boilerplate stuff, such as copy-paste with a bit of change in some text/variable etc Also it's free for personal use.
image By default there is some telemetry which can be opted-out in your profile

Yank history using yanky.nvim

yanky.nvim
config file
As I said in this issue gbprod/yanky.nvim#122 I believe yank history should be treated as a stack, and plugin's author agrees with me, so until new commands will be implemented, I will use changed behavior of commands

Random alpha header

I removed alpha plugin because it's doesn't bring any functionality, but takes some of loading time If you want to yoink that random alpha header - config file, and here is how to add it