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")
::pkg_install("estedeahora/guri") pak
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:
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;repository
: que debe serTRUE
orFALSE
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 valorFALSE
, por lo que si no se especifica se generará una revista única;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);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 valorFALSE
.
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
Alternativamente puede utilizar el paqete {remotes} que también permite instalar paquetes desde Github usando
remotes::install_github("estedeahora/guri")
.↩︎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
ykoma-script
.↩︎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.↩︎