shougoの開発環境
DESCRIPTION
I explained my favorite environment.Of course, all tool is Vim!TRANSCRIPT
![Page 1: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/1.jpg)
5 分で学ぶ Vim とVim plugin (仮)
![Page 2: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/2.jpg)
自己紹介
● 初めての人は初めまして。会ったことある人はこんにちは。
● 関東の勉強会によく出没しています● 趣味は Vim Script を書くこと● Vim 勉強会と聞いてやってきました
![Page 3: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/3.jpg)
今日は開発環境勉強会のために暖めていた、
渾身のスライドを発表します!
![Page 4: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/4.jpg)
やあ
ようこそ、ジンブーハウスへ。
このプラグインはサービスだから、まずはインストールして落ち着いて欲しい。
うん、「また」なんだ。済まない。猿の顔も三度って言うしね、もはや謝って許してもらおうとも思っていない。
でも、このタイトルを見たとき、君は、きっと言葉では言い表せない「ときめき」みたいなものを感じてくれたと思う。殺伐としたエディタの覇権争いの中で、そういう気持ちを忘れないで欲しいそう思って、このスライドを作ったんだ。
じゃあ、キミの要望を聞こうか。
![Page 5: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/5.jpg)
今日のスライドの内容
● 開発環境勉強会用のスライドを今使ってしまうのはまずいかなーと思ったので
● 予定を変更して、私の使っているツールや、毎日使っているプラグインについて紹介します
● やはり、自分も有名な人の使っているプラグインについては知りたい
例: kana さん、 Bram さん とか
● 初心者も多いみたいだし、おそらく需要はあるだろう
![Page 6: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/6.jpg)
ふつうの Vim 使いの開発環境
![Page 7: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/7.jpg)
使っているエディタ
● Windows 香り屋さんのやつ Vim 7.3● Linux ソースからコンパイルしたもの Vim 7.3● ちなみに、どっちも GVim です● コンソールの Vim は嫌いです● Mac ? なにそれおいしいの● Mac は MacVim が (ry なので使う予定がない
![Page 8: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/8.jpg)
使っているシェル
● 当然 vimshell– vimshell とは Vim Script で記述されたシェルのこ
と
– Emacs でいう eshell のような存在
● たまには nyaos や zsh も使います● vimshell で全ての作業を完結させるのが夢
![Page 9: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/9.jpg)
使っている端末
● GVim で vimshell を端末代わりにしている● screen ? なにそれおいしいの● screen は Windows で使えない● Cygwin は重くて使いものにはならない● GNOME Terminal は GVim を起動するためのも
の
![Page 10: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/10.jpg)
Shougo の使っているVim plugin 紹介
![Page 11: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/11.jpg)
注意
● 私の作ったプラグインが半分以上含まれているのは仕様です
● だって、他の人が書いたプラグインのソースコードは大抵腐(以下検閲により削除)
● kana さんも入れているプラグインのほとんどは自作だって言ってたし
● ついでにプラグインについての裏話もできるといいな……
![Page 12: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/12.jpg)
unite.vim(1)
● やはりこれは最初に紹介しないわけにはいかない● Vim の世界を変えたプラグイン(言い過ぎ)● 詳細は前回の Yokohama.vim #0の資料を参照● ku.vim, FuzzyFinder, vimfiler, anything.el の影響をかなり受けている
![Page 13: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/13.jpg)
unite.vim(2)
● あらゆるプラグインとの連携は非常に強力● あれからだいぶ機能が追加されたので、 Ver.2.0
がもうすぐ出る?かな● 追加された機能の例:
– アクション選択の unite化
– filter のカスタマイズ
– シンタックスハイライト
– 非同期対応
– メッセージ出力
![Page 14: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/14.jpg)
neocomplcache
● 言わずとしれた最強の補完プラグイン● 実は Vim の補完機能に制限されて本気は出せて
いない……● しかし、 unite.vim と組み合わせれば最強の補完イ
ンタフェースに!(ただし補完は手動)● Ver.6.0ではキャッシュを非同期に行うようになった
![Page 15: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/15.jpg)
vimshell
● Vim Script で実装されたシェル● 実は neocomplcache より歴史が古い● 構文は独自なので、 Bash のスクリプトは動きませ
ん!● これは仕様● そもそも、シェルスクリプト自体が腐って (ry
![Page 16: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/16.jpg)
vimproc
● Vim に非同期通信の機能を与えてくれるプラグイン
● もともとの作者は中平さん。しかし、大幅に私が改造した
● 非常に地味だが重要● 特に Windows 環境で活躍する● Python インタフェースでも同じことはできるけど…
…● 私は Python インタフェースが嫌いです(キリッ)
![Page 17: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/17.jpg)
vimfiler
● netrw を置き換えるために作られたプラグイン● ファイル操作がしやすい● が、最近 unite.vim のおかげで影が薄い● metarw のようなプロトコルの統合とか、いろいろや
りたいことはあったのだけど……● 将来的には unite.vim と統合?
![Page 18: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/18.jpg)
echodoc
● エコーエリアに関数のプロトタイプを表示する● 作者は私です● 今のところ、 neocomplcache や vimshell が対応
している● Emacs でいうと eldoc に相当する
![Page 19: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/19.jpg)
eskk.vim
● Vim で skk 日本語入力を行えるプラグイン● 作者は tyru さん● neocomplcache との連携で自動補完が可能(こ
こ一番重要)● しかし、動作が不安定
なので使用者は少ない……● 私は使っているけどね!
![Page 20: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/20.jpg)
lingr-vim
● Vimmer にとっては必須の lingr に Vim で簡単に接続するためのプラグイン
● ただし、 Vim に Python インタフェースが必要● 作者は tsukkee さん● 君も Lingr で Vimmer達と握手!
![Page 21: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/21.jpg)
smartchr
● =を入力すると自動的に両端にスペースを入れてくれるプラグイン
● 地味だが、かなり強力● 応用すると「 . 」→「 -> 」→「 . 」ということもできる● 作者は kana さん● ちなみに、 Emacs にも移植した人がいる(あのIMAKADO さん)
![Page 22: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/22.jpg)
caw.vim
● Vim で簡単にコメントアウトをするためのプラグイン● 作者は tyru さん● あの NERD_commenter より便利だと思う● 初期は安定していなかったが、最近は使えるレベル
になってきた……はず
![Page 23: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/23.jpg)
pathogen.vim
● プラグインを管理するためのプラグイン● 作者は surround.vim, rails.vim を書いたあの
Tim Pope さん● 他のプラグインにも似たようなものはあるが、これは構造が単純な上に作者が有名なので知名度が高い
● プラグインのアップデートやアンインストールの機能は持たないので注意!
● これと git-submodule を組み合わせて活用している人が良くいる
![Page 24: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/24.jpg)
surround.vim
● Vim に surround operator を追加するプラグイン● 作者は Tim Pope さん● 正直地味……しかし、毎日使う● しかし、デフォルトで定義されるキーマッピングがアレ
● 勝手にインサートモードにキーを定義するんじゃない!
![Page 25: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/25.jpg)
git-vim
● Vim から git を手軽に扱うためのプラグイン● 元の作者は motemen さん。しかし、自分は改造バージョンを使っている
● そろそろこれを使い続けるのもつらくなってきた● thinca さん、 vcs.vimマダー?● 実は vimshell との連携など、いろいろと妄想は
あったのだが……
![Page 26: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/26.jpg)
選外
● 自分が使っていないので、候補から漏れたプラグインを簡単に紹介
● quickrun– スクリプトファイルを手軽に実行する
● ref.vim– マニュアルを引く
● fakeclip– 疑似クリップボードレジスタを使えるようにする
![Page 27: Shougoの開発環境](https://reader031.vdocuments.site/reader031/viewer/2022020715/556602b1d8b42aa6628b4a1a/html5/thumbnails/27.jpg)
ご清聴ありがとうございました!
開発環境勉強会は結局いつやるんだろう……