www.eamoncaddigan.net

Content and configuration for https://www.eamoncaddigan.net
git clone https://git.eamoncaddigan.net/www.eamoncaddigan.net.git
Log | Files | Refs | Submodules | README

index.md (2654B)


      1 ---
      2 title: "2024, Day 11: Another Neovim plugin makes my life easier"
      3 description: "Instead of code, here’s a list of other useful (neo)vim plugins"
      4 date: 2024-12-11T19:56:42-08:00
      5 draft: false
      6 ---
      7 
      8 After [my last update]({{< relref "/december-adventure/2024-09/" >}}) I had
      9 a plan in place to make a short shell script to simplify my usage of
     10 Neovim’s built-in terminal. But then I found the
     11 [nvim-unception](https://github.com/samjwill/nvim-unception?tab=readme-ov-file#working-with-git),
     12 plugin, which does exactly what I want. I set it up and it works great.
     13 
     14 So instead of code I’ll take this opportunity to share some of the other
     15 plugins I use. I only got started installing external plugins after
     16 I switched from Vim to Neovim about a year ago[^switch]. I’m not running
     17 _too_ many at the moment, and all of them see near-daily use.
     18 
     19 ## Some plugins
     20 
     21 - <https://github.com/preservim/vim-textobj-quote>
     22 
     23 This adds support for the automatic insertion of “curly quotes” in documents
     24 (cf. \"straight quotes\"). Nice for writing text, but inappropriate for code
     25 (be sure to enable the built-in `filetype` plugin and enable this only for
     26 carefully-chosen types of files).
     27 
     28 - <https://github.com/preservim/vim-pencil>
     29 
     30 This is another plugin to support writing text; it handles both hard and
     31 soft line wrapping nicely.
     32 
     33 - <https://github.com/junegunn/goyo.vim>
     34 - <https://github.com/junegunn/limelight.vim>
     35 
     36 Two more plugins (a matched pair) for writing text. Together they support
     37 a “focused writing” mode. I use these the least often of the set---they’re
     38 better for longer documents than short notes---but they’ve helped me get
     39 into the habit of using Neovim for almost everything I write.
     40 
     41 - <https://github.com/jpalardy/vim-slime>
     42 
     43 A “code runner”; it automates sending code to a REPL (such as an R or
     44 IPython session) running in another terminal window or within Neovim’s
     45 built-in terminal. This replicates what I find to be the most useful feature
     46 of IDEs (or... _Emacs_).
     47 
     48 - <https://github.com/tpope/vim-surround>
     49 
     50 This makes it much easier to add or change “surroundings” in text (e.g.,
     51 quotes, brackets, and tags). This one is funky, and took some getting used
     52 to, but I couldn’t live without it now. Using it improved my proficiency
     53 with “text object motions”, makes me feel like a Vim wizard.
     54 
     55 [^switch]: I’m inconsistent about how I talk about “Vim” vs. “Neovim”, and
     56     in practice I can be pretty haphazard in which one I open. I made the
     57     switch to see what all the fuss was about, but since I’m not writing
     58     plugins myself, I don’t really experience any differences between them.