js repl: in/out markers done
authorVladimir Krivosheev <vladimir.krivosheev@jetbrains.com>
Tue, 18 Feb 2014 16:26:55 +0000 (17:26 +0100)
committerVladimir Krivosheev <vladimir.krivosheev@jetbrains.com>
Tue, 18 Feb 2014 16:29:23 +0000 (17:29 +0100)
platform/lang-impl/src/com/intellij/execution/console/LanguageConsoleImpl.java
platform/util/src/com/intellij/openapi/util/text/StringUtil.java

index b2be9f75211394ce7a3cc5245f0f8340062b4cc5..9105bb5192855a9f1bafa221d62e09f61e384707 100644 (file)
@@ -414,9 +414,9 @@ public class LanguageConsoleImpl implements Disposable, TypeSafeDataProvider {
     }
 
     Document history = myHistoryViewer.getDocument();
-    MarkupModel markupModel = DocumentMarkupModel.forDocument(history, myProject, true);
     int offset = appendToHistoryDocument(history, text);
-    markupModel.addRangeHighlighter(offset, offset + text.length(), HighlighterLayer.SYNTAX, attributes, HighlighterTargetArea.EXACT_RANGE);
+    DocumentMarkupModel.forDocument(history, myProject, true).addRangeHighlighter(offset, offset + text.length(), HighlighterLayer.SYNTAX, attributes,
+                                                                                  HighlighterTargetArea.EXACT_RANGE);
   }
 
   @SuppressWarnings("UnusedDeclaration")
index 93fb443f181d9280b30d02cc2311b680bb57d583..ac15f2c57a21621084aa50def4ac0ff3a22b585d 100644 (file)
@@ -1914,12 +1914,17 @@ public class StringUtil extends StringUtilRt {
   }
 
   public static int countChars(@NotNull CharSequence text, char c) {
-    int count = 0;
+    return countChars(text, c, 0, false);
+  }
 
-    for (int i = 0; i < text.length(); ++i) {
-      final char ch = text.charAt(i);
-      if (ch == c) {
-        ++count;
+  public static int countChars(@NotNull CharSequence text, char c, int offset, boolean continuous) {
+    int count = 0;
+    for (int i = offset; i < text.length(); ++i) {
+      if (text.charAt(i) == c) {
+        count++;
+      }
+      else if (continuous) {
+        break;
       }
     }
     return count;