はじめに
この記事は東京理科大学 Advent Calendar 2016 - Qiitaの6日目の記事です.昨日はfujitoraさんのNew Relicでめっちゃ簡単にRailsアプリケーションの監視をするでした.明日の枠はまだ埋まっていないので,この記事を見た誰かが書いてくれると嬉しいなあ.
デスクトップ環境とは
さて皆さん,快適なデスクトップ環境をお過ごしでしょうか?
唐突ですが,このスクリーンショットは半年前の僕のパソコンの様子です.
この頃はCinnamonというウインドウマネージャを使っていました.これは「スタック型」と呼ばれるウインドウマネージャです.Windowsでも同じような雰囲気だと思いますが,いくつものウインドウがあり,マウスで自在に動かせるタイプの環境です.
僕は今までスタック型の環境しか使ってこなかったわけですが,あるときふと気付きました.
「新しいウインドウを開いた時,いつも最大化している!!」
そして,知人の紹介で「タイル型」のウインドウマネージャがあるということを知り,ウインドウマネージャを変えることにしました.
タイル型を使う
今使っている環境はi3です.
こんな感じに,モニタをn分割していい感じのレイアウトで表示してくれます.
ブラウザでおなじみの「タブ」のようにウインドウを切り替えることもできます.
画面を分割した中に,タブを作ることもできます.
またi3には”floating mode”なるモードが存在し,GIMPなどスタック型のウインドウマネージャ用に作られたアプリケーションも楽々使うことができます.これが,タイル型の中でもi3をオススメしたい一番の理由です.
i3の設定
ノートパソコンで運用する上で,必要と思われる設定をまとめておきます.
ランチャー
今までGNOMEのランチャー(スタートメニュー?)を使っていたため,i3標準のdmenuは使いづらく思いました.
freedesktop.org準拠のデスクトップファイルを参照できるようにしたい,ということで,僕はrofiを使っています.rofiはコマンドライン引数に色々と書くことで挙動や見た目を変更させることができます.
i3の設定ファイルに次にように設定しました.
1 | bindsym $mod+semicolon exec "rofi -show drun -font 'snap 10' -fg '#505050' -bg '#000000' -hlfg '#ffb964' -hlbg '#000000' -o 85 -kb-cancel 'Escape,Control+g' -kb-mode-next 'Control+i'" |
Emacsのhelmと対応させて”S-;”で起動,”C-g”で閉じられるように設定しています.
デスクトップファイルについてはfreedesktop.org 規格のデスクトップファイルについてのメモ - Λlisue’s blogを参照しました.
電源管理
ロック・サスペンド・シャットダウンあたりはぱぱっとできるように設定をします.
ロック
i3の場合はi3lockを使うことでお手軽にロックがかけられます.
1 | set $Locker i3lock -i ~/Pictures/Wallpaper/kishimen.png && sleep 1 |
PrintScreen
スクリーンショットも撮りたいので設定を行います.
僕はmaimを使いました.なかなかよいアプリケーションで,画面の一部を切り取ってキャプチャを行うことができます(別途slopが必要).
1 | bindsym Print exec "maim ~/Pictures/screenshot/$(date +%F-%T).png" |
その他のキーボード・ショートカット
音量・ミュート・明るさなどを特殊キーから調整できるようにしました.
この際,キーの名前を取得する際にはxevコマンドを利用して調べました.
参考:特別なキーボードキー - ArchWiki
1 | bindsym XF86MonBrightnessDown exec "xbacklight -dec 5" |
インターネットにつなぐ
この辺からただの覚書です.
コンピュータの起動時にネットワークに接続できるようにします.
1 | exec_always --no-startup-id nm-applet |
音を出せるようにする
1 | exec_always --no-startup-id pulseaudio --start |
背景を設定する
1 | exec_always --no-startup-id feh --bg-scale ~/Pictures/Wallpaper/1366_768_20091126090927427353.jpg |
i3の基本操作(大嘘)
i3の初期設定についてはデフォルトの設定ファイルを見てもらうとして,この記事では僕オリジナルの設定を自慢したいと思います.
ワークスペースの切り替え
ワークスペースの切り替えは”S-[1234567890]”がデフォルトになっているようですが,正直狙った数字キーを押すのが面倒なので,思い切って変更しています.
“S-[asdfuiop]”とすることでいい感じに使っています.
1 | set $WSa 1:a |
もう一つポイントがあって,ワークスペース名を”数字:名前”にしています.
次の設定を書くことで,i3bar上に並ぶワークスペースが降順にソートされるようになります.
1 | bar { |
ウインドウの切り替え
複数のウインドウを表示している時,その間の移動は”S-[jkl;]”がデフォルトになっています.しかし,vimキーバインドと一つずれていてとても気持ちが悪かったので,”S-[hjkl]”で移動できるように変更しました.
1 | bindsym $mod+h focus left |
最後に
ここまで長々と設定を書いてきましたが,僕の設定ファイルをgithubに公開しているので貼り付けておきます.
taniho0707/dotfiles - gihub
また,i3の設定で参考にしたサイトです.