[Geany] Fortran fixed/free format

Konstantinos Poulios poulios.konstantinos at xxxxx
Mon Mar 24 00:06:23 UTC 2008


Hi,

thanks for the quick response. Unfortunately on my part I've been last
week pretty busy to post.
Following I give a short synopsis of (hopefully) all possibilities of
fortran code one can found:

-Fortran77 source code always in fixed format.
-Fortran90/95... source code in fixed format (rare).
-Fortran90/95... source code in free format.

What should an IDE ideally support:
a) Highlighting and folding for the fixed format for F77 and F90/95.. .
b) Highlighting and folding for the free format in f90/95.
c) Compilation for f77 code.
d) Compilation of f90/95 code in free format.
e) Compilation of f90/95 code in fixed format.

In order to get highlighting work we need to distinguish between fixed
and free format. In order to get compilation work we need to distinguish
between fixed and free format but also between f77 and f90/95 fortran
standards.

I find that all too complicated. In order to simplify it one could say
f77 code is always in fixed format (that's 100% true) and f90/95 code is
always in free format (that's 95% true). In this way we leave only the
case (e) unsupported.

So we need anyway two filetypes for f77 and f90/95. (It is very common
to combine f77 and f90 files in the same project and geany has to
compile it).

I would suggest the following mapping:

*.f77, *.F77, *.for, *.FOR, *.f, *.F , *.ftn. *.FTN  -> F77 fixed format
*.f90, *.F90                                         -> F90/95 free format

For the f77 group only the link to the right lexer module should be changed.

For the f90 group the current lexer module should be retained but the
truncating of lines according to the fixed format should be removed.
The g95 compiler should replace the g77 compiler.

I think it's all pretty clear. 

My question now is how I could help to get that all solved? I would be
glad to try a modified version of geany for example.

Regards

Kostas








More information about the Users mailing list