> For the complete documentation index, see [llms.txt](https://help.trikset.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.trikset.com/studio/programming-code.md).

# Программирование на текстовом языке

Текстовый режим программирования позволяет редактировать [сгенерированную](/studio/programming-code.md#generation) по диаграмме программу перед загрузкой на робота или [написать программу](/studio/programming-code.md#new-programm) в текстовом виде с нуля.

## Создание новой текстовой программы <a href="#new-programm" id="new-programm"></a>

1\. [Создайте диаграмму](/studio/start.md#new-project), содержащую блоки «Начало» и «Конец».

2\. Выберите режим реального робота.

3\. Нажмите на кнопку «Генерировать код».\
\
После этого появится пустой шаблон программы, которая содержит все необходимые объявления, но ничего не делает.

![](/files/-M2ENPe_7rsP91Yr-ALq)

## Генерация диаграммы в код <a href="#generation" id="generation"></a>

1\. Выберите режим реального робота.

2\. Нажмите на кнопку «Генерировать код».

{% hint style="info" %}
При повторной генерации диаграммы ручные изменения не потеряются, если текстовый файл сохранен. Результат новой генерации сохранится в другой файл.
{% endhint %}

![](/files/-M2EO-4xSPDUGHt9vGQu)

## Поддерживаемые языки программирования

Поддерживаемый текстовый язык программирования зависит от платформы. Одна платформа может иметь несколько целевых текстовых языков.

{% hint style="warning" %}
**Внимание!** Доступные генераторы зависят от установленных подключаемых модулей.
{% endhint %}

### Контроллер ТРИК <a href="#trik" id="trik"></a>

Для платформы ТРИК возможна генерация в:

* [Python](/trik/programming-code.md).
* [JavaScript](/trik/programming-code.md).

### Контроллер Lego EV3 <a href="#ev3" id="ev3"></a>

Эксперты в EV3 могут посмотреть на сгенерированный на внутреннем языке EV3 код с помощью кнопки «Сгенерировать в байт-код EV3». Теоретически его можно подредактировать и запустить на исполнение или вообще использовать для текстового программирования EV3, но делать это неудобно — язык создавался для автоматической генерации, а не написания программ.

### Контроллер Lego NXT <a href="#nxt" id="nxt"></a>

Для Lego NXT поддерживается генерация в [язык С](/nxt/c.md) с использованием библиотеки ECRobot.

### Квадрокоптер Геоскан Пионер <a href="#peoneer" id="peoneer"></a>

Для квадрокоптера Геоскан Пионер возможна генерация в Lua.
