In passato la codifica predefinita dei caratteri di blocco note era settata su ANSI mentre attualmente è regolata su UTF-8 ma ciò non significa che non si possa salvare un testo con la codifica ANSI; tuttavia se ne devi salvare molti, è scocciante dover scegliere tale codifica ad ogni sessione di lavoro e di seguito trovi come impostarla come predefinita in blocco note di windows 10.
Conoscere com’è settato il nostro blocco note
Ci sono più modi e qui ne scrivo due.
1) apri blocco note e guarda la barra di stato che si trova in basso; chi adopera il lettore di schermo jaws dovrà leggerla con il cursore omonimo. se non fosse visibile, attivala dal menu Visualizza. L’ultimo elemento a destra della barra di stato mostra la codifica dei caratteri che dalla versione 1903 di windows 10 è settato su UTF-8, prima era su ANSI;
nota: la versione di windows da cui parte la codifica in UTF-8 l’ho trovata in rete e non ho controlllato se davvero inizia da quella.
2) apri un file vuoto in blocco note e facoltativamente scrivi qualcosa. Dal menu File scegli Salva con nome e tra le opzioni controlla com’è regolata la voce Codifica.
Esperimento
Di aprire un file vuoto non l’ho scritto a caso ed il motivo è presto detto.
Per default la codifica dei caratteri di blocco note in windows 7 è settata su ANSI. Se ce l’hai ancora, apri blocco note di windows 7 e produci due piccoli file salvandoli con la codifica predefinita, ossia in ANSI. Il primo dovrà essere senza lettere accentate che invece metterai nel secondo. Metti i file in una chiavetta e vai in windows 10 dove li aprirai semplicemente dando invio sopra ai txt. Quando apri il primo, quello senza lettere accentate, la barra di stato mostrerà la codifica in UTF-8 mentre aprendo il secondo, quello con lettere accentate, la codifica sarà in ansi ed ecco la spiegazione parziale che mi sono dato.
Entro un certo limite blocco note riconosce la codifica di un file; il primo è senza lettere accentate e quindi utilizza solo la prima parte della tabella dei caratteri e i codici di questa prima parte sono comuni a più tabelle. Ad esempio, il codice 65 corrisponde alla A maiuscola sia nella tabella ANSI che in quella UTF-8. In quel caso blocco note non sa che codifica scegliere e ci mette quella di default. Il secondo file usa anche lettere accentate e quindi anche la seconda parte della tabella dei caratteri e questa seconda parte contiene codici specifici per ogni codifica. Ad esempio, il codice 135 della tabella UTF-8 non produrrà lo stesso segno del codice 135 della tabella ANSI. In questo caso blocco note è agevolato nel scegliere la codifica dei caratteri anche se mi rimane oscuro come fa a decidere se il codice 135 appartiene a una o all’altra codifica.
Personalmente ho fatto anche l’esperimento inverso e cioè di scrivere due file come sopra ma con blocco note di windows 10 portandoli poi in windows 7 che conferma quanto appena scritto, provare per credere. attenzione però che la barra di stato di blocco note in windows 7 non mostra la codifica dei caratteri e quindi per conoscerla dovrai usare il menu File e Salva con nome come scritto sopra.
Cambiare la codifica predefinita
Per cambiare la codifica predefinita dei caratteri di blocco note in windows 10 è necessario mettere le mani nel registro e quindi consiglio vivamente d’avere un’immagine della partizione di sistema prima di farlo. E’ anche possibile salvare il registro o solo la chiave di registro in cui si dovrà lavorare ma personalmente sono cose che non faccio mai perché se qualcosa va storto preferisco sempre tornare alla situazione precedente tramite un’immagine della partizione.
1) da Esegui scrivi
regedit
e con le modalità viste in passato vai nel percorso:
HKEY_CURRENT_USER_SOFTWARE\Microsoft\Notepad
2) dal menu di contesto oppure dal menu Modifica scegli il sottomenu Nuovo e da questo seleziona Valore DWORD (32 bit);
3) apparirà il nuovo valore che non è strettamente necessario cancellare perché quando scrivi si annulla da solo e quindi digita:
iDefaultEncoding
seguito da invio;
4) a questo punto ti troverai sull’ultimo elemento della chiave Notepad che sarà idefaultEncoding settato su 0 e per il settaggio di blocco note in ansi puoi anche lasciarlo così e l’effetto della regolazione lo si nota anche senza riavviare il computer ed andando in blocco note vedrai che è settato su ANSI.
Attenzione: aprendo novamente il registro, sarai immediatamente sulla chiave Notepad ma una volta che ti sposti con tab per gli elementi che la compongono vedrai che iDefaultEncoding non sarà più l’ultimo ma, ad esempio, l’ottavo. Per le stranezze di windows, a parità di computer ma con dischi diversi configurati però con lo stesso sistema ho notato che in un disco gli elementi sono sempre quattordici mentre nell’altro capita che scendano a dodici; comunque quando sono a quattordici iDefaultEncoding risulta essere l’ottavo ma con le stranezze di windows ti conviene prendere questo numero con beneficio d’inventario e cercare bene iDefaultEncoding se devi modificarne il valore.
Tornare nel registro e nella chiave Notepad, ossia il nome del file di blocco note, ti può servire se al posto di ANSI desideri un’altra codifica predefinita e nella tabella seguente trovi i valori da inserire in iDefaultEncoding da cambiare scegliendo Modifica dal menu di contesto.
Valore di iDefaultEncoding | |
0 oppure 1 | ANSI (default 0) |
2 | UTF-16 LE |
3 | UTF-16 BE |
4 | UTF-8 BOM |
5 | UTF-8 |
Visivamente non lo so, ma nell’usare 0 oppure 1 per la codifica Ansi c’è una piccola differenza quando si usa il lettore di schermo jaws: con 0 quando usi Salva con nome e vai sull’elenco delle codifiche possibili jaws legge il termine ANSI solo quando premi freccia giù nella casella combinata mentre con 1 legge ANSI direttamente.
Oltre a modificare il valore a 5 come visto sopra, per ritornare ad UTF-8 come codifica predefinita è anche possibile cancellare l’elemento iDefaultEncoding scegliendo Elimina dal menu di contesto.
Una risposta su “Riportare la codifica predefinita dei caratteri ad ansi in blocco note di windows 10”
Sarà per gli aggiornamenti o per qualche bug di windows 10, ma contrariamente ad agosto 2022 adesso per ottenere la codifica ansi bisogna inserire esclusivamente il valore 1 nell’elemento iDefaultEncoding. Mettendolo a 0 si ottiene UTF-8.