📄 highlighter.pad
字号:
unit Highlighter;
{ Global variables }
var
Highlighter: TMenuItem;
HighlighterAdd: TMenuItem;
// THighLighter = (hlNone, hlPascal, hlCBuilder, hlSql, hlPython,
// hlJava, hlVB, hlHtml, hlPerl, hlIni);
{ function NewItem(const ACaption: string; AShortCut: TShortCut; AChecked, AEnabled: Boolean; AOnClick: TNotifyEvent; hCtx: Word; const AName: string): TMenuItem; }
procedure InitHighlighter;
begin
Highlighter := nil;
Highlighter := NewItem('&Highlighter', 0, False, True, 0, nil {ignored - always must be nil}, 'miHighlighter');
MainWindow.Menu.Items.Insert(MainWindow.Menu.Items.Count - 1, Highlighter);
AddHighlighter('None', 0, 'N', 'miHighlighterNone');
AddHighlighter('Pascal', 1, 'P', 'miHighlighterPascal');
AddHighlighter('C++', 2, 'C', 'miHighlighterCBuilder');
AddHighlighter('SQL', 3, 'S', 'miHighlighterSQL');
AddHighlighter('Java', 5, 'J', 'miHighlighterJava');
AddHighlighter('Html', 7, 'H', 'miHighlighterHtml');
AddHighlighter('Ini', 9, 'I', 'miHighlighterIni');
end;
procedure AddHighlighter(Caption: string; Index: Integer; Key: string; ComponentName: string);
var
ShiftState: TShiftState;
begin
ShiftState := [ssCtrl, ssAlt];
HighlighterAdd := NewItem(Caption, ShortCut(ord(Key), ShiftState), False, True, 0, 0, ComponentName);
HighlighterAdd.OnClick := HighlighterClick;
HighlighterAdd.Tag := Index;
Highlighter.Add(HighlighterAdd);
end;
procedure HighlighterClick(Sender: TObject);
begin
Editor.Highlighter := Sender.Tag;
Editor.LoadColors;
end;
procedure OpenHighlighter(FileName: string);
begin
if Cmp(Copy(FileName, Length(FileName) - 3, 4), '.ini') then
begin
Editor.Highlighter := 9;
Editor.LoadColors;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -