guida: correggere documentazione offline di imagemagick che non funziona

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4457
Iscrizione: sabato 12 dicembre 2009, 20:58
Desktop: Mate
Distribuzione: Ubuntu Mate 22.04.1 LTS
Sesso: Maschile
Contatti:

guida: correggere documentazione offline di imagemagick che non funziona

Messaggio da UbuNuovo »

Come al solito ho installato la documentazione offline di imagemagick (sudo apt-get install imagemagick-6-doc)
e... badaben badaben... le pagine html non funzionano! Si vede solo il menù.

ho googolato ma l'unica pagina trovata, a riguardo, è del 5 settembre 2023 e non mi pare che sia di alcuna utilità:
https://www.antixforum.com/forums/topic ... mentation/
Sono passati dei mesi e nessuno se ne occupa. :(
Così ho deciso di dargli un'occhiata :)
In breve, si aggiusta eseguendo:

Codice: Seleziona tutto

sudo sed -i 's@www/css/@www/assets/@;s@\(<span.*"\)/>@\1></span>@;s@\(<iframe .*"\)/>@\1></iframe>@' /usr/share/doc/imagemagick-6-doc/html/index.html
sudo sed -i 's@\.\./www/css@../www/assets@;s@\(<span.*"\)/>@\1></span>@;s@\(<iframe .*"\)/>@\1></iframe>@' /usr/share/doc/imagemagick-6-doc/html/www/*.html
Semmai prima di eseguire il codice, controllate che i percorsi corrispondano con la vostra distribuzione, io ho provato su Ubuntu mate 22.04.
In caso di errori basta reinstallare il pacchetto. 8-)
Per chi vuol prima provare su una copia dei file originali, qua sotto c'è il procedimento che mi ha portato a quelle due righe di codice.

QUESTE LE MIE PROVE

mi copio /usr/share/doc/imagemagick-6-doc/ in /tmp e faccio le prove

Codice: Seleziona tutto

cd /tmp
mkdir test
sudo cp -r /usr/share/doc/imagemagick-6-doc/ ./test/
cd test
sudo chown -R $USER:$USER imagemagick-6-doc/
ok, ora è tutto di mia proprietà
con il file manager vado a controllare i file in /tmp/test/imagemagick-6-doc/html/ e sottodirectory
per vedere se, con lo spostamento, sono saltati eventuali link...

in html/www/assets (e di consguenza in html/www/api/assets)
sono saltati i collegamenti:
magick.css che puntava a /usr/share/javascript/bootstrap/css/bootstrap.min.css
magick.js che puntava a /usr/share/javascript/bootstrap/js/bootstrap.min.js

cancello i link rotti e li ricreo:

Codice: Seleziona tutto

cd /tmp/test/imagemagick-6-doc/html/www/assets
\rm magick.css magick.js
ln -s /usr/share/javascript/bootstrap/css/bootstrap.min.css /tmp/test/imagemagick-6-doc/html/www/assets/magick.css
ln -s /usr/share/javascript/bootstrap/js/bootstrap.min.js /tmp/test/imagemagick-6-doc/html/www/assets/magick.js
provo ad aprire nel browser /html/index.html e naturalmente mostra solo il menù

guardo il sorgente:
<link href="www/css/magick.css" rel="stylesheet"/> è sbagliato! www/css/ non esiste, in realtà esiste www/assets/
sostituisco la riga con quella corretta, che è:

Codice: Seleziona tutto

 <link href="www/assets/magick.css" rel="stylesheet"/> 
ora il menù è orizzontale ma il resto della pagina è sempre vuoto!

mi sono accorto che quello che non fa funzionare la pagina è il iframe nel menù di navigazione!
Commentando quella riga, la pagina funziona, le pagine collegate no, hanno bisogno della stessa correzione.
Anche se è un file xhtml, con la chiusura classica funziona, con quella xhtml no!
per sistemarlo basta chiudere il tag in modo classico, invece di <iframe..../> si usa <iframe....></iframe....>

mi sposto sopra, in www, per modificare tutte le altre pagine

Codice: Seleziona tutto

cd ..
iframe_ko='<iframe src="https://github.com/sponsors/ImageMagick/button" title="Sponsor ImageMagick" height="35" width="107" style="border: 0;"/>'
iframe_ok='<iframe src="https://github.com/sponsors/ImageMagick/button" title="Sponsor ImageMagick" height="35" width="107" style="border: 0;"></iframe>'
sed -i 's@'"$iframe_ko"'@'"iframe_ok"'@' *.html
ok funge! Però, sarebbe meglio correggere altri eventuali iframe, quindi poi utilizzerò un codice più generico.

Si deve aggiustare il path per il css, da:

Codice: Seleziona tutto

<link href="../www/css/magick.css" rel="stylesheet"/>
a

Codice: Seleziona tutto

  <link href="../www/assets/magick.css" rel="stylesheet"/>

Codice: Seleziona tutto

sed -i 's@\.\./www/css/@../www/assets/@' *.html
c'è anche uno span vuoto, <span class="navbar-toggler-icon"/>, forse serviva per un javascript? Bo? Lo chiudo in modo html

Codice: Seleziona tutto

sed -i 's@\(<span.*"\)/>@\1></span>@'
Quindi per i file originali in /usr/share/doc/imagemagick-6-doc/ dovrebbe essere:

correzione index.html in /usr/share/doc/imagemagick-6-doc/html

Codice: Seleziona tutto

sudo sed -i 's@www/css/@www/assets/@' /usr/share/doc/imagemagick-6-doc/html/index.html
sudo sed -i 's@\(<span.*"\)/>@\1></span>@' /usr/share/doc/imagemagick-6-doc/html/index.html
sudo sed -i 's@\(<iframe .*"\)/>@\1></iframe>@' /usr/share/doc/imagemagick-6-doc/html/index.html
correzione di tutti gli altri file html in /usr/share/doc/imagemagick-6-doc/html/www

Codice: Seleziona tutto

sed -i 's@\.\./www/css/@../www/assets/@' /usr/share/doc/imagemagick-6-doc/html/www/*.html
sed -i 's@\(<span.*"\)/>@\1></span>@' /usr/share/doc/imagemagick-6-doc/html/www/*.html
sed -i 's@\(<iframe .*"\)/>@\1></iframe>@' /usr/share/doc/imagemagick-6-doc/html/www/*.html
mettendo insieme i comandi sed dovrebbe essere:
per html/index.html

Codice: Seleziona tutto

sudo sed -i 's@www/css/@www/assets/@;s@\(<span.*"\)/>@\1></span>@;s@\(<iframe .*"\)/>@\1></iframe>@' /usr/share/doc/imagemagick-6-doc/html/index.html
per tutte le pagine in html/www/

Codice: Seleziona tutto

sudo sed -i 's@\.\./www/css@../www/assets@;s@\(<span.*"\)/>@\1></span>@;s@\(<iframe .*"\)/>@\1></iframe>@' /usr/share/doc/imagemagick-6-doc/html/www/*.html
li riprovo su una nuova copia in /tmp/test/

Codice: Seleziona tutto

sed -i 's@www/css/@www/assets/@;s@\(<span.*"\)/>@\1></span>@;s@\(<iframe .*"\)/>@\1></iframe>@' /tmp/test/imagemagick-6-doc/html/index.html
sed -i 's@\.\./www/css@../www/assets@;s@\(<span.*"\)/>@\1></span>@;s@\(<iframe .*"\)/>@\1></iframe>@' /tmp/test/imagemagick-6-doc/html/www/*.html
sebra ok, provo sui file originali

Codice: Seleziona tutto

sudo sed -i 's@www/css/@www/assets/@;s@\(<span.*"\)/>@\1></span>@;s@\(<iframe .*"\)/>@\1></iframe>@' /usr/share/doc/imagemagick-6-doc/html/index.html
sudo sed -i 's@\.\./www/css@../www/assets@;s@\(<span.*"\)/>@\1></span>@;s@\(<iframe .*"\)/>@\1></iframe>@' /usr/share/doc/imagemagick-6-doc/html/www/*.html
ok 8-)
Salva l'Ucraina! 🇺🇦
Avatar utente
corradoventu
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 3981
Iscrizione: domenica 27 aprile 2008, 22:23
Desktop: GNOME
Distribuzione: Ubuntu 22.04,23.10,24.04,24.10
Sesso: Maschile
Località: Rezzoaglio (GE)
Contatti:

Re: guida: correggere documentazione offline di imagemagick che non funziona

Messaggio da corradoventu »

Su Ubuntu 24.04 funziona, ma ci sono diversi aggiornamenti recenti:

Codice: Seleziona tutto

  corrado@corrado-n2-nn-0412:~$ apt policy imagemagick-6-doc
imagemagick-6-doc:
  Installed: 8:6.9.12.98+dfsg1-5.2build2
  Candidate: 8:6.9.12.98+dfsg1-5.2build2
  Version table:
 *** 8:6.9.12.98+dfsg1-5.2build2 500
        500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages
        500 http://archive.ubuntu.com/ubuntu noble/universe i386 Packages
        100 /var/lib/dpkg/status
corrado@corrado-n2-nn-0412:~$ 
 
 imagemagick (8:6.9.12.98+dfsg1-5.2build2) noble; urgency=medium

  * No-change rebuild for CVE-2024-3094

 -- Steve Langasek <steve.langasek@ubuntu.com>  Sun, 31 Mar 2024 01:25:01 +0000

imagemagick (8:6.9.12.98+dfsg1-5.2build1) noble; urgency=high

  * No change rebuild against libpng16-16t64, libglib2.0-0t64.

 -- Julian Andres Klode <juliank@ubuntu.com>  Fri, 22 Mar 2024 17:33:21 +0100

imagemagick (8:6.9.12.98+dfsg1-5.2) unstable; urgency=medium

  * Non-maintainer upload.
  * Fixup runtime dependencies due to 64-bit time_t transition
    (Closes: #1066935)

 -- Gianfranco Costamagna <locutusofborg@debian.org>  Fri, 15 Mar 2024 16:04:36 +0100

imagemagick (8:6.9.12.98+dfsg1-5.1) unstable; urgency=medium

  * Non-maintainer upload.
  * Rename libraries for 64-bit time_t transition.  Closes: #1064140

 -- Steve Langasek <vorlon@debian.org>  Fri, 01 Mar 2024 01:31:19 +0000

imagemagick (8:6.9.12.98+dfsg1-5) unstable; urgency=medium

  * Bug fix: "please update Suggests: imagemagick-doc; to
    imagemagick-6-doc", thanks to Vincent Lefevre
    (Closes: #1059314).
  * Bug fix: "missing Breaks+Replaces against the dropped imagemagick-doc
    package, in order to force its removal", thanks to Vincent Lefevre
    (Closes: #1059193).

 -- Bastien Roucariès <rouca@debian.org>  Wed, 27 Dec 2023 10:29:58 +0000

imagemagick (8:6.9.12.98+dfsg1-4) unstable; urgency=medium
Con o senza religione, i buoni si comportano bene e i cattivi male, ma ci vuole la religione per far comportare male i buoni.
(Steven Weinberg)
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4457
Iscrizione: sabato 12 dicembre 2009, 20:58
Desktop: Mate
Distribuzione: Ubuntu Mate 22.04.1 LTS
Sesso: Maschile
Contatti:

Re: guida: correggere documentazione offline di imagemagick che non funziona

Messaggio da UbuNuovo »

Meglio così, sono rimasti indietro i pacchetti per la 22.04
Salva l'Ucraina! 🇺🇦
Avatar utente
corradoventu
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 3981
Iscrizione: domenica 27 aprile 2008, 22:23
Desktop: GNOME
Distribuzione: Ubuntu 22.04,23.10,24.04,24.10
Sesso: Maschile
Località: Rezzoaglio (GE)
Contatti:

Re: guida: correggere documentazione offline di imagemagick che non funziona

Messaggio da corradoventu »

Installato sul mio 22.04 vedo anche io il problema ma non mi fa aprire il bug con una meschina scusa:
Allegati
Screenshot from 2024-04-14 11-50-17.png
Con o senza religione, i buoni si comportano bene e i cattivi male, ma ci vuole la religione per far comportare male i buoni.
(Steven Weinberg)
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4457
Iscrizione: sabato 12 dicembre 2009, 20:58
Desktop: Mate
Distribuzione: Ubuntu Mate 22.04.1 LTS
Sesso: Maschile
Contatti:

Re: guida: correggere documentazione offline di imagemagick che non funziona

Messaggio da UbuNuovo »

È roba da matti, quello è un problema di HTML, non cambia nulla da una distribuzione all'altra.
Va bene, speriamo aggiornino i repo per la 22.04.
Grazie per l'interessamento
Ciaux
Salva l'Ucraina! 🇺🇦
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti