トップページunix
1001コメント285KB

Vim Part16

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2009/01/16(金) 00:56:51
Vim 6以降に関する話題、Part16です。
http://www.vim.org/

前スレ
Vim Part15
http://pc11.2ch.net/test/read.cgi/unix/1202050038/

関連情報は>>2-8あたり。

0569名無しさん@お腹いっぱい。2009/08/03(月) 01:34:20
>>568
ありがとうございました。
0570名無しさん@お腹いっぱい。2009/08/05(水) 22:44:03
すみません、教えてくだしあ。
VIMって「ヴィ・アイ・エム」って発音しますか?
それとも「ヴィム」でもよろしいですか?
0571名無しさん@お腹いっぱい。2009/08/05(水) 23:43:50
>>570
好きなように自由に呼ぶべし
お友達も綺麗にしてさしあげましょう。

俺はゴルゴとレッドみたく
「俺たちおれたちV・I・M」
と叫ぶよw
0572名無しさん@お腹いっぱい。2009/08/06(木) 00:36:52
>>365が回答だろうけど、読んでないので知らない。
天地が裂けても断じて「ぶいあいえむ」。
0573名無しさん@お腹いっぱい。2009/08/06(木) 02:13:12
読みなよwww
公式にはどうであるかを一応知っておいた方がいいと思うよ。一応ねw
0574名無しさん@お腹いっぱい。2009/08/06(木) 02:42:43
Vim is pronounced as one word, like Jim, not vi-ai-em. It's written with a
capital, since it's a name, again like Jim.
って言われようがどうしようが俺の中でも「ヴィ・アイ・エム」
0575名無しさん@お腹いっぱい。2009/08/06(木) 14:52:31
gvimを使っています。
「/」で検索した際に、検索した文字に色が付く機能がありまして、非常に重宝してるのですが、
新しく別の単語を検索したりgvimを閉じるまで、ずっと色が付いたままになってしまいます。
いつもは、存在しない単語を検索して(わざと空検索して)色を消しているのですが、スマートではないと思っています。
検索した後、用済みになった色(マーカー)を消す為のコマンドとかあるのでしょうか?
教えて貰えると助かります。
0576名無しさん@お腹いっぱい。2009/08/06(木) 14:54:35
>>575
:noh
0577名無しさん@お腹いっぱい。2009/08/06(木) 14:57:45
>>576
ありがとうございます!
助かりました。
0578名無しさん@お腹いっぱい。2009/08/07(金) 20:56:31
vim -u /path/to/myvimrc file として起動した場合、一部設定がうまく読み込めません。具体的には、cmapは有効なのですがnoremapやnmapの設定が効きません。
myvimrcを.vimrcにリネームするとこのnoremap、nmapは正常動作します。それぞれこのように書いています。
noremap <Space> :bnext<CR>
nmap <silent> <C-L> <C-L>:noh<CR>
これらを動作させるにはどうしたらいいですか?
0579名無しさん@お腹いっぱい。2009/08/07(金) 22:09:59
>>578
vimrcにset nocompatible書いてないから。
-u fileを指定せずにvimrcがロードされたときはnocompatibleになるけど
-u fileを指定したときはnocompatibleにならない。だから<Space>などの
特殊キーの表記が認識されない。

ついでに言うとその設定はどっちもnnoremap使う方が良いよ。
0580名無しさん@お腹いっぱい。2009/08/07(金) 22:43:35
>>579
望みどおりに動作しました、ありがとうございます。

> ついでに言うとその設定はどっちもnnoremap使う方が良いよ。
:help nnoremap と :help nmap を見たところ、前者は再帰を行わず、後者は再帰を行うようですね。
nnoremapの方が良いというのは、無限ループを回避するため、ということですか?
0581名無しさん@お腹いっぱい。2009/08/07(金) 22:51:31
-uだからcompatibleなんじゃなくて、読み込み順の問題じゃないの?
結果的にはcompatibleで処理されてるのが原因だけど
0582名無しさん@お腹いっぱい。2009/08/07(金) 23:13:47
:eでさいよみこみ set acdで デレクトリ移動
GUIのステータスラインで ファイル名だけ表示 

