Re: [Doxygen-users] Dollar signs in function names
Brought to you by:
dimitri
From: Dimitri v. H. <do...@gm...> - 2015-01-10 18:17:14
|
> On 10 Jan 2015, at 13:56 , Uwe Scholz <u.s...@gm...> wrote: > > Hi Dimitri, > > Dimitri van Heesch <do...@gm...> schrieb am [Sa, 10.01.2015 11:38]: >> Hi Uwe, >> >> What you could do is write an input filter (see the INPUT_FILTER option) >> that lets doxygen replace the 's$' by something that can be part of an identifier, e.g. '__sdollar__' >> Then you need to post-process the output and replace the '__sdollar__'s back to 's$'. > > Great! Thank you for this tip, it helped me already! > > But there is still one (small) problem regarding the HTML search field now: > > Here is what I did so far: > 1: doxygen -g > 2: Set EXTRACT_ALL to YES > 3: echo "void s$foo_bar();" > foo.c > 4: doxygen > 5: for II in $(find html/ -type f); do sed 's/__sdollar__/s\$/g' -i $II; done > > It is not possible to find "s$foo_bar" in the HTML-search field from the > doxygen HTML pages. Modifying "find html/ -type f" to "find html/ > -maxdepth 1 -type f" in step 5 makes it possible that all these > s$-functions can be found by typing "__sdollar__...". > > So, there seems to be a problem with the doxygen search-engine and > function names with dollar signs. This is a bit more tricky indeed. In the html/search directory there are a number of .js files. You need to replace '_5f_5fsdollar_5f_5f' with 's_24' there, and also make sure the searchdata.js file has the letter 's' in indexSectionsWithContent for the rows matching 'all' and 'functions', i.e. var indexSectionsWithContent = { 0: "st", 1: "t", 2: "s" }; in your example. Regards, Dimitri |