Lista winnt@man.lodz.pl
[Lista archiwów] [Inne Listy]

Re: [WINNT] notepad - nowy plik ASCII

To: winnt@man.lodz.pl
Subject: Re: [WINNT] notepad - nowy plik ASCII
From: "Arek" <abcdek@poczta.onet.pl.usun_cde.invalid>
Date: Mon, 21 Feb 2022 22:06:11 +0100
Użytkownik "Adam Lubszczyk" <adam_l@poczta.onet.pl> napisał w wiadomości
d62400d1-d8b9-4c89-b35c-a27d5d7aec12n@googlegroups.com">news:d62400d1-d8b9-4c89-b35c-a27d5d7aec12n@googlegroups.com...
wtorek, 15 lutego 2022 o 09:12:45 UTC+1 Grzegorz Niemirowski napisał(a):

Tak czy siak w Twoim przypadku nie ma rozwiązania. Historycznie pliki
.txt
nie miały nigdzie zapisanego kodowania. Gdy wprowadzono UTF-8 wymyślono
dodawanie odpowiedniego nagłówka, tzw. BOM. Jest on opcjonalny. Stąd
zapisując plik w Notatniku możesz wybrać m.in. UTF-8 oraz UTF-8 z BOM. I
teraz najważniejsze. Jeśli mamy pusty plik txt o rozmiarze 0 bajtów,
czyli
bez BOM, to nie da się określić jakie on ma kodowanie. Nie ma po czym
zgadnąć. Trzeba jakieś przyjąć z góry. I Notatnik przyjmuje UTF-8. Mógłby
przyjmować ANSI, ale nie da się tego wymusić. Jak chcesz mieć domyślne
ANSI,
to zmień program. W Notatniku się nie da.


Da się.
notepad.exe   ma opcje  /A (ansi)  oraz /W (unicode UTF16)

Trzeba zmienić reakcję open dla pliku tekstowego.
Domyślną wartość w kluczu: HKEY_CLASSES_ROOT\txtfile\shell\open\command
z       %SystemRoot%\system32\NOTEPAD.EXE %1
na   %SystemRoot%\system32\NOTEPAD.EXE /A %1

Niestety notatnik przestaje wykrywać kodowanie pliku i zawsze używa ANSI

to dość logiczne

Może lepiej dodać sobie opcję otwierania w ANSI pod prawy klawisz.
Najprościej (bo potrzeba wartość typu REG_EXPAND_SZ)
zapisać klucz HKEY_CLASSES_ROOT\txtfile\shell\open\commanddo pliku reg .
Wyedytować plik zmieniając   ...\shell\open\command     na  np.
...shell\OtworzANSI\command
Wczytać  poprawiony plik reg i w REGEDIT  poprawić wartość domyślną dodając
opcję /A

Wpisałem, teraz w kluczu są 4: open, openANSI, print i printto. Jest nowa
pozycja w menu kontekstowym. Używając jej otwiera jako ANSI, chociaż
dla mnie zysk niewielki w porównaniu z "Zapisz jako".
Tak czy inaczej dzięki za wskazówkę, bo można przecież odwrócić role:
open = notepad /A a pod dodatkową pozycją otwieranie "po staremu"
i to mnie na razie urządza.

Arek


<Pop. w Wątku] Aktualny Wątek [Nast. w Wątku>