Thanks Steve, it helped.

On Thu, 31 Mar 2011 09:32:53 -0400, Steve King wrote:
On 2011-03-30 18:52, Kaster Might wrote:
If some variable starts with "C", the whole line which contains that variable and where it at the very first place highlighted as comment. I suppose it comes from old F77 style, where C denotes comment, but it's not necessary now. Is there any way to fix it? My current way-around is to put single space before that variable, but in this case overall code doesn't look as nice as before.

The 'Fortran - Modern' bundle inherits this behavior from 'Fortran - Punchcard'.  Modern makes an attempt to flag lines beginning with 'C' as invalid, but only if the 'C' is followed by whitespace. Punchcard treats any line beginning with 'C' as a comment.

I think the easiest way to work around this is to edit the Punchcard language definition to change the 'begin' expression for 'comment.line.c.fortran' from '^[Cc]' to '^[Cc]\s+', which requires comments to start with 'C' followed by whitespace.. This may not strictly adhere to the language spec, but it probably matches common practice.  And if you're not using the older F77 style it won't matter anyway.

    {   name = 'comment.line.c.fortran';
        begin = '^[Cc]\s+';
        end = '$\n?';
        beginCaptures = { 0 = { name = 'punctuation.definition.comment.fortran'; }; };
        patterns = ( { match = '\\\s*\n'; } );
    },

(Wow, FORTRAN...  That takes me back to 1984 and the start of college.  That was the first year the freshman FORTRAN class was taught using an interactive terminal instead of on punch cards.  Of course, it was on VM/CMS which implemented a virtual card punch/reader system, but at least we had the glorified virtual card punch that was XEDIT.)



-- 
Kaster Might