電柱脇の随想ノート

創作に繋がる何か

鬱で引き篭もって分かったこと

 4月になった。

 

 以前に、4月からしばらくはインプットに力を入れるという旨を記したが、諸事情あってあと3か月ほど、前年度の延長戦をやらなければならなくなった。何とも中途半端ではあるが、致し方ない。とりあえずは新年度になったということで、これまでの内に籠もった生活から何か少しでも変わっていけたらと思う。無理しない程度に。

 

 さて、この1年余り、極たまに外に出る以外はほぼ自室に引き籠っていたことで、愚にもつかない知見(などと呼ぶのもおこがましいような何か)がぼちぼち得られたので、ここに書き残しておこうと思う。最初に断っておくと、はっきり言ってどれもしょうもないので、あまり無理して読もうなどと思わないでほしい。

 

  • 1年以上放置した布団で寝起きしても死ななかった。

 

 のっけから不潔な話で申し訳ない。

 

 鬱状態になると、布団の上げ下ろしどころの騷ぎではなくなり、布団の上こそが自分の居場所みたいな気さえしてくる。事実として、去年の初めから一度たりとも、布団の上げ下ろしどころかシーツを取り替えた記憶すらない。その敷きっ放しの布団の上に更にノートPCを置きっ放しにして、ほぼ一日中そこで生活していた。当然ホコリなど無視である。フローリングの床が看過できないほどにホコリ塗れになった時だけ、(部屋に掃除機がないので)手で掬って捨てていた。

 

 そんな状況でも、案外何ともならないもので、人間て意外と強いんだなあという呑気な感想だけが残った*1。最近はもうちっとだけ気力が戻ってきて、さすがに新年度だし少しは綺麗にした方がいいかと思っているのだが、その場合はこのホコリとコーヒーの染みだらけのシーツは捨てることになるだろう。ご苦労であった。

 

  • 生活習慣的には、同じことをひたすら繰り返しても全く平気だった。

 

 何を繰り返していたかというと、まず食事。1日1回のメニューが1年半ほぼ同じ。これで飽きもしないし苦痛でもなかった。というかいまだ継続中である。我ながらちょっと呆れるほどである。ついでに言えば、飲み物は毎日コーヒーをマグカップ1杯、あとは水。ひたすらその繰り返し。なんというか、いつもと違うものを求めるという気持ちすら湧かないというか、面倒臭さが先に来る。それで別に人生損した気にもならないので、たぶん一生こうなのだろう。

 

 ただ、生活に刺激がないとボケてくると言うので、別のところで脳に刺激を与える必要は感じている。まあ、料理もできたほうがいいに決まっているから同じメニューなりに自炊できたらなあと思う(今は思うだけ)。

 

 そうそう、布団に関しては無頓着の極みだったが、入浴と歯磨きだけはどれだけ憂鬱な日でもきちんとしていたのは自分で自分を褒めてもいいと思う。そろそろ同年代でも何本無くなったとか部分入れ歯がとかいう話を聞くので。

 

  • 1日1食でも、運動していないと太った。

 

 これは本当に驚いた。なにしろ1年半ほどで10kg以上増えた。それ以前は1日2食を基本として、運動に関しては週3くらいのペースでそこそこ長距離(10kmほど)を休みなく歩く習慣があり、今思えば一番運動と食事のバランスが取れた時期だったのだろうが、それにしても量を減らしてなおかつ太るとは予想外だった。さすがにこれ以上増えると様々な病気の可能性が出てくるので*2*3、再び運動の習慣を付けていかなければと思っている。

 

  • 夜型体質はおそらく遺伝なので、一生直らない*4

 

 これについては、もう完全に諦念である。いくら頑張って早寝をして朝8時頃に起きても、夕方まで眠すぎてふらついている。目が冴えてくるのは18時頃からで、0時過ぎくらいから絶好調な時間帯がやって来る。日が昇ってから寝付くととても眠りの質が良い。昼寝とかサイコー。

 

 もう、自分の生活リズムはこういうものなのだと悟った。だから、日中に他人に見えている自分の姿というのは覚醒した本来の姿ではないのである(いささか厨二くさいが)。

 

 

 以上、まあしょうもない知見ではあるものの、改めて思うのは、自分はわりかし単調な繰り返しの毎日に耐えられる性分なのだということである。そして、耐えられ過ぎる余り、人生が変化に乏しいいう欠点を抱えている。冒頭にも書いたが、深層心理では変化を望んでいるのである。あまり気負わずにちまちまと動いているうちに、何か良い方向への変化があればいいなあとささやかながら考えている。

 

*1:案外外に出ないほうがウイルスを貰ったりしないので病気にはならないのかもしれない。老親にコロナを伝染すわけにはいかないので、その点は良かった。

*2:風呂で頭を洗っている時に腹が支えると、さすがに鈍感な自分でもちょっとまずいという気持ちになる。

*3:加えて私は、異様なほどに血圧の測定値が安定しない。上が測るたびに120-160まで変化するので、自分が正常なのかヤバいのか分からず実に不安になる。

*4:ただ、遺伝だとして、うちの両親はともにバリバリの朝型だし、近しい親戚にもいなかったように思うので、もしかしたら違うのではという懸念もある。ひょっとすると適応できずに淘汰された血筋の者がいたのかもしれないが。

今年の目標なんかよりも大事なこと

気が付けば、今年も明けてから結構経ってしまった。

 

本来であれば、今年の目標など掲げようなどと考えていたのだけれど、どうにも書く気になれない。というのも、今の自分に必要なのは、なにか決められた目標を掲げてそれを達成することではなく、義務感からの開放だという思いがとても強くあるからなのだが。

 

今まで生きてきてウン十年、割と頑張りを要求される場面では人並以上には頑張ってきた方だと思う。その度に、周りがこちらに何かしら期待するようになっていくのをひしひしと感じた。その期待に応えれば応えるほど、ますます期待は大きくなっていき、いつしかそれは自分を束縛するものとなっていき、そしてある瞬間に、糸が切れたかのように、生きる気力を失くす……といった経験が、これまでの人生で3回ほどあった。その中でも今回のは深刻であり、もう回復不能に近いくらいの無気力状態に陥ってしまった。

 

そんな無気力の中で、やっと、気付いたのである。自分は束縛を奮起して乗り越えられるようなタイプではないということに。

 

全く逆なのだ。自分は、誰からも何も期待されていない状況においてこそ、奮起できる性分なのだ。

 

一般論として、他者からの期待を多く集め、その期待に応える成果を上げる人こそが素晴らしい人間なのだとされている。しかし、その裏で、期待されるほどにやる気を失い、何も期待されていない状態においてその実力を遺憾なく発揮できる類の人もいる。自分のように。

 

そのような性分である自分が生きやすい、行動しやすい環境は一般社会の中には期待できないだろう。だとすると、自分で環境を作るしかない。

 

とはいうものの、完全に社会的な義務から開放されるというのは、どだい無理である。生きていく以上は仕事は(普通の人よりは少ないが)しなけりゃ干上がるし、生活上省略できないことはいくつもある。それは受け入れるしかない。*1

 

ただ、新年度からは今よりも束縛は少なくなることは確実なので、その時期をひとつの節目として、今までとはちょっと生活を変えてみようかと思っている。

 

とりあえず、4月から1か月くらいは、ゲーム、読書、動画鑑賞(映画とかアニメとか)三昧の日々を送ろうかなどと考えている。*2特にここ半年くらいは、義務感と欲望との間で陰鬱になり、何も手につかない状況が続いた。その反動で、今はとにかく何かをインプットしたくて仕方がない。まあおそらくはインプットし続けていればアウトプットもしたくなるだろうから、そうなったら適当に思いのたけを書き散らしていこうと思う。

 

*1:ただし全力を出すつもりは毛頭無い。手を抜ける限りは手を抜く。

*2:これを堕落と言うなかれ。そのような考え方こそが、社会常識という既成概念に囚われた思考と言える。

クイズ番組大好きな日本人はだんだん馬鹿になっている気がする

 確か21世紀に入ったくらいから、テレビとは無縁の生活を送っているように記憶している。別段それで不自由でも、不便でもない。むしろ快適なくらいだ。

 ただ例外的に、夕食の時間は家族がテレビを点けているので、嫌でも視聴せざるをえない状況に置かれる。無論、一人の我儘で消させるなどということはしない。そこまで自分は神経質ではないし、そのくらいの分はわきまえている。

 

 そんなわけで、夜の7時台だけはボーッと画面を眺めているのだが、この時間帯はクイズ番組が多い*1。そしてどの番組も、どこまでも気の抜けたような問題ばかりが出題される。
 日本各地の観光名所の名前とか、城や寺社仏閣の名前とか、山とか花とか、毎週毎週飽きもせずに聞いては、名前くらいしか知らないタレントが大袈裟に間違えて笑いを取っている。
 上記の問題のジャンル、考えてみれば年寄りが好きそうなものばかりである。昨今はテレビなんぞ高齢者くらいしか見ないだろうし、やはり視聴者層の好みに合わせて作問しているのだろうか。そうしてみると、なんとなく番組自体が年寄りの認知症予防かなにかのためにあるかのように思えてくる。
 かと思えば、スポンサーの意向か知らないが、テーマパークのアトラクションの名前や、外食チェーンのメニューのランキングを当てさせたりと、そんなもんクイズにする意味があるのかと言いたくなるようなものが続く。が、もう見る側もそんなもんだという感じで諦めている。

 

 昔は各番組もう少し趣向を凝らして、それなりに面白いと思えるものもあったような記憶がある。
 大昔は単に知識と瞬発力で物を言わせるなるクイズ番組がほとんどだったが、それだけではない、知的エンタメのようなもののはしりとして、「平成教育委員会」(レギュラー放送は1991年-1997年)という番組があった*2。あの番組の画期的だった点は、解答者に知識だけでなく、特に理数系で重要になる論理的思考力を要求したところであると思う。きちんと筋道立てて説明できないと、勘で当てたくらいでは評価されない。その辺のシビアさが良かった。
 しかし、あの番組も理数系の難しめの問題は徐々に減っていったように記憶している。もしかすると、その時間帯だけ視聴率が落ちたなどの事情があったのかもしれない。視聴者からのクレームとしては「もっと簡単にしろ」は来るだろうが、「もっと難しくしろ」というのはあまり想像できない。どんどん幼稚化するのは、この手の番組の宿命なのかもしれない。
 その他にも、あの時代は「マジカル頭脳パワー!!」(1990年-1999年)とか「カルトQ」(1991年-1993年)とか、今思うと各番組それぞれ特色があったのだなあなどと考える*3。そこまで熱心に見ていたわけではないけど。

 

 7時台の番組だけ見て物申すのもおこがましいとは思うのだけど、知的エンタメや脳トレといったものが大好きなはずのわが国民は、どうも段々馬鹿になっているような気がする、と昨今のクイズ番組を見ていると思う。明らかに問題のレベルが下がっている。
 先日、某クイズ番組を見ていたら、「亀は爬虫類か両生類か?」という問題が出題され、しかもそれが難問扱いされていたのには、さすがに唖然とした。せめてイモリとヤモリくらいなら分からなくもないのだが。あんたらウン十年間亀が爬虫類と知らずに生きてきたのかと思わず顔も見えない視聴者を問い詰めたくなった*4
 音楽の問題にしても、童謡の歌詞の穴埋めとか(それは音楽ではなく国語の問題だろう)、鍵盤のソの音はどこでしょうとか、ト音記号を出してこれは何でしょうとか、くだらな過ぎて目をそむけたくなるような問題で延々ワイワイとやっている。
 後半の難しめな問題は、大抵「検索すればすぐ分かる」系である。都道府県別の農作物の収穫量とか、世界遺産に対応する国名とか。むしろ逐一覚えてられるかそんなもん。もう地理とか統計資料のようなググれば出るものは真面目に考える気になれない。
 他の番組も、だいたい似たり寄ったりな感じがする。もういちいち例を挙げるのも疲れるのでこの辺でやめておく。

 

 とまあつらつらと書いたが、ボケ防止にでも役立つのであれば、それはそれで結構なことだ。でも若い人は他のメディアでもっと知的なものにどんどん触れてほしい。

 

(ところでふと思ったのだが、もしかすると、問題のレベルの低さには、丹念に調べ上げた問題でも、後で専門家から突っ込みが入って訂正させられるくらいなら、誰でもそうと認めるような普遍的な事項を出題したほうがリスクが小さいという計算が働いているのかもしれない。ただでさえ間違いは即座にSNSなんかで吊るし上げられるご時世だし。だとしたら世知辛いなあ)

*1:そして私は未だに、くりぃむしちゅーの何とかいう人が司会をしている、火曜と水曜のクイズ番組の区別がついていない。

*2:それ以前にも「クイズ面白ゼミナール」(1981年-1988年)などもあったので、元祖というわけではないと思う。

*3:この辺、別にテレビ史を語りたいわけではないので、いいかげんである。

*4:とはいえ、これを書いている間、本当に爬虫類だよな?という疑念にかられたりもした。あの番組はこの辺の心理を巧みに利用しているのだろう。

退屈と情報過多との狭間で

 最近、どうにも頭が疲れていると感じることが多くなった。

 

 鏡で自分の顔を覗き込むと、見るからに疲れている。なんか全体的に黒っぽい。覇気というか、生気がない。
 人の配信や動画などを見ていると、疲れて仕方がない。騒々しいとか声がかん高いとかいう以前に、人の話し声が気に障ってくる。仰々しい文字で埋めつくされたサムネイルが並んでいる様を見ているだけで、なんだかげんなりしてくるのだから、意外に重症かもしれないと思い至った。


 デジタルデトックスという概念がある、ということを最近知った。ある程度の期間、情報を遮断することで、精神のバランスを保とうという考えなのだが、やはり脳に情報を流し込み続ける行為は精神の健全さという観点からはあまりよろしくないのかもしれない。

