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

Vim6+ Part12

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2005/11/26(土) 10:33:23
Vim 6以降に関する話題、Part12です。
http://www.vim.org/

前スレ
http://pc8.2ch.net/test/read.cgi/unix/1110817975/

関連情報は>>2-8あたり。
0408名無しさん@お腹いっぱい。2006/02/01(水) 00:30:35
結論漢直
0409名無しさん@お腹いっぱい。2006/02/01(水) 00:42:29
ExcelやWordの文書は大抵下書きはvimで書いてる。
後で整形(改行、フォント、カラー、罫線等)するのが面倒だけどvim使い慣れてるし、
ExcelやWordだと見た目に意識が言ってしまうから。
ExcelやWordのショートカットキーをあまり知らないってものある。
0410名無しさん@お腹いっぱい。2006/02/01(水) 03:06:58
おもにメーラの外部エディタとして使ってる。
移動にマウスが必要なく、しかも早いというのが大きい。
文章校正で切り貼り移動しまくるので。
後は整形。たまに:se ve=allして<C-V>とrで線引いたりして表書くのに重宝する。
簡単な計算ができるのもいい。IMEはWinのgvimだから特に問題にならないし。
0411名無しさん@お腹いっぱい。2006/02/01(水) 03:23:28
ここで一発文頭の正規表現などを...
存在を忘れるくらい使わなかったけど。

let mx = ''
" 英語文頭
let mx = "[.!?]\\+[])\"']*\\(\\s\\+\\|\\s*\\n\\s*\\)\\zs."
" 日本語文頭
let mx = mx . "\\|[。!?]\\+[])\"']*[ \\t ]*\\n\\=[ \\t ]*\\zs."
" 段落
let mx = mx . '\|\(\_^[ \t ]*\n\)[ \t ]*\zs.'
let mx = mx . '\|.\n\zs\_^\_$'
let mx = mx . '\|\_^\n\ze\_^.'
" ファイル先頭末尾
let mx = mx . '\|\%^'
let mx = mx . '\|\%$'


ついでにバグみっけた
$ vim7.0189 -u NONE
/\n\zs
E315: ml_get: invalid lnum: 2
0412名無しさん@お腹いっぱい。2006/02/01(水) 05:40:41
>>410
おおおー!そんな方法があったとは。
0413名無しさん@お腹いっぱい。2006/02/01(水) 06:31:59
>>410
>たまに:se ve=allして<C-V>とrで線引いたりして表書くのに重宝する。
これについて、ちょっと解説きぼん
04144132006/02/01(水) 06:38:51
と、自己解決した。rで「-」「|」と置き換えるんだな?
0415名無しさん@お腹いっぱい。2006/02/01(水) 11:08:00
ビジュアル選択された領域をクリップボードにこぴぺするにはどうすればできますか?

ツールバーの「コピー」ボタンを押さずに、コマンドのみで完結する方法をお願いします。
0416KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/01(水) 11:32:31
>>415 "*y

クリップボードは特別なレジスタ * もしくは + にアサインされています。
04174172006/02/01(水) 17:01:33
>>415じゃないけど、ありがd!
0418名無しさん@お腹いっぱい。2006/02/01(水) 17:20:49
>>416
>
> クリップボードは特別なレジスタ * もしくは + にアサインされています。

できやした。thx!
0419名無しさん@お腹いっぱい。2006/02/01(水) 19:59:46
>>384
> autocmdのパターンにディレクトリをふくめられる
そんな手があったのか
0420名無しさん@お腹いっぱい。2006/02/01(水) 22:50:38
>>415
こんなんとかどうよ?
if has('win32')
  vmap <Space>c "+y
  vmap <Space>x "+x
  nmap <Space>v "+gp
endif
0421名無しさん@お腹いっぱい。2006/02/01(水) 23:12:59
インサートモードだと <Space>v 割り当てられないから統一感無いな
どちらかというと imap の方に割り当てたい場合の方が多いし
0422名無しさん@お腹いっぱい。2006/02/01(水) 23:13:07
>>420
素直に
C:\> cd Vim
C:\Vim> copy gvim.exe evim.exe
C:\Vim> evim
とやるのがいいかも。
0423名無しさん@お腹いっぱい。2006/02/01(水) 23:22:45
ここうに板じゃ無かったっけ?
0424名無しさん@お腹いっぱい。2006/02/02(木) 00:16:58
まぁ、ここが本スレ(だよね?)なんでUNIX以外のプラットホームの話題もいいんじゃない?
ソフ板のは出張所っていうか雑談所っていうか、、、そんな感じになってるし
「Winはソフ板から出てくんな」って流れもゴカンベンください
0425名無しさん@お腹いっぱい。2006/02/02(木) 01:19:01
>>410
メーラは?
0426KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/02(木) 01:21:42
>>149
スゴイ遅いレスで恐縮ですが、とりあえず次から40KB(40960B)に制限することにします。
0427名無しさん@お腹いっぱい。2006/02/02(木) 03:26:54
>>414 そう
>>410 Edmax
04284272006/02/02(木) 03:29:49
ミスったからもう一度。
  >>425 Edmax
0429名無しさん@お腹いっぱい。2006/02/02(木) 23:14:08
>>407
>モード切替のたびにescと漢字キーをいちいち二つ押すのがあまりにも煩雑で耐えられんので
オレは、vim を使っているときに、<esc> も漢字キーも、一切押さない。

MS-IME では、IME の ON/OFF を、<c-o> とか <s-space> に設定できるよ。
canna と同じね。
# IME 2000 だと、「プロパティ」->「全般」->「キー/ローマ字/色の設定」
# の右横にあるアイコン「設定(S)...」。

<esc> は、<c-[> を使えばイイ。
xterm とかだと、inoreab _e <esc> に設定すると楽。

IME で <c-o> を使ったら、vim の <c-o> は無効にした方がイイよ。
nnoremap <c-o> <nop>
vnoremap <c-o> <nop>
inoremap <c-o> <nop>
0430名無しさん@お腹いっぱい。2006/02/03(金) 00:28:11
俺は窓使いの憂鬱で<S-Space>をIMEにしとる。
0431KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/03(金) 00:39:22
>>429 私の IME ON/OFF はぜか <C-/> です。
0432名無しさん@お腹いっぱい。2006/02/03(金) 01:03:33
雑談はソフ板使ってあげよう
なんかあっち痛々しい雰囲気になっているから
0433名無しさん@お腹いっぱい。2006/02/03(金) 01:07:24
向こうはどっちもどっちな感じだな
0434名無しさん@お腹いっぱい。2006/02/03(金) 01:16:19
コマンドラインでカーソルより前を全消去(d^相当)するのは<C-U>ですが、
カーソルより後を全消去(d$相当)することはできないのでしょうか?
<C-K>なんかで消せたらいいなと思ったのですが。

:h cmdline.txt した範囲ではやり方がわかりませんでした。。。
0435名無しさん@お腹いっぱい。2006/02/03(金) 01:29:20
>>434
<C-F>はだめなんかね?これでいいんならCでもc$でも
0436名無しさん@お腹いっぱい。2006/02/03(金) 01:30:54
コマンドラインでちょっと直したいときにそれは手間だな
0437名無しさん@お腹いっぱい。2006/02/03(金) 02:11:21
>>435
ありがとうございます。
<C-F>は知っていましたが、435を見てこういう手を思い付きました。
ちょっと重いですがそれなりに機能します。

:cnoremap <C-K> <C-F>d$<C-C><C-E>
0438名無しさん@お腹いっぱい。2006/02/03(金) 02:19:15
ちょっとだけ改良

:cnoremap <C-K> <C-F>"_d$<C-C><C-E>
0439名無しさん@お腹いっぱい。2006/02/03(金) 13:37:47
vimのコマンドライン編集は使いにくい。仕方なくemacs風にしよう
と思っても>>434のようにC-kができない。<C-f>は重すぎ、大袈裟
すぎで使いたくない。emacsのviper-modeのようにコマンドライン
で<esc>を押すとノーマルモードに移行してくれると最高なのだが。
0440名無しさん@お腹いっぱい。2006/02/03(金) 13:38:34
さっき見付けた裏技
:set listchars=eol:?
0441名無しさん@お腹いっぱい。2006/02/03(金) 13:41:06
あれ、だめだった。もう一回。
set listchars=tab:>-,trail:-,extends:>,precedes:<,eol:?
U+21B2ね。
04424402006/02/03(金) 13:48:54
ブラウザで書き込んでもだめか。。。

>>439
cmap <C-K> <C-\>estrpart(getcmdline(), 0, getcmdpos()-1)<CR>
0443名無しさん@お腹いっぱい。2006/02/03(金) 14:18:29
>>442
ありがとう。
なんかちらつくけど。
0444名無しさん@お腹いっぱい。2006/02/03(金) 21:37:20
>>442
うぉ!これすごい便利
0445名無しさん@お腹いっぱい。2006/02/03(金) 22:09:36
>>442
これは良いですねー。
ただ、<C-\>をマップしてると動かないのでcnoremapがお勧め。
0446名無しさん@お腹いっぱい。2006/02/04(土) 00:05:08
viで連番を打つことって可能でしょうか?

abc
defg
hi
jklmn



abc1
defg2
hi3
jklmn4

みたいなのを、地道に打つんじゃなくて、楽にやりたいんです。
0447名無しさん@お腹いっぱい。2006/02/04(土) 00:26:17
>>446
1

ってなっているところで
qqyyp<C-a>q
でキーボーマクロ登録
100@q
とかじゃダメ?
0448名無しさん@お腹いっぱい。2006/02/04(土) 00:34:23
FAQですね
0449名無しさん@お腹いっぱい。2006/02/04(土) 00:34:25
キーボードマクロは美しい解ではないかもしれないが、
実に多くの場合で最も実践的な解である。
他の方法を考える間に出来ちゃうからね。こういうの大事。

漏れならawkかな。
:'<,'>!awk '{print $0 NR}'
0450mattn@Vim%Chalice2006/02/04(土) 00:43:36
>>446
:%s/$/\=line(".")

#先頭行から始まる場合だけですよ。
0451mattn@Vim%Chalice2006/02/04(土) 00:47:09
まぁ2行目から始まってても
:'<,'>s/$/\=line(".")-1
ですむんですが…。
0452名無しさん@お腹いっぱい。2006/02/04(土) 00:48:56
>>450
これ行番号になっちゃうね
0453mattn@Vim%Chalice2006/02/04(土) 00:56:56
>>452
一番簡単な方法ですからね。<先頭行の場合だけ
ちゃんとやるならば

:'<,'>s/$/\=line(".")-line("'<")+1

ですかねぇ?もっといいのあるかもしれません。
0454名無しさん@お腹いっぱい。2006/02/04(土) 00:58:27
こうしてだんだんと美しいが実践的でない解の領域へ
0455mattn@Vim%Chalice2006/02/04(土) 01:05:20
私はたまに、:new でスクラッチ作って貼り付けて先頭行からいける↑のを流してしまったりします。
04564462006/02/04(土) 01:52:26
深夜にレスありがとうございます。

>>447
キーボードマクロなんていう機能があったんですね。
こいつはスゲエや。
だけど、aaa1 aaa2 aaa3 ってな感じで行が連なるので・・・

>>449
自分がヘタレなんで動作確認できませんでした。
一行目に1がついただけでした。

>>450
なるほど。>>455と組み合わせれば汎用性ありますね。

皆様、ありがとうございました。
0457名無しさん@お腹いっぱい。2006/02/04(土) 01:53:56
:'<,'>
ってのはVでビジュアル選択してからやるんだよん
0458名無しさん@お腹いっぱい。2006/02/04(土) 02:23:01
>>455
十分実践的だね
0459名無しさん@お腹いっぱい。2006/02/04(土) 02:56:35
何が実践的かは、何を即座に思い付けるかによるからね
0460名無しさん@お腹いっぱい。2006/02/04(土) 03:00:37
>>456>>447
無理やりがんばった。

1
をyyでコピー後、数字入れたい行で
qqp<c-a>yykgJjqを実行し100@qでどうだろう
0461名無しさん@お腹いっぱい。2006/02/04(土) 09:49:28
数字の連続を作った後、矩形選択して、
文字の右側に貼り付けるとか
0462名無しさん@お腹いっぱい。2006/02/04(土) 13:06:46
>>460
ナイスアイデア
0463名無しさん@お腹いっぱい。2006/02/04(土) 13:14:04
increment.vim : yet another script for incrementing numbers
http://www.vim.org/scripts/script.php?script_id=156
0464名無しさん@お腹いっぱい。2006/02/04(土) 22:01:49
vimでファイル開くと同時にx行目を表示ってどうしたらできる?
0465KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/04(土) 22:22:32
>>464 こんな風に +{行数} で指定します。
vim +10 file.txt
0466名無しさん@お腹いっぱい。2006/02/05(日) 01:15:48
vim でのオススメ plugin
http://d.hatena.ne.jp/secondlife/20060203/1138978661
0467名無しさん@お腹いっぱい。2006/02/05(日) 01:31:05
エロ画像のモザイクを外すことすら出来ないエディターなどクソだ。
0468名無しさん@お腹いっぱい。2006/02/05(日) 01:55:32
>>466
ああ、この記事はなかなか良い
0469名無しさん@お腹いっぱい。2006/02/05(日) 03:46:12
ずいぶん重いプラグインばかり入れているんだな
この人emacs使った方が良いんじゃない?
0470名無しさん@お腹いっぱい。2006/02/05(日) 05:04:41
vimの機能のほとんどに気づいてすらいない事を
このスレで思い知らされるな…orz
0471名無しさん@お腹いっぱい。2006/02/05(日) 09:57:42
なんでビル女医のviを使わないの?
オリジナルのライセンスってどうなってるの?
0472名無しさん@お腹いっぱい。2006/02/05(日) 10:27:55
ビル女医って響きが、、、なんかエロスw
0473名無しさん@お腹いっぱい。2006/02/05(日) 12:13:25
女医→エロ になってるお前の脳がエロい
0474名無しさん@お腹いっぱい。2006/02/05(日) 12:20:43
経口避妊薬ビル・ゲイツと
経口避妊薬ビル女医。
0475名無しさん@お腹いっぱい。2006/02/05(日) 21:27:04
windowsXP SP2 を使用しているのですが、gvimを起動して

1 :w test.txt
2 適当に書き込む
3 :wq

とすると test.txt~ というごみファイルが残るのは私だけでしょうか?
0476KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/05(日) 21:28:04
>>475
ゴミじゃなくてバックアップファイルです。
:set nobackup
で作らなくすることもできますし、
:set backupdir=...
で指定して、一箇所にまとめて作らせることもできます。
04774752006/02/05(日) 21:37:15
> 476
ありがとうございます!
IEのソースエディタとかも変更したあとで気づいて
どうしようか焦ってました。
0478名無しさん@お腹いっぱい。2006/02/05(日) 21:49:54
windows の vim で起動時に何だったかの登録するかを聞かれますが、
登録しないでコレを抑制するにはどうするのが普通なんでしょうか?
0479名無しさん@お腹いっぱい。2006/02/05(日) 22:14:10
端末 vim の
vsplit で scrollbind したときのスクロールは
何であんなに重いんだろう。
gvim なら速いのに。
0480名無しさん@お腹いっぱい。2006/02/06(月) 01:51:05
>>475
ごみファイルワロス
0481名無しさん@お腹いっぱい。2006/02/07(火) 04:28:53
>>473 ニョーイ (古

>>478
初回起動時のみに表示される、「…registered…」のメッセージの
ことかな?OLE関係でレジストリに登録するとかいうやつ
04824782006/02/07(火) 21:52:14
>>481
そうです。2回目以降も出てます。
というか今日誤って肯定してしまったので
なんかもうできなくてもいいんですが。
というか 2回目以降は出ないものなんですか?
0483名無しさん@お腹いっぱい。2006/02/07(火) 21:58:13
2回目以降はでない・・はずだ
0484KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/07(火) 22:05:59
OLE登録されていない場合は、毎回聞きます。昔は登録せずに、しかも聞かずに起動
するオプションも独自に用意しましたが、何かの理由で廃止しました。ちなみにOLE
の登録を解除するには-unregisterオプションで起動してください。また聞かれるよ
うになります。
0485名無しさん@お腹いっぱい。2006/02/08(水) 10:52:11
>>479
mlterm?
0486名無しさん@お腹いっぱい。2006/02/08(水) 11:19:57
grep -n した結果の「ファイル名:行番号:行の内容」
というテキストから、そのファイルのその行を開くにはどういう操作をしたらいいのでしょうか。
実例を挙げると↓のような感じです。

formlet/search.frm.php:20:    $key = $params["key"];
0487KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/08(水) 11:50:10
>>486 :help :cfile
0488名無しさん@お腹いっぱい。2006/02/08(水) 17:01:47
挿入モードやコマンドラインでカーソルを移動させるには
カーソルキーを使用するしかないんですか?(ダイヤモンド
カーソルみたいなキーバインドはないんですか?)
0489名無しさん@Vim%Chalice2006/02/08(水) 17:46:57
>>488 :help useful-mappings
0490名無しさん@お腹いっぱい。2006/02/08(水) 23:35:12
ここの回答を見て思ったんだがそれじゃあ一般人なんか取り込めないわな
0491名無しさん@お腹いっぱい。2006/02/08(水) 23:41:23
取り込む必要ないし
0492名無しさん@お腹いっぱい。2006/02/08(水) 23:45:24
ソフ板のスレでKoRoNが取り込む気まんまんだったぞ
なんか悪いものでも食べたのかも
0493名無しさん@お腹いっぱい。2006/02/08(水) 23:48:10
ワロス
何食ったらそうなるんだよwww
0494名無しさん@お腹いっぱい。2006/02/08(水) 23:54:08
一般人ってなに?
0495名無しさん@お腹いっぱい。2006/02/09(木) 00:15:50
>>490 は取り込みたいなら取り込めばよいとかでも取り込んでないで一人書きしただけとかならレス書いてもなあとか思ったりだけどいいや書いちゃえ
04964792006/02/09(木) 01:18:22
>>485
screen on kterm
screen なしなら特に遅くはない。
screen なしでも少し遅くなる。
これは xterm でも。xterm の場合は screen は別段関係しない。
「少し」ってのは 80x24 ではわからんくらい。最大化すると結構違う。
04974782006/02/09(木) 02:14:52
>>484
どうもです。
ということはやはり皆さん登録してるんですかね。
もう聞かれたくないので解除はしません。
04984882006/02/09(木) 14:18:02
>>489 helpを見てとりあえず、自分なりにキーマッピングを
し始めたんですが、ノーマルモードの<C-K>にgkを割り当て
たところ上手く動作しません。:nmap <C-K>で確認したところ
2ストロークキーとして?既に10ほど、辞書関連?スクリプト
関数へのコールが割り当てられていました。:h CTRL-Kには
特に何も書いてないのですが、これってなんでしょうか。
香り屋のgvim6.3を使用しています。
0499KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/09(木) 15:25:35
>>498
香り屋版では独自に提供している辞書スクリプトのキーマッピングに<C-K>を利用し
ています。詳細は以下のファイルを開いて読んでください。
:e $VIMRUNTIME/plugin/dicwin.vim
0500名無しさん@お腹いっぱい。2006/02/09(木) 21:15:55
vim-6.4.006-w32jなんですけど、"["が名前に含まれているフォルダ内のファイルが編集できません。
"["が先頭にある場合は問題なくて、"a["とか、"["の前に何か文字があるとその文字がディレクトリの区切りとして認識されてしまうようです。
0501名無しさん@お腹いっぱい。2006/02/09(木) 22:54:40
>>499 おー便利ですね。ヘルプの英語を読むのに外部の辞書を
使用してたので少しヘルプ読むのが早くなりそう。焼け石に水かも..
とりあえずカーソル移動はhjklにまとめたかったので<C-F>を潰して
dicwinに割り当てました。ども〜
0502名無しさん@お腹いっぱい。2006/02/09(木) 23:47:21
vim7ってひょっとしてmigemo対応してない?
0503KoRoN@Vim%Chalice ◆8XALICEsdk 2006/02/10(金) 00:26:10
対応パッチ配布してますよ。7zipの自己解凍ファイルの中だけど。
http://www.kaoriya.net/testdir/vim7-daily-w32j.exe
0504h_east2006/02/10(金) 01:01:52
うぁー。vim-jpに俺のメアドで何してくれるんじゃー。
お陰でメンバーじゃなくなってるー
今気づいた
0505名無しさん@お腹いっぱい。2006/02/10(金) 01:13:58
詳しく。
あんまりにもメール流れないんで、vim-jp解約しちゃったよ。
0506名無しさん@お腹いっぱい。2006/02/10(金) 04:18:29
>>503
どうもです
よくわからないけど頑張ってみます
0507名無しさん@お腹いっぱい。2006/02/10(金) 13:02:38
daily のは、enc=utf-8 になってるからか、migemo がうまく動かなかった。
set enc=cp932 (sjis も可) にしたら動いたけど。

この対処で良いものか不安。
■ このスレッドは過去ログ倉庫に格納されています