Angenommen, ich habe eine große Datendatei, die den Bildschirm sowohl in vertikaler als auch in horizontaler Richtung überläuft. Wie kann ich diese Datei durchsuchen, während die Kopfzeilen auf dem Bildschirm bleiben?
Im Moment benutze ich less -S
, damit ich meine Datei horizontal und vertikal schön scrollen kann. Beim Scrollen nach unten verschwinden die Kopfzeilen jedoch offensichtlich. Gibt es eine Möglichkeit, diese mit weniger zu halten?
Eine Alternative ist die Verwendung vim
im Split-Screen-Modus mit :set nowrap
. Wenn ich jetzt horizontal scrolle, scrollt das obere Fenster jedoch nicht auf die gleiche Weise ( :windo set scrollbind
funktioniert meines Wissens nur für vertikales Scrollen).
less
odertail -f
das verhält sich genauso wie sonst, nur dass die erste auf dem Bildschirm angezeigte Zeile immer die Kopfzeile ist. Wie Websites (oder Excel) mit einer festen Kopfzeile, aber einem Bildlaufkörper.Antworten:
Wenn Sie mit vim vertraut sind, ist dies wahrscheinlich die beste Option für Sie. Sie können die horizontale Bildlaufbindung aktivieren, indem Sie Folgendes ändern
'scrollopt'
:Mit erhalten
vim -u NONE
Sie das gewünschte Verhalten mit:Möglicherweise möchten Sie anpassen
'sidescroll'
und'sidescrolloff'
ändern, wie viele Spalten übersprungen werden und wie weit das Überspringen von Kanten jeweils beginnt.quelle
hor
, siehe die aktualisierte AntwortAuf Terminals, die das Einstellen des Bildlaufbereichs unterstützen:
(setzt eine Shell wie
zsh
oder vorausbash
, die die Variablen$COLUMNS
und$LINES
basierend auf der Größe des Terminals festlegt ).quelle
q
2.up
down
less
selbst ohne Verwendunghead
undtail
den Bildschirm jedes Mal neu zu zeichnen? Ich bin übrigens immer noch <3 Ihre Lösung. Ich markiere es noch nicht richtig, weil Sie es zu bearbeiten scheinen und ich möchte nicht, dass Sie selbstgefällig werden. Selbstzufriedenheit ist ein Kreativitätskiller, wurde mir gesagt! :)less -X
anstelle vontail -n ...
oben verwenden, aber die "Auf" -Taste löscht den Header dort.less
Umgebung zwischen einer Kopfzeile und einer Fußzeile zu haben, um sie zu einem allgemeineren Werkzeug zu machen.Versuchen Sie dies (Sie müssen es installieren
multitail
):oder für Überschriften, die länger als eine Zeile sind:
Wenn Sie die Befehlsausgabe anstelle einer Datei verfolgen möchten:
oder
-t
entsprechend verwenden. Beachten Sie, dass Sie möglicherweise verwenden müssen,unbuffer
damit Ihre Befehlsausgabe sofort angezeigt wird.Mit können Sie
-D
die Anzeige von Statuszeilen für die-wh
Formulare deaktivieren (dies würde den Zweck des-t
Formulars beeinträchtigen).quelle
In Thors Antwort wurde nicht erwähnt, dass das vertikale "Scrollopt" deaktiviert wurde, wodurch beide Fenster vertikal gescrollt werden. Für mich ist die vollständige Lösung das Einfügen in vim:
quelle
scrollopt
direkt mit:scrollopt=hor
oder einstellen:scrollopt=hor,jump
, je nach Ihren Vorlieben. Hier ist der VimDoc fürscrollopt
.Das ist so weit wie ich gekommen bin mit
tmux
:Es ist eine Erweiterung der Antwort von user80519 zum
tmux
Teilen von Fenstern. Speichern unterhless.sh
, ausführbar machen und wie verwendenquelle