diff options
author | Karl Berry <karl@freefriends.org> | 2008-07-01 23:59:24 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2008-07-01 23:59:24 +0000 |
commit | 6103f2d6e3ce846db115bee8c20dc5709865c047 (patch) | |
tree | 13f2633d1e8d1855a9da0c64f88f9f9f9bc09890 /Master/texmf-dist/source/generic/hyph-utf8 | |
parent | 499a283ab6a55dd13be3f39f4e7d2238dada7bb0 (diff) |
hyph-utf8 update (1jul08)
git-svn-id: svn://tug.org/texlive/trunk@9148 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/generic/hyph-utf8')
3 files changed, 223 insertions, 378 deletions
diff --git a/Master/texmf-dist/source/generic/hyph-utf8/README b/Master/texmf-dist/source/generic/hyph-utf8/README deleted file mode 100644 index 4b753902921..00000000000 --- a/Master/texmf-dist/source/generic/hyph-utf8/README +++ /dev/null @@ -1,75 +0,0 @@ -This is HYPH-UTF8 package which contains: - -- hyphenation patterns hyph-foo.tex, semi-manually converted into UTF-8 - from different sources by different authors -- pattern loaders loadhyph-foo.tex that recognise the engine - and load pattern accordingly -- converters from UTF-8 into EC/T1, QX, part of ISO Latin 3, T2A & LMC -- some scripts to assist with auto-generating the files - -Modificatios were needed in order to support native UTF-8 engines, -but functionality (hopefully) didn't change in any way, at least not intentionally. -The patterns themselves are no longer stand-alone; at least for 8-bit engines -you need to use loadhyph-foo.tex (which will load the patterns) instead. - -Modifications were done by Jonathan Kew, Mojca Miklavec & Arthur Reutenauer -with help & support from: - -- Karl Berry, who gave us free hands and all resources -- Taco Hoekwater, with useful macros -- Hans Hagen, who did the unicodifisation of patterns already long before - and helped with testing, suggestions and bug reports -- Norbert Preining, who tested & integrated patterns into TeX Live - -However, the "copyright/copyleft" owner of patterns remains the original author. - -The original patterns should eventually become obsolete, -and the author of the original file should preferraby modify -these files instead (feel free to remove credits added by TUG from those files). - -If you want to change the patterns, rather than uploading directly to CTAN, -we would be grateful if you could send it to us (http://tug.org/tex-hyphen) -or ask for credentials for SVN repository and commit it yourself; -we will then upload the whole "package" to CTAN. - -Before a new "pattern-revolution" starts, -please try to follow some guidelines if possible: - -- \lccode is *forbidden*, and I really mean it -- all the patterns should be in UTF-8 -- the only "allowed" TeX commands in patterns are: \patterns, \hyphenation, - and if you really cannot do without, also \input and \message -- in particular, please no \catcode or \lccode changes, - they belong to loadhyph-foo.tex, - and no \lefthyphenmin and \righthyphenmin, - they have no influence here and belong elsewhere -- \begingroup and/or \endinput is not needed -- feel free to do whatever you want inside comments - -We know that TeX is extremely powerful, but give a stupid parser -at least a chance to read your patterns. - -For more information see - - http://tug.org/tex-hyphen - - -Copyright 2008 by TUG - -The licence for hyph-foo.tex: Respect licences of original authors. -The licence for the rest: Use common sense when modifying and coordinate your work. - -Hyphenation patterns are essential to TeX; -whatever changes you make to these files - -make sure to coordinate your work with everyone involved. -(TeX Live, MikTeX, CTAN, patter authors, mailing list, ...) - -People come and go, TeX evolves. We are aware of that. -If we disapear one day and there is a need to change files, -do whatever needs to be done to make TeX behave in a proper -(backward compatible) way. And keep things clean & consistent. - -Things that might change in near future: -- support for multiple versions of patterns -- support for runtime loading of patterns -- support for preferred hyphenation points and discretionaries (ck -> k-k) diff --git a/Master/texmf-dist/source/generic/hyph-utf8/generate-tl-files.rb b/Master/texmf-dist/source/generic/hyph-utf8/generate-tl-files.rb index 840f8def875..e275a1d266a 100644 --- a/Master/texmf-dist/source/generic/hyph-utf8/generate-tl-files.rb +++ b/Master/texmf-dist/source/generic/hyph-utf8/generate-tl-files.rb @@ -20,11 +20,13 @@ languages = $l.list.sort{|a,b| a.name <=> b.name} language_grouping = { 'norwegian' => ['nb', 'nn'], 'german' => ['de-1901', 'de-1996'], - 'serbian' => ['sr-latn', 'sr-cyrl'], 'mongolian' => ['mn-cyrl', 'mn-cyrl-x-2a'], 'greek' => ['el-monoton', 'el-polyton'], 'ancientgreek' => ['grc', 'grc-x-ibycus'], 'chinese' => ['zh-latn'], + # TODO - until someone tells what to do + #'serbian' => ['sr-latn', 'sr-cyrl'], + 'serbian' => ['sr-latn'], } language_used_in_group = Hash.new @@ -38,7 +40,10 @@ end language_groups = Hash.new # single languages first languages.each do |language| - if language_used_in_group[language.code] == nil then + # temporary remove cyrilic serbian until someone explains what is needed + if language.code == 'sr-cyrl' then + languages.delete(language) + elsif language_used_in_group[language.code] == nil then language_groups[language.name] = [language] end end @@ -66,12 +71,16 @@ end #--------# language_groups.sort.each do |language_name,language_list| $file_tlpsrc = File.open("#{$path_tlpsrc}/hyphen-#{language_name}.tlpsrc", 'w') + puts "generating #{$path_tlpsrc}/hyphen-#{language_name}.tlpsrc" $file_tlpsrc.puts "name hyphen-#{language_name}" $file_tlpsrc.puts "category TLCore" + # external dependencies for Russian and Ukrainian (until we implement the new functionality at least) if language_name == "russian" then $file_tlpsrc.puts "depend ruhyphen" + elsif language_name == "ukrainian" then + $file_tlpsrc.puts "depend ukrhyph" end language_list.each do |language| name = " name=#{language.name}" @@ -103,18 +112,20 @@ language_groups.sort.each do |language_name,language_list| $file_tlpsrc.puts "execute AddHyphen#{name}#{synonyms}#{hyphenmins}#{file}" end - language_list.each do |language| - if language.use_old_patterns and language.filename_old_patterns != "zerohyph.tex" then - $file_tlpsrc.puts "runpattern f texmf/tex/generic/hyphen/#{language.filename_old_patterns}" + if language_name != "russian" and language_name != "ukrainian" then + language_list.each do |language| + if language.use_old_patterns and language.filename_old_patterns != "zerohyph.tex" then + $file_tlpsrc.puts "runpattern f texmf/tex/generic/hyphen/#{language.filename_old_patterns}" + end end end if language_name == "greek" then - $file_tlpsrc.puts "runpattern f texmf/doc/generic/elhyphen/*" + $file_tlpsrc.puts "docpattern d texmf/doc/generic/elhyphen" + elsif language_name == "hungarian" then + $file_tlpsrc.puts "docpattern d texmf/doc/generic/huhyphen" elsif language_name == "german" then $file_tlpsrc.puts "runpattern f texmf/tex/generic/hyphen/dehyphtex.tex" $file_tlpsrc.puts "runpattern f texmf/tex/generic/hyphen/ghyphen.README" - elsif language_name == "hungarian" then - $file_tlpsrc.puts "docpattern f texmf/doc/generic/huhyphen/*" end $file_tlpsrc.close end @@ -125,7 +136,6 @@ end $file_language_dat = File.open("#{$path_language_dat}/language.dat", "w") language_groups.sort.each do |language_name,language_list| language_list.each do |language| - if language.use_new_loader then $file_language_dat.puts "#{language.name}\tloadhyph-#{language.code}.tex" else diff --git a/Master/texmf-dist/source/generic/hyph-utf8/languages.rb b/Master/texmf-dist/source/generic/hyph-utf8/languages.rb index e72555f2fa4..7fa06916868 100644 --- a/Master/texmf-dist/source/generic/hyph-utf8/languages.rb +++ b/Master/texmf-dist/source/generic/hyph-utf8/languages.rb @@ -6,17 +6,18 @@ class Language @use_old_patterns_comment = language_hash["use_old_patterns_comment"] @filename_old_patterns = language_hash["filename_old_patterns"] @filename_old_patterns_other = language_hash["filename_old_patterns_other"] - @filename_xu_loader = language_hash["filename_xu_loader"] @code = language_hash["code"] @name = language_hash["name"] - @synonyms = language_hash["synonyms"] + @synonyms = language_hash["synonyms"] @hyphenmin = language_hash["hyphenmin"] @encoding = language_hash["encoding"] @exceptions = language_hash["exceptions"] @message = language_hash["message"] + + if @synonyms==nil then @synonyms = [] end end - attr_reader :use_new_loader, :use_old_patterns, :use_old_patterns_comment, :filename_old_patterns, :filename_xu_loader, :code, :name, :synonyms, :hyphenmin, :encoding, :exceptions, :message + attr_reader :use_new_loader, :use_old_patterns, :use_old_patterns_comment, :filename_old_patterns, :code, :name, :synonyms, :hyphenmin, :encoding, :exceptions, :message end # "use_new_loader" @@ -46,13 +47,11 @@ class Languages < Hash # -------------------------------------- # arabic zerohyph.tex { + "code" => "ar", + "name" => "arabic", "use_new_loader" => false, "use_old_patterns" => false, "filename_old_patterns" => "zerohyph.tex", -# "filename_xu_loader" => nil, - "code" => "ar", - "name" => "arabic", - "synonyms" => [], # "hyphenmin" => [], # not needed "encoding" => nil, "exceptions" => false, @@ -61,63 +60,100 @@ class Languages < Hash # farsi zerohyph.tex # =persian { + "code" => "fa", + "name" => "farsi", "synonyms" => ["persian"], "use_new_loader" => false, "use_old_patterns" => false, "filename_old_patterns" => "zerohyph.tex", -# "filename_xu_loader" => nil, - "code" => "fa", - "name" => "farsi", - "synonyms" => ["persian"], # "hyphenmin" => [], # not needed "encoding" => nil, "exceptions" => false, "message" => nil, }, - +# ------------------------------- +# special patterns, not converted +# ------------------------------- +# ibycus ibyhyph.tex +{ + "code" => "grc-x-ibycus", + "name" => "ibycus", + "use_new_loader" => false, + "use_old_patterns" => true, + "filename_old_patterns" => "ibyhyph.tex", + "hyphenmin" => [2,2], + "encoding" => nil, + "exceptions" => false, + "message" => "Ancient Greek Hyphenation Patterns for Ibycus encoding (v3.0)", +}, # ---------------------------- # languages using old patterns # ---------------------------- +# greek xu-grphyph4.tex +# =polygreek +{ + "code" => "el-polyton", + "name" => "greek", "synonyms" => ["polygreek"], + "use_new_loader" => true, + "use_old_patterns" => true, + "use_old_patterns_comment" => "Old patterns work in a different way, one-to-one conversion from UTF-8 is not possible.", + "filename_old_patterns" => "grphyph5.tex", + # left/right hyphen min for Greek can be as low as one (1), + # but for aesthetic reasons keep them at 2/2. + # Dimitrios Filippou + "hyphenmin" => [1,1], # polyglosia + "encoding" => nil, + "exceptions" => true, +# "message" => "Polytonic Greek Hyphenation Patterns", + "message" => "Hyphenation patterns for multi-accent (polytonic) Modern Greek" +}, +# monogreek xu-grmhyph4.tex +{ + "code" => "el-monoton", + "name" => "monogreek", + "use_new_loader" => true, + "use_old_patterns" => true, + "use_old_patterns_comment" => "Old patterns work in a different way, one-to-one conversion from UTF-8 is not possible.", + "filename_old_patterns" => "grmhyph5.tex", + "hyphenmin" => [1,1], # polyglosia + "encoding" => nil, + "exceptions" => true, +# "message" => "Monotonic Greek Hyphenation Patterns", + "message" => "Hyphenation patterns for uni-accent (monotonic) Modern Greek" +}, +# ancientgreek xu-grahyph4.tex +{ + "code" => "grc", + "name" => "ancientgreek", + "use_new_loader" => true, + "use_old_patterns" => true, + "use_old_patterns_comment" => "Old patterns work in a different way, one-to-one conversion from UTF-8 is not possible.", + "filename_old_patterns" => "grahyph5.tex", + "hyphenmin" => [1,1], # polyglosia + "encoding" => nil, + "exceptions" => false, + "message" => "Hyphenation patterns for Ancient Greek" +}, # coptic xu-copthyph.tex { + "code" => "cop", + "name" => "coptic", "use_new_loader" => true, "use_old_patterns" => true, "use_old_patterns_comment" => "TODO: automatic conversion could be done, but was too complicated; leave for later.", "filename_old_patterns" => "copthyph.tex", -# "filename_xu_loader" => "xu-copthyph.tex", - "code" => "cop", - "name" => "coptic", - "synonyms" => [], "hyphenmin" => [1,1], # polyglosia TODO: no documentation found "encoding" => nil, "exceptions" => false, "message" => "Coptic Hyphenation Patterns", }, -# danish dkhyph.tex -{ - "use_new_loader" => true, - "use_old_patterns" => false, - "use_old_patterns_comment" => "Old patterns support both EC & OT1 encodings at the same time.", - "filename_old_patterns" => "dkhyph.tex", - "filename_old_patterns_other" => ["dkcommon.tex", "dkspecial.tex"], -# "filename_xu_loader" => nil, - "code" => "da", - "name" => "danish", - "synonyms" => [], - "hyphenmin" => [2,2], # babel - "encoding" => "ec", - "exceptions" => false, - "message" => "Danish Hyphenation Patterns", -}, # german xu-dehypht.tex { + "code" => "de-1901", + "name" => "german", "use_new_loader" => true, "use_old_patterns" => true, - "filename_old_patterns" => "dehypht.tex", "use_old_patterns_comment" => "Kept for the sake of backward compatibility, but newer and better patterns by WL are available.", -# "filename_xu_loader" => "xu-dehypht.tex", - "code" => "de-1901", - "name" => "german", - "synonyms" => [], + "filename_old_patterns" => "dehypht.tex", "hyphenmin" => [2,2], # babel "encoding" => "ec", "exceptions" => false, @@ -125,50 +161,66 @@ class Languages < Hash }, # ngerman xu-dehyphn.tex { + "code" => "de-1996", + "name" => "ngerman", "use_new_loader" => true, "use_old_patterns" => true, "use_old_patterns_comment" => "Kept for the sake of backward compatibility, but newer and better patterns by WL are available.", "filename_old_patterns" => "dehyphn.tex", -# "filename_xu_loader" => "xu-dehyphn.tex", - "code" => "de-1996", - "name" => "ngerman", - "synonyms" => [], "hyphenmin" => [2,2], # babel "encoding" => "ec", "exceptions" => false, "message" => "German Hyphenation Patterns (Reformed Orthography)", }, -# french xu-frhyph.tex -# =patois -# =francais +# russian xu-ruhyphen.tex { + "code" => "ru", + "name" => "russian", "use_new_loader" => true, - "use_old_patterns" => false, - "use_old_patterns_comment" => "Old patterns support both EC & OT1 encodings at the same time.", - "filename_old_patterns" => "frhyph.tex", -# "filename_xu_loader" => "xu-frhyph.tex", - "code" => "fr", - "name" => "french", - "synonyms" => ["patois","francais"], -# "hyphenmin" => [], - "encoding" => "ec", + "use_old_patterns" => true, + "use_old_patterns_comment" => "The old system allows choosing patterns and encodings manually. That mechanism needs to be implemented first in this package, so we still fall back on old system.", + "filename_old_patterns" => "ruhyphen.tex", + "hyphenmin" => [2,2], + "encoding" => "t2a", "exceptions" => false, - "message" => "French hyphenation patterns (V2.12, 2002/12/11)", + "message" => "Russian Hyphenation Patterns", +}, +# ukrainian xu-ukrhyph.tex +{ + "code" => "uk", + "name" => "ukrainian", + "use_new_loader" => true, + "use_old_patterns" => true, + "use_old_patterns_comment" => "The old system allows choosing patterns and encodings manually. That mechanism needs to be implemented first in this package, so we still fall back on old system.", + "filename_old_patterns" => "ukrhyph.tex", + "hyphenmin" => [2,2], + "encoding" => "t2a", + "exceptions" => false, + "message" => "Ukrainian Hyphenation Patterns", }, # ---------------------------- # languages using new patterns # ---------------------------- +# catalan cahyph.tex +{ + "code" => "ca", + "name" => "catalan", + "use_new_loader" => true, + "use_old_patterns" => false, + "filename_old_patterns" => "cahyph.tex", + "hyphenmin" => [2,2], # babel + "encoding" => "ec", + "exceptions" => true, + "message" => "Catalan Hyphenation Patterns", +}, # czech xu-czhyph.tex { + "code" => "cs", + "name" => "czech", "use_new_loader" => true, "use_old_patterns" => false, -# "use_old_patterns_comment" => "Loading new patterns would most probably work, but testing is needed.", "filename_old_patterns" => "czhyph.tex", "filename_old_patterns_other" => ["czhyphen.tex","czhyphen.ex"], -# "filename_xu_loader" => "xu-czhyph.tex", - "code" => "cs", - "name" => "czech", - "synonyms" => [], # Both Czech and Slovak: \lefthyphenmin=2, \righthyphenmin=3 # Typographical rules allow \righthyphenmin=2 when typesetting in a # narrow column (newspapers etc.). @@ -180,15 +232,12 @@ class Languages < Hash }, # slovak xu-skhyph.tex { + "code" => "sk", + "name" => "slovak", "use_new_loader" => true, "use_old_patterns" => false, -# "use_old_patterns_comment" => "Loading new patterns would most probably work, but testing is needed.", "filename_old_patterns" => "skhyph.tex", "filename_old_patterns_other" => ["skhyphen.tex","skhyphen.ex"], -# "filename_xu_loader" => "xu-skhyph.tex", - "code" => "sk", - "name" => "slovak", - "synonyms" => [], # see czech "hyphenmin" => [2,3], "encoding" => "ec", @@ -197,28 +246,37 @@ class Languages < Hash }, # welsh cyhyph.tex { + "code" => "cy", + "name" => "welsh", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "cyhyph.tex", -# "filename_xu_loader" => nil, - "code" => "cy", - "name" => "welsh", - "synonyms" => [], "hyphenmin" => [2,3], "encoding" => "ec", "exceptions" => false, "message" => "Welsh Hyphenation Patterns", }, +# danish dkhyph.tex +{ + "code" => "da", + "name" => "danish", + "use_new_loader" => true, + "use_old_patterns" => false, + "filename_old_patterns" => "dkhyph.tex", + "filename_old_patterns_other" => ["dkcommon.tex", "dkspecial.tex"], + "hyphenmin" => [2,2], # babel + "encoding" => "ec", + "exceptions" => false, + "message" => "Danish Hyphenation Patterns", +}, # esperanto xu-eohyph.tex # TODO { + "code" => "eo", + "name" => "esperanto", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "eohyph.tex", -# "filename_xu_loader" => "xu-eohyph.tex", - "code" => "eo", - "name" => "esperanto", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "il3", # TODO "exceptions" => false, @@ -227,13 +285,11 @@ class Languages < Hash # spanish xu-eshyph.tex # =espanol { + "code" => "es", + "name" => "spanish", "synonyms" => ["espanol"], "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "eshyph.tex", -# "filename_xu_loader" => "xu-eshyph.tex", - "code" => "es", - "name" => "spanish", - "synonyms" => ["espanol"], "hyphenmin" => [2,2], "encoding" => "ec", "exceptions" => false, @@ -241,41 +297,37 @@ class Languages < Hash }, # basque xu-bahyph.tex { + "code" => "eu", + "name" => "basque", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "bahyph.tex", -# "filename_xu_loader" => "xu-bahyph.tex", - "code" => "eu", - "name" => "basque", - "synonyms" => [], "hyphenmin" => [2,2], # babel "encoding" => "ec", "exceptions" => false, "message" => "Basque Hyphenation Patterns", }, -# catalan cahyph.tex +# french xu-frhyph.tex +# =patois +# =francais { + "code" => "fr", + "name" => "french", "synonyms" => ["patois","francais"], "use_new_loader" => true, "use_old_patterns" => false, - "filename_old_patterns" => "cahyph.tex", -# "filename_xu_loader" => "xu-cahyph.tex", - "code" => "ca", - "name" => "catalan", - "synonyms" => [], - "hyphenmin" => [2,2], # babel + "filename_old_patterns" => "frhyph.tex", +# "hyphenmin" => [], "encoding" => "ec", - "exceptions" => true, - "message" => "Catalan Hyphenation Patterns", + "exceptions" => false, + "message" => "French hyphenation patterns (V2.12, 2002/12/11)", }, # galician xu-glhyph.tex { + "code" => "gl", + "name" => "galician", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "glhyph.tex", -# "filename_xu_loader" => "xu-glhyph.tex", - "code" => "gl", - "name" => "galician", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "ec", "exceptions" => false, @@ -283,13 +335,11 @@ class Languages < Hash }, # estonian xu-ethyph.tex { + "code" => "et", + "name" => "estonian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "ethyph.tex", -# "filename_xu_loader" => "xu-ethyph.tex", - "code" => "et", - "name" => "estonian", - "synonyms" => [], "hyphenmin" => [2,3], # babel "encoding" => "ec", "exceptions" => false, @@ -297,13 +347,11 @@ class Languages < Hash }, # finnish fihyph.tex { + "code" => "fi", + "name" => "finnish", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "fihyph.tex", -# "filename_xu_loader" => nil, - "code" => "fi", - "name" => "finnish", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "ec", "exceptions" => false, @@ -311,13 +359,11 @@ class Languages < Hash }, # croatian xu-hrhyph.tex { + "code" => "hr", + "name" => "croatian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "hrhyph.tex", - "filename_xu_loader" => "xu-hrhyph.tex", - "code" => "hr", - "name" => "croatian", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "ec", "exceptions" => false, @@ -325,13 +371,11 @@ class Languages < Hash }, # hungarian xu-huhyphn.tex { + "code" => "hu", + "name" => "hungarian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "huhyphn.tex", - "filename_xu_loader" => "xu-huhyphn.tex", - "code" => "hu", - "name" => "hungarian", - "synonyms" => [], "hyphenmin" => [2,2], # polyglosia "encoding" => "ec", "exceptions" => false, @@ -339,13 +383,11 @@ class Languages < Hash }, # interlingua iahyphen.tex { + "code" => "ia", + "name" => "interlingua", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "iahyphen.tex", - "filename_xu_loader" => nil, - "code" => "ia", - "name" => "interlingua", - "synonyms" => [], "hyphenmin" => [2,2], # babel "encoding" => "ascii", "exceptions" => true, @@ -353,13 +395,11 @@ class Languages < Hash }, # indonesian inhyph.tex { + "code" => "id", + "name" => "indonesian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "inhyph.tex", - "filename_xu_loader" => nil, - "code" => "id", - "name" => "indonesian", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "ascii", "exceptions" => true, @@ -367,13 +407,11 @@ class Languages < Hash }, # icelandic icehyph.tex { + "code" => "is", + "name" => "icelandic", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "icehyph.tex", - "filename_xu_loader" => nil, - "code" => "is", - "name" => "icelandic", - "synonyms" => [], "hyphenmin" => [2,2], # babel "encoding" => "ec", "exceptions" => false, @@ -381,13 +419,11 @@ class Languages < Hash }, # irish gahyph.tex { + "code" => "ga", + "name" => "irish", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "gahyph.tex", - "filename_xu_loader" => nil, - "code" => "ga", - "name" => "irish", - "synonyms" => [], "hyphenmin" => [2,3], # babel "encoding" => "ec", "exceptions" => true, @@ -395,13 +431,11 @@ class Languages < Hash }, # italian ithyph.tex { + "code" => "it", + "name" => "italian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "ithyph.tex", - "filename_xu_loader" => nil, - "code" => "it", - "name" => "italian", - "synonyms" => [], "hyphenmin" => [2,2], # babel "encoding" => "ascii", "exceptions" => false, @@ -409,14 +443,12 @@ class Languages < Hash }, # latin xu-lahyph.tex { + "code" => "la", + "name" => "latin", "use_new_loader" => true, "use_old_patterns" => false, "use_old_patterns_comment" => "Old patterns support both EC & OT1 encodings at the same time.", "filename_old_patterns" => "lahyph.tex", -# "filename_xu_loader" => "xu-lahyph.tex", - "code" => "la", - "name" => "latin", - "synonyms" => [], "hyphenmin" => [2,2], # babel "encoding" => "ec", "exceptions" => false, @@ -424,13 +456,11 @@ class Languages < Hash }, # dutch nehyph96.tex { + "code" => "nl", + "name" => "dutch", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "nehyph96.tex", - "filename_xu_loader" => nil, - "code" => "nl", - "name" => "dutch", - "synonyms" => [], # quoting Hans Hagen: # patterns generated with 2,2 (so don't go less) but use prefered values 2,3 (educational publishers want 4,5 -) "hyphenmin" => [2,2], @@ -444,13 +474,11 @@ class Languages < Hash # bokmal nbhyph.tex # polish xu-plhyph.tex { + "code" => "pl", + "name" => "polish", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "plhyph.tex", - "filename_xu_loader" => "xu-plhyph.tex", - "code" => "pl", - "name" => "polish", - "synonyms" => [], #{}"hyphenmin" => [1,1], "hyphenmin" => [2,2], "encoding" => "qx", @@ -460,13 +488,11 @@ class Languages < Hash # portuguese pthyph.tex # =portuges { + "code" => "pt", + "name" => "portuguese", "synonyms" => ["portuges"], "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "pthyph.tex", - "filename_xu_loader" => nil, - "code" => "pt", - "name" => "portuguese", - "synonyms" => ["portuges"], "hyphenmin" => [2,3], # babel "encoding" => "ec", "exceptions" => true, @@ -474,13 +500,11 @@ class Languages < Hash }, # pinyin xu-pyhyph.tex { + "code" => "zh-latn", + "name" => "pinyin", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "pyhyph.tex", - "filename_xu_loader" => "xu-pyhyph.tex", - "code" => "zh-latn", - "name" => "pinyin", - "synonyms" => [], "hyphenmin" => [1,1], "encoding" => "ec", "exceptions" => false, @@ -488,13 +512,11 @@ class Languages < Hash }, # romanian xu-rohyphen.tex { + "code" => "ro", + "name" => "romanian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "rohyphen.tex", - "filename_xu_loader" => "xu-rohyphen.tex", - "code" => "ro", - "name" => "romanian", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "ec", "exceptions" => false, @@ -503,13 +525,11 @@ class Languages < Hash # slovenian xu-sihyph.tex # =slovene { + "code" => "sl", + "name" => "slovenian", "synonyms" => ["slovene"], "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "sihyph.tex", - "filename_xu_loader" => "xu-sihyph.tex", - "code" => "sl", - "name" => "slovenian", - "synonyms" => ["slovene"], "hyphenmin" => [2,2], "encoding" => "ec", "exceptions" => false, @@ -517,13 +537,11 @@ class Languages < Hash }, # uppersorbian xu-sorhyph.tex { + "code" => "hsb", + "name" => "uppersorbian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "sorhyph.tex", - "filename_xu_loader" => "xu-sorhyph.tex", - "code" => "hsb", - "name" => "uppersorbian", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "ec", "exceptions" => true, @@ -533,13 +551,11 @@ class Languages < Hash }, # swedish svhyph.tex { + "code" => "sv", + "name" => "swedish", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "svhyph.tex", - "filename_xu_loader" => nil, - "code" => "sv", - "name" => "swedish", - "synonyms" => [], "hyphenmin" => [2,2], # patters say it could be 1,2; babel says 2,2 - double check "encoding" => "ec", "exceptions" => false, @@ -547,13 +563,11 @@ class Languages < Hash }, # turkish xu-tkhyph.tex { + "code" => "tr", + "name" => "turkish", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "tkhyph.tex", - "filename_xu_loader" => "xu-tkhyph.tex", - "code" => "tr", - "name" => "turkish", - "synonyms" => [], "hyphenmin" => [2,2], # polyglosia "encoding" => "ec", "exceptions" => false, @@ -562,27 +576,23 @@ class Languages < Hash # ukenglish ukhyphen.tex # TODO - should we rename it or not? { + "code" => "en-gb", + "name" => "ukenglish", "synonyms" => ["british", "UKenglish"], "use_new_loader" => true, - "use_old_patterns" => true, + "use_old_patterns" => false, "filename_old_patterns" => "ukhyphen.tex", - "filename_xu_loader" => nil, - "code" => "en-gb", - "name" => "ukenglish", - "synonyms" => [], "hyphenmin" => [2,3], # confirmed, same as what Knuth says "encoding" => "ascii", "exceptions" => true, - "message" => nil, + "message" => "Hyphenation Patterns for British English", }, # serbian xu-srhyphc.tex { + "code" => "sr-latn", + "name" => "serbian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "shhyphl.tex", - "filename_xu_loader" => nil, - "code" => "sr-latn", - "name" => "serbian", - "synonyms" => [], # It is allowed to leave one character at the end of the row. # However, if you think that it is graphicaly not very # pleasent these patterns will work well with \lefthyphenmin=2. @@ -594,13 +604,11 @@ class Languages < Hash }, # serbianc { + "code" => "sr-cyrl", + "name" => "serbianc", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "srhyphc.tex", - "filename_xu_loader" => nil, # "xu-srhyphc.tex" - "code" => "sr-cyrl", - "name" => "serbianc", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "t2a", "exceptions" => true, @@ -608,13 +616,11 @@ class Languages < Hash }, # mongolian xu-mnhyph.tex { + "code" => "mn-cyrl", + "name" => "mongolian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "mnhyph.tex", - "filename_xu_loader" => "xu-mnhyph.tex", - "code" => "mn-cyrl", - "name" => "mongolian", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "lmc", "exceptions" => false, @@ -622,140 +628,45 @@ class Languages < Hash }, # mongolian2a { + "code" => "mn-cyrl-x-2a", + "name" => "mongolian2a", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "mnhyphn.tex", - "filename_xu_loader" => nil, - "code" => "mn-cyrl-x-2a", - "name" => "mongolian2a", - "synonyms" => [], "hyphenmin" => [2,2], "encoding" => "t2a", "exceptions" => false, "message" => "(New) Mongolian Hyphenation Patterns", }, -# greek xu-grphyph4.tex -# =polygreek -{ - "use_new_loader" => true, - "use_old_patterns" => true, - "use_old_patterns_comment" => "Old patterns work in a different way, one-to-one conversion from UTF-8 is not possible.", - "filename_old_patterns" => "grphyph5.tex", - "filename_xu_loader" => "xu-grphyph4.tex", # TODO: beware! - "code" => "el-polyton", - "name" => "greek", - "synonyms" => ["polygreek"], - # left/right hyphen min for Greek can be as low as one (1), - # but for aesthetic reasons keep them at 2/2. - # Dimitrios Filippou - "hyphenmin" => [1,1], # polyglosia - "encoding" => nil, - "exceptions" => true, -# "message" => "Polytonic Greek Hyphenation Patterns", - "message" => "Hyphenation patterns for multi-accent (polytonic) Modern Greek" -}, -# monogreek xu-grmhyph4.tex -{ - "use_new_loader" => true, - "use_old_patterns" => true, - "use_old_patterns_comment" => "Old patterns work in a different way, one-to-one conversion from UTF-8 is not possible.", - "filename_old_patterns" => "grmhyph5.tex", - "filename_xu_loader" => "xu-grmhyph4.tex", # TODO: beware! - "code" => "el-monoton", - "name" => "monogreek", - "synonyms" => [], - "hyphenmin" => [1,1], # polyglosia - "encoding" => nil, - "exceptions" => true, -# "message" => "Monotonic Greek Hyphenation Patterns", - "message" => "Hyphenation patterns for uni-accent (monotonic) Modern Greek" -}, -# ancientgreek xu-grahyph4.tex -{ - "use_new_loader" => true, - "use_old_patterns" => true, - "use_old_patterns_comment" => "Old patterns work in a different way, one-to-one conversion from UTF-8 is not possible.", - "filename_old_patterns" => "grahyph5.tex", - "filename_xu_loader" => "xu-grahyph4.tex", # TODO: beware! - "code" => "grc", - "name" => "ancientgreek", - "synonyms" => [], - "hyphenmin" => [1,1], # polyglosia - "encoding" => nil, - "exceptions" => false, - "message" => "Hyphenation patterns for Ancient Greek" -}, -# ibycus ibyhyph.tex -{ - "use_new_loader" => false, - "use_old_patterns" => true, - "filename_old_patterns" => "ibyhyph.tex", - "filename_xu_loader" => nil, - "code" => "grc-x-ibycus", - "name" => "ibycus", - "synonyms" => [], - "hyphenmin" => [2,2], - "encoding" => nil, - "exceptions" => false, - "message" => "Ancient Greek Hyphenation Patterns for Ibycus encoding (v3.0)", -}, # bulgarian xu-bghyphen.tex { + "code" => "bg", + "name" => "bulgarian", "use_new_loader" => true, "use_old_patterns" => false, "filename_old_patterns" => "bghyphen.tex", - "filename_xu_loader" => "xu-bghyphen.tex", - "code" => "bg", - "name" => "bulgarian", - "synonyms" => [], "hyphenmin" => [2,2], # babel "encoding" => "t2a", "exceptions" => false, "message" => "Bulgarian Hyphenation Patterns", }, -# russian xu-ruhyphen.tex -{ - "use_new_loader" => true, - "use_old_patterns" => false, - "code" => "ru", - "name" => "russian", - "synonyms" => [], - "hyphenmin" => [2,2], - "encoding" => "t2a", - "exceptions" => false, - "message" => "Russian Hyphenation Patterns", -}, -# ukrainian xu-ukrhyph.tex -{ - "use_new_loader" => true, - "use_old_patterns" => false, - "code" => "uk", - "name" => "ukrainian", - "synonyms" => [], - "hyphenmin" => [2,2], - "encoding" => "t2a", - "exceptions" => false, - "message" => "Ukrainian Hyphenation Patterns", -}, # sanskrit { - "use_new_loader" => true, - "use_old_patterns" => false, "code" => "sa", "name" => "sanskrit", - "synonyms" => [], + "use_new_loader" => true, + "use_old_patterns" => false, "hyphenmin" => [1,5], # polyglosia - "encoding" => nil, + "encoding" => nil, # no patterns for 8-bit TeX "exceptions" => false, "message" => "Sanskrit Hyphenation Patterns (v0.2, 2008/1/3)", }, # norsk xu-nohyphbx.tex { + "code" => "nb", + "name" => "bokmal", "synonyms" => ["norwegian", "norsk"], "use_new_loader" => true, "use_old_patterns" => false, - "code" => "nb", - "name" => "bokmal", - "synonyms" => ["norwegian", "norsk"], "hyphenmin" => [2,2], # babel "encoding" => "ec", "exceptions" => true, @@ -763,11 +674,10 @@ class Languages < Hash }, # nynorsk nnhyph.tex { - "use_new_loader" => true, - "use_old_patterns" => false, "code" => "nn", "name" => "nynorsk", - "synonyms" => [], + "use_new_loader" => true, + "use_old_patterns" => false, "hyphenmin" => [2,2], # babel "encoding" => "ec", "exceptions" => true, |