Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
なぜ私はVimを使うことになったのか 開発用エディターとしてのVimの有用性に関するご報告 2019/7/26 Hoda 30代、業務未経験でIT業界へ飛び込みWebエンジニアへ Webサービスを支えるインフラの運用保守、Python/Django のアプリ改修・開発など経験 現在はVue.js, Golangのアプリ開発支援に従事 Twitter: @1031hoda
Slide 2
Slide 2 text
なぜ私はVimを使うことになったのか
Slide 3
Slide 3 text
現プロジェクトは強固なプロキシが敷かれた環境 個々の開発者でそれぞれプロキシ対策を実施していた 背景 プロ キシ の壁 環境依存をなくすため、共有のサンドボックスを用意 しかしVS Codeのリモート接続がうまくいかない
Slide 4
Slide 4 text
- 立ちはだかるプロキシの壁 - VS Codeの設定難易度の高さ 背景 打開案A: 有料の高機能エディターの導入 (IntelliJ、Golandなど) 打開案B: Vimでがんばる Vimならリモート接続の設定なしで使える もっと円滑に開 発を進められ ないか。。
Slide 5
Slide 5 text
目的 サンドボックス内にVimを導入 開発をスムーズに行えるようになるかを検証 ↓ 使いこなせれば開発用エディタとして 有用であることがわかりましたので 情報をシェアします! Vim
Slide 6
Slide 6 text
はじめにやったこと
Slide 7
Slide 7 text
- 基本的な操作 「h, j , k, l, w, b」でカーソル移動 「yy」でヤンク(コピー)、「p」で貼り付け...など - テキストオブジェクト 単語や文字列をまとめて操作できる 例:「diw」...カーソル位置の単語を削除 ↑「w」を「”」にすると「”」で囲まれた文字列をまとめて削除可能 知っている人に聞いて基本的な使い方を復習した 分かってるつもりでも意外と知らないことがあったり 復習すると新たな気づきが得られる
Slide 8
Slide 8 text
- ビジュアルモード 文字単位、行単位、矩形単位で選択し、操 作、編集が可能 例:複数行の行頭や行末に一気に文字をい れる - タブ機能 :tabe とかで複数のファイルをタブとして開 いたりできる 知っている人に聞いて基本的な使い方を復習した テキストオブジェクトとビジュアルモードを使えると 標準のメモ帳アプリより効率よくコーディングできる
Slide 9
Slide 9 text
プラグインの導入と Dockerを利用した試験環境の構築
Slide 10
Slide 10 text
開発として使うのであれば、少なくとも下記の機能は実装したい ある程度使えるようになると Vimをもっと便利にしたくなる - カラースキーム - リアルタイム入力補完 - フォーマッター - リンター プラグインで 実現可能
Slide 11
Slide 11 text
Dockerを利用した試験環境の構築 GoとVimがインストールされた Ubuntuのコンテナを用意 コードはサンドボックスのホスト側 に置き、各コンテナへマウント。 開発者はssh越しにUbuntuのコ ンテナへアタッチし、Vimでコード を編集する。 リポジトリURL: https://github.com/hodanov/docker-env-for-vim
Slide 12
Slide 12 text
Dockerを利用した試験環境の構築 ディレクトリ構成 . ├── docker-compose.yml ├── go/ ~ ├── go.dockerfile ├── vim.dockerfile └── vimrc/ └── .vimrc リポジトリURL: https://github.com/hodanov/docker-env-for-vim プラグインのインストールま で自動化 docker-compose up -d で すぐに使える環境が起動 Dockerのビルド時に コンテナへコピー
Slide 13
Slide 13 text
結果...配色、フォーマッター、リンターも使えてそこそこイ ケてる感じに。。! 使用プラグイン - Vundle - Monokai - NERDTree - Vim-go ↑ファイル マネージャー NERDTree ↓リンター Vim-go 色 Monokai
Slide 14
Slide 14 text
導入は簡単だが学習コストが高い(と感じた私は弱々エンジニア)。しかしリモート越しで の開発、かつ高機能エディタが使えない環境ではEmacsと並んでおそらく最適解。先駆者 の作成したプラグインが強力なので、使いこなせれば開発も捗ると思われる。そして使っ ていて楽しい。 課題・気になる点 - 入力補完機能が使いづらい (↑リアルタイムで入力補完できる?調査中) - できればデバッグもしたい (↑Vim-goの機能にあるかも?調査中←ありました!) まとめ
Slide 15
Slide 15 text
最後に ゴリラ.vimのみなさま ご静聴ありがとうございました! :wq