"Консольный текстовый редактор"


Скачать 455.54 Kb.
Название "Консольный текстовый редактор"
страница 1/4
Тип Руководство пользователя
rykovodstvo.ru > Руководство эксплуатация > Руководство пользователя
  1   2   3   4
МИНИСТРЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

РОССИЙСКОЙ ФЕДЕРАЦИИ

ГОУ НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ИМ. Р.Е. АЛЕКСЕЕВА

ИНСТИТУТ РАДИОЭЛЕКТРОНИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

КАФЕДРА "ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ И ТЕХНОЛОГИИ"

Дисциплина "Программирование на языках высокого уровня"

Пояснительная записка

к курсовой работе

Тема:

"Консольный текстовый редактор"

Выполнил: Сидоренко О.О.

студент группы: 10-В-1
Проверил: Мартынов Д.С.

Нижний Новгород

2011

Содержание.
Состояние вопроса

Назначение и классификация ТР........................................................3

Функционально-близкие аналоги.......................................................5

Анализ алгоритмов работы ФБА........................................................9

Введение.........................................................................................................11

Разработка технического задания................................................................13

Разработка концептуальной модели............................................................15

Разработка логической модели....................................................................16

Описание программы....................................................................................17

Руководство пользователя

Описание..............................................................................................18

«Горячие» клавиши и клавиши управления.....................................18

Ограничения при работе с программой и возможные сбои...........19

Прочее...................................................................................................20

Руководство программиста

Общее....................................................................................................21

Общие сведения об исходном коде...................................................21

Описание глобальных переменных...................................................22

Количество выделяемой памяти........................................................22

Описание функций..............................................................................22

Обработка введённых данных...........................................................24

Таблица сообщений программы........................................................24

Разработка текстового примера

Пример1...............................................................................................27

Пример2...............................................................................................30

Примеры ошибок................................................................................34

Заключение....................................................................................................36

Список сокращений......................................................................................37

Список используемой литературы..............................................................38

Приложение...................................................................................................39

Состояние вопроса.

  1. Назначение и классификация текстовых редакторов.

Основное назначение текстовых редакторов - создавать текстовые файлы, редактировать тексты, просматривать их на экране, изменять формат текстового документа, распечатывать его на принтере.
Набираемый на клавиатуре компьютера текст воспроизводится на экране дисплея в рабочем поле редактора. Специальный значок - курсор указывает то место на экране, на которое пользователь в данный момент может оказывать воздействие (создавать, изменять символы и т. д.) с помощью редактора. Работая с текстовым редактором, можно получить на экране информацию о текущем состоянии курсора, т.е. его координатах на экране (номер строки и позиции в строке), а также о номере страницы текста, его формате, используемом шрифте и т.д.

Интерфейс практически каждого текстового редактора позволяет иметь на экране меню команд управления редактором - изменение режимов работы, обращение за помощью, форматирование текста, печати и т. д. Как правило, меню имеет не только текстовую форму, но и форму пиктограмм, указывающих на выполняемую команду.

Классификация текстовых редакторов.

I.    По возможностям

1)    Качество печатной машинки, небольшой набор возможностей по работе с текстом.

  • Norton Editor

  • Фотон

  • Лексикон

  • MultiEdit

  • Chiwriter

2)    Издательское качество. Реализация принципа WYSIWYG — What You See Is What You Get.

  • Microsoft Word

  • Ventura Publishers

  • Aldus Page Maker

Для работы с такими редакторами требуется ПК не ниже AT 486 DX с 8Мб оперативной памяти.

3)    Технические редакторы —Tex, Latex и т.д.
II. По типу файлов, с которыми работают ТР.

  • текстовые файлы

  • графический набор

Возможны и другие варианты классификации текстовых редакторов, например редакторы печатных текстов и редакторы электронных документов и т.д.

В большинстве случаев для создания деловых документов достаточно качества печатной машинки. Поэтому широкое распространение получил редактор текстов Лексикон для MS DOS.

В общем случае для оценки удобства работы с ТР могут служить следующие параметры:

-      количество необходимых нажатий клавиш для выполнения конкретной операции(колеблется от 1-2 до 20-30);

-      скорость отображения измененного текста на экране при загрузке, перемещениях по тексту, редактировании - вставке, копировании и удалении фрагментов, смене шрифтов и т.д.;

-      удобство работы с помощью, т.е. скорость вызова подсказок, их полнота, и структура;

-      возможность реализации WYSIWYG, т.е. получение на экране точной копии будущего печатного документа — текста без управляющих и разметочных символов;

-      ограничения на длину файлов;

-      количество одновременно обрабатываемых текстовых файлов;

-      возможности использования новых шрифтов и алфавитов, их расширения и дополнения;

-      требования к аппаратному обеспечению — например, к объему оперативной памяти ПК.


  1. Функционально близкие аналоги(ФБА)

Рассмотрим консольный текстовый редактор.

Существует множество консольных текстовых редакторов и функционально близких им аналогов. В основном такие редакторы больше всего разрабатываются для платформ Linux, т.к. администратору машины чаще приходится работать со средствами командной строки, нежели с полностью графическим интерфейсом.

Примером могут служить такие редакторы как joe, vi, Emacs, GNU Nano, так же нельзя не упомянуть встроенный редактор оболочки Midnight Commander – Cooledit.

Во многих дистрибутивах Linux в качестве общесистемного редактора предлагается GNU Nano. Он очень прост в использовании, нежели vi, emacs и прочие более продвинутые редакторы. Но в то же время он наполнен большим функционалом: поиск и замена, подсветка синтаксиса, проверка орфографии, копирование и вставка строк, вставка других файлов в текущий.

Верхняя часть окна – строка состояния. В ней отображается информация о редакторе и текущем файле. Она статична и перемещается вместе с экраном, такие же по свойству строки меню, расположенные внизу экрана. Состоят из названия команды и клавиши, при нажатии на которую будет исполнена команда.c:\users\olega\desktop\новая папка (2)\nano_2.1.2-svn.png

Редактор joe обладает полноценным интерфейсом в консольном режиме. И имеет достаточно широкие возможности: подсветка синтаксиса, открытие для редактирования нескольких файлов, запуск внутренних команд, использование комбинации клавиш.

Верхнюю строку занимает строка состояния, в которой содержится состояние нажатых управляющих клавиш, имя редактируемого файла, положение курсора (строка и колонка), текущее время. Основной объём экрана занимает рабочая область редактирования текста. Курсор может перемещаться с помощью стандартных клавиш: стрелок, PgUp / PgDn и т.п.. Внизу экрана находится командная строка, в которой выводятся вопросы или сообщения редактора.c:\users\olega\desktop\новая папка (2)\imgwrap_004.png


Редактор joe имеет ряд встроенных команд. При этом joe может быть запущен в качестве потокового редактора, когда на стандартный вход подаётся последовательность команд по изменению или созданию текста.

Для вычисления простых математических функций и выражений используется встроенный калькулятор, вызываемый по нажатию ESC+M.
У редактора vi имеется несколько потомков, которые в чем-то его улучшают и усовершенствуют. Это такие редакторы как Vim, bvi, Nvi и т.д. Среди этой серии Vim более распространён, т.к. это один из мощнейших текстовых редакторов с полной свободой настройки и автоматизации.

Одна из главных особенностей редактора — применение двух основных, вручную переключаемых, режимов ввода: командного (после запуска редактор находится в нём) и текстового (режим непосредственного редактирования текста, аналогичный большинству «обычных» редакторов). В редакторе имеется поддержка Unicode, возможность работы со многими файлами одновременно, неограниченная глубина отмены (undo) и возврата (redo) действий, подсветка синтаксиса, автоматическое определение величины отступа для каждой строки в зависимости от языка программирования, поддержка языка сценариев; возможность написания модулей расширения — плагинов, распознавание и преобразование файлов различных форматов, поддержка языков с письмом справа налево (арабских и других), сворачивание (folding) текста для лучшего обзора.

