
A partir de Emacs 24.4 (creo), cj y ret se intercambiaron, por lo que ahora se llama sangría después de ret. Y esas sangrías en modo texto son relativas a la sangría, por lo que, cuando pegas código con sangría, el código se pega en diagonal en lugar de alineado:
# copied code
line1
line2
line3
# pasted
line1
line2
line3
Puedo resolver esa configuración electric-indent-mode
(comando flip/flop), pero me gusta el comportamiento de sangría relativa mientras escribo en modo texto. Quiero desactivarlo sólo mientras pego texto.
¿Alguien tiene un código que pueda usar para configurar un atajo de pegado que llame al modo de sangría eléctrica, pegue desde el portapapeles y vuelva a activar el modo de sangría eléctrica?
Agradecería cualquier explicación didáctica del código, para poder recordar mi elisp olvidado.
Respuesta1
Esto solo debería suceder en una terminal de texto (donde "pegar" termina simplemente enviando el texto carácter por carácter a Emacs como si hubiera escrito esos caracteres).
Desde Emacs-25, esto ya no debería ser un problema porque utiliza el soporte de "pegar entre corchetes" del terminal de texto (de modo que el terminal envía secuencias de escape especiales antes y después del texto pegado).
Tampoco es necesario configurarlo: "simplemente funciona".