XeLaTeX + \ifthenelse:

XeLaTeX + \ifthenelse:

Eu uso o XelaTeX para produzir meu currículo.

Atualmente, quero atualizá-lo e ter currículos em eslovaco e inglês em um único documento.

Quero que todas as strings de um idioma sejam agrupadas no preâmbulo, o mesmo para o outro. (Ou seja, não quero ter a string depois \begin{document}).

Quero criar \cvlangusando \def \cvlang {sk} % Options: en | sk. Dessa forma, posso alternar entre os idiomas com bastante facilidade.

Agora, não tenho ideia de como verificar qual é o valor atual do arquivo \cvlang. Quero criar algo assim ( ifsintaxe emprestada do Javascript; incorporou alguns comandos do TeX):

if (\cvlang == "sk"){
  \def \lgdatebirthplace {Dátum a miesto\\ narodenia}
  \def \lgaddress {Adresa}
  \def \lgphone {Telefón}
  \def \lgemail {Email}
}else if{
  \def \lgdatebirthplace {Date and place of birth}
  \def \lgaddress {Address}
  \def \lgphone {Phone}
  \def \lgemail {Email}
}

Não me importo com pacote/comando/sintaxe - pode ser qualquer coisa.

Tentei usar iftheno pacote, mas encontrei alguns erros na compilação do PDF:

\usepackage{ifthen}
\ifthenelse{\equal{\lang}{sk}}{
    \def \lgdatebirthplace {Dátum a miesto\\ narodenia}
    \def \lgaddress {Adresa}
    \def \lgphone {Telefón}
    \def \lgemail {Email}
}{
  \def \lgdatebirthplace {Date and place of birth}
  \def \lgaddress {Address}
  \def \lgphone {Phone}
  \def \lgemail {Email}
}%

Tentei usar pdftexcmdso pacote, porém também não funcionou:

% \usepackage{pdftexcmds}
% \ifnum\pdf@strcmp{\cvlang}{sk}{
  \def \lgdatebirthplace {Dátum a miesto\\ narodenia}
  \def \lgaddress {Adresa}
  \def \lgphone {Telefón}
  \def \lgemail {Email}
\else
  \def \lgdatebirthplace {Date and place of birth}
  \def \lgaddress {Address}
  \def \lgphone {Phone}
  \def \lgemail {Email}
\fi

Perguntas e respostas que verifiquei e tentei implementar: -Ao testar duas cadeias de caracteres totalmente expandidas para igualdade

PS – sou muito novo no TeX e nunca usei nenhum condicional nele.

Responder1

Não há necessidade de ifthen aqui. Adicione suas definições à interface do babel:

\documentclass{book}
\usepackage[english]{babel}
%\usepackage[slovak]{babel}
\addto\extrasslovak{%
 \def \lgdatebirthplace {Dátum a miesto}}
\addto\extrasenglish{%
 \def \lgdatebirthplace {Date and place of birth}}

\begin{document}
\lgdatebirthplace

\end{document}

informação relacionada