IkiWiki::Plugin::sar
Este complemento para ikiwiki permite buscar y reemplazar texto dentro de una página del wiki usando bien un diccionario global, bien un diccionario local para esa misma página.
El texto a reemplazar es un fuente de ikiwiki, por lo que se podrían aplicar efectos tipográficos, enlaces y demás.
La diferencia con otros mecanismos de busqueda y sustitución es lo siguiente: - Podemos definir un texto para la primera coincidencia y otro distinto para las restantes. - Podemos definir un texto para todas las coincidencias - Podemos anular una definición para una página en concreto ó podemos anular el mecanismo en una ó varias páginas
Dado el peligro que conlleva efectuar modificaciones sobre términos tan
comunes como perl
ó www
en un fuente --ikiwiki--, tras varios intentos he
optado por la solución más cómoda para mí, aunque no me guste el aspecto ni el
resultado final.
Por tanto, los términos a buscar y sustituir deben ir realzados en la página, rodeados por dobles guiones (--).
Configuración
Este módulo necesita dos valores globales en la configuración:
- sar_pagespec: que selecciona en qué páginas va a estar activo el
mecanismo, y cuyo valor predeterminado es
*
, es decir, todas. - sar_mainpage: que nombra la página de donde va a tomarse el diccionario
global; en este caso el valor predeterminado es
sar
.
Uso
En una página cualquiera de ikiwiki tenemos los siguientes escenarios:
[[!sar]]
para activar el plugin en una página en concreto y,
[[!sar disable = 1]]
para desactivarlo en la página en curso, y
[[!sar search=debian replace="__Debian__"]]
para definir ó redefinir un término de búsqueda y un reemplazo, también en la página activa, y
\[[!sar search=ibm first='[IBM](http://www.ibm.com)'
next="_IBM_"]]
para lo mismo pero ampliando las opciones, con una primera coincidencia y una segunda, y
[[!sar search=hp ]]
[[!sar search=hp disable=1]]
para desactivar el término hp
en la página en curso.
El diccionario global
Si en la página que hemos especificado en $config{sar_mainpage}
aparecen una
ó más directivas sar
, éstas se añaden al diccionario global y en su lugar
aparece una representación en texto de lo que se hará.
Es decir, si se añade una expresión sar
como ésta:
\[[!sar search=mod_perl first='[Mod Perl](http://perl.apache.org)'
next='`mod_perl`' ]]
el texto que aparece en dicha página será
The first appearance of 'mod_perl' will be replaced by '[Mod
Perl](http://perl.apache.org)' and the following appearances will be
replaced by '`mod_perl`'.
Por lo demás, el contenido de la página puede ser como cualquier otra, e
incluir cualquier otra cosa soportada por ikiwiki
.
Descargas
El software puede descargarse de dos sitios: