Viper 2013 и ранее

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

LaaLaa

Re: Viper

Сообщение LaaLaa »

Кроме того привожу прямые ссылки отдельно на обновленную справку:
ftp://ftp.galaktika.ru/pub/support/gala ... /Viper.chm
ftp://ftp.galaktika.ru/pub/support/gala ... /Viper.pdf

Читайте, присылайте отзывы.
igor
Постоянный гость
Сообщения: 70
Зарегистрирован: 29 мар 2005, 17:49

Re: Viper

Сообщение igor »

LaaLaa писал(а): ....
Редактор не менялся.
Печаль, печаль.
Хорошо бы whatsnew.txt файлик где то вести. И в дистрибутив его выкладывать.
А здесь ftp://ftp.galaktika.ru/pub/support/gala ... 810/VIPER/
еще ноябрьский релиз лежит. на гуглокоде viper появляется раньше чем на корпоративном сайте :grin:
SiTraхМетод до сих пор вставляется перед каждой функцией по нечаянному нажатию то ли Ctrl-F то ли Ctrl-Q-F
Обещали подавить...
LaaLaa

Re: Viper

Сообщение LaaLaa »

igor писал(а):
LaaLaa писал(а): ....
Редактор не менялся.
Печаль, печаль.
Хорошо бы whatsnew.txt файлик где то вести. И в дистрибутив его выкладывать.
А здесь ftp://ftp.galaktika.ru/pub/support/gala ... 810/VIPER/
еще ноябрьский релиз лежит. на гуглокоде viper появляется раньше чем на корпоративном сайте :grin:
С каждым релизом готовим мы файл "Что нового.pdf" (см. в этом и прошлых дистрибутивах). Кроме того подробный отчет "viper-2011-5438-november.pdf" по всем ПИР также есть в каждом дистрибутиве. Текущая сборка просто техническая, чисто для совместимости с Атлантисом 5.4.38.3 (т.к. поступали обращения от программистов).

Еще цель текущего релиза - публикация новой справки Viper.chm - документ был существенен переработан.
Кроме того в справке, в каждом документе есть раздел "Что нового" там все новости идут с накоплением (включая текущее и все предыдущие издания).

Вам хочется в whatsnew.txt видеть что-то больше чем есть сейчас? Расскажите что будем добавлять.

А новый редактор сейчас еще тестируется. По новым фичам whatsnew будет.
igor
Постоянный гость
Сообщения: 70
Зарегистрирован: 29 мар 2005, 17:49

Re: Viper

Сообщение igor »

LaaLaa писал(а):
igor писал(а):
LaaLaa писал(а): А новый редактор сейчас еще тестируется. По новым фичам whatsnew будет.
Готов поучавствовать в бета тесте если допилите Intellisense ( дополнение идентификаторов по ctrl-space)
Masygreen
Местный житель
Сообщения: 1089
Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:

Re: Viper

Сообщение Masygreen »

igor писал(а): Готов поучавствовать в бета тесте если допилите Intellisense ( дополнение идентификаторов по ctrl-space)
+1
Время ведет!
Semi-bit
Постоянный обитатель
Сообщения: 123
Зарегистрирован: 01 фев 2007, 12:45
Откуда: Магнитогорск
Контактная информация:

Re: Viper

Сообщение Semi-bit »

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

Код: Выделить всё

view vMain from tables... where ((подцепки));

Теперь нам нужны всего 2 функции. Первая стартует при любом изменении текстового редактора, в котором у нас загружен разбираемый файл и проверяет, попало ли изменение между ключевыми словами view и where и записывает результат в булевую переменную fromChanged. Вторая функция стартует при нажатии точки и обновляет 2 переменные fromStart и fromEnd, а также список подстановок в случае, если fromChanged истинно. Далее, она проверяет слово до точки и выводит список подстановок для данного слова.
Список подстановок представляет собой таблицу. Также имеется структура обратных подстановок, для обработки псевдонимов таблиц.
Конечно, это примитивный пример, но если он кого-то из разработчиков заинтересовал, могу подробнее написать.
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
n0where
Местный житель
Сообщения: 499
Зарегистрирован: 30 дек 2010, 08:16

Re: Viper

Сообщение n0where »

Ещё ошибку нашёл.
У нас настроено так, что пути на галактику одинаковы, но конфигурация разная, получается работает из 1 экзешника на разных базах.
При запуске галактики через випер как отладчика, задаётся вопрос - приложение уже запущено остановить - нет, после аварийной остановки через кнопГу стоп, он закрывает ранее запущеное приложение, а не то которое запустил.
Ранее такого не замечал випер 38. Вероятно ID процесса то записывать надо запускаемого и с ним работать.
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
Masygreen
Местный житель
Сообщения: 1089
Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:

Re: Viper

Сообщение Masygreen »

+1 иногда при отладке закрывает приложение а не отсоединяется .. даже если нажимаешь не завершать процесс.. ошибка плавающая повторить не удается, но иногда проявляется
Время ведет!
Bender
Местный житель
Сообщения: 251
Зарегистрирован: 02 мар 2009, 12:59
Откуда: ТопСофт
Контактная информация:

Re: Viper

Сообщение Bender »

n0where писал(а):Ещё ошибку нашёл.
У нас настроено так, что пути на галактику одинаковы, но конфигурация разная, получается работает из 1 экзешника на разных базах.
При запуске галактики через випер как отладчика, задаётся вопрос - приложение уже запущено остановить - нет, после аварийной остановки через кнопГу стоп, он закрывает ранее запущеное приложение, а не то которое запустил.
Ранее такого не замечал випер 38. Вероятно ID процесса то записывать надо запускаемого и с ним работать.
Пометил проблему в ПИР.
Masygreen писал(а):+1 иногда при отладке закрывает приложение а не отсоединяется .. даже если нажимаешь не завершать процесс.. ошибка плавающая повторить не удается, но иногда проявляется
Возможно в Галакатике было открыто модальное окно либо выполнялась какая-то длительная операция?
Bender
Местный житель
Сообщения: 251
Зарегистрирован: 02 мар 2009, 12:59
Откуда: ТопСофт
Контактная информация:

Re: Viper

Сообщение Bender »

Что касается подсказки кода. В ближайшей версии выйдет упрощенная подсказки, подчеркиваю упрощенная реализация.

Что будет для VIP: классический выплывающий список вызываемый по Ctrl+Space с фильтрующимся содержимым на основании вводимого текста. Контент подсказки будет формироваться на основании: списка "зашитых" ключевых слов, списка "зашитых" атлантических процедур и функций (с параметрами), идентификаторов текущего исходника (по аналогии окна структуры кода - имена функций с параметрами, имена событий и т.д.). Подсказчик не будет подсказывать идентификаторы после символа "." наподобие полей таблиц и т.д., также не будет подсказывать и абслютно все найденные идентификаторы из активного исходника (в силу того, что их может быть уж очень много, а избыток информации тоже не всегда хорошо).
Конечно можно сделать как написано выше ... найти что-то типо view и анализировать что-то между какими-то ключевыми словами.... Но, во-первых, для всех конструкций такие текстовые разборы делать закалибошьси, да и тяжело будет предугадать различные случаи кодирования, а во-вторых от подсказки, которая дает результат только лишь от текущего исходника, толку маловато. Поэтому разбор кода нужно делать от самого "верха" с разворачиванием всех подключаемых файлов плюс подгрузить упакованную информацию из ресурсов, а затем строить карту идентификаторов и научить перестраивать ее только кусками дабы добиться удовлетворяющей производительности. И только после того формировать список подказки на основании введенного кода и области видимости. Думаю, что результат подсказчика на основании каких-то жестких правил вызовет еще больше негодований чем его отсутствие .... и его вечные "допилы" к различным частным случаям ...

Что будет для любителей скриптописания: для vbs и jscript конент подсказчика формируется на основании "зашитого" списка объектов и
функций, предоставляемых редактором в качестве API, кроме того для API-объектов после символа "." подсказчик подскажет доступные методы и свойства. Любители скриптописания пишите новый функционал и "заказывайте" в доступ дополнительное объекты и методы випера.

В заключение скажу так: "судите строго и не очень... мы (я) стараемся :oops: и болеем за продукт :|".
Кстати, очень хорошо, что увеличивается обратная связь с пользователями как через форумы (тюмбит и галактический) так и напрямую через почту.
Пишите вопросы, предложения, шлите отчеты и логи об ошибках .... ;-)
igor
Постоянный гость
Сообщения: 70
Зарегистрирован: 29 мар 2005, 17:49

Re: Viper

Сообщение igor »

Bender писал(а):Подсказчик не будет подсказывать идентификаторы после символа "." наподобие полей таблиц
А таблицы?!
Таблицы?!
katmc.<список полей> хотя бы?!
Я уж не говорю про алиасы таблиц, но таблицы то хоть добавьте! :neutral:

Сделайте хотя бы такое: для текущего проекта искать текстовый файл UserCompleteList.txt в каталоге где vpr лежит или из настройки и если этот файл найден - включать его в список для подсказчика.Ну что может быть проще?
Тогда я мог бы сделать такое:

<- UserCompleteList.Txt ->

katmc.nrec
katmc.name
katmc.bla bla bla
...

и для каждого проекта я бы мог сам управлять этим списком(как уж я буду формировать этот файл - мое дело, хоть ручками)
сейчас получается я никак не могу улучшить ваш интеллисенс и подстроить его под мои нужды...
igor
Постоянный гость
Сообщения: 70
Зарегистрирован: 29 мар 2005, 17:49

Re: Viper

Сообщение igor »

Bender писал(а):Думаю, что результат подсказчика на основании каких-то жестких правил вызовет еще больше негодований чем его отсутствие .... и его вечные "допилы" к различным частным случаям ...
Если затруднительно сделать (это не простая задача на самом деле, я понимаю) интеллисенс, дайте возможность чтобы пользователь мог каким то образом сообщать движку что он хочет "интеллисенсить" - например файл обычный текстовый с идентификаторами на каждой строчке. И хоп ! - движок сразу становится гибким и настраиваемым. Любой программист наформирует какой ему надо файл для интеллисенса самостоятельно. А вам надо только при старте этот файл подгрузить в движок. И корректно показывать из него идентификаторы.
Имхо это дешевое и простое в реализации решение (я конечно не знаю как там у вас построенны внутренние структуры) но скорее всего это какие то списки и добавить в него распарсенный примитивный текстовик - ну не сильно сложно должно быть...
Bender
Местный житель
Сообщения: 251
Зарегистрирован: 02 мар 2009, 12:59
Откуда: ТопСофт
Контактная информация:

Re: Viper

Сообщение Bender »

igor писал(а):...файл обычный текстовый с идентификаторами...
Ок :smile:
Masygreen
Местный житель
Сообщения: 1089
Зарегистрирован: 04 сен 2008, 11:27
Откуда: Москва
Контактная информация:

Re: Viper

Сообщение Masygreen »

можно с файлом пойти дальше ... допустим его некоторым образом структуировать типа :
допустим это значит что если встречается katmc и следующий знак точка выдавать перечень подсказок .. где-то на подсознании понимаю что подсказчик какими то такими структурами и работает ..
katmc->'.'->[nrec,name,code]

...
насчет файла не согласен. если делать то это должен быть каталог или набор файлов .. пишешь отчет по договорам сунул договорной файл, пишешь производство сунул производство...
Это позволит:
1)не грузить всякую фигню ... (например поля таблиц - если брать аналогию VS то подсказка там только для явно подключеных или обьявленых элементов а не всех весех)
2)см пункт 1 это должно быстрее работать .. каждый может решить сам сколько ему времени ждать загрузки випера .. весь словарь конечно в подсказчик нафиг не надо сувать ..
Время ведет!
igor
Постоянный гость
Сообщения: 70
Зарегистрирован: 29 мар 2005, 17:49

Re: Viper

Сообщение igor »

Masygreen писал(а): насчет файла не согласен. если делать то это должен быть каталог или набор файлов .. пишешь отчет по договорам сунул договорной файл, пишешь производство сунул производство...
Чем плох подход с файлом? Вам не нужны таблицы = не делайте файл, мне нужны таблицы - сделаю для своего проекта. Каждый получит то что хочет. Пусть лучше будет функционал который каждый может настраивать по своему вкусу.. А не то что решит и жестко зашьет в алгоритмы разработчик.
И усложнять структуру файла - не нужно.
Сложнее структура - меньше скорость разбора.
Я например сразу же туда закину на мегабайтик файл. А то и весь словарик. пущай лежит, мне всегда пригодится. :)
Если просить сразу много - то не получим ничего. Конечно есть подходы и лучше и гибче. Один файл сделать разработчикам - не проблема...сделать файл со структурами - тоже не проблема но разработчик уже начинает
излишне напрягаться. Сделать каталог с файлами - уже больше работы, сделать нормальную индексацию всех исходников - уже архизадача. Там уже надо синтаксис анализировать, алиасы, обьектные интерфейсы.
Давайте маленькими шагами двигаться. Зато гибкими..
Я за файл. или иной механизм который бы позволил мне самому управлять тем что должно показываться в автокомплите. Но чтобы этот механизм появился как можно раньше а не через 5 лет и "сразу хороший и идеальный". Пусть будет хотя бы такой, "но сегодня". Потом со временем допилят до "идеального но через 5 лет".
Закрыто