Сообщество программистов Autodesk в СНГ
ADN Club => AutoCAD .NET API => Тема начата: avc от 02-11-2016, 16:46:17
-
Есть несколько ключевых слов, которые нельзя использовать в опциях Editor.GetSelection, т.к. они зарезервированы и вызывают скрытые опции выбора объектов. Соответственно надо писать свои опции не используя первых букв этих слов. Проблема возникает когда пользователь ставит мой плагин на неизвестную мне локализацию Автокада. Опции от английской версии могут не работать. Я уже узнал список зарезервированных ключевых слов для нескольких локализаций вот они:
En: W L C B ALL F WP CP G A R M P U AU SI
Ru: Р П С БОКС В Л РМ СМ Г Д И Н Т О А Е
It: F U I R T NT FP IP G AG E M P A AU SI SU O
Ge: F L K QUADER ALLE ZA FP KP G H E M V ZU AU EI
Хотелось бы узнать эти буковки для всех остальных официальных локализаций. Точнее волнуют только языки в которых используется латиница - иероглифами я писать не планирую :)
(p.s. я без понятия, что за команду вызвал итальянец, что у него получилось 18 ключей, у всех остальных 16)
Update
Тем, кто делает плагины под любую локализацию может пригодится следующая табличка:
Язык Русский English Italiano Deutsch
LCID 1049 1033 1040 1031
Имя файла Чертеж1 Drawing1 Disegno1 Zeichnung1
Св-ва
ПоСлою ByLayer DaLayer VonLayer
ПоБлоку ByBlock DaBlocco VonBlock
Слои ModelDoc
MD_Аннотация MD_Annotation MD _Annotation MD_Beschriftung
MD_Штриховка MD_Hatching MD_Hatching MD_Schraffur
MD_Скрытие линий MD_Hidden MD_Nascosta MD_Verdeckt
MD_Видимые MD_Visible MD_Visibile MD_Sichtbar
Linetype из acadiso.lin
Continuous Continuous Continuous Continuous
рант BORDER BORDO RAND
осевая CENTER CENTRO MITTE
штриховая DASHED TRATTEGGIATA STRICHLINIE
штрихпунктирная DASHDOT TRATTOPUNTO STRICHPUNKT
пунктирная DOT PUNTO PUNKT
невидимая HIDDEN NACOSTA VERDECKT
фантом PHANTOM FANTASMA PHANTOM
Примечания:
Плагин ModelDoc ищет свои слои сначала английские, потом локализованные и если не находит - тогда создает локализованные. Вполне логичное поведения - я в своих плагинах буду делать так же.
Типы линий ModelDoc не загружает из acadiso.lin, а создает новые с нелокализованными именами. Поэтому при поиске типов линий, надо обязательно сначала искать их английский вариант.
Типы линий ...2 и ...X2 переведены так же, но на одном компе я обнаружил, что - почему-то не локализован CENTER2.
-
Есть несколько ключевых слов, которые нельзя использовать в опциях Editor.GetSelection
Объясни как ты используешь опции для GetSelection, что у тебя возникает конфликт.
-
Хотелось бы узнать эти буковки для всех остальных официальных локализаций.
Ну это вряд ли. Никто не будет специально ставить все версии, чтобы проверять локализации опций.
-
Добавляю как PromptSelectionOptions.Keywords.Add. И проверяю потом в KeywordInput. А есть еще варианты?
Я собственно потому и спрашиваю, что мне лень выкачивать все локализации, ставить и смотреть, что там зарезервировано. Думаю, может кто-то у же делал это или где-то уже опубликовано. Если полный список тут опубликовать - будет полезно всем, не только мне. А учитывать этот момент надо. Если французы английский плагин из принципа не поставят, то немцы на свой немецкий Автокад ставят в массовом порядке - это из личного опыта.
-
На случай, если кто не знает как этот список получить, я для себя такой способ придумал:
начинаем любую команду Автокада, которая подразумевает выбор более чем 1 объекта. например, Move.
Далее вместо выбора вводим в консоль любой ошибочный параметр, которого точно нет. Например, плюсик.
Автокад ругается, что нет такой опции у команды и пишет, какие опции можно использовать. Это и есть эти самые секретные скрытые ключевые слова, которые обычно не отображаются.
Не исключаю, что есть способ всегда их отображать.
-
У тебя много своих ключевых слов? Вообще советую просто использовать в качестве ключевых слов сочетания как минимум трех больших латинских букв - думаю, что не промахнёшься.
-
Чем больше заглавных букв, тем конечно меньше вероятность конфликта. Но вот есть же в немецком ALLE и в английском ALL - можно и налететь...