筆者の環境について Vim にはプラグインマネージャも沢山あります。その中で僕は vim-plug を使っています。Software Design という雑誌で「Vim の細道」という連載をやっている事もあり、皆さんに一番リーチしやすいプラグインマネージャを選んでいるという事もありますが、基本は「トラブルが発生しづらい」という理由で使っているのもあります。 vimrc の分割管理 ところで最近は Vim プラグインが沢山あり、個々に設定が必要な場合もあります。全て vimrc の中に書いてしまうのも良いのですが、そうするとどこからどこまでが、どのプラグインの設定か分からないといった問題が起きてしまいます。僕は vimrc をプラグイン毎に分割して管理しています。 Big Sky :: ぼくがかんがえたさいきょうの Vim のこうせい 2019年 年末版 " Vim 本体の機能のデフォルト値
始めに Vimには:wと:rコマンドがあります。コマンド自体は知っている方が多いかと思います。 ぼく的にちょっと便利な使い方ができるので、それお紹介していこうと思います。 :r :r banana.txtでファイルの中身を読み取って、現在のカーソルの次の行に挿入してくれます。 挿入できる行も指定できます。その場合は:{lnum}r banana.txtというふうに先頭に行番号を入力します。 ここからがイチオシですが、実は:r !{cmd}でコマンドの出力も挿入できます。 たとえば、APIのレスポンスをVimでちょっと編集したい場合や、コマンド実行結果を記事に挿入したい場合などに便利です。 :w :wについてVimmerのみなさんなら誰もが知っているコマンドなので説明は省きますが、 実は:w !{cmd}でバッファの内容を外部コマンドの標準入力として渡してくれます。 つまり、標準入力からコー
2020年4月16日紙版発売 2020年4月16日電子版発売 Ruslan Osipov 著,大倉雅史 訳 B5変形判/344ページ 定価3,608円(本体3,280円+税10%) ISBN 978-4-297-11169-4 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 本書のサポートページサンプルファイルのダウンロードや正誤表など この本の概要 Googleの現役エンジニアが書いた,テキストエディタ「Vim」の解説書です。OSごとのインストールや基本操作といった入門的内容も押さえつつ,リファクタリング,デバッグ,実行,テスト,バージョン管理システムとの連携,プラグインの作成と管理といったソフトウェア開発に便利な機能を,Pythonのコー
後ろの方に追記をいくつか書いているのでそちらも是非参照ください 今日さくらインターネット研究所の雑談タイムで、viの終了時には:wqや:q!とかで終了するよりもZZで終了すべき、という話題が出た。 ここで簡単に整理しておくと、 :wqはファイルを上書き保存して終了 :qは上書きせずに終了 ZZ はファイルに変更があれば保存して終了、なければ上書きせずに終了 というコマンドである。 最初はZZ便利だよなぁと思っていたけど、確か過去にZZだとやりにくいところがあって使うのをやめた記憶があった。それで色々話をしていると、やっぱりZZを使った方が良いケースが思いつかなかった。 そこで、ZZいらんでしょ、などと発言したりしていたのだった。 といのうも、僕のviの終了するパターンとしては、 まず:qを押す 変更がなければそのまま終了、変更があれば変更があるよとwarningが出て終了できない warn
Vimから外部のシェルコマンドを実行して出力結果を得たり、バッファ内のテキストの変換を行う方法を紹介しています。 はじめに こんにちは、データインテグレーション部の平野です。 私はテキストエディタにVimを使用しています。 Vimは敷居が高いと言われますが、ある程度慣れてくると普通のエディタとは明らかに異なる、Vimらしい編集方法がだんだんと身についてくるものです。 今回はVimから外部のシェルコマンドを実行してテキスト編集する手段についてご紹介します。 なお、Vimには色々なプラグインが公開されておりますが、ここで紹介する方法はあくまでもVimのオリジナル機能ですので、その場ですぐ試すことができます。 (lsコマンド等にはPATHが通っているという前提です) カレントディレクトリのファイル一覧を取得したい Vimでテキストを編集していて、カレントディレクトリのファイル一覧を挿入したい、と
(注:2017/04/19、いただいたフィードバックを元に翻訳を修正いたしました。修正内容については、 こちら を参照ください。) Vim使用について述べた先の投稿( 1 、 2 )は好評だったこともあり、そろそろ更新が必要になりました。Vim 8には非常に要望の多かった機能がたくさん追加され、 VimAwesome のような新しいコミュニティサイトができたことでプラグイン探しと評価が容易になりました。最近では私もVimで仕事をする機会がとみに増え、 ピーク効率 に向け自分のワークフローの設定に時間を費やしたりもしています。ですから、この記事は私の現在の状況を写し取ったものです。 大まかには次の内容です。 ファイル特定にはfzfとfzf.vim *ファイル検索にはack.vimと ag Vim + tmuxが勝利への鍵 ALEは新Syntastic。理由はその非同期性 …などなど多数。ぜひ
先人のvimmer様が作ったチートシートはUS配列の図か、 日本語化されたものでもコマンドの羅列のみの物が多かったので、 JIS配列+日本語表記のvimチートシート作りました。 まずはテンプレート作成 世界一有名であろうこの図を元に作成する。 幸いなことにこの図をJIS配列化しているVimmerの方が居たので、 JIS配列化されているものを使用する。 そして英語説明部分を切り取ったものがこちら。 日本語化 まっさらな状態のJIS配列表にキー説明を書き込んでいく。 最後に自分用のメモ書きを書き込んで完成! キーマッピングを独自に変えててこのままじゃ使えないよ!という先輩Vimmer様はまっさらな状態の物から自分専用チートシートを作ってください! (間違っている箇所があればご指摘ください!)
普段 Vim を使っていて、つくづく「このマッピング便利だな〜」と思うものをご紹介します。 空行・スペース処理 1行ごとに空行を入れる 空行をカットする 行内のスペースをカットする 全角英数字を半角にする Markdown記法のリスト化 日時をすぐに出す 曜日もすぐに出す .vimrc をすぐ操作する 一時的なゴミ箱ファイルをすぐに出す 今見ているバッファを現在時刻のファイル名で保存する :w 版 :f 版 簡単に連番を振る 空行・スペース処理 1行ごとに空行を入れる このような設定で。 ※以下、「<Leader>al」などのマッピングは説明用の一例です。 nnoremap <Leader>al :%s/$/\r/gc<CR> vnoremap <Leader>al :s/$/\r/gc<CR> 選択するとその範囲だけ、選択しなければバッファ全体を対象として、1行おきに空行を入れていきます
この記事はVim Advent Calendar 2016 その2の18日目の記事です.その1のほうにも記事を書いたのですが,こっちもまだ空いてたので埋めがてら書きます. その1のほうではかなり非実用的な記事を書いてしまったので,こっちでは比較的実用的なことを書きます. '穏やかな'カラースキーム spring-night 突然ですが,ここ数日で sprint-night という新しいカラースキームをつくりました. github.com MacVim で Vim script のコードを開いた時 半透明ターミナル + Vim で Go のコードを開いた時 (24bit 色) 紺色の背景に黄色系の文字色をメインにしたコントラスト少なめのカラースキームです. 一番特徴的なのはビジュアルモードでピンクを採用している点です(桜をイメージしています).黒背景なので 'night' です. 今までスプ
本記事はVim Advent Calandar 2016の13日目の記事です。 前置き まずはこの動画を見てください(※私の動画ではないです)。 この動画は先日行われたVimConf2016でt9mdさんが発表されたときの動画です。 vim-mode-plus for Atom editor 私はVimConf2016に参加して、リアルタイムに発表を拝見していたのですが、 発表中「すげー」という単語しか出てこないくらいすごかったです。 言葉でうまく表現するのが難しいですが、すごかったところをざっくり言うと、 Vimの、特にtextobjects、operator周りの考察が深い。 AtomをVim風に操作できるvim-modeというpackage(Vimでいうplugin)をforkしてvim-mode-plusで、Vimの機能を移植するのみならず、様々な独自機能を追加され、完全に独自進化
この記事は Vim Advent Calendar 2016 の6日目の記事です。 Vim scriptのエラーが出たときにエラーをquickfixに表示して、エラー箇所に飛べるといいなと思いますが、標準の機能ではないようなので、コマンドを作りました。 先行事例 調べてみると、kanno_kannoさんが書いた記事 Vim scriptをsourceしてエラーがあればquickfixに表示する - ぼっち勉強会 関数対応版:Vim scriptをsourceしてエラーがあればquickfixに表示する - ぼっち勉強会 辞書関数対応版:Vim scriptをsourceしてエラーがあればquickfixに表示する - ぼっち勉強会 や、Stack Exchange Is it possible to populate the quickfix list with the errors of
2016 - 12 - 05 「VimConf 2016」を主催しました vimconf.vim-jp.org この記事は Vim (その2) Advent Calendar 2016 の 5日目の記事です。 開催から一ヶ月が経ちました、今更感ありますが書きます! (そもそもVACに書く内容ではないと言うツッコミがありそう) 2016/11/05に開催された「VimConf 2016」を主催しました。 発表の感想や懇親会の感想は各参加者のレポートにお任せし、裏側の話を少しだけ書きたいと思います。 主催しようと思った理由 雑に Lingr のログを遡ったところ、以下のような流れで意識することになりました。 私「VimConf 2016 参加したい」 ujihisa さん「しよう」 私「します」 thinca さん「主催しよう」 私「すごい」 それからしばらくして退職が決まり、10月
「あっvim君だ」 Vim ねえ、僕のこと本当に好き? なに突然? いまさらすぎw いいから! まあ、好きだよ 適当かよー じゃあ、僕のどんなとこが好き? めんどくさいな、どうしたん?w 言えないんだ・・・ メンヘラかよ えーとね、 楽。 そんだけ?(´・ω・`) そんだけってw 十分でしょ、だっていちいちマウスさわるの面倒だし。vim君いればキーボードだけでいいもん あ、しかもホームポジションから指がずれない! ブラインドタッチ出来ないのに恩恵ある? e? なんでもない でも、前マウス使えないから嫌いって振られたんだよね。。 まあ、好みは人それぞれだし。 コピペしやすいところも好きだよ! それ、褒めるところ? いやいや、そこ重視する子多いから。 sublimeとかeclipseのほうが優秀じゃん・・・ なに?嫉妬? べつにーーー まあ、あれだ、Vim君の良さは、 (期待) 行コピー! な
この記事は Vim 8.0 Advent Calendar の 1 日目の記事です。 Vim 8.0 では Vim script の関数機能が強化されました。この記事では Partials とラムダを紹介します。 Partials これまでの Vim script では function() 関数で関数参照(Funcref)を作成できました。これにより、関数を変数に入れ、直接呼び出すことができます。 let Foo = function('strftime') echo Foo('%Y-%m-%d') " => 2016-12-01 echo Foo('%Y-%m-%d', 1482634800) " => 2016-12-25
Vim 8.0 released! Vim 8.0が先ほどリリースされました。10年ぶりのVimのメジャーバージョンアップです。 Vimのバージョンをcronで毎日上げ続け、最新のパッチを確認し続ける日々を送ってきました。そして、今日も夜11時のcronでバージョンが上がりました。新しいメジャーバージョン、8.0でした。 ここ一年はVimにとって様々な重要な機能が入りました。JSONエンコーダーとパーサー、パッケージ機構、channelとjob、タイマー、ラムダ式など、プラグイン製作者にとって大事な機能ばかりです。今後、より高度なプラグインがでてくることでしょう。これらの機能に対する日本人の貢献は素晴らしいものです。 リポジトリをGoogle codeからGithubに移動するという重要な決定も行われました。この決定の過程にも、vim-jpの皆さんが深く関わっています。私は傍から応援するこ
わかばちゃんと学ぶ Git使い方入門〈GitHub、Bitbucket、SourceTree〉posted with カエレバ湊川 あい シーアンドアール研究所 2017-04-21 Amazonで探す楽天市場で探すYahooショッピングで探す 目次 目次 はじめに Gitのコンフリクトをvimdiffでマージする セットアップ 参考資料 git連携用vimプラグイン: vim-fugitive インストール Gstatusが凄く便利 何かわけがわからなくなって、コミット時までソースを戻したい時 ブランチ名をvimのステータスラインの表示する ソースコードのGitHubページを一瞬でブラウザで開く コミットする pushする HEADとのdiffを表示する 参考資料 MyEnigma Supporters はじめに gitは 最近のソフトウェア開発には必須だと思いますが、 VimとGitを
目次 企画色の強い面白そうなトピックがたくさんありますね。 第3章 Vim至上主義 第4章 我が友「Emacs」 熱狂的なユーザーを多く抱えるエディタですから、これぐらい熱がこもった記事であってもいいのかもしれません。 第1章 VimとEmacs 1-1 職人が道具を選ぶように 使っているエディタにこだわりを持っていますか 1-2 どの環境でもいつもどおりに使う! インフラエンジニア視点のVim入門 1-3 すべてのコマンドを知ることから始まる Vim熟練者への道 1-4 適材適所で使いこなせ! Vimプラグイン108選 1-5 達人に聞く Emacs入門者がまず学ぶべきこと 1-6 Emacs シーン別 究極のカスタマイズに迫る Appendix エンジニアのもう1つの仕事道具 一流プログラマはキーボードにもこだわる 第2章 「Vim使い」事始め 2-1 犬でもわかる!? Vim導入&カ
B! 257 0 0 0 Vimのdiffモード機能はVimを使うべき一つの大きな理由になるくらい便利なものだと思います。 違いを見るためだけでも左右に並べて見れるので diffコマンドなんかよりもよりわかりやすく見ることが出来ます。 そのdiffモード関連のVimの機能やプラグイン等のまとめ。 vim -d vimdiff :diffsplit diffモードでの操作 diffモードの設定 :DiffOrig linediff.vim vcscommand.vim diffchar.vim vim-diff-enhanced vim -d 2つの似たようなファイルを比べたい時に $ vim -d a.txt b.txt とすると2つを比べた状態でファイルを開くことが出来ます。 3つ以上同時に比較することも可能です。 diffモードでは以下のオプションがセットされます。 diff: on,
この記事は Vim Advent Calendar 2015 の21日目の記事です. もくてき 本記事では Vim のコマンドの”覚え方”を紹介します. 基本的にはトリッキーな”覚え方”ではなく由来の紹介となります. 例えば J で行連結は Join が元だとか, gfが”goto file”の略だといったことを 知っておくとなにかと憶えやすいと思います. 対象読者 主にこれから Vim を使ってみよう! でもなかなかコマンドを覚えられないっ! という Vim 初心者の方に由来を知ることで少しでも コマンドを憶えやすいようにすることが目的です. 初心者を想定しているのでコマンドの動作などもなるべく紹介していきます. 中・上級者の方には普段何気なく使ってたあのコマンドの由来を知って「フハハハハ」と ほくそ笑んでもらえるような記事になれば嬉しいです. 注意 注意点として公式のものから公式っぽい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く