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

Vim Part14

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2007/03/19(月) 20:09:27
立ててみた。

http://www.vim.org/

前スレ
http://pc10.2ch.net/test/read.cgi/unix/1151423973/

0378名無しさん@お腹いっぱい。2007/07/27(金) 15:50:13
>>377
できましたありがとうございました。
0379名無しさん@お腹いっぱい。2007/07/28(土) 11:16:53
NERD_tree.vimのようなエクスプローラを表示するプラグインで、
表示するドライブを切り替えるにはどのようにすればいいか分かる方いませんか?
WindowsでVim7をC:ドライブにインストールしていて、D:ドライブを見たい時に困っています
03803792007/07/29(日) 10:07:37
とりあえず自己解決
結局ドライブの切り替えは標準の機能でできそうにないので
D:ドライブを引数にして開くコマンドを別に割り当てて対応しました
0381名無しさん@お腹いっぱい。2007/07/31(火) 07:17:33
:sp でウインドウ分割(2分割)しているときに、
現在のカーソルがあるウインドウじゃないほうを閉じたいス。
教えてス。
0382名無しさん@お腹いっぱい。2007/07/31(火) 07:27:14
>>381
gvim(windows)ではCtrl+W に o で閉じられますた。
他の環境は知らないけど。
0383名無しさん@お腹いっぱい。2007/07/31(火) 12:45:41
slackware使いなのだが、最新版にしたら、vimのやつ勝手に
行末のCRLF を解釈するわ、tex だの html だのを解釈するわ
で、機能を切るのに大汗かいた。エディタなんて普段は何も
しないのがよい。デフォルトに余計な機能を設定してほしく
ないんだが。
0384名無しさん@お腹いっぱい。2007/07/31(火) 12:48:30
slackなのに細かいんだな
0385名無しさん@お腹いっぱい。2007/07/31(火) 13:15:26
> 行末のCRLF を解釈するわ、tex だの html だのを解釈するわ
それデフォルトじゃないから
0386名無しさん@お腹いっぱい。2007/07/31(火) 13:24:31
slackというより vim そのものが、7.1版になってスタートアップで
いろいろな機能をonにするように設定して配布しだしたんじゃないか
な。作者としてはせっかく苦労して作った機能だから試してもらいた
いんだろうけど、それを切る方法を知らない使用者にはたまったもの
ではない。
0387名無しさん@お腹いっぱい。2007/07/31(火) 13:30:15
>>385
そうだろう、半年まえまではこんなのデフォルトじゃなかった。
それが vim7.1になって、/usr/share/vim/vim71/filetype.vim
でファイルタイプ自動検出するのをデフォルトにしてやがる。
0388名無しさん@お腹いっぱい。2007/07/31(火) 13:42:45
improveしないviはただのviだ。
03893872007/07/31(火) 13:45:53
あ、上はちょっと誤解のある書き方かな。filetype 検出の
直接の元凶は vim7.1に標準添付されていた(と思われる)
/usr/share/vim/vimrc の中で、
"Enable file type detection.
filetype plugin indent on
としている件だ。
0390KoRoN@Vim%Chalice ◆8XALICEsdk 2007/07/31(火) 14:09:54
slackwareでの、vimのパッケージメンテナの趣味が変わったのでは?
素のvimは、ほんとにデフォルトだと何にもonになってませんよ。
0391名無しさん@お腹いっぱい。2007/07/31(火) 16:25:30
つーかrcファイルなんて気に食わなければ手で書き換えればいいじゃん
03923872007/07/31(火) 17:35:27
>>390
調べたらご推察どおりだった。以前は slackではシステムワイドで
vimrc を設定していなかったのに、slackware 12.0 になって
わざわざ /usr/share/vim/vim71/vimrc_example を
/usr/share/vim/vimrc にコピーしてくれていた。まさにしく
メインテナーのPat氏の趣味が変わったのだった。
>>391
わかってしまえばそのとおりなんだけど、知らなかったもんで
原因追求にてこずったんだ。straceでvimの発行するシステム
コールを追跡してやっと見つけた。
0393名無しさん@お腹いっぱい。2007/08/02(木) 09:58:32
環境は、
Vine Linux 4.1
VIM - Vi IMproved 6.4
で、SynapticパッケージマネージャでGVimをインストールした以外は
デフォルトのままです。

日本語入力したあと、Escキーでコマンドモードに戻るときに、
自動的に日本語入力(Anthy)をオフにしたいんですが、できますでしょうか。

