寒月記

住みにくいところをどれほどか寛容て

意外と知らないキーボードショートカットで作業効率を上げる

皆さんは、キーボードショートカット、どれくらい使いますか?
コピー (Ctrl + c)、ペースト (Ctrl + v) なんかは有名ですね。
こうしたショートカットを使うと、ものによっては、
マウスで数秒かかる動作を一瞬でこなすことができます。
PCは日々触るものなので、
数秒の短縮をこの先何年も積み重ねると考えると、
その効果は馬鹿にできません。


このキーボードショートカット、沢山ありますが、
PCを長く使っている人でも意外と知らないものも多いようです。
そこで、今回「すぐに使えて」「便利な」キーボードショートカットを、
特によく使うものに絞って紹介します。
「結構使ってるよ」という方も、「聞いたことないよ」という方も、
思いがけない発見もあると思いますので、是非ご一読ください。


本記事では、実際の動作をイメージしやすいよう、一部デモ画像を置いてます。
デモでは自分が使っているテキストエディタAtom*1 を使ってますが、
大抵のエディタやらで共通して使えるものがほとんどです。
なお、今回はどこでも使えるものと、プログラミングなどのテキスト編集でよく使うものをご紹介します。


先日私も一周目をクリアした、プログラミング学習サイト Progate *2 での学習の際も、
必ず役に立つものがあります。


面倒な PC操作のあれこれを、この機会に減らしてしまいましょう。

この記事の目的
  1. キーボードショーカットで日々の操作を効率化
  2. プログラミング時のコーディング効率を上昇
  3. マウスがない時もストレスフリーに操作

ショートカット:汎用編

まずは、どこでも使えるものを紹介します。
有名なので、ご存知の方が多いかとも思いますが、
逆に言えば知らない方は使うシーンが多いので、ぜひ触ってみてください。

  • コピー:Ctrl + c
  • ペースト (貼り付け):Ctrl + v
  • 切り取り:Ctrl + x

いわゆるコピペと切り取りです。
あまりにも有名なので解説は割愛。*3

  • すべて選択:Ctrl + a

カーソルが置いてあるエリアの、すべての文章を選択状態にします。
この状態で Ctrl + c → Ctrl + v すると、文章全部を 3動作で複製できますね。

  • 上書き保存:Ctrl + s

こちらも有名ですが、もしも使っていなければぜひ!
Wordやらエディタやら、文章編集中に電源が落ちたりクラッシュしたときの絶望から救ってくれるので、癖にしましょう。

  • 検索:Ctrl + f

ブラウザや PDFビューワーなど、色々なところで検索窓を出せます

ショートカット:テキスト編集編

ここからは、特にテキスト編集中に役立つものです。
ここで、実は知らなかったものも出てくると思います。

  • 選択:Shift + 矢印

カーソル位置から、矢印を動かした分だけ選択できます。
この後に Ctrl + cCtrl + x などよく使います。

  • 単語単位でカーソル移動:Ctrl + 矢印

プログラミング中、速くカーソルを動かしたい時に使います。
上手く使うとキーボードから極力手を離さずに済みます。
プログラミングではスペース区切りの英語記法が多いので、ちゃんと語の切れ目を判定してくれます。

  • 単語単位で選択:Ctrl + Shift + 矢印

上 2つの複合技ですね。
プログラミングで、素早く対象のコピーや切り取り、編集をしたい時に結構重宝します。
選択した状態で文字を入力すれば、その部分を置き換えられます。
f:id:kan-getsu:20181002235355g:plain

イチ押し
  • 元に戻す (Undo):Ctrl + z
  • やり直し (Redo):Ctrl + y

大活躍、Undoと Redoです。*4*5
これは本当に、使っていない方は使ってみてください!
1アクションでやり直しができるので、作業中のストレスが大軽減します!
割と頻繁に連打してます。
f:id:kan-getsu:20181002235415g:plain ※画像では、main() の処理を書いた後 Ctrl + z でやり直し、それをまた Ctrl + y で復活させてます

  • 複数行を一括インデント:範囲選択 + Tab
  • 複数行を一括インデント:範囲選択 + Shift + Tab

