diff options
author | Vladimir Volovich <vvv@vsu.ru> | 2008-03-29 11:09:22 +0000 |
---|---|---|
committer | Vladimir Volovich <vvv@vsu.ru> | 2008-03-29 11:09:22 +0000 |
commit | 87a036ae56c8287d86c50a5108b5b6687386591a (patch) | |
tree | 0d2cb7645f6ce13b469526228f11d36f8851858e /Master | |
parent | 5dded03c5c99953459813b3cbc8d03ae87342a4c (diff) |
ienabled generation of more make-rule files, from Thomas Henlich
git-svn-id: svn://tug.org/texlive/trunk@7219 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf/xindy/lang/greek/translit-tex-lang.xdy | 10 | ||||
-rw-r--r-- | Master/texmf/xindy/lang/greek/translit-tex-test.xdy | 92 | ||||
-rw-r--r-- | Master/texmf/xindy/lang/greek/translit-tex.xdy | 230 | ||||
-rw-r--r-- | Master/texmf/xindy/lang/russian/translit-iso-tex-lang.xdy | 10 | ||||
-rw-r--r-- | Master/texmf/xindy/lang/russian/translit-iso-tex-test.xdy | 92 | ||||
-rw-r--r-- | Master/texmf/xindy/lang/russian/translit-iso-tex.xdy | 307 |
6 files changed, 741 insertions, 0 deletions
diff --git a/Master/texmf/xindy/lang/greek/translit-tex-lang.xdy b/Master/texmf/xindy/lang/greek/translit-tex-lang.xdy new file mode 100644 index 00000000000..9d05d2bbb4c --- /dev/null +++ b/Master/texmf/xindy/lang/greek/translit-tex-lang.xdy @@ -0,0 +1,10 @@ +(require "lang/greek/translit-tex.xdy") +(define-sort-rule-orientations (forward backward forward forward)) +(use-rule-set :run 0 + :rule-set ("el-alphabetize" "el-ignore-special")) +(use-rule-set :run 1 + :rule-set ("el-resolve-diacritics" "el-ignore-special")) +(use-rule-set :run 2 + :rule-set ("el-resolve-case" "el-ignore-special")) +(use-rule-set :run 3 + :rule-set ("el-resolve-special")) diff --git a/Master/texmf/xindy/lang/greek/translit-tex-test.xdy b/Master/texmf/xindy/lang/greek/translit-tex-test.xdy new file mode 100644 index 00000000000..802e1435607 --- /dev/null +++ b/Master/texmf/xindy/lang/greek/translit-tex-test.xdy @@ -0,0 +1,92 @@ +(require "lang/greek/translit-tex.xdy") +(define-sort-rule-orientations (forward backward forward forward)) +(use-rule-set :run 0 + :rule-set ("el-alphabetize" "el-ignore-special")) +(use-rule-set :run 1 + :rule-set ("el-resolve-diacritics" "el-ignore-special")) +(use-rule-set :run 2 + :rule-set ("el-resolve-case" "el-ignore-special")) +(use-rule-set :run 3 + :rule-set ("el-resolve-special")) + +;; define other stuff +(define-attributes ("default")) + +;; The description of the location-classes. +;; Add more location classes as needed. + +(define-location-class "arabic-page-numbers" ("arabic-numbers")) +(define-location-class "roman-page-numbers" ("roman-numbers-lowercase")) +(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase")) +(define-location-class "alpha-page-numbers" ("alpha")) +(define-location-class "Alpha-page-numbers" ("ALPHA")) + +;; The most frequently used cross reference class "see". Add more, if +;; necessary. + +(define-crossref-class "see") +(markup-crossref-list :open "\see{" :close "}{}" :class "see") + +;; In makeindex: page_precedence <string> "rnaRA" +;; List all location classes appearing in your document. + +(define-location-class-order ("roman-page-numbers" + "arabic-page-numbers" + "alpha-page-numbers" + "Roman-page-numbers" + "Alpha-page-numbers" + "see")) + + +;; preamble <string> "\\begin{theindex}\n" +;; postamble <string> "\n\n\\end{theindex}\n" + +(markup-index :open "\begin{theindex}~n" + :close "~n~n\end{theindex}~n" + :tree) + +;; These specifiers are not directly supported via a command-line +;; switch as in makeindex. Add the appropriate markup-commands into +;; the preamble. + +;; setpage_prefix <string> "~n \setcounter{page}{" +;; setpage_suffix <string> "}~n" + +;; group_skip <string> "~n~n \indexspace~n" + +(markup-letter-group-list :sep "~n~n \indexspace~n") + +;; even though we comment out (%) the letter-group heading, +;; the following is useful if you want to check the .ind-file +(markup-letter-group :open-head "~n % ") + +;; The indexentries (item_<..> specifiers) + +(markup-indexentry :open "~n \item " :depth 0) +(markup-indexentry :open "~n \subitem " :depth 1) +(markup-indexentry :open "~n \subsubitem " :depth 2) + +;; Location-references + +;; delim_0 <string> ", " +;; delim_1 <string> ", " +;; delim_2 <string> ", " + +(markup-locclass-list :open ", " :sep ", ") + +;; delim_n <string> ", " + +(markup-locref-list :sep ", ") + +;; delim_r <string> "--" + +(markup-range :sep "--") + +;; That's all ;-) + + +;; End + +;; Local Variables: +;; mode: lisp +;; End: diff --git a/Master/texmf/xindy/lang/greek/translit-tex.xdy b/Master/texmf/xindy/lang/greek/translit-tex.xdy new file mode 100644 index 00000000000..0f0918532d8 --- /dev/null +++ b/Master/texmf/xindy/lang/greek/translit-tex.xdy @@ -0,0 +1,230 @@ +;; Rules for xindy; generated by make-rules.pl +;; language: Greek + +(define-letter-group "A" :prefixes ("")) +(define-letter-group "B" :after "A" :prefixes ("")) +(define-letter-group "D" :after "B" :prefixes ("")) +(define-letter-group "E" :after "D" :prefixes ("")) +(define-letter-group "F" :after "E" :prefixes ("")) +(define-letter-group "G" :after "F" :prefixes ("")) +(define-letter-group "H" :after "G" :prefixes ("")) +(define-letter-group "I" :after "H" :prefixes ("")) +(define-letter-group "K" :after "I" :prefixes ("")) +(define-letter-group "L" :after "K" :prefixes ("")) +(define-letter-group "M" :after "L" :prefixes ("")) +(define-letter-group "N" :after "M" :prefixes ("")) +(define-letter-group "O" :after "N" :prefixes ("")) +(define-letter-group "P" :after "O" :prefixes ("")) +(define-letter-group "R" :after "P" :prefixes ("")) +(define-letter-group "S" :after "R" :prefixes ("")) +(define-letter-group "T" :after "S" :prefixes ("")) +(define-letter-group "U" :after "T" :prefixes ("")) +(define-letter-group "X" :after "U" :prefixes ("")) +(define-letter-group "Z" :after "X" :prefixes ("")) + +(define-rule-set "el-alphabetize" + + :rules (("\=E" "" :string) + ("\=e" "" :string) + ("\=o" "" :string) + ("\=O" "" :string) + ("a" "" :string) + ("A" "" :string) + ("B" "" :string) + ("b" "" :string) + ("d" "" :string) + ("D" "" :string) + ("E" "" :string) + ("e" "" :string) + ("F" "" :string) + ("f" "" :string) + ("g" "" :string) + ("G" "" :string) + ("H" "" :string) + ("h" "" :string) + ("I" "" :string) + ("i" "" :string) + ("K" "" :string) + ("k" "" :string) + ("L" "" :string) + ("l" "" :string) + ("M" "" :string) + ("m" "" :string) + ("N" "" :string) + ("n" "" :string) + ("O" "" :string) + ("o" "" :string) + ("P" "" :string) + ("p" "" :string) + ("r" "" :string) + ("R" "" :string) + ("S" "" :string) + ("s" "" :string) + ("T" "" :string) + ("t" "" :string) + ("u" "" :string) + ("U" "" :string) + ("x" "" :string) + ("X" "" :string) + ("Z" "" :string) + ("z" "" :string) + )) + +(define-rule-set "el-resolve-diacritics" + + :rules (("\=E" "" :string) + ("\=o" "" :string) + ("\=e" "" :string) + ("\=O" "" :string) + ("S" "" :string) + ("T" "" :string) + ("a" "" :string) + ("N" "" :string) + ("K" "" :string) + ("d" "" :string) + ("E" "" :string) + ("Z" "" :string) + ("u" "" :string) + ("k" "" :string) + ("g" "" :string) + ("t" "" :string) + ("e" "" :string) + ("s" "" :string) + ("B" "" :string) + ("H" "" :string) + ("D" "" :string) + ("b" "" :string) + ("I" "" :string) + ("G" "" :string) + ("z" "" :string) + ("U" "" :string) + ("F" "" :string) + ("r" "" :string) + ("x" "" :string) + ("M" "" :string) + ("h" "" :string) + ("L" "" :string) + ("f" "" :string) + ("i" "" :string) + ("A" "" :string) + ("O" "" :string) + ("n" "" :string) + ("X" "" :string) + ("P" "" :string) + ("m" "" :string) + ("l" "" :string) + ("p" "" :string) + ("R" "" :string) + ("o" "" :string) + )) + +(define-rule-set "el-resolve-case" + + :rules (("\=E" "8" :string) + ("\=O" "8" :string) + ("\=o" "9" :string) + ("\=e" "9" :string) + ("S" "8" :string) + ("T" "8" :string) + ("N" "8" :string) + ("K" "8" :string) + ("E" "8" :string) + ("Z" "8" :string) + ("B" "8" :string) + ("H" "8" :string) + ("D" "8" :string) + ("I" "8" :string) + ("G" "8" :string) + ("U" "8" :string) + ("F" "8" :string) + ("M" "8" :string) + ("L" "8" :string) + ("A" "8" :string) + ("O" "8" :string) + ("X" "8" :string) + ("P" "8" :string) + ("R" "8" :string) + ("a" "9" :string) + ("d" "9" :string) + ("u" "9" :string) + ("k" "9" :string) + ("g" "9" :string) + ("t" "9" :string) + ("e" "9" :string) + ("s" "9" :string) + ("b" "9" :string) + ("z" "9" :string) + ("r" "9" :string) + ("x" "9" :string) + ("h" "9" :string) + ("f" "9" :string) + ("i" "9" :string) + ("n" "9" :string) + ("m" "9" :string) + ("l" "9" :string) + ("p" "9" :string) + ("o" "9" :string) + )) + +(define-rule-set "el-ignore-special" + + :rules (("?" "" :string) + ("-" "" :string) + ("." "" :string) + ("!" "" :string) + ("'" "" :string) + )) + +(define-rule-set "el-resolve-special" + + :rules (("\=E" "" :string) + ("\=o" "" :string) + ("\=e" "" :string) + ("\=O" "" :string) + ("?" "" :string) + ("!" "" :string) + ("." "" :string) + ("S" "" :string) + ("T" "" :string) + ("a" "" :string) + ("N" "" :string) + ("K" "" :string) + ("d" "" :string) + ("E" "" :string) + ("Z" "" :string) + ("u" "" :string) + ("k" "" :string) + ("g" "" :string) + ("t" "" :string) + ("e" "" :string) + ("s" "" :string) + ("B" "" :string) + ("H" "" :string) + ("D" "" :string) + ("b" "" :string) + ("I" "" :string) + ("G" "" :string) + ("z" "" :string) + ("U" "" :string) + ("F" "" :string) + ("r" "" :string) + ("x" "" :string) + ("M" "" :string) + ("h" "" :string) + ("L" "" :string) + ("f" "" :string) + ("i" "" :string) + ("A" "" :string) + ("O" "" :string) + ("n" "" :string) + ("X" "" :string) + ("P" "" :string) + ("m" "" :string) + ("l" "" :string) + ("p" "" :string) + ("R" "" :string) + ("o" "" :string) + ("-" "" :string) + ("'" "" :string) + )) + diff --git a/Master/texmf/xindy/lang/russian/translit-iso-tex-lang.xdy b/Master/texmf/xindy/lang/russian/translit-iso-tex-lang.xdy new file mode 100644 index 00000000000..edae974cb94 --- /dev/null +++ b/Master/texmf/xindy/lang/russian/translit-iso-tex-lang.xdy @@ -0,0 +1,10 @@ +(require "lang/russian/translit-iso-tex.xdy") +(define-sort-rule-orientations (forward backward forward forward)) +(use-rule-set :run 0 + :rule-set ("ru-alphabetize" "ru-ignore-special")) +(use-rule-set :run 1 + :rule-set ("ru-resolve-diacritics" "ru-ignore-special")) +(use-rule-set :run 2 + :rule-set ("ru-resolve-case" "ru-ignore-special")) +(use-rule-set :run 3 + :rule-set ("ru-resolve-special")) diff --git a/Master/texmf/xindy/lang/russian/translit-iso-tex-test.xdy b/Master/texmf/xindy/lang/russian/translit-iso-tex-test.xdy new file mode 100644 index 00000000000..d2723cbc884 --- /dev/null +++ b/Master/texmf/xindy/lang/russian/translit-iso-tex-test.xdy @@ -0,0 +1,92 @@ +(require "lang/russian/translit-iso-tex.xdy") +(define-sort-rule-orientations (forward backward forward forward)) +(use-rule-set :run 0 + :rule-set ("ru-alphabetize" "ru-ignore-special")) +(use-rule-set :run 1 + :rule-set ("ru-resolve-diacritics" "ru-ignore-special")) +(use-rule-set :run 2 + :rule-set ("ru-resolve-case" "ru-ignore-special")) +(use-rule-set :run 3 + :rule-set ("ru-resolve-special")) + +;; define other stuff +(define-attributes ("default")) + +;; The description of the location-classes. +;; Add more location classes as needed. + +(define-location-class "arabic-page-numbers" ("arabic-numbers")) +(define-location-class "roman-page-numbers" ("roman-numbers-lowercase")) +(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase")) +(define-location-class "alpha-page-numbers" ("alpha")) +(define-location-class "Alpha-page-numbers" ("ALPHA")) + +;; The most frequently used cross reference class "see". Add more, if +;; necessary. + +(define-crossref-class "see") +(markup-crossref-list :open "\see{" :close "}{}" :class "see") + +;; In makeindex: page_precedence <string> "rnaRA" +;; List all location classes appearing in your document. + +(define-location-class-order ("roman-page-numbers" + "arabic-page-numbers" + "alpha-page-numbers" + "Roman-page-numbers" + "Alpha-page-numbers" + "see")) + + +;; preamble <string> "\\begin{theindex}\n" +;; postamble <string> "\n\n\\end{theindex}\n" + +(markup-index :open "\begin{theindex}~n" + :close "~n~n\end{theindex}~n" + :tree) + +;; These specifiers are not directly supported via a command-line +;; switch as in makeindex. Add the appropriate markup-commands into +;; the preamble. + +;; setpage_prefix <string> "~n \setcounter{page}{" +;; setpage_suffix <string> "}~n" + +;; group_skip <string> "~n~n \indexspace~n" + +(markup-letter-group-list :sep "~n~n \indexspace~n") + +;; even though we comment out (%) the letter-group heading, +;; the following is useful if you want to check the .ind-file +(markup-letter-group :open-head "~n % ") + +;; The indexentries (item_<..> specifiers) + +(markup-indexentry :open "~n \item " :depth 0) +(markup-indexentry :open "~n \subitem " :depth 1) +(markup-indexentry :open "~n \subsubitem " :depth 2) + +;; Location-references + +;; delim_0 <string> ", " +;; delim_1 <string> ", " +;; delim_2 <string> ", " + +(markup-locclass-list :open ", " :sep ", ") + +;; delim_n <string> ", " + +(markup-locref-list :sep ", ") + +;; delim_r <string> "--" + +(markup-range :sep "--") + +;; That's all ;-) + + +;; End + +;; Local Variables: +;; mode: lisp +;; End: diff --git a/Master/texmf/xindy/lang/russian/translit-iso-tex.xdy b/Master/texmf/xindy/lang/russian/translit-iso-tex.xdy new file mode 100644 index 00000000000..6e164b51d72 --- /dev/null +++ b/Master/texmf/xindy/lang/russian/translit-iso-tex.xdy @@ -0,0 +1,307 @@ +;; Rules for xindy; generated by make-rules.pl +;; language: Russian + +(define-letter-group "A" :prefixes ("")) +(define-letter-group "B" :after "A" :prefixes ("")) +(define-letter-group "C" :after "B" :prefixes ("")) +(define-letter-group "D" :after "C" :prefixes ("")) +(define-letter-group "E" :after "D" :prefixes ("")) +(define-letter-group "F" :after "E" :prefixes ("")) +(define-letter-group "G" :after "F" :prefixes ("")) +(define-letter-group "H" :after "G" :prefixes ("")) +(define-letter-group "I" :after "H" :prefixes ("")) +(define-letter-group "J" :after "I" :prefixes ("")) +(define-letter-group "K" :after "J" :prefixes ("")) +(define-letter-group "L" :after "K" :prefixes ("")) +(define-letter-group "M" :after "L" :prefixes ("")) +(define-letter-group "N" :after "M" :prefixes ("")) +(define-letter-group "O" :after "N" :prefixes ("")) +(define-letter-group "P" :after "O" :prefixes ("")) +(define-letter-group "R" :after "P" :prefixes ("")) +(define-letter-group "S" :after "R" :prefixes ("")) +(define-letter-group "T" :after "S" :prefixes ("")) +(define-letter-group "U" :after "T" :prefixes ("")) +(define-letter-group "V" :after "U" :prefixes ("")) +(define-letter-group "Y" :after "V" :prefixes ("")) +(define-letter-group "Z" :after "Y" :prefixes ("")) + +(define-rule-set "ru-alphabetize" + + :rules (("\v c" "" :string) + ("\v C" "" :string) + ("\v S" "" :string) + ("\v s" "" :string) + ("\v Z" "" :string) + ("\v z" "" :string) + ("\^a" "" :string) + ("\^A" "" :string) + ("\`e" "" :string) + ("\~"E" "" :string) + ("\`E" "" :string) + ("\~"e" "" :string) + ("\^s" "" :string) + ("\^S" "" :string) + ("\^U" "" :string) + ("\^u" "" :string) + ("a" "" :string) + ("A" "" :string) + ("B" "" :string) + ("b" "" :string) + ("c" "" :string) + ("C" "" :string) + ("d" "" :string) + ("D" "" :string) + ("E" "" :string) + ("e" "" :string) + ("F" "" :string) + ("f" "" :string) + ("g" "" :string) + ("G" "" :string) + ("H" "" :string) + ("h" "" :string) + ("I" "" :string) + ("i" "" :string) + ("j" "" :string) + ("J" "" :string) + ("K" "" :string) + ("k" "" :string) + ("L" "" :string) + ("l" "" :string) + ("M" "" :string) + ("m" "" :string) + ("N" "" :string) + ("n" "" :string) + ("O" "" :string) + ("o" "" :string) + ("P" "" :string) + ("p" "" :string) + ("r" "" :string) + ("R" "" :string) + ("S" "" :string) + ("s" "" :string) + ("T" "" :string) + ("t" "" :string) + ("u" "" :string) + ("U" "" :string) + ("v" "" :string) + ("V" "" :string) + ("Y" "" :string) + ("y" "" :string) + ("Z" "" :string) + ("z" "" :string) + )) + +(define-rule-set "ru-resolve-diacritics" + + :rules (("\v Z" "" :string) + ("\v c" "" :string) + ("\v S" "" :string) + ("\v z" "" :string) + ("\v C" "" :string) + ("\v s" "" :string) + ("\^U" "" :string) + ("\`e" "" :string) + ("\^a" "" :string) + ("\`E" "" :string) + ("\^u" "" :string) + ("\^A" "" :string) + ("\^s" "" :string) + ("\^S" "" :string) + ("\~"E" "" :string) + ("\~"e" "" :string) + ("S" "" :string) + ("T" "" :string) + ("a" "" :string) + ("N" "" :string) + ("K" "" :string) + ("d" "" :string) + ("Y" "" :string) + ("E" "" :string) + ("j" "" :string) + ("Z" "" :string) + ("y" "" :string) + ("u" "" :string) + ("k" "" :string) + ("g" "" :string) + ("t" "" :string) + ("e" "" :string) + ("J" "" :string) + ("v" "" :string) + ("s" "" :string) + ("B" "" :string) + ("H" "" :string) + ("c" "" :string) + ("D" "" :string) + ("b" "" :string) + ("I" "" :string) + ("G" "" :string) + ("z" "" :string) + ("U" "" :string) + ("F" "" :string) + ("r" "" :string) + ("V" "" :string) + ("M" "" :string) + ("h" "" :string) + ("C" "" :string) + ("L" "" :string) + ("f" "" :string) + ("i" "" :string) + ("A" "" :string) + ("O" "" :string) + ("n" "" :string) + ("P" "" :string) + ("m" "" :string) + ("l" "" :string) + ("p" "" :string) + ("R" "" :string) + ("o" "" :string) + )) + +(define-rule-set "ru-resolve-case" + + :rules (("\v Z" "8" :string) + ("\v S" "8" :string) + ("\v C" "8" :string) + ("\v c" "9" :string) + ("\v z" "9" :string) + ("\v s" "9" :string) + ("\^U" "8" :string) + ("\^S" "8" :string) + ("\~"E" "8" :string) + ("\`E" "8" :string) + ("\^A" "8" :string) + ("\^s" "9" :string) + ("\`e" "9" :string) + ("\^a" "9" :string) + ("\^u" "9" :string) + ("\~"e" "9" :string) + ("S" "8" :string) + ("T" "8" :string) + ("N" "8" :string) + ("K" "8" :string) + ("Y" "8" :string) + ("E" "8" :string) + ("Z" "8" :string) + ("J" "8" :string) + ("B" "8" :string) + ("H" "8" :string) + ("D" "8" :string) + ("I" "8" :string) + ("G" "8" :string) + ("U" "8" :string) + ("F" "8" :string) + ("V" "8" :string) + ("M" "8" :string) + ("C" "8" :string) + ("L" "8" :string) + ("A" "8" :string) + ("O" "8" :string) + ("P" "8" :string) + ("R" "8" :string) + ("a" "9" :string) + ("d" "9" :string) + ("j" "9" :string) + ("y" "9" :string) + ("u" "9" :string) + ("k" "9" :string) + ("g" "9" :string) + ("t" "9" :string) + ("e" "9" :string) + ("v" "9" :string) + ("s" "9" :string) + ("c" "9" :string) + ("b" "9" :string) + ("z" "9" :string) + ("r" "9" :string) + ("h" "9" :string) + ("f" "9" :string) + ("i" "9" :string) + ("n" "9" :string) + ("m" "9" :string) + ("l" "9" :string) + ("p" "9" :string) + ("o" "9" :string) + )) + +(define-rule-set "ru-ignore-special" + + :rules (("ʺ" "" :string) + ("ʹ" "" :string) + ("?" "" :string) + ("-" "" :string) + ("." "" :string) + ("!" "" :string) + )) + +(define-rule-set "ru-resolve-special" + + :rules (("\v c" "" :string) + ("\v S" "" :string) + ("\v z" "" :string) + ("\v C" "" :string) + ("\v Z" "" :string) + ("\v s" "" :string) + ("\^U" "" :string) + ("\`e" "" :string) + ("\^S" "" :string) + ("\`E" "" :string) + ("\^A" "" :string) + ("\^s" "" :string) + ("\^a" "" :string) + ("\~"E" "" :string) + ("\^u" "" :string) + ("\~"e" "" :string) + ("ʺ" "" :string) + ("ʹ" "" :string) + ("?" "" :string) + ("!" "" :string) + ("." "" :string) + ("S" "" :string) + ("K" "" :string) + ("d" "" :string) + ("Y" "" :string) + ("E" "" :string) + ("y" "" :string) + ("g" "" :string) + ("e" "" :string) + ("J" "" :string) + ("D" "" :string) + ("b" "" :string) + ("z" "" :string) + ("M" "" :string) + ("C" "" :string) + ("L" "" :string) + ("P" "" :string) + ("a" "" :string) + ("T" "" :string) + ("N" "" :string) + ("j" "" :string) + ("Z" "" :string) + ("u" "" :string) + ("k" "" :string) + ("t" "" :string) + ("v" "" :string) + ("B" "" :string) + ("s" "" :string) + ("H" "" :string) + ("c" "" :string) + ("I" "" :string) + ("G" "" :string) + ("U" "" :string) + ("F" "" :string) + ("r" "" :string) + ("V" "" :string) + ("h" "" :string) + ("f" "" :string) + ("i" "" :string) + ("A" "" :string) + ("n" "" :string) + ("O" "" :string) + ("m" "" :string) + ("l" "" :string) + ("p" "" :string) + ("R" "" :string) + ("o" "" :string) + ("-" "" :string) + )) + |