Sha256: 3b57e3eb9cb0b425132e2029e2e8279e01762ff07c8f603515e484e47bfccdeb

Contents?: true

Size: 1.08 KB

Versions: 8

Compression:

Stored size: 1.08 KB

Contents

#!/usr/bin/ruby
# -*- coding: utf-8 -*-

$KCODE = 'u'

require 'English'
require 'kconv'

class String
  def to_json
    a = split(//).map {|char|
      case char
      when '"' then '\\"'
      when '\\' then '\\\\'
      when "\b" then '\b'
      when "\f" then '\f'
      when "\n" then '\n'
      when "\r" then ''
      when "\t" then '\t'
      else char
      end
    }
    "\"#{a.join('')}\""
  end
end

class Array
  def to_json
    '[' + map {|element|
      element.to_json
    }.join(',') + ']'
  end
end

puts <<END
column_create item_dictionary edict_desc COLUMN_SCALAR ShortText
column_create bigram item_dictionary_edict_desc COLUMN_INDEX|WITH_POSITION item_dictionary edict_desc
load --table item_dictionary
[["_key","edict_desc","kana"],
END

while !STDIN.eof?
  line = Kconv.toutf8(gets.strip)
  key, body = line.split('/', 2)
  key = key.strip
  if /\s*\[(.+)\]\z/ =~ key
    key = $PREMATCH
    reading = $1
    body = "[#{reading}] #{body}"
    kana = NKF.nkf("-Ww --katakana", reading)
  else
    kana = NKF.nkf("-Ww --katakana", key)
  end
  puts [key, body, kana].to_json
end
puts ']'

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
rroonga-2.0.2-x86-mingw32 vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb
rroonga-2.0.1-x86-mingw32 vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb
rroonga-2.0.0-x86-mingw32 vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb
rroonga-1.3.1-x86-mingw32 vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb
rroonga-1.3.0-x86-mingw32 vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb
rroonga-1.2.7-x86-mswin32 vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb
rroonga-1.2.7-x86-mingw32 vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb
rroonga-1.2.5-x86-mingw32 vendor/local/share/groonga/examples/dictionary/edict/edict2grn.rb