Right now projects cannot be moved to other directories without
losing the list of open files. This makes the project unportable to different
machines because even if the directory structure under your home is
identical, the user name can be different so the paths are different too.
Both absolute and relative paths have their advantages and disadvantages.
Instead of replacing absolute paths with relative paths, this patch
adds one more item into the configuration file for every path. This item
contains a relative paths so both absolute and relative
paths are stored for every file and base path. When the project is read,
first the absolute paths are checked. When the file is not found,
relative paths are used to search for the file. This makes this
implementation backward and also forward compatible with older versions
of project files and geany applications.
For the global session file only absolute paths are used because it is
not expected that this file is moved between directories.