From fee3cabeedff6c7a2ab4f0d7157b964939cb68f8 Mon Sep 17 00:00:00 2001 From: handa Date: Thu, 15 Oct 2009 04:32:17 +0000 Subject: [PATCH] *** empty log message *** --- FLT/KHMR-ANLONG.flt | 7 ++++ FLT/TIBT-MTIB.flt | 3 +- FORMATS/FLT.ja.txt | 1 + FORMATS/FLT.txt | 3 +- FORMATS/FontSize.txt | 2 +- FORMATS/IM-tut.txt | 108 +++++++++++++++++++++++++------------------------- MIM/bn-unijoy.mim | 2 +- MIM/bo-ewts.mim | 2 +- MIM/ko-han2.mim | 26 +++++++----- default.fst | 7 +--- 10 files changed, 85 insertions(+), 76 deletions(-) diff --git a/FLT/KHMR-ANLONG.flt b/FLT/KHMR-ANLONG.flt index 6e2a7e3..bbbf3c9 100644 --- a/FLT/KHMR-ANLONG.flt +++ b/FLT/KHMR-ANLONG.flt @@ -6,6 +6,13 @@ (font (nil anlongvill\ khek apple-roman))) ;;;
  • KHMR-ANLONG.flt +;;; +;;; For the font ANLONG.TTF to draw Khmer script. The font is +;;; available at: +;;; (category ;; C: CONSONANT (except R and KHMER LETTER LA) diff --git a/FLT/TIBT-MTIB.flt b/FLT/TIBT-MTIB.flt index 0df539f..f0344a3 100644 --- a/FLT/TIBT-MTIB.flt +++ b/FLT/TIBT-MTIB.flt @@ -10,8 +10,7 @@ ;;; For the Tibetan TrueType font developped by Dr. Tomabechi to draw ;;; Tibetan script. The font is available at: ;;; (category diff --git a/FORMATS/FLT.ja.txt b/FORMATS/FLT.ja.txt index bec37b8..92f23f6 100644 --- a/FORMATS/FLT.ja.txt +++ b/FORMATS/FLT.ja.txt @@ -256,6 +256,7 @@ COND-BLOCK ::= '(' 'cond' RULE + ')' ¤³¤Îµ¬Â§¤Ï @c RULE ¤ò½ç¤Ë¡¢¤É¤ì¤«¤¬À®¸ù¤¹¤ë¤Þ¤Ç¼Â¹Ô¤¹¤ë¡£¤É¤Î¥ë¡¼¥ë¤â À®¸ù¤·¤Ê¤±¤ì¤Ð¡¢¤³¤Îµ¬Â§¤Ï¼ºÇÔ¤¹¤ë¡£¤½¤¦¤Ç¤Ê¤±¤ì¤ÐÀ®¸ù¤Ç¤¢¤ë¡£ +@anchor OTF-SPEC @verbatim OTF-SPEC ::= SYMBOL @endverbatim diff --git a/FORMATS/FLT.txt b/FORMATS/FLT.txt index 335559a..dea32a3 100644 --- a/FORMATS/FLT.txt +++ b/FORMATS/FLT.txt @@ -275,12 +275,13 @@ COND-BLOCK ::= '(' 'cond' RULE + ')' This rule sequentially executes @c RULEs until one succeeds. If no rule succeeds, this rule fails. Otherwise, it succeeds. +@anchor OTF-SPEC @verbatim OTF-SPEC ::= SYMBOL @endverbatim @c OTF-SPEC is a symbol whose name specifies an instruction to the OTF -driver. The name has the following syntax. @anchor OTF-SPEC +driver. The name has the following syntax. @verbatim OTF-SPEC-NAME ::= ':otf' SCRIPT LANGSYS ? GSUB-FEATURES ? GPOS-FEATURES ? diff --git a/FORMATS/FontSize.txt b/FORMATS/FontSize.txt index 8ce397a..f260e77 100644 --- a/FORMATS/FontSize.txt +++ b/FORMATS/FontSize.txt @@ -3,7 +3,7 @@ Registration Number H15PRO112 See the end for copying conditions. */ -/***en +/*** @page mdbFontSize Font Size diff --git a/FORMATS/IM-tut.txt b/FORMATS/IM-tut.txt index 51bd7af..2b6e2d4 100644 --- a/FORMATS/IM-tut.txt +++ b/FORMATS/IM-tut.txt @@ -50,7 +50,7 @@ For instance @verbatim (n i) @endverbatim -represents a key sequence of <> and <>. +represents a key sequence of \ and \. If all SYMBOLIC-KEYs are ASCII characters, you can use the short form @verbatim "ni" @@ -61,7 +61,7 @@ Both MAP-ACTION and BRANCH-ACTION are a sequence of actions of this format: @verbatim (ACTION ARG ARG ...) @endverbatim -The most common action is [[insert]], which is written as this: +The most common action is insert, which is written as this: @verbatim (insert "TEXT") @endverbatim @@ -69,7 +69,7 @@ But as it is very frequently used, you can use the short form @verbatim "TEXT" @endverbatim -If [["TEXT"]] contains only one character "C", you can write it as +If "TEXT" contains only one character "C", you can write it as @verbatim (insert ?C) @endverbatim @@ -102,11 +102,11 @@ Here is a simple example of an input method that works as CapsLock. @endverbatim When this input method is activated, it is in the initial condition of -the first state (in this case, the only state [[init]]). In the +the first state (in this case, the only state init). In the initial condition, no key is being processed and no action is -suspended. When the input method receives a key event <>, it -searches branches in the current state for a rule that matches <> -and finds one in the map [[toupper]]. Then it executes MAP-ACTIONs +suspended. When the input method receives a key event \, it +searches branches in the current state for a rule that matches \ +and finds one in the map toupper. Then it executes MAP-ACTIONs (in this case, just inserting "A" in the preedit buffer). After all MAP-ACTIONs have been executed, the input method shifts to the initial condition of the current state. @@ -122,8 +122,8 @@ that event is unhandled and given back to the application program. Turkish users may want to extend the above example for "Ä°" (U+0130: LATIN CAPITAL LETTER I WITH DOT ABOVE). It seems that assigning the -key sequence <> <> for that character is convenient. So, he -will add this rule in [[toupper]]. +key sequence \ \ for that character is convenient. So, he +will add this rule in toupper. @verbatim ("ii" "Ä°") @@ -135,30 +135,30 @@ However, we already have the following rule: ("i" "I") @endverbatim -What will happen when a key event <> is sent to the input method? +What will happen when a key event \ is sent to the input method? -No problem. When the input method receives <>, it inserts "I" in the +No problem. When the input method receives \, it inserts "I" in the preedit buffer. It knows that there is another rule that may -match the additional key event <>. So, after inserting "I", it +match the additional key event \. So, after inserting "I", it suspends the normal behavior of shifting to the initial condition, and waits for another key. Thus, the user sees "I" with underline, which indicates it is not yet committed. -When the input method receives the next <>, it cancels the effects +When the input method receives the next \, it cancels the effects done by the rule for the previous "i" (in this case, the preedit buffer is cleared), and executes MAP-ACTIONs of the rule for "ii". So, "Ä°" is inserted in the preedit buffer. This time, as there are no other rules that match with an additional key, it shifts to the initial condition of the current state, which leads to commit "Ä°". -Then, what will happen when the next key event is <> instead of <>? +Then, what will happen when the next key event is \ instead of \? No problem, either. -The input method knows that there are no rules that match the <> <> key -sequence. So, when it receives the next <>, it executes the +The input method knows that there are no rules that match the \ \ key +sequence. So, when it receives the next \, it executes the suspended behavior (i.e. shifting to the initial condition), which -leads to commit "I". Then the input method tries to handle <> in +leads to commit "I". Then the input method tries to handle \ in the current state, which leads to commit "A". So far, we have explained MAP-ACTION, but not @@ -176,8 +176,8 @@ we modify the "init" state as this: (toupper (shift non-upcase))) @endverbatim -Here [[(shift non-upcase)]] is an action to shift to the new state -[[non-upcase]], which has two branches as below: +Here (shift non-upcase) is an action to shift to the new state +non-upcase, which has two branches as below: @verbatim (non-upcase @@ -185,7 +185,7 @@ Here [[(shift non-upcase)]] is an action to shift to the new state (nil (shift init))) @endverbatim -The first branch is simple. We can define the new map [[lower]] as the +The first branch is simple. We can define the new map lower as the following to insert lowercase letters as they are. @verbatim @@ -199,7 +199,7 @@ following to insert lowercase letters as they are. ("z" "z"))) @endverbatim -The second branch has a special meaning. The map name [[nil]] means +The second branch has a special meaning. The map name nil means that it matches with any key event that does not match any rules in the other maps in the current state. In addition, it does not consume any key event. We will show the full code of the new input @@ -230,26 +230,26 @@ method before explaining how it works. (nil (shift init)))) @endverbatim -Let's see what happens when the user types the key sequence <> <> << >>. -Upon <>, "A" is inserted into the buffer and the state shifts to [[non-upcase]]. -So, the next <> is handled in the [[non-upcase]] state. +Let's see what happens when the user types the key sequence \ \ \< \>. +Upon \, "A" is inserted into the buffer and the state shifts to non-upcase. +So, the next \ is handled in the non-upcase state. As it matches a -rule in the map [[lower]], "b" is inserted in the preedit buffer and characters in the +rule in the map lower, "b" is inserted in the preedit buffer and characters in the buffer ("Ab") are committed explicitly by the "commit" command in BRANCH-ACTION. After -that, the input method is still in the [[non-upcase]] state. So the next << >> -is also handled in [[non-upcase]]. For this time, no rule in this state -matches it. Thus the branch [[(nil (shift init))]] is selected and the -state is shifted to [[init]]. Please note that << >> is not yet -handled because the map [[nil]] does not consume any key event. -So, the input method tries to handle it in the [[init]] state. Again no +that, the input method is still in the non-upcase state. So the next \< \> +is also handled in non-upcase. For this time, no rule in this state +matches it. Thus the branch (nil (shift init)) is selected and the +state is shifted to init. Please note that \< \> is not yet +handled because the map nil does not consume any key event. +So, the input method tries to handle it in the init state. Again no rule matches it. Therefore, that event is given back to the application program, which usually inserts a space for that. When you type "a quick blown fox" with this input method, you get "A Quick Blown Fox". OK, you find a typo in "blown", which should be "brown". To correct it, you probably move the cursor after "l" and type -<> and <>. However, if the current input method is still +\ and \. However, if the current input method is still active, a capital "R" is inserted. It is not a sophisticated behavior. @@ -273,10 +273,10 @@ of an action is treated as a variable. For instance, the commands (set X 32) (insert X) @endverbatim -set the variable [[X]] to integer value 32, then insert a character +set the variable X to integer value 32, then insert a character whose Unicode character code is 32 (i.e. SPACE). -The second argument of the [[set]] action can be an expression of this form: +The second argument of the set action can be an expression of this form: @verbatim (OPERATOR ARG1 [ARG2]) @@ -288,7 +288,7 @@ Both ARG1 and ARG2 can be an expression. So, (set X (+ (* Y 32) Z)) @endverbatim -sets [[X]] to the value of [[Y * 32 + Z]]. +sets X to the value of Y * 32 + Z. We have the following arithmetic/bitwise OPERATORs (require two arguments): @@ -317,17 +317,17 @@ For surrounding text support, we have these preserved variables: The values of them are predefined as below and can not be altered.
      -
    • [[@-0]] +
    • @-0 -1 if surrounding text is supported, -2 if not. -
    • [[@-N]] +
    • @-N The Nth previous character in the preedit buffer. If there are only M (M [[@+N]] +
    • @+N The Nth following character in the preedit buffer. If there are only M (Mdelete. So, it is time to explain more about the preedit buffer. The preedit buffer is a temporary place to store a sequence of characters. In this buffer, the input method keeps a position called the "current position". The current position exists between two characters, at the beginning of -the buffer, or at the end of the buffer. The [[insert]] action inserts +the buffer, or at the end of the buffer. The insert action inserts characters before the current position. For instance, when your preedit buffer contains "ab.c" ("." indicates the current position), @@ -424,16 +424,16 @@ There are several predefined variables that represent a specific position in the preedit buffer. They are:
        -
      • [[@@<, @@=, @@>]] +
      • @@<, @@=, @@> The first, current, and last positions. -
      • [[@@-, @@+]] +
      • @@-, @@+ The previous and the next positions.
      -The format of the [[delete]] action is this: +The format of the delete action is this: @verbatim (delete POS) @@ -441,8 +441,8 @@ The format of the [[delete]] action is this: where POS is a predefined positional variable. The above action deletes the characters between POS and -the current position. So, [[(delete @-)]] deletes one character before -the current position. The other examples of [[delete]] include the followings: +the current position. So, (delete @-) deletes one character before +the current position. The other examples of delete include the followings: @verbatim (delete @+) ; delete the next character @@ -450,7 +450,7 @@ the current position. The other examples of [[delete]] include the followings: (delete @>) ; delete all the following characters in the buffer @endverbatim -You can change the current position using the [[move]] action as below: +You can change the current position using the move action as below: @verbatim (move @-) ; move the current position to the position before the @@ -461,16 +461,16 @@ You can change the current position using the [[move]] action as below: Other positional variables work similarly. Let's see how our new example works. Whatever a key event is, the -input method is in its only state, [[init]]. Since an event of a lower letter +input method is in its only state, init. Since an event of a lower letter key is firstly handled by MAP-ACTIONs, every key is changed into the corresponding uppercase and put into the preedit buffer. Now this character -can be accessed with [[@-1]]. +can be accessed with @-1. How can we tell whether the new character should be a lowercase or an uppercase? We can do so by checking the character before it, i.e. -[[@-2]]. BRANCH-ACTIONs in the [[init]] state do the job. +@-2. BRANCH-ACTIONs in the init state do the job. -It first checks if the character [[@-2]] is between A to Z, between +It first checks if the character @-2 is between A to Z, between a to z, or İ by the conditional below. @verbatim @@ -482,7 +482,7 @@ a to z, or İ by the conditional below. If not, there is nothing to do specially. If so, our new key should be changed back into lowercase. Since the uppercase character is already in the preedit buffer, we retrieve and remember it in the -variable [[X]] by +variable X by @verbatim (set X @-1) @@ -511,15 +511,15 @@ The second branch @endverbatim starts with "1", which is always resolved into nonzero, so this branch -is a catchall. Actions in this branch increase [[X]] by 32, then -insert [[X]]. In other words, they change A...Z into a...z +is a catchall. Actions in this branch increase X by 32, then +insert X. In other words, they change A...Z into a...z respectively and insert the resulting lowercase character into the preedit buffer. As the input method reaches the end of the BRANCH-ACTIONs, the character is commited. This new input method always checks the character before the current position, so "A Quick Blown Fox" will be successfully fixed to "A -Quick Brown Fox" by the key sequence <> <>. +Quick Brown Fox" by the key sequence \ \. */ diff --git a/MIM/bn-unijoy.mim b/MIM/bn-unijoy.mim index 6216bd0..fe60251 100644 --- a/MIM/bn-unijoy.mim +++ b/MIM/bn-unijoy.mim @@ -24,7 +24,7 @@ (input-method bn unijoy) (description "Bengali input method simulating Unijoy keyboard layout. - + ") (title "ক") diff --git a/MIM/bo-ewts.mim b/MIM/bo-ewts.mim index ccedaea..466b1ab 100644 --- a/MIM/bo-ewts.mim +++ b/MIM/bo-ewts.mim @@ -25,7 +25,7 @@ (description "Tibetan input method based on EWTS. This implementation is based on THDL Extended Wylie Transliteration Scheme -Version 2.0 .") +Version 2.0 .") (title "ཀ") diff --git a/MIM/ko-han2.mim b/MIM/ko-han2.mim index d7c6fe3..6925fb2 100644 --- a/MIM/ko-han2.mim +++ b/MIM/ko-han2.mim @@ -21,19 +21,25 @@ ;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, ;; Boston, MA 02110-1301, USA. -;;; @latexonly +;;; @if FOR_LATEX ;;; Hangul input method with 2-bul style. -;;; @endlatexonly -;;; @htmlonly +;;; @endif +;;; @if FOR_HTML ;;; Hangul input method with 2벌식. +;;; @endif ;;; This input method uses this keyboard layout: -;;; -;;; ||KEY: |r |R |s |e |E |f |a |q |Q |t |T |d |w |W |c |z |x |v |g -;;; |k |i |j |p |P |u |h |y |n |b |m |l |o |O || -;;; ||한글:|ㄱ|ㄲ|ㄴ|ㄷ|ㄸ|ㄹ|ㅁ|ㅂ|ㅃ|ㅅ|ㅆ|ㅇ|ㅈ|ㅉ|ㅊ|ㅋ|ㅌ|ㅍ|ㅎ -;;; |ㅏ|ㅑ|ㅓ|ㅔ|ㅖ|ㅕ|ㅗ|ㅛ|ㅜ|ㅠ|ㅡ|ㅣ|ㅐ|ㅒ|| -;;;
      -;;; @endhtmlonly +;;; @image html ko-han2.png "Keyboard Layout" +;;; @image latex ko-han2.eps "Keyboard Layout" width=\narrowwidth +;; ┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐ +;; │1!│2@│3#│4$│5%│6^│7&│8*│9(│0)│-_│=+│`~│ +;; └┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┘ +;; │ㅃ│ㅉ│ㄸ│ㄲ│ㅆ│ │ │ │ㅒ│ㅖ│{ │} │ +;; │ㅂ│ㅈ│ㄷ│ㄱ│ㅅ│ㅛ│ㅕ│ㅑ│ㅐ│ㅔ│[ │] │ +;; └┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┐ +;; │ㅁ│ㄴ│ㅇ│ㄹ│ㅎ│ㅗ│ㅓ│ㅏ│ㅣ│;:│'"│\|│ +;; └┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴┬┴─┘ +;; │ㅋ│ㅌ│ㅊ│ㅍ│ㅠ│ㅜ│ㅡ│,<│.>│/?│ +;; └─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘ (input-method ko han2) diff --git a/default.fst b/default.fst index a58fc46..6babf2d 100644 --- a/default.fst +++ b/default.fst @@ -61,11 +61,6 @@ ;;;
    • infopage: http://www.bethmardutho.org/meltho/ ;;;
    • download: http://www.bethmardutho.org/support/meltho/download/ ;;;
    -;;;
  • Mv Elaaf Lite.otf (family:Mv Elaaf Lite; for Thaana) -;;;
      -;;;
    • infopage: http://www.mcst.gov.mv/News_and_Events/xpfonts.htm -;;;
    • download: http://www.mcst.gov.mv/Downloads/New/Divehi%20xp%20fonts/Mv%20Elaaf%20Lite.otf.ttf -;;;
    ;;;
  • raghu.ttf (family: Raghindi; for Devanagari) ;;;
      ;;;
    • infopage: http://www.nepali.info/nepali/help.asp @@ -151,7 +146,7 @@ ;;;
        ;;;
      • debian package: ttf-tmuni ;;;
      -;;;
    • Nrasi_Bold.ttf, Norasi_BoldItalic.ttf, Norasi_Italic.ttf, Norasi.ttf (family Norasi; for Thai) +;;;
    • Norasi_Bold.ttf, Norasi_BoldItalic.ttf, Norasi_Italic.ttf, Norasi.ttf (family Norasi; for Thai) ;;;
        ;;;
      • debian package: ttf-thai-tlwg ;;;
      -- 1.7.10.4