added handling of HTML entities
This commit is contained in:
parent
13d2dad679
commit
4955cdaac6
5 changed files with 94 additions and 8 deletions
|
|
@ -210,5 +210,33 @@ int htmlFunction(int a, float b)
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* All entities are treated as commands © ™ ®
|
||||
* should work also<in text
|
||||
* >
|
||||
* &
|
||||
* '
|
||||
* "
|
||||
* ‘
|
||||
* ’
|
||||
* “
|
||||
* &rdaquo;
|
||||
* –
|
||||
* —
|
||||
*
|
||||
* ×
|
||||
* −
|
||||
* ⋅
|
||||
* ∼
|
||||
* ≤
|
||||
* ≥
|
||||
* ←
|
||||
* →
|
||||
*/
|
||||
int htmlEntitiesFunction(int a, float b)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
%}
|
||||
|
|
|
|||
|
|
@ -227,6 +227,31 @@ public class doxygen_translate_runme {
|
|||
" <var> Starts a piece of text displayed in an italic font. \n" +
|
||||
" </var> \n" +
|
||||
"");
|
||||
|
||||
wantedComments.put("doxygen_translate.doxygen_translate.htmlEntitiesFunction(int, float)",
|
||||
"All entities are treated as commands © ™ ®\n" +
|
||||
"should work also<in text \n" +
|
||||
"> \n" +
|
||||
"& \n" +
|
||||
"' \n" +
|
||||
"" \n" +
|
||||
"‘ \n" +
|
||||
"’ \n" +
|
||||
"“ \n" +
|
||||
"” \n" +
|
||||
"– \n" +
|
||||
"— \n" +
|
||||
" \n" +
|
||||
"× \n" +
|
||||
"− \n" +
|
||||
"⋅ \n" +
|
||||
"∼ \n" +
|
||||
"≤ \n" +
|
||||
"≥ \n" +
|
||||
"← \n" +
|
||||
"→ \n" +
|
||||
"");
|
||||
|
||||
// and ask the parser to check comments for us
|
||||
System.exit(parser.check(wantedComments));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1263,16 +1263,15 @@ size_t DoxygenParser::processNormalComment(size_t pos, const std::string &line)
|
|||
size_t endOfWordPos = line.find_first_not_of("abcdefghijklmnopqrstuvwxyz", pos + 1);
|
||||
if (endOfWordPos != string::npos) {
|
||||
if (line[endOfWordPos] == ';') {
|
||||
addDoxyCommand(m_tokenList, line.substr(pos, endOfWordPos));
|
||||
addDoxyCommand(m_tokenList, line.substr(pos, endOfWordPos - pos));
|
||||
endOfWordPos++; // skip ';'
|
||||
} else {
|
||||
// it is not an entity - push plain string
|
||||
m_tokenList.push_back(Token(PLAINSTRING,
|
||||
line.substr(pos, endOfWordPos - pos)));
|
||||
pos = endOfWordPos;
|
||||
}
|
||||
} else {
|
||||
pos = string::npos;
|
||||
}
|
||||
pos = endOfWordPos;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -56,8 +56,6 @@ void JavaDocConverter::fillStaticTables() {
|
|||
*
|
||||
* entities must be translated - remain in Java, something meaningfull in Python (<, ...)
|
||||
*
|
||||
* \e at end of line freezes doxygen
|
||||
*
|
||||
* - enum inside class is missing comment
|
||||
* - '\' not representing doxygen commands
|
||||
* - add comments also to auto-generated methods lilke equals(), delete() in Java,
|
||||
|
|
@ -193,6 +191,31 @@ void JavaDocConverter::fillStaticTables() {
|
|||
tagHandlers["<kbd" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "<kbd" );
|
||||
tagHandlers["<ul" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "<ul" );
|
||||
tagHandlers["<var" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "<var" );
|
||||
|
||||
// HTML entities
|
||||
tagHandlers["©" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "©");
|
||||
tagHandlers["&trade"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&trade");
|
||||
tagHandlers["®" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "®");
|
||||
tagHandlers["<" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "<");
|
||||
tagHandlers[">" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, ">");
|
||||
tagHandlers["&" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&");
|
||||
tagHandlers["&apos" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&apos");
|
||||
tagHandlers[""" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, """);
|
||||
tagHandlers["&lsquo"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&lsquo");
|
||||
tagHandlers["&rsquo"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&rsquo");
|
||||
tagHandlers["&ldquo"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&ldquo");
|
||||
tagHandlers["&rdquo"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&rdquo");
|
||||
tagHandlers["&ndash"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&ndash");
|
||||
tagHandlers["&mdash"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&mdash");
|
||||
tagHandlers[" " ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, " ");
|
||||
tagHandlers["×"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "×");
|
||||
tagHandlers["&minus"] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&minus");
|
||||
tagHandlers["&sdot" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&sdot");
|
||||
tagHandlers["&sim" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&sim");
|
||||
tagHandlers["&le" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&le");
|
||||
tagHandlers["&ge" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&ge");
|
||||
tagHandlers["&larr" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&larr");
|
||||
tagHandlers["&rarr" ] = make_pair(&JavaDocConverter::handleDoxyHtmlTag, "&rarr");
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -344,6 +367,12 @@ void JavaDocConverter::handleDoxyHtmlTag(DoxygenEntity& tag, std::string& transl
|
|||
}
|
||||
|
||||
|
||||
void JavaDocConverter::handleHtmlEntity(DoxygenEntity& tag, std::string& translatedComment, std::string &arg) {
|
||||
// html entities can be preserved for Java
|
||||
translatedComment += arg + ';';
|
||||
}
|
||||
|
||||
|
||||
void JavaDocConverter::handleNewLine(DoxygenEntity&, std::string& translatedComment, std::string&) {
|
||||
translatedComment += "\n * ";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -63,8 +63,13 @@ protected:
|
|||
|
||||
/* Handles HTML tags recognized by Doxygen, like <A ...>, <ul>, <table>, ... */
|
||||
void handleDoxyHtmlTag(DoxygenEntity& tag,
|
||||
std::string& translatedComment,
|
||||
std::string &arg);
|
||||
std::string& translatedComment,
|
||||
std::string &arg);
|
||||
|
||||
/* Handles HTML entities recognized by Doxygen, like <, ©, ... */
|
||||
void handleHtmlEntity(DoxygenEntity& tag,
|
||||
std::string& translatedComment,
|
||||
std::string &arg);
|
||||
|
||||
/*
|
||||
* Just prints new line
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue