Since universal-stags doesn't support swift out of the box, I added this to my ~/.ctags.d/ctags.ctags:
--langdef=Swift
--langmap=Swift:+.swift
--regex-swift=/(var|let)[ \t]+([^:=<]+).*$/\2/,variable/
--regex-swift=/func[ \t]+([^\(\)<]+)\([^\(\)]*\)/\1/,function/
--regex-swift=/class[ \t]+([^:\{<]+).*$/\1/,class/
--regex-swift=/struct[ \t]+([^:\{<]+).*$/\1/,struct/
--regex-swift=/protocol[ \t]+([^:\{<]+).*$/\1/,protocol/
But when I run the command
ctags . -R
I get this weird warning
ctags . -R
ctags: Warning: Don't reuse the kind letter `r' in a language Swift (old: "variable", new: "function")
ctags: Warning: Don't reuse the kind letter `r' in a language Swift (old: "variable", new: "class")
ctags: Warning: Don't reuse the kind letter `r' in a language Swift (old: "variable", new: "struct")
ctags: Warning: Don't reuse the kind letter `r' in a language Swift (old: "variable", new: "protocol")
and my tags file doesn't get updated.
Interestingly enough, if I run this command
ctags --languages=swift -R .
I still get the same warning, but my tags file does get updated.
What does this warning even mean and how do I get rid of it?