]> git.lyx.org Git - features.git/commitdiff
Expand tilde meaning in front of a path name.
authorKornel Benko <kornel@lyx.org>
Sun, 5 Aug 2018 07:54:44 +0000 (09:54 +0200)
committerKornel Benko <kornel@lyx.org>
Sun, 5 Aug 2018 08:03:52 +0000 (10:03 +0200)
This allows to address data in the current lyx-system-directory.
The additional prefix is '~:s/'
The original prefix '~/' still addresses current users home directory.

src/support/FileName.cpp

index 1e3cacf172bb6408373b03e0a283f8fa3d116028..7fa063163a3bacdfd7afa53176c29ff8190f2c31 100644 (file)
@@ -110,9 +110,16 @@ struct FileName::Private
        static
        string const handleTildeName(string const & name)
        {
-               return name == "~" ? Package::get_home_dir().absFileName() :
-                       prefixIs(name, "~/") ? Package::get_home_dir().absFileName() + name.substr(1) :
-                       name;
+               string resname;
+               if ( name == "~" )
+                       resname = Package::get_home_dir().absFileName();
+               else if ( prefixIs(name, "~/"))
+                       resname = Package::get_home_dir().absFileName() + name.substr(1);
+               else if ( prefixIs(name, "~:s/"))
+                       resname = package().system_support().absFileName() + name.substr(3);
+               else
+                       resname = name;
+               return resname;
        }
 
        /// The absolute file name in UTF-8 encoding.