Raspbian OSでスクリーンキャプチャのキーボードショートカットキーを設定する


2020/01/20

Raspbian OSはRaspberry Pi(以降ラズパイ)公式の標準OSで
ここからイメージをダウンロード出来ます。

通常、デスクトップやノートパソコンでLinuxを導入する場合には、KDEやGNOMEなど、リソースリッチなデスクトップ環境を使うことが多いと思います(個人的な好みの問題もあります)が、Raspbianでは軽量なデスクトップ環境の一つである
LXDEを利用しているようです。

個人的に普段は
LXDEを利用しない派ですので、キーボードショートカットの設定を行いたい場合には、標準のウィンドウマネージャーのOpenboxの設定ファイルを直に書き換えてあげる必要があります。

参考: Ubuntu + LXDEのショートカット一覧とカスタマイズ方法


Scrotのインストール

まずは軽量なスクリーンキャプチャ用コマンドラインツールのScrotをインストールします。

            $ sudo apt-get update
$ sudo apt-get install scrot
        
scrotの使用方法に関してはネット検索で多く解説されているため、ここでのオプションの詳細は割愛させていただきますが、scrot --helpと打つとコマンドの用法が参照出来ます(説明は英語です)。参考: Raspberry Pi(Raspbian)でスクリーンショットを撮る方法

試しに一つ、5秒後に画面をキャプチャするようなコマンドをやってみます。コンソール画面で以下を打ち込んで実行してみましょう。

            $ scrot -d 5
        
すると、実行から5秒後に全画面がキャプチャされます。

合同会社タコスキングダム|蛸壺の中の工作室


Openboxの設定ファイル

次にscrotのコマンドをキーボードショートカットキーに登録します。ショートカットを直に編集するには、以下のディレクトリにあるxmlファイルを編集します。

            $ sudo nano /etc/xdg/openbox/lxde-pi-rc.xml
        
ファイルの中身を覗くと、設定がビッチリと書かれております。

おそらく最新の
Rasbian Busterでは既にscrotのショートカットキーが与えられていると思いますので、printscrotでキーワード検索するとスクリーンキャプチャのショートカットキーが定義されている箇所をすぐに探せると思います。

合同会社タコスキングダム|蛸壺の中の工作室

もし
Printキーへの登録がない場合には、新規に<keybind>要素を加える必要があります。

以下に、今回のカスタムショートカットキーの実装例をまとめます。

            <!-- Keybindings for running applications -->
<keybind key="Print">
    <action name="Execute">
        <command>scrot</command>
        <!-- Printキーを押すと全画面取得 -->
    </action>
</keybind>
<keybind key="A-Print">
    <action name="Execute">
        <command>scrot -u</command>
        <!-- Alt + Printキーを押すとフォーカス中の画面取得 -->
    </action>
</keybind>
<keybind key="C-Print">
    <action name="Execute">
        <command>scrot -s</command>
        <!-- Control + Printキーを押し、マウスで選択範囲取得 -->
    </action>
</keybind>
<keybind key="C-S-Print">
    <action name="Execute">
        <command>scrot -d 5</command>
        <!-- Control + Shift + Printキーを押し、5秒後に全画面取得 -->
    </action>
</keybind>
        
設定ファイルを編集後に保存して、一旦ログオフか再起動をすると、このショートカットキーが反映されます。

余談 ~ nanoによるテキスト編集

Raspbian OSでの標準でインストールされているテキストエディタとしてはnanoを使うほうを推奨されています。もちろんviも標準でインストールされていて使うことができるのですが、nanoの方がより直感的な操作方法で、今回のようにラズパイ上で設定ファイルの簡単な書き換え程度の操作ならば、nanoの方を利用したほうが良いと思います。

基本的にnanoでは、下の図の赤枠で囲ったところにヘルプが表示してあるように、
^=Ctrlボタンを押しながら...、各キーを押すことで操作していく編集スタイルです。

合同会社タコスキングダム|蛸壺の中の工作室

やりながら困るのが、良く使うであろう
アンドゥ(一つ前の操作まで戻す)リドゥ(一つ後の操作をやりなおす)のショートカットキーの組み合わせをど忘れしてしまうことです。

            アンドゥ:
    方法①: Esc キーを押した後で U キー
    方法②: Alt キーを押しながら U キー
    方法③: Option キーを押しながら U キー

リドゥ:
    方法①: Esc キーを押した後で E キー
    方法②: Alt キーを押しながら E キー
    方法③: Option キーを押しながら E キー
        
上の方法で②と③は、環境によっては先にシステムで設定されていたホットキーが動作してしまったり、Optionキーがキーボードに対応していない場合があるので、方法①を使うのがおすすめです。

なお、
海外のフォーラムサイトでも議論されていましたが、Undo/Redoがnanoに実装されたのは、バージョン2.3.5からとのことですので、それ以前のnanoではこのショートカットキーは利用できません。


まとめ

今回はRaspbianでキーボードショートカットを直接カスタマイズする方法を簡単に特集しました。これはスクリーンキャプチャのみでなく、他のコマンドラインアプリケーションも起動できるようになるので便利に活用したいと思います。


参考サイト

Raspberry Piデスクトップ利用限定の技「キーボードショートカット」作成方法

記事を書いた人

記事の担当:taconocat

ナンデモ系エンジニア

電子工作を身近に知っていただけるように、材料調達からDIYのハウツーまで気になったところをできるだけ細かく記事にしてブログ配信してます。