bug 1375017, code formatter inserted blank before increment/decrement operator
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / formatter / CodeFormatter.java
index 7caa523..6003bd0 100644 (file)
@@ -2,6 +2,7 @@
  * Copyright (c) 2000, 2001, 2002 International Business Machines Corp. and others.
  * All rights reserved. This program and the accompanying materials 
  * are made available under the terms of the Common Public License v0.5 
+ * 
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/cpl-v05.html
  * 
@@ -23,15 +24,8 @@ import net.sourceforge.phpdt.core.compiler.ITerminalSymbols;
 import net.sourceforge.phpdt.core.compiler.InvalidInputException;
 import net.sourceforge.phpdt.internal.compiler.ConfigurableOption;
 import net.sourceforge.phpdt.internal.compiler.parser.Scanner;
-import net.sourceforge.phpdt.internal.corext.codemanipulation.StubUtility;
-import net.sourceforge.phpdt.internal.corext.util.Strings;
 import net.sourceforge.phpdt.internal.formatter.impl.FormatterOptions;
 import net.sourceforge.phpdt.internal.formatter.impl.SplitLine;
-import net.sourceforge.phpdt.internal.ui.preferences.CodeFormatterPreferencePage;
-
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.formatter.IContentFormatterExtension;
-import org.eclipse.jface.text.formatter.IFormattingContext;
 
 /**
  * <h2>How to format a piece of code ?</h2>
@@ -166,7 +160,7 @@ public class CodeFormatter implements ITerminalSymbols, ICodeFormatter {
     , false /* nls */
     , false /* assert */
     , true, /* tokenizeStrings */
-    null, null); // regular scanner for forming lines
+    null, null, true /*taskCaseSensitive*/); // regular scanner for forming lines
     scanner.recordLineSeparator = true;
     scanner.ignorePHPOneLiner = true;
     // to remind of the position of the beginning of the line.
@@ -175,7 +169,7 @@ public class CodeFormatter implements ITerminalSymbols, ICodeFormatter {
     , false /* nls */
     , false /* assert */
     , true, /* tokenizeStrings */
-    null, null);
+    null, null, true /*taskCaseSensitive*/);
     splitScanner.ignorePHPOneLiner = true;
     // secondary scanner to split long lines formed by primary scanning
     // initialize current line buffer
@@ -796,7 +790,7 @@ public class CodeFormatter implements ITerminalSymbols, ICodeFormatter {
         case TokenNameMINUS_MINUS:
           // Do not put a space between a post-increment/decrement
           // and the identifier being modified.
-          if (previousToken == TokenNameIdentifier || previousToken == TokenNameRBRACKET) {
+          if (previousToken == TokenNameIdentifier || previousToken == TokenNameRBRACKET || previousToken == TokenNameVariable) {
             pendingSpace = false;
           }
           break;