Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
マウスを使わないでキーボードで快適に生活する方法
Search
Kenichiro MATOHARA
January 23, 2015
Technology
28
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
マウスを使わないでキーボードで快適に生活する方法
鹿児島らぐ 鹿児島Linux勉強会 -第09回-
http://kagolug.connpass.com/event/11078/
Kenichiro MATOHARA
January 23, 2015
More Decks by Kenichiro MATOHARA
See All by Kenichiro MATOHARA
ターミナルグラフィックウェブブラウザ!?
matoken
0
36
軽量ウェブブラウザDilloのPlugin
matoken
0
48
今更LLMを触り始める(ローカルLLM bonsai)
matoken
0
160
念願のNDLOCR-Lite を試す
matoken
0
120
Nextcloud と互換性のある軽量WebDAV server のKaraDAV を試す
matoken
0
130
ActivityPub Server の snac その3
matoken
0
88
ActivityPub Server の snac その2
matoken
0
62
端末録画再生共有アプリ asciinema 3.0 リリース
matoken
0
100
アナウンス向けにミニマリスト向け ActivityPub Server の snac を利用
matoken
0
150
Other Decks in Technology
See All in Technology
2026/09/10 Spring Bootから Jakarta EE/MicroProfileへの移行
megascus
0
350
家のリアーキテクト・リファクタリング
suguruooki
0
130
Sigmaで作る業務アプリ
kazushiro_honma
0
120
module Synths; end
asonas
1
130
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
18
9.7k
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
260
すぐできる衛星通信対応 あとは山奥に行くだけ
tatetate55
0
110
株式会社シーエーシー エンジニア向け会社紹介資料
cac
0
57k
Omarchy Quattro の日本語設定周り
simosako
2
160
The Agent Builder Loop from Daily Work to OSS
minorun365
PRO
3
150
NW運用でNWトポロジ可視化ツールに期待すること/shumoku-meetup1
corestate55
2
120
コーディングエージェントでM5Stack系の開発を少し試した時の話 / M5 Japan Tour 2026 Autumn 東京
you
PRO
0
180
Featured
See All Featured
Darren the Foodie - Storyboard
khoart
PRO
3
3.9k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
570
Designing for Timeless Needs
cassininazir
1
470
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Paper Plane (Part 1)
katiecoart
PRO
1
11k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
67
58k
Building Applications with DynamoDB
mza
96
7.2k
It's Worth the Effort
3n
188
29k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Scaling GitHub
holman
464
140k
Transcript
マウスを使わないでキーボードで快適に生活す る方法 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分再々放送!
None
同人誌売ってきました • コミックマーケット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個のウィンドウまでにしてタ グを行き来するようにすると良さそう • 軽いけれどそのままでは使い勝手が悪いので 用途によりネットワークマネージャ等の設定 をしておくのがおすすめ • 慣れると便利そう(未だ数日目で手が覚えて
ない><)