File: saihenkan.rb

package info (click to toggle)
skktools 1.3.3-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 1,380 kB
  • ctags: 349
  • sloc: sh: 11,551; ansic: 1,300; ruby: 1,049; perl: 798; lisp: 431; python: 241; makefile: 126; awk: 94; cpp: 73; sed: 1
file content (57 lines) | stat: -rwxr-xr-x 1,756 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/usr/bin/ruby -Ke
# saihenkan.rb -- convert SKK normail dictionary to saihenkan dictionary.
#
# Copyright (C) 2003 NAKAJIMA Mikio <minakaji@namazu.org>
#
# Author: NAKAJIMA Mikio <minakaji@namazu.org>
# Created: March 26, 2003
# Last Modified: $Date: 2006/01/04 10:35:06 $
# Version: $Id: saihenkan.rb,v 1.2 2006/01/04 10:35:06 skk-cvs Exp $

# This file is part of Daredevil SKK.

# Daredevil SKK is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either versions 2, or (at your option)
# any later version.
#
# Daredevil SKK is distributed in the hope that it will be useful
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Daredevil SKK, see the file COPYING.  If not, write to the
# Free Software Foundation Inc., 51 Franklin St, Fifth Floor, Boston,
# MA 02110-1301, USA.
#
# Commentary:
# saihenkan.rb SKK-JISYO.S | nkf -e > SKK-JISYO.saihenkan
#
file = ARGV.shift
if !file
else
  print ';;This file was generated by saihenkan.rb at ',
    Time.new(), "\n"
  print ";; okuri-ari entries.\n;; okuri-nasi entries.\n"
  File.open(file).each do |line|
    if (line =~ /^([^ a-z].*[^a-z]) \/(.+)\/$/)
      candidates = $2
      candidates = candidates.split('/')
      max_index = candidates.length - 1
      if (max_index > 0)
	copy = candidates
	candidates.each do |can|
	  print can, ' /'
	  copy.each do |c|
	    if c != can
	      print c, '/'
	    end
	  end
	  print "\n"
	end
      end
    end
  end
end
# end of saihenkan.rb