diff options
author | Kenichi Handa <handa@m17n.org> | 2008-08-18 12:05:30 +0000 |
---|---|---|
committer | Kenichi Handa <handa@m17n.org> | 2008-08-18 12:05:30 +0000 |
commit | db716644516fcbddab198410eb78e7ac94765da0 (patch) | |
tree | ae62a8d61891cc6d693f246d9587e2410d96eb03 | |
parent | 4ab088c087da03de9f6878e8548d46f754b968a6 (diff) | |
download | emacs-db716644516fcbddab198410eb78e7ac94765da0.tar.gz |
(font_add_log): Add the font properties :script, :lang,
and :otf in the log.
-rw-r--r-- | src/font.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/font.c b/src/font.c index 7c15842d959..4258c99a52a 100644 --- a/src/font.c +++ b/src/font.c @@ -4928,7 +4928,28 @@ font_add_log (action, arg, result) if (EQ (Vfont_log, Qt)) return; if (FONTP (arg)) - arg = Ffont_xlfd_name (arg, Qt); + { + Lisp_Object tail, elt; + Lisp_Object equalstr = build_string ("="); + + val = Ffont_xlfd_name (arg, Qt); + for (tail = AREF (arg, FONT_EXTRA_INDEX); CONSP (tail); + tail = XCDR (tail)) + { + elt = XCAR (tail); + if (EQ (XCAR (elt), QCscript)) + val = concat3 (val, SYMBOL_NAME (QCscript), + concat2 (equalstr, SYMBOL_NAME (XCDR (elt)))); + else if (EQ (XCAR (elt), QClang)) + val = concat3 (val, SYMBOL_NAME (QClang), + concat2 (equalstr, SYMBOL_NAME (XCDR (elt)))); + else if (EQ (XCAR (elt), QCotf) && CONSP (XCDR (elt))) + val = concat3 (val, SYMBOL_NAME (QCotf), + concat2 (equalstr, + SYMBOL_NAME (XCAR (XCDR (elt))))); + } + arg = val; + } if (FONTP (result)) { val = Ffont_xlfd_name (result, Qt); |