Scrollen in Vim im Mac-Terminal


89

Ich habe herumgegoogelt, um herauszufinden, ob es möglich ist, mit meinem Mausrad in Vim im Mac-Terminal zu scrollen , ohne Glück. Es scheint, als ob nur X11 oder iTerm dies unterstützen.

Bevor ich aufgebe, dachte ich, ich würde die Genies hier versuchen, um zu sehen, ob jemand einen Weg kennt, dies zu tun. Weiß jemand, ob ich das einrichten kann?

Oder sollte ich ernsthaft in Betracht ziehen, eine andere Terminalanwendung zu verwenden?


Können Sie dies auf anderen Plattformen oder in Terminal-Editoren tun? Wenn es eine X-basierte VI-Implementierung gäbe, könnte dies wahrscheinlich unterstützt werden, aber hätten Sie nicht lieber Unterstützung für die Scroll-Maus zur Steuerung des Scrollback-Puffers?
Benc

Im Ubuntu-Terminal können Sie scrollen. Deshalb habe ich gefragt, ob ich die gleiche Funktionalität auf meinem Mac haben möchte.
Hora

1
@hora - du kannst einfach iterm benutzen. Sie erhalten auch 256 Farben, sinnvolles Kopieren und Einfügen usw.
Robince

Antworten:


68

http://bitheap.org/mouseterm/

Verwenden Sie MouseTerm (und stellen Sie sicher, dass Sie zuerst SIMBL installieren!), Und das Scrollen funktioniert mit dem Mac Terminal wie ein Zauber, auch aus der Ferne.

Sie müssen die Terminal-Anwendung vollständig beenden (Befehl + Q) und sie nach der Installation von MouseTerm erneut starten.


2
Wow, genau das habe ich gesucht. In der Zwischenzeit habe ich mich daran gewöhnt, meine Maus NICHT zu benutzen, aber das ist immer noch nützlich.
Hora

8
Für Vim-Nüsse set mouse=afunktioniert das Hinzufügen eines in Ihrem .vimrc wie ein Zauber mit MouseTerm
Panagiotis Moustafellos

5
Wenn Sie nach SIMBL suchen und versuchen, es auf Lion zum Laufen zu bringen, versuchen Sie es mit EasySIMBL: github.com/norio-nomura/EasySIMBL/downloads
Zachary Murray

2
kann bestätigen, dass EasySIMBL + MouseTerm auch auf Mavericks funktioniert
jcr

2
Die neuesten EasySIMBL-Versionen sind jetzt hier (derzeit 1.6): github.com/norio-nomura/EasySIMBL/releases
Nathaniel Heinrichs

99

Und wenn Sie iTerm verwenden, fügen Sie dies Ihrem vimrc hinzu

:set mouse=a

6
Funktioniert auch für die Standard-OSX-Terminal-App.
Ian

22

Dies ist eine alte Frage, aber ein Top-Hit bei Google. Ich fühle mich daher gezwungen, eine aktualisierte Antwort zu geben.

Unter OSX El Capitan 10.11 funktionierte das Scrollen von Vim-Maus und Trackpad in Terminal.app standardmäßig für mich. Gelegentlich stoppte die Maus- / Trackpad-Eingabe jedoch die Manipulation des VIM-Puffers und begann mit dem Scrollen des Terminalpuffers. Die Antwort war Command+Roder Menüansicht -> Mausberichterstattung zulassen. Durch Aktivieren dieser Option konnten die Maus- / Trackpad-Bildlaufvorgänge den Cursor in vim bewegen.


Hey, mir wurde klar, dass ich fälschlicherweise einmal versucht hatte, Befehl + R anstelle von Strg + R zu drücken, um die letzten Befehle zu erhalten! Das hat mich wahrscheinlich dazu gebracht. Vielen Dank!
Teddy

6
  • Termanal-Menü> Ansicht> Mausberichte zulassen
  • Terminalmenü> Einstellungen> Tastatur> Alternativer Bildschirm scrollen

4

Sie können diesen Artikel lesen , aber ich bin mir ziemlich sicher, dass die Mausradbefehle automatisch darauf zugreifen, da das Standardterminal in Mac OS X über eine integrierte Bildlaufleiste verfügt. Sie könnten definitiv gVim verwenden, wie in der vorherigen Antwort vorgeschlagen. Ich finde, dass ich die Maus in Vim im Allgemeinen nicht verwenden möchte, da sie meine Hände von der Tastatur nimmt.

Ich 50jgehe einfach runter und 50krauf. Nicht gerade scrollen, aber es funktioniert ziemlich gut.


Danke, das ist nicht gerade Scrollen, aber ich denke, das ist besser, da meine Hände immer auf der Tastatur sind.
Hora

@hora - Ja, Scrollen wäre auf jeden Fall schön, aber leider denke ich nicht, dass es machbar ist.
Topher Fangio

13
Oder verwenden Sie STRG + f und STRG + b, um jeweils einen Bildschirm vorwärts und rückwärts zu bewegen. Oder STRG + d und STRG + u, um sich um einen halben Bildschirm auf und ab zu bewegen.
Dan Dyer

Es ist nicht nur ein Bildlauf - Sie können auch visuelle Auswahlen mit der Maus markieren, Fenstergrenzen verschieben usw. Es macht ein grafisches Programm im Grunde genommen überflüssig und eignet sich hervorragend für Arbeiten an einem Remote-Computer.
Robince

@thrope - Sehr wahr, ich benutze das eigentlich ziemlich oft. vfür den visuellen Modus und wählen Sie dann den gewünschten Text aus. Normalerweise möchte ich jedoch eine ganze Zeile oder einen Satz von Zeilen. Um Probleme beim Einfügen von Zeilenumbrüchen zu vermeiden, zähle ich im Allgemeinen nur die Zeilen und drücke dd, um sie zu löschen. Manchmal etwas langsamer, aber daran habe ich mich gewöhnt.
Topher Fangio


1

Verwenden Sie gVim, das Ihnen eine Textbearbeitungsumgebung in einem Fenster bietet, in dem Sie scrollen können. Das Terminal ist bei Verwendung von gVim nicht beteiligt.


2
Nicht wirklich relevant - er könnte vim auf einem anderen Rechner zugreifen (über ssh) - Auf jeden Fall auf einem Mac, MacVim ist die bevorzugte graphcial Version code.google.com/p/macvim
robince

1

Ich verwende xterm in X11 (XQuartz 2.3.4) und vim funktioniert sehr gut mit der Maus und unterstützt auch 256 Farben.

Hier sind die ~ / .Xresources, mit denen ich mein xterm in X11 schöner mache:

XTerm*faceName: Lucida Sans Typewriter Regular
XTerm*faceSize: 9
XTerm*utf8: 1

xterm*saveLines: 1000
xterm*jumpScroll: true
!xterm*awaitInput: true
!xterm*multiScroll: true

XTerm*scrollBar: false
xterm*scrollbar*thickness: 16
xterm*rightScrollBar: true

XTerm*foreground: white
XTerm*background: grey10
!XTerm*background: black
XTerm*cursorColor: yellow

xterm*visualBell: false

xterm*loginShell: true

Kleine Tipps, um den Klingelton in X11s xterm zu entfernen, geben Sie diesen Befehl ein:

xset b 0

Ich habe xterm ausprobiert, kein großer Fan, obwohl ich nicht weiß warum, es gibt etwas, das mich abschreckt. Vielleicht versuche ich es noch einmal.
Hora

Das einzige, was sich ändert, ist das Kopieren und Einfügen. Das Einfügen erfolgt mit dem mittleren Mausklick (oder Alt + Klick) und das Kopieren erfolgt durch Auswahl eines Textes. Natürlich müssen Sie in vim die Maus deaktivieren, um etwas außerhalb von X11 kopieren oder etwas von außerhalb von X11 oder vim einfügen zu können, während Sie das Mausverhalten von X11 überschreiben.
XPac27

1

Ich würde die Verwendung von iTerm empfehlen - es hat so viele Vorteile gegenüber Terminal, z. B. Mausunterstützung, 256 Farben, sinnvolles Kopieren und Einfügen (automatisches Kopieren, Wort- / URL-Auswahl mit Doppelklick, Einfügen mit mittlerem Klick) ...


Gibt es in iTerm eingebaute Farbschemata? Wie ändere ich die Farben, kann es nicht herausfinden ... Der Dialog "Sitzungsinformationen anzeigen" scheint es mir nicht zu ermöglichen, verschiedene Profile zu speichern.
Hora

Ja, das Konfigurationssetup ist ein bisschen lustig ... Gehen Sie zu Lesezeichen -> Profile verwalten -> Profile anzeigen und Sie können Farben einrichten. Gehen Sie dann zu Lesezeichen -> Lesezeichen verwalten und richten Sie die Standardeinstellungen oder das gewünschte Anzeigeprofil ein.
Robince

Ich kann nicht einmal Option + Pfeil nach links drücken, um jeweils ein Wort in iTerm zurückzugeben. Willst du mich gerade veräppeln?
IIllIIll

1

Stellen Sie sicher, dass das Terminal xterm& nicht ansiin ist Terminal Menu > Preferences > Profiles > Advanced. Ich habe versehentlich das Scrollen abgebrochen, indem ich den Begriffstyp in einem naiven Versuch geändert habe, damit die Färbung über ssh funktioniert.


-1

Wenn Sie iTerm verwenden, erstellen Sie eine .vimrc-Datei (falls noch nicht vorhanden) in Ihrem Home-Ordner und fügen Sie die folgende Zeile hinzu:

:set mouse=a

Das Scrollen in vim nach unten, um eine Datei anzuzeigen, funktioniert danach.


Diese Antwort ist ein direktes Duplikat einer Antwort, die mehr als ein Jahr zuvor veröffentlicht wurde.
Moopet
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.