Como posso garantir que estou baixando e usando org-plus-contrib
do repositório do modo organizacional usando require
or use-package
? Package.el
baixa o pacote, compila tudo e depois diz que não pode carregar org-plus-contrib
. Este tópico na lista de discussão discute um problema semelhante, mas invertido. No entanto, se eu colocar (use-package org ...
, use-package
retorna t
, mas o faz se org-plus-contrib
está instalado ou não.
org-mode
package
use-package
wdkrnls
fonte
fonte
(use-package org-plus-contrib :ensure t)
? Concedido que estou usando o barril com palete para o gerenciamento de pacotes, mas ele coloca /home/kmicu/.emacs.d/.cask/24.4.1/elpa/org-plus-contrib-20150202 no meu caminho e o carrega.package-pinned-packages
Respostas:
Não tenho 100% de certeza de que você pode realmente verificar apenas com segurança
require
ouuse-package
... Mas se você estiver usando o package.el para a funcionalidade do modo organizacional, sua configuração do modo organizacional poderá precisar ser adiada até que os pacotes tenham sido inicializados. Você pode fazer isso com um gancho, depois de inicializado o Emacs, chamado "after-init-hook
".Assim...
Isso significa
.emacs
que você precisará de um gancho como:E em outro lugar:
Depois disso, você terá acesso à funcionalidade de verificação e download do package.el ...
portanto, como você também deseja verificar a existência do pacote, pode usar "
(package-installed-p 'org-plus-contrib)
" e instalá-lo com "(package-install package)
" se não estiver lá.Ao todo, o código provavelmente seria algo como:
Com o resto da sua configuração sendo posterior ao
(unless ...)
corpo.Dessa forma, você obtém sua configuração, a verificação da instalação do pacote e a baixa automaticamente, para poder assumir com segurança que qualquer coisa além dessa linha na função pode usar os comandos carregados. (Supondo que você tenha uma conexão de rede, caso ela não exista.)
fonte
A maneira correta de fazer isso com o pacote de uso é a seguinte:
O primeiro argumento garante que seja o arquivo org.el que está sendo originado. O argumento: garantir garante que você esteja recebendo a versão com todos os extras. Claro que você também precisa ter uma lista
("org" . "http://orgmode.org/elpa/")
de seus arquivos de pacotes.fonte
Eu faço uma instalação do pacote org-plus-contrib manualmente, mas depois uso a pacote org. Finalmente, uma versão organizacional Mx subsequente indica que a organização fornecida pelo org-plus-contrib é realmente usada e está tudo bem.
fonte