2017-12-06 4 views
1

neu in vim zu schreiben, die vor kurzem über Mapping-Tastaturen Fragen kam, was auf Google bekommen und Stackoverflow ist nur so etwas wie dies map <C-\> :tab split<CR>:exec("tag ".expand("<cword>"))<CR> und map <A-]> :vsp <CR>:exec("tag ".expand("<cword>"))<CR>, dann suchte ich Vim-Dokumentation: Karte http://vimdoc.sourceforge.net/htmldoc/intro.html# <>, aber was Es erklärt auch nicht die Syntax, die Bedeutung der Symbole, kann jemand Referenzmaterial dafür vorschlagen? Vielen Dank!Können einige Aktien, wie vim Karte

+1

nicht der richtige Ort für diese Frage, Sie sind wahrscheinlich wegen der Schlüssel dort verwirrt, schauen Sie hier: http://vim.wikia.com/wiki/Mapping_keys_in_Vim_-_Tutorial_(Part_2) –

+0

Ich sehe, danke Sie. –

+1

Vim's eingebaute Dokumentation ist auch exzellent: Probieren Sie '' help: map'', '' help map.txt'', '' help 05.3'' – codeape

Antwort

2

Eine Zuordnung wie die, die Sie erwähnt hat drei Teile:

  • die Art der Zuordnung (map/nmap/imap/vmap/... und die entsprechenden noremap Versionen). Dies legt fest, in welchen Modi das Mapping aktiv ist. map bedeutet normaler Modus, visueller Modus und vom Bediener anstehender Modus. Bei der Verwendung von noremap/nnoremap/... erfolgt die Zuordnung in Bezug auf Vims-Standardtastenbelegungen, ansonsten können die Mappings selbst Mappings aufrufen.
  • Die zu bindenden Schlüssel. Dies kann ein normaler Schlüssel, ein Steuerzeichen wie <C-\> oder eine Folge von Schlüsseln sein.
  • eine Schlüsselsequenz, zu der zugeordnet werden soll.

In Ihrem ersten Fall ordnen Sie den Schlüssel <C-\> (control-Backspace) zu :tab split<CR>:exec("tag ".expand("<cword>"))<CR> in normalen, visuellen und Operator angemeldeten Modus.

+0

Ich habe versucht eine Karte zu erstellen als: ': map : exec" tag ". expand ("") ', um mit Mausklick auf die Definition des Cursors zu springen, aber es funktioniert nicht, da es nur kleine Änderung des vorherigen Befehls ist, bin ich verwirrt, warum es nicht funktioniert, die vorheriges funktioniert richtig, könntest du helfen? Vielen Dank! –

+0

Möchten Sie die Definition eines Wortes nachschlagen, indem Sie darauf klicken? In diesem Fall wollen Sie die '' Funktionalität nicht vollständig außer Kraft setzen, sondern stattdessen das und _then_ tun, was Sie wollen:': noremap : exec "tag". Erweitern ("") ' – L3viathan

+0

': set Tags =./Tags;/ : noremap : exec "Tag". erweitern (" ") : map : tab geteilt : exec "tjump" .expand (" ") ', danke, jetzt die' ~/.vimrc' so ist, 'ctrl + j 'funktioniert richtig, aber die zweite funktioniert immer noch nicht –

Verwandte Themen