Using CTAGS, it's optional to install:
sudo apt install -y universal-ctags
To use the custom icons, you need to install the NerdFonts.
To use the LSP, install the servers and configure on lspconfig.lua:
gem install --user-install solargraph solargraph-rails
Clone that repo as ~/.config/nvim
.
Open the nvim
and run:
:TSInstall ruby python json bash php html javascript rust css markdown markdown_inline regex
+ details
Are defined in nvim/lua/plugins/.
Plugin | Configs | Description |
---|---|---|
Yanky | yanky.lua | Manage and store all the copies/deletes |
Wakatime | wakatime.lua | External data, register the infos about the working time and programming languages |
Trouble | trouble.lua | TODO |
Tidy | tidy.lua | Remove the spaces in empty lines |
Telescope | telescope.lua | TODO |
Snippy | snippy.lua | Basic snippets |
Scrollbar | scrollbar.lua | Set a minimal scrollbar to show the position, trouble and git changes |
Rails | rails.lua | More details to snippets about the ruby on rails structure |
NeoTree | neo-tree.lua | Tree of files, like explorer or NERDTree, with infos about the buffer and git status |
Monokai | monokai.lua | The theme/colorscheme as monokai |
Mini | mini.lua | TODO¹ |
Lualine | lualine.lua | Use to set the statusline |
LspSaga | lspsaga.lua | Improve in the LSP |
LspConfig | lspconfig.lua | Configuring the LSP² |
LastPlace | lastplace.lua | Preserve the last cursor position in the file |
Illuminate | illuminate.lua | Highlith the current method in the file |
Gitsigns | gitsigns.lua | Git infos, git blame in the current line will be display in 3s in the line |
Dashboard | dashboard.lua | Init screen/dashboard |
Bufferline | bufferline.lua | Buffer files display like tabs in the top |
Ale | ale.lua | Async lint check |
RubyRefactoring | ruby-refactor.lua | Keymaps for Ruby |
¹ TODO of mini
² current is using only the solargraph
+ details
Param | Description |
---|---|
number | Enable the line numbers |
ruler | Enable the highlight of the current line |
cursorcolumn | Enable the highlight of the current column |
cursorline | Enable the highlight of the current line |
ruler | Enable the highlight of the current line |
ruler | Enable the highlight of the current line |
foldenable | Enable the folding method (using key za ) |
foldlevelstart | Set the 3 level to start |
foldmethod | Set the folding method as defined by the foldexp |
foldexp | Set the folding expression as defined by plugin nvim_treesitter |
undofile | Enable the undo wehn you close the file, the changes are forever |
backupdir | Set backdir inside the nvim dir in a tmp folder¹ |
undodir | Set undodir inside the nvim dir in a tmp folder¹ |
directory | Set swapdir inside the nvim dir in a tmp folder¹ |
expandtab | Enable the expandtab to soft the TAB |
shiftwidth | Set the tab as two spaces |
¹ these directories are auto created as nvim/tmp/NAME
Set as :
, but have the alias as ;
, só don't need to press SHIFT to use it.
+ details
Keybind | Description |
---|---|
<LEADER>/ | Clear the highlight of the search |
<LEADER>rt | Run the ctags to reload the tags |
<LEADER>d | Print a debugger in a new line |
<LEADER>p | Open the Telescope |
<LEADER>ff | Open the Telescope in find_files mode |
<TAB> | Toggle the selection of file on Telescope |
<C-x> | Open the Telescope selected file on split |
<C-v> | Open the Telescope selected file on vertical split |
<C-t> | Open the Telescope selected file in a new tab |
<C-u> | Go to UP of preview pane on Telescope |
<C-d> | Go to DOWN of preview pane on Telescope |
<LEADER>e | Toggle the NeoTree explorer |
<LEADER>ew | Toggle the NeoTree explorer in a popup floating window |
<LEADER>ef | Toggle the NeoTree explorer with focus on the current file |
<C-n> | Go to the forward item in the copies history |
<C-p> | Go to the backward item in the copies history |
<A-p> | Go to the previous occurrence of the method |
<A-n> | Go to the next occurrence of the method |
<LEADER>hb | Show the git blame of the current line |
[c | Go to the previous change in the file |
]c | Go to the next change in the file |
<C-h> | Go to the previous file in buffer |
<C-l> | Go to the next file in buffer |
<LEADER>bd | Remove the current file from buffer |
<LEADER>l | Swap between the two files in buffer |
gh | Find references to the current method in project |
gr | Rename the current method/variable in the file |
gd | Show the definition of the class/method |
<LEADER>o | Toggle the sidebar with the class and methods |
<A-d> | Open the terminal floating window |
za | Toggle the folding |
<LEADER>rap | Add new parameter to the current method (RAddParameter) |
<LEADER>rcpc | Convert the conditional (if/...) from the end of line to a block (RConvertPostConditional) |
<LEADER>rel | Move the current var to a let in RSpec (RExtractLet) |
<LEADER>rit | Remove the temp variable and use the value instead of the var (RInlineTemp) |
<LEADER>ct | Search for git conflict markers in file |
Command | Description |
---|---|
:A | Toggle between the class and the test |
The unkown filetypes can be defined the type in nvim/filetype.lua.