|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.fife.ui.rsyntaxtextarea.AbstractTokenMaker org.fife.ui.rsyntaxtextarea.modes.WindowsBatchTokenMaker
public class WindowsBatchTokenMaker
A token maker that turns text into a linked list of
Token
s for syntax highlighting Microsoft
Windows batch files.
Field Summary | |
---|---|
protected TokenImpl |
currentToken
Used in the creation of the linked list. |
protected TokenImpl |
firstToken
The first token in the returned linked list. |
protected java.lang.String |
operators
|
protected TokenImpl |
previousToken
Used in the creation of the linked list. |
Fields inherited from class org.fife.ui.rsyntaxtextarea.AbstractTokenMaker |
---|
wordsToHighlight |
Constructor Summary | |
---|---|
WindowsBatchTokenMaker()
Constructor. |
Method Summary | |
---|---|
void |
addNullToken()
Adds a null token to the end of the current linked list of tokens. |
void |
addToken(char[] array,
int start,
int end,
int tokenType,
int startOffset)
Adds the token specified to the current linked list of tokens. |
void |
addToken(char[] array,
int start,
int end,
int tokenType,
int startOffset,
boolean hyperlink)
Adds the token specified to the current linked list of tokens. |
void |
addToken(javax.swing.text.Segment segment,
int start,
int end,
int tokenType,
int startOffset)
Checks the token to give it the exact ID it deserves before being passed up to the super method. |
protected OccurrenceMarker |
createOccurrenceMarker()
Returns the occurrence marker to use for this token maker. |
int |
getClosestStandardTokenTypeForInternalType(int type)
Returns the closest "standard" token type for a given
"internal" token type (e.g. one whose value is < 0 ). |
boolean |
getCurlyBracesDenoteCodeBlocks()
Returns whether this programming language uses curly braces ('{' and '}') to denote code blocks. |
javax.swing.Action |
getInsertBreakAction()
Returns an action to handle "insert break" key presses (i.e. |
int |
getLastTokenTypeOnLine(javax.swing.text.Segment text,
int initialTokenType)
Returns the last token on this line's type if the token is "unfinished", or TokenTypes.NULL if it was finished. |
java.lang.String[] |
getLineCommentStartAndEnd()
Returns the text to place at the beginning and end of a line to "comment" it in a this programming language. |
boolean |
getMarkOccurrencesOfTokenType(int type)
Returns whether tokens of the specified type should have "mark occurrences" enabled for the current programming language. |
OccurrenceMarker |
getOccurrenceMarker()
Returns the object in charge of marking all occurrences of the token at the current caret position, if it is a relevant token. |
boolean |
getShouldIndentNextLineAfter(Token token)
The default implementation returns false always. |
Token |
getTokenList(javax.swing.text.Segment text,
int startTokenType,
int startOffset)
Returns a list of tokens representing the given text. |
TokenMap |
getWordsToHighlight()
Returns the words to highlight for Windows batch files. |
boolean |
isMarkupLanguage()
The default implementation returns false always. |
protected void |
resetTokenList()
Deletes the linked list of tokens so we can begin anew. |
void |
setLanguageIndex(int languageIndex)
Sets the language index to assign to tokens moving forward. |
Methods inherited from class org.fife.ui.rsyntaxtextarea.AbstractTokenMaker |
---|
removeLastToken |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final java.lang.String operators
protected TokenImpl firstToken
protected TokenImpl currentToken
protected TokenImpl previousToken
Constructor Detail |
---|
public WindowsBatchTokenMaker()
Method Detail |
---|
public void addToken(javax.swing.text.Segment segment, int start, int end, int tokenType, int startOffset)
segment
- Segment
to get text from.start
- Start offset in segment
of token.end
- End offset in segment
of token.tokenType
- The token's type.startOffset
- The offset in the document at which the token occurs.public java.lang.String[] getLineCommentStartAndEnd()
getLineCommentStartAndEnd
in interface TokenMaker
public boolean getMarkOccurrencesOfTokenType(int type)
getMarkOccurrencesOfTokenType
in interface TokenMaker
type
- The token type.
public TokenMap getWordsToHighlight()
getWordsToHighlight
in class AbstractTokenMaker
TokenMap
containing the words to highlight for
Windows batch files.AbstractTokenMaker.getWordsToHighlight()
public Token getTokenList(javax.swing.text.Segment text, int startTokenType, int startOffset)
text
- The text to break into tokens.startTokenType
- The token with which to start tokenizing.startOffset
- The offset at which the line of tokens begins.
text
.public void addNullToken()
addNullToken
in interface TokenMaker
public void addToken(char[] array, int start, int end, int tokenType, int startOffset)
addToken
in interface TokenMaker
array
- The character array from which to get the text.start
- Start offset in segment
of token.end
- End offset in segment
of token.tokenType
- The token's type.startOffset
- The offset in the document at which this token
occurs.public void addToken(char[] array, int start, int end, int tokenType, int startOffset, boolean hyperlink)
array
- The character array.start
- The starting offset in the array.end
- The ending offset in the array.tokenType
- The token's type.startOffset
- The offset in the document at which this token
occurs.hyperlink
- Whether this token is a hyperlink.protected OccurrenceMarker createOccurrenceMarker()
public int getClosestStandardTokenTypeForInternalType(int type)
"standard" token type
for a given
"internal" token type (e.g. one whose value is < 0
).
The default implementation returns type
always, which
denotes that a mapping from internal token types to standard token types
is not defined; subclasses can override.
getClosestStandardTokenTypeForInternalType
in interface TokenMaker
type
- The token type.
public boolean getCurlyBracesDenoteCodeBlocks()
The default implementation returns false
; subclasses can
override this method if necessary.
getCurlyBracesDenoteCodeBlocks
in interface TokenMaker
public javax.swing.Action getInsertBreakAction()
null
. Subclasses
can override.
getInsertBreakAction
in interface TokenMaker
null
.public int getLastTokenTypeOnLine(javax.swing.text.Segment text, int initialTokenType)
TokenTypes.NULL
if it was finished. For example, if C-style
syntax highlighting is being implemented, and text
contained a line of code that contained the beginning of a comment but
no end-comment marker ("*\/"), then this method would return
TokenTypes.COMMENT_MULTILINE
for that line. This is useful
for doing syntax highlighting.
getLastTokenTypeOnLine
in interface TokenMaker
text
- The line of tokens to examine.initialTokenType
- The token type to start with (i.e., the value
of getLastTokenTypeOnLine
for the line before
text
).
TokenTypes.NULL
if the line was completed.public OccurrenceMarker getOccurrenceMarker()
null
is returned, a default OccurrenceMarker
is used.
getOccurrenceMarker
in interface TokenMaker
null
for none.public boolean getShouldIndentNextLineAfter(Token token)
false
always. Languages
that wish to better support auto-indentation can override this method.
getShouldIndentNextLineAfter
in interface TokenMaker
token
- The token the previous line ends with.
public boolean isMarkupLanguage()
false
always.
Subclasses that are highlighting a markup language should override this
method to return true
.
isMarkupLanguage
in interface TokenMaker
false
always.protected void resetTokenList()
getLastTokenTypeOnLine(Segment, int)
or
TokenMaker.getTokenList(Segment, int, int)
.
public void setLanguageIndex(int languageIndex)
languageIndex
- The new language index. A value of
0
denotes the "main" language, any positive value
denotes a specific secondary language. Negative values will
be treated as 0
.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |