■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 最新50

vim6

1 :名無しさん@お腹いっぱい。 :2001/05/25(金) 13:18
vim-6.xに関する専門的スレッドです。

373 :371 :2001/08/10(金) 09:30
> これで気に入らないなら、scriptかsyntax highlight
そう思って、
syntax match DoubleSpace " "
hi DoubleSpace guifg=fg guibg=#eeeeee
っていう記述を _gvimrc に書いたんだけど
どうもこれって最初に開いたバッファにしか適用されないみたい。
どうすればよいの?

374 :emacsのちvim :2001/08/10(金) 18:50
>>371=>>373
autocmdを使って、ファイルの読み込みや名無しバッファ作成のタイミングで、
目的のsyntaxをカレントバッファに設定しましょう。

function! ActivateDSindicator()
  syntax match DoubleSpace " "
  hi DoubleSpace guifg=fg guibg=#eeeeee
endf
augroup invisible
  autocmd! invisible
  autocmd BufNewFile,BufRead *.txt call ActivateDSindicator()
augroup END

詳しくは、:he :autocmd, :he :syntax, :he mysyntaxfile,
$VIMRUNTIME/syntax/syntax.vimなどを参照のこと。

375 :371 :2001/08/10(金) 23:43
>>374
ありがとう。が、もうひとつ問題が…

syntax match DoubleSpace " " containedin=ALL
がなぜか
hi SpecialKey term=bold ctermfg=DarkBlue gui=bold guifg=#4400ff guibg=#f4f4f8 " FileType=vim
という行で全角空白が2個並んでいるとき2個目以降しか highlight 表示されない。
FileType が vim じゃないときや、行頭の hi を変更すると正しく highlight されるのだが…

376 :KoRoN :2001/08/10(金) 23:56
>>375
今ひとつ意図が理解できていないのですがこうしたらどうなりますか?。
syntax match DoubleSpace " \+" containedin=ALL

377 :371 :2001/08/11(土) 00:13
>>376
\+ つけてもダメみたいです。

要は何がしたいのかというと、全角空白を Comment の中にあろうが
Constant の中にあろうが問答無用で hightlight 表示( 半角空白と区別 )したいということです。

でなんとか syntax.txt を読んで
syntax match DoubleSpace " " containedin=ALL
すればよさげだぞ、ということが分かったのですが、( なぜか keyword ではうまくいかず )
filetype=vim の時、行頭に hi やら s やらあるときに正しく highlight されなくて困っているというわけです。

例えば、
hi SpecialKey te   rm=bold ctermfg=DarkBlue gui=bold guifg=#4400ff guibg=#f4f4f8 " FileType=vim
の3つの全角空白の内後ろ2つしか highlight されないでいる。

378 :名前いれてちょ。。。 :2001/08/11(土) 02:45
windowの画面分割で、Ctrl-W s だと上下に半分ずつにしかならない。
それだとソースコードを追っかけるときとかちょっとつらいから、
出きれば左右に分割できると嬉しいんだけど。

webで散々調べたけど、上手く hitせず。
スクリーンショットでは出来るみたいなんだけどなぁ。

379 :emacsのちvim :2001/08/11(土) 03:14
>>378
vim6使ってC-w v。
なぜ、まず:helpしないのかが理解できん。

380 :emacsのちvim :2001/08/11(土) 05:10
>>371
同様の現象が、6.0apjで確認できました。
teにつづく全角スペースまでが、teで始まるキーワード(hiの引数)
の一部として、DoubleSpaceより優先してマッチングしている感じです。
試しに、行頭に"を挿入してコメントとしたところ、3つ分のDoubleSpaceが
highlightされます。
ちなみに、hi、highlightのいずれでも上記症状に変化は見られませんでした。
もう少しvim.vimあたりを見てみます。

381 :KoRoN :2001/08/11(土) 06:48
>>378

highlightは詳しくないのでなんともいえませんが、随分昔にMLに流れた次のようなスクリプトが役に立つでしょう。
適当な名前で保存して:soしてみて下さい。

function! s:HiDiHi()
let l = line(".")
let c = col(".")
let id = synID(l, c, 1)
let attr_hi = synIDattr((id), "name")
let attr_trans = synIDattr(synID(l, c, 0), "name")
let attr_lo = synIDattr(synIDtrans(id), "name")
echo "hi<" . attr_hi . '> trans<' . attr_trans . "> lo<" . attr_lo . ">"
endfunction

nnoremap <silent> <F6> :call <SID>HiDiHi()<CR>

382 :KoRoN :2001/08/11(土) 07:30
>>378,>>380-381

:set isident=@,48-57,_
と設定してみてください。正しい対処法かはまったくわかりません。
'isident'がデフォルトの"@,48-57,_,128-167,224-235"だと、
vimHiGroupが"\i\+"に設定されていて全角空白の1バイト目0x81(==129)が\iにマッチします。
2バイト目は0x40(==64=='@')であるので\iにはマッチしません。
つまりsyntax解釈上、全角空白が分断されてしまったため起こった現象でしょう。

'isident'にMBが含まれる必要はないと思いますけど、なんかスッキリしてない状態であることは認めます。

383 :KoRoN :2001/08/11(土) 07:31
# ううう。さげ癖がついている
age

384 :371 :2001/08/11(土) 11:10
>>382
isident,iskeyword を "@,48-57,_" にしたら、hi のあとでも正しく highlight されるようになりましたが、
s のあとや、let の後ろでは以前として表示が思ったようにされません。
( let については2つ目以降どころかまったく highlight されず )

やっぱり素直に、/  して、:set hls の方がよいですかね?

385 :KoRoN :2001/08/11(土) 12:56
>>384
letは\kの問題です。全角文字は無条件でiskeyword(/\k)に引っかかるという
素晴らしい仕様のおかげですね。これについては修正パッチ作りました。
sは現在調査中で、[^a-z...]が全角にマッチしてしまうことが原因らしいけど…
ハッキリとはわかっていません。\z(\)との絡みもあるかと調査中。

386 :KoRoN :2001/08/11(土) 14:14
>>385
sについてわかりましたので補足。syn regionの指定にrs=s+1が付いてます。
これは検索の//{offset}と同じ意味ですが、syntaxのほうはMB非対応になっていました。
こいつが結構、修正に一苦労するかもしれません。

387 :名前いれてちょ。。。 :2001/08/11(土) 15:01
>>379
thanx!

もちろん :help したYO!
けど、いまいンストールされてるのが vim5.x だったと思った。
ひょっとしたら vim6 からじゃないとダメ?
まぁいいや。夏休みが終わったら確かめてみよう。

388 :KoRoN :2001/08/11(土) 17:20
>>387
横分割はvim6の機能です。っていうかココ、vim6のスレだし…

