phpBB3: utilizzare le librerie Highlight in “qualsiasi Host”

Feed - phpBB3
Rispondi
Avatar utente
Venerabile Beda
Moderatore
Moderatore
Messaggi: 4625
Iscritto: lunedì 6 ottobre 2008, 15:59
Contatta:

phpBB3: utilizzare le librerie Highlight in “qualsiasi Host”

Messaggio da Venerabile Beda » mercoledì 25 agosto 2010, 19:33

Il termine inglese Highlight, è ambiguo. Ci si riferisce infatti, da una parte, alla possibilità di evidenziare (digitalmente) un testo; dall'altra, alla possibilità di scrivere codice php in modo strutturato e colorato, per distinguere i vari elementi, al fine di elevarne la leggibilità. In alcuni Host, le librerie Highlight, non sono operative.
Ad es. su AlterVista, se andiamo sul php info, ci accorgeremo che allo stato attuale, mancano queste voci:


che invece troviamo in locale, e in qualche altro Host.

Il risultato, è che la funzione Highlight php del code nativo del phpBB3, non è operativa. Quando invece, risulta operativa, a motivo delle citate librerie, sia in locale, che in altri Host. Infatti se inviamo del codice php, tramite il tag code nativo, viene eseguito sempre come code standard (non colorato, per capirci). E non è questione di stile (subsilver2 o prosilver), è proprio una questione relativa al "dietro le quinte".

Esistono degli escamotage, per ovviare all'incoveniente, per pervenire a un risultato analogo, anche se le citate librerie, non sono pienamente operative.
Tra questi escamotage, segnaliamo una MOD presente sul com, e chiamata Syntax Highlighter, che tramite BBcode, consente di utilizzare una funzione Highlight, analoga a quella del php.
In realtà, la citata MOD, va molto oltre: introduce il "seleziona tutto" su subsilver2 e derivati, lo spoiler (ovvero la possibilità di mostrare e nascondere il codice, di espandere e contrarre il testo), di scaricare il codice tramite file, come allegato .txt e molto altro! Consente infatti di scrivere codice con diversi linguaggi di programmazione.
Nel caso si utilizzi la voce HTML, numera il codice, quasi come fosse un Notepad++ o software analogo e molto altro.
Questa MOD, ha notevoli potenzialità.
Noi qui, si è interessati solo ad alcune di queste potenzialità.
Creando un BBcode vuoto:

Codice: Seleziona tutto

[Syntax="{INTTEXT}"]{TEXT}[/Syntax]
Trasforma in HTML= Vuoto
Testo di aiuto: [Syntax="linguaggio"] codice [/Syntax]
si perviene al risultato.
Oppure si può non creare il BBcode, che di fatto è operativo dall'interno.


Ecco il link della MOD:

http:// Syntax Highlighter


Ed ecco un esempio di codice php, inviato senza il ricorso alla citata MOD:

Codice: Seleziona tutto

define('IN_PHPBB', true);
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('viewforum');

display_forums('', $config['load_moderators']);
Ed ecco lo stesso codice php, inviato con il BBcode generato dalla MOD:

Codice: Seleziona tutto

<?php 
<?php 
define('IN_PHPBB', true);
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('viewforum');

display_forums('', $config['load_moderators']);    
Effetti collaterali: Il BBcode generato dalla MOD, non viene letto correttamente dai Feed, e nemmeno dai Social Network. In breve, viene interpretato come testo normale.

La MOD, in virtù delle molteplici funzioni, può risultare molto utile, anche in quegli Host, in cui le citate librerie, sono pienamente operative. Ma diventa "necessaria", dove tali librerie non sono pienamente operative.



Si consiglia vivamente prova preventiva in locale, e backup completo fatto con i settaggi corretti prima di procedere.


Completo, anche se di fatto, il database pare non venga toccato, è questo eleva la qualità della MOD.


Il Venerabile Beda

Immagine

Noi, siamo sfacciatamente di parte e ce ne vantiamo!

****

Immagine

Angolo di cielo, link ufficiale: https://angolodicielo.altervista.org

Avatar utente
Venerabile Beda
Moderatore
Moderatore
Messaggi: 4625
Iscritto: lunedì 6 ottobre 2008, 15:59
Contatta:

Re: phpBB3: utilizzare le librerie Highlight in “qualsiasi Host”

Messaggio da Venerabile Beda » martedì 25 gennaio 2011, 12:16

È stata rilasciata la versione 1.0.14 della presente MOD (la versione 13 è stata saltata a quanto pare, verosilmente per motivi scaramantici [k-nooo] [k-nooo] [k-nooo] [k-ahah] [k-ahah] [k-ahah] ).
La presente versione non è disponibile sul com, essendo in sviluppo.
Ma appare decisamente migliorata e stabile rispetto alla 1.0.12.
La trovate sul forum dell'autore, precisando che è necessaria la registrazione per scaricare la MOD. Al momento in cui si scrive, sono presenti 2 pacchetti: SyntaxHighlighter_1.0.14 e SyntaxHighlighter_1.0.14a. Si consiglia di scaricare solo il primo.

http://www.phpbbstyles.co.uk


Si consiglia di disinstallare completamente la versione precedente, e dopo installare ex novo la 1.0.14. Si deve mantenere solo il BBcode creato all'epoca della prima installazione.
La MOD è decisamente ottima, come potete vedere girando in questa Board. Tuttavia, è presente un lieve bug: se si decide di scaricare il codice, il codice viene scaricato, ma il testo del codice, contiene un messaggio di errore. Il file in cui è presente il lieve bug, è il file: hook_syntax_highlighter.php contenuto nella cartella includes/hooks (no, non sono parenti di Capitan Uncino).

Si tenga inoltre presente, che questa nuova versione, non si integra con la MOD Guest Hide BBCode. Ma questo non dovrebbe essere un problema. In quel caso, si può usare benissimo il bbcode code nativo. Se però avete utilizzato le due MOD per inviare un particolare codice, sarà preferibile modificare i messaggi interessati, in modo che con la Guest Hide BBCode MOD, sia usato solo e soltanto il bbcode code nativo del phpbb3. In caso contrario, il codice risulterà illeggibile.

Si ribadisce che la versione 1.0.14 di questa MOD è in fase di sviluppo, e non è stata rilasciata sul com. Ciò nonostante, a parte i lievi bug segnalati, di cui è stata indicata soluzione, appare migliore della precedente.


Il Venerabile Beda

Immagine

Noi, siamo sfacciatamente di parte e ce ne vantiamo!

****

Immagine

Angolo di cielo, link ufficiale: https://angolodicielo.altervista.org

Avatar utente
Venerabile Beda
Moderatore
Moderatore
Messaggi: 4625
Iscritto: lunedì 6 ottobre 2008, 15:59
Contatta:

Re: phpBB3: utilizzare le librerie Highlight in “qualsiasi Host”

Messaggio da Venerabile Beda » venerdì 6 maggio 2011, 16:42

È stata rilasciata la versione 1.0.15, della presente MOD, reperibile nel sito citato. Per scaricare il pacchetto, è necessaria la registrazione nel forum dell'autore. Anche in quest'ultima versione, sussiste il Bug già citato, relativo al messaggio di errore che appare nel file .txt scaricato, errore situato nel file hook_syntax_highlighter.php. Rilasciamo una versione di questo file, che non genera il citato errore, in riferimento alla 1.0.15.

Nel caso di aggiornamento dalla 1.0.14, oltre a sostituire i file indicati dalla MOD (e quello da noi indicato), si consiglia vivamente di sostituire anche il file geshi.php. La MOD formalmente, non richiede la sostituzione di questo file, ma dato che il numero di byte, è differente, si deve presumere dimenticanza dell'autore. Quindi, in breve, per aggiornare dalla 1.0.14, sostituire i file che la MOD richiede di sostituire, e sostituire in aggiunta il file geshi.php e il file che corregge il Bug relativo al Dowload, qui allegato. E l'aggiornamento sarà completo.


Il Venerabile Beda

Immagine

Noi, siamo sfacciatamente di parte e ce ne vantiamo!

****

Immagine

Angolo di cielo, link ufficiale: https://angolodicielo.altervista.org

Avatar utente
Venerabile Beda
Moderatore
Moderatore
Messaggi: 4625
Iscritto: lunedì 6 ottobre 2008, 15:59
Contatta:

phpBB3: utilizzare le librerie Highlight in “qualsiasi Host”

Messaggio da Venerabile Beda » mercoledì 29 febbraio 2012, 11:54

Sono state rilasciate le versioni:

1.0.15.1.44, 1.0.15.1.45, 1.0.15.1.45a


Alla data in cui si scrive, l'ultima, è la 1.0.15.1.45a.
L'autore, ha deciso temporaneamente di disabilitare, la funzione "Seleziona tutto". Per riattivarla, basta decommentare la riga di codice:

Codice: Seleziona tutto

// s += this.genCmd('select', this.T['select']);

contenuta nel file scripts/select_expand_bbcodes.js
Una delle cause, era il fatto che si selezionava e copiava tutto... compreso il testo:
Processato in 0.095 secondi, utilizzando GeSHi 1.0.8.10
L'autore ha deciso di disabilitare temporaneamente tale funzione, anche per questa ragione. Noi, proponiamo una nostra variante, che pare funzionare... Insieme alla variante, che risolve il bug noto, relativo al download del file. Questa variante, oltre a correggere il bug relativo al download, commenta il comando che fa visualizzare la dicitura citata: non essendo visualizzata, non viene copiata... e così il seleziona tutto, appare funzionare perfettamente.



Per aggiornare (dalla versione 1.0.15) sembra sia sufficiente sostituire i seguenti file:

bbc_download.php
classes/script/select_expand_bbcodes.js
includes/hook/hook_syntax_highlighter.php


Rilasciamo la versione corretta e ottimizzata relativa al file omonimo, che presume la riattivazione del seleziona tutto nell'altro file:
Allegati
hook_syntax_highlighter.rar
(9.23 KiB) Scaricato 80 volte


Il Venerabile Beda

Immagine

Noi, siamo sfacciatamente di parte e ce ne vantiamo!

****

Immagine

Angolo di cielo, link ufficiale: https://angolodicielo.altervista.org

Rispondi

Torna a “phpBB3”