0583名無しさん@お腹いっぱい。2009/08/07(金) 23:24:14
C言語のhelpファイルつくりたいんだけど
むずかしい?
0584名無しさん@お腹いっぱい。2009/08/08(土) 19:04:28
作りなよ。
0585名無しさん@お腹いっぱい。2009/08/08(土) 19:10:48
vim用の各言語helpファイルてあんまないね
簡単に作れるのにね
0586名無しさん@お腹いっぱい。2009/08/10(月) 01:32:12
よしつくることにするよ
0587名無しさん@お腹いっぱい。2009/08/10(月) 12:57:18
txtまでつくれたけど
helotagsでタグファイルつくれない
たすけて

ちなみにUTF-8でつくった 日本語検索できるように
うまくいったらUTF-8ばんhelpファイルUPする
0588名無しさん@お腹いっぱい。2009/08/10(月) 15:28:38
manじゃなく、か。
がんばれがんばれ
0589名無しさん@お腹いっぱい。2009/08/10(月) 18:45:55
crontab -e とかvisudoとかでviが開いて
vimじゃねーのかよって思ったときに瞬時にvimに切り替える方法教えて下さい
0590名無しさん@お腹いっぱい。2009/08/10(月) 18:56:15
:w tmpfile
! vim tmpfile
0591名無しさん@お腹いっぱい。2009/08/10(月) 19:00:44
前者はEDITOR もしくは VISUALを設定しておく事で、今後切り替える必要が無くなる
後者は危険を承知で別の実行ファイルを動作させたいのであれば、manを参照すること
0592名無しさん@お腹いっぱい。2009/08/10(月) 19:15:41
どうもです
ただlessからviに切り替えるくらいスマートな方法はないですかね?
0593名無しさん@お腹いっぱい。2009/08/10(月) 19:29:45
最初はviで、編集したいときだけvimにしたいということ?
0594名無しさん@お腹いっぱい。2009/08/10(月) 19:31:48
lessからはvimじゃなく、viでいいのかね
0595名無しさん@お腹いっぱい。2009/08/10(月) 20:56:17
いや自分が管理じゃない鯖にもよくさわるわけですよ
勝手にprofileとかいじるわけにはいかないし
lessからもvimがいいけどそこはv押すだけで行けるっていうスマートさの例なだけです
0596名無しさん@お腹いっぱい。2009/08/10(月) 21:04:08
visudoできる権限与えられてるなら何でもやっていいんでないの?
0597名無しさん@お腹いっぱい。2009/08/10(月) 21:48:28
自分の管理でないと言ってるのだから、出来るけど、やってはいけないのだろう。
だからたぶん ~/.exrc を変更できないだろうし、どんな種類の vi かも不明なので「スマートな方法はありません」がこたえ。
つかそれ以前に、viの話題なのでスレ違い。
0598名無しさん@お腹いっぱい。2009/08/11(火) 01:39:31
>>590
これって意味ある?
0599名無しさん@お腹いっぱい。2009/08/11(火) 02:08:09
そのあと:rとかで読んで保存すれば、まぁ。
0600名無しさん@お腹いっぱい。2009/08/11(火) 10:08:01
>>598
昔、vi-buffer.el つー elisp があっての。
1) 編集中文書を一時ファイルへ書き出す。
2) 現emacsをサスペンドし、viで一時ファイルを開く。
3) emacsに復帰したら、編集中文書を一時ファイルで置き換える。

なかなか有用であった。
アイディアを借用し、逆の vim から emacs への呼び出しを作り、これは今でも使っている。
0601名無しさん@お腹いっぱい。2009/08/11(火) 10:52:09
help つくれない あきらめた
0602名無しさん@お腹いっぱい。2009/08/11(火) 12:02:09
なんでvimscriptがんばる。vimにげんかいをかんじた
0603名無しさん@お腹いっぱい。2009/08/12(水) 09:22:39
autocmd FileType python set omnifunc=pythoncomplete#Complete

このpythonのオムニ補完のための1文をvimrcで読み込ませてるんですが、gvimrcではOFFにしたいと思っています。
この場合なんてgvimrcにはなんて記述すればいいんでしょう?
0604名無しさん@お腹いっぱい。2009/08/12(水) 10:16:53
"autocmd FileType python set omnifunc=pythoncomplete#Complete
とか。。
0605名無しさん@お腹いっぱい。2009/08/12(水) 18:24:20
やったことないけど

if !has("gui_running")
autocmd FileType python set omnifunc=pythoncomplete#Complete
endif
0606名無しさん@お腹いっぱい。2009/08/13(木) 09:49:41
編集中のファイルのタイプ(shとかperlとか)がどう認識されてるかを表示するコマンドって何でしたっけ?
0607名無しさん@お腹いっぱい。2009/08/13(木) 10:05:50
:echo &filetype
ですた
0608名無しさん@お腹いっぱい。2009/08/13(木) 10:06:11
>>606
set ft?
0609名無しさん@お腹いっぱい。2009/08/13(木) 10:13:59
>>608
おお。こっちのほうがタイプ量が少なくていいですね。どうも。
0610名無しさん@お腹いっぱい。2009/08/13(木) 17:40:49
>>603
通常インストールだと
set omnifunc=pythoncomplete#Complete
はftplugin/python.vimに記述してないか?
記述してある場合はvimrcにautocmdで書き込んでも書かなくても同じ

.vim/ftplugin/python.vim
が後に読み込まれるので、.vimは各自で異なるが、そこで
if !has("gui_running")
setlocal omnifunc=
endif
でどうだろ
0611名無しさん@お腹いっぱい。2009/08/14(金) 11:25:00
>>585
詳しく教えてください お願いしますm(_)m
0612名無しさん@お腹いっぱい。2009/08/14(金) 11:36:05
>>611
ttp://yukihiro.nakadaira.googlepages.com/#vimdoc
06136032009/08/15(土) 22:45:38
>>610
ありがとうございます!! その方向からうまくいけそうです。
0614名無しさん@お腹いっぱい。2009/08/17(月) 22:32:23
vimを開いた状態で特定のvimrcを読み直すことできますか?
0615名無しさん@お腹いっぱい。2009/08/17(月) 22:41:33
sourceすればいいんじゃね?
0616名無しさん@お腹いっぱい。2009/08/17(月) 22:41:49
>>614
:help :source
0617名無しさん@お腹いっぱい。2009/08/18(火) 20:45:42
nowrapのときにカーソルを動かさないで横スクロールってできますか?
0618名無しさん@お腹いっぱい。2009/08/18(火) 21:31:21
>>617
無理。
強いて言えばzlとか。
0619名無しさん@お腹いっぱい。2009/08/18(火) 21:50:30
論理改行が好きならいっそwrapで使う

物理改行が好きなら桁数を決めて
gvimrcなりターミナルのサイズをカスタマイズしてそれを超えないように努める
君も80桁教に入信しようぜ
0620名無しさん@お腹いっぱい。2009/08/19(水) 01:22:08
>>618
>>619
どうもです
でかいCSVファイルとか見るときに使いたかったんでnowrapじゃないと辛いんですよね
まぁwとかでカーソル移動しちゃうのは諦めます
0621名無しさん@お腹いっぱい。2009/08/19(水) 20:30:58
vimでphp開発したいんですが、vim+phpのデバックの王道ってどのようなものがあるんですか?
0622名無しさん@お腹いっぱい。2009/08/20(木) 13:11:39
xdebugが最適

NERD_tree.vim
taglist.vim
showmarks.vim
savevers.vim

DIFF と EXTAG

http://d.hatena.ne.jp/i_ogi/20070321/1174495931

こんなところかなぁ。

0623名無しさん@お腹いっぱい。2009/08/20(木) 15:51:26
あと マウススクロールに
mapしたいんだけど UPとDOWNって割り当てできないだっけ
C+Kでも値でなくてさぁ・・・
06246122009/08/20(木) 16:58:55
>>622
有難う御座います
さっそくググってみます
0625名無しさん@お腹いっぱい。2009/08/20(木) 17:10:57
set guitablabel=%<%t\ %m 
これってけっこういいね。
0626名無しさん@お腹いっぱい。2009/08/20(木) 21:22:41
>>621
http://d.hatena.ne.jp/koziy/20080102/1199248974
on linuxだけど、macでも出来た。
winは知らん。
0627名無しさん@お腹いっぱい。2009/08/22(土) 13:17:14
入力補完で.を含むキーワードも補完候補にさせるにはどうすればよいの?
0628名無しさん@お腹いっぱい。2009/08/22(土) 13:21:36
ホームページを書くことになった。
遅ればせながら、project.vim を使ってみた。便利だ。


副産物として、vimwiki の存在を知った。
ちょっと、遅かった。_| ̄|○
0629名無しさん@お腹いっぱい。2009/08/22(土) 13:25:47
>>627
set isk=@,48-57,_,.

see
:h 'isk'
0630名無しさん@お腹いっぱい。2009/08/22(土) 23:16:33
あれ、cmigemo って kensaku と入力しても出力パターンに「けんさく」が出なくて
kennsaku で出るのか。
migemo とはちゃうのね。

スレ違イかな
0631名無しさん@お腹いっぱい。2009/08/27(木) 18:22:07
ステータスラインの色を変更したい
挿入モード時
解除時
ビジュアルモード時
色を変えたいです。
0632名無しさん@お腹いっぱい。2009/08/27(木) 20:11:36
>>631
autocmd InsetEnter * highlight StatusLine guifg=red
autocmd InsetLeave * highlight StatusLine guifg=white
とか試してみ
けれど
highlight StatueLineNCとの兼ね合いでうまくいかんかもしらん
0633名無しさん@お腹いっぱい。2009/08/28(金) 00:00:53
>>632
ありがとうございます!!!
0634名無しさん@お腹いっぱい。2009/08/28(金) 03:14:06
ファイルを開いてる時に現在どのsyntaxファイルを使用しているのか調べる方法はありませんか?
0635名無しさん@お腹いっぱい。2009/08/28(金) 03:48:53
:scriptnames
かな
0636名無しさん@お腹いっぱい。2009/08/28(金) 04:46:06
>>635
ありがとうございました。

色付けはfiletype.vimとsyntax/*.vimが紐づいてたんですね。
0637名無しさん@お腹いっぱい。2009/08/28(金) 20:19:52
vim人口ふえないかな
0638名無しさん@お腹いっぱい。2009/08/28(金) 23:25:25
それは非windows人口の増加にかかっているのかな
0639名無しさん@お腹いっぱい。2009/08/29(土) 00:54:33
>>634
> ファイルを開いてる時に現在どのsyntaxファイルを使用しているのか調べる方法はありませんか?

:set syntax? でオプション'syntax'の中身を見れば現在のsyntax名が分かる。
値が cpp なら syntax/cpp.vim が読み込まれてる。

syntaxがバッファ毎に異なれば'syntax'オプションの中身も変わる。
0640名無しさん@お腹いっぱい。2009/08/29(土) 19:58:19
WEB+DB PRESS今月号(Vol.52)にvimの特集があった。
ttp://gihyo.jp/magazine/wdpress/archive/2009/vol52
0641名無しさん@そうだ選挙に行こう2009/08/30(日) 04:21:44
vim自慢しようぜ
おいらのは タブ保存復帰 firefoxみたく windowサイズ保存
オムニ保管 バックアップ連番管理。
0642名無しさん@そうだ選挙に行こう2009/08/30(日) 10:07:29
gVim を起動させた時,ウィンドウ位置とサイズを指定させることはできますか?
0643名無しさん@そうだ選挙に行こう2009/08/30(日) 10:59:18
X(1)のgeometryで指定しては。
0644名無しさん@そうだ選挙に行こう2009/08/30(日) 11:33:21
geometry で希望が家内ました! 643 さんありがとうございます! 多謝!!
0645名無しさん@お腹いっぱい。2009/09/03(木) 17:48:21
すいません<body>や</body>
これを一発で削除するやりかたをおしえてください
dta とか なんかそういうので!!
0646名無しさん@お腹いっぱい。2009/09/03(木) 21:18:11
>>645
<> は残るけど

di>
0647名無しさん@お腹いっぱい。2009/09/03(木) 22:13:55
>>645
da<
でどう?
0648名無しさん@お腹いっぱい。2009/09/03(木) 23:32:43
>>645
surround.vim 入れてたら、
ttp://www.vim.org/scripts/script.php?script_id=1697

dst で今中にいるタグを削除できる。
<body>
*1
<div id="wrapper">
*2
</div>
</body>

カーソル位置、*1 なら <body>と</body>
*2 なら <div id="wrapper">と</div> が消える
0649名無しさん@お腹いっぱい。2009/09/04(金) 09:59:14
みんなサンクス。
書き込みに参考してやってみる!
0650名無しさん@お腹いっぱい。2009/09/04(金) 10:03:11
da<が結構よかったです
ditなんて便利ですね<font>@@@</font>
@@@が消えるから
0651名無しさん@お腹いっぱい。2009/09/04(金) 12:12:15
ルーラーか、ファイル開いた直後のコマンド行に、ファイルのエンコードを表示ってできる?
0652名無しさん@お腹いっぱい。2009/09/04(金) 12:39:46
statuslineやrulerformatに%{&fenc}を忍ばせるとか
0653名無しさん@お腹いっぱい。2009/09/04(金) 13:22:31
>>652
やってみるわ。
0654名無しさん@お腹いっぱい。2009/09/04(金) 14:09:00
できた。色々やってみて

set statusline=%t\ %m%r%h%w[%Y][%{&fenc}][%{&ff}]%=%c,%l%11p%%

こんな感じでおちついた。
0655名無しさん@お腹いっぱい。2009/09/05(土) 01:11:05
どうもmksでタブ保存するけど
バッファが変更できないってエラーでる。。詳細あとで書くので、
わかる人がいたら教えてください。
0656名無しさん@お腹いっぱい。2009/09/05(土) 02:27:30
ちょっとお知恵を拝借したいです。
以下、空白文字の代わりにアンダースコアを書きます。

class Test(object):
__def method(self, argument):←ここでEnterを押して
____この行に空白文字を4つ、自動的に挿入できるようにするにはどうすればいいでしょうか。

vimrcは今こうなっています。

"---------------------
autocmd FileType python setl autoindent
autocmd FileType python setl tabstop=2 expandtab
autocmd FileType python setl smartindent indentexpr=2 cinwords=if,elif,else,for,while,try,except,finally,def,class
"---------------------

現在の行のインデントに対して、smartindentがインデントを追加するようにしたいのだけど、うまくいかない。
ご存知の方、教えてください。
06576552009/09/05(土) 03:04:13
vim72-kaoriya-w32j\.vim_last_session の処理中にエラーが検出され
ました:

行 125:

E163: 編集するファイルは1つしかありません

行 244:

E163: 編集するファイルは1つしかありません

".htpasswd"

".htpasswd" 1L, 21C

".htaccess"

".htaccess" 5L, 167C

".htaccess"

".htaccess" 5L, 167C
こういうエラーです。
0658名無しさん@お腹いっぱい。2009/09/05(土) 03:45:48
>>656
本家vim7.0

python使ったことないけど、デフォでそのようにインデントされたよ
indentexpr=GetPythonIndent(v:lnum)
となっていたので、これが大事なのかもね。
06596562009/09/05(土) 05:50:42
>>658
ああ、ありがとう。

centOSで一からvimrcを書いてるので、あたふたしてます。

GetPythonIndent()のことは調べてみてもよく分からなかったけれど、
いろいろ調べているうちに自己解決しました。
いいきっかけになりました。

indentexprなんて使わずに、
shiftwidth=2を追加するだけでよかったなんて…。
お騒がせしました〜。
0660名無しさん@お腹いっぱい。2009/09/08(火) 02:12:56
妖怪人間vim
0661名無しさん@お腹いっぱい。2009/09/08(火) 02:31:39
なにげに為になった。
横からトン
0662名無しさん@お腹いっぱい。2009/09/08(火) 08:15:25
早く emacs に成りたーい

# こんだけ重くなりゃもうすぐだよ。
0663名無しさん@お腹いっぱい。2009/09/08(火) 17:15:45
CentOS5.3のvimをデフォルト状態で使うと、
入力モード、コマンドモードに関わらず、括弧上にカーソルが移動する「だけ」で、
対応する括弧上でブロックカーソルが表示されるようになってるけど、
これってどのオプションが効いてるの?
0664名無しさん@お腹いっぱい。2009/09/08(火) 17:33:54
matchpairsと色設定のMatchParen
0665名無しさん@お腹いっぱい。2009/09/08(火) 17:45:19
プラグインによるものだったようで、
:he matchparen
をみてみてください
0666名無しさん@お腹いっぱい。2009/09/08(火) 18:33:00
>>665
:NoMatchParen でキャンセルできた。
あんがと。
0667名無しさん@お腹いっぱい。2009/09/08(火) 18:39:51
~/.vimrc に

let loaded_matchparen = 1

って入れてもできた。
0668名無しさん@お腹いっぱい。2009/09/11(金) 10:08:48
ちょっとした問題を解決したんで備忘録に

vimで保存したファイルの内容の各文字毎にnull文字が挿入される
hdコマンドで見るとこんな感じ
00000000 66 00 75 00 67 00 61 00 0a 00 |f.u.g.a...|
原因はfileencoding=ucs-2leであったこと
適当に :set fileencoding=euc-jp で解決

ucs-2leでエンコードされたファイルをPerlに食わせたら
変な怒り方したんで調べた

ファイルエンコーディングの話だからVim以外でも起こりうる問題だけど…
0669名無しさん@お腹いっぱい。2009/09/11(金) 10:19:45
null文字が挿入されているように思えるのは、あなたがucs-2leについて知らないからです。 それは決してnull文字ではありません。
■ このスレッドは過去ログ倉庫に格納されています