Comandos do Windows-Terminal para obter informações sobre a distribuição do LaTeX

Comandos do Windows-Terminal para obter informações sobre a distribuição do LaTeX

Estou procurando um comando para usar em um terminal para saber os seguintes fatos.

  1. Existe uma distribuição LaTeX instalada?
  2. 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.batarquivos 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 TEXMFHOMEexistir, ela será usada; caso contrário, tentaremos kpsewhichobter 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 --versionou pdflatex --versionna 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 pathpara ver se existe um diretório para os binários do TeX (MiKTex ou TeXLive).

kpsewhichestá 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

informação relacionada