2楼: |
是 unicode的问题,不是源代码版本的问题。
function TCustomSynEdit.IsWordBreakChar(AChar: WideChar): Boolean; begin if Assigned(Highlighter) then Result := Highlighter.IsWordBreakChar(AChar) else // FM removed non-asciii chars case AChar of #0..#32, '.', ',', ';', ':', '"', '''', '?, '`', '?, '^', '!', '?', '&', '$', '@', '%', '#', '~', '[', ']', '(', ')', '{', '}', '<', '>', '-', '=', '+', '*', '/', '\', '|': Result := True; else Result := False; end;
中有问题,无法编译,需要修改
---------- SynEdit.pas和SynEditSearch.pas中有乱码的问题,看到解决方法了:
其实,就是因为这些里面有些utf8字符,而Delphi默认的用cp936的文件格式打开,导致的错误。正确的应该是
function TSynCustomHighlighter.IsWordBreakChar(AChar: WideChar): Boolean; begin case AChar of #0..#32, '.', ',', ';', ':', '"', '''', '′', '`', '°', '^', '!', '?', '&', '$', '@', '§', '%', '#', '~', '[', ']', '(', ')', '{', '}', '<', '>', '-', '=', '+', '*', '/', '\', '|': Result := True; else Result := False; end; end; 用正确的代码粘贴修改后,保存,Delphi2010会提示包含utf8字符,是否保存为utf8,选择“是”即可。
----------------------------------------------
只有偏执狂才能生存!
|