Курсив с использованием кавычек с иностранным языком

Курсив с использованием кавычек с иностранным языком

Используя csquotesпакет и polyglossiaфранцузский язык, я хочу преобразовать только \foreignquote{english}{my text is write in english italics with « » typography}в курсив.

\documentclass[a4paper, 12pt,twoside, openright]{memoir}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\usepackage{fontspec}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage[autostyle=true,french=guillemets,maxlevel=3]{csquotes}
\usepackage{xparse}
\usepackage{graphicx}
\usepackage[protrusion=true]{microtype}
\sidecapmargin{outer}
\setsidecappos{t}

\usepackage[backend=biber,backref=true, natbib=true, isbn=false, doi=false, url=false, style=authoryear,maxcitenames=1, maxbibnames=999, sorting=nyt, refsection=chapter, hyperref]{biblatex}

\addbibresource[datatype=bibtex]{library.bib}

\begin{document}

\chapterstyle{bringhurst}

\foreignquote{english}{my text is write in english italics with « » typography}

\printbibliography

\end{document}

Например, в Википедии на странице цитирования на французском языке указано «используйте только «»»: Voici « une citation en français », mais «вот цитата на английском».

Обновление 1:

Пример, приведенный egreg, в настоящее время работает только для одного уровня вложенности цитаты, и часто вы можете иметь некоторую цитату, подобную этой:

\foreignquote{english}{my text is write in english italics with « » typography, and a \foreignquote{english}{ nested level of citation like this }  }

Дайте что-то вроде этого: «мой текст написан английским курсивом с использованием « » типографики и «вложенного уровня цитирования» вроде этого »

решение1

Мы можем воспользоваться тем фактом, что \emэто переключатель:

\documentclass[a4paper, 12pt,twoside, openright]{memoir}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\setotherlanguage{english}
\usepackage{fontspec}
\usepackage[autostyle=true,french=guillemets,maxlevel=3]{csquotes}

\DeclareQuoteStyle{english}
  {\mkfrenchopenquote{\guillemotleft}\em}
  {\em\mkfrenchclosequote{\guillemotright}}
  {\textquotedblleft\em}
  {\em\textquotedblright}


\begin{document}

Des mots français \foreignquote{english}{with an English quote} suivi
par mots français.

\end{document}

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

решение2

Как насчет этого? Он создает новый стиль (cs-)quote с именем fquotesи соответствующую команду с именем \myfquote. (Я не знаю, можно ли определить команду csquote немедленно, однако.)

\documentclass{article}
\usepackage{csquotes}

\DeclareQuoteStyle{fquotes}
  {\em}{}{\em}{}

\newcommand*{\myfquote}[1]{%
  \begingroup%
    \setquotestyle{fquotes}%
    \enquote{#1}%
  \endgroup%
}

\begin{document}
  bla bla bla \enquote{testing \myfquote{foreign quote}} bla bla bla 
\end{document}

выход

решение3

Недавно я столкнулся с той же проблемой, но нашел более простое и (я думаю) более чистое решение, поскольку оно использует только функции загруженных пакетов.

\documentclass[a4paper, 12pt,twoside, openright]{memoir}
\usepackage{polyglossia}
\setdefaultlanguage{french}
\setotherlanguage{english}
\newfontfamily{\englishfont}{Linux Libertine O Italic}
\usepackage{fontspec}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage[autopunct,french=guillemets]{csquotes}
%\usepackage[autostyle=true,french=guillemets,maxlevel=3]{csquotes}
\usepackage{xparse}
\usepackage{graphicx}
\usepackage[protrusion=true]{microtype}
\sidecapmargin{outer}
\setsidecappos{t}

\usepackage[backend=biber,backref=true, natbib=true, isbn=false, doi=false, url=false, style=authoryear,maxcitenames=1, maxbibnames=999, sorting=nyt, refsection=chapter, hyperref]{biblatex}

\addbibresource[datatype=bibtex]{library.bib}

\begin{document}

\chapterstyle{bringhurst}

Essai de texte en français \foreignquote{english}{my text is write in english italics with « » typography \textquote[][]{still quoted in english}}.

\printbibliography

\end{document}

По сути, вы объявляете, \setotherlanguage{english}а затем создаете новое семейство шрифтов для этого языка, выбирая курсивный шрифт: \newfontfamily{\englishfont}{Linux Libertine O Italic}.

Затем вы удаляете по крайней мере autostyle=trueопцию при загрузке пакета csquotes. Таким образом, он вернется к значению по умолчанию autostyle=tryonce, то есть будет использовать кавычки основного языка (в вашем случае французского), даже если вы переключитесь на другой язык где-то в документе.

Я бы также рекомендовал вам оставить « french=guillemetsзаднюю часть», во-первых, потому что вы явно неправильно истолковываетестраница Википедии, на которую вы ссылаетесьи затем, поскольку, как только вы входите в иностранный язык, выдолжениспользуйте типографские соглашения этого языка (вы ведь не поставите неразрывный пробел перед вопросительным знаком в цитате на английском языке, не так ли?), поэтомувцитата на английском языке, вы должны использовать английские кавычки. Поэтому использование пакета default ( french=quotes) будет правильным как для внутренних кавычек на французском, так и на английском языке.

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