Jump to content

Редактор скриптов


Recommended Posts

что значит "полностью"? полностью в рамках изначального ТЗ...

Link to comment
Share on other sites

Вы в своем скрипте объявили функцию и что? ее же надо потом вызвать. А значит надо ее обернуть в команду, которую зарегистрировать в комстроке... Поэтому все-таки минимальные знания по программированию под DWG-САПР надо бы получить. Т.е. почитать документацию разработчика, которую можно получить на developer.nanocad.ru...

 

Ну, а если хочется действовать методом научного тыка, то начните хотя бы с такого скрипта-примера - см. приложение на VBS и JS... 

star.vbs

star.js

Link to comment
Share on other sites

15 часов назад, dows сказал:

Ну, а если хочется действовать методом научного тыка, то начните хотя бы с такого скрипта-примера - см. приложение на VBS и JS


Редактор скриптов действительно надо доводить до ума.

1.
Просто как "Редактор" он никому не нужен, намного удобнее использовать тот же Notepad++. Нужна среда для редактирования, отладки и запуска скриптов.

С отладкой пока все очень плохо. Сообщения об ошибках в траурной черной рамке появляются, но настолько нерегулярно, что больше похожи на фантомные боли, чем на механизм отладки.

При отсутствии средств отладки среда запуска скриптов может быть функциональна только при условии, что текст скрипта однозначно отрабатывает аналогично какой либо другой среде отладки. В данном же случае мы берем пример скрипта на VBS (только не из каталога "InScripts", а из каталога "OutScripts") и пробуем его запускать. Методом научного тыка, поскольку прочитать об этом негде, выясняем, что OutScripts\Start.VBS не работает по причине того, что объекту ThisDrawing в контексте "Редактора скриптов" ничего назначить нельзя.
А отладка сводится к бесконечному выводу сообщений и состояний переменных через MsgBox.

2.
Было бы неплохо, чтобы символ раскрытия/закрытия подуровней скрипта отображался в привычной форме: (+) - раскрыть подуровни, (-) - закрыть подуровни, а не наоборот, как сейчас.
 

Спойлер

image.thumb.png.275cc90f1d948a30cf1ed3d40d4d0446.png

 

  • Like 1
Link to comment
Share on other sites

1. Отладки скриптов в эту версию и не планировалось - сначала надо сделать один шаг, потом другой. Но отладка скриптов конечно нужна... Но сейчас есть редактирование и запуск скриптов - уже прогресс.

2. "Методом научного тыка, поскольку прочитать об этом негде" - это ложь. Почитать обо всем этом можно в руководстве разработчика (SDK). На русском языке. Выдается на developer.nanocad.ru. На днях там обновили документацию под 20-ку...

3. (+) и (-) у меня на машине работает вроде корректно... это явно баг, но надо понять как его воспроизвести...

Link to comment
Share on other sites

1 час назад, dows сказал:

"Методом научного тыка, поскольку прочитать об этом негде" - это ложь. Почитать обо всем этом можно в руководстве разработчика (SDK)


Закачано. Собственно, вот все, что присутствует. Если можно прочитать что-то более конкретное, буду благодарен за подсказку.

Спойлер

image.png.34eed2495d716d144e7aafb93b2f56be.png

 

Кстати, по поводу обновленной Справки. Как то она мало отличается от Справки к SDK11.1

Спойлер

image.thumb.png.3a6e8b6477fbe6f2415d8cc921223ea1.png

 

... а пока. Писать скрипт без отладки смысла не имеет, а отлаживать во вне можно где удобно и как удобно. Только к "Редактору скриптов" nanoCAD это отношения не имеет.
Да хотя бы вот так (на примере из SDK).

Спойлер

image.png.7742bb29afc053d03499e4f16ec239c3.png


 

 

Link to comment
Share on other sites

3 минуты назад, A.Kudrjashov сказал:

Собственно, вот все, что присутствует. Если можно прочитать что-то более конкретное, буду благодарен за подсказку

ну, я особо все-таки не программист и эту документацию досконально не знаю. Может и есть больше. Пока я все, что было мне надо - находил. Если есть конкретные вопросы, а в документации не описано, то есть форум - как этот, так и на developer.nanocad.ru. Наши разработчики вроде регулярно отвечают... Я к тому, что фраза "почитать об этом негде" - неверная...

 

Редактор без отладки - плохо или хорошо? Я исхожу из того, что наличие редактора в среде nanoCAD - это уже хорошо. Я например, некие простейшие скрипты уже накидал и использую. Опять же подключение на кнопку упростилось в 20-ке. Т.е. в целом шаг вперед есть. И дальше будем делать, если это направление нужно и востребовано. Имхо правильнее начать работать уже с тем, что есть и получать автоматизацию, чем сидеть и ждать идеального продукта.

Link to comment
Share on other sites

28 минут назад, dows сказал:

Имхо правильнее начать работать уже с тем, что есть

 

1.
Если бы не начали работать, то вопросов бы ни у кого не было. Потому и вопросы, что пользователи честно пытаются.

А "Редактор без отладки" - это удобно, когда скрипт принципиально работает, но надо слегка поменять логику, параметры, пройтись проторенными во внешних отладчиках путями. Да, тоже вариант.

добавлено через 8 минут

2.

... Кстати, а что имеется в виду, когда говорится, что "Для LISP-сценариев реализован механизм запуска на выполнение не всего кода, а только выбранной его части. "

В ISE для запуска части кода нажимаешь <F8>. А в "Редакторе скриптов" как это сделать ?

Edited by A.Kudrjashov
Link to comment
Share on other sites

Скрипты из OutScripts не предназначены для запуска из редактора скриптов, а также командами JS и VBS. Они получают объект приложения через внешний nanoCAD.Application. Попробуйте, эксперимента ради, зарегистрировать nanoCAD.Application на какую-либо другую версию nanoCAD-а при помощи ncad.exe /register. Скрипт будет запущен в исходном nanoCAD-е, но запустится второй и запросы к пользователю будут там и звезда будет создана там же.

 

Внешние скрипты всё же лучше использовать штатно, запускать при помощи cscript.exe.

 

А ThisDrawing во внешних скриптах в примерах SDK поправим, спасибо, действительно, весьма неочевидный момент.

Link to comment
Share on other sites

18 минут назад, ISL сказал:

зарегистрировать nanoCAD.Application на какую-либо другую версию nanoCAD-а при помощи ncad.exe /register. Скрипт будет запущен в исходном nanoCAD-е, но запустится второй и запросы к пользователю будут там и звезда будет создана там же


1. Выполняем nCad /register для nanoCAD 11 (или его приложений).

2. На запуск из проводника по умолчанию по двойному щелчку ЛКМ это не влияет. Все равно запускается nanoCAD 20.

3. Из "Редактора скриптов" действительно открывается дополнительно nanoCAD 11, но только скрипт там не выполняется.
Скрипт выполняется в nanoCAD 11, только, если он уже открыт.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт? Tell a friend!
×
×
  • Create New...