If s='.xls' Then
Begin//高亮2
//按照Excel方式处理
succ:=False;
If ExtractStreamFromExcel(PWideChar(FileName),ms) Then//行1
Begin//高亮1
succ:=RipSWF(ms,ChangeFileExt(od.Files,'.swf'));
End;
End;//End of Excel Processing
1. 对于光标在函数内部时,这两个选项区别是不大,差别就在函数局部量声明处。不过,当前最外层块的概念广一点,还包括外部单独的class record声明等的高亮。
2. if与then我们也处理成了一个单独的块,所以会出现只高亮 if then的情况。另外 begin 和end本身我们没有将其太严格地作为块分割点,因此光标在begin上时也可能高亮更外一层的begin end。部分显示的规则可能没处理得这么严格。