Commit graph

36 commits

Author SHA1 Message Date
Sanchayan Maity 81fc328b4e nvim: after/plugin/fugitive: Only keep the diff window around
Somehow dirvish buffer opens along with diff window when using
this mapping. Use only to close any other windows in this tab.
2022-04-03 08:54:34 +05:30
Sanchayan Maity 2d17fe00ab nvim: autoload/git: Use difftool for review
The difftool version is actually useful since it populates the quickfix
list when the -y argument is not used. This gives rise to a possibility
where the quickfix list can be filtered to ignore or look only at files
we want.

While at it also add the version which opens each changed file in a tab
and gives a diffsplit view.
2022-04-03 08:53:46 +05:30
Sanchayan Maity ac3039d64b nvim: after/plugin/fugitive: Improve git stash command mapping 2022-02-13 14:01:03 +05:30
Sanchayan Maity 7d70992eae nvim: after/plugin/fugitive: Add mapping to help with review 2022-02-10 21:20:51 +05:30
Sanchayan Maity 05bbba29a9 nvim: after/plugin/fugitive: Mapping for diffing in a new tab in Gstatus 2022-02-10 21:20:51 +05:30
Sanchayan Maity 316c17ad13 nvim: after/plugin/fugitive: Improve the diff commands
There was no need for the tab command shenanigans.
2022-02-10 21:20:51 +05:30
Sanchayan Maity 60478a59b0 nvim: after/plugin/fugitive: Make diff & difftool usage painless 2022-02-08 15:47:57 +05:30
Sanchayan Maity 3cf20c4822 nvim: autoload/git: Generate a helpful name to use with stash 2022-01-19 17:44:15 +05:30
Sanchayan Maity c35ca910e4 nvim: plugins: Switch to gitlinker from vim-rhubarb
Also see commit a7b12dc6.
2022-01-15 15:53:43 +05:30
Sanchayan Maity 6ab7d9531d nvim: after/plugin/fugitive: Force local tag update on fetch 2021-12-22 12:55:51 +05:30
Sanchayan Maity c84e620795 nvim: after/plugin/fugitive: Improve normal mode mapping for GBrowse 2021-11-17 18:00:54 +05:30
Sanchayan Maity d989d6adbc nvim: after/plugin/fugitive: Enable q mapping for fugitiveblame 2021-11-17 16:47:19 +05:30
Sanchayan Maity fe34c26993 nvim: fugitive/gitsigns: Enable git blame line
Now that we dropped git-messenger, enable git blame line with fugitive
and gitsigns.
2021-11-17 11:13:14 +05:30
Sanchayan Maity a7b12dc642 nvim: plugins: Enable GBrowse support
GBrowse also seems to at least need the autoloaded functions from netrw,
so we only disable netrw commands and mappings.

See https://github.com/tpope/vim-fugitive/issues/1010.
2021-11-08 12:31:17 +05:30
Sanchayan Maity 4b6bd7e7ed nvim: after/plugin/fugitive: Add key mappings for git log grep
Usage:
$ git log --grep=word
$ git log -Gword
2021-09-29 11:42:52 +05:30
Sanchayan Maity 350a6edd2c nvim: fugitive/git: Add git helper to push upstream
Now that we set push.default to nothing in our git configuration, add
a git helper to figure out the upstream for the current branch and push
it.
2021-09-25 13:21:01 +05:30
Sanchayan Maity ccb4b4343d nvim: after/plugin: fugitive: Update key mappings 2021-09-10 13:41:24 +05:30
Sanchayan Maity efaba37bcf nvim: fugitive/git: Add helper to rename branch 2021-07-15 21:12:27 +05:30
Sanchayan Maity d3b8cec40a nvim: git: Add functionality to restore using git reflog 2021-07-09 10:34:12 +05:30
Sanchayan Maity a16c244fce nvim: autoload/ftplugin: git: Add rebase and merge helpers 2021-06-17 16:58:12 +05:30
Sanchayan Maity 3942f04633 nvim: after/plugin: fugitve: Use gS mapping to stash file
While at it, use <Leader>G for :Git.
2021-06-07 20:54:41 +05:30
Sanchayan Maity 3ba1673068 nvim: after/plugin: fugitive: Update gF and gE mapping
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.
2021-06-04 15:50:35 +05:30
Sanchayan Maity 748fd222da nvim: after/ftplugin: Use 'wipe' for bufhidden 2021-05-25 11:39:40 +05:30
Sanchayan Maity f088e258da nvim: after/plugin/fugitive: Add some more key mappings 2021-05-25 10:48:33 +05:30
Sanchayan Maity f05e5bcd5d nvim: after/plugin: fugitive: Add a key mapping for Gedit
Gedit is helpful to open up previous versions of the file. For example,
:Gedit HEAD~3:% loads the current file as it existed 3 commits ago.
2021-05-18 13:11:23 +05:30
Sanchayan Maity 08df60f731 nvim: after: git/fugitive: Add settings and mappings to not leave buffers behind 2021-05-14 16:34:25 +05:30
Sanchayan Maity 8694445d2d nvim: after: plugin/ftplugin: Drop unnecessary maps
Fugitive/vim already provides the necessary mappings. No need for
mapping these.
2021-05-14 13:46:25 +05:30
Sanchayan Maity b9e5fb64bf nvim: fugitive: Refactor and add some more git helpers 2021-04-27 09:29:41 +05:30
Sanchayan Maity 765eec81b6 nvim: after: fugitive: Update key mappings 2021-04-19 12:20:00 +05:30
Sanchayan Maity ff7e6f524c nvim: git/fugitive: Add helper for git branch and checkout 2021-03-19 12:15:52 +05:30
Sanchayan Maity 91be84b9d7 nvim: Switch back to fugitive again :)
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.
2021-02-01 18:17:13 +05:30
Sanchayan Maity d04c8675f9 nvim: Switch back to gina dropping fugitive
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.
2020-10-06 17:43:02 +05:30
Sanchayan Maity 27d4b8d326 nvim: Update git key bindings
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>
2020-09-02 11:21:53 +05:30
Sanchayan Maity a2d603d61a nvim: Re-introduce git-messenger
Now that we have dropped golden-ration add git-messenger back.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-24 20:23:30 +05:30
Sanchayan Maity ba8739f4d0 nvim: Drop git messenger
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>
2020-06-18 10:40:41 +05:30
Sanchayan Maity 19d00c7ac5 nvim: Add vim-fugitive for git back
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 20:50:06 +05:30