Строка состояния в Vim располагается снизу и отображает сведения о файле и положения курсора.

c:\users\olega\desktop\новая папка (2)\imgwrap_003.png



CoolEdit имеет более приятный интерфейс: привычный, для работавших с редактором Norton Commander’а, синий фон с белыми буквами, статусная строка в верхней части экрана и линейка нумерованных (по функциональным клавишам) операций - внизу. Привычно работают клавиши Home и End, delete и backspace.

Этот редактор обеспечивает выполнение большинства функций редактирования, присущих полноэкранным редакторам текста. С его помощью можно редактировать файлы практически любого размера, поскольку верхняя граница для размера редактируемого файла составляет 16 Мбайт. Обеспечивается редактирование исполняемых (двоичных) файлов без потери данных. Поддерживается копирование, перемещение, удаление, вырезание и вставка блоков текста, отмена предыдущих операций, вставка файлов, поиск и замена по регулярным выражениям, а также собственный вариант операций поиска и замены, основанный на функциях scanf-printf, выделение текста комбинацией клавиш +<�стрелки> .c:\users\olega\desktop\новая папка (2)\ris_12_07.png



  1. Анализ алгоритмов работы ФБА.

Все редакторы более или менее приближены к одному и тому же алгоритму работы:

  • Выделение памяти под текстовый буфер, куда будет считан файл.

  • Очистка экрана. Чаще всего при этом экран заполняется символами перевода строки.

  • Инициализируется бесконечный цикл, в котором будет выполняться основная часть программы.

В цикле:

  • Вывод полученных данных на экран.

  • Ожидание ввода символа.

  • Обработка введённого символа.

Например: если нажата клавиша Enter, то перемещение курсора на одну строку вниз на начало этой строки, если Backspace – удаление предыдущего символа от курсора и перемещение его на позицию влево, так же происходит сдвиг всех символов перед курсором на одну позицию влево. Аналогично, если введён буквенный символ, то он отображается на экран, сдвигая курсор и все символы за курсором. Параллельно с этим меняется содержимое символьного массива, в котором и располагается текст.

Алгоритмы некоторых основных функций редактора:

Вывод текста на экран:

  • Определение координаты курсора на экране.

  • Посимвольный вывод массива.

  • Перемещение курсора на нижнюю строку и вывод строки меню.


Открытие файла:

  • Запрос имени файла.

  • Открытие и копирование файла в строку.

  • Вывод строки и закрытие файла.


Сохранение файла:

  • Запрос имени файла.

  • Открытие файла.

  • Запись в файл основного массива (в котором располагается набранный текст).

  • Закрытие файла.


Переход вверх/вниз на строку:

  • Вычитание/прибавление определённого числа единиц (ширина текстового поля) к указателю на символьный массив.

  • Перевод курсора на строку вверх/вниз.

Переход к началу/концу строки осуществляется аналогичными способами.

Поиск дальше по документу:

  • Запрос необходимой последовательности.

  • Поиск последовательности, используя один из алгоритмов.

Например, алгоритм Бойера-Мура.

Описание:

Сначала строится таблица смещений для искомого шаблона. Совмещается начало текста (строки) и шаблона, проверка начинается с последнего символа шаблона. Если последний символ шаблона и соответствующий ему при наложении символ строки не совпадают, то образец сдвигается относительно строки на величину, полученную из таблицы смещений. Причем символ берётся из строки и ищется соответствующий сдвиг в таблице. После сдвига начинается проверка с последнего символа. Если символы совпадают, производится сравнение предпоследнего символа шаблона и т. д. Если все символы шаблона совпали с наложенными символами строки, значит была найдена подстрока и поиск окончен. Если же какой-то не последний символ шаблона не совпадает с соответствующим символом строки, шаблон сдвигается на один символ вправо и снова начинается проверка с последнего символа. Весь алгоритм выполняется до тех пор, пока либо не будет найдено вхождение искомого образца, либо не будет достигнут конец строки.

  • При нахождении нужной последовательности перевод курсора на её первый символ.


