mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-22 09:39:31 +02:00
added java syntax highlighter
git-svn-id: trunk@3807 -
This commit is contained in:
parent
f5bd6c0d61
commit
c9b1c26eda
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -81,6 +81,7 @@ components/synedit/synedittypes.pp svneol=native#text/pascal
|
||||
components/synedit/synexporthtml.pas svneol=native#text/pascal
|
||||
components/synedit/synhighlightercpp.pp svneol=native#text/pascal
|
||||
components/synedit/synhighlighterhtml.pp svneol=native#text/pascal
|
||||
components/synedit/synhighlighterjava.pas svneol=native#text/pascal
|
||||
components/synedit/synhighlighterlfm.pas svneol=native#text/pascal
|
||||
components/synedit/synhighlightermulti.pas svneol=native#text/pascal
|
||||
components/synedit/synhighlighterpas.pp svneol=native#text/pascal
|
||||
|
@ -1301,7 +1301,7 @@ begin
|
||||
i:=1;
|
||||
LastLineEndPos:=0;
|
||||
Result:=0;
|
||||
while i<length(Txt) do begin
|
||||
while i<=length(Txt) do begin
|
||||
if (Txt[i] in [#10,#13]) then begin
|
||||
inc(Result);
|
||||
inc(i);
|
||||
|
@ -18,7 +18,7 @@ implicitunits=syntextdrawer syneditkeycmds synedittypes syneditstrconst \
|
||||
syneditsearch syneditmiscprocs syneditmiscclasses synedittextbuffer \
|
||||
synedit synedithighlighter synhighlightermulti synregexpr synexporthtml \
|
||||
syneditexport synmemo synmacrorecorder syneditplugins syneditregexsearch \
|
||||
synhighlighterposition
|
||||
synhighlighterposition synhighlighterjava
|
||||
|
||||
[require]
|
||||
packages=fcl regexpr
|
||||
|
@ -20,7 +20,7 @@ uses
|
||||
SynEditAutoComplete, SynhighlighterHTML, SynhighlighterCPP, SynHighlighterXML,
|
||||
SynHighlighterLFM, SynHighlighterPerl, SynHighlighterMulti, SynRegExpr,
|
||||
SynEditExport, SynExportHTML, SynMemo, SynMacroRecorder, SynEditPlugins,
|
||||
SynEditRegexSearch, SynHighlighterPosition;
|
||||
SynEditRegexSearch, SynHighlighterPosition, SynHighlighterJava;
|
||||
|
||||
implementation
|
||||
|
||||
@ -29,6 +29,9 @@ end.
|
||||
{ =============================================================================
|
||||
|
||||
$Log$
|
||||
Revision 1.15 2003/01/15 10:17:49 mattias
|
||||
added java syntax highlighter
|
||||
|
||||
Revision 1.14 2002/12/02 16:38:13 mattias
|
||||
started position highlighter
|
||||
|
||||
|
1392
components/synedit/synhighlighterjava.pas
Normal file
1392
components/synedit/synhighlighterjava.pas
Normal file
File diff suppressed because it is too large
Load Diff
@ -47,7 +47,7 @@ uses
|
||||
{$ifdef NEW_EDITOR_SYNEDIT}
|
||||
SynEdit, SynEditHighlighter, SynEditAutoComplete, SynEditKeyCmds,
|
||||
SynHighlighterPas, SynHighlighterHTML, SynHighlighterCPP, SynHighlighterXML,
|
||||
SynHighlighterLFM, SynHighlighterPerl,
|
||||
SynHighlighterLFM, SynHighlighterPerl, SynHighlighterJava,
|
||||
{$else}
|
||||
mwCustomEdit, mwPasSyn, mwHighlighter,
|
||||
{$endif}
|
||||
@ -70,7 +70,7 @@ type
|
||||
|
||||
TLazSyntaxHighlighter =
|
||||
(lshNone, lshText, lshFreePascal, lshDelphi, lshLFM, lshXML, lshHTML,
|
||||
lshCPP, lshPerl);
|
||||
lshCPP, lshPerl, lshJava);
|
||||
|
||||
TAdditionalHilightAttribute = (ahaNone, ahaTextBlock, ahaExecutionPoint,
|
||||
ahaEnabledBreakpoint, ahaDisabledBreakpoint, ahaInvalidBreakpoint,
|
||||
@ -90,7 +90,7 @@ const
|
||||
|
||||
LazSyntaxHighlighterClasses: array[TLazSyntaxHighlighter] of TCustomSynClass =
|
||||
( nil, nil, TSynPasSyn, TSynPasSyn, TSynLFMSyn, TSynXMLSyn, TSynHTMLSyn,
|
||||
TSynCPPSyn, TSynPerlSyn);
|
||||
TSynCPPSyn, TSynPerlSyn, TSynJavaSyn);
|
||||
|
||||
|
||||
{ Comments }
|
||||
@ -104,7 +104,8 @@ const
|
||||
comtHtml, // lshXML
|
||||
comtHtml, // lshHTML
|
||||
comtCPP, // lshCPP
|
||||
comtPerl // lshPerl
|
||||
comtPerl, // lshPerl
|
||||
comtCPP // lshJava
|
||||
);
|
||||
|
||||
const
|
||||
@ -535,7 +536,8 @@ const
|
||||
'XML',
|
||||
'HTML',
|
||||
'C++',
|
||||
'Perl'
|
||||
'Perl',
|
||||
'Java'
|
||||
);
|
||||
|
||||
var
|
||||
@ -560,7 +562,7 @@ const
|
||||
CompatibleLazSyntaxHilighter:
|
||||
array[TLazSyntaxHighlighter] of TLazSyntaxHighlighter= (
|
||||
lshNone, lshText, lshFreePascal, lshFreePascal, lshLFM, lshXML, lshHTML,
|
||||
lshCPP, lshPerl
|
||||
lshCPP, lshPerl, lshJava
|
||||
);
|
||||
|
||||
DefaultColorScheme = 'Default';
|
||||
@ -944,6 +946,42 @@ begin
|
||||
end;
|
||||
end;
|
||||
Add(NewInfo);
|
||||
|
||||
// create info for Perl
|
||||
NewInfo:=TEditOptLanguageInfo.Create;
|
||||
with NewInfo do begin
|
||||
TheType:=CompatibleLazSyntaxHilighter[lshJava];
|
||||
DefaultCommentType:=DefaultCommentTypes[TheType];
|
||||
SynClass:=LazSyntaxHighlighterClasses[TheType];
|
||||
FileExtensions:='java';
|
||||
SampleSource:=
|
||||
'/* Java syntax highlighting */'#13#10 +
|
||||
'import java.util.*;'#13#10 +
|
||||
#13#10 +
|
||||
'/** Example class */'#13#10 +
|
||||
'public class Sample {'#13#10 +
|
||||
' public static void main(String[] args) {'#13#10 +
|
||||
' int i = 0;'#13#10 +
|
||||
' for(i = 0; i < 10; i++)'#13#10 +
|
||||
' System.out.println("Hello world");'#13#10 +
|
||||
' }'#13#10 +
|
||||
'}'#13#10 +
|
||||
'/* Text Block */'#13#10 +
|
||||
#13#10;
|
||||
AddAttrSampleLines[ahaTextBlock]:=12;
|
||||
MappedAttributes:=TStringList.Create;
|
||||
with MappedAttributes do begin
|
||||
Add('Comment=Comment');
|
||||
Add('Documentation=Comment');
|
||||
Add('Identifier=Identifier');
|
||||
Add('Reserved_word=Reserved_word');
|
||||
Add('Number=Number');
|
||||
Add('Space=Space');
|
||||
Add('String=String');
|
||||
Add('Symbol=Symbol');
|
||||
end;
|
||||
end;
|
||||
Add(NewInfo);
|
||||
end;
|
||||
|
||||
destructor TEditOptLangList.Destroy;
|
||||
|
Loading…
Reference in New Issue
Block a user