Si hay dos o tres no hay problema con hacerlo a mano, pero cuando hay muchas notas, puede ser eterno. A continuación, te presentamos dos sencillos scripts de UltraEdit (seguramente con Sublimetext, Notepad++ u otros también pueda hacerse).
function CreaNotasdeLibro() {
var num = UltraEdit.getValue("Número de notas a crear:",1);
var i = 1;
while (i <= num) {
UltraEdit.activeDocument.write("<a href=\"../Text/notas.xhtml#n" + i + "\" id=\"nb" + i + "\"><sup>[" + i + "]</sup></a>\r\n");
i= ++i;
}
} //end creanotasdelibro
CreaNotasdeLibro();
function CreaNotasenNotas() {
var i = 1;
UltraEdit.activeDocument.top();
UltraEdit.columnModeOff();
UltraEdit.insertMode();
do {
UltraEdit.activeDocument.key("HOME");
UltraEdit.activeDocument.write("<div class=\"nota\">");
UltraEdit.activeDocument.write("<p><a href=\"../Text/.xhtml#nb" + i + "\" id=\"n" + i + "\"><sup>[" + i + "]</sup></a> ");
UltraEdit.activeDocument.key("END");
UltraEdit.activeDocument.write("</p></div>");
UltraEdit.activeDocument.key("DOWN ARROW");
i= ++i;
} while (!UltraEdit.activeDocument.isEof())
}
CreaNotasenNotas();
Una vez creados, sigue los siguientes pasos:
Cuando termine tendremos una lista similar a la siguiente:
Ahora es cuestión de ir cambiando las notas creadas en los capítulos copiando el código de la nota y pegándolo en su lugar correspondiente:
vuestra grandeza[2].
vuestra grandeza<a href = "../Text/notas.xhtml#nota2" id ="nota2"><sup>[2]</sup></a>.
Una vez insertadas las notas, arreglaremos las notas en notas.xhtml:
Y obtendremos la lista de notas. Lista para copiar y pegar en Sigil justo debajo del heading de notas si no fuese porque falta saber en que fichero está cada nota para ponerlo en el href, al que sólo le falta el nombre del fichero.
Una forma de hacer esto es:
Hemos terminado. Excepto por un detalle, las expresiones regulares. La primera parte se puede hacer mucho más rápido en algunos casos con las expresiones regulares. Si se explica la otra forma es porque habrá libros en los que no sea posible, por ejemplo porque las notas no estén numeradas.
Notas super-rápidas en capítulos con expresiones regulares
Sólo necesitas conocer cinco cosas de las expresiones regulares para editar las notas de forma rápida. Si necesitas más información, te recomendamos que consultes el apartado correspondiente en este mismo manual o preguntes por el foro.
No es fácil, pero vamos con ello. Las notas en este libro no tienen nada de código, sólo [número de nota]. La expresión para cambiarlas será por tanto: \[([0-9]*)]
Los corchetes, y luego cualquier número. Usamos el asterisco porque las notas por encima de 9 tendrán dos números.
Y se reemplaza por lo siguiente:
<a href="../Text/notas.xhtml#nota\1" id="nota\1"><sup>[\1]</sup></a>
Como veis, en la búsqueda hemos dejado los corchetes fuera de los paréntesis ya que en el reemplazo sólo queremos el número para ponerlo en el href, en el id y como texto de la propia nota.
Si antes de ejecutar la expresión damos a contar, veremos que el número de notas que sale es el doble de lo esperado. El motivo es que en el fichero notas.xhtml las notas también se escriben como [número de notas]. Se puede hacer de dos formas, ir reemplazando todas las notas con el botón sustituir, o bien copiar notas.xhtml a UltraEdit antes de reemplazar todas.
Y las notas quedarán así y todas a la vez:
<a href = "../Text/notas.xhtml#nota1" id ="nota1"><sup>[1]</sup></a>.
Intentémoslo con otro ejemplo con más código, un poco más complicado. Vamos a suponer que tenemos un libro que sí que tiene código de enlace con las notas, pero que no están según lo indicado en este Manual. Vamos a cambiarlas todas con una expresión regular.
Buscamos lo siguiente:
<a id="ref_footnotebookmark_start[0-9]*"></a><span class="sgc-1"><a href="#ref_footnotebookmark_end[0-9]*">([0-9]*)</a></span>
Donde [0-9]* sería cualquier número: 1, 2, 3… Nuestro objetivo es eliminar el texto con código no deseado, como por ejemplo: ref_footnotebookmark_start
Como no hay ningún carácter especial en este caso no tenemos que usar \, sólo marcamos con paréntesis uno de los números para luego usarlo en el reemplazo. El resto sí que hay que buscarlos con [0-9]* porque son diferentes para cada nota, pero los descartamos para el reemplazo.
Y reemplazamos por:
<a href="../Text/notas.xhtml#nota\1" id="nota\1"><sup>[\1]</sup></a>