webcomics issueshttps://framagit.org/peppercarrot/webcomics/-/issues2021-03-13T08:57:51Zhttps://framagit.org/peppercarrot/webcomics/-/issues/177Dependency issue for transcript - Job Failed #12946382021-03-13T08:57:51ZRet SamysDependency issue for transcript - Job Failed #1294638Job [#1294638](https://framagit.org/peppercarrot/webcomics/-/jobs/1294638) failed for 7a712991e6b2a09b03a9a9447ca2d6fc261533d4:
Maybe I just clicked on the wrong thing? It won't generate new transcripts, not even starting the script, be...Job [#1294638](https://framagit.org/peppercarrot/webcomics/-/jobs/1294638) failed for 7a712991e6b2a09b03a9a9447ca2d6fc261533d4:
Maybe I just clicked on the wrong thing? It won't generate new transcripts, not even starting the script, because something is missing?https://framagit.org/peppercarrot/webcomics/-/issues/161Make Title extraction script more flexible2020-06-13T15:33:56ZGunChleocMake Title extraction script more flexibleAdapt the title extraction script to accept `id="episode-title*"` with a wildcard to allow tags like `id="episode-title-3"`Adapt the title extraction script to accept `id="episode-title*"` with a wildcard to allow tags like `id="episode-title-3"`https://framagit.org/peppercarrot/webcomics/-/issues/141[CI] error due to svg link with file:///2020-07-24T09:15:17ZValvin[CI] error due to svg link with file:///This happened [here](https://framagit.org/peppercarrot/webcomics/-/jobs/638495)
CI raises an error :
```
##############################################################
Searching SVG files for file:/// links
ERROR: Found file:/// lin...This happened [here](https://framagit.org/peppercarrot/webcomics/-/jobs/638495)
CI raises an error :
```
##############################################################
Searching SVG files for file:/// links
ERROR: Found file:/// link in ep31_The-Fight/lang/ru/E31P08.svg - please fix!
xlink:href="file:///C:/Users/ruden/Desktop/new-ep31_The-Fight/lang/en/../gfx_Pepper-and-Carrot_by-David-Revoy_E31P08.png"
##############################################################
File links should look like this:
xlink:href=../gfx_Pepper-and-Carrot_by-David-Revoy_<panel>.png
##############################################################
```
This kind of error risks to be raised often. This path is automatically generated by inkscape. We had to manage this in renderfarm already.
It looks this test is necessary for transcripts.
Reason of this issue is I'm not sure translators can manage this issue easily.
To avoid this issue I've thought about two options :
* Do the same trick in transcripts we did in render farm
* Fix it automatically with the CI. In that way it could *clean* the repo with good paths.
But maybe there are other options?GunChleocGunChleochttps://framagit.org/peppercarrot/webcomics/-/issues/138Missing top of ‘å’ letter in Norwegian Bokmål episode 212019-12-14T22:11:44ZKarl Ove Hufthammerkarl@huftis.orgMissing top of ‘å’ letter in Norwegian Bokmål episode 21In the Norwegian Bokmål translation of episode 21, one panel has the top of the letter ‘å’ cut off:
![image](/uploads/ff890ee94f1ac27172307a29c2f86b7d/image.png)
Possibly related to https://framagit.org/peppercarrot/webcomics/issues/37...In the Norwegian Bokmål translation of episode 21, one panel has the top of the letter ‘å’ cut off:
![image](/uploads/ff890ee94f1ac27172307a29c2f86b7d/image.png)
Possibly related to https://framagit.org/peppercarrot/webcomics/issues/37. It looks OK in Inkscape, so perhaps only a rerendering needs to be triggered?David Revoyinfo@davidrevoy.comDavid Revoyinfo@davidrevoy.comhttps://framagit.org/peppercarrot/webcomics/-/issues/134Update README.md with correct fonts location2019-12-08T13:18:07ZGunChleocUpdate README.md with correct fonts locationThe README.md in this repository has a dead link to the font files.The README.md in this repository has a dead link to the font files.GunChleocGunChleochttps://framagit.org/peppercarrot/webcomics/-/issues/133Make house number in Episode 2 localizeable2019-12-08T11:59:23ZGunChleocMake house number in Episode 2 localizeableThe 33 in episode 2 is not localizeable. It is in a later episode, so we should keep this consistent.The 33 in episode 2 is not localizeable. It is in a later episode, so we should keep this consistent.https://framagit.org/peppercarrot/webcomics/-/issues/132Feature idea: extract text2020-04-06T18:01:04ZGunChleocFeature idea: extract textI am playing with the idea of extracting the texts from the SVG file to provide glossaries for language learners. We might also use this as an accessibility feature here. So, I have started writing a [python script](https://framagit.org/...I am playing with the idea of extracting the texts from the SVG file to provide glossaries for language learners. We might also use this as an accessibility feature here. So, I have started writing a [python script](https://framagit.org/peppercarrot/webcomics/blob/9447e39b28241184aa2c89b61d0a802fd3275a01/extract-text.py).
For dictionary access, we could simply add a Wordlink button, and presto pronto, instantly clickable text with a dictionary! It looks like this:
http://multidict.net/wordlink/?url=https%3A%2F%2Fwww.peppercarrot.com%2Fen%2Fstatic8%2Fwiki&sl=en
If there is no interest for this feature here, I can always host a copy of the Gaelic files on my own page - I am running a Gaelic Learner's site and I think that it would be a fun resource.
Now to the technical bits:
I can't get who is speaking and the order of elements from the SVG, neither can I guess how to combine multiple text elements for sounds etc. So, I have come up with the idea of creating a reference file for the `en` locale. So, for the English reference file
```
Pepper|1|1|...and the last touch
Pepper|3|1|"...mmm probably not strong enough"
Sound|2|2|SHH SHH
Sound|4|2|PLOP PLOP
```
I am getting
```
Pepper|1|1| ...agus beagan gleus oirre
Pepper|3|1| ...cha chreid mi nach eil i caran lag fhathast
Sound|2|2| SSS SSS
Sound|4|2| PLUB PLUB
```
File format is:
`Speaker|display order|segments combined|text`
Now, all I need to do is to parse the LibreOffice Calc file to get the names translations, and then the result still needs to be reparsed for whatever output we want.GunChleocGunChleochttps://framagit.org/peppercarrot/webcomics/-/issues/130Transform "info.yaml" into "info.json"2020-04-29T21:15:58ZDavid Revoyinfo@davidrevoy.comTransform "info.yaml" into "info.json"I'm planning (low-priority) to rewrite the info.yaml files (previously maintained by @Midgard) into JSON files. I can't maintain the YAML, they [already broke since month](https://framagit.org/peppercarrot/webcomics/commit/98f0f3775db592...I'm planning (low-priority) to rewrite the info.yaml files (previously maintained by @Midgard) into JSON files. I can't maintain the YAML, they [already broke since month](https://framagit.org/peppercarrot/webcomics/commit/98f0f3775db5923ffd5168575b4263740666b7b9#note_515752) without I was able to notice and I can't work with them while I can with JSON files. So here is a thread on what I plan to do. :radio:
## :green_apple: Reasons:
* **Supported:** PHP supports natively JSON format while YAML require an extension.
* **I can do it:** I have now skill to retrieve infos from JSON files to the website, I'm still maintaining the website at 99% so it matters.
* **Less format, unifying technologies:** We already use JSON for the API, the lang file and I started to migrate all website and tools around it. Better to not multiply the format/parser/decoders imo.
* **Avoid merge conflicts:** This is not about YAML vs JSON but about the current design of info.yaml: it redoes the mistake of centralising the translator credits as I did previously on the README.md at the root of episodes in a single file. I already explored this, I already dissolved this, and info.yaml brings it back. In my experiences; in the worst case the file is ignored because not in translator directory (and so this infos about credits of translation have to be manually added later, impossible to maintain for me) and in best case the translators changes it but it produce merge collisions at any MR... I plan to move a single JSON file dedicated to that into the lang/fr or lang/en directory.
## :pineapple: Cons to know about JSON vs YAML:
* No code comments possible by default... So, no embed documentation/tips/format possible.
* Formated with parenthesis and quote while Yaml looks simpliers to write for humans.
## :banana: Redesign proposal
```info.json``` (located at the root of the episodes folders, eg: ep28_TheFestivities/info.json):
```
{
"original-language": "en",
"supporters": "XXX",
"published": "YYYY-MM-DD",
"pluxmlID": "XXX",
"background-color": "#FFFFFF"
"software": "html string",
"credits": {
"art": "html string",
"scenario": "html string",
"contributions": "html string"
}
}
```
```translation.json``` (located at the root of the lang folders, eg: ep28_TheFestivities/lang/en ):
```
{
"translation": "html string",
"contributions": "html string",
"software": "html string"
}
```
**Changes compared to the Yaml:**
* I'm dropping the "id" and "serial" from info.yaml; the name of the folder (eg. ep23_Take-a-Chance) contains already a number.
* I'm keeping "original-language" but into a single word.
* "financial supporters:" will now be "supporters" and have only the final number (detailing by platform was a lot of extra work for me to count name one by one before merging them).
* I'm adding "pluxmlID" (might be "online-ID") will help at retrieving the URL on the website (peppercarrot.com/article<pluxmlID>/) for my CMS.
* I keep "credits" but only as a table of strings with three constant sub-infos: "art", "scenario" and "contributions".
* I keep "software" but only as a single string.
* I drop the "Note" of the episode (a first comment I write about it on the blog), it's a personal note and belong to the blog, imo.
* I add "background-color"; a new key for artistic purpose.
* I add a new ```translation.json``` at the root of each lang (eg: ep28_TheFestivities/lang/en) with key for translation credits (main translation effort), "contributions" (corrections, edit, enhancements) and software of translator. I plan to add this file empty by default everywhere and call for a general maintainance of each translator.
## :avocado: What the purpose?
The purpose here is to add details to the API (episodes-v1.json at root here https://www.peppercarrot.com/0_sources/episodes-v1.json ) with this files, it is already possible to enter any folders of episodes and lang. Think about this system as a flat file JSON database for other project: e-reader, the official website, a book project, etc... It might also ease at removing the AUTHORS.md file, and generate it dynamically, and make more accurate credits (or create an "attribution generator" for the website?).
## :strawberry: Contributions
If this topic interest you and you have feedback, expertize or ideas (or arguments against); I'll be happy to discuss and modify the design. I'll not start this until... until I find time (and episodes production will be the priority). I'm also open to any script on how to convert (or ease the process) automagically and convert a lot from YAML to JSON.GunChleocGunChleochttps://framagit.org/peppercarrot/webcomics/-/issues/115Externalize fonts in a different repository2020-07-24T08:47:10ZValvinExternalize fonts in a different repositoryAs exchanged on irc it'll be interesting to have fonts folder in a different repository.
Fonts has its own lifecycle and it could be easier to maintain in its own repo. For example it'll be possible to generate fonts.zip file automatic...As exchanged on irc it'll be interesting to have fonts folder in a different repository.
Fonts has its own lifecycle and it could be easier to maintain in its own repo. For example it'll be possible to generate fonts.zip file automatically.ValvinValvinhttps://framagit.org/peppercarrot/webcomics/-/issues/86Reduce the translation experience complexity2020-07-24T08:54:12ZDavid Revoyinfo@davidrevoy.comReduce the translation experience complexityDiscussion on https://framagit.org/peppercarrot/webcomics/merge_requests/180 are relevant that the translation process risks to be more and more difficult if the translator needs to care about hidden tags, editing something as info.yaml,...Discussion on https://framagit.org/peppercarrot/webcomics/merge_requests/180 are relevant that the translation process risks to be more and more difficult if the translator needs to care about hidden tags, editing something as info.yaml, checking the consistency of the two titles...etc..etc.... and (as we certainly all agree :wink:) I'm not subscribing to the philosophy of adding any more complexity on the shoulder of the translator. The translation of Pepper&Carrot is open to normal computer users.
Even if I understand all the cool things that are developed around the translation, **any complexity added for the end users should be seen as a regression**. And, in opposite of that; I define and will value a lot all enhancement in regard to something that can simplify the process. That's why I'm opening an issue here to discuss about a couple of point, gather a lot of great mind on the project to see where we can make the translation experience being less complex for the translator.https://framagit.org/peppercarrot/webcomics/-/issues/81Auto-update episodes metadata after a release2018-11-02T17:46:29ZValvinAuto-update episodes metadata after a releaseThe episode 27 is not yet present in metadata files which involves that e-reader has not yet the last episode available.
Maybe there is a way to update that file in the process of episode release in an automatic manner?The episode 27 is not yet present in metadata files which involves that e-reader has not yet the last episode available.
Maybe there is a way to update that file in the process of episode release in an automatic manner?https://framagit.org/peppercarrot/webcomics/-/issues/79Font update2018-11-02T12:57:53ZMidgardFont updateI did some crucial fixes to Lavi on the `¿` character. They are very necessary to make the Mexican and European Spanish translations look good.
Here’s what should preferably happen *before* the ep27 release:
- [x] Make sure that the ren...I did some crucial fixes to Lavi on the `¿` character. They are very necessary to make the Mexican and European Spanish translations look good.
Here’s what should preferably happen *before* the ep27 release:
- [x] Make sure that the renderfarm uses the updated fonts
These things can probably wait until *after*:
- [x] Re-render pages that include the `¿` in earlier episodes
- [x] Update the font ZIPDavid Revoyinfo@davidrevoy.comDavid Revoyinfo@davidrevoy.com2018-11-01https://framagit.org/peppercarrot/webcomics/-/issues/75More CI features2019-05-04T18:37:36ZMidgardMore CI featuresFeature requests:
* [ ] Fail on absolute paths to the GFX in SVGs. They should be relative (proposed by @Deevad in https://framagit.org/peppercarrot/webcomics/merge_requests/133#note_320666)
* [x] Fail on (or even autocorrect) invalid p...Feature requests:
* [ ] Fail on absolute paths to the GFX in SVGs. They should be relative (proposed by @Deevad in https://framagit.org/peppercarrot/webcomics/merge_requests/133#note_320666)
* [x] Fail on (or even autocorrect) invalid paths: `..\gfx….png` → `../gfx….png` (proposed by @Midgard)
* [ ] Fail on invalid XML syntax for *any* SVG file (not just cover/title, proposed by @calimeroteknik)
* [ ] Fail if `.gitkeep` files are present (proposed by @Midgard)
* [x] Give feedback on MRs (probably a bot that leaves a comment on it)
* [x] Don't install Python from scratch each time (!145)
* [ ] Fail (or just notify maintainers) if the info.yaml does not conform to the info.yaml spec (proposed by @Midgard)
* [ ] Fail (or just notify maintainers) if any ep ≥ 26 has a translation without metadata in info.yaml (proposed by @Midgard)
* [ ] Also run on `new-epXX_…` episodes (proposed by @Midgard on IRC based on https://framagit.org/peppercarrot/webcomics/commit/bf069308a6a802e230f34225dedb0d9b67af7f72, added here by @xHire)
* [ ] Check spacing, notably before punctuation that has rules for that (in French, a thin space: `grep -E '[^"<>?! ][?!]|«[^ ]|[^ ]»' *.svg`) (proposed by @Midgard and @calimeroteknik)
[Added by @xHire]
Investigate whether it’s possible to:
* [x] ~~Turn off environment setup output (at least when everything is OK)~~ → Not needed any more. The CI now leaves a comment.
* [x] ~~Turn off CI e-mails within the repo/project~~ → Not possible. There's an option in the user settings but that requires the translator themself to change it.https://framagit.org/peppercarrot/webcomics/-/issues/56Possible corruption on mx/E26P02 and it/E26P04 E26P05 files.2018-07-29T17:52:15ZRJ QuiraltaPossible corruption on mx/E26P02 and it/E26P04 E26P05 files.A git pull brought those files with error and in Inkscape the dialog shows corrupted (out of place). I'm not sure how to proceed from there, I did reverted the one in **mx** but don't know what to do with the **it** side.A git pull brought those files with error and in Inkscape the dialog shows corrupted (out of place). I'm not sure how to proceed from there, I did reverted the one in **mx** but don't know what to do with the **it** side.https://framagit.org/peppercarrot/webcomics/-/issues/44Structured metadata file for each episode2018-07-28T15:01:52ZMidgardStructured metadata file for each episodeTo keep this repo as the (kind of) single source of truth, and to aid in API building, I think it would be a good idea to keep some structured metadata file per episode. I would propose the YAML format for its human-and-machine-friendlin...To keep this repo as the (kind of) single source of truth, and to aid in API building, I think it would be a good idea to keep some structured metadata file per episode. I would propose the YAML format for its human-and-machine-friendliness.
The most important information that I'd like to see there is the **publication date** and **original language**. Those are hard to find out otherwise.
This allows, for example, the episodes.json to exclude episodes that have no publication date or a publication date in the future.
---
If we're at it, why not also add:
* **Number of financial supporters**
* **Credits** (co-scenarists, proofreaders, script doctors, worldbuilders, software, etc.)
…so that this doesn't have to be scraped from the SVGs.
@ctk and I have build a title scraper that's doing a pretty good job by now, so the **titles** don't have to be repeated, but they could be (automatically).
---
What would be nice to have as information too, is the **translators per episode**, but I guess this was dropped because it was a hassle to maintain. We could try our hand at a "translator extractor scraper", maybe that could work.
---
So for example:
`ep25_There-are-no-Shortcuts/info.yaml`
```yaml
---
# Leave publication date empty until episode is released
# Strictly use format YYYY-MM-DD
published: 2018-05-17
# Two-letter "P&C language code" of the language the comic was first created in
original_language: en
# Leave financial_supporters empty until number is known
# Fill in an integer, and only an integer
financial_supporters: 909
credits:
- name: David Revoy
role: [art & scenario, universe creator]
- name: Nicolas Artance
role: beta feedback
- name: Imsesaok
role: beta feedback
- name: Craig Maloney
role: [beta feedback, universe contributor]
- name: Valvin
role: beta feedback
⋮
software:
- name: Krita
version: 4.0.0
- name: Inkscape
version: 0.92.3
- name: Kubuntu
version: 17.10
```