Hi, As the title points I have problem with ctags when trying to parse user-defined language.
Basically I've followed those instructions.
The quickest and easiest way to do this is by defining a new language using the program options. In order to have Swine support available every time I start ctags, I will place the following lines into the file $HOME/.ctags, which is read in every time ctags starts:
--langdef=swine
--langmap=swine:.swn --regex-swine=/^def[ \t]*([a-zA-Z0-9_]+)/\1/d,definition/ The first line defines the new language, the second maps a file extension to it, and the third defines a regular expression to identify a language definition and generate a tag file entry for it.
I've tried different flags: b,e for regex. My definition of tag is:
--regex-q=/^[ \t]*[^[:space:]]*[:space:]*:[:space:]*{/\l/f,function/b
When I replace \1 with anything else (ascii caracter set ), It works. the output is:
(--regex-q=/^[ \t]*[^[:space:]]*[:space:]*:[:space:]*{/my function name/f,function/b)
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
!_TAG_PROGRAM_AUTHOR Darren Hiebert /[email protected]/
!_TAG_PROGRAM_NAME Exuberant Ctags //
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
!_TAG_PROGRAM_VERSION 5.8 //
my function name file.q /^.ras.getLocation:{[u]$/;" f
my function name file.q /^.a.getResource:{[u; pass]$/;" f
my function name file.q /^.a.init:{$/;" f
my function name file.q /^.a.kill:{[u; force]$/;" f
my function name file.q /^.asdf.status:{[what; u]$/;" f
my function name file.q /^.pc:{$/;" f
Why \1 doesn't work? (I've tried all 1-9)