X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/php/PHPCodeScanner.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/php/PHPCodeScanner.java index bd6c715..2a75cd9 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/php/PHPCodeScanner.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/php/PHPCodeScanner.java @@ -22,7 +22,6 @@ import net.sourceforge.phpeclipse.phpeditor.util.PHPWhitespaceDetector; import net.sourceforge.phpeclipse.phpeditor.util.PHPWordDetector; import org.eclipse.jface.preference.IPreferenceStore; -import org.eclipse.jface.text.rules.EndOfLineRule; import org.eclipse.jface.text.rules.ICharacterScanner; import org.eclipse.jface.text.rules.IRule; import org.eclipse.jface.text.rules.IToken; @@ -31,11 +30,12 @@ import org.eclipse.jface.text.rules.MultiLineRule; import org.eclipse.jface.text.rules.Token; import org.eclipse.jface.text.rules.WhitespaceRule; import org.eclipse.jface.text.rules.WordRule; + /** * PHP Code Scanner */ public class PHPCodeScanner extends AbstractJavaScanner { - + /** * Rule to detect java operators. * @@ -159,6 +159,43 @@ public class PHPCodeScanner extends AbstractJavaScanner { } } + + protected class AccentStringRule implements IRule { + + /** Token to return for this rule */ + private final IToken fToken; + + public AccentStringRule(IToken token) { + fToken = token; + + } + + /* + * @see org.eclipse.jface.text.rules.IRule#evaluate(org.eclipse.jface.text.rules.ICharacterScanner) + */ + public IToken evaluate(ICharacterScanner scanner) { + + int character = scanner.read(); + + if (character == '`') { + + while (true) { + character = scanner.read(); + if (character == '\\') { + character = scanner.read(); + } else if (character == '`') { + return fToken; + } + } + + } else { + scanner.unread(); + return Token.UNDEFINED; + } + } + + } + private class PHPWordRule extends WordRule { private StringBuffer fBuffer = new StringBuffer(); @@ -181,7 +218,7 @@ public class PHPCodeScanner extends AbstractJavaScanner { return Token.UNDEFINED; } else { c = scanner.read(); - if (c == '=') { //