Lazarus Tutorial/fr

From Lazarus wiki
Jump to navigationJump to search

Deutsch (de) English (en) español (es) suomi (fi) français (fr) magyar (hu) italiano (it) 日本語 (ja) македонски (mk) Nederlands (nl) português (pt) русский (ru) slovenčina (sk) shqip (sq) 中文(中国大陆)‎ (zh_CN) 中文(台灣)‎ (zh_TW)

This is the start of a Lazarus Tutorial. Please feel free to add your experiences to it.

Vue d'ensemble

Lazarus est un outil de développement libre et open source dédié au compilateur FreePascal (Pascal objet). FreePascal est également libre et open source. L'Environnement de Développement Intégré (EDI) Lazarus (capture d'écran en Anglais) est stable, a de nombreuses fonctionnalités pour créer des logiciel pouvant s'exécuter de façon autonome. Il fonctionne actuellement sous Linux, FreeBSD et Win32, fournit un éditeur de code source extensible, un environnement visuel de création de formulaire, un gestionnaire de package, un debugger et une interface graphique utilisateur (GUI) intégrée au compilateur FreePascal.

Prise en main

(Merci à User:Kirkpatc)

Téléchargez Lazarus dans la section 'Download' du site officiel, installez le et lancez le.

Votre premier programme sous Lazarus !

Plusieurs fenêtres apparaîtrons sur le bureau : le menu principal en haut, l'inspecteur d'objet à gauche, éditeur de source de Lazarus occupe la plus grande partie du bureau, et une fenêtre Form1 prête à être utilisée recouvrant l'éditeur de source.

Sous le menu principal, vous trouverez plusieurs onglets. Si 'Standard' n'est pas déjà sélectionné, faite-le en cliquant dessus avec la souris et cherchez une icône représentant un bouton (un rectangle avec 'OK' marqué dessus), sélectionnez le avec la souris. Ensuite cliquez sur la fenêtre 'Form1'. Un rectangle ayant pour texte 'Button1' apparaîtra. Cliquez une nouvelle fois sur l'icône du bouton dans l'onglet 'Standard', et cliquez de nouveau sur Form1 : un rectangle ayant pour texte 'Button2' apparaîtra.

Maintenant cliquez sur 'Button1' pour le sélectionner. L'inspecteur d'objet affichera les propriétés de l'objet 'Button1'. Elles sont triées par ordre alphabétique, cherchez 'Caption' elle devrait afficher la valeur 'Button1'. Cliquez dessus et changez 'Button1' en 'Press'. Si vous appuyez sur la touche ENTREE de votre clavier ou cliquez ailleurs, vous verrez le libellé de votre premier bouton de 'Form1' se changer en 'Press'. Ensuite cliquez sur l'onglet événements de l'inspecteur d'objet, pour voir les différents événements pouvant être associés au bouton. Cela inclus OnClick, OnEnter, OnExit etc. à présent, cliquez sur le bouton à droite de 'OnClick'

...

. Lorsque vous le sélectionnez, vous êtes renvoyés automatique dans l'éditeur de source, et votre curseur directement à l'emplacement où le code doit être saisi :

 procedure TForm1.Button1Click(Sender: TObject);
 begin
   {now type:}    Button1.caption := 'Press again';
   {the editor has already completed the procedure with}
 end;

Appuyez sur F12 pour sélectionner Form1 au lieu de l'éditeur de source.

Maintenant éditez les propriétés de 'Button2' : Cliquez sur 'Button2' pour afficher ses propriétés dans l'inspecteur d'objet. Changez la propriété 'Caption' en 'Exit' au lieu de 'Button2'. Maintenant sélectionnez l'onglet événement, et cliquez sur 'OnClick'. Cliquez ensuite sur le bouton figurant 3 points

...

, une nouvelle procédure sera automatiquement déclarée et le curseur sera positionné directement dans le corps de celle-ci :

 procedure TForm1.Button2Click(Sender: TObject);
 begin
 {now type:}   Close;
 {the editor has already completed the procedure with} 
 end;

Maintenant, appuyez sur F12 pour revoir la fenêtre 'Form1'. Vous êtes maintenant prêt à compiler votre programme. La méthode la plus simple est de sélectionner 'Exécuter' dans le menu principal en haut de l'écran, et l'option 'Exécuter' dans le sous menu. Vous pouvez aussi appuyez, tout simplement, sur la touche F9 de votre clavier. Cette manipulation compilera votre programme, et (si tout se passe bien) l'exécutera.

La fenêtre de texte en dessous de l'éditeur de source affichera différentes sortes d'information sur la compilation (information, alerte, erreur...). Quelques instant plus tard 'Form1' va réapparaître, mais sans la grille de points qui permet de positionner les composants (boutons, zones de saisie) en mode conception. C'est le fenêtre principal de votre application, elle attend que vous cliquiez sur le bouton 'Press'.

Essayez de cliquer sur le bouton 'Press'. Le libellé changera en 'Press again'. Si vous cliquez encore, le libellé continuera à afficher 'Press again' !

Maintenant, cliquez sur le bouton marqué 'Exit'. La fenêtre se fermera et vous quitterez le programme. La fenêtre 'Form1' originale réapparaîtra en mode conception avec sa grille de points, prête à être modifiée de nouveau.

A présent vous devriez sauvegarder votre travail (faites-le souvent !) sélectionnez : Projet > Enregistrer le projet sous > Nom de vos fichiers

Deuxième session

Rouvrir votre projet.

Cliquez sur le bouton 'Press' (Button1) de la fenêtre 'Form1'. Sélectionner l'onglet 'Évènements' dans l'inspecteur d'objet, cliquez sur le bouton prêt de 'OnClick'

...

, pour retourner à l'emplacement approprié dans l'éditeur de source.

Modifiez votre code de la manière suivante :

 procedure TForm1.Button1Click(Sender: TObject);
{Makes use of the Tag property, setting it to either 0 or 1}
 begin
   if Button1.tag = 0 then
   begin
     Button1.caption := 'Press again';
     Button1.tag := 1
   end else
   begin
     Button1.caption := 'Press';
     Button1.tag := 0
   end
 end;

Sauvegardez votre travail, et compilez votre programme. Le bouton 'Press' basculera entre les deux messages ('Press' et 'Press again').

Le reste dépend de vous !

Si vous préférez programmer en mode console (ou mode texte), par exemple si vous apprenez les bases du Pascal, ou que vous aillez besoin d'un programme de traitement par lots (batch) ou encore que vous souhaitiez faire de la programmation système, vous pouvez conserver Lazarus pour éditer, compiler et exécuter votre programme. Il constitue un environnement idéal pour le développement en Pascal. Voir Console Mode Pascal.

L'Editeur

Lorsque vous lancez Lazarus, une série de fenêtres flottantes apparaît.

Le fenêtre principale en haut de l'écran est titrée Editeur Lazarus vXXXXXX - project1 (les X correspondent au numéro de la version de Lazarus installée sur votre machine). C'est une fenêtre importante de votre projet, elle contient le menu principal et la palette de composants.

Lazmainfr.jpg

Sur la ligne juste en dessous du titre se trouve le "Menu principal" avec les entrées habituelles : Fichier, Edition, Chercher, Voir... et d'autres qui correspondent à des fonctions spécifiques à Lazarus. En dessous à gauche vous trouverez un jeu de "BitButtons" qui vous permettrons d'accéder aux fonctions les plus courantes. A droite se trouve la palette de composants.

En dessous de la fenêtre de l'éditeur apparaît, à gauche de l'écran, la fenêtre de l'inspecteur d'objet, et l'éditeur de source de Lazarus. Il peut également y avoir une fenêtre plus petite, appelée Form1, recouvrant l'éditeur de source de Lazarus. Si 'Form1' n'est pas visible immédiatement, vous pouvez la faire apparaître en pressant F12, qui basculera de l'éditeur de source au formulaire correspondant à l'unité en cours, et inversement. La fenêtre de conception de formulaire et l'un des outils que vous utiliserez le plus fréquemment pour mettre en place une interface utilisateur pour votre application. Ce qu'il est possible de faire dans l'inspecteur d'objet est décrit plus en détail dans la section : Palette de composants.

Lorsque vous démarrez un nouveau projet, ou que vous lancez Lazarus pour la première fois, un formulaire par défaut apparaît. Ce formulaire consiste en une "boîte" contenant une grille de points qui vous aiderons à positionner les différents composants, une barre au sommet de la fenêtre contient les boutons habituelles Réduire, Agrandir et Fermer. Si vous cliquez avec le curseur de la souris à l'endroit que vous voulez dans la boîte, vous verrez les propriétés du formulaire s'afficher dans l'inspecteur d'objet à gauche de l'écran.

D'autres fenêtres peuvent êtres affichées pendant votre travail : l'inspecteur de projet contient les détails des fichiers inclus dans votre projet, et vous permet également d'en rajouter ou d'en supprimer. La fenêtre de Messages, affiche les informations de compilation, les erreurs ou les rapports d'avancement ; si Lazarus est lancé depuis une fenêtre de terminal, le terminal original reste toujours visible et affiche également des messages de compilation.


Menu principal

Le menu principal contient les entrées suivantes : Fichier Edition Cercher Voir Project Exécuter Composants Outils Configuration Fenêtres Aide

Comme d'habitude, les options peuvent êtres sélectionnées soit en cliquant directement dessus à l'aide du bouton gauche de la souris, soit en tapant au clavier :

  • Alt,
  • la lettre correspondante au menu voulu (par exemple F),
  • Entrée.

Sous-menu Fichier

SousMenuFichierFr.png
  • Nouvelle unité : Crée une nouvelle unité (Source Pascal).
  • Nouvelle fiche : Crée une nouvelle fiche, et l'unité Pascal associée.
  • Nouveau... : Affiche un menu surgissant (capture d'écran) proposant une variété de documents à créer.
  • Ouvrir : Affiche une boîte de dialogue permettant ne naviguer dans le système de fichier et de choisir une fichier existant à ouvrir.
  • Restaurer : Abandonne les modifications effectuées et restaure les fichiers dans leurs états d'origine.
  • Enregistrer : Sauvegarde le fichier courant, en utilisant son nom d'origine. S'il n'a pas de nom, le système vous en demandera un (de la même manière qu'Enregistrer sous).
  • Enregistrer sous : Affiche une boîte de dialogue qui vous permet de choisir un nom de fichier et un répertoire pour sauvegarder le fichier courant.
  • Fermer : Ferme le fichier en cours, après avoir demandé la sauvegarde des modifications effectuées.
  • Fermer tous les fichiers : Ferme tout les fichiers en cours et ouvre l'éditeur. Demande si vous souhaitez sauvegarder (si vous avez effectué des modifications).
  • Nettoyer un répertoire : Affiche une boîte de dialogue avec une série de filtre éditable pour supprimer les fichiers correspondants de votre répertoire en cours. Utile pour supprimer les fichiers .bak le reste des anciens projets de Delphi.
  • Quitter : Sort de Lazarus, après avoir demandé la sauvegarde des fichiers modifiés.

Sous-menu Edition

SousMenuEditionFr.png
  • Défaire : Défait la dernière action effectuée.
  • Refaire : Refait la dernière action annulée par Défaire.
  • Couper : Supprime le texte sélectionné et le copie en mémoire.
  • Copier : Fait une copie en mémoire du texte sélectionné, en laissant l'original en place.
  • Coller : Place le contenu de la mémoire à l'emplacement du curseur. S'il y a du texte sélectionné à l'emplacement du curseur, il sera remplacé par le contenu de la mémoire.
  • Indenter la sélection : Déplace le texte sélectionné vers la droite en fonction de ce qui est spécifié dans : Configuration -> Options de l'éditeur -> Général -> Indentation de bloc. Cette fonctionnalité est utile pour formater votre code source Pascal de manière à mettre en évidence sa structure.
  • Désindenter la sélection : Supprime un niveau d'indentation, déplace le texte vers la gauche en fonction de ce qui est spécifié dans Indentation de bloc.
  • Entourer la sélection : Affiche un menu surgissant avec plusieurs options pouvant logiquement entourer le texte sélectionné (begin ... end; try ... except; try ... finally; repeat ... until; { ... } etc).
  • Sélection en commentaire : Commente le texte sélectionné en insérant // sur chaque ligne.
  • Décommenter la sélection : Supprime les marqueurs de commentaire du texte sélectionné.
  • Insérer $IFDEF... : Insère la directive de compilation $IFDEF qui permet de compiler le code en fonction du système d'exploitation. Une boîte de dialogue propose différentes valeurs possible.
  • Trier la sélection : Trie les lignes, les mots ou les paragraphes dans l'ordre alphabétique ; incluant des option croissantes, décroissantes, ou la sensibilité à la casse. Ceci n'a évidemment aucun sens au beau milieu du code source, mais si vous avez une liste à trier, cette fonctionnalité fera l'affaire.
  • Mettre la sélection en majuscules : Convertie le texte sélectionné en majuscule.
  • Mettre la sélection en minuscules : Convertie le texte sélectionné en minuscules.
  • Remplacer les tabulations par des espaces dans la sélection : Convertie chaque tabulation dans le texte sélectionné par le nombre d'espace spécifié dans Configuration -> Options de l'éditeur -> Général -> Tab widths. Le nombre d'espaces n'est pas fixe, mais correspond au nombre nécessaire pour remplacer la largeur de la tabulation.
  • Couper les lignes dans la sélection : Si une ligne de la sélection est plus grande que 80 caractères ou que le nombre spécifié dans Configuration -> Options de l'éditeur -> Affichage -> Marge droite, alors cette ligne sera coupé au niveau de la borne limite et continuera sur la ligne suivante.
  • Sélectionner : Permet de sélectionner un bloc de texte. Les options possibles sont : Tout sélectionner, Ancrer la sélection, sélectionner la ligne le paragraphe etc.
  • Insérer depuis la table des caractères : Permet l'insertion de symboles qui ne figurent pas sur le clavier, une fenêtre s'affiche vous proposant divers possibilités.
  • Insérer un texte : Affiche un sous-menu permettant d'insérer du texte comme des mots clefs CVS (Author, Date, Header etc) ou une note GPL, LGPL, l'utilisateur courant, la date et l'heure courante etc.
  • Compléter le code : Complète le code à l'emplacement du curseur. Il est sensible au contexte et vous fera gagner beaucoup de temps. Par exemple : il complète les classes, en ajoutant les variables privées, les méthodes d'accès aux propriétés Get et Set ainsi que le corps des méthodes. Lors de l'assignation d'une variable (ex : i:=3;) il ajoute la déclaration de la variable. Lors de la définition de procédures forward il ajoute le corps des procédures. Lors de l'assignation d'événement (OnClick:=) il ajoute la définition et le corps de la méthode. Voir les outils de l'EDI Lazarus.
  • Extraire procédure : Utilise le texte sélectionné (une déclaration ou une série de déclarations) pour créer une nouvelle procédure.

Sous-menu Chercher

SousMenuChercherFr.png
  • Chercher : Similaire à la fonction équivalente de la plupart des éditeurs de texte : une boîte de dialogue s'affiche vous permettant de saisir une chaîne de texte à rechercher, les options de sensibilité de casse, mot entier, direction de recherche... sont également disponible.
  • Chercher l'occurrence suivante, Chercher l'occurrence précédente : Cherche l'occurrence suivante de la chaîne entrée précédemment, dans la direction spécifiée.
  • Chercher dans les fichiers : Chercher une chaîne de caractère dans un fichier : boîte de dialogue avec la possibilité de chercher dans tous les fichiers du projet, tous les fichiers ouvert, ou dans les répertoires ; masque les possibilités en fonction du type de fichier sélectionné.
  • Remplacer : Similaire à Chercher ; affiche une boîte de dialogue avec la possibilité d'entrée le texte à chercher et le texte à remplacer, ainsi que les options de sensibilité de casse la direction etc.
  • Recherche incrémentale : Cherche la chaîne de caractère que vous entrez au clavier. Exemple : après avoir choisi "Recherche incrémentale" si vous appuyez sur la touche "l" le premier "l" après la position en cours du curseur sera surligné. Si vous appuyez sur la touche "a", l'éditeur cherchera le "la" suivant et ainsi de suite.
  • Aller à la ligne : Déplace le curseur à la ligne spécifiée.
  • En arrière : Ce déplace vers le signet précédant (Ajouter le point de saut à l'historique doit avoir été utilisé au préalable). Ce déplacera vers d'autres fichiers ouvert dans l'éditeur.
  • En avant : Ce déplace vers le signet suivant.
  • Ajouter le point de saut à l'historique : Ajoute des points de saut ou des signets au fichier.
  • Afficher l'historique des déplacements : Affiche au moins un point de saut dans le fichier : Not implemented yet.
  • Erreur suivante :
  • Erreur précédente :
  • Mettre un signet libre :
  • Aller au prochain signet :
  • Aller au précédent signet :
  • Chercher la fin du bloc de code : Si vous êtes positionné sur begin, cherche le end correspondant ou vice versa.
  • Chercher le début du bloc de code : Ce déplace sur le begin de la procédure ou de la fonction dans laquelle le curseur et positionné.
  • Rechercher la déclaration sous le curseur : Trouve l'endroit dans lequel l'identificateur choisi est déclaré. Celui-ci peut être dans le même fichier ou dans un autre fichier déjà ouvert dans l'éditeur ; si le fichier n'est pas ouvert, il le sera (si une procédure ou une fonction et déclarée, par exemple, dans classesh.inc, cela l'ouvrira dans l'éditeur).
  • Ouvrir le fichier sous le curseur : Ouvre le fichier correspondant au nom sélectionné sous le curseur. Utile pour ouvrir des fichiers Include ou des fichiers contenant d'autres Unités utilisées dans le projet.
  • Aller à la directive "include" : Si le curseur est positionné dans un fichier Inclue dans un autre fichier, va à la position de la directive d'Inclusion dans l'autre fichier.
  • Trouver la référence de l'identificateur : Affiche une liste permettant de déplacer le curseur sur tout les endroits ou une variable est utilisée.
  • Renommer l'identificateur : Permet de renommer une variable partout où elle est utilisée.

Sous-menu Voir

SousMenuVoirFr.png

Il permet le contrôle de l'affichage de différentes fenêtres sur l'écran.

  • Inspecteur d'Objets : C'est la fenêtre qui occupe généralement le côté gauche du bureau, et qui montre les éléments de la Fiche (Form) qui se trouve sur le bureau. En cliquant avec la souris sur un composant de cette fiche, le détail du composant s'affiche dans l'inspecteur d'objets. Le haut de l'inspecteur d'objet montre l'arborescence du projet courant, et les composants de la fiche peuvent éventuellement y être sélectionnés : ceci entraînant l'affichage des détails correspondant dans l'inspecteur d'objet. Le bas de l'inspecteur d'objet est composé de plusieurs onglets qui permettent la sélection des propriétés : PropertyPage, des événements : EventPage ou des éléments que vous avez consulté : Favorites. La selection de l'onglet PropertyPage permet d'afficher les propriétés telles que Name, Color, Caption, Font, Size etc. : La colonne de gauche représentant la propriété par son nom, la colonne de droite montrant la valeur qui lui est associée. La sélection de l'onglet Events montre aussi deux colonnes : celle de gauche montre les événements possibles tels que MouseClick ou KeyDown associés à ce composant, et celle de droite montre l'action associée à cet événement. S'il n'y a pas encore d'action définie pour cet événement, il suffit de cliquer dans le champ correspondant ou le bouton
    ...
    pour que dans l'Editeur de sources, le curseur se place dans la procédure créée automatiquement, attendant que vous y tapiez le code associé.
  • Editeur de Source : C'est la fenêtre principale dans laquelle le code source est édité. Il réagit comme la plupart des éditeur de texte, on peut y déplacer le curseur à la souris, un click gauche maintenu plus déplacement permet de sélectionner une partie du texte. Le click droit fait apparaître un menu popup comprenant les actions d'édition classique (Couper, Copier, Coller...), Chercher la Déclaration et Ouvrir le fichier sous le curseur. En haut de la fenêtre de l'éditeur de sources se trouvent un certain nombre d'onglets qui correspondent aux fichiers ouverts dans le projet courant ; en cliquant sur l'un d'entre eux, le fichier correspondant est affiché, vous pouvez ainsi naviguer facilement de fichier en fichier, effectuer des copier/coller et autres travaux d'édition entre eux. L'éditeur de source est équipé de la coloration syntaxique de code, avec différents coloris pour les marques de ponctuation, les commentaires, les chaînes de caractères, les constantes etc... Il conserve aussi l'indentation du code de ligne en ligne au fur et à mesure de votre frappe, jusqu'à ce que vous modifiez celle-ci. L'apparence et les options de l'éditeur de code sont entièrement configurables depuis le menu principal en sélectionnant Configuration -> Options de l'éditeur puis en sélectionnant l'un des onglet dans la fenêtre de dialogue.
  • Explorateur de code : Affiche une fenêtre qui se place habituellement à droite du plan de travail, elle affiche sous forme arborescente la structure du code dans l'unité ou le programme actuel. Elle s'ouvre normalement avec les sections Unit, Interface, Implementation et Initialization affichées, mais un clique sur le bouton
    +
    à gauche de la branche, ouvrira ses sous-branches, affichant de plus en plus de détails jusqu'à ce que les constantes, types et variables soient affichées, de même que les déclarations de procédure et fonction. Si vous changez les fichier affiché dans l'éditeur de source, vous devrez cliquer sur le bouton Rafraîchir pour afficher la structure du nouveau fichier dans l'Explorateur de Code.
  • Editeur LazDoc :
  • Unités... : Ouvre une boîte de dialogue listant les Unités du projet en cours. Pour sélectionner les fichiers cliquez dessus ; cela ouvrira le fichier dans l'Editeur de sources. Si vous cochez la case "Multi sélection" vous pourrez sélectionner plusieurs fichiers à la simultanément, et ils seront tous ouverts dans l'Editeur de Sources (mais un seul sera affiché à la fois). Ce menu est comparable à l'option Projet -> Inspecteur de Projet, mais affiche uniquement la liste des fichiers d'Unités et permet de les ouvrir.
  • Fiches... : Ouvre une boîte de dialogue listant les Fiches du projet en cours, et permettant la sélection d'une ou plusieurs d'entre elles de manière à les afficher.
  • Dépendances d'unités : Ouvre une boîte de dialogue qui affiche, de façons arborescente, la structure des Dépendances de l'unité en ouverte. La plupart des fichiers listés comme dépendance auront leur propre boîte
    +
    , chacune autorise l'exploration des dépendances de chaque fichiers, y compris de façon récursive.
  • Informations de l'unité : Donne des informations sur l'onglet d'unité sélectionné dans l'Editeur de sources.
  • Commutation fiche/Unité : Bascule entre l'Editeur de sources et la Fiche active. Si l'Editeur de sources et actif, vous pouvez éditer le code source ; si la Fiche est active, vous pouvez manipuler les composants et modifier l'apparence de la fiche. La façon la plus simple de basculer entre l'Editeur et la Fiche est d'utiliser le raccourci clavier F12, vous obtiendrez le même résultat en cliquant "Commutation fiche/Unité" dans le menu principal.
  • Messages : Une fenêtre qui affiche les messages du compilateur, montre la progression de la compilation ou liste les erreurs trouvées.
  • Résultats de la recherche : Une fenêtre qui affiche les résultats de Chercher -> Chercher dans les fichiers.
  • Afficher l'éditeur d'ancres :
  • Voir la palette des composants :
  • Voir les boutons rapides de l'IDE :
  • Fenêtres de débogage : Ouvre un menu surgissant avec plusieurs options pour le fonctionnement et la configuration du débogueur. Voir le debugger plus bas.

Sous-menu Projet

SousMenuProjetFr.png
  • Nouveau Projet : Crée un nouveau projet. Une boîte de dialogue s'affiche permettant de choisir entre différents types de projets.
  • Nouveau projet depuis le fichier : Une fenêtre permettant d'ouvrir un fichier qui servira de point de départ à un nouveau projet.
  • Ouvrir un projet : Ouvre un projet déjà créé. Une fenêtre de navigation listant les fichiers de projet au format Lazarus (.lpi ou Lazarus Project Information) s'affiche, permettant de sélectionner le projet à ouvrir.
  • Réouvrir un projet : Affiche une liste des projets récemment ouvert, permettant de les sélectionner pour les ouvrir.
  • Enregistrer le projet : Equivalent de "Fichier -> Enregistrer". Enregistre tout les fichiers du projet en cours ; s'ils n'ont pas déjà été enregistré, un message apparaît demandant le(s) nom(s) du/des fichier(s) de la même manière que "Fichier -> Enregistrer sous".
  • Enregistrer le projet sous... : Demande l'emplacement et le nom de fichier du projet. Par défaut, le nom de fichier est Project1.lpi, mais il est recommandé d'en choisir un autre. Lazarus ne vous permettra pas d'utiliser le même nom de fichier pour votre Projet et pour le fichier de l'Unité (Unit) (voir plus bas).
  • Publier le projet : Crée une copie de tout le projet. Si vous voulez envoyer les sources du projet à quelqu'un ainsi que les options de compilation, cette fonction est faite pour vous. Un dossier classique d'un projet contient beaucoup d'informations, et la plupart d'entre elles ne sont pas utiles : le fichier .lpi contient des informations de session (comme la position des fenêtres et les fiches ouvertes) et le dossier du projet contient beaucoup de fichiers .ppu, .o et l'exécutable. Pour créer un fichier .lpi avec uniquement l'information de base et seulement les sources avec tous les sous répertoires, utilisez "Publier le Projet". Dans la fenêtre de paramétrage, vous pouvez mettre un filtre d'exclusion / inclusion, et avec la commande "after" vous pouvez compresser le tout dans un fichier archive. Voir les outils de l'EDI Lazarus
  • Inspecteur de projet : Ouvre une boîte de dialogue, représentant les fichiers du projet en cours sous forme arborescente. Vous pouvez ajouter, supprimer, ou ouvrir les fichiers sélectionnés, ou changer les options du projet.
  • Options du projet... : Ouvre une boîte de dialogue contenant plusieurs onglets permettant d'accéder aux divers options de paramétrage de l'application (Titre, Fichier de destination), Fiches (permettant de sélectionner les fiches disponibles, de manière à les créer automatiquement au lancement de l'application), Divers, LazDoc et Session (spécifie quelles informations l'éditeur doit sauvegarder lors de la fermeture des fichiers, ou uniquement les fichiers projet).
  • Option du compilateur... : Ouvre une fenêtre à onglets permettant la configuration du compilateur. Les onglets incluent Chemins qui permet la définition de chemin de recherche pour les unités, les fichiers d'inclusion, bibliothèques etc., de même que permettre le type de composant pour les fiches (gtk, gnome, win32) ; Analyse qui autorise le choix des règles d'analyse des sources du programme, Code qui autorise le chois d'optimisation pour des programmes plus rapides ou plus petits, choix de la plateforme cible, types de contrôles, taille de la pile etc. ; Edition des liens permet de choisir le débogueur à utiliser, les bibliothèques static ou dynamic, et la possibilité de passer des option à l'éditeur de liens ; Messages définie quel genre de messages doivent être générés durant la compilation ; Autre permet de choisir d'utiliser le fichier de configuration par défaut (fpc.cfg) ou un autre fichier ; Hérité montre sous forme arborescente qu'elle options ont étés héritées des unités déjà incorporées ; Compilation permet de définir les appels qui doivent êtres exécutés avant ou après que la compilation soit lancée, et permet également de créer un Makefile.
  • Afficher la liste des ToDo : Ouvre une boîte de dialogue affichant la liste des choses à faire "ToDo" associées au projet. Ces ToDo sont de simples lignes de commentaire commençant par //TODO. Il sera nécessaire de réactualiser cette liste après sauvegarde pour que les nouveaux ToDo apparaissent dans la liste. La première colonne de la liste des ToDo contiens le numéro que vous avez alloué à votre ligne de commentaire ; un simple //TODO apparaîtra comme zéro, mais un commentaire comme //TODO999 (par exemple) apparaîtra au numéro 999 dans la première colonne. Souvenez vous bien qu'il n'y a pas d'espaces sur la ligne avant //TODO et que les ToDo ajoutés après la dernière sauvegarde ne seront pas affichés !
  • Ajouter le fichier de l'éditeur au projet : Ajouter au projet le fichier en cours d'édition.
  • Retirer du projet : Affiche une liste des fichiers pouvant être supprimer du projet.
  • Afficher le source : Affiche le code source principal (fichier .lpr ou .pas s'il n'existe pas de fichier .lpr) du programme en cours.

Sous-menu Exécuter

SousMenuExecuterFr.png
  • Construire : Lazarus construit (ie Compiler) chaque fichier du projet ayant été modifié depuis la dernière construction.
  • Construire tout : Construit tout les fichiers du projet, y compris ceux qui n'ont subis aucune modification.
  • Quick compile :
  • Arrêter le construction : Stop la construction (ie Compilation) en cours – sois vous vous apercevez que vous avez commis une erreur et souhaitez arrêter la construction, sois le système semble prendre trop de temps ce qui laisse penser qu'il y a forcément une erreur.
  • Exécuter : C'est la solution habituelle pour lancer une compilation et, si la compilation réussie, démarre l'exécution de l'application. Normalement, Lazarus sauvegarde une copie de vos fichiers, ensuite il compile et link, finalement lance l'exécution du fichier binaire créé.
  • Pause : Arrête le programme en cours d'exécution. Cela permet de consulter les sorties générées ; l'exécution peut être reprise en cliquant une nouvelle fois sur Exécuter.
  • Pas à pas approfondi : Utiliser en conjonction avec le débogueur, entraîne l'exécution du programme une ligne à la fois en passant par toute les unités déclarées.
  • Pas à pas : Entraîne l'exécution par étape du programme, l'exécution peut être reprise à vitesse normale à n'importe quel moment. Utile pour essayer d'isoler une erreur de logique dans le code.
  • Exécuter jusqu'au curseur : Exécute le programme avec son déroulement normal (ie NON pas à pas) jusqu'à la position en cours du curseur ; et s'arrête. Reprendre l'exécution à sa vitesse normale en sélectionnant Exécuter. (NDT : Cette fonction semble identique à exécuter dans la version 2.1 de Lazarus.)
  • Arrêter : Cesse l'exécution du programme en cours. A la différence de Pause l'exécution ne peut pas être reprise en cliquant sur Exécuter ; le programme sera redémarré depuis le début il sera recompilé si nécessaire.
  • Paramètres d'exécution... : Ouvre une fenêtre à onglet qui vous permette d'entrer des options et paramètres en ligne de commande d'exécution du programme ; autorise la sélection de l'écran de démarrage du programme (eg un terminal X peut être utilisé sous Linux) ; certaines variables d'environnement peuvent être "écrasées".
Une utilisation très importante de ce sous-menu est la possibilité d'activer une fenêtre de terminal dans le mode console du Pascal. Si vous développez une application Pascal en mode console (ie qui n'utilise pas d'interface graphique avec formulaires, boutons et boîtes) vous devriez cocher la case "Utiliser une application de démarrage". La première fois que vous l'activerez et essaierez de Compiler/Exécuter, vous rencontrerez probablement un message un peu brutal
"xterm: Can't execvp /usr/share/lazarus//tools/runwait.sh: Permission denied".  
Si cela arrive, vous devrez changer les permissions dans le fichier approprié (par exemple en utilisant chmod +x nomfichier, ou en utilisant un utilitaire Windows pour changer les permissions) ; vous devrez faire cela en tant que root. Après, chaque fois que vous lancerez le programme, un fenêtre en mode console apparaîtra et tous votre texte d'entrées/sorties (readln, writeln etc.) apparaîtra à l'intérieur.
Après que votre programme est fini de s'exécuter, le message "Press enter" apparaît à l'écran. Ceci vous permet de lire toutes les sorties générées par votre programme ; après vous pouvez appuyer sur 'entrer' la fenêtre de la console se fermera.
Voir le tutoriel : programmation Pascal en Mode Console.
  • Réinitialiser le débogueur : Restaure le débogueur à son état original, par conséquent les points d'arrêts, les valeurs de variables etc. sont ignorées.
  • Construire le fichier : Compile (construit) uniquement le fichier ouvert dans l'éditeur.
  • Exécuter le fichier : Compile, link et exécute le fichier ouvert dans l'éditeur.
  • Configure Build + Run File... : Ouvre une fenêtre à onglets permettant d'accéder aux options de construction du fichier en cours lorsque Build Project est sélectionné, autorise la sélection du répertoire de travail, l'utilisation de divers Macros, etc. Construit et Exécute le fichier.
Ces trois dernières options vous permettent d'ouvrir (et de maintenir) un projet test. Utilisez Fichier -> Ouvrir pour ouvrir un fichier .lpr, appuyez sur Annuler sur la boîte de dialogue suivante pour ouvrir ce fichier comme un fichier "source normal".
  • Inspecter :
  • Evaluer/Modifier :
  • Ajouter un suivi... :
  • Ajouter un point d'arrêt :

Sous-menu Composants

SousMenuComposantsFr.png
  • Ouvrir un paquet chargé... : Affiche une liste des paquets installés, vous invitant à en ouvrir un ou plusieurs d'entre eux, ou vous permettant de sélectionner différentes options générales ou de compilation.
  • Open package file (.lpk)... : Ouvre un ou plusieurs fichiers du paquet sélectionné.
  • Ouvrir le paquet de l'unité courante : Ouvre un paquet utilisé récemment.
  • Ajouter l'unité active au projet : Place le fichier de l'unité (en cours d'édition) dans un package.
  • Graphique des paquets... : Affiche un graphique montrant les relations des packages actuellement en cours d'utilisation (si vous n'utilisez pas d'autres packages, le package Lazarus de la FCL et de la LCL seront affichés).
  • Configurer les paquets installés : Si vous avez créé vos propres composants, vous permet de les configurer.

Sous-menu Outils

SousMenuOutilsFr.png
  • Configurer les outils personnalisés... : Autorise l'utilisateur à ajouter différents outils externe (habituellement des macros).
  • Project templates options : Permet définir le répertoire des modèles par défaut.
  • Vérification rapide de la syntaxe : Effectue un contrôle rapide de la syntaxe dans votre fichier source sans rien compiler. C'est une étape essentielle dans le développement d'un programme long et compliqué, si vous ne voulez pas perdre votre temps avec du code erroné.
  • Identifier les blocs non terminés : Utilitaire pratique si vous avez un bloc imbriqué de structures complexes et que vous avez oublié un 'end' quelque part.
  • Identifier les IFDEF/ENDIF mal placés : Pratique si vous avec un bloc imbriqué de structures complexes de macro et que vous pensez avoir oublié une directive ENDIF.
  • Construire une chaîne ressource... : Transforme la chaîne sélectionnée en chaîne ressource en la plaçant dans une section resourcestrings. L'avantage de la chaîne ressource est que vous pouvez la changer sans avoir besoin de recompiler votre projet !
  • Différences : Permet la comparaison entre deux fichiers (ou, habituellement, deux versions d'un même fichier) pour trouver leurs différences. Des options permettent d'ignorer les espaces blancs au début ou à la fin ou les lignes ou les différence de code de retour à la ligne : CR+LF contre LF). Pratique pour contrôler s'il y a un changement depuis la dernière mise à jour du CVS etc.
  • Vérifier le fichier LFM dans l'éditeur : Permet l'inspection du fichier LFM contenant les paramètres décrivant le formulaire en cours.
  • Convertir une unité Delphi en unté Lazarus... : Aide au portage des applications Delphi vers Lazarus ; fait les changements nécessaires dans le fichier source. Voir Lazarus For Delphi Users et Code Conversion Guide.
  • Convertir un fichier DFM en LFM : Permet de porter les applications Delphi vers Lazarus : convertis les fichiers de descriptions de Form de Delphi vers Lazarus. Voir Lazarus For Delphi Users et Code Conversion Guide.
  • Construire Lazarus : Lance la reconstruction de Lazarus pour les téléchargements les plus récents ou les fichiers CVS mis à jour. Appuyez sur le bouton et asseyez vous en regardant ce qui se passe ! (suivez le processus dans votre fenêtre de Messages).
  • Configure "Build Lazarus"...: Permet à l'utilisateur de choisir quel partie de Lazarus doit être re-construite, et de quelle manière. Par exemple, vous pouvez sélectionner uniquement le re-contruction de la LCL, ou tout excepté les exemples ; vous pouvez sélectionner quelle interface de la LCL vous voulez utiliser (ie quel jeu de composants), et vous pouvez sélectionner quel système d'exploitation cible et spécifier les différents répertoires de destination.

Sous-menu Configuration

SousMenuConfigurationFr.png
  • Options d'environnement... : Affiche une fenêtre contenant les onglets suivants
    • Fichier - autorise l'utilisateur à spécifier le chemin du répertoire par défaut, compiler, définir le répertoire des sources et le répertoire temporaire pour la compilation ;
    • Bureau - options de Langue, comportement de l'enregistrement automatique, l'enregistrement des paramètres de bureau, les conseils pour les principaux boutons rapides (Ouvrir, Enregistrer,...) ;
    • Fenêtres - autorisation la spécification de la taille et le comportement des différentes fenêtres ;
    • Editeur de fiches - pour choisir les couleurs de l'éditeur de fiches ;
    • Inspecteur d'objets - pour choisir la couleur et la hauteur des éléments ;
    • Sauvegarde - spécifie de quelle manière la sauvegarde doit fonctionner au moment de l'édition ;
    • Appellation - spécifie quelle extension à utiliser pour les noms des fichiers Pascal ('.pp' or '.pas'), il est possible de paramétrer les actions à effectuer pour les fichiers litigieux ainsi que la casse des fichiers enregistrés.
    • LazDoc - Permet d'indiquer les chemins pour LazDoc.
  • Options de l'éditeur : Affiche une fenêtre contenant les onglets suivants
    • Général - détermines les comportements comme l'indentation automatique, la mise en évidence des parenthèses, afficher les conseils de défilement, mise en évidence de la syntaxe, édition par glisser déposer, taille du bloc d'intentation et de tabulation, le nombre d'annuler possible, etc. ;
    • Affichage - options permettant d'afficher ou non les numéros de ligne, la présence de gouttières, la taille et le type de la police de l'éditeur, contiens un panneau d'aperçu montrant les différentes syntaxes et leur apparence dans l'éditeur, directives, ponctuation, erreurs et les points d'arrêts ;
    • Assignation des touches - options pour sélectionner les raccourcis clavier de Lazarus, Turbo Pascal ou ses propres raccourcis clavier ;
    • Couleurs - permet de choisir la couleur du texte dans l'éditeur, pour un certain nombre de langages comme : Pascal objet, C++, Perl, HTML, XML et scripts. Il possède un aperçu pour chaque langage sélectionné ;
    • Audit de code - permet la sélectoin des fonctionnalité comme le complément d'identificateur, les outils des symboles ToolTip, les paramètres du code, et l'évaluation d'expression ToolTip.
    • Code folding
  • Modèle de code
  • Debugger Options : Affiche une fenêtre contenant les onglets suivants
    • Général - choisi le débogueur : none, GNU debugger (gdb) ou gdb through SSH, spécifie le chemin de recherches pour les débogueurs, et les options spécifique au débogueur choisi ;
    • Event log - spécifie comment nettoyer le log au au démarrage, et quels messages doivent être affichés ;
    • Language Exceptions - sélectionne quels exceptions peuvent être ignorées ;
    • OS Exceptions - autorise l'utilisateur à ajouter certains signaux à appliquer au système d'exploitation actuel (pas encore implémenté).
  • Options des Outils de code : Affiche une fenêtre contenant les onglets suivants
    • Général - permet d'entrer un chemin de recherche de fichiers source, spécification de la méthode de saut ;
    • Création de code - détermine comment le code ajouté et créé après l'activation de certaines fonctionnalités ;
    • Mots - détermine la casse des mots clefs Pascal lorsqu'ils sont intégrés au code ;
    • Coupure de ligne - détermine les règles selon lesquelles les lignes se coupent (avant ou après la ponctuation, après des mots clefs etc.) ;
    • Space - decide whether a space is to be added automatically before or after certain syntactic features such as keywords or punctuation marks.
  • Code Tools Defines Editor: Here you can see all IDE internal definitions to parse sources. You will see all the defines, unit, source, include paths for all source directories. Beginning with the settings of the current FPC, the defines for the Lazarus Source directory, all package directories and project directories.

Most of these settings are auto generated and read only.

  • Re-scan FPC Source directory Looks through the directory again. Lazarus uses the fpc sources to generate correct event handlers and while looking for declarations. If somebody changes the directory in the environment options, then this directory is rescanned, to make sure lazarus uses the version stored in that location. But if this directory has changed without lazarus noticing, then you may get some errors when designing forms or doing "Find declaration". If you get such an error, you can do two things:
    1. Check the fpc source directory setting in the environment option.
    2. Re-scan FPC source directory.

The Windows sub-menu

Contains a list of the currently opened files and the available windows such as Source Editor, Object Inspector and Project Inspector. Clicking on the name of one of the windows brings it to the foreground and gives it focus.

The Help sub-menu

At present this has three selections:

  • Online Help which at present opens a browser window that contains a picture of the running cheetah and a few links to the Lazarus, FreePascal and WiKi websites
  • Configure Help which opens a pop-up menu with options to select viewers and databases from which to read Help information. This option allows the user to specify either the on-line documents section of the Lazarus-CCR website, some other website containing the documents, or a local store for the documentation (this would eventually become the default, when the Help system is fully developed).

At present by default, if you place your Editor cursor over any keyword from the FreePascal Components Library FCL or the RunTime Library RTL (but not the Lazarus Components Library LCL) and then press <<F1>> you will be taken to the appropriate definition on the website. THIS SECTION STILL REPRESENTS WORK IN PROGRESS

  • About Lazarus Displays a pop-up box with some information about Lazarus.

Eventually there will be a full on-line Help service, with information about Pascal syntax, the use of the IDE, how to use, modify or create Components, and hints on how to perform certain tasks. This part of the Documentation section (the thing you are currently reading) represents the beginning of the process. We need contributions from anyone who feels able to provide them: the WiKi is very easy to edit.

The Button bar

A small toolbar area on the left of the main editor window, just below the Main Menu and to the left of the Component Palette, contains a set of buttons which replicate frequently-used Main Menu selections:

New unit, Open (with a down-arrow to display a drop-down list of recently used files), Save, Save all, New Form, Toggle Form/Unit (ie show either form or source code of Unit), View Units, View Forms, Run (ie compile and Run), Pause, Step Into, Step over (the last two are Debugger functions).

La palette de composents

La barre d'outils à onglets affiche un large choix d'icône représentant les composants les plus courants pour la conception de formulaires.

Chaque onglet affiche un jeu d'icônes, correspondant aux fonctionnalités du groupe de composants. L'icône la plus à gauche, figurant une flèche, est appelé outil de sélection.

Si vous placez le pointeur de la souris sur l'une des icônes sans cliquer dessus, sont nom s'affichera. Notez que chaque nom commence par un 'T', ce qui signifie 'Type' ou plus précisément 'Class' de composant. Lorsque vous sélectionnez un composant pour l'intégrer dans un formulaire, la classe est ajoutée dans la section type de la partie interface de l'unité (habituellement en tant que partie de TForm1), et une instance de cette classe est ajouté dans la section var (habituellement de la même manière que la variable Form1). Chaque méthode que vous écrivez pour être utilisée par le formulaire un un de ses composants (Procédures ou Fonctions) seront placés dans la partie implementation de l'unité.

Dans la liste suivante, vous trouverez des liens vers les fichiers qui contiennent la description de ses composants. Si vous souhaitez trouver les propriétés d'un composant en particulier, il peut être utile d'étudier le composant duquel il est dérivé (son parent). Par exemple, pour comprendre TMaskEdit il est également utile d'examiner TCustomMaskEdit.

ONGLETS (les noms sont largement explicites) :

Component Palette Standart.png
Frequently used components: TMainMenu, TPopupMenu, TButton, TLabel, TEdit, TMemo, TToggleBox, TCheckBox, TRadioButton, TListBox, TComboBox, TScrollBar, TGroupBox, TStaticText, TRadioGroup, TCheckGroup, TPanel, TActionList
Component Palette Additional.png
More, often-used components: TBitBtn, TSpeedButton, TImage, TShape, TBevel, TPaintBox, TNotebook, TLabeledEdit, TSplitter, TMaskEdit, TCheckListBox, TScrollBox, TApplicationProperties, TStringGrid, TDrawGrid, TPairSplitter
Component Palette Common Controls.png
TTrackBar, TProgressBar, TTreeView, TListView, TStatusBar, TToolBar, TUpDown, TPageControl, TImageList
Component Palette Dialogs.png
TOpenDialog, TSaveDialog, TSelectDirectoryDialog, TColorDialog, TFontDialog, TOpenPictureDialog, TSavePictureDialog, TCalendarDialog, TCalculatorDialog

Beaucoup de procédures ou de fonctions utiles comme les boîtes de dialogue n'apparaissent pas directement dans la palette de composants, mais peuvent être facilement appelées dans le code source du programme.

For several good examples of the use of Components see the $LazarusPath/lazarus/examples subdirectory of your source installation. Many of the programs show how to use dialogs and other components directly without using the IDE and component palette or having a separate form definition file: all the components are fully and explicitly defined in the main Pascal program. Other example programs make full use of the IDE.

Some examples don't work straight away: you may need to play about with paths and permissions of files or directories. If you want to compile any of the examples, make sure that you have read/write/execute permissions for the files and directories, or copy the files to a directory where you do have the appropriate permissions.

Try running the 'testall' program to see a menu of the available components together with small example test forms for most of them; then inspect the code to find out how they work!

  • Misc
Component Palette Misc.png
TColorButton, TSpinEdit, TArrow, TCalendar, TEditButton, TFileNameEdit, TDirectoryEdit, TDateEdit, TCalcEdit, TFileListBox
  • Data Controls
Component Palette DataControls.png
Data-aware components, which largely replicate the Standard and Additional groups but are applicable to Databases: TDBNavigation, TDBText, TDBEdit, TDBMemo, TDBImage, TDBListBox,TDBComboBox, TDBCheckBox, TDBRadioGroup, TDBCalendar, TDBGroupBox, TdbGrid
  • Data Access
Component Palette DataAccess.png
TDatasource
  • System
Component Palette System.png
TTimer, TIdleTimer, TProcess
  • SynEdit
Component Palette SynEdit.png
A group of components to help interfacing with other languages and software tools. SynEdit is an advanced multi-line edit control, for Borland Delphi, Kylix and C++Builder. It supports Syntax Highlighting and code completion, and includes exporters for html, tex and rtf. It is a full-VCL/CLX control, meaning it is not a wrapper for Microsoft Windows controls, and no run-time library is required; this make SynEdit a crossplatform component. Compatibility with FreePascal is also planned, and SynEdit is the edit component in Lazarus IDE. see synedit at sourceforge. TSynEdit, TSynAutoComplete, TSynExporterHTML, TSynMacroRecorder, TSynMemo, TSynPasSyn, TSynCppSyn, TSynJavaSyn, TSynPerlSyn, TSynHTMLSyn, TSynXMLSyn, TSynLFMSyn, TSynUNIXShellScriptSyn, TSynCssSyn, TSynPHPSyn, TSynTeXSyn, TSynSQLSyn, TSynMultiSyn

To use the Palette, there must be an open form on view in the editor (if there isn't one, select File -> New Form). Click on the icon in the appropriate tab of the Palette for the component you want to use, then click on the Form, near where you want the component to appear. When the desired component appears, you can select it by clicking with the mouse, then move it to the exact place on the Form where you want it and adjust its size. Adjustments can be made to the appearance either by altering the picture itself on the Form using the mouse, or by changing the relevant Property in the Object Editor for that component.

If you install additional components, either those you have written yourself, or some coming as a package from some other source, then extra tabs with the relevant icons will appear in your Component Palette. These new components can be selected and used on your forms in the same way as those supplied by default.

The Debugger

Still to be written.

The Lazarus files

   (Thanks to Kevin Whitefoot.)
   (Additions by Giuseppe Ridinò, User:Kirkpatc and Tom Lisjac)

When you save you will actually be saving two files:

  xxx.pas and yyy.lpr 

(You save more than that but those are the ones you get to name). The project file (lpr) and the unit file (pas) must not have the same name because Lazarus will helpfully rename the unit (inside the source code) to the same as the unit file name and the program to the name of the project file (it needs to do this or the compiler will probably not be able to find the unit later when referred to in the project file). Of course to be consistent it changes all the occurrences of unit1 to xxx.

So if you are saving a project called again, trying to save again.pas and again.lpr fails because unit names and program names are in the same name space resulting in a duplicate name error.

So here is what I ended up with:

e:/lazarus/kj/lazhello:

total 4740  free 76500
-rwxrwxrwx   1 kjwh     root  4618697 Mar 24 11:19 again.exe
-rw-rw-rw-   1 kjwh     root     3002 Mar 24 11:21 again.lpi
-rw-rw-rw-   1 kjwh     root      190 Mar 24 11:18 again.lpr
-rw-rw-rw-   1 kjwh     root      506 Mar 24 11:08 againu.lfm
-rw-rw-rw-   1 kjwh     root      679 Mar 24 11:08 againu.lrs
-rw-rw-rw-   1 kjwh     root      677 Mar 24 11:08 againu.pas
-rw-rw-rw-   1 kjwh     root     2124 Mar 24 11:08 againu.ppu
-rwxrwxrwx   1 kjwh     root      335 Mar 24 11:07 ppas.bat

Note that there are many more files than the two that I thought I was saving.

Here is a brief note about each file:

again.exe: The main program binary executable. Win32 adds an "exe" extension. Linux has none. This file will be huge on Linux due to the inclusion of debugging symbols. Run the "strip" utility to remove them and substantially shrink the executable size.

again.lpi: This is the main file of a Lazarus project (Lazarus Project Information); the equivalent Delphi main file of an application will be the .dpr file. It is stored in an XML format.

again.lpr: The main program source file. Despite its lazarus specific extension it is in fact a perfectly normal Pascal source file. It has a uses clause that lets the compiler find all the units it needs. Note that the program statement does not have to name the program the same as the file name.

againu.lfm: This is where Lazarus stores the layout of the form unit. Lazarus uses this to generate a resource file that is included in the initialisation section of the againu.pas unit. Delphi dfm files can be converted to lfm format in the Lazarus IDE using the Tools->Convert DFM file to LFM utility.

again.lrs: This is the generated resource file. Note that it is not a Windows resource file.

againu.pas: The unit that contains the code for the form.

again.ppu: This is the compiled unit.

ppas.bat: This is a simple script that links the program to produce the executable. If compilation is successfull, it is deleted by the compiler.

Original contributors and changes

This page has been imported from the epikwiki version.

  • Created initial page and template. T. Lisjac - 11/04/2003 VlxAdmin
  • Inserted a note containing instructions for writing your first Lazarus Program. Suggest an administrator places it in the appropriate place on the Tutorial menu. 3/09/2004 User:Kirkpatc
  • Per above, moved Chris's writeup to the main body of the tutorial VlxAdmin
  • Began to insert text describing the Lazarus Editor - more to follow! 24 Mar 2004 User:Kirkpatc
  • Added some more to Lazarus Editor section of Tutorial. 25 Mar 2004 User:Kirkpatc
  • Added screenshots and revised some of the page formatting VlxAdmin 3/25/2004
  • Moved some of kwhitefoot's comments into Tutorial section. Formatting not quite right, but have to go to bed now! 26 Mar 2004 User:Kirkpatc
  • Formatted, added credits and comments. Removed original notes. VlxAdmin 3/26/2004
  • More material added to Editor section of tutorial. 26 Mar 2004 User:Kirkpatc
  • More material added describing the Main Menu. Renamed 'Hello World' to 'Getting Started' and moved it to nearer the top. 31 March 2004 User:Kirkpatc
  • Inserted section on Run sub-menu. Some general editing (eg ended each entry with a period to ensure consistency). 9 Apr 2004 User:Kirkpatc
  • Inserted a new section on How to get started with MySQL in FPC/Lazarus. 13 Apr 2004 User:Kirkpatc
  • Deleted the section on MySQL from here: it has been copied to Lazarus Database section of tutorial. 14 Apr 2004 User:Kirkpatc
  • Added some more to the description of the Editor Main Menu. 18 Apr 2004 User:Kirkpatc
  • Added section on Environment sub-menu. 19 Apr 2004 User:Kirkpatc
  • Added section on Components sub-menu. 4 May 2004 User:Kirkpatc
  • Adding Tools sub-menu description (incomplete). 7 May 2004 User:Kirkpatc
  • Added some screenshots to Menu descriptions. 9 May 2004 User:Kirkpatc
  • Fixed a bit in Environment Options - thanks VincentSnijders. 14 May 2004 User:Kirkpatc
  • More additions to Tools sub-menu. 19 May 2004 User:Kirkpatc
  • Added a section on the Button Bar and started work on The Component Palette. 20 May 2004 User:Kirkpatc
  • Posted a description file for the StdCtrls unit of the LCL, in the hope that people will add comments. 26 May 2004 User:Kirkpatc
  • Edited the StdCtrls file, removing a lot of repetitive material and doing some formatting. It is still far too long. 28 May 2004 User:Kirkpatc
  • Expanding on the Components Palette. 5 June 2004 User:Kirkpatc
  • Added a lot to the DialogExamples page. 10 June 2004 User:Kirkpatc
  • Considerable revision of the StdCtrls page, hopefully making it clearer and encouraging people to contribute - particularly in the 'Description' sections. 14 June 2004 User:Kirkpatc
  • Added pages for Menus and Dialogs units (linked to Component Palette description) - please feel free to add to these pages. 14 June 2004 User:Kirkpatc
  • Added page for Common Controls (linked to Component Palette). 16 June 2004 User:Kirkpatc
  • Added MaskEdit page (linked to Component Palette). 17 June 2004 User:Kirkpatc
  • Added Buttons, ExtCtrls pages (linked to Component Palette). 17 June 2004 User:Kirkpatc
  • Edited MainMenu component description page. 23 June 2004 User:Kirkpatc
  • Some additions to Common Controls. 28 June 2004 User:Kirkpatc
  • A new tutorial on Text-mode Pascal programming has been added. 5 July 2004 User:Kirkpatc
  • Minor changes to ComCtrls, ExtCtrls, Environment Menu. 10 July User:Kirkpatc
  • Added FormsTxt, component description page for Component Palette. 20 July 2004 User:Kirkpatc
  • Some corrections to ConsoleModePascal. 21 July 2004 User:Kirkpatc
  • Some small changes to ComponentPalette. 22 July 2004 User:Kirkpatc