mirror of https://gitlab.com/octtspacc/sitoctt
Agg PicoBlog
This commit is contained in:
parent
659c3bc4b8
commit
1272891640
|
@ -1,3 +1,4 @@
|
||||||
|
i18n/*
|
||||||
public/*
|
public/*
|
||||||
public.gmi/*
|
public.gmi/*
|
||||||
public.plain/*
|
public.plain/*
|
||||||
|
|
|
@ -36,6 +36,11 @@ href='./PicoBlog.html'>disponibile qui</a>. Considera di consultare quella per u
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<details markdown="1" open="1"><summary>
|
||||||
|
#### [2022-11-27] sitoctt introvabile, spero per non molto altro tempo </summary>
|
||||||
|
Ho notato che il sitoctt, anche dopo alcune mie misure che avrebbero dovuto far contenti i motori di ricerca, proprio non si trova.. e non ho alcuna idea abbastanza precisa su cosa causi il problema. Devo iniziare a integrare nel generatore una funzione per ripubblicare in automatico su Wordpress, Blogger, e roba di quel tipo, magari da lì i motori lo leggono meglio; intanto, ho iniziato a fare lo script per tradurre il sito in diverse lingue, e questo dovrebbe aiutare a diffonderlo al di fuori dell'Italia.
|
||||||
|
</details>
|
||||||
|
|
||||||
<details markdown="1" open="1"><summary>
|
<details markdown="1" open="1"><summary>
|
||||||
#### [2022-11-18] Finalmente ho il MIO Misskey </summary>
|
#### [2022-11-18] Finalmente ho il MIO Misskey </summary>
|
||||||
Ci avevo provato mesi fa ad ospitare il mio server ActivityPub. Prima Friendica su Altervista.. non andava. Poi Misskey, Mastodon, e Pleroma su Switch in casa.. fallimenti, l'uno più grosso dell'altro. Poi, l'altro giorno sul Raspino ho voluto riprovarci; i problemi sono usciti eccome, ma stavolta li ho saputi risolvere nell'arco di un giorno di lavoro, e quindi adesso ho [il mio Regno del Terrore](https://miss.octt.eu.org){[:MdTgtBlank:]}! 😁
|
Ci avevo provato mesi fa ad ospitare il mio server ActivityPub. Prima Friendica su Altervista.. non andava. Poi Misskey, Mastodon, e Pleroma su Switch in casa.. fallimenti, l'uno più grosso dell'altro. Poi, l'altro giorno sul Raspino ho voluto riprovarci; i problemi sono usciti eccome, ma stavolta li ho saputi risolvere nell'arco di un giorno di lavoro, e quindi adesso ho [il mio Regno del Terrore](https://miss.octt.eu.org){[:MdTgtBlank:]}! 😁
|
||||||
|
|
|
@ -0,0 +1,70 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
import hashlib
|
||||||
|
import os
|
||||||
|
import shutil
|
||||||
|
from pathlib import Path
|
||||||
|
from deepl import deepl
|
||||||
|
|
||||||
|
SourceLang = 'it'
|
||||||
|
DestLangs = ['et', 'ja', 'lt', 'lv', 'de', 'hu', 'ru', 'zh', 'ro', 'da', 'it', 'es', 'nl', 'fr', 'sk', 'sl', 'pt', 'en', 'sv', 'fi', 'pl', 'el', 'bg', 'cs'] # All from output of `deepl --help`
|
||||||
|
|
||||||
|
# With shutil.copytree copy only folder struct, no files; https://stackoverflow.com/a/15664273
|
||||||
|
def IgnoreFiles(Dir, Files):
|
||||||
|
return [f for f in Files if os.path.isfile(os.path.join(Dir, f))]
|
||||||
|
|
||||||
|
def FindTextFiles():
|
||||||
|
List = []
|
||||||
|
for Dir in ('Pages/', 'Posts/'):
|
||||||
|
for Ext in ('htm', 'html', 'markdown', 'md', 'pug', 'txt'):
|
||||||
|
for File in Path(Dir).rglob(f'*.{Ext}'):
|
||||||
|
List += [File]
|
||||||
|
return List
|
||||||
|
|
||||||
|
def GetMetaComment(Paragraph, Num, Count):
|
||||||
|
return f'<!-- Paragraph {abs(Count-Num)} {hashlib.md5(Paragraph.encode()).hexdigest()} {{TranslationHash}} --->'
|
||||||
|
|
||||||
|
def StrReverse(Str):
|
||||||
|
_ = list(Str)
|
||||||
|
_.reverse()
|
||||||
|
return ''.join(_)
|
||||||
|
|
||||||
|
DestLangs.remove(SourceLang)
|
||||||
|
for Lang in DestLangs:
|
||||||
|
Translate = deepl.DeepLCLI(SourceLang, Lang)
|
||||||
|
for Dir in ('Pages', 'Posts/'):
|
||||||
|
shutil.copytree(Dir, f'i18n/{Lang}/{Dir}', ignore=IgnoreFiles, dirs_exist_ok=True)
|
||||||
|
|
||||||
|
for File in FindTextFiles():
|
||||||
|
with open(File, 'r') as f:
|
||||||
|
FullSource, Target, Trans = f.read(), '', ''
|
||||||
|
print(f'\n{Lang}/{File}:', end='')
|
||||||
|
|
||||||
|
Paragraphs = StrReverse(FullSource).split('\n\n')
|
||||||
|
for i,Paragraph in enumerate(Paragraphs): # Assuming no single paragraph is > 5000 chars
|
||||||
|
print(f' {i}', end='')
|
||||||
|
Target = StrReverse(Paragraph)
|
||||||
|
#if len(Target+Paragraph) < 5000:
|
||||||
|
# Target += GetMetaComment(Paragraph, Num) + '\n' + Paragraph + '\n\n'
|
||||||
|
# #print(Paragraph)
|
||||||
|
# continue
|
||||||
|
#with open('Translate.tmp', 'w') as f:
|
||||||
|
# f.write(Target)
|
||||||
|
if not Target: # There were more than 2 line breaks
|
||||||
|
Trans += '\n\n'
|
||||||
|
continue
|
||||||
|
#while True:
|
||||||
|
try:
|
||||||
|
#Trans += GetMetaComment(Target, i) + '\n' + Translate.translate(Target) + '\n\n'
|
||||||
|
Trans = GetMetaComment(Target, i, len(Paragraphs)) + '\n' + Translate.translate(Target) + '\n\n' + Trans
|
||||||
|
Target = ''
|
||||||
|
except deepl.DeepLCLIPageLoadError:
|
||||||
|
raise
|
||||||
|
except Exception as e:
|
||||||
|
print(e)
|
||||||
|
#Trans += GetMetaComment(Target, i) + '\n' + Target + '\n\n'
|
||||||
|
Trans = GetMetaComment(Target, i, len(Paragraphs)) + '\n' + Target + '\n\n' + Trans
|
||||||
|
#continue
|
||||||
|
#Translate.translate(Paragraph)
|
||||||
|
#Trans += os.popen(f'cat ./Translate.tmp | deepl -s --fr {SourceLang} --to {Lang}').read()
|
||||||
|
print(Trans)
|
||||||
|
exit()
|
Loading…
Reference in New Issue