If you’re looking for incredible #FED talent, go hire Aubrey Sambor yesterday.
I have 19+ years of experience working with small agencies and Fortune 500 companies and focus on writing clean, accessible HTML, CSS, and JavaScript.
💽
A long-held conservative dream is now a reality, the fuckers.
Corporation for Public Broadcasting says it’s shutting down. 🇺🇸
I saw one of my favorite things today: a dude riding a bicycle smoking a cigarette. Bonus point? Guy was wearing a backwards hat.
Currently reading: Will Not Attend by Adam Resnick 📚
Started reading: On Tyranny by Timothy Snyder 📚
Neovim Smart Lists
Lists. They can be smart. These lists are not going to win a Nobel or anything, but #Neovim can be configured to grow some efficiencies from other editors. Smart.
Let’s say you’ve created a markdown list, like this.
* The start of my list <-- cursor is here
Then, when you press Enter, the same list marker you were using is automatically inserted for you.
* The start of my list * I didn't have to type "*"!
In addition, I wanted a few more features.
- If the line is otherwise empty, except for the list marker, pressing Enter deletes the item and gives you a new line.
- Numerical lists should increment.
- It should also work for the non-standard “task” list type, aka
- [ ]
.
I came up with a little mapping, which does the detection with REGEX.
-- Inside ~/.config/nvim/ftplugin/markdown.lua vim.keymap.set('i', '<CR>', function() local line = vim.fn.trim(vim.api.nvim_get_current_line()) local bullet = string.match(line, '^[%*|%+|%-]') local num_bullet = string.match(line, '^[%d]*%.') local task_bullet = string.match(line, '^%-%s%[%s%]') if not bullet and not num_bullet and not task_bullet then return '<CR>' end if line == bullet or line == num_bullet or line == task_bullet then return '<Esc>0Do' end if task_bullet then return '<CR>' .. task_bullet .. ' ' end if num_bullet then return '<CR>' .. num_bullet .. ' <Esc>0<C-a>A' end return '<CR>' .. bullet .. ' ' end, { buffer = true, expr = true })
I’m sure there’s more efficient ways of doing this! If you know any, yell at me.
💽