diff --git a/.hgignore b/.hgignore
index d7b3277a..81aa56e3 100644
--- a/.hgignore
+++ b/.hgignore
@@ -50,6 +50,7 @@ src/doc/user/RCL.SEARCH.KIO.html
src/doc/user/RCL.SEARCH.LANG.html
src/doc/user/RCL.SEARCH.MULTIDB.html
src/doc/user/RCL.SEARCH.PREVIEW.html
+src/doc/user/RCL.SEARCH.PTRANS.html
src/doc/user/RCL.SEARCH.RESLIST.html
src/doc/user/RCL.SEARCH.SORT.html
src/doc/user/RCL.SEARCH.TERMEXPLORER.html
diff --git a/src/doc/user/usermanual.sgml b/src/doc/user/usermanual.sgml
index ff7f04b4..be5fcb21 100644
--- a/src/doc/user/usermanual.sgml
+++ b/src/doc/user/usermanual.sgml
@@ -2603,6 +2603,60 @@ text/html [file:///Users/uncrypted-dockes/projets/bateaux/ilur/factEtCie/r
+
+ Path translations
+
+ In some cases, the document paths stored inside the index do
+ not match the actual ones, so that document
+ previews and accesses will fail. This can occur in a number of
+ circumstances:
+
+ When using multiple indexes it is a relatively common
+ occurrence that some will actually reside on a remote volume, for
+ exemple mounted via NFS. In this case, the paths used to access
+ the documents on the local machine are not necessarily the same
+ than the ones used while indexing on the remote machine. For
+ example, /home/me may have been used as
+ a topdirs elements while indexing, but the
+ directory might be mounted
+ as /net/server/home/me on the local
+ machine.
+
+ The case may also occur with removable
+ disks. It is perfectly possible to configure an index to
+ live with the documents on the removable disk, but it may
+ happen that the disk is not mounted at the same place so
+ that the documents paths from the index are
+ invalid.
+
+ As a last exemple, one could imagine that a big
+ directory has been moved, but that it is currently
+ inconvenient to run the indexer.
+
+
+ More generally, the path translation facility may be useful
+ whenever the documents paths seen by the indexer are not the same
+ as the ones which should be used at query time.
+
+ &RCL; has a facility for rewriting access paths when
+ extracting the data from the index. The translations can be
+ defined for the main index and for any additional query
+ index.
+
+ In the above NFS example, &RCL; could be instructed to
+ rewrite any file:///home/me URL from the
+ index to file:///net/server/home/me,
+ allowing accesses from the client.
+
+ The translations are defined in the
+
+ ptrans configuration file, which
+ can be edited by hand or from the GUI external indexes
+ configuration dialog.
+
+
+
+
The query language
@@ -5390,6 +5444,7 @@ x-my-tag = mailmytag
recoll.conf).
+
The mimeview file
@@ -5501,6 +5556,32 @@ x-my-tag = mailmytag
+
+ The ptrans file
+
+ ptrans specifies query-time path
+ translations. These can be useful
+ in multiple
+ cases.
+ The file has a section for any index which needs
+ translations, either the main one or additional query
+ indexes. The sections are named with the &XAP; index
+ directory names. No slash character should exist at the end
+ of the paths (all comparisons are textual). An exemple
+ should make things sufficiently clear
+
+
+ [/home/me/.recoll/xapiandb]
+ /this/directory/moved = /to/this/place
+
+ [/path/to/additional/xapiandb]
+ /server/volume1/docdir = /net/server/volume1/docdir
+ /server/volume2/docdir = /net/server/volume2/docdir
+
+
+
+
+
Examples of configuration adjustments