The input field has to be parsed differently based on TAG_OUTPUT_MODE and TAG_OUTPUT_FILESEP ptags.
When writing a pseudo tag to a tags file, we have to escape things differently based on how the input field is parsed, which is based on TAG_OUTPUT_MODE and TAG_OUTPUT_FILESEP.
1 can be solved rather easily. Solving 2 will add considerable complexity (The "right" way to solve 2 should be creating an "edittags" command-line tool).
Since Citre only writes a CITRE_CMD ptag for now, I suggest just get rid of it and use a separate file to store the command line (like {tags-file-name}.cmdline in the directory of the tags file).
Several changes has been introduced to readtags and the tags file format to solve https://github.com/universal-ctags/ctags/issues/3559, which basically means:
TAG_OUTPUT_MODE
andTAG_OUTPUT_FILESEP
ptags.TAG_OUTPUT_MODE
andTAG_OUTPUT_FILESEP
.1 can be solved rather easily. Solving 2 will add considerable complexity (The "right" way to solve 2 should be creating an "edittags" command-line tool).
Since Citre only writes a
CITRE_CMD
ptag for now, I suggest just get rid of it and use a separate file to store the command line (like{tags-file-name}.cmdline
in the directory of the tags file).