digitaldetox.jp

 思えば、自宅にインターネット回線が来てからというもの、ほとんど休みなく情報に触れてきた気がする。
 最初の頃はYahooを起点にあちこちホームページを覗いていたが、程なくして2chの存在を知り、これは凄いと入り浸り、やがて2chに翳りが見えてきた頃にニコニコ動画にはまり、そこからニコ生のゲーム配信をあちこち見るようになった。同じ頃Twitterにも手をつけ、ニコ生がYouTubeに客を取られ始めた頃VTuberというものを知り、徐々にYouTubeに鞍替えしていった――現在までの自分の遍歴は、こんなものである。
 とにかく、ネット上にある情報は摂取しなけりゃ損だとばかりに、あれやこれやと見て廻った。だいぶ節操もなく。
 そしてそれによって結果的に、大袈裟に言えば精神を蝕むこととなった。とにかく、さすがにちょっとまずいのではないか、というくらいに疲れるようになってきたのだ。

 

 インターネット開通以前はどうやって生活していたか、などと過去を振り返ってみたりもしている。
 その時代の情報源といえば第一にテレビだが、これは割と早くから自室にあった。ただ、齧り付くように見ていたという記憶はあまりない。視線や姿勢が固定され、他のことがやりづらくなるテレビ視聴よりも、聴くだけで済むラジオの方が好きだった。どちらにしろ、四六時中点けっ放しということはなかったように思う。それ以外は、雑誌や漫画を読むくらいのものか。
 その頃は、入ってくる情報はひどく限られていたので、必然的に、自分から何か動かなければ退屈になる時間というのができた。
 特に、日曜日の夜中が最悪だった。なにせテレビも、ラジオすらも放送を休止する(都会の事情は分からないが、田舎はそうだった)。たいして眠くもないというのに、やることがない。本棚には読んだ本しかない。もちろん友達に電話なんてできない。さらに悪いことに、部屋の明かりをつけていると、母親に怒られる。
 もはや、布団の中で目をつぶってひたすら眠くなるのを待つしかない。それは、絶望的ともいえるほどの、退屈だった。
 この感覚は、本当に、今の情報過多の時代しか知らない人達には想像もつかないのではないかと思う。
 そして今現在、自分が生活に隙間なく情報を取り込もうと体が動いてしまうのには、こういう時代を生きてきた反動もあるのかもしれない。退屈を感じなくなった今、退屈が存在したあの頃は贅沢な時代だったなどと不届きなことを思ったりもする。

 

 無料、あるいはちょっとの出費で、ほぼ無尽蔵の情報に触れることが可能となった今、人類はついに退屈を克服した、と言いたいところだが、そうでもないような気がする。
 これだけの情報に溢れていても、たまに若い人の口から「暇」という言葉が漏れているのを目にする。やれることがない、というよりは、やれることがあっても、目的のことができない状態、何をするべきか分からない状態であってもそう感じているっぽい。退屈の概念も徐々に変わってきているのだろうか。

 そして、退屈だ退屈だと言いながら、無為に情報を頭の中に流し込み続ける。間断なく。そりゃデジタルデトックスも必要になるわけである。

 

 疲弊しないためにはどうするか。個人的には、氾濫する情報とどのように距離を置くかということが重要だと思い、あれこれと策を弄する、というほどでもないが、以前よりかは考えつつ情報と接するようにしている。
 以下は、現在の私の「情報との接し方」であるが、私は現在精神的に相当に疲弊していることに注意してほしい。おそらく元気な人には何の参考にもならないと思う。

  • まず、動画や配信を見る時間はなるべく減らしている。以前は、ながら視聴なら別に構わないかなと思っていたのだが、それもやめた。ゲーム配信などは、大概必要以上に騒ぎ立てるので、長時間見ていると結構堪えるのである。
     音がなくて寂しいと感じた時は、radikoで音楽がよくかかる番組か、喋りの落ち着いた番組を聴くことが多い。あるいはアンビエント系のインターネットラジオもよく聴いている。
  • SNSは、X(旧Twitter)しかやっていないのだが、これはイーロン・マスクの幾多の愚策のお陰でTLが大変見辛いものになったため、自然と見る機会が減った。それでも、まだ気が付くと1時間やそこらはだらだらと読んでいたりすることがあるので、もっと意識的に減らさないとなあと思っている。
  • ネットの情報を深追いしない。あれもこれもとリンクを辿って読み漁ると覿面に疲れるので。ニュースや人の投稿も最初だけ見て、自分にあまり関係なかったり、興味が持てないようであれば、そこで打ち切る。
  • アウトプットの機会を増やす。この文章もそうだが、駄文でもなんでもいいので、とにかく書く。吐き出すと結構スッキリする。時には紙に思っていることを書き殴る。とにかく頭に受かんだことをそのまま(紙に、というのが重要)書いていくというのは、精神の健康にとても良いらしい。以下の書籍では、「モーニングページ」という名称で、朝起きてすぐに書くことを推奨している。

  • 睡眠時間を削らない。寝る時には必ず真っ暗にして、音を出すものは全部止めてから寝る。当たり前のように思えるかもしれないが、怠惰な生活をしていると案外この辺が疎かになっている。

 

 やはり人間、退屈な時間というのは精神の健康を保つ上で不可欠だ、というのが持論である。しかし、情報をシャワーのように浴びる時間と、退屈な時間との繰り返しだけでは、何ら面白いことは起こらない。くだらなくてもいいから、積極的なアウトプットを心掛けたいものである。

「すばらしい新世界」を読んでみたら想像と全然違った

(おことわり:以下は物語のネタバレを多分に含みますので、ご了承の上お読み下さい)

ハクスリーの「すばらしい新世界」は、所謂ディストピア小説の代表作として、オーウェルの「1984年」ほどではないにせよ、昨今はそこそこの知名度があるように思う。

私はこの作品については、故立花隆氏の東大生を相手にした講義を本にしたものの中で紹介されていたのをたまたま目にしたのが最初である。もう15年くらい前だろうか。確かそこではもうとにかく凄まじい作品であるようなことを言っていたように記憶している。「1984年」はもう読んでいたので、あれよりも凄いのかとちょっと気後れしていたのだが、今になってようやく手に取ってみる気になった。

世界設定はこんな感じ

時代はフォード紀元(AF)632年(フォードとはあの自動車王のヘンリー・フォードのことであり、この世界では神のごとく崇め奉られている)(※1)。人々の価値観は大きく変わってしまっていた。九年戦争と呼ばれた戦争で化学兵器・細菌兵器が大量投入され、壊滅的打撃を受けた人類は、平和のためには芸術や宗教は何の役にも立たないとその価値を見い出せなくなり、安定と幸福に至上の価値を置くようになったのである。この世界のモットーは"共同性(コミュニティ)、同一性(アイデンティティ)、安定性(スタビリティ)"である。

この時代の人類は、受精後瓶の中で人工的に育てられる。ボカノフスキー法により受精卵を安定的に増殖し、何十という多胎児を一度に(卵巣一つからは一万以上の人間が)生産可能となったため、同じ容姿の人間が何十人も存在している。

彼らは、生まれる前にすでに階級が決定している。階級は上からアルファ、ベータ、ガンマ、デルタ、エプシロンとなっており、それぞれはプラスやマイナス等さらに細分化される。上の階級の者は高度な知的職業に就くが、下の階級の者は知能や身体能力が低くなるような処置を施され、生涯単純労働の職に就くことになる。

彼らには生まれる前から、そして生まれた後もしばらくは「条件づけ教育」が施され、それによって生涯消えることのない反射的反応を備えることになる。それは仕事の環境を好ましいと感じることであったり、自分の階級に満足することであったりする(例えばアルファなら、デルタやエプシロンのようなみじめな境遇でなくてよかった、デルタやエプシロンならアルファやベータみたいに面倒な仕事をしなくて済んでよかった、とか)。

人間は人工的に誕生するため、親子関係というものが存在しない。父親や母親といった言葉は極度に猥褻なものとして忌避されている。

娯楽はそれなりに(というか、執筆された時代を考えるとかなり)存在する。労働は7時間半で終わるので、夜は余暇の時間として好きに使える。しかし条件づけの反応で、独りでいることを好まず、とにかく消費行動をするように仕向けられる。よってどこかの施設で消費的に娯楽を楽しむことになる。

恋愛は「奨励」されているが、特定の相手と長くつき合うことは良くないとされている。性的なことは忌避されず、むしろごく普通のこととして扱われる。フリーセックスが前提だし、小さい頃から「桃色お遊戯」(※2)が盛んに行われる。

ストレス解消手段としてのアルコールやドラッグは存在しない。その代わりとして「ソーマ」と呼ばれるものが支給される。これは副作用もなく、量を増やすほどに長時間の安息が得られた気分になるらしい。とにかく皆事あるごとにソーマを飲んでいる。

芸術や哲学や宗教は禁止されている。そもそも物事を「よく考える」ことが良くないこととされている。悩んだらとにかくソーマ。

アンチエイジングが発達しているため、誰もが若々しさを保っている。老いて醜くなることがない。60くらいで突然死ぬ(※3)が、死に対する恐怖も条件づけによって無くなっている。死後は火葬され、死体から回収されたリンは農業に再利用される。最後まで無駄がない。

主な登場人物

全編を通して登場する主人公といった存在は特になく、何人かの、この世界の有りように疑問を持つ人たちを巡って物語が進行していく。

前半から登場するバーナードは、外見が下の階級の人間に近いことにコンプレックスを持ち、周りと打ち解けられない。しかし後述するジョンと知り合いであることが切っ掛けで一躍時の人となり、大いにその立場に満足する。最初のうちこそ自分は体制と戦っているなどと思い込んでいるが、結局ちやほやされればそれで良しとする卑屈な男である。

バーナードの友人ヘルムホルツは、創造的才能を持ち、その才を活かした職に就き地位も名誉も得てはいるものの、更に面白いものを探求するうちに危険思想にはまってしまい、最終的に僻地の島に飛ばされる。しかしその境遇すらも楽しんでしまう余裕があり、出番は少ないがある意味最も主人公らしいといえる。ちなみにバーナードもとばっちりで最後にヘルムホルツと同じ目に遭っている。

バーナードが休暇で訪れた野蛮人居住区の住人ジョンは、かつてこの地に置き去りにされた文明人リンダの「息子」である。幼い頃からリンダに聞かされた文明の生活に憧れを持つ。また偶然手に入れたシェイクスピアの本を愛読し内容を完璧に記憶しており、会話でも頻繁にシェイクスピアを引用する。その外見、出自、思考から仲間たちから除け者にされている。バーナードの図らいでリンダと共にロンドンに連れて来られるが、それは野蛮人を研究するという名目であり、加えて自分らしく生きることに徹底して拘ったために珍獣のような扱いを受け、最後には耐えられずに自ら命を断ってしまう。

