Package org.jline.builtins
Class Less
- java.lang.Object
-
- org.jline.builtins.Less
-
public class Less extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classLess.InterruptibleInputStreamprivate classLess.LineEditorprotected static classLess.Operation(package private) static classLess.Pair<U,V>private classLess.SavedSourcePositions
-
Field Summary
Fields Modifier and Type Field Description protected BindingReaderbindingReaderprotected java.lang.StringBuilderbufferbooleanchopLongLinesprotected java.nio.file.PathcurrentDirprotected Displaydisplayprotected java.lang.StringdisplayPatternprotected java.lang.StringerrorMessageprivate static intESCAPEprotected intfirstColumnToDisplayprotected intfirstLineInMemoryprotected intfirstLineToDisplayprotected inthalfWindowprivate booleanhighlightprivate java.lang.StringhistoryLogbooleanignoreCaseAlwaysbooleanignoreCaseCondprotected KeyMap<Less.Operation>keysprotected java.util.List<AttributedString>linesprotected java.lang.Stringmessageprivate static java.lang.StringMESSAGE_FILE_INFOprivate booleannanorcIgnoreErrorsprotected intnbEofbooleannoInitbooleannoKeypadprotected intoffsetInLineprotected java.util.Map<java.lang.String,Less.Operation>optionsprotected java.lang.Stringpatternprotected Nano.PatternHistorypatternHistorybooleanprintLineNumbersbooleanquietbooleanquitAtFirstEofbooleanquitAtSecondEofbooleanquitIfOneScreenprotected java.io.BufferedReaderreaderprotected Sizesizeprotected intsourceIdxprotected java.util.List<Source>sourcesprivate java.util.List<java.nio.file.Path>syntaxFiles(package private) Nano.SyntaxHighlightersyntaxHighlighterprotected java.lang.StringsyntaxNameprotected java.util.List<java.lang.Integer>tabsprotected TerminalterminalbooleanveryQuietprotected intwindow
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddFile()private voidaddSource(java.lang.String file)private voidbindKeys(KeyMap<Less.Operation> map)private voidbof()static voidcheckInterrupted()This is for long running commands to be interrupted by ctrl-c(package private) booleandisplay(boolean oneScreen)(package private) booleandisplay(boolean oneScreen, java.lang.Integer curPos)private voiddoTabs(java.lang.String val)private voideof()(package private) AttributedStringgetLine(int line)private java.util.regex.PatterngetPattern()private java.util.regex.PatterngetPattern(boolean doDisplayPattern)(package private) intgetStrictPositiveNumberInBuffer(int def)voidhandle(Terminal.Signal signal)private voidhelp()(package private) voidmoveBackward(int lines)(package private) voidmoveForward(int lines)(package private) voidmoveTo(int lineNum)private voidmoveToMatch(boolean forward, boolean spanFiles)private voidmoveToNextMatch()private voidmoveToNextMatch(boolean spanFiles)private voidmoveToPreviousMatch()private voidmoveToPreviousMatch(boolean spanFiles)private Less.Pair<java.lang.Integer,AttributedString>nextLine2display(int line, java.util.regex.Pattern dpCompiled)protected voidopenSource()private voidparseConfig(java.nio.file.Path file)private Less.Pair<java.lang.Integer,AttributedString>prevLine2display(int line, java.util.regex.Pattern dpCompiled)private java.lang.Stringprintable(java.lang.String s)voidrun(java.util.List<Source> sources)voidrun(Source... sources)private booleansearch()Lesstabs(java.util.List<java.lang.Integer> tabs)private booleantoBeDisplayed(AttributedString curLine, java.util.regex.Pattern dpCompiled)static java.lang.String[]usage()
-
-
-
Field Detail
-
ESCAPE
private static final int ESCAPE
- See Also:
- Constant Field Values
-
MESSAGE_FILE_INFO
private static final java.lang.String MESSAGE_FILE_INFO
- See Also:
- Constant Field Values
-
quitAtSecondEof
public boolean quitAtSecondEof
-
quitAtFirstEof
public boolean quitAtFirstEof
-
quitIfOneScreen
public boolean quitIfOneScreen
-
printLineNumbers
public boolean printLineNumbers
-
quiet
public boolean quiet
-
veryQuiet
public boolean veryQuiet
-
chopLongLines
public boolean chopLongLines
-
ignoreCaseCond
public boolean ignoreCaseCond
-
ignoreCaseAlways
public boolean ignoreCaseAlways
-
noKeypad
public boolean noKeypad
-
noInit
public boolean noInit
-
tabs
protected java.util.List<java.lang.Integer> tabs
-
syntaxName
protected java.lang.String syntaxName
-
historyLog
private java.lang.String historyLog
-
terminal
protected final Terminal terminal
-
display
protected final Display display
-
bindingReader
protected final BindingReader bindingReader
-
currentDir
protected final java.nio.file.Path currentDir
-
sources
protected java.util.List<Source> sources
-
sourceIdx
protected int sourceIdx
-
reader
protected java.io.BufferedReader reader
-
keys
protected KeyMap<Less.Operation> keys
-
firstLineInMemory
protected int firstLineInMemory
-
lines
protected java.util.List<AttributedString> lines
-
firstLineToDisplay
protected int firstLineToDisplay
-
firstColumnToDisplay
protected int firstColumnToDisplay
-
offsetInLine
protected int offsetInLine
-
message
protected java.lang.String message
-
errorMessage
protected java.lang.String errorMessage
-
buffer
protected final java.lang.StringBuilder buffer
-
options
protected final java.util.Map<java.lang.String,Less.Operation> options
-
window
protected int window
-
halfWindow
protected int halfWindow
-
nbEof
protected int nbEof
-
patternHistory
protected Nano.PatternHistory patternHistory
-
pattern
protected java.lang.String pattern
-
displayPattern
protected java.lang.String displayPattern
-
size
protected final Size size
-
syntaxHighlighter
Nano.SyntaxHighlighter syntaxHighlighter
-
syntaxFiles
private final java.util.List<java.nio.file.Path> syntaxFiles
-
highlight
private boolean highlight
-
nanorcIgnoreErrors
private boolean nanorcIgnoreErrors
-
-
Method Detail
-
usage
public static java.lang.String[] usage()
-
parseConfig
private void parseConfig(java.nio.file.Path file) throws java.io.IOException- Throws:
java.io.IOException
-
doTabs
private void doTabs(java.lang.String val)
-
tabs
public Less tabs(java.util.List<java.lang.Integer> tabs)
-
handle
public void handle(Terminal.Signal signal)
-
run
public void run(Source... sources) throws java.io.IOException, java.lang.InterruptedException
- Throws:
java.io.IOExceptionjava.lang.InterruptedException
-
run
public void run(java.util.List<Source> sources) throws java.io.IOException, java.lang.InterruptedException
- Throws:
java.io.IOExceptionjava.lang.InterruptedException
-
moveToMatch
private void moveToMatch(boolean forward, boolean spanFiles) throws java.io.IOException- Throws:
java.io.IOException
-
addSource
private void addSource(java.lang.String file) throws java.io.IOException- Throws:
java.io.IOException
-
addFile
private void addFile() throws java.io.IOException, java.lang.InterruptedException- Throws:
java.io.IOExceptionjava.lang.InterruptedException
-
search
private boolean search() throws java.io.IOException, java.lang.InterruptedException- Throws:
java.io.IOExceptionjava.lang.InterruptedException
-
help
private void help() throws java.io.IOException- Throws:
java.io.IOException
-
openSource
protected void openSource() throws java.io.IOException- Throws:
java.io.IOException
-
moveTo
void moveTo(int lineNum) throws java.io.IOException- Throws:
java.io.IOException
-
moveToNextMatch
private void moveToNextMatch() throws java.io.IOException- Throws:
java.io.IOException
-
moveToNextMatch
private void moveToNextMatch(boolean spanFiles) throws java.io.IOException- Throws:
java.io.IOException
-
moveToPreviousMatch
private void moveToPreviousMatch() throws java.io.IOException- Throws:
java.io.IOException
-
moveToPreviousMatch
private void moveToPreviousMatch(boolean spanFiles) throws java.io.IOException- Throws:
java.io.IOException
-
printable
private java.lang.String printable(java.lang.String s)
-
moveForward
void moveForward(int lines) throws java.io.IOException- Throws:
java.io.IOException
-
moveBackward
void moveBackward(int lines) throws java.io.IOException- Throws:
java.io.IOException
-
eof
private void eof()
-
bof
private void bof()
-
getStrictPositiveNumberInBuffer
int getStrictPositiveNumberInBuffer(int def)
-
nextLine2display
private Less.Pair<java.lang.Integer,AttributedString> nextLine2display(int line, java.util.regex.Pattern dpCompiled) throws java.io.IOException
- Throws:
java.io.IOException
-
prevLine2display
private Less.Pair<java.lang.Integer,AttributedString> prevLine2display(int line, java.util.regex.Pattern dpCompiled) throws java.io.IOException
- Throws:
java.io.IOException
-
toBeDisplayed
private boolean toBeDisplayed(AttributedString curLine, java.util.regex.Pattern dpCompiled)
-
display
boolean display(boolean oneScreen) throws java.io.IOException- Throws:
java.io.IOException
-
display
boolean display(boolean oneScreen, java.lang.Integer curPos) throws java.io.IOException- Throws:
java.io.IOException
-
getPattern
private java.util.regex.Pattern getPattern()
-
getPattern
private java.util.regex.Pattern getPattern(boolean doDisplayPattern)
-
getLine
AttributedString getLine(int line) throws java.io.IOException
- Throws:
java.io.IOException
-
checkInterrupted
public static void checkInterrupted() throws java.lang.InterruptedExceptionThis is for long running commands to be interrupted by ctrl-c- Throws:
java.lang.InterruptedException- if the thread has been interruped
-
bindKeys
private void bindKeys(KeyMap<Less.Operation> map)
-
-