ESC + {: ¿Qué es y dónde puedo saber más al respecto?

32

Estaba jugando en el indicador de bash, y presioné ESC seguido de {, después de lo cual, el shell mostró todos los archivos para completar, en una cadena fileglob. Por ejemplo: si hubiera escrito bash Cseguido ESC+{, el shell mostraría esto: bash CHECK{,1,2{,23{336{,66666},6},3{,6}}}completar automáticamente todos los archivos y directorios posibles comenzando con C, mostrando todos los archivos y directorios experimentales que había creado.

¿Qué es ESC + {y dónde puedo saber más al respecto?

Veo esto en CENTOS y Mac OSX con bash.

Prem
fuente

Respuestas:

49

Para obtener información sobre un enlace clave.

En bash:

$ bind -p | grep -a '{'
"\e{": complete-into-braces
"{": self-insert

$ LESS='+/complete-into-braces' man  bash
   complete-into-braces (M-{)
          Perform filename completion and insert the list of possible com
          pletions  enclosed within braces so the list is available to the
          shell (see Brace Expansion above).

O con info:

info bash --index-search=complete-into-braces

(o info bashuse el índice con finalización (i clave))

Sin embargo, tenga en cuenta que a la página de información preconstruida que viene con fuentes bash-4.3 al menos le faltan algunas entradas de índice, incluida la de complete-into-braces , lo que a menos que su sistema operativo reconstruya la página de información de las fuentes de texinfo, el comando anterior no funcionará.

En zsh

$ bindkey| grep W
"^W" backward-kill-word
"^[W" copy-region-as-kill
$ info --index-search=copy-region-as-kill zsh
copy-region-as-kill (ESC-W ESC-w) (unbound) (unbound)
 Copy the area from the cursor to the mark to the kill buffer.

 If called from a ZLE widget function in the form 'zle
 copy-region-as-kill STRING' then STRING will be taken as the text
 to copy to the kill buffer.  The cursor, the mark and the text on
 the command line are not used in this case.

O con manasumir el lesslocalizador como para bash:

LESS='+/copy-region-as-kill' man zshall

zshtambién tiene una describe-key-brieflyque puede vincular en una tecla o secuencia de teclas, como a Ctrl+XCtrl+Hcontinuación:

bindkey '^X^H' describe-key-briefly

Luego escribe Ctrl+XCtrl+Hseguido de la tecla o combinación de teclas para describir. Por ejemplo, escribir eso Ctrl+XCtrl+Hdos veces se mostrará debajo de la solicitud:

"^X^H" is describe-key-briefly

En tcsh

Eso es básicamente lo mismo, zshexcepto que tcshno tiene una página de información.

> bindkey | grep -a P
"^P"           ->  up-history
"^[P"          -> history-search-backward
> env LESS=+/history-search-backward man tcsh
[...]

En fish:

> bind | grep -F '\ec'
bind \ec capitalize-word
> help commands

Que debería iniciar su navegador web preferido. Y busca capitalize-wordallí.

Stéphane Chazelas
fuente