URI transforms
<< Tips | Pages | Screenshots >>
This page documents how you can use the feature of pmwiki-mode
that
automatically transforms URI's that you use together with for instance the
command pmwiki-open
.
pmwiki-mode
uses a variable called pmwiki-uri-transforms
that
contains instructions on how to transform a URI given to
pmwiki-open
. Here is an example pmwiki-uri-transforms
taken from
pmwiki-mode.el
:
(set 'pmwiki-uri-transforms (list '("http://wiki.lyx.org\\(/[A-Z]\\|/?\\?\\)" "http://wiki.lyx.org" "http://wiki.lyx.org/pmwiki.php") '("http://wiki.lyx.org/pmwiki.php" "http://wiki.lyx.org" "http://chr:LyXers@wiki.lyx.org") ))
In the example, pmwiki-uri-transforms
is assigned a list with two
transformations. Each transformation consists of three entries:
- A regular expression that the URI must match in order for the transformation to be applied.
- A string that will be searched for in the URI and
- A third string that will replace the second string in the URI.
Let's now study the first transformation:
'("http://wiki.lyx.org\\(/[A-Z]\\|/?\\?\\)" "http://wiki.lyx.org" "http://wiki.lyx.org/pmwiki.php")
The first part requires the URI to match the regular expression
http://wiki.lyx.org\(/[A-Z]\|/?\?\)
which in practice matches URIs such as these
The second part will search for http://wiki.lyx.org
in the URI, and the
third part replaces it with http://wiki.lyx.org/pmwiki.php
. The net
result of this transformation is to recognize "clean URIs" and replace them
with a URI that points to pmwiki.php
(with the pagename etc appended of
course).
Let's now study the second transformation:
'("http://wiki.lyx.org/pmwiki.php" "http://wiki.lyx.org" "http://chr:LyXers@wiki.lyx.org")
This transformation simply inserts username and password into the URI because the requires a password in order to edit pages. (The password doesn't hurt even when just opening a page).