c-quick キーバインディング一覧: Lisp系のソースコードを効率的に編集するためのEmacs Lispパッケージ

2024/02/23 更新

# この記事は何?

以下の2つの記事を書きましたが、c-quick.el のキーバインディング一覧を作りましたのでアップします。

https://qiita.com/javacommons/items/e7fe1ba09d4311af9aea

https://qiita.com/javacommons/items/87f7c1f12fac5eedb152


最新版の c-quick.el は以下のGitHubリポジトリからダウンロードできます。

> [https://github.com/emacs-pkg/c-quick/releases/latest](https://github.com/emacs-pkg/c-quick/releases/latest)

-----

# インストール方法 (c-quick.el)

とりあえず使ってみたい(または最新の変更に追随したい)方は、.emacs または init.el に以下を追加しておくと自動的にロードされます。

```elisp:~/.emacs or ~/.emacs.d/init.el
(unless (featurep 'get-feature)
  (defun get-feature (feature-name &optional url file-name)
    (if (featurep feature-name) t
      (unless url (setq url (format "https://github.com/emacs-pkg/%s/raw/main/%s.el"
                                    feature-name feature-name)))
      (unless file-name (setq file-name (format "%s.el" feature-name)))
      (let ((make-backup-files nil)
            (file-path (expand-file-name file-name user-emacs-directory)))
        (ignore-errors
          (url-copy-file url file-path 'ok-if-already-exists))
        (ignore-errors
          (load file-path nil 'nomessage))
        (featurep feature-name))))
  (get-feature 'get-feature))

(get-feature 'c-quick)
```

straight.el でロードしたい場合は以下を .emacs または init.el に入れてください(但し git のインストールが必要です)：

```elisp:~/.emacs or ~/.emacs.d/init.el
(defvar bootstrap-version)
(let ((bootstrap-file
       (expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
      (bootstrap-version 6))
  (unless (file-exists-p bootstrap-file)
    (with-current-buffer
        (url-retrieve-synchronously
         "https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
         'silent 'inhibit-cookies)
      (goto-char (point-max))
      (eval-print-last-sexp)))
  (load bootstrap-file nil 'nomessage))

(straight-use-package '(c-quick :type git :host github :repo "emacs-pkg/c-quick"))
(require 'c-quick)
```

----

尚、straight.el ではパッケージを最新化するのに手動で操作をする必要があります。以下の記事をご覧ください：

https://qiita.com/javacommons/items/4dd0f1b74213437c04ec

----

# キーバインディング一覧

<table width="100%" border="1">
  <tbody>
	<tr>
	  <td style="width: 250.05px;">キーバインディング</td>
	  <td style="width: 352.483px;">コマンド</td>
	  <td style="width: 1113.47px;">説明</td>
	</tr>
	<tr>
	  <td>Ctrl-右矢印<br>
	  </td>
	  <td>M-x c-quick-right-quick<br>
	  </td>
	  <td>S式の幅での移動(前方向)<br>
	  </td>
	</tr>
	<tr>
	  <td>Ctrl-左矢印</td>
	  <td>M-x c-quick-left-quick</td>
	  <td>S式の幅での移動(後方向)</td>
	</tr>
	<tr>
	  <td>Ctrl-下矢印</td>
	  <td>M-x c-quick-down-quick</td>
	  <td>トップレベルのS式の位置づけ(前方向)</td>
	</tr>
	<tr>
	  <td>Ctrl-上矢印</td>
	  <td>M-x c-quick-up-quick</td>
	  <td>トップレベルのS式の位置づけ(後方向)</td>
	</tr>
	<tr>
	  <td>F9 or C-F9 or S-F9 or M-F9 or C-x F9</td>
	  <td>M-x c-quick-toggle-mode</td>
	  <td>c-quickモードの切り替え(トグル)<br>
		c-quickモードの使い方については
		<a href="https://qiita.com/javacommons/items/e7fe1ba09d4311af9aea">https://qiita.com/javacommons/items/e7fe1ba09d4311af9aea</a> を参照してください。</td>
	</tr>
	<tr>
	  <td>M-W (Alt-W)</td>
	  <td>M-x c-quick-copy-region</td>
	  <td>マークが設定されている場合はリージョンのコピー。マークが設定されてない場合はS式を一つ分コピー。(連続使用するとクリップボード内で連結されます)</td>
	</tr>
	<tr>
	  <td>Ctrl-W</td>
	  <td>M-x c-quick-kill-region</td>
	  <td>マークが設定されている場合はリージョンの切り取り。マークが設定されてない場合はS式を一つ分切り取り。(連続使用するとクリップボード内で連結されます)</td>
	</tr>
	<tr>
	  <td>Ctrl-DEL</td>
	  <td>M-x c-quick-delete-region</td>
	  <td>マークが設定されている場合はリージョンの削除。マークが設定されてない場合はS式を一つ分削除。</td>
	</tr>
	<tr>
	  <td>F12 or C-F12 or S-F12 or M-F12 or C-x F12</td>
	  <td>M-x c-quick-jump-to-function</td>
	  <td>カーソル下の関数名／変数名へのジャンプ(ファイルを開いて位置づけ)</td>
	</tr>
	<tr>
	  <td>Ctrl-Z</td>
	  <td>M-x undo</td>
	  <td>アンドゥ。</td>
	</tr>
	<tr>
	  <td>Ctrl-F4</td>
	  <td>M-x c-quick-kill-current-buffer</td>
	  <td>Ctrl-F4 はカレントウィンドウのバッファを閉じますが、その際にカレントウィンドウも閉じます(つまり、ウィンドウが減ります)。</td>
	</tr>
	<tr>
	  <td>Shitf-F4</td>
	  <td>M-x c-quick-kill-other-buffers</td>
	  <td>Shift-F4 は、カレントウィンドウ以外のウィンドウ内のバッファとウィンドウを全て閉じます。</td>
	</tr>
	<tr>
	  <td>Ctrl-Alt-＼ or Ctrl-Alt-￥</td>
	  <td>M-x c-quick-indent-region</td>
	  <td>マークが設定されている場合はリージョンを再インデント。マークが設定されていない場合はカーソルに続くS式を再インデント。</td>
	</tr>
	<tr>
	  <td>Alt-F4</td>
	  <td>M-x kill-emacs</td>
	  <td>Emacsを終了。</td>
	</tr>
	<tr>
	  <td>F5 or C-F5 or S-F5 or M-F5 or C-x F5</td>
	  <td>M-x c-quick-bookmark-set</td>
	  <td>ブックマークを設定(但し、ファイルに関連付けられているバッファに対してのみ有効)</td>
	</tr>
	<tr>
	  <td>F6 or C-F6 or S-F6 or M-F6 or C-x F6</td>
	  <td>M-x c-quick-list-bookmarks</td>
	  <td>【ブックマーク一覧を表示】<br>
		●F5 で登録したブックマークが一覧で表示されます。<br>
		●上下に移動して、ENTER を押すとブックマークしたファイルが開いてブックマークのポイントが位置づけられます。<br>
		●ブックマークを消したい場合には d を押すと「D」というマークがつきます。(マークを解除したい場合は u を押します)<br>
		●d でマークを付けた後(複数可)、x を押すと実際にブックマークが消えます。<br>
		●r キーを押してミニバッファで文字列を指定してブックマークをリネームすることもできます。<br>
		●ブックマークを消してもファイル自体は消えません。</td>
	</tr>
	<tr>
	  <td>F7 or C-F7 or S-F7 or M-F7 or C-x F7</td>
	  <td>M-x c-quick-list-files</td>
	  <td>ファイルに関連付けられたバッファーの一覧が開きます。<br>
		●上下に移動して、ENTER を押すとファイルのバッファーが開きます。<br>
		●ファイルを閉じたい場合には d を押すと「D」というマークがつきます。(マークを解除したい場合は u を押します)<br>
		●d でマークを付けた後(複数可)、x を押すとファイルを開いているバッファーが閉じます(ファイルは削除されません)。</td>
	</tr>
	<tr>
	  <td>F8 or C-F8 or S-F8 or M-F8 or C-x F8</td>
	  <td>M-x c-quick-list-buffers</td>
	  <td>ファイルに関連付けられてないものも含めて全バッファーの一覧が開きます。<br>
		●上下に移動して、ENTER を押すとバッファーが開きます。<br>
		●バッファーを閉じたい場合には d を押すと「D」というマークがつきます。(マークを解除したい場合は u を押します)<br>
		●d でマークを付けた後(複数可)、x を押すとバッファーが閉じます(ファイルは削除されません)。</td>
	</tr>
	<tr>
	  <td>F10 or C-F10 or S-F10 or M-F10 or C-x F10</td>
	  <td>M-x c-quick-run-file-in-eshell</td>
	  <td>シェルスクリプトやスクリプト言語で書かれたファイルを開いている場合に、eshell バッファー上で実行します。<br>
		<b>詳細は別記事にしたいと思います。</b></td>	</tr>
	<tr>
	  <td>Ctrl-Shift-F10</td>
	  <td>M-x c-quick-rerun-eshell</td>
	  <td>現在のバッファーのカレントディレクトリに対して、eshell を開きます。すでに eshell
		が開いている時は先にそのバッファーを閉じてから eshell を再度開きます。<br>
		今開いているファイル(スクリプト・C++のソース等)のディレクトリで、スクリプト実行やコンパイル等を即座に行いたいときに使います。<br>
		<b>詳細は別記事にしたいと思います。</b></td>
	</tr>
  </tbody>
</table>