On-line: Pasha, гостей 1. Всего: 2 [подробнее..]
АвторСообщение



Пост N: 3
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 12.07.07 10:10. Заголовок: Кто какой редактор использует ?


Люди, подскажите какой текстовый редактор лучше использовать для программирования на Harbour или Clipper.
А то уже кучу перепробовал, ни один толком Clipper - язык не поддерживает.
Настроить конечно можно, но жалко времени.

Спасибо: 0 
Профиль
Ответов - 52 , стр: 1 2 3 All [только новые]


администратор




Пост N: 743
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.07.07 10:42. Заголовок: Re:


Far Manager + плагин Colorer

Спасибо: 0 
Профиль
Администратор




Пост N: 532
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 12.07.07 11:19. Заголовок: Re:


я тоже фар

Спасибо: 0 
Профиль
постоянный участник


Пост N: 326
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.07.07 11:36. Заголовок: Re:


Старый редактор DOS EDIT.

Спасибо: 0 
Профиль





Пост N: 110
Зарегистрирован: 06.06.06
ссылка на сообщение  Отправлено: 12.07.07 11:42. Заголовок: Re:


Dima пишет:

 цитата:
Far Manager + плагин Colorer



Pasha пишет:

 цитата:
я тоже фар



Поддерживаю, ФАР однозначно!


Спасибо: 0 
Профиль



Пост N: 81
Зарегистрирован: 15.12.06
ссылка на сообщение  Отправлено: 12.07.07 12:13. Заголовок: Re:


Я использую Multi-Edit (ME 7.0). Вообще этот редактор, на мой взгляд, не просто хороший, и не просто лучший, а лучший с большим отрывом от остальных, какие я видел. Имеется в виду как для программиста, так и для всех, для кого содержание информации важнее формы (бухгалтеров и проч.). Главное удобство - сохранение состояния (файл status.me, в каждой папке свой) - т.е. при стандартном запуске восстанавливаются все (почти) параметры редактирования: открытые файлы и параметры окон, положение курсора и выделенный блок в каждом окне, список образцов поиска (тоже свой) и т.д. Это очень полезно при перерывах в работе - легко вспомнить, чем занимался. Кроме того, такие удобства для программиста: разные цвета для разных языковых конструкций (языков поддерживается много, в т.ч. dBase-Clipper и С), поиск парных конструкций (скобок и др.),
автоматическая вставка отступов и других элементов языка, есть возможность запуска компилятора с автоматическим переходом на строку с ошибкой (я, правда, это не использую, на то есть причина). Есть прямоугольные блоки (очень полезно), а также строчные (поточные, как в Ворде, тоже есть). Настраиваются все цвета и назначение почти всех клавиш. Возможностей очень много, я их не использую и на четверть. Почти все функции реализованы через макросы, исходники есть, можно изменить и добавить свои (этим я занимался, например, перекодирование блока ANSI->OEM и наоборот и проч.). В общем, вещь!
Недостатки: 1. Досовский (хотя и 32-разрядный), поэтому не работает с виндовым буфером обмена (а это существенно, иногда приходится прибегать к фаровскому редактору или к блокноту). Свой буфер, конечно, есть, при некотором навыке можно его смотреть, редактировать и даже выбирать, что из него брать, а что нет.
2. Макроязык не слишком удобный.
3. Не поддерживает верчение колеса мыши.
Есть и более новые версии (я видел 9.х), но уже хуже - хотя добавлено кое-что новое, но убран status.me (а это главное). А ещё прямым текстом сказано, что убраны операции с блоками помимо буфера обмена (а было гораздо удобнее), используйте ctrl/c-ctrl/v. Т.е. подгоняется под дурацкий Microsoft-стандарт. Да и с исходниками, как я понял, хуже.
Так что несмотря на недостатки я предпочитаю ME 7.0, а также NC и KeyRus. Кому интересно - могу поделиться конкретными методами.




Спасибо: 0 
Профиль





Пост N: 15
Зарегистрирован: 17.10.05
ссылка на сообщение  Отправлено: 12.07.07 12:59. Заголовок: Re:


мультиэдит 7 + Клиппер-Макро

Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 12.07.07 17:20. Заголовок: Re:


me9 + Expert Guide (нет проблем со status.me )

Спасибо: 0 



Пост N: 3
Зарегистрирован: 10.07.07
ссылка на сообщение  Отправлено: 12.07.07 18:24. Заголовок: Re:


Полностью согласен с АМ. Добавлю еще, что ME великолепно реализовано сравнение двух файлов, а также работа с так называемым Multi-tags файлом, который позволяет конткстно перходить к функциям нажатием пары клавиш. С недостатками тоже согласен.

petr пишет:

 цитата:
me9 + Expert Guide (нет проблем со status.me )


Очень интересно! Поделись, пожалуйста, что такое Expert Guide? Обрабатывает ли ME9 файл ошибок HB в такой конфигурации?

Раз уж обсуждается какой редактор использовать, то хочу предложить участникам форума статью "От Clipper к Harbour через xMate". Несмотря на грандиозность названия это лишь мой опыт переноса Clipper приложений в консольные HB приложения. Статья оформлена в виде pdf-файла. 44 страницы и самое важное с картинками. В основном описывается xMate, настройка и возможности.

Если интересно, то подскажите только где его разместить, чтобы было удобно всем? Архив ~ 3 Мб: сама статья + настроечные файлы.


Спасибо: 0 
Профиль
администратор




Пост N: 745
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.07.07 19:03. Заголовок: Re:


TimTim пишет:

 цитата:
Если интересно, то подскажите только где его разместить, чтобы было удобно всем? Архив ~ 3 Мб: сама статья + настроечные файлы.


Да интересно !

На любой файлообменник сложи.
rapidshare.com
rapidshare.ru
slil.ru
и тд и тп


Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 12.07.07 20:06. Заголовок: Re:


Expert Guide - это NG под Win от Dave Pearson
http://www.davep.org/norton-guides/

Me9 - 9.10.04 , файл ошибок от Clpper хватает, Hb - не пробовал.
Вся настройка ME заняла много времени,но результат оправдал усилия, единственно - пока не удается одновременно использовать
( без переключения страницы) prg-файлы в кодировках 866 и 1251

Спасибо: 0 
постоянный участник




Пост N: 285
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.07.07 23:25. Заголовок: Re:


Присоединяюсь к клубу любителей МЕ. Использую его с 199х года, и не вспомнишь точно когда.
Настройки не требует, и не нужно ничего в реестр вносить.

Использую связку с hbmake.exe, т.е все проекты, редактор и xHarbour таскаю с собой на флешке.
Вставляешь ее в любой комп, даешь команду подключить диск Z: (subst z: fleshka) и можешь исправлять ошибки прямо у заказчика.

Спасибо: 0 
Профиль



Пост N: 4
Зарегистрирован: 05.06.07
ссылка на сообщение  Отправлено: 13.07.07 00:49. Заголовок: А я совсем не в строку живу :(


Я Crimson Editor пользую. Как-то привык и более ничего не надо.

Спасибо: 0 
Профиль



Пост N: 4
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 13.07.07 08:01. Заголовок: Re:


С FARом все понятно, но его не прицепишь к менеджеру проектов или IDE редактору.
ME тоже в связке с Виндузой не очень хорош.
Я имею ввиду какой-нибудь бесплатный редактор для программистов под Windows с цветовым выделением функций, отслеживающий конструкции типа IF-ELSE-ENDIF, DO WHILE-ENDDO, CASE-ENDCASE, позволяющий сворачивать функции, вставлять готовые конструкции и т.п.

Мне например понравился Programmer's 2Notepad , но в нем нет шаблона по Clipper.
Немного похож шаблон от Фортрана 95, но не на 100 %.
Вобщем таких редакторов с обалденными наборами язков куча, а вот Clipper вроде бы за язык не считают. Обыдно блин ! Вот я и подумал может кто уже занимался этим вопросом.

Спасибо: 0 
Профиль



Пост N: 5
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 13.07.07 08:40. Заголовок: Re:


Нашел еще один - SciTE

Но тоже clipper не поддерживает. К тому же не может вставлять готовые языковые конструкции.


UniRed вроде бы не плохо Клипперные програмы отображает, но не умеет ни сворачивать структуры, ни вставлять конструкции - примитив короче.


Если ни кто больше ни каких готовых вариантов не предложет, то может нам взять за основу SciTE или его клон Turbo Pad и разработать для них шаблоны под Clipper и xHarbour ? Или обратиться к их разработчикам.
Эти редакторы тоже с открытым кодом и один из них был бы не плохим дополнением к Harbour в качестве штатного редактора.

Спасибо: 0 
Профиль



Пост N: 4
Зарегистрирован: 10.07.07
ссылка на сообщение  Отправлено: 13.07.07 14:08. Заголовок: Re:


Ссылка на статью
"От Clipper к Harbour через xMate"
http://slil.ru/24627894

Спасибо: 0 
Профиль
администратор




Пост N: 748
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 13.07.07 16:28. Заголовок: Re:


TimTim пишет:

 цитата:
Ссылка на статью
"От Clipper к Harbour через xMate"


Спасибо !!!!!!!!!!!

Cделал зеркало на рапиде http://rapidshare.com/files/42684460/Clip2HB.rar

ЗЫ
У кого напряги с файло-помойками , можно воспользоваться вот таким сервисом :)
http://www.tcompressor.ru/Files-by-Email/

Спасибо: 0 
Профиль



Пост N: 7
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 16.07.07 04:34. Заголовок: Re:


TimTim спасибо за статью, но у меня все уперлось в какую-то ерунду.
Первое же объявление переменных PRIVATE дало кучу непонятных ошибок.
Та же самая программа при сборке с bat файла выдавала всего несколько ошибок связанных с нереализованными функциями в xHarbour.
<img src="http://rf.foto.radikal.ru/0707/fa/1f8fa58be406.jpg">
И что мне дальше с этим делать ?
Переменные эти мне явно нужны.

Вся строка выглядит так:
PRIVATE gruppa := "", tema := "", menumas[ 5, 3 ], kolvo_vop := 10, temastr := "", editor := "", instr := Space( 40 )


И еще вопрос - можно ли в xMate организовать контекстную помощь и вставку часто используемых конструкций ?


Спасибо: 0 
Профиль
Администратор




Пост N: 537
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 16.07.07 09:20. Заголовок: Re:


Ошибка связана не с Private, а с ключами компиляции

При таком подходе (без оператора Function) надо компилировать без ключа -n

Спасибо: 0 
Профиль



Пост N: 5
Зарегистрирован: 10.07.07
ссылка на сообщение  Отправлено: 16.07.07 09:23. Заголовок: Re:


Uncle_ed пишет:

 цитата:
у меня все уперлось в какую-то ерунду.
Первое же объявление переменных PRIVATE дало кучу непонятных ошибок.


Попробуй описание PRIVATE использовать внутри процедуры или функции.

Uncle_ed пишет:

 цитата:
И еще вопрос - можно ли в xMate организовать контекстную помощь и вставку часто используемых конструкций ?


Конечно, можно!
См. в статье "Редактирование" там про автозавершение и вставку часто используемых конструкций. А по поводу контекстной помощи см. "Подключение внешнего файла помощи" в котором описано как подключить xHarbour Lahguage Referens.

Спасибо: 0 
Профиль



Пост N: 10
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 16.07.07 10:20. Заголовок: Re:


Спасибо всем, помогло.
Помощь подключил, программу поправил.
Теперь остались только одни Warning. Это уже легче, хотя пока не понятно почему хHarbour ругается на мои переменные.


И почему не происходит линковка ?
BCC55 вроде настроил - не ругается. Неужели нужно обязательно исправить все Warning-и ?


Спасибо: 0 
Профиль
Администратор




Пост N: 539
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 16.07.07 10:37. Заголовок: Re:


Надо или убрать флаг компиляции -w
или (что лучше) описать private переменные командой memvar


Спасибо: 0 
Профиль



Пост N: 37
Зарегистрирован: 15.11.05
ссылка на сообщение  Отправлено: 16.07.07 14:01. Заголовок: Re:


Использую МЕ 7.0

КОНВЕРТОРЫ ГИПЕРТЕКСТОВ

CLIPPER-MACRO


А кто видел CLIPPER-MACRO 3.0?

Еще предлагали использовать notepad-plus
http://notepad-plus.sourceforge.net/ru/site.htm
Хотя нет там Клипера и KOI8 не поддерживается.




===================================
Менеджер Гипертекстов 2.03
Руководство пользователя

НАЗНАЧЕНИЕ МЕНЕДЖЕРА ГИПЕРТЕКСТОВ
---------------------------------

Менеджер Гипертекстов ориентирован прежде всего на профессиональ-
ных программистов, использующих в своей работе несколько языков и выб-
равших в качестве среды разработки редактор MULTI-EDIT American
Cybernetics Inc.

Менеджер Гипертекстов позволяет конвертировать и просматривать в
MULTI-EDIT файлы помощи для различных систем программирования. ВАМ БОЛЬ-
ШЕ НЕ НУЖНО загружать в память программы просмотра файлов помощи.

ТРЕБОВАНИЯ
----------

Менеджер Гипертекстов рассчитан на совместную работу с MULTI-EDIT
версий 6.0 и 7.0. Для нормального функционирования Менеджера необходи-
ма полная установка редактора, включающая в себя:

- исходные тексты (подкаталог SRC);
- утилиты HELPCX.EXE и HELPDX.EXE, CMAC.EXE.

КОНВЕРТОРЫ ГИПЕРТЕКСТОВ
-----------------------

Назначение конверторов - это преобразование файла к формату ACI
Hypertext, который используется в MULTI-EDIT. На данный момент Менед-
жер Гипертекстов снабжается следующими конверторами:

NG2ME.COM - Конвертор гипертекстов из формата Norton Guides.
BH2ME.COM - Конвертор файлов помощи из формата Borland C/C++, Turbo
Assembler.
IHP2ME.EXE - Конвертор файлов помощи из формата WatCom C/C++.
LST2ME.EXE - Конвертор списка прерываний IBM PC Ральфа Брауна.

Командная строка для запуска конверторов:

convert source [target], где

convert - имя конвертора,
source - имя исходного (конвертируемого файла),
target - имя выходного (ACI Hypertext файла).

Для конвертора списка прерываний IBM PC (*):

lst2me source_path [target], где

source_path - имя каталога, где расположен список прерываний,
target - имя выходного (ACI Hypertext файла).

Расширение выходного файла всегда заменяется на HLP. Если имя выход-
ного файла опускается, то он будет иметь имя, совпадающее с именем вход-
ного и расширение HLP.

Коды возврата конверторов (errorlevel):

0 - нормальное завершение.
1 - ошибка при указании аргументов или ошибка конвертации.

Пример: ng2me mouse.ng c:\me\hyper\mouse.hlp

Поиск и конвертацию гипертекстов можно произвести на стадии инстал-
ляции Менеджера Гипертекстов, включив соответствующие переключатели в
диалоге настройки инсталляции.

* Некоторые пояснения по конвертору списка прерываний IBM PC Ральфа
Брауна: в отличии от других конверторов, этот конвертор использует нес-
колько исходных файлов с различной информацией, объединяя их в один ги-
пертекст:

INTERRUP.LST - Собственно список прерываний IBM PC
CMOS.LST - Описание CMOS
FARCALL.LST - Точки входа
MEMORY.LST - Адреса памяти
PORTS.LST - Порты ввода/вывода
MSR.LST - Регистры, зависимые от модели
GLOSSARY.LST - Словарь используемых сокращений

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

РАЗМЕЩЕНИЕ ГИПЕРТЕКСТОВ
-----------------------

При инсталляции Менеджера Гипертекстов в каталоге, где расположен
MULTI-EDIT, создается подкаталог HYPER, в который помещаются все найден-
ные и отконвертированные гипертексты. В дальнейшем, если Вы будете кон-
вертировать гипертексты вручную, желательно, чтобы Вы помещали выход-
ные файлы в этот каталог.

Вы можете также создать один или несколько подкаталогов любого уров-
ня вложенности в каталоге MULTI-EDIT и размещать гипертексты в них.
Это не помешает нормальному функционированию Менеджера, т.к. при обнов-
лении списка гипертекстов он производит поиск всех файлов с расширениями
HLZ и HLP, расположенных в каталоге MULTI-EDIT или его подкаталогах.

Проследите, чтобы в сканируемых подкаталогах не было файлов с расши-
рениями HLZ и HLP, не являющимися гипертекстами MULTI-EDIT. Файлы с рас-
ширением HLZ, скорее всего, являются явной принадлежностью MULTI-EDIT.
Но множество систем имеет файлы с расширением HLP, которые не совместимы
с форматом, используемым MULTI-EDIT. Попытка загрузить в MULTI-EDIT чу-
жой или испорченный файл гипертекста практически всегда приводит к зави-
санию машины.

ОБНОВЛЕНИЕ СПИСКА ГИПЕРТЕКСТОВ
------------------------------

Обновление списка гипертекстов всегда доступно по нажатию на клавишу
F10 из меню списка гипертекстов. Используйте сканирование в том слу-
чае, если Вы добавили в каталоги новые гипертексты.

