タグ

vimに関するnamutakaのブックマーク (95)

  • Vim でjsonファイルを開いた時にチラつくダブルクォーテーションを何とかしたお話。 - ゆず日記

    Vimでjsonファイル編集時にダブルクォートが非表示になり、カーソル行だけダブルクォートが表示される(表示される分だけテキスト位置がズレる)現象が。 こんな感じ。ぶっちゃけかなりイライラする。 んーvim-jsonも入れてないけど何でだろ?ということで /Applications/MacVim.app/Contents/Resources/vim/runtime/syntax/json.vim を確認してみた所、 " NOTE that for the concealing to work your conceallevel should be set to 2 " Syntax: Strings " Separated into a match and region because a region by itself is always greedy syn match jsonSt

    Vim でjsonファイルを開いた時にチラつくダブルクォーテーションを何とかしたお話。 - ゆず日記
    namutaka
    namutaka 2020/08/14
  • 結構マジメにVimのテスト環境を整えてみる(Python用) - Qiita

    概要 現在に至るまで、UnitTestの実行はvim-quickrunかC-Zで戻ってからターミナル叩いてた。 現状だとVimでテスト駆動開発するのにつらみがある。 テスト用の設定を作り込むときが来たのだ。 ちな実行するのはPythonUnitTest 現状の問題点 :QuickRun QuickRunはテスト全体実行しかできない。と思う(テストランナーではないからね) 頑張ればできるのかもしれない。 時間のかかるテストとか遅いテストだと全体実行を何度もするのはつらい。一つのメソッドだけとかサクッとやりたい。 ターミナル実行 ターミナルに戻るのはだるい。 ターミナルでクラス単位やメソッド単位のテストを実行するには、パッケージ階層を打たなきゃいけない。つらい。 QuickFixでRedに飛びたいよね。ターミナルのエラー見る→Vim戻る→ターミナルにエラー見に戻るとか愚行だよね。 :make

    結構マジメにVimのテスト環境を整えてみる(Python用) - Qiita
  • vimのファイル名補完 - てきとうなメモ

    vimでファイル名をタブ補完する時、bashの補完と感覚が違うので使いづらい。 タブ補完はwildmodeで動きを設定することができる。 wildmodeは以下の値を設定できる 値 説明 "" 最初のマッチのみ補完 full TABを押すごとに次のマッチを補完する。wildmenuが有効ならwildmenuを開始する longest 共通する最長の部分まで補完する list マッチするものをリスト表示する longest:full longestと同じだが、wildmenuが有効ならwildmenuを開始する list:full マッチするものをリスト表示しつつ、TABを押すごとに次のマッチを補完 list:longest マッチするものをリスト表示しつつ、共通する最長の部分まで補完 言葉で説明してもわかりづらいので例示する。 $ ls sample1 sample2 sample3という

    vimのファイル名補完 - てきとうなメモ
  • 15年目のVim | POSTD

    (注:2017/04/19、いただいたフィードバックを元に翻訳を修正いたしました。修正内容については、 こちら を参照ください。) Vim使用について述べた先の投稿( 1 、 2 )は好評だったこともあり、そろそろ更新が必要になりました。Vim 8には非常に要望の多かった機能がたくさん追加され、 VimAwesome のような新しいコミュニティサイトができたことでプラグイン探しと評価が容易になりました。最近では私もVim仕事をする機会がとみに増え、 ピーク効率 に向け自分のワークフローの設定に時間を費やしたりもしています。ですから、この記事は私の現在の状況を写し取ったものです。 大まかには次の内容です。 ファイル特定にはfzfとfzf.vim *ファイル検索にはack.vimと ag Vim + tmuxが勝利への鍵 ALEは新Syntastic。理由はその非同期性 …などなど多数。ぜひ

    15年目のVim | POSTD
  • GitHub - dense-analysis/ale: Check syntax in Vim/Neovim asynchronously and fix files, with Language Server Protocol (LSP) support

    ALE (Asynchronous Lint Engine) is a plugin providing linting (syntax checking and semantic errors) in NeoVim 0.6.0+ and Vim 8.0+ while you edit your text files, and acts as a Vim Language Server Protocol client. ale-demo.mp4 ALE makes use of NeoVim and Vim 8 job control functions and timers to run linters on the contents of text buffers and return errors as text is changed in Vim. This allows for

    GitHub - dense-analysis/ale: Check syntax in Vim/Neovim asynchronously and fix files, with Language Server Protocol (LSP) support
  • Vim 8 時代のがんばらないプラグイン管理のすすめ - Humanity

    これは Vim Advent Calendar 2017 の20日目の記事です。 皆さん Vim しておられるでしょうか。 Yes と答えた方、プラグインマネージャーは使っていますか? 巷では Vim のプラグイン管理にはプラグインマネージャーを入れる必要があるかのような勢いで「まずプラグインマネージャーを入れる」といった記事が沢山ありますが、 個人的にはプラグインマネージャーより Vim 標準で使える パッケージ機能 をまず試してみてほしいです。 この機能はざっくり言うと「ディレクトリ以下に置いたプラグインを読み込む」ほぼそれだけですが、必要十分な機能は揃っていると思います。 またちょっとの工夫であなたの使っているプラグインマネージャーの機能も代替できるかもしれません。 もしかしたらプラグインマネージャーほどの多機能さは必要ないことに気付くかもしれませんよ? 記事ではそんな多機能は求め

    Vim 8 時代のがんばらないプラグイン管理のすすめ - Humanity
    namutaka
    namutaka 2017/12/20
  • Vim の自動インデント機能について - 書いたものなど

    必要になっていろいろ調べてみると、思いのほか分かっていなかったのでまとめました。上から調べて行って該当するものが使われるようです。 'equalprg' オプションが空でなければ指定された外部プログラムが使われる。 'lisp' オプションがオンなら組み込みで定義された lisp 標準(の一種)のインデントがなされる。 'autoindent' をオンにする必要がある。 'indentexpr' が空でなければ 'indentexpr' の評価によってインデント深さを計算する。 ユーザーが Vim script によってインデントを定義することができる。 :filetype indent on によって有効になるインデントの多くは $VIMRUNTIME/indent/{ファイルタイプ名}.vim で定義されるインデント関数を 'indentexpr' に設定することによって実現される。

    Vim の自動インデント機能について - 書いたものなど
    namutaka
    namutaka 2017/01/04
  • vim に標準入力からテキストを渡す時に文字コードを指定する方法 - memo

    some-command | vim --cmd 'autocmd StdinReadPre * set fileencodings=iso-2022-jp' -

    namutaka
    namutaka 2016/07/14
    .vimrcに、「autocmd StdinReadPre * set fileencoding=utf-8」と書いておくのがよさそう
  • シェルのコマンド入出力パイプをvimで編集

    #!/bin/bash TOVIMTMP=~/.tovim_tmp_`date +%Y-%m-%d_%H-%M-%S.txt` cat > $TOVIMTMP vim $TOVIMTMP < /dev/tty > /dev/tty cat $TOVIMTMP rm $TOVIMTMP これを tovim というスクリプトファイルで保存し実行権限を付与します。シェルのコマンド入出力パイプに入れる事でストリームを編集出来る様になります。sed や grep でやっても良いのですが、編集中に undo が出来るという点でこちらにもメリットがありそうです。

    シェルのコマンド入出力パイプをvimで編集
  • incsearch.vimでVimの検索体験をリッチにする - haya14busa

    この記事はVim Advent Calendar 2014の14日目の記事です。 13日目は deris さんによるスマートフォンでVimを操作するためにやっておいたほうがいいこと - derisの日記 でした。 1. incsearch.vim つくった Vimの検索体験をリッチにする, incsearch.vim を作りました haya14busa/incsearch.vim あなたとincsearch.vim 今すぐインストール 1 2 3 4 5 6 NeoBundle 'haya14busa/incsearch.vim' Plugin 'haya14busa/incsearch.vim' Plug 'haya14busa/incsearch.vim' map / <Plug>(incsearch-forward) map ? <Plug>(incsearch-backward)

    incsearch.vimでVimの検索体験をリッチにする - haya14busa
  • submode.vim とその設定例なんかを紹介 - 永遠に未完成

    Vim Advent Calendar 2012 の 62 日目の記事です。 私が毎日のようにお世話になっているプラグインの1つに、kana さん作の submode.vim と言うのがあります。結構昔からあり、かなり便利なのにあまり知られていないような気がします。これはもったいない!と言うことで今回はこの submode.vim について書こうと思います。 submode.vim とは https://github.com/kana/vim-submode submode.vim は、ユーザが自由にサブモードを定義できるプラグインです。…と言っても何のことやらさっぱりですね。 Vim には、複数のキー、つまりキーシーケンスによって成立するコマンドがたくさんあります。例えば <C-w>+ は現在のウィンドウの高さを変更します。そして、この複数のキー入力が必要な割に、連続で入力したいコマンド

    submode.vim とその設定例なんかを紹介 - 永遠に未完成
  • Vimが変なファイルを作るようになった — KaoriYa

    +kaoriya版として配布しているVimでは デフォルトで undofile がオンになった関係で ファイルの保存時に変な名前のファイルが作成されるようになりました。 その解説をします。 うちで配布している Vim は 7.4.227 から、デフォルトで undofile がオンの状態で配布されるようになりました。そのためデフォルトではファイルを保存した時に同時に.{ファイル名}.un~ を undo ファイルを作成します。この undo ファイルにより Vim は undo の情報をセッションを越えて保持できます。 しかしいきなりゴミのような名前のファイルが生成され、普通のユーザは驚くことでしょう。かく言う私も驚きました。っていうかそのまま間違えてレポジトリに commit しちゃいました。それでは困りますので、無効化する設定などを紹介しておきます。 完全に無効化する こう設定してくだ

  • Vimmerなら2013年中に試しておきたい海外産Vim plugin 8選 - derisの日記

    Vim この記事はVim Advent Calendar 2013の15日目の記事です。 14日目はjoker1007さんによるwebapi-vimとBufWriteCmdでWeb上のリソースをVimで編集するでした。 記事では、2013年中に試しておきた海外Vim pluginを8個ご紹介します。 はじめに なんで海外産限定なの? 理由は以下のとおりです。 日産のVim pluginは入れている人が多く日語での情報も多い(vimrc読書会に参加した感覚として) Vim Advent Calendar 2012が1年続いたこともあり、興味深い日Vim pluginが多すぎる… 海外でそこそこ流行っていても日ではあまり知られていないVim pluginが多いのでもったいなーと思ったので、記事を書こうと考えました。 ちなみに、今回ご紹介するのは今年私が見つけたVim plugi

    Vimmerなら2013年中に試しておきたい海外産Vim plugin 8選 - derisの日記
    namutaka
    namutaka 2013/12/16
  • vimでtodoリストを書くためのtips - Qiita

    vimmarkdown書ける前提で、以下のような設定を書くと- [ ]のようなtodoリスト記法をラクに書いたり、Leader(デフォルトだと\)でオン・オフを切り替えられるようになる。 " todoリストを簡単に入力する abbreviate tl - [ ] " 入れ子のリストを折りたたむ setlocal foldmethod=indent " todoリストのon/offを切り替える nnoremap <buffer> <Leader><Leader> :call ToggleCheckbox()<CR> vnoremap <buffer> <Leader><Leader> :call ToggleCheckbox()<CR> " 選択行のチェックボックスを切り替える function! ToggleCheckbox() let l:line = getline('.') if

    vimでtodoリストを書くためのtips - Qiita
  • Ranges

    A range permits a command to be applied to a group of lines in the current buffer. For most commands, the default range is the current line. For example: :s/old/new/g   changes all old to new in the current line :11,15s/old/new/g   changes lines 11 to 15 inclusive :%s/old/new/g   changes all lines

    Ranges
    namutaka
    namutaka 2013/07/24
  • Vimで編集を効率的に行うための繰り返し操作について - derisの日記

    Vim この記事はVim Advent Calendar 2012の232日目の記事です。 231日目はrbtnnさんによる`vimproc#system({expr})`の{expr}の展開のされ方でした。 記事は、Vimで編集を効率的に行うための繰り返し操作について記載します。 カーソル位置の単語編集の繰り返し カーソル位置の単語を編集して同じ単語の編集をファイル内で繰り返したい場合、 以下の順で実行します。 *でカーソル位置の単語で前方検索する (必要に応じて)Nで最初の位置に戻る(私は*に*Nをマッピングしてます) ciwでカーソル位置の単語を削除し編集する n.で単語の編集を繰り返し 確認不要だったり量が多ければ%s//<C-r>./g 以下は上記操作のGIF画像です。 最初から:substituteコマンドを使う事も考えられますが、 検索で確認しながら、編集に移行するかどうか

  • あなたの知らない Vim ~ デフォルトの ftplugin 達 ~ - 反省はしても後悔はしない

    この記事は Vim Advent Calendar 2012 の 214 日目の記事です。 昨日は id:manga_osyo さんの Vim で Web ページを :source する でした。 Vim では何も設定せずとも様々なプログラミング言語のためのシンタックスがはじめから提供されています。マニアックなプログラミング言語を編集しようとしていきなりシンタックスで色付けがされてたりするので驚きです。 実は、Vim にはシンタックスだけでなくプラグインみたいなものも言語別にあります。それが ftplugin です。言語によってコメントの仕方やコンパイルエラーの解析*1だけのものからマッピングやコマンドなどの機能まで提供されているものまであります。しかし、これらは help に書かれておらず調べるには自分でソースを読まないといけないのでなかなか知られていないのが現状です。 そこで、今回はこ

    あなたの知らない Vim ~ デフォルトの ftplugin 達 ~ - 反省はしても後悔はしない
    namutaka
    namutaka 2013/07/03
    :DiffGitCachedなんてあったんや...しらなくてsvn-diff改造してgit版自作してた
  • powerlineをいつ使う?今でしょ! - Qiita

    Vim Advent Calendar 2012 136日目 さて、便利でカッコいいpowerlineさんを使う時が来たようだ! この記事を読んでカッコいいVimにしよう! この記事で分かること。 ・最新のpowerline化 ・TabLineもpowerline化 ・powerlineを使う人のTmux powerlineとはなんぞ? 「CUIってダサいよねー。どうにかしたいねー。」 「Vimってダサいよねー。」 はい、powerlineっと。 お..お、ぉぉ...サロメ。(※1 神の雫より) 最新のpowerline化 tmux, zsh, vimのpowerlineが元々ありましたが、最近ひとつに統合されました。 多くの人がvim-powerlineを使っていますが、個人的には新しいpowerlineの方がおすすめです。 あと、この前遊んでたらtablineもpowerline化出来

    powerlineをいつ使う?今でしょ! - Qiita
  • http://blog.monoweb.info/blog/2011/04/29/

    See related links to what you are looking for.

  • Vim: Filetype pluginを極める - while (“im automaton”);

    なにかと誤解が非常に多いVimのfiletype pluginについての解説。VimM#2でfiletype pluginについてスルーしたのは、以下の分量から察してください。 概要 Vimはバッファ毎にその内容の種類、例えばPerl/Python/Rubyスクリプトといった情報が保持されており、それは'filetype'というオプションで表される。Filetype pluginとは'filetype'に応じた機能を提供するためのスクリプトである。その性質上、提供される機能はバッファローカルである。 Vimは標準で多数のfiletype pluginが同梱されている。どのようなものがあるかはVim内で:edit $VIMRUNTIME/ftplugin/を実行してみれば分かる。:help ft-filetype-pluginで'filetype'に対するfiletype pluginのドキ