Выделение фрагмента текста:

  • Определение позиции курсора и получение этой позиции в символьном массиве.

  • Запись этой позиции в переменную.

  • Определение конечной позиции курсора и получение этой позиции в символьном массиве.

  • Копирование (вырезание) всех символов от начальной до конечной позиции в дополнительную строку (буфер обмена).


  1   2   3   4

Похожие:

\"Консольный текстовый редактор\" icon Инструкция для формирования заявок и запросов на получение электронной подписи
В разделе Информация для клиентов, в подразделе Пользователям сэд. Рисунок внимание!!! Для работы программы необходим текстовый редактор...
\"Консольный текстовый редактор\" icon 4. Текстовый редактор Microsoft Office Word
Текстовый редактор Microsoft Office Word предназначен для создания и обработки текстовых документов
\"Консольный текстовый редактор\" icon Количество
...
\"Консольный текстовый редактор\" icon «Кодирование», «Текстовый редактор», «Графический редактор». 38

\"Консольный текстовый редактор\" icon Algorithm Builder fo avr, Начинаем Графический ассемблер
Только он позволяет максимально использовать ресурсы кристалла. Однако работать на ассемблере не слишком удобно. Существенным барьером...
\"Консольный текстовый редактор\" icon Основы розничной торговли
Главный редактор Заведующий редакцией Выпускающий редактор Художественный редактор Корректоры Верстка
\"Консольный текстовый редактор\" icon Практикум по конфликтологии 2-е издание, дополненное и переработанное
Главный редактор Заведующий редакцией Руководитель проекта Литературный редактор Художественный редактор Корректор Верстка
\"Консольный текстовый редактор\" icon Технология построения трехмерной модели
Вана на базе приложений, входящих в состав гис карта 2005. К таким приложениям относятся: Редактор карты, Редактор классификатора,...
\"Консольный текстовый редактор\" icon Научный редактор Редактор Художественный редактор Корректоры Верстка...
Москва • Санкт-Петербург • Нижний Новгород • Воронеж Ростов-на-Дону • Екатеринбург • Самара • Новосибирск Киев • Харьков • Минск...
\"Консольный текстовый редактор\" icon Инструкция по составлению списка доверенных контрагентов Для составления...
Сэр «Клиент-Банк». Если Вы намерены воспользоваться данной формой, необходимо включить макросы. После того как, Вы распечатаете заполненный...
\"Консольный текстовый редактор\" icon Главный редактор Зав психологической редакцией Зам зав психологической...
Учебное пособие предназначено для психологов, психофизиологов, педагогов, а также для студентов и аспирантов психологических и педагогических...
\"Консольный текстовый редактор\" icon Ведущий редактор Художник обложки Корректоры Верстка Е. Строганова...
Главный редактор Заведующий редакцией Руководитель проекта Ведущий редактор Художник обложки Корректоры Верстка
\"Консольный текстовый редактор\" icon Известия высших учебных заведений
Ответственный редактор Л. Н. Морокова Редактор, оператор электронной верстки Н. В. Шуваева Адрес редакции: 625000, Россия, г. Тюмень,...
\"Консольный текстовый редактор\" icon Известия высших учебных заведений
Ответственный редактор Л. Н. Морокова Редактор, оператор электронной верстки Н. В. Шуваева Адрес редакции: 625000, Россия, г. Тюмень,...
\"Консольный текстовый редактор\" icon Известия высших учебных заведений
Ответственный редактор Л. Н. Морокова Редактор, оператор электронной верстки Н. В. Шуваева Адрес редакции: 625000, Россия, г. Тюмень,...
\"Консольный текстовый редактор\" icon В. Земских I Редактор Н. Дмитревская Художественный редактор в земских...
Перевел с английского А. Токарев Под научной редакцией д э н., профессора И. В. Андреевой

Руководство, инструкция по применению




При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск