Wie verwende ich meine vim Konfiguration in weniger?

3

Einige Programme haben Befehle, die mit weniger ausgeben (z. git blame filename ). Ich möchte meine vim-Konfiguration verwenden (z. <C-j> anstatt zu verwenden Pg Down eine Seite nach unten gehen), wenn weniger verwendet wird. Wie stelle ich das ein?

Gemäß dieser Thread und die weniger Man Page Putting export EDITOR=vim und export VISUAL=vim in meinem ~/.baschrc sollte vim für weniger verwenden, aber ich sehe keine Änderungen, nachdem ich eine Terminalsitzung neu geladen und weniger gestartet habe (ich kann beispielsweise nicht den Hotkey zum Abwärtsblättern verwenden).

Bentley4
quelle
Ihre Frage ist mehrdeutig. Möchten Sie Vim anstelle von weniger verwenden, oder möchten Sie, dass Ihre Vim-Konfigurationsdateien das Verhalten von less beeinträchtigen? Ersteres sollte möglich sein, letzteres ist nicht möglich.
Heptite
Ich war mir nicht sicher, ob es Befehle gibt git blame filename Die Verwendung von less ist hart codiert oder die Ausgabe wurde an den von Ihnen verwendeten Pager übergeben. Ich wollte nur meine Vim-Konfiguration verwenden, wenn ich einen Pager verwende, mit oder mit weniger.
Bentley4

Antworten:

3

Das $EDITOR und $VISUAL Variablen definieren die Editor verwenden (z. B. wenn Sie den Befehl "Bearbeiten" verwenden Weniger ).

Wenn Programme laufen Weniger , sie betreiben es als Pager Nicht als Redakteur - sie betrachten den Wert von $PAGER.

Installieren Vimpager , dann:

export PAGER=vimpager
grawity
quelle
Genial! Jedes Mal, wenn ich vimpager starte, bekomme ich trotzdem E21: Cannot make changes, 'modifiable' is off: retab Press ENTER or type command to continue. Haben Sie eine Idee, wie ich "modifizierbar" einschalten kann oder einfach nur die Anzeige dieser Nachricht beenden kann?
Bentley4
Ich habe gesetzt :set modifiable in meinem vimrc und es gibt immer die gleiche Nachricht aus.
Bentley4
Trotzdem hat es funktioniert, nachdem ich es kommentiert habe retab in meinem .vimrc. Ich weiß nicht warum.
Bentley4
0

Ich bin nicht sicher, was Sie genau vorhaben, aber es gibt viele vi-artige Tastenkombinationen, die Sie verwenden können less in seiner ursprünglichen Installation. Zumindest ist es so bei meiner Ubuntu Jaunty Box. Wenn Ihnen jedoch bestimmte Funktionen fehlen, können Sie diese verwenden lesskey Programm, um Ihre Tastenzuordnungen neu zuzuweisen. Beim Ausführen dieses Programms wird eine Datei mit dem Namen erstellt .less unter Ihrem Heimatverzeichnis. Es wird eine Textdatei sein, die Sie können cat oder vi oder auch less um den Inhalt zu sehen.

Überprüfen Sie die Manpages von less (suchen Sie nach Schlüsselbindungen) und / oder lesskey Befehl, um das zu erreichen, was Sie zu erreichen versuchen.

MelBurslan
quelle
0

Wenn Sie vimpager nicht installieren möchten, wie es die akzeptierte Antwort empfiehlt, gibt es zwei hackhafte Arten von Problemumgehungen, die ich gefunden habe, um stdout einfach direkt an vim zu senden.

1) Als nicht-globale Problemumgehung können Sie alles, was zu weniger geht, pfeifen
<command_outputting_to_less> | vi -.

2) Global können Sie einstellen
export PAGER='vi -'.
Ein Problem, dem ich dabei begegnet bin, ist, dass der cmd, der die Ausgabe an den Pager sendet, möglicherweise Farbcodes enthält, da er der Meinung ist, dass der Pager Farbcodes verarbeiten kann. Um dies zu korrigieren, müssen Sie die Farbcodes entweder von einem anderen Programm entfernen oder das Ausgabeprogramm hat die Möglichkeit, Farbcodes zu entfernen. Für die, die ich verwendete (git), habe ich dies geändert, damit es korrekt ausgegeben wird git config --global color.ui false.

horta
quelle