Bibtex, compilación de látex.

Bibtex, compilación de látex.

En varias ocasiones he leído instrucciones como "ejecute Latex en su archivo, luego ejecute Bibtex y luego ejecute Latex nuevamente...". Estoy usando TeXstudio como editor y cuando compilo cualquier código tex simplemente presiono el botón de compilación. Lo que sucede detrás de esto no me importaba ya que el pdf que quería se creó de todos modos. Ahora que estoy usando .bibarchivos como referencia, tengo un problema en el que la solución era la misma que la anterior. ¿Pero cómo lo hago? Sólo conozco el botón de compilación. ¿Cómo puedo ejecutar Latex individualmente desde Bibtex y Bibtex individualmente desde Latex? ¿Y cuál de ambos se ejecuta al simplemente presionar "compilar"?

Respuesta1

El botón 'compilar' ejecuta una secuencia de compilación predeterminada. Parece que probablemente se trate de pdfLaTeX en su caso. (Probablemente puedas cambiar esto si lo deseas; muchos editores te permiten personalizar el valor predeterminado).

Para generar su bibliografía, debe mirar lo que hay en su documento. ¿Cómo estás gestionando las referencias? Si utiliza comandos como

\bibliographystyle{stylename}
\bibliography{bibfilename}

Entonces necesitas correr

  • pdflatex-> bibtex-> pdflatex->pdflatex

Si tienes algo como esto:

\usepackage{biblatex}
\addbibresource{bibfilename.bib}% or \bibliography{bibfilename}
...
\printbibliography

Entonces necesitas correr

  • pdflatex-> biber-> pdflatex->pdflatex

Es posible usarlo bibtexcon biblatexpero no es el predeterminado. A menos que tengas

\usepackage[backend=bibtex]{biblatex}

No necesitas preocuparte por esto. Si utiliza esta opción, deberá utilizar la bibtexsecuencia de compilación anterior en lugar de la biberanterior.

Para ejecutar las compilaciones, puede utilizar la línea de comandos o su editor. La mayoría de los editores tienen botones o menús con opciones para la compilación no predeterminada. Aunque pdfLaTeX es el valor predeterminado, probablemente haya un botón u opción de menú para bibTeX (y quizás biber). Probablemente puedas personalizar aún más las cosas para adaptarlas a tu flujo de trabajo.

Respuesta2

Aquí hay un truco que me gusta usar:

  1. Cree un script de Python en el directorio raíz de su proyecto, llamado por ejemplo, compile_refs.pyy pegue el siguiente código en él:

    #!/usr/bin/python
    
    import subprocess, sys
    
    commands = [
        ['pdflatex', sys.argv[1] + '.tex'],
        ['bibtex', sys.argv[1] + '.aux'],
        ['pdflatex', sys.argv[1] + '.tex'],
        ['pdflatex', sys.argv[1] + '.tex']
    ]
    
    for c in commands:
        subprocess.call(c)
    
  2. Cuando quieras compilar referencias, simplemente ejecuta: python compile_refs.py main_file_name.

Respuesta3

A continuación se muestra una herramienta útil Makefileque puede utilizar para automatizar el proceso de compilación descrito en elrespuesta por cfr:

DOCNAME=report

all: report

.PHONY: clean

report:
    pdflatex $(DOCNAME).tex
    bibtex $(DOCNAME).aux
    pdflatex $(DOCNAME).tex
    pdflatex $(DOCNAME).tex

view: report
    open $(DOCNAME).pdf

clean:
    rm *.blg *.bbl *.aux *.log

Simplemente pegue esto en un archivo llamado Makefileen el mismo directorio que su archivo .tex principal y reemplácelo reporten la definición de variable DOCNAME=reportcon el nombre de su archivo.

Entonces puedes usar esto de la siguiente manera:

  1. makeo make reportcreará el documento PDF a partir de las fuentes TeX.
  2. make viewcreará el PDF si aún no lo ha creado y lo abrirá con el visor de PDF predeterminado de su sistema.
  3. make cleanLimpiará los archivos intermedios creados durante la creación del PDF.

Si necesita usar biberen lugar de bibtex, puede simplemente reemplazar la llamada a bibtexcon una llamada a biber.

Respuesta4

SI ESTÁS UTILIZANDO TEXSTUDIO. Vaya a: configuración --> compilaciones y ejecute esperando la ejecución de cada paso:

1 pdflátex. --> 2 bibtex. --> 3 pdflátex. --> 4 pdflátex.

información relacionada