Instalando o AucTeX 1.86 sobre o Emacs.app no OS X

9

Estou tentando instalar o AucTeX 1.86 em um binário Emacs (versão 24.0.50) do emacsformacosx.com. Na primeira tentativa ./configure outputs:

configure: error: Cannot find the texmf directory!
Please use --with-texmf-dir=dir to specify where the preview tex files go configure: error: ./configure failed for preview

Eu adiciono --with-texmf-dir=/usr/local/texlive/texmf-local , para o qual ./configure responde alegremente com vários parabéns. Eu compilo com make e sudo make install sem uma falha.

Eu abro um arquivo .tex no Emacs e o AucTeX não é carregado. Eu emito (load auctex.el nil t t) C-j no buffer * scratch * e saídas do Emacs:

Debugger entered--Lisp error:(file-error "Cannot open load file" "auctex.el")

Alguma coisa está acontecendo. Eu imaginei que o Emacs não poderia encontrar o arquivo, então ele não deve ter sido instalado onde deveria. Eu rastreio a maioria dos arquivos do AucTeX para /usr/share/emacs/site-lisp , onde o Emacs 22.1 mora.

Eu tive duas opções aqui: 1. diga ao Emacs onde encontrar o AucTeX (que não sei como fazer); 2. recompile o AucTeX com mais opções de configuração (que pareciam mais simples).

Eu escolhi recompilar, depois de excluir todos os arquivos do AucTeX da instalação anterior. Desta vez eu configurei a fonte, dizendo onde o Emacs deveria usar, com:

./configure -with-emacs=/Applications/Emacs.app/Contents/MacOS/Emacs --with-lisp-dir=/Applications/Emacs.app/Contents/Resources/site-lisp --with-texmf-dir=/usr/local/texlive/texmf-local

Desta vez, reclama:

'configure: error: Cannot locate lisp directory,'
'use  --with-lispdir, --datadir, or possibly --prefix to rectify this'

mesmo que eu tenha incluído a opção --with-lisp-dir=dir . Se eu retirá-lo, ele ainda reclama por não conseguir encontrar o diretório lisp. O AucTeX parece não gostar do Emacs.app na pasta Aplicativos.

Minha pergunta é: como faço isso funcionar?

    
por Ricardo 04.08.2010 / 03:56

3 respostas

5

No manual Mac / GNUstep, instâncias do Emacs lançadas no Finder não herdam variáveis ambientais, então elas precisam ser configuradas. /etc/path e /etc/path.d/ definirão as variáveis do ambiente como um todo, mas para que elas estejam disponíveis para a GUI (instâncias ativadas pelo Finder) elas precisam ser configuradas no arquivo ~/.MacOSX/environment.plist .

O diretório e o arquivo precisam ser criados pelo usuário. Uma vez feito isso, cole o seguinte (modificando onde necessário) no seu arquivo environment.plist . Eu recebi isso de uma mensagem em uma lista de discussão encontrada no link .

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd";>
<plist version="1.0">
<dict>
<key>PATH</key>
<string>/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/texlive/2009basic/bin/universal-darwin</string>
</dict>
</plist>

O AUCTeX deve se comportar bem agora.

    
por 06.08.2010 / 00:28
10

Veja como consegui que a Auctex trabalhasse com o Emacs puro:

  1. Instale o pacote de distribuição do MacTeX
  2. Faça o download do OS X emacs , coloque em /Applications
  3. Faça o download do tarball do Auctex
  4. Vá para o diretório Auctex, configure com o comando:

    ./configure --with-emacs=/Applications/Emacs.app/Contents/MacOS/Emacs --with-lispdir=/Applications/Emacs.app/Contents/Resources/site-lisp --with-texmf-dir=/usr/local/texlive/texmf-local
    
  5. Executar:

    make; sudo make install
    

    para instalar os arquivos elisp dentro do Emacs.app , os arquivos info para /usr/local/share/info , etc.

  6. Edite seu arquivo ~/.emacs para carregar o Auctex / preview-latex e aponte o Emacs para seus executáveis Latex:

    (setenv "PATH" (concat "/usr/texbin:/usr/local/bin:" (getenv "PATH")))
    (setq exec-path (append '("/usr/texbin" "/usr/local/bin") exec-path))
    (load "auctex.el" nil t t)
    (load "preview-latex.el" nil t t)
    
  7. Auctex e preview-latex devem funcionar agora. Uma coisa a ter em mente: com versões mais antigas do Auctex, o caminho ps parece funcionar melhor que pdf ; se as imagens de preview-latex não estiverem aparecendo com o erro "/ typecheck in --setfileposition--", tente desabilitar "Generate PDF" via "Barra de Menus - > Comando - > Opção TeXing".

Atualizar : Etapas (2--5) podem ser substituídas pelo gerenciador de pacotes Homebrew:

brew install emacs --cocoa
brew install auctex

As outras etapas ainda estão corretas. A opção "Gerar PDF" do Emacs agora funciona para mim.

    
por 18.05.2011 / 07:56
0

Para que o AUCTeX seja carregado, o arquivo .emacs precisa ser modificado. Do manual do AUCTeX:

With Emacs (or if you explicitly disabled use of the package system), the startup files ‘auctex.el’ and ‘preview-latex.el’ may already be in a directory of the ‘site-start.d/’ variety if your Emacs installation provides it. In that case they should be automatically loaded on startup and nothing else needs to be done. If not, they should at least have been placed somewhere in your load-path. You can then load them by placing the lines

(load "auctex.el" nil t t)

(load "preview-latex.el" nil t t)

into your init file.

If you explicitly used --with-lispdir, you may need to add the specified directory into Emacs’ load-path variable by adding something like

(add-to-list 'load-path "~/elisp")

before the above lines into your Emacs startup file.

Não há diretório ~/elisp no meu sistema, então adiciono o diretório especificado na configuração: %código%. Isso parece fazer o trabalho de carregar o AUCTex sempre que um arquivo (add-to-list 'load-path "/Applications/Emacs.app/Contents/Resources/site-lisp") é aberto no Emacs. Por algum motivo, a barra de ferramentas não está habilitada por padrão.

Os ganchos AUCTeX agora são aplicados. No entanto, tentar latex um documento sai com um erro:

.tex

Parece que este é um problema $ PATH $.

    
por 05.08.2010 / 22:42