Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: AlexLazarus - Ottobre 29, 2022, 05:35:39 pm

Titolo: Come cambiare nome a unit1.pas ?
Inserito da: AlexLazarus - Ottobre 29, 2022, 05:35:39 pm
Solo il newbie di prima, quello che rompe saltuariamente le scatole. Dunque...

Per organizzare meglio i miei progetti ho deciso di assegnare una specifica cartella a ciascuno di essi:  nello screenshot notare A_2022_10_29_Prog_160_Prova_Unit_A.

Quando salvo per la prima volta un qualsiasi progetto, mentre posso assegnargli un nome qualunque, il file uniti1.pas (che cioè contiene tutto il codice digitato) non può essere rinominato. Va be', non capisco ma mi adeguo.

In seguito, ingenuamente, credendo di salvare più versioni successive di un medesimo progetto (vedi 1 e 2 negli screenshot) , al momento di chiudere clicco sul menu Progetto / Salva progetto come... e in effetti il progetto viene salvato. Tuttavia mi accorgo che il il file unit1.pas (3) non solo rimane "unico" per tutti i progetti salvati successivamente, ma addirittura viene aggiornato costantemente in tempo reale! Ho potuto infatti monitorare il contenuto del file a mano a mano che inserivo modifiche.

Il problema è che talvolta mi è capitato di "rompere" irrimediabilmente un progetto (inserendo / cancellando comandi, funzioni con troppa disinvoltura) e di non essere stato capace di recuperare la versione che funzionava correttamente prima che apportassi modifiche. Il salvataggio del progetto con altro nome ovviamente non serve a nulla e devo rifare tutto dall'inizio. Che stress!

Per ora mi vedo costretto, prima fare modifiche, a copiare l'intero contenuto del progetto (che funziona correttamente) in una cartella indipendente, in modo da recuperarlo in caso di problemi. (Sì, lo so, potrebbe essere utile usare la cartella backup, ma...)

Domande:

1) Perché non è possibile cambiare nome a unit1.pas?
2) Come si può salvare un progetto con un nome diverso e associare contemporaneamente un diverso nome anche a unit1.pas?
Titolo: Re:Come cambiare nome a unit1.pas ?
Inserito da: DragoRosso - Ottobre 29, 2022, 05:43:22 pm
Io faccio esattamente come te, copia la cartella del progetto da cui voglio derivarne uno nuovo.

Che io sappia, ma non mi sono sforzato troppo, è l'unico metodo pratico e veloce, in alternativa dovresti dopo aver salvato il progetto con altro nome in altra cartella salvarti anche tutte le unità, una ad una (file-salva come).

Non sò se è un mezzo gaudio, ma anche ambienti più blasonati (Delphi ad esempio) hanno lo stesso funzionamento.

Ciao.
Titolo: Re:Come cambiare nome a unit1.pas ?
Inserito da: nomorelogic - Ottobre 29, 2022, 05:53:44 pm
avete provato il "save as..."?

per le unit: Menu File -> "Salva come..."
per i progetti:Menù Progetto -> "salva progetto come..."

io di solito faccio con questi comandi
Titolo: Re:Come cambiare nome a unit1.pas ?
Inserito da: DragoRosso - Ottobre 29, 2022, 06:31:58 pm
avete provato il "save as..."?

per le unit: Menu File -> "Salva come..."
per i progetti:Menù Progetto -> "salva progetto come..."

io di solito faccio con questi comandi

Si, come ho scritto funziona come dici tu, ma devi ripetere i salvataggi per ogni singola unità del progetto. Inoltre se hai dei file legati al progetto (ad esempio file risorse) bisogna vedere se non devi reinserire anche quelle.

Ciao.
Titolo: Re:Come cambiare nome a unit1.pas ?
Inserito da: bonmario - Ottobre 29, 2022, 07:32:51 pm
Fin dall'inizio, mi ero reso conto che le rinomine funzionavano in maniera strana, perlomeno per quanto mi riguarda, quindi quello lo gestisco con un programma fatto ad hoc.

Per il resto, io ho una directory per ogni progetto, ed una directory dove tengo tutte le unit generiche.
Per quanto riguarda la Unit1, facendo come faccio io, non mi ha mai creato problemi rinominarla, io faccio così:
- apro un nuovo progetto
- Progetto ==> Salva progetto
- mi chiede il nome da dare al file ".lpi", e lo faccio
- mi chiede il nome da dare al file "unit1.pas", e lo faccio

Ciao, Mario
Titolo: Re:Come cambiare nome a unit1.pas ?
Inserito da: nomorelogic - Ottobre 29, 2022, 08:10:52 pm
avete provato il "save as..."?

per le unit: Menu File -> "Salva come..."
per i progetti:Menù Progetto -> "salva progetto come..."

io di solito faccio con questi comandi

Si, come ho scritto funziona come dici tu, ma devi ripetere i salvataggi per ogni singola unità del progetto. Inoltre se hai dei file legati al progetto (ad esempio file risorse) bisogna vedere se non devi reinserire anche quelle.

Ciao.

ops...
non avevo letto tutto :)
Titolo: Re:Come cambiare nome a unit1.pas ?
Inserito da: AlexLazarus - Ottobre 30, 2022, 07:49:52 am
Come già detto, ho provato a cambiare nome a unit1.pas, ma l'intera procedura poi si "rompe". Nei sei screenshots allegati un esempio di quanto asserito.
Comunque vedo che anche voi, come me, salvate ogni volta in cartelle differenti per evitare problemi.
Sarebbe tuttavia interessante sapere perché non è possibile salvare versioni successive di un medesimo progetto all'interno di un'unica cartella.
Titolo: Re:Come cambiare nome a unit1.pas ?
Inserito da: DragoRosso - Ottobre 30, 2022, 02:50:23 pm
L'operazione che hai svolto non è corretta, a Lazarus non piace che una unità (xxx.pas) abbia lo stesso nome del progetto (xxx.lpi). Anche questa particolarità è comunque a molti ambienti di sviluppo.

Comunque a parte questo, da anni che ricavo i progetti da quelli già svolti ho sempre fatto copia / incolla della cartella e mai ho avuto problemi. Certo, c'è poi un opera di pulizia per le unità che non servono, icone, file db, manuali di help online, file risorse, etc... ma ci vuole veramente poco e hai il tuo bel progetto già configurato.

Io poi svolgendo un lavoro abbastanza specifico ho la fortuna di avere i progetti, anche se per lavori totalmente differenti (tipo sw per controllo del vetro e sw per il controllo delle uova), la cui base è praticamente identica (thread, monitoraggio, automazione, principi di elaborazione, etc..) e quindi il copia / incolla è "la sua morte".  :)

Ciao
Titolo: Re:Come cambiare nome a unit1.pas ?
Inserito da: bonmario - Novembre 21, 2022, 08:26:50 am
Sabato, nelle versione "in sviluppo", hanno fatto questo commit:

Codice: [Seleziona]
* IDE: Allow renaming a project using the Save As dialog. Issue #39954.

Quindi, probabilmente c'era qualcosa che non andava !

Ciao, Mario