Redmine e Coldfusion: syntax highlighting e icone

Ultimamente sto lavorando su un software scritto in Coldfusion e contemporaneamente sto usando Redmine come bug tracking tool.

Redmine permette di vedere il repository Subversion e supporta anche il syntax highlighting per diversi linguaggi di programmazione, eccetto Coldfusion che, tra l’altro, segue la sintassi XML.

Inoltre Redmine ha delle icone customizzate che permettono di distinguere i tipi di file come per PHP o XML.

Ho prima di tutto avuto un piccolo problema in quanto nella configurazione di Apache avevo messo Redmine come virtual host e, avendo incluso il modulo Jrun per Coldfusion, Redmine lasciava interpretare a Coldfusion il codice invece di mostralo, di conseguenza ho dovuto disabilitarlo per Redmine come evidenziato nella configurazione seguente:

# JRun Settings
LoadModule jrun_module /opt/coldfusion8/runtime/lib/wsconfig/1/mod_jrun22.so
<IfModule mod_jrun22.c>
    JRunConfig Verbose false
    JRunConfig Apialloc false
    JRunConfig Ignoresuffixmap false
    JRunConfig Serverstore /opt/coldfusion8/runtime/lib/wsconfig/1/jrunserver.store
    JRunConfig Bootstrap 127.0.0.1:51800
    #JRunConfig Errorurl url
    #JRunConfig ProxyRetryInterval 600
    #JRunConfig ConnectTimeout 15
    #JRunConfig RecvTimeout 300
    #JRunConfig SendTimeout 15
    AddHandler jrun-handler .jsp .jws .cfm .cfml .cfc .cfr .cfswf
</IfModule>
Listen 81
<VirtualHost *:81>
        ServerName redmine
        DocumentRoot /var/www/redmine/public
        ServerAdmin user@server.com
        LogLevel warn
        ErrorLog /var/log/apache2/redmine_error
        CustomLog /var/log/apache2/redmine_access combined

        RemoveHandler jrun-handler
        SetHandler default-handler
        <Directory /var/www/redmine/public>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>
</VirtualHost>

Ho poi associato le estensioni cfm e cfc alla sintassi per xml modificando il file file_type.rb che si trova in /redmine/plugins/coderay-0.7.6.227/lib/coderay/helpers/  modificando la parte della struttura TypeFromExt e aggiungendo i campi:
'cfm' => :xml,
'cfc' => :xml,

In questa maniera i file coldfusion avranno la sintassi colorata come un file XML.

Per quanto riguarda le icone dovete sapere che Redmine assegna degli stili ai tipi di file e come stile assegna infatti le icone.

Ho prima di tutto modificato il file mime_type.rb nella cartella /redmine/lib/redmine/, aggiungendo le 2 seguenti righe nella struttura MIME_TYPES:

'application/x-coldfusion' => 'cfc',
'magnus-internal/cold-fusion' => 'cfm',

e poi ho aggiunto i 2 stili con 2 icone (fatte da me su 2 piedi :-) ) nel file application.css in /redmine/public/stylesheets/, aggiungendo le seguenti righe (cercate la sezioen .icon-file):

.icon-file.magnus-internal-cold-fusion { background-image: url(../images/files/cfm.png); }
.icon-file.application-x-coldfusion { background-image: url(../images/files/cfc.png); }

Come avete notato Redmine trasforma il mime type in uno stile (convertendo / in – ) ogni volta che incontra un file indicato che poi potete plasmare.Le 2 icone da mettere nella cartella /redmine/public/images/files sono le seguenti:

Riavviate Apache non appena avete fatto le modifiche.

A presto !

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s