2010-04-04 [長年日記]
_ [emacs] emacs勉強会
@yoozoosato さんの日記でemacsの話題があったので、
twitterで「勉強会やったら来てくれますか?」と問いかけたところ、
ようぞうさんの快諾とともにemacsの魔法に反応した
召還獣のみなさんがつぎつぎと「ガラッ!」な状況になったため
emacs勉強会を万葉の会議室で開催しました。
私は2年ほど前に @hidaqa 先生に師事し大崎のモスバーガーで使い方を教えてもらって以来、
この壮大な育てゲーに没頭しているわけでして、
その @hidaqa 先生に少しは恩返しできたのであればうれしいことです。
今日のルールはこんな感じ。
・1人5分くらいでネタ披露
・披露じゃなくて、「これなんとかできない?」とか質問でもおk
・いつでもツッコミ、ノッカリ、脱線推奨
・一段落したら次の人に交替
今日は7人で4時間で3周できました。
KPTで「全員が発言できてよかった」ってのが出たので、なるほどな副産物でした。
あと、よかったのはみんなの仕事内容がばらばらだったので、
ユースケースがいろいろあってそれぞれの立場からいろんな示唆があったこと。
学生さんの @siguremon さんもいたので研究者の視点もあったし。
今日の収穫はたくさんあるのですが、
・(server-start) しとくとshellから emacsclient [file] で既存起動emacsで開ける
・ecsは使ってみたい
・describe-function でヘルプとは一味違う説明が読める
・ediff-regions-linewise のdiffが強力
・.zshrc でgit管理下へ移動すると git status によって色が変わるのは便利
あと @t_wada さんのautotest相当のことをCPU負荷を上げずにできるHackを見れて思想を聞けたのはよかった。
Linuxのinotifywait でファイル更新を監視し、 notify-send で growl みたいに通知。
@n_sakuma さんのzsh, screen, emacs の連携も、
あれは実際に見ないとなかなかイメージできないのでありがたかったです。
懇親会でもいろいろ濃い話をしましたが、
@iwagaki さんのブレーカー駆動生活はやはり卓越してましたね。w
zsh 周辺の話がまだ開拓の余地がありそうなので、
次は開発環境勉強会をやりたいね、という結論でお開き。
参加者のみなさんありがとうございました。
IRCのログはこちらです。
14:10 hidaqa: shell-command-on-region
14:10 idmtv: shell-command-on-regionで選択範囲をシェルに送り込む
14:11 hidaqa: Execute string command in inferior shell with region as input. Normally display output (if any) in temp buffer `*Shell Command Output*'; Prefix arg means replace the region with it. Return the exit code of command.
14:12 igaiga: http://igarashikuniaki.net/tdiary/20100214.html
14:12 igaiga: ruby-gsub のはここにまとめてました。
14:13 t-wada: wdired-mode おおおなんぞこれwww
14:22 hidaqa: ;; ファイル名でのダイレクトアクセス (defun my-icompleting-read (prompt choices) "Use iswitch as a completing-read replacement to choose from choices. PROMPT is a string to prompt with. CHOICES is a list of strings to choose from." (let ((iswitchb-make-buflist-hook (lambda () (setq iswitchb-temp-buflist choices)))) (iswitchb-read-buffer prompt))) (defun gtags-find-file-with-completion ()
14:24 hidaqa: (defun gtags-find-file-with-completion () "Invoke `gtags-find-file' with completion." (interactive) (when (featurep 'mcomplete) (turn-off-mcomplete-mode)) (unwind-protect (with-temp-buffer (if (= 0 (call-process "global" nil t nil "-P" "")) (let* ((buffer-string (buffer-substring-no-properties (point-min) (point-max))) (filename-list (mapcar #'file-name-nondirectory (split-str
14:27 hidaqa: 猛省
14:30 idmtv: GNU Global で gtags.el の改造方法 http://d.hatena.ne.jp/mtv/20100326/p1
14:30 siguremon_: howm=ひとりお手軽wikiもどき
14:41 idmtv: git.el
14:42 idmtv: GitとEmacsの連携ktkr
14:43 idmtv: ditz 分散型バグトラッキングシステム
14:43 yoozoosato: ditz rubyで書かれてる
14:45 idmtv: 1issueが1yamlファイルに対応している
14:55 idmtv: 開発飽きた宣言w pure geek
14:58 yoozoosato: cua-mode
14:58 idmtv: 矩形選択
14:58 idmtv: なかなか使いどころが難しいと思っている
15:02 idmtv: TODO: cua-modeのキーバインドを覚える
15:06 yoozoosato: このfont読みやすそう
15:08 idmtv: anything
15:08 idmtv: インターフェイスを統一して作業をやりやすくする
15:18 idmtv: gnome-doでmicroblogging pluginで.を打つと日本語もいけるっぽい
15:20 yoozoosato: gnome do
15:20 yoozoosato: Macでいうところのquick silverみたいなやつ
15:25 yoozoosato: Mac visor
15:25 t-wada: aptitude isntall gnome-do gnome-do-plugins で行けます > gnome-do
15:26 yoozoosato: これか > http://igarashikuniaki.net/tdiary/20100324.html
15:27 idmtv: screenヤバイ
15:28 igaiga: Visor + tmux がめっちゃ便利 by hsbtさん
15:30 igaiga: http://www.hsbt.org/diary/20100329.html#p02
15:33 yoozoosato: すげー。bufferにgraphvizが埋め込まれる
15:33 yoozoosato: image-mode?
15:34 idmtv: 熱い
15:35 t-wada: iimage-mode 熱い!!
15:41 yoozoosato: indent の逆はなんて言うのか? & 簡単に実現できないか?
15:49 t-wada: deindent というらしいです
15:58 igaiga: ditz早いな。すげーな。
15:58 hidaqa: すげー
16:01 igaiga: grit
16:01 igaiga: http://d.hatena.ne.jp/amacou/20090408/1239187917
16:05 igaiga: git-svn
16:16 yoozoosato: elscreen
16:16 igaiga: ecs = emacs code browser
16:19 yoozoosato: 便利そうだ < elscreen
16:19 igaiga: hikimode は hiki のソースコードの中に入っている
16:20 igaiga: rinari-mode (rails便利モード)
16:29 yoozoosato: RPROMPT=" %/:$WINDOW"
16:36 siguremon_: http://garaemon.net/
16:36 siguremon_: emacs-settings = emacsのパッケージをaptみたいにterminalからインストールできる
16:41 t-wada: wanderlust + MHC
16:43 t-wada: モダン emacs で動くかはわかりません><
16:52 igaiga: http://cx4a.org/software/rsense/index.ja.html
16:52 igaiga: RSense
16:53 idmtv: ruby way = あると思って書くと、やっぱりあった
16:57 t-wada: dinamic abbrev が emacs のキラー機能
16:57 t-wada: dynamic...
16:58 yoozoosato: .emacsは1行。他のファイルを読み込む。
16:58 yoozoosato: 「育ててる感」重要w
16:58 t-wada: すげーー
16:58 t-wada: 丁寧
17:01 t-wada: byte-recompile-directory
17:03 t-wada: ediff-regions-linewise
17:12 igaiga: describe-function
17:13 idmtv: yasnippet.el or yasnippet-bundle.el は是非
17:38 igaiga: scratchバッファを消さないようにする
17:38 igaiga: http://www-tsujii.is.s.u-tokyo.ac.jp/~yoshinag/tips/elisp_tips.html#scratch
17:41 yoozoosato: http://saikyoline.jp/weblog/2009/03/19/232758.html
17:42 yoozoosato: http://blog.somethingnew2.com/archives/2010/01/tddbcruby.php