Ho eseguito l'accesso in uno dei server di hosting di hosting e notai ALT + sinistra e ALT + destra spostati tra le parole in un prompt di shell in GNU Screen.
Quale tipo di binding chiave che devo configurare e where get questo comportmento al mio locale OS X zsh in esecuzione in iTerm2?
Ho trovato la soluzione qui: https://coderwall.com/p/h6yfda . Copierà le parti più importnti, se il link scende.
Stai cercando le parole chiave " backward-word
e " forward-word
. Quindi, se sei su una shell where i tasti non funzionano, prova a bindkey -L | grep backward-word
bindkey -L | grep backward-word
per verificare se sono anche configurati. Ci sono ulteriori informazioni su questo in zshzle (1) .
È ansible impostare manualmente l'associazione di tasti digitando qualcosa di simile:
bindkey ' Ctrl + v Alt + destra ' parola in avanti
bindkey ' Ctrl + v Alt + sinistra ' indietro
Ho avuto alcuni problemi anche con i tastierini e il problema era quasi sempre che il tasto Option / Alt inviato qualcosa di diverso da quello previsto Meta / Escape.
Non posso parlare per iTerm ma questi sono i keybindings che ho usato per risolvere questo problema in GNOME Terminal, su Fedora 19, che esegue ZSH 5.0.7 con Oh-my-zsh:
bindkey "\e[1;3C" forward-word bindkey "\e[1;3D" backward-word
where \e
== La sequenza di escape-key (come documentato nel paragrafo 4.1.1 )
e [
== O
(maiuscolo O, come documentato nel paragrafo 4.2.1 ), in alcuni casi. Per esempio sotto tmux
questa sostituzione è necessaria per me, tuttavia senza tmux
è richiesto che non si sostituisca e [
== [
I codici chiave per una sequenza possono essere ottenuti utilizzando il cat
e premendo la sequenza desiderata. Ad esempio, i risultati di premere <Alt+Right>
devono essere interpretati come così:
$ cat ^[[1;3C
^[
== \e
== La sequenza di escape-key
[
== [
senza tmux
O [
== O
(maiuscolo o) con tmux
1;3
== Non sono sicuro di questo, ma dovrebbe significare logicamente <Alt>
C
== Il tasto freccia destra
Quindi questa sequenza viene data a bindkey
nel file ~/.zshrc
per la persistenza, come primo argomento, ed è associata , il che significa che la chiave in argomento uno eseguirà un particolare command di editor (o widget in termini zsh), al widget , che nella prima row dell'esempio precedente è la forward-word
.
Il ~/.zshrc
dovrebbe essere ricavato dopo che questi due comandi sono stati aggiunti con:
$ source ~/.zshrc
Ora un annoiato sul mio sistema è che questa particolare combinazione ha causato all'emulatore terminal di emettere un beep each volta che il command è stato rilasciato, questo ho rimediato distriggersndo
'Edit'->'Profile Preferences'->'Terminal Bell'
controllo 'Edit'->'Profile Preferences'->'Terminal Bell'
.
Suggerisco di utilizzare zkbd
per configurare i tasti. Lo uso e Alt + Left / Alt + Right funziona bene su iTerm2. Vedere zshcontrib(1)
per i dettagli su zkbd.