Development

Resources/fr_FR/MiseEnPageMarkdown

You must first sign up to be able to contribute.

Ce tutoriel est en cours de rédaction. Cela signifie qu'il est susceptible d'être incomplet, ou inexact.

La mise en page Markdown

Markdown est un langage de balisage léger utilisé au sein de la documentation Symfony. (Traduction française de la syntaxe)

Il est important de garder à l'esprit que la pré visualisation du document ne sera pas l'exacte image du document définitif. Je m'efforcerais de montrer les deux effets (pré visualisation et publication) lorsqu'ils seront différents. Si ce document vous semble incomplet, n'hésitez pas à le mettre à jour.

Voici quelques éléments importants

La balise principale

Tout document s'appuyant sur Markdow doit posséder la balise suivante

{{{
#!WikiMarkdown

[Texte formaté avec Markdown ici]

}}}

Mise en forme des polices

 * *italique* ou _italique_
 * **gras** ou __gras__
 * ***gras et italique***
 * `code`

donnent :

  • italique ou italique
  • gras ou gras
  • gras et italique
  • code

Les titres

Les '#' à droite sont optionnels

Titre principal
===============
#Titre principal#
Titre de niveau 2
-----------------
## Titre de niveau 2 ##
### Titre de niveau 3 ###
#### Titre de niveau 4 ####
##### Titre de niveau 5 #####
###### Titre de niveau 6 ######

donnent :

Titre principal

Titre principal

Titre de niveau 2

Titre de niveau 2

Titre de niveau 3

Titre de niveau 4

Titre de niveau 5
Titre de niveau 6

Les liens

* [Symfony](http://symfony-project.com)
* [Wikipédia] [1] (Le lien fait maintenant référence automatiquement à chaque "Wikipédia" encadré par [] et son indice : [Wikipédia][1])

[1]: http://fr.wikipedia.org (doit être placé en fin de balisage Markdown)

donnent :

  • Symfony
  • Wikipédia (Le lien fait maintenant référence automatiquement à chaque "Wikipédia" encadré par [] et son indice : Wikipédia)

Les listes

Un seul type de liste est supporté. Toutes les lignes doivent être alignées

 * Item 1
 * Item 2
 * Item 3

ou

 - moins 1
 - moins 2
 - moins 3

ou

 + plus 1
 + plus 2
 + plus 3

donnent :

  • Item 1
  • Item 2
  • Item 3

ou

  • moins 1
  • moins 2
  • moins 3

ou

  • plus 1
  • plus 2
  • plus 3

Les scripts

Attention, il y a une différence entre l'aspect des scripts dans la pré visualisation et en version définitive. (Dans certains cas ,que je n'ai pas pu identifier, vous aurez besoin que la première balise soit placé à 4 espaces du bord de la page. Oui, je sais, c'est bizarre ...)

La balise [php]

Elle est utilisée pour toutes mise en page de syntaxe web. Elle doit impérative être aligné avec le premier tag, sinon la mise en page n'est pas prise en compte.

Le Html

[php]
<html>
   <head>
     <title>Liste de Messages</title>
   </head>
   <body>
     <h1>Liste de Messages</h1>
     <table>
       <tr><th>Date</th><th>Title</th></tr>
     <?php foreach ($posts as $post): ?>
       <tr>
         <td><?php echo $post['date'] ?></td>
         <td><?php echo $post['title'] ?></td>
       </tr>
     <?php endforeach; ?>
     </table>
   </body>
</html>

donne :

Le PHP

[php] 
<?php

// Connection, sélection de la base de données
$link = mysql_connect('localhost', 'myuser', 'mypassword');
mysql_select_db('blog_db', $link);

// Excécution de la requête sql
$result = mysql_query('SELECT date, title FROM post', $link);

// Filling up the array for the view
$posts = array();
while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
   $posts[] = $row;
}

// Fermeture de la connection
mysql_close($link);

// Affichage du résultat
require('view.php');

?>

donne :

Remarque : Des liens sont automatiquement crées entre les fonctions standards PHP et leur définitions sur la documentation officielle PHP

Les autres scripts

[php]
class MyClass
{
  protected $parameter_holder = null;
  public function initialize ($parameters = array())
  {
    $this->parameter_holder = new sfParameterHolder();
    $this->parameter_holder->add($parameters);
  }

  public function getParameterHolder()
  {
    return $this->parameter_holder;
  }
}

donne :

etc ...

La ligne de commande

> php -v

PHP 5.2.0 (cli) (built: Nov 2 2006 11:57:36)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2006 Zend Technologies

donne :

Les balises #!html et #php sont des balises d'intégration de codes et non de mise en forme. Elle sont nécessaires si vous souhaitez que le code qu'elles encadrent soit interprété et non pas simplement affiché.

