Jak ustawi
Jak ustawić kodowanie w plikach otwieranych przez mcedit?
Niedawno przesiadłem się na laptopie na Debiana Squeeze z kodowaniem UTF-8. Mam też drugą, zdalną maszynę z Debianem, z którą łączę się przez ssh gdzie używałem kodowania ISO-8859-2.
Oczywiście mc i wszystkie polecenia w konsoli wyglądały fatalnie. Zmieniłem więc na zdalnym komputerze lokalizację na pl_PL.UTF-8 i mc zaczął działać normalnie.
Problem jest jednak z plikami edytowanymi w mcedit. Wszystkie pliki *.txt i *.html, które znajdują się u mnie na serwerze są zakodowane w ISO-8859-2. Zamiast polskich znaków wyświetlają się w mcedit przez ssh kropki na czarnym tle. Znowu gdy zapiszę coś w mcedit to Apache wyświetla mi krzaczki. Nie chcę konwertować wszystkich plików ani mieszać w konfiguracji serwera apache - to za dużo roboty w moim przypadku.
Poszukuję tylko, jak zmienić ustawieniach mcedit żeby czytał i zapisywał prawidłowo.
Oczywiście mc i wszystkie polecenia w konsoli wyglądały fatalnie. Zmieniłem więc na zdalnym komputerze lokalizację na pl_PL.UTF-8 i mc zaczął działać normalnie.
Problem jest jednak z plikami edytowanymi w mcedit. Wszystkie pliki *.txt i *.html, które znajdują się u mnie na serwerze są zakodowane w ISO-8859-2. Zamiast polskich znaków wyświetlają się w mcedit przez ssh kropki na czarnym tle. Znowu gdy zapiszę coś w mcedit to Apache wyświetla mi krzaczki. Nie chcę konwertować wszystkich plików ani mieszać w konfiguracji serwera apache - to za dużo roboty w moim przypadku.
Poszukuję tylko, jak zmienić ustawieniach mcedit żeby czytał i zapisywał prawidłowo.
Zbuduj sobie własny program mc z obsługą wielu stron kodowych.
http://www.linuxfromscratch.org/blfs/vi ... al/mc.html
http://www.linuxfromscratch.org/blfs/vi ... al/mc.html
Którą masz wersję Debiana?
Pokaż też wynik polecenia
Sprawdziłem i na lenny i na squeeze - na obu mc jest skompilowane (z paczki) z obsługą wielu stron kodowych. Jest inna wersja.
U mnie na lennym "lewy Alt" + "e" nie działa, na squeeze - działa.
Obstawiałem, że zależy to od zawartości jednak nie.
Pokaż też wynik polecenia
Kod: Zaznacz cały
mcedit -V
U mnie na lennym "lewy Alt" + "e" nie działa, na squeeze - działa.
Obstawiałem, że zależy to od zawartości
Kod: Zaznacz cały
/etc/locale.gen
Wynik polecenia:
Po wciśnięciu alt + E otwiera mi się menu Edycja ale na lokalnym komputerze. Nie wiem jak posłać Alt + E przez ssh.
Mam nadzieję, że nie będę musiał wybierać tego kodowania za każdym razem.
Tymczasowo przeszedłem na vima ale nie zadowala mnie do końca dlatego chciałbym dopracować edytor mcedit.
Kod: Zaznacz cały
GNU Midnight Commander 4.6.2-pre1
Wirtualny System Plików: tarfs, extfs, cpiofs, ftpfs, fish
Z wbudowanym edytorem
Używanie biblioteki S-Lang zainstalowanej w systemie z bazą danych terminfo
Z domyślną obsługą podpowłoki
Z możliwością wykonywania zadań w tle
Z obsługą myszy w oknie xterma i na konsoli linuksowej
Z obsługą wielu języków
Z obsługą wielu stron kodowych
Data types: char 8 int 32 long 32 void * 32 off_t 64 ecs_char 8
Mam nadzieję, że nie będę musiał wybierać tego kodowania za każdym razem.
Tymczasowo przeszedłem na vima ale nie zadowala mnie do końca dlatego chciałbym dopracować edytor mcedit.
Coś wspólnego z tym "zamieszaniem" ma plik mc.charsets
Jego zawartość z systemu z działającym skrótem "lewy alt" + "e"
Ale to nie tylko to...
Jak się łączysz do ssh? Ja korzystam z putty
Dodane:
Doszukałem się znaczącej różnicy.
W squeeze, gdzie działa wybieranie strony kodowej mam MCEdit 4.7.0.9 natomiast w lennym gdzie nie ma okna wyboru strony kodoej (i nie działa skrót lewy alt+e) jest Cooledit v3.11.5.
Dodatkowo na squeeze kombinacja klawiszy ctrl+o wyłącza okno dając podgląd powłoki lecz nie można wpisać polecenia. Wciśnięcie jakiegokolwiek klawisza alfanumerycznego powoduje pojawienie się z powrotem okna edytora. Na lennym ctrl+o daje pełny dostęp do powłoki.
Na obu systemach mcedit jest linkiem symbolicznym do mc.
Jak sprawdzić co jest co? Otworzyć plik do edycji, F9 -> Plik -> Informacje o... (lub O programie...).
Jego zawartość z systemu z działającym skrótem "lewy alt" + "e"
Kod: Zaznacz cały
root@srv:~# cat /etc/mc/mc.charsets
ASCII 7-bit ASCII
ISO-8859-1 ISO 8859-1
ISO-8859-2 ISO 8859-2
ISO-8859-5 ISO 8859-5
CP1250 Windows 1250
CP1251 Windows 1251
CP437 CP 437
CP850 CP 850
CP852 CP 852
CP866 CP 866
KOI8-R KOI8-R
KOI8-U KOI8-U
UTF-8 UTF-8
Jak się łączysz do ssh? Ja korzystam z putty

Dodane:
Doszukałem się znaczącej różnicy.
W squeeze, gdzie działa wybieranie strony kodowej mam MCEdit 4.7.0.9 natomiast w lennym gdzie nie ma okna wyboru strony kodoej (i nie działa skrót lewy alt+e) jest Cooledit v3.11.5.
Dodatkowo na squeeze kombinacja klawiszy ctrl+o wyłącza okno dając podgląd powłoki lecz nie można wpisać polecenia. Wciśnięcie jakiegokolwiek klawisza alfanumerycznego powoduje pojawienie się z powrotem okna edytora. Na lennym ctrl+o daje pełny dostęp do powłoki.
Na obu systemach mcedit jest linkiem symbolicznym do mc.
Jak sprawdzić co jest co? Otworzyć plik do edycji, F9 -> Plik -> Informacje o... (lub O programie...).
Kombinujesz jak nie powiem co. Wystarczy przejrzeć opcje programu: Opcje -> Wyświetl bity: wybierasz rozwijaną listę i ustawiasz odpowiednie kodowanie. W systemie muszą być wybrane obie strony kodowe, których chcesz zamiennie używać. A w konsoli musisz używać fontów, które obsługują obydwie strony kodowe. Jest dużo domyślnych fontów i odpowiedniego kodowania, które obsługują utf8 a nie obsługują iso8859-2. Zainstaluj font terminus, jak nie masz.
Przedstaw wyniki z obydwu komputerów:
Przedstaw wyniki z obydwu komputerów:
Kod: Zaznacz cały
locale -a
dpkg -l | grep font