¿Dónde puedo encontrar una lista completa de las combinaciones de teclado que envían señales en Linux?
P.ej:
- Ctrl+ C- SIGINT
- Ctrl+ \- SIGQUIT
¿Dónde puedo encontrar una lista completa de las combinaciones de teclado que envían señales en Linux?
P.ej:
Respuestas:
La disciplina de línea N_TTY de Linux solo envía tres señales diferentes: SIGINT, SIGQUIT y SIGTSTP. Por defecto, los siguientes caracteres de control producen las señales:
man stty | grep -C1 signales una fuente para estos tres siendo las únicas señales generadas por el terminal.
SIGINT, SIGQUITy SIGTSTPson las únicas señales "habituales" enviada por la disciplina de línea. En BSD también tienes cosas como SIGINFO, pero eso no es estándar.
Puede usar sttypara verificar o cambiar los caracteres que generan señales.
$ stty -a | grep -Ewoe '(intr|quit|susp) = [^;]+'
intr = ^C
quit = ^\
susp = ^Z
intr(interrumpir) genera SIGINT, quitgenera SIGQUIT, susp(suspende) genera SIGTSTP. stty -atambién mostrará cosas como start = ^Q; stop = ^S;y erase = ^?(retroceso), que no envían señales pero afectan a la capa terminal de lo contrario.
Plain sttymostrará la configuración no predeterminada y, por ejemplo stty intr ^Q, cambiaría el carácter de interrupción a en ^Qlugar de ^C.
Creo que ^L(formulario de alimentación, página nueva) no es una función de terminal, sino un carácter que las aplicaciones suelen utilizar para pedir que se vuelva a dibujar la vista, al volver a comprobar el tamaño de la ventana al mismo tiempo.
^Ltiene un significado diferente para diferentes aplicaciones. En la mayoría de cursesaplicaciones basadas en (tales como vim, less, mutt, mc, etc.) que obliga a un redibujado completa (por lo tanto volver a comprobar el tamaño de la ventana), pero en conchas ( bashetc.) que sólo se borra la pantalla. No hay SIGWINCHinvolucrado.
man 1 stty.