Revision: 9476
http://languagetool.svn.sourceforge.net/languagetool/?rev=9476&view=rev
Author: dnaber
Date: 2013-02-23 22:10:09 +0000 (Sat, 23 Feb 2013)
Log Message:
-----------
fix false alarm of unpaired bracket rule on smileys :-) and ;-) (Sourceforge
bug #3604367)
Modified Paths:
--------------
trunk/languagetool/languagetool-core/CHANGES.txt
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/rules/GenericUnpairedBracketsRule.java
trunk/languagetool/languagetool-language-modules/ca/src/main/java/org/languagetool/rules/ca/CatalanUnpairedBracketsRule.java
trunk/languagetool/languagetool-language-modules/de/src/test/java/org/languagetool/rules/de/GenericUnpairedBracketsRuleTest.java
trunk/languagetool/languagetool-language-modules/en/src/main/java/org/languagetool/rules/en/EnglishUnpairedBracketsRule.java
trunk/languagetool/languagetool-language-modules/en/src/test/java/org/languagetool/rules/en/EnglishUnpairedBracketsRuleTest.java
Modified: trunk/languagetool/languagetool-core/CHANGES.txt
===================================================================
--- trunk/languagetool/languagetool-core/CHANGES.txt 2013-02-23 21:23:29 UTC
(rev 9475)
+++ trunk/languagetool/languagetool-core/CHANGES.txt 2013-02-23 22:10:09 UTC
(rev 9476)
@@ -68,6 +68,8 @@
-bugfix: suggestions for compounds parts were missing sometimes
-bugfix: Portuguese translation was not used
+
+ -bugfix: fix false alarm of unpaired bracket rule on smileys :-) and ;-)
(Sourceforge bug #3604367)
-stand-alone GUI: the very first check for languages with a lot of rules
(e.g. German, French) should now be faster
@@ -85,6 +87,7 @@
-Command line:
-In verbose mode, the subId of disambiguator matched rules is displayed.
+
2.0 (2012-12-30)
-Breton:
Modified:
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/rules/GenericUnpairedBracketsRule.java
===================================================================
---
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/rules/GenericUnpairedBracketsRule.java
2013-02-23 21:23:29 UTC (rev 9475)
+++
trunk/languagetool/languagetool-core/src/main/java/org/languagetool/rules/GenericUnpairedBracketsRule.java
2013-02-23 22:10:09 UTC (rev 9476)
@@ -19,11 +19,7 @@
package org.languagetool.rules;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.ResourceBundle;
+import java.util.*;
import java.util.regex.Pattern;
import org.languagetool.AnalyzedSentence;
@@ -100,7 +96,8 @@
/**
* Generic method to specify an exception. For unspecified
- * language, it simply returns true, which means no exception.
+ * language, it simply returns true (which means no exception) unless
+ * there's a common smiley like :-) or ;-).
* @param token String token
* @param tokens Sentence tokens
* @param i Current token index
@@ -111,6 +108,14 @@
final AnalyzedTokenReadings[] tokens, final int i, final int j,
final boolean precSpace,
final boolean follSpace) {
+ // Smiley ":-)"
+ if (i >= 2 && tokens[i-2].getToken().equals(":") &&
tokens[i-1].getToken().equals("-") && tokens[i].getToken().equals(")")) {
+ return false;
+ }
+ // Smiley ";-)"
+ if (i >= 2 && tokens[i-2].getToken().equals(";") &&
tokens[i-1].getToken().equals("-") && tokens[i].getToken().equals(")")) {
+ return false;
+ }
return true;
}
Modified:
trunk/languagetool/languagetool-language-modules/ca/src/main/java/org/languagetool/rules/ca/CatalanUnpairedBracketsRule.java
===================================================================
---
trunk/languagetool/languagetool-language-modules/ca/src/main/java/org/languagetool/rules/ca/CatalanUnpairedBracketsRule.java
2013-02-23 21:23:29 UTC (rev 9475)
+++
trunk/languagetool/languagetool-language-modules/ca/src/main/java/org/languagetool/rules/ca/CatalanUnpairedBracketsRule.java
2013-02-23 22:10:09 UTC (rev 9476)
@@ -57,6 +57,11 @@
return true;
}
+ final boolean superException = !super.isNoException(tokenStr, tokens, i,
j, precSpace, follSpace);
+ if (superException) {
+ return false;
+ }
+
if (i == 1 && tokenStr.equals("»"))
return false;
Modified:
trunk/languagetool/languagetool-language-modules/de/src/test/java/org/languagetool/rules/de/GenericUnpairedBracketsRuleTest.java
===================================================================
---
trunk/languagetool/languagetool-language-modules/de/src/test/java/org/languagetool/rules/de/GenericUnpairedBracketsRuleTest.java
2013-02-23 21:23:29 UTC (rev 9475)
+++
trunk/languagetool/languagetool-language-modules/de/src/test/java/org/languagetool/rules/de/GenericUnpairedBracketsRuleTest.java
2013-02-23 22:10:09 UTC (rev 9476)
@@ -40,6 +40,8 @@
assertMatches("(Das sind die «Sätze», die sie testen sollen).", 0);
assertMatches("(Das sind die »Sätze«, die sie testen sollen).", 0);
assertMatches("(Das sind die Sätze (noch mehr Klammern [schon wieder!]),
die sie testen sollen).", 0);
+ assertMatches("Das ist ein Satz mit Smiley :-)", 0);
+ assertMatches("Das ist auch ein Satz mit Smiley ;-)", 0);
// incorrect sentences:
assertMatches("Die „Sätze zum Testen.", 1);
assertMatches("Die «Sätze zum Testen.", 1);
Modified:
trunk/languagetool/languagetool-language-modules/en/src/main/java/org/languagetool/rules/en/EnglishUnpairedBracketsRule.java
===================================================================
---
trunk/languagetool/languagetool-language-modules/en/src/main/java/org/languagetool/rules/en/EnglishUnpairedBracketsRule.java
2013-02-23 21:23:29 UTC (rev 9475)
+++
trunk/languagetool/languagetool-language-modules/en/src/main/java/org/languagetool/rules/en/EnglishUnpairedBracketsRule.java
2013-02-23 22:10:09 UTC (rev 9476)
@@ -59,6 +59,11 @@
return true;
}
+ final boolean superException = !super.isNoException(tokenStr, tokens, i,
j, precSpace, follSpace);
+ if (superException) {
+ return false;
+ }
+
if (!precSpace && follSpace) {
// exception for English inches, e.g., 20"
final AnalyzedTokenReadings prevToken = tokens[i - 1];
Modified:
trunk/languagetool/languagetool-language-modules/en/src/test/java/org/languagetool/rules/en/EnglishUnpairedBracketsRuleTest.java
===================================================================
---
trunk/languagetool/languagetool-language-modules/en/src/test/java/org/languagetool/rules/en/EnglishUnpairedBracketsRuleTest.java
2013-02-23 21:23:29 UTC (rev 9475)
+++
trunk/languagetool/languagetool-language-modules/en/src/test/java/org/languagetool/rules/en/EnglishUnpairedBracketsRuleTest.java
2013-02-23 22:10:09 UTC (rev 9476)
@@ -45,6 +45,8 @@
// correct sentences:
assertCorrect("(This is a test sentence).");
assertCorrect("This is a word 'test'.");
+ assertCorrect("This is a sentence with a smiley :-)");
+ assertCorrect("This is a sentence with a smiley ;-) and so on...");
assertCorrect("This is the joint presidents' declaration.");
assertCorrect("The screen is 20\" wide.");
assertCorrect("This is a [test] sentence...");
@@ -71,6 +73,9 @@
assertIncorrect("!'");
assertIncorrect("What?'");
+ // this is currently considered incorrect... although people often use
smileys this way:
+ assertIncorrect("Some text (and some funny remark :-) with more text to
follow");
+
RuleMatch[] matches;
matches = rule.match(langTool.getAnalyzedSentence("(This is a test”
sentence."));
assertEquals(2, matches.length);
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Languagetool-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/languagetool-commits