WindowsのGvim(Kaoriya版)を使っていたときは、
Escキーを押したときにIMEをオフにしてくれていて便利だったので・・。

よろしくお願いします。
0394名無しさん@お腹いっぱい。2007/08/02(木) 14:49:13
vi協調モードを有効にする
0395名無しさん@お腹いっぱい。2007/08/02(木) 18:53:06
質問なのですが、
Vim7で、印刷時の行間を調節する方法はないですか?

WindowsのGUI版だと画面表示の行間の調整はあるみたいですが
印刷のときの設定は見つからなかったので…
0396名無しさん@お腹いっぱい。2007/08/02(木) 23:36:02
LustyExplorer.vimはWindowsで使えない?
なんかコマンド実行でエラー出ますけど
ぐぐると同じ現象が報告されてるので私だけでは無さそう
なんとかならないのか
0397名無しさん@お腹いっぱい。2007/08/02(木) 23:38:12
>>396
知るか
0398名無しさん@お腹いっぱい。2007/08/02(木) 23:47:00
MiniBufExplorerで満足している人間が大半ということかしら
そもそもWinユーザがいないのか
0399名無しさん@お腹いっぱい。2007/08/02(木) 23:47:18
汁か!
Sealか?
「死」要るか?
0400名無しさん@お腹いっぱい。2007/08/02(木) 23:51:11
はいはい わろすわろす
あなたはもういいよ
0401名無しさん@お腹いっぱい。2007/08/03(金) 10:40:36
>>394
Vine 4.1のデフォルトはscimだからダメみたいよ。
0402名無しさん@お腹いっぱい。2007/08/03(金) 17:37:02
>>396
それ、中身はまんまRubyスクリプトで、
使ってるライブラリがWindows対応してないから使えなさそ
04033812007/08/04(土) 00:15:12
>>382
出来ました。ありがと。
0404名無しさん@お腹いっぱい。2007/08/04(土) 00:31:56
C-w vでウィンドウを縦分割したとき、
カレントウィンドウの横幅を変えたいんだけど
どうすればいいでしょうか
0405名無しさん@お腹いっぱい。2007/08/04(土) 00:41:59
C-w >かC-w <
0406名無しさん@お腹いっぱい。2007/08/04(土) 00:57:13
>>405
ありがとう!
0407名無しさん@お腹いっぱい。2007/08/04(土) 10:07:42
>>405
繰り返し行いたい場合はどうしたらいいですか?
何回もC-w > をやるんですかね。
0408KoRoN@Vim%Chalice ◆8XALICEsdk 2007/08/04(土) 10:19:55
>>407
Vimの基本で、繰り返したいコマンドの前に繰り返しの回数を入力してください。
19 <CTRL-w> >
0409名無しさん@お腹いっぱい。2007/08/04(土) 21:17:17
>>408
どうもありがとうございます。
0410名無しさん@お腹いっぱい。2007/08/05(日) 22:15:33
マウスのドラッグ&ドロップで選択箇所のテキストを移動、ってできませんかね?
0411名無しさん@お腹いっぱい。2007/08/05(日) 23:06:50
意味がわからないんだが
具体的に説明してくれ
0412名無しさん@お腹いっぱい。2007/08/05(日) 23:11:49
>>410以上にうまく説明できないが
とりあえずそれはできない
0413名無しさん@お腹いっぱい。2007/08/05(日) 23:15:07
410じゃないが

テキストをドラッグして範囲選択
→選択したテキストをドラッグ(カット)
→ドロップ(ペースト)

ってことだろう。
0414名無しさん@お腹いっぱい。2007/08/05(日) 23:28:06
そんな作業でホームポジションから手を離したいと思う人もvimを使うんだなぁ
04154102007/08/06(月) 00:50:52
自分はまだVimに興味があるだけで、実際にはほとんど使っていません。
これまではほとんどマウスで操作していたので、
移行の過程でこのドラッグ&ドロップも使えればなと思った次第です。
無理のようなのでとりあえずマウスは諦めます。
0416名無しさん@お腹いっぱい。2007/08/06(月) 00:55:43
最初は使いづらくてもvim流のやり方でやらないといつまでたっても慣れないよ
0417名無しさん@お腹いっぱい。2007/08/06(月) 01:02:37
>>416
こういう物言いはvimメーリングリストとかでは見ないんだが
koronの受け売りのつもりかな。
0418名無しさん@お腹いっぱい。2007/08/06(月) 08:09:17
>>413
それって、gvimの編集メニューの切り取り、貼り付けじゃ駄目ってことなの?
04194132007/08/06(月) 09:25:41
(´・ω・`)しらんがな
0420名無しさん@お腹いっぱい。2007/08/06(月) 15:44:39
だいたい画面スクロールしただけで選択範囲がついてくるような仕様だしなあ
0421名無しさん@お腹いっぱい。2007/08/06(月) 15:50:50
UNIX板なのにマウス使うような奴ばっかなの?
0422名無しさん@お腹いっぱい。2007/08/06(月) 16:22:53
Windowsからターミナルで使ってるからset mouse=aやってる
0423名無しさん@お腹いっぱい。2007/08/06(月) 21:30:09
>>418
右クリックとかメニューバーを使わなくても
ドラッグさえすれば移動できるってのがミソだから。
あれはあれで便利なんだろうが、あれが好きな人はVimとは相容れない気がする
0424名無しさん@お腹いっぱい。2007/08/06(月) 21:39:45
ドラッグドロップ使ってる人って多いのかなあ
GUIユーザも普通Ctrl-C, Ctrl-Vじゃね?
0425名無しさん@お腹いっぱい。2007/08/06(月) 21:52:51
>>421
んなこたーない
0426名無しさん@お腹いっぱい。2007/08/06(月) 23:33:38
>>424
んなこたーない
Ctrl-C, Ctrl-V はデフォの機能が割り当てられとる
0427名無しさん@お腹いっぱい。2007/08/06(月) 23:56:30
範囲選択でコピー、中ボタンでペーストならよくやる。
コピーするのにキー押さなくてもいいのでwindows式より気にいってる。
0428名無しさん@お腹いっぱい。2007/08/07(火) 06:01:30
>>427
知らなかった。これは便利だ。
0429名無しさん@お腹いっぱい。2007/08/07(火) 06:04:57
ここは本当にUNIX板か?
0430名無しさん@お腹いっぱい。2007/08/07(火) 07:30:07
だからソフ板のスレと統合しろと(ry
0431名無しさん@お腹いっぱい。2007/08/07(火) 09:02:11
X式の選択しただけでコピーって初めは合理的だと思ったけど
誤操作の弊害の方が多いよね。
0432名無しさん@お腹いっぱい。2007/08/07(火) 10:51:22
>>426
いやいやVimユーザじゃなくて、一般的なGUIテキストエディタユーザの
話な
0433名無しさん@お腹いっぱい。2007/08/07(火) 10:53:17
>>431
同意。どうせマウス使う時は左手が開いてるんで、左手でショートカットキーを
操作するのは手間でも何でもないし
0434名無しさん@お腹いっぱい。2007/08/07(火) 22:16:37
vimに関係のない話はよそでやってちょ
0435名無しさん@お腹いっぱい。2007/08/08(水) 08:12:58
ごめん、linux 使っているけど
behave mswin
source $VIMRUMTIME/mswin.vim
だよ、俺。
0436名無しさん@お腹いっぱい。2007/08/08(水) 12:26:51
質問させてください。
Undo履歴をvim終了後も保持する事はできますか?
まだまだ起動したまま編集する事に慣れてないので、これができればかなり便利だなぁと。
ちなみにsessionやviminfoにはそういう項目はないようです、、
0437KoRoN@Vim%Chalice ◆8XALICEsdk 2007/08/08(水) 13:40:23
>>436
ないです。

  ttp://www.vim.org/sponsor/vote_results.php

を見るとわかりますが、今一番要望されている機能なので、次のバージョンアッ
プで実装される可能性が高いのではないでしょうか。
0438名無しさん@お腹いっぱい。2007/08/08(水) 22:11:58
:!grep -n (文字列) ./*c ./*cpp ./*h
でヒットしたファイルの中から自分の見たいファイルを
何番目にヒットしたかの番号の指定、もしくはマウスクリックで
ヒットした文字列の位置にカーソルがある状態で
即座に開いて編集したいんですがそういうツールを作ってください
0439名無しさん@お腹いっぱい。2007/08/08(水) 22:37:18
>>438
まずは、マニュアルを一通り読むことを勧める。

:h grep
:h 'grepprg'
:h :clist
:h :cc
0440名無しさん@お腹いっぱい。2007/08/08(水) 23:35:28
コマンド行で矢印キーを使わない方向で文字を消さずにカーソル位置を手前に戻すにはどうしたらいいですか
0441名無しさん@お腹いっぱい。2007/08/09(木) 00:07:03
マップするしかないんじゃない。
:cnoremap <c-b> <left>
0442名無しさん@お腹いっぱい。2007/08/11(土) 01:55:49
「au BufEnter〜」で指定している処理から
NERD_treeで表示しているツリー部分のみ除外したいんですが、
どのように指定したらよいでしょうか?
04434422007/08/11(土) 02:04:05
ちなみに指定している処理は、カレントディレクトリを自動的に移動するこいつです。
au BufEnter * execute ":lcd " . expand("%:p:h")

if bufname() ~= "NERD"とか条件付けてやってみましたがダメでした。
NERD_tree部分は:lsにも名前が出てこないので扱いがよく分かりません。
0444名無しさん@お腹いっぱい。2007/08/11(土) 22:16:47
au BufEnter *  if bufname("%") !~ "NERD_tree" | cd %:p:h | endif
でできた。
ちなみに lcd するなら if の後に isdirectory(expand("%:p:h"))
も付けといた方がいいかも。
04454422007/08/11(土) 23:02:42
>>444
うぉぉ、素晴らしい。やりたかったのはまさにこれです。
ありがとうございます!

ちなみに、ifの後に付けるというのはどのようにすれば・・・orz
and条件は効かない(?)ようなので、ifを入れ子にするということでしょうか?
04464422007/08/12(日) 00:00:43
上記の件、andじゃなくて&&を使えば良かっただけみたいですね。
以下のようにしました。もし間違ってたら教えてください。
au BufEnter * if isdirectory(expand("%:p:h")) && bufname("%") !~ "NERD_tree" | cd %:p:h | endif
ヘタレで申し訳ない。精進します!
0447名無しさん@お腹いっぱい。2007/08/13(月) 11:12:00
subversion関連のvimスクリプトを使ってみたいんだけど、
vcscommand.vimとsvncommand.vimの違いがよく分からん
ほかにもいくつかsubversion関連のスクリプトは有るようだけど、何使ってる?
0448名無しさん@お腹いっぱい。2007/08/15(水) 06:47:30
暇だから 6.0 から 7.1 までのパッチの数を月別に数えてみたよ

01: 153
02: 268
03: 225
04: 184
05: 78
06: 92
07: 87
08: 93
09: 101
10: 231
11: 120
12: 65

メーリングリストの流量とも比例している
http://blog.gmane.org/gmane.editors.vim
http://blog.gmane.org/gmane.editors.vim.devel
0449名無しさん@お腹いっぱい。2007/08/15(水) 20:19:02
( ´ー`) <おまえも暇なやつだなあ。
0450名無しさん@お腹いっぱい。2007/08/15(水) 20:48:07
:bnとか:bpって、始めや最後のバッファで実行すると
反対側にジャンプしてくれるじゃないですか。
これを、あえてジャンプしないようにするってことはできませんかね?
0451名無しさん@お腹いっぱい。2007/08/17(金) 00:25:34
10行目から15行目までをヤンクしたいとき、
10行目に移動して6yyみたいにしてるのですが、
:10,15みたい範囲指定でヤンクする方法はないでしょうか?
0452KoRoN@Vim%Chalice ◆8XALICEsdk 2007/08/17(金) 00:28:55
>>451 もう自分で気が付かれたかもしれませんが。
:10,15y
0453名無しさん@お腹いっぱい。2007/08/17(金) 02:24:29
>>452
ありがとうございます!
あと一歩のところで気づきませんでした。
これでかなり作業が楽になります。
0454名無しさん@お腹いっぱい。2007/08/17(金) 08:05:16
Vy ばかり使っている。堕落したな、俺。
0455名無しさん@お腹いっぱい。2007/08/17(金) 09:51:18
便利なものを使うことは悪いことではない。
0456名無しさん@お腹いっぱい。2007/08/17(金) 17:30:52
たまにコンソール作業とかで素のvi使うと一番戸惑うのはVが使えないことだな
次はggで先頭に飛べないこと

でも逆に言えばその2つくらいで他は普通に使えてしまう
0457名無しさん@お腹いっぱい。2007/08/17(金) 17:57:33
Vyってyyと何が違うの
0458名無しさん@お腹いっぱい。2007/08/17(金) 20:52:42
Vhogehogeyを略して言ったんでしょ
0459名無しさん@お腹いっぱい。2007/08/17(金) 21:49:36
Vh でエラーになり、以降の ogehogey が無効な気がする。
0460名無しさん@お腹いっぱい。2007/08/17(金) 21:52:57
>>456
> ggで先頭に飛べないこと

禿同。最近までFreeBSDマシンの1つにvimを入れずに使ってたんですが、編集する度
にggと叩いてしまう自分に、その度に愕然としてました。
0461名無しさん@お腹いっぱい。2007/08/17(金) 21:55:48
Emacsのviper-modeがいいよと言われたので使ってみたらggで先頭に飛べなかった
すぐVimに戻ってきた
0462名無しさん@お腹いっぱい。2007/08/17(金) 23:01:04
同じ2文字でも1Gとggではタイプのしやすさが全然違うからなあ
0463名無しさん@お腹いっぱい。2007/08/17(金) 23:09:42
1Gよりは:0<C-M>の方がまだ指に優しいかも
0464名無しさん@お腹いっぱい。2007/08/17(金) 23:57:00
皆のvimrc、だいたい何行くらい?
04654642007/08/17(金) 23:59:42
ちなみに自分はvim歴2ヶ月程度で約280行まで増えた
.emacsでは7〜800行もいるらしいけど、vimではどうなんだろ
0466名無しさん@お腹いっぱい。2007/08/18(土) 00:05:50
1行
syntax onのみ
0467名無しさん@お腹いっぱい。2007/08/18(土) 00:46:52
viper-mode は自分でキーバインドや関数追加しないと素のviより使いにくい。
0468名無しさん@お腹いっぱい。2007/08/18(土) 00:52:03
>>461
今は使えるよ。
0469名無しさん@お腹いっぱい。2007/08/18(土) 10:07:46
しずもん。

