分12便利な予測インターフェース計算機の上で同じ作業を何度も繰り返さなければならないことがよくあります。計算機は単純な繰り返し作業が得意なはずですが,つまらない作業を人間が繰り返さなければならないことは意外と多いものです。いう機能はExcelには用意されているかもしれませんが,知らなければ使えませんし,同じような処理であってもシステムに用意されていなければどうしようもありませんから,この手の仕事があったときは泣きながら手作業で処理したり,頑張ってスクリプトを書いたりしている人が多いのではないでしょうか。計算機上の操作を効率化するために「予測インターフェース」と呼ばれるシステムが広く使われています。スマホのテキスト入力を効率化する「予測入力システム」やブラウザのURL補完機能,エディタの補完機能のような簡単な予測インターフェースは最近よく使われていますし,これまでの購入履歴を基にして商品を推薦するシステムなども一種の予測システムと言えるでしょう。Do』という本が出版されていますし,最近は例示や予測だけでプログラムを作ってしまおうという研究も行われています(図1)。Kaufmann,2010年)予測インターフェースシステムでは,アプリケーションに関連したデータベースやユーザの操作履歴などを基にして,ユーザの次の操作を予測することによってユーザの仕事を減らす工夫をしています。URL補完の場合はよく使われるURLのデータベースが利用できますし,プログラミング言語に関する情報を持っていれば,ユーザが次に入力する言語キーワードを予測できます。このような固定的なデータベースを用意しておくことも重要ですが,ユーザの操作履歴を予測のためのデータベースとして利用すると便利です。ユーザが一度訪れたサイトのURLを覚えておけば補完に利用できますし,予測入力システムではユーザが利用した単語やフレーズが次の予測に利用されます。前述のExcelの例のような場合,負の数字にアンダーラインを付ける操作が繰り返されていることをシステムが検出できればユーザの次の操作を予測できるでしょう。文章やプログラムのようなテキストを編集するとき,同じような操作を繰り返すことがよくあります。連続する行の先頭に記号を挿入したいような場合はカーソルを1行ずつ動かして記号を入力していくのが普通ですが,たくさんの行に対して同じ操作を繰り返すのはたいへんです。行頭に記号を挿入するスクリプトを書けば良いのかもしれませんが,一度きりかもしれない処理のためにプログラムを作成するのは面倒ですし,プログラミングの知識が必要です。Values:カンマ区切り)データの桁を並び替えたいときはどうでしょうか?CSVデータをExcelなどで読み取ってから並びを変えて出力すれば良いかもしれませんが,方法を考えるのも実際に作業するのも面倒です。キーボードマクロこのような作業を簡単にするために「キーボードマクロ」という機能が用意されているエディタがあります。キーボードマクロとは,一連のエディタ操作を1つのキー操作に割り当てることにより,複雑な編集操作を楽に実行しようというものです。「行頭に記号を挿入してから1つ下の行に移動する」という処理を[A]というキーに割り当てておけば,[A]を連打することによって連続する行の先頭に記号を入力していくことができますし,「カンマで区切られた部分を選択して移動してから次の行に移動する」という処理を[B]というキーに割り当てておけば,[B]を連打することによってCSVの桁を入れ替えていくことができます。Macroキーボードマクロは便利な機能ですが,キーボードマクロの定義開始と終了のための操作が必要であるうえに,処理を正確に登録するのが難しいという問題があります。前述の例の場合,「1つ下の行に移動する」処理を定義に含めることを忘れてしまうと正しく動きません。Macroというシステムを作って長年Emacsの上で利用しています。Macroの原理は非常に単純で,「同じ編集操作を2回繰り返したあとで[CTRL]+[t]を押すと繰り返された操作が再実行される」というものです。「二度あることは三度ある」と言うように,同じことが二度あればもう一度あるのは世の中でごく普通のことです。二度実行した操作をもう一度実行することもよくあることですので,この方法はたいへん効果的です。Macroの利用例を示します。図2はEmacsでabcabcと入力したところです。Emacsでabcabcと入力ここで[CTRL]+[t]を押すと,Emacsのキー操作履歴から「abcの入力」の繰り返しが検出され,キーボードマクロとして登録されて実行され,図3のようにもう1つabcが挿入されます。[CTRL]+[t]キーでもう1つabcが入力される再度[CTRL]+[t]キーを押すと,図4のようにまたabcが入力されます。Macroはもっと複雑な編集操作でも使うことができます。図5のようなテキストの上から2行を図6のように編集したとします。"」を入力してから行末に移動して「"」を入力して次の行に移動するという操作を2回繰り返した結果ですが,ここで[CTRL]+[t]キーを押すと,この操作の繰り返しが検出されてマクロ登録されて実行されるので,画面は図7のように変化します。[CTRL]+[t]キーで入力補完さらに[CTRL]+[t]キーを何度か押すと画面は図8のように変化します。Macroで何度でも連続実行できることになります。Appleなどで働く。携帯電話に搭載される日本語予測変換システム『POBox』や,iPhoneの日本語入力システムの開発者として知られる。ユーザインターフェースの心理学』。そこにはヒットメーカーの極意があった噂の超高速分析データベースを試してみよう~ログ解析,機械学習なんでもござれ~ワールドワイドで3,500社以上が活用しているビッグデータ高速分析用のデータベース「Vertica」。クエリ性能を簡単に数百倍にする術をご紹介します。「JIRA」をはじめとするアトラシアンのツール群。多くのオープンソースソフトウェアを継続して提供する支えとなっている使い易さを探ってみます。Cloud」が,いよいよ日本でのサービスを本格的に開始します。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。