ショートカットキーの限界

GUIアプリケーションの操作効率を引き上げる方法の一つに「ショートカットキー」がある。覚えていればいるほど、アプリを快適に使える機能だ。しかし、この機能には問題もある。設定できるショートカットキーの数に上限があることだ。Windowsにおける主な修飾キーは「Windows」「Ctrl」「Alt」であり、これに70個くらいのキーを組み合わせることになる。Windows標準のショートカットキーもあるし、共通で使われるショートカットキーもある。こうなってくると、アプリケーションで利用できるショートカットキーはそれほど多くない。

さらに、人間側の問題がある。人間はたくさんのショートカットキーを覚えておくのが苦手だ。一生懸命覚えても、使っていなければ忘れる。別のアプリケーションで別のショートカットキーを使い出すと、最初のアプリケーションのショートカットキーを忘れる。「ショートカットキー」は便利な機能だが、たくさんは覚えておけないのだ。

しかしそうなると、延々とマウスを使ったりメニューから機能を選択したりしなければならないのかと青ざめてくるが、そうでもないのだ。GUIの操作とショートカットキーの中間を埋めるような機能の開発が進んでおり、実際に効果を挙げている。

GUIとショートカットの中間を埋める機能

この機能には定まった名称がないように見える。アプリケーションやオペレーティングシステムがそれぞれの名前で呼ぶことが多く、実は提供されている機能もさまざまで明確な定義が難しい。いくつかのサンプルを取り上げながら、どのような機能であるかを知るとわかりやすいと思う。

Visual Studio Codeの「コマンドパレット」

開発者向けの機能だが、Visual Studio Codeという人気の高い開発環境の「コマンドパレット」という機能がそれに近いだろう。

  • Visual Studio Code:「Ctrl」+「Shift」+「P」でコマンドパレットをアクティブ化

    Visual Studio Code:「Ctrl」+「Shift」+「P」でコマンドパレットをアクティブ化

Visual Studio Codeはさまざまな機能を提供している。さらに通常は目的に応じて「拡張機能」をインストールして使うため、UI/UXやショートカットキーは個人個人でバラバラになりやすい。この状況で作業効率を引き上げるのが「コマンドパレット」と呼ばれる機能だ。

Visual Studio Codeのコマンドパレットは「Ctrl」+「Shift」+「P」でアクティブになる。次のスクリーンショットのようにテキストフィールドが表示され、その下に候補が表示される。これがコマンドパレットの代表的なUIだ。

  • Visual Studio Code:「コマンドパレット」

    Visual Studio Code:「コマンドパレット」

コマンドパレットではVisual Studio Codeや拡張機能が提供する機能を選択できる。つまり、メニューから機能を選択したり、ショートカットキーを押したりする代わりに、コマンドパレットに該当する機能に至るための「文字列」を入力するというものだ。

コマンドパレットはキーボードから手を離さずに済むため、マウスを操作してメニューを操作するよりも圧倒的に作業が速い。ショートカットキーほどは短くできないが、ショートカットキーと違って機能を呼び出すために覚える内容が少なくて済むという利点がある。

関連しそうな文字列を入力すれば下部のリストに候補が表示されるので、何度か操作していれば自然とその機能に至るための文字列を入力できるようになる。呼び出すための学習までできてしまうのがこの機能の特徴だ。

Windows Terminalの「コマンドパレット」

この機能の呼び方はいろいろだが、Windows Terminalにも同じ名前で似た機能が実装されている。

  • Windows Terminal:「Ctrl」+「Shift」+「P」でコマンドパレットをアクティブ化

    Windows Terminal:「Ctrl」+「Shift」+「P」でコマンドパレットをアクティブ化

  • Windows Terminal:「コマンドパレット」

    Windows Terminal:「コマンドパレット」

多くの機能の中から特定の機能に素早くアクセスする方法として、呼び方はさまざまだが、このようにキーボードからの入力を介するという方法が活用されており、効果を上げている。

キーボードの入力で対象を選択するという方法は、Windowsのメニューから表示される「検索」にも実装されている。アプリケーションやコマンドを入力すれば起動することができるし、ファイルやフォルダの検索、Web検索の入り口としても利用できる。使い方はコマンドパレットと似ている。

  • Windowsメニューの検索機能

    Windowsメニューの検索機能

Windowsの操作も「コマンドパレット」で高速化したい

Windowsの操作を高速化する方法として、「ショートカットキー」だけではなく、このコマンドパレットのような機能が欲しいと思うのは自然な発想だ。最初はマウスとメニューでよいのだが、慣れてきたらその方法は作業効率が悪いのだ。使いたい機能やアプリケーションはもうわかっており、そこへ一発でたどり着きたい。そのために「Windowsのコマンドパレット」のようなものが欲しい。

例えば、次のような状態でコマンドパレット用のショートカットキーを入力すると、

  • この状態でWindowsのコマンドパレット的な機能のショートカットキーを押す

    この状態でWindowsのコマンドパレット的な機能のショートカットキーを押す

次のようにコマンドパレットが表示され、ここから特定の機能を呼び足したり、操作を行ったり、アプリケーションを起動したり、フォルダを表示したりといった操作をしたいということだ。

  • コマンドパレットでいろいろ操作する

    コマンドパレットでいろいろ操作する

コマンドパレットが素晴らしいのは、この機能には「習熟」という特性が伴うということにある。要するに、使い込めば使い込むほど高速になり便利になる。一度手になじんだら、この機能がないアプリケーションは利用できないというほどに通常の操作がもどかしくなってしまう。

なぜWindowsに標準でこの機能がないのかを考えてしまうが、それはこの機能が最近登場した機能だからだと思う。いずれは、Windowsの標準機能になってもおかしくない。