トップページ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あたり。
0009名無しさん@お腹いっぱい。2005/11/26(土) 12:46:00
>>1
0010名無しさん@お腹いっぱい。2005/11/29(火) 07:40:10
全角半角キーを:imapで<C-k>にしたいんだけど
:imap <C-k>
の後の全角半角キーってどう表現すればいいですか
0011名無しさん@お腹いっぱい。2005/11/29(火) 09:46:35
:imap <C-k> <c-o>:quit!<cr>
0012名無しさん@お腹いっぱい。2005/12/01(木) 19:12:44
インプットメソッドをON, OFFしたいということなら
imactivatekeyを適切な値に設定して (Windowsでは必要ない)
  :set imactivatekey=Zenkaku_Hankaku
iminsertを設定する (0ならOFF、2ならON)
  :inoremap <C-K> <C-O>:let &iminsert = (&iminsert == 2) ? 0 : 2<CR>
0013名無しさん@お腹いっぱい。2005/12/02(金) 17:19:31
>>12
サンクス
0014名無しさん@お腹いっぱい。2005/12/04(日) 14:10:46
拡張子(.rbとか)によって、インデントなどで特別の設定をしたいときってどうすればできますか?
0015名無しさん@お腹いっぱい。2005/12/04(日) 15:29:42
$HOME/vimfiles/ftplugin/ruby.vim
$HOME/.vim/ftplugin/ruby.vim
とか用意して、設定書けばいいんじゃねぇ?たぶん
0016名無しさん@お腹いっぱい。2005/12/04(日) 18:48:15
間違えて前スレに書いてしまった・・・

読点を入力すると化ける。なぜー?
Unix環境でのみっぽい。
emacsとか他のアプリは大丈夫。
0017名無しさん@お腹いっぱい。2005/12/04(日) 19:53:51
>>16
FreeBSDのmblen(3)の仕様変更にともなう問題。
http://lists.freebsd.org/pipermail/freebsd-ports-bugs/2004-November/046616.html
vim7では直ってる。
0018名無しさん@お腹いっぱい。2005/12/04(日) 21:00:47
>>17
ありがとうございます。
いかにもFreeBSD6使ってますが、前にVineだかDebian入れたときも同様だったやうな。
気のせいかな。
0019名無しさん@お腹いっぱい。2005/12/05(月) 00:58:27
>>17 グッド!
0020名無しさん@お腹いっぱい。2005/12/06(火) 10:11:15
gvimのグイのメニュー下のボタン群いらないので消して下さい><
そのぶん広く使いたいです
0021名無しさん@お腹いっぱい。2005/12/06(火) 10:14:35
グイ?
0022名無しさん@お腹いっぱい。2005/12/06(火) 10:28:44
>>20
:se go-=T
0023KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/06(火) 11:36:01
最近私は :set go= するようになりました。
0024名無しさん@お腹いっぱい。2005/12/06(火) 12:14:45
>>22
ありがとうございました
>>21
GUIってなんて読むんですか?><
0025名無しさん@お腹いっぱい。2005/12/06(火) 14:07:06
>>24
じーゆーあい
0026名無しさん@お腹いっぱい。2005/12/06(火) 14:10:04
ふりーらぶ
0027名無しさん@お腹いっぱい。2005/12/06(火) 18:51:24
ところでViはヴィでいいの?
0028名無しさん@お腹いっぱい。2005/12/06(火) 20:36:57
>>27
UNIXに関する言葉のひらがな読みスレッド
http://pc8.2ch.net/test/read.cgi/unix/1001358861/
0029名無しさん@お腹いっぱい。2005/12/06(火) 22:27:41
今見たら
:se go=rL
だった。

いまはぜんぜん問題ないけど、
はじめはちょっとつらかったな……
0030名無しさん@お腹いっぱい。2005/12/08(木) 23:48:32
ttp://www.frappr.com/vim/
みんなで日本塗りつぶそうぜ
0031名無しさん@お腹いっぱい。2005/12/10(土) 11:54:31
VisualStudioでvi風の操作をできるようにするアドイン
http://www.ngedit.com/viemu.html
0032名無しさん@お腹いっぱい。2005/12/10(土) 19:39:05
質問です。

hoge.java
.hoge.java.swp
こんな感じで既にVimで開かれているファイルをさらに
違うVimで開いた時に出る

VIM - 注意
  スワップファイル ".hoge.java.swp"が既にあります!

という警告ダイアログを出さないで直ぐに "読込専用で開く(O)" ボタン
を選択した場合の動作になるようにしたいのですが出来るでしょうか?

環境: Windows2000 + Vim6.3 です。

設定方法を教えてください。
0033名無しさん@お腹いっぱい。2005/12/10(土) 19:52:51
se noswf
0034名無しさん@お腹いっぱい。2005/12/10(土) 22:55:10
>>32
gvim -R hoge.java で開けばいいのでは?
0035322005/12/11(日) 00:09:58
>>33-34
ありがとうございます。

33に関して
スワップファイルを無くす事により "savevers.vim" が動作しなくなる
かもとおもったが問題なく動作し警告も一切出ないようになったので
気にいった。

34に関して
開いてすぐの警告ダイアログはでなかったのでよかったのですが
編集しようとしたらエディタ内で警告が出たので気に入らなかった。
キー入力待ち警告でなく下の部分にメッセージが出るだけなら
気にならないんだが
0036名無しさん@お腹いっぱい。2005/12/11(日) 00:31:59
>>35
>編集しようとしたらエディタ内で警告が出たので気に入らなかった。

それだけならば、gvim の換わりに vim -R hoge.java とすればよろし。
0037322005/12/12(月) 12:24:24
>>36
vim で開いて .Hoge.java.swp がある状態でさらに、
vim -R Hoge.javaとして開いても
それから編集したらエディタ内で下記の警告が出ましたよ。


W10: 警告: 読込専用ファイルを変更します
E325: 注意
次の名前でスワップファイルを見つけました ".Hoge.java.swp"
            所有者: Administrators   日付: Mon Dec 12 11:05:45 2005
        ファイル名: E:/Hoge.java
          変更状態: なし
          ユーザ名: hoge   ホスト名: HOGE
        プロセスID: 1724
次のファイルを開いている最中 "Hoge.java"
             日付: Sat Dec 10 19:18:45 2005

(1) 別のプログラムが同じファイルを編集しているかもしれません.
    この場合には, 変更をした際に最終的に, 同じファイルの異なる
    2つのインスタンスができてしまうことに注意してください.
    終了するか, 注意しながら続けます.

(2) このファイルの編集セッションがクラッシュした.
    この場合には ":recover" か "vim -r Hoge.java"
    を使用して変更をリカバーします(":help recover" を参照).
    既にこれを行なったのならば, スワップファイル ".Hoge.java.swp"
    を消せばこのメッセージを回避できます.  

続けるにはENTERを押すかコマンドを入力してください    
0038名無しさん@お腹いっぱい。2005/12/12(月) 12:41:42
便乗質問ですが、変更なしでプロセスもaliveでない、
つまり単に残っただけで情報量ゼロのスワップファイルがあった場合は
何も訊かずにスワップファイルを消去して編集に入るようにはできないでしょうか?

複数ファイルを開くセッションが落ちた後などは
かなり鬱陶しいことになるので。。。
0039名無しさん@お腹いっぱい。2005/12/12(月) 14:41:59
http://www.frappr.com/vim
で知ったんですが、Bramってオランダ人なんだ。オーストラリアあたりだと勝手に
思ってた。新宿御苑にもvimmerがいますねw

中学のときオランダってdutchって教わった記憶があるんだけど、
netherlandsが英語表記の国名になるのか。知らんかった。
0040名無しさん@お腹いっぱい。2005/12/12(月) 16:08:54
>>37
vimのプロセスごとに別々のディレクトリを:set directoryしてみるとか。
>>38
findで検索して削除。

ところでスワップファイルって役に立ってるの?
リッチな環境ならいらないんじゃないだろうか。backupもあるし。
おれは小心者だから両方ともonなわけだけど。
0041名無しさん@お腹いっぱい。2005/12/12(月) 16:40:40
> findで検索して削除。
findで変更の有無やプロセスの生死ってわかるんですか?
0042名無しさん@お腹いっぱい。2005/12/12(月) 17:22:27
たまにしかない復旧作業がめんどいならなにもいらないだろうと思っただけ。
最終的には自分の目で確認しないといけないわけだし。
vim -rである程度確認できるけど、どれほど信用できるかわかんないわけで。
0043名無しさん@お腹いっぱい。2005/12/12(月) 18:18:54
/で検索するときに2個のキーワードを葉以来とさせることってできますか?

たとえば、
where と update を同時にハイライトさせたいときってどうすればいいのでしょうか?
0044名無しさん@お腹いっぱい。2005/12/12(月) 18:26:21
正規表現の選択を使えばできるね。

/\(where\|update\)
0045名無しさん@お腹いっぱい。2005/12/12(月) 18:44:37
>>44
> 正規表現の選択を使えばできるね。
>
> /\(where\|update\)

thanks!

バックスラッシュが省略できると、もう見た目がきれいなのだけど、、、
0046名無しさん@お腹いっぱい。2005/12/12(月) 19:59:10
>>45
:h /\v
0047名無しさん@お腹いっぱい。2005/12/12(月) 23:57:26
>>42
お答えいただいたのに失礼ですが、
そういう場合は素直に「できません」か「わかりません」って
答えてくださいよ。
0048名無しさん@お腹いっぱい。2005/12/13(火) 04:37:21
>>37
それは vim -R hoge.java のファイルを編集したんでしょ?
それでは、警告が出て当り前。だいいち読み込み専用ファイル
を編集しようとしているし…

最初に vim hoge.java または gvim hoge.java で開いて
読み込み専用のほうだけを vim -R hoge.java で開く、
と書いたつもりなんですが…
0049名無しさん@お腹いっぱい。2005/12/13(火) 08:28:09
>>47
できるんだから好きなだけ自動化すればいいじゃん。
スワップファイルには大した情報入ってないから問答無用で消しても問題ないと思うけど。
0050名無しさん@お腹いっぱい。2005/12/14(水) 12:35:23
アルファベットの大文字を小文字に変更するにはどうすればできますか?

小文字は小文字のままで、非アルファベットはそのままでお願いします。
0051KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/14(水) 13:01:05
>>50
:%s/\u\+/\L&/g

:help /\u
:help s/\L
:help s/\&
0052名無しさん@お腹いっぱい。2005/12/14(水) 14:14:18
Visual選択してuでもおk
0053名無しさん@Vim%Chalice2005/12/14(水) 18:45:03
>>51-52
サンクスです。
~ は知っていたのですが、 u/U は知りませんでした。

勉強になります。
0054名無しさん@お腹いっぱい。2005/12/15(木) 00:56:23
ファイル末尾にCRLFが自動的に挿入されるのを止めることはできますでしょうか?

:set noeol binary
以外の解決策が知りたいです。
0055名無しさん@お腹いっぱい。2005/12/15(木) 01:10:13
>>54
>:set noeol binary
何か問題でも?
0056名無しさん@お腹いっぱい。2005/12/15(木) 01:24:11
>>55

KaoriYa.netの掲示板に

"ただし'binary'オプションには副作用があるので注意が必要です。詳細はヘルプに任せ
ますが、重要なところでは'fileformat'オプションが無効になります。そして最終行で
ないEOLは常にLFになってしまいます。なのでCRLFをEOLとして使用したい場合には、各
行末に手動でCRを付加する必要があります。"

とあったので……。
0057名無しさん@お腹いっぱい。2005/12/15(木) 01:29:19
noeolって単体では無効なのか。不便だな。
0058名無しさん@お腹いっぱい。2005/12/15(木) 01:39:46
>>57

"行指向エディタであるvimでは基本的にできません。あとはそのようなファ
イルを編集するたびに留意するか、そのためのスクリプトを書くか、どっちにしろ人が
頑張らなければいけません。"

だそうです。
ファイル保存時にEOFのCRLFを削除するスクリプト等があれば良いのですが……。
0059KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/15(木) 02:39:29
>>57 なんで単体じゃ使えないんですかね。不思議だなぁ。
0060名無しさん@お腹いっぱい。2005/12/15(木) 10:35:26
なんで改行つけられたくないの?
0061名無しさん@お腹いっぱい。2005/12/15(木) 15:24:54
KaoriYaさんで配布している
Libiconv DLL 1.10-20051016 for Windows
を使うとeuc-jpで保存できないときがあります。
保存できていたファイルの一行を消すと保存できなくなることがあ
ったため、不正な文字が含まれているのが原因ではないと思います。
0062KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/15(木) 22:25:54
>>61 そのファイルを私にください。
0063名無しさん@お腹いっぱい。2005/12/15(木) 22:41:05
>>62
vim6.4のREADME_j.txtでも起きます。
0064542005/12/15(木) 23:27:04
>>60

アプリケーションで読み込むためのテキストデータに、
改行コードが含まれていると動かないのです。
0065名無しさん@お腹いっぱい。2005/12/15(木) 23:56:46
なんだか段々使いにくくなって行ってないか
0066名無しさん@お腹いっぱい。2005/12/16(金) 00:06:14
きのせい
0067KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/16(金) 00:17:30
>>63 その再現方法を特定してください。
0068名無しさん@お腹いっぱい。2005/12/16(金) 00:29:41
>>67
e README_j.txt
se fenc=euc-jp
:w
0069KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/16(金) 00:40:33
軽く切り分け作業をしてみたんですが、なんかlibiconv単体の問題じゃなさそうです
ね。同じREADME_j.txtでも1,200を保存しようとすると×で、1,100や101,200とわけ
れば○。ちなみにiconv -f cp932 -t euc-jp README_j.txtは問題なく通ってますね。

