vim-be-good
vim-surround
vim-be-good | vim-surround | |
---|---|---|
22 | 83 | |
2,682 | 13,049 | |
- | - | |
2.5 | 0.0 | |
29 days ago | 11 months ago | |
Lua | Vim Script | |
- | - |
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.
vim-be-good
-
Ask HN: Comment here about whatever you're passionate about at the moment
Sure! The first thing I did was follow this video: https://www.youtube.com/watch?v=w7i4amO_zaE
This is ThePrimeagen's 0 to LSP, Neovim RC from Scratch. In this video he performs a clean installation of Neovim and goes step by step adding the things he considers essential. This was very important for me to acquaint myself with how things work, how to install plugins, how to define custom key maps. I remember the first times I tried using Vim, I couldn't figure out how to get Nerdtree to work. This video made me realize I just lacked the knowledge of how Vim config works.
This video was such a good start because It provided me with the tools to continue my exploration of Vim autonomously. In a week I was already able to install new plugins and tweak them using Lua config files the way I specifically wanted. It's such a cool experience!
Keep in mind that both the author of this video and I use Neovim, which is a fork of Vim. As a text editor they both function essentially the same. The difference lies on the config files and in broader UI capabilities by Neovim. While Vim uses Vimscript, Neovim prefers Lua, although Neovim is fully backwards compatible, so you can choose to use Vimscript for your configuration if you want as well. This also means that Vim plugins just work with Neovim!
The docs are also a huge source of knowledge for me. In the beginning I resorted to :help key-codes a lot when defining key mappings.
To learn the Vim motions, which is the most challenging part of using Vim, I suggest you find a cheatsheet online and refer to it all the time. One very cool plugin that will help you get comfortable with Vim motions is ThePrimeagen's VimBeGod: https://github.com/ThePrimeagen/vim-be-good. It's a set of game-like exercises to practice the motions. This is also pretty cool and helped a lot: https://vimsnake.com/. It's a classic snake game where instead of using arrow keys, you use HJKL. And speaking of arrow keys, one thing I did very early on was disabling them (or, in reality, remapping them to noop) in normal mode so I was forced to move around the text using Vim Motions.
At first you will get frustrated because your brain will need some time to rewire in a way to absorb all the new abstractions Vim presents. It's a whole new logic of editing text. The most important thing is to stick to it and you will be surprised with how fast you end up picking things up. Of course, don't expect to be crazy fast in a few weeks. But right now, after a little over a month, I no longer feel that discomfort using Vim anymore. I suppose I'd still be faster on VS Code, but I really want to master Vim, so I'm sticking with it and I feel a constant improvement.
-
Ask HN: How do I code offline for a week?
If you're not familiar with Vim, I'd encourage you to download a few Vim cheatsheets, the VimBeGood extension[1] and practice navigating code in Vim.
[1] https://github.com/ThePrimeagen/vim-be-good
-
Practicing VIM
For Neovim, then this Hardtime plugin will help you change the habit, and this vim-be-good from Primeagen helps learn vim motion. TJ DeVries is also a good source to learn.
- Resources for mastering vim motions
-
Vim for The VS Code User: Part 1 - Initial Setup
A game for learning vim, in vim: https://github.com/ThePrimeagen/vim-be-good
- recommendation on vimgolf challenges
-
Please help a noob.
I'm trying to NeoVim (and vi) in general having never used it. I decided to start with VimBeGood but I can't get it to launch a game. I've gotten the plugin installed but when I run :VimBeGood it just shows the screen saying "to play a game delete that line." I deleted words and noob but after that I'm lost. Nothing happens. What did I do wrong?
-
Question regarding vertical movement
I recommend vim-be-good for practicing this
-
Whats the next step?
There are plugins like https://github.com/ThePrimeagen/vim-be-good that can help with practice.
-
Atom has been archived
I found https://github.com/ThePrimeagen/vim-be-good to be kind of a nice way to build some muscle memory for vim.
vim-surround
-
Difftastic, a structural diff tool that understands syntax
I don't know what exactly you mean by pasting around the second selection, but you can paste selections, registers or even files at specific lines with some vim-fu. If it's generic enough you could write a function or even keyboard shortcut if it's very simple.
I have set ",',(,[,{ in visual mode to cut the selection insert the pairs then paste it back as a very hacky solution, but it gets the job done. If you want something more advanced to add or change anything around the selection tpope has solved that with vim-surround[1].
[1]: https://github.com/tpope/vim-surround
- Surround.vim: Delete/change/add parentheses/quotes/XML-tags with ease (2022)
-
Macro usage of replace
ysw https://github.com/tpope/vim-surround basically i surround the word with " So basically i wanted to surround the first word in line qoutes and then replace the first occurence of = with : Example:
-
Wrapping a range of lines in an html tag?
vim-surround is likely the plugin answer.
-
Quick Text Shortcuts?
If you have Tim Pope's vim-surround plugin, you can also add this to your Vimrc:
-
How do you manually install plugins
If you don't want to leverage Vim's package feature or you want to put your plugins in some other place, add the folder of the plugin to your :h 'runtimepath'. For example, if you download Tim Pope's vim-surround at ~\Documents\vim-surround, you should add this to your Vim configuration:
-
How to select multiple lines which are a 'component' quickly?
I'm using the vim-surround plugin by tPope and I know I can do ysw to surround words with whatever tag i want, I also know about cst (Change surrounding tag). But I'm wondering if there is a quick and easy way to wrap components. Some components might have closing tag and some components might not.
-
Is there anything like "vim-surround" built-in?
Is there any similar plugin to https://github.com/tpope/vim-surround?
-
ShadowVim embeds Neovim inside Xcode
Vim plugins (without UI) work out of the box. Hello vim-surround, argtextobj.vim and whatnot.
-
Vim function to move following word into parentheses?
If you don't insist on staying in insert mode then you can use vim-surround, which is perfect for this: yse
What are some alternatives?
10-minute-vim-exercises - The exercise files from 10 Minute Vim, for convenience of readers
nvim-autopairs - autopairs for neovim written in lua
which-key.nvim - 💥 Create key bindings that stick. WhichKey is a lua plugin for Neovim 0.5 that displays a popup with possible keybindings of the command you started typing.
vim-sandwich - Set of operators and textobjects to search/select/edit sandwiched texts.
vim-sneak - The missing motion for Vim :athletic_shoe:
Neovim-from-scratch - 📚 A Neovim config designed from scratch to be understandable
nvim-tree.lua - A file explorer tree for neovim written in lua
tabout.nvim - tabout plugin for neovim
tree-sitter - An incremental parsing system for programming tools
delimitMate - Vim plugin, provides insert mode auto-completion for quotes, parens, brackets, etc.
lens.vim - A Vim Automatic Window Resizing Plugin
micro-editor - A modern and intuitive terminal-based text editor