Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cambia Rakefile a Makefile #77

Merged
merged 7 commits into from
Oct 22, 2019
Merged

Cambia Rakefile a Makefile #77

merged 7 commits into from
Oct 22, 2019

Conversation

mx-psi
Copy link
Member

@mx-psi mx-psi commented Oct 19, 2019

Este Pull Request modifica el Rakefile por un Makefile. Ahora mismo reproduce en mi ordenador el comportamiento que tenía el Rakefile pero hay que discutir algunas cosas:

  1. el Makefile asume la estructura de los apuntes de la wiki, pero la asignatura Análisis Matemático 1 no sigue esa estructura y no está cubierta por tanto en su totalidad por el Makefile,
  2. los nombres de las carpetas se han cambiado a minúscula (siguiendo lo que expuse en Eliminar sensibilidad a mayúsculas #76),
  3. no puedo compilar algunos de los apuntes en mi máquina por lo que no puedo verificar si funciona correctamente en estos (AC, FR, ISE, MC, PDOO, SCD). El error que da es el mismo que con el Rakefile así que supongo que hace lo mismo (aunque los comandos han cambiado ligeramente),
  4. no he añadido soporte para org ya que no hay apuntes para org y el Rakefile realmente no lo tenía,
    5. los objetivos actuales son phony, por lo que el Makefile siempre rehace los apuntes y
    6. el Makefile no puede establecer la dependencia ante la plantilla.

Las cuestiones más relevantes son 5 y 6:

Para 5, la opción más sencilla que veo es que los ficheros de salida no estén en la carpeta de su asignatura dentro de .out ya que al fin y al cabo, siguiendo la estructura de los apuntes, cada carpeta debería tener un único fichero pdf, por lo que sería redundante.

En tal caso podríamos construir el nombre de los ficheros de salida en una variable TEX_PDFS y modificar las reglas para que tengan un patrón estático como sigue:

$(TEX_PDFS): .out/%.pdf : %/apuntes.tex %/ejercicios.tex
	...

Para 6, el problema está en que los patrones estáticos no permiten duplicar el %.
Lo más sencillo sería establecer un nombre fijo para todas las plantillas (del tipo plantilla.tex).

@mx-psi mx-psi changed the title Modelo inicial de Makefile Cambia Rakefile a Makefile Oct 19, 2019
@mx-psi
Copy link
Member Author

mx-psi commented Oct 20, 2019

Resueltas 5 y 6 con los últimos cambios. Falta arreglar la compilación de los apuntes que no funcionaban antes

@danipozo
Copy link
Collaborator

Parece que la compilación de los apuntes que fallaban antes es un problema independiente de este PR, por tanto, podemos mezclarlo, ¿no?

@mx-psi
Copy link
Member Author

mx-psi commented Oct 21, 2019

Sí, yo creo que sí. Mi único miedo era que al haber cambiado ligeramente los comandos podría haber introducido algún error nuevo, pero no parece.

@jmml97
Copy link
Member

jmml97 commented Oct 21, 2019

Lo de la compilación continua ¿lo has mirado, @mx-psi?

@jmml97 jmml97 mentioned this pull request Oct 21, 2019
@mx-psi
Copy link
Member Author

mx-psi commented Oct 21, 2019

Lo de la compilación continua ¿lo has mirado, @mx-psi?

Eso dependerá del editor que use cada uno, ¿no? En bash usando inotifywait se puede hacer algo como:

continous(){
  while true; do
    make $@
    inotifywait -e modify,close_write plantilla_* $@/apuntes.* $@/ejercicios.*
  done
}

Si vas a editar los apuntes de EMV dejas una terminal abierta con continous emv y se ejecutará make con cada modificación.

@jmml97
Copy link
Member

jmml97 commented Oct 21, 2019

@mx-psi latexmk tiene una opción para hacer compilación continua, a eso me refería.

@mx-psi
Copy link
Member Author

mx-psi commented Oct 21, 2019

@mx-psi latexmk tiene una opción para hacer compilación continua, a eso me refería

Ah, no, no lo he mirado.
Diría que es una cuestión que no tiene por qué resolverse aquí y así puedes mezclar #68.

Para implementarlo supongo que podría añadirse en las tareas phony específicas de las asignaturas, aunque me queda la duda de, incluso si se puede hacer con latexmk, cómo gestionar el caso de los apuntes creados con Markdown.

La alternativa de continous que ponía antes funcionaría con pandoc pero no es portable a macOS o Windows (¿quizá se puedan encontrar comandos equivalentes en esos SOs?).

@mx-psi mx-psi merged commit 5de6932 into master Oct 22, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants