Estou procurando um comando para usar em um terminal para saber os seguintes fatos.
- Existe uma distribuição LaTeX instalada?
- Qual é o caminho onde colocar classes ou pacotes locais? No meu Mac, eu sei que é
'/usr/local/texlive/texmf-local/tex/latex'
.
O comando será usado por um script Python para automatizar a instalação de minhas pequenas classes ou pacotes pessoais.
As soluções fornecidas nos comentários a seguir funcionam bem no Mac, e acho que funciona também no Linux,mas não sei como fazer no Windows...
Responder1
Em termos de encontrar o local correto para uma instalação local, fazemos isso nos make.bat
arquivos do LaTeX3. Aí, temos
if not defined TEXMFHOME (
for /f "delims=" %%I in ('kpsewhich --var-value=TEXMFHOME') do @set TEXMFHOME=%%I
if [%TEXMFHOME%] == [] (
set TEXMFHOME=%USERPROFILE%\texmf
)
o que significa que se a variável TEXMFHOME
existir, ela será usada; caso contrário, tentaremos kpsewhich
obter um valor e, se isso não retornar nada, retornaremos ao local padrão.
Para encontrar 'algum programa', eu uso outro pedaço de programação de arquivo em lote selecionado de outro lugar. Aqui, o exemplo é encontrar Perl, mas a mesma abordagem se aplicaria para encontrar pdfTeX
:perl
set PATHCOPY=%PATH%
:perl-loop
if defined PERLEXE goto :end
for /f "delims=; tokens=1,2*" %%I in ("%PATHCOPY%") do (
if exist %%I\perl.exe set PERLEXE=perl
set PATHCOPY=%%J;%%K
)
if defined PERLEXE goto :end
if not "%PATHCOPY%"==";" goto :perl-loop
echo.
echo This procedure requires Perl, but it could not be found.
exit /b 1
goto :EOF
Responder2
Espero não ter entendido mal a pergunta.
Para Windows, eu simplesmente tentaria com pdftex --version
ou pdflatex --version
na linha de comando. Se houver uma versão (adequada) instalada do TeX, você obterá o nome da distribuição e a versão.
Você também pode usar path
para ver se existe um diretório para os binários do TeX (MiKTex ou TeXLive).
kpsewhich
está rodando no Windows, mas possui parâmetros diferentes da versão Unix (veja os comentários de @Joseph Wright e @Alan Munn).
Responder3
Se você deseja apenas a versão do LaTex, pdfTex ou pacotes você pode verificar o arquivo de log em qualquer projeto que você compilou no sistema e aí está. Lá você também poderá ver o caminho dos diferentes pacotes e a partir daí deduzir o caminho do seu arquivo TeX executável