経緯
gimei ブーム来てる
— willnet (@netwillnet) June 5, 2015
多言語の gimei 情報足しました (\( ⁰⊖⁰)/) https://t.co/8ZWf7NIznA多言語による実装
— willnet (@netwillnet) June 5, 2015
ビッグウェーブに乗った
過去
人名をランダムに生成する emacs lisp fake-full-name.el - Thanks Driven Life
こんな記事を書いたこともありました。この elisp はちょくちょく仕事でも使っていて、ちゃんとリポジトリ作成しようかなーでもなーって悩んでたところ、gimei の話題が見えましたので、あらためてこちらの方を作成しました。
現在
Usage
https://github.com/gongo/emacs-gimei#usage
まずは人名:
(require 'gimei) (setq name (gimei/new-name)) ;; [cl-struct-gimei:name] (gimei/kanji-of name) ;; "浅野 深桜" (gimei/hiragana-of name) ;; "あさの みお" (gimei/katakana-of name) ;; "アサノ ミオ" (gimei/last:kanji-of name) ;; "浅野" (gimei/last:hiragana-of name) ;; "あさの" (gimei/last:katakana-of name) ;; "アサノ" (gimei/first:kanji-of name) ;; "深桜" (gimei/first:hiragana-of name) ;; "みお" (gimei/first:katakana-of name) ;; "ミオ" ;; 男性名/女性名 を明示 (gimei/kanji-of (gimei:new-male)) ;; "篠田 繁夫" (gimei/kanji-of (gimei:new-female)) ;; "稲葉 澪"
住所はこんな感じ:
(setq address (gimei/new-address)) ;; [cl-struct-gimei:address] (gimei/address:kanji-of address) ;; "山梨県杵築市宮浦" (gimei/address:hiragana-of address) ;; "やまなしけんきつきしみやのうら" (gimei/address:katakana-of address) ;; "ヤマナシケンキツキシミヤノウラ" (gimei/address:prefecture:kanji-of address) ;; "山梨県" (gimei/address:city:hiragana-of address) ;;"きつきし" (gimei/address:town:katakana-of address) ;; "ミヤノウラ"
変数に受けずに直接呼び出すことも可能:
(gimei/kanji) ;; "宮原敏也" (gimei/hiragana) ;; "あだちてつ" (gimei/katakana) ;; "キシモトコタロウ" (gimei/address:kanji) ;; "神奈川県河内長野市藤助新田" (gimei/address:hiragana) ;; "みえけんわたりぐんやまもとちょうきたじゅう" (gimei/address:katakana) ;; "オオサカフコユグンシントミチョウナカノバタチョウ"
使用例
(require 'cl-lib) (cl-loop for i from 1 to 10 do (let ((name (gimei/new-name)) (address (gimei/new-address))) (insert "\"" (gimei/kanji-of name) "\"" "," "\"" (gimei/katakana-of name) "\"" "," "\"" (gimei/address:kanji-of address) "\"" "\n"))) ;; => "村井 建喜","ムライ タテヨシ","宮崎県稚内市平成" ;; "樋口 一","ヒグチ ハジメ","岩手県遠賀郡遠賀町下川上" ;; "森 寿英","モリ トシヒデ","静岡県八丈島八丈町上磯分内" ;; "柏木 桃世","カシワギ モモヨ","山梨県比企郡嵐山町新町" ;; "金田 充扇","カネダ ミオ","青森県吾妻郡草津町木島" ;; "井口 静江","イグチ シズエ","長野県相楽郡精華町清尾" ;; "多田 征蘭","タダ セイラ","岡山県雨竜郡沼田町金山沢" ;; "松本 範人","マツモト ノリヒト","熊本県羽咋市西恋ケ窪" ;; "渡辺 生夏","ワタナベ ミナツ","山口県霧島市引佐町栃窪" ;; "川島 健郎","カワシマ タケオ","岐阜県東白川郡矢祭町猫田"
即席テストユーザ CSV ファイル
おまけ
Emacs Lisp って YAML parser 無いんですね。無かったので オリジナルデータ を alist に変換して gz で配置するなどして対処しました。
まとめ
これでテストデータもばっちりですね!テストしていこう!!(この elisp も ちゃんとテスト書きました)