summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/starting.doc3
-rw-r--r--src/config.xml3
-rw-r--r--src/docparser.cpp38
-rw-r--r--src/fortrancode.l17
-rwxr-xr-xsrc/util.cpp3
-rw-r--r--templates/html/navtree.css2
6 files changed, 49 insertions, 17 deletions
diff --git a/doc/starting.doc b/doc/starting.doc
index f82e90d..bfb8e8f 100644
--- a/doc/starting.doc
+++ b/doc/starting.doc
@@ -126,6 +126,9 @@ Extension | Language
.f |Fortran
.for |Fortran
.f90 |Fortran
+.f95 |Fortran
+.f03 |Fortran
+.f08 |Fortran
.vhd |VHDL
.vhdl |VHDL
.tcl |TCL
diff --git a/src/config.xml b/src/config.xml
index abed704..4c13e9c 100644
--- a/src/config.xml
+++ b/src/config.xml
@@ -1337,6 +1337,9 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
<value name='*.py'/>
<value name='*.pyw'/>
<value name='*.f90'/>
+ <value name='*.f95'/>
+ <value name='*.f03'/>
+ <value name='*.f08'/>
<value name='*.f'/>
<value name='*.for'/>
<value name='*.tcl'/>
diff --git a/src/docparser.cpp b/src/docparser.cpp
index 5dfa7b3..f06f6cd 100644
--- a/src/docparser.cpp
+++ b/src/docparser.cpp
@@ -1264,9 +1264,6 @@ static void defaultHandleTitleAndSize(const int cmd, DocNode *parent, QList<DocN
if (tok==TK_WORD && (g_token->name=="width=" || g_token->name=="height="))
{
// special case: no title, but we do have a size indicator
- doctokenizerYYsetStateTitleAttrValue();
- // strip =
- g_token->name = g_token->name.left(g_token->name.length()-1);
break;
}
if (!defaultHandleToken(parent,tok,children))
@@ -1293,21 +1290,32 @@ static void defaultHandleTitleAndSize(const int cmd, DocNode *parent, QList<DocN
{
tok=doctokenizerYYlex();
}
- while (tok==TK_WORD) // there are values following the title
+ while (tok==TK_WHITESPACE || tok==TK_WORD) // there are values following the title
{
- if (g_token->name=="width")
+ if(tok == TK_WORD)
{
- width = g_token->chars;
- }
- else if (g_token->name=="height")
- {
- height = g_token->chars;
- }
- else
- {
- warn_doc_error(g_fileName,doctokenizerYYlineno,"Unknown option '%s' after \\%s command, expected 'width' or 'height'",
- qPrint(g_token->name), Mappers::cmdMapper->find(cmd).data());
+ if (g_token->name=="width=" || g_token->name=="height=")
+ {
+ doctokenizerYYsetStateTitleAttrValue();
+ g_token->name = g_token->name.left(g_token->name.length()-1);
+ }
+
+ if (g_token->name=="width")
+ {
+ width = g_token->chars;
+ }
+ else if (g_token->name=="height")
+ {
+ height = g_token->chars;
+ }
+ else
+ {
+ warn_doc_error(g_fileName,doctokenizerYYlineno,"Unknown option '%s' after \\%s command, expected 'width' or 'height'",
+ qPrint(g_token->name), Mappers::cmdMapper->find(cmd).data());
+ break;
+ }
}
+
tok=doctokenizerYYlex();
}
doctokenizerYYsetStatePara();
diff --git a/src/fortrancode.l b/src/fortrancode.l
index f14867c..a2a5d1a 100644
--- a/src/fortrancode.l
+++ b/src/fortrancode.l
@@ -925,7 +925,12 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
startScope();
generateLink(*g_code,yytext);
}
-<Subprog>"(".* { // ignore rest of line
+<Subprog>"result"/{BS}"("[^)]*")" {
+ startFontClass("keyword");
+ codifyLines(yytext);
+ endFontClass();
+ }
+<Subprog>"("[^)]*")" { // ignore rest of line
codifyLines(yytext);
}
<Subprog,Subprogend>"\n" { codifyLines(yytext);
@@ -1123,6 +1128,16 @@ PREFIX (RECURSIVE{BS_}|IMPURE{BS_}|PURE{BS_}|ELEMENTAL{BS_}){0,3}(RECURSIVE|I
codifyLines(yytext);
endFontClass();
}
+<*>"assignment"/{BS}"("{BS}"="{BS}")" {
+ startFontClass("keyword");
+ codifyLines(yytext);
+ endFontClass();
+ }
+<*>"operator"/{BS}"("[^)]*")" {
+ startFontClass("keyword");
+ codifyLines(yytext);
+ endFontClass();
+ }
/*------ preprocessor --------------------------------------------*/
<Start>"#".*\n {
diff --git a/src/util.cpp b/src/util.cpp
index 1f49fb3..543291c 100755
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -7132,6 +7132,9 @@ void initDefaultExtensionMapping()
updateLanguageMapping(".f", "fortran");
updateLanguageMapping(".for", "fortran");
updateLanguageMapping(".f90", "fortran");
+ updateLanguageMapping(".f95", "fortran");
+ updateLanguageMapping(".f03", "fortran");
+ updateLanguageMapping(".f08", "fortran");
updateLanguageMapping(".vhd", "vhdl");
updateLanguageMapping(".vhdl", "vhdl");
updateLanguageMapping(".tcl", "tcl");
diff --git a/templates/html/navtree.css b/templates/html/navtree.css
index d6b54b5..7d1cb67 100644
--- a/templates/html/navtree.css
+++ b/templates/html/navtree.css
@@ -96,7 +96,7 @@
.ui-resizable-e {
background-image:url("splitbar.png");
background-size:100%;
- background-repeat:no-repeat
+ background-repeat:no-repeat;
background-attachment: scroll;
cursor:ew-resize;
height:100%;