Снегопат

Обсуждение Снегопата
Текущее время: 25 ноя 2024, 17:12

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




Начать новую тему Ответить на тему  [ Сообщений: 46 ]  На страницу Пред.  1, 2, 3, 4, 5  След.
Автор Сообщение
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 02 дек 2011, 17:01 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
palytsh писал(а):
JohnyDeath
Честно говоря, хотелось бы сначала дождаться более удобного интерфейса к тексту модуля в снегопате. Пока у меня ощущение, что, используя лишь выделенный текст, это так просто не исправить.

ИМХО не должно быть сложно, существующий интерфейс это позволяет, особенно с учетом спец.класса от a13x :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 03 дек 2011, 23:11 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:53
Сообщения: 448
Откуда: Саратов
JohnyDeath писал(а):
Можно поправить?

Сделано, проверяй.

_________________
С уважением,
Александр Кунташов
Канал про 1С в Телеграме: @kuntashov_devnotes


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 03 дек 2011, 23:33 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:53
Сообщения: 448
Откуда: Саратов
artbear писал(а):
palytsh писал(а):
JohnyDeath
Честно говоря, хотелось бы сначала дождаться более удобного интерфейса к тексту модуля в снегопате. Пока у меня ощущение, что, используя лишь выделенный текст, это так просто не исправить.

ИМХО не должно быть сложно, существующий интерфейс это позволяет, особенно с учетом спец.класса от a13x :)

По сути проблемы - она решается просто, надо просто проверять, где находится курсор относительно комментария - левее или правее. Соответствующие исправления добавил, см. последние правки скрипта в репо.

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

Единственное, что надо держать в голове, это то, что при массовых изменениях надо придерживаться следующего подхода:

1. Получить весь текст (или выделение), и сохранить его в переменной (например, используя "традиционный" на сегодня способ, сначала установив выделение, а затем вызвав TextWindow::GetSelectedText(), но рекомендую использовать объект Range(), он скрывает необходимость делать установку выделения вручную).
2. Выполнить все массовые изменения в этом тексте.
3. Установить измененный текст этой же области выделения (опять же либо вручную устанавливая выделение, либо используя TextWindow::Range().SetText()).

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

p.s.
Все это не в порядке рекламы TextWindow, а с целью убедить, что для имеющихся задач текущих возможностей Снегопата по работе с текстом в пределах одного документа достаточно.

_________________
С уважением,
Александр Кунташов
Канал про 1С в Телеграме: @kuntashov_devnotes


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 04 дек 2011, 01:02 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:04
Сообщения: 2052
В опенконфе удалось удачно разделить selection и range.
Тут пока не получается. Если начинаю работать с "range" TextManager'а, потом идет дикий расколбас с текстовым view, все расползается и разъезжается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 17 июн 2012, 19:30 
Не в сети

Зарегистрирован: 10 июн 2012, 13:43
Сообщения: 159
если нет параметров и запустить данный скрипт на выделенные строки запроса - весь запрос исчезнет и вместо него появится ь - это фича?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 20 июн 2012, 22:28 
Не в сети
Аватара пользователя

Зарегистрирован: 17 апр 2012, 20:54
Сообщения: 124
Откуда: Октябрьский
Последовательность моих действий:
1. Создаю новую внешнюю обработку, добавляю в макеты макет вида "Схема компоновки данных"
2. Открываю схему, источник данных - запрос, создаю простейший запрос.
3. Ставлю курсор в поле с текстом запроса, нажимаю Ctrl+F (сюда назначен скрипт расширенного поиска), появляется окно скрипта.
4. Пишу в окно что угодно, нажимаю Enter - получаю обозначенную на скрине ошибку.
Вложение:
123.JPG
123.JPG [ 268.82 КБ | Просмотров: 15766 ]

P.S. Сорри, ошибся темой. Перенесите, пожалуйста, в топик про extSearch.js

_________________
Нет никакого рая, каждое сердце - темница


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 03 июл 2012, 07:32 
Не в сети

Зарегистрирован: 29 авг 2011, 11:24
Сообщения: 32
EvgeniuXP писал(а):
если нет параметров и запустить данный скрипт на выделенные строки запроса - весь запрос исчезнет и вместо него появится ь - это фича?


У меня, если нет параметров, текст модуля не изменяется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 03 июл 2012, 08:09 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
palytsh писал(а):
EvgeniuXP писал(а):
если нет параметров и запустить данный скрипт на выделенные строки запроса - весь запрос исчезнет и вместо него появится ь - это фича?


У меня, если нет параметров, текст модуля не изменяется.

Подтверждаю.
Если текст запроса выделен, макрос удаляет текст.
если не выделен, то макрос просто вставляет ь :)
мы говорим про код из репозитария.
Палыч, сможешь посмотреть? мне пока некогда - пивной учет с 01.07.12 все время отнимает :(


Последний раз редактировалось artbear 03 июл 2012, 09:20, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 03 июл 2012, 08:43 
Не в сети
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:36
Сообщения: 1085
Прикольно, косяк Снегопата похоже :(
вставил в начало макроса просто return false
запустил макрос, получил ь
если ставишь return true, то все в порядке :)
Создал спец.задачу http://snegopat.ru/main/info/a8441fd4fe


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: queryParamsExtractor.js и textEditorExt.js
СообщениеДобавлено: 03 июл 2012, 08:49 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:04
Сообщения: 2052
Там если макрос вернул false, считается, что он не отработал, и нажатие клавиши посылается в 1С.
А то, что при этом ctrl нажато - видимо куда-то пропадает.
Посмотрю, проверю.


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

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


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

Сейчас этот форум просматривают: Google [Bot] и гости: 2


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

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB