タグ

vimに関するnote103のブックマーク (49)

  • VimでJSONのsyntax check/highlightを設定した話 - the code to rock

    少し前に書いた以下の記事で、Vim環境におけるsnippetとtemplateの設定について触れたのですが、 じつはそのとき、当は一緒に書こうと思っていたのがsyntax checkに関することで。 ただそのときは、それ以前のトピック(snippet/template)ですでにお腹いっぱい、という感じになってしまったので、そこに入れるのはやめて、いずれ書けたら書こうと思っていたら、最近JSONに関わる新たな知見が自分の中で加わったので、良い機会だと思って今回あわせて書いてみます。 まず、ここで言う syntax check というのはコードの構文エラーを教えてくれる機能という意味で。 たとえば、Perlでは最初にその変数名を宣言するとき、my というのを入れないといけないですが、それを忘れたらこんな風に出てくれると素敵です。(5行目) これを実現してくれるのが、じつは上の過去記事の冒頭で

    VimでJSONのsyntax check/highlightを設定した話 - the code to rock
    note103
    note103 2015/04/13
    blogged.
  • vimrc基礎文法最速マスター - 永遠に未完成

    調子に乗って vimrc を書くのに特化した内容のものを書いてみる。取り上げた内容は完全に独断と偏見です。 関連記事: Vimスクリプト基礎文法最速マスター - 永遠に未完成 この記事では vimrc を書くにあたって知っておくべき概念や機能を解説します。Vim 自体の操作方法に関しては触れません。 基礎 バッファ バッファは、ファイルを編集するための論理的な領域です。Vim で新しくファイルを開くと、新しいバッファが作成されてそこにファイルの内容が読み込まれます。 ウィンドウ ウィンドウはバッファを画面に表示するための物理的な領域です。分割することができ、1つの画面に複数のウィンドウを表示できます。 タブページ タブページを使うことでウィンドウの配置を保持したまま複数の画面を切り替えることができます。 タブ文字と区別するためか、タブページと呼ばれています。 モード Vim の中でも知って

    vimrc基礎文法最速マスター - 永遠に未完成
    note103
    note103 2015/04/08
  • Vimの正規表現で最短マッチ(非欲張り型)を実現する - the code to rock

    tl;dr gyazo.com たとえば以下のようなテキストを編集しているとして、 そのバンドの3rdアルバム「A」は私のフェイヴァリットだが、彼らの代名詞とも言える独特のギターサウンドは2ndアルバム「B」から4枚目の「C」までに集約され、5枚目の「D」からはディスコサウンドに路線を転換したためファンの間でも賛否が分かれた。 いま書きながら考えたテキトウな文章ですが、この中のアルバム名をくくった括弧「」をすべて『』に変えたくなった、とする。 このぐらいの長さなら一つ一つ手で直すのもアリかもしれないけど、何万字というテキストに対して同様のことをしようとなると、けっこう泣ける。 そこで、Vimの正規表現でガサッと変えよう! なんて思って以下のように打ち込むと、 :%s/「\(.\+\)」/『\1』/gc 「A」を拾いたいはずのところで以下の部分が拾われる。 「A」は私のフェイヴァリットだが、

    Vimの正規表現で最短マッチ(非欲張り型)を実現する - the code to rock
    note103
    note103 2015/04/06
    blogged.
  • vimの正規表現で複数行マッチさせる方法(改行を含む正規表現)

    vimで改行を含む正規表現をマッチさせる方法がないかと調べ、見つけたので、メモ vimの場合は、以下の正規表現が改行を含む任意の文字列をあらわす \_. これを繰り返しの正規表現と組み合わせて使う 例えば、以下のようにタグで囲われたテキストのみ<b>から</b>をマッチさせたい場合正規表現はこのようになる <b>\_.*<\/b> <div> <b> xxxx </b> </div> また、以下のようなテキストの場合は、最短一致(非欲張りマッチ)を使うことで、それぞれの<b>タグにマッチさせることが出来る。正規表現はこう <b>\_.\{-}<\/b> <div> <b> xxxx </b> <hr> <b> xxxx </b> </div>

  • Syntastic というシンタックスチェックプラグインが凄そう - Memo

    Syntastic という文法チェック用のツールが凄そうというお話。 GitHub - vim-syntastic/syntastic: Syntax checking hacks for vim 自分の VimPHP の場合 errormarker.vimPHP シンタックスチェックをし、Python の場合は PyFlakes*1 を使いチェックをしている。 Syntastic はそのようなチェックを統合的に扱えるプラグインのよう。 At the time of this writing, syntax checking plugins exist for applescript, c, coffee, cpp, css, cucumber, cuda, docbk, erlang, eruby, fortran, gentoo_metadata, go, haml, ha

    Syntastic というシンタックスチェックプラグインが凄そう - Memo
    note103
    note103 2015/03/13
  • Vim で snippet, template を設定する - the code to rock

    はじめに ぼくが手伝っているプログラミング初心者&Perl入門者向け無料勉強会「Perl入学式」のハッシュタグをたどっていたら、こんな投稿がありました。 もしよければPerl書くときに快適になる.vimrcを教えていただけたら嬉しいです。#perl入学式— とっしゅ@箱物販売員 (@tossh0095) 2015, 1月 17 これに対して、以下のような回答がありました。 @tossh0095 vimの達人によれば、テンプレートでuse strict等お約束系の記述を雛形化するくらいとの事です。— tomcha (@tomcha_) January 17, 2015 なるほど〜……。ただこちら、内容自体は有用な知見であることに違いないとしても、何となく質問した人の意図としては、もう少し「快適に」という部分が関心の対象なのかなという気もします。上記の回答はそれより「実用的に役立つ設定」という

    Vim で snippet, template を設定する - the code to rock
    note103
    note103 2015/03/12
    blogged.
  • Vim のバッファとウィンドウを理解する - 反省はしても後悔はしない

    この記事は Vim Advent Calendar の 302 日目の記事です。昨日は id:rattcv さんの Vimから電話がかけられるなんて・・・素敵! でした。すごいですね。 はじめに Vim には強力なウィンドウ分割機能があります。一方で、プラグインなどのドキュメントなどではバッファという表現が使われることが多いです。この2つは何者なのでしょう?両者の違いは? 私ははじめの頃、ウィンドウ、バッファという2つを混同していました。他にも混同している人が多いのではないかと思ったので今回はこの2つについて解説したいと思います。 バッファとは? 基的には1つのバッファ=1つのファイルです。ですが、プラグインなどでは必ずしもファイルとは一致しません。例えば、Unite のウィンドウを開いた場合にもバッファが作られます。メモリ上に読み込まれた(ことがある)内容に対応するものがバッファ、とい

    Vim のバッファとウィンドウを理解する - 反省はしても後悔はしない
    note103
    note103 2015/03/06
  • Vimの便利な画面分割&タブページと、それを更に便利にする方法 - Qiita

    この記事はVim Advent Calendar 2013 : ATNDの99日目の記事です。 画面分割・タブページのススメ みなさん、分割してますか? みなさん、タブページ使ってますか? 僕はどちらも大好きです。 サンプルを見ながら写経する TODOやメモを見ながら編集 関数の定義元などを見ながら編集 編集目的に合わせてタブを分ける などなど。 ものぐさな僕は、コードを書くときはガシガシ分割したりしながらコードを書いています。 これらの機能は当然設定やプラグインの導入などをしなくても使えますが自分はsキーをprefixとしたキーマッピングをしています。 元は<C-w>の代わりにsを使っていただけですが、タブウィンドウ関連やバッファ関連にも使うようにしたことで、格段に便利になりました。自分の設定例を合わせて掲載するので、良ければ参考にしてください。 各種機能とマッピング ウィンドウを分割す

    Vimの便利な画面分割&タブページと、それを更に便利にする方法 - Qiita
    note103
    note103 2015/03/06
  • Vimで使える正規表現 - Archiva

    Make a note of it: Web tech, montaineering, and so on. Note: この記事は、3年以上前に書かれています。Webの進化は速い!情報の正確性は自己責任で判断してください。 Vimの正規表現をまとめてみました。Vimの正規表現は——基的にコマンドモードで使うためか——やたらエスケープが多かったりして、ちょいと独特です。また、拡張正規表現も使えないので、Perlのノリで書くとやきもきしますね。以下、検索に関わりそうなオプション設定。 :set wrapscan

    note103
    note103 2015/03/04
    Vimの正規表現で最小繰り返しマッチにハマったが解決した。ありがたい記事
  • Vimで、文字列を別のところに「持って行って置換する」効率的な方法は? - Qiita

    Vimで、文字列を別のところに「持って行って置換する」効率的な方法は? 前置き これは私が答えを知っているパズルではなく、Vimmer諸氏への純粋な質問です。 「Vimで文字列を別のところに「持って行って置換する」効率的な方法は?」 意味がよく伝わるように例で説明します。 例 たとえば、以下のような文章を書いているとき。 BEFORE: Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequa

    Vimで、文字列を別のところに「持って行って置換する」効率的な方法は? - Qiita
    note103
    note103 2015/03/04
    このページ時々見返します。とても参考になる
  • ref.vim 書いた - 永遠に未完成

    ref.vim なるVimで様々な言語のリファレンスを見るためのプラグインを作った。 Vim で各種言語のリファレンスを見るプラグインはすでに色々あるけど、それぞれ独立しているので操作性とかその他もろもろ統一されてなくて嫌になったので作った。 公開したのはいいけど全然作りかけです。とりあえず最低限動く感じ。 2009/08/11 追記: 肝心の公開リポジトリのURL貼るの忘れてましたorz ごめんなさい。 http://github.com/thinca/vim-ref/tree/master 現状の対応リファレンス refe (Ruby) phpmanual (PHP) あらかじめマニュアルをDLして解凍してそのパスを g:ref_phpmanual_path に設定する必要がある。 簡単な使い方 :Ref コマンド 唯一のコマンド :Ref が定義されているので、これを使います。 :R

    ref.vim 書いた - 永遠に未完成
    note103
    note103 2015/01/27
  • Vimの折りたたみ機能のショートカットキー - weblog of key_amb

    foldingのショートカットは使ってないと忘れてしまうが、覚えていると捗るので、まとめておく。 ショートカット 開閉 対象範囲 備考 zo, zO 開く カーソル下 oで一段階, O で全て開く zc, zC 閉じる カーソル下 cで一段階, Cで全て閉じる zr, zR 開く ファイル全体 rで一段階, Rで全て開く zm, zM 閉じる ファイル全体 mで一段階, Mで全て閉じる za, zA 開閉 カーソル下 閉じてたら開く, 開いてたら閉じる。aで一段階, Aで全て 参考 Vim documentation: fold

    Vimの折りたたみ機能のショートカットキー - weblog of key_amb
    note103
    note103 2014/12/16
  • neocomplete migration guide

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    neocomplete migration guide
    note103
    note103 2014/12/16
  • VimでPHPを書く私のneocomplcache設定を公開してみる

    私のneocomplcacheの設定を公開します。たまにIDEに浮気しますが、基的にはVimPHPを書いています。 ある程度ノウハウが溜まってきたのでこのあたりで私の設定を公開してみます。neocomplcacheはその機能の豊富さゆえに使いこなすのがとても難しいと感じています。 この設定にたどり着くまでにずいぶん試行錯誤を繰り返しました。マニュアルもたくさん読みました。補完が重い状況が改善されず、1日中設定を調節していたこともあります。「ここはこうしてみてはどうか」「その設定は機能していないよ」といったご意見がございましたらコメントいただければ幸いです。 動作確認環境 Vim7.3neocomplcache6.1vimproc5.3 目次 neocomplcacheのインストール vimprocのインストール vimrc シンタックス補完を無効に ディクショナリ補完の利用 インクルー

    VimでPHPを書く私のneocomplcache設定を公開してみる
  • ファイル内のデータをソートするショートカットをvimrcに設定 - the code to rock

    以前に小ネタ的に書いたこれ、我ながらなかなか役に立っています。 calendar.vimを出すショートカットをvimrcに設定 - the code to rock 記事にしてから1週間ちょっとですが、けっこう何度も使ってます。 しかし、というかそれ以上に、似たような感じで設定&有効だったのが掲題の件で、具体的には以下のようなのをvimrcに設定しています。 nnoremap <Space>s :sort<CR> 気づいたのはこの頃ですが、 知らんかった便利 / 他2コメント http://t.co/YdtT8178fn “VIMで選択行をソートする #Vim - Qiita” http://t.co/IflMuqUCgq— Hiroaki Kadomatsu (@note103) 2014, 6月 16 Qiitaさんとそこへ投稿されてる皆さん、当にありがとうございます・・ VIMで選

    ファイル内のデータをソートするショートカットをvimrcに設定 - the code to rock
    note103
    note103 2014/06/23
    blogged.
  • Vim 基本操作まとめ - Archiva

    Vimにおける、基操作のチートシート。だいぶ使えるようになってきたのでメモっておきます。 2009.05.29: 「単語移動」を追加しました。横スクロールめんどいよね。 2009.05.29: 「もちょっと発展的な+α」を追加。そこそこ貯まってきた。 2012.07.19: 「ヘルプ」を追加。gm、f[word]などを追加。 モード切替 i

  • マーカー文字列を埋め込んで、ソースコードを折り畳み表示する—名無しのvim使い

    vimエディタの折り畳み機能をコードに埋め込んだマーカー文字列で コントロールする方法を説明します。 vimエディタには、コードの中にある目印となるマーカー (デフォルトでは「{{{」と「}}}」) を書いておくことで、そのマーカーに囲まれた範囲を折り畳む機能があります。 このマーカー文字列による折り畳み機能は、vimエディタの「foldmethod」オプションが 「marker」に設定されている時のみ、使用できます。 (Windows, Mac) 概要 vimエディタの折り畳み機能をコードに埋め込んだマーカー文字列で コントロールする方法を説明します。 vimエディタには、コードの中にある目印となるマーカー (デフォルトでは「{{{」と「}}}」) を書いておくことで、そのマーカーに囲まれた範囲を折り畳む機能があります。 このマーカー文字列による折り畳み機能は、vimエディタの「fold

    note103
    note103 2014/03/22
  • Vim にてMarkdown形式でmemoをとり、QuickRunで確認する - c4se記:さっちゃんですよ☆

    屋上屋を架しておく。 何かのmemoを取り合う時、勝手な形式でとられていると、うひょーーーーーーーーぉぉーーーーーーーーーーーーーーーぉぉーーーぃと成るので、[Markdown]( http://daringfireball.net/projects/markdown/ )でとる事にしている。何か知った形式でとられていればいい訳だ。Markdownは好く知られている。 Vimには優れたMarkdownのsyntax hilightが入っているので、苦労する事は無いが、web browser上で閲覧して確認し、悦に浸りたい事が有る。大仰なbuildをする訳でもないから、QuickRunで走らせられれば楽だ。 QuickRun (vim-quickrun) QuickRun (vim-quickrun) は、一時的なcode片を実行し結果を見るのに便利なVim pluginである。 「簡単な例

    Vim にてMarkdown形式でmemoをとり、QuickRunで確認する - c4se記:さっちゃんですよ☆
  • quickrun.vim について語る - C++でゲームプログラミング

    この記事は Vim Advent Calendar 2012 101日目の記事になります。 お陰様で100日目を迎えることが出来ました。 Vim Girl ちゃんかわいいよ Vim Girl ちゃん。 参加者はまだまだ募集中なのでとっておきのネタやプラグインなんかを紹介してみるといいと思います。 また、既に参加していて2回目もやりたい!って方はこの記事へコメントして頂けばスケジュールに追加するのでぜひ! [quickrun.vim について] quickrun.vim とはバッファ上のソースコードを実行して、その実行結果を Vim へ出力する為のプラグインです。 quickrun.vim を使用する事で、素早くソースコードを実行することができ、また Vim との連携を高めることが出来ます。 [導入方法] quickrun.vimgithub で公開されておりそこから取得する事が出来ま

    quickrun.vim について語る - C++でゲームプログラミング
  • shabadou.vim を使って quickrun.vim をカスタマイズしよう - C++でゲームプログラミング

    汎用的な quickrun-hook をまとめた shabadou.vim を使用して簡単に quickrun.vim をカスタマイズしましょう! って、事で quickrun-hook を使用した quickrun.vim の設定を順を追って設定していきたいと思います。 shabadou.vim を使用すれば、コマンドが成功したら buffer に出力、コマンドが失敗した場合に unite-quickfix へ出力するなどといったことが比較的簡単に設定できます。 と、いう感じで段階を追って g:quickrun_config をいい感じにカスタマイズして行きましょう。 「さあ、ショータイムだ!」 0.必要なプラグイン quickrun.vim vimproc quickrun.vim で非同期処理を行うために必要なプラグイン unite.vim unite-quickfix unite.

    shabadou.vim を使って quickrun.vim をカスタマイズしよう - C++でゲームプログラミング