389 :名無しさん@お腹いっぱい。 :2001/08/11(土) 20:04
             ≡∩∩≡=
                 ≡| | || ≡=
   ゴゴゴゴゴ       ≡| | || ≡=
       ≡∧∧∧∧ | | || ≡=   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
       ≡((  ´Д`)///≡=   <  先生!Emacs信者の猛攻です!グハァ
    ≡//       //≡=      \_____________
   ≡/ / /|    //≡=
  _≡| | | .|    || ≡=
  ≡\\   ̄ ̄ ̄ ̄ ̄ ̄ ̄\\≡=
  ≡| ||\             \\≡=
  ≡| ||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄≡=
  ≡| ||  |||  ̄ ̄ ̄ ̄ ̄ ̄||| ≡=
      ≡.|||             ||| ≡=

390 :名無しさん@お腹いっぱい。 :2001/08/11(土) 20:57
warata

391 :371 :2001/08/12(日) 04:22
>>385-386
わざわざ申し訳ないです。
syntax の MB 対応、期待してます。

392 :KoRoN :2001/08/12(日) 09:18
>>391
期待されても困るんですよね(^-^;;;。前者は問題ありませんが後者をを修正してしまうと、
ただでさえ重くなる原因のsyntaxを激重にしてしまう可能性が高いんですよ。
果たしてそこまでしてsyntaxを完全にMB対応させる意味があるのか、速度とのトレードオフです。
# 実験はしてみますけど世の中に出るという保証はできません。

393 :名無しさん@お腹いっぱい。 :2001/08/13(月) 00:26
結構、vim6ユーザが増えてきているね。

394 :371 :2001/08/13(月) 19:23
KoRoN さん、vim6ar さっそく落としました。
全角空白が完全ではありませんが正しく表示できるようになりました。
ありがとうございます。

395 :KoRoN :2001/08/13(月) 20:06
sの後のデリミタとしての全角に対応させることはできませんでした。
その修正をしたら別の場所で不具合が出てしまったもので(^-^;

396 :名無しさん@お腹いっぱい。 :2001/08/15(水) 01:58
vim script見ると萎えてしまうっすよ。
|でも個人的には、どうせならスクリプトを解釈する機能はコンパイル時に外せないようにして
これわかんないので解説希望っすよ。
|この適度なゴタゴタ感、つぎはぎな感じこそがvimがvimたる所以なのではないでしょうか。
僕には適度じゃないっすよ。僕の大好きなviの一番人気クローンの
スクリプト言語があれじゃ悲しいっすよ。このままじゃvim捨てっすよ。

397 :名無しさん@お腹いっぱい。 :2001/08/15(水) 01:59
そういう方は nvi に回帰しているかもめ

398 :名無しさん@お腹いっぱい。 :2001/08/15(水) 02:38
nvi使ったことないっすよ。vimと比べてどうっすか。

399 :KoRoN :2001/08/15(水) 02:39
>>396
PerlやPythonやRubyやTclをvim script代わりに使う方法もありますが、ある程度vim scriptの知識は必要になります。
また日本語の解説ページは現在のところ存在していないので:help perl等などを自力で読めなければ結局のところ使い切れないでしょう。
そんな状況ですのでvim scriptが動機でvimを捨てられるのなら、
vimに染まりきっていない今がチャンスなので思い切って捨ててしまうのが上策です。

言語の明快さ・簡潔さにこだわるのであれば個人的にはLISPがオススメです。
となればエディタは自然とEmacs系ですね。
さもなくばBram氏に「スクリプトの仕様変更して」とお願いするしかないでしょう。

400 :名無しさん@お腹いっぱい。 :2001/08/15(水) 02:44
nvi ユーザでしゅ。
vim の利便性を十分に享受していないと思うので
比較にならんのですが、自分のメモを貼り付けるです。

nvi を使おう

tab-complete を使う
set filec= を使う。
tab にアサインしたい場合は set file=\[tab] の様にすればよし。

ex コマンドのヒストリを使いたいよ
set cedit= を使う。
shell の set -o vi ライクでちょー使えるよ。#vim の ^P でのヒストリ機能よりイイかも。

検索は大文字小文字を区別したくないよ
set ignorecase でよし。

コマンドを使いたいよ
set shell=/bin/ksh など。

インデントはどうするの?
set shiftwidth=4 で ^T と ^D を使えばよし。

401 :名無しさん@お腹いっぱい。 :2001/08/15(水) 04:35
>>399
|また日本語の解説ページは現在のところ存在していないので
|:help perl等などを自力で読めなければ結局のところ使い切れないでしょう。
萎えさえしなければPerlでもPythonでもRubyでもTclでも
ソースといくつかのサンプルさえあれば使い切る自信あるっすよ。
問題は萎えないか?っすよ。Perl/Python/Rubyで萌えられそうなら
そっちでやるっす。経験者の意見希望っす。
|言語の明快さ・簡潔さにこだわるのであれば個人的にはLISPがオススメです。
読みやすさと使いやすさにこだわるっす。LISPは確かに構造が
単純す。emacslispのコード書いたことありますがLISPならではの
恩恵こうむったことないっす。「オススメ」の理由知りたいっす。
|となればエディタは自然とEmacs系ですね。
自然すか?viとは合わないっすか?
|さもなくばBram氏に「スクリプトの仕様変更して」とお願いするしかないでしょう。
あのスクリプト言語つくったのがBramさんって人すか。(vim作った
人?)Perl/Python/Rubyの方がよければ仕様変更でなくて置き換え
させるっす。

402 :KoRoN :2001/08/15(水) 08:09
> 読みやすさと使いやすさにこだわるっす。LISPは確かに構造が単純す。
> emacslispのコード書いたことありますがLISPならではの恩恵こうむったことないっす。
> 「オススメ」の理由知りたいっす。

LISPそのものというよりも関数型言語ゆえの良さです。
専門家たちに聞くのが一番なので次のようなスレで聞いてみてください。
■ LISP Scheme http://piza2.2ch.net/test/read.cgi?bbs=tech&key=987169286&ls=50
■ Haskell http://piza2.2ch.net/test/read.cgi?bbs=tech&key=996131288&ls=50

403 :名無しさん@お腹いっぱい。 :2001/08/15(水) 10:04
うーん、--enable-multibyte で作っても 2byte文字上のカーソル移動が
上手く行かない。
他に configure に指定した option は、
--prefix=/usr/local --host=i686-pc-cygwin
--enable-broken-locale --enable-xim --enable-fontset --with-x=yes
--with-tlib=ncurses

以下だけでもやってみた。
--enable-multibyte --enable-xim --enable-fontset

404 :KoRoN :2001/08/15(水) 11:18
>>403
カーソル移動に関しては--enable-multibyteがあれば正しくなります。
あとはvimrcでset encoding=japanを設定するだけです。

405 :名無しさん@お腹いっぱい。 :2001/08/15(水) 13:16
>>404

すみません。403 は書きかけで up してしまいました。

set encoding=japan
set fileencoding=japan

としています。ついでに

set termencoding=japan

とも入れてます。
でもダメなんです。
また、vim 起動後に、

:set encoding=japan

などとしてもダメでした。
更に、web で見かけた、

:set charcode=japan

としたら、

`Unknown Option' と怒られました。

406 :KoRoN :2001/08/15(水) 13:45
>>405
…見落としてました。cygwinですか?。ビルドしているのがcygwinで
利用したいのはコマンドプロンプトからSJISで利用したいのですか?。
それともtelnetしてEUCで利用したいのですか?。
他にもcygwinでnot XなGUI版をコンパイルする方法もあったと思います。

407 :名無しさん@お腹いっぱい。 :2001/08/15(水) 18:09
>>406

すみません。全然環境に触れてなかったですね。

$ uname -a
CYGWIN_95-4.0 OGAWA00 1.1.8(0.34/3/2) 2001-01-31 10:08 i586 unknown

な環境で、ASTEC-X を使い、{Rxvt, Kterm} 上で Vim を使いたいのです。
# 更に terminal 上で、screen も動かせればとも思ってますが。

日本語に関しては、ASTEC-X で XIM 経由で Windows-IME (WXG4) から入力
しています。

ここもちょっと問題ありっぽいんですが、今回の件は、入力済みの日本語
ですので、IME 云々は除外して良いと思ってます。
はしていない) 状態で、件の現象となりますので。

件の現象と書きましたが、全然ちゃんと書いてないですね。

{h, l} でのカーソル移動を多バイト文字上で行なおうとすると、
カーソルが 1バイトずつしか移動しない。

または、

x での削除を多バイト文字上で行なおうとすると、1バイトずつしか
削除されない。

と言う現象でした。

408 :KoRoN :2001/08/15(水) 20:35
>>407
コンパイル方法はあっていそうなので設定の問題だと思います。
cygwinを使うとMake_cyg.makを使わずに./configure&&makeでインストールしたとしてもcp932ベースで構築されます。
そのため:set encoding=japanとすると:set encoding=cp932ということになってしまいます。
なお通常のUNIXならば同様の方法でeuc-jpベースで構築されるので
:set encoding=japanは:set encoding=euc-jpと同義になります。

>>403,>>405,>>407でやろうとしていることを見る限りではencodingはcp932で
termencodingはeuc-jpでなければならないのでしょう。
# ktermってエンコード変えることできるんでしたっけ?
termencodingを正しく働かせるにはcygwin付属のlibiconvを使う必要がありますが…そのやり方はわかりません。
またcp932以外のファイルを編集するには、
正しくcp932へコンバートできるようにfileencodingsを設定してやる必要があるので注意してください。
よって必要な設定は次のようになると推測されます。

:set encoding=cp932
:set termencoding=euc-jp
:set fileencodings=iso-2022-jp,utf-8,utf-16,ucs-2-internal,ucs-2,euc-jp,japan,shift-jis

409 :WindowsCE版は? :2001/08/16(木) 00:37
WindowsCEで動くGUI版vimってあるでしょうか?
Emacs20.7が動く(色・フォントつき)んだから
vimも動けると思うんですが...
syntax highlightが使いたいんです.

#ひょっとしてコンソール版(CMD窓)でもハイライト表示できる?

410 :名無しさん@お腹いっぱい。 :2001/08/16(木) 01:28
>>400
インデントは、:set autoindent ?
すでに設定されているなら良いけれど...

411 :名無しさん@お腹いっぱい。 :2001/08/16(木) 02:05
>>402
Haskellスレ読んでるっす。面白いね。
そりゃ関数型には関数型の、論理型には論理型の、
オブジェクト指向にはオブジェクト指向の利点が
それぞれあるっす。エディタのスクリプト言語と
しての関数型ならではの利点を知りたいっす。
少なくともemacslispは関数型というよりバリバリ
副作用使われてるっすよね。
0.01歩譲ってLISPがベストとしてそのとき自然に
emacsになる理由が知りたいっす。
ストールマンが選んだからにはなるほどと思わせる
理由があると思うっす。それを知りたいっす。

412 :名無しさん@お腹いっぱい。 :2001/08/16(木) 04:45
起動中のgvimのバッファにロードさせる起動オプションってありませんか?(windows)
gvimをMDI風に使いたいもので。教えてください。

413 :名無しさん@お腹いっぱい。 :2001/08/16(木) 07:31
>>408

惜しいんですが、目的は果たせないです。
# 惜しいと言うのは、>>407 で日本語入力も問題ありと書いた部分が安定したと
# 言うことです。これはこれでとても助かりました。有り難うございます。

> cygwinを使うとMake_cyg.makを使わずに./configure&&makeでインストールしたとし
> てもcp932ベースで構築されます。
これが問題だったのは確かだと思われます。
しかし、当方の環境では、基本を euc-jp と考えてますので、

set encoding=euc-jp
set termencoding=euc-jp
set fileencodings=euc-jp,iso-2022-jp,utf-8,utf-16,ucs-2-internal,ucs-2,japan,shift-jis

とすることで、安定した日本語入力が出来る様になりました。
しかし、当初からの目的としている、

多バイト文字上での 1文字の扱い

については、悲しいことに変化がありません。

因みに >>405 で書いた、

:set charcode=japan

と言う option って本当はあるんでしょうか。
# 多分、
# Vim 掲示板 (http://ixeris.bios.ics.saitama-u.ac.jp/~koron/bbs/)
# で見たんだと思うんですが。

414 :名無しさん@お腹いっぱい。 :2001/08/16(木) 07:48
>>408

ああそうか。
> termencodingを正しく働かせるにはcygwin付属のlibiconvを使う必要がありますが
> …そのやり方はわかりません。
こっちの方が問題なのか。

libiconv は、libiconv-1.6.1 を install しています。
が正しく動作しているかどうかは判りません。

どなたか確認方法をご存じないですか??

415 :KoRoN :2001/08/16(木) 08:07
>>409
WinCE用にコンパイルされたものはがありません。
DOS版をCEのDOSエミュレータ(有料)で動かすのが現状です。

>>410
autoindentであってます。C言語以外用にはsmartindentとかもあります。
autoindentはvimrc_example.vimで定義されていますが、デフォルトではロードされません。
#私が配布しているgvim-6.0xではロードされるように設定されてますが。

>>411
gvimの話題ではないのでemacsのスレかソフトウェア技術の板で聞くと良いでしょう。
テキストエディタのスレもありますから。

>>412
6.0ar以降であればgvim --remote filenameで開けます。

>>413
> しかし、当方の環境では、基本を euc-jp と考えてますので、
ダメです。cygwinでコンパイルした場合にはvimはcp932を基本にしてしまいます。
os_unix.hの41行目のWIN32UNIXをdefineしなければeuc-jpベースにできるハズですが。

> set fileencodings=euc-jp,iso-2022-jp,utf-8,utf-16,ucs-2-internal,ucs-2,japan,shift-jis
これだと上手くコンバート出来ませんよ。fencsは先頭から順にiconvへ渡して変換に成功したところで
トライアルをやめてしまいます。なのでcp932(shift-jis)のファイルを開いても最初のeuc-jp→euc-jp変換で止まってしまいます。

> set charcode=japan
6.0の初期はこの名前を使っていましたが現在はencodingという名前に変わりました。

416 :KoRoN :2001/08/16(木) 08:16
>>414
libiconvってソースからcygwinでコンパイルしましたか?
私が配っているものはVC6でコンパイルしたものなのでちょっとズルして
cygwinと組み合わせると…ハングしました(笑)

なおlibiconvにはiconvというツールが付属します。src/iconv参照のこと。
こいつで一通りのチェックはできます。

417 :vimmer :2001/08/17(金) 02:13
久しぶりにvimの本家のサイトに逝ったら、何とvim-6.0arの欄のコメント部分にある
``BETA!"の文字がピッカピッカと点滅しているではないか。

いつの間に、βになったのよ。
正式版の出荷は、もうすぐかな。

418 :名無しさん@XEmacss :2001/08/17(金) 13:11
>>415

>> しかし、当方の環境では、基本を euc-jp と考えてますので、
>ダメです。cygwinでコンパイルした場合にはvimはcp932を基本にしてしまいます。
>os_unix.hの41行目のWIN32UNIXをdefineしなければeuc-jpベースにできるハズですが。

WIN32UNIX を undef して (単にコメントにしただけですが) make し直しました。
が状況は変りません。

>> set fileencodings=euc-jp,iso-2022-jp,utf-8,utf-16,ucs-2-internal,ucs-2,japan,shift-jis
>これだと上手くコンバート出来ませんよ。fencsは先頭から順にiconvへ渡して
>変換に成功したところでトライアルをやめてしまいます。なので
>cp932(shift-jis)のファイルを開いても最初のeuc-jp→euc-jp変換で止まってし
>まいます。

これは、cp932 のファイルに対して euc-jp -> euc-jp 変換が成功するってこと
でしょうか。

$ cat ja-vimtest4.sjis | iconv -f SHIFT-JIS -t EUC-JP
新規ファイルです。
Vim は WIN32UNIX を define せずに make し直しました。
$ cat ja-vimtest4.sjis | iconv -f EUC-JP -t EUC-JP
iconv: (stdin): cannot convert

となるので、失敗する様に思うのですが。全然違うこと言ってますか?
それとも、そもそも WIN32UNIX を殺して make しておけば、

set encoding=japan
set fileencoding=japan

で良いんでしょうか。

>>416

libiconv は Cygwin で source から make してます。

$ echo "あいうえお" | nkf -s | iconv -f SHIFT-JIS -t EUC-JP
あいうえお

となるので問題無い様ですが。

Rxvt, Kterm の方の問題なのかなぁ。

419 :KoRoN :2001/08/17(金) 14:17
>>418
なんかおかしいですねぇ…

> cp932 のファイルに対して euc-jp -> euc-jp 変換が成功するってことでしょうか。

そのつもりで書いたんですが…どうやら正確には違ったようです。
fencとencが同じ場合、vimはコンバートせずに生のまま開きます(:help 'fenc')。
結局その先のコードは試されませんから、起こる現象に限ってみれば同じことですけどね。

どうも非常に特殊な環境で使いたいようですから、
そういうときはまず一番単純なところからやってみるのが良いと思いますよ。
1. cygwinで--enable-multibyteだけでコンパイルして、コマンドプロンプトからsjisファイルが開けることを確認する。
2. 次にtelnet経由でiconvを使ってtermencoding=euc-jpでsjisファイルが開けることを確認する。
こんな感じで少しずつステージを上げていってはどうでしょうか?。

あ、ちなみにset encoding=japanってどこに書いてます?。
その設定ファイルが起動時に読み込まれてない、っていうオチはやめてくださいよ。
起動してから:set encしてeuc-jpが返ってこなかったらかなり鬱ですけど。

420 :409 :2001/08/17(金) 23:01
>>415 さんへ

>WinCE用にコンパイルされたものはがありません。
>DOS版をCEのDOSエミュレータ(有料)で動かすのが現状です。

ざんねんです.
とにかく情報ありがとうございます.
#はぁ

421 :KoRoN :2001/08/17(金) 23:16
>>420
コンパイラと実機をいただければ移植にトライしてみますよ(藁)

422 :名無しさん@お腹いっぱい。 :2001/08/18(土) 23:13
> h, l でのカーソル移動を多バイト文字上で行なおうとすると、
> カーソルが 1バイトずつしか移動しない。

6.0arをRedHat6.1J、libiconv 1.7で --enable-multibyte して
作ったのですが、上記症状がでてます。
vimrcは、gvim-6.0ar-w32j.tar.bz2 中のものをそのまま使用しています。
:set encすると encoding=euc-jp とかえってきます。

423 :409 :2001/08/18(土) 23:44
>>421
Windows2000用のコンパイラ(VB/VC++ embedded)+
エミュレータ(PocketPC/PalmsizePC/HandheldPC)なら
CD-ROMお貸ししますが(^^)

実は,Emacs20.7 の WindowsCE移植パッチをダウンロードして,
win32→winceの移植の工数をざっと見積もろうとしたのですが,
パッチが3MBもあって萎えてしまいました.
(厳密にいうとパッチでなくて修正の入ったファイルのアーカイブだった)

ttp://www.rainer-keuchel.de/software.html

424 :名無しさん@お腹いっぱい。 :2001/08/19(日) 04:10
Patch for vim to use GLOBAL
http://tamacom.com/unix/index.html#vim
ctagsと違ってどこで使ってるかわかる

vidbg (vi debug)
http://www.tildeslash.org/vidbg.html
vim6とは直接かんけーないけど、
こんなんあると便利

425 :名無しさん@お腹いっぱい。 :2001/08/19(日) 14:19
>422
FreeBSD 3.4R上のvim-6.0ar, libiconv 1.7だけど、2バイト文字系は
ちゃんと2バイトずつカーソル移動する(つーかカーソル形状も2バイト分
になる)よん。

ちゃんとmakeできてるか、configureの出力とかldd vim(ってLinuxにも
あったっけ? リンクするshared libraryの一覧出す奴)結果とか調べて
みたら?

426 :425 :2001/08/19(日) 14:22
RedHatだとデフォルトで(日本語非対応の)vimが入ってたりするから、
pathの関係で実はそっちが動いてたりして...

427 :KoRoN :2001/08/19(日) 18:29
>>423
ありがとうございます。同じことを考えて友人に手配したところです。
チョコチョコとやってみたいと思いますので、
少し気長に期待せずに待ってもらえると嬉しいです。

428 :名無しさん@お腹いっぱい。 :2001/08/19(日) 19:32
> ちゃんとmakeできてるか、configureの出力とかldd vim(ってLinuxにも
> あったっけ? リンクするshared libraryの一覧出す奴)結果とか調べて
> みたら?

見ることはできますが、それを見ることで何かわかるんですか?

> FreeBSD 3.4R上の

あ、FreeBSD信者様でしたか。ごめんなさい。

429 :422 :2001/08/19(日) 21:19
環境変数 LANG=ja で解決!

430 :名無しさん@Vim :2001/08/19(日) 22:16
set fileencodings=iso-2022-jp,cp932,utf-8,utf-16,ucs-2-internal,ucs-2
set encoding=euc-jp
set termencoding=euc-jp

ってな感じで使ってる者です(Linux + libiconv).
ですが,これだと空のファイルや,英語のみのファイルは当然 iso-2022-jp と
認識されてしまいます.
でも encoding=euc-jp にしている事からも分かるように,出来ればそういう
場合は euc-jp として認識したいのです.
euc-jp を先頭に持って来ちゃったらこの問題は解決するものの,他の文字コー
ドのテキストは変換出来なくなってしまいますし,何か良い方法は無いでしょ
うか?

空ファイル問題は w3m での textarea への書き込みに使う時に,英語ファイル
問題は,拾って来たプログラムのソースに自分で日本語でコメントを付ける
時等に,該当ファイルが iso-2022-jp で保存されてしまいます.
毎回 :set fileencodinf=euc-jp とかやるのはちょっと面倒なのですが,何
か無いでしょうか?
まぁ iso-2022-jp でも特に困る事はそれ程無いと言えば無いのですが・・・.

431 :430 :2001/08/19(日) 22:18
書き忘れてました.バージョンは 6.0ar です.

432 :KoRoN :2001/08/20(月) 06:12
>>430
次のスクリプトをpluginディレクトリに置くことで対処しています。
http://ixeris.bios.ics.saitama-u.ac.jp/~koron/software/vim/checkjis.vim
iconvによるコンバートが発生して時間がかかってしまうことにはかわりありませんが
w3mから2chに書き込む(!!)時には重宝するでしょう。

433 :430 :2001/08/20(月) 10:21
>>432
をぉ!ありがとうございますm(_ _)m.
なる程,マルチバイト文字が無かったら
「fileencoding を空」にしちゃえば良かったんですか.
お勉強になりました.

434 :425 :2001/08/20(月) 11:37
>>428
なんか言われるとすぐに信者かよ。うぜー奴。
要は「実はちゃんとマルチバイト対応でmakeできてないんじゃないか?」
って事なんだけどね。

435 :名無しさん@お腹いっぱい。 :2001/08/21(火) 22:27
file explorer で i すると妙な警告が出るのってオレんとこだけ ( vim6.0ar )?

436 :KoRoN :2001/08/22(水) 08:34
>>435
手元の最新版(60as)では修正されています。

437 :423 :2001/08/22(水) 20:08
よかったら参考にしてみてください.

http://www.rainer-keuchel.de/software.html

UNIXのフリーソフトをWindowsCEに移植しているページです.
Apache TeX Emacs X-Windows などがあります.すごすぎる..

438 :437 :2001/08/22(水) 20:09
437は>>427さん宛です.

439 :名無しさん@お腹いっぱい。 :2001/08/23(木) 01:52
信者に信者と言ってなにが悪いこの信者(プ

440 :名無しさん@お腹いっぱい。 :2001/08/23(木) 01:58
証明するなり、理由つけるなりしてからにしような(w

441 :名無しさん@お腹いっぱい。 :2001/08/23(木) 07:00
>>428
言われていることが理解できないならそれだけ書けば良い
何かあると信者だとか言い出すアンチ信者うざい
スレ違いだから別スレでやってくれ

442 :名無しさん@お腹いっぱい。 :2001/08/23(木) 10:19
>>439 はただの粘着、放置しておけばいいじゃん。

443 :らーららー :2001/08/23(木) 14:09
いくらなんでも放置は可哀想だ。たとえ「フリ」でもいいから構ってあげてくれ

444 :sage :2001/08/23(木) 16:59
usage

445 :名無しさん@XEmacs :2001/08/23(木) 21:18
x の gvim で xim 使って複数文節を変換するときに、変換対象文節とそうでない
文節の色が同じなのは、なんとかならんもんかのぅ。

446 :KoRoN :2001/08/24(金) 13:10
カーソルが1バイトずつしか移動できないと嘆いている方がいたと思いますが、
一つ思い出したことがあったので書いておきます。
必ずしも解決するという性質のものではないのですが…。
mblen()もしくは_Xmblen()が日本語に正しく反応しないために動かないことがあります。
http://ixeris.bios.ics.saitama-u.ac.jp/~koron/bbs/bbs.cgi?article=627
http://ixeris.bios.ics.saitama-u.ac.jp/~koron/bbs/bbs.cgi?article=630
http://ixeris.bios.ics.saitama-u.ac.jp/~koron/bbs/bbs.cgi?article=631

対処法はmbyte.cでmblen()を検索して、その周囲で#if 0で無効になっている
コードを#if 1で有効にしてあげれば良いのですが…これじゃ伝わらないかな?(^-^;

447 :ビンゴ :2001/08/25(土) 14:21
>>446
> カーソルが1バイトずつしか移動できないと嘆いている方がいたと思いますが、
(snip)
> 対処法はmbyte.cでmblen()を検索して、その周囲で#if 0で無効になっている
> コードを#if 1で有効にしてあげれば良いのですが…これじゃ伝わらないかな?(^-^;

カーソルが multibytes を認識してないと嘆いていたうちの一人です。
ありがとうございます。遂に意図した通りの動作をする様になりました。

時間もなくて、ここで教えて頂いたことも仲々試せずにいたのですが、今回のは
gdb で見てみたらそのものズバリでした。(mblen() が 1 しか返さない)
で、実際に make し直して、h,l,x,C-h 辺りの動作を一通り確認したところ、全て
問題なく動作しました。

要領を得ない質問に最後まで付き合って頂いて、本当にありがとうございました。

448 :名無しさん@お腹いっぱい。 :2001/08/25(土) 14:24
KoRoN サイコー

449 :KoRoN :2001/08/25(土) 15:16
>>447
本当はもっとスマートな対処法(autotoolsでmblen()をチェックしてdefineとか)を組み込むべきでしょうけど
mblen()に関してあらゆる環境でチェックを受ける必要があるので難しいですね。

450 :名無しさん@お腹いっぱい。 :2001/08/25(土) 16:23
>>445 の件ってなんとかならないのかな?
俺も困ってる

451 :名無しさん@お腹いっぱい。 :2001/08/25(土) 18:58
vim6 ではないですが、Debian potato の vim5 はカーソルが 1 byte ずつ
しか移動しません。これは option かなんかで直せるんでしょうか?
multibyte で compile はしてあるみたいですが。

452 :KoRoN :2001/08/25(土) 19:22
>>451
スレ違いな上にFAQですな。vim5などもう既に忘却の彼方ですけど…
:set fileencoding=japan
してください。

453 :名無しさん@お腹いっぱい。 :2001/08/25(土) 19:24
vim-6.0as.tar.bz2は
vim-6.0as-*.tar.gz(4ファイル)をまとめたヤツでしょうか?

454 :名無しさん@お腹いっぱい。 :2001/08/25(土) 20:31
>>453
http://www.vim.org/announce/vim-6.0as

Unix:
unix/vim-6.0as.tar.bz2 sources + runtime files, bzip2 compressed
unix/vim-6.0as-rt1.tar.gz runtime files part 1
unix/vim-6.0as-rt2.tar.gz runtime files part 2
unix/vim-6.0as-src1.tar.gz sources part 1
unix/vim-6.0as-src2.tar.gz sources part 2
unix/vim-6.0ar-6.0as.diff.gz diff between 6.0ar and 6.0as

455 :名無しさん@お腹いっぱい。 :2001/08/25(土) 20:39
アナウンスを読み忘れていました。
逝ってきます&thx >>454

456 :名無しさん@お腹いっぱい。 :2001/08/25(土) 21:38
age荒らし

457 :名無しさん@お腹いっぱい。 :2001/08/26 07:10
emacs葉だがage

458 :本スレ浮上開始 :01/08/26 09:17
自治age

459 :本スレ浮上継続 :01/08/26 12:43
「墨で『Vim』と書いた白扇子」

460 :KoRoN :01/08/26 17:03
>>459
そんな恥ずかしいなぁ(藁

461 :459 :01/08/26 19:02 ID:4JdeOkXM
2周年オメデタウ!!
そしてこれからもヨロシク!! > KoRoN 殿

漏れも早くそーゆー貢献が出来るスキルを身に付けたいDeath.
今の漏れに出来る事なんて応援ぐらいなのさ・・・頑張ろっと.

# あまりに個人的なので一応 sage

462 :名無しさん@お腹いっぱい。 :01/08/27 17:05 ID:QgN1dslo
./configure で--enable-multibyte --enable-xim --enable-xfontset
を入れたんだけど、gvimが文字化けするのは
自分のフォント設定がまずいのでしょうか。
vim on ktermでは文字化けしないので、多分X側の設定なのでしょうけど。
#これじゃスレ違いかな?

463 :KoRoN :01/08/27 17:14 ID:XtL9rfQ6
./configure --help
すればわかりますが--enable-xfontsetではなく--enable-fontsetを試してみて下さい。
変更されたようです。
# 全くはずれているかもしれませんが

で、私は:set gfs=a14,r14,k14と設定しています。

464 :二周年わっしょい :01/08/27 23:46 ID:ev7f8jX.
プレゼントは吉井玲写真集「VIM」きぼーん(藁

http://www.horipro.co.jp/fun/new/photo01.html

465 :462 :01/08/28 00:53 ID:9DnFZD0A
うまく逝きました。
--enable-fontsetと、:set gfs=a14,r14,k14を試した結果、
無事に日本語が表示できるようになりました。
こうやって、だんだんUNIX系OSが素敵だと思えてくるようになるのね(wara

466 :KoRoN :01/08/28 16:34 ID:HTa2urHE
>>464
きぼーん

>>465
UNIXは好きですけどXは嫌いです。
理由:何をするにもマウスを使わなきゃならないから。

467 :名無しさん@お腹いっぱい。 :01/08/29 00:22 ID:H6dW2Lww
>>466
ウィンドウの位置を変えるときはマウスの方が早いからマウス使うけど、
普段はほぼ全てキーボードで操作してますよ>X 上
マウス使う頻度は Windows の方が圧倒的に上ですね

まぁ、ほとんど Eterm 上で作業しているからかもしれないけど

VIM か、せめて vi が無いと何もできません

468 :KoRoN :01/08/29 02:16 ID:iEjNu4gI
>>467
Xは最近まで統一されたキーボード操作のできるウィンドウマネージャなかったですよね。
あったとしても色々設定ファイルを書かなきゃいけなかったかな?。

> マウス使う頻度は Windows の方が圧倒的に上ですね
それは…Windowsの実力を理解していないのではないでしょうか。
デフォルトのショートカット、メニュー、Winキーとのコンボ、隠し(?)キー操作などで、
マウス操作の殆どが代替できて窓の位置操作も楽々です。
実はマウス無しでもWindowsならば生きていけます。Xだとちょっと無理です。
# 単にXのスキル不足という説はありかも。
CUIが弱いのが難点ですがcygwinで補えば満足逝くレベル、というところです。

あとXの嫌いなところはXIMの仕様。もう少しちゃんと作りこんでおいてくれれば
vimとの連携が綺麗になったのに…(T-T)。

そうそう。vimが無いと何もできない(する気になれない)点は激しく同意です(藁

469 :名無しさん@お腹いっぱい。 :01/08/29 14:16 ID:7FxeFJEc
:Explore が使えない。。。

470 :KoRoN :01/08/29 14:44 ID:0R2otdvg
>>469
いや単に「使えない」と言われても対応に困るんですけど…
動かなくて困っているのならば、状況がわかるように書いてくれれば何か助言ができるかもしれません。
そうではなくて「こんなの使ってらんネェヨ、ゴルァ」なら「スクリプトに頼るなこのドキュソがぁ」なのですが(藁

私が配布しているvim60atでちょっと試した限りでは普通に動いているように見えます。

471 :名無しさん@お腹いっぱい。 :01/08/29 14:58 ID:BPLgj24U
某掲示板(笑)にて dicwin.vim なるものがあるのを知り, gene95 辞書ダ
ウソしようと思ったんだけど,あれって配布止めてしまったのかな?
なんかリンク切ればっかりで・・・
誰か所在をご存じの方教えて下さいまし.

# 激しくスレ違いな気もして来たので sage

472 :KoRoN :01/08/29 15:06 ID:0R2otdvg
>>471
dicwin.vimの中に書いてありますよ。
昨日確認したら、まだちゃんと配布してました。
リンク張っておきましょう。
http://www-nagao.kuee.kyoto-u.ac.jp/member/tsuchiya/sdic/data/gene.html


続きを読む

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver5.26+ (01/10/21-)