document more shortcuts and update plugin list

This commit is contained in:
Oliver Ladner 2023-11-23 14:43:17 +01:00
commit 1d16815ab8

View file

@ -18,21 +18,21 @@ plugins etc. and have "my own" config that only includes things I really need.
- Install Treesitter comment parser (to highlight `FIXME:/NOTE:/TODO:/XXX:`)
with `:TSInstall comment`
- Create a `$HOME/.ignore` file and add big, useless directories to it, so
Telescope/ripgrep/fd can ignore those. A current list of files/directories is
in `lua/weeheavy/plugins/telescope-fzf-native.lua`
Telescope/ripgrep/fd can ignore those. My current list of files/directories is
available in `lua/weeheavy/plugins/telescope-fzf-native.lua`
## Speed
Output from lazy.nvim profiling (`:Lazy`, then `P`):
```bash
Startuptime: 33.68ms
Startuptime: 52.04ms
Based on the actual CPU time of the Neovim process till UIEnter.
This is more accurate than `nvim --startuptime`.
LazyStart 10.87ms
LazyDone 31.22ms (+20.35ms)
UIEnter 33.68ms (+2.45ms)
LazyStart 10.78ms
LazyDone 48.72ms (+37.94ms)
UIEnter 52.04ms (+3.32ms)
```
## Plugins
@ -49,6 +49,7 @@ This is more accurate than `nvim --startuptime`.
| **nightfox.nvim** | Theme with treesitter/lsp support | <https://github.com/EdenEast/nightfox.nvim> |
| **lualine.nvim** | Status line | <https://github.com/nvim-lualine/lualine.nvim> |
| **nvim-web-devicons** | filetype glyphs (icons) for plugins | <https://github.com/nvim-tree/nvim-web-devicons> |
| **gitsigns.nvim** | Git change indicator | <https://github.com/lewis6991/gitsigns.nvim> |
| **which-key.nvim** | Shows contextual key bindings | <https://github.com/folke/which-key.nvim> |
## Command cheat sheet
@ -59,26 +60,55 @@ This is more accurate than `nvim --startuptime`.
- `Space` is set as the leader key
#### Plugin fiddling/changes
#### Plugin things
- `:so` Source file
- `:checkhealth <pluginname>` check for problems of a plugin. Use `:checkhealth`
to check base and all plugins
- `:Lazy` to bring up package manager UI
#### Navigation
##### Code navigation
- `w` move to start of next word (ignores punctuation due to remap)
- `e` move to end of next word (ignores punctuation due to remap)
- `b` move to start of previous word (ignores punctuation due to remap)
##### Code editing
- `leader+i` re-indent whole file
- `i` insert mode at cursor position
- `I` insert mode at the **beginning of the line**
- `a` insert mode **one character after the current** one
- `A` insert mode at the **end of the line**
- `o` insert mode a line **below** the cursor
- `O` insert mode a line **above** the cursor
##### Visual mode
- `v` visual mode at cursor position
- `V` visual mode line mode
- `Ctrl+v` visual block mode
##### Tab navigation
(Don't use tabs by default, but use buffers instead).
- `Ctrl+t` to open a file in e.g. a Telescope finder in a new tab
- `gt` or `gT` to switch between open tabs
##### Window navigation
- `Ctrl+wq` close window
- `Ctrl+ws` split window horizontally
- `Ctrl+wv` split window vertically
- `Ctrl+<h/j/k/l>` switch between split windows
##### Buffer navigation
- `Space+Space` shows open buffers (via `Telescope buffers`)
### Lazy
- `:Lazy` to show the package manager UI
### Telescope
#### Navigation in live_grep, find_files, git_status and file_browser
@ -99,3 +129,4 @@ This is more accurate than `nvim --startuptime`.
- Hinting for trailing spaces (EOL) and blank space on line
- LSP setup/config (mason?), consume <https://blog.pabuisson.com/2022/08/neovim-modern-features-treesitter-and-lsp/>
- ollama integration <https://github.com/nomnivore/ollama.nvim>
- Solution to run file_browser when doing a vertical/horizontal split?