Atti giudiziari: numerazione automatica delle produzioni documentali con risorse gratuite ed Espressioni Regolari in Windows, macOS e Linux

archivio_royalty_free.jpg

Figura 1: Immagine royalty free tratta da https://it.freeimages.com

1 Premessa sulla numerazione delle produzioni documentali

Ai tempi dei fascicoli di carta le produzioni documentali si realizzavano con le fotocopie alle quali veniva sovrapposto, anche a penna, un numero progressivo in un angolo della pagina.

Ai tempi del Processo Civile Telematico la carta è rimasta una risorsa residuale.

Ora i documenti vengono inseriti, singolarmente oppure in un fascicolo integrato ipertestuale magari creato seguendo le indicazioni di questo mio articolo, devono essere numerati mantenendo un proprio nome descrittivo ed aggiungendo una sequenza numerica progressiva e, se possibile, un prefisso testuale del tipo DOC o simile.

La numerazione delle produzioni documentali avviene, pertanto, secondo uno standard alfanumerico del tipo: DOC xx nome_file o analogo.

Nessun problema se sia necessario aggiungere i numeri a pochi documenti. In questo caso la soluzione più immediata quella di numerare i documenti a mano, uno per uno.
Ma cosa succede se sia necessario modificare una massa consistente di documenti? In pratica: come si può affrontare l'esigenza di una massiva numerazione standardizzata di produzioni documentali?

In questo articolo vi propongo una serie di soluzioni attuate con software libero e gratuito o anche con risorse interne ai vari sistemi operativi menzionati.

2 Una soluzione open source completa per MS Windows: Ant Renamer

Nell'ambiente MS Windows trovo particolarmente interessante un programma di numerazione automatica non soltanto gratuito ma anche a codice aperto (ovvero open source) denominato Ant Renamer, soggetto alla licenza GNU General Public License.

Questo software può essere sia installato in modo tradizionale che lanciato da una suite esterna, come PortableApps, senza, quindi, alcuna modifica della configurazione del computer sul quale opera.

Questo particolare ne consente l'utilizzo anche in quelle circostanze, frequenti negli ambienti di lavoro aziendale, in cui l'operatore non possieda l'autorizzazione all'installazione di software esterno nelle macchine in cui opera.

3 Procedimento passo-passo per l'autonumerazione con Ant Renamer

Prima di procedere passo-passo occorre rammentare che l'obiettivo è quello di aggiungere ai nomi di una serie di documenti di qualsiasi tipo (non necessariamente PDF) una numerazione progressiva a due cifre (01, 02, ecc.) preceduta dal prefisso DOC.
In altri termini dobbiamo mantenere i nomi originali dei documenti ed aggiungere, prima dei nomi originali, un prefisso testuale (del tipo DOC o di qualsiasi altro tenore letterale) ed una numerazione automatica a due o più cifre.

I nomi dei documenti utilizzati in questo tutorial sono del tutto casuali come anche la tipologia che, nel caso di specie, è PDF soltanto per nostra comodità ma che potrebbe essere riferita a qualsiasi altro tipo di documento.

Procediamo, quindi, alle specifiche operazioni in Ant Renamer.

Occorre, innanzitutto, importare nel programma un elenco dei documenti da numerare utilizzando la voce di menù AGGIUNGI FILES.
Nell'immagine seguente la vedete nell'angolo superiore sinistro sulla seconda file del nastro.

elenco_documenti_iniziale.png

Figura 2: Ant Renamer, elenco documenti iniziale

In alternativa si può utilizzare un semplice trascinamento multiplo dei documenti all'interno della finestra del programma.

Prima di passare alla fase operativa è possibile sistemare l'elenco spostando, se necessario, verso l'alto o verso il basso i singoli documenti tramite il mouse o le apposite frecce.

Per l'operazione di numerazione automatica occorre utilizzare la funzione denominata CONTATORI.

Nel campo collegato a tale funzione i numeri vengono rappresentati da simboli VARIABILI, riconoscibili dai segni di percentuale e la loro funzione è analiticamente descritta nella stessa finestra dei contatori, come da immagine seguente:

esempio_nome_variabile.png

Figura 3: Esempio di stringa variabile in Ant Renamer

Ad esempio: la stringa DOC %num%. %name%%ext% ha il seguente significato: aggiungi il prefisso DOC seguito da una sequenza numerica progressiva e dal nome ed estensione originale del documento.
Ovvero, in altri termini: mantieni il nome originale e aggiungi una numerazione progressiva preceduta da "DOC".

I risultati della numerazione possono essere messi a punto dai campi specifici: Inizia da - /Numero di cifre - Incrementa di e l'effetto delle variabili è espressamente descritto nel programma come nell'immagine seguente.

variabili_nomi.png

Figura 4: Significato delle variabili in Ant Renamer

Nella parte inferiore della finestra è possibile vedere l'ANTEPRIMA delle operazioni impostate:

anteprima.png

Figura 5: Anteprima del risultato programmato in Ant Renamer

Dopo la rifinitura si lancia l'operazione materiale di numerazione premendo il tasto GO INIZIA, collocato nella prima fila del nastro superiore.

In pochi secondi la numerazione impostata viene automaticamente applicata a tutti i documenti dell'elenco:

elenco_documenti_finale.png

Figura 6: Il risultato finale in Ant Renamer

L'obiettivo è stato, quindi, raggiunto con una minima attività manuale ed in un tempo ridottissimo, per un numero virtualmente infinito di documenti.

Inoltre con questo sistema non si corre il rischio di inserire caratteri errati o di saltare la numerazione di un documento, rischio che aumenta in modo esponenziale all'aumentare delle ripetizioni manuali.

4 Utilizzo delle Espressioni Regolari

Le risorse di questo software open source sono, tuttavia, molto più estese di quanto sopra descritto.
L'autore del programma ha, infatti, integrato un linguaggio simbolico come potenziale motore di ricerca e sostituzione.
Trattasi delle cosiddette espressioni regolari, anche conosciute nella denominazione abbreviata regex, alle quali ho fatto cenno in un mio precedente articolo in un mio articolo dedicato a Vim.

In un contesto, come quello sopra analizzato, in cui l'applicativo offre proprie funzioni dedicate all'integrazione e sostituzione delle stringhe alfanumeriche, ci si potrebbe chiedere se e quando sia utile lo strumento delle Espressioni Regolari.
La risposta è fornita dalle sintetiche indicazioni presenti nella pagina dedicata alle Espressioni Regolari dello stesso programma nella seguente frase: Il nuovo nome deve contenere $1, $2, etc. per specificare dove andranno i caratteri trovati.
La caratteristica tuttora attuale delle Espressioni Regolari è, quindi, quella della possibilità di selezionare in modo mirato frammenti interni alle stringhe di testo, compresi i nomi dei documenti, in modo da scambiarli tra loro.
La conoscenza della sintassi di base delle Espressioni Regolari può, pertanto, essere molto utile per la sistemazione di aggregati documentali in cui vi siano frammenti alfanumerici da invertire o spostare all'interno del nome dei singoli documenti.
Essendo, inoltre, le Espressioni Regolari un linguaggio a sè stante presente di regola (da cui il nome) nella totalità dei linguaggi di programmazione ad alto livello e nei tradizionali sistemi integrati di sviluppo come Vim ed Emacs, ne consegue che la stessa operazione sotto descritta può essere utilizzata in qualsiasi ambiente o linguaggio compatibile.

4.1 Esempio concreto di Espressione Regolare

Un esempio concreto di operazione multipla tramite Espressioni Regolari può chiarire meglio quanto sopra esposto.

Il problema: data una sequenza documentale del tipo Documento 1.pdf, Documento 2, pdf… Documento n.pdf (in cui n<10) mi occorre apportare le seguenti modifiche, per rendere la sequenza conforme allo standard anticipato all'inizio del presente articolo:

  1. integrare il numero con una doppia cifra, del tipo Documento 01.pdf, Documento 02.pdf, Documento nn.pdf,
  2. spostare il doppio numero, così ottenuto, all'inizio del nome di ogni singolo documento,
  3. anteporre al numero il prefisso DOC.

Se non avessimo a disposizione le Espressioni Regolari dovremmo effettuare tre distinte operazioni.
Con le Espressioni Regolari tutto può essere risolto con un'unica operazione, utilizzando la formula seguente:

  • Stringa di ricerca in formato regex: (Documento) ([0-9]*)
  • Stringa di sostituzione in formato regex: DOC 0$2 $1

Il risultato sarà la sequenza DOC 01 Documento.pdf, DOC 02 Documento.pdf, DOC nn Documento.pdf, ovvero esattamente il risultato voluto.

4.2 Analisi dell'Espressione Regolare di cui all'esempio precedente

Fermo restando che il tema delle Espressioni Regolari è vastissimo e la relativa complessità combinatoria è virtualmente infinita, per i nosti fini è sufficiente avere una conoscenza del tutto basilare della relativa sintassi.

Nell'esempio sopra indicato è essenziale comprendere il concetto tecnico di capturing group rappresentato dalle parentesi tonde: ogni stringa posta all'interno delle parentesi tonde diventa un gruppo di cattura o, in termini più chiari, un frammento richiamabile nel campo di sostituzione.
Il dato indentificativo del gruppo è costituito dalla posizione all'interno della stringa di ricerca.
Ogni gruppo viene automaticamente denominato utilizzando la variabile interna $. Quindi il primo gruppo diventa $1, il secondo gruppo $2, e così via.

