Using: XeTeX 3.1415926-2.5-0.9999.3 (TexLive 2013) on openSuse 13.1
Setting up a multilingual buddhist glossary I have encountered the problem that closing (German) typographical quotation marks “ are being moved to the right with a space inserted. Additionally -- is no longer converter to ndash. (I have played around with removing certain packages, various fonts or \XeTeXlinebreaklocale to no avail.)
Kindly enough the documentation for xeCJK is Chinese only (/usr/local/texlive/2013/texmf-dist/doc/xelatex/xecjk/xeCJK.pdf apologies, I only read Japanese). The XeTeX main doc (xetex-languages.tex,v: 2.02 2009/06/15) does explain the package somewhat (ch. 3.4.1, p. 79), although some options do through errors. What vexes me a bit is the concluding paragraph:
3.4.2.3 Compatibility eoretically, zhspacing should be compatible with all macro packages, except those who change the definition of \hskip and \penalty, in which case special treatment should be applied. I haven’t found any conflict when using common packages such as hyperref and fancyhdr. However, ulem redefineds \hskip and \penalty, and causes unexpected output. Use zhulem provided along with zhspacing instead.
Back to the problem:
Code (Lao, khmer, and birman omitted for this example)
\documentclass[10pt,a5paper]{book}
\usepackage[inner=2cm,outer=3cm,top=2cm,bottom=4cm]{geometry}
\usepackage{layout}
\usepackage[CJKnumber]{xeCJK}
\setCJKmainfont{Bitstream CyberCJK}
\punctstyle{plain}
\usepackage[babelshorthands]{polyglossia}
\setmainlanguage{german}
\setotherlanguage{sanskrit}
\setotherlanguage{english}
\setotherlanguage[numerals=thai]{thai}
\newfontfamily\thaifont[Script=Thai]{FreeSerif}
\XeTeXlinebreaklocale ’th_TH’
\usepackage{setspace}
\usepackage{xspace}
\usepackage{textcomp}
\usepackage[hyphens,obeyspaces,spaces]{url}
\usepackage[colorlinks,filecolor=black,linkcolor=black,citecolor=black,urlcolor=black,breaklinks]{hyperref}
\usepackage{color}
\usepackage{wrapfig}
\usepackage{microtype}
\widowpenalty=10000
\clubpenalty=10000
\flushbottom
% +++ Fonts % using the Free-family Fonts saves UTF-8 hassles as most characters (e.g ā) are included. The following NOT pertinent for example, just layout
\setmainfont{FreeSerif}
\setsansfont{FreeSans}
\defaultfontfeatures{Ligatures=TeX}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
\fancyfoot[LO,RE]{\bfseries\thepage}
\usepackage[compact]{titlesec}
\usepackage[font=footnotesize]{caption}
\usepackage{enumitem} % Zeilenabstand Listen
\setlist[itemize]{itemsep=-3pt}
\setlist[description]{itemsep=-3pt}
\setlist[enumerate]{itemsep=-3pt}
\setlength{\leftmargini}{1em}
\begin{document}
\begin{description}
% Some CJK and "--" here
\item[Āgama] ({\scriptsize ch./jap.:} 阿含經.) Das chinesische Analogon der Texte des Pāli-Kanons. Die Übersetzungen, meist aus dem Sanskrit, basieren auf teilweise älteren Texten als denen der Theravadins. Quellenangaben üblicherweise aus den ersten beiden Bänden (Nr. 1--155) des 大正新修大蔵経 \textit{Taishō shinshū daizōkyō;} Tōkyō 1922--32
% some "shifted" “ in this
\item[Ariya pugalla.] A) Ein Erleuchteter, im modernen Thailand als buddhistischer „Heiliger“ Verehrter. („Erleuchtung“ wird einem Mönch üblicherweise erst nach seinem Tode nachgesagt. Von sich selbst zu behaupten, man besäße mehr übernatürliche Kräfte als man tatsächlich hat wäre für einen Ordinierten ein \textit{Pārājikā}-Vergehen.)
% some Thai, lao etc, to add more confusion
\item[Jātaka(m) (Wiedergeburtsgeschichten).] (\textthai{ชาดก}, \textit{chadok}, {\scriptsize Skt.:} जातक, {\scriptsize Birm.:} ဇာတ်တော်; {\scriptsize Khmer:} ជាតក, \textit{cietɑk;} {\scriptsize Lao:} (\textlao{ຊາດົກ}, \textit{sadok,} {\scriptsize Jap.:} 本生)
\end{description}
\end{document}


Any suggestions? a) What might cause it or b) workaround?

XeTeXwould disable translating--to en-dash (also em-dash) as default, and you should put\defaultfontfeatures{Ligatures=TeX}just after loadingxeCJKto affect all font that specified by commands provided byxeCJKandfontspec. – Ch'en Meng Jan 17 '14 at 11:27「and」, you have to input these quotes directly. – Ch'en Meng Jan 17 '14 at 11:35ជាតកin the font you were selected for main text font, sayBitstream CyberCJKfor CJK chars andFreeSeriffor others, you got some question marks. What you have to do to fix this problem is specifing a font that contain these chars. – Ch'en Meng Jan 17 '14 at 11:42xeCJKpackage but only use\newfontfamilyfor Chinese and Japanese fonts. – Leo Liu Feb 07 '14 at 03:47