Вы рассмотрели использование моноширинного (печатающее устройство) шрифт для списка? Следующие работы в качестве примера:
\documentclass{article}
\usepackage{listings}
\lstset{basicstyle=\ttfamily} % <<< This line added
\begin{document}
\begin{lstlisting}
Fahrenheit=input("What is the Fahrenheit temperature?")
Celsius=(5.0/9.0)*(Fahrenheit-32)
print"The temperature is",Celsius,"degrees Celsius"
\end{lstlisting}
\end{document}
Я вижу в документации (который должен был быть распределен с packge, но доступен в http://www.ctan.org/tex-archive/macros/latex/contrib/listings/listings.pdf ) для listings
, что существует устанавливаемое свойство, названное upquote
для заботы об этом.
Из документации:
upquote=⟨true|false⟩ false
determines whether the left and right quote are printed ‘’ or `'. This
key requires the textcomp package if true.
Делают что-то как [1 110]
\lstset{upquote=true}
прежде begin
луг среда списка или использование
\begin{lstlisting}[upquote=true]
...
\end{lstlisting}
<час> , также возможно, что это свойство уже установлено для Вас в соответствующем определении языка (см. документы снова, большой список предопределенных языков на странице 12).
Использование:
\lstloadlanguages{<dialects you need>}
в заголовке. И затем набор язык с помощью любой из вышеупомянутых конвенций для выбора опций.
ответ dmckee выше, вероятно, работ. Если Вы отбрасываете свое последнее условие, т.е. Вы разрешаете изменения в коде, то существует более универсальное решение, которое я склонен использовать каждый раз, когда TEX (La) представляет символ так или иначе по-другому, чем я ожидаю, что это, чтобы сделать должно использовать эти \symbol
команда. Я перечисляю его здесь, потому что это может быть полезно в других ситуациях также:
\newcommand{\qq}{\symbol{34}} % 34 is the decimal ascii code for "
И затем Ваш пример:
\begin{lstlisting}
...
print{\qq}The temperature is{\qq},Celsius,{\qq}degrees Celsius{\qq}
...
\end{lstlisting}
Примечание фигурные скобки, которые, предположительно, забирают списки к режиму LaTeX (см. escapechars
опция пакета.)
Может быть, это потому, что я установил листинги на раннем этапе, как пользователь LaTeX, но я удивлен, узнав, что без пакета листингов поведение будет другим.
Мое решение было похоже на решение Дэвида Ханака. , но я использовал символы для двойных кавычек, как описано в шпаргалке по LaTeX ( http://stdout.org/~winston/latex )
\newcommand{\QQ}[1]{``#1''}
Вот решение
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{lmodern}
% in the listings package configuration, try:
literate={"}{\textquotedbl}1,