* src/support/os.h
* src/support/os_unix.C
* src/support/os_win32.C
* src/support/os_cygwin.C
(latex_path): new function, handle the OS-specific part of
lyx::support::latex_path
* src/support/filetools.C
(latex_path): use lyx::os::support::latex_path (bug 2409)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13474
a592a061-630c-0410-9148-
cb99ea01b6c8
latex_path_dots dots)
{
string path = subst(original_path, "\\", "/");
+ // On cygwin, we may need windows or posix style paths.
+ path = os::latex_path(path);
path = subst(path, "~", "\\string~");
if (path.find(' ') != string::npos) {
// We can't use '"' because " is sometimes active (e.g. if
/// Converts a host OS style path to unix style.
std::string internal_path(std::string const & p);
+/**
+ * Converts a unix style path into a form suitable for inclusion in a LaTeX
+ * document.
+ * Caution: This function handles only the OS specific part of that task.
+ * Never use it directly, use lyx::support::latex_path instead.
+ */
+std::string latex_path(std::string const & p);
+
/// Is the path absolute?
bool is_absolute_path(std::string const & p);
}
+string latex_path(string const & p)
+{
+ // We may need a posix style path or a windows style path (depending
+ // on cygwin_path_fix_), but we use always forward slashes, since it
+ // gets written into a .tex file.
+ return external_path(p);
+}
+
+
bool is_absolute_path(string const & p)
{
if (p.empty())
}
+string latex_path(string const & p)
+{
+ return p;
+}
+
+
bool is_absolute_path(string const & p)
{
return !p.empty() && p[0] == '/';
}
+string latex_path(string const & p)
+{
+ return p;
+}
+
+
// (Claus H.) On Win32 both Unix and Win32/DOS pathnames are used.
// Therefore an absolute path could be either a pathname starting
// with a slash (Unix) or a pathname starting with a drive letter