Wtyczka Kodowanie¶
Menu Kodowanie, służące do ponownego wczytania pliku w innym kodowaniu znaków albo do przekonwertowania go na inne kodowanie. Wewnętrznie edytor pracuje w UTF-8; ta wtyczka decyduje, jak bajty pliku są mapowane do i z tego kodowania.
Twój plik zachowuje swoje kodowanie¶
OctoEdit wykrywa kodowanie pliku przy otwarciu i zapisuje go z powrotem w tym
samym kodowaniu za każdym razem. Plik UTF-8 ze znacznikiem kolejności bajtów
zachowuje swój BOM, plik UTF-16 pozostaje w UTF-16, a plik w systemowej stronie
kodowej ANSI nie zostaje po cichu zamieniony na UTF-8 przy pierwszym Ctrl+S.
Kodowanie należy do dokumentu, a nie do tej wtyczki: poniższe menu je pokazuje i zmienia, a zapisu dokonuje rdzeń edytora. Dlatego konwersja jest traktowana jak każdy inny zapis — jest atomowa, obejmuje ją kopia zapasowa przy zapisie, a obserwator plików wie, że zmiana pochodzi od Ciebie.
Plik .editorconfig projektu z ustawionym charset nadal ma pierwszeństwo: to
decyzja zapisana dla całego projektu i przeważa nad tym, co mówiły bajty
pojedynczego pliku. Po takim zapisie dokument podaje to kodowanie jako swoje,
więc menu i pasek stanu nazywają to, co naprawdę jest na dysku.
Dwa rodzaje poleceń¶
To rozróżnienie ma znaczenie — jedno zmienia interpretację, a drugie zmienia to, w czym plik zostanie zapisany:
| Rodzina | Menu | Działanie |
|---|---|---|
| Interpretuj jako | Kodowanie ▸ <encoding> oraz Kodowanie ▸ Zestawy znaków ▸ <set> |
Ponownie wczytuje bajty pliku z dysku i dekoduje je wybranym kodowaniem, zastępując zawartość bufora, a wybrane kodowanie zapamiętuje na dokumencie. Użyj tego, gdy plik otworzył się jako „krzaczki”. Plik na dysku pozostaje nietknięty, dopóki go nie zapiszesz. |
| Konwertuj na | Kodowanie ▸ Konwertuj na <encoding> |
Oznacza dokument jako „do zapisania w tym kodowaniu” i oznacza go jako zmodyfikowany. Żadne bajty nie są jeszcze zapisywane — zapisz dokument, aby zastosować konwersję, albo zamknij go bez zapisywania, aby z niej zrezygnować. |
Kodowanie, którego aktualnie używa aktywny dokument, jest w menu zaznaczone
ptaszkiem: na najwyższym poziomie dla pozycji Unicode/ANSI, a wewnątrz
Kodowanie ▸ Zestawy znaków dla kodowań starszego typu. Znacznik podąża za
aktywną kartą, więc przełączanie dokumentów od razu pokazuje, co jest czym.
Pasek stanu pokazuje to samo kodowanie we własnym segmencie (UTF-8,
UTF-8-BOM, ANSI, Windows-1250, …) i również podąża za aktywnym
dokumentem — widzisz więc, czym jest plik, bez otwierania menu.
Dostępne kodowania¶
- Unicode: UTF-8, UTF-8-BOM, UTF-16 LE BOM, UTF-16 BE BOM.
- ANSI — lokalna, jednobajtowa strona kodowa systemu.
- Podmenu Zestawy znaków — kodowania starszego typu pogrupowane według języka: arabski, bałtycki, celtycki, środkowoeuropejski, chiński, cyrylica, wschodnioeuropejski, grecki, hebrajski, japoński, koreański, północnoeuropejski, tajski, turecki, wietnamski i zachodnioeuropejski.
Konwertuj na oferuje pięć podstawowych pozycji Unicode/ANSI. Strona kodowa starszego typu jest dostępna przez Interpretuj jako, a dokument wczytany w ten sposób jest zapisywany z powrotem w tej samej stronie kodowej.
Naprawianie zniekształconego pliku
Jeśli plik otwiera się jako bełkot, spróbuj Interpretuj jako z kodowaniem, którego się spodziewasz (np. jakiś zestaw znaków starszego typu). Gdy tekst wygląda poprawnie, użyj Konwertuj na UTF-8 i zapisz, aby przechować plik w nowoczesnym, przenośnym kodowaniu.