Now all the terminal themes will adapt with the system theme. Like other apps
it will not do this automatically, however needing to restart the terminal
session is not to much is an issue.
This will be using `dotnet format` under the hood and take any settings from
the editorconfig. The advantage of this is it will only do the file, with
`dotnet format` you need todo the hole solution.
Nvim lsp has changed the way the config works. This is now on all the versions
on nvim I am using. The main one is in tumbleweed this is relatively up to
date.
The sign_define has also moved into the diagnostic config.
This add most of the snippets I used to have. It implements a custom
env_namespace for adding in the namespace of the file based on where it in the
file tree.
When you are in a monorepo you don't always have a tsconfig in the root. You do
however have a yarn.lock. This will now start ts_ls when it finds a yarn.lock
in the root of the repo.
This is some investigation in to nushell will work. I will be looking to use
this cross platform, as zsh will not work on windows.
Adds some of the core modules so I don't loose my mind having to relearn mussel
memory. The goal of this is to replicate my use of oh-my-zsh, I think this will
take some time, I have sunk years into the zsh config. The aliases will be the
same, the GOPATH project structure will be replicated and the dir hooks will be
implemeted so my PATH gets setup just as I like it.
This uses different icons to try and make things look a bit more cool. The look
of vim is not something I have really been focused on however, I think it may
be time to spice things up.
This is a bit tricky due to the filetype of deno being typescript. The
typescript server automatically starts on this filetype.
For now this looks in the root of the project to see if there is a deno.json or
package.json. Based on this, it will pick what one to use.
For formatting f# there really is only one tool, fantomas. The CLI for fantomas
has no input and will only do files. Ionide has built in support for fantomas,
we need some extra config to make this work because right now we are only using
Neoformat for formatting.
This updates the formatting function to format with the lsp only for f# files.
Anything else it will fall back to usign Neoformat. I am hoping that there will
not be many cases of this and we can continue to use Neoformat.
Removes the complete override to the linters and add extra flags to the
existing args. This will now automatically get any updates made to the plugin
linters.
This also add the `unstable_ts_config` to the eslint command so we can use
typescript configs with eslint 9. I don't really know how this will affect BC
with version 8, I will have to cross that bridge when we come to it. ATM this
is good for daily use of version 9.
So this is the first commit where we are starting to migrate from tmux.
Right now I'm not sure how this will go, every other attempt has not
lasted very long.
This does support all the features I am using in tmux though. TBH most
of the stuff in the tmux.conf wezterm does by default. For example, the
pain numbers start at 1 not 0.
This implements a fork of tmux navigation, the plugin I have been using
in vim since like.... day one.
This was a plugin I had started writing and using for running jest tests
in a nvim buffer. This has now been split out into its own dedicated
plugin.
See: https://github.com/adeattwood/spec.nvim
I have been wanting to play with this plugin for a long time now. I have
a minimal config that will give me most of what I need. Moving
parameters and arguments is a big one. Also selecting parameters, this
will also include the type definition so its much more powerful than
selecting words.
Jumping to functions has also been included, right now I am not sure how
much that will be used. My muscle memory is very used to <C-d> and <C-u>
for paging.
When you are in a buffer sometimes you want to do a search and replace
but preserve the case. For example if we have the following code.
```rust
let some_struct = SomeStruct::new();
```
if we want to rename this to `another_struct` we can call dev case and
it will search and replace preserving the case. We can run the following
command.
```
:S some_struct another_struct
```
This will replace the above code so we will be left with
```rust
let another_struct = AnotherStruct::new();
```
This plugin handles calling the cli tool and displaying an in place
preview of the change so you can see exactly what you will be changing.
It uses the `S` custom command so it feels similar to the built in `s`
Substitute command.
This is moves everything I can think of. A lot of the things I use have
this built in. The vim and tmux themes has been added so the place I
spend all my time looks nice.
This add a pattern for all lua files that will go to the corresponding
spec files. I don't think this will work on all the different projects
but, its a good start. There may need to be some tweaking to make it
work in vim plugins.
There have been some changes in the cspell config upstream to fix issues
in the cspell cli. These are mainly around the parsing of the output.
The only things my changes are adding in the file type and applying my
config file. They are only in the command not the parser.
Now we are using the upstream config and adding the extra params I need
rather than having to maintain a completely override.
Previously we were defining what ones we want to install. Now we are say
we want to install the grammar when we go to a file. If we don't have
that grammar installed then we will install it then
When writing tests with busted they use some other globals that you need
to tell you lsp about. I already have this for when I'm working on the
nvim config and configz.
Now that I have mostly moved over to sapling, rg dose not ignore git
files by default. When searching in vim it would search in the
node_modules by default. As you can imagine this took for ever.
Now we are passing the `--no-require-git` flag so it will ignore any
file / dirs that are in any .gitignore by default.
We are now adding lints test that disable async tests that do not use
await in them. I am by far the biggest offender for this and this is one
of the main reasons. Now any test I write will be synchronous by default
until I need it to be async.
The ollama plugin was using some APIs that are not yet available in nvim
stable. Now we are using the older APIs we can use this on other
versions of nvim.
The `vim.api.nvim_buf_set_text` does not take some parameters as `-1` to
add text to the end of the line. Now we are getting the text on the last
line adding the new text to it, then replacing the last line.
This enhancement includes key mappings designed to improve code folding
in Vim. One of these mappings involves a double leader, which
efficiently toggles the current fold. Additionally, another mapping
utilizes the square bracket convention for seamless navigation between
folds, employing the mnemonic "fold."
Consideration was given to the potential conflict between the `f` key
and "function." After thoughtful deliberation, the decision was made to
use LSP for navigating around functions.
The implementation is currently integrated with prr to narrow the focus
of differentials to a single hunk. This refinement significantly
enhances the manageability of reviewing large pull requests.
This is the plugin I have been using for a while now. I think its much
nicer to use than a tree style. Treating the filesystem as a buffer is
something I used in emacs and have come quite used to.
This is mainly for stylelint, I don't always have this installed and it
throws an error when you open a sass file and it tries to lint the
buffer. Now it will not know about any linters unless they are in the
PATH.