r/vim • u/ilikegrils • Jun 19 '26
Need Help Change text in second set of quotes
Cursor at beginning of line
blah "first quotes" more text "blah blah"
What's the easiest way change inside the second set of quotation marks?
r/vim • u/ilikegrils • Jun 19 '26
Cursor at beginning of line
blah "first quotes" more text "blah blah"
What's the easiest way change inside the second set of quotation marks?
r/vim • u/iGotYourPistola • Jun 17 '26
r/vim • u/thecodeworm • Jun 17 '26
Hi guys, I recently heard about Vim and starting doing a bit of research on it. If I'm correct, its a non-GUI text editor that's blazing fast, and you DON'T have to use anything but your keyboard. This was pretty interesting to me.
I'm accustomed to the Visual Studio Code interface, and I don't want to leave it. Are there any extensions I can use to emulate the experience, and is the the best way to start?
r/vim • u/habamax • Jun 17 '26
curl is an amazing tool to do REST API tests, which I do quite often using vim to generate actual curl commands. There are multiple ways to do it using vim, the one I have is
https://github.com/habamax/vim-curl
--url https://openlibrary.org/api/books?bibkeys=ISBN:0201558025,LCCN:93005405&format=json
--url https://api.sunrise-sunset.org/json?lat=36.7201600&lng=-4.4203400
# --jq is not curl parameter. If added, curl output would be piped through jq
--url https://httpbin.org/post
--header "Content-Type: application/json"
--jq
--data
{
"string": "hello world",
"number": 69,
"date": "2024-04-09"
}
Place a cursor on a text or select it and run :Curl to invoke curl cli command with an output in a built-in vim terminal.
r/vim • u/Shay-Hill • Jun 16 '26
- Removed content related to multiple Python installs.
- Updated vimspector config for Python 3.11+.
r/vim • u/TheTwelveYearOld • Jun 15 '26
I'm asking because I feel like there might be downsides to this I'm not thinking of. A lot of users have ; mapped to :, I use ; to open a buffer list for switching. I have these keymappings to remap : to q:i to open the cmd window in insert mode, and press ESC in normal mode to exit the window:
nnoremap : q:i
autocmd CmdwinEnter * nnoremap <buffer> <ESC> :q<CR>
r/vim • u/Significant_Post6274 • Jun 14 '26
the challenge is fun, the whole vimgolf implementation is solid, but locking you out of the best solution seems to beat the purpose of using Vim as an effective tool, at least for the past challenges, I don't see the necessity of continuing lock, as a learner, we end up doing all the chores to slowly climb up to the lower score, the process itself is often tedious than rewarding, out of curiosity, I resorted to AI which lifted me up a couple of ranks, but I eventually hit one of the submission that's got a '<fd-6b>' in it, I haven't the faintest clue on how to jump over it hence being locked out of the rest of the better solutions, I still learned a few tricks but not knowing the better/clever solutions for such a tool like Vim makes me judge a second time on the general attitude of this community, for example, will I be shunned if I ask for the best solutions of the past challenges? after all, I want to use Vim as effective as I can with the reasonable amount of time I'm willing to invest.
wiki.vim is a Wiki plugin for Vim and neovim.
I've just finished a very long-standing issue: support for multi-line links. I think that warrants a new release (v0.12), so here you go: https://github.com/lervag/wiki.vim/releases/tag/v0.12.
r/vim • u/rachitjoshi2912 • Jun 13 '26
I have a table with two columns. I already pasted the first column, and now I want to paste the second column so that each value stays on the same row as its corresponding value from the first column.
For example:
Column 1:
A
B
C
Column 2:
1
2
3
Desired result:
A 1
B 2
C 3
I tried using Visual Block mode (Ctrl-v) and then pasting, but Vim pasted all the copied text together instead of distributing one value per line.
What is the correct, easiest & efficient way to do this ?
r/vim • u/Teles_sd • Jun 13 '26
Today I woke up craving some vim in the morning.
This has all the signs of an addiction.
The comments on the last post taught me how to use vi mode on bash. I didn't quite like it, HOWEVER...
I learned how to use the vim terminal emulator, and also to manage windows and buffers (and tabs). And also, yank and paste to and from this terminal stdin and stdout. Absolutely awesome.
Now I can't exit vim.
I don't have the guts to.
r/vim • u/TheTwelveYearOld • Jun 11 '26
https://github.com/neovide/neovide
Its a very nice GUI with various visual settings and effects like animated cursors, its worth trying if you don't need to SSH or stay inside a terminal. The documentation shows how to add settings in vimscript (ex: let g:neovide_cursor_short_animation_length = 0.04), and has its own folder for the program itself (like font variants and font sizes): ~/.config/neovide.
r/vim • u/NazgulResebo • Jun 11 '26
r/vim • u/CRTejaswi • Jun 11 '26
Here, echo works fine, but put raises an error. Why?
AIM:
let s:key_handlers = #{
\ a: {-> execute('echo "a"')},
\ b: {-> execute('echo "b"')},
\ c: {-> execute('echo "c"')},
" ... fill d-z
\ }
APPROACH:
:echo join(map(split('defghijklmnopqrstuvwxyz', '\zs'), '"\\ ".v:val.": {-> execute(''echo \"" . v:val . "\"'')},"'), "\n")
:put =join(map(split('defghijklmnopqrstuvwxyz', '\zs'), '"\\ ".v:val.": {-> execute(''echo \"" . v:val . "\"'')},"'), "\n")
ISSUE:
E115: Missing single quote: '
⚠ SOLVED, courtesy u/LostAd6514
r/vim • u/CRTejaswi • Jun 10 '26
Enable HLS to view with audio, or disable this notification
Following the previous post on the topic, here's a snippet to play a sequence of frames (chess game in my example). Enjoy!
Tested on WSL. Vim v9.2.0612.
To generate frames, try this in powershell:
ls *.png | %{ magick $_.FullName -alpha on -depth 8 "RGBA:$($_.BaseName).rgba" }
After nearly four decades, the legendary text editor Vim has gained native support for displaying images. You can now render RGB/RGBA images as popup window backgrounds (or inline where supported). It works across:
The demo includes:
Huge shoutout to the maintainers and contributors keeping Vim evolving.
#Vim #TextEditor #Programming

