2010-01-25 3 views
18

Eines der besseren Features in MacVim ist, dass es möglich ist, die üblichen OS-Befehle zum Kopieren und Einfügen von Text (nämlich Befehl + C und Befehl + V) zu verwenden.Verwenden von UMSCHALT + Pfeiltasten zum Auswählen von Text in vim/MacVim

Dies ist besonders gut in Situationen, in denen Sie gerade eine Minute zuvor in einem anderen Editor gearbeitet haben und Ihr Gehirn noch nicht bereit ist, Ihren Fingern zu raten, wie man das echte Ding eintippt.

Es gibt jedoch eine Sache, an die mein Gehirn denken muss: Es ist der Textauswahlmodus. In Nicht-VI-Editoren würde ich dafür Shift + Arrow verwenden und dies in MacVim zu versuchen, funktioniert nicht. Auf der anderen Seite sieht es für mich nicht so aus, dass Shift + Arrow auch für irgendetwas anderes verwendet wird. Kann man die Schlüssel neu zuordnen, um dies zu ermöglichen?

(Idealerweise würde der Editor im Einfügemodus werden noch nach dem Text ausgewählt hat, das würde einige zusätzlichen Tastenanschläge ersparen.)

+1

Nette Frage, aber ich bin versucht zu empfehlen, es als Fragen zur Programmkonfiguration zu Super User zu verschieben. Sehr ähnliche Probleme für Emacs wie hier diskutiert: http://meta.stackexchange.com/questions/36017/what-site-should-host-questions-about-emacs-keybinding auf Meta. – dmckee

+0

Möchten Sie nach der Auswahl im Einfügemodus sein, weil Sie die Auswahl ersetzen (wie wenn Sie "c" drücken würden, um die Auswahl zu löschen und den Einfügemodus zu aktivieren) oder aus einem anderen Grund? Es scheint mir, dass wenn Sie eine Auswahl haben, Sie sich im visuellen Modus befinden und daher nicht im Einfügemodus sein können. – Jay

+0

Ich wollte im Insert-Modus bleiben, weil ich den Insert-Modus nicht verlassen möchte, es sei denn, es ist wirklich notwendig. In einem 'normalen' Texteditor, wenn Sie Text auswählen, bleiben Sie auch im Einfügemodus. Es ist mehr für "Übergangs" -Gründe; und wie gesagt, Kopieren und Einfügen (und sogar Speichern) über die Befehlstaste funktioniert auch im Einfügemodus. – Debilski

Antwort

25

Aus dem Handbuch:

Texteditoren auf Mac OS X Lassen Sie den Benutzer gedrückt halten Shift + Bewegungstaste, um die Auswahl zu erweitern. Durch Drücken einer Drucktaste bei Auswahl von wird die aktuelle Auswahl durch dieses Zeichen ersetzt. MacVim kann diese Art von Verhalten emulieren Tastenkombinationen und durch die Einstellung 'Keymodel' und 'selectmode' zu nicht standardmäßigen Werte, obwohl es nicht von Standard aktiviert ist. Um MacVim mehr verhalten wie TextEdit und weniger wie Vim, fügen die folgenden Zeilen zu Ihrem „~/.vimrc“ (nicht .gvimrc) Datei:

if has("gui_macvim") 
    let macvim_hig_shift_movement = 1 
endif 
+0

Großartig. Danke vielmals. Sieht so aus, als ob es genau das ist, wonach ich gesucht habe. – Debilski

+3

Ein kleiner Ärger aber ist, dass ich nun auch im visuellen Modus Shift drücken muss, wenn ich die Pfeiltasten benutze. Zeit, sich an "hjkl" zu gewöhnen ... – Debilski

6

Als Hinweis auf Selbst und ein Hinweis für andere:

Da UMSCHALT + Pfeilauswahl und Mausauswahl jetzt automatisch SELECT Mode startet, bedeutet dies, dass es scheinbar nicht so einfach ist, eine Auswahl mit der Maus oder den Pfeiltasten vorzunehmen. (Auch wenn bereits im Modus VISUAL eine Mausauswahl immer noch den Modus SELECT auslöst.) Wenn Sie also Befehle an die Auswahl anwenden möchten, hilft die folgende Methode.

  • Wählen Sie den Text der Maus oder SHIFT + Pfeil
  • Unselect von ESC
  • Press gv Drücken automatisch die vorherige Auswahl erneut auswählen und auslösen VISUAL Modus

Edit: Gleiche sein kann fertig mit einfach STRG + g.

+2

Sie könnten 'set selectmode =' hinzufügen, um nicht standardmäßig in den SELECT-Modus zu wechseln. Verwenden Sie Strg + g, um zwischen dem SELECT- und VISUAL-Modus zu wechseln. – kennytm

+0

Persönlich bin ich gerne im Select-Modus, wenn ich die meiste Zeit SHIFT + Pfeil benutze; aber Strg + g ist sowieso eine gute Idee. Ein bisschen einfacher als 'ESC, g, v'. – Debilski

Verwandte Themen