From https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s06.html "Note that the general escape rule for values of type string states that the backslash character can be escaped as ("\\") as well and that this escape rule is applied before the quoting rule." But if general escape rule is applied before, than there should be no tabs, no spaces and no new lines. So why are they listed in the Reserved characters list? "If an argument contains a reserved character the argument must be quoted" ... "Reserved characters are space (" "), tab, newline..." I.e. following spec it should be like this: original: hello $world (here's tab) escaped: hello\t$world quoted: "hello\\t\$" Which is again controversial to spec since it states dollar sign must be presented as "\\$". I believe the spec contains an error and the actual order is to apply quoting rule before general escaping. quoted: "hello\t\$world" escaped: "hello\\t\\$world" Also spec should have more examples on this topic.
I found similar complaints on the mailing list https://lists.freedesktop.org/archives/xdg/2010-October/011648.html It looks nothing has changed since then.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xdg/desktop-file-utils/issues/48.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.