IDEなくてもvim/vi で乗り切る処世術 - Noriaki...

45
IDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの? 高見沢徳明

Transcript of IDEなくてもvim/vi で乗り切る処世術 - Noriaki...

Page 1: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

IDEなくてもvim/viで乗り切る処世術

まだIDEで消耗しているの?

高見沢徳明

Page 2: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

こんばんは高見沢です• 食のバリアフリーを実現するメディアVegewel開発者

• IBM Bluehub・KIRINアクセラレータ採択企業フレンバシーCTO

• 社会人になって初めて使ったエディタがvi

• そして今もvim使い・・・

タカミー

Page 3: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

突然ですが

Page 4: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

皆さん開発用の ツールは

Page 5: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

もちろんIDEですよね? (統合開発環境)

Page 6: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

いや違う、 使っていない

Page 7: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

便利なのは知っている

Page 8: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

けどお金がない

Page 9: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

ので使っていない

Page 10: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

という人向けの お話です

Page 11: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

IDEってたしかに便利

なにもかもビジュアリゼーション!

Page 12: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

viとは

• Unixにデフォルトで付属しているCUIのエディタ

• 編集機能は充実

• 視覚に訴える機能は乏しい

Page 13: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

vimと違うの?

• vimはBram Moolenaarというオランダのプログラマーが作ったviクローンのエディタ

• シンタックスハイライトや画面分割などの機能が充実

• Windowsや現在使われているUnix系OS(MacOS、Lilnuxなど)でデフォルトで入っている

Page 14: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

なのでここから先は

Page 15: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

全部vimの話をします

Page 16: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

どこでも使えるvim

• UnixベースのOS(Linux, Solaris, AIX…)ならどこでも使える

• Windowsでもssh的なGUI(TeraTermとか)で利用可能

• インストール不要

• 無料!

Page 17: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

こんな機能も

• コードハイライト

• (){}などの対応確認

• 高度な検索・置換機能

Page 18: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

有料IDEの出来ること

• Gitバージョン管理

• コードアシスト

• データベース管理

• メソッド定義への遷移

Page 19: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

つまり

Page 20: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

こんなこと出来たり

コードアシスト

DB操作

ソースツリー

Page 21: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

こんなこと出来たり

Git操作

ソースツリー

Page 22: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

便利!しかし

Page 23: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

vimだとこうなる• Gitバージョン管理→fugitive

• コードアシスト→rsense(ruby), neocomplecache(PHP)

• データベース管理→dbext

• メソッド定義への遷移→cTags

Page 24: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

NerdTREE

• ファイル階層を可視化してくれるプラグイン

• ファイルをタブ、水平垂直分割表示可能

Page 25: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

rsense

• Rubyのコードアシストプラグイン

Page 26: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

DBext

VimからDB操作できるプラグイン

Page 27: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

cTags

• 元々C言語などで関数の定義場所に遷移してくれる機能

• Vimでもメソッドの定義位置などに遷移

Page 28: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

fugitive

• VimからGit操作可能な定番プラグイン

Page 29: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

全部まとめて.vimrc はこうする!

ここを見よ!すべて載せました

Vimから統合開発環境をまとめてみる2018https://qiita.com/hardreggaecafe/items/195e47e000a19a0a5dc7

ラーメン屋で言う「全部入り」?

Page 30: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

こんな感じ

Page 31: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

Git操作も!

:GStatusでgit statusした図

Page 32: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

DBも!

<leader>+slでテーブル内容表示した図

Page 33: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

コードアシストだって

Page 34: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

でも操作は すべてVimベース

Page 35: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

vimよく言われるデメリット

• ずばり初見でとっつきにくい

• キーを覚えていられない

Page 36: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

IDEがこれなら

Page 37: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

vimはこう見えるかもしれない

Page 38: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

でも絶対覚えたほうが何かと便利!

Page 39: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

これ作ったのだってvim

Page 40: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

これが理解できればOK• 編集モードとコマンドモード

• コマンド入力

• エディタ内での移動(画面の一番上、下、真ん中、行頭行末など自由)

• 検索、置換

• エディタで保存処理、終了処理

Page 41: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

使い方慣れる方法

• 普段から日報をviで書く

• スマホからトレーニング

Page 42: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

スマホからでも トレーニング可能

• 無料のVimアプリ

• スマホのSSHクライアント

Page 43: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

実際やってみました

Page 44: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

やれば出来る!

Page 45: IDEなくてもvim/vi で乗り切る処世術 - Noriaki …hardreggaecafe.com/vim-customize-like-ide.pdfIDEなくてもvim/vi で乗り切る処世術 まだIDEで消耗しているの?高見沢徳明

ありがとう ございました