Kaoriya版Vim7で
メインPC(WinXP+Cygwin)だとomni補完が効くんですが、
別のPC(WinXP+Cygwin)において、
同じ.vimrc、同じ.gvimrcなのにomni補完が出来ません。
なんかファイルがねーよみたいなこと言われます。
エラーメッセージ忘れていてすいません。
これは何が影響していますでしょうか?

また、Windows の Vim7が影響を受ける環境変数の一覧ってありますか?
SHELL、TERM、COMSPECぐらいでしょう?
0470名無しさん@お腹いっぱい。2007/08/18(土) 10:39:24
HOMEに別の.vimrcあったりして
0471名無しさん@お腹いっぱい。2007/08/18(土) 11:41:43
× SHELL、TERM、COMSPECぐらいでしょう?
○ SHELL、TERM、COMSPECぐらいでしょうか?

>>470
HOMEもありましたね、ありがとうございます。
Vim7の実行ファイルのフォルダはKaoriyaさんから落として展開してそのまま突っ込みつつ、
$HOMEはそれぞれ設定してやっちょりますです。
:scriptnamesで確認してあるので.*rc系の読み込みミスは無いと思われますです。
0472KoRoN@Vim%Chalice ◆8XALICEsdk 2007/08/18(土) 12:40:23
>>471
どの言語のomni補完ですか? Cならctags、rubyならrubyがインストールされてある必
要があるようです。言語毎にomni補完を実装している方法が異なるので、それにあわ
せて必要なモノが違ってきます。詳しくは次のヘルプ、もしくはomni補完用スクリプ
トのコメントを参照すると良いでしょう。

:he ft-{*}-omni
:e $VIMRUNTIME/autoload/{*}complete.vim

{*}はfiletypeに置き換えてください。
0473名無しさん@お腹いっぱい。2007/08/19(日) 23:21:44
>>472
言語毎に対応が必要なんですね。
:he ft-{*}-omni で勉強してみます。
ありがとうございます。
ちなみに言語はPHPでごす。
0474名無しさん@お腹いっぱい。2007/08/20(月) 21:32:08
matchで行末のスペースを強調表示したいのですが、
/\s\+$/だとスペースのみの行にもマッチしてしまいます。
スペース以外の文字を含む行だけを対象にするにはどのようにしたらよいでしょうか?
0475名無しさん@お腹いっぱい。2007/08/20(月) 22:19:57
/\S\s\+$/
0476名無しさん@お腹いっぱい。2007/08/20(月) 22:45:28
>>475
それだと「\S」の部分の一文字にもマッチしてしまうんですよね。
syn matchなら/\S\s\+$/hs=s+1(マッチ位置をオフセット)とも書けるようですが、
これをvimrcでやるにはどうれば?
0477名無しさん@お腹いっぱい。2007/08/20(月) 22:46:14
×どうれば?
○どうすれば?
■ このスレッドは過去ログ倉庫に格納されています