感想らしきもの

で、読んでみての印象だが、正直かなり拍子抜けした。

拍子抜けしたことの1つは、話に緊迫感のかけらもないことである。とにかく終始登場人物たちのドタバタ劇で話は進み、手に汗握るシーンなどこれっぽっちもない。終盤捕らわれて世界統制官との議論になるのだが、それとて終始和やかな雰囲気で、最後に「じゃ、君達僻地に飛ばすから」「おおそうか」みたいな感じで終わる。

やはり「1984年」のようなもの、という先入観が大きすぎたのかもしれない(まあそんなふうに先入観を持ったのはひとえに自分の責任なわけだけど)。がっかりした、というのとも違うのだが、このヌルさがまさか最後まで続くとは思っていなかった。

2つ目は、本当にこれはディストピア小説なのか?という疑問。なにしろこの世界の人々は誰も困ってもいないし苦しんでもいない。苦しむとすれば、バーナードやジョンやヘルムホルツのように「自分らしさ」を考えたり求めたりした者だけが苦しむのである。そしてそのように自分らしさを持ちたがる人にも改心や洗脳を行わずに暮らせる場所が(僻地だけど)用意してある。すべてにおいて、力によって解決を図ろうとしない。だから憎しみも生じない。読んでいて、この世界に嫌悪感をあまり抱かない。抱けない。かといって、積極的に身を投じたくなるような「『すばらしい』新世界」というわけでもなく、まあ、うまくいってるようだしこれもアリなんじゃない?というどこまでもふわっとした感想しか出てこない。

世界の成り立ちからして、そのような世界を望んだからそうなったのであって、別に野心的な者が征服・統一したわけでもない。ある意味、全世界規模で社会実験を行った結果である。現実にはもっと不確定要素が混入するだろうから、ちょっと思考実験が行き過ぎの感はあるが。そういえば解説に書いてあったのだが、これ以前のユートピアあるいはディストピア文学は、世界の成り立ちの経緯とか原因を端折って、突然顕現したとか発見されたとしたものが多いらしい。そういう意味では「すばらしい新世界」はかなり踏み込んだものだということだろうか。

などと、拍子抜けしたなんて言ったものの、むしろ色々考えさせられたという意味では読んだ意義は大きかったと思う。ディストピア小説とは、嫌悪感を抱かせるばかりではないということを教えてもらった。視野が広がった感じ。

注:

※1 物語の舞台は主にロンドンである。

※2 どういうお遊戯かは書かれていないのだが、まあ、だいたい察しはつく。

※3 言及されてはいないのだが、ソーマによって寿命が抑制されているのではと勘繰りたくなってしまった。

AquaSKKのキー操作を見直す(要PC用日本語キーボード)

はじめに

前回AquaSKKにAZITというローマ字入力方式を導入した。その際、qやlといったキー入力が両者で衝突してしまうことが問題として残った。今回は、 AquaSKK側のキー設定の変更と、Karabiner-Elementsの併用で、この問題を解決したい。

なお、今回はPC用の日本語キーボードの使用を前提として進めていく。理由は単に、現在筆者が使用しているMacBook Airのキーにガタが来たため、日本語109キーボード(何の変哲もない、1000円もしないUSB有線のやつ)を接続して使用しているからなのだが、他の種類のキーボードを使用している場合は適宜読み替えて頂きたい。加えて、(Macが古いということもあり)使用するKarabiner-Elementsのバージョンが12.10.0と少々古いことをご了承頂きたい。

Karabiner-Elementsは以下のリンクから入手できる。

karabiner-elements.pqrs.org

AquaSKK側の設定

まず前提として、AZITのローマ字変換を最大限活用するために、アルファベットを入力するキー操作は極力排除することとする。 PC用日本語キーボードのうちIME関連でよく使用されるのは「変換」「無変換」「カタカナ ひらがな ローマ字(以下かな)」「半角/全角 漢字(以下半角/全角)」の各キーなので、これらを使用する。

/Library/Input\ Methods/AquaSKK.app/Contents/Resources/keymap.confを~/Library/Application Support/AquaSKKにコピーして開いてみると、入力モードを変更するキー操作の項目は以下のように設定されている。

# ======================================================================
# event section
# ======================================================================

SKK_JMODE       ctrl::j

...

# ======================================================================
# attribute section(for SKK_CHAR)
# ======================================================================

ToggleKana      q 
ToggleJisx0201Kana  ctrl::q
SwitchToAscii       l
SwitchToJisx0208Latin   L

ctrl+jという操作も、ターミナル等で使われるのでしばしば競合が問題になる。この辺の操作はすべてどこか別のところに集約してしまいたいので、半角/全角キーを利用することにする。

半角/全角キーはMacでは「`」が割り当てられているので、keymap.confを以下のように書き換える。

# ======================================================================
# event section 
# ======================================================================

SKK_JMODE       alt::`

...

# ======================================================================
# attribute section(for SKK_CHAR)
# ======================================================================

ToggleKana      `
ToggleJisx0201Kana  ctrl::`             
SwitchToAscii       alt::shift::`           
SwitchToJisx0208Latin   ctrl::shift::`

要は重複しないように割り当てていけばいいのだが、組み合わせによっては「`」が画面に表示されてしまったりする。上記は数日の試行錯誤の結果である。

書き換えたら一旦保存して、AquaSKKの設定を再読み込みする。ひととおり操作してみて、問題なければ次へ進む。

Karabiner-Elements側の設定

次に、Karabiner-Elementsで設定した操作を各キーに割り当てる。Karabiner-Elementsは、複雑な操作はJSONファイルを直接書き換えて設定を行う。JSONファイルは~/.config/karabiner/karabiner.jsonを用いる。ディレクトリやファイルが無ければ自分で作るか、Karabiner-Elements内の設定を弄ると自動で作成される。

以下が、変更後のkarabiner.jsonである。complex_modificationsの中のrules以下を書き換えている。それ以外はほぼデフォルトのままである。ただしdevicesの中は環境によって異なるのでそのままコピーしないように注意。

{
    "global": {
        "check_for_updates_on_startup": true,
        "show_in_menu_bar": true,
        "show_profile_name_in_menu_bar": false
    },
    "profiles": [
        {
            "complex_modifications": {
                "parameters": {
                    "basic.simultaneous_threshold_milliseconds": 50,
                    "basic.to_delayed_action_delay_milliseconds": 500,
                    "basic.to_if_alone_timeout_milliseconds": 1000,
                    "basic.to_if_held_down_threshold_milliseconds": 500,
                    "mouse_motion_to_scroll.speed": 100
                },
                "rules": [
                    {
                        "description": "Change spacebar to left_shift. (Post spacebar if pressed alone)",
                        "manipulators": [
                            {
                                "from": {
                                    "key_code": "spacebar",
                                    "modifiers": {
                                        "optional": [
                                            "any"
                                        ]
                                    }
                                },
                                "to": [
                                    {
                                        "key_code": "left_shift"
                                    }
                                ],
                                "to_if_alone": [
                                    {
                                        "key_code": "spacebar"
                                    }
                                ],
                                "type": "basic"
                            }
                        ]
                    },
                    {
                        "manipulators": [
                            {
                                "description": "Change japanese_pc_xfer to left_alt+grave_accent_and_tilde.",
                                "from": {
                                    "key_code": "japanese_pc_xfer",
                                    "modifiers": {
                                        "optional": [
                                            "any"
                                        ]
                                    }
                                },
                                "to": [
                                    {
                                        "key_code": "grave_accent_and_tilde",
                                        "modifiers": [
                                            "left_alt"
                                        ]
                                    }
                                ],
                                "type": "basic"
                            }
                        ]
                    },
                    {
                        "manipulators": [
                            {
                                "description": "Change japanese_pc_nfer to left_alt+left_shift+grave_accent_and_tilde.",
                                "from": {
                                    "key_code": "japanese_pc_nfer",
                                    "modifiers": {
                                        "optional": [
                                            "any"
                                        ]
                                    }
                                },
                                "to": [
                                    {
                                        "key_code": "grave_accent_and_tilde",
                                        "modifiers": [
                                            "left_alt",
                                            "left_shift"
                                        ]
                                    }
                                ],
                                "type": "basic"
                            }
                        ]
                    },
                    {
                        "manipulators": [
                            {
                                "description": "Change japanese_pc_katakana to left_alt+grave_accent_and_tilde->grave_accent_and_tilde.",
                                "from": {
                                    "key_code": "japanese_pc_katakana",
                                    "modifiers": {
                                        "optional": [
                                            "any"
                                        ]
                                    }
                                },
                                "to": [
                                    {
                                        "key_code": "grave_accent_and_tilde",
                                        "modifiers": [
                                            "left_alt"
                                        ]
                                    },
                                    {
                                        "key_code": "grave_accent_and_tilde"
                                    }
                                ],
                                "type": "basic"
                            }
                        ]
                    }
                ]
            },
            "devices": [
                {
                    "disable_built_in_keyboard_if_exists": false,
                    "fn_function_keys": [],
                    "identifiers": {
                        "is_keyboard": true,
                        "is_pointing_device": false,
                        "product_id": 2,
                        "vendor_id": 7247
                    },
                    "ignore": false,
                    "manipulate_caps_lock_led": false,
                    "simple_modifications": []
                }
            ],
            "fn_function_keys": [
                {
                    "from": {
                        "key_code": "f1"
                    },
                    "to": {
                        "consumer_key_code": "display_brightness_decrement"
                    }
                },
                {
                    "from": {
                        "key_code": "f2"
                    },
                    "to": {
                        "consumer_key_code": "display_brightness_increment"
                    }
                },
                {
                    "from": {
                        "key_code": "f3"
                    },
                    "to": {
                        "key_code": "mission_control"
                    }
                },
                {
                    "from": {
                        "key_code": "f4"
                    },
                    "to": {
                        "key_code": "launchpad"
                    }
                },
                {
                    "from": {
                        "key_code": "f5"
                    },
                    "to": {
                        "key_code": "illumination_decrement"
                    }
                },
                {
                    "from": {
                        "key_code": "f6"
                    },
                    "to": {
                        "key_code": "illumination_increment"
                    }
                },
                {
                    "from": {
                        "key_code": "f7"
                    },
                    "to": {
                        "consumer_key_code": "rewind"
                    }
                },
                {
                    "from": {
                        "key_code": "f8"
                    },
                    "to": {
                        "consumer_key_code": "play_or_pause"
                    }
                },
                {
                    "from": {
                        "key_code": "f9"
                    },
                    "to": {
                        "consumer_key_code": "fast_forward"
                    }
                },
                {
                    "from": {
                        "key_code": "f10"
                    },
                    "to": {
                        "consumer_key_code": "mute"
                    }
                },
                {
                    "from": {
                        "key_code": "f11"
                    },
                    "to": {
                        "consumer_key_code": "volume_decrement"
                    }
                },
                {
                    "from": {
                        "key_code": "f12"
                    },
                    "to": {
                        "consumer_key_code": "volume_increment"
                    }
                }
            ],
            "name": "Default profile",
            "parameters": {
                "delay_milliseconds_before_open_device": 1000
            },
            "selected": true,
            "simple_modifications": [],
            "virtual_hid_keyboard": {
                "country_code": 0,
                "mouse_key_xy_scale": 100
            }
        }
    ]
}

ファイルを保存してKarabiner-Elementsを開き、Complex modificationsのルールが以下のようになっていることを確認する。

最初のルールは、スペースキーにShiftキーの役割を持たせる(SandS)設定で、Rulesに最初から入っている。不要であればRemoveで削除して構わない。 残りの3つの意味は、以下のようになる。

  • 変換キーに「左Alt + 全角/半角を押す」操作を割り当てる。
  • 無変換キーに「左Alt + 左Shift + 全角/半角を押す」操作を割り当てる。
  • かなキーに「左Alt+全角/半角を押した後、全角/半角を押す」操作を割り当てる。

ファイルを保存すると、上記の操作は即座に有効化される。JSONファイルに間違いがあった場合はLogにエラーが表示されるので、適宜修正を行う。

変更後のキー操作説明

さて、ここまでの設定を終えると、以下のようなキー操作になっている。

  • 変換キー:かなモードに移行(どのモードからでも有効)
  • 無変換キー:アスキーモードに移行(どのモードからでも有効)
  • かなキー:カナモードに移行(どのモードからでも有効)
  • 半角/全角キー:かなモード←→カナモードのトグル
  • Ctrl+半角/全角キー:かな(カナ)モード←→半角カナモードのトグル
  • Ctrl+Shift+半角/全角キー:全英モードに移行(かなモードまたはカナモードから)

要するに使用頻度が低そうなものほど複雑な操作を割り当てているわけだが、変換キーと無変換キーはMacでいうところのそれぞれかなキー、英数キーと同じ配置になるので分かりやすいと思う。また、SKKは本来一発でカナモードに入るキー操作はないのだが、かなキーにかなモード移行→トグルという操作を割り当てることで実現している。ただトグル変換(トグルキーを押すことで変換候補をカタカナに変換できる)が便利なので、慣れるとあまり使わなくなるかもしれない。

この設定の副作用として、Shift+変換キーでアスキーモード移行、Shift+@でかな←→カナのトグルが働いてしまう。どちらも特に致命的ではないし、まあ便利といえば便利かもしれない。

まだあった

あともう2つ、バッティングする設定があった。

EnterAbbrev     /       
EnterJapanese       Q  

EnterAbbrevは記号など特殊文字を入力するためのもので、ほとんど使うことはないと思われる(頻繁に使う記号なら辞書登録するはずだし)。とりあえず、余っている記号の「<」を割り当てる。 EnterJapaneseは何のためにあるのか最初よく分からなかったが、変換し忘れた語を後から変換したり、日付のように先頭の文字がかな(カナ)でないものを変換候補として入力するためのものらしい。これもあまり使わないような気がするのでCtrl+qあたりを割り当てておく。

EnterAbbrev     <                                    
EnterJapanese       ctrl::q

おわりに

これでようやくAZITの変換をフルに使えるようになった。もちろんこの設定がベストというわけではないし、使っているうちにまた不満やなんらかの不具合が出るかもしれない。何かあったら、折を見て修正していこうと思う。

AquaSKK版「AZIT」のローマ字テーブルを作ってみた

MacAquaSKK周りを快適にするために、色々と調べているうち、AZIKという入力方式があることを知った。

hp.vector.co.jp

AZIKは、ローマ字入力を最適化して打鍵数を減らし、速度を向上させるものであるとのこと。しかもAquaSKKには標準で付いてきている。この辺自分は全く無知であり、いわゆる普通のローマ字入力方式を長年使い続けてきたので、かなり興味をそそられた。

更に調べていくと、個人でAZIKの改良版を作成した方の記事が目にとまった。

fj.hatenablog.jp

作成者のfjkz氏によると、AZIKには「促音の打ちにくさ」「母音拡張のキー割り当ての不適切さ」「互換キーが過多」といった欠点があり、AZITはこれらを解消するとともに、従来どおりの子音の重ね打ち、句読点前の分かりきった母音の省略といった独自機能を備えている、とのこと。

かなり良さげに思えたが、自分はこれらを使いこんでいないため、どちらが優れているかを判断できる立場にはない。しかし選択肢は多いほうが良いだろうということで、有り難く使わせていただくことにし、勢いにまかせてAquaSKK用にAZITのローマ字変換テーブルを移植してみた(元はgoogle日本語入力用)。

以下ちょっと長いけどソース。

###
### azit.rule -- AZIKの改良版AZITの変換ルール
###

a,あ,ア,ア
e,え,エ,エ
i,い,イ,イ
o,お,オ,オ
u,う,ウ,ウ

cc,っ,ッ,ッ,c
ff,っ,ッ,ッ,f
kk,っ,ッ,ッ,k
pp,っ,ッ,ッ,p
qq,っ,ッ,ッ,q
ss,っ,ッ,ッ,s
tt,っ,ッ,ッ,t
vv,っ,ッ,ッ
xx,っ,ッ,ッ,x
zz,っ,ッ,ッ,z
;,っ,ッ,ッ

ds,で,デ,デ,s
gs,ぐ,グ,グ,s
ms,ま,マ,マ,s
ks,か,カ,カ,s
rs,ら,ラ,ラ,s
ts,と,ト,ト,s
ws,わ,ワ,ワ,s

cr,く,ク,ク,r
dr,ど,ド,ド,r
fr,ふ,フ,フ,r
gr,ぐ,グ,グ,r
kr,か,カ,カ,r
mr,ま,マ,マ,r
nr,な,ナ,ナ,r
pr,ぷ,プ,プ,r
rr,ら,ラ,ラ,r
sr,す,ス,ス,r
tr,と,ト,ト,r
wr,わ,ワ,ワ,r
yr,よ,ヨ,ヨ,r

gt,ご,ゴ,ゴ,t
kt,こ,コ,コ,t
mt,ま,マ,マ,t
wt,わ,ワ,ワ,t

dk,で,デ,デ,k
sk,し,シ,シ,k
tk,と,ト,ト,k
wk,わ,ワ,ワ,k

lp,る,ル,ル,p
np,ん,ン,ン,p
mp,ん,ン,ン,p
sp,す,ス,ス,p
tp,と,ト,ト,p

dz,であ,デア,デア,r

ck,っく,ック,ック
cs,くす,クス,クス
ct,くと,クト,クト
ft,ふと,フト,フト
xt,くすと,クスト,クスト
sc,すく,スク,スク
st,すと,スト,スト
lc,るく,ルク,ルク
lk,るく,ルク,ルク
lt,ると,ルト,ルト
nc,んく,ンク,ンク
nk,んく,ンク,ンク
nt,んと,ント,ント
rc,ーく,ーク,ーク
rk,ーく,ーク,ーク
rt,ーと,ート,ート
rp,ーぷ,ープ,ープ
ps,っぷす,ップス,ップス
pt,ぷと,プト,プト

b;,ぶ,ブ,ブ
c;,っく,ック,ック
d;,っど,ッド,ッド
f;,ふ,フ,フ
g;,っぐ,ッグ,ッグ
h;,う,ウ,ウ
k;,っく,ック,ック
l;,る,ル,ル
m;,む,ム,ム
n;,ん,ン,ン
p;,っぷ,ップ,ップ
q;,っく,ック,ック
r;,ー,ー,ー
s;,す,ス,ス
t;,っと,ット,ット
w;,ー,ー,ー
x;,っくす,ックス,ックス
y;,い,イ,イ
z;,ず,ズ,ズ

b.,ぶ。,ブ。,ブ。
d.,だ。,ダ。,ダ。
g.,ぐ。,グ。,グ。
k.,く。,ク。,ク。
m.,む。,ム。,ム。
n.,ん。,ン。,ン。
r.,る。,ル。,ル。
s.,す。,ス。,ス。
t.,た。,タ。,タ。
v.,ぶ。,ブ。,ブ。
z.,ず。,ズ。,ズ。

b&comma;,ば、,バ、,バ、
d&comma;,で、,デ、,デ、
g&comma;,が、,ガ、,ガ、
h&comma;,は、,ハ、,ハ、
j&comma;,じ、,ジ、,ジ、
k&comma;,く、,ク、,ク、
g&comma;,み、,ミ、,ミ、
n&comma;,に、,ニ、,ニ、
r&comma;,り、,リ、,リ、
s&comma;,し、,シ、,シ、
t&comma;,て、,テ、,テ、
v&comma;,び、,ビ、,ビ、
z&comma;,ず、,ズ、,ズ、

va,あ,ア,ア
vb,おん,オン,オン
vd,えん,エン,エン
ve,え,エ,エ
vf,あい,アイ,アイ
vg,いん,イン,イン
vh,おう,オウ,オウ
vi,い,イ,イ
vl,えい,エイ,エイ
vm,うん,ウン,ウン
vn,あん,アン,アン
vo,お,オ,オ
vu,う,ウ,ウ
vw,びゅー,ビュー,ビュー
vy,あい,アイ,アイ

ba,ば,バ,バ
bb,ぼん,ボン,ボン
bd,べん,ベン,ベン
be,べ,ベ,ベ
bf,ばい,バイ,バイ
bg,びん,ビン,ビン
bh,ぼう,ボウ,ボウ
bi,び,ビ,ビ
bl,べい,ベイ,ベイ
bm,ぶん,ブン,ブン
bn,ばん,バン,バン
bo,ぼ,ボ,ボ
bu,ぶ,ブ,ブ
bv,びょう,ビョウ,ビョウ
bw,ぶう,ブウ,ブウ
by,ばい,バイ,バイ

ca,ちゃ,チャ,チャ
cb,ちょん,チョン,チョン
cd,ちぇん,チェン,チェン
ce,ちぇ,チェ,チェ
cf,ちゃい,チャイ,チャイ
cg,ちん,チン,チン
ch,ちょう,チョウ,チョウ
ci,ち,チ,チ
cl,ちぇい,チェイ,チェイ
cm,ちゅん,チュン,チュン
cn,ちゃん,チャン,チャン
co,ちょ,チョ,チョ
cu,ちゅ,チュ,チュ
cv,ちょう,チョウ,チョウ
cw,ちゅう,チュウ,チュウ
cy,ちゃい,チャイ,チャイ

da,だ,ダ,ダ
db,どん,ドン,ドン
dd,でん,デン,デン
de,で,デ,デ
df,だい,ダイ,ダイ
dg,でぃん,ディン,ディン
dh,どう,ドウ,ドウ
di,でぃ,ディ,ディ
dl,でい,デイ,デイ
dm,づん,ヅン,ヅン
dn,だん,ダン,ダン
do,ど,ド,ド
du,づ,ヅ,ヅ
dw,どぅ,ドゥ,ドゥ
dy,だい,ダイ,ダイ

fa,ふぁ,ファ,ファ
fb,ふぉん,フォン,フォン
fd,ふぇん,フェン,フェン
fe,ふぇ,フェ,フェ
fg,ふぃん,フィン,フィン
fh,ふぉー,フォー,フォー
fi,ふぃ,フィ,フィ
fl,ふぇい,フェイ,フェイ
fm,ふん,フン,フン
fn,ふぁん,ファン,ファン
fo,ふぉ,フォ,フォ
fu,ふ,フ,フ
fv,ふゅー,フュー,フュー
fw,ふう,フウ,フウ
fy,ふぁい,ファイ,ファイ

ga,が,ガ,ガ
gb,ごん,ゴン,ゴン
gd,げん,ゲン,ゲン
ge,げ,ゲ,ゲ
gf,がい,ガイ,ガイ
gg,ぎん,ギン,ギン
gh,ごう,ゴウ,ゴウ
gi,ぎ,ギ,ギ
gl,げい,ゲイ,ゲイ
gm,ぐん,グン,グン
gn,がん,ガン,ガン
go,ご,ゴ,ゴ
gu,ぐ,グ,グ
gv,ぎょう,ギョウ,ギョウ
gw,ぐう,グウ,グウ
gy,がい,ガイ,ガイ

ha,は,ハ,ハ
hb,ほん,ホン,ホン
hd,へん,ヘン,ヘン
he,へ,ヘ,ヘ
hf,はい,ハイ,ハイ
hg,ひん,ヒン,ヒン
hh,ほう,ホウ,ホウ
hi,ひ,ヒ,ヒ
hl,へい,ヘイ,ヘイ
hm,ひゅん,ヒュン,ヒュン
hn,はん,ハン,ハン
ho,ほ,ホ,ホ
hu,ひゅ,ヒュ,ヒュ
hv,ひょう,ヒョウ,ヒョウ
hw,ひゅー,ヒュー,ヒュー
hy,はい,ハイ,ハイ

ja,じゃ,ジャ,ジャ
jb,じょん,ジョン,ジョン
jd,じぇん,ジェン,ジェン
je,じぇ,ジェ,ジェ
jf,じゃい,ジャイ,ジャイ
jg,じん,ジン,ジン
jh,じょう,ジョウ,ジョウ
ji,じ,ジ,ジ
jl,じぇい,ジェイ,ジェイ
jm,じゅん,ジュン,ジュン
jn,じゃん,ジャン,ジャン
jo,じょ,ジョ,ジョ
ju,じゅ,ジュ,ジュ
jv,じょう,ジョウ,ジョウ
jw,じゅう,ジュウ,ジュウ
jy,じゃい,ジャイ,ジャイ

ka,か,カ,カ
kb,こん,コン,コン
kd,けん,ケン,ケン
ke,け,ケ,ケ
kf,かい,カイ,カイ
kg,きん,キン,キン
kh,こう,コウ,コウ
ki,き,キ,キ
kl,けい,ケイ,ケイ
km,くん,クン,クン
kn,かん,カン,カン
ko,こ,コ,コ
ku,く,ク,ク
kv,きょう,キョウ,キョウ
kw,くう,クウ,クウ
ky,かい,カイ,カイ

la,りゃ,リャ,リャ
lb,りょん,リョン,リョン
ld,れん,レン,レン
le,れ,レ,レ
lf,りゃい,リャイ,リャイ
lg,りん,リン,リン
lh,りょう,リョウ,リョウ
li,り,リ,リ
ll,れい,レイ,レイ
lm,りゅん,リュン,リュン
ln,りゃん,リャン,リャン
lo,りょ,リョ,リョ
lu,りゅ,リュ,リュ
lv,りょう,リョウ,リョウ
lw,りゅう,リュウ,リュウ
ly,りゃい,リャイ,リャイ

ma,ま,マ,マ
mb,もん,モン,モン
md,めん,メン,メン
me,め,メ,メ
mf,まい,マイ,マイ
mg,みん,ミン,ミン
mh,もう,モウ,モウ
mi,み,ミ,ミ
ml,めい,メイ,メイ
mm,むん,ムン,ムン
mn,まん,マン,マン
mo,も,モ,モ
mu,む,ム,ム
mv,みょう,ミョウ,ミョウ
mw,むう,ムウ,ムウ
my,まい,マイ,マイ

na,な,ナ,ナ
nb,のん,ノン,ノン
nd,ねん,ネン,ネン
ne,ね,ネ,ネ
nf,ない,ナイ,ナイ
ng,にん,ニン,ニン
nh,のう,ノウ,ノウ
ni,に,ニ,ニ
nl,ねい,ネイ,ネイ
nm,ぬん,ヌン,ヌン
nn,ん,ン,ン
no,の,ノ,ノ
nu,ぬ,ヌ,ヌ
nv,にょう,ニョウ,ニョウ
nw,にゅう,ニュウ,ニュウ
ny,ない,ナイ,ナイ

pa,ぱ,パ,パ
pb,ぽん,ポン,ポン
pd,ぺん,ペン,ペン
pe,ぺ,ペ,ペ
pf,ぱい,パイ,パイ
pg,ぴん,ピン,ピン
ph,ぽう,ポウ,ポウ
pi,ぴ,ピ,ピ
pl,ぺい,ペイ,ペイ
pm,ぷん,プン,プン
pn,ぱん,パン,パン
po,ぽ,ポ,ポ
pu,ぷ,プ,プ
pv,ぴょう,ピョウ,ピョウ
pw,ぴゅー,ピュー,ピュー
py,ぱい,パイ,パイ

qa,きゃ,キャ,キャ
qb,きょん,キョン,キョン
qd,くぇん,クェン,クェン
qe,くぇ,クェ,クェ
qf,きゃい,キャイ,キャイ
qg,くぃん,クィン,クィン
qh,きょう,キョウ,キョウ
qi,くぃ,クィ,クィ
ql,くぇい,クェイ,クェイ
qm,きゅん,キュン,キュン
qn,きゃん,キャン,キャン
qo,きょ,キョ,キョ
qu,きゅ,キュ,キュ
qv,きょう,キョウ,キョウ
qw,きゅう,キュウ,キュウ
qy,きゃい,キャイ,キャイ

ra,ら,ラ,ラ
rb,ろん,ロン,ロン
rd,れん,レン,レン
re,れ,レ,レ
rf,らい,ライ,ライ
rg,りん,リン,リン
rh,ろう,ロウ,ロウ
ri,り,リ,リ
rl,れい,レイ,レイ
rm,るん,ルン,ルン
rn,らん,ラン,ラン
ro,ろ,ロ,ロ
ru,る,ル,ル
rv,りょう,リョウ,リョウ
rw,るう,ルウ,ルウ
ry,らい,ライ,ライ

sa,さ,サ,サ
sb,そん,ソン,ソン
sd,せん,セン,セン
se,せ,セ,セ
sf,さい,サイ,サイ
sg,しん,シン,シン
sh,そう,ソウ,ソウ
si,し,シ,シ
sl,せい,セイ,セイ
sm,すん,スン,スン
sn,さん,サン,サン
so,そ,ソ,ソ
su,す,ス,ス
sv,しょう,ショウ,ショウ
sw,すう,スウ,スウ
sy,さい,サイ,サイ

ta,た,タ,タ
tb,とん,トン,トン
td,てん,テン,テン
te,て,テ,テ
tf,たい,タイ,タイ
tg,ちん,チン,チン
th,とう,トウ,トウ
ti,ち,チ,チ
tl,てい,テイ,テイ
tm,つん,ツン,ツン
tn,たん,タン,タン
to,と,ト,ト
tu,つ,ツ,ツ
tw,つう,ツウ,ツウ
ty,たい,タイ,タイ

wa,わ,ワ,ワ
wb,うぉん,ウォン,ウォン
wd,うぇん,ウェン,ウェン
we,うぇ,ウェ,ウェ
wf,わい,ワイ,ワイ
wg,うぃん,ウィン,ウィン
wh,うぉー,ウォー,ウォー
wi,うぃ,ウィ,ウィ
wl,うぇい,ウェイ,ウェイ
wn,わん,ワン,ワン
wo,を,ヲ,ヲ
wu,う,ウ,ウ
wy,わい,ワイ,ワイ

xa,しゃ,シャ,シャ
xb,しょん,ション,ション
xd,しぇん,シェン,シェン
xe,しぇ,シェ,シェ
xf,しゃい,シャイ,シャイ
xg,しん,シン,シン
xh,しょう,ショウ,ショウ
xi,し,シ,シ
xl,しぇい,シェイ,シェイ
xm,しゅん,シュン,シュン
xn,しゃん,シャン,シャン
xo,しょ,ショ,ショ
xu,しゅ,シュ,シュ
xv,しょう,ショウ,ショウ
xw,しゅう,シュウ,シュウ
xy,しゃい,シャイ,シャイ

ya,や,ヤ,ヤ
yb,よん,ヨン,ヨン
yf,やい,ヤイ,ヤイ
yh,よう,ヨウ,ヨウ
ym,ゆん,ユン,ユン
yn,やん,ヤン,ヤン
yo,よ,ヨ,ヨ
yu,ゆ,ユ,ユ
yv,よう,ヨウ,ヨウ
yw,ゆう,ユウ,ユウ
yy,やい,ヤイ,ヤイ

za,ざ,ザ,ザ
zb,ぞん,ゾン,ゾン
zd,ぜん,ゼン,ゼン
ze,ぜ,ゼ,ゼ
zf,ざい,ザイ,ザイ
zg,じん,ジン,ジン
zh,ぞう,ゾウ,ゾウ
zi,じ,ジ,ジ
zl,ぜい,ゼイ,ゼイ
zm,ずん,ズン,ズン
zn,ざん,ザン,ザン
zo,ぞ,ゾ,ゾ
zu,ず,ズ,ズ
zw,ずう,ズウ,ズウ
zy,ざい,ザイ,ザイ

bja,びゃ,ビャ,ビャ
bje,びぇ,ビェ,ビェ
bji,びぃ,ビィ,ビィ
bjo,びょ,ビョ,ビョ
bju,びゅ,ビュ,ビュ

dja,ぢゃ,ヂャ,ヂャ
dje,ぢぇ,ヂェ,ヂェ
dji,ぢ,ヂ,ヂ
djo,ぢょ,ヂョ,ヂョ
dju,でゅ,デュ,デュ

fja,ふゃ,フャ,フャ
fje,ふぇ,フェ,フェ
fji,ふぃ,フィ,フィ
fjo,ふょ,フョ,フョ
fju,ふゅ,フュ,フュ

gja,ぎゃ,ギャ,ギャ
gje,ぎぇ,ギェ,ギェ
gji,ぎぃ,ギィ,ギィ
gjo,ぎょ,ギョ,ギョ
gju,ぎゅ,ギュ,ギュ

hja,ひゃ,ヒャ,ヒャ
hje,ひぇ,ヒェ,ヒェ
hji,ひぃ,ヒィ,ヒィ
hjo,ひょ,ヒョ,ヒョ
hju,ひゅ,ヒュ,ヒュ

mja,みゃ,ミャ,ミャ
mje,みぇ,ミェ,ミェ
mji,みぃ,ミィ,ミィ
mjo,みょ,ミョ,ミョ
mju,みゅ,ミュ,ミュ

nja,にゃ,ニャ,ニャ
nje,にぇ,ニェ,ニェ
nji,にぃ,ニィ,ニィ
njo,にょ,ニョ,ニョ
nju,にゅ,ニュ,ニュ

pja,ぴゃ,ピャ,ピャ
pje,ぴぇ,ピェ,ピェ
pji,ぴぃ,ピィ,ピィ
pjo,ぴょ,ピョ,ピョ
pju,ぴゅ,ピュ,ピュ

tja,つぁ,ツァ,ツァ
tje,つぇ,ツェ,ツェ
tji,てぃ,ティ,ティ
tjo,つぉ,ツォ,ツォ
tju,とぅ,トゥ,トゥ

vja,ヴぁ,ヴァ,ヴァ
vje,ヴぇ,ヴェ,ヴェ
vji,ヴぃ,ヴィ,ヴィ
vjo,ヴぉ,ヴォ,ヴォ
vju,ヴぅ,ヴゥ,ヴゥ

wja,うぁ,ウァ,ウァ
wje,ゑ,ヱ,ウェ
wji,ゐ,ヰ,ウィ
wjo,うぉ,ウォ,ウォ
wju,うぅ,ウゥ,ウゥ

@a,ぁ,ァ,ァ
@e,ぇ,ェ,ェ
@i,ぃ,ィ,ィ
@ka,ヵ,ヵ,カ
@ke,ヶ,ヶ,ケ
@o,ぉ,ォ,ォ
@tu,っ,ッ,ッ
@u,ぅ,ゥ,ゥ
@ya,ゃ,ャ,ャ
@yo,ょ,ョ,ョ
@yu,ゅ,ュ,ュ
@;,;,;,;
@:,:,:,:
v;,;,;,;
v:,:,:,:

&comma;,、,、,、
-,ー,ー,ー
:,ー,ー,ー
.,。,。,。
/,・,・,・
~,〜,〜,〜
[,「,「,「
],」,」,」
{,『,『,『
},』,』,』

上のコードは元のルールに忠実であるが、自分は、これに多少追加・修正をしている。

まず「ヴァ」行はjがない方が馴染みのある形のように思われるのと、元のルールでv+母音があ〜おとあ行の二重母音の変換に対応しているのがあまり打鍵数の削減にならなそうに思われたので、ここはvで始まる2文字の変換を全部「ヴァ」行で統一してみた。また、ひらがなの欄は元は「ヴ」のみカタカナだが、これをひらがなに差し替えた。二重母音は後でもう少し検討したい。

va,う゛ぁ,ヴァ,ヴァ
vb,う゛ぉん,ヴォン,ヴォン
vd,う゛ぇん,ヴェン,ヴェン
ve,う゛ぇ,ヴェ,ヴェ
vf,う゛ぁい,ヴァイ,ヴァイ
vg,う゛ぃん,ヴィン,ヴィン
vh,う゛ぉう,ヴォウ,ヴォウ
vi,う゛ぃ,ヴィ,ヴィ
vl,う゛ぇい,ヴェイ,ヴェイ
vm,う゛ん,ヴン,ヴン
vn,う゛ぁん,ヴァン,ヴァン
vo,う゛ぉ,ヴォ,ヴォ
vu,う゛,ヴ,ヴ
vw,う゛ゅー,ヴュー,ヴュー
vy,う゛ぁい,ヴァイ,ヴァイ

元のルールをよーく見てみると、マイナス(-)とコロン(:)が同じ変換になっている。そこでコロンに「ん」を割り当ててみた。

:,ん,ン,ン

これで 削除した「あん」や「いん」等の変換にも対応できる。ただ懸念されている「小指の酷使」に繋がってしまう恐れもある。これはしばらく使ってみて判断しようと思う。

あとは小説などで多用する3点リーダー(…)、ダッシュ(—)、全角スペース等の記号類を@で始まる変換に追加している。元のルールでは同じものをvで始まる変換にも対応させているが、既に埋まっているものもあるので空いているところだけ入れてみた。

@h,←,←,←
@j,↓,↓,↓
@k,↑,↑,↑
@l,→,→,→
@-,―,―,―
@/,…,…,…
@&space;, , , 
@@,@,@,@
v-,―,―,―
v/,…,…,…
v&space;, , , 
v@,@,@,@

注意することとして、AquaSKKだと「キー、全角ひらがなの出力、全角カタカナの出力、半角カタカナの出力、次状態(省略可)」という記述になることと、カンマは&comma;、スペースは&space;というエスケープ文字に直さないといけない。なおエスケープ文字については公式の解説も間違っているので注意すること。

あとは記述したファイルを拡張子.ruleとして~/Library/Application Support/AquaSKKに保存し、AquaSKKの設定項目にチェックを入れればOK…なのだが、何箇所かつまずいたのでメモとして残しておく。お使いの環境や手順によってはもっとすんなりと進むかもしれない。

まず、*.ruleファイルはエンコードEUC-JP、改行がLFである必要がある。試しにAquaSKK.app内のazik.ruleをコピーしたものをVimで開くと見事に文字化けしていた。

:set fenc?

で判別するとutf-8と返ってくる。実に怪しい。怪しいのでnkfでも調べてみる。

$nkf --guess azik.rule

すると今度はEUC-JP (LF)と返ってきた。なんかこっちが正しい予感がしたのでVimの文字エンコードを変更してみる。

:e ++enc=euc-jp

はい、文字化け解消。

どうも文字エンコードの判定に関してはVimはあまり信用ならない。

で、ここからガシガシと打ち込み、いざ保存しようとしたらなんかエラーが。

後で調べたら特殊文字を使うと出るエラーのようで、とにかくエンコードの欄を空白にしないとセーブさせないと言ってくる。 仕方ないのでここは譲歩して、

:set fenc=

とだけ入力して名前は適当にtest.ruleとして保存してから、nkfEUC-JPに変換。

$nkf -e test.rule > azit.rule

もう1つ、sub-rule.descという補助変換ルール説明ファイルがあると分かりやすくなるのでそれを作成。

 ###
 ### sub-rule.desc -- 補助変換ルール説明ファイル
 ###
 
 azit.rule       AZITを有効にする

作成した2つのファイルを~/Library/Application Support/AquaSKKに保存し、AquaSKKの設定から「拡張設定」タブを開くと「AZITを有効にする」という項目があるのでチェックを入れる。するとすぐにAZITが有効になる。

できた、と思いきや、何かおかしい。よく見てみると、半角カタカナモードにしても全角文字が表示される。

azit.ruleを開いてみると、半角で入力したところが全部全角に置き代わっていた。

さらに調べたところ、どうやらnkf文字コード変換する際は、-xというオプションを付けないと半角が維持されないらしい。なんじゃそりゃ。

もう一度変換し直し。元ファイルを残しておいて助かった。

$ nkf -ex test.rule > azit.rule

そして、今度こそ正常に入力できていることを確認。めでたしめでたし。

…と言いたいところだが、肝心なことを忘れていた。

SKKキーバインドでは、qをひらがな←→カタカナのトグル、lを半角英数モードへの遷移、Lを全角英数モードへの遷移に割り当てている。AZITではqとlから始まる変換を多用しているため、これらがバッティングしてしまう。

となると、キー操作周りも色々と弄る必要があるのだが、どうせなら全部楽な配置に設定しようと思う。が、長くなるので続きはまた次回に。