これ、プログラミングで重宝するのです。
if文や for文を書いていて、「インデント間違えた...」となった時、これなら一発解決です。
地味に嬉しいショートカットですね、Porgate学習中も何度か活躍しました。*6
f:id:kan-getsu:20181002235436g:plain

ちなみに、Shift の併用はこの様にの動作をすることが多いようです。
上で紹介した Ctrl + f の時も、Enter を押すと次の検索結果に跳びますが、
Shift + Enter前の検索結果に跳べます。

ショートカット:番外編

ここまでで、思いがけない発見などあったでしょうか?
役に立ちそうなものはどんどん使って、ぜひ PC操作を効率化していきましょう。


以下、キーボードショートカットという枠ではないものも交え、ちょっと変わってるけど便利な機能の紹介です。
2. 汎用、3. 文章編集 でご紹介したものだけでも便利だと思いますが、ここで紹介する変わり種も役に立ちます。
キーボードから手を離したくない人、プログラミングをする人の役にはきっと立ちます。

  • 新規タブを開く:Ctrl + n
  • 新規タブを別ウィンドウで開く:Ctrl + Shift + N
  • 現在のタブを閉じる:Ctrl + w

ブラウザやテキストエディタで、新しいタブを開けます。
ここで言うタブは Tabキー とは違うのでご注意を。
Shift も一緒に押すと、別窓で開くことができます。
開いたタブは、Ctrl + wで閉じることができます。


ブラウジングはマウスやタッチパッドと離れられませんが、
上記 3つを使うと少し幸せになれる気がします。

  • テキストの範囲選択:ダブルクリック

プログラミングでよく使いますが、テキスト上でダブルクリックすると、
その範囲に存在する一単語を選択します。
この後にCtrl + cをよく使います。

イチ押し
  • 矩形選択:Alt + 矢印

「くけい」選択と読みます。
「矩形」は、長方形のことです。
サクラエディタ *7 の伝家の宝刀という印象があります、これがかなり便利です!
コードを書いていて、一括で複数行をコメントアウトしたい時、逆にコメントアウトを解除したい時 など、
Shift と組み合わせてよく使います。
順番は Altで行選択 → Shift で列選択です。
サクラエディタはデフォルトでできたような気がしますが、
最近のエディタや IDE*8プラグインなどで機能追加すれば大抵できます。
f:id:kan-getsu:20181002235456g:plain

個人的に、意外と知らない人がいる便利機能の筆頭です。
今見えている PC画面をそのままコピーします。
この後にペイントツールなどを開いて、「貼り付け」を行うと、画面イメージを取得できます。
後は取得した画面画像をそのままペイントなどで煮るなり焼くなり。
ただ、最近、少なくとも Windows 10には Snipping Tool という、
「選択範囲を画像として保存する」というツールがプリインストールされている
ので、こちらの方が便利ですね。
Snipping Toolは大抵の Windowsに入ってるので、Cortanaさんに聞いてみてください。

プログラミング時の利用例

最後に、プログラミングでよく使う組み合わせ技をまとめてご紹介します。

  • Ctrl + a → Ctrl + c → Ctrl + n → Ctrl + v → syntax highlight

ネットや電子書籍上の、ハイライトされていないコードを自分のエディタで確認したい時に使います。*9
Progateのコードを手元で確認したい時も使いました。 f:id:kan-getsu:20181002235511g:plain

  • 範囲選択 + Tab, Shift + Tab

楽々インデント。
私は文書編集に Markdownをよく使うので、インデントレベルの調整に使います。

  • 矩形選択 + Delete (Backspace)

これまたプログラミングでよく使います。

  • Ctrl + Shift + 矢印 → Ctrl + c → Ctrl + f → Ctrl + v
  • ダブルクリック → Ctrl + c → Ctrl + f → Ctrl + v

f:id:kan-getsu:20181002235532g:plain ※検索結果はShift + Enterで逆方向に探索可能

Vimmerの手元

ここまで「ショートカットで PC操作を効率化しよう」というお話をしてきました。

今回紹介したものだけでも十分便利になると思いますが、世の中には何でも極める人がいます。

Vimというエディタはご存知でしょうか。Linux系の OSによくついてるエディタです。

このエディタを使いこなす人 (Vimmer) は、キーボードのホームポジションからほぼ手を離さず、タッチタイピングで魔法の様にファイルを編集します。

私が新卒入社一年目の時いらっしゃった、ある開発のすごい方は Vimを使っていて、当時の自分には何も分かりませんでしたが、恐ろしいスピードで作業をこなしていました。

Vimでは「上下左右」のキーの代わりに、「kjhl」キーを使います。これも、ホームポジションから手を離さないための工夫らしいですね...

私はまだ使いこなせませんが、愛用者が多い人気のエディタでもあります。

Windows版も存在するので、気になった方は触ってみてください。Linuxサーバーを操作したり、Gitをデフォルトで使うと、いずれ出会うことになります。


その方がオススメされてた本を以下紹介しておきます。私もまだ購入しただけで読めてません...

紙ではほぼ手に入らなさそうですが、Kindleなら手に入ります、良い時代。

まとめ

いかがでしょうか。
有名どころばかりではありましたが、プログラミングを始めたばかりの方などにとっては、
新しいものもあったのではないかなと思います。
今回ご紹介した機能を、最後にまとめておきます。


有効活用して、PCライフ・開発ライフをストレスの少ないものにしていきましょう!

機能 コマンド
汎用
コピー Ctrl + c
貼り付け Ctrl + v
切り取り Ctrl + x
すべて選択 Ctrl + a
上書き保存 Ctrl + s
検索 Ctrl + f
文章編集
選択 Shift + 矢印
単語単位でカーソル移動 Ctrl + 矢印
単語単位で選択 Ctrl + Shift + 矢印
元に戻す (Undo) Ctrl + z
やり直し (Redo) Ctrl + y
複数行を一括インデント 範囲選択 + Tab
複数行を一括逆インデント 範囲選択 + Shift + Tab
番外
新規タブを開く Ctrl + n
新規タブを別ウィンドウで開く Ctrl + Shift + N
現在のタブを閉じる Ctrl + w
テキストの範囲選択 ダブルクリック
矩形選択 Alt + 矢印
スクリーンショット PrtScr

*1:最近 Microsoftに買収されましたが、GitHubが開発したエディタです。重いけど高機能でかっこいい。先日の AWSサミットでステッカー頂きました

*2:Progateに関しては改めて紹介記事を書こうと思いますが、プログラミングを始める入り口としてとても良いサービスですので、気になった方はぜひ調べてみてください

*3:コピペはマウス操作とスピードは変わらない、という話もありますが、いいんです。キーボードから極力離れたくないときもあるのです。

*4:昔ペイントツールの Saiをいじってる時に初めて知りました。Undo、Redoショートカットなしでは描けない人が多いと思います

*5:Ctrl + y はソフトによっては Ctrl + Shift + Z

*6:Tabによる空白とスペースによる空白は、コンピュータ的には別物ですのでご注意を。難しく言うと、別の文字コードで表現されるものです。Tabとスペースを相互変換するツールもあるくらいですので、場合によってはこの事実を思い出さなければいけないこともあるかも (モダンなエディタを使う限りにおいては基本問題はないかとは思いますが)。

*7:軽量で拡張性の高い日本製のエディタです。Ctrl + g で Windowsでも grepができるのでログ調査でお世話になってます

*8:統合開発環境 (Integrated Development Environment) と呼ばれる、乱暴に言うと「エディタ」「デバッガ」「コンパイラ」などの開発に必要な機能を詰め込んだツールです。IBMEclipse、MSの Microsoft Visual Studioが有名ですが、最近は JetBrainsの製品も強いのかなと思います。

*9:syntax highlightとは、可読性向上のために、エディタがプログラミング言語の文法に応じて、コードを適度に色付けしてくれる機能です。デモ画像でも、編集中のコードの言語を Pythonに指定したことで、白黒から色付きに変わったことが分かります。