Lion: opzione mappa + freccia a casa / fine

1

Sto utilizzando la versione CLI di Vim su Mac mini, con OS X Lion.

Uso Vim come mio editor di codice principale, e una cosa che mi infastidisce è la mancanza di tasti Home e End per spostarsi rispettivamente all'inizio e alla fine delle righe. (Sul mio laptop, i tasti freccia sinistra e destra sono home e fine, con il modificatore Fn)

So che Control + Arrows sposta le schermate e Command + Arrows si sposta tra le finestre, quindi in qualsiasi modo posso ottenere Option o Fn + Arrows per fare questo?

Mi piacerebbe davvero qualcosa di simile in tutte le applicazioni.

EDIT:

Ho risposto io stesso sostanzialmente seguendo: theandystratton.com/2009/... Ho usato anche i valori forniti nel secondo commento, che ha funzionato sia in Vim che in terminal generale.

Mi chiedo se ci siano degli svantaggi nell'usare questo ...?

    
posta Thomas 20.06.2012 - 15:00
fonte

2 risposte

1

Per rimappare home e terminare in Terminal, esegui f=~/Library/Preferences/com.apple.terminal.plist; plutil -convert xml1 $f; open $f -e e cambia questo:

<key>F729</key>
<string>scrollToBeginningOfDocument:</string>
<key>F72B</key>
<string>scrollToEndOfDocument:</string>

A questo:

<key>F729</key>
<string>&#x1b;OH</string>
<key>F72B</key>
<string>&#x1b;OF</string>

Per cambiarli in normali viste di testo, crea ~ / Library / KeyBindings / e salva un elenco di proprietà come questo DefaultKeyBinding.dict:

{
    "\UF729" = moveToBeginningOfParagraph:;
    "\UF72B" = moveToEndOfParagraph:;
    "$\UF729" = moveToBeginningOfParagraphAndModifySelection:;
    "$\UF72B" = moveToEndOfParagraphAndModifySelection:;
}

Un'altra opzione potrebbe essere quella di utilizzare KeyRemap4MacBook . Vedi l'impostazione "Usa lo stile PC Home / Fine (tranne in Macchina Virtuale, RDC)" in link .

    
risposta data 21.06.2012 - 14:37
fonte
0

In iTerm Fn + Left va al primo carattere nel comando che stai digitando, e Fn + Right va alla fine.

Per vim, ti suggerirei di mappare qualsiasi combinazione di tasti che vuoi per 'Casa' a 0 e allo stesso modo '$' per fine.

Se ti trovi in modalità di inserimento, puoi usare imap su 'Esc'0i per uscire dalla modalità di inserimento, quindi saltare all'inizio della riga e accedere nuovamente alla modalità di inserimento.

Qualcosa di simile a quanto segue aggiungerebbe le mappe per Fn + sinistra / destra all'inizio / fine riga per entrambe le modalità normale e inserimento:

nmap ^[OF $

nmap ^[OH 0

imap ^[OF ^[$i

imap ^[OH ^[0i

Nota: quando inserisci caratteri speciali nella mappa usa prima Ctrl-V e poi inserisci la combinazione di caratteri che vuoi mappare.

    
risposta data 20.06.2012 - 15:18
fonte

Leggi altre domande sui tag