ピーコロンちゃんbotとローマ字再定義
こんにちは!言葉遊びコミュニティ『ピーコロン』のモデレータをやっているわんどです。
最近はEnigmaStudioという単語検索等の支援ツールを頻繁に更新しています。
https://studio.enigmahouse.jp/
ポリバケツ語〜五文字母音チャレンジ
五音の単語で、aiueoの母音すべてを含むものをポリバケツ語(もしくはエクゾディア、ファイブ音(ね)語)と呼びます
ペンシルパズル関連のDiscordサーバー Puzsq Meets でポリバケツ語が話題になった際に、ぶすじまさん(@poison_island)が母音の配列別に120通りを埋めようとしたリストがあり、
さらにピーコロンでも話題になったときに輸入されて単語探しが始まりました。
その後の流れ
ポリバケツ語を母音に着目してさらに分類するという試みは以前からあったようで、
同じテーマの調査も調べるといくつか出てきます。
そして、単語も調べると、なんとか120パターン埋めることができました。
五文字母音チャレンジ
というわけで、五音の言葉を母音別に1つずつ見つける五文字母音チャレンジが始まりました。
ポリバケツ語の組み合わせとほぼ近い125通りですが、
3文字の単語は多いので、一人でもサクッと終わる規模ですし、
6文字はレアリティの違う15625単語のコンプリートガチャだし、
5文字というのが絶妙チャレンジとして絶妙な長さっぽい。
改めてレギュレーションを整理すると、
「っ」「ん」は含めない
長音は前の音の母音
拗音「ゃゅょ」は前の文字と合わせて「一音」として数え、五音のものを登録する
つまり、先ほどのリストの長音補完(メタルヒーローなど)は含めません。
「うぃ」「うぇ」「うぉ」は1音だが、「うい」「うえ」「うお」の表記(2音)もあり、都合の良い方を許容
となります。
ピーコロンちゃんbot
botをフル活用した記事として、12/4のフルーウさんの記事があがっています。
ピーコロンちゃん
ちなみに、ピーコロンちゃんは、ピーコロンの擬人化キャラクターで、
Σさん(@912_Sigma)さんのキャラデザがベースになっており、
五文字チャレンジbotのアイコンもΣさんに描いてもらいました
botの作り方
だいぶ端折ります。
環境構成
Google Cloud Functions + Typescript
LINE Messaging API
Google Spreadsheet API
実装
入力から韻を取り出し比較
Google Spreadsheet APIで該当のシートとまとめシートをJSON取得、
登録があるかどうかを表示
↑のキーワードで検索するかChatGPTに尋ねると方法を載せた記事や回答が手に入ります。たぶん。
ローマ字を再定義する
さて、母音を取り出す部分ですが、
一見ローマ字に変換して母音を取り出せば良いような気がします。
Wikipediaのローマ字の項目では、ややこしい経緯が書かれていますが、
訓令式は、ISO標準で定められているもの、
外務省のパスポート用ヘボン式準拠のものが標準のような扱いを受けています。
fa,fiなどの表記は存在せず、「ふぁ」はFUA/HUA、「ふぃ」はFUI/HUIなどと扱う
vは存在せず、ヴィはBI、もしくはBUIとして扱う
など、どちらの表記でも1音は母音1個で表すことができません。
謎解きとかでもたまに誤魔化してふぁをFAとしている例がありますが、
PCのローマ字入力がベースになっています。
この「PCの入力準拠のローマ字」という概念はEMさんのリポグラムチャレンジなどでも触れられており、存在する概念のようです。
EnigmaStudioの開発中、韻の取得で問題になり、「PC入力式のローマ字変換」というものを定義して、韻を取り出したい時はそちらを使うようにしました。
タイピング式ローマ字表
ヘボン式変換、訓令式変換に加えて、ヘボン式ベースのタイピングのキー入力ローマ字、訓令式ベースのキー入力ローマ字の四通りを用意することにしました。加えて、長音を前の文字の母音にするかハイフンにするか(ヘボン式は省略)で8パターンの指定ができます。
まず、ヘボン式と訓令式で変わるのがこちら、
その他、bmpの前のんがmになる、や「ち」が"tch"になるといった違いもあります。
拗音を含む1音を母音1つで表記する方法がヘボン式、訓令式で未定義だったものをタイピング式ローマ字で追加したリストがこちら(ヘボン風・訓令風共通)
▼のツイートはシークヮーサーのローマ字表記について話していた時のことでした。
クヮ以外のヮ、
スヮ、ヌヮ、プヮ、ムヮ、ルヮ、グヮ、ズヮ、ブヮ
などはxwaで入力することになります、
なお、ヘボン式、訓令式には拗音の単体の表記がないのでその場合は普通にwaになります。
他の拗音や促音が2連続する時も同様です。
* + 巛 ヽ
〒 ! + 。 + 。 * 。
+ 。 | |
* + / / イヤッッホォォォオオォオウ!
∧_∧ / /
(´∀` / / + 。 + 。 * 。
,- f
/ ュヘ | * + 。 + 。 +
〈_} ) |
/ ! + 。 + + *
./ ,ヘ |
ガタン | j / | | |
――――――――――――
▲拗音や促音が2連続する単語の例
ピーコロンのしりとりで、セ゜攻めが話題になったことがありましたが、
セ゜ - Wikipedia
言葉遊びのルールやプログラムを突き詰めると、こんなのどこで使うんだよという例外と戦うことになります。
あとは先述のVの処理と、タイピング入力に合わせて、音によって決まっている部分を文字表記ベースに変更して、ローマ字を定義することができました。
この韻検索に便利なローマ字はEnigmaStudio汎用検索とワードジェネレータに入れました。
ローマ字変換して、子音を空文字列に置換することで韻検知ができました。
ツールVS人力
韻検索サイトはEnigmaStudioの実装をまたなくても色々ありますし、
EnigmaStudioの抽出結果も検索可能な形でまとめています。
ツールや検索については「どの単語を選ぶかの選定は目視でやってね」と暗黙のルール?になっていたのを人が増えた時に明示してみました。
五文字母音検索(単語のリストが出て目視で選ぶ)は自動化ツール、
思いついた言葉が埋まっているかを簡単に確認できるピーコロンちゃんbotは人力の補助といったところでしょうか。
舟を編む
辞書ツールvs人力というと一見人間に勝ち目がないように思えますが、
Wikipediaや辞書も人間が書いていたり、豚辞書も一人で編纂されたものですし、
もともと人間がやってきた単語収集活動の結果を使うか、自分たちで集めるかだけの違いでしかないです。
また、新語・流行語など、言葉の使われ方は日々変化していきますし、
馴染みある言葉でも「一般語」に入っていなかったり、ほとんど辞書に載っていなかったりということもよくあることで、
母音の配置を決めて言葉をコレクションしていくという活動においては、
人間+ピーコロンちゃんbotもかなり戦えるみたいです。
「既に母音が登録されている言葉でも、同じ韻を持つサーバーの誰かが登録した言葉が出てくる」というのも楽しい。(登録はスプシに手動で行います)
言葉遊びとツールの関わり方は色々あるけれど、ピーコロンちゃんbotはサーバーやプロジェクトの活性化の観点でも、かなりうまく行った事例というわけで紹介させていただきました。
来年もピーコロンちゃん、EnigmaStudio、そして、ピーコロンをよろしくお願いします。
言葉遊びAdventCalendar 2023 7日目の記事でした。
▼言葉遊びAdventCalendar 2023はこちらから
▼ピーコロンちゃんのbot登録はこちらから
▼ピーコロンへの参加はこちらから
宣伝:
今週末(12/9-10)、ワードパズル中心に5000問遊べるコンテンツの
LINEのシステム作ってます。
ピーコロンちゃんはEnigmaStudioとTOWERUSHの副産物と言えるかも??