Nel caso dell'esempio di sono due frammenti all'interno di parentesi tonde nel campo di ricerca:

  1. (Documento)
  2. ([0-9]*)

I due gruppi diventano, nel campo di sostituzione, $1 ed $2 e possono, con tale nome, essere spostati ed utilizzati ovunque nel campo.

Pertanto nel campo di costituzione ho operato come segue:

  1. Ho anteposto il testo fisso DOC seguito da uno spazio
  2. Ho inserito la variabile $2 preceduta da uno zero
  3. Ho inserito la variabile $1 preceduta da uno spazio

Il risultato è stata, quindi una tripla sostituzione con un unico comando.
Il risparmio di tempo è del tutto evidente.
L'uso delle Espressioni Regolari può completare, pertanto, le risorse a disposizione per le modifiche dei nomi dei documenti con la massima efficienza.

5 La numerazione automatica in macOS

5.1 La numerazione tramite funzioni integrate di macOS

Nel Mac App Store ed in rete si trovano molte applicazioni di terze parti che permettono di rinominare più file alla volta su macOS.
Tuttavia lo stesso sistema operativo di casa Apple ha sistemi integrati che consentono, senza fare ricorso a risorse esterne, di creare applicazioni modulari che effettuino operazioni in totale automatismo.
Trattasi, in particolare, dello stesso Finder del sistema nonchè, con funzione decisamente più estese, del costruttore di applicazioni denominato Automator.
In prosieguo trovate due esempi di numerazione mediante le due risorse sopra menzionate.

5.2 Rinomina elementi nel Finder

La risorsa di base è quella presente nel menù contestuale del Finder denominata, appunto, Rinomina elementi del Finder. Basta selezionare alcuni documenti, aprire il menù contestuale, scegliere la voce Rinomina n elementi (in cui n è il numero di documenti selezionati), scegliere la voce Formato seguita da Nome e contatore con l'opzione Situato in: dopo il nome, inserire il prefisso DOC nel campo Personalizza formato con Inizia numerazione da: 1 e premere, finalmente, Rinomina.
Il risultato, pur essendo in astratto utilizzabile per la produzione in giudizio, non è conforme allo standard che ci siamo imposti all'inizio, in quanto il nome originale viene sostituito da DOC 00001 e seguenti.

Rinomina_file_macOS.png

Figura 7: macOS e la numerazione tramite Finder

5.3 Automator e la costruzione modulare di applicazioni

La risorsa interna più completa è costituita da Automator in cui è possibile creare sistemi modulari complessi con semplici operazioni di sovrapposizione.
Automator trova il proprio equivalente nel sistema operativo iOS in Comandi e in questo articolo sull'ottimo sito AVVOCATI E MAC trovate una descrizione di procedura analoga nel sistema operativo mobile di casa Apple.

Una delle caratteristiche più interessanti dei moduli di Automator, come peraltro anche di Comandi in iOS, è quella per cui l'output di ogni modulo diventa l'input del modulo successivo.
In questo modo ogni operazione può essere elaborata da singole operazioni modulari per ottenere un output finale molto complesso rispetto all'input iniziale.
Il tutto può essere impacchettato in un'applicazione autonoma utilizzabile nel sistema operativo come se fosse un software di terze parti.

Quello che segue è un esempio modulare di base che, partendo da una serie di documenti trascinati mediante Drag And Drop sull'icona dall'applicazione effettua due operazioni in sequenza:

  1. Riceve l'elenco iniziale ed aggiunge un numero a due cifre all'inizio del nome originario di ogni singolo file
  2. Riceve l'output dal precedente modulo ed aggiunge, a sua volta, un prefisso testuale ad ogni singolo file

Per effettuare le operazioni sopra indicate occorre utilizzare tre moduli di Automator, ovvero il modulo Ottieni elementi Finder selezionati e due distinte istanze del modulo Rinomina elementi del Finder i quali, rispettivamente, effettuano le operazioni Rendi sequenziale e Aggiungi testo.
Nell'immagine sotto riportata ho distinto i tre moduli con colori differenti per evidenziare quanto sopra.

Tre_Moduli_Automator_colori.png

Figura 8: Moduli colorati in Automator

Ecco il procedimento in dettaglio:

  1. Dopo l'apertura di Automator scegliamo di creare un'Applicazione e dalla colonna di sinistra Azioni alla voce File e cartelle aggiungiamo, con un Drag & Drop, il modulo Ottieni elementi del Finder selezionati (rettangolo AZZURRO).
  2. Aggiungiamo il modulo Rinomina elementi del Finder (rettangolo ROSSO) scegliendo l'operazione Rendi sequenziale con le opzioni aggiungi numero a nome elemento esistente, separato da spazio, posiziona il numero prima del nome, formato a due o tre o più numeri (ovvero tipo 01 o 001 ecc, a seconda del numero di documenti da produrre).
  3. Aggiungiamo lo stesso modulo Rinomina elementi del Finder (rettangolo GIALLO) ma, questa volta, con l'operazione Aggiungi testo ed aggiungere il prefisso DOC.

