![Facilite el uso de $\C$ para números complejos: choca con T2A, Misath y Babel](https://rvso.com/image/399813/Facilite%20el%20uso%20de%20%24%5CC%24%20para%20n%C3%BAmeros%20complejos%3A%20choca%20con%20T2A%2C%20Misath%20y%20Babel.png)
Mi preferencia es usar $\C$
para denotar el conjunto de números complejos, tal como lo uso $\R$
para denotar los números reales, ya sea con \mathbb
o \mathbf
.
Varios otros paquetes utilizan sus propias definiciones de \C
: t2aenc.def
(llamado desde \usepackage[T2A,T1]{fontenc}
); mismath.sty
; y uno hyperref.sty
o algún paquete al que llama.
Mi solución para esto se muestra en el MWE a continuación.
Pregunta:¿Existe un método más sencillo para lograr esto, sin redefinir repetidamente \C
?
Notas:
- Es muy poco probable que alguna vez necesite el
\C
usobabel
de T2A. No estoy seguro de cómohyperref
se usa\C
. (Es para un acento doblemente grave en serbocroata y esloveno). - Estoy usando pdflatex ynoxelatex o lualatex!
Fuente MWE:
\documentclass{article}
\usepackage[T2A,T1]{fontenc}
\usepackage[russian,french,german,polish,main=english]{babel}
% Avoid \lll clash with def in amssymb.sty:
\makeatletter
\let\polish@l=\ll
\let\polish@L=\LLL
\let\lll\relax \let\LLL\relax % undefine them
\def\plll{\polish@l}
\def\pLLL{\polish@L}
\makeatother
\usepackage{amsmath,amssymb}
% Choose ONE of the following two defs:
%\newcommand{\numsys}[1]{\mathbb{#1}}
\newcommand{\numsys}[1]{\mathbf{#1}}
% First
\makeatletter
\def\my@textormath{%
\ifmmode
\expandafter\@secondoftwo
\else
\expandafter\@firstoftwo
\fi}
\ifcsname C\endcsname
\let\oldC\C
\def\C{\my@textormath{\oldC}{\numsys{C}}}
\fi
\makeatother
\usepackage{mismath} % defines \Z, \Z, \Q, \R, \C with mathbf
\usepackage[pdftex]{hyperref}
\makeatletter
\def\my@textormath{%
\ifmmode
\expandafter\@secondoftwo
\else
\expandafter\@firstoftwo
\fi}
\@ifpackageloaded{hyperref}{% then
\let\newerC\C
\def\C{\my@textormath{\newerC}{\numsys{C}}}}%
{}
\makeatother
\renewcommand{\N}{\numsys{N}}
\renewcommand{\Z}{\numsys{Z}}
\renewcommand{\Q}{\numsys{Q}}
\renewcommand{\R}{\numsys{R}}
\begin{document}
$\N \subset \Z \subset \Q \subset \R \subset \C$
\end{document}
Publicación relacionada: ¿Es posible utilizar $ \C$ para números complejos con codificación T2A?
Respuesta1
Si quieres que tu definición gane agrega lo más tarde posible
\AtBeginDocument{\def\C{\numsys{C}}}