Как известно, 1С не всегда может показать контекстную подсказку по Ctrl+Space. Поэтому нужно вспомнить как точно называется имя свойства или метода и ввести его вручную, или найти его в Синтаксис-помощнике.
T9 позволяет до минимума сократить количество действий, необходимых в этой ситуации и ввести требуемое слова всего за несколько нажатий.
T9 содержит все имена, известные в контексте данного модуля, плюс все слова, содержащиеся в индексе синтаксис-помощника последнего релиза 1С.
Если вызов происходит внутри текстовой строки, подсказка содержит все слова, набранные ранее в строках этого модуля.
Подсказка всплывает автоматически, если не была показана штатная или может быть вызвана принудительно.
Работает быстрый поиск по вхождениям первых букв и умная сортировка. Так сначала будут выведены слова встречающиеся в тексте данного модуля, а затем из индекса Синтаксис-помощника. Слова которые начинаются с искомой строки будут выведены первыми.
T9 автоматически преобразует русские буквы в английские символы и выполнит поиск английских слов, начинающихся с таких букв.
Если Вы забыли, как точно называется метод или свойство, достаточно ввести любую часть его имени. T9 выведет все слова, имеющие данное вхождение.
Установка
Для работы, приложению необходим .NET Framework 3.5 Client Profile. Если он еще не установлен в системе, скачать можно с сайта Microsoft http://www.microsoft.com/ru-ru/download/details.aspx?id=22
Поддерживаются платформы 1С 8.2 и 8.3.
Используются только штатные методы Конфигуратора и WinAPI.
Использование
Подсказка всплывает сама, если после нажатия Ctrl+Space отсутствует вызов штатной.
Вызвать ее можно так же принудительно по Ctrl+Shift+Space или Alt+Space или переключаться между ней и штатной по Ctrl+Space.
Для ввода английского слова просто начните набирать его на русской раскладке и вызовите T9
Для ввода специальных символов @##k8SjZc9Dxk&[]<>’~| на русской раскладке, нажмите соответствующую клавишу удерживая Alt
Программа может работать в режиме Предприятия! Для этого включите опцию в настройках.
В функции T9 есть возможность добавления пользовательских слов из файлов с расширением .t9. Пример находится в файле MyTemplates.t9
Update: новая улучшенная версия подсказки T9 включена в состав TurboConf //infostart.ru/public/180406/ и в дальнейшем будет развиваться там.
FAQ
Q: Чем отличаются режимы Совместимости и Нормальный режим?
A: Режим Совместимости должен использоваться на системах с включенным UAC. Нормальный режим работает более плавно и быстро. Программа при первом запуске, сама определяет необходимый режим.
Q: Я хочу использовать программу в Нормальном режиме и полностью отключил UAC в Панели управления, но программа отрабатывает неправильно.
A: После отключения UAC необходимо перезагрузить компьютер и проверить, что в настройках программы снята галка Режим совместимости.
Q: Я отключил UAC в Windows 8 в Панели управления, но программа отрабатывает неправильно.
PoliciesSystem
A: В Windows 8 отключение UAC в Панели управления, на самом деле не приводит к полному его отключению.
Для полного отключения, необходимо установить значение 0, для параметра EnableLUA в ветке реестра
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersion
и обязательно перезагрузить компьютер. Также проверьте, что в настройках программы снята галка Режим совместимости.
Однозначно плюс!
Есть пожелание — сделать Т9 действительно Т9. Т.е чтоб была обработка ошибок при вводе методов и переменных
Замечательно. И еще такое пожелание, чтобы работало не только в конфигураторе. Например в КД, либо просто в консоли кода какой-нибудь.
(3) cool.vlad4,
точно…точно… я в консолях только и пишу.
(2) MarSeN, теоретически можно сделать.
Добавить нечеткое сравнение строк. Нужно поэкспериментировать.
(3) cool.vlad4, (4) Evgen.Ponomarenko,
такая возможность есть, но я ее отключил в этом релизе, т.к. еще не тестировал
сейчас попробовал — работает, так что добавлю в следующих версиях 🙂
(6) круто. насчет нечеткого поиска, лучше вынести это в настройки, чтобы если не надо, можно было отключить. я бы например отключил, поскольку лучше печатать изначально нормально, без ошибок, чем потом в списке искать из кучи, что там то, а что нет.
(7) cool.vlad4, можно назначить это на другую комбинацию и использовать только если сделал опечатку, а исправлять лень 🙂
del
(9) tehas, спасибо за Ваш отзыв
причину выяснили, добавлю в FAQ
(3), (4) Инструменты разработчика Вам в помощь! А основная проблема в том, что не показывают подсказку по параметрам методов. Так вот вызываешь из тела общего модуля функцию — а какие параметры у нее — не понятно… Приходится открывать конфигуратор и там смотреть…
Сам я используюСнегопат , платная разработка — там реализована альтернатива: умная подсказка (например, когда внутри цикла содержится конструкция если, то подсказка по буквам «кон» сперва выдает КонецЕсли, а потом уже — «КонецЦикла» (после того, как будет записана КонецЕсли) Прдробнее — тут .
(11) DrAku1a, если функция будет востребована — могу добавить ее без проблем.
delete
(13) tehas, спасибо за ответ!
Нет, такого быть не должно. Это что-то не так работает. Если я напишу Вам в ЛС, сможете сообщить данные ОС?
По поводу задержки — у меня есть мысли, как ее уменьшить.
(14) конечно, обращайтесь, помогу чем могу =)
(11) DrAku1a, вообще-то я и пользуюсь ИР. но есть два минуса — это добавление подсистемы в конфу и скорость подсказки, которая оставляет желать лучшего(но тут уже ничего не поделаешь, таков 1С, tormozit сделал все на отлично)
(15) tehas,
спасибо за помощь в тестировании!
проблема была в UAC, добавлю в FAQ решение
как-то жутко тормозит, автоматически подсказку не показывает, постоянно приходится надимать то альт с пробелом, то контроль с пробелом. причем одна из этих комбинаций вызывает у меня настройку окна приложения. вобщем жутко не удобно.
(18) rasswet, бывают проблемы с включенным UAC. Посмотрите FAQ в первом комментарии, возможно Ваша ситуация.
(18) rasswet, так же хочу добавить, что это только первая реализация. Дальше будет улучшаться.
(19) это на удаленном сервере, я там не могу ничего перегружать. ну ладно. подожду новых версий. пока реальную полезность для себя не ощутил.
(21) rasswet, можете написать ОС сервера, включен ли там UAC и какой режим стоит в настройках программы?
Огроменнейшее спасибо!!!!!!!!
(22) вин сервер 2008r2 64 разрядная, UAC -не знаю где смотреть на ней
(24) rasswet, можете посмотреть значение реестра?
PoliciesSystem
EnableLUA в HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion
(25) 0 стоит
(26) rasswet, а подскажите еще какой режим выбран в настройках?
(27) стояло без флажка совместимости. я его установил, не перегружал ничего, попробовал, потом снял, тоже не перегружал-ничего не поменялось. может я что-то не так делаю-вполне вероятно.
(28) rasswet, ок, спасибо за информацию.
Попробуйте ради интереса на локальной машине, можно будет сравнить поведение.
(29) локально работает. по альт пробел выводит вашу подсказку, но вот практического применения я не пойму.
мне кажется что самое важное это вывод параметров методов, которые все не упомнишь, а названия в принципе и стандартная показывает. в чем самая польза вашей подсказки? видимо я не понимаю зачем оно мне.
(30) rasswet, я добавил ролики в публикацию. Там показано использование.
(30) rasswet, подсказка по параметрам методов для 8.2 есть в TurboConf
http://infostart.ru/public/180406/
Только сейчас посмотрел — в диспетчере задач T9.exe занимает 65 400 !!!
Не многовато???
А если несколько программистов работают на терминальном сервере, одного процесса достаточно, или каждій должен под собой по одному запустить?
(33) wunderland, спасибо, посмотрю, похоже где-то утечка памяти
(33) wunderland, нашел причину. Не совсем утечка, просто Garbage Collector тупит и долго определенный мусор не собирает. Со временем выделение памяти уменьшается.
В следующую версия добавил принудительную сборку мусора, размер выделяемой памяти уменьшился до 24 Мб и не растет. А этот размер необходим, чтобы держать в памяти словарь синтаксис-помощника.
Поддерживаю и плюсую. Понравилась простота работы с Т9. Не нужно запоминать многочисленные клавиатурные комбинации.
Вышла версия 1.1.5108.21257
Добавлена возможность автоматического вызова подсказки после нажатия клавиши «.», в случае отсутствия штатной.
Добавлена возможность использования программы в режиме Предприятия.
Добавлены настройки вызова подсказки.
Оптимизирована работа с памятью.
Исправлена ошибка, в следствие которой не сохранялось содержимое буфера обмена, после выполнения команды T9.
Конечно не Снегопат, но и цена совсем отличается, уже большая помощь при наборе текста. Спасибо за полезную разработку.
Клево! Только название T9, немного другое означает. T9 это «Text on 9 keys», то есть набор текста на 9 кнопках.
Интересно, а название T9 действительно сразу несовсем понятно…
(39) yoyoman, (40) Alex1Cnic,
предполагалась просто ассоциация с ускорением ввода текста при ограниченных условиях среды 🙂
Wikipedia
здесь такие же функции
(33) wunderland, есть целый специальный термин «Синдром диспетчера задач» для людей, которые оценивают занимаемую память с помощью диспетчера.
CLR не всегда отдает память обратно системе. Это разумно, если она уже выделена, то зачем ее отдавать просто так, пока система не испытывает голода? Если памяти не станет хватать, то CLR освободит неиспользуемую ей память. А до тех пор нет причин лишний раз гонять туда-сюда операции аллокации.
+!!
Со Снегопатом не конфликтует?
(44) gorenski, не проверял
Может глупый вопрос, но всё же. В конфигураторе 1С 7.7 будет работать?
(1)
При достаточно быстром использовании комбинаций клавиш Alt+<, Alt+> периодически выбрасывает в текст кода содержимое буфера 🙁
(47) AlX0id, эта разработка использует старую версию TurboConf
http://infostart.ru/public/180406/
В TurboConf 3 эта функция полностью переделана(улучшена стабильность, плавность и скорость работы, добавлены пользовательские шаблоны, и т.п.)
(0)
Работает только в текстовом документе? Так и не получилось добиться работы Т9 при редактировании текста на форме — создание правил в КД, редактирование в консоле запросов. Даже простейшая конструкция типа «Справочник.» не отрабатывает.
Может стоит заменить на Shift+Space или другую комбинацию?
ЗЫ. Ось ХР СП3, 1С:Предприятие 8.3.4, Microsoft .NET Framework 4 Client Profile v4.0.30319
(49) Famza, можете отправить скриншот окна с примером, где не вызывается Т9?
ммм при нажатии Ctrl+Space пишет что не найден процесс конфигуратора и окно где-то сверху появляется с подсказкой что я делаю не так ?
(51) nSpirit2, можете скинуть скриншот?
Вот собственно скрины ошибка и как вызываю
(53) nSpirit2, на скриншотах вижу, что используется старая версия программы. Новая версия T9 сейчас включена в состав TurboConfhttp://infostart.ru/public/180406/