Aktivieren des Mauslaufs in OS X-Terminalseiten

1402
slhck

Ich habe versucht, eine Möglichkeit zu finden, mit der das OS X-Terminal die Mauseingaben akzeptieren kann, um in den Manpages zu scrollen.

Ich habe SIMBL und MouseTerm installiert, dies ermöglicht jedoch kein Scrollen in den Manpages. Irgendwelche Vorschläge?

6

2 Antworten auf die Frage

1
spuder

Die Anzahl der Manpages, die Sie gleichzeitig sehen können, wird von der Puffergröße bestimmt. So ändern Sie es .

Nach langem Ausprobieren habe ich das Scrollen in vim aktiviert, nicht jedoch für Manpages.

Hängen Sie an Ihre ~ / .vimrc

set mouse=a set ttymouse=xterm2 

Der folgende Blog zeigt, wie Sie das Scrollen in vim mithilfe von iTerm2 aktivieren. Es funktioniert leider nicht auf Manpages.


Als Workaround würde ich vorschlagen:

* NIXmanual - Ein Widget, das Sie auf Ihrem Mac aktivieren und die Manpages enthalten

linuxmanpages.com - Eine Website enthält alle Linux-Man-Pages

Verwenden Sie die Standard-Vim-Schlüssel 'hjkl' oder Shift Page UpundShift Page Down


Zusätzliche Ressourcen

Diskussion über das Arch Linux Forum 1 Diskussion über das
Arch Linux Forum 2

Zusätzlich zur Standard-Vim-Navigation können Sie mit "d" eine halbe Seite nach unten scrollen und mit "u" in man-Seiten (und weniger) eine halbe Seite nach oben scrollen. Sie können Manpages in vim auch mit `vim <(man foo)` öffnen. Sie könnten das in eine Funktion in Ihrem `.bashrc` einfügen, etwa wie:` myman () `und dann wie` myman foo` verwenden. Mir ist bekannt, dass OSX die Bash-Version 3.x verwendet, daher weiß ich nicht, ob die Prozessersetzung dort funktioniert, aber wenn dies der Fall ist, könnte dies eine Problemumgehung sein, um die Maus in Manpages aufzurufen. evilsoup vor 11 Jahren 0
0
ipatch

Ich weiß, dass ich zu spät auf die Party komme ( wie üblich ), aber ich bin heute auf diese Frage gestoßen und habe nur eine Antwort mit externen Links gesehen.

Die Lösung, die ich mir ausgedacht hatte, war, einen meiner bevorzugten Texteditoren nvim zu verwenden, um das Öffnen von Manpages innerhalb einer Terminalsitzung zu erledigen.

Nun könnten Sie die $PAGERUmgebungsvariable oder die $MANPAGERVariable auf vim für die Shell-Sitzung setzen, und das könnte funktionieren.

Ich habe mich jedoch entschlossen, eine benutzerdefinierte Funktion für meine Shell zu schreiben, die zufällig als Fish-Shell bezeichnet wird. Ich bin jedoch sicher, dass sowohl BASH als auch ZSH beide Funktionen unterstützen.

Der Grund, warum ich mich für die Funktionsroute entschieden habe, war, dass ich nvim nicht immer PAGERaus meinen offensichtlichen Gründen als meine verwenden wollte. Allerdings, wenn ich könnte nur einen Befehl ausführen, wie vmanein Mann Seite innerhalb NVIM zu öffnen, die fantastisch sein würden, damit die verlassen $PAGER, $MANPAGERUmgebungsvariablen intakt zusammen mit dem manBefehl auch.

Also habe ich eine Funktion erstellt, die wie folgt aussieht, einige Kommentare hinzugefügt, damit ich verstehen kann, was alle Flaggen tun. Auf diese Weise müsste ich nicht die Manpage öffnen

function vman --description 'use vim / nvim to read man pages'  # col `-b` flag = don't output any backspaces # col `-p` flag = force uknown control sequences # === # iconv `-c` flag = characters that can't be converter are # ...silently discarded # === # nvim `-c` flag = run argument / command after executing nvim # nvim `-R` flag = open "file" in read-only mode # === man $argv | col -bp | iconv -c | nvim -c 'set ft=man nomod nolist' -; end 

Natürlich benötigen Sie eine in vim / nvim aktivierte Mausunterstützung, die Sie durch Hinzufügen der unteren Zeile zur entsprechenden Konfigurationsdatei des Editors erreichen können.

set mouse=a