From fdf89765702adc962749dd6cbb693a6e5fb38f7c Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sun, 14 May 2023 13:47:52 +0100 Subject: [PATCH 1/7] Add OpenGraph tags --- _en/index.md | 1 + _it/index.md | 1 + _layouts/base.html | 17 ++++++++++++++--- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/_en/index.md b/_en/index.md index ce9555c..5de50e0 100644 --- a/_en/index.md +++ b/_en/index.md @@ -1,6 +1,7 @@ --- title: Front Cover layout: default +description: An easy guide to learn how to create mods for Minetest homepage: true no_header: true root: .. diff --git a/_it/index.md b/_it/index.md index 5074fbd..09575f2 100644 --- a/_it/index.md +++ b/_it/index.md @@ -1,5 +1,6 @@ --- title: Copertina +description: An easy guide to learn how to create mods for Minetest layout: default homepage: true no_header: true diff --git a/_layouts/base.html b/_layouts/base.html index 59a6529..59fa679 100644 --- a/_layouts/base.html +++ b/_layouts/base.html @@ -16,12 +16,19 @@ layout: compress {% if page.homepage %}{% else %}{{ page.title }} - {% endif %}Minetest Modding Book - - - + + + + {% if page.description %} + + + {% endif %} + {% if page.image %} + + {% endif %} {% assign oldSegment = "/" | append: language | append: "/" %} {% for other_lang in site.data.languages %} @@ -33,6 +40,10 @@ layout: compress {% endunless %} {% endfor %} + {% if page.noindex %} + + {% endif %} + From 3cd8d52da057327f1165d089435faad6b450c903 Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sun, 14 May 2023 14:08:56 +0100 Subject: [PATCH 2/7] Add feedback form --- _layouts/base.html | 2 +- _layouts/default.html | 35 ++++++++++++ _sass/_feedback.scss | 121 ++++++++++++++++++++++++++++++++++++++++++ _sass/_main.scss | 7 +++ comment_received.html | 29 ++++++++++ languages.html | 2 +- static/style.scss | 4 -- 7 files changed, 194 insertions(+), 6 deletions(-) create mode 100644 _sass/_feedback.scss create mode 100644 comment_received.html diff --git a/_layouts/base.html b/_layouts/base.html index 59fa679..2f0db7c 100644 --- a/_layouts/base.html +++ b/_layouts/base.html @@ -45,7 +45,7 @@ layout: compress {% endif %} - +
diff --git a/_layouts/default.html b/_layouts/default.html index 41792a4..d6d9995 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -63,6 +63,41 @@ layout: base
  • {% if next %}{{ next.title }} >{% endif %}
  • + {% if language == "en" %} + + {% endif %} +
    © 2014-{{ site.time | date: '%Y' }} {% if language == "en" %} diff --git a/_sass/_feedback.scss b/_sass/_feedback.scss new file mode 100644 index 0000000..e42d528 --- /dev/null +++ b/_sass/_feedback.scss @@ -0,0 +1,121 @@ +.feedback { + background: white; + padding: 1em; + + input[name='username'], label[for='username'] { + display: none; + } + + h2 { + border: none; + margin-top: 0; + } +} + +.btn { + --color-primary-dark: #007DB8; + --color-primary-dark-highlight: #06aed5; + + display: inline-block; + padding: 0.375rem 0.75rem; + margin: 0.25rem 0.25rem 0.25rem 0; + font-size: 0.9375rem; + line-height: 1.5; + border-radius: 0.25rem; + background: transparent; + border: 1px solid transparent; + color: white; + transition: color 0.15s ease-in-out, filter 0.15s ease-in-out, + background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, + box-shadow 0.15s ease-in-out; + cursor: pointer; + box-sizing: border-box; + text-align: center; + + &:hover { + color: white; + text-decoration: none; + background-color: rgba(255, 255, 255, 0.25); + } + + &.active { + color: var(--color-primary-dark); + } + + img.icon { + width: 100%; + height: 100%; + object-fit: contain; + } +} + +.btn-primary { + background-color: var(--color-primary-dark); + border-color: var(--color-primary-dark); + + &:hover { + background-color: var(--color-primary-dark-highlight); + border-color: var(--color-primary-dark-highlight); + } +} + +.form-group { + margin-bottom: 1rem; +} + +button, input { + overflow: visible; +} + +input, button, select, optgroup, textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; + box-sizing: border-box; +} + +label { + display: inline-block; + margin-bottom: 0.5rem; +} + +.form-control { + display: block; + width: 100%; + height: calc(1.5em + 1.5rem + 2px); + padding: 0.75rem 1rem; + font-size: 0.9375rem; + font-weight: 400; + line-height: 1.5; + color: #52575C; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; +} + +.text-muted { + color: #7A8288 !important; +} +.form-text { + display: block; + margin-top: 0.25rem; +} + +small, .small { + font-size: 80%; + font-weight: 400; +} + +textarea.form-control { + height: auto; +} + +textarea { + overflow: auto; + resize: vertical; +} diff --git a/_sass/_main.scss b/_sass/_main.scss index d800709..436bc9f 100644 --- a/_sass/_main.scss +++ b/_sass/_main.scss @@ -198,3 +198,10 @@ header span { position: relative; } } + + +@import "content"; +@import "code"; +@import "notice"; +@import "table"; +@import "feedback"; diff --git a/comment_received.html b/comment_received.html new file mode 100644 index 0000000..3fa9e25 --- /dev/null +++ b/comment_received.html @@ -0,0 +1,29 @@ +--- +title: Thanks for your feedback +layout: base +root: . +sitemap: false +noindex: true +--- + +
    +
    +

    Minetest Modding Book

    + +

    Thanks for sharing your feedback!

    + +

    + You're helping to make the modding book better. +

    + +

    + + Back to the book + +

    +
    + +
    + © 2014-{{ site.time | date: '%Y' }} +
    +
    diff --git a/languages.html b/languages.html index 949b052..c92d7db 100644 --- a/languages.html +++ b/languages.html @@ -19,6 +19,6 @@ root: .
    - © 2014-20 + © 2014-{{ site.time | date: '%Y' }}
    diff --git a/static/style.scss b/static/style.scss index 518d603..9f41894 100644 --- a/static/style.scss +++ b/static/style.scss @@ -2,7 +2,3 @@ --- @import "main"; -@import "content"; -@import "code"; -@import "notice"; -@import "table"; From b67baac70b5056f05bf1c4003ed500c756850aae Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sun, 14 May 2023 14:19:38 +0100 Subject: [PATCH 3/7] Fix feedback thanks page --- _layouts/default.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_layouts/default.html b/_layouts/default.html index d6d9995..e3ad545 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -74,7 +74,7 @@ layout: base

    - + From 2850211d4f21bc0d41d1674f0624c2507a3dd0f6 Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sun, 14 May 2023 14:20:44 +0100 Subject: [PATCH 4/7] Fix site_name --- _layouts/base.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/_layouts/base.html b/_layouts/base.html index 2f0db7c..42ee1c0 100644 --- a/_layouts/base.html +++ b/_layouts/base.html @@ -21,7 +21,8 @@ layout: compress - + + {% if page.description %} From 84e46d9fc4878025fac7151754bd82baef31c76a Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sun, 14 May 2023 14:22:31 +0100 Subject: [PATCH 5/7] Rename send feedback button --- _layouts/default.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_layouts/default.html b/_layouts/default.html index e3ad545..2107f03 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -93,7 +93,7 @@ layout: base Optional, if you'd like to receive a response.
    - + {% endif %} From 9e68fff0334fb5d7e6a6e0af88ee33093bb7d46d Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Tue, 30 May 2023 09:56:49 +0100 Subject: [PATCH 6/7] Fix typo in feedback form --- _layouts/default.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_layouts/default.html b/_layouts/default.html index 2107f03..710517c 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -79,7 +79,7 @@ layout: base
    - + Max 1800 characters. What is missing? What confused you? From 5339b83fa4af49683517c6e75b5fe5bb4db44ba0 Mon Sep 17 00:00:00 2001 From: Zughy <4279489-marco_a@users.noreply.gitlab.com> Date: Tue, 30 May 2023 09:17:20 +0000 Subject: [PATCH 7/7] Improve Italian translation --- _it/basics/getting_started.md | 49 ++++++++++++++++------------------- _it/index.md | 8 +++--- 2 files changed, 26 insertions(+), 31 deletions(-) diff --git a/_it/basics/getting_started.md b/_it/basics/getting_started.md index 0d13a60..36127d8 100644 --- a/_it/basics/getting_started.md +++ b/_it/basics/getting_started.md @@ -27,28 +27,27 @@ Capire la struttura base della cartella di una mod è un requisito essenziale pe ## Cosa sono i giochi e le mod? -Il punto forte di Minetest è l'abilità di sviluppare facilmente giochi senza il bisogno di crearsi da zero il motore grafico, gli algoritmi voxel o tutta la parte network. +Il punto forte di Minetest è l'abilità di sviluppare facilmente giochi senza il bisogno di crearsi da zero il motore grafico, gli algoritmi voxel o tutta la parte di rete. -In Minetest, un gioco è una collezione di moduli che lavorano insieme per fornire il contenuto e il comportamento di un gioco. +In Minetest, un gioco è un insieme di moduli che lavorano fianco a fianco per fornire il contenuto e il comportamento di un gioco. Un modulo, solitamente conosciuto come "mod", è una collezione di script e risorse, e in teoria ne potrebbe bastare uno per creare un intero gioco. -Tuttavia, questo non accade spesso, perché riduce la comodità di poter sostituire o calibrare alcune parti di quest'ultimo in maniera indipendente dalle altre. +Tuttavia, questo non accade spesso, perché ridurrebbe la comodità di poter sostituire o calibrare alcune parti in maniera indipendente dalle altre. -È poi anche possibile distribuire le mod come a sé stanti, nel qual caso sono sempre mod nel senso più tradizionale del termine: modifiche. -Esse calibrano o espandono le proprietà di un gioco. +È poi anche possibile distribuire singolarmente le varie mod, che diventano mod nel senso più tradizionale del termine: modifiche, per calibrano o espandere le proprietà di un gioco. Indipendentemente da come le si voglia usare (specifiche per un gioco o come estensioni generiche) usano la stessa API. -Questo libro coprirà le parti principali della API di Minetest, ed è pensato sia per gli sviluppatori del motore di gioco (Minetest, in C++) che per i creatori di mod. +Questo libro coprirà le parti principali dell'API di Minetest, ed è pensato sia per chi sviluppa il motore di gioco (Minetest, in C++) che per chi crea mod. ## Dove vengono salvate le mod? -Ogni mod ha la sua cartella personale dove viene messo il suo codice in Lua, le sue texture, -i suoi modelli e i suoi file audio. Minetest fa un check in più punti e questi punti sono generalmente chiamati *percorsi di caricamento mod* (*mod load paths*). +Ogni mod ha la sua cartella personale dove viene messo il suo codice in Lua, le sue texture, i suoi modelli e i suoi file audio. +Minetest esegue controlli in più posti e questi posti sono generalmente chiamati *percorsi di caricamento mod* (*mod load paths*). -Per un dato mondo/salvataggio, vengono controllati tre punti. +Per un dato mondo/salvataggio, vengono controllati tre percorsi. Essi sono, in ordine: 1. Mod di gioco. Queste sono le mod che compongono il gioco che il mondo sta eseguendo. @@ -58,15 +57,15 @@ Essi sono, in ordine: 3. Mod del mondo. Il luogo dove mettere le mod che sono specifiche di un dato mondo. Es: `minetest/worlds/world/worldmods/` -Minetest controllerà questi punti nell'ordine sopraelencato. -Se incontra una mod con lo stesso nome di una incontrata in precedenza, l'ultima verrà caricata al posto della prima. -Questo significa, per esempio, che è possibile sovrascriverne una di gioco se ve n'è una omonima nelle globali. +Minetest controllerà questi percorsi nell'ordine sopraelencato. +In caso dovesse incontrare una mod con lo stesso nome di una incontrata in precedenza, l'ultima verrebbe caricata al posto della prima. +Ciò significa, per esempio, che è possibile sovrascriverne una di gioco se ve n'è una omonima nelle globali. La posizione di ogni percorso dipende da quale sistema operativo si sta usando, e da come è stato installato Minetest. * **Windows:** - * Per le build portatili, per esempio da un file .zip, vai dove hai estratto lo zip e cerca le cartelle `games`, `mods` e `worlds`. - * Per le build installate, per esempio da un setup.exe, guarda in C:\\\\Minetest o C:\\\\Games\\Minetest. + * Per le versioni portatili, per esempio da un file .zip, vai dove hai estratto lo zip e cerca le cartelle `games`, `mods` e `worlds`. + * Per le versioni installate, per esempio da un setup.exe, guarda in C:\\\\Minetest o C:\\\\Games\\Minetest. * **GNU/Linux:** * Per le installazioni di sistema, guarda in `~/.minetest`. Attenzione che `~` equivale alla cartella home dell'utente, e che i file e le cartelle che iniziano con un punto (`.`) sono nascosti di default. @@ -81,12 +80,12 @@ La posizione di ogni percorso dipende da quale sistema operativo si sta usando, ![Find the mod's directory]({{ page.root }}/static/folder_modfolder.jpg) Il *nome mod* è usato per riferirsi a una mod e ognuna di esse dovrebbe averne uno unico. -Questi possono includere lettere, numeri e trattini bassi, e un buon nome dovrebbe descrivere brevemente cosa fa la mod (è anche consigliato nominare la cartella della mod allo stesso modo). +Questi possono includere lettere, numeri e trattini bassi, e un buon nome dovrebbe descrivere brevemente cosa fa la mod (è anche consigliato rinominare la cartella della mod con il nome di quest'ultima). Per scoprire se un nome è disponibile, prova a cercarlo su [content.minetest.net](https://content.minetest.net). - mymod + lamiamod ├── init.lua (necessario) - Viene eseguito al lancio del gioco. ├── mod.conf (consigliato) - Contiene la descrizione e le dipendneze. ├── textures (opzionale) @@ -95,8 +94,8 @@ Per scoprire se un nome è disponibile, prova a cercarlo su │   └── ... qualsiasi file audio └── ... qualsiasi altro tipo di file o cartelle -Solo il file init.lua è necessario in una mod per eseguirla al lanciare un gioco; -tuttavia, mod.conf è consigliato e altri componenti potrebbero essere richiesti a +Solo il file init.lua è necessario in una mod per eseguirla quando si avvia un gioco; +tuttavia è consigliato anche mod.conf, e altri componenti potrebbero essere richiesti a seconda di quello che si vuole fare. ## mod.conf @@ -111,13 +110,11 @@ Per esempio: ### Dipendenze -Una dipendenza avviene quando una mod ne richiede un'altra da avviare prima di essa. -Una mod potrebbe infatti richiedere il codice di quest'ultima, i suoi oggetti o altre risorse. +Una dipendenza è quando (all'avvio) una o più mod vengono richieste da un'altra mod. +I motivi sono vari: potrebbe per esempio aver bisogno di parti del loro codice, degli oggetti, o in generale di risorse che queste forniscono. Ci sono due tipi di dipendenze: forti e opzionali. -Entrambe richiedono che la mod richiesta venga caricata prima, con la differenza che se la dipendenza è forte e la mod non viene trovata, l'altra fallirà nel caricare, mentre se è opzionale, verranno semplicemente caricate meno feature. - -Una dipendenza opzionale è utile se si vuole integrare opzionalmente un'altra mod; può abilitare contenuti extra se l'utente desidera usare entrambe le mod in contemporanea. +Entrambe richiedono che la mod richiesta venga caricata prima, con la differenza che se la dipendenza è forte e la mod non viene trovata, l'altra non verrà caricata, mentre se è opzionale, verranno semplicemente caricate meno funzionalità. Le dipendenze sono specificate in un elenco separato da virgole in mod.conf. @@ -127,7 +124,7 @@ Le dipendenze sono specificate in un elenco separato da virgole in mod.conf. ## Pacchetti mod (mod pack) Le mod possono essere raggruppate in pacchetti che permettono di confezionarne e spostarne più alla volta. -Sono comodi se si vogliono fornire più mod al giocatore, ma non si vuole al tempo stesso fargliele scaricare una per una. +Sono comodi se si vogliono fornire più mod a chi gioca, ma non si vuole al tempo stesso fargliele scaricare una per una. pacchettomod1 ├── modpack.lua (necessario) - segnala che è un pacchetto mod @@ -151,7 +148,7 @@ Segue un esempio che mette insieme tutto ciò discusso finora: ### init.lua ```lua -print("Questo file parte al caricamento!") +print("Questo file parte all'avvio!") minetest.register_node("lamiamod:nodo", { description = "Questo è un nodo", @@ -168,5 +165,5 @@ minetest.register_node("lamiamod:nodo", { Questa mod ha come nome "lamiamod". Ha due file di testo: init.lua e mod.conf.\\ Lo script stampa un messaggio e poi registra un nodo – che sarà spiegato nel prossimo capitolo.\\ C'è una sola dipendenza, la [mod default](https://content.minetest.net/metapackages/default/), che -si trova solitamente nel Minetest Game.\\ +si trova solitamente in Minetest Game.\\ C'è anche una texture in textures/ per il nodo. diff --git a/_it/index.md b/_it/index.md index 09575f2..6a8c86c 100644 --- a/_it/index.md +++ b/_it/index.md @@ -19,16 +19,14 @@ idx: 0.1 ## Introduzione Il moddaggio su Minetest è supportato grazie a script in Lua. -Questo libro mira a insegnarti come creare le tue mod, iniziando dalle basi. -Ogni capitolo si concentra su un punto specifico dell'API, portandoti in breve tempo -a fare le tue mod. +Questo libro mira a insegnarti come si crea una mod, iniziando dalle basi: ogni capitolo si concentra su un aspetto specifico dell'API, così da arrivare in breve tempo a farti creare i tuoi contenuti. -Oltre che [leggere questo libro online](https://rubenwardy.com/minetest_modding_book), +Oltre che [leggere questo libro su internet](https://rubenwardy.com/minetest_modding_book), puoi anche [scaricarlo in HTML](https://github.com/rubenwardy/minetest_modding_book/releases). ### Riscontri e Contributi -Hai notato un errore o vuoi darmi il tuo parere? Assicurati di farmelo presente. +Hai notato un errore o vuoi dirmi la tua? Assicurati di farmelo presente. * Apri una [Segnalazione su GitLab](https://gitlab.com/rubenwardy/minetest_modding_book/-/issues). * Rispondi alla [Discussione sul Forum](https://forum.minetest.net/viewtopic.php?f=14&t=10729).