При сканировании пропускаются файлы, представляющие собой стандарт-
ные файлы помощи MULTI-EDIT. Список этих файлов находится в
HFM_UTIL.S. Можно добавлять файлы к этому списку или удалять их.

HELPCX.EXE - индексирование и сжатие гипертекстов
-------------------------------------------------

В пакет стандартной поставки MULTI-EDIT входит утилита сжатия и ин-
дексации гипертекстов HELPCX.EXE. После обработки этой утилитой файлов
HLP Вы получите проиндексированный и сжатый файл с расширением HLZ. Пос-
ле этого Вы можете удалить оригинальный HLP файл.

Внимание: HELPCX, входящий в состав пакетов MULTI-EDIT 6.0 и 7.0 со-
держит ошибку: файл, содержащий количество страниц более, чем 2426, нап-
ример TCHELP фирмы Borland, будет откомпилирован неверно, и, в дальней-
шем, приведет к зависанию редактора. В составе Менеджера Гипертекстов
входит утилита, исправляющая данную ошибку: MEFIXCX.COM. При инсталляции
Менеджера производится попытка исправить HELPCX. Если инсталляция прошла
без сообщений об ошибке, значит Ваш HELPCX исправлен и Вам не о чем бес-
покоится.

Для того чтобы исправить HELPCX самостоятельно, cкопируйте файл
MEFIXCX.COM в тот же каталог, где находится HELPCX.EXE и запустите
его. Если Вы ранее упаковывали HELPCX чем нибудь вроде PKLITE, LZ или
DIET, обязательно распакуйте прежде, чем запускать MEFIXCX. Если MEFIXCX
выдаст сообщение: Bad or corrupt file, то возможно Вы столкнулись с не-
известной реализацией HELPCX. Свяжитесь по этому поводу с разработчи-
ком Менеджера Гипертекстов.

MEFIXCX на данный момент умеет исправлять три релиза HELPCX:

Версия 3.0 релиз от 24/09/92 в составе ME6.0
Версия 3.0 релиз от 12/08/93 в составе ME7.0
Версия 3.0 релиз от 22/10/93 в составе ME7.0e - ME7.0i

Кроме того, упаковывая файл, HELPCX использует блоки размером от 1
до 15 килобайт. По умолчанию используются 5 килобайтные блоки. Число
блоков ограничено 1000, т.о. размер исходного файла не может превышать 5
мегабайт. Такие файлы встречаются крайне редко, но для подстраховки ре-
комендуется использовать ключ /15, задающий блок в 15 килобайт, т.к.
HELPCX не предупредит Вас о превышении количества блоков, а просто соз-
даст файл с повреждениями различной степени тяжести, который в дальней-
шем может привести к нарушениям в работе ME.

HELPDX.EXE - распаковщик сжатых гипертекстов
--------------------------------------------

В пакет стандартной поставки MULTI-EDIT входит также утилита распа-
ковки сжатых гипертекстов HELPDX.EXE. После обработки этой утилитой фай-
лов HLZ Вы получите оригинальный файл с расширением HLP.

Внимание: HELPDX, входящий в состав пакетов MULTI-EDIT 6.0 и 7.0 со-
держит ошибку: файл, упакованный с размером блока более 6000 байт, будет
декомпилирован неверно. В составе Менеджера Гипертекстов входит утилита,
исправляющая данную ошибку: MEFIXDX.COM. При инсталляции Менеджера про-
изводится попытка исправить HELPDX. Если инсталляция прошла без сообще-
ний об ошибке, значит Ваш HELPDX исправлен и Вам не о чем беспокоится.

Для того чтобы исправить HELPDX самостоятельно, cкопируйте файл
MEFIXDX.COM в тот же каталог, где находится HELPDX.EXE и запустите
его. Если Вы ранее упаковывали HELPDX чем нибудь вроде PKLITE, LZ или
DIET, обязательно распакуйте прежде, чем запускать MEFIXDX. Если MEFIXDX
выдаст сообщение: Bad or corrupt file, то возможно Вы столкнулись с не-
известной реализацией HELPDX. Свяжитесь по этому поводу с разработчи-
ком Менеджера Гипертекстов.

MEFIXDX на данный момент умеет исправлять три релиза HELPDX:

Версия 3.0 релиз от 24/09/92 в составе ME6.0
Версия 3.0 релиз от 12/08/93 в составе ME7.0
Версия 3.0 релиз от 22/10/93 в составе ME7.0e - ME7.0i

КОНТЕКСТНАЯ ПОМОЩЬ
------------------

Для того чтобы использовать контекстный поиск, Вам необходимо указа-
ть список справочников в поле Default Help File в меню описания расшире-
ний файлов (Other -> Installation and Setup -> Filename
Extensions...). Файлы должны разделяться точкой с запятой, расширение
файла может не указываться (подразумевается HLP или HLZ). Пример назна-
чения файлов для расширения PRG и CH:

--------------------------EXTENSION SETUP-------------------------¬
¦Extension(s): PRG;CH Tab spacing: 2 ¦
¦Edit mode: Indent style: Right margin: 75 ¦
¦ (¦) Text ( ) Off [ ] Word wrap ¦
¦ ( ) Document (¦) Auto [ ] Auto-template expansion ¦
¦ ( ) Smart Colors: [ ] ¦
¦Tab settings mode: ¦
¦ (¦) Using tab and margin settings - ignoring format line ¦
¦ ( ) Using format line - ignoring tab and margin settings ¦
¦ [Edit format line] ¦
¦ File type: ¦
¦Language type: [DBASE ] (¦) MSDOS text ¦
¦Post-load macro: •••••••••••••••••••••••••• ( ) UNIX text ¦
¦Default directory: •••••••••••••••••••••••••• ( ) Binary ¦
¦Default Help File: design;despro;c5g01r•••••• Bin rec length ¦
¦Compiler-Program setup- 0 ¦
¦ ---------------------- ¦
¦ ¦
¦ OK<ENTER>- Cancel<ESC>- Help<F1>- ¦
¦ --------- ----------- -------- ¦
L=================================================================-

Для нормального функционирования контекстного поиска, необходимо
указание путей для поиска гипертекстов. При нормальной инсталляции Ме-
неджера, производится автоматическое изменение и перекомпиляция файла
STARTUP.S, где производится создание глобальной переменной !HELP_PATH!.

Если при инсталляции не удалось изменить файл в следствии какой-либо
ошибки или позднее Вы создали собственный каталог для размещения гипер-
текстов, Вам необходимо будет добавить в STARTUP.S новые пути для поис-
ка. Для этого найдите в файле STARTUP.S строку, содержащую фразу:
Set_Global_Str('!HELP_PATH!'). Если это строка закомментирована, удалите
символы комментария. Добавьте в строку новые пути поиска, например для
\ME\GUIDE:

Set_Global_Str('!HELP_PATH!','<ME_PATH>HELP\;<ME_PATH>;<ME_PATH>GUIDE\');

ПЕРЕИМЕНОВАНИЕ ГИПЕРТЕКСТОВ
---------------------------

К сожалению, файлы помощи Borland C/C++ и WatCom C/C++ не содержат в
своей структуре названия текста, поэтому, скорее всего, после конверта-
ции Вы увидите в окне со списком гипертекстов несколько файлов с одина-
ковыми именами, к примеру "TURBO C HELP FILE" или "Table of Contents".
Вы можете переименовать эти гипертексты. Для этого сначала просмотрите
файл, затем выберите в списке кнопку Edit и замените имя в поле Name.
Нажав Ok, Вы увидите требование подтверждения изменения имени: Change
Hypertext name in file?. Выберите Yes и гипертекст будет переименован.

ТЕХНИЧЕСКАЯ ПОДДЕРЖКА
---------------------

Автор примет любые предложения и замечания по данному программному
продукту. Вы можете отправлять их с помощью E-mail по адресу:

glassman_ru@geocities.com

В поле Subject письма обязательно сделайте пометку "HFM:". Если
письмо вызвано какими-либо техническими проблемами, постарайтесь предос-
тавить максимально полную информацию о среде, породившей проблему. (Вер-
сия и особенности ME, конфигурацию и тип машины, видеоадаптера, список и
порядок загруженных TSR программ и т.п.). Также можете заглянуть на мою
домашнюю страницу в интернет:

http://www.geocities.com/SiliconValley/Vista/7567/




=========================================
Вниманию всех, программирующих на CLIPPER!

Тем, кто уже использует CLIPPER-MACRO в работе
и трижды тем, кто впервые об это слышит!

---¬ --¬
-----¬--¬ L=¬¦ L¬¦
¦ г==-¦ ¦ --¬-----¬-----¬-----¬------¬ ---¦ ¦¦
¦ ¦ ¦ ¦ ¦ ¦¦ г¬ ¦¦ г¬ ¦¦ -==-¦ г===- ¦г=- ¦¦
¦ ¦ ¦ ¦ ¦ ¦¦ L- ¦¦ L- ¦¦ L-¬ ¦ ¦ ¦L-¬ -¬¦¦
¦ L--¬¦ L--¬¦ ¦¦ г==-¦ г==-¦ г=- ¦ ¦ L==- L-L-
L====-L====-L=-L=- L=- ¦ L--¬L=-
--------¬ L====-
¦ г¬ г¬ ¦-----¬-----¬------¬-=====¬
¦ ¦¦ ¦¦ ¦¦ г¬ ¦¦ г==-¦ г===-¦ г=¬ ¦
¦ ¦¦ ¦¦ ¦¦ L- ¦¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦¦ ¦¦ ¦¦ г¬ ¦¦ L--¬¦ ¦ ¦ L-- ¦
L=-L=-L=-L=-L=-L====-L=- L=====-
г==================================================================¬
¦ С и с т е м а п о д д е р ж к и я з ы к а C L I P P E R ¦
L==================================================================-
г============================¬
¦ Георгий ЖЕРДЕВ ¦
¦ 672005 Чита, Рахова, 98-49 ¦
L============================-


ЭТО - новая версия системы поддержки программирования на CLIPPER в
среде Multi-Edit 6.x. В нескольких словах, еще Вы еще не знаете о
таком, система призвана сделать жизнь малиной всем, кто связал ее с
CLIPPER и Multi-Edit. Насколько это удается - проверьте.


<!!!> NOTE для пользователей CLIPPER-MACRO 1.0 и 2.0:

Отличия и вопросы переинсталляции - на второй странице данного
файла.


<!!!> Предпосылки...

Причины, вызвавшие появление CLIPPER-MACRO, очевидно, знакомы многим
(если лично Вам они не знакомы, я Вам завидую!). В моем характере две
характерные черты: крайняя рассеянность и расхождение в скорости
процессов мыслительных и двигательных. Пока пальцы выстукивают на
клавиатуре имя очередной функции, мысли успевают убежать далеко
вперед. Пальцы безнадежно отстают, в функциях теряются буквы и
скобки, в скобках пропадают аргументы, "DO CASE" завершается
"ENDIF",- и в результате любой акт компиляции становится испытанием
личного мужества и терпения.

Когда мне все это надоело, я и взялся писать макросы.


<!!!> Не топчите попусту клавиатуру...

Вам больше не нужно выписывать мудреные имена функций, команд, методов
и т.п.: введите в текст 1-3 буквенную аббревиатуру ("tb" или "sam"),
нажмите функциональную клавишу - и в тексте появится что-нибудь типа
TBrowseDB() или, того лучше, CSetAtMUPA().

Отступление: С большим трудом сейчас набирал эти два имени.
Честно говоря, после двух лет работы с CLIPPER-MACRO
я уже разучился писать все эти импортные имена.
Иногда приходится вместо Multi-Edit использовать
какой-либо другой редактор (тот же Norton Editor),
и, следовательно, обходиться без CLIPPER-MACRO,-
это мучительно!

В макросах системы содержатся имена практически всех стандарных
команд, функций, а также переменных и методов классов CLIPPER 5.x
(поскольку никакой принципиальной разницы в синтаксисе от версии к
версии CLIIPER не происходило, Вы можете использовать эту систему и с
более ранними версиями языка). Мало того, Вы можете создать сколько
угодно дополнительных словарей (скажем по словарю на каждую
дополнительную используемую Вами библиотеку плюс словарь функций
проекта, над которым Вы работаете), назначить их хоть всем клавишам
Вашей клавиатуры,- и в любой момент иметь "под рукой" любую их нужных
Вам функций. Единственная задача - удержать в голове все существующие
аббревиатуры. Но, как я проверил на себе, это совершенно не сложно,
хотя и потребует определенного времени. Чем больше Вы программируете,-
тем, естественно, меньше времени.


<!!!> Кто-то теряет, а кто-то находит...

Наверное, и Вам это знакомо: начнешь писать какой-нибудь цикл типа
"DO WHILE" экрана на два,- и в пылу вдохновения забудешь завершить
все финальным "ENDDO". Компилятор ругается: "Unclosed control
structures", вежливо подсказывая номер последней строки файла, - а
где она на самом деле, эта "unclosed", и где же ее следует закрыть?!
Иногда поиски превращаются в захватывающий детектив.

Я Вам особенно сочуствую, если Вы любитель встроенных присваиваний и
функции If(). Не приведи, господи, потерять скобку в строке типа:

cAnswer := If( (nPos := At('рай',(cStr := 'Я крайне рад!'))) > 0,;
Substr(cStr, nPos, 3), If((nPos := At('ад',cStr)) > 0,;
Substr(cStr, nPos, 2), ''))

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

Но... Теперь я Чебурашка,- то-есть пользуюсь CLIPPER-MACRO. Для того,
чтобы привести в примере абзацем выше фразу, как ругается компилятор,
мне пришлось заглянуть в документацию: сам я уже давно не получал
таких сообщений и забыл, как они выглядят! Стоит мне ввести в текст
аббревиатуру "dw", как она тут же заменяется на строку "DO WHILE"
плюс - строкой ниже - "ENDDO". Можно спокойно поместить между двумя
этими строчками хоть весь файл,- конец цикла у нас уже в тексте, и
компилятор не будет на нас в обиде. Стоит мне нажать клавишу
"(" [открывающая скобка], как тут же, следом за ней выскочит
закрывающая ")", а курсор окажется между скобками! Это относится к
любым видам скобок и любым кавычкам. Наконец, если я ввожу в текст
аббревиатуру любой из CLIPPER-функций ("ss" или "ca"), функция
выводится в текст вместе с полагающимися скобками, а позиция курсора
будет зависеть от типа функции: имеет она аргументы или нет
("SaveScreen(-)" или "DBCloseArea()-").

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


<!!!> И еще, еще, еще...

Полный перечень всех макросов смотрите в CLIPPER.HLP. Там есть и еще
кое-что полезное.
Там же читайте и подробную (в меру моих сил) инструкцию по
инсталляции системы.


<!!!> О делах материальных...

Вы можете пользоваться CLIPPER-MACRO совершенно свободно и как Вам
заблагорассудится. Можете передавать друзьям и знакомым. Можете,
наконец, и вовсе ею не пользоваться. Единственная, скромная и очень
убедительная просьба: если Вы все-таки сохраните систему у себя, не
выбрасывайте макрос cmabout.mac,- поместите его со всеми остальными
макросами Multi-Edit. Он используется в Clipper.hlp и там мой адрес.
Глядишь, и черкнете пару слов. С пожеланиями, и вообще:
познакомимся,- может, найдем общие интересы.

Если же Вы пришлете перевод на (скажем округленно) 1000 рублей (что
за деньги!), будем считать это регистрационным взносом, поводом
для меня своевременно уведомлять Вас обо всех усовершенствованиях
в макросах и оплатой права на бесплатное (и в первую очередь)
получение следующей версии системы. CLIPPER-MACRO начиналась еще
с Multi-Edit 4.0. Появление новых версий Multi-Edit - это повод
для появления новых версий CLIPPER-MACRO. Плюс к тому, в двери
стучится CLIPPER 5.2,- и это тоже повод. Ну, и наконец,
CLIPPER-MACRO развивается и сама по себе. Об этом - следующий
раздел.


<!!!> О СЛЕДУЮЩЕЙ ВЕРСИИ

CLIPPER-MACRO 3.0 уже на подходе! В полном согласии со всеобщей
закономерностью, она будет не только более совершенной, более
многофункциональной (это гарантируется!), но и гораздо более
объемной. Уже сейчас, в не совсем дописанном виде, общий объем файлов
новой версии - около мегабайта. Понятно, что в СофтПанораму такой
пакет уже не возьмут (огромная благодарность редакции за публикацию
данной версии!). Поэтому - читайте предыдущий раздел...

Что будет в CLIPPER-MACRO 3.0:

- Главное: полностью стирается грань между встроенными словарями
макроподстановок (теми, что сейчас находятся в файле clipper.mac) и
пользовательскими словарями (теми, что сейчас существуют в формате
Multi-Edit-баз данных / файлы *.uf). Сейчас встроенные словари
работают гораздо быстрее, чем пользовательские (что естественно,
так как они являются макросами), зато пользовательские словари
гораздо проще пополнять и редактировать (что естественно, так как
они являются базами данных).
Словарь новой версии будет одновременно и базой данных, доступной
для модификаций, и макросом, автоматически создаваемым и
компилируемым на основе базы данных. Удобство + скорость!
Пользовательские словари в их нынешнем понимании тоже остаются - в
целях совместимости с предыдущими версиями системы. Однако при
желании их можно будет автоматически преобразовать в словари нового
типа. Наконец, в этот же новый формат переведены и все словари
стандартных CLIPPER-команд и функций. То-есть, Вы сможете без
проблем редактировать и их, если Вас там что-то не устраивает
(скажем, Вам захочется изменить аббревиатуру вызова
макроподстановки).

- При желании Вы теперь можете включить режим запроса параметров
выводимой функции. То-есть, прежде чем имя функции будет введено в
текст, перед Вами появится окошко с перечислением всех требуемых в
функции параметров и запросом каждого из них. После этого функция
будет выведена в текст вместе со всеми указанными Вами параметрами.
Очень удобный способ не забыть порядок и количество параметров в
много-параметровых функциях (AChoice() или MemoEdit(), например).
В этом окошке будут также реализованы интерфейс с Norton Guide для
получения быстрой справки по функции (если Вы пользуетесь в работе
*.ng-файлами) и возможности просмотра соответствующих
include-файлов, содержащих макроопределения для данной функции. Вся
эта система запроса параметров легко создается и модифицируется,-
так что Вы сможете снабдить ею все словари Ваших макроподстановок.

- К шести существующим типам макроподстановок (см. CLIPPER.HLP - типы
вывода мнемонических имен) прибавится седьмой - выполнение
заданного Вами макроса по выводу макроподстановки. Это еще более
расширит возможности вывода.

- Еще более расширяется контроль за синтаксической правильностью
текста: при вводе закрывающей скобки сразу проверяется наличие
парной открывающей; при вводе "EXIT" отслеживается, находитесь ли
Вы внутри цикла "DO WHILE" или "FOR-NEXT".

- Расширены возможности документирования файлов.

- Еще целый ряд макросов, облегчающих жизнь. Например, определение
"на лету" макроподстановок: Вы можете назначить на время сеанса
редактирования имя переменной какой-либо клавише,- и далее вводить
это имя в текст одним нажатием клавиши.

- Существенно расширена HELP-система. В любой момент можно получить
быструю справку по всем назначениям клавиш, всем актуальным
макроподстановкам, добавлен макрос загрузки внешних файлов
(include, prg-examples и т.п.) в HELP-окно.

- Все загружаемые системой макросы действуют только в окне загрузки!
Если CLIPPER-MACRO активируется при загрузке *.prg-файла, ее
макросы будут выполняться только в окне, где редактируется
*.prg-файл. Во всех остальных окнах будут работать макросы
стандартного KEYMAP.

- Полностью автоматизированная инсталляция / переустановка с
предыдущих версий.

- Гибкая настройка по типу "Installation and Setup" самого
Multi-Edit: в любой момент Вы можете переопределить любые параметры
системы с модификацией загрузочного файла.

Э т о т о л ь к о в к р а т ц е !

Если желаете подробностей, если есть какие-то вопросы, проблемы,
пожелания, упреки и т.д. и т.п. - п и ш и т е !
Я буду очень рад Вашим письмам!

Георгий ЖЕРДЕВ

672005. Россия, г.Чита-5,
ул. Рахова, 98, кв. 49
Жердеву Георгию
07-02-93 00:11am Владимировичу

*****************************************************************************
Для пользователей CLIPPER-MACRO 1.0 и 2.0
*****************************************************************************

------------------------------------¬
¦Что новенького в CLIPPER-MACRO 2.1?¦
L------------------------------------

Не так, чтобы много, но п р и н ц и п и а л ь н о !

Р а н ь ш е : помимо встроенных словарей стандартных CLIPPER-команд,
CLIPPER-функций и CLIPPER-методов/переменных классов, Вы могли
использовать только один дополнительный (пользовательский словарь) в
сеансе работы. Для переназначения словаря требовалось вызвать макрос
CLIP1^CLIP_USERNEW и заменить один словарь на другой.

Т е п е р ь : Вы можете не только иметь сколько угодно
дополнительных словарей функций, но и сколько угодно их одновременно
использовать, назначая разные словари разным клавишам (будь у Вас не
101-, а 1001-к ...

Спасибо: 0 
Профиль



Пост N: 37
Зарегистрирован: 15.11.05
ссылка на сообщение  Отправлено: 16.07.07 14:01. Заголовок: Re:


... нопочная клавиатура, Вы бы могли использовать 1001
словарь одновременно!). Это не роскошь, а необходимость: клипперисты
обычно используют по несколько допонительных библиотек: Clipper
Tools, Planet, Flipper и т.д. Составьте словари наиболее часто
используемых функций, по одному на бибилиотеку,- и Вам не придется
выписывать вручную что-то типа csetatmupa().

К р о м е т о г о :

а) Изменены макросы ввода "CASE", "OTHERWISE", "ELSE", "ELSEIF",
"RECOVER" и "RECOVER USING". Теперь эти слова не просто вводятся с
нужным отступом, но при этом проверяется, туда ли они попали (т.е., Вы
будете предупреждены, например, вводя "CASE" при полном отсутствие "DO
CASE" выше по тексту). Побочным следствием этого нововведения стало
более корректное выполнение отступа, вне зависимости от величины
отступа предыдущей строки:

Раньше: If lCondition
Eval( {|par1,par2| ;
If(SomeFunc(par1,par2), DoFunc1(), ;
DoFunc2()) })
!! <ElseIf> было бы здесь --> ElseIf -
EndIf

Теперь: If lCondition
Eval( {|par1,par2| ;
If(SomeFunc(par1,par2), DoFunc1(), ;
DoFunc2()) })
ElseIf - <-- <ElseIf> будет здесь !!
EndIf


б) В связи с наличием макросов ввода парных скобок-кавычек (), {}, [],
"" и '' показались необходимыми и обратные макросы. Если Вы подвязали
макрос CLIP^TWOBRANCH, как и рекомендовалось, к клавише "(" (т.е.
<Shft9>), Вы лишились возможности вводить скобку "(" индивидуально,
без ее правой напарницы. Что, хоть и изредка, но бывает необходимо. Т
е п е р ь эта возможность Вам возвращена. Макросу инициализации
системы "CLIPPER^ON" передайте параметр: "/SC=1". При этом будут
установлены все уже известные Вам макросы ввода парных скобок/кавычек
(т.е., больше нет необходимости назначать их клавишам вручную при
построении CLIPMAP.DB) и плюс у Вас появятся следующие возможности:

<Alt9> или <AltShft9> Ввод одиночной (
<Alt[> Ввод одиночной [
<Alt'> Ввод одиночной '
<AltShft[> Ввод одиночной {
<AltShft'> Ввод одиночной "

Обратите внимание: эти установки действуют только в окнах с
*.PRG-файлами (и с *.CH, если Вы определили CLIPPER^ON для этого
расширения)! Если Вы находитесь в ином окне эти клавиши будут
выполнять свои стандартные функции.

в) Помимо перечисленных выше добавился еще ряд макросов:

CLIP1^CLIP_NEWWORD Добавление нового определения в
словарь пользовательских функций
"на лету", используя слово под
курсором.
CLIP2^CLIP_FIND Макрос поиска начала / конца
текущей структуры, процедуры или
функции.
CLIP2^CLIP_CHMAKE Теперь макрос CLIP2^CLIP_RMAKE
выводит список доступных
*.RMK-файлов для выбора только
при первом вызове и использует
однажды выбранный файл при всех
последующих вызовах (если Вы раз
по двадцать за сеанс
компилируете файлы, это
существенно). Для смены
*.RMK-файла, используемого по
умолчанию и добавлен макрос
CLIP2^CLIP_CHMAKE.

г) Существенно изменен макрос CLIP2^CLIP_BATCOMPILE: добавлены новые
параметры. Подробности - в CLIPPER.HLP.

д) Устранены некоторые досадные мелочи, ранее присутствовавшие в
версиях 1 и 2.0. Вроде отсутствия автоотступа после "elseif" и
"recover", знака присвоения "=" вместо ":=" в "FOR = TO ... NEXT"
(чистая "косметика",- но красивее же!). Более грамотно работает макрос
вызова пользовательского словаря,- не пишет на экран первую попавшуюся
функцию, если Вы нажали <ESC> или <F10>, отказавшись от ввода
Template. Возможно, Вы этих оплошностей и не заметили или не обратили
внимания, но я, заметив, разумеется, не мог их не исправить.

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

-------------------------------------------------------------------------¬
¦Что сделать, чтобы перейти из CLIPPER-MACRO 1.0/2.0 в CLIPPER-MACRO 2.1?¦
L-------------------------------------------------------------------------

1. Разместите файлы согласно указаниям файла FILES.DOC. Используя
CMAC.EXE, откомпилируйте макросы и перенесите их в тот каталог, где
у Вас расположены все макросы Multi-Edit. Если Вы использовали
CLIPPER-MACRO версии 1, где-то в каталоге Multi-Edit должен
располагаться файл USERFUNC.CLP. Удалите его,- он больше не нужен.

2. В EXTENSION SETUP меню INSTALL для файлов *.PRG в строке Post-Load
Macro у Вас указан вызов макроса инициализации системы
"CLIPPER^ON". Если Вы передавали ему в качестве параметра имя
Вашего пользовательского словаря функций ("/UL="), можете этот
параметр убрать, он больше не нужен. (Хотя можете и оставить, если
лень перекомпилиро- вать после этого INIT.MAC,- никакого вреда этот
параметр не принесет).

3. Все Ваши пользовательские словари теперь можете привязывать
непосредственно к клавишам (см. подробнее CLIPPER.HLP -
"ПОЛЬЗОВАТЕЛЬСКИЕ ФУНКЦИИ") либо в CLIPMAP.MAC (меню Multi-Edit
"Installation and Setup" / "Key mapping"), либо оперативно путем
вызова макроса CLIP1^CLIP_USERNEW. Таким образом, сколько клавиш на
Вашей клавиатуре, столько словарей одновременно Вы можете
использовать.

4. Для нормального функционирования макросов CLIP1^CLIP_USERNEW и
CLIP1^CLIP_USERWORK зарегистрируйте все Ваши пользовательские
словари. Для этого вызовите макрос CLIP1^CLIP_USERWORK - появится
окошко "Выберите словарь". Пользуясь клавишей <INS> (Create),
добавьте в окошко имена файлов Ваших словарей с указанием
каталогов, где они хранятся (см. более подробное описание работы с
макросом в CLIPPER.HLP - "ПОЛЬЗОВАТЕЛЬСКИЕ ФУНКЦИИ"). Кстати, с
этим Вы тоже можете не спешить. Если Вы будете использовать свои
словари, рано или поздно, по мере использования, Вы все равно их
все зарегистрируете.


И В С Ё ? !
ВСЁ!
В С Ё ! ! !

07-02-93 00:15am Георгий ЖЕРДЕВ


Спасибо: 0 
Профиль



Пост N: 12
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 17.07.07 02:29. Заголовок: Re:


Pasha пишет:

 цитата:
Надо или убрать флаг компиляции -w



Спасибо, помогло.

Теперь только осталось нереализованные функции заменить чем-нибудь.



Спасибо: 0 
Профиль
Администратор




Пост N: 540
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 17.07.07 07:11. Заголовок: Re:


А что за функции ?

Спасибо: 0 
Профиль



Пост N: 13
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 17.07.07 10:09. Заголовок: Re:


inkeytrap, tempfile - где-то на форуме уже встречал им замену
fontselect, random...

Но самое сложное найти замену функциям которые были в левых библиотеках.
Свои библиотеки я конечно переделаю.
А вот у меня еще есть библиотека, которая работает с графикой PCX - думаю придется c помощью GUI рисовать.

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


Спасибо: 0 
Профиль
Администратор




Пост N: 541
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 17.07.07 10:30. Заголовок: Re:


#include "common.ch"

Function Random(lMode)
DEFAULT lMode TO .T.
Return if( lMode, HB_RandomInt( 0, 65535 ), HB_RandomInt( -32768, 32767 ) )

function TempFile(cDir, cExt) // returns a temporary filename

local cFileName

static cOldName

while File( ( cFileName := StrTran( Time(), ":", "" ) ) ) .or. ;
cFileName == cOldName
end

cOldName = cFileName

return cFileName + if(Empty(cExt), '', '.' + cExt)


Спасибо: 0 
Профиль
Администратор




Пост N: 542
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 17.07.07 10:35. Заголовок: Re:


inkeytrap когда-то делал, пошукаю

консоль windows/gtwvt аналога blink-атрибута не имеет, так что прийдется обходиться без этих красивостей типа fontselect

Спасибо: 0 
Профиль



Пост N: 15
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 17.07.07 11:51. Заголовок: Re:


Спасибо огромное !
Только xHB ругается на строку - DEFAULT lMode TO .T.

Оказывается есть функция HB_FTEMPCREATE(). Чем она от старой TEMPFILE() отличается ?

Спасибо: 0 
Профиль
Администратор




Пост N: 543
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 17.07.07 13:54. Заголовок: Re:


Надо указать

#include "common.ch"

FTempCreate создает вр.файл и возвращает хэндл, а TempFile формирует имя и создавать файл затем надо самому


Спасибо: 0 
Профиль



Пост N: 17
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 18.07.07 06:07. Заголовок: Re:


Спасибо большое !
Все функции нашел, которые не нашел - декомпилировал.

Осталась проблемка с функцией INKEYTRAP()

Кто подскажет, случаем INKEY() теперь не выполняет обязанности INKEYTRAP() ?

Спасибо: 0 
Профиль
Администратор




Пост N: 546
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 18.07.07 07:44. Заголовок: Re:



#include "common.ch"

Static s_Proc1, s_Param
Static s_Proc2, s_Bitmap
Static bTrap := {|| Trap()}

Function TrapInput(cProc, lParam)
DEFAULT lParam TO .F.

s_Proc1 := cProc
s_Param := lParam

SetInkeyAfterBlock(if(! Empty(s_Proc1) .or. ! Empty(s_Proc2), bTrap, nil)
Return nil


Function TrapShift(cProc, nBitmap)
s_Proc2 := cProc
s_Bitmap := nBitmap

SetInkeyAfterBlock(if(! Empty(s_Proc1) .or. ! Empty(s_Proc2), bTrap, nil)
Return nil


Static function Trap
Local nKbdStat

if ! Empty(s_Proc1)
if lParam
Do( s_Proc1, ProcName(1), ProcLine(1), "" )
else
Do( s_Proc1)
endif
endif

if ! Empty(s_Proc2)
nKbdStat := KbdStat()
if ((nKbdStat & 1) .and. (s_Bitmap & 3)) .or. // Shift
((nKbdStat & 4) .and. (s_Bitmap & 8)) .or. // Control
((nKbdStat & 8) .and. (s_Bitmap & 8)) .or. // Alt

if ( iState & GTI_KBD_CTRL ) iRet += 4;
if ( iState & GTI_KBD_ALT ) iRet += 8;
if ( iState & GTI_KBD_SCROLOCK ) iRet += 0x10;
if ( iState & GTI_KBD_NUMLOCK ) iRet += 0x20;
if ( iState & GTI_KBD_CAPSLOCK ) iRet += 0x40;
if ( hb_set.HB_SET_INSERT ) iRet += 0x80;

endif
Return nil


Function InkeyTrap( nDelay )
Local nKey := INKEY( 0 )
Local bKeyBlock

IF nKey # 0 .and. ( bKeyBlock := SETKEY( nKey ) ) <> NIL
EVAL( bKeyBlock, PROCNAME(1), PROCLINE(1), "" )
ENDIF
Return nKey


Спасибо: 0 
Профиль



Пост N: 18
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 18.07.07 10:25. Заголовок: Re:


Pasha пишет:

 цитата:
if ! Empty(s_Proc2)
nKbdStat := KbdStat()
if ((nKbdStat & 1) .and. (s_Bitmap & 3)) .or. // Shift
((nKbdStat & 4) .and. (s_Bitmap & 8)) .or. // Control
((nKbdStat & 8) .and. (s_Bitmap & 8)) .or. // Alt

if ( iState & GTI_KBD_CTRL ) iRet += 4;
if ( iState & GTI_KBD_ALT ) iRet += 8;
if ( iState & GTI_KBD_SCROLOCK ) iRet += 0x10;
if ( iState & GTI_KBD_NUMLOCK ) iRet += 0x20;
if ( iState & GTI_KBD_CAPSLOCK ) iRet += 0x40;
if ( hb_set.HB_SET_INSERT ) iRet += 0x80;

endif



Что, то здесь со скобками не в порядке.
Наверное из-за ремарок не срабатывает или нужно где-то поставить - ; ?
Что-то я запутался

Static переменные я где должен объявить , в главной функции ?

Спасибо: 0 
Профиль
Администратор




Пост N: 549
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 18.07.07 11:09. Заголовок: Re:


Пардон, там у меня кажется недописанный фрагмент (на С)
Еще в прошлом году не доделал. Надо довести

Спасибо: 0 
Профиль



Пост N: 26
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 20.07.07 11:34. Заголовок: Re:


Все таки Inkey() в Harbour работает как Inkeytrap() и отрабатывает процедуры заданные по SET KEY

Спасибо: 0 
Профиль
постоянный участник




Пост N: 293
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 24.07.07 22:30. Заголовок: Re:


Народ, подскажите как подстроить компиляцию хХарбора в МЕ,
т.е. как сделать чтоб на ошибках компиляции не вызывался Microsoft Edit с листингом ошибок, а как положено,
курсор в ME на ошибке.


Спасибо: 0 
Профиль
постоянный участник


Пост N: 189
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 26.07.07 23:18. Заголовок: Re:


Uncle_ed пишет:

 цитата:
Я имею ввиду какой-нибудь бесплатный редактор для программистов под Windows с цветовым выделением функций, отслеживающий конструкции типа IF-ELSE-ENDIF, DO WHILE-ENDDO, CASE-ENDCASE, позволяющий сворачивать функции, вставлять готовые конструкции и т.п.



Посмотри PSPad. Не уверен, что 100% то, что хочется, но может много:

PSPad editor (ПСПад редактор) - бесплатный текстовый редактор для программистов. Рекомендуется к употреблению :) людям, которые:
работают одновременно с разными языками программирования;
предпочитают подсвеченный исходный код;
умеют и любят пользоваться клавиатурой;
мечтают о маленьком инструменте с простым управлением и мощными возможностями редактора кода;
подыскивают инструмент для работы с тестом plain text;
хотят пользоваться профессиональным инструментом, не платить денег, и при этом не воровать!


Что может

работа с проектами
работа над несколькими документами одновременно (MDI)
Сохранение экранной сессии. При следующем входе PSPad автоматически откроет все открытые на момент закрытия файлы
FTP клиент - вы можете редактировать файлы прямо с web-сервера
поддержка макросов записывать, сохранять и загружать макросы
поиск и замена в файлах
сравнение текстов с разноцветной подсветкой различий
шаблоны (HTML-теги, скрипты, шаблоны кода...)
инсталляция содержит шаблоны для HTML, PHP, Pascal, JScript, VBScript, MySQL, MS-Dos, Perl,...
подсветка синтаксиса применяется автоматически согласно типа файла
Определяемые пользователем стили подсветки для экзотических синтаксисов
автокоррекция
интеллектуальный встроенный HTML-предпросмотр используя IE и Mozilla
полноценный HEX редактор
вызов внешних программ, отдельно для каждой среды разработки
внешний компилятор с перехватом вывода, окном лога и парсер логов для каждой среды создают эффект "IDE"
цветная подсветка синтаксиса для печати и допечатный предпросмотр
интегрирована TiDy-библиотека для форматирования и проверки HTML-кода, конверсии в CSS, XML, XHTML
встроенная свободная версия CSS-редактора TopStyle Lite
экспорт кода с подсветкой в форматах RTF, HTML, TeX в файл или буфер обмена
вертикальное выделение, закладки, метки, нумерация строк ...
переформатирование и сжатие HTML-кода, изменения регистра слов, тэгов, букв
сортировка строк с возможностью сортировать по заданному столбцу, с параметром удаления дубликатов
Таблица ASCII-символов с приведением соответствия HTML-мнемоник
Навигатор кода для Pascal, INI, HTML, XML, PHP, и многих других в будущем
проверка правописания
встроенный веб-браузер с поддержкой APACHE
подсветка парных скобок
...


Имеется форум http://forum.pspad.com/ , в т.ч. и in Russian language.
Правда - This forum has no support from author. Use English forum if you want to communicate with author.

Что особенно приятно - есть поддержка Harbour .
Насколько мне известно - есть поддержка Harbour/xHb и в пакете uestudio (вещь платная, хорошая ).







Спасибо: 0 
Профиль



Пост N: 34
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 27.07.07 08:21. Заголовок: Re:


Ну что же, звучит многообещающе - будем изучать.

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

Вобщем, нужно внимательно изучать документацию и форум.

Спасибо: 0 
Профиль
постоянный участник


Пост N: 192
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 27.07.07 10:22. Заголовок: Re:


Поддержка Harbour есть точно

Настройка\Параметры подсветки\

Для одного из пунктов <not assigned> устанавливаешь Harbour ( закладка Описание - Пользовательские подсветки ). Дальше сам разберешся.

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









Спасибо: 0 
Профиль



Пост N: 35
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 27.07.07 10:36. Заголовок: Re:


А вот этот редактор ни кто не расматривал ?
http://scite.ruteam.ru/

К сожалению на Harbour его придется настраивать самостоятельно или коллективно , но возможности у него обалденные.
Можно включить подсветку для Basic и получается очень похоже на Harbour. Список функций подправить, Help настроить и можно пользоваться.
Только вот не знаю как chm в hlp перевести.
К сожалению я не могу полноценно их форум использовать - есть какие-то ограничения в нашей сети.

Спасибо: 0 
Профиль
постоянный участник


Пост N: 193
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 27.07.07 12:07. Заголовок: Re:


Дальний родственник Notepad++

Набери в гугле chm to hlp. Что-нибудь найдешь.

Но в SciTe можно chm использовать напрямую
Вот выдержка с форума

Кстати в SciTE можно добавить поддержку внешних компеляторов и внешней помощи (например по языкам програмирования).
Вот как это делается для хелпа PHP:
Цитата с http://weblabor.hu/php-doc-chm/

Цитата:
New CHM format of the PHP Manual
Download php_manual_sample_11.zip from this server
SciTE: Place this in Scite config file:
*command.help.*.php=$(CurrentWord)!$(SciteDefaultHome)\help\php\php_manual_en.chm*
*command.help.subsystem.*.php=4*

А вот что написанно об этом в челпе к SciTE:
command.compile.filepattern command.compile.subsystem.filepattern command.build.filepattern command.build.subsystem.filepattern command.build.directory.filepattern command.go.filepattern command.go.subsystem.filepattern These settings choose which commands to execute when the Compile, Build or Go menu items are selected. The subsystem options determine for Windows whether the tools are run as command line(0), windowed(1), through ShellExecute(2), or through the director interface(3). When source files are in a different directory to that they should be built in, the command.build.directory property can be set to change to a particular directory before performing the build.
command.go.needs.filepattern command.go.needs.subsystem.filepattern Sometimes a file must be compiled or built before it can be run. If this is the case, this setting indicates what command needs to be run to perform the compile or build step before running the file. When a file is compiled, this is noted and future runs will not perform a compile or build. To make a 'compile and go' Go command for .c files: command.go.*.c=$(FileName) command.go.needs.*.c=g++ $(FileNameExt) -o $(FileName)
command.name.number.filepattern command.number.filepattern command.is.filter.number.filepattern command.subsystem.number.filepattern command.input.number.filepattern Extra commands can be added to the Tools menu. For example to include the 'astyle' indenter, the properties file could contain command.name.0.*.cc=Indent command.0.*.cc=astyle -taO $(FileNameExt) command.is.filter.0.*.cc=1 The first line defines the string that will appear in the Tools menu (immediately below 'Go'. The second line is the command string, similar to those of the compile, build, and go commands. The optional command.is.filter property states that the command modifies the current file so it may need to be read in after performing the command if load.on.activate is set. The subsystem determines how the command is executed on Windows. 0, the default is for command line programs, 1 for programs which create their own windows, 2 for running by using ShellExecute, 3 for running in an internal extension or director extension, 4 for running HtmlHelp on Windows, and 5 for running WinHelp on Windows. When using subsystem 4 or 5, the command has two parts separated by ! with the first part being the topic to search for and the second the name of the help file. On Windows, the optional command.input property specifies text that will be piped to the command. This may reference other properties; for example, command.input.0.*.cc=$(CurrentSelection) would pipe the current selection to the command processes. The command.input property is only supported for subsystem 0 (command line programs). If the text of a command starts with '*' then the Parameters dialog is displayed to prompt for parameters before executing the command. The initial '*' is not included in the command that is executed.
command.help.filepattern command.help.subsystem.filepattern Defines a command to be executed when the help command is invoked or F1 pressed. On Windows, this often uses subsystem 4 as described above. On Linux, running man or a browser are common ways of displaying help. The word at the cursor is copied to $(CurrentWord) and this is often a good argument to the help application. The subsystem property works in the same way as for other commands.
command.scite.help command.scite.help.subsystem Defines a command to be executed for help on the SciTE program itself which normally means displaying this file in a browser.

Спасибо: 0 
Профиль





Пост N: 81
Зарегистрирован: 17.10.05
ссылка на сообщение  Отправлено: 30.07.07 11:56. Заголовок: http://www.context.cx/

Спасибо: 0 
Профиль





Пост N: 14
Зарегистрирован: 31.05.07
ссылка на сообщение  Отправлено: 31.07.07 13:34. Заголовок: Re:


krutoff пишет:

 цитата:
http://www.context.cx/


Красиво, впечатляет, но отказаться от ФАР мешает отсутсвие переключателя на ДОС кодировку... Возможно я ее еще не нашел... А может просто надо слазить с консоли и как все пацаны писать под винду...

Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 31.07.07 17:17. Заголовок: Re:


spair2k пишет:

 цитата:
и как все пацаны писать под винду...


Наверное это все же дело привычки:)) Вот как раз под виндой мне удобнее всего писать под Far'ом
Кроме кодировок многостаничный, подсветка синтаксиса,Ftp , сейчас макросы добавили ( может и раньше были?!!!)
Dbf'ки смотрит, сразу с архивами работать можно... Far 1.71 alpha build 2126
Сравнение папок , файлов и т.д.... По возможностям похож на PSPad editor :)) Или он на Far ...

Спасибо: 0 
администратор




Пост N: 780
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 31.07.07 18:11. Заголовок: Re:


ММК пишет:

 цитата:
Вот как раз под виндой мне удобнее всего писать под Far'ом


+1 :)))))

Спасибо: 0 
Профиль



Пост N: 46
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 07.08.07 02:29. Заголовок: Re:


Я конечно не спорю - Far программа замечательная и возможности ее безграничны.
Вообще я считаю что Питер Нортон был гением и если бы его фирму не прикончили то создавать Far не понадобилось бы.
Но все равно хотелось бы иметь специализированную xHarbour - среду с хорошим заточеным под xHarbour редактором программ и GUI редактором.

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



Спасибо: 0 
Профиль



Пост N: 47
Зарегистрирован: 31.03.07
ссылка на сообщение  Отправлено: 07.08.07 03:03. Заголовок: Re:


Кстати, у меня заработал и QAC. При этом ни каких дополнительных настроек не потребовал. Не понадобилось дополнительно указывать ни какие библиотеки, все прицепилось само.
Пришлось лишь создать копию библиотеки MiniGui с именем xMiniGui.lib
Сама среда удобная, все разложено по закладочкам, для редактирования форм автоматически подключается IDE, но вот редактор пока примитивный (или я просто с ним не разобрался до конца)

По моему скромному мнению пора уже создавать открытый проект по созданию специализированного Clipper совместимого редактора и создавать его всем миром. Ведь такой редактор нужен всем кто пишет на языках Clipper семейства. Это Clipper, xHarbour, Harbour, Clip ,Alaska xBase, C3 и другие.... ведь нас так много, а редактора заточенного под нас так и не создали.

Спасибо: 0 
Профиль





Пост N: 197
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 07.02.08 21:40. Заголовок: TimTim пишет: Ссылк..


TimTim пишет:

 цитата:
Ссылка на статью
"От Clipper к Harbour через xMate"
http://slil.ru/24627894


Файл не найден.

Спасибо: 0 
Профиль
постоянный участник


Пост N: 400
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 07.02.08 21:54. Заголовок: Сервис позволяет ра..



 цитата:
Сервис позволяет разместить файл размером не более 50 Мб.
Файл будет удален через 1 месяц после последнего скачивания.



Суровая правда жизни. Да и на xMate рассчитывать особо не стоит


 цитата:
Hi all,

Sorry for the late reply.
I was expecting more feedback.
This only confirms my suspicion that there is only a handful of xMate
users left. :-(

Let me first clarify some misunderstandings.
xMate is NOT going to become an open source project.
That was never my intention as there is no point in that.

What has been suggested in the discussion with Maurizio,
is that, if indeed more enhancements and improvements
to the current xMate edition are expected and proposed,
perhaps a small group of trusted and enthusiastic developers
should be established to assist with the development of xMate
to bring about those changes and enhancements faster.

I am not prepared to publish on the net the source code
to all my libraries, for everybody to see, download and use.
I am sorry.

I do believe though that xMate could benefit from a small
group of guys, who are prepared to work in a private and
trusted circle, without disclosing xMate source code to
third parties. I might be wrong though.

As for other alternative projects, such as Eclipse plug-in, etc.
anybody can start that, and it has nothing to do with xMate itself.

Regards,
Andy.



Спасибо: 0 
Профиль



Пост N: 9
Зарегистрирован: 10.07.07
ссылка на сообщение  Отправлено: 08.02.08 15:49. Заголовок: Dima пишет: Cделал ..


Dima пишет:

 цитата:
Cделал зеркало на рапиде http://rapidshare.com/files/42684460/Clip2HB.rar


Проверял. Вроде там еще лежит. Спасибо Dima.

См. также http://www.andywos.ih.co.za/xmate/ в разделе Links.
По обоим адресам старая версия!

У меня уже набралось несколько изменений и добавлений. К сожалению, не получил я замечаний от пользователей. Только Krutoff поделился своим мнением и прислал конфигурацию для MiniGui.
Новый скорректированный вариант + новые файлы конфигурации в ближайшие дни смогу выложить. Это во-первых.

По поводу xMate скажу, что у меня все проекты на нем (Borland+xHarbour). Один раз настроил и все остальное под "копирку". Все пользователи говорят, что это достаточно отлаженный и надежный продукт.

Особенность xMate заключается в том, что это менеджер проектов и редактор в одном "флаконе". Если рассматривать xMate только как редактор, то это сильно его обедняет.

По поводу сообщения Andy, автора xMate, так дело хозяйское. Ну не хочет он пока делать xMate Open Source. На форуме об этом многие его просят, хотят, чтобы развивался проект побыстрее. Но и сам Andy не отказывается же от развития проекта, просто xMate будет развиваться не так динамично и всё.

Могу сказать, что из xMate-форума ( http://groups.yahoo.com/group/xmate_users/ ) я понял, что продукт развивается. Например, работы ведутся по улучшению форматера prg-файлов, по включению редактора ресурсов и т.д. Пользователи предлагают включить поддержку GUI библиотеки, возможно HwGUI.

Uncle_ed пишет:

 цитата:
По моему скромному мнению пора уже создавать открытый проект по созданию специализированного Clipper совместимого редактора и создавать его всем миром. Ведь такой редактор нужен всем кто пишет на языках Clipper семейства. Это Clipper, xHarbour, Harbour, Clip ,Alaska xBase, C3 и другие.... ведь нас так много, а редактора заточенного под нас так и не создали.



Двумя руками за! Но опять хочу уточнить. Нам не не просто редактор нужен, а чтоб с наворотами редактор, и чтоб менеджер проекта, и транслировал, и линковал, и исполнял, чтоб ошибки указывал, чтоб БД можно было посмотреть и изменить и индекс какой-никакой создать, формочку в IDE поправить, архивчик посмотреть и распаковать, да ещё чтоб за версиями в проекте следил, ну что-то вроде CVS или SVN и ещё чтоб из него можно было на этот форум попасть и помотреть кто ещё о чем мечтает



Спасибо: 0 
Профиль
постоянный участник


Пост N: 404
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 08.02.08 16:57. Заголовок: TimTim пишет: Но оп..


TimTim пишет:

 цитата:
Но опять хочу уточнить. Нам не не просто редактор нужен, а чтоб


Если бы это кому нибудь было нужно, это было бы уже создано.

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

Другой вопрос, что я не верю чтобы в ближайшее время в мире [x]Harbour появится такой открытый проект. И на это есть масса причин, в т.ч. и те которые движут Andy.
Вы говорили о включении редактора ресурсов. Да есть такие пожелания у части пользователей FiveWin, которые это дело активно используют. С другой стороны пользователям MiniGUI, а в особенности MiniGUI Ex. оно вроде бы и даром не нужно. Тот же вариант с поддержкой GUI библиотеки. Я не думаю, что тут у Andy есть какие-то предпочтения и получить целую массу клонов xMate ему также не хочется.







Спасибо: 0 
Профиль
модератор




Пост N: 705
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 08.02.08 17:38. Заголовок: Просто к слову...


Петр пишет:

 цитата:
Вы говорили о включении редактора ресурсов


Бесплатный редактор Win32-ресурсов ResEdit (1.3.7.2) есть по адресу:

http://www.resedit.net/

Выглядит он весьма неплохо:

http://www.resedit.net/screenshots.htm


Спасибо: 0 
Профиль
Ответов - 52 , стр: 1 2 3 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 108
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет