hibitの技術系メモ

数学とか3Dとか翻訳とか

rei10830349さんはどのような時に漢数字を使うのか

twitter.com

 reiさんというアルファツイッタラー(フォロワー6万超えなら文句なしにアルファでしょう、多分)がいる。ASD/ADHDや弱者男性論でnoteを書いたり出版をされている方だが、今回は彼の主張内容には触れない。

 rei語法とでも言うべき言葉遣いがある。

「一般」という言葉を「1般」と書かれていることにお気づきだろうか。これは単なる変換ミスではない。基本的に彼の文章の中では「1般」で表記が統一されている。1だけではない。わざわざ引用はしないが「2度と」や「第3者」という表記も見られる。確固たる意思をもって漢数字を使っていないと考えるべきだろう。

 基本的には、「活用する可能性があるものは算用数字」という使い分けが1般的であるように思う。「みかんが3個」と書く時は、2個である場合や4個である場合が自然に想定される時である。1般的には、「2般」や「3般」の出番はない。「2度と」は微妙なラインだが、「第3者」もその意味するところは「話者でも聞き手でもない人」であり、第4者や第5者を想定している訳ではない。

 ただ、私が考える1般的な使い分けが10000人に通じるとは限らないし、究極的には筆者が書きたい方法が1番、ということになるのだろう。

調べてみた

reiさんは漢数字を使わない」という仮説を立てて、「一」から「十」まで検証してみる。Twitterの検索(いまいち仕様が謎)にひっかかる範囲で、だが。

f:id:hibit_at:20210530040302p:plain

「一呼吸」は慣用句的だが、2呼吸も3呼吸もありそうなので算用数字にしてもいい場所だと思う。ここは統一が取れていない気がする。

f:id:hibit_at:20210530040503p:plain

「中2病」でもいいと思うけど、固有名詞なので変えづらいのもわかる。

f:id:hibit_at:20210530040550p:plain

 これはさすがに1般的表記でもrei語法でも「3」と書くべき場面ではないだろうか。

f:id:hibit_at:20210530040627p:plain

 なかった。

f:id:hibit_at:20210530040721p:plain

「五飛」は物語の登場人物なので、かなり固有名詞性が高い。妥当だと思う。

f:id:hibit_at:20210530040823p:plain

 なかった。

f:id:hibit_at:20210530040948p:plain

 なかった。

f:id:hibit_at:20210530041028p:plain

 なかった。

f:id:hibit_at:20210530041052p:plain

 なかった。

f:id:hibit_at:20210530041126p:plain

 なかった。

rei語法の弊害(?)

 日本語には同じ漢字表記で複数の意味を持つものが存在する。例えば「一番」や「十分」がそうだ。「一番の番号札でお並びの方」と「一番いいやつを頼む」では意味が異なる。我々は普段このような使い分けをアクセント等で自然に行っている。文章ではアクセントでは伝えられないが、前者は「1番」と書くことでより正確にニュアンスを伝えられる。

 「十分」は「じゅっぷん」と「じゅうぶん」で意味が違う。そもそも読み方が異なるので、会話でこれが混同されることはないが、文章だと混同の危険性がある。そのためか、前者は「10分」と表記されることが多い、と思う。逆に「じゅうぶん」を「10分」と書くと、意図せずに ten minutes の意味と取られてしまう危険性がある。

 要は、rei語法を使うと、一部の言葉において異なったニュアンスを伝えてしまう可能性があるということだ。

 そのような場面がないか、調べてみた。

f:id:hibit_at:20210530041924p:plain

f:id:hibit_at:20210530042011p:plain

 ……自然に使い分けてるじゃねえか!

 ちなみにreiさん自身の発言でも「一般」という表記は普通に見られる。気分なのか。

結論

 rei語法はそこまで厳密なものではなく、わりと状況に合わせて漢数字を使ったりしている。

気になること

  • reiさんは「1般」をどう記入しているのだろうか。普通のIMEでは変換できないだろうから、辞書登録しているのだろうか。ちなみに私はrei語法をエミュレートするにあたって、「1般若」と売ってから「若」を消す、といった動作を繰り返していた。
  • reiさんにブロックされないか心配である。

おまけ

 Pythonrei語法変換器を作りました。

def rei_converter(s):

    nums = '一二三四五六七八九'
    small_order = '十百千'
    big_order = '万億兆京垓J穣溝澗正載極'

    num_stack = 0
    num_answer = 0

    s += ' ' #番兵

    for c in s:
        if c in nums:
            num_stack = nums.index(c)+1
            continue
        if c in small_order:
            order = small_order.index(c)+1
            num_answer += max(1, num_stack)*pow(10, order)
            num_stack = 0
            continue
        if c in big_order:
            order = big_order.index(c)+1
            num_answer += max(1, num_stack)*pow(10, order*4)
            num_stack = 0
            continue
        if num_stack or num_answer:
            num_answer += num_stack
            print(num_answer, end='')
            num_stack = 0
            num_answer = 0
        print(c, end='')
    return s


s = input()
rei_converter(s)

テストケース1

input

メロスは激怒した。必ず、かの邪知暴虐の王を除かなければならぬと決意した。メロスには政治がわからぬ。メロスは、村の牧人である。笛を吹き、羊と遊んで暮らしてきた。けれども邪悪に対しては、人一倍に敏感であった。今日未明、メロスは村を出発し、野を越え山越え、十里離れたこのシラクスの町にやって来た。メロスには父も、母もない。女房もない。十六の、内気な妹と二人暮らしだ。

output

メロスは激怒した。必ず、かの邪知暴虐の王を除かなければならぬと決意した。メロスには政治がわからぬ。メロスは、村の牧人である。笛を吹き、羊と遊んで暮らしてきた。けれども邪悪に対しては、人1倍に敏感であった。今日未明、メロスは村を出発し、野を越え山越え、10里離れたこのシラクスの町にやって来た。メロスには父も、母もない。女房もない。16の、内気な妹と2人暮らしだ。

テストケース2

input

「一般」を「一般」と書くツイートが流れてきて思わず二度見。一発では変換できないから入力が七面倒くさそう。このツイートも四苦八苦、いや千辛万苦の末に成っている。億劫な身にはつらい。ことばの世界の豊穣さを改めて感ずるが、何故そこまで、と正直極めて不可思議だ。

output

「1般」を「1般」と書くツイートが流れてきて思わず2度見。1発では変換できないから入力が7面倒くさそう。このツイートも4苦8苦、いや1000辛10000苦の末に成っている。100000000劫な身にはつらい。ことばの世界の豊10000000000000000000000000000さを改めて感ずるが、何故そこまで、と10000000000000000000000000000000000000000直1000000000000000000000000000000000000000000000000めて不可思議だ。