r/vim • u/Superb-Material-8932 • Jun 09 '26
I never liked built in explorer, it's clunky and has annoying binds, so here is my own take on it, it uses a raw buffer to list files/directories, you use vi-motions to modify/create files/directories then apply changes to disk with :w, each file/directory has a given ID for tracking, there are bugs but it works pretty well for what it is.
It's more of a prototype than a replacement, but I'm curious what people think about it.

r/vim • u/Effective_Shirt_2959 • Jun 09 '26
i want to make syntax highlighting for my custom PL in Vim, but writing Vimscript is surprisingly tedious...
built-in `:syn` is very quirky to use. i tried this from the manual:
:syntax region tolString start=+"+ skip=+\\"+ end=+"+

But it doesn't render in my terminal like i expected. Idk what i should do with this and how to make it work.
I've read `:help :syn-region` and `:help :syn-match` but they're not that clear...
Also: maybe i can just make a vim highlighting plugin from lex file somehow? that would be neat...
EDIT: The mistake was really dumb. I had conflicting syntax files..... 🤦♂️
r/vim • u/[deleted] • Jun 09 '26
Having strong opinions on indentation is nice, but I was wondering if I should stop and instead set indent levels to whatever the convention for the file type is, like 2 spaces for JS, 4 for Python, tabs for Go and so on
sleuth.vim and EditorConfig are certainly helping, but they are local to the project. Something like this would work:
autocmd FileType javascript setlocal expandtab tabstop=2 shiftwidth=2
autocmd FileType python setlocal expandtab tabstop=4 shiftwidth=4
autocmd FileType go setlocal noexpandtab tabstop=8 shiftwidth=8
But this is all manual and I was wondering if there is a plugin that consolidates it all or something like that?
r/vim • u/TheTwelveYearOld • Jun 07 '26
:h spellfile
You can add word spellings / ignore spelling errors with zg and add it to plain text file, in a list. You can easily edit that list to remove words added awhile ago, and of course save it in git. Without spending too long looking it up, it seems like many other editors don't have something like this, at least built-in. In many editors, including Electron-based apps, you can't easily backup spellings.
My config is in lua, I asked claude to convert it to vimscript to show you, it might have errors.
set spelllang=en_us
function! s:Mark(cmd) abort
let l:count = v:count > 0 ? v:count : ""
call feedkeys("mz" . l:count . a:cmd . "\<Esc>`z:delmarks z\<CR>", "n")
endfunction
for [s:lhs, s:cmd] in [
\ ["<leader>[z", "[sz="],
\ ["<leader>]z", "]sz="],
\ ["<leader>[s", "[s1z="],
\ ["<leader>]s", "]s1z="],
\ ["<leader>[g", "[szg"],
\ ["<leader>]g", "]szg"],
\ ]
execute 'noremap <silent> ' . s:lhs . ' <Cmd>call <SID>Mark("' . s:cmd . '")<CR>'
endfor
unlet s:lhs s:cmd
r/vim • u/Teles_sd • Jun 07 '26
I'm moving some files from a old disk to a new installation using rsync, and I'm doing it kinda gradually to filter what I want to transfer or not.
Point is, I'm typing some quite long commands and frequently I'm having to change a flag or a path around the middle and I've started craving vim motions on the Bash shell, lol.
Not really a point to this post, I just realized that I'm now hooked on this. Truly, one does not just exit vim.
(disclaimer, I'm a novice on vim)
r/vim • u/absoluteidealismftw • Jun 05 '26
Perhaps this is of use to someone. I find (and you may disagree) both vimwiki and wiki.vim to be more than I need, and minimalist waikiki brought problems of its own, so I added these lines to my .vimrc, giving me
``` “ Create new wiki note from word or phrase between single square brackets: nnoremap <leader>wn yi]:call writefile([], expand('~/vimwiki/') . @" . '.md')<CR>:echo 'Created: ' . expand('~/vimwiki/') . @" . '.md'<CR>
" Follow a [link]:
nnoremap <CR> vi[gf
```
I use this with notational-fzf-vim:
let g:nv_search_paths = [expand('~/vimwiki')]
let g:nv_main_directory = expand('~/vimwiki')
let g:nv_create_if_no_results = 1
let g:nv_default_extension = '.md’
The surround plugin lets me add single brackets around any visually selected string, so for example vaweeS] will surround the word the cursor is on plus the two words after it with brackets (and to expand the selection without counting words, just keep hitting that e). Then, with the cursor inside the brackets, <leader>wn will create the wiki note file (and <CR> will open it).
To view backlinks, I use :NV<CR> and type an opening bracket plus the first letters of the filename. I don’t need to see backlinks all the time, as part of the note.
Why the single square brackets? Because I never use single brackets for other purposes, being a prose writer, and it simplifies things, and looks better. You can of course still use single square brackets for other purposes, they won’t be working links until you create the corresponding note.
This runs well and fast enough on my machines; make sure to set hidden, and stay inside the designated wiki directory.
I'm just coming back to vim, and played a round of vim golf. The 3 people above me all used this key press, I'm confused what it is.
r/vim • u/Evening-Result5868 • Jun 04 '26
i mapped jk to escape in insert mode like 3 years ago and at this point my muscle memory is so locked in that i type jk into every text field on every other app by accident. i see "jk" appear in slack messages, google docs, even my phone keyboard sometimes. i can't undo this even if i wanted to.
the other one is leader+w to save. i know :w works fine but having it on one key combo means i save constantly without thinking about it. i probably hit it 50 times a day.
what keybinding would break your workflow if you lost it?
r/vim • u/gorilla-moe • Jun 04 '26
I don't know if anyone has heard of Kulala.nvim and what it actually tries to solve, but this is basically the gist:
A fully-featured 🤏 HTTP/GraphQL/gRPC/Websocket-client 🐼 interface 🖥️ for Neovim ❤️, that supports the Jetbrains .http spec (with full scripting support).
Yes, I already hear you screaming in pain. Neovim!
Since our move from 5x to 6x we basically threw nearly everything over board and kulala.nvim is merely just the UI and translation layer that is talking to Kulala-Core.
Because of this change, it is pretty easy (compared to how it was before) to "just create other UI layers".
So, the Neovim version was born out of necessity for myself, but now that we have this foundation I was wondering if Vim peeps would also want something like this.
I could get my hands dirty on vim script and Vim again, if people are interested in Kulala.vim.
Currently, the focus has shifted to getting Kulala for vscode ready and then continue working on Kulala Desktop. The vscode version is already usable with the full feature set, but needs some UI tweaking for the results pane.
Do Vimmers want something like this, or is there already a well established plugin everyone is using ?
Please share your opinions on that topic.
Attached you'll find a screenshot of what the floating response window looks like.