Nell'immagine seguente ho riportato una videata più ampia delle impostazioni di Automator.

Automator_macOS.png

Figura 9: Dettaglio su Automator

A questo punto si può salvare la nuova applicazione ed utilizzarla ogni volta che serva con un semplice trascinamento dei files da rinumerare dentro la relativa icona.

Ovviamente si possono introdurre varianti e modifiche che rendano l'applicazione più versatile e articolata, ma il concetto è sempre quello sopra descritto.

6 Linux, Thunar ed Espressioni Regolari

Il sistema operativo libero Linux o meglio, secondo la definizione completa della Free Software Foundation, GNU/Linux, ha una vastissima scelta di applicazioni open source, sia in modalità grafica che a linea di comando.
Tra queste si trova anche un software di numerazione automatica dall'aspetto molto simile a quello già esaminato per Windows al paragrafo dedicato ad Ant Renamer e che consente di effettuare sostanzialmente le medesime operazioni.
Trattasi di Thunar nella modalità bulk.

L'installazione di Thunar può avvenire senza alcun problema utilizzando le risorse interne delle distribuzioni più diffuse.
Ad esempio nelle distribuzioni basate su Debian si digita `sudo apt install thunar` nella linea di comando ed il sistema procedere al download di tutte le librerie e della relativa applicazione in totale automatismo.

Attenzione: il lancio dell'applicazione deve avvenire in modalità bulk, ovvero con il seguente comando: `thunar -B`. Se, infatti, si lanciasse `thunar` in modalità normale si avrebbe un gestore di file.

La rinumerazione con Thunar può avvenire in uno o due passaggi, a seconda che si desideri avere soltanto il numero progressivo o anche il prefisso DOC prima del numero stesso
Il primo passaggio è illustrato nell'immagine seguente.

immagine_thunar1.png

Figura 10: Thunar, prima parte dell'operazione

Si può notare sul lato sinistro un elenco di documenti NON numerati e sul lato destro lo stesso elenco con l'anteprima di numerazione progressiva.
Prima di lanciare l'operazione si può sistemare l'elenco mediante trascinamento con il mouse.
Occorre selezionare, tra le varie opzioni disponibili, quella denominata Numerazione; scegliere il Formato dei numeri, nel nostro caso con doppia cifra; scegliere il Formato del teste, nel nostro caso con la successione Numero - Testo - Vecchio nome; scegliere, se desiderato, un testo separatore (in questo caso ho scelto un semplice punto) e, alla fine, premere il pulsante Rinomina file in basso a destra.

La numerazione potrebbe anche terminare a questo punto se si ritenesse sufficiente il solo numero progressivo.
Se, invece, si vuole anche aggiungere il prefisso DOC allora occorre eseguire un secondo semplice passaggio utilizzando le Espressioni Regolari, come da illustrazione seguente:

immagine_thunar2.png

Figura 11: Thunar, seconda parte dell'operazione

Come desumibile dall'immagine sopra riportata, nel secondo passaggio troviamo una sorta di sintesi delle operazioni viste nei due sistemi operativi precedenti.
In particolare utilizziamo, come già descritto nel caso di Automator di macOS, il risultato della prima elaborazione per iniziare subito la seconda.
Inoltre ritroviamo la funzione Cerca e sostituisci ed impostare il criterio di ricerca con le Espressioni Regolari, come già descritto nel paragrafo dedicato ad Ant Renamer.

Per la descrizione analitica delle Espressioni Regolari richiamo il paragrafo dedicato all'analisi delle espressioni regolari in Ant Renamer.

L'analisi delle formule è molto simile a quella già sopra descritta:

  • Nel campo Cerca inseriamo la formula (^\d) che significa: selezionare il primo (^=il primo) carattere numerico (d=digital) e trasformiamolo in un capturing group (ovvero un gruppo delimitato da parentesi tonde) che verrà automaticamente denominato con la variabile $1.
  • Nel campo Sostituisci con inseriamo il prefisso DOC seguito dal capturing group creato precedente, ovvero da $1.

L'esito finale è esattamente il risultato desiderato.

Grazie per l'attenzione.

Autore: Avv. Franco Pasut, Novara

Created: 2018-11-15 gio 21:28

Commenti

Post popolari in questo blog

PCT e collegamenti ipertestuali tra atti e documenti in Word, Writer e LaTeX

Atti giudiziari: utilizzare le variabili al posto dei nomi propri in Word, Writer e LaTeX

OCR PORTABILE E GRATUITO