Doxygen ignoring aliases - doxygen

I want to define an alias in doxygen. According to the documentation and testimonials, I just add something like this in Doxyfile
ALIASES += sideeffect="\par Side Effects:\n"
and then use #sideeffect in the source code documentation. But I get this message when running doxygen:
/path/to/file.f:12: warning: Found unknown command `\sideeffect'
I tried escaping the quotes and backslashes too:
ALIASES += "sideeffect=\"\\par Side Effects:\\n\""
and with = instead of += (I also make sure the ALIASES option is not defined anywhere else in Doxyfile). Other options are working fine.
Even a simple ALIASES += "foo=bar" does not work (unknown command `\foo').
I'm using doxygen 1.7.6.1 (Ubuntu 12.04), and the Doxyfile created by this version has the ALIASES line, so I guess it should be supported. What could I be doing wrong?

Try this
ALIASES += "sideeffect = \par \"Side Effects:\" \n"
This worked for me:
\sideeffect This will cause a catastrophic explosion.
It yields:
I am using 1.8.3.1

Related

Calling Flash Magic from command line with parentheses in path

I need to program my microcontroller via Flash Magic command line.
Command is:
COM(6, 115200)
DEVICE(LPC2368, 4.000000, 0)
HARDWARE(BOOTEXEC, 50, 100)
ERASE(DEVICE, PROTECTISP)
HEXFILE(C:\Program Files (x86)\myfile.hex, NOCHECKSUMS, NOFILL, PROTECTISP).
When using any different path without parentheses, this goes perfectly well.
But when "(x86)" is involved I get an error:
ERROR: Invalid parameters for HEXFILE directive: HEXFILE(C:\Program
Files
(x86)
I tried surrounding the path with quotes or double quotes but I get the same error.
Does anyone know how to correctly pass a path argument with parentheses?
For those having the same problem:
there is no workaround with versions <12 of Flash Magic, but fortunately version 12 resolves this issue.

Can I use "PROJECT_NAME" in a Doxygen Doxyfile?

I have to specify the location of a tool to Doxygen, something like this in a Doxyfile:
TOOL_PATH = ../${PROJECT_NAME}/Third-party/tool.jar
where PROJECT_NAME is a Doxygen variable.
The ${} syntax is not accepted, I also tried with $, # and %, but none works.
If I specify the complete path, the tool is found and launched correctly.

Qmake DEFINES macro with parameter

I want to know how to define C++ preprocessor macro using qmake DEFINES variable. I have tried to do the following:
Project file
TEMPLATE = app
CONFIG += c++14 console
SOURCES += main.cpp
DEFINES += "TEMPORARY_UNUSED(x)=\"(void)x;\""
DEFINES += "BASE_CLASS_UNUSED(x)=\"(void)x;\""
Main.cpp file
int main() {
int hello;
TEMPORARY_UNUSED(hello)
BASE_CLASS_UNUSED(hello)
}
But this resulted in following error: [main.o] Error 2. I have no idea how macro definition (very simple by the way) could cause errors in build process.
This is macro definitions using c++'s #define. They work just as I expected
#define TEMPORARY_UNUSED(x) (void)x;
#define BASE_CLASS_UNUSED(x) (void)x;
The question is: how do I define c++ preprocessor macro using qmake DEFINES and how my macro was able to cause compilation errors.
P.S. I'm perfectly aware of Q_UNUSED macro but I prefer to have a macro that indicates not only that the variable is unused but also why it is unused.
P.S. Code that I have posted is 100% of my project, there no more files that define/redefine anything else.
You need to escape the parentheses and the semicolon with backslashes:
DEFINES += TEMPORARY_UNUSED\\(x\\)=\\(void\\)x\\;
Otherwise the () and the ; in the -D compiler argument will be interpreted as parts of a more complex command.
Note that the /D option of MSVC does not support function-like macro definitions. To overcome this restriction, write your preprocessor directives into a header file and include it with the /FI compiler switch.

Folder name with space issue

How do I handle a folder name containing spaces in Perl? For example C:\Sample Picture\Data.
I wrote this
use File::Glob ':glob';
$indir = "C:\\Sample Picture\\Data\\";
#flist = bsd_glob( $indir.'*');
This is throwing an error
The syntax of the command is incorrect.
The error message The syntax of the command is incorrect comes from the Windows command line, not from Perl
The issue is not to do with File::Glob, but with whatever you are doing with the contents of #flist. It's my guess that you're using backticks or system to rename one or more of the files or directories. This will fail if you use paths that contain spaces without enclosing the complete path in double quotes
If you need any more help then you must show the relevant part of your code

How to use vim LatexSuite with a Makefile?

I would like to type :make in Vim to compile my LaTeX document. I wrote down compilation rules in a Makefile, but as soon as I enable the LatexSuite Vim extension, the Makefile is no longer used. Instead, Vim runs latex -interaction=nonstopmode (note the absence of a filename) and hangs in that command. I did not change the g:Tex_UseMakefile option from its default 1 to 0 and according to the documentation, that should cause my Makefile to be used, but it's not.
What configuration is needed to tell LatexSuite to just use my Makefile?
LatexSuite was obtained via OpenSuSE repositories: vim-plugin-latex-20120125-21.1.1.noarch
You can override this via following setting in your vimrc.
autocmd FileType tex let g:Tex_CompileRule_dvi = 'make'
Alternatively, set makeprg in $HOME/.vim/after/ftplugin/tex.vim
set makeprg='make'
Helpful in-source documentation of file <latex-suite-root-folder>/compiler/tex.vim
Section " Customization of 'makeprg': {{{
This (g:Tex_CompileRule_dvi) is a string which should be directly be able to be cast into
" &makeprg.