Vim Part15 ..
[2ch|▼Menu]
2:名無しさん@お腹いっぱい。
08/02/03 23:49:45
■ 入手場所関連
- www.vim.org (総合情報・スクリプト・Tips)
URLリンク(www.vim.org)
- ソースコード他
fURLリンク(ftp.vim.org)
- KaoriYa.net (Windows/MacOS Xバイナリ、掲示板)
URLリンク(www.kaoriya.net)

■ vimの情報ソース(国内)
- VIM wiki
URLリンク(vimwiki.net)


3:名無しさん@お腹いっぱい。
08/02/03 23:51:24
■ 関連ツール・ライブラリ
- まっつんさん(im_custom他)
URLリンク(hp.vector.co.jp)
- libiconv (ソースコード)
URLリンク(www.gnu.org)
- libiconv (Windowsバイナリ)
URLリンク(www.kaoriya.net)
- ctags (日本語対応版)
URLリンク(hp.vector.co.jp)
- hown-mode.vim
URLリンク(sworddancer.funkyboy.jp)
- C/Migemo
URLリンク(www.kaoriya.net)
- Vim + im_custom の rpm 作成スクリプト
URLリンク(hp.vector.co.jp)


4:名無しさん@お腹いっぱい。
08/02/03 23:53:17
■ 日本語ドキュメント
- 名無しのVIM使い
URLリンク(nanasi.jp)
- Vim日本語ドキュメント(ユーザーマニュアル和訳)
URLリンク(www.water.sannet.ne.jp)
- Vim日本語ドキュメント(リファレンスマニュアル和訳)
URLリンク(www.kaoriya.net)
- C editing with VIM HOWTO (和訳)
URLリンク(www.linux.or.jp)


5:名無しさん@お腹いっぱい。
08/02/03 23:54:54
■ 過去ログ・関連スレ
vim
- Part1 URLリンク(pc.2ch.net)
- Part2 URLリンク(pc.2ch.net)
- Part3 URLリンク(pc.2ch.net)
- Part4 スレリンク(unix板) (dat落ち)
- Part5 スレリンク(unix板) (dat落ち)
- Part6 スレリンク(unix板) (dat落ち)
- Part7 スレリンク(unix板) (dat落ち)
- Part8 スレリンク(unix板) (dat落ち)
- Part9 スレリンク(unix板) (dat落ち)
- Part10 スレリンク(unix板) (dat落ち)
- Part11 スレリンク(unix板) (dat落ち)
- Part12 スレリンク(unix板) (dat落ち)
- Part13 スレリンク(unix板) (dat落ち)
- Part14 スレリンク(unix板)
- 最新テンプレ URLリンク(www.kaoriya.net)


6:名無しさん@お腹いっぱい。
08/02/03 23:58:55
vim @ソフトウェア板
- Part1 スレリンク(software板) (dat落ち)
- Part2 スレリンク(software板)

Chalice(2ch閲覧プラグイン)
- Part1 URLリンク(pc.2ch.net)
- Part2 URLリンク(pc2.2ch.net)
- Part3 スレリンク(software板) (dat落ち)
- Part4 スレリンク(software板)

vi
- Part1 URLリンク(pc.2ch.net)
- Part2 スレリンク(unix板)


7:名無しさん@お腹いっぱい。
08/02/04 00:00:39
- Viと仲良くする方法
スレリンク(unix板)
- 【Linux板】初心者にもやさしい【vi】 @2ちゃんねる
スレリンク(linux板)
- Vim6スクリプトお勉強スレ
スレリンク(unix板)
-「vi」の小技教えてスレ
URLリンク(pc.2ch.net)
- :::viクローン nvi:::
スレリンク(unix板)


8:名無しさん@お腹いっぱい。
08/02/04 00:03:42
■ フレーム系
- Vim vs Emacs (Editor War)
スレリンク(unix板) (dat落ち)
- 秀丸をUnixに移植しろ!emacs,viはゴミ以下 3
スレリンク(unix板)
- テキストエディタをまた〜り語ろう ver.25
スレリンク(software板)

■ その他
- Vi-IMproved.org (IRCの#Vim案内)
URLリンク(www.vi-improved.org)

9:名無しさん@お腹いっぱい。
08/02/04 00:04:41
日本語入力だろうがなにだろうが、非モーダルエディタはモーダルエディタには
勝てない。こんなん当たり前。

10:masa
08/02/04 00:06:49
何に勝てないの?

11:名無しさん@お腹いっぱい。
08/02/04 00:27:18
>>1-8


12:名無しさん@お腹いっぱい。
08/02/04 06:32:05
>>4
- 7.1対応 Vim日本語ドキュメント(リファレンスマニュアル和訳)
URLリンク(www.ac.cyberhome.ne.jp)
こっちの方が新しげ ページ下の方からDL可能

~/.vimもしくは~/vimfiles以下にdocディレクトリをそのまま置いて
:helptags ~/.vim/docもしくは:helptags ~/vimfiles/docするとVimのヘルプが日本語になる
(:helptagsしたときエラーが出るけどとりあえず無視)
参考→スレリンク(software板:293番)

13:名無しさん@お腹いっぱい。
08/02/04 07:49:06
これすげー使いにくいよ!!!!俺がバカだから?
慣れれば手放せなくなるのかな・・・

14:名無しさん@お腹いっぱい。
08/02/04 07:55:26
君が始めてPC使ったときも、不便だと思わなかった?

15:名無しさん@お腹いっぱい。
08/02/04 09:33:26
>>1

16:名無しさん@お腹いっぱい。
08/02/04 09:39:01
>>1

そして、:g!/hoge/d で grep。これ豆知識な。

17:名無しさん@お腹いっぱい。
08/02/04 09:43:50
>1乙

そして、C/C++ でコーディングしてて
switch (i) {
    case hoge:
        foo();

switch (i) {
case hoge:
    foo();
と自動でインデントするには、set cinoptions+=:0。
これ豆知識な。

18:名無しさん@お腹いっぱい。
08/02/04 09:45:45
>>1 乙であります!

C++ でコーディングしてて
class Foo {
    public:
        Foo();

class Foo {
public:
    Foo();
と自動でインデントするには、set cinoptions+=g0。
これも豆知識な。

19:名無しさん@お腹いっぱい。
08/02/04 11:14:30
>>1
そして前スレ1000のおかげでささやかな幸せがおとずれた

20:名無しさん@お腹いっぱい。
08/02/04 14:22:27
" ささやかな幸せ
noremap ; :
noremap : ;

21:名無しさん@お腹いっぱい。
08/02/04 15:31:07
>>20
US配列だと幸せってこと?

22:名無しさん@お腹いっぱい。
08/02/04 21:12:01
>>12
すげぇ・・・ここまで翻訳してあるとは。感動した。

23:名無しさん@お腹いっぱい。
08/02/04 22:00:13
Kaoriyaのwindows版7.1.145を使っております。
異体字変換スクリプトを書いておりまして、その
時に気がついたのですが、\u69d7のような文字が
表示できません。??になってしまいます・・・。

24:名無しさん@お腹いっぱい。
08/02/05 00:17:47
特有の問題かは知らないがWindows版の話は明らかに板違いだから誘導しておく
スレリンク(software板)

25:名無しさん@お腹いっぱい。
08/02/05 21:22:53
\u69d7はsjisで表示できないんじゃね?
utf-8にしたらどう

26:名無しさん@お腹いっぱい。
08/02/05 23:27:46
>>17, 18
おお!ありがとう
知ってそうで知らなかった情報だ

27:名無しさん@お腹いっぱい。
08/02/06 17:31:45
:r! date などとやると改行した先に結果が貼付けられますが、
この改行を無くす事は出来ますか?

28:名無しさん@お腹いっぱい。
08/02/06 17:34:02
>>27
:0r! date

29:名無しさん@お腹いっぱい。
08/02/06 17:55:10
>>28
私の環境のせいか、上の行に挿入されてしまいました。

30:名無しさん@お腹いっぱい。
08/02/06 20:09:08
>>27
その手のコマンドは行単位なので、
実行したコマンドの出力に改行がなくても末尾に必ず改行が挿入される。
だからコマンド実行後にJするなりなんなりで調整しないとダメ。

31:名無しさん@お腹いっぱい。
08/02/06 22:53:56
>>30
なるほど。わかりました。
ありがとうございます。

32:名無しさん@お腹いっぱい。
08/02/08 14:19:43
埼玉大学(笑)

33:名無しさん@お腹いっぱい。
08/02/14 09:40:11
くまのり!

34:名無しさん@お腹いっぱい。
08/02/15 01:26:10
Vimと直接関係ないんだけど、ちょっと相談に乗ってください。
gnu screenのescapeをどのキーに割り当てればいいのかわからないです。
bash + screen + vim7環境です。
screenのデフォルトescapeは^aだけど、bashの「先頭に戻る」、
vimの「数字インクリメント」とかぶるので駄目。
仕方なく^tにしてたけど、vimの「タグジャンプ後、元のファイルに戻る」に
ぶつかってたのを、今日ctagsインストールして気づいた。
今のところ^uが有力候補なのですが、同様の環境の人がいたら、
何をescapeに割り当てているのか教えて欲しいです。

35:名無しさん@お腹いっぱい。
08/02/15 01:49:28
>>34
gnome-terminal 使いのタコなんだが、
telnet みたく CTRL-] じゃだめかいな?

36:名無しさん@お腹いっぱい。
08/02/15 01:56:27
>>35 ども。
そのキーはvimのタグジャンプなんです。(涙

37:名無しさん@お腹いっぱい。
08/02/15 02:36:19
^j とかはどうだろ。

38:名無しさん@お腹いっぱい。
08/02/15 03:22:21
自分は^z使ってるよ。
screen使ってればsuspendするより新しいshell立ち上げた方が便利だし
どうしても必要な時は^zzで間に合う。

39:名無しさん@お腹いっぱい。
08/02/15 08:27:39
>>37-38 ども。
^jと^zを今日試してみます。
^j → 最高のホームポジションを見落としていた
^z → 「どうせサスペンドしない」確かにそうだ!この発想は出てこなかった

40:名無しさん@お腹いっぱい。
08/02/15 14:38:47
>>34
>screenのデフォルトescapeは^aだけど、bashの「先頭に戻る」、
こら! Vimmerなら何故~/.inputrcにset editing-mode viと書いてないんだ!

まあ冗談はさておき、Vim側のキーバインドなんていくらでも変えられるんだから、
デフォで割り当てられてる機能は気にせずに、使い易いと思ったものに割り当てればいいじゃない。
使用頻度低いのとか、使い辛そうなのは別のキーに割り当てなおせばいいんだし。
自分の場合は^Aそのままで使ってる。インクリメントほとんど使わないし。
・^J/^Kはjumplistの移動(デフォだと<C-o>/<C-i>)に割り当ててる。
・^]/^Tは今一使い辛いからtt/tj/tkとかに割り当ててる。
・^Zは:suspendはそれなりに使うのでそのままにしてる。
あと開いてそうなのと言えば^Qくらいかなぁ。

41:名無しさん@お腹いっぱい。
08/02/15 15:30:46
>>34
俺はほとんど使わない^Lだな。
もし連打してもただの再描画だから被害が少ないし、
何よりホームポジションにある。

42:名無しさん@お腹いっぱい。
08/02/15 18:19:44
^|とかどうよ

43:名無しさん@お腹いっぱい。
08/02/15 18:40:19
>>37
おれも^jだわ

44:名無しさん@お腹いっぱい。
08/02/15 19:50:19
自分は^Aと^Zの間をウロウロしている。
^Zは押しにくいし、^Aに定住しそう。

45:34
08/02/16 01:49:40
>>40-44 ども。
結果、^Jjに落ち着きそうです。ホームポジションど真ん中で快適です。
^jはemacsでインデント付き改行だけど、使わないのでどうでもいいや。

>>40 マジレスですが、bashのviモード使ってる人って見たことないです。。。
>>41 bashで^Lしてからlsとかしません?日本語コメントがあって、1,000行以上
あるソースを見るとvimの表示ずれて^Lしません?俺だけ??
>>42 ^|って[CTRL + Shift + \]?ちょっと難しいです。
>>43 おいらも今日から真似します。
>>44 vimの^aは使わなくても我慢できるけど、
bashの^aが[^aa]なり[^a^a]なりになるのは我慢できないです。
^asudoとかよくやるんですけど。(弱

46:名無しさん@お腹いっぱい。
08/02/16 03:00:29
set -o vi は /etc/bashrc にぶちこんどけ!

47:名無しさん@お腹いっぱい。
08/02/16 12:57:27
>>46
埼玉大学出身でも?

48:名無しさん@お腹いっぱい。
08/02/16 14:45:26
ctrl+aで数字を+1できることを最近知ったのですが、
逆に−1するにはどうすればよいでしょうか?

49:名無しさん@お腹いっぱい。
08/02/16 14:49:04
CTRL-X

50:名無しさん@お腹いっぱい。
08/02/16 22:04:20
Ctrl-a ってどんな時に使うの?
使い道がさっぱりわからん。

51:名無しさん@お腹いっぱい。
08/02/16 22:23:53
キーボードマクロとかで使うな

52:名無しさん@お腹いっぱい。
08/02/16 22:24:06
オレの場合
nnoremap + <C-a>
nnoremap - <C-x>

53:名無しさん@お腹いっぱい。
08/02/16 22:45:13
qa0yyp^aq10@a

54:名無しさん@お腹いっぱい。
08/02/16 23:04:05
EmacsのC-lと同じ動作はどうすればできますか?

55:名無しさん@お腹いっぱい。
08/02/17 02:09:19
画面を再描画のことかや?

56:名無しさん@お腹いっぱい。
08/02/17 02:12:55
カーソルを画面中心に持ってくるってことじゃね?
たぶん、zz でいけると思う。

57:50
08/02/17 12:01:29
>>51 >>52
どういうテキストをどうしたいときに使いますか?

>>53
これは面白いですね。覚えておきます。

58:名無しさん@お腹いっぱい。
08/02/17 20:03:38
キーボードマクロ+インクリメントは、
入れる値を変更したSQL文を大量生成したい時で、
スクリプト組む気力が無いときとか。

59:名無しさん@お腹いっぱい。
08/02/17 21:35:20
0x9f とか 077 で重宝するかな。
既存の数値を変更する場合は、今は、submatch() と printf() も使える。
たとえば、53 氏のマクロで、10行分の数字を入力した後。
現在行から10行の範囲に対して、3を足して16進数にする。
:.,.+9s/^\d\+/\=(printf("%#x", submatch(0)+3))/

60:名無しさん@お腹いっぱい。
08/02/18 20:04:27
ファイルA.txtを開いている状態で、vnewしてB.txtを開く。
その状態でvim -d A.txt B.txtみたいなvim diff表示をしたいんだけど、
それって出来ますか?

61:名無しさん@お腹いっぱい。
08/02/18 20:18:11
:h diff
見てみればいいんじゃないかな

62:名無しさん@お腹いっぱい。
08/02/18 20:32:37
>>61
ごめん。ありがとう。

63:名無しさん@お腹いっぱい。
08/02/18 23:04:32
なんか良いな、この流れ。

64:名無しさん@お腹いっぱい。
08/02/19 00:09:52
C++でnamespace宣言の{でくくられたものは
インデントを下げないようにしたいのだけど、そんな事できますかね?

65:名無しさん@お腹いっぱい。
08/02/19 10:50:54
>>64

function! GetCppIndent()
    let prev_line = getline(getpos('.')[1] - 1)
    let ns_indent = match(prev_line, 'namespace')
    if 0 <= ns_indent
return ns_indent
    endif
    return cindent('.')
endfunction

こんなのを indentexpr に設定すれば良いかと。

66:名無しさん@お腹いっぱい。
08/02/19 11:23:34
>>64

ごめん。ちょっと修正。

function! GetCppIndent()
    let curr_line = getpos('.')[1]
    let prev_indx = 1
    while match(getline(curr_line - prev_indx), '^[ \t]*$') == 0
        let prev_indx = prev_indx + 1
    endwhile
    let prev_line = getline(curr_line - prev_indx)
    let ns_indent = match(prev_line, 'namespace')
    if 0 <= ns_indent
        return ns_indent
    endif
    return cindent('.')
endfunction

67:名無しさん@お腹いっぱい。
08/02/19 20:54:26
長過ぎる。3行で。

68:名無しさん@お腹いっぱい。
08/02/19 21:03:08
>>67
set noai

69:名無しさん@お腹いっぱい。
08/02/23 15:42:25
キーボードマクロって、vim終了させると消えてしまいますが、
消えないように設定ファイルに設定したりすることってできますでしょうか?


70:名無しさん@お腹いっぱい。
08/02/23 15:57:46
検索するときに漢字を含んだ正規表現を使った検索ってできないのでしょうか?

やりたいのは、
/ほげ.*ふう
みたいなことです。


71:名無しさん@お腹いっぱい。
08/02/23 16:49:54
>>69
「キーボードマクロ」がrecording(qxfoobarbazqとかで入力したやつ)のことなら、
入力内容はレジスタに保存されてて、オプション'viminfo'が適当に設定されていれば
レジスタの内容はVim終了時にviminfoというファイルに自動的に保存されるから、
次回起動時でも使えるよ。
:set viminfo?
として「<20」みたいな内容が含まれていれば保存されているはず。

「キーボードマクロ」がmap foo barとかのkey mappingのことをいってるのなら、
これは自分で設定ファイルを書かないと駄目だよ。書くファイルは
:echo $MYVIMRC
で表示されるファイルね。


>>70
普通にできるよ。

72:>>69
08/02/24 15:28:16
>>71
viminfoにかんしては使えないようでした。FreeBSDのjvimではだめなのかもしれません。

漢字の検索もjvimだからなのか使えませんでしたorz


73:名無しさん@お腹いっぱい。
08/02/24 16:20:13
jvimってバージョン5なんだな。
てことは、そのころはまだ、日本語関連よろしくなかったんだな

74:71
08/02/24 17:01:30
>>72
jvimだったのかよ! てっきりVimだとばかり思ってた。
昔のバージョンならともかく、今のバージョンなら普通にマルチバイト文字を扱えるんだから
この際Vimに乗り換えると言うことで。

75:名無しさん@お腹いっぱい。
08/02/24 22:51:42
>>72
japanese/jvim の事かな?これってバージョン2でしょ?
俺は japanese/jvim3-direct_canna を使ってるけど >>70 のは出来てるよ

キーボードマクロはほとんど使ってないんでよく知らん。
map 系で代用出来ないか?

76:>>72
08/02/27 00:17:40
>>75
ありがとうございます。やってみます。


77:名無しさん@お腹いっぱい。
08/02/28 16:59:50
insert モードと間違えて normal モードで日本語入力してしまうと,
動作がおかしくなるんですけど,
Normal モードでの日本語入力を抑制する良い方法を知っている方いませんか?

78:名無しさん@お腹いっぱい。
08/02/28 18:03:32
環境を書いた方がいいと思う

79:77
08/02/28 18:24:54
すみません
FreeBSD 6.2-Release-p9
VIM 7.1.242
で,
scim + Anhty
使って日本語入力してます.



80:名無しさん@お腹いっぱい。
08/02/28 18:28:07
おかしくなるってなに

81:名無しさん@お腹いっぱい。
08/02/28 18:42:54
>>79
デフォルトだとNormal modeでマルチバイト文字が入力されても無視されるだけだから無害だと思う。

個人的には自動でInsert modeに移行されると便利だから
ちょっとパッチ書いてみようかと思ったり思わなかったり。

82:71
08/02/28 18:43:43
URLリンク(d.hatena.ne.jp)
こんな状態だったんですけど
URLリンク(ameblo.jp)
に書いてある方法で解決しました

すみません お手数お掛けしました

83:71
08/02/28 18:45:38
>81
マルチバイト文字は無視されるんでしたか
ちょっとこっちの環境が変な気もするので調べてみます
ありがとうございます

84:名無しさん@お腹いっぱい。
08/02/28 18:52:45
vimはunix的メモ帳だからアクセサリでいいよ

85:名無しさん@お腹いっぱい。
08/02/28 18:59:47
vimかわいいよmiv

86:名無しさん@お腹いっぱい。
08/03/01 02:40:44
質問お願いします。

vimのファイルタイプの自動判別を追加するために
vim documentationに示されていたAの方法を試したら、
自動判別はできるのですが、既存のファイルを開くたびに

"mysrc/test.mine" [変換済] 86L, 1281C
1 /*
続けるにはENTERを押すかコマンドを入力してください

と必ず最初に表示されてしまいます。これを回避する方法をご存知のかたいらっしゃいましたら教えてください。
vimのver6を使用しています。宜しくお願いします。

87:名無しさん@お腹いっぱい。
08/03/01 03:11:28
>>86
まずはどんな設定か晒すんだ。
その設定が原因でメッセージが表示されて
hit-enter-promptが出てるんだと思うよ。

あとヘルプの特定の箇所を示すなら
:help ftdetect
と書いた方が分かりやすいよ。

88:名無しさん@お腹いっぱい。
08/03/02 05:47:38
返信が遅れてしまいました。すいません。

設定についてですが、ファイルの自動判別を行うために、
~/.vim/ftdetect/mine.vimというファイルを作成し、
内容を
au BufRead,BufNewFile *.mine set filetype=mine
としました。設定は以上です。


この設定を行う前にmineファイルsyntaxの
~/.vim/syntax/mine.vimも追加したのですが、もしかするとこの操作が影響しているのでしょうか?

89:名無しさん@お腹いっぱい。
08/03/02 23:54:17
GVim Portable について質問させてください。
Windows の話題ですみません。

ビジュアル モードに入ったときに、
選択範囲が反転しないのですが
これを反転するよう変更する方法をご存知ないでしょうか?


90:名無しさん@お腹いっぱい。
08/03/03 02:49:37
>>24

91:名無しさん@お腹いっぱい。
08/03/03 21:57:29
>>90
誘導ありがとうございます。
向こうに行ってきます。

92:名無しさん@お腹いっぱい。
08/03/04 15:08:41
質問お願いします!

前までVim6.3を使っていまして、
この度Vim7.1をインストールして使ってみているんですが

コマンドをTABで補完出来ません(^Iとかでて)。
なにか設定がいるんでしょうか?

93:名無しさん@お腹いっぱい。
08/03/04 17:51:44
>>92
set wildchar=<Tab>

この辺はバージョン間で違いはないだろうから各自の設定次第だと思うけど。

94:名無しさん@お腹いっぱい。
08/03/04 18:07:42
>>93
素早い対応ありがとうございます。
無事に解決したみたいです!

まだ体質にマルチウィンドウがこびりついてはいますが
徐々に慣れていければとおもってはいます。

本当にありがとうございました!

95:名無しさん@お腹いっぱい。
08/03/07 09:13:21
vim7の矩形処理(Ctrl-v)で、まとめて文字を挿入したいのですが、
大文字のIを押しても挿入できないのは、何が原因なのでしょうか?
ちなみに、通常モードだと、Iは効きます。

96:名無しさん@お腹いっぱい。
08/03/07 09:59:53
shellからvimコマンドで、複数ファイルをウインドウ分割状態で開けますか?

・自分が知ってるやり方
(shell)vi a.txt
(vim):sp b.txt
→a.txtとb.txtがウインドウ分割で開いた!

・こうしたいというイメージ
(shell)vi -split a.txt b.txt
→a.txtとb.txtがウインドウ分割で開いた!


97:名無しさん@お腹いっぱい。
08/03/07 10:20:17
>>96
vi -o2 a.txt b.txt
で縦に並ぶみたいです。

横は知りません。
(-hを参照してやってみました。)

98:名無しさん@お腹いっぱい。
08/03/07 11:00:40
-hで-oのすぐ下に
-O[N] -oと同じだが垂直分割
というのがあるよ。

99:97
08/03/07 11:14:41
ぶ、藪蛇・・・

>>95
うちのVim7は出来ますねぇ・・・
何で動かないんでしょ

100:名無しさん@お腹いっぱい。
08/03/07 23:33:00
>>95
入力した後にESC押してないとか?

101:96
08/03/11 22:18:51
>>97-99
以下で出来ました!ありがとう。
$ vim-o *.dat

102:名無しさん@お腹いっぱい。
08/03/13 10:32:53
なんか廃れてきてますね・・・

Vim7の起動が遅いんですが何か問題があるんでしょうか?
6と比べると格段に遅い・・・

103:名無しさん@お腹いっぱい。
08/03/13 18:31:25
余分にプラグイン入れてるとか
:scriptnames
で起動時から読み込んだ全ファイルみて、
いらなさそうなファイルを削るとか

104:名無しさん@お腹いっぱい。
08/03/13 19:02:10
>>102
素のVimの起動時間はあきれるくらい速いよ。
$ time vim -u NONE -U NONE --noplugin -c 'quit'
$ time vim -c 'quit'
で比較してみるといいよ。
起動時間が遅くなる原因は基本的にvimrcと使ってるプラグインによる。

105:名無しさん@お腹いっぱい。
08/03/14 15:41:39
>>103
比べてみると相当ちがう・・・
6のプラグインを参考に7のを選別してみます。

>>104
NONEが
0.001u 0.000s 0:00.00 0.0% 0+0k 0+0io 0pf+0w
元が(たぶん)
0.002u 0.000s 0:00.00 0.0% 0+0k 0+0io 0pf+0w

でした。


・・・ところで起動するプラグインってどうやって編集するんですか?
検索の方法が悪く・・・

106:名無しさん@お腹いっぱい。
08/03/14 20:19:37
開くファイルの拡張子ごとにvimの挙動を指定するにはどうしたらよいでしょうか。
たとえば、foo.htmlのときはset nosmartindent、
bar.jsのときはset smartindentのようにしたいです。

107:名無しさん@お腹いっぱい。
08/03/14 21:23:08
>>106
簡単にすますならautocmd
:autocmd BufNewFile,BufRead *.html setlocal nosmartindent

:he autocmd

108:名無しさん@お腹いっぱい。
08/03/14 21:47:55
起動するプラグインを削る方法で一番簡単なのは、たぶん、単純に削除しちゃうこと。
でも、今何読み込んでるのか見てみたら、デフォの状態だと削れるの少ないなぁ

109:名無しさん@お腹いっぱい。
08/03/14 22:41:09
>>107
ありがとうございます。ドンピシャです!

110:名無しさん@お腹いっぱい。
08/03/20 16:26:42
挿入モードで現在のカーソル位置を

1行上はCtrl+k
1行下はCtrl+j

だと思いますが、

同じように左側や右側へ移動する方法があったら教えてください。

111:名無しさん@お腹いっぱい。
08/03/20 16:53:25
挿入モードで<Ctrl-J>て改行だと思ってたけど、
そういやカーソル移動するとかいうのもどっかでみたな
どっちにしろ標準機能でもそうでなくても imapするといい

普通直前の文字削除にあてられてる<C-H>にあてるなら
imap <silent> <C-H> <C-O>h
他には
imap <silent> <C-J> <C-O>j
imap <silent> <C-K> <C-O>k
imap <silent> <C-L> <C-O>l

どっちにしろ挿入モードで一つだけコマンドが入れられる<C-O>を調べるといい
:help i_^o

112:名無しさん@お腹いっぱい。
08/03/20 18:11:15
inoremap <C-H> <Left>
・・・

普通はこうする

113:110
08/03/20 18:19:10
>>111
ありがとうございます。無事設定できました。

ちなみ

>1行上はCtrl+k
>1行下はCtrl+j

は間違えちゃいました。本当は

1行上はCtrl+gのあとにk
1行下はCtrl+gのあとにj

でした。


114:111
08/03/20 18:25:09
>>111 は<C-O>の描画で荒れるので取り消しで

>>112にしたほうがいい
カーソルなんて思いもよらなかったぜ

115:名無しさん@お腹いっぱい。
08/03/21 01:15:42
vimで、ctrl+vで矩形選択した後、I{文字列}[ESC]
とやると、矩形選択した列のところに入力した文字列をまとめて挿入できますが、
同じことをjvimでやると、うまくできません。
矩形選択まではうまくいくのですが、その後がうまくいかないのですが、
なぜでしょうか?


116:名無しさん@お腹いっぱい。
08/03/21 01:27:48
たぶん、jvimがバージョン5ベースで、
vimにその機能が入ったのが、5.4だからじゃないか?(だよね?)

117:>>115
08/03/21 02:42:25
>>116
なるほど、jvimつかえねー


118:名無しさん@お腹いっぱい。
08/03/21 03:02:18
本家(g)vimのIM周りがもう少しマシになれば
jvimも成仏できるんだろうけどねー

119:名無しさん@お腹いっぱい。
08/03/23 12:18:41
OSX のターミナルで Vim7 を使っています。
挿入モードで日本語を入力して C-[ でノーマルモードに戻す際に
ことえりを off にする方法ってありますか?
OS 側でキーマップしないと駄目ですかねぇ。

120:名無しさん@お腹いっぱい。
08/03/23 16:52:01
inoremap <silent> <C-[> <Esc>:set iminsert=0<CR>
とかどう?

121:名無しさん@お腹いっぱい。
08/03/23 18:37:56
>>120
試しましたが、on のままです。

122:名無しさん@お腹いっぱい。
08/03/23 19:17:09
vim (笑)


123:名無しさん@お腹いっぱい。
08/03/23 21:25:54
>>119にちょっと便乗の質問です。
日本語入力時に3行下にカーソルを移動するとき、
IMEオフ→Esc→jjj→i→IMEオン→日本語入力
てな流れでやってるのですが、
IMEをオフしないでうまいこと使う方法ってありますか?

124:名無しさん@お腹いっぱい。
08/03/23 21:39:46
>>123
ctrl+o -> 3j
じゃだめか?

125:名無しさん@お腹いっぱい。
08/03/23 21:40:16
insertモードで普通にカーソルキー使えるんじゃない?

126:123
08/03/23 21:57:14
実はTeraTermからFreeBSDのVim7.1を使ってます。
情報後出しでほんとすんません。
>>124-125はIMEの入力窓が出てしまいダメです。
でもC-oは便利ですね。知りませんでした。

127:名無しさん@お腹いっぱい。
08/03/24 13:43:33
cinoptionsの
bN N が 0 でなければVimは最後の"break"を基準にして配置を行う。
って効かなくない?b1にしてもデフォルトと全然変わらないんだけど。

128:名無しさん@お腹いっぱい。
08/03/24 21:57:29
 = でフォーマットだときく。
cinkeys を設定すると入力中でもきくようになる
:set cinkeys+=;
とか
:set cinkeys+==break

129:名無しさん@お腹いっぱい。
08/03/24 22:13:29
>>128 本当だ。ありがとう。
これでb0スタイルからb1へ移行できるよ。

130:名無しさん@お腹いっぱい。
08/03/26 23:38:51
vim --version の -clipboard を +clipboard にする configure オプションってなんですか?

131:名無しさん@お腹いっぱい。
08/03/27 23:16:43
--enable-gui 的なものがあればとりあえず付くんじゃないか?
src/features.h の FEAT_CLIPBOARD の定義のとこに条件が書いてある。

132:名無しさん@お腹いっぱい。
08/04/03 02:34:41
mapをいじって、例えば<C-A>と<C-B>を交換したいとき
map <C-A> <C-B>
map <C-B> <C-A>
のように記述しても、予想していた動作になるんでしょうか?
それとも途中で<C-A>は<C-B>に上書きされて、
<C-B>は<C-B>のままになってしまうんでしょうか?

133:名無しさん@お腹いっぱい。
08/04/03 02:42:36
書いてる途中に気が付いて事故解決しました。
わかりやすいノーマルモード時の <C-A> と <C-X> を変えてやったら、
再帰マッピングですといわれて動作しなかったので、
nnoremap <C-A> <C-X>
nnoremap <C-X> <C-A>
としたら、AとBを交換できるような動作を実現できました。 すんません

134:名無しさん@お腹いっぱい。
08/04/03 19:15:47
>>132
:map等の再展開されるバージョンでそういうことをすると、
例えば<C-a>を押したときに<C-a>→<C-b>→<C-a>→<C-b>→……
と無限に再展開されてしまう。これは<C-b>を押した場合でも同じ。
キーの入れ替えをしたいなら:noremap等の再展開されないバージョンを使う。
# 一部例外はあるけど、その辺はhelp参照。

このケースに限らず、特に理由がない限りは:noremap等を使う方がいいよ。
:map等の再展開されるバージョンは副作用が多いから。
:map等を使うべきケースは
プラグインが提供してる<Plug>FooBar等にキーを割り当てる場合か、
あるキーを他のキーと同じ動作にしたい場合ぐらい。

135:名無しさん@お腹いっぱい。
08/04/06 22:53:05
610 名前:名無しさん@お腹いっぱい。 :2008/04/06(日) 22:36:00 ID:8IomVgt90
vimスターターパックつくったよ



611 名前:名無しさん@お腹いっぱい。 :2008/04/06(日) 22:42:38 ID:8IomVgt90
URLリンク(enjoi.blogdns.net)

136:名無しさん@お腹いっぱい。
08/04/06 23:19:27
ぁゃしぃ

137:名無しさん@お腹いっぱい。
08/04/09 12:03:37
ちょいと質問です。

Vim7(7.0.237 centos5)でソースコードのHTML保存をTOhtml使って試してるんですが、:colorscheme desert
なら色分けされて保存されるのに :colorscheme desert256 だと色が付きません。
どこが悪いんですかね。.vimrc?

同じ事をkaoriyaさんのgvimでやったら上手くできたんでコマンドが間違えてるってことはなさそう。

138:名無しさん@お腹いっぱい。
08/04/09 21:34:19
fURLリンク(ftp.vim.org)
最新版はどう?
256色対応はたしか7.1後だった気がする

139:名無しさん@お腹いっぱい。
08/04/10 20:20:49
インサートモードでスペースを押すと:echo "Hello"を実行して
インサートモードに戻るmapを書きたいのですがうまくいきません

imap <space> <C-c> :echo "Hello" <CR> <insert>
これだとノーマルモードでスペースを押したときみたいな挙動でした

140:名無しさん@お腹いっぱい。
08/04/10 21:11:56
>>139
:echo "Hello" する関数(戻り値は"")を作成して
inoremap <expr> か inoremap <C-r>= で呼ぶ

141:名無しさん@お腹いっぱい。
08/04/10 21:18:28
あるディレクトリ以下では新規作成時のデフォルト文字コードを変更みたいな事を実現するにはどうすればいいでしょうか?
ほかにもexpandtabにしたりしなかったりとかがやりたいです。
ご存じの方がいらっしゃいましたらご教示ください。

142:名無しさん@お腹いっぱい。
08/04/11 00:24:00
プラグインだと、こんな感じ。でも、これだと毎回ディレクトリ検索しちゃうのかな?
URLリンク(nanasi.jp)

俺は、ファイルにモードライン設定する方が好みだぜ

143:名無しさん@お腹いっぱい。
08/04/11 16:29:20
exrc じゃなかったかな。 h exrc

144:名無しさん@お腹いっぱい。
08/04/11 20:37:26
こんなのか

function! Fn1()
 setlocal encoding=utf-8
 setlocal expandtab
endfunction

augroup SetDirectoryOption
 autocmd!
 autocmd BufAdd あるでぃれくとり/* call Fn1()
augroup END


モードラインを新規ファイル作成時に自動的に記述するか、
自動的に用意されたものを使うように skeleton お勧め
help skeleton

145:名無しさん@お腹いっぱい。
08/04/12 01:45:22
C/C++でプログラミング中に:makeで出たエラーの箇所に飛んでくれるのはいいんですけど
/usr/include以下のファイルには飛ばないみたいな挙動にすることはできませんか?

146:名無しさん@お腹いっぱい。
08/04/12 09:58:15
話題に直接関係ないが、
/usr/includeで出るエラーってどんなだろう。

147:名無しさん@お腹いっぱい。
08/04/13 02:24:24
STLとかつかってたら普通にでると思う。

148:名無しさん@お腹いっぱい。
08/04/13 10:00:11
>>146
インクルード順序をしくってたりdefineミスったりしてもふつーに出るぞ。

149:名無しさん@お腹いっぱい。
08/04/13 22:43:42
>>145
autocmd QuickFixCmdPost
して、コンパイル後にgetqflist()でエラーリスト取得して
いらないのを省くとかでどうか

150:名無しさん@お腹いっぱい。
08/04/16 17:47:28
検索ジャンプを戻っていくコマンドで、
``は一個前に戻りますが、2個前、3個前…と戻るコマンドはあるでしょうか?

151:名無しさん@お腹いっぱい。
08/04/16 18:11:23
2とか3を前につけるんじゃダメ???

152:名無しさん@お腹いっぱい。
08/04/16 18:17:28

すまん誤爆。
できない。
普通に;とか+じゃダメですか、そうですか...。

153:名無しさん@お腹いっぱい。
08/04/16 18:27:51
>>150
戻る: <C-o>
進む: <C-i>

154:名無しさん@お腹いっぱい。
08/04/17 20:44:58
完全バイブルを読んでいる初心者の質問です。

ノーマルモードでEnterを押すとなぜかMRUが動いて履歴を表示します。
マッピングした覚えがないので気持ち悪いです。
どうせならノーマルモードでもEnterで改行できるようにしたいと考えました。
モードレス・エディタのような動きです。

map <CR> i<CR><ESC> →動きません(MRUが作動)。当たり前か...。
map <F2> i<CR><ESC> →希望通りに動きます。

<CR>にマップをあてる方法がありましたら教えてください。
何か定番のような書き方があるのでしょうか。

155:名無しさん@お腹いっぱい。
08/04/17 22:30:59
>>154
mapのところをnnoremapにするといい


156:名無しさん@お腹いっぱい。
08/04/17 23:19:48
>>155
おお、ありがとうございます。
ノーマルモードでリマップなしにするのですね。

>>154 の原因はMRU起動のマッピングだったようで、
マップを外したところEnterが希望通りに動くようになりました。

157:名無しさん@お腹いっぱい。
08/04/23 11:47:46
バッファ中のURLを相対URLに置換したいのですが、みなさんどうやってるのですか?

<befor>
URLリンク(dir1)
URLリンク(dir1)

<after>
./hoge.html
./foo.html

ヘルプは読んだのですが...ダメだ...orz

158:名無しさん@お腹いっぱい。
08/04/23 12:27:16
>>157
基準になるアドレスが
URLリンク(dir1)
なら

s/http:\/\/dir1\/dir2\//.\//
の次に
s/http:\/\/dir1\//..\//
そのまた次に
s/http:\/\//..\/..\//

みたいな感じでできると思う

159:名無しさん@お腹いっぱい。
08/04/23 13:09:47
158>>
ありがとうございます!
バックスペースの使い方がよく分かっていなかったようです。
助かりました。

160:名無しさん@お腹いっぱい。
08/04/23 13:56:55
>>157
:s#\<URLリンク(.*)

\ze と substituteの区切りは/以外に#とか使えること覚えとくと楽だぞ


161:名無しさん@お腹いっぱい。
08/04/23 14:10:26
\zeって何?

162:160
08/04/23 14:24:04
ごめん \zeはいらないわ

s#\<URLリンク(.*)

でいい
>>161
he \ze

163:161
08/04/23 14:34:17
>>162
サンクス

164:名無しさん@お腹いっぱい。
08/04/23 14:47:08
あ、スレが伸びてるw
ありがとうございます。

165:名無しさん@お腹いっぱい。
08/04/24 17:45:11
10.5.2 Leopard上でvim-cocoa 7.1.293を使っています。
構文ハイライトで、colorschemeファイルにてgui=italicと指定された部分が
斜体表示されず、代わりに下線付きで表示されてしまいます。
gui=boldの部分は、正しくボールド体で表示されます。
これを修正するには、どうすればよいのでしょうか。

166:名無しさん@お腹いっぱい。
08/04/25 00:50:01
>>165
URLリンク(lapangan.net)
で聞いた方が早いんじゃない?

167:名無しさん@お腹いっぱい。
08/04/25 22:27:11
Unix のコンソールでC言語のソースファイルを編集していて、コメントが navy で見ずらなかったんだけど
標準環境で :colorscheme evening とすればよかったんだね

168:名無しさん@お腹いっぱい。
08/04/26 17:20:37
windows gvim7.1を使い始めました。
ファイルをディレクトリを指定して保存したいのですが、
コマンドがわかりません。
すみませんご存知の方。教えてください。



169:名無しさん@お腹いっぱい。
08/04/26 17:24:08
>>168
そんなことで聞いているんなら
vimは、使わないほうがいいよ

170:名無しさん@お腹いっぱい。
08/04/26 17:27:12
>>169
確かにそんな気もします。


171:名無しさん@お腹いっぱい。
08/04/26 17:29:57
>>168
:w path/to/filename.ext
メニューにそれっぽいものがありそうな気もするけど。

172:名無しさん@お腹いっぱい。
08/04/26 17:30:25
>>168
エディタ ソフト紹介サイト
URLリンク(ringonoki.net)

ご希望のエディタがこちらにあると思います
有料だけど、秀丸がおすすめ

173:名無しさん@お腹いっぱい。
08/04/26 17:45:49
おまいら優しすぎ

174:名無しさん@お腹いっぱい。
08/04/26 17:51:04
>>171
おお。ありがとうございました!!
好きで馬鹿やっているわけではないんですが、あなたのような
頭がよくて優しい方のおかげで生きていられるんだなって思います。


175:名無しさん@お腹いっぱい。
08/04/26 17:54:08
馬鹿とか以前に取扱説明書ぐらい読もうね

176:名無しさん@お腹いっぱい。
08/04/26 17:55:56
マニュアルもチュートリアルも読まないわ板違いだわこれはひどいな

177:名無しさん@お腹いっぱい。
08/04/26 18:01:40
はい。すんません。去ります。

178:名無しさん@お腹いっぱい。
08/04/26 18:10:38
ここは UNIX 板のvimスレです。Windowsの人はこっちへどうぞ。

vim Part2
 スレリンク(software板)

179:名無しさん@お腹いっぱい。
08/04/26 18:27:17
久しぶりにvimの話題が読めると思ったのになぁ...

180:名無しさん@お腹いっぱい。
08/04/26 18:41:58
すれ違いかもしれませんが、vim について質問させてください。

ユーザー定義関数内で、ヤンクされた文字列を変数として扱うにはどのようにすればよいでしょうか。

function foo()
let bar = '最後にヤンクされた文字列'
...
endfunction

のように引数無しで foo を呼び出し、最後にヤンクされた文字列を対象とした処理を行いたいです。
ご教授ください。お願いします。

181:名無しさん@お腹いっぱい。
08/04/26 18:58:15
>>179
そんなあなたに質問させて頂きます

vi の機能だったか、vim の機能だったか、忘れたけど
USA と書くと United States of America と出る機能ってどこにあって、どうやって使うの?

あと Vim で文章を書いていて、現在の日時秒数を下の形式で即座に表記する方法は、ありませんか?
2008年04月26日(土) 18時51分14秒
20080426_185120

まあ、自分で調べるけどさ
自分にとって優先順位の低い事柄なので、後回しにしているんだけど

182:名無しさん@お腹いっぱい。
08/04/26 19:25:17
>>181
日時は適当にマップしとけばいいんじゃないの?
inoremap <Leader>time <C-R>=strftime('%Y%m%d_%H%M%S')<CR>

183:名無しさん@お腹いっぱい。
08/04/26 19:43:08
ご指名キタコレ

略語
:h abbreviate

現在日時挿入
autodate.vim

184:名無しさん@お腹いっぱい。
08/04/26 23:03:27
>>182
> inoremap <Leader>time <C-R>=strftime('%Y%m%d_%H%M%S')<CR>

マップという概念を理解していません><
でも、レスのヒントをきっかけにがんばってみます

>>183
> :h abbreviate

まだ手を出すには、早かったみたいです

> 現在日時挿入
> autodate.vim

locate したら、Vim6.4.9_1 標準環境にはなかった・・・
管理がめんどいので、極力カスタマイズしたくないんですが、
これは、しょうがないんですね


182さん、183さん、レス、ありがとうございました

185:名無しさん@お腹いっぱい。
08/04/27 00:03:00
>>180
let bar = @"
でいけるんじゃないか?

186:名無しさん@お腹いっぱい。
08/04/27 09:01:50
>>185
>let bar = @"
以下に、似たような質問があってさ。

Vim6スクリプトお勉強スレ
スレリンク(unix板:970番)
> 以下が、やりたい事をvim の疑似言語で表したものです。
> ここでは、:put を実行した時に出力される内容を変数に格納したいです
> let tmp = `put`
これも
let tmp=@"
だし。

「vim の機能や特徴を広く浅く知るまでは、スクリプトは止めた方がイイ」
というのがオレの自身の反省を含めた結論。

187:名無しさん@お腹いっぱい。
08/04/27 11:55:26
emacs-w3m ならぬ vim-w3m は無いの?

188:名無しさん@お腹いっぱい。
08/04/27 12:37:47
emacsにはなんでもあるんだな、うらやましい。

vimだとchaliceならあるけど...。

189:名無しさん@お腹いっぱい。
08/04/27 13:14:52
vimはエディタだからな

190:名無しさん@お腹いっぱい。
08/04/27 15:55:15
ブラウザはあったような気がする

191:名無しさん@お腹いっぱい。
08/04/27 23:28:10
Vim7をLinuxにインストールしたのですが
ターミナルからVimを起動し、コマンドモード(exモード?)でコマンド履歴を見ようと
Ctrl+f
をしても
^F
と表示されてしまいます。。(gVim7の場合はきちんと表示されます。)
どうすれば解決するでしょう??

192:名無しさん@お腹いっぱい。
08/04/28 00:11:16
>>191
:history でコマンド履歴が出力されるかどうか試してみてはいかがでしょうか?

193:名無しさん@お腹いっぱい。
08/04/28 09:47:41
>>191
ノーマルモードでq:もだめか?

194:191
08/04/28 10:07:30
>>192,193
ありがとうございます。
:historyコマンドが効かなかい事が発覚したので
パッケージ管理ソフトでVim-enhancedってのをインスコしたら解決しました。助かりました!
ちなみに鳥はPCLinuxOSでした。



195:165
08/04/29 00:01:46
>>166情報ありがとうございます。Mac専用サイトの方で聞いてみます。

196:名無しさん@お腹いっぱい。
08/04/29 01:22:53
vim file://localhost/home/myhome/my.txt
をやると、絶対パスの
/home/myhome/my.txt
でなく、相対パスの
./home/myhome/my.txt
を見に行ってしまうんだが、こういうもんなの?

197:名無しさん@お腹いっぱい。
08/04/29 01:27:51
>>196
/が1個足りないんじゃ? file:///〜 ってやってみたら?

198:名無しさん@お腹いっぱい。
08/04/29 01:49:33
localhost がディレクトリとして解釈されてしまい、絶対パスの
/localhost/home/myhome/my.txt
を見に行ってしまう。
ホスト名を入れちゃいけないのだろうか。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5192日前に更新/188 KB
担当:undef