From: Miles Bader Date: Sat, 29 Dec 2007 02:39:17 +0000 (+0000) Subject: Merge from emacs--devo--0 X-Git-Tag: emacs-pretest-23.0.90~8295^2~69 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a0c92ed92d3d62d4926dafb1d595d87843df4688;p=emacs.git Merge from emacs--devo--0 Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-306 --- a0c92ed92d3d62d4926dafb1d595d87843df4688 diff --cc leim/quail/latin-alt.el index 70034f44a63,30b3598fcba..b0da98d6449 --- a/leim/quail/latin-alt.el +++ b/leim/quail/latin-alt.el @@@ -39,19 -50,19 +50,19 @@@ special (so you can use that to enter | postfix | examples ------------+---------+---------- - acute | ' | a' -> ,Aa(B - grave | ` | a` -> ,A`(B - circumflex | ^ | a^ -> ,Ab(B - diaeresis | \" | a\" -> ,Ad(B - tilde | ~ | a~ -> ,Ac(B - cedilla | / | c/ -> ,Ag(B - nordic | / | d/ -> ,Ap(B t/ -> ,A~(B a/ -> ,Ae(B e/ -> ,Af(B o/ -> ,Ax(B - others | /<> | s/ -> ,A_(B ?/ -> ,A?(B !/ -> ,A!(B - | various | << -> ,A+(B >> -> ,A;(B o_ -> ,A:(B a_ -> ,A*(B + acute | ' | a' -> á + grave | ` | a` -> à + circumflex | ^ | a^ -> â + diaeresis | \" | a\" -> ä + tilde | ~ | a~ -> ã + cedilla | / | c/ -> ç + nordic | / | d/ -> ð t/ -> þ a/ -> å e/ -> æ o/ -> ø + others | /<> | s/ -> ß ?/ -> ¿ !/ -> ¡ + | various | << -> « >> -> » o_ -> º a_ -> ª - It would be natural to use comma for cedillas, but that would be - inconvenient in practice because commas are needed very often after a - letter. + It seems natural to use comma for cedillas, but that is + inconvenient in practice because commas are needed very + often after a letter. Doubling the postfix separates the letter and postfix: e.g. a'' -> a' " nil t nil nil nil nil nil nil nil nil t) @@@ -202,21 -215,21 +215,21 @@@ comma and period are not special (use | postfix | examples ------------+---------+---------- - acute | ' | a' -> ,Ba(B - ogonek | ` | a` -> ,B1(B - diaeresis | \" | a\" -> ,Bd(B - circumflex | ^ | a^ -> ,Bb(B - breve | ~ | a~ -> ,Bc(B - cedilla | ` | c` -> ,Bg(B - caron | ~ | c~ -> ,Bh(B - dbl. acute | : | o: -> ,Bu(B - ring | ` | u` -> ,By(B - dot | ` | z` -> ,B?(B - stroke | / | d/ -> ,Bp(B - others | / | s/ -> ,B_(B + acute | ' | a' -> á + ogonek | ` | a` -> ą + diaeresis | \" | a\" -> ä + circumflex | ^ | a^ -> â + breve | ~ | a~ -> ă + cedilla | ` | c` -> ç + caron | ~ | c~ -> č + dbl. acute | : | o: -> ő + ring | ` | u` -> ů + dot | ` | z` -> ż + stroke | / | d/ -> đ + others | / | s/ -> ß - It would be natural to use period and comma for dots/rings and - cedillas/ogoneks, but that would inconvenient in practice, because + It seems natural to use period and comma for dots/rings and + cedillas/ogoneks, but that is inconvenient in practice, because periods and commas are needed very often after a letter. Doubling the postfix separates the letter and postfix: e.g. a'' -> a' @@@ -564,21 -583,21 +583,21 @@@ special (use ~ instead) | postfix | examples ------------+---------+---------- - acute | ' | a' -> ,Da(B - circumflex | ^ | a^ -> ,Db(B - diaeresis | \" | a\" -> ,Dd(B - ogonek | ` | a` -> ,D1(B - macron | - | a- -> ,D`(B - tilde | ~ | a~ -> ,Dc(B - caron | ~ | c~ -> ,Dh(B - dot | ~ | e~ -> ,Dl(B - cedilla | ` | k` -> ,Ds(B g` -> ,D;(B - stroke | / | d/ -> ,Dp(B - nordic | / | a/ -> ,De(B e/ -> ,Df(B o/ -> ,Dx(B - others | / | s/ -> ,D_(B n/ -> ,D?(B k/ -> ,D"(B + acute | ' | a' -> á + circumflex | ^ | a^ -> â + diaeresis | \" | a\" -> ä + ogonek | ` | a` -> ą + macron | - | a- -> ā + tilde | ~ | a~ -> ã + caron | ~ | c~ -> č + dot | ~ | e~ -> ė + cedilla | ` | k` -> ķ g` -> ģ + stroke | / | d/ -> đ + nordic | / | a/ -> å e/ -> æ o/ -> ø + others | / | s/ -> ß n/ -> ŋ k/ -> ĸ - It would be natural to use period and comma for dots and - cedillas/ogoneks, but that would inconvenient in practice, because + It seems natural to use period and comma for dots and + cedillas/ogoneks, but that is inconvenient in practice, because periods and commas are needed very often after a letter. Doubling the postfix separates the letter and postfix: e.g. a'' -> a' @@@ -758,19 -780,19 +780,19 @@@ special (use / instead) | postfix | examples ------------+---------+---------- - acute | ' | a' -> ,Ma(B - grave | ` | a` -> ,M`(B - circumflex | ^ | a^ -> ,Mb(B - diaeresis | \" | a\" -> ,Md(B - tilde | ~ | a~ -> ,Mc(B - breve | ~ | g~ -> ,Mp(B - cedilla | ` | c` -> ,Mg(B - dot | / | i/ -> ,M}(B I/ -> ,M](B - nordic | / | a/ -> ,Me(B e/ -> ,Mf(B o/ -> ,Mx(B - others | / | s/ -> ,M_(B + acute | ' | a' -> á + grave | ` | a` -> à + circumflex | ^ | a^ -> â + diaeresis | \" | a\" -> ä + tilde | ~ | a~ -> ã + breve | ~ | g~ -> ğ + cedilla | ` | c` -> ç + dot | / | i/ -> ı I/ -> İ + nordic | / | a/ -> å e/ -> æ o/ -> ø + others | / | s/ -> ß - It would be natural to use period and comma for dots and cedillas, but - that would inconvenient in practice, because periods and commas are + It seems natural to use period and comma for dots and cedillas, but + that is inconvenient in practice, because periods and commas are needed very often after a letter. Doubling the postfix separates the letter and postfix: e.g. a'' -> a' @@@ -1259,173 -1076,94 +1076,28 @@@ Doubling the postfix separates the lett ("a__" ["a_"]) ) - (quail-define-package - "norwegian-alt-postfix" "Latin-1" "NO<" t - "Norwegian (Norsk) input method (rule: AE->Æ, OE->Ø, AA->Å, E'->É) - - Doubling the postfix separates the letter and postfix: e.g. aee -> ae - " - nil t nil nil nil nil nil nil nil nil t) - - (quail-define-rules - ("AE" ?Æ) - ("ae" ?æ) - ("OE" ?Ø) - ("oe" ?ø) - ("AA" ?Å) - ("aa" ?å) - ("E'" ?É) - ("e'" ?é) - - ("AEE" ["AE"]) - ("aee" ["ae"]) - ("OEE" ["OE"]) - ("oee" ["oe"]) - ("AAA" ["AA"]) - ("aaa" ["aa"]) - ("E''" ["E'"]) - ("e''" ["e'"]) - ) - - (quail-define-package - "scandinavian-alt-postfix" "Latin-1" "SC<" t - "Scandinavian input method with postfix modifiers - Supported languages are Swedish, Norwegian, Danish, and Finnish. - - ae -> æ - oe -> ø - aa -> å - a\" -> ä - o\" -> ö - e' -> é - - Doubling the postfix separates the letter and postfix: - aee -> ae o\"\" -> o\" etc. - " nil t nil nil nil nil nil nil nil nil t) - - (quail-define-rules - ("AE" ?Æ) - ("ae" ?æ) - ("OE" ?Ø) - ("oe" ?ø) - ("AA" ?Å) - ("aa" ?å) - ("A\"" ?Ä) - ("a\"" ?ä) - ("O\"" ?Ö) - ("o\"" ?ö) - ("E'" ?É) - ("e'" ?é) - - ("AEE" ["AE"]) - ("aee" ["ae"]) - ("OEE" ["OE"]) - ("oee" ["oe"]) - ("AAA" ["AA"]) - ("aaa" ["aa"]) - ("A\"\"" ["A\""]) - ("a\"\"" ["a\""]) - ("O\"\"" ["O\""]) - ("o\"\"" ["o\""]) - ("E''" ["E'"]) - ("e''" ["e'"]) - ) - - (quail-define-package - "spanish-alt-postfix" "Spanish" "ES<" t - "Spanish (Español) input method with postfix modifiers - - A' -> Á - E' -> É - I' -> Í - O' -> Ó - U' -> Ú - N~ -> Ñ - !/ -> ¡ - ?/ -> ¿ - - Doubling the postfix separates the letter and postfix: - a'' -> a' n~~ -> n~, etc. - " nil t nil nil nil nil nil nil nil nil t) - - (quail-define-rules - ("A'" ?Á) - ("a'" ?á) - ("E'" ?É) - ("e'" ?é) - ("I'" ?Í) - ("i'" ?í) - ("O'" ?Ó) - ("o'" ?ó) - ("U'" ?Ú) - ("u'" ?ú) - ("N~" ?Ñ) - ("n~" ?ñ) - ("?/" ?¿) - ("!/" ?¡) - - ("A''" ["A'"]) - ("a''" ["a'"]) - ("E''" ["E'"]) - ("e''" ["e'"]) - ("I''" ["I'"]) - ("i''" ["i'"]) - ("O''" ["O'"]) - ("o''" ["o'"]) - ("U''" ["U'"]) - ("u''" ["u'"]) - ("N~~" ["N~"]) - ("n~~" ["n~"]) - ("?//" ["?/"]) - ("!//" ["!/"]) - ) - - (quail-define-package - "swedish-alt-postfix" "Latin-1" "SV<" t - "Swedish (Svenska) input method (rule: AA -> Å, AE -> Ä, OE -> Ö, E' -> É) - - Doubling the postfix separates the letter and postfix: e.g. aee -> ae - " nil t nil nil nil nil nil nil nil nil t) - - (quail-define-rules - ("AA" ?Å) - ("aa" ?å) - ("AE" ?Ä) - ("ae" ?ä) - ("OE" ?Ö) - ("oe" ?ö) - ("E'" ?É) - ("e'" ?é) - - ("AAA" ["AA"]) - ("aaa" ["aa"]) - ("AEE" ["AE"]) - ("aee" ["ae"]) - ("OEE" ["OE"]) - ("oee" ["oe"]) - ("E''" ["E'"]) - ("e''" ["e'"]) - ) (quail-define-package - "turkish-latin-3-alt-postfix" "Turkish" "TR3<<" t - "Turkish (T,A|(Brk,Ag(Be) input method with postfix modifiers. -This input method differs from `turkish-latin-3-postfix' in that -comma is not special (use ` instead). - -This is for those who use Latin-3 (ISO-8859-3) for Turkish. If you -use Latin-5 (ISO-8859-9), you should use \"turkish-alt-postfix\" instead. - -Note for I, ,C9(B, ,C)(B, i. - -A^ -> ,CB(B -C` -> ,CG(B -G^ -> ,C+(B -I -> I -i -> ,C9(B -I/ -> ,C)(B -i/ -> i -O\" -> ,CV(B -S` -> ,C*(B -U\" -> ,C\(B -U^ -> ,C[(B - -Doubling the postfix separates the letter and postfix: e.g. a^^ -> a^ -" nil t nil nil nil nil nil nil nil nil t) - -(quail-define-rules - ("A^" ?,CB(B) - ("a^" ?,Cb(B) - ("C`" ?,CG(B) - ("c`" ?,Cg(B) - ("G^" ?,C+(B) - ("g^" ?,C;(B) - ("I/" ?,C)(B) - ("i" ?,C9(B) - ("i/" ?i) - ("O\"" ?,CV(B) - ("o\"" ?,Cv(B) - ("S`" ?,C*(B) - ("s`" ?,C:(B) - ("U\"" ?,C\(B) - ("u\"" ?,C|(B) - ("U^" ?,C[(B) - ("u^" ?,C{(B) - - ("A^^" ["A^"]) - ("a^^" ["a^"]) - ("C``" ["C`"]) - ("c``" ["c`"]) - ("G^^" ["G^"]) - ("g^^" ["g^"]) - ("I//" ["I/"]) - ("i" ["i"]) - ("i//" ["i/"]) - ("O\"\"" ["O\""]) - ("o\"\"" ["o\""]) - ("S``" ["S`"]) - ("s``" ["s`"]) - ("U\"\"" ["U\""]) - ("u\"\"" ["u\""]) - ("U^^" ["U^"]) - ("u^^" ["u^"]) - ) - -(quail-define-package - "turkish-alt-postfix" "Turkish" "TR,A+(B" t - "Turkish (T,A|(Brk,Ag(Be) input method with postfix modifiers. + "turkish-alt-postfix" "Turkish" "TR«" t + "Turkish (Türkçe) input method with postfix modifiers. + This input method differs from `turkish-postfix' in that + comma is not special (use ` instead). -This is for those who use Latin-5 (ISO-8859-9) for Turkish. If you -use Latin-3 (ISO-8859-3), you should use -\"turkish-latin-3-alt-postfix\" instead. +turkish-latin-3-alt-postfix is an obsolete alias for turkish-alt-postfix. -Note for I, ,M}(B, ,M](B, i. +Note for I, ı, İ, i. -A^ -> ,MB(B -C` -> ,MG(B -G^ -> ,MP(B +A^ -> Â +C` -> Ç +G^ -> Ğ I -> I -i -> ,M}(B -I/ -> ,M](B +i -> ı +I/ -> İ i/ -> i -O\" -> ,MV(B -S` -> ,M^(B -U\" -> ,M\(B -U^ -> ,M[(B +O\" -> Ö +S` -> Ş +U\" -> Ü +U^ -> Û Doubling the postfix separates the letter and postfix: e.g. a^^ -> a^ " nil t nil nil nil nil nil nil nil nil t) diff --cc lisp/textmodes/fill.el index 0516a4ab8a5,54e45d6b28f..6badf8f51e1 --- a/lisp/textmodes/fill.el +++ b/lisp/textmodes/fill.el @@@ -405,11 -391,17 +405,11 @@@ Don't move back past the buffer positio This function is called when we are going to break the current line after or before a non-ASCII character. If the charset of the character has the property `fill-find-break-point-function', this - function calls the property value as a function with one arg LINEBEG. + function calls the property value as a function with one arg LIMIT. If the charset has no such property, do nothing." - (let* ((ch (following-char)) - (charset (char-charset ch)) - func) - (if (eq charset 'ascii) - (setq ch (preceding-char) - charset (char-charset ch))) - (if (charsetp charset) - (setq func - (get-charset-property charset 'fill-find-break-point-function))) + (let ((func (or + (aref fill-find-break-point-function-table (following-char)) + (aref fill-find-break-point-function-table (preceding-char))))) (if (and func (fboundp func)) (funcall func limit))))