vim

仕事場にlinuxシェル環境が無いので作りました

https://github.com/pneu/copytask ファイルをコピーするだけのスクリプトです。 config/sample*.vimを参考にコピーしたいファイルを追加して、run.batを叩けばうまくいくと思います。 windowsのタスク機能?とか使えば、必要なときにほしいファイルをコピー…

C言語のソース中の宣言場所を表示・メモ

:help usr_29.txt [i RELATED COMMANDS [i only lists the first match ]I only lists items below the cursor ]i only lists the first item below the cursor [D [d only lists the first match ]D only lists items below the cursor ]d only lists the f…

同じ名前を持つヘッダファイルを開く.2

同じ名前を持つヘッダファイルを開く - bugfix そもそも間違っていたようです。 let l:hname = fnamemodify(expand("%"), ":t:r") の部分。 ヘッダファイルはカレントディレクトリ(:pwd)に開かれてしまうので、 編集している .c ファイルがカレントディレ…

同じ名前を持つヘッダファイルを開く

Cで、 他のソースファイルに公開する関数をヘッダファイルに書くときには .cと同じ名前を持つ.hに(わたしは)命名しています。 function! Open_header_file() let l:hname = fnamemodify(expand("%"), ":t:r") execute "edit " l:hname . ".h" unlet l:hnam…

PC別の設定を読み込む

あるマシン(windows)だけに 特殊なkey-mappingを定義させたかったので、 以下を.vimrcに追記しました。 http://github.com/pneu/vimrc/blob/06bd7bbc2c30352d3ac92855de78f099ff6c6514/.vimrc#L27 elseif has('win32') runtime custom/mainpc.vim endif cust…

quickfixリストウィンドウを引数付きでトグルする.2

vim

Re: quickfixリストウィンドウを引数付きでトグルする - bugfix - while ("im the true Vim master"); - vimグループ 修正していただきました。 知ったこと.1 3:Qftoggleであって、:3Qftoggleではない 「count:」を入力すると「:.,+{count - 1}」に展開され…

quickfixリストウィンドウを引数付きでトグルする

vim

[Tag]qを押し下げると、 カーソルがquickfixウィンドウにある時は:cclose カーソルがquickfixウィンドウにない時は:copen するようにしました。 1 function! Toggle_open_quickfix() 2 if &filetype ==# 'qf' 3 command! Qftoggle cclose 4 else 5 command! …

:TOhtml - VimのスクリーンイメージをHTMLに変換

先日、コメントをいただいた記事に行番号が追加されていたのを見て、 Re: オプションをトグルする関数 - bugfix - while ("im the true Vim master"); - vimグループ どうやってるんだろうと疑問に感じたため。 ソースプログラムに対して行番号を追加するス…

modelineが読み込まれるタイミング

.vimrcに set tabstop=8 が書かれている条件で、 modelineにtabstop=4が書かれたファイルを開くと、 そのバッファのtabstopは4になる。この状態で、 :source $MYVIMRCを実行すると、 tabstopが8になる。 つまり、modelineの設定を上書きしている。 modeline…

オプションをトグルする関数

vim

先日の記事 http://d.hatena.ne.jp/pneumaster/20090825/1251210686 の中で作ったToggle_option_number()がnumber以外にも使えたらよいと思い、 1つ上のレベルの関数を作ることにしました。 " 関数の概要 " void Toggle_option(String) " Stringで与えられた…

WEB+DBvol.52のVimの記事を読みました

g:vim:id:ka-nachtさんが書かれた記事を読みました。vimの基礎からスクリプトを公開するところまで一貫して書かれており、 vimを使うのに必要な知識はもちろん、 vimスクリプトを作っていくために踏んでいくプロセスが理解できました。 また基礎を押さえた設…

manpageview

n_CTRL-K Kでmanが表示されますが,画面が切り替わってしまいます.新しいウィンドウで表示されれば,見ながらコーディングできるので便利ですよね.そんな中manpageviewというのを見つけました.http://www.vim.org/scripts/script.php?script_id=489説明を…

formatoptionsがうまく設定されない...?

ファイル名が*.cであると,croqlになる. それ以外だとtcqになる. だけど,ファイル名がc.vimだと,croqlになる. ファイル名がそれ以外のc.fooや,c.tmpだと,tcqになる. ちなみに,formatoptionsのデフォルト値は"tcq". $VIMRUNTIME/ftplugin/c.vimには…

formatoptionsの件,一応確認した過程メモ

$HOME/.vim/after/ftpluginは,システムのftpluginを丸々読み替えるのではなく, 上書きするかどうかの確認過程. システムのc.vimには,わたしが分かる範囲で試せるオプションがなかったのでvim.vimを使用しました. システムのvim.vimには次の2つの設定が…

windowsで,行頭から前の行の行末にバックスペースできないアレ

suseやfedoraでは出来たのに, windowsだと行頭でバックスペースが止まってしまうので,いちいちk$してxしてた. set backspace=indent,eol,start eolが該当する設定. suseだとシステムvimrcである/etc/vimrcに書いてあったので気づいた. ある設定が,どの…

選択領域用レジスタを使ってvimからGTKのクリップボードへコピー.2

前回(id:pneumaster:20081202)では, geditやブラウザで使われるクリップボードをvimへペーストするために, xterm_clipboardという機能が必要なことがわかりました. この機能はvimコンパイル時に機能ありとされていなければならないものであり, つまり,v…

選択領域用レジスタを使ってvimからGTKのクリップボードへコピー.1

ある端末のvimから,別の端末のvimにコピーしたいときは :wv!と:rv!を使えばよいのですが, ブラウザのフォームなどのGUIアプリケーションに渡したいときには, viminfoを参照するはずないので,もちろんこれではうまくいきません. vimで:h registersを読む…

メモ.autocmdでのノーマルコマンド

vimグループに入ってからというものvimスクリプトというものを知って, それについての記事を見ることが多くなりました. 今まで.vimrcでの設定や,プラグインのためにs:foo=0とかやっていたのが, 実はvimスクリプトであったというのを知ってびっくり. 理…

追記:vimdiff: シンボリックリンクを使ってオプション付きのコマンドを渡す方法

ほんとにありました. vim-7.2のソースをダウンロードしてみると, やはりargv[0]を評価しているようです. まずは,mparam_Tという構造体を定義. この中にはコマンドライン引数が格納されています. 39-42@main.c 39 typedef struct 40 { 41 int argc; 42 …

vimdiff: シンボリックリンクを使ってオプション付きのコマンドを渡す方法

$ file `which vimdiff /usr/bin/vimdiff: symbolic link to `vim'なのですが,もちろん $ vim tmp0 tmp1 $ vimdiff tmp0 tmp1の2つは動作が変わります. これはどんな風に実装してるんでしょう... lnコマンドのドキュメントにはそういったことは書いて…

syntax, filetype plugin

syntax gtkのプログラムを作っていると,gucharなどのgtk特有の型がハイライトされておらず気になる. syntaxファイル自体は/usr/share/vim/vim71/syntax/c.vimにあるのですが, 自分用の設定なので,~/.vim/syntax/c.vimにコピーし,それを編集することにし…

Window版のgvimを使っているとIMEがONの状態から始まって困るアレ

ノーマルモードはIMEがオフの状態から始まるのに, 挿入モードとか検索,:E時のリネームとか削除とかで IMEがオンになっててイラっとくるときありませんか? windowsでもわざわざvimを使う人は, 多分LinuxとかUNIXとかでも使っている人が多数だと思うので,…

vimで矩形選択で一括編集

vim

http://www.partty.org/session/goth/2008/04/13/12/36/28 を見てたら,自分の知らないvimの使い方が出てきた.動画の最初の方の hs-dcounterディレクトリの下のcountsというファイルを編集している部分. lsコマンドで読み込んだfilesディレクトリ以下のフ…

w3m: 日本語で書かれたhtmlファイルも読めちゃう

こちらhttp://homepage1.nifty.com/niwatori/vi/index.html で配布されてるマニュアルをw3mで見たら,何の文句も出ないくらいに使いやすくなった.firefoxだと重いから,なんとかならないかな,と調べてみてよかった. 今までlinksしか知らない自分は損して…

/usr/share/vim/vim70/syntax/devchangelog.vimがぁゃιぃ

vim

vim開いて:help "filetype"で検索 usr_43.txtとusr_44.txtがあやしいので 設定ファイルがあるらしい 表題のディレクトリ内に当該ファイルを発見. どうやら正規表現かな?でかかれてるらしい なんのトークンがどう反応するんだ?

vimでChangeLogってどう書くの?

vim

ファイル名をChangeLogにしたら自動的に色が変わったりした. なんかプラグイン入ってるのかな? 書式はどこで調べられるんだ?

viキーバインドは?

Emacsのキーバインドに慣れちゃったからWindowsは使いづらい。。。 って言う人をよく見るんだけど、俺としてはEmacsのキーバインド自体が覚えられません。 http://www.cam.hi-ho.ne.jp/oishi/index.html http://www.remus.dti.ne.jp/~kurotora/kb_customize.…

キーマップ変えてみた

id:pneumaster:20070225:1172343508の記事でHHKB Pro2を買った話をしました。 その後使うにつれて手に馴染んできたのか肩が凝るってことはなくなりました。 ところで、、、 自分はエディタにviを使っているのですが、カーソル移動がめんどい! というわけで…

modelineの中でfencを設定してはいけない

ファイルをバッファに読み込み BufRead/BufReadPostイベント発生 モードライン読み込み バッファがウィンドウに表示 BufWinEnterイベント発生 参考 :help autocmd.txt Vim の modeline で fileencoding を設定すべからず: まじかんと雑記