The issue with wrong mime type assignment due to "!-" or uppercase file extension is solved in Jaunty (and, so far, it's working just fine in Karmic Alpha 4). Although the syntax highlighting still misbehaves. For example:
^program test
^character arg
^call testsub(arg)
^case('a')
^case default
^cycle
^end program test
All the lines within the program block are highlighted as comments ---according to the fortran.lang file incluided with Jaunty and Karmi (alpha 4), that's due to a "hack to avoid considering ^COMMON a comment". The hack, at line 46, is:
<start>!|(^[Cc](\b|[^Oo]))</start>
A better form would be:
<start>!|^[*]|(^[Cc](\b|[^OoAaHhYyLl]))</start>
Although there might be better ways (I've never been good at regular expressions).
Also, there are some missing keywords (in regards to Fortran 95; e.g., ALLOCATE, DEALLOCATE, DEFAULT, INTERFACE...) and none of the Fortran 2003 keywords are included (e.g., BIND).
GFortran has supported the Fortran 2003 ISO C Bindings (among other Fortran 2003 features) since 2006 at least, so it's about time they're included in the gtksourceview file.
My version of the fortran.lang file was attached to a previous post in this bug report (it includes the new hack and the missing keywords, among others); it can be used to improve the current version of the fortran.lang file a little bit.
Hi,
The issue with wrong mime type assignment due to "!-" or uppercase file extension is solved in Jaunty (and, so far, it's working just fine in Karmic Alpha 4). Although the syntax highlighting still misbehaves. For example:
^program test
^character arg
^call testsub(arg)
^case('a')
^case default
^cycle
^end program test
All the lines within the program block are highlighted as comments ---according to the fortran.lang file incluided with Jaunty and Karmi (alpha 4), that's due to a "hack to avoid considering ^COMMON a comment". The hack, at line 46, is:
< start>! |(^[Cc] (\b|[^Oo] ))</start>
A better form would be:
< start>! |^[*]|( ^[Cc](\ b|[^OoAaHhYyLl] ))</start>
Although there might be better ways (I've never been good at regular expressions).
Also, there are some missing keywords (in regards to Fortran 95; e.g., ALLOCATE, DEALLOCATE, DEFAULT, INTERFACE...) and none of the Fortran 2003 keywords are included (e.g., BIND).
GFortran has supported the Fortran 2003 ISO C Bindings (among other Fortran 2003 features) since 2006 at least, so it's about time they're included in the gtksourceview file.
My version of the fortran.lang file was attached to a previous post in this bug report (it includes the new hack and the missing keywords, among others); it can be used to improve the current version of the fortran.lang file a little bit.