Skip to content

Template for writing and Catholic University of Sacred Heart thesis in R Markdown; uses the OxThesis LaTeX template and was inspired by thesisdown.

License

Notifications You must be signed in to change notification settings

NiccoloSalvini/cattolicadown

Repository files navigation

Per citarmi!

Se usi questo template per scrivere la tua tesi, citalo! :smiling_face_with_three_hearts: Sto correggendo refusi e sintassi per la documentazione online, quindi se hai suggerimenti lasciameli per favore. Il modo più facile per farlo è annotare sulla costa sx del sito di cattolicadown, infatti dovresti vedere un plug-in (una piccola linguetta), si chiama hypothes, serve appunto per annotare pagine web, lasciami un commento se puoi. Settimanalmente li rivedo e aggiorno.

DOI

DOI

citation

@misc{niccolo_salvini_2023_7995487,
  author       = {Niccolò Salvini},
  title        = {{`cattolicadown` RMarkdown to LaTeX thesis template 
                   for UCSC}},
  month        = jun,
  year         = 2023,
  publisher    = {Zenodo},
  version      = {1.0},
  doi          = {10.5281/zenodo.7995487},
  url          = {https://doi.org/10.5281/zenodo.7995487}
}

Contents

cattolicadown

Un modello per scrivere una tesi dell'Università Cattolica del Sacro Cuore (per tutte le sedi) in R Markdown. Il modello utilizza il pacchetto bookdown R insieme a OxThesis LaTeX template, oltre a molte ispirazioni da thesisdown e oxforddown .

NOTA: se hai utilizzato questo modello per scrivere la tua tesi, mandami due righe al niccolo.salvini@unicatt.it cosicchè lo aggiunga qua e possa essere di esempio!

Requisiti {#requisiti}

  • R e RStudio version >= 1.2

  • R packages rmarkdown, bookdown, tidyverse, kableExtra, e here

  • Installazione LaTeX

    • Opzione 1: Usa TinyTeX (a minimal LaTeX installation intended for use with R Markdown)

      remotes::install_github('yihui/tinytex')
      tinytex::install_tinytex()
      • Quindi installa i pacchetti LaTeX usati da cattolicadown (lo spazio su disco occupato da TinyTex con i pacchetti richiesti installati è di circa 280 Mb)
      pacchetti_mancanti <- c(
        "appendix", "babel-english", "babel-greek", "babel-latin", 
        "biber", "biblatex", "caption", "cbfonts-fd", "colortbl", "csquotes", 
        "enumitem", "environ", "eso-pic", "fancyhdr", "greek-fontenc", 
        "grfext", "hyphen-greek", "hyphen-latin", "lineno", "logreq", 
        "makecell", "microtype", "minitoc", "multirow", "notoccite", 
        "oberdiek", "pdflscape", "pdfpages", "quotchap", "soul", "tabu", 
        "threeparttable", "threeparttablex", "titlesec", "tocbibind", 
        "trimspaces", "ulem", "units", "utopia", "varwidth", "wrapfig",
        "fvextra", "xurl"
        )
      tinytex::tlmgr_install(pacchetti_mancanti)
    • Option 2: Usa una distro casuale di LaTeX

  • Se su Mac

    • Strumenti per sviluppatori da riga di comando. Se non li hai già installati, il tuo Mac probabilmente ti chiederà automaticamente di installarli. Altrimenti, puoi installarli aprendo un terminale ed eseguendo xcode-select --install

Cosa devo fare?

  • clicca sul pulsante verde Use this template
  • crea la tua repository della tesi (come se tu la mettessi su drive)
  • successivamente apri un progetto R clonando la Repo (questo passaggio ti sarà più chiaro nella documentazione)
  • apri cattolicadown.Rproj in RStudio e sei pronto a scrivere!

How-to Capitoli

Leggi il capitolo 'How-to' per comprendere lo scheletro di cattolicadown e come fare le cose di base come costruire la tua tesi.

Riguardo l'utilizzo di R Markdown e sintassi, e in generale in cattolicadown in particolare, leggere i capitoli dedicati a questo (Nozioni di base su R Markdown, Citazioni, riferimenti incrociati e collaborazione e Tabelle).

Vedi anche le risorse generali e ufficiali di R Markdown R Markdown: The Definitive Guide e il R Markdown Cookbook.

Video tutorials {#video-tutorials}

Sto aggiornando i video tutorial - Ho notato di seguito che devono ancora essere aggiornati, ma sono ancora informativi e ho cancellato quelli che non si applicano più. Non sono a cura mia, ma sto pianificando di metterli!

Linee guida formattazione defualt per tesi in Cattolica

la tesi dhe compili tramite questo strumento ha questa geometria: - margine sinitro: 4cm - margine destro: 3cm - margine basso: 3cm - margine alto: 3cm

E' "twoside", nel senso che nelle pagine dispari il margine sinitro è 4cm e il destro 3cm, nelle pari invece è il dx che è 4cm e il sx 3cm. Se vuoi intervenire nella formattazione generale cambia il parametro a page-layout: nobind in index.Rmd per margini a:

  • margine sinitro: 3.1cm
  • margine destro: 3.1cm
  • margine basso: 2.7cm
  • margine alto: 2.5cm

Scrivere la tesi

  • aggiorna l'intestazione YAML (quella in alto tra '---') in index.Rmd con il tuo nome, scuola, ecc.
  • scrivi i singoli capitoli come file .Rmd nella cartella principale (root dir)
  • scrivere i preliminari i.e. prelims, tutto cioò che viene prima del della vera e propria tesi (abstract, ringraziamenti, abbreviazioni) e l'ultimo argomento (appendici) regolando i file .Rmd nella cartella front-and-back-matter/

I files .Rmd che non si desidera siano inclusi nel corpo del testo devono avere nomi di file che iniziano con un trattino basso (ad es. front-and-back-matter/_abstract.Rmd e front- e-back-matter/_acknowledgements.Rmd). (In alternativa, specifica manualmente in _bookdown.yml quali file devono essere uniti nel corpo del testo.)

🛠️ builda la tesi

  • builda l'intera tesi aprendo index.Rmd e facendo clic sul pulsante 'knit'.
  • I file di tesi generati vengono salvati nella cartella docs/
  • Per scegliere i formati di output, vai all'inizio dell'intestazione YAML di index.Rmd e modifica la riga thesis_formats <- "pdf"; nel formato desiderato (le opzioni sono "pdf", "bs4", "gitbook" e "parola")
  • Puoi creare più formati contemporaneamente con, ad esempio, thesis_formats <- c("pdf", "bs4", "word")
  • Se vuoi personalizzare la funzione build, modifica in scripts_and_filters/knit-functions.R

PDF output{#pdf-output}

knit: (function(input, ...) {
    thesis_formats <- "pdf";
    ...

Quando crei l'intera tesi in PDF, Latex genera un intero gruppo di file ausiliari: questi vengono automaticamente rimossi al termine del processo di creazione dalla funzione di unione personalizzata che viene utilizzata quando fai knit index.Rmd.

Per modificare il modo in cui viene eseguita questa rimozione, modifica scripts_and_filters/knit-functions.R. La riga file.remove(list.files(pattern = "*\\.(log|mtc\\d*|maf|aux|bcf|lof|lot|out|toc)$")) all'interno di if ( "pdf" %in% output_format){ è quello che rimuove i files dopo la generazione dell'output PDF.

BS4 output (HTML)

knit: (function(input, ...) {
    thesis_formats <- "bs4";
    ...
  • NOTA: l'output del libro bs4 richiede i pacchetti R downlit e bslib (installali con install.packages)
  • NOTA: per distribuire un libro BS4 su GitHub Pages, ci deve essere un file .nojekyll nella cartella docs/, altrimenti GitHub fa della magia nera ottenendo che alcuni (random) percorsi di file non funzionino. Questo file è generato automaticamente dalla funzione knit cattolicadown.

Gitbook output (HTML)

knit: (function(input, ...) {
    thesis_formats <- "gitbook";
    ...
  • NOTA: per distribuire un libro Gitbook su GitHub Pages, ci deve essere un file .nojekyll nella cartella docs/, altrimenti GitHub fa della magia nera ottenendo che alcuni (random) percorsi di file non funzionino. Questo file è generato automaticamente dalla funzione knit cattolicadown.

Word output {#word-output}

knit: (function(input, ...) {
    thesis_formats <- "word";
    ...
  • Nota che l'output di Word non ha nessun template dietro e molte cose non funzionano (ad es. rotazione dell'immagine, correzioni di evidenziazione). Incoraggio le richieste pull che ottimizzano l'output di Word, ad es. utilizzando gli strumenti del pacchetto officer.. Ti consiglio al limite di compilare in PDF e convertire in word con servizi online.

Fare la build di un singolo capitolo

Per knit-are un singolo capitolo senza compilare l'intera tesi:

  1. aprire il file .Rmd di un capitolo
  2. aggiungi un'intestazione YAML specificando i formati di output (ad es. bookdown::word_document2 per un documento di Word che potresti voler caricare su Google Docs per il feedback dei collaboratori)
  3. fare clic sul pulsante knit (il file di output viene quindi salvato nella cartella principale) output, ad es. utilizzando gli strumenti del pacchetto

Come mostrato nelle intestazioni YAML dei capitoli di esempio, per generare un singolo capitolo in PDF, utilizzare ad esempio:

output:
  bookdown::pdf_document2:
    template: templates/brief_template.tex
    citation_package: biblatex
documentclass: book
bibliography: references.bib

Il file templates/brief_template.tex formatta il capitolo nello stile OxThesis ma senza includere la parte iniziale (indice, abstract, ecc.).

NOTA: Il percorso bibliografico nelle intestazioni YAML dei singoli capitoli deve essere identico a quello in index.Rmd - altrimenti il percorso bibliografico dei singoli capitoli potrebbe sovrascrivere il percorso in index.Rmd e causare problemi al knit dell'intera tesi.

Customizzazioni ed estensioni

  • per le cose comuni che potresti voler fare nella tua tesi, leggi il contenuto di esempio
  • il capitolo 'Customizzazioni ed estensioni' (contiene suggerimenti su come includere pagine PDF da una composizione pubblicata articolo nella tua tesi e molto altro!

Limitazioni

under dev

Gotchas{#gotchas}

  • non usare i trattini bassi (_) nel frontespizio di YAML o nelle etichette dei pezzi di codice. di codice! (I trattini bassi hanno un significato speciale in LaTeX, quindi è probabile che si ottenga un errore. è probabile che si verifichi un errore, cfr. https://yihui.org/en/2018/03/space-pain/)

    • cattivo YAML: bibliography: bib_final.bib
    • buono YAML: bibliography: bib-final.bib
    • cattivo chunk label: {r my_plot}
    • buono chunk label: {r my-plot}

Formati di Output

  • al momento solo l'output PDF e HTML è stato correttamente implementato; Potrei migliorare l'output di Word più avanti.

Enjoy!

About

Template for writing and Catholic University of Sacred Heart thesis in R Markdown; uses the OxThesis LaTeX template and was inspired by thesisdown.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages