初めに 最近Vimにおけるカーソル移動の効率化について少し考えていて、自分なりに どんなカーソル移動方法があるのか? それぞれのメリット・デメリットは何か? について整理&改善をしたくて、この記事を書きました。 後半にカーソル移動の改善のために作ったプラグインの紹介もあるのでぜひ最後まで読んでみてください。 テキストの編集の動作について 基本、どんなエディタでもテキストを編集するのに次の動作を繰り返すと思います。 移動先の座標を認識(目で見て脳で認識) キーボード・マウスを使ってカーソルを対象の座標に移動 対象のテキストを編集(カット・置き換え・削除など) これらの動作を前提、どんなカーソル移動の方法があるかについて整理していきます。 マウスによるカーソル移動 多くの人はマウスを使用しているかと思うので、こちらの方法はもっとも一般的といえるでしょう。 個人的に、マウスにおける最大のメリット
Hello Geek! やあ、パソコンカタカタオタクの諸君! 今日もクールなTerminalでエキゾチックなVimをさわっているかい? ところで君はどんなVimのcolorschemeを使っているだろう。 安定のGruvbox? 伝統のMolokai? 流行りのHybrid? 柔軟なBase16シリーズもいいよね。 それとも僕と同じ古き良きjellybeansかな? しかし、君はまだ知らないだろう。 そのVimのcolorschemeがまだ輝けるということを VimのSyntax Highlightingは不完全 VimのSyntax HighlightingはもともとIDEと比べると完璧とは言い難い。 文法が複雑な言語で複雑な処理を書くと、その差ははっきり現れてくる。 PhotonのPythonのコードをVimとVSCodeで見比べてみよう。 1枚目がVim、2枚目がVSCodeで開いた
筆者の環境について Vim にはプラグインマネージャも沢山あります。その中で僕は vim-plug を使っています。Software Design という雑誌で「Vim の細道」という連載をやっている事もあり、皆さんに一番リーチしやすいプラグインマネージャを選んでいるという事もありますが、基本は「トラブルが発生しづらい」という理由で使っているのもあります。 vimrc の分割管理 ところで最近は Vim プラグインが沢山あり、個々に設定が必要な場合もあります。全て vimrc の中に書いてしまうのも良いのですが、そうするとどこからどこまでが、どのプラグインの設定か分からないといった問題が起きてしまいます。僕は vimrc をプラグイン毎に分割して管理しています。 Big Sky :: ぼくがかんがえたさいきょうの Vim のこうせい 2019年 年末版 " Vim 本体の機能のデフォルト値
こんにちは、みみぞうです。 ナビタイムジャパンで『システムや開発環境、チームの改善』を担当しています。 本記事は社内勉強会で発表した内容に沿っています。 この勉強会は、社内全エンジニアの1/4ほどが参加して好評だったため、記事を書かせていただくことになりました。 なお、Vim歴は2年半です。 読んで欲しい方以下のように感じる方を対象にしています。 ❶ VimよりVS CodeやJetBrainsのIDEを使った方が速いので使う必要がない ❷ Vimは学習コストが高いのにメリットがない ❸ Vimの勉強/スキルアップの仕方が分からない この業界に入って7年以上もの間..私も❶~❸の考えをもつ人間でした。 もし昔の自分に会えるなら..『今すぐVimの思想を取り入れよ』と言いたいですね😅 Vimは使わなくていい、されどVimの思想を取り入れよ『すべての開発をVimでせよ』なんて言うつもりはあり
<まえがき> Vimはこわくない。 つい最近までVimといえば強いエンジニアが使うこわいエディターだという勝手なイメージが私の中にありました。 しかし、いざvimrcを自分でカスタマイズし始めると楽しくなってしまい、いつの間にかメインエディターがVimになりました。Vimmerの数だけVimがあり、使い方に正解のないというVimの魅力に気づいてしまったのです。 この記事ではこれまでに私が行ったVimを使いやすくするための設定とその手順を紹介します。 あくまでカスタマイズの一例として誰かの役に立てると嬉しいです。Vimはこわくありません! 目次 この記事では筆者がVimを(そこそこ)使いこなせるようになった設定とその導入手順をご紹介します。 手順に沿って設定を進めれば誰でも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のコー
本記事は Vim その2 アドベントカレンダー 21日目の記事です。 経緯 今年の8月頃から PEAKS の iOS 12 Programming という技術書の執筆に参加しました。 このとき初めて Re:VIEW による執筆をしました。 現在は技術書展も賑わっており、Re:VIEWで執筆する機会は以前より多くなっているかと思います。 一方で、VimでRe:VIEWを取り扱う環境が意外と整っておらず1、2018年時点の情報を整理させていただきます。 以下、 シンタックス・ハイライト リアルタイムプレビュー 校正サポート コード・スニペット の順に整理いたします。 シンタックス・ハイライト Re:VIEWのシンタックス・ハイライト用のpluginはいくつか見つかったものの、最新のRe:VIEW 2.0にきっちり対応されているものが見つかりませんでした。 Re:VIEW 2.0のフォーマットガ
はじめに あなたがこの記事を読んでいるということは、私はすでにこの世にはいないのでしょう。 最期に、あなたに私の犯した罪を告白します。 そうです、vimでの移動に十字キーを使っていたのです。 この事実を知ったvim教の信者たちが血眼になって私を探しています。 きっと、私は見つかるでしょう。 そしてMacBookの十字キーを全て剥がされ、Logicoolの青軸キーボードで撲殺されるのです。 それほどまでに私の罪は重いということは重々承知しています。 もし、これを読んでいるあなたが私と同じ業を背負っているのであれば今すぐ逃げてください。vimmerはどこにでも潜んでいます。 今日笑顔で話していた同僚が明日にはキーボードで殴りかかってくるかもしれないのです。 だからせめて、私のささやかな抵抗をここに書き記します。 あなたが私と同じ道を辿らないことを願って・・・・ escは海よりも遠いということ
つい先日, 2018-11-24 (土) に開催された VimConf 2018にて、弊Quipper社の ujihisa さんが登壇しVimの技術発表を行いました。本記事ではその発表の解説と、その裏話をめいっぱい記します。 発表タイトルは "Modes" という一単語のみで、公式サイトに載っているtalk abstractによると以下のようなものです。 Abstract Discover what is happening internally when you switch modes, such as insert mode, normal mode, and operator-pending mode. This talk first revisits how modes are when you use Vim, then I'll let you dive into the V
8/31、patch 8.0.1026 で Linux 版 Vim のとある挙動が修正されました。 patch 8.0.1026: GTK on-the-spot input has problems - vim/vim@5c6dbcb - GitHub https://github.com/vim/vim/commit/5c6dbcb03fa552d7b0e61c8fcf425147eb6bf7d5 この修正は、Linux 版 Vim の IME (Input Method Editor) の挙動を修正する物ですが、この1つのパッチの為に多くの開発者が動いたという話です。 Vim と IME と僕 このパッチ、多い時で月に100個以上もリリースされる大量のパッチの1つに過ぎないのですが、実はこのパッチには思い入れがあり記事にせずにいられませんでした。この問題が修正されるまでに至った経緯を
やること vimrcの基本設定 文字コード タブ・インデント 文字列検索 カーソル カッコ・タグジャンプ コマンド補完 特殊な設定 マウスの有効化 ペースト設定 Vimプラグイン NeoBundle(Vimプラグインの管理) molokai(カラースキーム) lightline.vim(ステータスラインの表示内容強化) vim-trailing-whitespace(全角と半角の空白文字を可視化) indentLine(インデントの可視化) neocomplete・neosnippet・neosnippet-snippets(コードの自動補完) CtrlP(多機能セレクタ) Syntastic(構文エラーチェック) 対象となる読者 素のVimを使っていて、もっと快適にコードを書きたい人 どこかのvimrcをコピペしてきて理解しないまま使い続けてる人 Node.jsやJavascriptでコ
Vim 8.0 released! Vim 8.0が先ほどリリースされました。10年ぶりのVimのメジャーバージョンアップです。 Vimのバージョンをcronで毎日上げ続け、最新のパッチを確認し続ける日々を送ってきました。そして、今日も夜11時のcronでバージョンが上がりました。新しいメジャーバージョン、8.0でした。 ここ一年はVimにとって様々な重要な機能が入りました。JSONエンコーダーとパーサー、パッケージ機構、channelとjob、タイマー、ラムダ式など、プラグイン製作者にとって大事な機能ばかりです。今後、より高度なプラグインがでてくることでしょう。これらの機能に対する日本人の貢献は素晴らしいものです。 リポジトリをGoogle codeからGithubに移動するという重要な決定も行われました。この決定の過程にも、vim-jpの皆さんが深く関わっています。私は傍から応援するこ
注意:NeoVimとかneocompleteとか NeoVimの開発進行に伴い、多くのshougoware(neoシリーズ)も開発が終了して、闇の力をまとったなんかになっていってるっぽいです。 僕はNeoVim関係の情報をキャッチアップできていませんが、各プラグインに関してはREADMEやdocを読んでいって自己判断をやっていきましょう。 賛否あるでしょうが、Pycharm(IDEA)のような優れたPython用IDEがある現代においては、エディタのカスタマイズを全く行わないというのは生産性を犠牲にする行為であると筆者は考えています。 とはいえツールのセットアップというものはめんどくさいものです。IDEですら設定すべき箇所は多数あります。 今のところPython用Vimカスタマイズの設定例として個人的に満足するものがなかったのでブログにまとめておこうと思います。 Vim初心者だとわからない
注: この記事は「Feb 12th, 2013 12:44am」に別ブログで書いたものです。 まえがき 思うところあって、Pythonを始めてみることにしました。 そのために環境を整えていたのですが、いじりだすと色々と気になって、結局まだPythonそのものは全然書けていないですw ただ、その代わりそこそこいい感じになったので、何をしたのかまとめてみました。 あ、OSは「OS X 10.8 Mountain Lion」です。OSに依存するような話はないと思いますが、念の為。 Pythonそのものの環境設定 まずはPythonそのものの環境構築です。本題ではないですが、別記事にするほどでもないので、備忘録を兼ねてここに。 Pythonの環境設定でむかついてる人はとりあえずこれをコピペで実行してください - YAMAGUCHI::weblog ZONOTE: Python mac に virt
B! 120 0 0 0 Python用の環境設定について最近更新したので経過メモ。 特にVimのプラグインとかについて。 外部コマンド Vim シンタックスハイライト等 インデント 補完 畳み込み 外部コマンド 文法チェックをしたり pep8 に準拠するような作法に整えたりするために Pythonスクリプトをチェックするコマンドとしては pytest が便利です。 pytest本体ではpep8までチェックできませんが、 pytest-pep8 も入れる事でpep8についてまでチェックできる様になります。 $ pip install pytest-pep8 で必要な物を全てインストールしてくれます(pep8やpytest等)。 使い方は $ py.test --pep8 target.py 等と、.pyファイルを与えるかディレクトリを与えると そのディレクトリ内の.pyファイル全てをチェッ
素のVimでも充分便利ですが、やはりできることに限界があります。 プラグインを使うことで標準にはない機能を追加でき、Vimでの作業がもっと捗ります。 時短を加速させるために、入れておきたいVimプラグインを系統別に25個まとめてご紹介します。 コーディングスピードを上げたい方、素のVimにはない機能を追加したい方はぜひ使ってみてください。 最初に入れておきたいVimプラグイン 作業効率化のためにまず入れておきたいプラグインを6つ紹介します。 dein.vim https://github.com/Shougo/dein.vim Vimのプラグインを管理するためのVimプラグインマネージャです。 他のプラグインをインストールする前に、まずdein.vimを入れておくことをおすすめします。 unite.vim https://github.com/Shougo/unite.vim Vim用の統
Vim の設定ファイルと言えば .vimrc ですが、これが Windows だとファイル名が異なって _vimrc とされています。 また、プラグインファイルを設置する runtime ディレクトリの名前も OS によって異なっています。 別々に管理するのは面倒なので、設定ファイルの優先度を調べながら、同じリポジトリを使用して一元管理する方法を探ります。 vimrc の共有 まず、vimrc にはシステム vimrc とユーザー vimrc の2種類があります。 システム vimrc → ユーザー vimrc の順で読み込まれ、重複する設定はユーザー vimrc で上書きされます。 システム vimrc に使用されるファイルは、基本的には $VIM/vimrc ですが、システムにより異なります。 正確にはコマンドラインで :version を実行すると使用しているシステムでの vimrc
B! 258 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,
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く