2013-04-07 6 views
6

Dire che ho una funzione interattiva in Emacs my-function, come posso associarlo a Ctrl + RET?Comando di binding a C-RET in Emacs

ho provato con:

(global-set-key (kbd "C-RET") 'my-function) 

e

(global-set-key (kbd "C-return") 'my-function) 

ma nessuno di loro sembra funzionare. è tutto questo possibile?

risposta

15

Ricordate sempre che kbd accetta molto convenientemente la stessa sintassi che Emacs ti dà quando si chiedere esso su una sequenza di tasti, in modo da non mai a indovinare .

ChkC-RET mi dice:

<C-return> 

quindi userei (kbd "<C-return>")

OTOH, quando si esegue Emacs nel mio terminale, ChkC-RET mi dice:

C-j 

perché C-RET non è un carattere di controllo valido in un terminale, e quindi Emacs non riceve lo stesso ingresso che si ottiene in modalità GUI (quindi non sarebbe in grado di utilizzare tale consolidamento nel mio terminale).

+0

Grazie per questa spiegazione. Il metodo in generale mi ha aiutato a capire complicata sintassi. –

1

Questo dovrebbe funzionare:

(global-set-key [(control return)] 'my-function) 

Funziona per me, ma non può in un terminale come per ogni risposta di @ phils.

Problemi correlati