2010-02-16 5 views
18

In der Vergangenheit habe ich Vim als eine Notiz-Plattform verwendet, indem ich eine index.txt-Datei mit einer Liste von Tags unter Verwendung des Vim-Hilfe-Dateiformats erstellt habe Erstellen einer Reihe von Textdateien mit der normalen Verknüpfungssyntax *Help_Tag*, sodass die Verwendung von CTRL-] für ein Tag in der Datei index.txt in einer beliebigen Notes-Textdatei zum entsprechenden Tag springt. Sie müssen :helptags dir tun, um die Tags für das Verzeichnis zu generieren (wobei dir der Pfad zum Notes-Verzeichnis ist).Vim als Notiz-Plattform: Springe zum Tag in vertikal geteilten Fenstern

alt text

Was ich suche ist eine einfache Art und Weise auf den linken geteilten Fenster zu sein und den Tag unter dem Cursor im rechten Teilfenster zu öffnen. Etwas wie CTRL-W v, aber für den Tag springen und das bereits geöffnete vertikale Split-Fenster verwenden.

Das Problem ist, wenn Sie CTRL-] tun, wird es das Tag im linken Bereich öffnen, und wenn Sie CTRL-W CTRL-] tun, erstellt es ein horizontal geteiltes Fenster im linken Bereich.

Es muss eine Möglichkeit geben, dies zu tun, die ich übersehe.

+0

kann ich nicht sagen. Ist das eine Frage über * vim * oder über das Schreiben von Skripten dafür? Wenn ersteres sollte zu Super User migriert werden. – dmckee

+0

Ich denke, es könnte auch sein. Ich denke, dass ein Skript benötigt wird, aber vielleicht weiß jemand einen Weg, es nativ zu machen. –

Antwort

1

Wahrscheinlich wäre die easiset Benutzer automatischen Befehl lokale Zuordnung

au FileType index.txt nnoremap <buffer> <cr> 
    \ :vert belowright split 
    \ |tag <c-r><c-w> 
    \ |vert resize 130<cr> 

Hinweis sein I Rückkehr

+0

Um den Hilfe-Befehl zu verwenden, müssen die Notes-Dateien in meinem .vim/doc-Ordner gespeichert sein. Plus würde ein neues Fenster auf der linken Seite öffnen. Dies kann mit ': rightb vert help test' vermieden werden, aber die Breite des Split ist 50/50. Gibt es eine Möglichkeit, die Breite des vertikal geteilten Bereichs anzugeben? –

+0

Größenanpassung ist: Vert unterhalb rechts Hilfe Größe ändern | Ver Größe ändern 130 – michael

+0

Ich möchte den Befehl 'Tag' anstelle von 'Hilfe' verwenden, aber das macht die Arbeit erledigt. Weißt du, wie ich den Tag-Befehl im rechten Fenster öffnen kann? Wenn ich es jetzt versuche, öffnet es sich nach links. –

2

Karte < verwenden A-] >: vsp <CR>: exec ("tag" .expand ("<cword>")) "Öffnen Sie die Definition in einem neuen Vsplit

+1

Wie bekomme ich nun den Split rechts neben meinem aktuellen Puffer? –

+2

'set splitright' in Ihrem.vimrc haben alle vertikalen aufreißt nach rechts @Amjith – mambo

1

Versuchen Sie diese Zuordnung:

nmap <buffer> <C-]> :let word=expand("<cword>")<CR><C-W>l:exe "tag" word<CR> 

es das Wort unter dem Cursor in den Variablen word speichert, tauscht dann das Fenster und geht mit diesem Namen auf das Etikett. Das Bit <buffer> bewirkt, dass diese Zuordnung nur für den aktuellen Puffer gilt.

+1

ich mit nach oben mit dieser Art von mmap kam 'nmap : vsplit : lassen Wort = erweitern ("") : exec "tag" Wort ' zu erlauben immer noch arbeiten und nur für den ersten ctag verwenden – teferi

0

Wenn Sie Überschriften als Notiztitel verwenden, können Sie Vim VOoM verwenden, das automatisch auf der Grundlage von Syntax umreißt und eine einfache Navigation mit den Standardnavigationstasten ermöglicht.

Vim VOoM funktioniert auch mit Faltmarkern, wie im Beispiel Screenshot.

Verwandte Themen