diff options
author | albert-github <albert.tests@gmail.com> | 2017-09-09 13:21:23 (GMT) |
---|---|---|
committer | albert-github <albert.tests@gmail.com> | 2017-09-09 13:21:23 (GMT) |
commit | d6801c4c5eaeebc5e14f5d1cd7c312ad82c1dbbd (patch) | |
tree | db94e67eb4fc6b76746f3ae4336a8fcd71f86e39 | |
parent | ddae91901de9509e8caff4181230535f236c5897 (diff) | |
download | Doxygen-d6801c4c5eaeebc5e14f5d1cd7c312ad82c1dbbd.zip Doxygen-d6801c4c5eaeebc5e14f5d1cd7c312ad82c1dbbd.tar.gz Doxygen-d6801c4c5eaeebc5e14f5d1cd7c312ad82c1dbbd.tar.bz2 |
Physical newlines in ALIASES configuration tags.
Some commands read input till the end of the physical line. In case these commands are used in an alias the rest of the line is lost / gives not the required results.
This patch creates the possibility to have physical newlines in ALIASES.
See also: https://stackoverflow.com/questions/46050789/doxygen-alias-with-multiple-commands
-rw-r--r-- | doc/custcmd.doc | 4 | ||||
-rw-r--r-- | src/config.xml | 5 | ||||
-rw-r--r-- | src/doxygen.cpp | 10 |
3 files changed, 17 insertions, 2 deletions
diff --git a/doc/custcmd.doc b/doc/custcmd.doc index 8ac2a65..de9a30d 100644 --- a/doc/custcmd.doc +++ b/doc/custcmd.doc @@ -40,7 +40,9 @@ The simplest form of an alias is a simple substitution of the form put the command `\sideeffect` (or `@sideeffect`) in the documentation, which will result in a user-defined paragraph with heading <b>Side Effects:</b>. -Note that you can put `\n`'s in the value part of an alias to insert newlines. +Note that you can put `\n`'s in the value part of an alias to insert newlines +(in the resulting output). You can put `^^` in the value part of an alias to +insert a newline as if a physical newline was in the original file. Also note that you can redefine existing special commands if you wish. diff --git a/src/config.xml b/src/config.xml index 6cd7997..960b392 100644 --- a/src/config.xml +++ b/src/config.xml @@ -532,7 +532,10 @@ Go to the <a href="commands.html">next</a> section or return to the will allow you to put the command \c \\sideeffect (or \c \@sideeffect) in the documentation, which will result in a user-defined paragraph with heading "Side Effects:". - You can put \ref cmdn "\\n"'s in the value part of an alias to insert newlines. + You can put \ref cmdn "\\n"'s in the value part of an alias to insert newlines + (in the resulting output). + You can put `^^` in the value part of an alias to insert a newline as if + a physical newline was in the original file. ]]> </docs> </option> diff --git a/src/doxygen.cpp b/src/doxygen.cpp index d3554cf..6867ce9 100644 --- a/src/doxygen.cpp +++ b/src/doxygen.cpp @@ -9826,6 +9826,16 @@ static void escapeAliases() } newValue+=value.mid(p,value.length()-p); *s=newValue; + p = 0; + newValue = ""; + while ((in=value.find("^^",p))!=-1) + { + newValue+=value.mid(p,in-p); + newValue+="\n"; + p=in+2; + } + newValue+=value.mid(p,value.length()-p); + *s=newValue; //printf("Alias %s has value %s\n",adi.currentKey().data(),s->data()); } } |