トップページ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あたり。
0082名無しさん@お腹いっぱい。2005/12/17(土) 20:09:06
Kaoriya版vim 6.4.004 for windowsのgvim使ってますが
_gvimrcで
set scroll=2
としても、設定が上スクロール(C-U)にのみ反映されたり、
(C-U)も(C-D)も半ページスクロールしたりするのですが
書く場所が間違っているのでしょうか?
(6.4無印でも同じ症状でした)

ちなみにコマンドラインで
:set scroll=2
となると、望みどおりの挙動になるし
あと、ftplugin/のファイルタイプごとのプラグインにset scroll=2と書くとやっぱりOK…

0083KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/17(土) 20:20:27
>>82
:help 'scroll'を読むと、ウィンドウの高さが変わるたびにリセットされる、とありま
すね。単純に'scroll'が設定された後にウィンドウの高さが設定(決定)されているので
しょう。

解決になるかはわかりませんが、_gvimrcの中にguiコマンドを書き、その後ろで
'scroll'を設定するようにしてみてください。

:gui
:set scroll=2
0084名無しさん@お腹いっぱい。2005/12/17(土) 20:45:17
>>80
ファイルを開いた時に、末尾に改行があればendoflineが、なければnoendoflineが
自動的に設定されるんだけど、74のスクリプトでは、勝手に改行を削除しちゃわないように
noendoflineの時だけコマンドを実行するようにしてるので、元から改行が付いている
ファイルの改行を削除したいなら、ファイルを開いてから :set noendofline と設定して、
それから保存しないといけない。というわけでそういうことじゃないかと...。
0085名無しさん@お腹いっぱい。2005/12/17(土) 21:03:51
>>83
ヘルプに書かれていたとは…見落としてました。どうもありがd( ´Д⊂ヽ
しかしリサイズするとscrollを変えてしまうウィンドウってWindowsのウィンドウじゃなくて
vimのウィンドウなんですね。うーむ、taglistとかquickfixもしたいし…

と、必死で再度ヘルプを読んでいたらC-E C-Yで1行スクロールできるんですね。
あとnoremap <C-U> <MouseDown>みたいのもできるとは…
恥ずかしい。スレ汚しスミマソン
0086KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/17(土) 21:31:21
>>85
helpのどこだったかは忘れましたけど、C-UやC-Dで常に決まった行数スクロールさせた
い場合は、<C-Y>/<C-E>を必要な回数押すマップを書け、という記述を読んで失笑した
記憶があります。
0087762005/12/17(土) 21:57:11
>>81
gui
:set visualbell t_vb=
でビープ音とフラッシュともに消去出来ました
guiの後に書かないとだめなんですね
ありがとうございました
0088名無しさん@お腹いっぱい。2005/12/18(日) 01:21:12
>>86
発見しました。
:h scroll-smooth
0089名無しさん@お腹いっぱい。2005/12/18(日) 02:02:29
http://openlab.jp/skk/wiki/wiki.cgi?page=SKK%BC%AD%BD%F1
にある辞書をSKK-JISYO.zipcodeとSKK-JISYO.office.zipcode(郵便
番号のエントリが大量にある)を合体させた辞書でg/で1を検索させ
るとvimがSEGVで落ちました。

cmigemoを単体で起動して1を検索したら、243070バイトの出力があ
りました。

vim 6.4 cmigemo 1.3devです。

バックスペースはこのようになっています。

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 4577)]
0x0816290c in regnext (p=0x408825c9 <Address 0x408825c9 out of bounds>) at regexp.c:4692
4692        offset = NEXT(p);
(gdb) bt
#0  0x0816290c in regnext (p=0x408825c9 <Address 0x408825c9 out of bounds>) at regexp.c:4692
#1  0x0815ee54 in regtail (p=0x40716021 "\226", val=0x4086d011 "\003") at regexp.c:2240
#2  0x0815c838 in reg (paren=3, flagp=0xbfffd0a4) at regexp.c:1053
#3  0x0815dcf4 in regatom (flagp=0xbfffd0dc) at regexp.c:1650
#4  0x0815cdda in regpiece (flagp=0xbfffd11c) at regexp.c:1245
#5  0x0815cd2c in regconcat (flagp=0xbfffd15c) at regexp.c:1206
#6  0x0815cadd in regbranch (flagp=0xbfffd198) at regexp.c:1121
#7  0x0815c793 in reg (paren=0, flagp=0xbfffd1d8) at regexp.c:1034
#8  0x0815c30c in vim_regcomp (
    expr=0x40615008 "\\%([浬十什XGKMYZETnμmcyzdafpP百h千1I壱一弌壹1]\\|
    町\\_s*田\\_s*\\%(郵\\_s*便\\_s*貯\\_s*金\\_s*地\\_s*域\\_s*文\\_s*化
    \\_s*活\\_s*動\\_s*支\\_s*援\\_s*施\\_s*設\\_s* \\_s*@\\_s* \\_s*東\\
    _s*京\\_s*都\\_s*町\\_s*田\\_s*市\\_s*"..., re_flags=1) at regexp.c:852
0090KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/18(日) 02:21:19
>>89
詳細な報告をありがとうございます。

> cmigemoを単体で起動して1を検索したら、243070バイトの出力がありました。

Vimに対しては改行無視用のパターンが付加されるので、1.5倍くらいは出力されている
のでしょうね。もっともそれの有無に関わらず、単純にVimが扱える正規表現を超えて
いるように思われます。できれば辞書のエントリ数を減らしてみて、cmigemoの出力が
減れば動くようになることを確認していただけますか。
# 生成されたパターンの内容によって落ちているのではないことを確認したいのです。

生成されるパターンが大きくなってしまうので、既にk,s,tあたりについては1文字では
C/Migemoが動作しないようにしているのですが、本来コレはC/Migemoで判断できるべき
なんですよね。出力されるパターンの最大バイト数を指定できて、それを超えたらエ
ラーとなって、パターンが取得できないという流れが自然でしょう。
# 暫定的にVim側で対応するつもりではいます。

> バックスペースはこのようになっています。
typoだとは思われますが念のため「バックトレース」ですね。
0091名無しさん@お腹いっぱい。2005/12/18(日) 02:41:37
>>90
1から始まる郵便番号のエントリが7664個あり、そのうち最初の
3000個を消した辞書と最初の3000個以外を消した辞書では正常に動
きましたので、あるパターンによって落ちているのではないと思い
ます。

>> バックスペースはこのようになっています。
>typoだとは思われますが念のため「バックトレース」ですね。
ですね。
0092KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/18(日) 12:19:34
>>91
次のパッチをあててみてください。C/Migemoが返したパターンが一定の制限(現在は
60000バイト)を超えたら、正規表現ルーチンに渡さないようになっています。まだ落
ちるようでしたら、その60000という制限を30000,10000,5000という感じで厳しくし
てみてください。よろしくおねがいします。
0093KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/18(日) 12:22:12
begin-base64 644 patch.tar.bz2
QlpoOTFBWSZTWeaJ4IQAAi7/zugwAIBZ////bq++e////7oQAAIAAECgAAAIQAK9rSxm2NISoI0p
6niGRPTSaNlGg00aHojEMgAANABoNTBEI0xTINDRoAA9QAANAAA0NAOMmCaGQyMjJoaANBkYQDQa
NMhiGgAkiSekwIaTaT0Uemp6gA0A0ADQPKeUAaA02ceT98qAJogkEjZ6bs8OY0YkRDJAMJ8tzGFl
NEQyIx087OYECFnLzzF4JXFS2+D9pVWtbjF4qhCIr88YKrrvJNOgLUDI+rJCsxIJBdDS4XFW8HOj
Ol8tJ140OQSVvehEyYuD4knr9vkM+lCizV23rm6l2eBdhhk3aFwMQeaPI5GZ5UXMECxzT5+9PzWG
GkGNjc9lQTO98khUPcZpdkOK9JM7u/WUy0gVsmZ0cksdA8CoaQUNib+GWaYtQBrCaBdMIolIVAu9
5hRszmqi3mYGgUgJO4iArkBYEtKq4+KRyqGExoT2NMAwZaYtCoO9TDHoGZRElmE0uEqkIw9Y4nER
MGCCrTsDgURFOU4kOgo7T2ciqiwWVaqCihqwg0AphFE06PG5fCUZ1oicaLJqzwdp0uBuITLUuH1n
qtwxNpxh7DYa74TIclx6x9x7mHPCHwY3THVkciOXincbfRPWzDbhqimspF/RxRHhSkPbjwIRjWcB
YxtxOfIMUB8CuFsYjIovBTBEQAyAtVQHwM+59yCw4WEn7cgLoNrv3RYdMQTWMO8hH8p8uShMfFBI
HyJLUEM0QwGXEJmwm/fIKDcLEWQZgy2uWsVhdrGxECOAwoMasJP4NjlnpTnTuJy4uWDboDKSUdgr
03Pbvpz6RT8uquJSg0O2YgoEHjXbkaFvCWCZS7VQG9EitDTouoWTH5GMGVGPJE0Cot/C4PdZgMiM
I2cLwnMkpUUNSZBsVKDVAam9QMfMMCocIb2m9Y7PEmmGMiecseohWSIIB7dX9QaSIjHYD91Bobjh
iRAV0BCSGm5l/so2hAH+LuSKcKEhzRPBCA==
====
0094名無しさん@お腹いっぱい。2005/12/18(日) 13:31:27
>>93
60000で落ちなかったので落ちる値を探してみたところ731425で落
ちなくて731426で落ちました。2つのマシンで試しましたが、両方
ともその値で落ちました。
0095KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/18(日) 14:09:15
>>94
わざわざupper limitまで試して調べていただいてありがとうございます。とりあえ
ずは安全なラインということで60000で行くことにします。
0096KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/18(日) 14:25:08
>>95 一応60000という数字について補足説明しておきます。

正規表現全体については、メモリの許す限り大きなパターンを指定できそうなんです
が、個々の要素、たとえば本事例では/\|のbranchなどには何らかの上限が存在するよ
うです。
# というのも正規表現のところをちゃんと読んだのは、もう何年も前なんで細部を忘れ
# ているんですよね orz

もちろん要素毎にサイズ制限を考慮した、C/Migemoの有効化制限ができれば理想です
が、ちょっと手間ですし実用上その効果にもさほど差がないと思われるので、それらの
要素に絶対に大きなパターンが投入されないことを保証する意味で、十分なマージンを
考慮しての60000という数字です。
0097名無しさん@お腹いっぱい。2005/12/18(日) 18:34:38
香屋さん配布のchaliceの場所にsvn
で管理出来るとあり

svnのwindowsのバイナリパッケージを落としたのですが
日本語メッセージ関連で起動時に文字化けしてしまいました。

英語と文字化けが混じります。

muttなどのケースでは配布バイナリには付属で色々入っていて
簡単だったので(正常起動に必要なパラメータ、起動スクリプト)

手本が見当たらないので正常起動出来ませんorz...

windowsコマンドラインでのsvnは使えないのでしょうか?

../ja/..とiconv/cp932,euc-jpなど
色々あったので日本語で動くと思う(ように思う)のですが

GUIインストーラなら正常起動するのかな?
zipのコマンドライン版を入れたいと思いました。

もし使われている方や詳しい方がいたら教えて欲しいです。

スレ違いかもしれませんが書くスレがいまいち不明なので
ごめんなさいです(^^;;
0098KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/19(月) 00:30:38
>>97
環境変数APR_ICONV_PATHに、svnのディレクトリにあるiconvを指定してください。
C:\svnにインストールしたのならば
    set APR_ICONV_PATH=C:\svn\iconv
こんな感じです。私はdiffの中に日本語メッセージが混ざるのを嫌って、
share\locale\jaを適当にリネームして無理やり英語メッセージで使ったりしてます。
0099972005/12/19(月) 03:45:29
正常に表示されました。弊害もあるんですね。

起動バッチにしたら
少し変?ですが文字化けしなくなりました。

起動してぱーっと流れて消えちゃうので
そのままstart /Bで起動すると表示が少し変ですが

ありがとうございました
0100名無しさん@お腹いっぱい。2005/12/19(月) 17:32:42
....for .... {
........do_something
....}
のようなコードがあったときに(. は半角スペース)、
行の先頭から5文字目に # の記号を入れたいときは
どうすればできますか?
0101名無しさん@お腹いっぱい。2005/12/19(月) 17:57:49
C-vで5文字目を縦に選択し、I#<esc>
0102名無しさん@お腹いっぱい。2005/12/19(月) 20:43:59
>>101
デキター
0103名無しさん@お腹いっぱい。2005/12/19(月) 21:36:14
gvim + GTK+2でimactivatekeyが機能するインプットメソッドってどれ?
うちのFreeBSD6ではuimとscimはダメっぽい。
0104名無しさん@お腹いっぱい。2005/12/19(月) 21:37:14
>>103
kinput2
0105名無しさん@お腹いっぱい。2005/12/19(月) 21:38:13
>>103
uim-gtkでuse-with-viを使えば、それなりに便利
0106名無しさん@お腹いっぱい。2005/12/19(月) 23:16:32
>>104
kinput2も同じくダメでした。入力はできるけど自動的にスイッチしてくれない。
>>105
uim-gtkは見つけられず。uim-ximとは別もんですよね。portsでは入らないんだろうか。
そのうちなんとかして試してみます。

どうもありがとう。
0107名無しさん@お腹いっぱい。2005/12/19(月) 23:26:59
>>106
uim-gtkはgtkのimmoduleですよ。
geditとかで右クリックするとIMの選択肢の中にあるuimってやつ。

>kinput2も同じくダメでした。入力はできるけど自動的にスイッチしてくれない。
うーん、おかしいな。imak=s-spaceにしてますか?
0108名無しさん@お腹いっぱい。2005/12/20(火) 00:45:23
kinput2はGTK_IM_MODULE=ximと設定すると入力できなかったんで外してたんだけど、
そのせいでuimが選択されてただけでした。というわけでkinput2では普通に入力すら
できてないです。たぶん"Warning: Input Method Open Failed"がエラーメッセージ。
xtermには入力できるんだけど、なんでだろ。

uimは.uimに
(require-module "anthy")
(define anthy-use-with-vi #t)
と書いて、gvim右クリックからuimを選択してやってみたけどあんまり変らなさげ。
0109名無しさん@お腹いっぱい。2005/12/20(火) 00:54:00
(define anthy-use-with-vi? #t)
が正解です。素直にuim-prefを使おう。
0110名無しさん@お腹いっぱい。2005/12/20(火) 01:18:40
どうもすいません。けど?を付けてもなにも変りませんでした。
uim-prefにもそういう項目はないので、根本的になにか間違ってるのかも。
0111名無しさん@お腹いっぱい。2005/12/20(火) 01:36:17
>>110
あ、1.0.0からでした。たぶん。
0112名無しさん@Vim%Chalice2005/12/20(火) 12:16:24
vimで現在開いているドキュメントを例えばブラウザに渡すような事
を出来ないでしょうか?ペルプには「新しいコマンドを作る」
Key mapping...とありこれで出来るのかなと思ったのですが
イマイチよく判らないですorz...

例えばmuttのマクロみたいに参照ドキュメントを%sと渡したいです
htttp//..と書かれていると飛びたくなるんです

れど飛べないのでorz...
無理でしょうか?使い勝手を良くしたいです
御先輩方のお知恵を貸してください。
0113名無しさん@お腹いっぱい。2005/12/20(火) 13:10:17
>>112
chaliceでできているじゃないか。
0114名無しさん@お腹いっぱい。2005/12/20(火) 14:44:44
すみません。
let chalice_exbrowser ...などは平時にも効くのでしょうか?
howm.vimだとshell exec?みたいな関連付けで
開かれるのですが

chaliceのなにかが効いてるとは判りました。
素のなんでもないドキュメント見てるときに
さっと割り当てで開きたいです

ブラウザ>エディタの逆をしたく

エディタ>ブラウザとしたくなるんです
色分けで色付いてるしなんか開きたくなります。
設定で出来る物なんでしょうか?
chaileのなにかを呼び出すのでしょうか?

質問ばかりですいません。他エディタのクリッカブルURL
のような感じになってるグローバル設定みたいな風
にvimをしたいです。

howmやchaliceの中だけじゃなくhttp:// file://に反応させたいんですが
無理かな
0115KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/20(火) 14:57:28
>>114
http://www.kaoriya.net/testdir/openurl.vim

私はコレ使ってます。要alice.vim
    Ctrl-] でunder cursorのURLにジャンプ
    :OpenUrl % で現在のファイルをブラウザに送る。
ただ後者はカレントディレクトリが異なると動かないことがあります。
0116名無しさん@お腹いっぱい。2005/12/20(火) 15:55:12
.vim/ftplugin/php.vimに
set fileencoding=utf-8
と記述して新しくファイルを作成する際にUTF8で開くように設定したのですが
UTF8以外で書かれている既存のPHPファイルを開く場合でもUTF8に変換されてしまいます。
既存のファイルを開く場合は文字コードの変更をしないようにしたいのですがどの様にすればよいのでしょうか。

.vimrcにはぐぐって見つけた日本語の文字コード自動認識スクリプトを使っています。
0117114@Vim%Chalice2005/12/20(火) 16:12:08
ありがとうございました。shell execで動きました。
少し警告が出ますが、希望どうりになりました。
しかしMozzila重い(^^;;
chaliceではテキストブラウザ割当てで快適に出来たのでと...
テキストブラウザ割当たいのですが読んでも判らなかったです。
でもこれで踏みたい願望は叶いました(^^
ありがとうございました。

OpenUrlは第一引数までしか拾ってくれませんでした。
%が引渡されてブラウザが起動せずブラウザ指定で起動してもファイルが渡せないです。

:OpenUrl"lynx"
:OpenUrl w3m

windowsのせい?かもしれないです。

ありがとうございました。快適になりました。
0118名無しさん@お腹いっぱい。2005/12/20(火) 16:35:45
vimのコマンドラインで"q:"とやると過去のコマンドの履歴が表示されますが、
ここにある
  46 e .
というのを元にhistoryコマンドの"!46"と同じような感覚で実行するにはどうすればできますか?
0119名無しさん@お腹いっぱい。2005/12/20(火) 21:36:54
gvim 6.4 + kaoriyaパッチでim-xim + kinput2 3.1を動かすと固まりますね。
0120名無しさん@お腹いっぱい。2005/12/21(水) 00:45:31
「Libiconv DLL 1.10-20051016 for Windows」を入れて
yahoo ニュース( ttp://headlines.yahoo.co.jp/hl ) のソースを読む(まっつんさんのスクリプトを使っています)とEUCと判断してくれません
1.9.1 だと正常に表示できます
香り屋さんの Headline 使っているんですけど yahoo ニュース のヘッドライン拾うと同じように化け化けになってしまいます
原因は判るでしょうか
vim は 6.4.004 です
0121KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/21(水) 02:08:57
>>120
EUCのページで使われることのある文字化け対策文字(0xFDFE)が入ってますね。この文
字はEUC-JPとしては不正な文字であるため、香り屋で配布しているLibiconv 1.10系列
(改造版)は、この文字に対応していません。対策は立っていません。困りましたねぇ。
0122名無しさん@お腹いっぱい。2005/12/21(水) 05:25:33
>>121
そうですか
Headline は便利なんでちょっと捨てられないです
残念ですが前のバージョンに戻してみます
ありがとうございました
0123名無しさん@お腹いっぱい。2005/12/21(水) 12:29:37
なんでカーソルの斜め移動が出来ないのは不具合ですか?
0124名無しさん@お腹いっぱい。2005/12/21(水) 13:01:03
>>123
ネットハックではないので。
0125名無しさん@お腹いっぱい。2005/12/21(水) 13:11:54
>>123
:se nogridbug
0126名無しさん@お腹いっぱい。2005/12/21(水) 20:16:27
Vim7 + GTK+ 2 GUI + SCIM + GTK_IM_MODULE=xim な環境で
imactivatekeyによるIMの制御ができるようになるパッチ。
自分専用のとりあえずの変更なんで、必要な人だけどうぞ。

begin-base64 644 mbyte.c.diff.gz
H4sIAOY1qUMAA6VTXXOaQBR9ll9x40MLIhGNWotjqq0040RNRtLp9KU7CAvuRIHZXRKdJvnt3QUk
0kkfOuVhv+6959w9Z/FJEIBBYdAP/J7X9vuDjg+Meq3d+sDxuacYhgFu6+Sk5qQRTLEH7QGYF9bF
B6s3gI5p9hRd12FdSf2O/Sy10xYZlmlavW6eOh6D0TUH3WanD3q2aH+E8ViBGoiPBKDiBxxx45If
EgxnI7iaXqNr+we6XdmOo4m8GsU8pRHcrb7ZQwUUo6zcuQniMcJ7wjhDu9jHquptXIpSaGj1ehPm
k+XVYnKraUXRLzHXyA4xzJHrcfKA1a+TuWNrQ8WQoVYD6tZWwNZBDAmJQgY5ehN4HIZbDCnDEAdl
+BwaLVnpcJdj+Dk6Ug4zJtFjHnhXtiLPszZkP15K12lgXK5RgsiORAxTDiP4jGaLm6mNljdLe3jM
LYBG8HJK8SwHvGX4X3Dnx+pX3Kdq5xlsRfdcwOdMJ7kqgiG/FwzIiyOO9xwFZMsxRff4kFDMmLon
XhMyg4XEelYoNC6knC2kePrfbpcHqm6diW0otkykp0zVStRTqWdLx17daSJSe1sIGSmwT8HgU6mQ
aM36w4acR0pdIfuymM5nS/sNNoZd6m3+i41t4sfsWZf3DFOC0sQX3EiwsZiq0p4mHJ9xUZdxIIp9
6j6ivK1XjOr/JLwGMQpbpnH0nkNuYW4aA76hcRpuxJz5VfgsFRA7wmRBbo3yG+XBuVJgBAAA
====
0127名無しさん@お腹いっぱい。2005/12/22(木) 19:30:46
こんなところに出して…
著作権…
しかもXIM…
0128名無しさん@お腹いっぱい。2005/12/22(木) 22:38:51
gvimはIMをコントロールする手段として

IMをonにするときは
  imactivatekeyをIMに送る
IMをoffにするときは
  gtk_im_context_reset(xic);
  または
  gtk_im_context_set_use_preedit(xic, FALSE);
  gtk_im_context_set_use_preedit(xic, TRUE);
  を呼ぶ

ということをしていますが、gtk_im_context_resetでIMがoffにな
るとは限らないし、gtk_im_context_set_use_preeditは"HACK for
Ami"です。

IMはgtk_im_context_resetでoffにならないといけないということ
でしょうか。

imdeactivatekeyのようなオプションがあれば嬉しいのですが。
0129名無しさん@お腹いっぱい。2005/12/23(金) 00:10:12
詳しくない人ですが。
スイッチのたびにim_contextを再初期化するのが確実じゃないだろか。
ただ、現状でワークアラウンドを重ねてもしんどいだけだと思ったり思わなかったり...。

gtk_im_context_set_active
gtk_im_context_get_active
im_active signal
なんてのを作ってもらうのがホントは楽だよねぇ。
0130名無しさん@お腹いっぱい。2005/12/23(金) 00:13:00
>>129
>なんてのを作ってもらうのがホントは楽だよねぇ。
ですね。
0131名無しさん@お腹いっぱい。2005/12/23(金) 01:25:56
>>116
if !filereadable(bufname("%"))
  set fileencoding=utf-8
endif
もしくはautocmdのBufNewFileイベントで処理するとか
0132名無しさん@お腹いっぱい。2005/12/23(金) 01:39:14
>>118
:help histget() にずばりの例があるよ。
0133名無しさん@お腹いっぱい。2005/12/23(金) 09:42:51
windows の gvim 使っているんですが ascii と日本語を別々なフォントに割り当てることは出来ないでしょうか
xyzzy みたいな感じで
0134名無しさん@お腹いっぱい。2005/12/24(土) 02:34:28
>>133

FontLink機能を使ってみては。
blue.ribbon.to/~akene/fontlink.htm
0135名無しさん@お腹いっぱい。2005/12/24(土) 17:45:56
vim起動時のコマンドライン引数を取得することはできるでしょうか?
(シェルスクリプトの$[0-9]のように)

何がしたいと言いますと、_vimrcに
if {"-c Chalice"を付けてvimを起動した時}
    let loaded_minibufexplorer = 1
endif
と書いて、Chalice起動後に、MiniBufExplorerが起動しないようにしたいのですが。
0136名無しさん@お腹いっぱい。2005/12/24(土) 18:18:55
引数のファイル名ならargc(),argv()でとれるけど…
vim --cmd "let loaded_minibufexplorer = 1" -c Chalice
ではどう?
01371352005/12/24(土) 18:47:10
>>136
--cmdでうまくいきました!ありがとうございます。

実は
vim -c "let loaded_minibufexplorer = 1" -c Chalice
と試してみて、なんでうまくいかないのかなあと思っていたのですが、
ヘルプをよく読めばよかったですね。
:h --cmd
> {command} will be executed before processing any vimrc file.
:h -c
> {command} will be executed after the first file has been read
beforeとafterの違いがあったとは気づきませんでした。
0138名無しさん@お腹いっぱい。2005/12/24(土) 21:32:28
[]に囲まれた特定の文字列だけをハイライトさせるにはどう設定すればできますか?

set some_cmd=Foo,Bar
とやったら
[Foo]と[Bar]だけハイライトされて[Baz]は色が変わらないようなものを探しています。
0139名無しさん@お腹いっぱい。2005/12/24(土) 21:56:03
>>138
:set hlsearch
で、
/\[Foo\]\|\[Bar\]
で良くないですか?
0140名無しさん@お腹いっぱい。2005/12/24(土) 22:07:30
永続化させたいならこうかな。
syntax match some_cmd  /\[Foo\]\|\[Bar\]/
hi some_cmd ctermfg=red
0141名無しさん@お腹いっぱい。2005/12/25(日) 22:32:11
vim + qt ってないよね?

俺が実装してやるか
0142名無しさん@お腹いっぱい。2005/12/25(日) 23:06:02
>>141
がんばれ。
だけどkvimってのがあるぞ。
0143名無しさん@お腹いっぱい。2005/12/25(日) 23:13:25
むしろ今はyzisに期待
0144名無しさん@お腹いっぱい。2005/12/28(水) 14:35:52
>>138
\[\(Foo\|Bar\)]
]は\付けなくていい

大文字小文字無視なら \c を追加 (\cはどこでもいい)
\c\[\(Foo\|Bar\)]
\[\(Foo\|Bar\)]\c

大文字無視なので実は正規表現自体も全部小文字でいい
\c\[\(foo\|bar\)]

単語を増やしたければ \|Word を追加していく
\[\(Foo\|Bar\|Word1\|Word2\)]

[]自身をハイライトに含めたくなければ(つまり中身だけハイライト)
\[\zs\(Foo\|Bar\)\ze]

以上全部
\c\[\zs\(foo\|bar\|word1\|word2\)\ze]
0145名無しさん@お腹いっぱい。2005/12/29(木) 05:26:03
filelist.xml無しでnetupvim1.6つこうたらvim6.3にメジャーバージョンダウンしてもうた・・
0146名無しさん@お腹いっぱい。2005/12/29(木) 15:33:53
windows上でgVimを使っています。

拡張子が C や cpp でないファイルであっても、C言語と同じようにハイライト表示させたいのですが
C言語のシンタックスを使うかどうかというのは、どこで判断されてるのでしょうか?

runtime/syntax/c.vim を見てみましたが、それらしい記述を見つけられませんでした
0147KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/29(木) 16:00:21
>>146
:set ft=c
:he 'filetype'
0148名無しさん@お腹いっぱい。2005/12/29(木) 16:36:50
>>147
ありがとうございます
うまくできました
0149942005/12/31(土) 04:29:32
migemoでcを検索したらvimが落ちました。
>>91と同様にパターンによって落ちているのではないことを確認しました。
落ちないパターンサイズの上限は42546バイトでした。
0150名無しさん@お腹いっぱい。2006/01/02(月) 18:40:28
閉じカッコをやったときに、対応するカッコへジャンプして、またもとの場所へ戻るようにするには
どうすればいいですか?
0151名無しさん@お腹いっぱい。2006/01/02(月) 19:02:24
>>150
%
0152名無しさん@お腹いっぱい。2006/01/02(月) 19:27:27
smの話じゃねーの
0153名無しさん@お腹いっぱい。2006/01/02(月) 19:31:11
>>150
:set sm
0154名無しさん@お腹いっぱい。2006/01/02(月) 19:40:27
どうもありがとうございました。

探していたのは、 sm でした。
0155名無しさん@お腹いっぱい。2006/01/03(火) 12:20:24
smって何ですか?やってみたけど何が起こってるのかわかりません。

:he smをEXCITE翻訳にかけると
「」 : 代用品と同じです」が、いつも'魔法使用します'。
と出てきて意味がわかりません。
0156名無しさん@お腹いっぱい。2006/01/03(火) 12:41:31
>>155
h 'sm'
0157名無しさん@お腹いっぱい。2006/01/03(火) 15:24:34
世界まるごとショウマッチ
01581552006/01/03(火) 23:41:51
あ、わかった。ども。
0159名無しさん@お腹いっぱい。2006/01/04(水) 14:15:44
+更新ばっかやってたから新スレ移行したの気付かなかった
0160名無しさん@お腹いっぱい。2006/01/05(木) 11:45:17
emacs で使われている
  # -*- conding: utf-8 -*-

  # vim:fileenconding=utf-8
と同じ働きをさせるようなvimscriptはありますでしょうか?
0161名無しさん@お腹いっぱい。2006/01/05(木) 12:45:30
>>160
ない
0162名無しさん@お腹いっぱい。2006/01/06(金) 21:09:38
viには、Emacsのauto-fill-modeみたいな機能はありますか?
0163名無しさん@お腹いっぱい。2006/01/06(金) 22:53:35
vi にはない。
0164名無しさん@お腹いっぱい。2006/01/07(土) 01:29:04
vimにはありますか?
0165名無しさん@お腹いっぱい。2006/01/07(土) 14:17:14
あるけどあんまり賢くない。
自動整形はOnTheSpotと相性最悪。
手動でいいなら香り屋のformat.vimが便利。
0166名無しさん@お腹いっぱい。2006/01/08(日) 00:05:14
Kaoriya 配布の Win版 VIM 6.4 + iconv 1.10 で質問
なんか急に日本語のエンコード自動判別が出来なくなったんだが
なにが原因?

試しに、
:if has('iconv')
: echo "HAS ICONV"
:endif
ってやったら
HAS ICONV って表示されました

ついでに、エンコード指定でファイルを開く方法も教えてけろけろ
0167名無しさん@お腹いっぱい。2006/01/08(日) 00:10:18
>>166
e++enc=hogehoge filename
0168名無しさん@お腹いっぱい。2006/01/08(日) 00:45:59
>>167
ありがとー


色々試したのですが、
15535byte を越える行を持つeuc-jp、euc-jisx0213なファイルを
開く場合に変換の失敗が発生しているようです
保存する場合も同様に失敗しました
また、その行の行末を ASCII な文字で書いてやると保存に成功しました。

何故か、utf-8で保存するのはOKでした。

なにやらよくわかりませんが、
ご報告しておきます。
0169名無しさん@お腹いっぱい。2006/01/08(日) 00:47:49
>>168
追記
>>167の通りにエンコード指定を予めしても開くのに失敗しますた
0170KoRoN@Vim%Chalice ◆8XALICEsdk 2006/01/08(日) 01:34:00
>>166
netupvimの最新版を使ってますか? そうでない古いバージョンには、文字化けを引き
起こすバグが知られています。
0171名無しさん@お腹いっぱい。2006/01/08(日) 01:42:09
すいません、>>166ではないのですが質問。

>>170
> 文字化けを引き起こすバグ
これは、>>61-70の話:
 >>70
 > libiconvが使っているCランタイム(MSVCR71)と、Vimが参照して
 > いるCランタイム(MSVCRT)が異なっていました。そのため変換
 > バッファがちょうど2バイト文字を切断している際に、libiconvが
 > 発生させていたエラーをVimが捕捉できておらず、それにより変換ミスとして
 > 扱っていたことが原因です。
でしょうか?
0172KoRoN@Vim%Chalice ◆8XALICEsdk 2006/01/08(日) 02:01:17
>>171 その通りです。
01731712006/01/08(日) 02:16:25
>>172 了解しました。ありがとうございます。
01741662006/01/08(日) 02:46:07
>>170
すいません、netupvim使っていたんですが
インストールするフォルダ間違えてますた。

正:gvim\netupvim.exe
誤:gvim\netupvim\netupvim.exe

フォルダ直して試したら問題が解消されました。
ありがとうございました。

マニュアル読み飛ばしてごめんなさい
何回も入れてたから適当になってた…('A`)
0175名無しさん@お腹いっぱい。2006/01/08(日) 14:31:41
文の定義は変えらんないってHELPに書いてあったけど、()で「。」を見分けて飛ぶのはどうしても無理?
0176KoRoN@Vim%Chalice ◆8XALICEsdk 2006/01/08(日) 14:52:14
>>175
スクリプトを駆使する、もしくはソースコードをquick hackする等すれば可能です。
前者よりは後者のほうが、他の機能との整合性を保つのは楽でしょう。

genericな仕組みとしてVimに取り込んでもらうのは、やらなければならないことが多
そうなので、ちょっと大変かと思われます。
0177名無しさん@お腹いっぱい。2006/01/08(日) 19:34:00
>176
なるほど。わかりました。
0178名無しさん@お腹いっぱい。2006/01/11(水) 03:34:52
vimでは、一つの論理行が長いと重くなると聞いたのですが本当ですか?
一行が長い日本語文章を編集しようとして、試しにファイルを開いてみたのですが
それほど重くなったという実感はありませんでした。
0179名無しさん@お腹いっぱい。2006/01/11(水) 04:09:14
一行1Mbてなぐらい長いと、つー話
0180名無しさん@お腹いっぱい。2006/01/11(水) 11:19:03
>>178
そうなの? 物理行が長いなら確かに重いけど。
0181名無しさん@お腹いっぱい。2006/01/11(水) 14:54:04
ウェブログをvimでいじってたら :set backupしてるの気付かなくて
やたら重かった記憶。
■ このスレッドは過去ログ倉庫に格納されています