|
12 | 12 | import java.awt.Font; |
13 | 13 | import java.awt.Point; |
14 | 14 | import java.awt.event.ActionEvent; |
| 15 | +import java.text.CharacterIterator; |
15 | 16 | import java.util.ResourceBundle; |
16 | 17 | import java.util.Stack; |
17 | 18 |
|
@@ -232,7 +233,7 @@ protected int getWordStart(RTextArea textArea, int offs) |
232 | 233 | } |
233 | 234 | do { |
234 | 235 | ch = seg.previous(); |
235 | | - } while (doc.isIdentifierChar(languageIndex, ch)); |
| 236 | + } while (doc.isIdentifierChar(languageIndex, ch) && ch != CharacterIterator.DONE); |
236 | 237 | } |
237 | 238 |
|
238 | 239 | // The "word" is whitespace |
@@ -1143,7 +1144,8 @@ protected int getWordEnd(RTextArea textArea, int offs) |
1143 | 1144 | if (doc.isIdentifierChar(languageIndex, ch)) { |
1144 | 1145 | do { |
1145 | 1146 | ch = seg.next(); |
1146 | | - } while (doc.isIdentifierChar(languageIndex, ch)); |
| 1147 | + } while (doc.isIdentifierChar(languageIndex, ch) && |
| 1148 | + ch != CharacterIterator.DONE); |
1147 | 1149 | } |
1148 | 1150 |
|
1149 | 1151 | // The "word" is whitespace. |
@@ -1745,7 +1747,8 @@ protected int getNextWord(RTextArea textArea, int offs) |
1745 | 1747 | if (doc.isIdentifierChar(languageIndex, ch)) { |
1746 | 1748 | do { |
1747 | 1749 | ch = seg.next(); |
1748 | | - } while (doc.isIdentifierChar(languageIndex, ch)); |
| 1750 | + } while (doc.isIdentifierChar(languageIndex, ch) && |
| 1751 | + ch != CharacterIterator.DONE); |
1749 | 1752 | } |
1750 | 1753 |
|
1751 | 1754 | // Skip groups of "anything else" (operators, etc.). |
@@ -1919,7 +1922,8 @@ protected int getPreviousWord(RTextArea textArea, int offs) |
1919 | 1922 | if (doc.isIdentifierChar(languageIndex, ch)) { |
1920 | 1923 | do { |
1921 | 1924 | ch = seg.previous(); |
1922 | | - } while (doc.isIdentifierChar(languageIndex, ch)); |
| 1925 | + } while (doc.isIdentifierChar(languageIndex, ch) && |
| 1926 | + ch != CharacterIterator.DONE); |
1923 | 1927 | } |
1924 | 1928 |
|
1925 | 1929 | // Skip groups of "anything else" (operators, etc.). |
|
0 commit comments