Возврат к списку

OneScript 1.2.0: разрабатывать скриптовые библиотеки на языке 1С стало проще

22.11.2019     
37

В новой версии OneScript 1.2.0 значительно доработан отладчик, реализованы условные директивы препроцессора в зависимости от операционных систем, улучшена диагностика модулей, скомпилированных в exe.

История проекта

Проект OneScript появился в 2014 году и анонсирован в сообществе Инфостарта как инструмент, с помощью которого можно запускать скрипты, написанные на языке 1С.

За последние 5 лет:

  • выросла экосистема разработанных на базе OneScript библиотек и приложений;
  • появилось хранилище пакетов с возможностью установки любой существующей в сообществе библиотеки с помощью менеджера пакетов (сейчас в хабе находится 100 пакетов, которые можно установить из командной строки);
  • на базе Visual Studio Code реализована собственная инфраструктура для разработки скриптов с возможностью автодополнения и отладки.

Возможности языкового движка тоже не стоят на месте: OneScript уже давно используется не только для решения CI/CD задач простого 1С-ника (упрощение работы с конфигуратором, с хранилищем и т.д). Фреймворк для сайтов OneScript.Web позволяет описывать серверную и клиентскую часть веб-приложений. Пакет oscript-simple-gui реализует полноценный пользовательский интерфейс к OneScript-приложению. К тому же, OneScript изначально поддерживает возможность компиляции в исполняемый exe-файл, который позволяет не зависеть от установленного ПО на компьютере клиента.

Развитие отладчика

В новой версии OneScript 1.2.0 значительно доработан отладчик, который поставляется в виде расширения к Visual Studio Code – его можно установить из панели расширений. Для работы с новой версией движка предназначен отладчик OneScript Debug 0.5.0.

 

 

При отладке скрипта OneScript появилась возможность вычисления значений при наведении мыши на переменную в тексте модуля (ховер).

 

 

В окне контрольных значений и в табло реализован Intermediate-вычислитель выражений.

 

 

Поддерживаются коллекции – структуры, соответствия, таблицы значений.

 

 

При просмотре таблицы значений можно видеть как ее именованные свойства (колонки), так и индексируемые (строки). Просмотр таблицы значений работает и в табло, и в окне контрольных выражений, и при наведении на переменную.

Условные директивы препроцессора

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

#Если Windows Тогда

#КонецЕсли

Реализованы стандартные символы: Linux, MacOs, Windows. При запуске на соответствующей операционной системе переменная препроцессора будет иметь значение Истина.

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

Отдельные дистрибутивы для 64-битной и 32-битной платформ

Дистрибутивы для скачивания теперь имеют два варианта – x86 и x64.

32-разрядную сборку рекомендуется применять для взаимодействия с 32-битной версией «1С:Предприятия» с помощью COM-соединителя. В остальных случаях рекомендуется использовать сборку x64.

Доработки и улучшения

Выполнен рефакторинг лексического анализатора – разбор текста ускорен на 20%.

Улучшена диагностика модулей, скомпилированных в exe – сообщения, которые выдает при ошибке скомпилированное OneScript exe-приложение, содержат в себе строку кода, на которой произошло исключение.

Доработана совместимость поведения языкового движка между OneScript и 1С. Добавлен ряд новых объектов и методов.

Установка приложения

Версию OneScript 1.2.0 можно установить двумя способами:

  • скачать дистрибутив на сайте проекта (к загрузке доступны версии для Windows, rpm и deb);

  • с помощью пакетного менеджера chocolatey командой:
    choco install onescript

 

Подробнее об изменениях в новом релизе OneScript 1.2.0


Автор:
Виктория Дорохина Аналитик


Комментарии
Избранное Подписка Сортировка: Древо
1. andreosh 101 22.11.19 12:04 Сейчас в теме
Какие русскоязычные языки программирования мне известны:
1С, OneScript,
Перфолента http://promcod.com.ua/subcat.asp?cat=perfolenta-programmig-language&subcat=perfolenta-download и
Русский Фокс https://www.youtube.com/watch?v=9pfhi9HBvzI&list=PLo4sldcUomOrKAPb_0A5Kv-nILQG3I7Dd&index=34
Может, кто то продолжит список ?
Perfolenta; +1 Ответить
4. kuntashov 366 22.11.19 17:30 Сейчас в теме
(1) Из модных-молодежных

* Гонец: https://github.com/covrom/gonec
* ЯГТР https://github.com/san-smith/USSRHTML
* ну и конечно Епта-скрипт https://github.com/samgozman/YoptaScript (https://yopta.space/)

Правда вторые два, конечно, стеб, но Гонец вполне серьезно делался.

Ну и еще есть всякие ископаемые типа Рапиры, Ершола и т.п.
AlX0id; JohnyDeath; andreosh; +3 Ответить
8. AlX0id 26.11.19 15:54 Сейчас в теме
(4)
Вот епта-скрипт - очень перспективная х.. разработка.
2. Serg O. 181 22.11.19 12:21 Сейчас в теме
Спасибо за информацию.
Пакет oscript-simple-gui - ранее не использовал...
скачал - всё сразу заработало!

Спасибо разработчикам ОГРОМНОЕ.

Обновления VsCode у меня "сами" скачались,
но можно и "скачать другую версию"...
Прикрепленные файлы:
3. Darklight 21 22.11.19 12:24 Сейчас в теме
Ооо - из мира 1С сама годная новость за месяц! Респект!
5. Xelgo 23.11.19 09:40 Сейчас в теме
Добрый день, не у кого не было проблем после компиляции exe, что не запускается приложение т. к не видит. OneScript. Language
6. Evil Beaver 6447 23.11.19 13:30 Сейчас в теме
(5) напишите мне задачку на гитхаб, я посмотрю
7. Perfolenta 185 24.11.19 07:11 Сейчас в теме
Хорошая новость! С OneScript-ом работать все приятнее...
Однако, надо бы еще немного подумать над случаем, когда обе версии 32 и 64 стоят на одной машине... вызов из консоли теперь зависит от порядка установки версий, т.к. поиск идет в переменной среды Path... может 32 разрядный назвать oscript32.exe? Тогда будет более осмысленный запуск той версии, которую хочешь... а библиотеки ScriptEngine.dll и остальные можно для обеих версий оставить AnyCPU... тогда будет один дистрибутив вместо двух и в батниках можно будет четко указывать какую версию запускаешь без указания полного пути...
Glebis; andreosh; +2 Ответить
9. Vix 27 27.11.19 17:35 Сейчас в теме
Может я не там читаю, а каким образом можно скомпилировать отдельный EXE файл, нажимаю компиляция, все отрабатывается без ошибок, а сам файл где? Простите может за глупый вопрос, только начал изучать ваше творение и оно мне уже нравится)
10. vikad 115 27.11.19 17:37 Сейчас в теме
(9) https://infostart.ru/public/287643/ раздел "Построение самостоятельного exe-модуля"
11. Vix 27 27.11.19 19:14 Сейчас в теме
(10) отлично, спасибо большое за наводку
Оставьте свое сообщение

См. также

Большие перемены: Google откажется от приложений для Chrome и сторонних cookies 0

Новость Google Интернет

Google рассказал о двух крупных изменениях в своей политике: компания перестанет поддерживать сторонние cookies в браузере Chrome и откажется от приложений для него. 

сегодня в 11:50    59    user1015646    0       

В России появится «медицинский» ИИ на отечественных нейропроцессорах  1

Новость Искусственный интеллект Медицина Нейросети

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

17.01.2020    592    user1015646    3       

Amazon представила библиотеку для создания приложений с применением ИИ 6

Новость Amazon Искусственный интеллект

Чтобы создать приложение с помощью ИИ, разработчику достаточно написать всего три строки кода. 

16.01.2020    1147    AnastasiaKl    7       

Microsoft предложила купить новый ПК вместо обновления старого до Windows 10 3

Новость Microsoft

Поддержка Windows 7 прекращается 14 января. Microsoft напоминает пользователям, что их устройство может не поддерживать «десятку», и рекомендует вместо обновления купить новый компьютер. 

14.01.2020    1473    VKuser24342747    18       

Российский программист создал сервис, который может продолжить любую историю за рассказчика 4

Новость Искусственный интеллект Маск Нейросети

Разработчик Михаил Гранкин создал сервис «Порфирьевич», который умеет дописывать тексты на русском языке. Гранкин взял за основу нейросеть GPT-2 компании OpenAI. Один из основателей компании – Илон Маск, создатель Tesla и SpaceX. 

09.01.2020    8085    user1015646    15       

Apple отключила чип для Bluetooth в российских iPhone 11 из-за запрета Роскомнадзора 1

Новость Apple Роскомнадзор

Apple попросила Роскомнадзор выдать лицензию на частоты, необходимые для использования новой технологии беспроводной передачи данных. Из-за отказа ведомства компания отключила в России чип, необходимый для этой функции. 

24.12.2019    2291    VKuser24342747    38       

Система госзакупок засбоила после перехода на свободное ПО 2

Новость Госзакупки Мобильные приложения Тендер

Модуль в системе госзакупок, который отвечает за взаимодействие с электронными площадками и внешними решениями, решили перевести на ПО с открытым исходным кодом. В результате перехода система больше суток работала со сбоями.

23.12.2019    1410    user1015646    6       

Путин подписал указ о переводе российских больниц на электронный документооборот 5

Новость Здравоохранение, медицина, стоматология Путин Цифровая экономика

Президент России Владимир Путин утвердил несколько поручений, направленных на цифровизацию здравоохранения. Среди них – внедрение электронного документооборота в больницах страны. 

19.12.2019    1890    user1015646    8       

Экспертный совет: «Яндекс» значительно обновил поисковую систему 3

Новость Интернет Яндекс

«Яндекс» представил обновление «Вега» для своей системы поиска. В сервисе появилось более 1500 нововведений и улучшений. Главная особенность – функция экспертного поиска. 

19.12.2019    1592    VKuser24342747    4       

ИИ от Amazon освободит врачей от бумажной работы и поможет пациенту прочесть рецепты 2

Новость Amazon Искусственный интеллект Нейросети

Разработчики представили нейросеть Transcribe Medical. Она слушает беседу врача и пациента и помогает вести медицинские записи.

19.12.2019    1317    user1015646    1       

Russian AI Cup 2019: стартовал чемпионат Mail.Ru Group по программированию искусственного интеллекта 5

Новость Искусственный интеллект Нейросети

Участвовать в Russian AI Cup 2019 могли все желающие – от студентов профильных вузов и фанатов передовых технологий до профессиональных разработчиков.

17.12.2019    1626    user1015646    14       

Вот так сюрприз: в самом копируемом фрагменте Java-кода нашли ошибку 7

Новость Языки программирования

Сайт StackOverflow – популярная система вопросов и ответов о программировании. Но не все советы коллег одинаково полезны: в самом цитируемом куске кода на Java, представленном на StackOverflow, обнаружили серьезный баг.

16.12.2019    2873    user1015646    3       

Команда из России превратила Python-хакатон в свой мастер-класс 5

Новость Языки программирования

В Бахрейне прошел ИТ-марафон GeoHack-2019. Команды должны были создать нейронные сети для обработки данных с месторождений нефти.

13.12.2019    1922    user1015646    3       

Google начал учитывать контекст слов при русскоязычном поиске 3

Новость Google Интернет Нейросети

Компания Google обновила алгоритмы для поиска по русскоязычным сайтам. Это крупнейший апдейт системы за последние пять лет. Его главная цель – улучшить результаты выдачи. 

13.12.2019    1391    VKuser24342747    3       

Аэропорт «Внуково» отказался от электронных посадочных талонов из-за законодательства 1

Новость Законодательство Цифровая экономика

«Внуково» перестал пускать в самолеты пассажиров с электронными посадочными талонами. Остальные российские аэропорты по-прежнему используют цифровые билеты. 

11.12.2019    2132    VKuser24342747    5       

У кроссплатформенной библиотеки разработки Qt появился свой магазин модулей и дополнений 2

Новость Языки программирования

Qt Company запустила официальный магазин дополнений и модулей для Qt: популярный фреймворк используют для создания ПО на С++, но существуют привязки решения к другим языкам.

11.12.2019    1636    user1015646    5       

Apple изменит политику презентации моделей 1

Новость Apple Гаджеты

С момента выпуска первого смартфона – в 2007 году – Apple презентовала свои новинки раз в год. В агентстве JP Morgan предположили, что к 2021 году стратегия изменится: компания начнет презентовать новинки дважды в год.

10.12.2019    1385    Bukaska    2       

Nvidia не будет поддерживать macOS в следующем обновлении CUDA 4

Новость Apple MacOS Видеоигры

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

09.12.2019    1491    user1015646    2       

Свой Space, свои правила: JetBrains представил новый сервис для командной работы 6

Новость git Управление проектами

Компания JetBrains анонсировала новый сервис для организации командной работы. Продукт от разработчика с российскими корнями получил название Space.

09.12.2019    1762    user1015646    13       

Huawei Mate 30 стал первым телефоном компании без деталей из США 2

Новость Android Гаджеты

Компания Huawei выпустила первый смартфон, собранный без американских комплектующих. Тем не менее, компания все еще продолжает бороться против санкций США. 

09.12.2019    1663    VKuser24342747    1       

Инфостарт и electroNeek запускают программу роботизации процессов для малых и средних предприятий 19

Новость Автоматизация Инфостарт

Инфостарт заключил партнерский договор с компанией electroNeek – разработчиком  программного обеспечения для автоматизации повторяющихся бизнес-задач. Наша цель – сделать роботизированную автоматизацию процессов (RPA) доступной. 

06.12.2019    2537    user997184    7       

Проект Verona: Microsoft перепишет часть Windows на новом языке 6

Новость Microsoft Языки программирования

Microsoft запустила экспериментальный проект по разработке собственного языка программирования Verona, основанного на Rust.

05.12.2019    2142    user1015646    6       

Nokia создала ПО для программирования интернете вещей на базе Tarantool 3

Новость СУБД Mail.Ru Инновации

Модуль позволит разрабатывать ПО для систем промышленного интернета вещей. Он включает инструменты для управления интеллектуальными средами и обеспечивает взаимодействие IOC с граничными облачными приложениями. 

02.12.2019    1481    user1015646    6       

Google пожаловался на разработчиков игр из-за неудачного старта сервиса Stadia 2

Новость Google Видеоигры

Облачный сервис Google Stadia не оправдал ожидания игроков. Он не позволяет запускать игры в разрешении 4K, имеет большую задержку ввода и приводит к перегреву плеера Chromecast.

02.12.2019    1784    VKuser24342747    5       

В России и Европе закончились адреса IPv4 4

Новость Интернет

«25 ноября 2019 года, мы сделали окончательное распределение / 22 IPv4 по последним оставшимся адресам в нашем доступном пуле. Теперь у нас закончились адреса IPv4», – сообщает один из пяти глобальных интернет-регистраторов RIPE NCC. 

28.11.2019    2092    user1015646    0