Instalación y configuración

Instalación de programas y dependencias

Para utilizar ~!gurí_ deberá previamente tener instalado R. Además, es conveniente tener instalado el entorno de desarrollo RStudio, que facilita el uso de R.

El paquete {gurí} no está aún disponible en CRAN, por lo cual debe instalarlo de forma directa desde el repositorio Github. Para ello puede utilizar el paquete {pak} que permite instalar paquetes desde Github de forma simple.1

if(!require("pak")) install.packages("pak")

pak::pkg_install("estedeahora/guri")

Luego cargue el paquete en su ambiente de trabajo ejecutando:

library(guri)

Si es la primera vez que usa ~!gurí_, luego de que haya instalado el paquete {gurí} y cargado el mismo en su ambiente de trabajo, deberá instalar las dependencias necesarias para que funcione correctamente. En concreto, necesitará instalar Pandoc, la distribución tinytex de LaTeX y las librerías de LaTeX necesarias para que ~!gurí pueda funcionar correctamente.2 Dependiendo de si ya tiene instalada estos programas esto puede tardar más o menos tiempo, por lo cual asegúrese de contar con una conexión estable a internet antes de comenzar. Para instalar estas dependencias ejecute en la consola de R lo siguiente:

guri_install(pandoc = T, tinytex = T)

Una vez realizado lo anterior, ya tiene instalado todo lo que necesita para comenzar a utilizar ~!gurí_. Para verificar que toda la instalación se haya realizado correctamente puede utilizar la revista de ejemplo que viene incorporado con el paquete (ver Inicio rápido).

Creación de una nueva revista

Para comenzar a utilizar ~!gurí_ deberá crear un nuevo ‘proyecto’ de R en el cual almacenará los archivos de su revista o repositorio de revistas. Una pequeña recomendación sobre este punto: dado que ~!guri_ es, además de un paquete de R, un flujo de trabajo que interaccina con su estructura de directorios, es muy recomendable que trabaje con proyectos este ejemplo desde un proyecto nuevo (más información sobre Proyectos de R). Para iniciar un nuevo proyecto en RStudio, vaya a File > New Project... y seleccione New Directory. Luego, seleccione New Project y elija la carpeta donde guardará su proyecto. La carpeta que utilice para su proyecto será la que alojará su revista o repositorio de revistas (ver más adelante). Como resultado, se abrirá una sesión de R y RStudio, que dirá el nombre de su proyecto en la parte superior derecha (“gurí” en el ejemplo de la imagen).

Una vez que haya cargado su proyecto, deberá cargar el paquete {gurí} para que esté disponible en su ambiente de trabajo:

library(guri)

~!gurí_ está pensado para que pueda administrar una “única revista” o un “repositorio de revistas” (un conjunto de revistas). La elección entre ambos modelos es algo que deberá elegir al inicio del poceso de creación de archivos. La diferencia fundamental entre ambos modelos es que en el caso de que elija administrar una única revista, toda la estructura de archivos estará en el directorio raíz de su proyecto, mientras que si elige administrar un repositorio de revistas cada revista tendrá su propio directorio dentro del directorio raíz. En este último caso, cada revista tendrá su propio conjunto de archivos y directorios, por lo cual podrá personalizar cada una de las revistas de forma independiente. La opción de repositorio de revistas es recomendable, sobre todo cuando se administran varias revistas que pueden estar relacionados entre sí, como por ejemplo, revistas de una misma editorial o de un mismo campo de estudio.

Para crear una revista (en cualquiera de los modelos) debe utilizar la función GURI_make_journal. Esto generará la estructura de directorios necesaria para su revista. A la función es necesario suministrarle los siguientes parámetros:

  1. journal: con el nombre abreviado de su revista (este parámetro sólo debe utilizarse si utiliza el modelo de “repositorio de revistas”). Este nombre será el utilizado para crear la carpeta con los archivos de su revista, por lo cual es recomendable no utilizar espacios ni símbolos especiales;
  2. repository: que debe ser TRUE or FALSE dependiendo de si su revista sigue el modelo de revista única o de repositorio de revistas. Si en el proyecto tiene ya una revista creada, debe respetar el modelo que haya elegido en ese momento. Además, en el modelo de revista única sólo puede generar una única revista por proyecto. Por defecto tiene valor FALSE, por lo que si no se especifica se generará una revista única;
  3. config_options: una lista con las opciones para la configuración de su revista (ver más Personalización de la apariencia de la revista);
  4. force: que le permite generar la revista aunque ya exista una revista en la carpeta (modolo de revista única) o una revista con el mismo nombre (modelo de repositorio de revistas). Por defecto tiene valor FALSE.

debe ser TRUE or FALSE dependiendo de si quiere sobreescribir los archivos existentes en caso de que ya haya una revista creada en el proyecto.

Existen una última opción que puede utilizar: si quiere generar una revista de ejemplo, deberá colcoar example = TRUE y

o para generar una revista con un conjunto de archivos de ejemplo (example_files = TRUE). Estas opciones son útiles para entender cómo se estructuran los archivos de su revista y cómo se generan los documentos finales.

En el siguiente ejemplo se muestra cómo crear una revista con el nombre NEW_JOURNAL y siguiendo el modelo de repositorio de revistas:

guri_make_journal("NEW_JOURNAL", repository = TRUE)

Durante la ejecución de la función, se mostrarán mensajes en la consola que indicarán el progreso de la creación de la revista . Una vez que finalice, se abrirá en el visor de archivos de RStudio el archivo ./NEW_JOURNAL/_journal.yaml para que edite las características globales de de toda su revista (volveremos sobre los campos presentes en este archivo en la siguiente sección). Como resultado de la ejecución de guri_make_journal encontrará que en su directorio de trabajo se creó la carpeta NEW_JOURNAL (o el nombre que haya elegido), la cual contendrá una carpeta _config (vacía inicialmente) y una carpeta _default-files (con archivos que puede utilizar durante el proceso de producción editorial). Además, dentro de la carpeta de su revista se generará el archivo _journal.yaml, que contiene los datos básicos de la revista. Por último, en el directorio raíz de su proyecto se generará un archivo oculto (.guri) que contiene elementos referidos a la configuración de su proyecto (no modifique este archivo de forma manual).

Un resumen de lo anterior puede verse en la siguiente imagen:

Configuraciones globales de la revista: _journal.yaml

Las características globales de su revista se definen en el archivo _journal.yaml que se encuentra en la carpeta principal de su revista. Este es un archivo de texto plano que contiene los metadatos de su revista (como el título, el ISSN, el editor, etc.). Este archivo se utiliza para generar los metadatos de los documentos finales de su revista, por lo cual es importante completar la mayor cantidad de datos posibles antes de comenzar a generar sus documentos.3 Si bien puede editar este archivo en cualquier momento para actualizar los metadatos de su revista, si ya editó un número de su revista con ~!gurí_ es recomendable hacer copias de seguridad cada vez que modifique el archivo _journal.yaml, de manera que pueda generar la misma salida que en el número original.

A continuación se presenta un fragmento de ejemplo del archivo _journal.yaml en el cual se define la información básica de la revista como parte del campo journal. Este campo contiene los campos title, eissn, publisher-name y publisher-loc. A su vez, el campo publisher-loc contiene anidados dentro los campos country, email e institution.

journal:
  title: journal title
  eissn: 0123-4567          # electronic ISSN
  publisher-name: Publisher name
  publisher-loc:
    country: Publisher institution country
    email: publisher@university.edu
    institution: Institution

En el archivo _journal.yaml encontrará cuatro campos principales: lang, journal, license y doi_register. El campo lang identifica el idioma en el que se encuentra la revista, utilizando el código ISO 639-1 (este campo es obligatorio). El campo journal permite definir los metadatos de la revista, como el título, el título abreviado, el ISSN (impreso y electrónico), el prefijo DOI, el nombre del editor e información de la institución editora. Sólo el título y el ISSN son campos obligatorios, aunque es recomendable completar el resto de los campos. En particular, si comenta el campo “DOI”, ~!gurí_ no asignará DOI a todos los documentos de la revista y no intentará generar los metadatos necesarios para el depósito en CrossRef. El campo license le permite definir la licencia bajo la cual se publicarán los documentos de la revista. Puede utilizar el campo text para definir el texto que figurará en su publicación y el campo link para hacer referencia a la página web de la licencia. La definición de una licencia es obligatoria en la configuración por defecto de las plantillas (aunque puede deshabilitarse si modifica las plantillas de forma personalizada). Por último, el campo doi_register le permite registrar la información necesaria para el depósito DOI en CrossRef (ver detalles en la sección sobre depósito DOI). Este campo en su conjunto es opcional (y su uso depende de la configuración de DOI de la revista).

Una vez que haya modificado el archivo _journal.yaml con la información de su revista, puede comenzar a generar los números de su revista utilizando el diseño y estilo que viene por defecto (ver Generación de números de la revista). Si lo desea, antes de avanzar en esta etapa, puede personalizar la apariencia y el estilo de su revista (ver Personalización de la apariencia de la revista).

Notas

  1. Alternativamente puede utilizar el paqete {remotes} que también permite instalar paquetes desde Github usando remotes::install_github("estedeahora/guri").↩︎

  2. De forma predeterminada se instalarán los siguientes paquetes de LaTeX que son utilizados por la pantilla de Pandoc: amsfonts, amsmath, lm, unicode-math, iftex, listings, fancyvrb, longtable, booktabs, graphicx, hyperref, xcolor, soul, geometry, setspace, babel, xeCJK, fontspec, selnolig, mathspec, biblatex, bibtex, biber, upquote, microtype, csquotes, natbib, bookmark, footnotehyper, footnote, xurl, parskip y svg. A su vez, la adaptación de la plantilla utiliza los siguientes paquetes: adjustbox, fontawesome5, caption, ccicons, relsize, truncate, lastpage y koma-script.↩︎

  3. YAML es un formato permite la definición de datos, conservando la legibilidad para humanos. En este tipo de archivos, los datos se organizan en pares de clave-valor, donde la clave se separa del valor por dos puntos y un espacio (:). Los valores pueden ser de distinto tipo (cadenas de texto, números, listas, etc). Cada par clave-valor se separa de los demás por un salto de línea y la indentación se utiliza para indicar la jerarquía de los datos. Además, estos campos pueden contener “listas” de valores, que se definen con una nueva línea y un guión (-) al inicio de la línea (con la correspondiente identación para indicar el anidamiento). Además, se pueden incluir comentarios en el archivo utilizando el símbolo #, que indica que el texto que sigue no debe ser considerado como parte del archivo. Para más información sobre el formato YAML puede consultar el siguiente enlace.↩︎