#vimovember — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #vimovember, aggregated by home.social.
-
@hyde I liked your site a lot. Thinking of implementing some of the slashpages myself. I began using Neovim very recently, after decades of heavy vim use; bookmarked your #vimovember page to go through the tips
-
@tsvenson Check the #vimovember hashtag.
My posts are summarize here:
@jasper has done it too: https://jasper.tandy.is/doing-vimovember-2025
@celfred has posted some on the fediverse but I dont know if he wrote them down somewhere.
@loupbrun has done some posts too...
-
@tsvenson Oh ! And did you just miss the #vimovember challenge ?
-
For the last ones, if you want to check how i use named sessions, ripgrep, and other functions go visit
-
25 Block Mode 🧠
Visual block mode is really helpful to reformat or move columns of your text.
A useful keybinding I have is:
keymap("v", "<leader>t", "!pandoc -f markdown -t markdown-simple_tables<CR>", opts)
It uses pandoc to reformat correctly your table.
-
Last one, if you need to insert a filename in the current buffer, use <C-x><C-f>. You never tried it? Do it right now!
-
24 Shell 🧠
I don’t use the integrated terminal(:term) in nvim. As a tmux, and Wezterm user, I prefer using them to spawn a new terminal.
With tmux, every new project opens with two panes: one at 80% height and one at 20%. The larger pane opens directly with Telescope in the project directory.
1/3
-
23 Quickfix 🧠
Quickfix is probably one of the feature that many users don’t understand, or use it unintentionally. Yet it can transform how you search, debug, refactor, or navigate.
The Quickfix window is a special buffer listing all the quickfix entries that you can open with :copen. It allows you to modify multiple files with :cfdo for example.
It can be used as a todo list by adding manually some tasks with :caddexpr 'fix this later'.
1/2
-
22 Mappings
# Visual
# pasting over text normally overwrites your yank — this fixes it.
keymap("v", "p", '"_dP', opts)# move visual blocks easily with J/K
keymap("v", "J", ":m '>+1<CR>gv=gv", opts)
keymap("v", "K", ":m '<-2<CR>gv=gv", opts)2/2
-
Day 22: mappings
I have many mappings, often found in someone’s configuration, and being not used.
Some are useful though:
# Normal
# dont move my cursor when I join lines
keymap("n", "J", "mzJ`z", opts)# removes spaces at the end of the line with confirmation
keymap("n", "<leader>t", [[:%s/\s\+$//gce<CR>]], opts)# leaves the cursor in the middle of the screen when you do a next/prev search
keymap("n", "n", "nzzzv", opts) and keymap("n", "N", "Nzzzv", opts) "1/2
-
Day 21 Autocmd
I only have three autocmd to avoid some spelling:
vim.cmd([[autocmd BufRead,BufEnter *.md syntax match H1Title /\v\d{8}T\d{6}/ contains=@NoSpell]])
vim.cmd([[autocmd BufRead,BufEnter *.md syntax match NoURL /\vhttps?://\S+/ contains=@NoSpell]])
vim.cmd([[autocmd BufRead,BufEnter .md syntax match NoWikiLink /\v[[.]]/ contains=@NoSpell]])
I could probably try to use it, but autocmd can quickly mess up your files if you’re not cautious.
-
For day 18 and 19, about config and plugins i use mainly Lazy.nvim to install some.
And my config merits a full post.
Day 20 Replace in Files:
On day 12, I showed how to replace in multiple files using a macro. But, you can do differently using :vimgrep and cdo / cfdo. Something like this:
:vimgrep /old/ **/*.py
:cfdo %s/old/new/gDon’t forget to preview first with :copen before doing big changes to your files.
#Vimovember #vim #neovim #editors #shell #linux #bsd #opensource
-
Day 17 Fold :
The folds I find myself using are:
zf{motion}
zf3{ " to close 3 paragraphs before my cursorOr, with marks:
zf'a " fold from the current line to the mark
-
Day 16 Tabs ⚙
Tabs aren’t something I use. I know you can use gt, and Gt to go to the next/previous tab. I use actually that with #Tridactyl, the plugin for Firefox/Librewolf, that brings #Vim keybindings in your browser.
-
Day 15 Buffers ⚙️
When I have a couple of buffers opened, I used to do :b [tab] to switch between them. Now, with Neovim and Telescope, I setup this:
vim.keymap.set('n', '<leader>b', builtin.buffers, {})
That opens a new floating window with all the buffers, and a preview.
What I like to use to go to the latest buffer I used is <C-o>, and if you hit it again it will keep going to previous buffers, even if the files are not opened.
-
Day 14 splits
One useful thing is to be able to split them equally. Hit <Ctl-w> =, and that’s it.
The other useful thing I opening a split with a specific height / width:
:30vnew " Vertical split, 30 columns wide
:10split " Horizontal split, 10 lines tallGreat for preview panes or narrow sidebars.
Also, one great thing is open file under the cursor in a new split
Horizontal: Ctrl-w f
Vertical: Ctrl-w F#Vimovember #vim #neovim #editors #opensource #FOSS #shell #linux #bsd
-
#Vimovember Day 14: Split (shameless self promotion edition)
#Vim 's incredibly low-friction window splitting is something I miss immediately and intensely when using other, inferior editors, but I found the built in mechanism for resizing splits a bit unergonomic, so I wrote a plugin to fix it: https://github.com/sedm0784/vim-resize-mode
It overlays the existing keybindings transparently, so there's really no downside to installing it — the cool kids all already did and they say you should too!
-
#vimovember day 14 - Split
I first used Vim with few terminals open. As @loupbrun said, it's a paradigmatic change after years of using Atom or VSCodium: manage as many windows as necessary. Before @monterosato blamed me (why not using just one Vim session?), I already used split for displaying another document in the same Vim session, but now I use vsplit a lot. My common setup is like this screenshot (two columns, the second on the right is divided on two vertical parts): main writing/coding space on the left, and two other documents on the right. Simple, clear, useful (and, I believe, beautiful).So I do:
nvim my-main-doc
:vsplit my-second-doc
:split my-third-doc -
Day 13 Marks ⚙️:
Marks have some great features, but I found myself not using them often.
We saw on Day 7, that you can substitute on a visual selection, you can actually
do the same with marks in Ex commands::'a,'b s/foo/bar/
That will substitute foo by bar between marks `a` and `b`.
Check the link in the thread for more tips about marks
#Vimovember #vim #neovim #editors #opensuse #FOSS #terminals
-
#Vimovember Day 13: Marks
Vim's uppercase marks aren't limited to being used on the fly to mark places you can jump to in the buffers you're currently working on. They can also be used as long-lived global bookmarks.
These days, whatever I'm working on, if at any time I type `T , then #Vim will instantly teleport me to a list I keep in a TODO.txt file, because a few years ago I dropped an uppercase mark at the top with mT .
-
@normalmode #vimovember day 12 macros: honestly, nothing to add to this. Macros rule, and you feel like an actual text editing god when it works (especially first try).