📄 synhighlighterfoxpro.pas
字号:
function TSynFoxproSyn.KeyHash(ToHash: PChar): Integer;
begin
Result := 0;
while ToHash^ in ['_', '0'..'9', 'a'..'z', 'A'..'Z'] do
begin
inc(Result, mHashTable[ToHash^]);
inc(ToHash);
end;
fStringLen := ToHash - fToIdent;
end;
function TSynFoxproSyn.KeyComp(const aKey: String): Boolean;
var
I: Integer;
Temp: PChar;
begin
Temp := fToIdent;
if Length(aKey) = fStringLen then
begin
Result := True;
for i := 1 to fStringLen do
begin
if mHashTable[Temp^] <> mHashTable[aKey[i]] then
begin
Result := False;
break;
end;
inc(Temp);
end;
end else Result := False;
end;
function TSynFoxproSyn.Func15: TtkTokenKind;
begin
if KeyComp('if') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func19: TtkTokenKind;
begin
if KeyComp('do') then Result := tkKey else
if KeyComp('and') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func21: TtkTokenKind;
begin
if KeyComp('at') then Result := tkKey else
if KeyComp('bar') then Result := tkKey else
if KeyComp('of') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func22: TtkTokenKind;
begin
if KeyComp('go') then Result := tkKey else
if KeyComp('abs') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func23: TtkTokenKind;
begin
if KeyComp('bof') then Result := tkKey else
if KeyComp('asc') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func25: TtkTokenKind;
begin
if KeyComp('all') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func26: TtkTokenKind;
begin
if KeyComp('dele') then Result := tkKey else
if KeyComp('eof') then Result := tkKey else
if KeyComp('dim') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func27: TtkTokenKind;
begin
if KeyComp('rgb') then Result := tkKey else
if KeyComp('off') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func28: TtkTokenKind;
begin
if KeyComp('tag') then Result := tkKey else
if KeyComp('read') then Result := tkKey else
if KeyComp('call') then Result := tkKey else
if KeyComp('case') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func29: TtkTokenKind;
begin
if KeyComp('on') then Result := tkKey else
if KeyComp('blan') then Result := tkKey else
if KeyComp('chr') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func30: TtkTokenKind;
begin
if KeyComp('date') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func31: TtkTokenKind;
begin
if KeyComp('echo') then Result := tkKey else
if KeyComp('bell') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func32: TtkTokenKind;
begin
if KeyComp('get') then Result := tkKey else
if KeyComp('again') then Result := tkKey else
if KeyComp('file') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func33: TtkTokenKind;
begin
if KeyComp('acti') then Result := tkKey else
if KeyComp('or') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func35: TtkTokenKind;
begin
if KeyComp('val') then Result := tkKey else
if KeyComp('to') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func36: TtkTokenKind;
begin
if KeyComp('para') then Result := tkKey else
if KeyComp('gath') then Result := tkKey else
if KeyComp('rela') then Result := tkKey else
if KeyComp('field') then Result := tkKey else
if KeyComp('atan') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func37: TtkTokenKind;
begin
if KeyComp('begin') then Result := tkKey else
if KeyComp('scan') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func38: TtkTokenKind;
begin
if KeyComp('appe') then Result := tkKey else
if KeyComp('endif') then Result := tkKey else
if KeyComp('cancel') then Result := tkKey else
if KeyComp('near') then Result := tkKey else
if KeyComp('edit') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func39: TtkTokenKind;
begin
if KeyComp('fill') then Result := tkKey else
if KeyComp('for') then Result := tkKey else
if KeyComp('clear') then Result := tkKey else
if KeyComp('debug') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func40: TtkTokenKind;
begin
if KeyComp('table') then Result := tkKey else
if KeyComp('blank') then Result := tkKey else
if KeyComp('seek') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func41: TtkTokenKind;
begin
if KeyComp('else') then Result := tkKey else
if KeyComp('help') then Result := tkKey else
if KeyComp('modi') then Result := tkKey else
if KeyComp('box') then Result := tkKey else
if KeyComp('lock') then Result := tkKey else
if KeyComp('key') then Result := tkKey else
if KeyComp('sele') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func42: TtkTokenKind;
begin
if KeyComp('enddo') then Result := tkKey else
if KeyComp('alias') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func43: TtkTokenKind;
begin
if KeyComp('define') then Result := tkKey else
if KeyComp('scat') then Result := tkKey else
if KeyComp('local') then Result := tkKey else
if KeyComp('mark') then Result := tkKey else
if KeyComp('ansi') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func44: TtkTokenKind;
begin
if KeyComp('set') then Result := tkKey else
if KeyComp('clock') then Result := tkKey else
if KeyComp('func') then Result := tkKey else
if KeyComp('comm') then Result := tkKey else
if KeyComp('talk') then Result := tkKey else
if KeyComp('space') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func45: TtkTokenKind;
begin
if KeyComp('modal') then Result := tkKey else
if KeyComp('use') then Result := tkKey else
if KeyComp('say') then Result := tkKey else
if KeyComp('path') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func46: TtkTokenKind;
begin
if KeyComp('memo') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func48: TtkTokenKind;
begin
if KeyComp('blink') then Result := tkKey else
if KeyComp('accept') then Result := tkKey else
if KeyComp('build') then Result := tkKey else
if KeyComp('device') then Result := tkKey else
if KeyComp('fixed') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func49: TtkTokenKind;
begin
if KeyComp('escape') then Result := tkKey else
if KeyComp('not') then Result := tkKey else
if KeyComp('year') then Result := tkKey else
if KeyComp('clos') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func51: TtkTokenKind;
begin
if KeyComp('top') then Result := tkKey else
if KeyComp('repl') then Result := tkKey else
if KeyComp('delete') then Result := tkKey else
if KeyComp('files') then Result := tkKey else
if KeyComp('endcase') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func52: TtkTokenKind;
begin
if KeyComp('create') then Result := tkKey else
if KeyComp('from') then Result := tkKey else
if KeyComp('repla') then Result := tkKey else
if KeyComp('proc') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func53: TtkTokenKind;
begin
if KeyComp('wait') then Result := tkKey else
if KeyComp('exact') then Result := tkKey else
if KeyComp('menu') then Result := tkKey else
if KeyComp('scheme') then Result := tkKey else
if KeyComp('database') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func54: TtkTokenKind;
begin
if KeyComp('class') then Result := tkKey else
if KeyComp('close') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func55: TtkTokenKind;
begin
if KeyComp('recno') then Result := tkKey else
if KeyComp('deleted') then Result := tkKey else
if KeyComp('skip') then Result := tkKey else
if KeyComp('fields') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func56: TtkTokenKind;
begin
if KeyComp('index') then Result := tkKey else
if KeyComp('append') then Result := tkKey else
if KeyComp('fopen') then Result := tkKey else
if KeyComp('this') then Result := tkKey else
if KeyComp('locate') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func57: TtkTokenKind;
begin
if KeyComp('while') then Result := tkKey else
if KeyComp('bott') then Result := tkKey else
if KeyComp('str') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func58: TtkTokenKind;
begin
if KeyComp('machelp') then Result := tkKey else
if KeyComp('mackey') then Result := tkKey else
if KeyComp('brow') then Result := tkKey else
if KeyComp('into') then Result := tkKey else
if KeyComp('fcreate') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func59: TtkTokenKind;
begin
if KeyComp('view') then Result := tkKey else
if KeyComp('copy') then Result := tkKey else
if KeyComp('gather') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func60: TtkTokenKind;
begin
if KeyComp('with') then Result := tkKey else
if KeyComp('endscan') then Result := tkKey else
if KeyComp('order') then Result := tkKey else
if KeyComp('fclose') then Result := tkKey else
if KeyComp('replace') then Result := tkKey else
if KeyComp('step') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func61: TtkTokenKind;
begin
if KeyComp('proced') then Result := tkKey else
if KeyComp('atline') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func62: TtkTokenKind;
begin
if KeyComp('endfor') then Result := tkKey else
if KeyComp('border') then Result := tkKey else
if KeyComp('margin') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func63: TtkTokenKind;
begin
if KeyComp('color') then Result := tkKey else
if KeyComp('array') then Result := tkKey else
if KeyComp('command') then Result := tkKey else
if KeyComp('topic') then Result := tkKey else
if KeyComp('next') then Result := tkKey else
if KeyComp('scatt') then Result := tkKey else
if KeyComp('public') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func64: TtkTokenKind;
begin
if KeyComp('retu') then Result := tkKey else
if KeyComp('select') then Result := tkKey else
if KeyComp('screen') then Result := tkKey else
if KeyComp('push') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func65: TtkTokenKind;
begin
if KeyComp('carry') then Result := tkKey else
if KeyComp('release') then Result := tkKey else
if KeyComp('relati') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func66: TtkTokenKind;
begin
if KeyComp('decimals') then Result := tkKey else
if KeyComp('event') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func67: TtkTokenKind;
begin
if KeyComp('quit') then Result := tkKey else
if KeyComp('headings') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func68: TtkTokenKind;
begin
if KeyComp('collate') then Result := tkKey else
if KeyComp('region') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func69: TtkTokenKind;
begin
if KeyComp('message') then Result := tkKey else
if KeyComp('default') then Result := tkKey else
if KeyComp('text') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func70: TtkTokenKind;
begin
if KeyComp('filter') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func72: TtkTokenKind;
begin
if KeyComp('modify') then Result := tkKey else
if KeyComp('schemes') then Result := tkKey else
if KeyComp('memvar') then Result := tkKey else
if KeyComp('databases') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func73: TtkTokenKind;
begin
if KeyComp('functi') then Result := tkKey else
if KeyComp('curdir') then Result := tkKey else
if KeyComp('mouse') then Result := tkKey else
if KeyComp('format') then Result := tkKey else Result := tkIdentifier;
end;
function TSynFoxproSyn.Func74: TtkTokenKind;
begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -