Wie man den Sprung zur Linie automatisch entfaltet

9

Wenn ich zu line ( :76) springe, lande ich auf einer Falte, die sich jedoch nicht öffnet.

Ich kann die Falte schnell entfalten und sie erreicht die richtige Linie, aber ich möchte, dass sich die Falte automatisch entfaltet, um Tastenanschläge zu sparen.

Gibt es eine Möglichkeit, dies zu erreichen?

Hakunin
quelle

Antworten:

10

Die foldopenEinstellung steuert, welche Befehle Falten öffnen. In sehen :help 'foldopen'wir die Liste der möglichen Werte:

            item            commands
            all             any
            block           "(", "{", "[[", "[{", etc.
            hor             horizontal movements: "l", "w", "fx", etc.
            insert          any command in Insert mode
            jump            far jumps: "G", "gg", etc.
            mark            jumping to a mark: "'m", CTRL-O, etc.
            percent         "%"
            quickfix        ":cn", ":crew", ":make", etc.
            search          search for a pattern: "/", "n", "*", "gd", etc.
                            (not for a search pattern in a ":" command)
                            Also for [s and ]s.
            tag             jumping to a tag: ":ta", CTRL-T, etc.
            undo            undo or redo: "u" and CTRL-R

Wenn Sie die Dokumentation lesen, erwarten Sie, dass set foldopen+=jumpdies den Trick macht, aber es funktioniert nicht :76nur für 76G. Ich bin mir nicht sicher, ob dies beabsichtigt ist oder ein Fehler in Vim.

Verwenden set foldopen=all funktioniert richtig; kann aber unerwünschte Nebenwirkungen haben (insbesondere können Sie sich nicht länger mit jund über eine Falte bewegen k).

Martin Tournoij
quelle
3
:76wird in vim nicht als "Sprung" betrachtet und in der Jumplist ( :jumps) nicht gespeichert . 76GAuf der anderen Seite ist ein Sprung (dokumentiert in :h jump-motions, so unwahrscheinlich, dass es sich um einen Fehler handelt). Möglicherweise möchten Sie hinzufügen, dass Sie zvnach :76dem Öffnen der Falte verwenden können.
Messe
@Mass Das OP möchte nichts eingeben müssen, um die Falte zu öffnen, sobald sie darauf landen.
Herb Wolfe
Genau wie beim :76Springen beim Starten von vim scheinen sich keine Falten zu öffnen (Beispiel: gvim +76 myfile.tex... ich verwende es mit der Option --servernamemit Synctex). Gibt es eine Problemumgehung? Was ist der Ex-Befehl zum Springen?
PlasmaBinturong
Ich habe es versucht, gvim --servername GVIM "+normal 76G" myfile.texaber es entfaltet sich nicht.
PlasmaBinturong
Etwas, das für mich funktioniert hat, um Falten über die Serverfunktion zu öffnen: gvim --servername VIMTEX --remote '+normal 76GzO<CR>' myfile.tex(aus irgendeinem Grund werden die zO(offenen Falten) und der Wagenrücklauf benötigt.
PlasmaBinturong