OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 19 Март, 2024 05:42

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 57 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
СообщениеДобавлено: Четверг, 02 Январь, 2014 15:04 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Иван Денисов писал(а):
Пётр, а где лежит итог твоих усилий по обертке и автокомплиту?

Сама обертка лежит в ypkTextProbe, реализация тестового автокомплита лежит в ypkTextFly.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 09 Январь, 2014 10:41 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Пётр Кушнир писал(а):
Иван Денисов писал(а):
Пётр, а где лежит итог твоих усилий по обертке и автокомплиту?

Сама обертка лежит в ypkTextProbe, реализация тестового автокомплита лежит в ypkTextFly.
Поправка, теперь реализация автокомплита лежит в JediComply https://bitbucket.org/petryxa/jedi/src


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 19 Март, 2014 22:27 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Добавляем событийный комплит с помощью интерактивных маркеров ошибок с помощью модуля JediMarkers!


Вложения:
Снимок.PNG
Снимок.PNG [ 8.71 КБ | Просмотров: 10339 ]
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 20 Март, 2014 09:51 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
Пётр, а какие зависимости? А то при компиляции ругается (на отcутствие StringsDyn и ypkEncBase64, и не знаю, чего еще скачать надо ).

И такой вопрос, SQLite может ли дать, какие-либо преимущества ? Jedi еще не видел в деле, а сам пробую разбить на слова текущий модуль (не очень большой), и открыть слова для выбора, открывается достаточно оперативно (правда замеров не делал). Вот и думаю, стоит ли скрещивать с Вашей подсистемой, или лучше чем другим заняться


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 20 Март, 2014 12:17 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
adva писал(а):
Пётр, а какие зависимости? А то при компиляции ругается (на отcутствие StringsDyn и ypkEncBase64, и не знаю, чего еще скачать надо ).
Lists, Strings, ypk, Msg, BSon, ну и Jedi.
Проверил этот набор на чистом ББ. Если что-то не компилируется, значит в данном случае оно не понадобится.

adva писал(а):
И такой вопрос, SQLite может ли дать, какие-либо преимущества ? Jedi еще не видел в деле, а сам пробую разбить на слова текущий модуль (не очень большой), и открыть слова для выбора, открывается достаточно оперативно (правда замеров не делал). Вот и думаю, стоит ли скрещивать с Вашей подсистемой, или лучше чем другим заняться
Если честно, я не знаю, я когда делал автокомплит - ввел в гугле "быстрый поиск слов", там вышел на суффиксное дерево, а потом как понял, так и реализовал его в JediComplyCache. Вроде пока работает. Производительности достаточно для подстановки слова под курсор, при печати. Сейчас проблема в основном с наполнением правильными нужными словами.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 20 Март, 2014 12:33 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
Спасибо, буду изучать.

Пётр Кушнир писал(а):
Сейчас проблема в основном с наполнением правильными нужными словами.


Тоже думаю над этой проблемой. Сам пока планирую так сделать (попроще):

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

Для текущего модуля, слова до курсора (исключая комменты и строки, или может быть включая, если в комменте или строке).

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 20 Март, 2014 14:32 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Сейчас я при работе с автокомплитом просто заполняю глобальную базу словами, которые ищет текстовый сканнер.
То есть, при работе в двух документах-сырцах доступны все слова из двух документов.
Еще я хотел при загрузке формировать словарь из всех интерфейсных документов модулей, как вы и предлагаете, но боюсь, что без оптимизации контекстозависимости словарь просто забьется нерелевантным мусором.
Этого достаточно для подстановки названий модулей, типов данных, переменных и процедур.
Но, понятно, никакого анализа не реализовано.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 21 Март, 2014 11:09 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
Вроде бы все скомпилировал (правда еще JSon запрощена была)

Чего теперь сделать надо? Почему-то в модуле JediMarkers в комменте anchor обозначени отображением с крестиком


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 21 Март, 2014 11:14 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
Хотя для JediComply требуется еще kiaLog это где?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 21 Март, 2014 11:17 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
Убрал из секии импорта kiaLog , вроде скомпилилось. Так что теперь надо?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 21 Март, 2014 11:31 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Надо откомпилировать ypk, там лежат модули якорей, для автокомплита нужен только ypkTextProbe, он добавляет обертку контроллера в документ, в котором размещен.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 21 Март, 2014 18:20 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
Разместил в документе оба отбражения (PreView anchor и probe)

