O emacs não abre um arquivo a partir do argumento e o destaque da sintaxe não funciona


27

Na minha última caixa do ubuntu,

  1. Quando digito, por exemplo emacs ~/.bashrc, o Emacs será iniciado, mas não será aberto .bashrc. Isso é verdade para qualquer arquivo que eu forneço. Eu uso o Emacs há vários anos e nunca tive esse problema antes.

  2. Eu adicionei (global-font-lock-mode 1);;ao meu arquivo .emacs e o Emacs o reconhece, por exemplo. "(C++/; Abbrev)", mas não destacará a sintaxe.

Se você puder resolver qualquer um desses problemas, será muito apreciado. A seguir está a configuração da minha máquina:

uname -a
Linux 2.6.35-28-generic-pae # 49-Ubuntu SMP terça-feira, 1 de março 14:58:06 UTC 2011 i686 GNU / Linux

~ / .emacs
(modo de bloqueio de fonte global 1) ;;


1
Melhor perguntou sobre askubuntu.com
Oded

1
O que acontece se você iniciar o emacs e depois usar C-x C-fpara abrir ~/.bashrc? Pode dar uma mensagem de erro útil.

1
O *Messages*buffer contém algo útil?
MatthewD

1
oi muito obrigado, parece que é causado pelo diretório ~ / .emacs.d, o emacs reclama na inicialização: "~ / .emacs.d já existe". Então eu removi ~ / .emacs.d, e agora tudo funciona! (Eu posso abrir arquivos através do argumento da linha de comando e o destaque da sintaxe também funciona agora). @ Tom, já posso começar emacs e use Cx Cf para .bashrc aberto, mas não pode abrir por> emacs ~ / .bashrc

Respostas:


34

Eu tenho o mesmo problema. Foi devido ao fato de eu ter usado o emacs com o sudo. Como conseqüência, o .emacs.d foi criado com o direito de superusuário e eu não podia acessá-lo como um usuário comum.

Ao remover o .emacs.d criado como root, deixe o emacs gerar um novo com sua conta de usuário.


3
ou você pode simplesmente mudar de proprietáriosudo chown -hR <groupname>:<username> .emacs.d/
logcat

1
Sim, isso resolveu o problema. Seria ótimo se emacs mostrou algumas informações sobre este erro ...
José Tomás Tocino

realmente deve ser algum tipo de diagnóstico sobre isso. Isso deve acontecer muito quando o emacs é usado como uma ferramenta de administração do sistema.
Jules

4

Você pode ter o ~/.emacsarquivo e o ~/.emacs.d/diretório, mas o Emacs ignorará o ~/.emacs.d/init.elarquivo. O Emacs avalia apenas ~/.emacs.d/init.elquando não há ~/.emacs. (Obrigado, pirocrasty ).

Veja: Arquivo de Inicialização do Emacs no Manual do GNU Emacs .


Isso definitivamente não é verdade. Eu usei um ~/.emacsarquivo por anos e certamente sempre tive um ~/.emacs.d/diretório. Não haverá conflito a menos que você tenha um ~/.emacsarquivo e um ~/.emacs.d/init.elarquivo ao mesmo tempo, e mesmo assim, o Emacs simplesmente ignorará um (acredito que ele priorize ~/.emacs).
Pirocrasty

Se você corrigir um erro, no futuro, não o remova , mas remova -o completamente. Obrigado. Deixei o comentário para que você possa realmente dizer que postou que corrigiu sua resposta. (Eles podem upvote você ou desfazer uma downvote.)
slhck

-1

initial-buffer-choicein startup.elpermite a personalização inicial do arquivo.


2
talvez algum contexto seja útil. Um exemplo de configuração?
JoshP
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.