Terminal: mapee super / command key in stty

4

Quiero volver a asignar los accesos directos de terminal (en particular, quiero volver a asignar INTR de CTRL+C a Command+C ) en Terminal.

Así que estos son mis enlaces stty actuales

$ stty -a
speed 38400 baud; 38 rows; 179 columns;
lflags: icanon isig iexten echo echoe echok echoke -echonl echoctl
    -echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
    -extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel iutf8
    -ignbrk brkint -inpck -ignpar -parmrk
oflags: opost onlcr -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
    -dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
    eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;
    min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T;
    stop = ^S; susp = ^Z; time = 0; werase = ^W;

Y, por ejemplo, si desea volver a asignar algo, sería como

stty intr \^c

Que asigna SIGINT a CTRL+C

Pero quiero asignar SIGINT a COMMAND+C . Algo como esto (que no es válido):

stty intr ⌘c

Ahora sé que el terminal no reconoce realmente la tecla Comando, pero ¿hay una forma creativa de hacerlo?

Nota: Sé que se puede hacer con ITerm2 pero me pregunto si hay una manera de hacerlo con la Terminal de vainilla.

Gracias

    
pregunta cozos 07.03.2017 - 04:22

1 respuesta

1

@Niklas Resolví el problema, pero no usé stty. En su lugar, he estado utilizando Karabiner-Elements para hacer una configuración personalizada en las teclas de la Terminal (sin afectar el resto de mis enlaces ).

Básicamente, instala la aplicación Karabiner-Elements y luego escribe una regla de "modificaciones complejas" en el archivo karabiner.json para intercambiar lo que quiera. Aquí hay una guía sobre cómo configurar la configuración json.

Mi karabiner.json se ve así:

{
  "name" : "com.apple.Terminal",
  "simple_modifications" : {
    "left_option" : "left_control",
    "left_command" : "left_option",
    "right_control" : "right_command",
    "right_option" : "right_control",
    "right_command" : "right_option",
    "left_control" : "left_command"
  },
  "complex_modifications" : {
    "rules" : [
      {
        "manipulators" : [
          {
            "to" : [
              {
                "key_code" : "c",
                "modifiers" : [
                  "left_command"
                ]
              }
            ],
            "type" : "basic",
            "from" : {
              "key_code" : "c",
              "modifiers" : {
                "mandatory" : [
                  "left_control"
                ],
                "optional" : [
                  "any"
                ]
              }
           }
        ]
      },
      ... more rules for all the stty characters, etc
    ]
  }
}     
    
respondido por el cozos 21.03.2018 - 11:40

Lea otras preguntas en las etiquetas