Но автокомплита не происходит, чего еще может быть? Можешь выложить чистую подсистему с утановленным автокомплитом?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 21 Март, 2014 18:55 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
Для начала можно сравнить загруженные модули: Info > Loaded modules
Код:
JediComply   6595   0   20.03.2014  20:03:58   21.03.2014  19:54:31
JediComplyCache   3386   1   20.03.2014  20:03:58   21.03.2014  19:54:31

ListsOp   3516   1   16.01.2014  20:04:58   21.03.2014  19:54:31
ListsDict   7399   2   10.03.2014  20:00:58   21.03.2014  19:54:31
ListsIterable   1496   3   16.01.2014  20:04:58   21.03.2014  19:54:31
ListsStack   1635   2   16.01.2014  20:04:58   21.03.2014  19:54:31
ListsSet   2717   1   16.01.2014  20:04:58   21.03.2014  19:54:31
ListsLinear   1411   13   16.01.2014  20:04:58   21.03.2014  19:54:31

ypkBusService   972   1   20.03.2014  20:03:58   21.03.2014  19:54:31
ypkDataBlobUntagged   3385   0   20.03.2014  20:04:01   21.03.2014  19:54:31
ypkDataBlobBase   6462   1   20.03.2014  20:03:56   21.03.2014  19:54:31
ypkDataBlob   79   2   20.03.2014  20:03:56   21.03.2014  19:54:31
ypkDynBytes   3110   6   20.03.2014  20:03:51   21.03.2014  19:54:31
ypkTextProbe   8805   1   20.03.2014  20:03:58   21.03.2014  19:54:31
ypkDetails   4663   3   20.03.2014  20:03:56   21.03.2014  19:54:31
ypkBus   57   2   20.03.2014  20:03:57   21.03.2014  19:54:31
ypkSysTry   998   1   20.03.2014  20:03:56   21.03.2014  19:54:31
ypkSysMeta   892   1   20.03.2014  20:03:56   21.03.2014  19:54:31

BSonFileConverter   1549   1   20.03.2014  20:03:52   21.03.2014  19:54:31
BSonConverters   2176   2   20.03.2014  20:03:52   21.03.2014  19:54:31
BSonStdGen   2820   0   20.03.2014  20:03:57   21.03.2014  19:54:31
BSonGenerator   644   4   20.03.2014  20:03:52   21.03.2014  19:54:31
BSonParser   7421   4   20.03.2014  20:03:52   21.03.2014  19:54:31
BSonBaseTypes   616   5   20.03.2014  20:03:51   21.03.2014  19:54:31
BSonModels   4130   5   20.03.2014  20:03:49   21.03.2014  19:54:31

StringsUtf   2205   2   01.09.2013  1:42:28   21.03.2014  19:54:31
StringsDyn   789   8   18.07.2013  12:51:09   21.03.2014  19:54:31
StringsXml   2178   1   15.04.2013  23:17:35   21.03.2014  19:54:31

MsgModuleExt   665   0   20.03.2014  20:04:00   21.03.2014  19:54:31
MsgBus   4791   3   20.03.2014  20:03:56   21.03.2014  19:54:31


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 22 Март, 2014 05:26 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
Модули сравнил, идентичные (по крайней мере из списка есть все)

Попробовал твой один из первых вариантов (PrivCtrl.odc здесь выложенный), печать передается в лог.

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

Может еще какие-то не модули где то должны лежать, и их надо проверить?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 22 Март, 2014 11:40 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2662
Откуда: Россия, Ярославль
https://dl.dropboxusercontent.com/u/953 ... b-auto.zip

А вы свою сборку тоже скиньте, мне и самому интересно, почему же не работает?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Март, 2014 09:19 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
О, спасибо, работает (а то думал может в ОС дело, или еще в чем подобном). Попробую сам определить причину, если не получится, то выложу


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Март, 2014 18:18 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 358
Откуда: Россия, Стерлитамак
Более подробно не было возможности разобраться, но почему-то для моего случая ругалось на остутствие подсистемы JSon. Все подсистемы брал по ссылкам выше (бб использовал, от zinna).

Так и не понял, какая система ее могла использовать, поиск вхождения названия проблемного модуля выдал одинаковые результаты и в проблемном каталоге ББ, и в каталоге Петра.

После того как скопировал подсистемы из "правильного" каталога, проблема ушла, токже проблема решилась, после добавления подсистемы JSon.

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


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 57 ]  На страницу Пред.  1, 2, 3

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB