better-escape.vim
vim-gutentags
better-escape.vim | vim-gutentags | |
---|---|---|
8 | 18 | |
164 | 2,262 | |
4.3% | - | |
1.8 | 0.0 | |
over 2 years ago | 4 days ago | |
Vim Script | Vim Script | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
better-escape.vim
-
Learn Vim (2021)
This issue is only cosmetic as the other commenter explained. vim won't insert the character until you indicate you're not invoking the keymap (either by waiting or by typing other characters).
If you want a plugin that makes it so that the j appears immediately regardless of whether you're trying to invoke the keymap or not, you can use something like https://github.com/nvim-zh/better-escape.vim
-
Big game changers you wish you knew about earlier
better-escape is what you need then. One tiny plugin, one line of config in your vimrc/init file, and the delay is gone.
-
Journey to the Ultimate `imap jk <Esc>`
Then I came across better-escape.vim, a very recent plugin that does exactly what I want. With core implementation of less than 100 lines of vimscript, it is much more reasonable. People who have better things to do would probably stop here and be content with this perfectly good plugin, but not me. Although the plugin gets the job done, it essentially accomplishes a one-line functionality that is imap jk . For such a simple functionality like this, we really shouldn't be relying on plugins. I want something ultra-simple, something ultra-compact, something that can be put directly into your .vimrc.
-
My nvim is slow for some keys, and it's too annoying
Not used this but seem people say it's useful for this usecase https://github.com/jdhao/better-escape.vim
-
A blatant plagarism of my plugin from the author of better-escape.nvim
Hi, fellow reditters, I am the author of better-escape.vim, which is created about 9 months ago. In fact, I have announced it in my eariler post.
-
I want to create a custom binding to get me into Normal mode that doesn't involve Ctrl or Esc. DistroTube on YouTube said he remapped hitting "i" twice to do this. Do you guys have any other suggestions?
You can use the plugin better-escape.vim'.
-
What are your favourite mappings? Esc? Ctrl+w? Others?
I have used the plugin https://github.com/jdhao/better-escape.vim
-
Mapping to avoid stretching hand to reach underscore
Ok so I apologize if this isnโt super helpful, but I remember reading this about how to write a function to map jk to escape without having that annoying lag you talk about. You could maybe use this same approach but alter it a bit to make two spaces turn into an underscore but without lag. The author of that post also made a plugin with that idea, so maybe it could help you?
vim-gutentags
-
Vim + Ctags + Modern JS
https://github.com/ludovicchabant/vim-gutentags/issues/139 has some background.
-
Rust setup for neovim
Hi everyone. I'm looking to have a better setup for Rust in neovim. I do have rust-analyzer installed for useful lsp things but I was hoping to get tags working for it as well. I was using vim-gutentags (https://github.com/ludovicchabant/vim-gutentags) for navigating useful functions and stuff but couldn't quite get it to work for rust. Is there a simple way to do it or do I need rusty-tags and some aucommand to get it to work?
-
Project & File navigation
use tags, I like https://github.com/ludovicchabant/vim-gutentags for this. I might use my local .vimrc to tweak the config (exclude compiled source files and other uninteresting things)
- Whenever I'm looking for plugins these days [OC]
-
Big game changers you wish you knew about earlier
guttentag: https://github.com/ludovicchabant/vim-gutentags
-
Having trouble with ctags
Without more information, it's hard to point you in the right direction. The tags file could be out-of-date, in which case you can try to re-generate it (vim-gutentags for tags auto-generation). You could have 2 function declarations with the same name, in which case you can try :tag to cycle through tags (supports partials, like :tag F which will suggest FOO, FAR, FAB ...etc) or :tag to see a list of possible options (supports partials, like :tag F which will list FOO, FAR, FAB, ...etc) for various matching tags you can jump to (fzf.vim provides a tags fuzzy finder via :Tags). Maybe you're experiencing :h tag-priority?
-
What are your must-have vim/nvim extensions?
ludovicchabant/vim-gutentags - Tags
-
Vim โ Minimal Setup Explained
You can then use :cnext and :cprev (or focusing the window and selecting an entry) to navigate between them.
As others have stated, you can also use ctags (plugins like https://github.com/ludovicchabant/vim-gutentags are useful for refreshing tags in a project), but for some languages you may need to add a tag definition (e.g. for something like rust or zig). For older languages like C you should be fine.
- How to set up VIM for PHP development
-
Can you add custom functionality for goto definition for lsp to use multiple langauges?
Not sure if it will help in this case, but I also depend on ctags for when the lsp fails (e.g. code it doesn't compile for some reason). Here you let a program create a tags file, e.g. I use https://github.com/universal-ctags/ctags (it seems it can parse json files, though I'm not sure what kind of tags are generated from this and if they will be useful to you) with https://github.com/ludovicchabant/vim-gutentags to update the tags file. The tags file just contains symbol names with locations where they are defined, and vim has builtin functionality to use these tags files :h tag and they (can) work filetype independent. For example if I mention a C type in a markdown document I can just use ctrl-[ to jump to its definition in the C source file. Possibly you can generate tags files yourself from the json files to help with this, the tags file format is not very complicated. Tags also are not very intelligent and depend on unique names for them to work well, there is the :h g_CTRL-] that can help, but for symbols that are very common (e.g. init or something that potentially has like 20+ definitions) it doesn't really work.
What are some alternatives?
nvim-toggle-terminal - NeoVim plugin that toggles a terminal buffer in the current window maintaining the same shell instance
tagbar - Vim plugin that displays tags in a window, ordered by scope
vim-unimpaired - unimpaired.vim: Pairs of handy bracket mappings
ctags - A maintained ctags implementation
better-escape.nvim - Escape from insert mode without delay when typing
nvim-cmp - A completion plugin for neovim coded in Lua.
vim-arpeggio - Vim plugin: Mappings for simultaneously pressed keys
coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
nvim-peekup - ๐ dynamically interact with vim registers
vista.vim - :cactus: Viewer & Finder for LSP symbols and tags
dotfiles - :octocat: Tim does dotfiles
nvim-bqf - Better quickfix window in Neovim, polish old quickfix window.