Indications

Les indications ne se présentent pas de la même manière en pré visualisation et en version définitive.

>**NOTE**
>Quelques petites améliorations devraient encore être apportées aux exemples 2-6 et 2-7 pour qu’ils soient pleinement satisfaisants (indépendance du code SQL, mise en classes de toutes les fonctions etc …). Mais tel n’est pas le but de ce livre et dans le chapitre 8 vous découvrirez que Symfony gère très bien tous les types d’abstraction.

>**CAUTION**
>Having all the files under the root web directory is fine for your own tests in a local host, but is a bad practice in a production server. It makes all the internals of your application visible to end users.

>**TIP**
>Si cette organisation est trop étoffée pour un premier projet, il est possible de regrouper toutes les actions dans un seul module. Quand l'application deviendra plus complexe, il sera encore temps d'organiser les actions dans des modules séparés. Comme indiqué dans le chapitre 1, réécrire le code pour améliorer son organisation ou sa lisibilité tout en conservant son comportement est appelé le refactoring, et vous ferez souvent ça lorsque vous appliquerez les principes du RAD.

>**SIDEBAR**
>URL Rewriting
>
>Symfony uses URL rewriting to display "smart URLs"--meaningful locations that display well on search engines and hide all the technical data from the user. You will learn more about this feature, called routing, in Chapter 9.
>
>If your version of Apache is not compiled with the mod_rewrite module, check that you have the mod_rewrite Dynamic Shared Object (DSO) installed and the following lines in your httpd.conf:
>
>
>    AddModule mod_rewrite.c
>    LoadModule rewrite_module modules/mod_rewrite.so
>
>
>For Internet Information Services (IIS), you will need isapi/rewrite installed and running. Check the symfony online documentation for a detailed IIS installation guide.

donnent, pour la prévisualisation :

NOTE Quelques petites améliorations devraient encore être apportées aux exemples 2-6 et 2-7 pour qu’ils soient pleinement satisfaisants (indépendance du code SQL, mise en classes de toutes les fonctions etc …). Mais tel n’est pas le but de ce livre et dans le chapitre 8 vous découvrirez que Symfony gère très bien tous les types d’abstraction.

CAUTION Having all the files under the root web directory is fine for your own tests in a local host, but is a bad practice in a production server. It makes all the internals of your application visible to end users.

TIP Si cette organisation est trop étoffée pour un premier projet, il est possible de regrouper toutes les actions dans un seul module. Quand l'application deviendra plus complexe, il sera encore temps d'organiser les actions dans des modules séparés. Comme indiqué dans le chapitre 1, réécrire le code pour améliorer son organisation ou sa lisibilité tout en conservant son comportement est appelé le refactoring, et vous ferez souvent ça lorsque vous appliquerez les principes du RAD.

SIDEBAR URL Rewriting

Symfony uses URL rewriting to display "smart URLs"--meaningful locations that display well on search engines and hide all the technical data from the user. You will learn more about this feature, called routing, in Chapter 9.

If your version of Apache is not compiled with the mod_rewrite module, check that you have the mod_rewrite Dynamic Shared Object (DSO) installed and the following lines in your httpd.conf:

AddModule mod_rewrite.c LoadModule rewrite_module modules/mod_rewrite.so

For Internet Information Services (IIS), you will need isapi/rewrite installed and running. Check the symfony online documentation for a detailed IIS installation guide.

et pour la publication finale :

Les lignes

* * * * 
****** 

donnent :



Tableaux

Les tableaux aussi n'ont pas la même apparence entre la pré visualisation et la publication

Répertoire | Description
-----------|------------
`css/`     | Contient les feuilles de styles avec l’extension `.css`
`images/`  | Contient les images aux formats `.jpg`, `.png` ou `.gif`
`js/`      | Contient les fichiers JavaScript avec l’extension `.js`
`uploads/` | Doit contenir les images uploadées par l’utilisateur. Même si le dossier contient des images, il est bien distinct du dossier des images afin que la synchronisation des serveurs de développement et de production, n’affecte pas les images uploadées.

apparaît en pré visualisation comme suit

Répertoire | Description -----------|------------ css/ | Contient les feuilles de styles avec l’extension .css images/ | Contient les images aux formats .jpg, .png ou .gif js/ | Contient les fichiers JavaScript avec l’extension .js uploads/ | Doit contenir les images uploadées par l’utilisateur. Même si le dossier contient des images, il est bien distinct du dossier des images afin que la synchronisation des serveurs de développement et de production, n’affecte pas les images uploadées.

et en publication :


Retourner à la page des ressources francophones

Attachments