Migdal

Cover image for 【効率化】オリジナルキーボード作成アプリを使おう【解説】
ザバ
ザバ

Posted on

【効率化】オリジナルキーボード作成アプリを使おう【解説】

 はじめまして、ザバと申します。

 今回はiOSユーザーである私が使用している、架空言語(人工言語)の創作の助けになること間違い無しのキーボード自作アプリ「Keybuild」についての解説をまとめていきます。

目次

0. はじめに

 まず、なぜ私がこの記事を書こうと思ったのかについてここに記しておきます。また、以下に頻出する「架空言語」という表現は一般的に言われる「人工言語」と同義であるとします。

 私は架空言語を創作する際、最初に音韻や使用する文字から決めていき、その次に文法の制定や造語をするという順番で作っています。私の場合は架空世界創作の一環として架空言語創作を行っており、架空世界独自の文字体系の創作も予定しています。

 しかしながら、創作した架空文字をこのように機械上で処理し使用できるようにするためには、多大な手間と時間を要するはずです。そのため私は架空文字の創作に先駆けて、架空言語の翻字法の制定という体で正書法(私は特別にその正書法のことを翻字体系と呼称しています)を設定することにしています。

 ところで皆さんは、架空言語の表記にどの文字体系を使用していますか? これは私の主観ですが、おそらくラテン文字を使用して言語を創作する方が大多数を占めているものかと思います。しかしその一方で、英語用アルファベット26文字以外の文字(Ç, Ł, Æ, Þなどの拡張ラテン文字、キリル文字やギリシャ文字などの多種多様な文字体系)を使用する方も多くいらっしゃるように見受けられます。

 かく言う私もその中の一人で、架空言語で使用する多種多様な文字を入力するためだけにたくさんの言語のキーボードをiPhoneで使用しています。たった今確認したところ、私のiPhoneには40ものキーボードが入っていました。
 
 ただ、やはりキーボードの切り替えの手間というのはどうしてもネックになりがちで、逐一煩わしさを感じずにはいられません。さらにキーボードとして用意されていない文字の入力をするとなると、その都度その都度コピー&ペーストをしなければならず、そうなるともう架空言語創作そのものがストレスになりかねません。

 さて、どうしたものか。そこで私は他社製キーボードに希望を見出し、App Storeで「keyboard app」と検索を掛けました。その後の経緯はザックリと省略しますが、紆余曲折を経て私はとあるアプリの存在を知ります。そのアプリの名前こそ、Keybuild。これによって私の架空言語創作に対するストレスは無くなり、さらに円滑に趣味を楽しめるようになりました。Oh, thank god...

Keybuildの機能

 ……前置きが長くなってしまいましたが、このKeyboardというアプリではその名前が示唆するように「自作のキーボードの作成」が行えます。具体的には以下のような機能があり、かなり架空言語創作に有用であると私は考えます。

  1. 入力キーに任意の文字(ダイアクリティカルマークなどの付加記号も含む)を2つ以上充てることができる。
  2. 原則としてひとつのキーボードに含められる文字数に制限が無い。
  3. Shift入力や長押し入力に対応しており、1つのキーで4種類の文字が扱える。
  4. キーボードのレイアウトを自分でカスタマイズすることができる。
  5. キーボードを何種類も作成することができる。
  6. 作成したキーボードをKeybuildアプリの中で一括管理しており、複数のキーボードを入力中に切り替えることができる。
  7. インターネット上で検索しなくても、アプリ内にある「Symbol browser」という機能を使えばUnicode上に登録された文字をいつでも呼び出すことができる。

 上記の機能は実際便利なものであり、架空言語創作ではなく自作の英字キーボードを作るといったような使い方にももってこいです。というか多分アプリのデベロッパーさんはそっちの用途の方を考えていると思うけど。

Keybuildではできないこと

 一方で確認して頂かなければならないことがあります。このKeybuildというアプリは存在からしてとても優秀ですが、もちろん何でもできるわけではありません。

できないこと 備考
キーボードデザインの変更 iOSキーボードをベースにしたデザインで統一されている
日本語キーボードのような文字変換 仮名文字や漢字を個別で設定することはできるが、漢字変換には対応していない
その他、複数の文字を組み合わせて変換する機能 ローマ字かな入力、ハングル字母の組立て入力のどちらも対応していない

 上記の通り、いずれの変換入力にも対応していないため、日本語、中国語、韓国語の入力には必ずしも適さないということに留意してください。このアプリはSimejiの代わりにはなりません。

1. 入手・操作方法

 本題に入る前にまず、このキーボード作成アプリ「Keybuild」は有料アプリです。無料ではありません。無料で利用できる他社製キーボードについての紹介はその他の便利なアプリを参照してください。

アプリを入手する

 KeybuildはiOS向けのキーボード作成アプリで、App Storeから購入することができます。

Android版は私が探した限りでは見つかりませんでした。執筆時現在値段は650円となっていて、年齢制限も課金要素もありません。いわゆる買い切りで手に入れられます。

Image description

 購入手順はその他のAppと同様で、Appleアカウントに紐付けされた残高を使用して購入します。インストールが完了したら、まずはアプリを起動してみましょう。

操作方法

 アプリを起動するとこのようなホーム画面が表示されます。

Image description

 ホーム画面の先頭にあるように、以降この記事では作成するキーボードのことをPaneと呼ぶこととします。また、詳しい内容の解説や和訳はここでは省略します。

 まず、画面中央から下半分にかけて表示されているのはアプリに入っているデフォルトのPaneです。インストール後、設定アプリ>Keybuild>キーボード>フルアクセスを許可 とすることでKeybuildの中のすべてのPaneをキーボードとして使用することができるようになります。

Image description

 画面上部の「Edit」という文字を押すと、表示されているPaneを並び替えることができます。

 右側の白い箱から矢印が伸びているマークを押すと、作成したPaneを一括してエクスポートとインポート、つまりバックアップを作成したり呼び戻したりすることができます。バックアップはフォルダアプリの中に格納されます。

 +マークを押すと、Paneを増やすことができます。"Add empty pane" を押すと空白のPaneを作成できるほか、他の項目を押すと一度削除したデフォルトのPaneを呼び戻すことができます。

 一番上の「Getting started」ではキーボードの有効化、アプリの挙動などに関して英語で書かれた説明を読むことができます。

「Settings」ではキーボードの高さや自動大文字入力、ピリオドのショートカット入力などについての設定が可能です。ここから設定アプリのフルアクセスの許可の画面へジャンプすることもできます。

「Symbol browser」では、Unicodeに登録してある膨大な文字の中から任意の文字を検索し、クリップボードにコピーすることができます。ただし、ここで検索する言葉はUnicodeの登録名でないといけません。

 下図は実際の検索画面の様子です。語句検索をしなくても画面にはU+0000~U+2FA1Fまでの文字がUnicode順に一覧表示されていますが、任意の文字を検索するには語句検索をする方が賢明だと思います。ちなみに文字入力スペースの下段にあるボタンを押すと、一覧表示したままそれぞれ対応するブロックへジャンプします。

Image description

Image description

 いよいよ次はキーボードの作成についての解説です。張り切っていきましょう!

2. キーボードを作成する

 さて、ここにきてようやくゼロからキーボードを作りだすワケですが、最初は操作することや設定できるものが多くて困ってしまう、という方もいらっしゃるかと思います(説明が全部英語だし)。私も最初はそうでしたし、今でも把握しきれていない事ばかりです。

 ですので、簡易的なロードマップを用意して順番に進めていくことにしましょう。

  1. キー配置を考える。
  2. キーボードの土台を作る。
  3. 入力キー、オプションキーを並べて整形していく。
  4. Shift時や長押し時の挙動を調整する。
  5. 完成!

以上はその一例ですが、当記事ではこの通りに進めつつ解説をしていきます。

I. キー配置を考える

 まずはキーボードに並べるキーをどう配置していくかを考えます。これはキーボードの作成とは関係ない部分ですが、最低限頭の中で構想しておくとその後の作業がスムーズに進みます。特にキーボードを縦何列で構成するか、一列にいくつキーを配置するか、などを考えておくと良いです。

 もちろん、既存のキーボードの配列を参考にするのも一つの手です。私はそうしました。皆さんも好きにやりましょう。

 今回は例として、私の自前の架空言語「ルスタイン語」のキーボードを作成していきます。書記体系にアラビア文字を採用しているため、アラビア語キーボードの配置を参考に作っていきます。

II. キーボードの土台を作る

 そうと決まれば、まずはキーボードの「ボード」の部分から作っていきましょう。

 初めにホーム画面の「+」マークをタップし、下から2番目の "Add enpty pane" を選択します。すると白背景に灰色の四角いボックスが配置されているだけの質素な画面に移ります。

 そこでキーボードの形のアイコンか右上の丸いアイコンをタップすると、Paneの編集画面に移動します。この画面ではPaneのタイトルや高さ、列が並ぶ方向などを指定できますが、このままではボックスの中にキーを配置することはできません。次は下の "Add item" をタップします。

Image description

Image description

 するとメニューが表示されます。以下の表はメニューにあるそれぞれの項目(アイテム)についての説明です。

  • 通常メニュー
アイテム 説明
Dismiss キーボードを閉じる
URL link 設定したURLへジャンプする(1つまで)
Pane link 設定したPaneへジャンプする(1つまで)
Pan cursor 指をスライドさせてカーソルを動かす
Move cursor タップで設定した文字数の分カーソルを移動させる(値をマイナスにすると左へ、プラスにすると右へ働く)
Delete 設定した文字数の分削除する(値をマイナスにすると左へ、プラスにすると右へ働く)
Paste クリップボードにコピーした文字を貼り付ける
Type 設定した文字を入力する(通常のキー)
Return 改行する
Paste Stack コピーしたPaneを貼り付ける(青い紙束のマークでPaneをコピーする必要がある)
  • Layouts & specialメニュー
アイテム 説明
Globe 他のキーボード(Keybuild)に切り替える
Pane menu 他のキーボード(Keybuild)に切り替える
Stack 空白の列を1つ設定することができ、いくつでも入れ子にできる
Text stack 入力した文字を直接キーにして並べ、列を1つ設定する
Caps lock 常時全角にする
Shift 次の1文字だけ全角にする
Padding キーボードに内余白を設ける

 キーボードの土台を作るため最初にしなければいけないのは、"Stack" を追加して列を設定していくことです。ここで "Stack" と "Text stack" の違いについて気を付けなければなりませんが、その部分の解説は後述します。

Image description

 "Stack" を使用してキーボードを構成する列の数を設定します。ここで "Stack" を4列並べているのは、iPhoneのアラビア語キーボードの構成を模倣したためです。

 追加した "Stack" はEnpty stackと表示され、そこをタップしてさらにアイテムを追加していくことでキーボードを作っていきます。ちなみに項目の左にある数値はそのアイテムの相対的な大きさを表しており、そこを調節することで大きさを自由に変えることができます。

III. キーを並べる

 最低限の土台は整えられたので、次はキーボードの「キー」の部分を作っていきます。

 文字入力キーには先程の説明表にあった "Type" というアイテムを使って作りますが、実は "Text stack" でも作ることができます。

 ここで "Stack" と "Text stack" の違いについて解説しておきましょう。

 まず "Stack" は上記の説明の通り空白の列であり、いわばキーの入れ物です。一方 "Text stack" もまたキーの入れ物ではあるものの、役割が少し違います。こちらは文字を並べるだけでキーを作り列に並べることができますが、先述した "Delete" や "Return" といった特別なキーをその中に含めることはできません。試しに選んでみましょう。

Image description

 上図のように先に "Stack" を予定の数だけ配置し、その中で "Text stack" を1つだけ配置します。

 "Text stack" の中を見てみるとText欄に "ABC" という文字が並べられていますが、この文字列は編集することができます。そして入力した文字の数に応じて自動でキーが設定されます。また、下のShift text欄に文字列を入れると、Text欄に連動して自動でShift時の設定がされます。

 これはメニューから1文字ずつ "Type" を設定していくよりも手間が少ないですが、その分キーの長押し時の挙動を設定できないなどの制約があるため、上手く使い分けましょう。

Image description

 ひとまず上3列にキーを配置しました。後のことを考え、ここでは "Type" アイテムを使用しています。また、iPhoneのキーボードと同様に3列目の左にShiftキーを、右にDeleteキーを配置しました。

 下表は "Type" の設定項目についての説明です。

項目 説明
Keycap キーに表示する文字(入力する文字には影響しない)
Repeat on hold 押し続けたときに連続入力するかどうかの選択
Overrides(矢印) Shift時の挙動の設定(選択してAction、Signalで設定)
Overrides(砂時計) 長押し時の挙動の設定(選択してAction、Signalで設定)
Action タップ時の挙動(文字入力以外も設定可)
Signal 実際に入力される文字

 混同しがちですが、入力したい文字はSignal欄に、キーに表示したい文字はKeycap欄に書き入れましょう。

Image description

 最後に4列目のキーを設定し、2列目に "Padding" を使用して形を整えました。左からそれぞれ "Pane menu" "Globe" "Pane link" "Type" "Move cursor"×2 "Dismiss" と並んでいますが、正直iOS16の今では "Globe" は不要かもしれません。また、1つだけしかPaneを作らないという方は "Pane menu" も取り除いてよいでしょう。

 また、今回私は記号(シャクル)や数字を別のPaneに作って "Pane link" からジャンプする方式を採りました。
 余談ですが "Padding" は他のキーと同様に振る舞うので、下図のようにして遊ぶこともできます。

Image description

IV. キーの挙動を設定する

 キーの配置が完了したら、いよいよキーボード作成も大詰めです。

 Shift時や長押し時の挙動の設定は先述の通り、各キーの編集画面で設定できます。矢印と砂時計のマークはタップすると青く点灯し、両者を組み合わせて条件を追加することもできます。

 さらに下図のように、表示されているPaneの左上の矢印をタップするとShift時のキーの並び順を確認することができます。

Image description

 また、Shift時や長押し時の挙動をOFFにしたい場合は、該当する条件のマークを点灯させた状態で "Action" をタップし、"None" を選択します。

 最後にキーボードに入れ忘れた文字が無いか、文字の入れ違いが起きていないかどうかを確認し、問題が無ければそれで完成です!

V. キーボードの動作確認

 早速iPhoneのメモ帳などで完成したキーボードを試し打ちしてみましょう。そこで違和感や使い心地の悪さを感じても、すぐにアプリから修正できるので困ることはありません。

Image description

3. これまでに作成したもの

 導入して以来、私はiOSに実装されていない文字体系のキーボードを作ったりしていました。以下はその一例です。

梵字(悉曇文字)

Image description

Image description

サウラーシュトラ文字

Image description

Image description

カタカナ【拡張版】

Image description

Image description

4. その他の便利なアプリ

 もしアプリを購入するかどうかで悩んでいるのであれば、以下に挙げる無料のキーボードを使用してみるのも手かも知れません。

Image description

 過去にKeybuildと同じデベロッパーの方が制作した無料のキーボード作成アプリ。アプリ内の画面サイズが小さく、横画面にしないと作りづらいといった難点はあるものの、そこに目を瞑れば現役で使うことができる使いやすさがあります。

 Keybuildと同じようにアプリ内でUnicodeの文字を検索できるほか、アプリ内で試し打ちすることもできるようになっています。

Image description

 無料のキーボードアプリ。キーボードを作成できる機能は付いていませんが、アプリ内で有志が作ったキーボードを検索・インストールすることで複数のキーボードを使い分けることができます。

 特に初期から入れられているラテン文字のキーボードは入力できる文字種が非常に多く、私はとても助かっています。ちなみに確認したところ、私はKeymanの中だけで30ものキーボードを入れていました。

5. さいごに

 ここまで読んでいただきありがとうございました。こんな記事を作りたいと思い至ってから、このKeybuildという便利なツールの魅力を伝えたい一心で書き上げました。

 他に特に言いたいことはありません。ただ私はこの世の全ての架空言語創作に興じる方々に力添えができればそれで良いです。

 それでは、これからも良き創作ライフを。

Top comments (0)