С чего начать разработку скриптов на OneScript? Первые шаги

После моего доклада на INFOSTART 2024 EVENT COMMUNITY ко мне многие обращались с таким вопросом: с чего начать разработку скриптов на OneScript? В этой статье привожу набор ссылок и некий порядок действий (как его вижу я) для людей, не знакомым с этим инструментом.

Прежде всего хочу сказать, что я не явлюсь автором движка или стандартных библиотек OneScript. Здесь я бы хотел просто рассказать о том пути, который прошел я, чтобы начать разрабатывать на OneScript. Ни в коем случае не настаиваю на истинность или полноту действий. Если кто-либо из причастных захочет что-то добавить или изменить (на что я надеюсь), с радостью добавлю или изменю. Давайте напишем этот мануал вместе!

Итак:

1. Для начала, предлагаю посмотреть вот это 25-минутное видео (которое я записывал в рамках пятничных вебинаров разработчиков 1С), где "с нуля" создается первый скрипт, а также объясняются все основные понятия:  

2. В видео частично повторяются действия, описанные Андреем Овсянкиным в статье "Как решать повседневные задачи с помощью OneScript". Думаю стоит ее прочитать.

3. Далее, обратите внимание на официальный сайт проекта http://oscript.io, в частности на разделы:

4. Наиболее полный список и описание всех имеющихся стандартных библиотек содержится здесь: https://github.com/oscript-library, а обзор некоторых библиотек есть здесь: //infostart.ru/public/699642/.

5. Все скрипты, в принципе, можно разрабатывать и в NotePad++, но все же удобнее это делать в Visual Studio Code

6. Задать вопрос авторам:

  • По функциональности движка можно здесь: https://gitter.im/EvilBeaver/OneScript
  • По стандартным библиотекам здесь: https://gitter.im/EvilBeaver/oscript-library 
  • По каждому отдельному инструменту также доступно обсуждение в Gitter. 
  • Про баги и хотелки можно писать в Issues соответствующего репозитория на GitHub.

7. На infostart уже имеется достаточно статей и программ написанных на OneScript. Прогнозирую в будущем создание отдельного пункта в разделах, например, в фильтре "Платформа":

Ну а пока, можно воспользоваться поиском, для просмотра всех материалов по этой теме.

8. Примеры готовых инструментов (не из числа стандартных библиотек) на OneScript:

9. Еще полезные статьи о OneScript:

 

Ну и в заключение хочу сказать, что я вам искренне желаю не делать одни и те же действия руками. Не бойтесь изучать новое, не бойтесь заниматься автоматизацией. Это не только полезно, но и очень увлекательно. Удачи!

13 Comments

  1. dalgaso2010

    Виталий, спасибо за статью!

    Хотел с вами поболтать на IE2017, но почему-то не получалось пересечься 🙁

    Хорошая вводная статья, помню когда начал сам разбираться с темой OneScript не хватало как раз хорошо структурированного вводного материала. В начале этого года я тоже писал статью по OneScript для журнала «Системный администратор». Электронную версию можно почитать в моем персональном блоге. Может и она кому-нибудь окажется полезной.

    Reply
  2. Tavalik

    (1)

    Ого, какая большая и подробная статья! Что же вы ее только сейчас в блоге выложил? 🙂

    Добавил в ссылку в статью.

    Reply
  3. dalgaso2010

    (2) Спасибо! Ее опубликовали в мае в журнале, через 2 месяца только имею право публиковать у себя. Могу выложить и на инфострате, только не знаю, можно ли делать копипаст со своего блога. На Хабре, например, такое не позволяют.

    Reply
  4. 1cWin

    Для удобства программирования в npp можно подключить список функций. К сожалению, с ограничениями (слова Процедура и Функция надо писать Procedure & Function), но у меня работает.

    Для этого в файлике functionList.xml надо внести следующие правки в соответствующих тегах:

    <association userDefinedLangName=»1CEnt» id=»os_function» />

    — <parser id=»os_function» displayName=»os_source» commentExpr=»((/*.*?*)/|(//.*?$))»>
    — <function mainExpr=»#k8SjZc9Dxk[	 ]*(procedure|function)[s]+w+(«>
    — <functionName>
    <nameExpr expr=»(?:((procedure|function)[s]+))[w_]+[s]*(» />
    <nameExpr expr=»(?:((procedure|function)[s]+))[w_]+» />
    </functionName>
    </function>
    </parser>
    

    Показать

    Reply
  5. artbear

    (4) Юзай VSC, в нем максимально удобно разрабатывать скрипты/пакеты OneScript

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

    npp я лично пару лет не юзаю вообще.

    Reply
  6. user814789

    Присоединяюсь к хвальбам о полезности статьи. Про п.5 хотел бы добавить, что при установке onescript — сразу устанавливается ярлык для раскраски кода и его отладки! Respect Создателям! (5) VSC раскраска не стандартная.

    Reply
  7. baton_pk

    (6)

    сразу устанавливается ярлык для раскраски кода и его отладки

    не пользуйтесь им, эта консоль вообще не предназначена для какой-либо серьёзной разработки и не ровен час вообще будет исключена из поставки. Привыкайте к VSCode — он довольно удобный и развивается.

    (6)

    VSC раскраска не стандартная

    Это настраивается.

    Reply
  8. Vladimir Litvinenko

    Видео опубликовано еще в августе, но как-то пролетело мимо глаз в подписках на YouTube.

    Спасибо, что опубликовали также здесь. Отличный материал! Ряд приемов обязательно пригодятся в работе.

    Несмотря на многочисленные рекомендации использовать VSC, за примеры в Notepad++ также спасибо. Хорошо уметь пользоваться разными инструментами, чтобы осознанно выбирать лучший для себя.

    Reply
  9. Tavalik

    (8)

    Спасибо за ваш комментарий.

    Я использую обе среды: на своей машине — VSC, а на серверах клиентов — Notepad++. Установку VSC бывает трудно обосновать, а вот блокнот часто уже есть, и необходимость его установки, как правило, почему-то вопросов не вызывает.

    Reply
  10. vikad

    vs code можно использовать в портативном варианте, просто скопировав на флешку папку из Program Files, а нужные расширения поставив в папку extensions

    Reply
  11. artbear

    (10) Виктория права, VSC также в портативном варианте юзается

    Reply
  12. adhocprog

    Отличная публикация! )

    Reply
  13. ahyahy

    Добавлю сюда своё решение к пункту 8. Библиотека для создания gui (форм). Приходите на https://onescriptgui.teriy.com/ Пока она там находится. Классов — 176, свойств — 1073, методов — 557, перечислений — 63. Основана на KiXforms.NET v3.2.16.0 написанной Shawn Tassie. Исходный код позже будет, времени не стало хватать.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *