LuaRu — различия между версиями
Материал из ТХАБ.РФ
м (→См. также) |
Админ (обсуждение | вклад) м |
||
(не показано 47 промежуточных версий 5 участников) | |||
Строка 1: | Строка 1: | ||
− | Версия языка [[lua]] в которой дополнительно добавлена (а не заменены) возможность использовать русские | + | Версия языка [[lua]] в которой дополнительно добавлена (а не заменены) возможность использовать русские: |
− | * имена переменных | + | * имена переменных - в современной версии Lua запретили даже использовать не латинские имена переменных и функций ("Для совместимости") - сделано |
− | * функций | + | * функций - сделано |
− | * ключевых слов | + | * ключевых слов - сделано |
− | * русификация сообщений об ошибках | + | * русификация сообщений об ошибках - пока не сделано |
+ | |||
+ | == Загрузить == | ||
+ | * [https://yadi.sk/d/b8tmsD993U6iai Скачать с Яндекс Диска] альфа версия LuaRu от 8 апреля 2018 с ключевыми словами от rts256 и ТХАБ.РФ (две версии) | ||
+ | |||
+ | === Известные проблемы === | ||
+ | * не выводятся сообщения на русском из-за проблем с кодировками - критическая | ||
+ | * файл с кодом не может иметь кириллическое имя | ||
+ | |||
+ | === Планы разработки === | ||
+ | * Сделать подсветку синтаксиса в портативной версии Notepad++ | ||
+ | * добавить обновление от rst256 и скомпилировать его | ||
+ | * сделать справку по LuaRu на htm | ||
+ | * скомпилировать под ubuntu | ||
+ | * репозиторий кода на LuaRu | ||
== Области использования == | == Области использования == | ||
− | * написание и модификация | + | * написание и модификация скриптов для игр и ПО |
− | * написание торговых роботов | + | * написание торговых роботов для [[QUIK]] |
* изучение программирования | * изучение программирования | ||
+ | === Замечания === | ||
+ | * пример того как можно добавить русские названия для базовых ф-й (см. файл [https://github.com/rst256/luaRu/blob/master/lbaselib.c lbaselib.c]). | ||
+ | * И насчёт битовых операций в учебнике LuaRu устаревшая информация, в версии 5.3 добавлена полноценная их поддержка. | ||
=== Что добавить (по приоритетам ) === | === Что добавить (по приоритетам ) === | ||
Строка 21: | Строка 38: | ||
* Редактор кода с '''подсветкой''' одновременно русского И АНГЛИЙСКОГО синтаксиса | * Редактор кода с '''подсветкой''' одновременно русского И АНГЛИЙСКОГО синтаксиса | ||
* Редактор кода с подсветкой и '''автодополнением''' русского синтаксиса. | * Редактор кода с подсветкой и '''автодополнением''' русского синтаксиса. | ||
+ | |||
+ | === Ключевые слова и их перевод === | ||
+ | |||
+ | 1. Учитывая особенности русского языка имеет смысл для некоторых операторов добавить 2 синонима. Например | ||
+ | |||
+ | * true - да, правда (ВКЛ - так в Глаголе) | ||
+ | |||
+ | * false - нет, ложь (ОТКЛ - так в Глаголе) | ||
+ | |||
+ | 2. Для улучшения читабельности текста возможно имеет смысл "elseif" переводить как "иначе_если", а не "иначеесли" или "ИначеЕсли" (ЕСЛИ..ТО..АЕСЛИ..ТО..ИНАЧЕ..КОН - так в Глаголе) | ||
+ | |||
+ | 3. и, или, не, - сделать большими И, ИЛИ, НЕ - ? (И, ИЛИ, НЕ - так в Глаголе) | ||
+ | |||
+ | 3. после получения рабочей альфа версии необходимо будет ещё раз провести ревизию синтаксиса и на читабельность на больших кусках кода | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! [[Lua]] !! Зуев !! 1С !! [[LuaRu]] !! rts256 | ||
+ | |- | ||
+ | | and || || || И || и | ||
+ | |- | ||
+ | | break || || || первать / выход || стоп | ||
+ | |- | ||
+ | | do || || || делать, повторять || начало | ||
+ | |- | ||
+ | | else || || || иначе || иначе | ||
+ | |- | ||
+ | | elseif || || || иначе_если || иначеесли | ||
+ | |- | ||
+ | | end || || || конец || всё | ||
+ | |- | ||
+ | | false || || || ложь, нет || ложь | ||
+ | |- | ||
+ | | for || || || для || для | ||
+ | |- | ||
+ | | function || || || функция || функция | ||
+ | |- | ||
+ | | goto || || || перейти, перейти_к || идина | ||
+ | |- | ||
+ | | if || || || если || если | ||
+ | |- | ||
+ | | in || || || в || в | ||
+ | |- | ||
+ | | local || || || локальная || локал | ||
+ | |- | ||
+ | | nil || || || пусто || нуль | ||
+ | |- | ||
+ | | not || || || НЕ || не | ||
+ | |- | ||
+ | | or || || || ИЛИ || или | ||
+ | |- | ||
+ | | repeat || || || повторить || повторять | ||
+ | |- | ||
+ | | return || || || вертуться, в начало|| возврат | ||
+ | |- | ||
+ | | then || || || то, тогда || тогда | ||
+ | |- | ||
+ | | true || || || правда, да || истина | ||
+ | |- | ||
+ | | until || || || покаНе || покуда | ||
+ | |- | ||
+ | | while || || || пока || пока | ||
+ | |} | ||
+ | |||
+ | == Пример кода == | ||
+ | |||
+ | function square(iteratorMaxCount,currentNumber) | ||
+ | if currentNumber<iteratorMaxCount | ||
+ | then | ||
+ | currentNumber = currentNumber+1 | ||
+ | return currentNumber, currentNumber*currentNumber | ||
+ | end | ||
+ | end | ||
+ | |||
+ | for i,n in square,3,0 | ||
+ | do | ||
+ | print(i,n) | ||
+ | end | ||
+ | === На LuaRu === | ||
+ | функция Квадрат ( целСчётчикМаксимальноеКоличество, текущийНомер ) | ||
+ | если текущийНомер < целСчётчикМаксимальноеКоличество | ||
+ | тогда | ||
+ | текущийНомер= текущийНомер + 1 | ||
+ | возврат текущийНомер, текущийНомер * текущийНомер | ||
+ | конец | ||
+ | конец | ||
+ | |||
+ | для и, н в Квадрат, 3, 0 | ||
+ | делай | ||
+ | печать(и, н) | ||
+ | конец | ||
+ | |||
+ | == LuaRu разработка == | ||
+ | |||
+ | * [[Учебник по LuaRu]] | ||
+ | * [[LuaRu тесты]] | ||
+ | * [[LuaRu компиляция исходников в Windows7]] | ||
+ | ** [[LuaRu компиляция исходников в Linux]] Ubuntu , [[Astra Linux]] | ||
+ | * [[IDE для LuaRu]] подсветка синтаксиса, настройка Notepad ++ | ||
+ | * [[Замена Lua на LuaRu в программах]] | ||
== См. также == | == См. также == | ||
* [[Lua]] | * [[Lua]] | ||
+ | * [[LuaRus]] | ||
* [[Языки программирования с русским синтаксисом]] | * [[Языки программирования с русским синтаксисом]] | ||
* [[Русификация Си++]] | * [[Русификация Си++]] | ||
== Ссылки == | == Ссылки == | ||
+ | * https://vk.com/luaru Официальная группа ВКонтакте по LuaRu | ||
+ | * https://yadi.sk/d/b8tmsD993U6iai скачать с Яндекс Диска | ||
+ | * https://github.com/rusprogwiki Русификация Lua форк Lua 5.3.4 | ||
+ | * http://plana.mybb.ru/viewtopic.php?id=576 Обсуждение LuaRu | ||
+ | * http://dev.mindillusion.ru/installation-lua/ компиляция Lua из исходников под Windows MSVC | ||
+ | * https://habrahabr.ru/post/144830/ Как настроить подсветку синтаксиса в Notepad++ | ||
[[Категория:Lua]] | [[Категория:Lua]] | ||
+ | [[Категория:LuaRu]] |
Текущая версия на 08:17, 14 марта 2024
Версия языка lua в которой дополнительно добавлена (а не заменены) возможность использовать русские:
- имена переменных - в современной версии Lua запретили даже использовать не латинские имена переменных и функций ("Для совместимости") - сделано
- функций - сделано
- ключевых слов - сделано
- русификация сообщений об ошибках - пока не сделано
Содержание
Загрузить
- Скачать с Яндекс Диска альфа версия LuaRu от 8 апреля 2018 с ключевыми словами от rts256 и ТХАБ.РФ (две версии)
Известные проблемы
- не выводятся сообщения на русском из-за проблем с кодировками - критическая
- файл с кодом не может иметь кириллическое имя
Планы разработки
- Сделать подсветку синтаксиса в портативной версии Notepad++
- добавить обновление от rst256 и скомпилировать его
- сделать справку по LuaRu на htm
- скомпилировать под ubuntu
- репозиторий кода на LuaRu
Области использования
- написание и модификация скриптов для игр и ПО
- написание торговых роботов для QUIK
- изучение программирования
Замечания
- пример того как можно добавить русские названия для базовых ф-й (см. файл lbaselib.c).
- И насчёт битовых операций в учебнике LuaRu устаревшая информация, в версии 5.3 добавлена полноценная их поддержка.
Что добавить (по приоритетам )
- русские имена переменных
- русские имена функций
- русские ключевые слова из 1С/Си Зуев интерстрон
- сообщения об ошибках на русском языке
- русские примеры и тесты
- русский учебник
- конвертер русс-лат
- Редактор кода с подсветкой одновременно русского И АНГЛИЙСКОГО синтаксиса
- Редактор кода с подсветкой и автодополнением русского синтаксиса.
Ключевые слова и их перевод
1. Учитывая особенности русского языка имеет смысл для некоторых операторов добавить 2 синонима. Например
- true - да, правда (ВКЛ - так в Глаголе)
- false - нет, ложь (ОТКЛ - так в Глаголе)
2. Для улучшения читабельности текста возможно имеет смысл "elseif" переводить как "иначе_если", а не "иначеесли" или "ИначеЕсли" (ЕСЛИ..ТО..АЕСЛИ..ТО..ИНАЧЕ..КОН - так в Глаголе)
3. и, или, не, - сделать большими И, ИЛИ, НЕ - ? (И, ИЛИ, НЕ - так в Глаголе)
3. после получения рабочей альфа версии необходимо будет ещё раз провести ревизию синтаксиса и на читабельность на больших кусках кода
Lua | Зуев | 1С | LuaRu | rts256 |
---|---|---|---|---|
and | И | и | ||
break | первать / выход | стоп | ||
do | делать, повторять | начало | ||
else | иначе | иначе | ||
elseif | иначе_если | иначеесли | ||
end | конец | всё | ||
false | ложь, нет | ложь | ||
for | для | для | ||
function | функция | функция | ||
goto | перейти, перейти_к | идина | ||
if | если | если | ||
in | в | в | ||
local | локальная | локал | ||
nil | пусто | нуль | ||
not | НЕ | не | ||
or | ИЛИ | или | ||
repeat | повторить | повторять | ||
return | вертуться, в начало | возврат | ||
then | то, тогда | тогда | ||
true | правда, да | истина | ||
until | покаНе | покуда | ||
while | пока | пока |
Пример кода
function square(iteratorMaxCount,currentNumber) if currentNumber<iteratorMaxCount then currentNumber = currentNumber+1 return currentNumber, currentNumber*currentNumber end end for i,n in square,3,0 do print(i,n) end
На LuaRu
функция Квадрат ( целСчётчикМаксимальноеКоличество, текущийНомер ) если текущийНомер < целСчётчикМаксимальноеКоличество тогда текущийНомер= текущийНомер + 1 возврат текущийНомер, текущийНомер * текущийНомер конец конец
для и, н в Квадрат, 3, 0 делай печать(и, н) конец
LuaRu разработка
- Учебник по LuaRu
- LuaRu тесты
- LuaRu компиляция исходников в Windows7
- IDE для LuaRu подсветка синтаксиса, настройка Notepad ++
- Замена Lua на LuaRu в программах
См. также
Ссылки
- https://vk.com/luaru Официальная группа ВКонтакте по LuaRu
- https://yadi.sk/d/b8tmsD993U6iai скачать с Яндекс Диска
- https://github.com/rusprogwiki Русификация Lua форк Lua 5.3.4
- http://plana.mybb.ru/viewtopic.php?id=576 Обсуждение LuaRu
- http://dev.mindillusion.ru/installation-lua/ компиляция Lua из исходников под Windows MSVC
- https://habrahabr.ru/post/144830/ Как настроить подсветку синтаксиса в Notepad++