Как представить имена классов в LaTeX?

что вы считаете лучшим способом представления имен классов в документах LaTeX (написание части программного обеспечения).

В настоящее время я использую \texttt (моноширинный машинописный шрифт), который в остальном работает нормально, но имена моих классов в конечном итоге выходят «за» поля.

Итак, я прошу либо

  • альтернативный (красивый) способ представления имен классов
  • способ убедиться, что мои имена классов не выйдут за поля

бр, Токо


person Touko    schedule 25.08.2009    source источник
comment
Если кто-то пытается набрать имя класса LaTeX, обычно используется \textsf{classname}.   -  person Alex Hirzel    schedule 18.06.2012


Ответы (3)


\texttt - хороший выбор.

Если ваши имена классов в конечном итоге «выходят за поля», это потому, что LaTeX по умолчанию не переносит текст \texttt. (Из-за этого вы, вероятно, получаете предупреждения о «переполненных hboxes».)

Есть два возможных решения этой проблемы: либо перепишите свой текст так, чтобы имена классов не появлялись в конце строк, либо скажите LaTeX, чтобы имена ваших классов переносились через дефис (если это приемлемо для вас). В последнем случае ознакомьтесь с пакетом hyphenat. Попробуйте использовать его следующим образом:

\usepackage[htt]{hyphenat}

Вам также, вероятно, потребуется указать LaTeX, где ставить дефисы в именах классов, например:

This\-Is\-My\-Long\-Class\-Name

(для класса ThisIsMyLongClassName).

person Martin B    schedule 25.08.2009
comment
Спасибо. Чтобы заставить имена классов, выходящие за рамки поля, переходить на следующую строку с дефисом, \sloppy, похоже, работает нормально. При обнаружении этого переноса дополнительная информация была найдена на tex.ac.uk/ cgi-bin/texfaq2html?label=hyphoff - person Touko; 25.08.2009

Возможно, лучше было бы определить свой собственный макрос:

\newcommand{\classname}[1]{\texttt{#1}}

который вы затем используете следующим образом:

\classname{MyClass}

Это означает, что имена ваших классов помечаются как таковые, а не как текст в стиле пишущей машинки.

person High Performance Mark    schedule 25.08.2009
comment
На самом деле я уже делаю это, но да, хорошая мысль, спасибо. - person Touko; 26.08.2009

Вы можете использовать пакет url, который, несмотря на свое название, может использоваться для набора любого текста шрифтом для пишущей машинки с возможностью переноса строк.

person Jouni K. Seppänen    schedule 14.09.2009
comment
ну, \url{} имеет много встроенной логики, предназначенной для набора... URL-адресов! Попытка использовать только его для набора случайных вещей шрифтом пишущей машинки может показаться привлекательной сначала, но может очень сильно вас укусить позже - person Gyom; 12.10.2011
comment
@Gyom Я сказал пакет URL, а не команду \url. В документации к пакету сказано, что [это] предназначено для адресов электронной почты, гипертекстовых ссылок, каталогов/путей и т. д., в которых обычно нет пробелов. [...] [Новые] новые команды, подобные URL, могут быть определены с помощью \cs{urldef}. - person Jouni K. Seppänen; 14.10.2011