vim6
[372:emacsのちvim (2001/08/10(金) 04:12)]
>>371
listcharsみたいなのは無いのではないかと。
常に明示的に表示しておきたいなら却下だけど、
簡単な方法として、hlsearchして'/'や'?'で探すってのはどう?
これで気に入らないなら、scriptかsyntax highlight
ってところに落ち着くかと。
[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>
read.cgi ver5.26+ (01/10/21-)