Package org.jline.console.impl
Class SystemHighlighter
java.lang.Object
org.jline.reader.impl.DefaultHighlighter
org.jline.console.impl.SystemHighlighter
- All Implemented Interfaces:
org.jline.reader.Highlighter
public class SystemHighlighter
extends org.jline.reader.impl.DefaultHighlighter
Highlighter implementation that provides syntax highlighting for commands and languages.
SystemHighlighter extends DefaultHighlighter to provide syntax highlighting for:
- Command syntax (command names, options, arguments)
- Programming language syntax (for various languages)
- File content based on file extensions
The highlighter uses nanorc syntax definitions for highlighting, making it compatible with existing nanorc configuration files. It can be customized with different styles and supports dynamic refreshing of highlighting rules.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final org.jline.builtins.SyntaxHighlighter
protected final org.jline.builtins.SyntaxHighlighter
protected int
protected final Map
<String, SystemHighlighter.FileHighlightCommand> protected final org.jline.builtins.SyntaxHighlighter
protected final SystemRegistry
Fields inherited from class org.jline.reader.impl.DefaultHighlighter
errorIndex, errorPattern
-
Constructor Summary
ConstructorsConstructorDescriptionSystemHighlighter
(org.jline.builtins.SyntaxHighlighter commandHighlighter, org.jline.builtins.SyntaxHighlighter argsHighlighter, org.jline.builtins.SyntaxHighlighter langHighlighter) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addExternalHighlighterRefresh
(Supplier<Boolean> refresh) void
addFileHighlight
(String... commands) void
addFileHighlight
(String command, String subcommand, Collection<String> fileOptions) protected org.jline.utils.AttributedString
doCommandHighlight
(String buffer) protected org.jline.utils.AttributedString
doFileArgsHighlight
(org.jline.reader.LineReader reader, String buffer, List<String> words, SystemHighlighter.FileHighlightCommand fhc) protected org.jline.utils.AttributedString
doFileOptsHighlight
(org.jline.reader.LineReader reader, String buffer, List<String> words, SystemHighlighter.FileHighlightCommand fhc) org.jline.utils.AttributedString
void
refresh
(org.jline.reader.LineReader lineReader) void
setSpecificHighlighter
(String command, org.jline.builtins.SyntaxHighlighter highlighter) protected org.jline.utils.AttributedString
systemHighlight
(org.jline.reader.LineReader reader, String buffer) Methods inherited from class org.jline.reader.impl.DefaultHighlighter
commandStyle, setErrorIndex, setErrorPattern
-
Field Details
-
commandHighlighter
protected final org.jline.builtins.SyntaxHighlighter commandHighlighter -
argsHighlighter
protected final org.jline.builtins.SyntaxHighlighter argsHighlighter -
langHighlighter
protected final org.jline.builtins.SyntaxHighlighter langHighlighter -
systemRegistry
-
fileHighlight
-
specificHighlighter
-
commandIndex
protected int commandIndex
-
-
Constructor Details
-
SystemHighlighter
public SystemHighlighter(org.jline.builtins.SyntaxHighlighter commandHighlighter, org.jline.builtins.SyntaxHighlighter argsHighlighter, org.jline.builtins.SyntaxHighlighter langHighlighter)
-
-
Method Details
-
setSpecificHighlighter
public void setSpecificHighlighter(String command, org.jline.builtins.SyntaxHighlighter highlighter) -
refresh
public void refresh(org.jline.reader.LineReader lineReader) -
addExternalHighlighterRefresh
-
highlight
public org.jline.utils.AttributedString highlight(org.jline.reader.LineReader reader, String buffer) - Specified by:
highlight
in interfaceorg.jline.reader.Highlighter
- Overrides:
highlight
in classorg.jline.reader.impl.DefaultHighlighter
-
addFileHighlight
-
addFileHighlight
-
systemHighlight
protected org.jline.utils.AttributedString systemHighlight(org.jline.reader.LineReader reader, String buffer) -
doFileOptsHighlight
protected org.jline.utils.AttributedString doFileOptsHighlight(org.jline.reader.LineReader reader, String buffer, List<String> words, SystemHighlighter.FileHighlightCommand fhc) -
doFileArgsHighlight
protected org.jline.utils.AttributedString doFileArgsHighlight(org.jline.reader.LineReader reader, String buffer, List<String> words, SystemHighlighter.FileHighlightCommand fhc) -
doCommandHighlight
-