1read 100read
2012年07月ソフトウェア274: vim Part4 (650) TOP カテ一覧 スレ一覧 2ch元 削除依頼
fxoon (371)
【多機能】 テキストエディタ Apsaly 【でも軽快】 (274)
【初心者歓迎】FFFTPについてのスレ2発目 (664)
【動画編集】VirtualDub バーチャルダボ【質問OK】 (914)
【ニコニコ】BOON SUTAZIO Part19【ブラウザ】 (376)
気軽に「こんなソフトありませんか?」Part.151 (716)

vim Part4


1 :2011/08/24 〜 最終レス :2012/10/23
主にwindows環境でのvimについてのスレッドです。
本家 http://www.vim.org/
windows版バイナリ配布 http://www.kaoriya.net/
wiki http://vimwiki.net/
ctags 日本語対応版 http://hp.vector.co.jp/authors/VA025040/
名無しのVIM使い(スクリプト) http://nanasi.jp
spanish passion Linux(全オプション) http://www15.ocn.ne.jp/~tusr/
ずんWiki http://www.kawaz.jp/pukiwiki/?vim
日本語ヘルプ http://sites.google.com/site/vimdocja/
UNIX板のvimスレ http://hibari.2ch.net/test/read.cgi/unix/1308288838/

2 :
>>1
edかと思ったよ
前スレ
vim Part3
http://hibari.2ch.net/test/read.cgi/software/1224769266/

3 :
何をどうedだと思ったんだ…?
>>1


4 :
encofingオプションがcp932でないと:echo system('dir')の出力が下のような表示になってしまうのですが、
encodingオプションを変更せずにシェルから受け取った文字列をきちんと表示するにはどうしたらいいのでしょうか?
[:echo system('dir')の結果]
E:\prj\script <82> f<83>B<83><8c><83>N<83>g<83><8a>
2011/08/19 17:34 <DIR> .
2011/08/19 17:34 <DIR> ..
2009/02/24 00:38 6,387 0223.wsf
2009/02/26 19:45 6 16le.txt
[コマンドライン上での出力]
E:\prj\script のディレクトリ
2011/08/19 17:34 <DIR> .
2011/08/19 17:34 <DIR> ..
2009/02/24 00:38 6,387 0223.wsf
2009/02/26 19:45 6 16le.txt
gvim 7.3.260 kaoriya版 XpSp3 現在のencodingオプションはutf-8です。
よろしくお願いします。

5 :
>>4
:echo iconv(system('dir'), 'default', &encoding)
:echo system('dir | nkf -w')

6 :
>>5
上手くゆきました。ありがとうございます。

7 :
あら?24日にはもう立ってたのかー。乙です。

8 :
KoRoNは香り屋VimでWindows2000と初期XPを見捨てた
貧乏人はRってことだ
絶対に赦さない
絶対ニダ

9 :
>>8
jvim使いましょう

10 :
Vim に URL の文字列などをマウスでコピペしたりすると、
キーワードを補完するプルダウンメニューみたいなのがちらちら表示されるんですが
(コレは何て呼ぶんでしょうか?) 、
この機能は使わないので、抑制する .vimrc の設定方法があれば教えてください。
環境は UNIX (FreeBSD, Linux) の Vim で、 PuTTY など端末の中で動かしています。

11 :
>>10
コントロールコードが混ざってるわけじゃなくて?
再現できる何かを用意して欲しい

12 :
>>10
:!a
で貼り付けして
escで抜けるとかはだめ?

13 :
gvimの起動時からフォントを変更したいんだけどどう設定すればいいの?
いま環境がないから確認できないけど、GUIのメニューからTakaoゴシックを指定すると正しく変更されるから
その時に表示されるとおり
.vimrcにset guifont=なにがし のような記述をすると
英字フォントまでいわゆる全角になってしまう

14 :
:help guifontwide

15 :
>>14
thx
だけどguifontwideだったかを単にguifontの代わりに設定しても同じ結果だったような
まあ明日試してみる

16 :
カレントバッファのウインドウが分割されているかどうか調べる方法があったら教えてください。
やりたい事はウインドウが分割されていたら「wincmd c」をされていなければ「bw」コマンドを実行したいです。
よろしくお願いします。
kaoriya版 gvim 7.3.260

17 :
try
wincmd c
catch /E444/
bw
endtry
ウインドウ数を調べる方法は分かりませんでしたが、↑で望みの動作が出来ました。
お騒がせしました。

18 :
Windows7 x64に切り替え、Kaoriya版gvimを使っているのですが、困っていることがあります。
diff機能やChaliceなどで一時ファイルを作成できないようなのです。
 diff … E810 E97
 Chalice … E484
のエラーが出てしまいます… (gvim7.3, 7.2のどちらでもダメでした)
テンポラリフォルダの書き込み権限のせいかと思って、
アクセス権をフルコントロールにしても改善されませんでした。
私以外にも同じような現象に出会った方は居ないでしょうか?
どうにかして直したいのですが、ググっても見当たらなく、困っています…
解決策をご存じの方が居れば教えて下さい。

19 :
更に調べたところ自己解決しました…
viのオプション'shell'に設定されたシェルのせいでした。
ググると出てくる日本語版tcshを使うとだめでした。
cygwinに入ってるtcshを使えば問題なく動きました。
お騒がせしました。

20 :
Vimはファイルの種類に応じてインデントや色分けなど
してくれますが、この種類のファイルにはこのプラグインを適用
する、という設定はどこに書いてあるんでしょうか?
例えば拡張子がrbならruby.vimを適用とか。
自作の言語用ソースに適用するプラグインを書きたいのです。

21 :
ftplugin

22 :
>>20
:help filetype で大体わかると思うけど、filetype on
すると、ランタイムパスのfiletype.vimが読み込まれる。
この中でほとんど設定されるけど、最後に
runtime! ftdetect/*.vim
ってのがある。つまり、自分の設定フォルダにftdetectフォルダを
作って、その中に、
au BufNewFile,BufRead *.rb setf ruby
とか書いたruby.vim置いとけば良い。
そんなのは面倒ってんなら、.vimrcに書いとけばおk。
で、ftpluginもindentもsyntaxもau Filetype のフックがあって、
setf(iletype)でFileTypeイベントが発生したときにそれぞれのフォルダ下の
ファイルタイプ.vimをruntime! ファイルタイプ.vim する。

23 :
>>21-22
ありがとうございます。
むむ…なかなか複雑な仕組みですね。
じっくり追ってみます。

24 :
>>20は、自作のsyntaxを作る予定なの?

25 :
そう書いてるけど、何で確認したんだ。
実際作るときには文法が似てる言語のを流用すると楽だろうけれど。

26 :
昨日から突然、quickrunを実行するとVimが落ちるようになってしまって困ってる。
設定ファイルを初期化したり違うバージョン使ってみたりシステム復元してみても何をやっても直らない。
考えられる原因は、PHP5.3.8 Windowsインストーラー版をインストールしたことしか思い浮かばない。
アンインストールしてシステム復元してもダメだった。どうすれば直るんだろう?

27 :
>>26
何をどう実行しようとしたとか、プラグイン、Vim自体のバージョンとか環境とか詳しく書かないと誰もわからんと思うよ。

28 :
ころんとかならなんかわかるんでないの
何がどうあれ、アプリが落ちるってのは広義のバグだし、パッチの価値あり

29 :
Vimは香り屋さんの最新版(7.3)Windows 32bit版で、OSはWindows Vistaです。
VimでもgVimでも落ちました。
ファイルタイプ問わず、 \r や :QuickRun などでquickrunを実行すると落ちます。
編集中のファイルでも確認ダイアログなどは出ずに強制終了します。
quickrun.vimはthincaさんが作った方を使っています。
同名別物のujihisaさんが作った方も試してみたら同じように落ちました。
あらためてVimとquickrunの最新版のみを入れた状態にして試してみても変わりませんでした。
他に何か書いた方がいいこと、試したらいいことあれば教えて下さい。

30 :
>>29
Thanks!
あとでvim-jpに報告しときます。

31 :
>>29
quickrun以外のプラグインと設定全部消しても落ちる?

32 :
>>30
だれ?

33 :
あープラグインはquickrunだけって書いてあったね。見落としてた。
設定も一切なし?

34 :
>>29
手元でPerlのHello Worldで試した限り、落ちることなく動作。
OSはWindows Server 2008
まっつんさんからリクエストが来てるので、お時間がある時に教えてください。
https://github.com/vim-jp/issues/issues/66

35 :
以前は問題なかったっぽいところから、別の要因だろうとおもうんだけどなぁ。
てか、酉ないけど本物なの

36 :
>>36
たぶんほんもの。ブラウザとか携帯を使って書いてる&トリップは古いPCの中なので。
なんかMacVimではvimprocの更新に絡んだ問題があるみたい。

37 :
http://dl.dropbox.com/u/1736409/howm/2010/06/2010-06-07-182757.html
howm2html.vimを使っているのですが :Howm2html % をしても
「E65 不正な後方参照です」というエラーが出てファイルに関わらずデフォルトの
ファイル名がhowm2html.htmlのものしか作ることができません。
どうにかこのエラーを回避できないでしょうか

38 :
>>34
お返事ありがとうございます。
>:QuickRun -runner xxx
>でshell,vimproc,remote,system,pythonを試してどれで落ちるかやって欲しい。
全Rちました。
思い出したんですが、たぶん原因はPythonのような気がします。
何かいじったけど何をしたか覚えてないんでちょっと調べてみます。
あと、Vimのコマンドラインでこれ打ったら落ちました。
:python print 1
Rubyでは落ちません。
:ruby puts 1
PythonはWindowsのコマンドプロンプトでは正常に動きます。環境変数も正しく通ってました。
C:\>python -V
Python 2.7.1

39 :
すみません、追記します。
.vimrcを取り除いてみたところエラーは出なくなりました。
ところが目的の、
"-% かファイル名を指定した場合は、拡張子をhtmlに変更したファイル名で出力されます。
この動作にならず、毎回"howm2html.html"ファイルしか作れません。
どなたかわかる方がいましたらよろしくお願いします。

40 :
>>38
私の環境(XP 32bit)では、
gvim.exe -u %VIM%/vimrc
vim73-kaoriya-win32-20111002(vim73.329 if_pyton3.2 + if_python2.7)
:python3 print(1) としたとき
python2.6がインストールかつ C:/Python26にパスが通ってるとき、SEGVる。
C:/Python26/Libをリネームすると、この状態は回避される。
>>38 と違って、python2.7で :python print(1) としたとき
私の環境では正常に動作する。
尚、vim7.3.333 + kaoriya patch + if_python3.1 + if_python2.6 の環境では
上のような状態にはならず正常に働く。

41 :
>>40
つまり…
* Python2と3が両方インストールされている状況で、
* かつPATHが両方に設定されている時、
* PATH上の優先順位が低いほうを利用しようとするとコケる
ということかしら?
32bitであるとか、どちらの優先順位が低いかとかいう
その他の条件はあるかもだけど。

42 :
>>41
とりあえず、pythonのインストール先とdellのパスの優先順位は関係ないみたい。
私の環境で、PYTHONPATHが C:\Python26\Lib\site-packages;C:\Python26\Scriptsと
なっていたので、vimに python32.dll が読み込まれるより前に
:let $PYTHONPATH = '' とするか、きちんと、%PYTHONPATH% 設定すると
>>40 の問題は解決した。
vim-quickrun(thinca版 efcbb18) の結果は以下の通り。
gvim73-kaoriya-win32-20111002(vim73.329 if_pyton3.2 + if_python2.7)
○ :QuickRun -runner system
× :QuickRun -runner shell
○ :QuickRun -runner vimproc
× :QuickRun -runner remote
× :QuickRun -runner python
gvim7.3.333 + kaoriya patch + if_python3.1 + if_python2.6
+ yukihironakadaira-vim-cmdsrv-nox
http://code.google.com/r/yukihironakadaira-vim-cmdsrv-nox/
○ :QuickRun -runner system
× :QuickRun -runner shell
○ :QuickRun -runner vimproc
○ :QuickRun -runner remote
× :QuickRun -runner python

43 :
質問です。
windowsショートカットファイルの中身をvimで直接見るにはどのようにすればよいでしょうか。
中に書いてあるパスをguiの操作なしにvim単体で見たり、切り貼りするのが目的です。

44 :
neobundleが空白のパスを使えない問題を作者に報告したいんだけど、Twitter, Github, Bloggerのコメント欄以外で報告できる場所ないです?
上の3つはアカウント持ってないんですよね

45 :
メール

46 :
テキスト編集中に、画面内の少し離れた行の
特定キーワードから行頭または行末まで
ヤンクしたいってことが割とあるのだけど
具体的にどんな操作でできるかな。
できればカレント行からカーソルを動かさず
EXコマンドでやりたい。
行番号、キーワード、コピー方向の指定
みたいな感じで指定するイメージ。

47 :
すぐ戻れるからとその辺を追及してこなかったなぁ。
なんで移動したくないの?と方向をそらすのはだめかな

48 :
>>47
ヤンクしたあと、カレント行に戻るのって面倒じゃない?
あれ、どこ編集してたっけってなる。

49 :
戻るのは``するだけなんじゃ…
あとexコマンドって行指向だから文字単位でヤンクってできるのかな?と

50 :
何がしたいかいまいち分からんけど
移動前にmaとかmbとかマークしといて
'aとか`aとか'bとか`bとかやって戻ればええやん
HとかMとかLとかでも大まかに移動できるし5Hとか5Lとかでもいいし
ざくっと動いてwとかfとかで微調整

51 :
>>46
exコマンドで
:行番号,行番号y

52 :
んー、わかりにくかったかな。
要はちょっと似た行の一部を持ってきて再利用したい。
1 puts("paper=#{PAPER}, scisors=#{SCISORS}, stone=#{STONES} ?")


20 (カレント行)
今カーソルが行20にあって、ここに行番号1の前半部分
puts("paper=#{PAPER};
ここだけ持ってきて、続きで別の単語を打ち込みたい。
しかし行番号1全体をヤンクし、カレント行にペーストし、scの前まで
カーソルを移動して行末まで削除、というのは意外に面倒。
それなら、「行番号1の sc という単語から左側をヤンクして
カレント行に貼り付ける機能」があれば、あとはAコマンド打って
タイプを続けるだけだから楽ちん…ではないかと。

53 :
> 行番号1全体をヤンクし、カレント行にペーストし
ここってなんか楽な方法があったような気がするけど
> scの前までカーソルを移動して行末まで削除
これはWCとかf,wCじゃだめですかね

54 :
ノーマルモードでの ctrl-o と ctrl-i を覚えれば >>48 みたいなことは言わなくなると思う。

55 :
>>52
俺は便利だと思わんが、こんなんを vimrc に書いておけばいいんじゃないか
function! s:benri(lineno, pat)
let line = getline(a:lineno)
let pos = match(line, a:pat)
if pos != -1
call setline('.', getline('.') . line[0 : pos-1])
endif
endfunction
command! -range -nargs=* Benri call s:benri(<line1>, <q-args>)

56 :
>>52
ggyf,<C-o>p

57 :
>>52
> 今カーソルが行20にあって、ここに行番号1の前半部分
> puts("paper=#{PAPER};
> ここだけ持ってきて、続きで別の単語を打ち込みたい。
1GY``pfスペースD
大した手間ではないと思うが…

58 :
>>52
:1t.WC
あとはお好きに

59 :
>>58
わあああすっきりした!横だがありがとう!

60 :
間違えた
>>52
:1t.<CR>WC

61 :
いままで知らなかったんだけど、Windows版でも .vimrc .gvimrc で読み込まれるのね。
Linuxと同期するときわざわざ _vimrc _gvimrc にリネームしてて面倒だった。
:version に書いてないのは何故なの?

62 :
>>61
:help $MYVIMRC

63 :
>>60
t.の意味は?
どうやってヘルプ引けばいい?

64 :
>>63
:help :t

65 :
|hoge<<aaa>>
上の文をconcealを使ってhogeだけの表示にしたいんだけど、さっぱりうまくいかない。
できる人いたら頼む

66 :
>>65
よくわからないながらもやってみた
set concealcursol=nc
set conceallevel=2
syn match tag "|\w\+<<.\{-}>>" contains=tagEnd,tagStart
syn match tagStart contained "|" conceal
syn match tagEnd contained "<<.\{-}>>" conceal
どうかな

67 :
>>66
おお、動いた!
これで画面が好みになって嬉しい。ありがとう。

68 :
ハイライトを作りたいんですが、正しい書き方がわかりません。
個々では上手くいくんですが、以下のようにすると一番下のmatchのみが有効になるようです。
全て有効になるようにするにはどう書けばいいんでしょうか?
hi MyColor guifg=black guibg=pink
hi MyColor2 guifg=black guibg=skyblue
hi MyColor3 guifg=black guibg=yellow
match MyColor /名前/
match MyColor2 /ほげ\|ふが\|ぴよ/
match MyColor3 /キーワード[ABCDEFG]/

69 :
>>68
:help matchadd()

70 :
matchじゃなくてsyn matchだよね?

71 :
Thx oppara.

72 :
Vim script専用板を立てました。
Vim script 1
http://hibari.2ch.net/test/read.cgi/tech/1319395708/

73 :
script抜きのvimスレってなんなんだお

74 :
いろいろあると思う。

75 :
windows版のvimを落としてみたのですが、
ちょっとありえないくらい遅いです
バーチャルマシン上のlinuxのvimの方がはるかに速いです
なんでこんなに遅いんでしょうか?

76 :
GVim?

77 :
普通のvimの方でした
gvimを使ってみると速くなりました
ありがとうございます

78 :
バーチャルマシンだと遅くなるって数年前の発想だろ

79 :
windowsのdosプロンプトは遅いよね
cygwinのrxvtかckとかいれるといいんじゃないかしらん

80 :
起動時にいろいろと組み込んでるから

81 :
>>78
実際遅いよ

82 :
遅いけど、そこまで変わらない印象だなぁ。
ディスクIOに関しては逆に速かったりするけれど。

83 :
俺はVMware Workstationを3の頃から使っているが、ディスクIOが実機を超えた事などただの一度もない
どんだけ遅いかっていうと、32GB積んだ1100T BEのWin7 Proホストから、
Gentooゲストでpvscsi、vmxnet3をそれぞれカーネル組込みして、4GB、2コア割り当てした状態でさえ
4GB積んだD525にカーネルソースのtar玉展開で余裕で負けるレベル
それもD525の方はdata=journalでマウントしたext4で、VMwareの方はwithout journalなジャーナル無しのext4なのにもかかわらず負ける
CPUに仮想化支援がついて、CPU自体の処理能力は実機とそう変わらなくなり
emerge gccなどすると4倍近く、VMwareの方がD525実機よりも速く終わるが、IOだけは相変わらず遅い
俺がVMwareを利用するのは、ひとえにCygwinより早く同様の処理ができるから
仮想化PCのディスクIOが実機を超えるなどと息を吐くように嘘をつくな、このしったか野郎が!

84 :
>>83
落ち着け
そして激しくスレチだ

85 :
>>83
Keep it simple, stupid.

86 :
>>83
普通のパソコンに乗ってる仮想マシンで試してみたよ。
仮想ディスクが置かれてるのは普通のSATAのHDD(7200回転)
ホスト
 シーケンシャルリード 78.83MB/s
ゲスト
# hdparm -tT /dev/hda
/dev/hda:
Timing cached reads: 22364 MB in 1.99 seconds = 11212.27 MB/sec
Timing buffered disk reads: 1084 MB in 3.00 seconds = 360.83 MB/sec

87 :
この差がどこにあるかは、いくつかの理由はすぐに思い浮かぶだろうけど、
ゲストに閉じた世界ではsyncを含めたIOが高速になるのはわかるよな。
ゲストは別にRAIDとか組んでない。
あと、ホストとゲストで異なる計測方法であることに文句を付けたいかもしれないので、
ホストゲストともにWindows、計測ソフトはCrystalDiskMarkであわせた。
ホストは先の結果。
ゲストはシーケンシャルリード 551MB/s

88 :
gvimで色設定を変えても、次回起動時には元に戻っています
保存しておくにはどうしたらいいでのでしょうか?

89 :
設定ファイルに記述する

90 :
ゆないとからーすきーむ!!

91 :
どう考えてもno thank youです。

92 :
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |
|  ,,ノ(、_, )ヽ、,,   |
|   ,;‐=‐ヽ   .:::::|
\  `ニニ´  .:::/      no thank you
/`ー‐--‐‐―´´\
       .n:n    nn
      nf|||    | | |^!n
      f|.| | ∩  ∩|..| |.|
      |: ::  ! }  {! ::: :|
      ヽ  ,イ   ヽ  :イ

93 :
>>88
既存の設定ファイルにデフォルトの指定が残っている場合がある。

94 :
しかしWindows7で描画がものすごく重い。
何とかならないものか。

95 :
vim-metarwのwin32版をbundleしても、:Edit等のコマンドが何も呼び出せないんだが、どういうのが原因だろうか。
KaroiyaVimは最新にしてあるんだが……

96 :
>>95
https://github.com/mattn/vim-metarw.git
のwin32 branchを入れて、helpに書いてあるように
:call metarw#define_wrapper_commands()

97 :
>>96
These wrapper commands are not defined automatically.
If you want them, you have to call
|metarw#define_wrapper_commands()|.
この部分か、なるほど!
まだまだhelpを見るのが身についていないようだ……。
ひとまず目的のコマンドは使えるようになったみたい。ありがとう。


98 :
UniteとかQFixHowmとか、ファイルを開く場面で
foo.txt
bar.txt
hoge.txt
と並んでいるときに、Unite呼ぶ=>foo開く=>Unite呼びなおす=>hoge開くっていうのなんとか省略できないかな?

99 :
>>98
:help unite-options-no-quit

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
YahooメッセンジャーPart7 (928)
【サイト取り込み】WeBoX part6【ダウンロード】 (454)
ここがヘンだよGoogleツールバー その8 (749)
思ったんだけどJaneStyleってスパイウェアじゃね? (587)
【サイト取り込み】WeBoX part6【ダウンロード】 (454)
【COREL】 WinDVD その13 【InterVideo】 (901)
--log9.info------------------
新入社員の挨拶 (509)
【雑学】★雑学を披露し自慢しあうスレ★【自慢】 (566)
別・Qさま風の問題を出し合うスレ (758)
チゴイネルワイゼンって・・・ (297)
【突攻可】コミュケーション苦手な出題者用20質 part12 (451)
わかんないんです><【その10なんですっ><】 (293)
史上最大第1回アメリカ横断ウルトラクイズ (264)
☆☆☆ 小学生のクイズ ☆☆☆ (540)
適当になぞなぞを作るスレッド (272)
ドラえもんの雑学 (720)
★珍しい苗字 第2弾★ (833)
【IQテスト?】就活で企業から聞かれた問題 (707)
理不尽だと思ったクイズの答え (600)
おジャ魔女どれみクイズスレッド (655)
誰かこの疑問といてください2 (618)
元素記号クイズでもだすべ〜。 (204)
--log55.com------------------
Noita Part4
【EU4】 Europa Universalis IV Part90
【AoE2DE】 Age of Empires II DE Part4
【FTL】 Faster Than Light 40船目
Steamの面白くて安いゲーム教えて Part241
Rimworld 145日目
Civilization6 (Civ6) Vol.97
【LoL】League of Legends 1552LP【ipあり】