Often it is convenient to merge remote branch origin/foo into local
branch foo, without having to checkout foo first. Use gF mapping for
the same.
One may edit alternate versions of the file in different branches using
:Gedit <branch>:/path/to/file. Use gE mapping for the same.
This reverts commit e6397864d0.
This was actually wrong. nnoremap should be always what we want. For
example, this broke the <Leader>r mapping for gitrebase and would invoke
:Reword from lambdalisue/reword.vim.
The plugin is a pretty small ftplugin. Just add it to our ftplugin.
This also fixes the issue where this plugin did not take affect
when using interactive rebase from within fugitive.
Drop the syntax highlighting plugins for fish and nix and switch to
treesitter. The ftdetect is taken from the respective plugins.
We might need to add the indent specific scripts for fish and nix
later since we are not enabling indent with treesitter.
Really delete the buffer. If bdelete is used, we can still go back to
the previous buffer using <C-^> which we do not want. Basically we do
not want a fugitive git buffer to become alternate-file.
See :help alternate-file.
We have been mostly relying on diffconflicts plugin to resolve merge
conflicts. For complex merge conflicts, it becomes difficult to
understand which conflict hunk to pick. The syntax highlighting also
stopped taking effect due to treesitter probably. So just drop this.
Introducing a mapping to jump among conflicts would be helpful.
We let the syntax highlighting entries in our color scheme be, just
in case we decide to revisit this.
Different prettier versions format differently. Add a keymapping to
invoke the project local prettier. Using Neoformat prettier uses the
global install prettier which can give different results.
We drop vim-system-copy and will explicitly use registers when required.
Add nvim-peekup to help with registers and vim-signature for marks. Some
additional helper bindings for working with marks are added as well.
This reverts commit 86de71d5da.
This plugin seems to create problems for things that should work. For
example, trying to paste with 'p' triggers which-key when it should not.
Disabling everything in setup except for Leader prefixed keys does not
work either.
Some options need to be set for both vim.bo (for the current buffer) and
vim.o (for newly opened buffers). This is required till the below PR
gets merged.
https://github.com/neovim/neovim/pull/13479
With nvim-bqf when opening the quickfix list, it jumps around the opened
buffers. For example, when calling LSP reference on a variable in buffer
one, it jumps to buffer three after the quickfix list opens. This is
annoying, so dump it. The preview feature has not been that helpful
anyways.
We use galaxyline for the status line and it already provides
LSP diagnostics info. So drop lsp-status. While the progress
message during the loading in status line is nice, may be will
incorporate it later by picking only the required pieces.
While at it, expose all diagnostics via statusline using galaxyline
components.
With most of our operations now being done through fzf + git command
line or lazygit, we primarily only require the log & blame facilities.
The blame interface in Gina is confusing.
This time however, we include some nice helper functions of our own.
vim-signify recently fixed the below issue which was a problem earlier.
https://github.com/mhinz/vim-signify/issues/345
Considering that gitsigns exhibits a problem where the complete sign
column is marked while in the middle of a rebase, switch back to using
signify.
This improves the highlighting for files written in pandoc markdown.
It seems having the rainbow parentheses plugin active, results in
overwriting the syntax highlighting for URLs.
With this we can invoke git commit and not have a nested neovim
instance. This also makes 'C' option in lazygit to work properly
when lazygit is being used from the floating terminal with floaterm.
We want information messages to have orange color and warning messages
to have pink color.
Also fix the syntax highlighting for LspDiagnostics. While migrating
away from diagnostic-nvim, we did not specify the syntax highlight for
virtual text correctly, which resulted in them having just plain white
text on black background.
- TSStructure was deprecated
- TSVariable/TSVariableBuiltin/TSNamespace/TSComment seem to be newly
introduced
- Use a different color for functions and identifiers
- Reorder alphabetically. Easier to compare against upstream doc
Not sure what changed in recent releases for either nvim, packer or
lspconfig plugins, but, our custom LSP configuration file seems to
not be loaded or have any effect when specified via packer's config
directive. So load it manually in init.
While we dropped diffconflicts earlier and switch to vanilla vimdiff,
two way merges are definitely better than three way merges. 3 way merge
as in gina or vimdiff is extremely confusing except for may be the
simplest of merge conflicts.
conflict-marker and diffconflicts should let us handle all cases.
We added edita to be able to do interactive rebase inside neovim
terminal which Gina does not support by default.
See issue
https://github.com/lambdalisue/gina.vim/issues/276
Mostly haven't been using this, just relying on spawning a separate pane
in tmux or kitty window to do the rebase. So drop this.
With this commit upstream
a68b21be60
packer can handle finding default branches by itself and does not error
out like earlier for anything named other than master.
We can move between conflict markers using functionality from the
conflict markers plugin and we also have gina. If required just
introduce the command mapping later.
Currently there is an observable bug where this doesn't play well with
gina buffers. Perhaps it should be disabled for any gina buffers or
something similar.
The undo hunk feature is complete garbage at the moment. Also it seems
whenever we have changes and thus signs in gutter, sometimes there is
an observable sluggishness.
Since PaqClean cleans up anything in packages directory that are not in
configuration, including itself, it is necessary to include paq itself
in the packages list.
The only purposes we have been using fugitive for is status and commit
which should be equally comfortable with gina. Gina log is really
instantaneous even on big repositories like Linux while fugitive just
freezes vim. For handling hunks, merge and rebase conflicts we anyways
rely on the other plugins.
We use edita so that applications which use $EDITOR internally can work
inside neovim terminal without opening another instance which does not
work with the already running instance. This is required for things like
interactive rebase. See below issue.
https://github.com/lambdalisue/gina.vim/issues/276
We drop fzf-checkout as it isn't that useful anymore since gina allows
easy checkouts for branch or tags easily.
This plugin provides support for Quickfix and Location list along with
previews. Also, does not do fuzzy match on file names which is useful.
Move some of the commands from fzf to fzf-preview as it provides
previews for those as well.
Using pedit for previews for quickfix list wasn't super comfortable.
Drop it, now that we have quickfix preview with fzf-preview.
The conflict markers plugin is what we have been using all the time and
is useful even without resorting to merge tool. Drop the DiffConflicts
plugin and use vimdiff as the merge tool if at all we need to resort to
a full 3 way merge view.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
All the added highlight groups in this commit are not defined upstream
in nvim-highlite. We may change this later.
While at it, remove all 'link' usages.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
fzf checkout plugin introduced some new functionality. Taking advantage
of that update existing and introduce some new key bindings.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
This does not work anymore. Probably because we dropped python and it
also does not list a source for completion-nvim. However, we can copy
anything from tmux using tmux extracto plugin to the clipboard, so
that is also a solution.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Commit f977b8a while dropping all python dependencies also dropped
floaterm. However it has a dependency on python based neovim-remote
only if integration with git or floaterm is required from command line
which we do not. So add it back. Using the previous toggle bindings
with this gives a nice floating terminal which can be easily hidden.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Commit c70ec87 dropped floating window for fzf due to golden ratio not
playing well with it. Now that we do not use golden ratio mode anymore
enable it back.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
We assume these are installed via nix and available globally. hasktags
and haskdogs do not build with stack on ghc8.8 and hence this switch.
With nix, haskdogs gives an issue due to locale like is also observed
when stack is installed via nix. codex does not seem to generate tags
which work.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Revert 13cea58905. This does not play well with defined color scheme and
overrides it which is annoying. The VimEnter approach mentioned did not
work, so just drop it and use preview windows as earlier.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Use this color scheme template to have a proper custom monokai color
scheme variant.
https://github.com/Iron-E/nvim-highlite
We will call it yolokai. YOLO monokai. While at it, drop all earlier
ones.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
This plugin results in the odd grey high lighting seen in floating
windows when using hover with nvim-lsp. See the below issue.
https://github.com/neovim/neovim/issues/12543
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Love this plugin but it completely messes up the quickfix window. If it
did not touch the quickfix window every thing would be fine.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
n will tell ctags add a line number filed in each tag record
and S means including function signatures.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
git messenger does not size it's floating window correctly and cursor
gets all messed up while trying to jump in the floating window with
golden-ratio mode being active. May be related to the issue
https://github.com/rhysd/git-messenger.vim/issues/38
Based on the below issue
https://github.com/tpope/vim-fugitive/issues/1387
We can already use fugitive's git blame interface for seeing the last
commit on the line.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Also use vim-searchlight for search highlighting the word under cursor.
Add custom highlight color to make the word being searched under cursor
stand out for our color schemes and better key mappings to shift through
searches in command line.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>