Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PHPer のための Vim 実践入門 - PHP Conference 2020
Search
hamakou108
December 12, 2020
0
700
PHPer のための Vim 実践入門 - PHP Conference 2020
PHP Conference 2020 の登壇資料です。
一部 Gif アニメーションが動いていない箇所があるので、修正版を後日公開します。
hamakou108
December 12, 2020
Tweet
Share
More Decks by hamakou108
See All by hamakou108
私達のチームのデプロイ戦略の軌跡 〜継続的デプロイの導入に至るまで〜
hamakou108
1
1.3k
MathPHP で数学人材を目指す - PHPカンファレンス 2021 1週間前イベント 〜 帰ってきたPHP勉強会@東京
hamakou108
0
170
Laravel のメール認証の内部実装を掘り下げる - PHPerKaigi 2021
hamakou108
4
2.1k
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Speed Design
sergeychernyshev
25
620
Teambox: Starting and Learning
jrom
133
8.8k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
130
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
The Language of Interfaces
destraynor
154
24k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
We Have a Design System, Now What?
morganepeng
50
7.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Transcript
PHPer のための Vim 実践⼊⾨ 2020.12.12 PHP Conference Japan 2020 株式会社M&Aクラウド
濱⽥晃輔 @ hamakou108
⾃⼰紹介 濱⽥晃輔 @ hamakou108 株式会社M&Aクラウド Web エンジニア PHP, JavaScript (Node,
Vue), etc. Vimmer このスライドは Vim (+ marp) で書きました
Vim 使ってますか?
私はほぼ毎⽇ Vim を使ってます
Vimmer に対する世間のイメージ
(そう⾔われてまで) どうしてそんなに Vim にこだわるの? スピード? コマンドの多さ?
Mastering the Vim Language - YouTube
Chris Toomey ⽒の⾔葉 Speed is nice, it's a benefit that
I do get from using Vim but it's not the key reason that I use it. I use Vim because I don't have to think. Vim からその素晴らしい操作スピードを享受していますが、 Vim を使⽤する最も重要な 理由はスピードではありません。頭を使う必要がなくなるから Vim を使うのです。
使えば使うほど思考と操作のシンクロ率が上がるから ※ 個⼈の感想です。
ということで、みんな Vim を使おう!
fin
fin
Vim の弱点: 開発補助機能の不⾜
現代の開発には IDE が備える開発補助機能は不可⽋ Completion, Snippet, Linting File Tree Run Test
Git ...
Vim は本格的な開発には使えない?
None
Vim (左)と PhpStorm (右)の⽐較
主な使⽤技術 Language Server Protocol (LSP) Vim [^1] + plugins [^1]:
正確には Neovim という別流派の Vim 実装を使っています。
Language Server Protocol (LSP)
Language Server Protocol (LSP) ⾃動補完やリンタなどの機能を開発環境に提供する I/F を標準化するためのプロトコル What is the
Language Server Protocol? - Microsoft
Plugins
Completion, Snippets, Linter coc.nvim, coc-phpls, coc- snippets LSP 互換の開発補助プラグイン ⼊⼒中の補完やスニペット挿⼊
リンティング その他の機能 定義ジャンプ シンボルの参照先の⼀覧表⽰ シンボル名の⼀括リネーム etc.
File Tree defx.nvim, defx-icons, defx-git ツリー表⽰ ファイルのアイコン表⽰ Git のステータス表⽰ 作成や削除といったファイル操作
Test vim-test スコープごとのテスト実⾏が可能 カーソル⾏のテスト テストクラスの全テスト テストスイーツの全テスト
Git vim-gitgutter, fugitive.vim 修正箇所を + , - , ~ で⾏番号の
隣に表⽰ Vim 上で git status を開き、そ のまま add, commit などが可能
まとめ Vim は思考負荷を軽減してくれる素晴らしいエディタ LSP と Plugins を駆使すれば Vim でも PHP
の開発は⼗分可能 開発環境の構築は楽しいし、学びも多いのでオススメ!
ご清聴ありがとうございました!