Remove curly quotes for MWS and apprentice export

git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1038 0fc631ac-6414-0410-93d0-97cfa31319b6
This commit is contained in:
twanvl
2008-08-02 20:43:45 +00:00
parent de0817099a
commit 76d2eb7d42
5 changed files with 31 additions and 18 deletions
+21
View File
@@ -567,3 +567,24 @@ String simplify_tagged_overlap(const String& str) {
}
return ret;
}
// ----------------------------------------------------------------------------- : Other utilities
String curly_quotes(String str, bool curl) {
bool open = true, in_tag = false;
FOR_EACH(c, str) {
if (c == _('\'') || c == LEFT_SINGLE_QUOTE || c == RIGHT_SINGLE_QUOTE) {
c = curl ? (open ? LEFT_SINGLE_QUOTE : RIGHT_SINGLE_QUOTE) : _('\'');
} else if (c == _('\"') || c == LEFT_DOUBLE_QUOTE || c == RIGHT_DOUBLE_QUOTE) {
c = curl ? (open ? LEFT_DOUBLE_QUOTE : RIGHT_DOUBLE_QUOTE) : _('\"');
} else if (c == _('<')) {
in_tag = true;
} else if (c == _('>')) {
in_tag = false;
} else if (!in_tag) {
// Also allow double-nesting of quotes
open = isSpace(c) || c == _('(') || c == _('[');
}
}
return str;
}
+5
View File
@@ -198,5 +198,10 @@ String simplify_tagged_merge(const String& str, bool all = false);
*/
String simplify_tagged_overlap(const String& str);
// ----------------------------------------------------------------------------- : Other utilities
/// Turn straight quotes into curly ones or vice-versa
String curly_quotes(String str, bool curl);
// ----------------------------------------------------------------------------- : EOF
#endif