Como colar no emacs --no-window-system sem recuo automático?

3

Se eu colar um trecho de código do navegador para emacs -nw com o botão do meio do mouse ou Ctrl + Shift + v (no colar do gnome-terminal da área de transferência), ele será indentado incorretamente.

Código original:

for (i=0; i<=10; i++) {
    j = j + i;
    print j;
}

Torna-se:

for (i=0; i<=10; i++) {
          j = j + i;
                print j;
                    }

No vim, um desligaria o recuo automático. No emacs eu tentei 2 maneiras que não funcionam:

Método 1:

Configure ctrl + y para usar a seleção PRIMARY em ~ / .emacs

(setq x-select-enable-primary t)

E tente colar com Ctrl-y em vez de tecla do meio do mouse ou Ctrl + Shift + V. Resultado: ctrl-y cola somente do anel kill do emacs, não da seleção externa.

Método 2: desmapear o RET de newline-and-indent :

(add-hook 'lisp-mode-hook '(lambda ()
  (local-set-key (kbd "RET") 'newline)))

Funciona para digitar RET (sem recuo), mas para a tecla do meio do mouse ou Ctrl + Shift + V-recuo automático é aplicado de qualquer maneira.

    
por Peer Gynt 06.09.2015 / 04:25

1 resposta

2

A autoindentação ocorre no emacs quando o caractere de nova linha é encontrado. Você pode usar electric-indent-local-mode e electric-indent-mode para alternar essa configuração.

De link

  

O que é pouco conhecido é que o Emacs 24.1 introduziu um novo modo secundário global chamado de modo de indentação elétrica. Quando ativado, digitar certos caracteres (como novas linhas) aciona a reindentação.

    
por Anuj Gupta 21.01.2016 / 16:40

Tags