Provided by: manpages-pl_0.7-2_all 

NAZWA
mcedit - terminalowy edytor tekstowy dla systemów Unixowych
SKŁADNIA
mcedit [[+liczba] plik [-bcCdfhstVx?]]
OPIS
Uwaga! To tłumaczenie może być nieaktualne!
mcedit jest dowiązaniem (link) do mc, Midnight Commandera, wymuszając na nim natychmiastowe uruchomienie
wewnętrznego edytora. Edytor ten jest terminalową wersją cooledit, odrębnego edytora X-window.
OPCJE
+liczba
Przechodzi do wiersza o zadanym numerze (nie należy umieszczać odstępu pomiędzy znakiem "+" a
liczbą).
-b Wymusza wyświetlanie czarno-białe.
-c Wymusza tryb kolorowy na terminalach, dla których mcedit domyślnie używa trybu czarno-białego.
-C <słowo_kluczowe>=<kolor_znaku>,<kolor_tła>:<słowo_kluczowe>=...
Używane do definiowania innego zestawu kolorów, gdzie słowo_kluczowe jest jednym z:
normal, selected, marked, markselect, errors, reverse menu, menusel, menuhot, menuhotsel i
gauge.
Kolory są opcjonalne i mogą przyjmować wartości:
black, gray, red, brightred, green, brightgreen, brown, yellow, blue, brightblue, magenta,
brightmagenta, cyan, brightcyan, lightgray oraz white.
Więcej informacji znajdziesz w sekcji Kolory w mc.1
-d Wyłącza obsługę myszy.
-f Wyświetla wkompilowane ścieżki poszukiwania plików Midnight Commandera.
-t Używane tylko, gdy kod został skompilowany ze Sland i terminfo; powoduje, że Midnight Commander
użyje wartości zmiennej TERMCAP do uzyskania informacji o terminalu zamiast informacji o
systemowej bazie danych terminali.
-V Wyświetla wersję programu.
-x Wymusza tryb xterm. Używane przy uruchamianiu na terminalach potrafiących obsłużyć xterm (dwa
tryby ekranu i zdolne wysyłać sekwencje specjalne myszy).
FUNKCJE
Wewnętrzny edytor plików posiada większość funkcji powszechnie używanych edytorów pełnoekranowych. Ma
rozszerzalny limit wielkości pliku (do szesnastu megabajtów) i bezproblemowo edytuje pliki binarne.
Obecnie obsługuje funkcje: kopiowania, przesuwania, usuwania, wycinania i wstawiania bloków tekstu;
klawisz dla klawisza cofania zmian (key for key undo); rozwijalne menu; wstawianie pliku; definiowanie
makr; wyszukiwanie i zastępowanie z obsługą wyrażeń regularnych (oraz własne wyszukiwanie i zastępowanie
scanf-printf); przełącznik wstawianie-nadpisywanie; przenoszenie wyrazów (word-wrap); różnorodne funkcje
tabulacji; podświetlanie składni dla różnych typów plików; oraz możliwość potokowania bloków tekstu
poprzez polecenia powłoki jak indent czy ispell.
KLAWISZE
Edytor jest bardzo prosty w użytkowaniu i nie wymaga szkolenia. Żeby zobaczyć, co robi który klawisz, po
prostu zajrzyj do odpowiedniego menu rozwijalnego. A oto opis pozostałych klawiszy:
Ruch kursora przy wciśniętym Shift podświetla tekst (tylko na konsoli Linuksa).
Ctrl-Ins kopiuje do pliku ~/.cedit/cooledit.clip, zaś
Shift-Ins wkleja z pliku ~/.cedit/cooledit.clip.
Shift-Del wycina do ~/.cedit/cooledit.clip,
a Ctrl-Del usuwa podświetlony tekst - wszystkie tylko na konsoli Linuksa.
Klawisz uzupełnienia (completion key) (patrz mc.1) wykonuje również twardy Return bez automatycznego
wcięcia. Działa także podświetlanie myszką i możesz unieważnić je jak zwykle przytrzymując klawisz Shift
podczas ciągnięcia myszką, by włączyć normalne podświetlanie myszą terminala.
W celu zdefiniowania makra naciśnij Ctrl-R i użyj sekwencji klawiszy, jaką chciałbyś zarejestrować. Na
koniec naciśnij powtórnie Ctrl-R. Możesz teraz przypisać makro do dowolnego klawisza naciskając go.
Makro zostanie wykonane, gdy naciśniesz Ctrl-A a następnie przypisany klawisz. Makro wykonywane jest
również po naciśnięciu Meta, Ctrl lub Esc i przypisanego klawisza, pod warunkiem, że sekwencja ta nie
jest używana do obsługi innej funkcji. Po zdefiniowaniu makra zapisywane są w pliku
~/.cedit/cooledit.macros. Nie modyfikuj go, chyba że nie zamierzasz ponownie używać makr w tej samej
sesji edycji, gdyż mcedit buforuje definicje makr w pamięci. mcedit nadpisuje makro jeżeli makro
przypisane do tego samego klawisza już istnieje, więc nie będziesz musiał zmieniać tego pliku. Musisz
ponownie uruchomić inne działające procesy edytora, by zadziałały zmienione makra.
F19 sformatuje podświetlony kod C. W celu włączenia tej cechy stwórz plik wykonywalny
.cedit/edit.indent.rc w swoim katalogu domowym zawierający:
#!/bin/sh
# Użyj $HOME zamiast ~ jeśli nie działa.
# Być może będziesz też musiał użyć innej składni
# przekierowania wyjścia
usr/bin/ident -kr -pcs ~/.cedit/cooledit.block >& /dev/null
cat /dev/null > ~/.cedit/cooledit.error
C-p w podobny sposób uruchomi ispell na bloku tekstu. Odpowiednim plikiem jest .cedit/edit.spell.rc.
#!/bin/sh
# Użyj $HOME zamiast ~ jeśli nie działa.
# Być może będziesz też musiał użyć innej składni
# przekierowania wyjścia
/usr/local/bin/ispell ~/.cedit/cooledit.block >& /dev/null
cat /dev/null > ~/.cedit/cooledit.error
PRZEDEFINIOWYWANIE KLAWISZY
Klawisze mogą być redefiniowane w menu opcji Midnight Commandera.
PODŚWIETLANIE SKŁADNI
Od wersji 3.6.0 cooledit posiada podświetlanie składni. Oznacza to, że słowa kluczowe i elementy języka
(jak komentarze C, stałe łańcuchowe itd.) podświetlane są różnymi kolorami. Poniższy fragment wyjaśnia
format pliku ~/.cedit/syntax.
Plik ~/.cedit/syntax jest ponownie przeglądany przy otwieraniu w edytorze każdego nowego pliku. Zawiera
on reguły podświetlania, każdą w osobnej linii, i definiuje, jakie słowa kluczowe będą podświetlane jakim
kolorem. Plik jest podzielony na sekcje, z których każda rozpoczyna się linią z poleceniem file
zakończonym wyrażeniem regularnym. Wyrażenie regularne określa nazwę pliku, do jakiego odnosi się dany
zestaw reguł.
Po nim następuje opis wyświetlany po lewej stronie okna edytora, objaśniający użytkownikowi typ pliku.
Trzecim, opcjonalnym argumentem jest wyrażenie regularne dopasowujące pierwszą linię tekstu pliku. Dane
reguły zostaną wczytane jeśli dopasowano nazwę pliku bądź pierwszą linię tekstu.
Sekcja kończy się z początkiem kolejnej sekcji. Każda sekcja podzielona jest na konteksty, a każdy
kontekst zawiera reguły. Kontekst jest zakresem wewnątrz tekstu, do którego odnosi się konkretny zestaw
reguł. Na przykład, obszar w obrębie komentarza w stylu C (tj.pomiędzy /* a */) ma swój własny kolor. To
jest kontekst, mimo iż nie będzie miał w środku innych reguł, gdyż raczej nie ma niczego, co chcelibyśmy
podświetlić wewnątrz komentarza C.
Prosta sekcja programu w C może wyglądać tak:
file .\*\\.c C\sProgram\sFile (#include|/\\\*)
wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_
# kolory domyślne
context default
keyword whole if 24
keyword whole else 24
keyword whole for 24
keyword whole while 24
keyword whole do 24
keyword whole switch 24
keyword whole case 24
keyword whole static 24
keyword whole extern 24
keyword { 14
keyword } 14
keyword '*' 6
# komentarze C
context /\* \*/ 22
# dyrektywy preprocesora C
context linestart # \n 18
keyword \\\n 24
# stałe łańcuchowe C
context " " 6
keyword %d 24
keyword %s 24
keyword %c 24
keyword \\" 24
Każdy kontekst rozpoczyna się linią postaci:
context [exclusive] [whole|wholeright|wholeleft] [linestart] ogranicznik [linestart] ogranicznik
[kolor_znaków] [kolor_tła]
Jedynym wyjątkiem jest pierwszy kontekst. Musi on rozpoczynać się poleceniem
context default [kolor_znaków] [kolor_tła]
albo cooledit zwróci błąd.
Opcja linestart nakazuje, by ogranicznik zaczynał się od początku linii.
Opcja whole określa, że ogranicznik musi być całym wyrazem. Całe wyrazy są tworzone z zestawu znaków,
który może zostać zmieniony w dowolnym miejscu pliku przy pomocy polecenia wholechars. Polecenie
wholechars umieszczone na samym początku ustawia zestaw znaków dokładnie na jego wartość domyślną i w
związku z tym mogłoby być pominięte. Możesz użyć opcji wholeleft dla wskazania, że słowo musi być pełne
tylko z lewej strony, i podobnie dla prawej. Lewy i prawy zestaw znaków może być ustawiony odrębnie przy
pomocy wholechars [left|right] characters
Opcja exclusive powoduje, że podświetlony zostanie tekst pomiędzy ogranicznikami, ale nie one same.
Każda reguła jest linią postaci:
keyword [whole|wholeright|wholeleft] [linestart] łańcuch znakowy kolor_znaków [kolor_tła]
Łańcuchy znakowe kontekstu i słów kluczowych są interpretowane, tak że możesz użyć tabulatorów i spacji
przy pomocy sekwencji \t i \s. Znaki nowej linii i \ są wyszczególniane przy pomocy odpowiednio \n i \\.
Wynika to z tego, że separatorem jest biały znak, zatem nie może on zostać użyty wprost. Również znak *
musi być podany jako \*. Samo * jest znakiem uogólniającym, który dopasowuje dowolną liczbę znaków. Na
przykład
keyword '*' 6
koloruje wszystkie jednoznakowe stałe C na zielono. Mógłbyś również użyć
keyword "*" 6
do pokolorowania stałych łańcuchowych, z wyjątkiem tego, że dopasowany łańcuch nie może kończyć się w
innej linii. Znaki uogólniające mogą być też użyte wewnątrz ograniczników kontekstu, ale nie możesz użyć
znaku uogólniającego jako pierwszego lub ostatniego.
Godna uwagi jest linia
keyword \\\n 24
Linia ta definiuje słowo kluczowe zawierające znak \ oraz znak nowej linii. Ponieważ słowa kluczowe mają
wyższy priorytet niż ograniczniki kontekstu, to słowo kluczowe zapobiega temu, by kontekst kończył się na
końcu linii, jeśli linia kończy się na \. Umożliwia zatem prawidłowe podświetlenie dyrektywy preprocesora
C nakazującej kontynuację w kolejnej linii.
Kolory są numerowane od 0 do 26. Możesz też posłużyć się dowolną z nazw kolorów wyszczególnionych w
pliku /usr/lib/X11/rgb.txt, ale tylko w wersji jednowyrazowej. Lepiej jest pozostać przy kolorach
wyrażonych liczbowo, by ograniczyć użycie palety kolorów.
Komentarza mogą być umieszczane w odrębnych liniach; zaczynają się one od znaku #.
Z powodu prostoty rozwiązania, jest w nim trochę zawikłań, które nie zostaną poprawnie obsłużone, ale nie
są one zbyt irytujące. Na ogół przy pomocy powyższych prostych reguł obsługiwany jest szeroki wachlarz
całkiem skomplikowanych sytuacji. Dobrze jest przyjrzeć się plikowi składni, by zaczerpnąć pomysły
prostych trików, jakie można wykorzystać przy odrobinie wyobraźni. Jeżeli nie możesz uporać się z
regułami, jakie zakodowałem, a sądzisz, że masz regułę, która może być przydatna, wyślij mi, proszę, e-
mail ze swoim życzeniem. Nie proś jednak o obsługę wyrażeń regularnych, gdyż jest to stanowczo
niemożliwe.
Użyteczną wskazówką może być praca przy maksymalnym wykorzystywaniu możliwości zamiast prób robienia
rzeczy, z którymi ta implementacja sobie nie radzi. Pamiętaj również, że celem podświetlania składni
jest zmniejszenie błędów przy programowaniu, a nie pokazanie ładnego kodu.
KOLORY
Domyślne kolory mogą być zmienione przez dodanie do zmiennej środowiska MC_COLOR_TABLE. Pary kolorów
znaków i tła mogą być określone na przykład przy pomocy
MC_COLOR_TABLE="$MC_COLOR_TABLE:editnormal=lightgray,black:editbold=yellow,black:editmarked=black,cyan"
OPCJE
Obecnie większość opcji może zostać ustawiona w oknie dialogowym opcji edytora. Patrz menu Options
(Opcje). Objaśnione poniżej opcje zdefiniowane są w .mc.ini i mają oczywiste odpowiedniki w oknie
dialogowym. Możesz je zmieniać, by zmienić zachowanie edytora, zmieniając plik. Jeżeli nie podano
inaczej, to tradycyjnie 1 ustawia włącza opcję, 0 ją wyłącza.
use_internal_edit
Ignorowana przy wywoływaniu mcedit.
editor_key_emulation
1 dla klawiszy Emacsa, 0 dla zwykłych klawiszy Cooledit.
editor_tab_spacing
Długość znaku tabulacji. Domyślnie 8. Powinieneś unikać używania innych wartości, gdyż większość
innych edytorów i przeglądarek tekstu zakłada tabulatory długości 8. Posłuż się opcją
editor_fake_half_tabs chcąc symulować mniejsze odstępy tabulacji.
editor_fill_tabs_with_spaces
Nigdy nie wstawiaj znaków tabulacji. Wstaw zamiast nich odstępy (ASCII 20h) wypełniające zadany
rozmiar tabulacji.
editor_return_does_auto_indent
Automatyczne wcięcia. Naciśnięcie Return przesuwa kolejnymi pozycjami tabulacji aż do osiągnięcia
takiego samego wcięcia, jak w pierwszej poprzedzającej linii zawierającej tekst.
editor_backspace_through_tabs
Pojedyncze naciśnięcie Backspace usuwa wszystkie odstępy aż do lewego marginesu (jeśli nie ma
tekstu pomiędzy kursorem a lewym marginesem).
editor_fake_half_tabs
Emuluje połówki tabulacji. Dla potrzebujących tabulacji z krokiem 4, ale bez zmiany rozmiaru
tabulacji z domyślnego 8 (kod będzie tak samo sformatowany przy wyświetlaniu przez inne programy).
W trakcie edycji pomiędzy tekstem a lewym marginesem przesuwanie i wstawianie tabulacji będzie
zachowywać się tak, jakby krokiem tabulacji było 4. W rzeczywistości do optymalnego wypełniania
będą używane odstępy i zwykłe tabulatory. Przy edycji w innych miejscach wstawiany jest zwykły
tabulator.
editor_option_save_mode
(0, 1 lub 2.) Tryb zachowywania (patrz również menu opcji) pozwala na zmianę metody zapisywania
pliku. Zachowywanie szybkie (0) zapisuje plik natychmiast, obcinając (trunctate) plik dyskowy do
długości zerowej (tj.wymazując go) i zapisując do niego zawartość edytora. Metoda ta jest szybka,
ale niebezpieczna, gdyż błąd systemowy podczas zapisu pliku pozostawi częściowo zapisany plik,
prawdopodobnie uniemożliwiając odzyskanie danych. Użycie opcji zachowywania bezpiecznego (1)
włącza tworzenie pliku tymczasowego, do którego wstępnie zapisywana jest zawartość zmienionego
pliku. W przypadku kłopotów pierwotny plik jest nienaruszony. Po pomyślnym zapisaniu pliku
tymczasowego zmieniana jest jego nazwa na nazwę pliku pierwotnego, powodując jego zastąpienie.
Najbezpieczniejszą metodą jest tworzenie kopii zapasowych (2). Kopia zapasowa tworzona jest przed
dokonaniem jakichkolwiek zmian. W oknie dialogowym możesz podać własne rozszerzenie plików kopii.
Zauważ, że podwójne zachowanie pliku zastąpi zarówno kopię zapasową jak i pierwotny plik.
RÓŻNE
(Wyszukiwanie i zastępowanie scanf poprzednio nie działało poprawnie. W obecnej edycji problemy z
wyszukiwaniem i zastępowaniem zostały usunięte.)
Możesz użyć wyszukiwania i zastępowania typu scanf do wyszukania i zastąpienia łańcucha znakowego w
formacie C. Przejrzyj najpierw strony podręcznika systemowego omawiające sscanf i sprintf, by zapoznać
się z opisem budowy formatu łańcuchowego i jego działaniem. A oto przykład: załóżmy, że chcesz zamienić
wszystkie wystąpienia, powiedzmy, otwierającego nawiasu, trzech oddzielonych przecinkami liczb i nawiasu
zamykającego, na słowo czerwone, trzecią z liczb, słowo czarne i drugą z liczb. Powinieneś wówczas
wypełnić okno dialogowe Replace (zastąp) jak niżej:
Enter search string
(%d,%d,%d)
Enter replace string
czerwone %d czarne %d
Enter replacement argument order
3,2
Ostatnia linia nakazuje, by w miejsce pierwszej i drugiej liczby zostały użyte trzecia a następnie druga
z liczb.
Zaleca się użycie tej funkcji z włączonym potwierdzaniem zastępowania (Prompt On Replace), gdyż
dopasowanie jest znalezione, gdy liczba znalezionych argumentów odpowiada liczbie podanych, co nie zawsze
jest rzeczywistym dopasowaniem. Ponadto scanf traktuje białe znaki jako "rozciągliwe". Zauważ, iż format
scanf %[ jest bardzo przydatny do wyszukiwania łańcuchów znakowych i białych znaków.
Edytor wyświetla także znaki spoza USA (non-US) (o kodach od 160). Przy modyfikacji plików binarnych
powinieneś w menu opcji Midnight Commandera ustawić liczbę bitów wyświetlania (display bits) na 7, co
zapewni porządne wyświetlanie odstępów.
PLIKI
/opt/gnome/mc.hlp
Plik pomocy programu.
/opt/gnome/lib/mc/mc.ini
Ogólnosystemowy plik konfiguracyjny Midnight Commandera, używany wyłącznie, gdy użytkownik nie
posiada własnego pliku ~/.mc.ini.
/opt/gnome/lib/mc/mc.lib
Globalne ustawienia Midnight Commandera. Ustawienia w tym pliku są globalne dla każdej sesji
Midnight Commandera. Przydatny do zdefiniowania ustawień terminala obowiązujących dla całego
systemu (site-global).
$HOME/.mc.ini
Prywatna konfiguracja użytkownika. Jeśli istnieje, to konfiguracja odczytywana jest z tego właśnie
pliku, zamiast z ogólnosystemowego pliku startowego.
$HOME/.cedit/
Tymczasowy katalog użytkownika. Przetwarzane i zapisywane są w nim polecenia operujące na blokach
tekstu.
LICENCJA
Niniejszy program jest rozpowszechniany na warunkach licencji GNU General Public Licence opublikowanych
przez Free Software Foundation. Wbudowana pomoc Midnight Commandera zawiera Licencję, w szczególności
zastrzeżenie dotyczące braku gwarancji.
DOSTĘPNOŚĆ
Najświeższą wersję programu odnajdziesz na
ftp.nuclecu.unam.mx w katalogu /linux/local
oraz w Europie:
na sunsite.mff.cuni.cz w katalogu /GNU/mc
i na ftp.teuto.de w katalogu /lmb/mc.
Wersję dla X Window można znaleźć na
sunsite.unc.edu w katalogu /pub/Linux/apps/editors/X
lub też na argeas.argos.hol.gr w /pub/unix/cooledit.
PATRZ TAKŻE
cooledit(1), mc(1), gpm(1), terminfo(1), scanf(3).
AUTORZY
Twórcą edytora wbudowanego w program Midnight Commander jest Paul Sheer (psheer@obsidian.co.za).
BŁĘDY
Więcej szczegółów znajdziesz w pliku README.edit dostarczanym w pakiecie dystrybucyjnym.
INFORMACJE O TŁUMACZENIU
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne.
W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub
funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
man --locale=C 1 mcedit
Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem
http://sourceforge.net/projects/manpages-pl/.
30 stycznia 1997 mcedit(1)