В дополнение к опциям, которые вы можете выбрать при запуске мастера документирования (Documenting wizard), вы можете использовать дополнительные опции вне мастера, изменив таблицу Fdkeywrd.dbf , которая содержит зарезервированные слова Visual FoxPro, размещенную в каталоге ...\Wizards или добавлением директив мастера в ваш код.

Изменение таблицы Fdkeywrd.dbf

Вы можете изменить стиль отступа для структуры CASE изменением значения поля Code в Fdkeywrd.dbf. По умолчанию, мастер ищет стиль отступа в структуре CASE подобно приведенному ниже:

 CopyCode imageСкопировать код
DO CASE
CASE case1=1
   case2=2
CASE case3=3
   case4=4
ENDCASE

Некоторые разработчики предпочитают делать отступ для строк между DO CASE и ENDCASE на допольнительный уровень, подобно приведенному ниже:

 CopyCode imageСкопировать код
DO CASE
   CASE case1=1
      case2=2
   CASE case3=3
      case4=4
ENDCASE

Если вы предпочитаете второй способ для ваших структур CASE, укажите это в Fdkeywrd.dbf.

Для указания полностью вложенных отступов в командах DO CASE
  1. Найдите файл Fdkeywrd.dbf в каталоге ...\Wizards корневого каталога Visual FoxPro.

  2. Откройте таблицу Fdkeywrd.dbf.

  3. Найдите запись ENDCASE.

  4. Изменение значения в поле Code на UU.

Добавление директив мастера

Вы можете разместить в вашем коде специальные директивы, которые указывают мастеру документирования, как выполнять конкретные задачи при анализе кода. Ниже перечислены доступные директивы мастера:

ACTIONCHARS

Определяет символы, используемые для создания действия или дерева диаграмм в вашем коде. Вы можете пожелать изменить установки по умолчанию, если кодовая страница отличается от ASCII 1250 или ANSI 1252 в FoxFont с целью получения ожидаемых символов.

EXPANDKEYWORDS

Определяет - будет ли активным расширение ключевых слов в мастере документирования. Значением по умолчанию является OFF, что оставляет ключевые слова в том виде, в котором они напечатаны вами. Если вы используете в вашем коде четырех-символьные сокращения, вы можете пожелать, чтобы ваш код был более разбираем; для чего установите эту установку в ON.

XREFKEYWORDS

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

ARRAYBRACKETS

Определяет - будут ли круглые и квадратные скобки рассматриваться как разные. По умолчанию установлено в ON, что означает, что квадратные скобки рассматриваются как разделители массивов, а круглые  - как разделители методов и функций.

ACTIONINDENTLENGTH

Определяет число пробелов, которые мастер использует для отступа в дереве или диаграмме действий. Минимально допускаются два пробеле. Функционально, в коде, нет различий между символвами пробела и табуляции. Отступы позволяют легче читать и понимать ваш код.

Вы можете поместить директивы мастера в главном программном файле вашего проекта (для управления мастером при анализе всех файлов с кодом в вашем проекте) или в индивидуальных программных файлах (для указания мастеру - как надо анализировать конкретные файлы).

Синтаксис директив начинается со звездочки для того, чтобы Visual FoxPro рассматривал их как комментарий и игнорировал их во время компиляции програм. Директивы не являются регистро-чувствительными. Примерный синтаксис директив приведен ниже:

 CopyCode imageСкопировать код
*# document directive

Для согласованности по всему вашему коду, в качестве неплохой представляется идея поместить директивы недалеко от начала главного програмного файла с тем, чтобы мастер нашел эти инструкции в начале анализа.

Директивы мастера описаны ниже.

*# document ACTIONCHARS " abcdef"

По умолчанию, когда мастер создает Action Diagram (Диаграмму действий) или Tree Diagram (Дерево действий), то он использует шесть символов, которые появляются как линии с прямыми углами, при просмотре в кодовой странице ASCII 1250 или ANSI 1252 в шрифте FoxFont. Не все символы размечаются в символы линии, когда просмотр диаграмм осуществляется в других кодовых страницах. Шесть символов, используемых по умолчанию и соответствующие им символы шрифта FoxFont перечислены нижк как a, b, c, d, e и f.

 
abcdef Значение по умолчанию в виде функции Chr( ) Как это будет отражено в FoxFont

a

32

(пробел)

b

196

FoxProHorzLine screenshot

c

179

FoxProVerticalLine screenshot

d

218

FoxPro90DegreeTurnLine screenshot

e

192

FoxPro90DegreeTurnLine2 screenshot

f

195

FoxProTsectionLine screenshot
NoteСовет

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

 CopyCode imageСкопировать код
*# document ACTIONCHARS " -|+++"
NoteЗамечание

Для просмотра списка поддерживаемых кодовых страниц обратитесь к описанию Кодовые страницы, поддерживаемые Visual FoxPro.

*# document XREF cMode

Разрешает перекрестные ссылки переменных. По умолчанию установлено в ON.

 
cMode Описание

ON

Разрешает кросс-ссылки переменных

OFF

Запрещает кросс-ссылки переменных

SUSPEND

апрешает кросс-ссылки переменных в текущем файле до тех пор, пока мастер документирования не встретит в файле следующее предложение:

*# document XREF ON

*# document EXPANDKEYWORDS cMode

Разрешает расширение сокращенных ключевых слов в вашем коде. Например, "DEFI WIND" будет расширено до "DEFINE WINDOW." По умолчанию установлено в OFF.

Caution noteПредупреждение

Не все ключевые слова в Visual FoxPro начинаются с уникальной строки в четыре символа. Например, "REPL" может быть сокращением для "REPLACE" или "REPLICATE." Будьте внимательны, если вы включили в код эту директиву и выбрали возможность переписи существующих файлов.

 
cMode Описание

ON

Разрешает расширение ключевых слов

OFF

Запрещает расширение ключевых слов

SUSPEND

Запрещает расширение ключевых слов в текущем файле до тех пор, пока мастер документирования не встретит в файле следующее предложение:

*# document EXPANDKEYWORDS ON

*# document XREFKEYWORDS cMode

Эта директива соответствует опции Cross-Reference Keywords в шаге 6 – "Finish" мастера документирования. По умолчанию установлено в OFF.

 
cMode Описание

ON

Разрешает перекрестные ссылки ключевых слов

OFF

Запрещает перекрестные ссылки ключевых слов

SUSPEND

Запрещает перекрестные ссылки ключевых словдо тех пор, пока мастер документирования не встретит в файле следующее предложение:

*# document XREFKEYWORDS ON

*# document ARRAYBRACKETS cMode

По умолчанию установлено в  OFF.

 
cMode Описание

ON

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

OFF

Мастер документирования считает, что оба типа скобок предназначены для массивов.

*# document ACTIONINDENTLENGTH nSpace

nSpace представляет собой число пробелов, которое должен использовать по вашему желанию мастер документирования для отступов. Минимально допустимым значением является 2.

Смотрите также