> My LaTeX files start with
>
> \usepackage{CJK}
> \usepackage[CJK, overlap]{ruby}
> \usepackage[T5,LGR,T1]{fontenc}
Since you are using TeXLive I suggest that you use the CJKut8.sty
package; all CJK fonts in this distribution come with proper Unicode
virtual fonts. See doc/CJKutf8.txt for more, together with
examples/CJKutf8.tex.
> and I define
>
> \newcommand{\cjk}[1]{\begin{CJK*}[dnp]{JIS}{min}#1\end{CJK*}}
> \newcommand{\sch}[1]{\begin{CJK*}{GB}{gbsn}#1\end{CJK*}}
> \newcommand{\kr}[1]{\begin{CJK*}[HL]{KS}{}#1\end{CJK*}}
> \newcommand{\viet}[1]{{\fontencoding{T5}\selectfont#1}}
This looks OK.
> 1) I can edit most Chinese and Japanese, but there are a few Hanzi
> that are not displayed by emacs, I get only a small box within
> emacs, but the character gets printed. An example of such
> problem is provided by the name of the KangXi Emperor, something
> like 康熙 (I see it correctly in the mail window, but
> the second Hanzi does not show in emacs). Am I missing some
> emacs fonts, and which ones?
You probably don't miss any Emacs fonts -- there are many Unicode
characters which aren't covered by the character sets supported
internally by Emacs. However, in this particular case, you need a
font which covers JIS X 0208-1990. For example, my JIS font is
-JIS-Fixed-Medium-R-Normal--24-230-75-75-C-240-JISX0208.1983-0
which doesn't contain the additional two characters from the 1990
extension. One of them is the character you need.
> 2) for typesetting traditional Chinese, I use
>
> \begin{CJK*}[dnp]{JIS}{min}...\end{CJK*}
No. This is for Japanese.
> and for simplified Chinese:
>
> \begin{CJK*}{GB}{gbsn}..\end{CJK*}
This is OK.
> 3) One of the things I want to type is the Wikipedia page
> http://ja.wikipedia.org/wiki/%E4%B8%83%E5%8D%81%E4%BA%8C%E5%80%99
>
> A first approximation of it is:
>
> http://www.loria.fr/~roegel/tmp/72kou.pdf
>
> The black bullets show my problems. When I copy/paste the
> Wikipedia characters into emacs, I get rubbish.
What exactly do you mean with `rubbish'? I would expect empty boxes.
> The exact list of Hanzi which cause trouble here is: 鶡
> 雊 厲 睆 雊
The first character in your list is U+9DA1, 鶡. On my Emacs, the font
-Adobe&CBS&Yasuoka-Fixed-Medium-R-Normal--24-234-75-75-C-240-JISX0212.1990-0
is used for that (you can get this info with `C-u C-x =' for a
particular character); as you can see, you need a JIS X 0212-1990
font.
> Incidentally, the Wikipedia page makes it apparent that these
> characters are drawn from a different font than the others.
Not for me :-)
> My question is: how can I get these Hanzi properly in emacs and
> in print (with non-bitmap fonts)?
If you use cjk-enc.el, it should print correctly even if Emacs
displays an empty box, because TeXLive comes with a JIS X 0212 font
(from the wadalab family), and cjk-enc.el correctly maps to that font.
However, you need
\CJKencfamily[dnp]{JIS2}{min}
in the preamble of your document so that cjk-enc.el gets the right
font encoding and family. Cf. examples/CJKbabel.tex (which
accidentally doesn't contain an example for `JIS2').
> 4) With a few other characters, I get them to display with bitmap
> fonts (such as hanja) but not in T1/TTF. Are these Hanzis not in
> the Arphic fonts? Two of the characters that give me trouble are
> 啟 and 糬
The first character is U+555F, 啟. I don't see any problem with it.
> 5) There are at least three Hanzis for which I cannot get the
> traditional character. If I use one of the above CJK environment,
> I get an error. These Hanzis are:
>
> 陰 (simplified=阴)
> 曆 (simplified=历)
> 鄧 (simplified=邓)
The first one is U+9670, 陰. Within the Big 5 character set, this is
0xB3B1.
> I get these Hanzis right in emacs, but can't print them with
> LaTeX. Is there a way to solve this problem with the Arphic
> fonts?
All Arphic fonts contain this character. The problem you experience
is probably due to your \cjk macro which defines Japanese instead of
traditional Chinese. For the latter, you need `Bg5' encoding.
> 6) A final problem concerns the Vietnamese fonts in emacs. I can
> print Vietnamese, but I do not see all characters in emacs. Is
> there a way to solve this, without breaking the above solutions?
Emacs internally uses two character sets for Vietnamese,
vietnamese-viscii-lower and vietnamese-viscii-upper. Both map to the
VISCII1.1 encoding within X11. For example, I use
-ETL-Fixed-Medium-R-Normal--24-240-72-72-C-120-VISCII1.1-1
The number of fonts which directly support VISCII 1.1 is small (I only
have six such bitmap fonts -- and no scaled fonts).
I don't know whether it's possible to make fontconfig synthesize
VISCII encoding from Unicode encoded fonts. Saying
fc-list :lang=vi
on my GNU/Linux box I get more than 20 scalable fonts which support
Vietnamese, but only in Unicode. This would be an interesting
question to the fontconfig people...
Werner
_______________________________________________
Cjk maillist - [email protected]
https://lists.ffii.org/mailman/listinfo/cjk