IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres IDE Pascal Discussion :

Dupliquer un projet à partir de l'IDE [CodeTyphon]


Sujet :

Autres IDE Pascal

  1. #1
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 937
    Points : 59 417
    Points
    59 417
    Billets dans le blog
    2
    Par défaut Dupliquer un projet à partir de l'IDE
    Bonjour,

    Désolé si ma question va sembler triviale à certains (mais au moins ça les aura fait sourire ) mais je me demande quelle est la meilleure manière pour dupliquer un projet à partir de l'IDE ? Si je passe par le menu "Enregistrer le projet sous", je dois corriger à la main le contenu des fichiers lpi, lpr, lps, res... En attendant, pour gagner du temps, j'ai fait un petit script externe :
    Code shell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    #!/bin/bash
     
    # Duplicates a CodeTyphon project
     
    if test "$#" -ne 2; 
    	then
    		# Invalid number of arguments
    		echo "Usage : projectdup [oldname] [newname]";
    	else
    		# Copies old directory to new one
    		cp -R $1 $2;
    		# Renames files
    		cd $2;
    		rename $1 $2 $1;
    		rename $1 $2 $1.*;
    		rename $1 $2 lib/x86_64-linux/$1.*;
    		# Replaces text in files
    		sed -i -e "s/$1/$2/g" $2.lpi;
    		sed -i -e "s/$1/$2/g" $2.lpr;
    		sed -i -e "s/$1/$2/g" $2.lps;
    		sed -i -e "s/$1/$2/g" $2.res;
    fi
    Merci de vos lumières !
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  2. #2
    Responsable Lazarus & Pascal

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Points : 20 855
    Points
    20 855
    Billets dans le blog
    84
    Par défaut
    Citation Envoyé par Alcatîz Voir le message
    je me demande quelle est la meilleure manière pour dupliquer un projet à partir de l'IDE ? Si je passe par le menu "Enregistrer le projet sous", je dois corriger à la main le contenu des fichiers lpi, lpr, lps, res...
    Bonjour,

    1. Passer par le menu Projet > Enregistrer le projet sous... : normalement, il n'y a pas besoin de corriger quoi que ce soit à la main, car le double créé contient les liens nécessaires. Simplement, il faut le créer dans le même répertoire que celui d'origine. On peut en revanche éliminer l'ancien projet sans problème (à la main ). Personnellement, je fais une copie du dossier complet et j'enregistre à partir de cette copie.

    2. Utiliser Projet > Publier le projet... : en choisissant "$(ProjPath)\published\" comme répertoire de destination, on crée un répertoire qui contient uniquement les fichiers nécessaires au projet (ils sont par ailleurs paramétrables grâce au même formulaire). C'est la solution la plus propre.

    3. Le script est une bonne idée aussi : pourquoi en changer s'il convient ? Note : les fichiers .lps et .res sont inutiles car reconstruits si besoin grâce aux fichiers .lfm (tu sembles les avoir oubliés...).

    Il n'y aura personne pour rire de ta question puisqu'elle revient souvent et qu'il n'existe pas de réponse simple lorsqu'on souhaite déplacer ou dupliquer des fichiers fortement liés entre eux .

    PS : comme Code Typhon est construit sur Lazarus, je suppose qu'ils fonctionnent de la même manière...
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  3. #3
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 729
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 729
    Points : 15 133
    Points
    15 133
    Par défaut
    Salut,
    Citation Envoyé par gvasseur58 Voir le message
    PS : comme Code Typhoon est construit sur Lazarus, je suppose qu'il fonctionne de la même manière...
    Dans cette phrase je ne sais pas qui fonctionne comme qui ou plutôt, je ne sais pas qui "il" représente dans le bout "je suppose qu'il fonctionne..."
    Lazarus ? Puisque le post est taggé "CodeTyphon" ?

    'fin bon, j'ai testé le plan "Projet / Publier un projet..." depuis Lazarus et donc, trois points :
    - après la "publication" l'IDE reste positionné sur le projet original, donc "Projet / Ouvrir un projet récent >" si on veut jouer avec le nouveau ;
    - les fichiers du nouveau projet sont bien recopiés dans le nouveau dossier (créé pour l'occasion), sauf le fichier .ico ;
    - et j'ai gardé le pire pour la fin : quand j'ai plusieurs unités ou fiches, je crée en général un dossier "modules" dans le dossier du projet, où j'enregistre ces fichiers complémentaires, et ce dossier n'a pas été recopié et donc ça se vautre à la compilation, "unit2" étant introuvable (et pourtant bien inscrit avec son chemin dans project1.lpi) !
    Mais je suis en 1.4, ça a peut-être été corrigé en 1.6 ?

    Méfiance quand même...
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  4. #4
    Responsable Lazarus & Pascal

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Points : 20 855
    Points
    20 855
    Billets dans le blog
    84
    Par défaut
    Salut !

    Citation Envoyé par Jipété Voir le message
    Dans cette phrase je ne sais pas qui fonctionne comme qui ou plutôt, je ne sais pas qui "il" représente dans le bout "je suppose qu'il fonctionne..."
    Pour lever l'ambiguïté, j'ai mis la phrase au pluriel . J'en ai profité pour retirer un "o" au typhon...

    Citation Envoyé par Jipété Voir le message
    - après la "publication" l'IDE reste positionné sur le projet original, donc "Projet / Ouvrir un projet récent >" si on veut jouer avec le nouveau ;
    Rien d'anormal puisque qu'il ne s'agit pas d'un nouveau projet, mais bien de la duplication du premier.

    Citation Envoyé par Jipété Voir le message
    - les fichiers du nouveau projet sont bien recopiés dans le nouveau dossier (créé pour l'occasion), sauf le fichier .ico ;
    - et j'ai gardé le pire pour la fin : quand j'ai plusieurs unités ou fiches, je crée en général un dossier "modules" dans le dossier du projet, où j'enregistre ces fichiers complémentaires, et ce dossier n'a pas été recopié et donc ça se vautre à la compilation, "unit2" étant introuvable (et pourtant bien inscrit avec son chemin dans project1.lpi) !
    En fait, j'ai seulement effleuré la question du formulaire de paramétrage : il est bien sûr possible de choisir les fichiers/dossiers à conserver ou à éliminer. Pour cela, rien de tel que de connaître un peu les expressions régulières dont Roland est le champion incontesté.

    Voici comment j'ai renseigné mon formulaire afin de conserver à la fois le fichier d'icône et les éventuels sous-dossiers relatifs :

    Nom : 2016-07-26_101518.PNG
Affichages : 338
Taille : 14,5 Ko

    L'ajout de "ico" me sert quand j'utilise un filtre d'inclusion (ce qui n'est pas le cas si j'insère un sous-dossier).

    Citation Envoyé par Jipété Voir le message
    Mais je suis en 1.4, ça a peut-être été corrigé en 1.6 ?
    Je suppose que 1.4 fonctionnait déjà de cette manière, mais quelle drôle d'idée de conserver cette version .
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  5. #5
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 729
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 729
    Points : 15 133
    Points
    15 133
    Par défaut
    Citation Envoyé par gvasseur58 Voir le message
    Voici comment j'ai renseigné mon formulaire afin de conserver à la fois le fichier d'icône et les éventuels sous-dossiers relatifs :

    Nom : 2016-07-26_101518.PNG
Affichages : 338
Taille : 14,5 Ko

    L'ajout de "ico" me sert quand j'utilise un filtre d'inclusion (ce qui n'est pas le cas si j'insère un sous-dossier).
    J'ai testé comme ça :

    Nom : publier_modules.png
Affichages : 200
Taille : 13,2 Ko
    et ça m'a créé le dossier modules, bien, mais toujours pas le fichier project1.ico, moins bien... (les autres .ico oui, encore un mystère...)


    Citation Envoyé par gvasseur58 Voir le message
    Je suppose que 1.4 fonctionnait déjà de cette manière, mais quelle drôle d'idée de conserver cette version .
    Et je n'en changerai pas tant qu'il n'y aura pas l'annonce d'une vraie ListView sous Linux...
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  6. #6
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 937
    Points : 59 417
    Points
    59 417
    Billets dans le blog
    2
    Par défaut
    Merci pour vos réponses !

    Citation Envoyé par gvasseur58 Voir le message
    1. Passer par le menu Projet > Enregistrer le projet sous... : normalement, il n'y a pas besoin de corriger quoi que ce soit à la main, car le double créé contient les liens nécessaires. Simplement, il faut le créer dans le même répertoire que celui d'origine. On peut en revanche éliminer l'ancien projet sans problème (à la main ). Personnellement, je fais une copie du dossier complet et j'enregistre à partir de cette copie.
    Le but est de conserver le projet initial et d'en créer un nouveau dans un autre répertoire. C'est précisément l'édition manuelle des noms de répertoires dans les fichiers .lpr, etc., que je veux éviter. Personnellement, je trouverais logique que le fait d'enregistrer un projet dans un autre répertoire entraîne la modification automatique des sources pour qu'il soit directement compilable.

    Citation Envoyé par gvasseur58 Voir le message
    2. Utiliser Projet > Publier le projet... : en choisissant "$(ProjPath)\published\" comme répertoire de destination, on crée un répertoire qui contient uniquement les fichiers nécessaires au projet (ils sont par ailleurs paramétrables grâce au même formulaire). C'est la solution la plus propre.
    Je vais donc expérimenter davantage cette voie, que j'avais essayée sans succès.

    Citation Envoyé par gvasseur58 Voir le message
    fichiers .lfm (tu sembles les avoir oubliés...)
    Les fichiers .lfm ne nécessitent pas d'édition manuelle, ce n'est pas un oubli.
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  7. #7
    Responsable Lazarus & Pascal

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Points : 20 855
    Points
    20 855
    Billets dans le blog
    84
    Par défaut
    Bonjour,

    Citation Envoyé par Alcatîz Voir le message
    Personnellement, je trouverais logique que le fait d'enregistrer un projet dans un autre répertoire entraîne la modification automatique des sources pour qu'il soit directement compilable.
    En fait, l'EDI ne saurait pas si tu veux faire référence à l'ancien projet depuis un autre emplacement ou si tu veux en faire une copie indépendante. Il faudrait imaginer deux types d'enregistrement, ce que fait au bout du compte Lazarus : si l'objectif est de faire référence depuis un autre emplacement, il faut utiliser "enregistrer le projet sous..." ; s'il faut un projet indépendant, la solution est la publication du projet.
    Personnellement, j'ai tendance à sortir de l'EDI et à faire ma cuisine personnelle : je fais une copie du répertoire que je colle où je veux. Le changement éventuel du nom est obtenu par "enregistrer sous...". Ce n'est pas forcément ce qui se fait de mieux, mais l'habitude est ancrée...


    Citation Envoyé par Alcatîz Voir le message
    Les fichiers .lfm ne nécessitent pas d'édition manuelle, ce n'est pas un oubli.
    Au temps pour moi . Supprime cependant les fichiers .res et .lps parfaitement inutiles si les fichiers .lfm sont présents.
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  8. #8
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 937
    Points : 59 417
    Points
    59 417
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par gvasseur58 Voir le message
    En fait, l'EDI ne saurait pas si tu veux faire référence à l'ancien projet depuis un autre emplacement ou si tu veux en faire une copie indépendante. Il faudrait imaginer deux types d'enregistrement, ce que fait au bout du compte Lazarus : si l'objectif est de faire référence depuis un autre emplacement, il faut utiliser "enregistrer le projet sous..." ; s'il faut un projet indépendant, la solution est la publication du projet.
    Personnellement, j'ai tendance à sortir de l'EDI et à faire ma cuisine personnelle : je fais une copie du répertoire que je colle où je veux. Le changement éventuel du nom est obtenu par "enregistrer sous...". Ce n'est pas forcément ce qui se fait de mieux, mais l'habitude est ancrée...
    Je te remercie, je vois à présent l'utilité des deux items, et je vais dorénavant m'inspirer de ta méthode.

    Citation Envoyé par gvasseur58 Voir le message
    Supprime cependant les fichiers .res et .lps parfaitement inutiles si les fichiers .lfm sont présents.
    Bien vu. J'aurais dû deviner pour le .res ; par contre, je ne savais pas que le fichier .lps était facultatif.

    Merci beaucoup à vous deux !
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  9. #9
    Responsable Lazarus & Pascal

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Points : 20 855
    Points
    20 855
    Billets dans le blog
    84
    Par défaut
    Bonjour,

    Les informations suivantes peuvent peut-être aider ceux qui liraient cette discussion.

    Voici la liste des extensions qu'il faut conserver pour la bonne description d'un projet :

    .lfm
    .lpi
    .lpr
    .pas
    .pp

    Les extensions suivantes peuvent être générées par l'EDI ou faire partie à part entière du projet (donc méfiance !) :

    .ico
    .inc
    .lrs
    .rc
    .res

    Ces fichiers sont produits pas l'EDI si bien qu'il n'est pas nécessaire de les conserver (ils seront générés lors de la prochaine compilation) :

    .a
    .bak
    .compiled
    .lps
    .o
    .or
    .ppu
    .rst
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/12/2010, 08h50
  2. Réponses: 10
    Dernier message: 15/10/2007, 14h35
  3. créer un projet à partir de source sur une autre partition
    Par julien.63 dans le forum Eclipse PHP
    Réponses: 0
    Dernier message: 22/08/2007, 15h28
  4. Réponses: 7
    Dernier message: 02/07/2007, 14h37
  5. Appel d'un projet à partir d'un autre
    Par kazhar dans le forum VB.NET
    Réponses: 2
    Dernier message: 26/02/2007, 10h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo