bash – ¿Por qué escribir '<<<' en su lugar produce '<

Pregunta:

Siempre que estoy editando un script de shell en emacs y escribo tres chevrones para redirigir una cadena sin procesar a stdin, emacs inserta los caracteres 'EOF' y una nueva línea entre ellos, por lo que

cat <<< 'some string'

se convierte en

cat <<EOF
< 'some string'

Puedo volver atrás y eliminar los caracteres adicionales para obtener el búfer en el estado que quiero, pero este es un comportamiento muy desagradable y solo parece suceder en el modo de script de shell, que suele ser la única vez que escribo este patrón. ¿Hay alguna forma de desactivar este comportamiento?

Respuesta:

Esto es causado por sh-electric-here-document-mode . Cuando está habilitado, << insertará un esqueleto de documento aquí.

Esto está habilitado por defecto. Puede desactivarlo con un gancho, como:

(add-hook 'sh-mode-hook (lambda () (sh-electric-here-document-mode -1)))

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım