タグ

vimとtipsに関するmollifierのブックマーク (20)

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    mollifier
    mollifier 2009/09/11
    set foldcolumn=3 した
  • vim のkeymapでCtrl-Spaceが設定できなかったので調べてみた。 - dgdgの日記

    行き着いた先はここ。 Avoid the escape key | Vim Tips Wiki | FANDOM powered by Wikia どうやらと指定せずにでいけるらしい。 imap 出来ました! 前に軽く調べたときに分からなかくて、ずっと放置していたんですよね。 今度Shift-Spaceの設定方法も確認しておかねば…。

    vim のkeymapでCtrl-Spaceが設定できなかったので調べてみた。 - dgdgの日記
    mollifier
    mollifier 2009/08/28
    imap <Nul> <C-p>
  • 2008-01 - while (“im automaton”);

    Vimのプラグインを書いていてcurryingを使いたい場合が出てきたので、どうすれば実現できるかちょっとだけ考えてみました。 実装 function! Curry(f, x) let d = {} let d.f = a:f let d.x = a:x function! d.__call__(...) return call(self.f, [self.x] + a:000) endfunction return d endfunction function! Apply(func, args) if type(a:func) == type({}) if has_key(a:func, '__call__') return call(a:func.__call__, a:args, a:func) else throw 'This dictionary is not callable

    mollifier
    mollifier 2009/08/26
    set, setlocal
  • Vimで同じインデントの部分を選択する - Webtech Walker

    kanaさんの記事をみて自分で定義した部分を選択したりomapに定義したりするのがすごい便利だなーと思って自分でも書いてみました。 カレントの位置と同じインデントの部分を選択できるような設定を書きました。たとえば下記のようテキストがあったときに配列と中身だけを選択するときとかに便利です。vibで選択すると、)の前まで選択範囲になるのでちょっと選択したい範囲と違ったりするんですよね。 function foo() { $hoge = array( 'foo' => 'bar', 'hoge' => 'fuga', ); } ソースはこんな感じ function! VisualCurrentIndentBlock() let current_indent = indent('.') let current_line = line('.') let current_col = col('.')

    Vimで同じインデントの部分を選択する - Webtech Walker
  • Vim-users.jp - Hack #32: Vimが強制終了された後の処理

    mollifier
    mollifier 2009/06/26
    swpファイルについて。"日頃の編集作業の緊張感が高まります"
  • Vim: 同じ高さのインデントに移動

    プロトコルが複雑なデバドラ等のコードの場合、switch-case文が長かったりネストしていたりと一画面に収まらない場面がある。そんな時、同レベルのcase文を追いたい場合、通常なら「case」まで移動して「*」や「#」でジャンプしたりする。でもこれだと、検索レジスタ「"/」を汚してしまうし、ネストしたcase文には対応できない。そこで、同じ高さのインデントに移動する術を期待し、Vim家で「move same indent」というフレーズで検索したら見事ヒット!一行でしかもキーマップまで書けてしまうとは。。このWikiには「Alt-,/.」に割り当てているが、しかしMeta(Alt)キーがうまく動作しない。原因はここにあるようにgnome-terminalがAltの前にESCを付けてしまうのが問題らしい。よって、以下の設定にした。nn <C-k> k:

  • Big Sky :: 意外と知られていないvimのtips(ファイルがあるディレクトリをコマンドモードで補完する)

    色んな人のvimrcを見ていて意外とmapされていないのがこの技。 元はと言うとKoRoNさんから教えて貰った技で、先日公開した私のvimrcにも入っています。 " expand path cmap <c-x> <c-r>=expand('%:p:h')<cr>/ " expand file (not ext) cmap <c-z> <c-r>=expand('%:p:r')<cr> これを使って例えば # vi /path/to/file/file.txt type some text... :pwd /path/to/file な状態で、ファイルのある場所にカレントディレクトリを移したいならば :cd <C-X>  <= Ctrl押しながらX とコマンドモードで<C-X>をタイプすれば :cd /path/to/file/ と補完されます。あとはENTERで移動。 結構便利だったりしま

    Big Sky :: 意外と知られていないvimのtips(ファイルがあるディレクトリをコマンドモードで補完する)
    mollifier
    mollifier 2009/06/01
    追加した。 / いざ使うときになったらmapを忘れて手入力してしまう罠
  • vim 最近の変更した位置にジャンプする方法

    エディタ vim には、さまざまな移動方法が提供されています。 vim でテキストのあちらこちらを編集(変更)すると思います。 その変更点(変更リスト)を簡単にジャンプすることが可能です。 テキストを編集した 変更リストの前のポイントにカーソルを移動します。 g; 変更リストの次のポイントにカーソルを移動します。 g, g;やg,で変更リストをぐるぐるすることができ、バッファ内を効率的に移動することが可能になります。 スポンサーリンク

    mollifier
    mollifier 2009/05/29
    変更した順番に移動する方法。g; で戻る。g, で進む
  • 知っているといざという時に役立つ、ちょっと特殊なundo、redo - 心魅 - cocoromi -

    追記 vimのバージョン 7.0.237 たとえば 1.この状態から 2.ココまで編集して 3.「あれ、これちがくね?」って、undoして さっきのところまで戻る 4.んで、 また、書き直し初めたんだけど。 5.「やっぱさっきのであってんじゃね!?」 で、undoしても・・・ 2に戻りたいのに戻れない!? っていうこと、時々ないですか? vimならg+,g-コマンドで戻れますよと。 undotree vimはundotreeという概念があり、編集履歴をツリー状に管理しています。 通常のundo、redoでは各ノードの最新の枝だけしか行き来出来ませんが、 任意のノードに移動する手段が用意されています。 そのコマンドがg-とg+です。 たとえばさっきの、ここからg-を押すと 見事この状態にもどれます。 解説 どういうことが起きてるのかと言うと下の図のようなことが起きてます。 数字は冒頭の図の番

    知っているといざという時に役立つ、ちょっと特殊なundo、redo - 心魅 - cocoromi -
    mollifier
    mollifier 2009/04/30
    "undo,redoで困ったらg-、g+コマンドを試してみよう"
  • Vimのヘルプウィンドウをqだけで閉じられるようになった(+α) - ぬいぐるみライフ?

    Vimについて何かを調べるときは必ずといっていいほどVimのヘルプ機能(:help)を利用しているのだけど,ヘルプで開いたウィンドウを閉じるときに:qやcと入力するのは多少面倒だと前々から感じていた. そこで「ヘルプウィンドウの場合はqを押すだけで閉じられる」みたいな設定をしてみようと思いつつ,昨日Twitterで以下のようにつぶやいたら, http://twitter.com/mickey24/status/1639291126 kanaさんから1分でリプライが来た件.早い>< http://twitter.com/kana1/statuses/1639298566 まだautocmdを調べている段階だったのに…! というわけで教えていただいた通りに.vimrcを記述. autocmd FileType help nnoremap <buffer> q <C-w>c 試しにヘルプウィンド

    Vimのヘルプウィンドウをqだけで閉じられるようになった(+α) - ぬいぐるみライフ?
  • 株式会社タイムインターメディア|社員リレーブログ

    2009/04/14 00:00:00random tips on Vim当はVimについて腐る程書き散らそうかと思いましたが、文章にまとめるのは案外労力を伴うので疲れました。という訳で適当なtipsを書き並べて済ませます。 : vs ; noremap ; : noremap : ; Vimの諸悪の根源はExコマンドなのですが、まあそれはそれとして、使う機会は決して少なくありません。その割にCommand-line modeに入るためのキーは:で、これを入力するにはUS配列ではShiftを押下する必要があり、JIS配列では右手小指をホームポジションから移動しなければなりません(QWERTY配列を仮定。他の配列の場合は適宜読み替えること)。非常に効率が悪いですね。 という訳で:と;を入れ替えましょう。これでホームポジションから移動することなく、またShiftを押下することなくComman

    mollifier
    mollifier 2009/04/14
    内容がマニアック。後で試す
  • こくう

    こくう

    mollifier
    mollifier 2009/04/13
    Quickfixウィンドウで :setlocal modifiabe。参考になる
  • pointing character by Unicode code point - KBDAHOLIC - やぬすさんとこ

    小ネタ。 vim での文字指定に \%uXXXX という形式で Unicode code point が使える。普段そんなに使うことはないと思うんだけど fileencoding を変えたくないときや全角スペースみたいな誤認識されやすい文字を使わなきゃならないときに便利。ってかうちの場合 .vimrc に非 ascii 文字が全角スペースだけという状況で開くたびに fenc 誤認識 -> 変な fenc で上書き -> 次回開くと全角スペースとして認識せず、みたいなことがあってウザかったので調べてみたら案の定こういう指定もできたという経緯で。 で、 http://blog.miraclelinux.com/ctd/2006/07/vim__32e1.html で紹介されてる表示されない文字を可視化する script をもう少し汎用的にするために以下のようにしてる。あと元ネタだと highl

    pointing character by Unicode code point - KBDAHOLIC - やぬすさんとこ
    mollifier
    mollifier 2009/02/06
    "\%u3000" で全角スペース / highlight group へ link
  • Vimで強制的にIMをオフにする @Ubuntu - 備忘録 beta

    http://idak604.blog39.fc2.com/blog-entry-2.html uimにあるvi協調モード. Insert modeからNormal modeに戻るときに強制的にIMEをオフにしてくれる. uim入れてみたけど使い勝手が微妙だったから削除(vi協調モードは動作した). Ubuntu標準のSCIMにこの機能はついていない. これをvim側で対処する. 手順は3つ 1. xvkbdをインストール # apt-get install xvkbd 2. SCIMでIME終了のホットキーを作成 今回は,Ctrl + Shift + Spaceを使用 自分で打つことはないだろうから適当でOK ・SCIMを設定 -> フロントエンド -> 全体設定 -> ホットキー -> 終了 で設定可能 3. .vimrcに記述 かが押されたらシステムにCtrl + Shift + S

    Vimで強制的にIMをオフにする @Ubuntu - 備忘録 beta
    mollifier
    mollifier 2009/02/06
    xvkbdを使う方法
  • Vimでカレントウィンドウにのみ罫線を引く @ 7bit

    vimではCursorLine, CursorColumnグループをハイライトすることで罫線が引けますが、ウィンドウ分割するとすべてのウィンドウに表示されて陶しいのでカレントウィンドウにのみ表示するようにしました。 " カレントウィンドウにのみ罫線を引く augroup cch autocmd! cch autocmd WinLeave * set nocursorcolumn nocursorline autocmd WinEnter,BufRead * set cursorcolumn cursorline augroup END highlight CursorLine ctermbg=black guibg=black highlight CursorColumn ctermbg=black guibg=black 少し見やすくなった…かもしれない。

  • 矩形選択で行末に文字を挿入する方法 - Guyon Diary

    矩形選択をして「I」で行頭に文字を挿入するというのはよく使うのですが、文字列の長さが違う行の行末に文字を挿入する場合はいつも行選択をして正規表現置換で行っていました。 :'<,'>/$/挿入したい文字/g 矩形選択で挿入する方法を今さらながらですが気付きました。 矩形選択をした後「$A」ほんと今更すぎる・・・ なぜ気付かなかったんだろう。

    矩形選択で行末に文字を挿入する方法 - Guyon Diary
    mollifier
    mollifier 2009/02/04
    神, "矩形選択をした後 $A" <- 超便利 / :help v_b_A に書いてあった
  • Y with vim - KBDAHOLIC - やぬすさんとこ

    複数ファイルにまたがる文書の表記揺れを直すのに andLinux 側で grep しないとダメかなーとか思ってたんだけど、ちょっと調べたら簡単に vim でできた ( :help grep や :help quickfix や :help args や :help argdo ) のでメモ。 internal grep vim 自体が持っている grep 。なので platform にしばられないで使うことができる。 Windows だと KaoriYa さんとこの gvim ( http://www.kaoriya.net/#VIM ) いれればそれで OK なのでかなり楽。 :vimgrep もしくは :vim で使えるんだけど省略形が editor の名前と同じということはけっこう主要な機能として扱われているのかもしれない。 もちろん external grep もあって上述の Ka

    Y with vim - KBDAHOLIC - やぬすさんとこ
    mollifier
    mollifier 2009/01/27
    vim内で一括置換する方法。vimgrepadd, update知らなかった。argdoもよく分かってなかった
  • 覚えとくと便利かもしれないVimのTips

    適当に思い付いたものを書いてみる。 CTRL-X CTRL-L 行単位での補完。まぁ該当の行でyyしてpして貼り付けでもいいかもしれないけど、移動するの面倒な場合もあるし。 以下、自分のvimrcで「n CTRL-X CTRL-L」した例。 ちなみに俺がこれを一番使うときはRSpecのdescribeの行を補完する時かな。こんな感じ。 describe "hogehoge" do end desCTRL-X CTRL-L ↓ describe "hogehoge" do んで、hでちょこちょこっと”の中に移動してdi”で”の中を削除する感じ。 di" こっそり上で登場してるけど"で囲まれた文字列をd(削除)する。da"だと"も含めて削除。ちなみにこれはテキストオブジェクトっていうVim7からの機能で他にも色々パターンがあって、個人的にVimの機能の中でも特別気に入っている。ちゃんと説明する

    mollifier
    mollifier 2009/01/15
    CTRL-X CTRL-L で行単位での補完
  • autocomplpop.vimを入れてやったこと-vimプラグイン - rderaログ

    AutoComplPop - Automatically opens popup menu for completions : vim online autocomplpop.vim 2.6 をダウンロード。 ~/.vim/plugin/に投げる。 補完候補の指定 autocomplpop.vim - vimグループを読み、補完候補はAutoComplPop_CompleteOptionで設定すれば良いことを知る。 autocomplpop.vim による自動補完が便利すぎる - cooldaemonの備忘録を参考に設定してみる。 autocmd Filetype * let g:AutoComplPop_CompleteOption='.,w,b,u,t,i' autocmd Filetype java let g:AutoComplPop_CompleteOption='.,w,b,u

    autocomplpop.vimを入れてやったこと-vimプラグイン - rderaログ
    mollifier
    mollifier 2009/01/13
    ホップアップ中止の方法が参考になる。
  • Vim: Key mappingを極める - while (”im mirrored”);

    vimVimを使いこなす上で避けて通れないのがkey mappingです。Vimのデフォルトのキーバインドはそれ自体でもそれなりに優秀なのですが、キーの割り当て方が今一だったり、そもそもキーが割り当てられていない機能も多くあります。それをカスタマイズするための機能がkey mappingです。Key mapping (あるいは単にmappingやmapとも呼ぶ)については:help map.txtを読めば一通りのことは分かるのですが、どういう風に使うべきかという観点からは詳しく説明されていませんし、掲載されているサンプルも実践という観点からは今一です。そこで、基的なところから始めて、よくあるパターンや使い分けの仕方、そしてハマりがちな落とし穴について述べていきたいと思います。基Key mappingを定義するコマンドは多数ありますが、基的な書式は以下の通りです: map [...]

    mollifier
    mollifier 2009/01/10
    参考になる
  • 1