awesome で Visor ぽいもの

Mac には Visor があってターミナルがうにょんと出てきてなかなか便利です。

それっぽいものが awesome でもできると聞いて、やってみました。

元ネタはこちら https://awesome.naquadah.org/wiki/Scratchpad_manager

まず、 awesome の設定は /etc/xdg/awesome/rc.lua または ~/.config/awesome/rc.lua で行なうことを覚えておきましょう。 個人でいじる時は ~/.config/awesome/rc.lua に設定を書いておくのがいいです。このファイルがなければ、 /etc/xdg/awesome/rc.lua からコピってきましょう。

さて、設定を書いていく前に今回使うライブラリを git clone http://git.sysphere.org/awesome-configs でとってきます。これの scratch というディレクトリを symlink なり cp -r なりで ~/.config/awesome に持ってきておきます。

あとは rc.lua にこんな感じに書くだけです

-- これは一番上のほうに
require("scratch")

globalkeys = awful.util.table.join(
...
    awful.key({ modkey }, "s",
	      function () scratch.drop("urxvt", "bottom", "center", 1, 0.8) end)
)

これで

から、 Mod-s を押して

となります。

scratch.drop の引き数は、

  1. 起動するコマンド
  2. 縦方向の位置 top, bottom, center
  3. 横方向の位置 left, right, center
  4. 幅 (1以下なら画面幅に対する割合、そうでなければ pixel)
  5. 高さ(同上)