Eu queria saber como incorporar um arquivo de estilo bib em um pacote personalizado para que ele não precise ser estipulado separadamente no corpo de cada documento.
Especificamente, atualmente usonatbib
e liguesp.bst
colocando \bibliographystyle{C:/Users/Miztli/Documents/BibTeX/sp}
antes \bibliography{C:/Users/Miztli/Documents/BibTeX/references}
no final dos meus documentos.
Responder1
Para mim não parece certo tentar incorporar esse tipo de coisa em um .sty
arquivo. Mesmo levando em consideração alguma flexibilidade/frouxidão com arquivos de estilo pessoal, parece uma prática duvidosa fazê-los conter caminhos codificados para outras fontes de dados. Além disso, como você destacou, há dificuldades óbvias em fazer isso para uma bibliografia, por causa de onde ela deseja ser carregada.
Eu preferiria (em ordem aproximada):
Use um editor que possa inserir um trecho. No Emacs, por exemplo, com o yasnippet, pode-se facilmente definir algo para que se expanda adequadamente. Então, cada arquivo que você produz é transparente sobre quais recursos está usando. Você economiza digitação, mas cada arquivo produzido permanece razoavelmente independente. Isso é bom a longo prazo. Apesar dissoparececomo uma boa ideia ter um arquivo de estilo, você ficará em uma grande confusão se, em algum momento no futuro, perdê-lo ou alterá-lo e esquecer como, por que ou quando o alterou.
Coloque suas definições de bibliografia em um arquivo separado, que você simplesmente coloca
\input
no ponto apropriado. Mas realmente... qual é o objetivo. Você realmente economizará algumas teclas digitadas.Se você realmente precisa colocar isso em um
.sty
arquivo, faça-o definindo um comando adequado (\makemybibliography
ou algo assim) que se expandirá para os comandos desejados, de preferência com verificações prévias adequadas de que os arquivos necessários existem onde você espera que eles estejam e erros adequados se não o fizerem. Fazer isso corretamente é provavelmente ummuitomais trabalho do que escrever um trecho para um editor.
Responder2
O comando \bibliographystyle pode ir a qualquer lugar, AFAIK. Não precisa estar no final antes do comando \bibliography. Então você pode colocá-lo em seu pacote ou classe.
Responder3
Sim, você pode agrupar um arquivo adicional em seu pacote (não é possível incorporar .bst
código em um .sty
arquivo de maneira significativa porque ele foi escrito em uma linguagem diferente).
Você tem que escrevê-lo como um .dtx
arquivo da maneira padrão para pacotes distribuíveis, para que quando o usuário o instalar, ele desembrulhe seu .sty
arquivoeo .bst
arquivo que você incluiu (e mais arquivos, se necessário). O usuário então deve colocar esses arquivos no “lugar certo”, o que é explicadoaqui, exatamente como acontece com qualquer outro pacote instalado manualmente.
MAS...(muito grande, MAS), se o arquivo de estilo BiBTeX já for um pacote padrão no CTAN (não consigo encontrá-lo lá), então agrupar uma cópia privada em seu pacote é realmente uma péssima ideia. O usuário deve instalá-lo a partir do CTAN da maneira normal (se estiver usando uma distribuição TeX com instalação on-the-fly, isso pode ser feito automaticamente).
É este sp.bst
deSemântica e Pragmática? Nesse caso, você deve incentivá-los a agrupá-lo adequadamente e disponibilizá-lo por meio do CTAN, se puderem, o que tornaria a vida mais fácil para todos. Em qualquer caso, você certamente pode adicioná-lo ao seu .dtx
arquivo, mas precisará da permissão do autor ou detentor dos direitos autorais para fazê-lo e de um acordo formal para lidar com a atualização e a substituição.
Paulo Stanleyapresenta alguns pontos positivos, mas
- IMHO issoéé uma boa idéia criar um
.sty
arquivo de pacote ( ) formal, mas apenas quando escrito como um.dtx
arquivo com documentação adequada para que possa ser instalado, mantido e referenciado; - Não tenho certeza se entendi o porquê2é útil;
- além do Emacs, não conheço nenhum editor LaTeX que suporte snippets, e não é uma boa ideia forçar os autores a usarem um editor diferente daquele que normalmente usam.
Considere mudar do BiBTeX para o biblatex (mas se esse sp.bst
arquivo for do S&P, você precisará persuadi-los a fazer isso).