Memacs i edytor ED

Memacs    Edytor ED

Memacs

 

Program MEMACS jest edytorem tekstu. Jest on amigowską wersją programu MEMACS używanego na innych komputerach. Umożliwia on pracę na kilku tekstach i podstawowe operacje na tekście: wyszukiwanie i wymianę wyrazów, zmiana liter dużych na małe, itp. Nie pozwala jednak na zmianę rodzaju czcionki, jej kroju (pochylona, pogrubiona), numerowania stron i innych operacji związanych z "graficznym" wyglądem tekstu. Ilość możliwych do edycji tekstów jest ograniczona rozmiarem wolnej pamięci.

Najniższa linia okna pokazuje tytuł aktualnie obrabianego pliku. Nazwa "main" oznacza, że aktualnie obrabiana jest zawartość głównego bufora, której jeszcze nie nadano nazwy.

Program obsługiwany jest z rozbudowanego menu rozwijanego:

	- Project	- operacje odczytu i zapisu tekstów
- Edit - operacje edycji tekstów
- Window - kontrola okien edytora
- Move - przenoszenie kursora
- Line - operacje wykonywane na liniach tekstu
- Word - operacje wykonywane na słowach
- Search - operacje związane z wyszukiwaniem i zmianą wyrazów
- Extras - dodatkowe operacje - makroinstrukcje, argumenty liczbowe poleceń

Każda z komend menu posiada swój odpowiednik na klawiaturze. Kombinacja klawiszy jest widoczna obok polecenia w menu. W menu klawisz CONTROL jest reprezentowany przez symbol ^.

 

Menu - PROJECT

Rename
odpowiednik na klawiaturze CTRL-X-F, zmienia tytuł edytowanego tekstu
Read File
CTRL-X-CTRL-F - odczytuje z dysku plik o podanym tytule
Visit File
CTRL-X-CTRL-V - odczytuje plik z dysku i tworzy dla niego nowy bufor, nie niszcząc bufora aktualnie obrabianego
Insert File
CTRL-X-CTRL-I - odczytuje plik z dysku i dopisuje jego zawartość do tekstu aktualnie obrabianego
Save File
CTRL-X-CTRL-S - zapisuje plik na dysku pod nazwą, z którą został odczytany. Jeżeli plik tekst nie ma tytułu, wtświetlony zostanie komunikat NO FILE NAME
Save As File
CTRL-X-CTRL-W - zapisuje tekst na dysku, pytając przed zapisem o nazwę, pod którą tekst ma być nagrany
Save Mod
CTRL-X-CTRL-M - zapisuje do odczytanego z dysku i obrabianego tekstu wszystkie dokonane w nim zmiany
Save Exit
CTRL-X-CTRL-F - zapisuje wszystkie zmienione bufory na dysk i kończy pracę edytora
New CLI
otwiera na oknie edytora okno AmigaDos, w którym można używać rozkazów AmigaDos bez zakłócania pracy edytora
CLI Command
CTRL-X-! - umożliwia użycie rozkazu AmigaDos bez opuszczenia edytora. Na dole okna ukazuje się znak !. Teraz można napisać potrzebne polecenie i uruchomić je. Edytor czasowo zawiesza pracę, aż do momentu zakończenia wykonywania rozkazu AmigaDos
Quit
kończy pracę edytora

 

Menu - EDIT

Kill Region
CTRL-W - usuwa z tekstu zaznaczone bloki i kopiuje je do bufora przeznaczonego do tego celu. Blok tekstu zaznacza się poleceniem SET-MARK opisaną dalej
Yank
CTRL-Y - kopiuje zawartość bufora do tekstu rozpoczynając od aktualnej pozycji kursora
Set Mark
CTRL-@ - zaznacza w tekście początek bloku tekstu w miejscu, gdzie aktualnie znajduje się kursor. Koniec bloku zaznacza się przez ustawienie na nim kursora
Copy Region
ESC-W - kopiuje zaznaczony blok tekstu do bufora, nie usuwając bloku z tekstu
Upper Region
CTRL-X-CTRL-U - w zaznaczonym bloku tekstu zmienia wszystkie litery na duże
Lower Region
CTRL-X-CTRL-L - zmienia w bloku tekstu wszystkie litery na małe
List Buffers
CTRL-X-CTRL-B - wyświetla listę aktualnie znajdujących się w buforach tekstów, podając ich rozmiar w bajtach, tytuł i ścieżkę dodtępu
Select Buffer
CTRL-X-B - umożliwia wybór dokumentu, który ma być obrabiany, spośród dokumentów znajdujących się w buforach
Insert Buffer
ESC-CTRL-Y - dopisuje zawartość podanego bufora do aktualnie obrabianego tekstu, rozpoczynając od linii poniżej kursora
Kill Buffer
CTRL-X-K - usuwa zawartość wybranego bufora
Justify Buffer
CTRL-X-J - wyrównuje tekst do lewego marginesu - usuwa wszystkie spacje i tabulacje z lewej strony tekstu
Redisplay
CTRL-L - ponownie wyświetla zawartość okna sprzed dokonanej zmiany
Quote Char
CTRL-Q - umożliwia wstawienie do tekstu ciągu znaków, które będą traktowane jako polecenie.
Indent
CTRL-J - przenosi kursor do następnej linii pozostawiając taki sam akapit, jak w linii poprzedniej. Polecenie to można uzyskać także przez naciśnięcie klawisza HELP
Transpose
CTRL-T - zamienia miejscami dwa sąsiadujące znaki. Kursor musi być ustawiony na prawym znaku
Cancel
przerywa działanie poleceń

 

Menu - WINDOW

One Window
CTRL-X-1 - powiększa okno aktualnie obrabianego bufora na cały ekran
Split Window
CTRL-X-2 - dzieli aktualne okno tekstu na dwa o tej samej zawartości. To umożliwia edycję dwóch fragmentów tego samego teksu jednocześnie
Next Window
CTRL-X-N - przenosi kursor do następnego otwartego okna i umożliwia edycję zawartego w nim tekstu
Prev Window
CTRL-X-P - przenosi kursor do poprzedniego otwartego okna i pozwala na edycję w nim
Expand Window
CTRL-X-Z - dodaje jedną linię do aktualnego okna zmniejszając jednocześnie okno sąsiednie
Shrink Window
CTRL-X-CTRL-Z - zmniejsza aktualne okno o jedną linię dodając tę do okna sąsiedniego
Next W Page
ESC-CTRL-V - wyświetla następną stronę (fragment tekstu obejmowany w rozmiarach okna) obrabianego tekstu
Prev W Page
CTRL-X-V - wyświetla poprzednią stronę tekstu

 

Menu - MOVE

Top of Buffer
ESC-< - przenosi kursor na początek aktualnego tekstu
End of Buffer
ESC-> - przenosi kursor na koniec tekstu
Top of Window
ESC-, - przenosi kursor na początek tekstu obejmowanego przez okno
End of Window
ESC-. - przenosi kursor na koniec tekstu obejmowanego przez okno
Goto Line
CTRL-X-CTRL-G - przenosi kursor do linii o podanym numerze
Swap Dot&Mark
CTRL-X-CTRL-X - zamienia miejscami kursor i zaznaczony początek bloku tekstu
Next Page
CTRL-V - przesuwa tekst w oknie tak, że kursor po przesunięciu znajduje się na początku poprzedniej strony
Prev Page
ESC-V - przesuwa tekst w oknie tak, że po przesunięciu kursor znajduje się na początku poprzednie strony
Next Word
ESC-F - przenosi kursor do przodu, do następnego niealfanumerycznego znaku (spacji, przecinak, itp.)
Previous Word
ESC-B - przenosi kursor na początek poprzedniego słowa
Scroll Up
CTRL-Z - przesuwa tekst w oknie o jedną linię w górę
Scroll Down
ESC-Z - przesuwa tekst w oknie o jedną linię w dół

 

Menu - LINE

Open Line
CTRL-O - przenosi kursor wraz z następującym po nim tekstem do następnej linii
Kill Line
CTRL-X-CTRL-D - usuwa linię, w której znajduje się kursor i kopiuje ją do bufora
Kill ro eol
CTLR-K - kasuje wszystkie znaki rozpoczynając od pozycji kursora do końca linii i kopiuje usunięty fragment linii do bufora
Start of Line
CTRL-A - przenosi kursor na początek linii
End of Line
CTRL-E - przenosi kursor na koniec aktualnej linii
Next Line
CTRL-N - przenosi kursor o jedną linię w dół
Previous Line
CTRL-P - przenosi kursor o jedną linię w górę
Line to Top
ESC-! - przenosi linię, w której znajduje się kursor na początek strony
Delete Blanks
CTRL-X-CTRL-O - usuwa puste linie rozpoczynając od pozycji kursora. Kończy, kiedy napotka na linię, w której znajduje się tekst
Show Line#
CTRL-X-= - wyświetla informacje o aktualnej pozycji kursora

 

Menu - WORD

Delete Forw
ESC-D - usuwa wszystkie znaki od pozycji kursora do znaku niealfanumerycznego (spacji, przecinka, kropki)
Delete Back
ESC-H - usuwa wszystkie znaki od pozycji kursora do pierwszego znaku w wyrazie
Upper Word
ESC-U - zmienia litery w aktualnym słowie na duże
Lower Word
ESC-L - zmienia litery w aktualnym słowie na małe
Cap Word
ESC-C - zamienia literę znajdującą się pod kursorem na dużą, a resztę liter do końca wyrazu na małe
Seitch Case
zamienia znaki w słowie (duże na małe i odwrotnie)

 

Menu - SEARCH

Search Forward
CTRL-S - poszukuje podanego ciągu znaków rozpoczynając od znaku znajdującego się pod kursorem do końca tekstu. Jeżeli ciąg zostanie znaleziony to kursor zostanie przeniesiony na jego początek. Jeżeli w tekście nie ma podanego ciągu znaków wyświetlony będzie komunikat NOT FOUND.
Search Backward
CTRL-R - poszukuje podanego ciągu znaków rozpoczynając od pozycji kursora do początku tekstu
Search Replace
ESC-R - działa tak jak Search Forward, lecz po natrafieniu na poszukiwany ciąg znaków zastępuje go innym
Query S R
ESC-Q - działa podobne jak Search Replace, lecz po każdym natrafieniu na poszukiwany ciąg znaków pyta o potwierdzenie wymiany na inny (Y - tak, N - nie, C - zastąpienie wszystkiego bez pytania)
Fence Match
ESC-CTRL-F - poszukuje nawiasu stanowiącego parę z aktualnie wskazanym przez kursor (może to być ( ),[],{},<>)

 

Menu - EXTRAS

Set Arg
CTRL-U - pozwala na ustalenie argumentu liczbowego dla polecenia.
Set
ESC-S - pozwala na ustalenie parametrów pracy edytora. Po ukazaniu się Set: można wybrać któryś z parametrów:

	Backup		- włącza i wyłącza wykonywanie przez program co pewien czas kopii
rezerwowej obrabianego tekstu, zapisywanej w katalogu T: Case - określa czy podczas operacji szukania program będzie rozróżniał
duże i małe litery, czy nie
Indent+liczba - rozmiar poziomów zagnieżdżenia (przy edycji programów w języku C)
Interlace - zmienia rozdzielczość pionową obrazu
Left+liczba - rozmiar lewego marginesu
Mode - wpisanie tego powoduje ukazanie się wskaźnika Mode: Teraz można
wpisać: cmode (edycja programów w języku C) lub wrap (automatyczne
przenoszenie wyrazu do następnej linii po osiągnięciu przez kursor
kolumny o określonym numerze)
Right+liczba - rozmiar prawego marginesu
Screen - umieszcza edytor na ekranie Workbencha lub na nowo otwartym oknie
Tab+liczba - rozmiar pojedynczego "przeskoku" tabulacji

Start Macro
CTRL-X-( - rozpoczyna zapamiętywanie sekwencji poleceń, które potem zostaną połączone w makropolecenie. Polecenia mogą być podawane jako kombinacje klawiszy lub wydawane z rozwijanego menu
Stop Macro
CTRL-X-) - kończy rejestrowanie poleceń i zapamiętuje makropolecenie
Execute Macro
CTRL-X-E - wykonuje makropolecenie
Set Key
CTRL-X-CTRL-K - pozwala na przyporządkowanie poleceń klawiszom funkcyjnym. Jednemu klawiszowi może zostać przyporządkowana sekwencja 80 poleceń. Oto poszczególne fazy definicji klawiszy:

	Key to Define:	- naciśnij klawisz, który chcesz zdefiniować
Def: - wpisz ciąg znaków oznaczający interesujące polecenie - odpowiednik
polecenia z menu na klawiaturze. ENTER kończy wpisywanie i
zatwierdza definicję klawisza

Reset Keys
ESC-K - kasuje definicje klawiszy
Execute File
ESC-E - pozwala na uruchomienie pliku rozkazowego AmigaDos wewnątrz edytora
Execute Line
CTRL-[-CTRL-[ - przełącza edytor w tryb poleceń. Poleceniami są nazwy poszczególnych opcji rozwijanego menu

Edytor ED

 

Edytor tekstu ED umożliwia edycję plików tekstowych z poziomu AmigaDos. Można nim tworzyć nowe pliki i przeredagować istniejące. Uruchomienie edytora następuje po wydaniu polecenia: ED nazwa_pliku

Jeżeli podany plik istnieje to zostanie wczytany, a jeżeli nie istnieje - edytor stworzy nowy plik o podanym tytule. Po uruchomieniu edytora otwiera się na ekranie okno.

Część komend edytora ED osiągalne jest z rozwijanego menu

 

Menu - PROJECT

Open
otwiera okno, w którym można wybrać plik tekstowy do wczytania
Save
zapisuje pliki na dysk pod nazwą, z którą był wczytany. Jeżeli plik był tworzony od nowa to otwiera się okno, w którym można wybrać miejsce i tytuł zapisu.
Save As
zapisuje plik na dysku pod podaną nazwą
About
podaje informacje o autorach programu i obrabianym tekście
Quit
kończy pracę programu

 

Menu - MOVEMENT

Top
przesuwa kursor na początek tekstu
Bottom
przesuwa kursor na koniec tekstu
Find
poszukuje podanego łańcucha znaków od pozycji kursora do końca tekstu
Backwards Find
poszukuje podanego tekstu od pozycji kursora do początku tekstu

 

Menu - EDIT

Delete Line
usuwa linię, w której znajduje się kursor
Query-Replace
wyszukuje podany łańcuch znaków i zastępuje go innym
Redisplay
przywraca zawartość okna z przed ostatnio wykonanej operacji

 

 

Pozostałe polecenia edytora są dostępne z klawiatury. Polecenia te dzielą się na dwie grupy:

- bezpośrednie; wywoływane przez naciśnięcie kombinacji CTRL+LITERA
- rozszerzone; wywoływane w trybie rozszerzonym, do którego przechodzi się po naciśnięciu klawisza ESC. Po naciśnięciu ESC w dolnej linii okna ukazuje się znak *, po którym wpisuje się polecenie. Polecenia te mogą zawierać parametry:

	s	- ciąg znaków
n - parametr liczbowy
s/t - dwa łańcuchy znaków - jeden odnajduje, drugi wymienia

 

Komendy bezpośrednie:

A
wprowadza nową linię
B
usuwa linię z kursorem
D
przesuwa tekst o jedną linię w dół
E
ustawia kursor na pierwszej lub ostatniej linii tekstu
F
zamienia literę pod kursorem z dużej na małą i odwrotnie
G
powtarza ostatnio wydane polecenie
H
kasuje znak z lewej strony kursora
I
ustawia kursor na następnej pozycji tabulacji
M
działa jak klawisz ENTER
O
kasuje słowo (spację) do najbliższej spacji (słowa)
R
przesuwa kursor na koniec aktualnego słowa
T
przesuwa kursor na początek aktualnego słowa
U
przesuwa tekst o jedną linię w górę
V
przywraca zawartość ekranu z przed ostatnio wykonanej operacji
Y
kasuje wszystkie znaki od kursora do końca linii

 

Komendy rozszerzone:

A
wstawia linię pod linią, w której znajduje się kursor
B
ustawia kursor na końcu pliku
BE
zaznacza koniec bloku w miejscu, gdzie znajduje się kursor
BE s
szuka łańcucha s od kursora do początku pliku
BS
zaznacza początek bloku w miejscu, gdzie znajduje się kursor
CE
ustawia kursor na końcu aktualnej linii
CL
przesuwa kursor o jedną pozycję w lewo
CR
przesuwa kursor o jedną pozycję w prawo
CS
ustawia kursor na początek linii
D
usuwa linię, w której znajduje się kursor
DB
usuwa zaznaczony blok
DC
działa jak klawisz DEL
E s t
wymienia łańcuch s na t
EQ s t
działa podobnie jak E, lecz przed każdą wymianą pyta o potwierdzenie operacji
EX
rozszerza prawy margines
F s
szuka łańcucha s
I s
wprowadza łańcuch s jako linię przed linią aktualną
IB
kopiuje zaznaczony blok do tekstu rozpoczynając od aktualnej pozycji kursora
IF s
odczytuje z dysku plik o tytule s
J
łączy aktualną linię z następną
LC
włącza rozróżnianie dużych i małych liter w poszukiwaniu
M n
przenosi kursor do linii n
N
przenosi kursor do początku następnej linii
P
przenosi kursor do początku poprzedniej linii
Q
przerywa pracę edytora bez zapisania tekstu
R
powtarza ostatnio wydaną komendę aż do wystąpienia błędu
S
dzieli linię w pozycji kursora - część linii znajdująca się na lewo od kursora zostawia, a część znajdującą się na prawo od kursora przenosi do następnego wiersza
SA
zapisuje tekst
SB
pokazuje zaznaczony blok tekstu
SL n
ustawia lewy margines w kolumnie n
SR n
ustawia prawy margines w kolumnie n
ST n
ustawia "przeskok" tabulatora na n kolumn
T
przenosi kursor na początek tekstu
U
anuluje ostatnio dokonaną zmianę
UC
wyłącza rozróżnianie dużych i małych liter w poszukiwaniu
WB s
zapisuje zaznaczony blok na dysk do pliku s
X
kończy pracę edytora zapisując tekst na dysk i zamykając okno ED

 

Możliwa jest konfiguracja menu edytora dla własnych potrzeb. Plik z ustawieniami znajduje się w katalogu S pod nazwą Ed-Startup. Konfiguracja edytora ED wykorzystuje powyższe komendy. Jeżeli chce się zmienić menu to, należy dokładnie przestudiować poniższy tekst, który jest standardowym plikiem z ustawieniami.

si 0 1 "Project"
si 1 2 "Open... ESCop" "op ? /File: /"
si 2 4
si 3 2 "Save ESCsa" "sa"
si 4 2 "Save As... ESCsa" "sa ? /Save As: /"
si 5 4
si 6 2 "About ESCsh" "sh"
si 7 2 "Quit ESCq" "q"
si 8 1 "Movement"
si 9 2 "Top ESCt" "t"
si 10 2 "Bottom ESCb" "b"
si 11 4
si 12 2 "Find... ESCf" "f ? /Find string: /"
si 13 2 "Backwards Find... ESCbf" "bf ? /Find string: /"

si 14 1 "Edit"
si 15 2 "Delete Line ESCd" "d"
si 16 2 "Query-Replace... ESCeq" "eq ? /Replace this: / ? /With this: /"
si 17 4
si 18 2 "Redisplay ESCvw" "vw"
si 19 0
em

Kasując plik konfiguracyjny Ed-Startup, uzyska się nieco rozbudowane menu edytora

 

Komunikaty najczęściej występujących błędów

Block incorrectly specifield
blok źle oznaczony
Commands abandoned
wykonywanie rozkazu zostało przerwane
Creating new file
tworzę nowy plik
Cursor inside block
kursor znajduje się wewnątrz bloku
End of file
to samo z drugiej strony
File contains binary
zbiór, który miał być wczytany jest plikiem binarnym, a to jest edytor tekstowy
Input lines truncated
chcesz edytować zbiór zapisany innym edytorem, o zbyt długich wierszach; zostały one obcięte do 255 znaków
Last line deleted
usunięty ostatni wiersz
Line too long
wiersz zbyt długi
No block marked
blok, na którym chciałeś wykonać operację, nie został wcześniej zaznaczony
No room in buffer
brak miejsca w buforze
Number expected
nie wprowadzono niezbędnego parametru cyfrowego
Out of memeory for operation
to działanie potrzebuje więcej pamięci niż jest dostępne
Rexx not available
próba użycia usługi Arexx, bez wcześniejszego aktywowania
Search failed
błąd przeszukiwania
Syntax error
błąd składni rozkazu
Tabs in input file expanded
tabulatory we wczytywanym zbiorze rozszerzone
Top of file
początek tekstu
Unable to open file
zbioru nie da się otworzyć
Unknown command
rozkaz nieznany
Unknown internal error
???
Unmatched
nie zamknięty nawias



<

^