diff options
author | Kenichi Handa <handa@m17n.org> | 2010-08-25 15:15:12 +0900 |
---|---|---|
committer | Kenichi Handa <handa@m17n.org> | 2010-08-25 15:15:12 +0900 |
commit | 38cc06d9c47e11c8cddfa39c3e09c18bc33071f3 (patch) | |
tree | ef1941fcb685e93f2591def428496b436fe67617 | |
parent | 4e603db3429957e6b26953c177f00a9c9d1c8766 (diff) | |
parent | 9bbaf4b01d0c95215fca22d2808ed0dd5466cae1 (diff) | |
download | emacs-38cc06d9c47e11c8cddfa39c3e09c18bc33071f3.tar.gz emacs-38cc06d9c47e11c8cddfa39c3e09c18bc33071f3.tar.bz2 emacs-38cc06d9c47e11c8cddfa39c3e09c18bc33071f3.zip |
merge trunk
-rw-r--r-- | doc/lispref/ChangeLog | 4 | ||||
-rw-r--r-- | doc/lispref/processes.texi | 2 | ||||
-rw-r--r-- | src/ChangeLog | 3 | ||||
-rw-r--r-- | src/fontset.c | 11 |
4 files changed, 18 insertions, 2 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 53b8ac25522..b58ce8cd464 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,3 +1,7 @@ +2010-08-25 Eli Zaretskii <eliz@gnu.org> + + * processes.texi (Filter Functions): Fix last change. + 2010-08-24 Markus Triska <triska@gmx.at> * processes.texi (Filter Functions): Use `buffer-live-p' instead diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi index 265c76471f0..89f97f99de3 100644 --- a/doc/lispref/processes.texi +++ b/doc/lispref/processes.texi @@ -1286,7 +1286,7 @@ of point. Here is how to do these things: @end group @group (save-excursion - ;; <at> r{Insert the text, advancing the process marker.} + ;; @r{Insert the text, advancing the process marker.} (goto-char (process-mark proc)) (insert string) (set-marker (process-mark proc) (point))) diff --git a/src/ChangeLog b/src/ChangeLog index 5ce4c049c77..39f168dc8a4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,8 @@ 2010-08-25 Kenichi Handa <handa@m17n.org> + * fontset.c (reorder_font_vector): Prefer a font-spec specifying + :otf. + * composite.c (composition_compute_stop_pos): Don't break composition at PT. (composition_reseat_it): Likewise. Fix calculation of character diff --git a/src/fontset.c b/src/fontset.c index b273ace75af..86b9ceb45db 100644 --- a/src/fontset.c +++ b/src/fontset.c @@ -283,6 +283,10 @@ fontset_id_valid_p (id) #define RFONT_DEF_OBJECT(rfont_def) AREF (rfont_def, 2) #define RFONT_DEF_SET_OBJECT(rfont_def, object) \ ASET ((rfont_def), 2, (object)) +/* Score of RFONT_DEF is an integer value; the lowest 8 bits represent + the order of listing by font backends, the higher bits represents + the order given by charset priority list. The smaller value is + preferable. */ #define RFONT_DEF_SCORE(rfont_def) XINT (AREF (rfont_def, 3)) #define RFONT_DEF_SET_SCORE(rfont_def, score) \ ASET ((rfont_def), 3, make_number (score)) @@ -412,8 +416,13 @@ reorder_font_vector (Lisp_Object font_group, struct font *font) Lisp_Object font_def = RFONT_DEF_FONT_DEF (rfont_def); Lisp_Object font_spec = FONT_DEF_SPEC (font_def); int score = RFONT_DEF_SCORE (rfont_def) & 0xFF; + Lisp_Object otf_spec = Ffont_get (font_spec, QCotf); - if (! font_match_p (font_spec, font_object)) + if (! NILP (otf_spec)) + /* A font-spec with :otf is preferable regardless of encoding + and language.. */ + ; + else if (! font_match_p (font_spec, font_object)) { Lisp_Object encoding = FONT_DEF_ENCODING (font_def); |