Home | History | Annotate | Download | only in geshi
      1 <?php
      2 /*************************************************************************************
      3  * fortran.php
      4  * -----------
      5  * Author: Cedric Arrabie (cedric.arrabie (at) univ-pau.fr)
      6  * Copyright: (C) 2006 Cetric Arrabie
      7  * Release Version: 1.0.8.3
      8  * Date Started: 2006/04/22
      9  *
     10  * Fortran language file for GeSHi.
     11  *
     12  * CHANGES
     13  * -------
     14  * 2008/05/23 (1.0.7.22)
     15  *   -  Added description of extra language features (SF#1970248)
     16  * 2006/04/20 (1.0.0)
     17  *   -  First Release
     18  *
     19  * TODO
     20  * -------------------------
     21  *  -  Get a list of inbuilt functions to add (and explore fortran more
     22  *     to complete this rather bare language file)
     23  *
     24  *************************************************************************************
     25  *
     26  *     This file is part of GeSHi.
     27  *
     28  *   GeSHi is free software; you can redistribute it and/or modify
     29  *   it under the terms of the GNU General Public License as published by
     30  *   the Free Software Foundation; either version 2 of the License, or
     31  *   (at your option) any later version.
     32  *
     33  *   GeSHi is distributed in the hope that it will be useful,
     34  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
     35  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     36  *   GNU General Public License for more details.
     37  *
     38  *   You should have received a copy of the GNU General Public License
     39  *   along with GeSHi; if not, write to the Free Software
     40  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
     41  *
     42  ************************************************************************************/
     43 
     44 $language_data = array (
     45     'LANG_NAME'=>'Fortran',
     46     'COMMENT_SINGLE'=> array(1 =>'!',2=>'Cf2py'),
     47     'COMMENT_MULTI'=> array(),
     48     //Fortran Comments
     49     'COMMENT_REGEXP' => array(1 => '/^C.*?$/mi'),
     50     'CASE_KEYWORDS'=> GESHI_CAPS_NO_CHANGE,
     51     'QUOTEMARKS'=> array("'",'"'),
     52     'ESCAPE_CHAR'=>'\\',
     53     'KEYWORDS'=> array(
     54         1 => array(
     55             'allocate','block','call','case','contains','continue','cycle','deallocate',
     56             'default','do','else','elseif','elsewhere','end','enddo','endif','endwhere',
     57             'entry','exit','function','go','goto','if','interface','module','nullify','only',
     58             'operator','procedure','program','recursive','return','select','stop',
     59             'subroutine','then','to','where','while',
     60             'access','action','advance','blank','blocksize','carriagecontrol',
     61             'delim','direct','eor','err','exist','file','flen','fmt','form','formatted',
     62             'iostat','name','named','nextrec','nml','number','opened','pad','position',
     63             'readwrite','recl','sequential','status','unformatted','unit'
     64             ),
     65         2 => array(
     66             '.AND.','.EQ.','.EQV.','.GE.','.GT.','.LE.','.LT.','.NE.','.NEQV.','.NOT.',
     67             '.OR.','.TRUE.','.FALSE.'
     68             ),
     69         3 => array(
     70             'allocatable','character','common','complex','data','dimension','double',
     71             'equivalence','external','implicit','in','inout','integer','intent','intrinsic',
     72             'kind','logical','namelist','none','optional','out','parameter','pointer',
     73             'private','public','real','result','save','sequence','target','type','use'
     74             ),
     75         4 => array(
     76             'abs','achar','acos','adjustl','adjustr','aimag','aint','all','allocated',
     77             'anint','any','asin','atan','atan2','bit_size','break','btest','carg',
     78             'ceiling','char','cmplx','conjg','cos','cosh','cpu_time','count','cshift',
     79             'date_and_time','dble','digits','dim','dot_product','dprod dvchk',
     80             'eoshift','epsilon','error','exp','exponent','floor','flush','fraction',
     81             'getcl','huge','iachar','iand','ibclr','ibits','ibset','ichar','ieor','index',
     82             'int','intrup','invalop','ior','iostat_msg','ishft','ishftc','lbound',
     83             'len','len_trim','lge','lgt','lle','llt','log','log10','matmul','max','maxexponent',
     84             'maxloc','maxval','merge','min','minexponent','minloc','minval','mod','modulo',
     85             'mvbits','nbreak','ndperr','ndpexc','nearest','nint','not','offset','ovefl',
     86             'pack','precfill','precision','present','product','prompt','radix',
     87             'random_number','random_seed','range','repeat','reshape','rrspacing',
     88             'scale','scan','segment','selected_int_kind','selected_real_kind',
     89             'set_exponent','shape','sign','sin','sinh','size','spacing','spread','sqrt',
     90             'sum system','system_clock','tan','tanh','timer','tiny','transfer','transpose',
     91             'trim','ubound','undfl','unpack','val','verify'
     92             ),
     93         ),
     94     'SYMBOLS'=> array(
     95         '(',')','{','}','[',']','=','+','-','*','/','!','%','^','&',':'
     96         ),
     97     'CASE_SENSITIVE'=> array(
     98         GESHI_COMMENTS => true,
     99         1 => false,
    100         2 => false,
    101         3 => false,
    102         4 => false,
    103         ),
    104     'STYLES'=> array(
    105         'KEYWORDS'=> array(
    106             1 =>'color: #b1b100;',
    107             2 =>'color: #000000; font-weight: bold;',
    108             3 =>'color: #000066;',
    109             4 =>'color: #993333;'
    110             ),
    111         'COMMENTS'=> array(
    112             1 =>'color: #666666; font-style: italic;',
    113             2 =>'color: #339933;',
    114             'MULTI'=>'color: #808080; font-style: italic;'
    115             ),
    116         'ESCAPE_CHAR'=> array(
    117             0 =>'color: #000099; font-weight: bold;'
    118             ),
    119         'BRACKETS'=> array(
    120             0 =>'color: #009900;'
    121             ),
    122         'STRINGS'=> array(
    123             0 =>'color: #ff0000;'
    124             ),
    125         'NUMBERS'=> array(
    126             0 =>'color: #cc66cc;'
    127             ),
    128         'METHODS'=> array(
    129             1 =>'color: #202020;',
    130             2 =>'color: #202020;'
    131             ),
    132         'SYMBOLS'=> array(
    133             0 =>'color: #339933;'
    134             ),
    135         'REGEXPS'=> array(
    136             ),
    137         'SCRIPT'=> array(
    138             )
    139         ),
    140     'URLS'=> array(
    141         1 =>'',
    142         2 =>'',
    143         3 =>'',
    144         4 =>''
    145         ),
    146     'OOLANG'=> true,
    147     'OBJECT_SPLITTERS'=> array(
    148         1 =>'.',
    149         2 =>'::'
    150         ),
    151     'REGEXPS'=> array(
    152         ),
    153     'STRICT_MODE_APPLIES'=> GESHI_NEVER,
    154     'SCRIPT_DELIMITERS'=> array(
    155         ),
    156     'HIGHLIGHT_STRICT_BLOCK'=> array(
    157         )
    158 );
    159 
    160 ?>
    161