Emacs cperl mode - como usar abas para recuo em vez de espaços

3

Existe uma maneira de fazer o modo cperl no emacs usar todas as abas para recuo em vez de espaços? Eu tentei definir indent-tabs-mode e cperl-tab-always-indent . Aqui está o meu arquivo .emacs :

(defalias 'perl-mode 'cperl-mode)
(setq cperl-tab-always-indent t)
(setq inhibit-splash-screen t)
(cua-mode t)
(setq cua-auto-tabify-rectangles nil)
(transient-mark-mode 1)
(setq cua-keep-region-after-copy t)
    
por sprale 14.12.2010 / 17:07

1 resposta

2

A resposta certa é não usar guias. Mas ok, só para saber como é feito ...

O CPerl usa as configurações padrão do Emacs para uso da tabulação, e o padrão do Emacs é usar tabulações. Então você já está recebendo guias. Observe que a quantidade padrão de recuo é de 2 espaços e a largura da tabulação padrão é de 8 colunas, portanto, você precisa de pelo menos 4 níveis de recuo para ver uma guia.

Se você quiser alterar a largura da tabulação para 2 colunas, defina a variável tab-width , mas observe que seus arquivos parecerão estranhos para outras pessoas com uma largura de tabulação diferente. Se você quiser alterar a quantidade de recuo por nível para 8 colunas, defina cperl-indent-level .

Se você trocar arquivos com outras pessoas, é melhor colocar essas configurações em um variável de arquivo (e não usar abas, é claro). Por exemplo:

# Local Variables:
# tab-width: 8
# cperl-indent-level: 8
# End:

Acho que a modeline equivalente vi é # vi: ts=8 sw=8: .

    
por 14.12.2010 / 22:55