| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Прописывание новых символов в среде _mtext “AUTOCAD 2006”

Прописывание новых символов в среде _mtext “AUTOCAD 2006”

Ответ
Поиск в этой теме
Непрочитано 27.06.2010, 16:08 #1
Прописывание новых символов в среде _mtext “AUTOCAD 2006”
Геннадий+
 
Ведущий инженер конструктор в области строительства
 
Киев
Регистрация: 05.03.2008
Сообщений: 45

Прошу подсказать, как вписать новые символы при нажатии «Symbol»→ в перечне уже прописанных «Автокадом» символов свои символы и убрать не нужные?
Этот процесс должен значительно сократить время выбора из списка «Таблица символов» Windows.
Просмотров: 7350
 
Непрочитано 29.06.2010, 14:29
#2
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,095


Добавить - так: http://forum.dwg.ru/showpost.php?p=284825&postcount=11
Удалить ненужные стандартные - не знаю, может даже и нельзя (т.е. неоправданно сложно)
kp+ вне форума  
 
Непрочитано 30.06.2010, 12:40
#3
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Можно ли отредактировать выпадающее меню встроенного MTEXT-р
Как добавит часто используемые символы или слова в мтекст?
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 05.07.2010, 11:00
#4
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,095


VVA, спасибо за ссылки. По второй ссылке есть хорошая конструкция для просмотра ветки реестра, где должны сидеть символы меню "Символ" Mtext'а.
Код:
[Выделить все]
(strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\MTEXT\\Symbols")
Но там сидят только те, что добавлены пользователем. А панель вставки символов не резиновая, без полос прокрутки (по крайней мере, в 2008). И большая часть ее занята стандартными символами, из которых три четверти не нужны. Как бы их почистить?
kp+ вне форума  
 
Непрочитано 05.07.2010, 12:51
#5
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Цитата:
Сообщение от kp+ Посмотреть сообщение
Как бы их почистить?
Я толком не знаю, но могу предположить что это сидит где-то в dll/arx файлах
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 05.07.2010, 14:53
#6
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,095


Это плохо
kp+ вне форума  
 
Автор темы   Непрочитано 14.07.2010, 16:34 Прописывание символов и группы символов с в выпадающем меню _mtext
#7
Геннадий+

Ведущий инженер конструктор в области строительства
 
Регистрация: 05.03.2008
Киев
Сообщений: 45
<phrase 1=


Пытался использовать в Лиспе ничего не получилось, возможно, делал не правильно:
• Открыл → Tools→ АutoLISP → Visual Lisp → создал файл (symbol.lsp), где прописал код (http://forum.dwg.ru/showpost.php?p=284825&postcount=11 )→
Код:
[Выделить все]
(_kpblc-add-symbols (list
                      (cons "Разработчик" (_kpblc-get-user-name))
                      (cons "Катет" "\U+0009")
                      (cons "Промилле" "\U+2030")
                      ))
|;
  (setq reg_key
         (strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\MTEXT\\Symbols")
        counter 1
        ) ;_ end of setq
  (foreach item symbol-list
    (vl-registry-write reg_key (strcat "Name " (itoa counter)) (car item))
    (vl-registry-write reg_key (strcat "Contents " (itoa counter)) (cdr item))
    (setq counter (1+ counter))
    ) ;_ end of foreach
  ) ;_ end of defun
• В результате подсоединил файл → “symbol.lsp” инструментом → “Load Application”
• Зашел в _mtext → “Symbol”→ В выпадающем окне ничего не обнаружилось
Пытался другим вариантом :
1. Нашел файлы → “acDcSymbols.arx” и “ acDcSymbolsRes.dll”→ открыл файлы через «Блокнот»→ пытался найти раздел символов через “Find”→”Symbols”оr “Angle→ for example”, но не удалось ничего из этого найти куда можно было бы добавить новые или убрать старые.
2. Пробовал найти фалы по ссылке → (strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\MTEXT\\Symbols") предварительно прописав в командной строке получил путь → "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R16.2\\ACAD-4001:409\\MTEXT\\Sy
mbols" → этот путь не соответствует действительности так как файлы “acDcSymbols.arx” и “ acDcSymbolsRes.dll”→ находиться в совсем другой директории → c:\Program Files\AutoCAD 2006\

Прописывание символов и группы символов с в выпадающем меню _mtext достаточно ускоряет процесс набора различного текста

Прошу помочь, как все же правильно это сделать.
Заранее благодарен

Последний раз редактировалось Кулик Алексей aka kpblc, 15.07.2010 в 02:38.
Геннадий+ вне форума  
 
Непрочитано 15.07.2010, 02:39
#8
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844


Во-первых, код не полный (смотри исходники внимательнее). Во-вторых, путь "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R 16.2\\ACAD-4001:409\\MTEXT\\Symbols" - это всего лишь ветка в реестре.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 20.07.2010, 10:42 Вставка символов (группы симвлов)в _mtext →“Symbol”
#9
Геннадий+

Ведущий инженер конструктор в области строительства
 
Регистрация: 05.03.2008
Киев
Сообщений: 45
<phrase 1=


Уважаемые Господа прошу помочь в прописывании новых символов (возможно группы символов или текста) в выпадающем меню _mtext →“Symbol”
Возможно есть более альтернативное средство для решения такой задачи с помощью дополнительных программ
1. Вставил в пустой файл с розширеним «.LSP» →
defun _kpblc-add-symbols (symbol-list / reg_key item counter)
;|
* Добавление стандартных символов в редактор выпадающего текста.
* Параметры вызова:
* symbol-list список точечных пар вида '(("Наименование символа" . "Его описание"))
* Примеры вызова:
(_kpblc-add-symbols (list
(cons "Разработчик" (_kpblc-get-user-name))
(cons "Катет" "\U+0009")
(cons "Промилле" "\U+2030")
))
|;
(setq reg_key
(strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\MTEXT\\Symbols")
counter 1
) ;_ end of setq
(foreach item symbol-list
(vl-registry-write reg_key (strcat "Name " (itoa counter)) (car item))
(vl-registry-write reg_key (strcat "Contents " (itoa counter)) (cdr item))
(setq counter (1+ counter))
) ;_ end of foreach
) ;_ end of defun
2. В результате подсоединил файл → “symbol.lsp” инструментом → “Load Application”
3.
Зашел в _mtext → “Symbol”→ В выпадающем окне ничего не обнаружилось
• Прошу помочь с прописыванием правильного кода или возможно нового кода в файле«.lsp»

По ссылке в командной строке Автокад 2006 → (strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\MTEXT\\Symbols")→ нашел путь→ "HKEY_CURRENT_USER\\Software\\Autodesk\\AutoCAD\\R 16.2\\ACAD-4001:409\\MTEXT\\Sy
mbols"→ в реестре нашел→ MTEXT→ символы не обноружились «Symbols»

• Я понял, что данная операция предназначена для чистки реестра от ненужных символов.
Как поступить, если в реестре вообще нет «Symbols» при установленном Автокаде?
Геннадий+ вне форума  
 
Непрочитано 20.07.2010, 11:00
#10
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844


Геннадий+, во-первых, тэг [соde] не просто так придуман. Во-вторых, как ты вызывал функцию?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 20.07.2010, 11:27 Ответ на Функцию вызова симолов
#11
Геннадий+

Ведущий инженер конструктор в области строительства
 
Регистрация: 05.03.2008
Киев
Сообщений: 45
<phrase 1=


В _mtext →“Symbol”, где должно отобразиться новые символы, которые прописаны в коде
Геннадий+ вне форума  
 
Непрочитано 20.07.2010, 11:29
#12
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844


Е-мое, как функция вызывалась? Полный код вызова покажи.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 25.07.2010, 19:18 Запуск Лиспа _kpblc-add-symbols
#13
Геннадий+

Ведущий инженер конструктор в области строительства
 
Регистрация: 05.03.2008
Киев
Сообщений: 45
<phrase 1=


Я пробовал запускать →(symbol-list / reg_key item counter)
Не запускается, затем пробовал → (defun _kpblc-add-symbols (symbol-list / reg_key item counter)
Пиши →error: no function definition: SYMBOL-LIST
Ввел по рекомендации команду (vlax-get-acad-object), не запускаеться
Попробовал команду заменить на→ (vl-load-com), не результатов
Вводил полный ЛИСП:
(vl-load-com) ;
(defun _kpblc-add-symbols (symbol-list / reg_key item counter)
;
* Добавление стандартных символов в редактор выпадающего текста.
* Параметры вызова:
* symbol-list список точечных пар вида '(("Наименование символа" . "Его описание"))
* Примеры вызова:
(_kpblc-add-symbols (list
(cons "Разработчик" (_kpblc-get-user-name))
(cons "Катет" "\U+0009")
(cons "Промилле" "\U+2030")
))
|;
(setq reg_key
(strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\MTEXT\\Symbols")
counter 1
) ;_ end of setq
(foreach item symbol-list
(vl-registry-write reg_key (strcat "Name " (itoa counter)) (car item))
(vl-registry-write reg_key (strcat "Contents " (itoa counter)) (cdr item))
(setq counter (1+ counter))
) ;_ end of foreach
) ;_ end of defunВ штатном редакторе многострочника правый пинок - Add Symbol - выбрать свое

В итоге все равно не запускается, запускал, в Лиспе только пример, а именно:
(_kpblc-add-symbols (list
(cons "Разработчик" (_kpblc-get-user-name))
(cons "Катет" "\U+0009")
(cons "Промилле" "\U+2030")
))
|;
(setq reg_key
(strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\MTEXT\\Symbols")
counter 1
) ;_ end of setq
(foreach item symbol-list
(vl-registry-write reg_key (strcat "Name " (itoa counter)) (car item))
(vl-registry-write reg_key (strcat "Contents " (itoa counter)) (cdr item))
(setq counter (1+ counter))
) ;_ end of foreach
) ;_ end of defunВ штатном редакторе многострочника правый пинок - Add Symbol - выбрать свое

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

Заранее благодарен
Геннадий+ вне форума  
 
Непрочитано 25.07.2010, 21:08
#14
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844


Советую прочитать (только внимательно прочитать!) http://dwg.ru/art/8 и посмотреть - в коде приведен пример вызова.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 31.08.2010, 17:46
#15
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Основная идея функции Алексея _kpblc-add-symbols взята с сайта Jimmy Bergmark'a - PersonalMtextSymbols. Цитирую актуальные примечания к этой программе
Цитата:
;;; Tested on AutoCAD 2002, 2004, 2005, 2008, 2009. Not sure about 2006. 2007 does not support this
Запись в блоге
Цитата:
I can confirm that it still works with AutoCAD 2008. For some reason it didn't work in AutoCAD 2007 and I'm not sure if it works in AutoCAD 2006.
В двух словах: этот все работало и работает в Автокадах 2002, 2004, 2005, 2008, 2009.
По неизвестным причинам не работает в Автокадах 2006 и 2007.
Прописывание новых символов в среде _mtext “AUTOCAD 2006” НЕ РАБОТАЕТ
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 10.04.2012, 18:26
#16
stas_org


 
Регистрация: 05.04.2007
Самара
Сообщений: 1,199


Скажите, а будет ли доступ к HKEY_CURRENT_USER\\ из ограниченной учетной записи?
stas_org вне форума  
 
Непрочитано 10.04.2012, 21:17
#17
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844


Доступ будет. Но вот как насчет прав записи - это надо проверять.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Прописывание новых символов в среде _mtext “AUTOCAD 2006”

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ищу подробные инструкции по созданию новых текстовых символов в AutoCAD. Nepa AutoCAD 1 13.06.2009 15:28