URL с `\urlstyle(same)`, похоже, принудительно использует `lowtilde`

URL с `\urlstyle(same)`, похоже, принудительно использует `lowtilde`

При использовании \urlstyle{same}пакет urlзаменит низкую «поддельную» тильду, даже если опция lowtildeне указана:

\documentclass{article}


\usepackage{url}
\urlstyle{same}


\begin{document}

Tilde: \textasciitilde

Not a tilde: \url{~}

\end{document}

Почему это происходит и есть ли способ это обойти?

Я использую IEEEtranкласс, который принудительно устанавливает эту \urlstyle{same}опцию, и отправляю статью в журнал, поэтому я бы предпочел не загружать пакет hyperref(что предлагается в качестве обходного пути в другом месте на этом сайте), поскольку это может быть запрещено или может быть незаметно удалено при редактировании.

решение1

Я предполагаю, что проблема в определении \Url@OTnonTT, где \UrlTildeSpecialвместо \Url@force@Tilde.

Последняя команда — \relax, если не lowtildeуказано иное.

\documentclass{article}
\usepackage{url}

\makeatletter
\def\Url@OTnonTT{\do\<{\langle}\do\>{\mathbin{\rangle}}\do
  \_{\_\penalty\@m}\do\|{\mid}\do\{{\lbrace}\do\}{\mathbin{\rbrace}}\do
  \\{\mathbin{\backslash}}\Url@force@Tilde}% <--- it had \UrlTildeSpecial
\makeatother

\urlstyle{same}


\begin{document}

Tilde: \textasciitilde

Not a tilde: \url{~}

\end{document}

введите описание изображения здесь

решение2

Цитата из стр. 382Полный список символов LaTeX[выделено мной]:

Обратите внимание, что \textasciitildeи \~{}создают приподнятые диакритические тильды. «Текстовые» (т. е. вертикально центрированные) тильды можно создать либо с помощью \simкоманды math-mode ..., которая создает довольно широкую «∼», либо с помощью textcompпакета \texttildelow, которая создает вертикально центрированную «~» в большинстве шрифтов, но ориентированную на базовую линию «~» в Computer Modern, txfonts, pxfonts и различных других шрифтах, происходящих из мира TEX.Если ваша цель — набрать тильды в URL-адресах или именах файлов Unix, лучшим вариантом будет использоватьurl пакета...

Короче говоря, то, что вы называете «поддельной тильдой», на самом деле является вертикально центрированным символом, который должен быть вполне приемлемым при использовании в настройках текстового режима, и особенно при использовании в строках URL.

Связанный контент