Wie Sie eine NERDTree-Verknüpfung in VIM neu zuordnen

8132
btelles

Ich verwende das Dvorak-Tastaturlayout mit VIM und die 't'-Taste ist die Aufwärtsbewegung, wenn eine normale Datei bearbeitet wird.

Das Problem ist, dass NERDTree 't' neu zuordnet, um Dateien auf einer neuen Registerkarte zu öffnen. Wie kann ich dieses Mapping rückgängig machen und 't' für die Aufwärtsbewegung in NERDTree verwenden?

Hier sind die relevanten Zeilen aus meiner Vimrc-Datei und aus dem NERDTree-Plugin.

Mein .vimrc:

no t k 

NERDTree-Plugin-Datei:

exec "nnoremap <silent> <buffer> ". g:NERDTreeMapOpenInTab ." :call <SID>openInNewTab(0)<cr>"  call s:initVariable("g:NERDTreeMapOpenInTab", "t")  let @h=@h."\" ". g:NERDTreeMapOpenInTab.": open in new tab\n" 
5

2 Antworten auf die Frage

12
Heptite

Die Dokumentation für NERDTree zeigt, dass Sie den Mapping-Buchstaben für die meisten, wenn nicht alle Mappings ändern können. Zum Beispiel zeigt " :help NERDTree-t" dies:

Default key: t Map option: NERDTreeMapOpenInTab Applies to: files and directories. 

Sie können also in Ihrem vimrc so etwas einfügen, um es von "t" in "\ t" zu ändern:

let NERDTreeMapOpenInTab='\t' 

Dann hört NERDTree auf, Ihre bevorzugte Funktion der "t" -Taste im normalen Modus zu überschreiben.

Das hat super funktioniert! Yugal Jindle vor 10 Jahren 0
-2
asdfg

Hoffe das hilft,

au vimenter * map t k 

fügen Sie dies in Ihre Vimrc-Datei ein

Doh! Ich habe es versucht, und es hat nicht funktioniert. Trotzdem danke. btelles vor 14 Jahren 0
Ich habe die Zeile bearbeitet. Das sollte funktionieren. asdfg vor 14 Jahren 0
Oh bumcicles ... immer noch keine Würfel. btelles vor 14 Jahren 0
Das funktioniert für mich. Möglicherweise gibt es noch ein anderes Mapping. Ändern Sie das "t" in NERDTree besser auf etwas, das Sie nicht verwenden. asdfg vor 14 Jahren 0
Der Grund, warum dies nicht funktioniert, ist, dass NERDTree jedes Mal, wenn ein NERDTree-Fenster geöffnet wird, die "t" -Zuordnung als pufferlokale Zuordnung definiert, wodurch alle zuvor definierten "t" -Zuordnungen überschrieben werden. Sehen Sie meine Antwort zur Lösung dieses Problems. Heptite vor 14 Jahren 0
Sollte vermeiden, eine solche globale Neuzuordnung vorzunehmen, um ein unerwünschtes Mapping in einem Plugin zu korrigieren. Die meisten bieten Methoden, mit denen dies viel besser gehandhabt werden kann. pottsdl vor 12 Jahren 5