マウスを使わないでキーボードで快適に生活す
る方法
KenichiroMATOHARA(@matoken)
鹿児島らぐ 鹿児島Linux勉強会 -第09回-
● https://twitter.com/okano_t/status/54993421
2636082177
●
"小江戸らぐ関係者のコミケ87出展 - はと
ちゃんの足跡 ~タイムマシンにお願い~"
http://d.hatena.ne.jp/hatochan/20141230/142
0313283
コミケ行ってきました
●
コミケ詳細については
●
"知られざる“コミケ”の世界 - NHK"
http://www4.nhk.or.jp/P3397/
●
明日1/24(土)午前8時45分再々放送!
同人誌売ってきました
●
コミックマーケット3日目ジャンルは同人ソフト(240)
●
Unix系や電子工作などの島
"UNIXユーザーのためのコミケット87情報ページ"
http://linux.softwaresearch.jp/comiket/comike_list.php?comiket_nu
m=87
●
RaspberryPiネタで54ページ(Markdownで書いてodtに落と
して表紙,目次,奥付などを付けてpdfに)
●
半分ほどは河野総統の記事
●
81部刷って見本紙や献本などで-5部(前日夜にKinko'sで出力
コピー代@6円で折&中とじ製本まで自動)
●
14:00過ぎ完売
●
申込+印刷代を初めて賄える
売り切れ対策
●
増刷
●
鹿児島でコピー本作るよりオンデマンドで出したほ
うが安いのでオンデマンド印刷で増刷
●
"格安小冊子作成・冊子印刷・制作 ・印刷・印刷通販
【ちょこっと(ちょ古っ都)製本工房】"
http://www.chokotto.jp/
●
Alice Book で委託予定(今日送付)
http://alice-books.com/item/show/3584-1
●
電書も考慮中
次回のコミケ
●
夏コミ C88
●
東京ビッグサイトで8/14(金)〜16(日)
"コミックマーケット88のご案内"
http://www.comiket.co.jp/info-a/C88/C88info.html
●
同人ソフト(240)は3日目の16日(日)
"コミックマーケット88ジャンルコード一覧"
http://www.comiket.co.jp/info-c/C88/C88genre.htm
l
出しませんか?
●
本作って渡してもらえたら一緒に売ってきま
す.
●
今回も委託2冊一緒に売っていました.
問題?
●
ネタが半年経つと陳腐化することが多い
->毎回新刊のみ or 改訂版
●
一般的な漫画等だと多めに刷って次回移行期
間として頒布したり総集編が出せる
マウスを使わないでキーボードで快適に生活す
る方法
(#wbkago 1月の集まりで聞かれたのでちょっと
まとめてみました)
端末を快適に!
●
ターミナルマルチプレクサを利用
●
ログを遡ったりマルチタブ,マルチウィンドウ
やコピー&ペースト,アタッチ,デタッチなど
がキーボードのみでOK
●
代表的なツール
● GNU Screen http://www.gnu.org/software/screen/
– 以前はこれが主流だった
● tmux http://tmux.sourceforge.net/
– 新しく出てきた.これから始めるならこっち?
ヘルパーアプリ
● Byobu
●
Ubuntu 9.04 で追加された.現在はいろいろな
ディストリビューションにも採用されている
●
tmux/GNU Screen のラッパーコマンド
●
当初はGNU Screen のみの対応だったが現在は
tmux にも対応.規定値はtmux
●
hardstatusなどを複雑怪奇な設定をせずともワン
タッチで設定可能
tmuxを例に…と思っていましたが
今日はいつも使っているGNU Screenで
Debian/Ubuntuでの導入
●
導入
$ sudo apt-get install byobu
●
バックエンドの設定(規定値はtmux)
$ byobu-select-backend
●
一時的に実行するだけであれば
$ byobu-screen
$ byobu-tmux
●
起動
$ byobu
●
設定
●
byobu 起動中に F9 若しくは
$ byobu-config
設定変更
Change escape sequence
●
操作するときのエスケープシーケンスが規定値では
Ctrl+A 行頭移動でよく使うので変更する
●
結構当たるので利用するアプリケーションにより当
たらないキーを選ぶ
●
2種類くらいエスケープキーを決めておいて多段の場
合に使い分けると便利
●
参考URL
"screen's Wiki - エスケープキーの選択"
http://wiki.fdiary.net/screen/?ChoosingEscapeKey
Toggle status notifications
●
お好みで…
●
EC2 cost とか面白い
●
VPSに導入してみたり
●
ちょっと面倒だけど自分で好きなステータス
を作って追加することも出来る
●
"東京電力の電力状況をscreen のステータスに表
示 - matoken’s meme -hatena-"
http://d.hatena.ne.jp/matoken/20110624/1308929
712
基本的な操作
●
Ctrl+A → c 新規端末
●
Ctrl+A → n 次の端末へ移動
●
Ctrl+A → p 前の端末へ移動
●
Ctrl+A → 数字(0-9) 該当端末へ移動
●
Ctrl+A → A 前に使っていた端末へ移動
●
Ctrl+A → | ウィンドウ縦分割
●
Ctrl+A → S ウィンドウ横分割
●
Ctrl+A → Tab 次のウィンドウへ移動
●
Ctrl+A → x ウィンドウの削除
基本的な操作2
●
Ctrl+A → k 端末の破棄
●
Ctrl+A → esc スクロールバックモード
●
h, l, j, k, Ctrl+u, Ctrl+b… カーソル移動(vimと一緒)
●
/, ? 検索
●
Space 選択始端
●
Enter 選択終端&コピー
●
Ctrl+A → Ctrl+] 貼り付け
●
Ctrl+A → ? 簡易ヘルプ
●
Ctrl+A → x 画面ロック(解除はbyobu起動ユーザのパスワード)
●
Ctrl+A → d デタッチ
●
$ byobu -r アタッチ
設定ファイルをいじってみる
●
設定ファイル ~/.screenrc
●
スクロールバッファの行数変更
defscrollback 10000
●
ワンタッチで端末のエンコードを切り替える設定例
bind ^U encoding utf8
bind ^E encoding euc
●
ログの自動保存(たまに助けられるけどいつの間にかDiskを圧
迫してたりするので自動圧縮をcronで設定しておくといい)
logfile /home/matohara/screen.log/screenlog.%n-%H-%y%m%d-%c:
%s-%t
log on
deflog on
実際は1行
●
以下の例では300秒でブランクになる
idle 300
●
ブランク時に実行するプログラムを設定
fortuneとかnyancatとか :)
blankerprg program名
●
画面下部に起動ウィンドウ名を出す(zshでの
場合)
shelltitle "$ |zsh"
Vimで編集中
w3m(テキストブラウザ)
でブラウジング
リモートのGNU
Screen でアップデート
おまけ
● "Mosh: the mobile shell" https://mosh.mit.edu/
●
ssh代替を目指している
●
モバイルシェルの名の通りモバイル環境などで付からを発揮
する
●
遅いネットワーク環境での遅延をechobackで吸収
●
異なるネットワーク間でのローミング
●
NotePCでMosh経由でリモートサーバで作業中にそのままサスペン
ド,異なるネットワークでレジュームしても自動的にサーバに接続
してくれる
●
今のところ認証にsshを利用したり機能も少ないが便利
●
#セキュリティには注意
●
端末作業時にとても便利なツール
●
説明だけ見てもよくわからないと思うのでぜひ触っ
てみてください
●
指が操作を覚えると無くてはならないツールに!
●
端末のテキストでウィンドウ分割なども表現してい
るので高速でログを流したりとかすると面倒なこと
に分割状態で日本語を扱うと崩れることも.そうい
う場合は次のタイル型ウィンドウマネージャを試し
てみてください
ターミナル以外もキーボードで操作したい
タイル型ウィンドウマネージャ
●
ウィンドウを被さらないように配置して狭い
画面や広い画面を効率的に利用したりキー
ボードから手を離したりしないで操作が出来
る
●
軽い
●
“日本タイル型ウィンドウマネージャ推進委
員会”http://jp.tilingwindowmanager.org/
タイル型ウィンドウマネージャの
色々
●
色々ある
●
今回は触ったことのある awesome を例に
(Kobo に入れたDebian は awesome )
導入
●
大抵パッケージがあるのでパッケージマネー
ジャで
● Debian Jessie
$ sudo apt install awesome
●
本来ならこれでDMからawesomeを選ぶだけ
●
…ウィンドウマネージャのリストに出てこない?
●
Bug><
– "#701514 - Awesome doesn't display on GDM - Debian
Bug report logs"
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=7015
14
● Patch
diff --git a/awesome.desktop b/awesome.desktop
index 1f7878c..6f830b9 100644
--- a/awesome.desktop
+++ b/awesome.desktop
@@ -2,7 +2,7 @@
Encoding=UTF-8
Name=awesome
Comment=Highly configurable framework window manager
-NoDisplay=true
+NoDisplay=false
TryExec=awesome
Exec=awesome
Type=Application
●
該当ファイルの場所
$ dpkg -L awesome | grep awesome.desktop
/usr/share/xsessions/awesome.desktop
●
書き換えたらDM 再起動してawesomeを選択
●
GDM3 の場合
$ /usr/sbin/service gdm3 restart
設定ファイル
●
自分用の設定ファイル
( ~/.config/awesome/rc.lua )を用意する
$ mkdir ~/.config/awesome/
$ cp /etc/xdg/awesome/rc.lua 
~/.config/awesome/
設定のカスタム
~/.config/awesome/rc.lua を編集する
●
ターミナルを変更してみる
$ diff -u /etc/xdg/awesome/rc.lua ~/.config/awesome/rc.lua
--- /etc/xdg/awesome/rc.lua 2012-07-16 20:57:34.000000000
+0900
+++ /home/mk/.config/awesome/rc.lua 2015-01-23
04:41:27.995000197 +0900
@@ -40,7 +40,7 @@
beautiful.init("/usr/share/awesome/themes/default/theme.lua")
-- This is used later as the default terminal and editor to run.
-terminal = "x-terminal-emulator"
+terminal = "mate-terminal"
editor = os.getenv("EDITOR") or "editor"
editor_cmd = terminal .. " -e " .. editor
設定の確認
●
設定ファイルはLua Script
●
一部でも間違えると間違えた部分の設定だけで
なく全て反映されない(規定値が反映される)
●
Syntax check をしてみたり
$ luac -p ~/.config/awesome/rc.lua
●
別のDISPLAYで動作確認をしてみたり
$ Xephyr :1 -ac -br -noreset -screen 800x600 &
$ DISPLAY=:1.0 awesome -c 
~/.config/awesome/rc.lua.new
簡単な操作
●
Mod4+Enter ターミナルの起動
●
Mod4+r プログラムの起動
●
Mod4+c フォーカスウィンドウの終了
●
Mod4+j/k フォーカスの切り替え
●
Mod4+shift+j/kフォーカスウィンドウの場所移動
●
Mod4+1-9 n番のタグへ移動
●
Mod4+h/l ウィンドウサイズを広げる
●
Mod4+shift+h/l ウィンドウサイズを狭める
※Mod4はSuper(Windows)Key
ブラウザの操作もキーボードで
● Firefox
● "vimperator labs" http://www.vimperator.org/
● Chromium
●
"Vimium - Chrome ウェブストア"
https://chrome.google.com/webstore/detail/vimi
um/dbepggeogbaibhgnhhndojpepiihcmeb/related?ut
m_source=chrome-ntp-icon
どちらもVimライクに操作が可能になる
ブラウザでストリーミン
グ動画再生
GNU Screen と違いログなどを
catしても高速
ネットワークの設定のために
nm-applet起動
おまけ
●
Synergy http://synergy-project.org/
●
端末を行ったり来たりしなくても1つのキーボードマウス
で複数端末を操作出来る
●
クリップボードの共有も可能
●
マルチプラットホーム :)
●
以前は設定ファイルを手で書いたりQuickSynergy を利用
したりだったが現在はGUIの設定ツールがセットになって
設定が便利に(暗号化も)
●
設定ファイルの規定値は ~/.config/Synergy/Synergy.conf
だが synergys -c 設定ファイル で環境に合わせて指定が
可能
少し試した感じ
●
1つのタグに2,3個のウィンドウまでにしてタ
グを行き来するようにすると良さそう
●
軽いけれどそのままでは使い勝手が悪いので
用途によりネットワークマネージャ等の設定
をしておくのがおすすめ
●
慣れると便利そう(未だ数日目で手が覚えて
ない><)

マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)