使用該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 itation 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 套件時至少刪除該選項。這樣,它將回退到 default autostyle=tryonce
,這意味著即使您在文件中的某處切換為另一種語言,它也會使用主要語言引號(在您的情況下是法語)。
我還建議您留下french=guillemets
後面的內容,首先因為您明顯誤解了您所指的維基百科頁面然後因為一旦你輸入外語你必須使用這種語言的排版約定(你不會在英文引文中的問號前放置不間斷的空格,不是嗎?),所以在英文報價必須使用英文報價。因此,使用套件預設值 ( french=quotes
) 對於法語或英語的內部引號都是正確的。