Редактор GoldED для программистов

Андрей Черешнев

Введение

Текстовый редактор GoldED является самым популярным среди программистов. Полностью настраиваемый, удобный в работе, быстрый, к тому же имеющий кроме стандартных возможностей текстового редактора большое количество специальных. О некоторых из этих возможностей я хотел бы рассказать в этой статье. Рассматриваемая версия GoldED - 4.73 является freeware (бесплатная) и имеет скромные минимальные требования к машине - AmigaOS 2.04, 68020 процессор и 2MB памяти.

пример

Скрытие частей текста

Это одна из самых полезных возможностей GoldED, которая позволяет отдельные части текста скрывать ("сворачивать", Fold) в одиночные строки. В окне эти строки выглядят как:

> комментарий_к_свернутому_тексту
"Скрытие" помогает редактировать большие по объему файлы. Например, разделить текст программы в файле на логические блоки и "скрыть" их, потом можно "развернуть" (UnFold) только тот блок, с которым нужно работать (редактировать).

Для того чтобы свернуть блок текста, его нужно заключить в Си++ комментарии. Начало блока:

/// "комментарий_к_свернутому_тексту"
конец, просто - ///. Затем, установить курсор внутри блока и нажать клавишу "Help". Пример:
/// "Цикл обработки сообщений"
        {
            ULONG sigs = 0;

            while (DoMethod(app,MUIM_Application_NewInput,&sigs)
                            != MUIV_Application_ReturnID_Quit)
            {
                if (sigs)
                {
                    sigs = Wait(sigs | SIGBREAKF_CTRL_C);
                    if (sigs & SIGBREAKF_CTRL_C) break;
                }
            }
        }
///
В окне GoldED этот блок будет выглядеть как подсвеченная строка:
> Цикл обработки сообщений
Существует более удобный способ для сворачивания текста - выделите нужный текст, потом в меню "Macros" выберите пункт "Macros/Fold...", и в открывшемся окне введите комментарий к блоку. GoldED сам расставит нужные символы.

Для того чтобы развернуть блок, нужно установить курсор на подсвеченную строку и нажать клавишу "Help", повторное нажатие, обратно свернет текст.

Нужно помнить о том, что команды поиска и замены не будут искать/заменять текст в свернутых блоках, их нужно сначала раскрыть.

Пункты "All folds: Fold" и "All folds: UnFold" меню "View" / "Fold" позволяют сворачивать и раскрывать блоки текста сразу во всем файле.

Выделение цветом

Позволяет выделять цветом отдельные синтаксические конструкции различных языков, например С/С++, Ассемблер, HTML и др. Чтобы установить выделение выберите пункт "Options local..." меню "Extras", в открывшемся окне кликните на ярлыке "syntax".

Для того, чтобы установить выделение для языка С, кликните на кнопке выбора файла. В появившемся риквесторе выберите файл warpC++.parser, или warpStormC++.parser если вы используйте компилятор StormC.

пример

В окне появятся элементы языка которые можно выделить цветом. Например С и С++ комментарии, зарезервированные слова и т.д. Кнопки со стрелками вниз, выводят окна в которых можно выбрать цвет, левая кнопка - цвет символов, правая - цвет фона. Например, выделение цветом таких элементов как Reserved words, Preprocessor, Types позволяет не только визуально выделить синтаксис языка, но и проследить за правильным вводом текста программы.

Для установки/снятия (Active/Off) выделения цветом кликните на кнопку "раскрывающегося" списка. Или в меню "View" воспользуйтесь пунктом "Syntax Highlighting".

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

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

Но прежде чем работать со справочной системой, ее нужно сначала установить. Выберите пункт "Options local..." меню "Extras", в открывшемся окне кликните на ярлыке "references". Установка справочной системы сводится к выбору каталогов (файлов) к которым она будет обращаться за информацией. Обычно выбираются каталоги содержащие файлы заголовки ("INCLUDE:", "STORMC:Include/"), и каталоги с "AutoDoc" файлами ("MUI/Autodocs", "Библиотека/Autodocs"). После выбора, GoldED заносит все нужные ссылки в файл базы данных (database) имя которого нужно указать.

пример

Итак, окно установки делится на два списка, список файлов баз данных - "Databases" и список имен каталогов (файлов) - "Reference documents". Кликните на кнопке "+", введите имя файла базы данных, затем выбирайте каталоги (файлы) для ссылок - кнопки выбора каталога и файлов. И, наконец, кнопкой "Create" создайте database файл.

Сканеры

Применяются для обзора содержимого файла, например всех определений C функций. Выберите пункт "Function list..." меню "Search". Если файл в окне - текст на С, то откроется окно в котором перечислены все функции определенные в файле.

пример

Одинарный щелчок по функции в списке, перемещает курсор в место ее определения. Если дважды щелкнуть в списке, то окно "Sections" после перемещения курсора закроется. Флажок "Unfold" позволяет сканировать и "свернутый" текст, флажок "Sort" сортирует список по алфавиту. Кнопкой "Update" можно обновить список. Если нажать на кнопку "Mode", то откроется дополнительное окно в котором представлены все сканеры.

пример

Сканер используемый в данный момент - активный. Он выбирается автоматически, в зависимости от типа файла, например сканер "с" если расширение файла , "аutoDoc" если расширение .doc и т.д. Можно поменять активный сканер если нужна другая информация, например выбрать "defines" для вывода списка всех макро-определений в файле.

Другие возможности

В заключение, приведу еще несколько полезных возможностей GoldED.

В меню "Search" пункт "Function find" позволяет с помощью сканеров автоматически находить определение слова на котором находится курсор, например, если поставить курсор на строке вызова С функции и выполнить эту команду, то курсор переместится на строку определения этой функции.

Также в меню "Search" находится пункт "Check ((..))", его используют в различных выражениях для проверки совпадения количества открытых и закрытых скобок. Установите курсор на строке содержащей выражение и выберите этот пункт. Если слишком много открытых скобок - появляется сообщение:

Too many opening brackets
закрытых:
Unexpected ')' in номер_столбца

Пункт "Matching Bracket" позволяет установить соответствие символов начала - { и конца - } блока на языке C. Это очень удобно когда в тексте программы много вложенных блоков, позволяет избежать сообщений об ошибках со стороны компилятора и логических ошибок. После установки курсора на символе "{" или "}" и выполнения этой команды, курсор должен перейти к соответствующему ему символу.


© 1999-2006  Андрей Черешнев
Начало
Сайт создан в системе uCoz