Instalei o auctex no centro de software do Ubuntu e, em seguida, instalei uma versão mais recente do auctex no emacs.
Desinstalei o auctex instalado pelo centro de software do Ubuntu. Eu descobri que não desinstalava o que eu instalei do emacs.
Como o emacs gerencia seus pacotes?
Não há interferência entre o emacs e o Ubuntu no gerenciamento da instalação e desinstalação dos pacotes emacs?
Se estou certo, há alguns anos atrás, não havia como instalar pacotes no emacs?
Obrigado.
M-x report-emacs-bug
. As pessoas que responderem a essa pergunta aqui estariam melhor contribuindo com os documentos do Emacs, se as informações estiverem ausentes. NA MINHA HUMILDE OPINIÃO.Respostas:
Como o páprica disse, o Emacs usa
load-path
para pesquisar oselisp
arquivos disponíveis da lista (.elc
,.el
)O
load-path
é procurado para o primeiro pacote que coincida quando ele está sendo exigido. Se várias cópias de um pacote estiverem instaladas, a primeira será carregada.O gerenciador de pacotes de distribuição não pode instalar na mesma fonte que o
package-install
faz, já que um é de todo o sistema e o outro é específico do usuário.Fontes do pacote
Integrado e específico da distribuição
Distro Package ManagerOs gerenciadores de pacotes distro fornecem uma seleção de pacotes emacs que podem ser instalados. Na minha experiência, esses geralmente estão entre os pacotes mais populares / amplamente utilizados. Antes do desenvolvimento
package.el
disso, era a maneira mais fácil de obter os pacotes. (Mais fácil por executar apenas doapt-get install <package>
que usar controle de versão ou download direto.Os pacotes instalados por meio do gerenciador de pacotes de distribuição são instalados no
Package.el/usr/local/share/emacs/site-lisp/
padrãoload-path
e serão ocultados porload-path
adições específicas do usuário .package.el
foi incluído pela primeira vezEmacs 24
. Esta versão é compatível,Emacs 23
mas precisa ser instalada manualmente, os pacotes recuperados por ela podem ou não ser compatíveisEmacs 23
.package.el
fornece um repositório de pacotes navegável para o Emacs. Por padrão, apenas oElpa
repositório está configurado, mas o acesso ao MELPA e Marmelade pode ser adicionado:Isso fornece acesso a um conjunto muito maior de pacotes.
Por padrão,
Git / Bzr / hg / ... + EmacsWikipackage.el
instala pacotes para~/.emacs.d/elpa
e quando(package-initialize)
é chamado esse diretório será colocado mais próximo da frente doload-path
arquivo, resultando em pacotes com precedência sobre os instalados pelo gerenciador de pacotes de distribuição.Pacotes controlados por versão podem ser recuperados manualmente de seu repositório através da clonagem. Alguns também fornecem versões compactadas que podem ser baixadas diretamente.
Os arquivos EmacsWiki Elisp também podem ser baixados, embora geralmente sejam arquivos únicos, e não diretórios.
Depois que o pacote for recuperado, verifique se a pasta de destino está na sua
load-path
e estará disponível para uso.Gerenciamento de pacotes de terceiros
Essas ferramentas fornecem wrappers ou funcionalidades adicionais acima para centralizar o gerenciamento de pacotes. Eles foram projetados com a configuração compartilhada em mente para garantir que todas as suas máquinas tenham os mesmos pacotes disponíveis.
El-GetEl-Get mantém uma lista de receitas que lhe permitem obter os pacotes usando
Barrilpackage.el
,git
,emacswiki
como fontes (entre outros). Ele também fornece funções para garantir que os pacotes estejam atualizados, gerenciar o carregamento (adiado ou imediato) e armazenar a personalização específica do pacote em arquivos carregados automaticamente quando o pacote estárequired
.O Cask foi projetado para gerenciamento de projetos no / para Emacs. Ele usa um
cask
arquivo para manter uma lista de dependências (outros pacotes) necessárias para usar o pacote e baixa os pacotes ausentes para garantir que tudo seja carregado com êxito.Ele pode ser usado para gerenciar configurações de pacotes locais tratando o seu
~/.emacs.d
como um projeto e iniciando(cask-initialize)
a inicialização.straight.el
Pacote de usostraight.el
foi desenvolvido para pessoas que desejam fazer alterações locais em seus pacotes e, possivelmente, contribuir com essas alterações no upstream. Ele extrai receitas do MELPA , GNU ELPA e EmacsMirror , ou permite que você especifique suas próprias. Ele também suporta a criação de um arquivo de bloqueio de revisão para máxima reprodutibilidade, entre muitos outros recursos.O Use-Package foi projetado principalmente como uma ferramenta de gerenciamento de configuração do emacs. Ele fará o download dos
package.el
pacotes necessários , mas não possui mecanismos internos para acessar outras fontes. Permite carregamento diferido de pacotes e personalização adiada. Isso melhora a inicialização do emacs enquanto diminui o uso inicial dos pacotes (mas, se não os estiver usando em uma determinada sessão, haverá apenas um ganho líquido).fonte
/usr/share/emacs/site-lisp
, não/usr/local/share...
desde que oslocal
dirs são destinados a instalações não distro.O Emacs usa o
load-path
, que é essencialmente uma lista de diretórios que ele deve procurar por arquivos Lisp. Se um pacote estiver disponível noload-path
, ele será instalado .Não há interface entre o gerenciador de pacotes Debian / Ubuntu e o gerenciador de pacotes Emacs (package.el). O primeiro instala os pacotes Emacs de maneira abrangente em todo o sistema (disponível para todos os usuários do computador), enquanto o último instala um pacote por padrão no diretório inicial. Teoricamente, você pode usar as duas fontes para instalar pacotes. No entanto, aconselho contra esta prática: Você pode enfrentar alguns problemas ao instalar o mesmo pacote de ambas as fontes.
A lista de pacotes Emacs que você pode instalar através do gerenciador de pacotes Debian / Ubuntu é muito mais limitada quando comparada com ELPA / MELPA / ..., porque cada pacote deve ser preparado especificamente para o Debian / Ubuntu. Em outras palavras: pacote no ELPA! = Pacote no Debian.
fonte