Endlich: Vim-Kommandos in Cocoa-Programmen

Darauf haben wir Vim-Fans lange gewartet: Der|die|das Vi Input Manager Plugin von Jason Corso ermöglicht es, in Cocoa-Programmen (Safari, TeXShop, XCode, TextEdit etc. pp.) eine ganze Reihe von Vi-Kommandos zu ver­wen­den. Die Programm starten nor­mal im Eingabe-Modus. Aber ein Druck auf die -Taste wechselt in den Kommando-Modus. Auf deutschen Tastaturen ist die Belegung natürlich anders, da sitzt die–Taste nicht unter der Escape-Taste. Man kann die aus­lösende Taste ändern, ich habe mich für die gewohnte Escape-Taste entsch­ieden. Ich habe das Teil eben erst instal­liert. Aber wenn alles so funk­tion­iert wie es aussieht ist es wirk­lich grrrrrreeeaat.

Das Ganze funk­tion­iert via DefaultKeyBinding.dict. Mehr zu dem Thema hier.

Donationware.

Über frank

Vater von 4 Töchtern (mit 1 Frau), Creative Director, Texter, Journalist, Leser, Mac-Nerd, Jogger

05. Dezember 2006 von frank
Kategorien: Freeware, Geek stuff, Mac, must-have, OsX, Praktisch, Tipps, Tricks, vim, writing | Schlagwörter: , , , , | 5 Kommentare

Kommentare (5)

  1. Wie hast du das instal­liert bekommen?

    Die ganzen Files habe ich an die entsprechen­den Stellen in ~/Library/ kopiert.

    Allerdings war das auch schon alles, was in der Installationseinlatung stand. Habe ich da was vergessen?

  2. Hi Peter, wahrschein­lich liegt’s an der vor­eingestell­ten Tastenkombination. Das Back-Apostrophe liegt auf der deutschen Tastatur anders als auf der amerikanischen.

    Ich habe die Datei DefaultKeyBinding.dict so geän­dert, dass die Escape-Taste der Auslöser ist. (Nur die Recommendation auskom­men­tieren und den auskom­men­tierten Teil stattdessen aktivieren. Meine Datei sieht so aus:

    /* Either add these to ~/Library/KeyBindings/DefaultKeyBinding.dict or make this that file. / { / Vi Input Manager / /** this first one will match con­ven­tional Vi by map­ping the escape key ** However, on the Mac, I found it to be con­fus­ing since Esc is used in other situations * */

    "\U001B" = "VI_escapeMode:";
    
     /** So, I recommend using the back-apostrophe (just underneath the escape on most us keyboards)
       *  to turn on the Vi command mode.  And then I remapped the original key to require the control modifier
    "`" =  "VI_escapeMode:";
    "^`" = ("insertText:", "`");
       */
    

    }

  3. Wie hast du es denn genau instal­liert? Ich habe nun das verze­ich­nis ~/KeyBindings/ das die Datei DefaultKeyBinding.dict enthält, und das Verzeichnis ~/InputManagers/ViInputManager/ das die Dateien Info & ViInputManager.bundle beherbergt.

    Habe ich irgend­was vergessen? Ich habe das auf die ESC Taste umgemapped.

  4. Eigentlich sollte es jetzt funk­tion­ieren. WEnn Du z.B. Textedit öffnest und die Escape-Taste drückst, öffnet sich eine kleine Zeile, und Du bist im Kommando-Modus. Mit i;I,a;A oder ähnlichen Kommandos kommst Du wieder in den Input-Modus.

  5. Komisch, erst nach einem reboot hat er das bei mir aktu­al­isiert. Nun funk­tion­iert das wun­der­bar. Mal sehen ob ich mich daran gewöh­nen kann :)

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert

*