Commit graph

43 commits

Author SHA1 Message Date
Marty Oehme dfaed8c9dd
nvim: Update plugins and spellfile 2023-11-15 14:25:09 +01:00
Marty Oehme 8be40f5630
nvim: Update plugins 2023-10-05 18:28:15 +02:00
Marty Oehme bfb62e6783
nvim: Add markdown code evaluation mappings
Can edit (`<ll>ce`), jump-to (`]c`, `[c`), insert (`<ll>co`,
`<ll>cO`) and run (`<ll>cc`) code cells in markdown files.

They will not be evaluated as part of an overall repl but
only stand-alone!
2023-10-02 19:20:44 +02:00
Marty Oehme 490232d18a
nvim: Update plugins 2023-09-25 19:44:11 +02:00
Marty Oehme 061e341253
nvim: Remove speed-reading plugin
The 'bionic-reading' mode, I have never used successfully.
It distracts rather than enabling me to move over text
more quickly.
2023-09-16 11:22:03 +02:00
Marty Oehme 60ae2e43c3
nvim: Switch signature help to cmp plugin
Simply switched signature help. Need to extensively test, but to
be perfectly honest the previous sig help plugin did not work all
the time either.
2023-09-16 11:20:59 +02:00
Marty Oehme a9d7f96ad2
nvim: Update plugins 2023-08-25 16:32:51 +02:00
Marty Oehme 84eed308e1
nvim: Update plugins and dictionaries 2023-08-08 09:55:38 +02:00
Marty Oehme 0a3ca9f2b1
nvim: Add git conflict resolution mappings
Added simple merge conflict highlighting and resolution through
git-conflict.nvim plugin.

Allows moving to the next/prev conflict with ]x or [x respectively,
then resolving the conflict currently hovered by using ours/theirs/
both/or neither of the offered options (with `ho/hO/hm/hM`
respectively).
2023-08-07 11:30:09 +02:00
Marty Oehme 55518886f8
nvim: Add prose headline highlighting
Added simple highlighting plugin for prose headlines (and code
snippets). Will highlight the whole line a little from the
background and provide more space around it so it stands out.

Currently works (afaik) for markdown, rmd, norg filetypes.
2023-07-25 12:04:46 +02:00
Marty Oehme 4410a3fa49
nvim: Switch to aerial.nvim for outlines
Move from simrats symbols outline which worked very well but had
specific issues for displaying markdown outlines as soon as any
lsp would attach itself to the same buffer.

Aerial seems to not suffer from those issues so this is the one
we will go with for now.
2023-07-25 12:04:45 +02:00
Marty Oehme a97646c88a
nvim: Update plugins 2023-07-23 19:24:52 +02:00
Marty Oehme 06e0cca640
nvim: Change lspconfig to track master
If tracking stable (versioned) releases, it can get out of sync
with LSPs and display errors on startup - since the stable
version gets updated very rarely (over half a year ago currently)
but LSPs and their configs change more rapidly. Since the master
branch seems stable enough we will simply track this instead
for now.
2023-06-22 12:38:22 +02:00
Marty Oehme 676c5b2094
nvim: Update plugins 2023-06-22 12:38:21 +02:00
Marty Oehme b9de8b3914
nvim: Add undotree plugin
Lua implementation of the undo tree plugin, mapped to be
reachable with <leader>su (for show undo).
2023-06-17 22:02:37 +02:00
Marty Oehme f33b4c9c37
nvim: Restructure lua dir
Moved plugins into individual component module files which are
automatically required by lazy.nvim. Should make everything a tiny bit
more modular, or at least prepare the way for true modularity if I ever
have the time on my hands to ensure everything works with missing
modules.

Moved core settings into their own directory (`core`), and created a
`personal` folder which contains functions/plugins I wrote that do not
necessarily have to be their own imported plugin yet.

Finally, extended the utility functions a little, so we can detect if a
plugin exists and change e.g. key maps based on that (once again,
extending modularity a little more). Some simple attempts have been made
at that in the `mappings.lua` file, though it is nowhere near extensive
yet - most keymaps are still set regardless of plugin availability.

However, with this slimmer base to work off of, I feel more confident in
changing future things about this setup a little more ad-hoc without
having as many ripple repercussions as before.
2023-06-17 21:54:22 +02:00
Marty Oehme 41968e1361
nvim: Integrate null_ls for formatting and linting
Formatting and linting should from now be done with null_ls instead
of formatter.nvim (and nothing for linting so far).

This will still take a little to fully transition, for now we use
null_ls for eslint linting and prettier formatting for a variety
of javascript/typescript and astro files.

null_ls uses Mason installations under the hood and any tool it
uses also gets installed by Mason.
2023-06-15 09:47:32 +02:00
Marty Oehme de15382415
nvim: Remove spellsitter
Spellsitter funcitonality is long deprecated and included
in the mainline neovim project. So we might as well
remove it from our plugins.
2023-06-07 10:06:10 +02:00
Marty Oehme 92ab289537
nvim: Update plugins 2023-06-07 10:05:16 +02:00
Marty Oehme 760ed037ba
nvim: Update plugins 2023-05-23 15:50:37 +02:00
Marty Oehme d2e101b822
nvim: Add latex notation concealing with nabla
Notations will be concealed automatically on entering a textual buffer
and `$...$` style notations are contained.

Concealing can be turned off with <localleader>sV, which will toggle
concealing on or off for all notations in the file.
Additionally, the notation under curser can be viewed in a popup with
<localleader>sv.
2023-03-23 08:28:17 +01:00
Marty Oehme 2b64b4b750
nvim: Update lazy lockfile 2023-03-22 17:31:49 +01:00
Marty Oehme aa68137ff8
nvim: Add zk mappings 2023-03-22 17:01:02 +01:00
Marty Oehme d0e536b798
nvim: Update colorizer git address 2023-03-22 16:29:42 +01:00
Marty Oehme e95bd9b252
nvim: Add smartcolumn plugin 2023-03-22 16:29:41 +01:00
Marty Oehme f156292e8f
nvim: Add file tree
In addition to my standard file manager, vifm, being integrated into
neovim, I have now also added a side-pane file tree (akin to nerdtree)
that is easily reachable to get a quick overview of a file layout.

For now, I do not intend to do much more with the plugin, only keep it
for those rare cases I want to have a view on my file layout at the same
time as working in a buffer. For all other things (file operations
especially) I still have vifm.
2023-03-22 15:58:18 +01:00
Marty Oehme 22cfa037df
nvim: Add fidget.nvim
Added fidget plugin which shows the current loading status of LSPs. Only
works for a few LSP (so far), including lua and python. Should
automatically pick up new implementations on update. Will display a
small loading notification in the lower right corner, useful to display
status for those situations where LSP loading takes a long time (e.g.
rust compilation requirements or a large python environment).

FIXME Does not work for each python environment startup yet, and I am
not sure why - sometimes just does not display its loading startup.
2023-03-22 10:32:20 +01:00
Marty Oehme 6b28e6417b
nvim: Prepare lsp-zero switch to v2 branch
Switched the configuration of lsp-zero to its less integrated v2
version. Switched back to manually configuring most of nvim-cmp.

Addded some manual formatting to cmp which displays completion kind as
icons not as text.
Manually add luasnip integration.
2023-03-22 08:30:04 +01:00
Marty Oehme 39b495affd
nvim: Update lockfile 2023-03-21 18:58:51 +01:00
Marty Oehme b3aa44f7a5
nvim: Update plugin lockfile 2023-03-19 14:49:38 +01:00
Marty Oehme 6f3ac3d31f
nvim: Move Navigator to dev version
Since Navigator.nvim only implements wezterm compatibility in its main
branch as of now, we explicitly switch away from its stable version for
now.
2023-03-07 10:50:32 +01:00
Marty Oehme 74fdc4bc8f
nvim: Update plugins 2023-03-07 10:49:04 +01:00
Marty Oehme 382bcdba72
nvim: Hook treesitter commentstrings into comment maps 2023-03-07 10:46:25 +01:00
Marty Oehme 72514b2a5e
nvim: Update rainbow brackets to maintained fork 2023-03-07 10:45:43 +01:00
Marty Oehme 954ccf5e89
nvim: Improve dynamic colorscheme sourcing 2023-03-07 10:41:47 +01:00
Marty Oehme 1c7d0a9835
nvim: Default to stable versions for plugins
Using the lazy option 'version' we default to updating only to the
latest stable (semver) version of plugins. This should make it a little
more stable in the long run to keep up with plugin updates.

Not all plugins support this versioning scheme and for those that do not
it just keeps tracking the main branch.

Currently from the plugins that support it, only `nvim-lspconfig` needs
to be manually kept on the main branch since it is missing the correct
lua language server otherwise. This should be a problem of the past with
the release of the next version of the plugin.
2023-03-03 12:51:21 +01:00
Marty Oehme 051c0914ad
nvim: Add wrapping plugin 2023-03-03 12:38:09 +01:00
Marty Oehme 2c4d5c483d
nvim: Update plugin lockfile 2023-03-01 17:41:30 +01:00
Marty Oehme 2026f6d064
nvim: Switch to lsp-zero
lsp-zero offers a simple to set-up lsp configuration which is based
around the plugins I use anyway (lsp, cmp, luasnip) but integrates them
very well. I add a few small quality of life things on top (cmp
completion for / search and for vim command mode) as well as a boatload
of custom completion sources but otherwise make use of the nice presets.

This has de-bloated my _cmp.lua settings somewhat and allows me to have
a simple treesitter and a simple(r) lsp setup!

Additionally, switched to mason.nvim to manage my lsp sources (and
linters), which is both the new hotness and actually really useful.
Allows portable installation of most lsp servers into neovim data
directory so they do not clutter any other directories or global
namespaces.
2023-02-10 15:33:33 +01:00
Marty Oehme e8d2183264
nvim: Remove notational-fzf-vim plugin
Removed the notation velocity plugin for vim. I have not been making use
of it for ages and should I need a vim-internal way of digging through
my wiki I can probably find easier (and more clear) ways of doing so.
Nice plugin, but of no more use to me.
2023-02-10 11:15:38 +01:00
Marty Oehme fff6e60862
nvim: Remove cartographer plugin
Switch to use the nice new nvim-internal keymapping functions.
Cartographer was a really useful plugin when they did not yet exist but
now everything I wanted to do can be done without a mapping plugin, so
it is time to remove it.
2023-02-10 11:13:53 +01:00
Marty Oehme 08360ae7ff
nvim: Switch from quarto-vim to quarto-nvim
Switched to the neovim variant of quarto plugins since it may contain
improved integration with lsp and cmp - and offers completion and
diagnostics for code snippets *within* the overall markdown sources of
quarto, which is very exciting.
2023-02-10 09:19:27 +01:00
Marty Oehme cd0d519a28
nvim: Move to lazy.nvim package manager
Migrated from packer.nvim to lazy.nvim - it gives really fast loading
times, easy lazy loading for any package and a snazzy package manager
overview page (invoked through `:Lazy`) which, importantly, all do not
rely on a compiled plugin list.

In essence it feels like an easier to manage and robust packer
replacement (even though packer is a really good manager as well) that
is well worth to switch to. Migration was pretty painless as well.

One thing I might do in the future is split up the plugin structure
itself from a single plugin list (which invokes plugin settings files)
to several files containing the plugins and their settings since it
might give more structure.
2023-02-10 09:15:56 +01:00