зеркало из https://github.com/github/ruby.git
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
b6d25f03a8
Коммит
07ad033850
|
@ -1047,6 +1047,12 @@ $(srcdir)/.unicode-tables.time: $(srcdir)/tool/generic_erb.rb \
|
|||
$(srcdir)/template/unicode_norm_gen.tmpl \
|
||||
$(UNICODE_DATA_DIR) lib/unicode_normalize
|
||||
|
||||
$(srcdir)/enc/unicode/casefold.h: $(srcdir)/enc/unicode/case-folding.rb \
|
||||
$(UNICODE_SRC_DATA_DIR)/CaseFolding.txt
|
||||
$(Q) $(BASERUBY) $(srcdir)/enc/unicode/case-folding.rb \
|
||||
--output-file=$(srcdir)/enc/unicode/casefold.h \
|
||||
$(UNICODE_SRC_DATA_DIR)/CaseFolding.txt
|
||||
|
||||
download-extlibs:
|
||||
$(Q) $(BASERUBY) -C $(srcdir) -w tool/extlibs.rb --download ext
|
||||
|
||||
|
|
|
@ -3,6 +3,9 @@
|
|||
# Usage:
|
||||
# $ wget http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
# $ ruby case-folding.rb CaseFolding.txt -o casefold.h
|
||||
# or:
|
||||
# $ wget http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
# $ ruby case-folding.rb -m . -o casefold.h
|
||||
|
||||
class CaseFolding
|
||||
module Util
|
||||
|
@ -175,16 +178,29 @@ end
|
|||
if $0 == __FILE__
|
||||
require 'optparse'
|
||||
dest = nil
|
||||
mapping_directory = nil
|
||||
mapping_data = nil
|
||||
fold_1 = false
|
||||
ARGV.options do |opt|
|
||||
opt.banner << " [INPUT]"
|
||||
opt.on("--output-file=FILE", "-o", "output to the FILE instead of STDOUT") {|output|
|
||||
dest = (output unless output == '-')
|
||||
}
|
||||
opt.on('--mapping-data-directory', '-m', 'data directory of mapping files') { |directory|
|
||||
mapping_directory = directory
|
||||
}
|
||||
opt.parse!
|
||||
abort(opt.to_s) if ARGV.size > 1
|
||||
end
|
||||
filename = ARGV[0] || 'CaseFolding.txt'
|
||||
if mapping_directory
|
||||
if ARGV[0]
|
||||
warn "Either specify directory or individual file, but not both."
|
||||
exit
|
||||
end
|
||||
filename = File.expand_path("CaseFolding.txt", mapping_directory)
|
||||
end
|
||||
filename ||= ARGV[0] || 'CaseFolding.txt'
|
||||
|
||||
data = CaseFolding.load(filename)
|
||||
if dest
|
||||
open(dest, "wb") do |f|
|
||||
|
|
Загрузка…
Ссылка в новой задаче