Skip to content
Snippets Groups Projects
Commit 97c212d4 authored by Allan Blanchard's avatar Allan Blanchard
Browse files

Merge branch 'new-doc-page' into 'master'

New documentation page

See merge request !43
parents b447a5e6 aba7bef3
No related branches found
No related tags found
1 merge request!43New documentation page
Pipeline #28166 passed
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
- name: Features - name: Features
link: /html/kernel-plugin.html link: /html/kernel-plugin.html
- name: Documentation - name: Documentation
link: /dokuwiki/start.html link: /html/documentation.html
- name: Blog - name: Blog
link: /blog/index.html link: /blog/index.html
# - name: Careers # - name: Careers
......
...@@ -5,10 +5,12 @@ description: Runtime Verification Tool ...@@ -5,10 +5,12 @@ description: Runtime Verification Tool
key: main key: main
manual_pdf: http://frama-c.com/download/e-acsl/e-acsl-manual.pdf manual_pdf: http://frama-c.com/download/e-acsl/e-acsl-manual.pdf
additional: additional:
- name: "E-ACSL Language Reference Manual" - name: "E-ACSL Language Reference Manual"
link: http://frama-c.com/download/e-acsl/e-acsl.pdf short: "Language Reference"
- name: "E-ACSL Language Reference Implementation Manual" link: http://frama-c.com/download/e-acsl/e-acsl.pdf
link: http://frama-c.com/download/e-acsl/e-acsl-implementation.pdf - name: "E-ACSL Language Reference Implementation Manual"
short: "Language Implementation"
link: http://frama-c.com/download/e-acsl/e-acsl-implementation.pdf
distrib_mode: main distrib_mode: main
--- ---
......
--- ---
layout: plugin layout: plugin
title: Eva, an Evolved Value Analysis title: Eva, an Evolved Value Analysis
short: Eva
description: Automatically computes variation domains for the variables of the program. description: Automatically computes variation domains for the variables of the program.
key: main key: main
distrib_mode: main distrib_mode: main
......
--- ---
layout: plugin layout: plugin
title: Impact analysis title: Impact analysis
short: Impact
description: Highlights the locations in the source code that are impacted by a modification. description: Highlights the locations in the source code that are impacted by a modification.
key: browsing key: browsing
distrib_mode: main distrib_mode: main
......
--- ---
layout: plugin layout: plugin
title: Markdown Report (MdR) title: Markdown Report (MdR)
short: MdR
description: Markdown and SARIF reports on status of ACSL annotations description: Markdown and SARIF reports on status of ACSL annotations
key: reporting key: reporting
distrib_mode: main distrib_mode: main
......
--- ---
layout: plugin layout: plugin
title: Metrics calculation title: Metrics calculation
short: Metrics
description: Allows the user to compute various metrics from the source code. description: Allows the user to compute various metrics from the source code.
key: reporting key: reporting
distrib_mode: main distrib_mode: main
......
--- ---
layout: plugin layout: plugin
title: Occurrence analysis title: Occurrence analysis
short: Occurrence
description: Allows the user to reach the statements where a given variable is used. Also provided as a simple example for new plug-in development. description: Allows the user to reach the statements where a given variable is used. Also provided as a simple example for new plug-in development.
key: browsing key: browsing
distrib_mode: main distrib_mode: main
......
--- ---
layout: plugin layout: plugin
title: Scope & Data-flow browsing title: Scope & Data-flow browsing
short: Scope
description: Allows the user to navigate the dataflow of the program, from definition to use or from use to definition. description: Allows the user to navigate the dataflow of the program, from definition to use or from use to definition.
key: browsing key: browsing
distrib_mode: main distrib_mode: main
......
...@@ -6,10 +6,12 @@ key: main ...@@ -6,10 +6,12 @@ key: main
distrib_mode: main distrib_mode: main
manual_pdf: /download/frama-c-wp-manual.pdf manual_pdf: /download/frama-c-wp-manual.pdf
additional: additional:
- name: "ACSL by Example, by Fraunhofer FOKUS" - name: "ACSL by Example, by Fraunhofer FOKUS"
link: https://fraunhoferfokus.github.io/acsl-by-example short: "ACSL by Example"
- name: "Introduction to C program proof with Frama-C and WP, by Allan Blanchard" link: https://fraunhoferfokus.github.io/acsl-by-example
link: https://github.com/AllanBlanchard/tutoriel_wp - name: "Introduction to C program proof with Frama-C and WP, by Allan Blanchard"
short: "Tutorial on Frama-C and WP"
link: https://github.com/AllanBlanchard/tutoriel_wp
--- ---
## Overview ## Overview
......
...@@ -4,7 +4,7 @@ title: Teaching ...@@ -4,7 +4,7 @@ title: Teaching
css: wiki css: wiki
--- ---
<body class="page-template page-template-page-kernel page-template-page-kernel-php page page-id-179 nonTouch"> <body class="page-template page-template-page-kernel page-template-page-kernel-php page nonTouch">
<div id="wrapper" class="hfeed"> <div id="wrapper" class="hfeed">
{% include headers.html header=3 %} {% include headers.html header=3 %}
......
...@@ -205,7 +205,7 @@ footer { ...@@ -205,7 +205,7 @@ footer {
box-sizing: border-box; box-sizing: border-box;
} }
a { a {
color: #d6be98; color: #b4ab65;
cursor: pointer; cursor: pointer;
text-decoration: none; text-decoration: none;
} }
...@@ -1353,6 +1353,9 @@ h2 { ...@@ -1353,6 +1353,9 @@ h2 {
font-size: 14px; font-size: 14px;
margin: 0 0 20px; margin: 0 0 20px;
} }
.listItem a {
color: #98805a;
}
.pageDetail.pages .wrap { .pageDetail.pages .wrap {
padding: 0 15px 30px; padding: 0 15px 30px;
} }
...@@ -1454,70 +1457,183 @@ h2 { ...@@ -1454,70 +1457,183 @@ h2 {
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale;
} }
.docListwrap { .pluginListwrap {
padding: 0; padding: 0;
} }
.docListwrap > section { .pluginListwrap > section {
margin-bottom: 35px; margin-bottom: 35px;
} }
@media (min-width: 600px) { @media (min-width: 600px) {
.docListwrap > section { .pluginListwrap > section {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
margin-bottom: 130px; margin-bottom: 130px;
} }
} }
@media (min-width: 768px) { @media (min-width: 768px) {
.docListwrap > section { .pluginListwrap > section {
padding: 0 10px; padding: 0 10px;
} }
} }
@media (min-width: 1280px) { @media (min-width: 1280px) {
.docListwrap > section { .pluginListwrap > section {
padding: 0; padding: 0;
} }
} }
.docListwrap > section > div, .pluginListwrap > section > div,
.docListwrap > section .listItem { .pluginListwrap > section .listItem {
box-sizing: border-box; box-sizing: border-box;
} }
@media (min-width: 600px) { @media (min-width: 600px) {
.docListwrap > section > div, .pluginListwrap > section > div,
.docListwrap > section .listItem { .pluginListwrap > section .listItem {
width: 49%; width: 49%;
margin: 0 0.5% 1%; margin: 0 0.5% 1%;
} }
} }
@media (min-width: 768px) { @media (min-width: 768px) {
.docListwrap > section > div, .pluginListwrap > section > div,
.docListwrap > section .listItem { .pluginListwrap > section .listItem {
width: 32.66%; width: 32.66%;
margin: 0 0.25% 0.5%; margin: 0 0.25% 0.5%;
box-sizing: border-box; box-sizing: border-box;
} }
.docListwrap > section > div:nth-child(4):nth-last-child(1), .pluginListwrap > section > div:nth-child(4):nth-last-child(1),
.docListwrap > section .listItem:nth-child(4):nth-last-child(1) { .pluginListwrap > section .listItem:nth-child(4):nth-last-child(1) {
width: 32.66%; width: 32.66%;
margin: auto; margin: auto;
position: relative; position: relative;
left: -0.25%; left: -0.25%;
} }
} }
.pluginListwrap > section > div.pluginListTitle,
.pluginListwrap > section .listItem.pluginListTitle {
align-self: center;
}
@media (min-width: 768px) {
.pluginListwrap > section > div.pluginListTitle,
.pluginListwrap > section .listItem.pluginListTitle {
width: 32.66%;
}
}
.pluginListTitle {
font-weight: 700;
margin-bottom: 25px;
font-size: 26px;
padding: 0 30px;
word-break: break-word;
}
@media (min-width: 768px) {
.pluginListTitle {
font-size: 30px;
}
}
.pageDocumentation > .wrap {
position: relative;
max-width: 1260px;
margin: 0 auto;
padding: 0 25px;
z-index: 2;
}
@media (min-width: 768px) {
pageDocuu.pageDocumentation > .wrap {
height: 90px;
padding: 28px 10px 0;
}
}
@media only screen and (min-width: 900px) {
pageDocuu.pageDocumentation > .wrap {
padding: 28px 25px 0;
}
}
@media only screen and (min-width: 1260px) {
pageDocuu.pageDocumentation > .wrap {
padding-left: 0;
padding-right: 0;
}
}
.docListwrap {
padding: 20px 0 0;
}
.docListwrap > section {
margin-bottom: 35px;
}
@media (min-width: 600px) {
.docListwrap > section {
display: flex;
flex-wrap: wrap;
padding: 0;
}
}
@media (min-width: 768px) {
.docListwrap > section {
margin-bottom: 70px;
}
}
.docItem:before {
content: "> ";
color:#f36521;
}
.docListwrap > section > div,
.docListwrap > section .listItem {
box-sizing: border-box;
padding: 35px 30px 30px;
}
@media (min-width: 600px) {
.docListwrap > section > div,
.docListwrap > section .listItem {
width: 47%;
margin: 0 0.5% 1%;
}
}
.docListwrap > section > div:nth-last-child(1),
.docListwrap > section .listItem:nth-last-child(1) {
position: relative;
}
@media (min-width: 768px){
.docListwrap > section > div,
.docListwrap > section .listItem {
width: 32.66%;
margin: 0 0.25% 0.5%;
}
}
@media (min-width: 900px) {
.docListwrap > section > div,
.docListwrap > section .listItem {
width: 24%;
margin: 0 0.25% 0.5%;
box-sizing: border-box;
}
}
.docListwrap > section > div.docListTitle, .docListwrap > section > div.docListTitle,
.docListwrap > section .listItem.docListTitle { .docListwrap > section .listItem.docListTitle {
align-self: center; align-self: center;
} }
@media (min-width: 600px) {
.docListwrap > section > div.docListTitle,
.docListwrap > section .listItem.docListTitle {
width: 47%;
}
}
@media (min-width: 768px) { @media (min-width: 768px) {
.docListwrap > section > div.docListTitle, .docListwrap > section > div.docListTitle,
.docListwrap > section .listItem.docListTitle { .docListwrap > section .listItem.docListTitle {
width: 32.66%; width: 32.66%;
} }
} }
@media (min-width: 900px) {
.docListwrap > section > div.docListTitle,
.docListwrap > section .listItem.docListTitle {
width: 24%;
}
}
.docListTitle { .docListTitle {
font-weight: 700; font-weight: 700;
margin-bottom: 25px; margin-bottom: 25px;
font-size: 26px; font-size: 26px;
padding: 0 30px; padding: 0 30px;
height: auto;
word-break: break-word; word-break: break-word;
} }
@media (min-width: 768px) { @media (min-width: 768px) {
......
--- ---
css: documentation css: documentation
layout: default layout: default
title: Documentation - Frama-C title: Documentation - Frama-C
--- ---
<body class="page-template page-template-page-documentation page-template-page-documentation-php page page-id-20 nonTouch"> <body
class="page-template page-template-page-documentation page-template-page-documentation-php page page-id-20 nonTouch">
<div id="wrapper" class="hfeed"> <div id="wrapper" class="hfeed">
{% include headers.html header=4 %} {% include headers.html header=3 %}
<div id="container" class="mainContainer"> <div id="container" class="mainContainer">
<div class="pageDocumentation pages"> <div class="pageDocumentation pages">
<div class="bgTextbig">
Documentation
</div>
<div class="wrap"> <div class="wrap">
<h1 class="pageTitle">Documentation</h1> <h1 class="pageTitle">Documentation</h1>
<div class="pageBanner" style= <p>Modifications to this documentation can be made via merge requests to the
"background-image:url('/assets/img/documentation-banner.jpg');background-size:cover;"> <a href="https://git.frama-c.com/pub/frama-c.frama-c.com">Frama-C website git repository</a>.
<p>All the documentation<br> </p>
you need !</p> <p>The Frama-C kernel and plug-ins have <a href="/html/kernel-plugin.html">a detailed documentation page</a>.
</div> </p>
<div class="docListwrap"> <div class="docListwrap">
<section> <section>
<div class="docListTitle"> <div class="docListTitle">
<span>Plug-ins Manuals</span> <span>Frama-C and ACSL</span>
</div>
<div class="listItem">
<h4 class="listItemTitle"><span>ACSL</span></h4>
<div class="docItem"><a href="/html/acsl.html">Description page</a></div>
<div class="docItem"><a href="/download/acsl.pdf">Language Reference</a></div>
<div class="docItem"><a href="/download/frama-c-acsl-implementation.pdf">Language Implementation</a></div>
<div class="docItem"><a href="https://github.com/acsl-language/acsl">Official ACSL Git Repository</a></div>
<div class="docItem"><a href="https://github.com/fraunhoferfokus/acsl-by-example">ACSL by Example</a></div>
</div>
<div class="listItem">
<h4 class="listItemTitle"><span>Frama-C</span></h4>
<div class="docItem"><a href="/html/kernel.html">Description page</a></div>
<div class="docItem"><a href="/download/frama-c-user-manual.pdf">User Manual</a></div>
<div class="docItem"><a href="https://git.frama-c.com/pub/frama-c/blob/master/INSTALL.md">Installation</a></div>
<div class="docItem"><a href="/html/get-frama-c.html">Releases</a></div>
</div>
<div class="listItem">
<h4 class="listItemTitle"><span>Contributing</span></h4>
<div class="docItem"><a href="https://git.frama-c.com/pub/frama-c/">GitLab Repository</a></div>
<div class="docItem"><a href="https://git.frama-c.com/pub/frama-c/CONTRIBUTING.md">Contributer guide</a></div>
<div class="docItem"><a href="https://git.frama-c.com/pub/frama-c/-/issues">Known issues</a></div>
<div class="docItem"><a href="/dokuwiki/bug_reporting_guidelines.html">bug reporting guide</a></div>
</div>
<div class="listItem">
<h4 class="listItemTitle"><span>About Frama-C</span></h4>
<div class="docItem"><a href="/dokuwiki/publications.html">List of publications</a></div>
<div class="docItem"><a href="/dokuwiki/exercises.html">Exercices</a></div>
<div class="docItem"><a href="/dokuwiki/teaching.html">Teaching</a></div>
<div class="docItem"><a href="/dokuwiki/tutorial.html">Tutorials</a></div>
</div> </div>
{% for plugin in site.fc-plugins %}
<div class="listItem">
<div>
<h4 class="listItemTitle" data-bgtext="{{ plugin.title }}"><span>{{ plugin.title }}</span></h4>
<p>{{ plugin.description }}</p><span class="docReadMore">Read
More</span><a class="linkReadmore" href="{{ plugin.url }}"></a> <a class="btnPdfDownload" target="_blank"
href="{{ plugin.download }}"><i class="icon-download-arrow"></i></a>
</div>
</div>
{% endfor %}
</section> </section>
</div>
<div class="docListwrap">
<section> <section>
<div class="docListTitle"> <div class="docListTitle">
<span>ACSL (ANSI/ISO-C Specification Language)</span> <span>Plug-ins Manuals</span>
</div> </div>
<div class="listItem"> <div class="listItem">
<div> <h4 class="listItemTitle"><span>Plugin Development</span></h4>
<h4 class="listItemTitle" data-bgtext="ACSL Reference Manual"><span>ACSL Reference Manual</span></h4> <div class="docItem"><a href="/download/frama-c-plugin-development-guide.pdf">Developer Manual</a></div>
<p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industrys
standard dummy text ever since the 1500s, when an unknown printer took...</p><a class="btnPdfDownload" target=
"_blank" href="https://framac.s3.amazonaws.com/production/uploads/2017/08/download.pdf"><i class=
"icon-download-arrow"></i></a>
</div>
</div> </div>
{% for plugin in site.fc-plugins %}
<div class="listItem">
<h4 class="listItemTitle">
<span>
{% if plugin.short %}
{{ plugin.short }}
{% else %}
{{ plugin.title }}
{% endif %}
</span>
</h4>
<div class="docItem"><a href="{{plugin.url}}">Description page</a></div>
{% if plugin.manual_pdf %}
<div class="docItem"><a href="{{plugin.manual_pdf}}">User Manual</a></div>
{% endif %}
{% for add in plugin.additional %}
<div class="docItem"><a href="{{add.link}}">{% if add.short %}{{add.short}}{% else %}{{add.name}}{% endif %}</a></div>
{% endfor %}
{% if plugin.repo_url %}
<div class="docItem"><a href="{{plugin.repo_url}}">External repository</a></div>
{% endif %}
</div>
{% endfor %}
</section> </section>
</div> </div>
</div> </div>
...@@ -69,5 +101,4 @@ title: Documentation - Frama-C ...@@ -69,5 +101,4 @@ title: Documentation - Frama-C
<div class="clear"></div> <div class="clear"></div>
</div> </div>
</div> </div>
</body> </body>
\ No newline at end of file
...@@ -6,10 +6,10 @@ active: 1 ...@@ -6,10 +6,10 @@ active: 1
--- ---
<div class="docListwrap"> <div class="pluginListwrap">
{% for category in site.data.plugins_categories %} {% for category in site.data.plugins_categories %}
<section> <section>
<div class="docListTitle"> <div class="pluginListTitle">
<span>{{ category.name }}</span> <span>{{ category.name }}</span>
</div> </div>
{% for distrib in site.data.plugins_distrib_mode %} {% for distrib in site.data.plugins_distrib_mode %}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment