<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="https://cecil.app/fr/xsl/atom.xsl" media="all"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
  <id>https://cecil.app/fr/documentation/commandes/</id>
  <title>Cecil - Commandes</title>
  <subtitle><![CDATA[Cecil est une application PHP en ligne de commande qui fusionne des pages Markdown, des médias et des templates Twig afin de générer un site Web statique.]]></subtitle>
  <link href="https://cecil.app/fr/documentation/commandes/atom.xml" rel="self" type="application/atom+xml" />
  <link href="https://cecil.app/fr/documentation/commandes/" rel="alternate" type="text/html" />
  <updated>2026-10-07T22:48:51+00:00</updated>
  <author>
    <name>Cecil</name>
    <uri>https://cecil.app</uri>
  </author>
  <entry xml:lang="fr">
    <id>https://cecil.app/fr/documentation/commandes/new-site/</id>
    <title>new:site</title>
    <published>2026-03-27T00:00:00+00:00</published>
    <updated>2026-10-02T00:00:00+00:00</updated>
    <link href="https://cecil.app/fr/documentation/commandes/new-site/" rel="alternate" type="text/html" />
    <content type="html">
      <![CDATA[<h1>new:site</h1>
<p>Crée un nouveau site.</p>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Creates a new website

Usage:
  new:site [options] [--] [&lt;path&gt;]

Arguments:
  path                  Use the given path as working directory

Options:
  -f, --force           Override directory if it already exists
      --demo            Add demo content (pages, templates and assets)
  -h, --help            Display help for the given command. When no command is given display help for the list command
  -q, --quiet           Do not output any message
  -V, --version         Display this application version
      --ansi|--no-ansi  Force (or disable --no-ansi) ANSI output
  -n, --no-interaction  Do not ask any interactive question
  -v|vv|vvv, --verbose  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Help:
  The new:site command creates a new website in the current directory, or in &lt;path&gt; if provided.
  If you run this command without any options, it will ask you for the website title, baseline, base URL, description, etc.

    cecil.phar new:site
    cecil.phar new:site path/to/the/working/directory

  To create a new website with demo content, run:

    cecil.phar new:site --demo

  To override an existing website, run:

    cecil.phar new:site --force</code></pre>]]>
    </content>
  </entry>
  <entry xml:lang="fr">
    <id>https://cecil.app/fr/documentation/commandes/new-page/</id>
    <title>new:page</title>
    <published>2026-03-27T00:00:00+00:00</published>
    <updated>2026-10-02T00:00:00+00:00</updated>
    <link href="https://cecil.app/fr/documentation/commandes/new-page/" rel="alternate" type="text/html" />
    <content type="html">
      <![CDATA[<h1>new:page</h1>
<p>Crée une nouvelle page.</p>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Creates a new page

Usage:
  new:page [options] [--] [&lt;path&gt;]

Arguments:
  path                        Use the given path as working directory

Options:
      --name=NAME             Page path name
      --slugify|--no-slugify  Slugify file name (or disable --no-slugify)
  -p, --prefix                Prefix the file name with the current date (`YYYY-MM-DD`)
  -f, --force                 Override the file if already exist
  -o, --open                  Open editor automatically
      --editor=EDITOR         Editor to use with open option
  -h, --help                  Display help for the given command. When no command is given display help for the list command
  -q, --quiet                 Do not output any message
  -V, --version               Display this application version
      --ansi|--no-ansi        Force (or disable --no-ansi) ANSI output
  -n, --no-interaction        Do not ask any interactive question
  -v|vv|vvv, --verbose        Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Help:
  The new:page command creates a new page file.
  If you run this command without any options, it will ask you for the page name and other options.

    cecil.phar new:page
    cecil.phar new:page --name=path/to/a-page.md
    cecil.phar new:page --name=path/to/A Page.md --slugify

  To create a new page with a date prefix (i.e: `YYYY-MM-DD`), run:

    cecil.phar new:page --prefix

  To create a new page and open it with an editor, run:

    cecil.phar new:page --open --editor=editor

  To override an existing page, run:

    cecil.phar new:page --force</code></pre>
<h2 id="modeles-de-page">Modèles de page</h2>
<p>Vous pouvez définir vos propres modèles pour vos nouvelles pages dans le répertoire <code translate="no">models</code> :</p>
<ol>
<li>Le nom doit être basé sur le nom de la section (par exemple : <code translate="no">blog.md</code>)</li>
<li>Le modèle par défaut doit être nommé <code translate="no">default.md</code> (pour les pages racine ou les sections de pages sans modèle)</li>
</ol>
<p>Deux variables dynamiques sont disponibles :</p>
<ol>
<li><code translate="no">%title%</code> : le nom du fichier</li>
<li><code translate="no">%date%</code> : la date actuelle</li>
</ol>
<h2 id="ouvrir-avec-votre-editeur">Ouvrir avec votre éditeur</h2>
<p>Avec l’option <code translate="no">--open</code>, l’éditeur s’ouvrira automatiquement. Utilisez donc la clé <code translate="no">editor</code> dans votre fichier de configuration pour définir l’éditeur par défaut (par exemple : <code translate="no">editor: typora</code>).</p>]]>
    </content>
  </entry>
  <entry xml:lang="fr">
    <id>https://cecil.app/fr/documentation/commandes/serve/</id>
    <title>serve</title>
    <published>2026-03-27T00:00:00+00:00</published>
    <updated>2026-10-02T00:00:00+00:00</updated>
    <link href="https://cecil.app/fr/documentation/commandes/serve/" rel="alternate" type="text/html" />
    <content type="html">
      <![CDATA[<h1>serve</h1>
<p>Construit et sert le site en local.</p>
<aside class="note note-warning"><p>Le serveur web est conçu pour faciliter les tests d’un site. Il n’a pas vocation à être un serveur web complet et ne doit pas être utilisé sur un réseau public.</p></aside>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Starts the built-in server

Usage:
  serve [options] [--] [&lt;path&gt;]

Arguments:
  path                             Use the given path as working directory

Options:
  -o, --open                       Open web browser automatically
      --host=HOST                  Server host [default: "localhost"]
      --port=PORT                  Server port [default: "8000"]
  -w, --watch|--no-watch           Enable (or disable --no-watch) changes watcher (enabled by default)
  -i, --incremental                Enable incremental builds (rebuild only changed pages)
  -d, --drafts                     Include drafts
      --optimize|--no-optimize     Enable (or disable --no-optimize) optimization of generated files
  -c, --config=CONFIG              Set the path to extra config files (comma-separated)
      --clear-cache[=CLEAR-CACHE]  Clear cache before build (optional cache key as regular expression) [default: false]
  -p, --page=PAGE                  Build a specific page
      --no-ignore-vcs              Changes watcher must not ignore VCS directories
  -m, --metrics                    Show build metrics (duration and memory) of each step
      --timeout=TIMEOUT            Sets the process timeout (max. runtime) in seconds [default: 7200]
      --notify                     Send desktop notification on server start
  -b, --background                 Run the server in the background
  -h, --help                       Display help for the given command. When no command is given display help for the list command
  -q, --quiet                      Do not output any message
  -V, --version                    Display this application version
      --ansi|--no-ansi             Force (or disable --no-ansi) ANSI output
  -n, --no-interaction             Do not ask any interactive question
  -v|vv|vvv, --verbose             Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Help:
  The serve command starts the live-reloading-built-in web server.

    cecil.phar serve
    cecil.phar serve path/to/the/working/directory
    cecil.phar serve --open
    cecil.phar serve --drafts
    cecil.phar serve --no-watch

  To speed up local development you can enable incremental builds with the --incremental option.
  When content pages change, Cecil rebuilds just those pages.
  When templates change, Cecil rebuilds only pages using those templates (including Twig dependencies such as extends/include).
  Any other change (data, config, static or asset file, or file deletion) triggers a full rebuild:

    cecil.phar serve --incremental

  You can use a custom host and port by using the --host and --port options:

    cecil.phar serve --host=127.0.0.1 --port=8080

  To build the website with an extra configuration file, you can use the --config option.
  This is useful during local development to override some settings without modifying the main configuration:

    cecil.phar serve --config=config/dev.yml

  To start the server with changes watcher not ignoring VCS directories, run:

    cecil.phar serve --no-ignore-vcs

  To define the process timeout (in seconds), run:

    cecil.phar serve --timeout=7200

  To run the server in the background, run:

    cecil.phar serve --background
    cecil.phar serve -b

  Then stop it with:

    cecil.phar serve:stop

  In background mode, file changes are not watched automatically.</code></pre>
<h2 id="serve-background">serve:background</h2>
<p>Alias de <code translate="no">serve --background</code> : démarre le serveur intégré en arrière-plan sans occuper le terminal.</p>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Starts the built-in server in the background (alias of `serve --background`)

Usage:
  serve:background [options] [--] [&lt;path&gt;]

Help:
  The serve:background command starts the built-in web server in the background.

    cecil.phar serve:background
    cecil.phar serve:background path/to/the/working/directory

  This command is an alias of serve --background.

  Stop the server with:

    cecil.phar serve:stop</code></pre>
<h2 id="serve-log">serve:log</h2>
<p>Affiche les logs combinés du serveur et des erreurs, triés par date.</p>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Shows combined server and error logs

Usage:
  serve:log [options] [--] [&lt;path&gt;]

Arguments:
  path                  Use the given path as working directory

Options:
  -l, --lines=LINES     Number of entries to display (default: 25)

Help:
  The serve:log command displays entries from combined server and error logs, sorted by date.

    cecil.phar serve:log
    cecil.phar serve:log path/to/the/working/directory
    cecil.phar serve:log --lines=100
    cecil.phar serve:log -l 100

  This command shows logs from `.cecil/errors.log` and `.cecil/server.log`.
  It is useful for debugging issues with your local development server.</code></pre>]]>
    </content>
  </entry>
  <entry xml:lang="fr">
    <id>https://cecil.app/fr/documentation/commandes/build/</id>
    <title>build</title>
    <published>2026-03-27T00:00:00+00:00</published>
    <updated>2026-10-02T00:00:00+00:00</updated>
    <link href="https://cecil.app/fr/documentation/commandes/build/" rel="alternate" type="text/html" />
    <content type="html">
      <![CDATA[<h1>build</h1>
<p>Construit le site.</p>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Builds the website

Usage:
  build [options] [--] [&lt;path&gt;]

Arguments:
  path                               Use the given path as working directory

Options:
  -d, --drafts                       Include drafts
  -u, --baseurl=BASEURL              Set the base URL
  -o, --output=OUTPUT                Set the output directory
      --optimize|--no-optimize       Enable (or disable --no-optimize) optimization of generated files
      --dry-run                      Build without saving
  -c, --config=CONFIG                Set the path to extra config files (comma-separated)
      --clear-cache[=CLEAR-CACHE]    Clear cache before build (optional cache key as regular expression) [default: false]
  -p, --page=PAGE                    Build a specific page
      --render-subset=RENDER-SUBSET  Render a subset of pages
      --show-pages                   Show list of built pages in a table
  -m, --metrics                      Show build metrics (duration and memory) of each step
      --notify                       Send desktop notification on build completion
  -h, --help                         Display help for the given command. When no command is given display help for the list command
  -q, --quiet                        Do not output any message
  -V, --version                      Display this application version
      --ansi|--no-ansi               Force (or disable --no-ansi) ANSI output
  -n, --no-interaction               Do not ask any interactive question
  -v|vv|vvv, --verbose               Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Help:
  The build command generates the website in the output directory.

    cecil.phar build
    cecil.phar build path/to/the/working/directory
    cecil.phar build --baseurl=https://example.com/
    cecil.phar build --output=_site

  To build the website with optimization of generated files, you can use the --optimize option.
  This is useful to reduce the size of the generated files and improve performance:

    cecil.phar build --optimize
    cecil.phar build --no-optimize

  To build the website without overwriting files in the output directory, you can use the --dry-run option.
  This is useful to check what would be built without actually writing files:

    cecil.phar build --dry-run

  To build the website with a specific subset of rendered pages, you can use the --render-subset option.
  This is useful to build only a part of the website, for example, only "hot" pages or a specific section:

    cecil.phar build --render-subset=subset

  To show build steps metrics, run:

    cecil.phar build --metrics</code></pre>]]>
    </content>
  </entry>
  <entry xml:lang="fr">
    <id>https://cecil.app/fr/documentation/commandes/doctor/</id>
    <title>doctor</title>
    <published>2026-03-27T00:00:00+00:00</published>
    <updated>2026-10-02T00:00:00+00:00</updated>
    <link href="https://cecil.app/fr/documentation/commandes/doctor/" rel="alternate" type="text/html" />
    <content type="html">
      <![CDATA[<h1>doctor</h1>
<p>Diagnostique le site courant et l'environnement Cecil.</p>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Diagnoses the site configuration

Usage:
  doctor [options] [--] [&lt;path&gt;]

Arguments:
  path                       Use the given path as working directory

Options:
  -c, --config=CONFIG        Set the path to an extra configuration file
  -h, --help                 Display help for the given command. When no command is given display help for the list command
  -q, --quiet                Do not output any message
  -V, --version              Display this application version
      --ansi|--no-ansi       Force (or disable --no-ansi) ANSI output
  -n, --no-interaction       Do not ask any interactive question
  -v|vv|vvv, --verbose       Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Help:
  The doctor command diagnoses the current site and Cecil environment.

    cecil.phar doctor
    cecil.phar doctor path/to/the/working/directory

  To inspect a site with an extra configuration file, run:

    cecil.phar doctor --config=config.yml</code></pre>
<h2 id="doctor-frontmatter">doctor:frontmatter</h2>
<p>Valide la syntaxe du front matter des pages.</p>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Validates pages front matter syntax

Usage:
  doctor:frontmatter|doctor:fm [options] [--] [&lt;path&gt;]

Arguments:
  path                  Use the given path as working directory

Options:
  -c, --config=CONFIG   Set the path to an extra configuration file
  -p, --page=PAGE       Validate a single page relative to the pages directory
      --ansi|--no-ansi  Force (or disable --no-ansi) ANSI output
  -n, --no-interaction  Do not ask any interactive question
  -h, --help            Display help for the given command. When no command is given display help for the list command
  -q, --quiet           Do not output any message
  -V, --version         Display this application version
  -v|vv|vvv             Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug</code></pre>
<h2 id="doctor-seo">doctor:seo</h2>
<p>Audite les pages HTML rendues pour détecter les problèmes SEO courants.</p>
<pre><code class="language-plaintext hljs plaintext" translate="no">Description:
  Audits rendered HTML pages for common SEO issues

Usage:
  doctor:seo [options] [--] [&lt;path&gt;]

Arguments:
  path                  Use the given path as working directory

Options:
  -c, --config=CONFIG   Set the path to an extra configuration file
  -p, --page=PAGE       Audit a single page relative to the pages directory
      --format=FORMAT   Output format: text (default) or json
      --feedback        Include findings with feedback level
      --include-virtual Include virtual pages (paginated, taxonomies) in audit</code></pre>
<p>La commande construit le site en mode dry-run, puis audite le HTML rendu avec un jeu de contrôles ciblés : balise title, meta description, URL canonique, structure des titres, balises Open Graph, attributs alt des images et longueur estimée du contenu.</p>
<p>Par défaut, les pages virtuelles (paginées, pages de taxonomie) sont exclues de l'audit. Utilisez <code translate="no">--include-virtual</code> pour les inclure.</p>
<p>Par défaut, les findings de niveau <code translate="no">feedback</code> ne sont pas listés.</p>
<p>Utilisez <code translate="no">--feedback</code> pour inclure les findings de niveau <code translate="no">feedback</code> en plus des autres findings.</p>
<p>Exportez les résultats en JSON pour l'intégration CI en utilisant <code translate="no">--format=json</code>.</p>
<h3 id="configuration">Configuration</h3>
<p>Personnalisez les seuils d'audit et les contrôles activés dans votre fichier de configuration :</p>
<pre><code class="language-yaml hljs yaml" translate="no"><span class="hljs-attr">doctor:</span>
  <span class="hljs-attr">seo:</span>
    <span class="hljs-attr">title:</span> <span class="hljs-string">{</span> <span class="hljs-attr">min:</span> <span class="hljs-number">30</span><span class="hljs-string">,</span> <span class="hljs-attr">max:</span> <span class="hljs-number">60</span> <span class="hljs-string">}</span>
    <span class="hljs-attr">description:</span> <span class="hljs-string">{</span> <span class="hljs-attr">min:</span> <span class="hljs-number">120</span><span class="hljs-string">,</span> <span class="hljs-attr">max:</span> <span class="hljs-number">160</span> <span class="hljs-string">}</span>
    <span class="hljs-attr">content:</span> <span class="hljs-string">{</span> <span class="hljs-attr">min_words:</span> <span class="hljs-number">300</span> <span class="hljs-string">}</span>
    <span class="hljs-attr">checks:</span>
      <span class="hljs-attr">title:</span> <span class="hljs-literal">true</span>
      <span class="hljs-attr">description:</span> <span class="hljs-literal">true</span>
      <span class="hljs-attr">canonical:</span> <span class="hljs-literal">true</span>
      <span class="hljs-attr">h1:</span> <span class="hljs-literal">true</span>
      <span class="hljs-attr">og_tags:</span> <span class="hljs-literal">true</span>
      <span class="hljs-attr">img_alt:</span> <span class="hljs-literal">true</span>
      <span class="hljs-attr">content_length:</span> <span class="hljs-literal">true</span>
      <span class="hljs-attr">lang_attribute:</span> <span class="hljs-literal">true</span></code></pre>]]>
    </content>
  </entry>
</feed>
