Этим Вы окажете большую помощь науке и медицине. См. подробнее: http://solidstate.karelia.ru/~yura/pyldin/yura/computing.htm |
Научно-изследователска и производствена лаборатория "ПРОГРАМНО ОСИГУРЯВАНЕ" София ---------------------------------------------------------------- ПЕРСОНАЛЕН МИКРОКОМПЮТЪР ПЪЛДИН 601 / 601-У / 601-А / 601-М ТЕКСТОВ РЕДАКТОР UniED версия 2.00 Р Ъ К О В О Д С Т В О З А П О Т Р Е Б И Т Е Л Я редакция 3 София - 1991 Copyright (с) 1990 НИПЛ"Програмно осигуряване", София UniDOS, UniBIOS и UniED са регистрирани търговски марки и наименования на НИПЛ "Програмно осигуряване". "Пълдин" е регистрирана торговска марка и наименование на Сдружение "АБАКУС". Този документ, както и произволна негова част, не може да бъде копиран, предаван или включван в информационно-търсещи системи без предварителното писмено съгласие на НИПЛ "Програмно осигуряване". Всички права над програмния продукт и всяка негова част са запазени. НИПЛ "Програмно осигуряване" не носи отговорност за работоспособността на програмния продукт в случай на нерагламентирано презаписване или използване. Програмен дизайн и реализация: Димитър Георгиев Автор на документа: Недялко Тодоров Предпечатна подготовка: Иво Ненов НИПЛ "Програмно осигуряване" благодари на всички, които изпратят забележки, препоръки и делови предложения на адрес: София 1113 булевард "Ленин" - 125 Студенски общежития - блок 1 НИПЛ"Програмно осигуряване" --------------------------- phone/fax: (3592) 706248 СЪДЪРЖАНИЕ 1. ВЪВЕДЕНИЕ 2. ОБЩИ СВЕДЕНИЯ 3. ПАРАМЕТРИ НА РЕДАКТОРА 4. КОМАНДИ НА РЕДАКТОРА 4.1. Команди за движение на курсора 4.2. Команди за вмъкване / изтриване 4.3. Команди за действия над блок 4.4. Специални команди 4.5. Команди за управление формата на печата 5. СЪЗДАВАНЕ/ИЗМЕНЕНИЕ НА ДЕФИНИЦИОНЕН ФАЙЛ 5.1. Ред за коментар 5.2. Ред за даване стойност на параметър 5.3. Ред за определяне комбинация от клавиши за изпълнение на команда 5.4. Ред за определяне на управляващ печата символ 6. НАСТРОЙКА НА РЕДАКТОРА ПО "СВОЙ ВКУС" ПРИЛОЖЕНИЕ 1 - Съдържание на стандартния дефиниционен файл DEFAULT.DEF ПРИЛОЖЕНИЕ 2 - Справочник на параметрите и командите ПРИЛОЖЕНИЕ 3 - Справочник "клавиш - команда" ПРИЛОЖЕНИЕ 4 - Диагностични съобщения 1. ВЪВЕДЕНИЕ Текстовият редактор UniED е создаден за микрокомпютри от фамилията "Пълдин", работещи под управлението на операционната система UniDOS. Пълна информация за компютъра и операционната система можете да намерите в документите "UniDOS - Ръководство за потребителя" и "UniBIOS - Ръководство за потребителя". Настоящето ръководство е написано изхождайки от предположението, че читателят вече е усвоил основните понятия и похвати за работа с операционната система. UniED е екранно-ориентиран текстов редактор, създаден на базата на опита от експлоатацията на множество современни текстови редактори, предназначени за персонални микрокомпютри. Разбира се, при оценка на неговите функционални характеристики следва да се отчитат относително ограничените възможности на самия микрокомпютър "Пълдин". За използване на UniED е необходимо към компютъра да бъде включено поне едно флопи-дисково устройство. Дистрибутивният комплект на програмния продукт съдържа следните файлове: - UE.CMD - текстов редактор UniED; - UECFG.PGM - програма за създаване на конкретна "конфигурация" на текстовия редактор. Под конфигурация се разбира набор стойности на параметрите за работа на редактора и на дефиниции на управляващи клавиши. - DEFAULT.DEF - файл-описание на стандартната конфигурация. При създаване на следващи версии на редактора измененията и допълненията към настоящето ръководство ще бъдат записани във файл READ_ME.UE. В текста са използвани следните термини: - символ - произволна кодова стойност, имаща графично изображение; - дума - произволна последователност от символи, в която не се съдържа бленк: - ред - ред на екрана или в текста (в това число - неговата невидима част); - блок - маркирана последователност от символи. Предназначението на блока е групова обработка на съдържащите се в него символи. Блокът се задава с начало и край чрез специални команди. Началото и краят на блока могат да се намират в различни редове на текста. В произволен момент в текстовия файл може да бъде активен (маркиран) само един блок. За маркиране на нов блок е необходимо демаркирането на по-рано маркирания блок. Демаркираният блок става формално неразличима част на текста; - символ на курсора - символ, където се намира компютърният курсор; - дума на курсора - дума, в рамките на която се намира символът на курсора; - ред на курсора - ред от текста, където се намира курсора. За описание на параметрите и командите са възприети следните обостойности: <.....> - задължителна съставяща на израза - въвежда се конкретна стойност на описаното. Например, <параметър> означава, че на посоченото място трябва да се въведе един от параметрите на редактора. <<....>> - незадължителна съставяща на израза. 2. ОБЩИ СВЕДЕНИЯ От 25 реда на екрана за въвеждане/показване на текст се използват горните 21 реда (от 1 до 21). На 22 ред е разположена ограничителната черта на работното поле на екрана. На 23 ред се показва името на обработвания текстов файл, координатите на курсора (номер на ред и номер на символ в реда) във файла и текущата стойност (Replace или Insert) на параметъра Insert Mode (описанието на параметъра следва). Ред 24 е предназначен за извеждане на съобщения на редактора и за въвеждане на параметри за изпълнение на командите му. Ред 25 - най-долният - не се използва от редактора. Счита се, че първият ред на файла (даже ако е празен) има номер 1. UniED обработва един текстов файл с редове дълги до 250 символа. Дължината на файла теоретически не е ограничена. Практически, тя не трябва да превишава 50% от свободното пространство на използваната дискета. При работа с редактора следва да се отчита, че скоростта на обработка на текста силно намалява, ако дължината на файла е повече от 30 килобайта. Това се обяснява с необходимостта от извършване на много операции за четене и запис. Препоръчваме създаването на файлове с дължина до 30 KB (около 15 машинописни страници) Ако е необходимо да се използват в един файл абзаци от друг файл, следва предварително файловете да бъдат обединени със средствата на операционната система. Обединяването (например, на файла FILE1.TXT с файла FILE2.TXT) се прави чрез следната команда: TYPE FILE2.TXT >> FILE1.TXT За по-подробни сведения за преопределянето на стандартните входно/изходни устройства на операционната система се обърнете към п.3.2. на документа "UniDOS - ръководство за потребителя". ВНИМАНИЕ! Ако в командата по погрешка се използва символът ">", обозначаващ пренасочване на изхода към нов файл, вместо символа ">>", обозначаващ пренасочване в края на съществуващ файл, съдържанието на единия файл (в нашия случай - на файла FILE1.TXT) ще бъде изгубено. Основни за редактора са понятията "параметър" и "команда". Параметрите на редактора чрез даваните им стойности определят общите характеристики на работата на редактора. Командите на редактора обващат всички действия, които могат да бъдат извършени над текста. Изпълнението на една команда или група команди започва след натискането на предварително определен клавиш или група клавиши. Съответствието между клавиш (група клавиши) и изпълняваната при натискането му команда (група команди) се описва в дефиниционния файл. Това съответствие и стойностите на параметрите определят конфигурацията на редактора. След натрупване на опит всеки потребител ще поиска, вероятно, да създаде една или повече "свои" конфигурации, отчитащи индивидуалния вкус и цели на работа. Тези конфигурации трябва да бъдат описани в дефиниционни файлове с имена от типа хххххххх.DEF, където xxxxxxxxx - произволно разрешено в UniDOS име на файл. Стартирането на редактора се прави със следната примерна команда на операционната система: UE <име на текстов файл> Например: UE MY_TEXT Ако файлът съществува, на екрана се появява неговото начало. Ако файлът не съществува, екранът остава празен. Началото и края на файла са обозначени с редовете TOP OF FILE и BOTTOM OF FILE, соответно. Курсорът е на первия символ от първия ред на текста. РЕДАКТОРЪТ Е ГОТОВ ДА ИЗПЪЛНИ ВАШИТЕ КОМАНДИ ! 3. ПАРАМЕТРЫ РЕДАКТОРА Текстовият редактор UniED работи в зависимост от стойностите на вътрешни параметри. Всеки параметър е част от конфигурацията и може да му бъде давана стойност в дефиниционния файл. 3.1. INSERT MODE Параметърър Insert Mode определя началния режим на въвеждане на нов символ. Възможни са два режима: на вмъкване и на заместване. Режим на вмъкване означава, че въвежданият символ се вмъква пред позицията на курсора като курсорът, неговият символ и всички символи отдясно на курсора се преместват на една позиция надясно. Режим на заместване означава, че новият символ замества текущия символ на курсора и курсорът се премества на една позиция надясно. Стойности: Yes (True) - режим на вмъкване (insert); No (False) - режим на заместване (replace). 3.2. MAKE BACKUPS Параметърът Make Backups определя да се изпълни или не запазване на старото състояние на файла, ако той съществува. Запазването се осъществява чрез презапис във файл с основно име, съвпадащо с основното име на файла и разширение на името .BAK (т.е. чрез създаването на т.н. "бекфайл"). Да допуснем, че в предишен сеанс на работа е бил създаден файл TEXT.TXT. При стойност YES на параметъра преди следваща обработка файлът ще бъде презаписан под името TEXT.BAK. Ако съществува файл с такова име (TEXT.BAK), негото съдържание ще бъде унищожено. Стойности: Yes (True) - създава се бекфайл; No (False) - не се създава бекфайл. 3.3. DFLT EXT Параметърът Dflt Ext (Default Extension) определя използваното по премълчаване разширение на името на файла. Ако при стартиране на редактора или при въвеждане на команда се посочи файл без разширение на името, то името ще бъде автоматично допълнено със стойността на параметъра. Ако на параметъра не е дадена стойност, такова автоматично допълване на името не се прави. Стойности: до три символа (латински букви и/или цифри и/ или специални символи @, #, $, &), поставени в апострофи (') или кавички ("). 3.4. TABS Параметърът Tabs определя позициите на табулация - номерата на позиции в текущия ред, на които последователно ще преминава курсорът при поредно изпълнение на командата за табулация [Тab]. Стойности: последователност от нарастващи числа, разделени с бленкове или запетаи. Числата трябва да бъдат не по-малки от 1 и не по-големи от 250. 3.5. MARGINS Параметърът Margins определя граничните позиции на реда (ограничителите). Ограничителите се задават в последователност: <начална позиция> <крайна позиция> <<позиция на параграфа>> В процеса на въвеждане на текст при достигане на крайния ограничител незавършената дума се пренася изцяло на следващия ред от началния ограничител. Крайната позиция трябва да бъде по-голяма от началната. Позицията на параграфа трябва да бъде не по-малка от началната и не по-голяма от крайната позиция. Ако не е зададена позиция на параграфа, тя се счита равна на началната. 3.6. CONFIRM KEY Параметърът Confirm Key определя клавиш за потвърждаване на всички отговори, освен когато е необходим отговор (Y/N). 4. КОМАНДИ НА РЕДАКТОРА Множеството команди на редактора може да бъде разделено на 5 групи: за движение на курсора; за вмъкване и изтриване; за действия над блок; специални команди и команди за управление на формата на печата. По-долу са описани всички команди. В приложенията са показани клавишите, натискането на които води до изпълнение на всяка команда, ако редакторът е конфигуриран в съответствие с дефиниционния файл DEFAULT.DEF. При описанието на клавишите е използвана следната символика: с- натискане на клавиша CTRL едновременно с клавишите, посочени вдясно от символа. Например, с-А означава едновременно натискане на клавишите CTRL и А; с-АS означава едновременно натискане на клавишите CTRL, A и S. s- натискане на клавиша SHIFT едновременно с клавишите, посочени вдясно от символа. Например, s-F2 означава едновременно натискане на клавиша SHIFT и функционалния клавиш F2. Наименованията на специалните клавиши (освен букви и цифри) са показани по-долу. В скоби са показани възможни алтернативни надписи на клавишите или под тях. ФУНКЦИОНАЛНИ КЛАВИШИ: F1, F2, F3, F4, F5, F6, F6, F7, F8, F9, F10, F11 (PgUp), F12 (PgDn), F13 (Home), F14 (End), F15 (Insert)(Ins/Rep) КЛАВИШИ ЗА УПРАВЛЕНИЕ (които могат да бъдат използвани в дефиниционния файл): Tab, Ctrl, Shift Rub(Rubout), Return (Enter) Left (стрелка наляво), Right (стрелка надясно), UP (стрелка нагоре), Down (стрелка надолу). 4.1. КОМАНДИ ЗА ДВИЖЕНИЕ НА КУРСОРА 4.1.1. LEFT Изпълнението на командата Left води до преместване на курсора наляво на 1 позиция, ако курсорът не се в първа позиция. 4.1.2. WORD LEFT Изпълнението на командата Word Left води до преместване на курсора на първия символ на предходната дума, ако тя съществува. 4.1.3. BLOCK TOP Изпълнението на командата Block Top води до преход на курсора в началото на предварително маркиран блок. 4.1.4. RIGHT Изпълнението на командата Right води до преместване на курсора надясно на 1 позиция, ако курсорът не се намира в последната допустима позиция. 4.1.5. WORD RIGHT Изпълнението на командата Word Right води до преместване на курсора на первия символ следващата дума, ако тя съществува. 4.1.6. BLOCK BOTTOM Изпълнението на командата Block Bottom води до преместване на курсора в края на предварително маркиран блок. 4.1.7. UP Изпълнението на командата Up води до преместване на курсора нагоре на 1 ред (не променяйки колоната), ако той не се намира на първия ред. 4.1.8. SCROLL UP Изпълнението на командата Scroll Up води до преместване на съдържанието на екрана на 1 ред нагоре, ако последният ред не се намира вече в работното поле на екрана. 4.1.9. TOP EDGE Изпълнението на командата Top Edge води до преместване на курсора на първия ред на екрана (не променяйки колоната). 4.1.10. DOWN Изпълнението на командата Down води до преместване на курсора надолу на 1 ред (не променяйки колоната), ако той не се намира на последния ред. 4.1.11. SCROLL DOWN Изпълнението на командата Scroll Down води до преместване на съдържанието на екрана на 1 ред надолу, ако первият ред не се намира вече в работното поле на екрана. 4.1.12. BOTTOM EDGE Изпълнението на командата Bottom Edge води до преместване на курсора на последния ред на работното поле на екрана (не променяйки колоата). 4.1.13. BEGIN LINE Изпълнението на командата Begin Line води до преместване на курсора в началото на реда. 4.1.14. TOP FILE Изпълнението на командата Top File води до преместване на курсора на първия ред на файла (не променяйки колоната). 4.1.15. END LINE Изпълнението на командата End Line води до преместване на курсора в края на реда. 4.1.16. BOTTOM FILE Изпълнението на командата Bottom File води до преместване на курсора на последния ред на файла (не променяйки колоната). 4.1.17. PAGE UP Изпълнението на командата Page Up води до преместване на съдържанието на екрана на една екранна страница нагоре, ако първата страница не се намира вече в работното поле на екрана. 4.1.18. PAGE DOWN Изпълнението на командата Page Down води до преместване на съдържанието на екрана на една екранна страница надолу, ако последната страница не се намира вече в работното поле на екрана. 4.1.19. TAB Изпълнението на командата Tab води до преход на курсора на следващата позиция за табулация, определена от параметъра Tabs, ако такава позиция съществува. 4.1.20. BACK TAB Изпълнението на командата Back Tab води до преход на курсора на предходната позиция за табулация, определена от параметъра Tabs, ако такава позиция съществува. 4.1.21. LAST CURSOR Изпълнението на командата Last Cursor води до преход на курсора на позицията, заемана до изпълнението на предходната команда. 4.2. КОМАНДИ ЗА ВМЪКВАНЕ / ИЗТРИВАНЕ 4.2.1. TOGGLE INS Въполнение команды Toggle Ins води до даване на параметъра Insert Mode на стойност, алтернативна на текущата. Допустими стойности на параметъра са Insert (вмъкване) и Replace (замяна). 4.2.2. NEW LINE Изпълнението на командата New Line води до вмъкване на нов празен ред след реда на курсора и преход на курсора на перва позиция на новия ред. 4.2.3. INSERT LINE Изпълнението на командата Insert Line води до вмъкване на нов празен ред преди реда на курсора и преход на курсора на перва позиция на новия ред. 4.2.4. DELETE LINE Изпълнението на командата Delete Line води до изтриване на реда на курсора. 4.2.5. DELETE CHAR Изпълнението на командата Delete Char води до изтриване на символа на курсора. 4.2.6. RUBOUT Изпълнението на командата Rubout води до изтриване на символа наляво от курсора. 4.2.7. DELETE WORD Изпълнението на командата Delete Word води до изтриване на думата на курсора. 4.3. КОМАНДИ ЗА ДЕЙСТВИЯ НАД БЛОК Блок се нарича съвокупността на всички символи между НАЧАЛОТО и КРАЯ на блока, включително началния и краен символи. Началото и края на блока могат да се намират на различни редове на файла. Определянето на начало и край на блока се нарича маркировка. Маркираният блок се показва на екрана в друг в сравнение с останалата част от файла цвят, или се огражда с разделителни знаци. Разделителните знаци не се считат символи на блока и текста. Последователността на маркирането на начало и край на блока няма значение. Краят на блока трябва да се намира след началото на блока. В един момент може да бъде маркиран само един блок. За маркиране на нов блок е необходимо демаркирането на вече маркирания. Един блок не трябва да съдържа повече от 16000 символа (около девет стандартни страници текст). 4.3.1. MARK BLOCK BEGIN Изпълнението на командата Mark Block Begin води до маркировка на символа на курсора като начало блока. 4.3.2. MARK BLOCK END Изпълнението на командата Mark Block End води до маркировка на символа на курсора като край на блока. 4.3.3. MARK WORD Изпълнението на командата Mark Word води до маркировка на думата на курсора като блок. 4.3.4. COPY BLOCK Изпълнението на командата Copy Block води до копиране на маркирания блок на място, определено от позицията на курсора. Символът в позицията, където се намира курсорът, се появява непосредствено след края на блока. Така във файла се появяват две еднакви части. Командата се изпълнява, ако курсорът се намира извън границите на блока. 4.3.5. MOVE BLOCK Изпълнението на командата Move Block води до преместване на маркирания блок от старото му място на място, определено от курсора. Командата се изпълнява, ако курсорът се намира извън границите на блока. 4.3.6. DELETE BLOCK Изпълнението на командата Delete Block води до изтриване на блока. 4.3.7. PRINT BLOCK Изпълнението на командата Print Block води до отпечване на блока. 4.3.8. REFLOW Изпълнението на командата Reflow води до оформяне на маркирания блок във вид на самостоятелен абзац. Ако началото на блока не съвпада с началото на реда, редът се разделя. Частта, влизаща в блока, се премества на нов, следващ ред. Ако краят на блока не съвпада с края на реда, редът се разделя като символите от края на блока до края на реда се пренасят на нов, следващ ред. Оформянето на абзаца се прави в съответствие със стойностите на параметъра Margins. 4.3.9. UNMARK BLOCK Изпълнението на командата Unmark Block води до демаркиранe на блока. 4.4. СПЕЦИАЛНИ КОМАНДИ 4.4.1. FIND Изпълнението на командата Find води до търсене във файла на зададен символен низ. При изпълнение на командата се уточнява низът и посоката на търсене по следния начин. При натискане на съответния клавиш (комбинация от клавиши) на командния ред на редактора се появява съобщение: Find:_ където символът "_" показва позицията на курсора. Вие трябва да въведете търсения низ и да натиснете клавиша Enter. След това на командния ред се появява съобщение: Options (D, T, B):_ и Вие трябва да въведете условие (посока) на търсене. Допустими са следните отговори: D (Down) - търсене от позицията на курсора края на файла; Т (Top) - търсене от позицията на курсора към началото на файла; В (Block) - търсене в рамките на маркирания блок. По премълчаване (натискане само на Enter) се подразбира D. Недопустим отговор се отхвърля без последствия. След изпълнението на командата курсорът се позиционира в началото на низа, ако той е намерен, или остава на старото си място, ако не е намерен. Във втория случай се появява съобщение: Not found (Не намерено.) 4.4.2. CHANGE Изпълнението на командата Change води до търсене във файла на зададен символен низ и, ако низът е намерен, замяна на търсения със заменящ низ. При изпълнението на командата се уточняват търсеният низ, заменящият низ и посоката на търсен по следния начин. При натискане на съответния клавиш (комбинация от клавиши) на командния ред на редактора се появява съобщение: Change:_ където символът "_" показва позицията на курсора. Вие трябва да въведете търсения низ и да натиснете клавиша Enter. След това на командния ред се появява съобщение: With:_ Вие трябва да въведете заменящия низ и да натиснете клавиша Enter. Заменящият низ може да бъде и празен, което е равносилно на изтриване на намерения низ. След това на командния ред се появява съобщение: Options (D, T, B)(C, N):_ и Вие трябва последователно да въведете условие - посока на търсене и условие - необходимост от потвърждение преди реалното извършване на замяната. Допустими са следните отговори за посока на търсене: D (Down) - търсене от позицията на курсора края на файла; Т (Top) - търсене от позицията на курсора към началото на файла; В (Block) - търсене в рамките на маркирания блок. и следните отговори за необходимост от потвърждение на замяната: С - Confirm - замяната да се направи след потвърждение; N - No confirm - замяната да се направи без потвърждение. По премълчаване (натискане само на Enter) се подразбира DC. Недопустим отговор се отхвърля без последствия. При отговор "С" и намиране на търсения низ на командния ред се появява съобщение: Confirm change (Y/N) :_ Отговор, различен от "Y", забранява замяната. След изпълнението на командата курсорът се позиционира в началото на търсения (и, евентуално, заменен) низ, ако той е намерен, или остава на старото си място, ако не е намерен. Във втория случай се появява съобщение: Not found (Не намерено.) 4.4.3. FIND AGAIN Изпълнението на командата Find Again води до повторно изпълнение на последната изпълнена команда Find или Change. 4.4.4. SPLIT Изпълнението на командата Split води до разделяне на реда на курсора. Символите от курсора (включително) до края на реда се преместват в началото на вмъкнат нов следващ празен ред. 4.4.5. JOIN Изпълнението на командата Join води до обединение на реда на курсора и следващия ред. При това се запазват всички бленкове в края на единия и началото на следващия ред. 4.4.5. CTRL CHAR Изпълнението на командата Ctrl Char (Control Character) води до това, че въведеният след командата трицифрен десетичен код (от 000 до 255) се интерпретира като код на въвеждан във файла управляващ символ. 4.4.6. PRINT FILE Изпълнението на командата Print File води до отпечатване на целия текстов файл. Печатащото устройство трябва да бъде предварително включено. 4.4.7. SAVE Изпълнението на командата Save води до запис на текстовия файл на магнитен диск (дискета). За предпазване на файла от повреди по технически причини ние Ви съветваме на използвате тази команда колкото е възможно по-често. 4.4.8. EXIT Изпълнението на командата Exit води до прекратяване на работата с редактора (изход). Запомнете, че изпълнението на тази команда НЕ ПРЕДВИЖДА запис на дискета на текущото състояние на текстовия файл. Затова, ако за времето между тази команда и началото на работата с редактора или предходното изпълнение на командата Save са настъпили някакви изменения в текстовия файл, на командния ред се появява съобщение: Abandon Changes (Y/N) ?_ (Да се изоставят ли измененията?) Ако отговорите с "Y", командата се изпълнява. При друг отговор изпълнението на командата се отменя. Ако за времето между тази команда и началото на работата с редактора или предходното изпълнение на командата Save НЕ СА настъпили никакви изменения в текстовия файл, командата се изпълнява незабавно. 4.5. КОМАНДИ ЗА УПРАВЛЕНИЕ ФОРМАТА НА ПЕЧАТА При изпълнение на команди за управление на формата на печата в текстовия файл се вмъкват управляващи работата на принтера символи. Те имат графично изображение, появяващо се във файла. Но при отпечатване на файла символите не се отпечатват, а се възприемат от принтера като команди. В стандартния дефиниционен файл са включени показаните по-долу символи за управление на принтера. Те съответстват на системата команди на принтера Star Gemini 15. Както и всички други команди, въвежданите управляващи символи могат да бъдат заменени с нови, опредлени от потребителя. -------------------------------------------- команда за управление 16-код 10-код -------------------------------------------- Pica 12 18 Condensed 0F 15 Expanded Start 1B 57 31 27 87 49 Expanded Stop 1B 57 30 27 87 48 Emphasized Start 1B 45 27 69 Emphasized Stop 1B 46 27 70 Underlined Start 1B 2D 31 27 45 49 Underlined Stop 1B 2D 30 27 45 48 SubScript Start 1B 53 31 27 83 49 SuperScript Start 1B 53 30 27 83 48 SuperScript Stop 1B 54 27 84 Line Feed 1B 33 24 27 51 36 Form Feed 0C 12 4.5.1. PICA Превключване на принтера на нормален шрифт (pica). 4.5.2. CONDENSED Превключване на принтера на тесен (кондензиран) шрифт. 4.5.3. EXPANDED START / STOP Превключване на принтера на широк шрифт (Start) и на нормален шрифт (Stop) от широк. 4.5.4. EMPHASIZED START / STOP Превключване на принтера на удебелен шрифт (Start) и на нормален шрифт (Stop) от удебелен. 4.5.5. UNDERLINED START / STOP Начало и край на печат с подчертаване. 4.5.6. SUBSCRIPT START Начало на печат в долния полуред. 4.5.7. SUPERSCRIPT START Начало на печат в горния полуред. 4.5.8. SUPERSCRIPT STOP Край на печата в полуред. 4.5.9. LINE FEED Печат на празен ред. 4.5.10 FORM FEED Преминаване на следваща страница. 5. СЪЗДАВАНЕ / ИЗМЕНЕНИЕ НА ДЕФИНИЦИОНЕН ФАЙЛ Както многократно беше подчертано, дефиниционният файл съдържа цялата необходима за работата на редактора в съответствие с изискванията на потребителя информация. В него са описани всички параметри и техните стойности и са определени комбинациите от клавиши за изпълнение на всички команди. Командите, параметрите и техните стойности могат да бъдат написани както с главни, така и с малки букви или комбинации от тях. Дефинициобнният файл е по същество обикновен текстов файл с разширение на името .DEF. Неговото основно име се съставя по общите правила за имената на файлове. В дефиниционния файл могат да бъдат включени редове от 4 типа: коментарни; за даване на стойности на параметри; за определяне на комбинация клавиши за изпълнението на една команда; за определяне на управляващ символ, включван във файла при изпълнение на команда за управление на печата. Редовете могат да бъдат въвеждани във файла в произволен ред. Дефиниционният файл може да бъде създаден и/или променен както всеки текстов файл. Препоръчваме Ви да ползвате дефиниционния файл DEFAULT.DEF за създаване на свой собствен файл, предварително създавайки копие на файла. За тази цел използвайте командата COPY на операционната система. Да допуснем, че новият дефиниционен файл ще се нарича MY_DEF.DEF. За получаване на копие на DEFAULT.DEF под ново име е необходимо да се изпълни следната команда на UniDOS: copy default.def my_def.def Получения "полуфабрикат" можете да доведете до нужното Ви състояние използвайки самия редактор. Стартирането на редактора, както Ви е известно, се прави с командата: ue my_def.def 5.1. РЕД ЗА КОМЕНТАР Ред за коментар се счита всеки ред, в който първият непразен символ е "точка със запетая" (;). След него можете да напишете произволен коментар. Празен ред се счита коментарен ред. Коментарните редове не се обработват от програмата UECFG.PGM за конфигуриране на текстовия редактор. Следва пример за коментарен ред: ; това е пример за коментарен ред 5.2. РЕД ЗА ДАВАНЕ СТОЙНОСТ НА ПАРАМЕТЪР Ред за даване стойност на параметър започва с ключовата дума SET или съкратения й вариант S. След нея трябва да следва параметър, знакът за равенство "=" и допустима стойност на параметъра. В един ред може да бъде дадена стойност само на един параметър. Да допуснем, че искате преди началото на редактирането да се прави копие на обработвания файл и като табулаторни да се използват позиции 5, 15 и 30. Във Вашия дефиниционен файл трябва да има следните примерни редове: set Make Backups = Yes s tabs = 5,15,30 Ред, съдържащ неправилно име на параметър или недопустима стойност, се отхвърля от програмата UECFF.PRM, за което се издава съответно съобщение. 5.3. РЕД ЗА ОПРЕДЕЛЯНЕ НА КОМБИНАЦИЯ ОТ КЛАВИШИ ЗА ИЗПЪЛНЕНИЕ НА КОМАНДА Ред за определяне на комбинация от клавиши за изпълнение на команда започва с ключовата дума DEF или съкратената й форма D. Следват избраната комбинация от клавиши (до 4 клавиша), знакът за равенство "=" и последователност команди, поставени в квадратни скоби "[" и "]" и/или символни константи, поставени в апострофи. В частност, последователността може да включва една единствена команда или една символна константа. При срещане на символна константа тя се извежда от позицията на курсора - т.е. символната константа е равносилна на команда "да се въведе в текста символна константа"<константа>. Командите и константите се изпълняват по реда на записването им. Дефиницията трябва да бъде записана изцяло на един ред. Създавайки свой дефиниционен файл не забравяйте: РЕДАКТОРЪТ ИЗПЪЛНЯВА САМО ОПИСАНИТЕ В ДЕФИНИЦИОННИЯ ФАЙЛ КОМАНДИ ! Всяка комбинация клавиши може да включва: - один функционален клавиш: F1, F2, ... F12; - два клавиша, от които първият е Shift (s-), а вторият - функционален клавиш; - два, три или четири клавиша, от които первият е Ctrl (c-), а останалите - функционални и/или буквени клавиши. Функционалните клавиши F13, F14 и F15 играят специална роля и могат да бъдат използвани в дефиниционен файл САМО за командите Home, End и Toggle Inssert, съответно. Примери на правилни комбинации от клавиши: F7 s-F7 c-ABC c-F7 Примери на неправилни комбинации от клавиши: - c-s - вторият клавиш е Shift; - s-A - вторият клавиш не е функционален; - c-s-F2 - вторият клавиш е Shift. Примери на редове: - Def Left = [Left] - преместване на курсора наляво на одна позиция; - Def c-О='в отговор на Ваше писмо ' - от текущата позиция на курсора се извежда текста "в отговор на Ваше писмо "; - Def F10=[Insert Line] - пред текущия ред на курсора се вмъква празен ред и курсорът преминава на първата му позиция; - Def F9 = [Insert Line][Last Cursor] - пред текущия ред на курсора се вмъква нов празен ред и курсорът остава на старата си позиция. По-сложен пример: да допуснем, че е желателно с една комбинация от клавиши (c-P) да се подготви следният текст (полезен при програмиране на UniPascal): procedure begin end; При това е желателно курсорът да се позиционира на един бленк след думата "procedure". Тази задача може да се реши по следния алгоритъм: - въвеждане на нов ред и в неговото начало извеждане на думата "procedure " (забележете - необходимият в края бленк е включен в константата); - въвеждане на нов ред и в неговото начало извеждане на думата " begin" - въвеждане на нов ред и в неговото начало извеждане на думата " end;" - преместване на курсора на два реда нагоре; - преместване на курсора в края на реда. Съответният ред на дефиниционния файл трябва да изглежда така: D c-P = [New line]'procedure '[New Line]' begin'[New Line] ' end'[Up][Up][End Line] Разбира се, цялата дефиниция се записва на един ред. 5.4. РЕД ЗА ОПРЕДЕЛЯНЕ НА УПРАВЛЯВАЩ ПЕЧАТА СИМВОЛ Ред за определяне на управляващ печата символ започва с ключовата дума DEF или съкратения й вариант D. Следват избраната команда за управление на печата, поставена във фигурни скоби "{" и "}", знакът за равенство "=" и последователност от шестнайсетични кодове на управляващи символи, като всеки код се предхожда от доларов символ "$". Кодовата последователност НЕ ТРЯБВА ДА СЪДЪРЖА БЛЕНКОВЕ! Примери: Def {Condensed} = $15 Def {Expanded Start} = $1B$57$31 6. НАСТРОЙКА НА РЕДАКТОРА ПО "СВОЙ ВКУС" За да се "подчинява" редакторът на определен дефиниционен файл, този файл трябва да бъде обработен от програмата UECFG.PRG за конфигуриране на редактора. Стартирането на програмата UECFG.PGM се прави, например, със следната команда на операционната система UniDOS: UECFG <име на дефинициония файл> Всеки може да запази няколко варианта на редактора с различни конфигурации. Да допуснем, че сте създали конфигурационни файлове с имена VAR1.DEF и VAR2.DEF. За запазване в работоспособен вид на двата варианта на редактора, трябва да се изпълни следната последователност от команди: UECFG VAR1 COPY UE.CMD UE_VAR1.CMD UECFG VAR2 COPY UE.CMD UE_VAR2.CMD След съответните действия Вие можете да стартирате един от двата нови варианта на редактора с командите: UE_VAR1 <име> или UE_VAR2 <име> ЗАПОМНЕТЕ ! За работата на програмата UECFG е необходимо съществуването на копие на редактора под името UE.CMD. ПРИЛОЖЕНИЕ 1 - Съдържание на стандартния дефиниционен файл DEFAULT.DEF По-надолу е дадено съсржанието на файла DEFAULT.DEF с едно изключение - съдържанието на дългите редове, непоместващи се на един ред от документа, е написано на няколко реда. В самия файл това, разбира се, не е така. ; ; Стандартен дефиниционен файл ; ; 1. Параметри: Set Insert Mode = Yes Set Make Backups = Yes Set Confirm Char = Enter Set Margins = 1 66 5 Set Tabs = 1 8 16 24 32 64 Set Dflt Ext = 'txt' ; ; 2. Команди: ; 2.1. Команди за движение на курсора def left = [left] def c-left = [block top] def right = [right] def c-right = [block bottom] def up = [up] def c-up = [top edge] def down = [down] def c-down = [bottom edge] def home = [begin line] def end = [end line] def F11 = [page up] def s-F11 = [top file] def F12 = [page down] def s-F12 = [bottom file] def s-down = [scroll down] def s-up = [scroll up] def c-L = [last cursor] ;----------------------------------- def tab = [tab] def s-tab = [tab back] def c-F11 = [top edge][begin line] def c-F12 = [bottom edge][end line] ; ; 2.2. Команди за вмъкване/изтриване def insert = [toggle ins] def enter = [new line] def F9 = [ins line] def c-F9 = [delete line] def rub = [delete char] def s-F5 = [rubout] def s-F6 = [delete word] ;------------------------------------- def s-F9 = [ins line][tab] def F10 = [new line] def s-F10 = [new line][tab] def c-F10 = [new line]'UniEd v.1.0.' ' (c) 1989 НИПЛ"Програмно осигуряване",София' def c-F5 = [unmark][left][mark end block] [begin line][mark begin block][delete block] def c-F6 = [unmark][right][mark begin block] [end line][mark end block][delete block] ; ; 2.3. Команди за обработка на блок def c-b = [mark begin block] def c-e = [mark end block] def c-w = [mark word] def c-c = [copy block] def c-m = [move block] def c-d = [delete block] def c-F8 = [print block] def c-u = [unmark] ; ; 2.4. Специални команди def c-f = [find] def c-r = [change] def c-a = [find again] def c-p = [ctrl char] def s-F7 = [split] def c-F7 = [join] def F8 = [print file] def s-F8 = [reflow] def F2 = [save file] def F4 = [exit] ;------------------------------- def F3 = [save][exit] def F7 = [unmark][begin line][mark begin block] [bottom file][end line][mark end block][reflow] [page up] ; 2.5. Команди за определяне на управляващи символи ; за Star Geminy 15 def {Pica} = $12 def {Condensed} = $0F def {Expanded Start} = $1B$57$31 def {Expanded Stop} = $1B$57$30 def {Emphasized Start} = $1B$45 def {Emphasized Stop} = $1B$46 def {Underlined Start} = $1B$2D$31 def {Underlined Stop} = $1B$2D$30 def {SubScript Start} = $1B$53$31 def {SuperScript Start} = $1B$53$30 def {SuperScript Stop} = $1B$54 def {Line Feed} = $1B$33$24 def {Form Feed} = $0C ; ; 2.6. Команди за управление формата на печата def c-JP = [pica] def c-JC = [condensed] def c-JX = [expanded start] def c-JZ = [expanded stop] def c-JE = [emphasized start] def c-JS = [emphasized stop] def c-JU = [underlined start] def c-JQ = [underlined stop] def c-JB = [sub script start] def c-JT = [super script start] def c-JN = [super script stop] def c-JL = [line feed] def c-JF = [form feed] ПРИЛОЖЕНИЕ 2 - СПРАВОЧНИК ЗА ПАРАМЕТРИТЕ И КОМАНДИТЕ ПАРАМЕТРИ ---------------------------------------------------------------- параметър действие и стойности на параметъра ---------------------------------------------------------------- Insert Mode режим (Insert или Replace) на въвеждане на нов символ. Стойности: Yes (True) - режим на вмъкване; No (False) - режим на заместване. Make Backups режим на запазване на старото състояние на файла. Стойности: Yes (True) - създава се бекфайл; No (False) - не се създава бекфайл. Dflt Ext Default Extension - разширение по подразбиране на името на файла. Стойности: до три символа (латински букви и/или цифри и/или специални символи @, #, $, &), поставени в апострофи (') или кавички ("). Tabs табулаторни позиции Стойности: последователност от нарастващи числа не по-малки от 1 и не по-големи от 250. Margins гранични позиции на реда (ограничители). Confirm Key клавиш за потвърждаване на всички отговори, освен изискващите отговор "Y" (Yes) или "N" (No). КОМАНДИ ЗА ДВИЖЕНИЕ НА КУРСОРА ----------------------------------------------------------- формат на клавиш(и) в действие на командата командата DEFAULT.DEF ----------------------------------------------------------- Left Left пренос на курсора наляво на 1 позиция Block Top c-Left пренос на курсора в началото на блока Right Right пренос на курсора надясно на 1 позиция Block Bottom c-Right пренос на курсора в края на блока Up Up пренос на курсора нагоре на 1 ред Scroll Up s-Up преместване съдържанието на екрана на 1 ред нагоре Top Edge c-Up пренос на курсора в 1 ред на екрана Down Down пренос на курсора надолу на 1 ред Scroll Down s-Down преместване съдържанието на екрана на 1 ред надолу Bottom Edge c-Down пренос на курсора в последния ред на екрана Begin Line F13 пренос на курсора в началото на реда Top File c-F13 пренос на курсора на първи ред на файла End Line F14 пренос на курсора в края на реда Bottom File c-F14 пренос на курсора на последния ред на файла Page Up F11 преместване на екрана на 1 страница нагоре Page Down F12 преместване на екрана на 1 страница надолу Tab Tab пренос на курсора на следваща табулация Back Tab s-Tab пренос на курсора на предходна табулация Last Cursor c-L пренос на курсора на позиция, заемана преди изпълнението на предходната команда. КОМАНДИ ЗА ВМЪКВАНЕ / ИЗТРИВАНЕ --------------------------------------------------------------- формат на клавиш(и) в действие на командата командата DEFAULT.DEF --------------------------------------------------------------- Toggle Ins Insert алтернативна замяна Insert/Replace New Line Enter вмъкване отдолу на празен ред Insert Line F9 вмъкване отгоре на празен ред Delete Line c-F9 изтриване на реда на курсора Delete Char Del изтриване на символа на курсора Rubout s-F5 изтриване на символа наляво от курсора Delete Word s-F6 изтриване думата на курсора КОМАНДИ ЗА ДЕЙСТВИЯ НАД БЛОК --------------------------------------------------------------- формат на клавиш(и) в действие на командата командата DEFAULT.DEF --------------------------------------------------------------- Mark Block Begin c-B маркировка на начало на блок Mark Block End c-E маркировка на край блок Mark Word c-W маркировка на дума като блок Copy Block c-C копиране на блок Move Block c-M пренасяне на блок Delete Block c-D изтриване на блок Print Block c-F8 отпечатване на блок Reflow s-F8 оформяне на блок във вид на абзац Unmark c-U демаркиране на блок СПЕЦИАЛНИ КОМАНДИ --------------------------------------------------------------- формат на клавиш(и) в действие на командата командата DEFAULT.DEF --------------------------------------------------------------- Find c-F търсене на символен низ Change c-R замяна на символен низ Find Again c-А повтаряне на последна Find или Replace Split s-F7 разделяне на ред Join c-F7 сливане на два реда Ctrl Char c-P въвеждане на контролен символ Print File F8 печат на текстовия файл Save F2 запис на файла на дискета. Exit F4 край на работата с редактора (изход). КОМАНДИ ЗА УПРАВЛЕНИЕ НА ФОРМАТА НА ПЕЧАТА --------------------------------------------------------------- формат на клавиш(и) в действие на командата командата DEFAULT.DEF --------------------------------------------------------------- Pica c-JP нормален шрифт (pica) Condensed c-JC стеснен шрифт. Expanded Start c-JX широк шрифт Expanded Stop c-JZ край на широкия шрифт Emphazised Start c-JE удебелен шрифт Emphasized Stop c-JS край на удебеления шрифт Underlined Start c-JU с подчертаване Underlined Stop c-JQ край на подчертаването SubScript Start c-JB в долния полуред SuperScript Start c-JT в горния полуред SuperScript Stop c-JN край на печат в полуред Line Feed c-JL празен ред Form Feed c-JF преход на следваща страница ПРИЛОЖЕНИЕ 3 - СПРАВОЧНИК "КЛАВИШ - КОМАНДА" ----------------------------------------------------------- key [command] / <comment> key [command] / <comment> ----------------------------------------------------------- Enter [New Line] Tab [Tab] Rub [Delete Char] s-Tab [Back Tab] F1 <not defined> F2 [Save File] s-F1 <not defined> s-F2 <not defined> c-F1 <not defined> c-F2 <not defined> F3 [Save][Exit] F4 [Exit] s-F3 <not defined> s-F4 <not defined> c-F3 <not defined> c-F4 <not defined> F5 <not defined> F6 <not defined> s-F5 [Rubout] s-F6 [Delete Word] c-F5 <delete left line part> c-F6 <delelete right line part> F7 <Reflow to bottom> F8 [Print File] s-F7 [Split] s-F8 [Reflow] c-F7 [Join] c-F8 [Print Block] F9 [Insert Line] F10 [new line] s-F9 [Insert Line][Tab] s-F10 [new line][tab] c-F9 [Delete Line] c-F10 <UniED logo line> F11 [Page Up] F12 [Page Down] s-F11 [Top File] s-F12 [Bottom File] c-F11 [Top Edge][Begin Line] c-F12 [Bottom Edge][Begin Line] F13 [Begin Line] F14 [End Line] c-F13 [Top File] c-F14 [End Line] F15 [Toggle Ins] Left [Left] Right [Right] c-Left [Block Top] c-Right [Block Bottom] Up [Up] Down [Down] s-Up [Scroll Up] s-Down [Scroll Down] c-Up [Top Edge] c-Down [Bottom Edge] c-А [Find Again] c-N <not defined> c-B [Mark Block Begin] c-O <not defined> c-C [Copy Block] c-P [Ctrl Char] c-D [Delete Block] c-Q <not defined> c-E [Mark Block End] c-R [Change] c-F [Find] c-S <not defined> c-J <not defined> c-T <not defined> c-H <not defined> c-U [Unmark] c-I <not defined> c-V <not defined> c-G <not defined> c-W [Mark Word] c-K <not defined> c-X <not defined> c-L [Last Cursor] c-Y <not defined> c-M [Move Block] c-Z <not defined> c-JP [Pica] c-JB [SubScript Start] c-JC [Condensed] c-JF [Form Feed] c-JE [Emphazised Start] c-JL [Line Feed] c-JN [SuperScript Stop] c-JQ [Underlined Stop] c-JS [Emphasized Stop] c-JT [SuperScript Start] c-JU [Underlined Start] c-JX [Expanded Start] c-JZ [Expanded Stop] ПРИЛОЖЕНИЕ 4 - ДИАГНОСТИЧНИ СЪОБЩЕНИЯ НА РЕДАКТОРА ВНИМАНИЕ ! В скоби е посочена програмата, издаваща съобщението! BLOCK IS TOO LONG - опит за маркиране на блок по-дълъг от допустимото (UE) DISK ERROR : 'Диагностично съобщение' - грешка при работа с дискета. INVALID MARK - втората по ред маркировка (начало или край) не съответства по местоположение на първата. (UE) INVALID PARAMETER(S) - недопустим параметър в реда на .DEF-файла или при изпълнение на команда. (UE, UECFG) KEY IS DEFINED YET - опит за дефиниране на вече дефиниран клавиш (UECFG) KEY IS NOT DEFINED - опит за активизиране на команда чрез недефиниран клавиш (Fx, c-Fx, s-Fx, c-клавиш). (UE) LINE(S) TRUNCATED - прочетен файл с редове по-дълги от 255 символа - редовете са обрязани (UE, UECFG) NOT MARKED BLOCK - няма маркиран блок. (UE) PRINTER TIMEOUT ERROR - принтерът не е готов! Да се повтори опитът или да се отмени действието? (UE,UECFG) SOURCE AND TARGET CONFLICT - опит за пренос или копиране на блок вътре в него (UE) SYNTAX ERROR - синтаксична грешка в ред на .DEF-файла. (UECFG)