When creating a link to a path using a .desktop
file (via the “URI” context menu option):
…the URI is presented via the GUI as the inputted path:
However, the actual content is
[Desktop Entry]
Icon=inode-directory
Name=Documents
Type=Link
URL[$e]=file:$HOME/Documents/
Specifically URL[$e]=file:$HOME/Documents/
interests me.
Why does dolphin create URI .desktop files containing URIs prefixed with solely file:
rather than file:///
? I know that the slashes aren’t necessary after third-party schemas (unless individually mandated) in order to be valid.
However, aren’t the older HTTP(S) and file
schemas excluded from this, thereby necessitating the path separators, in order to communicate to the system that the hostname has been deliberately excluded? If not, are they instead just translated into file:///
, because file:
is an even higher abstraction of file://localhost/
than file:///
is?
Additionally, don’t you think that if I’ve entered /home/RokeJulianLockhart
, I want it to point there rather than to $HOME
generally? After all, if I move that file to another users’ $HOME
, it shall instead point to theirs. (Even more specific /home/$USER/documents
is converted into the same, so at least the conversion behaviour is consistent, though.)
Lastly, having it autofill a name that it can’t use:
…seems a little silly, considering that https://www.baeldung.com/linux/filename-with-slash#:~:text=as%20we%20can%20see%2C%20the%20“%2F”%20delimiter%20is%20hardcoded%20in%20the%20function%20and%20cannot%20be%20escaped states that:
As we can see, the “/” delimiter is hardcoded in the function and cannot be escaped.