Submit Search
Upload
おすすめVimプラグインまとめ
•
Download as PPTX, PDF
•
2 likes
•
4,315 views
S
Shun Iwase
Follow
東工大横田理央研究室での第一回Vim勉強会の資料です.
Read less
Read more
Software
Report
Share
Report
Share
1 of 71
Download now
Recommended
本当にわかる Spectre と Meltdown
本当にわかる Spectre と Meltdown
Hirotaka Kawata
研究発表を準備する(2022年版)
研究発表を準備する(2022年版)
Takayuki Itoh
みんなのPython勉強会#77 パッケージングしよう
みんなのPython勉強会#77 パッケージングしよう
Atsushi Odagiri
CV分野におけるサーベイ方法
CV分野におけるサーベイ方法
Hirokatsu Kataoka
研究発表を準備する
研究発表を準備する
Takayuki Itoh
backbone としての timm 入門
backbone としての timm 入門
Takuji Tahara
できる!並列・並行プログラミング
できる!並列・並行プログラミング
Preferred Networks
メタプログラミングって何だろう
メタプログラミングって何だろう
Kota Mizushima
Recommended
本当にわかる Spectre と Meltdown
本当にわかる Spectre と Meltdown
Hirotaka Kawata
研究発表を準備する(2022年版)
研究発表を準備する(2022年版)
Takayuki Itoh
みんなのPython勉強会#77 パッケージングしよう
みんなのPython勉強会#77 パッケージングしよう
Atsushi Odagiri
CV分野におけるサーベイ方法
CV分野におけるサーベイ方法
Hirokatsu Kataoka
研究発表を準備する
研究発表を準備する
Takayuki Itoh
backbone としての timm 入門
backbone としての timm 入門
Takuji Tahara
できる!並列・並行プログラミング
できる!並列・並行プログラミング
Preferred Networks
メタプログラミングって何だろう
メタプログラミングって何だろう
Kota Mizushima
Marp Tutorial
Marp Tutorial
Rui Watanabe
tf,tf2完全理解
tf,tf2完全理解
Koji Terada
Pythonによる黒魔術入門
Pythonによる黒魔術入門
大樹 小倉
WebRTC SFU Mediasoup Sample update
WebRTC SFU Mediasoup Sample update
mganeko
30分で分かる!OSの作り方
30分で分かる!OSの作り方
uchan_nos
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
第1回 配信講義 計算科学技術特論A (2021)
第1回 配信講義 計算科学技術特論A (2021)
RCCSRENKEI
ユーザーサイド情報検索システム
ユーザーサイド情報検索システム
joisino
Lucas kanade法について
Lucas kanade法について
Hitoshi Nishimura
研究発表のためのプレゼンテーション技術
研究発表のためのプレゼンテーション技術
Shinnosuke Takamichi
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
研究発表のためのパワーポイント資料作成の基本
研究発表のためのパワーポイント資料作成の基本
Hisashi Ishihara
落合流先生流の論文要旨フォーマット
落合流先生流の論文要旨フォーマット
森 哲也
Constexpr 中3女子テクニック
Constexpr 中3女子テクニック
Genya Murakami
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
Norishige Fukushima
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
Tokoroten Nakayama
研究効率化Tips Ver.2
研究効率化Tips Ver.2
cvpaper. challenge
最適化超入門
最適化超入門
Takami Sato
WebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話す
Takaya Saeki
1076: CUDAデバッグ・プロファイリング入門
1076: CUDAデバッグ・プロファイリング入門
NVIDIA Japan
Vimを学びたい初心者のための5つの豆知識
Vimを学びたい初心者のための5つの豆知識
alwei
初心者Vimmerによるvim+rails開発
初心者Vimmerによるvim+rails開発
Daisuke Kikuchi
More Related Content
What's hot
Marp Tutorial
Marp Tutorial
Rui Watanabe
tf,tf2完全理解
tf,tf2完全理解
Koji Terada
Pythonによる黒魔術入門
Pythonによる黒魔術入門
大樹 小倉
WebRTC SFU Mediasoup Sample update
WebRTC SFU Mediasoup Sample update
mganeko
30分で分かる!OSの作り方
30分で分かる!OSの作り方
uchan_nos
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
第1回 配信講義 計算科学技術特論A (2021)
第1回 配信講義 計算科学技術特論A (2021)
RCCSRENKEI
ユーザーサイド情報検索システム
ユーザーサイド情報検索システム
joisino
Lucas kanade法について
Lucas kanade法について
Hitoshi Nishimura
研究発表のためのプレゼンテーション技術
研究発表のためのプレゼンテーション技術
Shinnosuke Takamichi
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
研究発表のためのパワーポイント資料作成の基本
研究発表のためのパワーポイント資料作成の基本
Hisashi Ishihara
落合流先生流の論文要旨フォーマット
落合流先生流の論文要旨フォーマット
森 哲也
Constexpr 中3女子テクニック
Constexpr 中3女子テクニック
Genya Murakami
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
Norishige Fukushima
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
Tokoroten Nakayama
研究効率化Tips Ver.2
研究効率化Tips Ver.2
cvpaper. challenge
最適化超入門
最適化超入門
Takami Sato
WebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話す
Takaya Saeki
1076: CUDAデバッグ・プロファイリング入門
1076: CUDAデバッグ・プロファイリング入門
NVIDIA Japan
What's hot
(20)
Marp Tutorial
Marp Tutorial
tf,tf2完全理解
tf,tf2完全理解
Pythonによる黒魔術入門
Pythonによる黒魔術入門
WebRTC SFU Mediasoup Sample update
WebRTC SFU Mediasoup Sample update
30分で分かる!OSの作り方
30分で分かる!OSの作り方
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
第1回 配信講義 計算科学技術特論A (2021)
第1回 配信講義 計算科学技術特論A (2021)
ユーザーサイド情報検索システム
ユーザーサイド情報検索システム
Lucas kanade法について
Lucas kanade法について
研究発表のためのプレゼンテーション技術
研究発表のためのプレゼンテーション技術
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
研究発表のためのパワーポイント資料作成の基本
研究発表のためのパワーポイント資料作成の基本
落合流先生流の論文要旨フォーマット
落合流先生流の論文要旨フォーマット
Constexpr 中3女子テクニック
Constexpr 中3女子テクニック
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
研究効率化Tips Ver.2
研究効率化Tips Ver.2
最適化超入門
最適化超入門
WebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話す
1076: CUDAデバッグ・プロファイリング入門
1076: CUDAデバッグ・プロファイリング入門
Similar to おすすめVimプラグインまとめ
Vimを学びたい初心者のための5つの豆知識
Vimを学びたい初心者のための5つの豆知識
alwei
初心者Vimmerによるvim+rails開発
初心者Vimmerによるvim+rails開発
Daisuke Kikuchi
Vim衆のつどい
Vim衆のつどい
Yuki Kokubun
Vimから見たemacs
Vimから見たemacs
Shougo
プラグインだけじゃない!そのままでもすごいvim
プラグインだけじゃない!そのままでもすごいvim
Keisuke Izumiya
kyoto vim#1
kyoto vim#1
Yoshihiro Ura
rucs_vim LT
rucs_vim LT
Naoya Inada
Vimプラグインを使おう
Vimプラグインを使おう
Hideaki Miyake
Ruby on vim yokohama.vim発表資料
Ruby on vim yokohama.vim発表資料
Shohei Kobayashi
Shougoの開発環境
Shougoの開発環境
Shougo
My dev env
My dev env
Yoshiyuki MIKAMI
2014 12-06 ngk2014-b_2014年のvim
2014 12-06 ngk2014-b_2014年のvim
cohama
我が evil-mode を嫌いな理由 〜evil-mode の闇〜
我が evil-mode を嫌いな理由 〜evil-mode の闇〜
Shougo
Vimperator abc
Vimperator abc
洸人 高橋
anyframeを使おう
anyframeを使おう
Hideaki Miyake
Tdd vim
Tdd vim
Tak Nishikori
こわくないSymfony2 - 業務で使って気づいた7つの良いところ
こわくないSymfony2 - 業務で使って気づいた7つの良いところ
Go Nakanishi
Vimの基本の基本
Vimの基本の基本
晋 小沼
自己紹介という名のVimのススメ
自己紹介という名のVimのススメ
haya14busa
そろそろSublime Text 2を熱く語ろうと思う
そろそろSublime Text 2を熱く語ろうと思う
Tadayuki Onishi
Similar to おすすめVimプラグインまとめ
(20)
Vimを学びたい初心者のための5つの豆知識
Vimを学びたい初心者のための5つの豆知識
初心者Vimmerによるvim+rails開発
初心者Vimmerによるvim+rails開発
Vim衆のつどい
Vim衆のつどい
Vimから見たemacs
Vimから見たemacs
プラグインだけじゃない!そのままでもすごいvim
プラグインだけじゃない!そのままでもすごいvim
kyoto vim#1
kyoto vim#1
rucs_vim LT
rucs_vim LT
Vimプラグインを使おう
Vimプラグインを使おう
Ruby on vim yokohama.vim発表資料
Ruby on vim yokohama.vim発表資料
Shougoの開発環境
Shougoの開発環境
My dev env
My dev env
2014 12-06 ngk2014-b_2014年のvim
2014 12-06 ngk2014-b_2014年のvim
我が evil-mode を嫌いな理由 〜evil-mode の闇〜
我が evil-mode を嫌いな理由 〜evil-mode の闇〜
Vimperator abc
Vimperator abc
anyframeを使おう
anyframeを使おう
Tdd vim
Tdd vim
こわくないSymfony2 - 業務で使って気づいた7つの良いところ
こわくないSymfony2 - 業務で使って気づいた7つの良いところ
Vimの基本の基本
Vimの基本の基本
自己紹介という名のVimのススメ
自己紹介という名のVimのススメ
そろそろSublime Text 2を熱く語ろうと思う
そろそろSublime Text 2を熱く語ろうと思う
おすすめVimプラグインまとめ
1.
おすすめVimプラグイン紹介 @横田研Vim勉強会 横田理央研究室 修士2年 岩瀬
駿 1
2.
自己紹介 • 氏名 • 岩瀬
駿 (いわせ しゅん) • 所属 • 横田理央研究室 修士2年 • コンピュータビジョン関連の研究をしてます • 趣味 • Vimでコーディング • Vimプラグイン探し • Vimの布教活動 2
3.
自己紹介 3http://i.imgur.com/OJ9i8le.jpg
4.
Vimプラグインとは? 4
5.
Vimプラグインとは? Vim Scriptによって書かれたVimの拡張機能 (NeovimだとPythonでも書ける) 5
6.
Vimプラグインとは? Vimをちゃんと使いこなせていますか? 自分のVimに満足できてますか? 6
7.
Vimプラグインとは? Vimプラグインを使えば, 自分だけの快適な編集環境を作れる! 7
8.
Vimプラグインとは? 設定めんどうくさくないの? ゼロから書かないといけないの? プラグイン全部調べなきゃいけない? AtomやVisual Studioの方がいいじゃん? そうはいうけど… 8
9.
Vimプラグインとは? vimrcに設定を書くだけで, どこでも同じ環境を簡単に再現可能! vimrcの一例 Githubには先人のノウハウが詰まった すごいvimrcがたくさん落ちてる😆 9
10.
Vimプラグインで何ができるの? •ファイル・文字列の検索 •シンタックスハイライト •Linter機能 •ファイラー(ファイル管理ツール) •補完機能 •他にもいろいろたくさん… 10
11.
Vimプラグインとは? IDEでできることはほぼ全部できる!!!! 全部ターミナルで作業が完結!!最高!! 11
12.
プラグイン管理 12
13.
プラグイン管理 13 • dein.vim • NeoBundle •
Vundle プラグインを管理するためのプラグイン • vim-pathogen • vim-plug など
14.
プラグイン管理 日本だと暗黒美夢王(Shougo)の開発したdein.vimを使ってる人が多い 最も高速に動作するのは, dein.vim 14
15.
ファイル・文字列の検索 15
16.
ファイル・文字列の検索 とりあえず, FZFとRipgrepを入れよ う 16
17.
ファイル・文字列の検索 • FZFは絞り込み検索のためのライブラリ • Ripgrepは最も高速に動作するgrep(文字列の検索のためのコマンド) "
fzf.vim if dein#tap('fzf.vim') command! -bang -nargs=* Rg call fzf#vim#grep( ‘rg --column --line-number --no-heading --color=always '.shellescape(<q-args>), 0, fzf#vim#with_preview( {'options': '--exact --delimiter : --nth 3.. --preview "rougify {2..-1} | head -'.&lines.'"'}, 'right:50%')) nnoremap <silent> <C-t> :call Fzf_dev()<CR> nnoremap <silent> ,g :Rg<CR> endif “Ctrl + t” でファイル検索, “,g”で文字列検索ができるようにするための設定例 17
18.
ファイル・文字列の検索 18
19.
シンタックスハイライト 19
20.
シンタックスハイライト • 可読性が向上する • 言語ごとに異なるプラグインが提供されてる
(“言語名 highlight vim”で検索) • Df とすれば初期設定でもある程度ハイライトされる • あえて有効化しないという猛者もいるらしい? • 詳しくは次の発表で!! Before After 20
21.
シンタックスハイライト Python • vim-python/python-syntax • numirias/semshi
(Semantic highlight for Neovim) C++ • octol/vim-cpp-enhanced-highlight • bfrg/vim-cpp-modern 21
22.
シンタックスハイライト Javascript • pangloss/vim-javascript • mxw/vim-jsx
(For JSX) Golang • fatih/vim-go 22
23.
Linter 23
24.
Linterとは? • タイポでおかしな変数名に代入してる • if文の最後にコロンを忘れがち
(Python) • 動的型付け言語に汚染されると型定義忘れがち (C, C++, Golang) • 定数変数に代入しようとしてる (Javascript等) 文法のチェックをしてくれる機能 24
25.
Linterとは? Linterがあるだけで, 開発速度が全然変わる (人間は小さなミスになかなか気づけない…) 25
26.
Linter 昔はSyntasticというLintエンジンが よく使われていた 26
27.
Linterとは? 27 Syntasticはファイル保存時に 同期的にLintを行う
28.
Linterとは? 28 Lintの実行中は他の操作ができない
29.
Linterとは? 29 でも今はALEがある! (Asynchronous Lint Engine)
30.
30 ALEとは? 非同期でLintを実行してくれる Vimプラグイン
31.
31 ALEとは?
32.
32 ALEとは? • C++: cppcheck,
clang-tidy, clang++ (コンパイラに含まれている) • Javascript: JSLint, JSHint, ESLint • Python: pycodestyle(pep8), flake8, pylint • Golang: gofmt (Golangについてくる) それぞれの言語ごとのLinterは各自インストール
33.
ファイラー 33
34.
ファイラー 基本的なファイル操作を 行うためのツール 34
35.
35 ファイラーでできること • 一覧を表示 • 開く •
作成 • 削除 • 移動 • コピー • 名前の変更 • 検索 ファイル・ディレクトリの など
36.
ファイラー 36 けれども, サードパーティのファイラーは, 機能が豊富かつカスタマイズ性が高い!
37.
ファイラー 37
38.
ファイラー 38 Netrwというデフォルトのファイラーが 実はかなり便利…
39.
ファイラー 39 サードパーティは, NERDTreeとvimfilerの一騎打ち状態だっ た
40.
ファイラー 40 Vimfilerは開発が終了し, defx.nvimへ移行中…
41.
ファイラー 41 個人的には, defx.nvim一択
42.
ファイラー 42 netrw NERDTree Vimfiler defx.nvim 10000ファイルのディレクトリを開くためにかかる時間の比較 15秒 15秒 計測不能 3秒
43.
ファイラー 43
44.
ファイラー 44 defx.nvimはまだ情報があまりないので, 初心者向けではないかも(2019/04現在)
45.
ファイラー 45 それでも試したい方は, github.com/sh8/vimrcを 参考にしてみてください!
46.
補完機能 46
47.
補完機能 Vimはデフォルトで, Ctrl+x, Ctrl+pを使った補完機能がある 47
48.
補完機能 あくまで定義済みの 変数名や特定の行の補完のみ… 48
49.
補完機能 いろいろな言語で 関数名やその引数まで補完したい!! 49
50.
補完機能 • deoplete.nvim (非同期補完のためのプラグイン) •
vim-lsp (VimのLanguage Server Protocol実装) を使えば簡単に実現できる!! 50
51.
補完機能 つまりどんなことができるの? (Python編) 51
52.
補完機能 52
53.
補完機能 つまりどんなことができるの? (C++編) 53
54.
補完機能 54
55.
LSP (Language Server
Protocol) とは? Microsoftが2016年6月に公開 (結構最近!!) 55
56.
LSP (Language Server
Protocol) とは? ソースコードを解析して, 型や変数の自動補完や, Linter, エラー解析・修正などを行う機能を持つ 56
57.
LSP (Language Server
Protocol) とは? 様々なエディターで共通して利用できるプロトコルなので, 言語 x エディターの組み合わせごとに, 補完エンジンやLinterを開発する必要がなくなった!! https://code.visualstudio.com/api/language-extensions/language-server-extension- guide 57
58.
LSP (Language Server
Protocol) とは? どのエディターを用いても, 同じ補完エンジン・Linterを使える! 58
59.
LSP (Language Server
Protocol) とは? 言語毎にLSPの実装があるが, どれも機能が充実していて質が高い! 59
60.
補完機能 • deoplete.nvim (非同期補完のためのプラグイン) •
deoplete-lsp (deopleteとvim-lspをつなげてくれるプラグイン) • vim-lsp (Vimにおける, Language Server Protocol実装) • echodoc (Vimの下部分に関数に関する情報を表示) を使えば再現できるのでgithub.com/sh8/vimrcを参考に(ry 60
61.
その他の便利プラグイン 61
62.
その他の便利プラグイン • vim-scripts/YankRing.vim • ヤンクした履歴を保持してくれる •
Ctrl + pをすると過去のヤンクしたバッファに遡れる • rhysd/accelerated-jk • 縦のjk移動がすごく速くなる • tomtom/tcomment_vim • コメントアウトをショートカット 62
63.
その他の便利プラグイン • vim-airline/vim-airline • ステータスバーがかっこよくなる •
airblade/vim-gitgutter • Git管理されてるファイルの差分を表示 • lervag/vimtex • VimでTex, 書いちゃう? 63
64.
(番外編) カレンダーの表示 64
65.
(番外編) カレンダーの表示 Vimでカレンダー管理したい! Vimからもう離れたくない! 65
66.
(番外編) カレンダーの表示 calendar.vim を使えば, GoogleカレンダーをVimから管理できる! 66
67.
(番外編) カレンダーの表示 67
68.
(番外編) カレンダーの表示 68
69.
:help コマンドで プラグインの使い方を知ることができる 最後に 69
70.
Vim沼は深いので気をつけましょう 最後に 70
71.
vimrcは公開してます https://github.com/sh8/vimrc/ 最後に 71
Download now