Package org.jline.console.impl
Class SystemHighlighter
- java.lang.Object
-
- org.jline.reader.impl.DefaultHighlighter
-
- org.jline.console.impl.SystemHighlighter
-
- All Implemented Interfaces:
Highlighter
public class SystemHighlighter extends DefaultHighlighter
Highlight command and language syntax using nanorc highlighter.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classSystemHighlighter.FileHighlightCommand
-
Field Summary
Fields Modifier and Type Field Description protected SyntaxHighlighterargsHighlighterprotected SyntaxHighlightercommandHighlighterprotected intcommandIndexprivate java.util.List<java.util.function.Supplier<java.lang.Boolean>>externalHighlightersRefreshprotected java.util.Map<java.lang.String,SystemHighlighter.FileHighlightCommand>fileHighlightprotected SyntaxHighlighterlangHighlighterprivate static java.lang.StringREADER_COLORSprivate static java.lang.StringREGEX_COMMENT_LINEprivate StyleResolverresolverprotected java.util.Map<java.lang.String,SyntaxHighlighter>specificHighlighterprotected SystemRegistrysystemRegistry-
Fields inherited from class org.jline.reader.impl.DefaultHighlighter
errorIndex, errorPattern
-
-
Constructor Summary
Constructors Constructor Description SystemHighlighter(SyntaxHighlighter commandHighlighter, SyntaxHighlighter argsHighlighter, SyntaxHighlighter langHighlighter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddExternalHighlighterRefresh(java.util.function.Supplier<java.lang.Boolean> refresh)voidaddFileHighlight(java.lang.String... commands)voidaddFileHighlight(java.lang.String command, java.lang.String subcommand, java.util.Collection<java.lang.String> fileOptions)private java.nio.file.PathcompareThemes(SyntaxHighlighter highlighter, java.nio.file.Path currentTheme)protected AttributedStringdoCommandHighlight(java.lang.String buffer)private booleandoDefaultHighlight(LineReader reader)protected AttributedStringdoFileArgsHighlight(LineReader reader, java.lang.String buffer, java.util.List<java.lang.String> words, SystemHighlighter.FileHighlightCommand fhc)protected AttributedStringdoFileOptsHighlight(LineReader reader, java.lang.String buffer, java.util.List<java.lang.String> words, SystemHighlighter.FileHighlightCommand fhc)AttributedStringhighlight(LineReader reader, java.lang.String buffer)Highlight bufferprivate voidhighlightArgs(java.lang.String args, AttributedStringBuilder asb)private voidhighlightCommand(java.lang.String command, AttributedStringBuilder asb)private voidhighlightFile(java.nio.file.Path path, AttributedStringBuilder asb)private voidhighlightFileArg(LineReader reader, java.lang.String arg, AttributedStringBuilder asb)voidrefresh(LineReader lineReader)Refresh highlight configurationvoidsetSpecificHighlighter(java.lang.String command, SyntaxHighlighter highlighter)protected AttributedStringsystemHighlight(LineReader reader, java.lang.String buffer)-
Methods inherited from class org.jline.reader.impl.DefaultHighlighter
setErrorIndex, setErrorPattern
-
-
-
-
Field Detail
-
resolver
private StyleResolver resolver
-
REGEX_COMMENT_LINE
private static final java.lang.String REGEX_COMMENT_LINE
- See Also:
- Constant Field Values
-
READER_COLORS
private static final java.lang.String READER_COLORS
- See Also:
- Constant Field Values
-
commandHighlighter
protected final SyntaxHighlighter commandHighlighter
-
argsHighlighter
protected final SyntaxHighlighter argsHighlighter
-
langHighlighter
protected final SyntaxHighlighter langHighlighter
-
systemRegistry
protected final SystemRegistry systemRegistry
-
fileHighlight
protected final java.util.Map<java.lang.String,SystemHighlighter.FileHighlightCommand> fileHighlight
-
specificHighlighter
protected final java.util.Map<java.lang.String,SyntaxHighlighter> specificHighlighter
-
commandIndex
protected int commandIndex
-
externalHighlightersRefresh
private final java.util.List<java.util.function.Supplier<java.lang.Boolean>> externalHighlightersRefresh
-
-
Constructor Detail
-
SystemHighlighter
public SystemHighlighter(SyntaxHighlighter commandHighlighter, SyntaxHighlighter argsHighlighter, SyntaxHighlighter langHighlighter)
-
-
Method Detail
-
setSpecificHighlighter
public void setSpecificHighlighter(java.lang.String command, SyntaxHighlighter highlighter)
-
refresh
public void refresh(LineReader lineReader)
Description copied from interface:HighlighterRefresh highlight configuration
-
addExternalHighlighterRefresh
public void addExternalHighlighterRefresh(java.util.function.Supplier<java.lang.Boolean> refresh)
-
compareThemes
private java.nio.file.Path compareThemes(SyntaxHighlighter highlighter, java.nio.file.Path currentTheme)
-
highlight
public AttributedString highlight(LineReader reader, java.lang.String buffer)
Description copied from interface:HighlighterHighlight buffer- Specified by:
highlightin interfaceHighlighter- Overrides:
highlightin classDefaultHighlighter- Parameters:
reader- LineReaderbuffer- the buffer to be highlighted- Returns:
- highlighted buffer
-
addFileHighlight
public void addFileHighlight(java.lang.String... commands)
-
addFileHighlight
public void addFileHighlight(java.lang.String command, java.lang.String subcommand, java.util.Collection<java.lang.String> fileOptions)
-
doDefaultHighlight
private boolean doDefaultHighlight(LineReader reader)
-
systemHighlight
protected AttributedString systemHighlight(LineReader reader, java.lang.String buffer)
-
doFileOptsHighlight
protected AttributedString doFileOptsHighlight(LineReader reader, java.lang.String buffer, java.util.List<java.lang.String> words, SystemHighlighter.FileHighlightCommand fhc)
-
doFileArgsHighlight
protected AttributedString doFileArgsHighlight(LineReader reader, java.lang.String buffer, java.util.List<java.lang.String> words, SystemHighlighter.FileHighlightCommand fhc)
-
doCommandHighlight
protected AttributedString doCommandHighlight(java.lang.String buffer)
-
highlightFileArg
private void highlightFileArg(LineReader reader, java.lang.String arg, AttributedStringBuilder asb)
-
highlightFile
private void highlightFile(java.nio.file.Path path, AttributedStringBuilder asb)
-
highlightArgs
private void highlightArgs(java.lang.String args, AttributedStringBuilder asb)
-
highlightCommand
private void highlightCommand(java.lang.String command, AttributedStringBuilder asb)
-
-