6.4になってから混入した問題か、libiconv 1.10との組み合わせの問題か、最近の
パッチで修正された部分に該当するかは不明です。
0070KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/16(金) 03:07:18
>>69
原因がわかりました。libiconvが使っているCランタイム(MSVCR71)と、Vimが参照して
いるCランタイム(MSVCRT)が異なっていました。そのため変換バッファがちょうど2バイ
ト文字を切断している際に、libiconvが発生させていたエラーをVimが捕捉できておら
ず、それにより変換ミスとして扱っていたことが原因です。

Vimが参照するCランタイムをlibiconvのそれに修正しました。アーカイブもnetupvimも
既にアップロードしてあるのでご利用ください。

# libiconvのerrnoを使うという古いエラー伝播方法には無理があるよなぁ… orz
0071名無しさん@お腹いっぱい。2005/12/16(金) 03:15:38
>>70
どうも。アップデートしたら直ってました。
0072名無しさん@お腹いっぱい。2005/12/16(金) 22:46:35
kaoriyaさんのnetupvimを使うと、パッチが当たるのは嬉しいんだけどさ。
自分用のJavaScriptのシンタックスファイルを上書きされちゃった。
上書きされても構わない様に、自分用のランタイムファイルを別にして置こうと思うんだけど
runtimepathの先頭に専用のディレクトリを追加すれば、それで大丈夫?
それとも、vimfiles/afterに置いた方が良いのかな?
0073722005/12/16(金) 22:51:08
すまん、聞くよりも試せだね。
無事に解決した。
0074名無しさん@お腹いっぱい。2005/12/16(金) 23:28:05
>>64
まーとりあえず、こんなんでどうすか
autocmd BufWritePost * call NoEolWrite(expand('%'))
function! NoEolWrite(filename)
  let xxd = $VIM . '\xxd.exe'
  let len = getfsize(a:filename) - (&fileformat == 'dos' ? 2 : 1)
  if &binary == 0 && &endofline == 0 && len >= 0
    silent execute 'w !"' . xxd . '" -len ' . len . ' | "' . xxd . '" -r > "' . a:filename . '"'
  endif
endfunction
0075名無しさん@お腹いっぱい。2005/12/17(土) 00:10:21

どなたか心ある方。Vikiのまとめサイト作ってくださらんか。


昨晩インストールして「こりゃすげぇ」と遊んでたんだが、今日になって
エラーでまくりで動かんくなってしまった。
なんどインストールやりなおしてもだめ。
今あたまに血がのぼっている。
0076名無しさん@お腹いっぱい。2005/12/17(土) 15:22:47
_gvimrcの設定で
set visualbell
set vb t_vb=
を書いてもビープ音は消せても
画面のフラッシュが止まらないんですが
0077名無しさん@お腹いっぱい。2005/12/17(土) 16:26:04
>>76
se novisualbell
0078名無しさん@お腹いっぱい。2005/12/17(土) 17:33:02
>>74 :w だとfencの設定が反映されないので修正
autocmd BufWritePost * call NoEolWrite(expand('%'))
function! NoEolWrite(filename)
  let xxd = $VIM . '\xxd.exe'
  let len = getfsize(a:filename) - (&fileformat == 'dos' ? 2 : 1)
  if &binary == 0 && &endofline == 0 && len >= 0
    let tmp = tempname()
    call system('""'.xxd.'" -len '.len.' "'.a:filename.'" | "'.xxd.'" -r - "'.tmp.'""')
    call rename(tmp, a:filename)
  endif
endfunction
0079名無しさん@お腹いっぱい。2005/12/17(土) 19:40:19
>>77
そうするとビープ音が鳴るようになってしまった
言葉が足りなかったかも
ビープ音とフラッシュ両方消す方法はないでしょうか
0080542005/12/17(土) 20:00:34
>>74
有り難うございます。
昨日はそのscriptで動いていたのですが、
今日になって何故か効かなくなりました。謎…。
0081KoRoN@Vim%Chalice ◆8XALICEsdk 2005/12/17(土) 20:03:50
>>79
:set visualbell t_vb=
とすれば、どちらもキャンセルできるはずです。

'visualbell'はビープ音の変わりに画面をフラッシュさせるオプションです。't_vb'
は、フラッシュさせる際に端末へ送信される、フラッシュのための命令コードを指定す
るオプションです。この設定方法では空文字列が指定されているため、フラッシュしな
くなることが期待されます。結果、ビープ音もフラッシュもしなくなる、というわけで
す。
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を選択してやってみたけどあんまり変らなさげ。
■ このスレッドは過去ログ倉庫に格納されています