- 1. 概要
- 2. プログラム起動の定義
- 3. 基本的なふるまい
- 4. わたしの定義
- 5. クライアント操作の定義
1. 概要
前ページの設定を行っていれば、すべての環境で
~/.config/awesome/rc.lua
を編集することで、キーの定義が行えます。
「lua」の文法も知らんので、少しずつ覚えていきます。
わたしが、実際に書いてみて理解できたことしか書いていません。
理解が不十分であったり、間違ったりしていることもあるかもしれませんので悪しからず。
ここの記述に関しては、「Module awful.spawn - awesome API documentation」を参考にさせていただきました。
2. プログラム起動の定義
-- {{{ Key bindings
globalkeys = my_table.join(
・・・ 略 ・・・
)
内に
-- コメント
awful.key({ 特殊キー }, "一般キー", function () awful.spawn(string.format("プログラム")) end,
{description = "名称", group = "カテゴリ"}),
末尾の「,」(カンマ)は、最終の記述では不要になりますのでご注意。
キーの記述は、以下のようになっているようです。
キー | 記述 | 備 考 |
FreeBSD |
ArcoLinux |
SparkeyLinux |
Win | modkey | |
Alt | altkey | |
Ctrl | "Contorl" | modkey1 | "Contorl" | |
Shift | "Shift" | |
Space | "Space" | |
Print | "Print" | |
a ~ z | "a" ~ "z" | |
F1 ~ F12 | "F1" ~ "F12" | |
プログラムは、コマンドラインで起動するときの書き方なので、オプションがあれば、それに続けて、オプションを記述します。
また、「ArcoLinux」ではダブルコーテーションで閉じた後に、カンマで続けて「beautiful.bg_normal, beautiful.fg_normal」といった表示上の修飾が行えるようです。
「{description ...}」の記述は、「hotkeys」の、記述内容とカテゴリを意味します。
書いて、reload すると(「reload awesome」と書いてあるキー)、表示内容は次から反映されますし、キーも有効になります。
下記のように、オプションをつけて起動することも可能です(FreeBSD で検証)。
-- コメント
awful.key({ 特殊キー }, "一般キー", function () awful.spawn(string.format("プログラム") {
floating = true,
width = 幅,
height = 高さ,
}) end,
{description = "名称", group = "カテゴリ"}),
これは、フローティングモードで起動し、ウィンドウの幅と高さを指定しています。
3. 基本的なふるまい
前項と同じ記述内に、「端末を開く」「リロード」「ログアウト」などの定義があります。
「-- Standard program」で始まっている箇所です。
「FreeBSD」は
-- Standard program
awful.key({ modkey, }, "Return", function () awful.spawn(terminal) end,
{description = "open a terminal", group = "launcher"}),
awful.key({ modkey, "Control" }, "r", awesome.restart,
{description = "reload awesome", group = "awesome"}),
awful.key({ modkey, "Shift" }, "q", awesome.quit,
{description = "quit awesome", group = "awesome"}),
「ArcoLinux」は
-- Standard program
awful.key({ modkey, }, "Return", function () awful.spawn(terminal) end,
{description = terminal, group = "super"}),
awful.key({ modkey, "Control" }, "r", awesome.restart,
{description = "reload awesome", group = "awesome"}),
awful.key({ modkey, "Shift" }, "x", awesome.quit,
{description = "quit awesome", group = "awesome"}),
ログアウトのキーが異なるので、Win+Shift+q にします。説明は日本語へ・・・。
どちらも
-- Standard program
awful.key({ modkey, }, "Return", function () awful.spawn(terminal) end,
{description = "端末を開く", group = "launcher"}),
awful.key({ modkey, "Control" }, "r", awesome.restart,
{description = "リロード awesome", group = "awesome"}),
awful.key({ modkey, "Shift" }, "q", awesome.quit,
{description = "ログアウト", group = "awesome"}),
にします。
4. わたしの定義
主要な操作について、各プラットフォームのデフォルトの定義とわたしのカスタマイズに関して記述しておきます。
プラット フォーム | キー定義 | 備考 |
---|
mod | 端末を開く | > 閉じる | 表示切替 | ログアウト | awesome 再起動 |
---|
ArcoLinux | Win | mod+Enter | mod+q | mod+Shift+Space | mod+x | mod+Shift+r | | FreeBSD | Win | mod+Enter | mod+q | mod+Ctrl+Space | mod+Shift+q | mod+Ctrl+r | ※1 | カスタマイズ | Win | mod+Enter | mod+q | mod+Space | mod+Shift+q | mod+Shift+r | |
※1 以前は閉じるキーは mod+Shift+q のように記憶していたのですが「ArcoLinux 22.03.07」では mod+q で閉じます。
上記のコマンドの記述はそれぞれ以下のように記述しています。
機能 | 記述 | 備考 |
端末を開く | function () awful.spawn(terminal) | |
閉じる | function (c) c:kill() | |
ログアウト | awesome.quit | |
表示切替 | awful.client.floating.toggle | フローティングウィンドウへの切替 |
awesome 再起動 | awesome.restart | |
5. クライアント操作の定義
FreeBSD では
clientkeys = gears.table.join(
・・・ 略 ・・・
)
ArcoLinux では
clientkeys = my_table.join(
・・・ 略 ・・・
)
の記述が、クライアント(デスクトップ内で作業しているウィンドウのことを指しているようです)操作のキー定義です。
以下、カスタマイズした定義をどのように記述しているかも合わせて記述を掲載します。
・端末を開く
awful.key({ modkey, }, "Return", function () awful.spawn(terminal) end,
{description = "端末を開く", group = "launcher"}),
・閉じる
awful.key({ modkey }, "q", function (c) c:kill() end,
{description = "閉じる", group = "client"}),
・ログアウト
awful.key({ modkey, "Shift" }, "q", awesome.quit,
{description = "ログアウト", group = "awesome"}),
・フローティングウィンドウ切替
awful.key({ "Control" }, "space", awful.client.floating.toggle ,
{description = "フローティングウィンドウ切替", group = "client"}),
・「awesome」再起動
awful.key({ modkey, "Shift" }, "r", awesome.restart,
{description = "awesome 再起動", group = "awesome"}),
|