$LOAD_PATH.unshift("..")
require "find"
-require "chise/util"
+require "pathname"
+require "fileutils"
+require "chise/path"
+require "chise/qp"
def usage()
- print "Usage: make-chisedb-tarball.rb <directory of XEmacs CHISE> <tmp dir>\n"
- print "% ./make-chisedb-tarball.rb /usr/local/lib/xemacs-21.4.14/i686-pc-linux /var/tmp\n"
+ puts "Usage: make-chisedb-tarball.rb <CHISE-DB dir> <tmp dir>"
+ puts "% ./make-chisedb-tarball.rb /usr/local/lib/xemacs-21.4.14/i686-pc-linux/chise-db /var/tmp"
exit
end
def main(argv)
usage if argv.length < 1
dir = argv.shift
- unless FileTest.directory?(dir+"/chise-db")
+ unless dir.path.directory?
print "no chise-db here. #{dir}\n"
usage
end
- tmpdir = argv.shift
- tmpdir = "/var/tmp" if tmpdir.nil?
-
+ tmpdir = argv.shift || "/var/tmp"
orgdir = Dir.pwd
- Dir.chdir(tmpdir) # \93K\93\96\82Èdir\82É\88Ú\93®\82µ\82Ä\82©\82ç
- system "cp -a #{dir}/chise-db ." # \82Ü\82¸\82»\82Ìdirectory\82É\96â\93\9a\96³\97p\82Å\91S\95\94\83R\83s\81[\82·\82é\81B
- Find.find("."){|f|
- if f =~ /([*?<>])/ # Windows\82É\82¨\82¯\82é\8bÖ\8e~\95¶\8e\9a\82ª\8aÜ\82Ü\82ê\82Ä\82¢\82½\82ç\81A\92u\8a·\82·\82é
- nf = CHISE.unix_to_win(f)
- cmd = "mv '#{f}' '#{nf}'"
- #print cmd, "\n"
- system cmd
- end
+ print "copy all chise-db to tmpdir"
+ system "cp -a #{dir} #{tmpdir}" #
+ puts "."
+
+ print "escape special characters"
+ Find.find(tmpdir+"/chise-db") {|f|
+ next if f.path.directory?
+ nf = f.path.escape.unix_to_win.to_s
+ next if f == nf
+ cmd = "mv '#{f}' '#{nf}'"
+ #puts cmd
+ system cmd
}
+ puts "."
- system "tar czf chise-db.tar.gz chise-db"
- system "mv chise-db.tar.gz #{orgdir}"
- system "rm -rf #{tmpdir}/chise-db"
+ Dir.chdir(tmpdir){
+ print "make tarball"
+ system "tar czf chise-db.tar.gz chise-db"
+ puts "."
+ print "mv it"
+ system "mv chise-db.tar.gz #{orgdir}"
+ puts "."
+ print "remove tmpdir/chise-db"
+ system "rm -rf #{tmpdir}/chise-db"
+ puts "."
+ }
end
main(ARGV)