Sublime Text 2: Trabalhando com vários documentos, construindo o arquivo mestre

9

Atualmente, estou trabalhando com o LaTeX. Eu tenho um grande documento dividido em vários sub documentos. Quando estou trabalhando em um sub-documento, eu adoraria compilar o arquivo mestre ao pressionar ctrl + b, não o arquivo no qual estou atualmente. Como faço isso?

    
por elumbella 11.06.2013 / 14:17

2 respostas

9

Eu encontrei a resposta sozinho! Como mencionado aqui , basta colocar %código% como a primeira linha dos sub documentos!

    
por 13.06.2013 / 11:09
1

Se você tem 3 arquivos diferentes que você precisa, você pode usar comentários de primeira linha (ou segundos, se precisar de coisas utf8).  Eu uso para compilar o arquivo TeX principal de um dos filhos.

%!../main_file.tex
\documentclass[12pt,a4paper]{scrartcl}

\usepackage[czech,english]{babel}

Eu tenho um script, que analisa a primeira linha:

match='head -n1 $1 | grep %!'

if [[ $match ]]
    then
        # do stuff with the parent's name, which is ${match:2:100}
    else
        # no match :/
fi

e um arquivo de compilação simples com o objetivo de meu script personalizado:

{
    "cmd": ["/path/to/build/script.sh", "$file"],
    "selector": "whatever"
}

Dessa forma, você pode ter quantas "referências" em seus arquivos desejar. Basta mudar o valor de head -n1 .

Para finalizar, eu apresento a você meu script de construção XeLaTeX;)

#!/bin/bash
file="$1"
flag="-halt-on-error"

match='head -n1 $file | grep %!'

if [[ $match ]]
    then
        if [ ${match:2:3} = ../ ]
            then
                cd .. &&
                target=${match:5:100}
            else
                target=${match:2:100}
        fi
    else
        target=$file
fi
rubber -c 'set arguments -shell-escape' -f -m xelatex -W all $target

exit 0
    
por 11.06.2013 / 14:22