1 | 1 | simandl | <?php |
2 | | | /************************************************************************************* |
3 | | | * fortran.php |
4 | | | * ----------- |
5 | | | * Author: Cedric Arrabie (cedric.arrabie@univ-pau.fr) |
6 | | | * Copyright: (C) 2006 Cetric Arrabie |
7 | | | * Release Version: 1.0.8.1 |
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 | | | |
118 | | | ), |
119 | | | 'BRACKETS'=> array( |
120 | | | |
121 | | | ), |
122 | | | 'STRINGS'=> array( |
123 | | | |
124 | | | ), |
125 | | | 'NUMBERS'=> array( |
126 | | | |
127 | | | ), |
128 | | | 'METHODS'=> array( |
129 | | | 1 =>'color: #202020;', |
130 | | | 2 =>'color: #202020;' |
131 | | | ), |
132 | | | 'SYMBOLS'=> array( |
133 | | | |
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 | | | ?> |