I decided to change my vim plugin manager from Plug to Lazy, and (maybe inevitably) ended up going down the rabbit hole of reviewing every plugin I was using, updating the configs on several, dropping some, and adding some new ones.
After a few years of having my config support both Neovim and Vim 8/9, I finally dropped the Vim support, and removed the plugins like nerdtree and vista that I was keeping around as less-capable alternatives to neovim-only ones like nvim-tree and symbols-outline. I also scrapped a bunch of stuff that used to be needed for
I switched from airline to lualine, and spent a little time on a custom theme that looks nice even without powerline chevrons.
I added bufferline, which turns out to totally change the way I do things, in a way that’s hard to explain. Much less feeling of losing track of where I am when chasing references or debugging. I don’t feel a need to use “open in tab” commands anymore (which was actually one of my major reasons for getting into Telescope a while back), because I know that all the buffers back up the stack are still there. Which they always were, but now they’re staring at me from the tab bar. Weird, I know.
I also added Mason, so that I don’t have to externally manage LSP servers anymore.
I updated indent-blankline to v3 — which was a bit of work because I want it only for YAML, and v3 removes the “only activate for these filetypes” option in favor of a hook system that makes you write code to do the same thing. But it looks nicer now.
And I’m trying to convince myself to stick to one of those note-taking things — it’s Neorg for now but I don’t love it. Will report back if I find something I love.
In non-vim-related news, I took a couple next steps on this Arrow-related journey:
I changed my data model a bit to add a “generation” field, so that now (wiith some improvements to the scripts) I can sync only the rows that have been added or modified since the last download, instead of re-fetching the whole thing every time.
I upgraded the app that serves the data (which is also my general-purpose API app) from psycopg2 to the new psycopg v3, hoping to improve the performance of that streaming response. That upgrade entailed updates to sqlalchemy, marshmallow, and the Flask glue layers, and required about a dozen fixes (some simple, some really frustrating) for things that had been broken by one or all of the above. In the end… I didn’t get any performance improvement, but at least I’m over that hurdle.
I didn’t even pick any of those libraries, by the way, I “inherited” this part of the app and just started building on top of what was there. I didn’t have a clue how to use them when I started out, either. Now I feel like I finally have half a clue.
I also scrapped a bunch of stuff that used to be needed for
I see I left a half-finished thought here. I think it was meant to be: I also scrapped a bunch of stuff that used to be needed for changing themes when using non-256-color terminals (or when using a 256-color terminal to ssh into a machine with ancient terminfo). That hasn’t been a concern for me for a few years at least.
I don’t feel a need to use “open in tab” commands anymore (which was actually one of my major reasons for getting into Telescope a while back), because I know that all the buffers back up the stack are still there. Which they always were, but now they’re staring at me from the tab bar. Weird, I know.
This sounds intriguing and I would like to test it out myself. Would you mind sharing your config?
Mostly it’s just about loading akinsho/bufferline.nvim; it doesn’t need any config to do what I described there. Possession (gennaro-tedesco/nvim-possession) also helps a bit by giving you a way to restore your buffers when you quit and come back.
But since you asked, here’s my config, slightly sanitized. It’s not particularly organized or anything. Unless you’re using my colorscheme you’d probably do best to remove the highlights arg to bufferline. Or configure your own, of course, but the defaults should be fine for most people.
I also have lots of keybinds that probably won’t be to most people’s taste :)
I have two Moonlanders and I am so happy with them. My only real gripe is that I’m so used to the layout that it’s near impossible for me to be productive on a standard/laptop keyboard. I’m tempted by the Voyager, I’d love to go low profile. The tumb cluster just having two keys is bit of a turn off though, with my current layout[1] I make heavy use of all three (or actually four) of them.
I decided to change my vim plugin manager from Plug to Lazy, and (maybe inevitably) ended up going down the rabbit hole of reviewing every plugin I was using, updating the configs on several, dropping some, and adding some new ones.
After a few years of having my config support both Neovim and Vim 8/9, I finally dropped the Vim support, and removed the plugins like nerdtree and vista that I was keeping around as less-capable alternatives to neovim-only ones like nvim-tree and symbols-outline. I also scrapped a bunch of stuff that used to be needed for
I switched from airline to lualine, and spent a little time on a custom theme that looks nice even without powerline chevrons.
I added bufferline, which turns out to totally change the way I do things, in a way that’s hard to explain. Much less feeling of losing track of where I am when chasing references or debugging. I don’t feel a need to use “open in tab” commands anymore (which was actually one of my major reasons for getting into Telescope a while back), because I know that all the buffers back up the stack are still there. Which they always were, but now they’re staring at me from the tab bar. Weird, I know.
I also added Mason, so that I don’t have to externally manage LSP servers anymore.
I updated indent-blankline to v3 — which was a bit of work because I want it only for YAML, and v3 removes the “only activate for these filetypes” option in favor of a hook system that makes you write code to do the same thing. But it looks nicer now.
And I’m trying to convince myself to stick to one of those note-taking things — it’s Neorg for now but I don’t love it. Will report back if I find something I love.
In non-vim-related news, I took a couple next steps on this Arrow-related journey:
I changed my data model a bit to add a “generation” field, so that now (wiith some improvements to the scripts) I can sync only the rows that have been added or modified since the last download, instead of re-fetching the whole thing every time.
I upgraded the app that serves the data (which is also my general-purpose API app) from psycopg2 to the new psycopg v3, hoping to improve the performance of that streaming response. That upgrade entailed updates to sqlalchemy, marshmallow, and the Flask glue layers, and required about a dozen fixes (some simple, some really frustrating) for things that had been broken by one or all of the above. In the end… I didn’t get any performance improvement, but at least I’m over that hurdle.
I didn’t even pick any of those libraries, by the way, I “inherited” this part of the app and just started building on top of what was there. I didn’t have a clue how to use them when I started out, either. Now I feel like I finally have half a clue.
I see I left a half-finished thought here. I think it was meant to be: I also scrapped a bunch of stuff that used to be needed for changing themes when using non-256-color terminals (or when using a 256-color terminal to ssh into a machine with ancient terminfo). That hasn’t been a concern for me for a few years at least.
This sounds intriguing and I would like to test it out myself. Would you mind sharing your config?
Mostly it’s just about loading
akinsho/bufferline.nvim
; it doesn’t need any config to do what I described there. Possession (gennaro-tedesco/nvim-possession
) also helps a bit by giving you a way to restore your buffers when you quit and come back.But since you asked, here’s my config, slightly sanitized. It’s not particularly organized or anything. Unless you’re using my colorscheme you’d probably do best to remove the
highlights
arg to bufferline. Or configure your own, of course, but the defaults should be fine for most people.I also have lots of keybinds that probably won’t be to most people’s taste :)
I have two Moonlanders and I am so happy with them. My only real gripe is that I’m so used to the layout that it’s near impossible for me to be productive on a standard/laptop keyboard. I’m tempted by the Voyager, I’d love to go low profile. The tumb cluster just having two keys is bit of a turn off though, with my current layout[1] I make heavy use of all three (or actually four) of them.
[1] https://configure.zsa.io/moonlander/layouts/QBX7W/latest/0
I am visiting my parents who live on an island a an hour or so away. It will be a weekend of RnR.