@@ -701,162 +701,113 @@ Or go more fancy by using which-key.nvim
701
701
<https://github.com/folke/which-key.nvim > plugin:
702
702
703
703
>lua
704
- -- VISUAL mode mappings
705
- -- s, x, v modes are handled the same way by which_key
706
- require("which-key").register({
707
- -- ...
708
- ["<C-g> "] = {
709
- c = { ":<C-u> '<,'>GpChatNew<cr> ", "Visual Chat New" },
710
- p = { ":<C-u> '<,'>GpChatPaste<cr> ", "Visual Chat Paste" },
711
- t = { ":<C-u> '<,'>GpChatToggle<cr> ", "Visual Toggle Chat" },
712
-
713
- ["<C-x> "] = { ":<C-u> '<,'>GpChatNew split<cr> ", "Visual Chat New split" },
714
- ["<C-v> "] = { ":<C-u> '<,'>GpChatNew vsplit<cr> ", "Visual Chat New vsplit" },
715
- ["<C-t> "] = { ":<C-u> '<,'>GpChatNew tabnew<cr> ", "Visual Chat New tabnew" },
716
-
717
- r = { ":<C-u> '<,'>GpRewrite<cr> ", "Visual Rewrite" },
718
- a = { ":<C-u> '<,'>GpAppend<cr> ", "Visual Append (after)" },
719
- b = { ":<C-u> '<,'>GpPrepend<cr> ", "Visual Prepend (before)" },
720
- i = { ":<C-u> '<,'>GpImplement<cr> ", "Implement selection" },
721
-
722
- g = {
723
- name = "generate into new ..",
724
- p = { ":<C-u> '<,'>GpPopup<cr> ", "Visual Popup" },
725
- e = { ":<C-u> '<,'>GpEnew<cr> ", "Visual GpEnew" },
726
- n = { ":<C-u> '<,'>GpNew<cr> ", "Visual GpNew" },
727
- v = { ":<C-u> '<,'>GpVnew<cr> ", "Visual GpVnew" },
728
- t = { ":<C-u> '<,'>GpTabnew<cr> ", "Visual GpTabnew" },
729
- },
730
-
731
- n = { "<cmd> GpNextAgent<cr> ", "Next Agent" },
732
- s = { "<cmd> GpStop<cr> ", "GpStop" },
733
- x = { ":<C-u> '<,'>GpContext<cr> ", "Visual GpContext" },
734
-
735
- w = {
736
- name = "Whisper",
737
- w = { ":<C-u> '<,'>GpWhisper<cr> ", "Whisper" },
738
- r = { ":<C-u> '<,'>GpWhisperRewrite<cr> ", "Whisper Rewrite" },
739
- a = { ":<C-u> '<,'>GpWhisperAppend<cr> ", "Whisper Append (after)" },
740
- b = { ":<C-u> '<,'>GpWhisperPrepend<cr> ", "Whisper Prepend (before)" },
741
- p = { ":<C-u> '<,'>GpWhisperPopup<cr> ", "Whisper Popup" },
742
- e = { ":<C-u> '<,'>GpWhisperEnew<cr> ", "Whisper Enew" },
743
- n = { ":<C-u> '<,'>GpWhisperNew<cr> ", "Whisper New" },
744
- v = { ":<C-u> '<,'>GpWhisperVnew<cr> ", "Whisper Vnew" },
745
- t = { ":<C-u> '<,'>GpWhisperTabnew<cr> ", "Whisper Tabnew" },
746
- },
704
+ require("which-key").add({
705
+ -- VISUAL mode mappings
706
+ -- s, x, v modes are handled the same way by which_key
707
+ {
708
+ mode = { "v" },
709
+ nowait = true,
710
+ remap = false,
711
+ { "<C-g><C-t> ", ":<C-u> '<,'>GpChatNew tabnew<cr> ", desc = "ChatNew tabnew" },
712
+ { "<C-g><C-v> ", ":<C-u> '<,'>GpChatNew vsplit<cr> ", desc = "ChatNew vsplit" },
713
+ { "<C-g><C-x> ", ":<C-u> '<,'>GpChatNew split<cr> ", desc = "ChatNew split" },
714
+ { "<C-g> a", ":<C-u> '<,'>GpAppend<cr> ", desc = "Visual Append (after)" },
715
+ { "<C-g> b", ":<C-u> '<,'>GpPrepend<cr> ", desc = "Visual Prepend (before)" },
716
+ { "<C-g> c", ":<C-u> '<,'>GpChatNew<cr> ", desc = "Visual Chat New" },
717
+ { "<C-g> g", group = "generate into new .." },
718
+ { "<C-g> ge", ":<C-u> '<,'>GpEnew<cr> ", desc = "Visual GpEnew" },
719
+ { "<C-g> gn", ":<C-u> '<,'>GpNew<cr> ", desc = "Visual GpNew" },
720
+ { "<C-g> gp", ":<C-u> '<,'>GpPopup<cr> ", desc = "Visual Popup" },
721
+ { "<C-g> gt", ":<C-u> '<,'>GpTabnew<cr> ", desc = "Visual GpTabnew" },
722
+ { "<C-g> gv", ":<C-u> '<,'>GpVnew<cr> ", desc = "Visual GpVnew" },
723
+ { "<C-g> i", ":<C-u> '<,'>GpImplement<cr> ", desc = "Implement selection" },
724
+ { "<C-g> n", "<cmd> GpNextAgent<cr> ", desc = "Next Agent" },
725
+ { "<C-g> p", ":<C-u> '<,'>GpChatPaste<cr> ", desc = "Visual Chat Paste" },
726
+ { "<C-g> r", ":<C-u> '<,'>GpRewrite<cr> ", desc = "Visual Rewrite" },
727
+ { "<C-g> s", "<cmd> GpStop<cr> ", desc = "GpStop" },
728
+ { "<C-g> t", ":<C-u> '<,'>GpChatToggle<cr> ", desc = "Visual Toggle Chat" },
729
+ { "<C-g> w", group = "Whisper" },
730
+ { "<C-g> wa", ":<C-u> '<,'>GpWhisperAppend<cr> ", desc = "Whisper Append" },
731
+ { "<C-g> wb", ":<C-u> '<,'>GpWhisperPrepend<cr> ", desc = "Whisper Prepend" },
732
+ { "<C-g> we", ":<C-u> '<,'>GpWhisperEnew<cr> ", desc = "Whisper Enew" },
733
+ { "<C-g> wn", ":<C-u> '<,'>GpWhisperNew<cr> ", desc = "Whisper New" },
734
+ { "<C-g> wp", ":<C-u> '<,'>GpWhisperPopup<cr> ", desc = "Whisper Popup" },
735
+ { "<C-g> wr", ":<C-u> '<,'>GpWhisperRewrite<cr> ", desc = "Whisper Rewrite" },
736
+ { "<C-g> wt", ":<C-u> '<,'>GpWhisperTabnew<cr> ", desc = "Whisper Tabnew" },
737
+ { "<C-g> wv", ":<C-u> '<,'>GpWhisperVnew<cr> ", desc = "Whisper Vnew" },
738
+ { "<C-g> ww", ":<C-u> '<,'>GpWhisper<cr> ", desc = "Whisper" },
739
+ { "<C-g> x", ":<C-u> '<,'>GpContext<cr> ", desc = "Visual GpContext" },
747
740
},
748
- -- ...
749
- }, {
750
- mode = "v", -- VISUAL mode
751
- prefix = "",
752
- buffer = nil,
753
- silent = true,
754
- noremap = true,
755
- nowait = true,
756
- })
757
-
758
- -- NORMAL mode mappings
759
- require("which-key").register({
760
- -- ...
761
- ["<C-g> "] = {
762
- c = { "<cmd> GpChatNew<cr> ", "New Chat" },
763
- t = { "<cmd> GpChatToggle<cr> ", "Toggle Chat" },
764
- f = { "<cmd> GpChatFinder<cr> ", "Chat Finder" },
765
-
766
- ["<C-x> "] = { "<cmd> GpChatNew split<cr> ", "New Chat split" },
767
- ["<C-v> "] = { "<cmd> GpChatNew vsplit<cr> ", "New Chat vsplit" },
768
- ["<C-t> "] = { "<cmd> GpChatNew tabnew<cr> ", "New Chat tabnew" },
769
-
770
- r = { "<cmd> GpRewrite<cr> ", "Inline Rewrite" },
771
- a = { "<cmd> GpAppend<cr> ", "Append (after)" },
772
- b = { "<cmd> GpPrepend<cr> ", "Prepend (before)" },
773
-
774
- g = {
775
- name = "generate into new ..",
776
- p = { "<cmd> GpPopup<cr> ", "Popup" },
777
- e = { "<cmd> GpEnew<cr> ", "GpEnew" },
778
- n = { "<cmd> GpNew<cr> ", "GpNew" },
779
- v = { "<cmd> GpVnew<cr> ", "GpVnew" },
780
- t = { "<cmd> GpTabnew<cr> ", "GpTabnew" },
781
- },
782
-
783
- n = { "<cmd> GpNextAgent<cr> ", "Next Agent" },
784
- s = { "<cmd> GpStop<cr> ", "GpStop" },
785
- x = { "<cmd> GpContext<cr> ", "Toggle GpContext" },
786
741
787
- w = {
788
- name = "Whisper",
789
- w = { "<cmd> GpWhisper<cr> ", "Whisper" },
790
- r = { "<cmd> GpWhisperRewrite<cr> ", "Whisper Inline Rewrite" },
791
- a = { "<cmd> GpWhisperAppend<cr> ", "Whisper Append (after)" },
792
- b = { "<cmd> GpWhisperPrepend<cr> ", "Whisper Prepend (before)" },
793
- p = { "<cmd> GpWhisperPopup<cr> ", "Whisper Popup" },
794
- e = { "<cmd> GpWhisperEnew<cr> ", "Whisper Enew" },
795
- n = { "<cmd> GpWhisperNew<cr> ", "Whisper New" },
796
- v = { "<cmd> GpWhisperVnew<cr> ", "Whisper Vnew" },
797
- t = { "<cmd> GpWhisperTabnew<cr> ", "Whisper Tabnew" },
798
- },
742
+ -- NORMAL mode mappings
743
+ {
744
+ mode = { "n" },
745
+ nowait = true,
746
+ remap = false,
747
+ { "<C-g><C-t> ", "<cmd> GpChatNew tabnew<cr> ", desc = "New Chat tabnew" },
748
+ { "<C-g><C-v> ", "<cmd> GpChatNew vsplit<cr> ", desc = "New Chat vsplit" },
749
+ { "<C-g><C-x> ", "<cmd> GpChatNew split<cr> ", desc = "New Chat split" },
750
+ { "<C-g> a", "<cmd> GpAppend<cr> ", desc = "Append (after)" },
751
+ { "<C-g> b", "<cmd> GpPrepend<cr> ", desc = "Prepend (before)" },
752
+ { "<C-g> c", "<cmd> GpChatNew<cr> ", desc = "New Chat" },
753
+ { "<C-g> f", "<cmd> GpChatFinder<cr> ", desc = "Chat Finder" },
754
+ { "<C-g> g", group = "generate into new .." },
755
+ { "<C-g> ge", "<cmd> GpEnew<cr> ", desc = "GpEnew" },
756
+ { "<C-g> gn", "<cmd> GpNew<cr> ", desc = "GpNew" },
757
+ { "<C-g> gp", "<cmd> GpPopup<cr> ", desc = "Popup" },
758
+ { "<C-g> gt", "<cmd> GpTabnew<cr> ", desc = "GpTabnew" },
759
+ { "<C-g> gv", "<cmd> GpVnew<cr> ", desc = "GpVnew" },
760
+ { "<C-g> n", "<cmd> GpNextAgent<cr> ", desc = "Next Agent" },
761
+ { "<C-g> r", "<cmd> GpRewrite<cr> ", desc = "Inline Rewrite" },
762
+ { "<C-g> s", "<cmd> GpStop<cr> ", desc = "GpStop" },
763
+ { "<C-g> t", "<cmd> GpChatToggle<cr> ", desc = "Toggle Chat" },
764
+ { "<C-g> w", group = "Whisper" },
765
+ { "<C-g> wa", "<cmd> GpWhisperAppend<cr> ", desc = "Whisper Append (after)" },
766
+ { "<C-g> wb", "<cmd> GpWhisperPrepend<cr> ", desc = "Whisper Prepend (before)" },
767
+ { "<C-g> we", "<cmd> GpWhisperEnew<cr> ", desc = "Whisper Enew" },
768
+ { "<C-g> wn", "<cmd> GpWhisperNew<cr> ", desc = "Whisper New" },
769
+ { "<C-g> wp", "<cmd> GpWhisperPopup<cr> ", desc = "Whisper Popup" },
770
+ { "<C-g> wr", "<cmd> GpWhisperRewrite<cr> ", desc = "Whisper Inline Rewrite" },
771
+ { "<C-g> wt", "<cmd> GpWhisperTabnew<cr> ", desc = "Whisper Tabnew" },
772
+ { "<C-g> wv", "<cmd> GpWhisperVnew<cr> ", desc = "Whisper Vnew" },
773
+ { "<C-g> ww", "<cmd> GpWhisper<cr> ", desc = "Whisper" },
774
+ { "<C-g> x", "<cmd> GpContext<cr> ", desc = "Toggle GpContext" },
799
775
},
800
- -- ...
801
- }, {
802
- mode = "n", -- NORMAL mode
803
- prefix = "",
804
- buffer = nil,
805
- silent = true,
806
- noremap = true,
807
- nowait = true,
808
- })
809
-
810
- -- INSERT mode mappings
811
- require("which-key").register({
812
- -- ...
813
- ["<C-g> "] = {
814
- c = { "<cmd> GpChatNew<cr> ", "New Chat" },
815
- t = { "<cmd> GpChatToggle<cr> ", "Toggle Chat" },
816
- f = { "<cmd> GpChatFinder<cr> ", "Chat Finder" },
817
-
818
- ["<C-x> "] = { "<cmd> GpChatNew split<cr> ", "New Chat split" },
819
- ["<C-v> "] = { "<cmd> GpChatNew vsplit<cr> ", "New Chat vsplit" },
820
- ["<C-t> "] = { "<cmd> GpChatNew tabnew<cr> ", "New Chat tabnew" },
821
776
822
- r = { "<cmd> GpRewrite<cr> ", "Inline Rewrite" },
823
- a = { "<cmd> GpAppend<cr> ", "Append (after)" },
824
- b = { "<cmd> GpPrepend<cr> ", "Prepend (before)" },
825
-
826
- g = {
827
- name = "generate into new ..",
828
- p = { "<cmd> GpPopup<cr> ", "Popup" },
829
- e = { "<cmd> GpEnew<cr> ", "GpEnew" },
830
- n = { "<cmd> GpNew<cr> ", "GpNew" },
831
- v = { "<cmd> GpVnew<cr> ", "GpVnew" },
832
- t = { "<cmd> GpTabnew<cr> ", "GpTabnew" },
833
- },
834
-
835
- x = { "<cmd> GpContext<cr> ", "Toggle GpContext" },
836
- s = { "<cmd> GpStop<cr> ", "GpStop" },
837
- n = { "<cmd> GpNextAgent<cr> ", "Next Agent" },
838
-
839
- w = {
840
- name = "Whisper",
841
- w = { "<cmd> GpWhisper<cr> ", "Whisper" },
842
- r = { "<cmd> GpWhisperRewrite<cr> ", "Whisper Inline Rewrite" },
843
- a = { "<cmd> GpWhisperAppend<cr> ", "Whisper Append (after)" },
844
- b = { "<cmd> GpWhisperPrepend<cr> ", "Whisper Prepend (before)" },
845
- p = { "<cmd> GpWhisperPopup<cr> ", "Whisper Popup" },
846
- e = { "<cmd> GpWhisperEnew<cr> ", "Whisper Enew" },
847
- n = { "<cmd> GpWhisperNew<cr> ", "Whisper New" },
848
- v = { "<cmd> GpWhisperVnew<cr> ", "Whisper Vnew" },
849
- t = { "<cmd> GpWhisperTabnew<cr> ", "Whisper Tabnew" },
850
- },
777
+ -- INSERT mode mappings
778
+ {
779
+ mode = { "i" },
780
+ nowait = true,
781
+ remap = false,
782
+ { "<C-g><C-t> ", "<cmd> GpChatNew tabnew<cr> ", desc = "New Chat tabnew" },
783
+ { "<C-g><C-v> ", "<cmd> GpChatNew vsplit<cr> ", desc = "New Chat vsplit" },
784
+ { "<C-g><C-x> ", "<cmd> GpChatNew split<cr> ", desc = "New Chat split" },
785
+ { "<C-g> a", "<cmd> GpAppend<cr> ", desc = "Append (after)" },
786
+ { "<C-g> b", "<cmd> GpPrepend<cr> ", desc = "Prepend (before)" },
787
+ { "<C-g> c", "<cmd> GpChatNew<cr> ", desc = "New Chat" },
788
+ { "<C-g> f", "<cmd> GpChatFinder<cr> ", desc = "Chat Finder" },
789
+ { "<C-g> g", group = "generate into new .." },
790
+ { "<C-g> ge", "<cmd> GpEnew<cr> ", desc = "GpEnew" },
791
+ { "<C-g> gn", "<cmd> GpNew<cr> ", desc = "GpNew" },
792
+ { "<C-g> gp", "<cmd> GpPopup<cr> ", desc = "Popup" },
793
+ { "<C-g> gt", "<cmd> GpTabnew<cr> ", desc = "GpTabnew" },
794
+ { "<C-g> gv", "<cmd> GpVnew<cr> ", desc = "GpVnew" },
795
+ { "<C-g> n", "<cmd> GpNextAgent<cr> ", desc = "Next Agent" },
796
+ { "<C-g> r", "<cmd> GpRewrite<cr> ", desc = "Inline Rewrite" },
797
+ { "<C-g> s", "<cmd> GpStop<cr> ", desc = "GpStop" },
798
+ { "<C-g> t", "<cmd> GpChatToggle<cr> ", desc = "Toggle Chat" },
799
+ { "<C-g> w", group = "Whisper" },
800
+ { "<C-g> wa", "<cmd> GpWhisperAppend<cr> ", desc = "Whisper Append (after)" },
801
+ { "<C-g> wb", "<cmd> GpWhisperPrepend<cr> ", desc = "Whisper Prepend (before)" },
802
+ { "<C-g> we", "<cmd> GpWhisperEnew<cr> ", desc = "Whisper Enew" },
803
+ { "<C-g> wn", "<cmd> GpWhisperNew<cr> ", desc = "Whisper New" },
804
+ { "<C-g> wp", "<cmd> GpWhisperPopup<cr> ", desc = "Whisper Popup" },
805
+ { "<C-g> wr", "<cmd> GpWhisperRewrite<cr> ", desc = "Whisper Inline Rewrite" },
806
+ { "<C-g> wt", "<cmd> GpWhisperTabnew<cr> ", desc = "Whisper Tabnew" },
807
+ { "<C-g> wv", "<cmd> GpWhisperVnew<cr> ", desc = "Whisper Vnew" },
808
+ { "<C-g> ww", "<cmd> GpWhisper<cr> ", desc = "Whisper" },
809
+ { "<C-g> x", "<cmd> GpContext<cr> ", desc = "Toggle GpContext" },
851
810
},
852
- -- ...
853
- }, {
854
- mode = "i", -- INSERT mode
855
- prefix = "",
856
- buffer = nil,
857
- silent = true,
858
- noremap = true,
859
- nowait = true,
860
811
})
861
812
<
862
813
0 commit comments