LuaRu — различия между версиями
Материал из ТХАБ.РФ
м (→Пример кода) |
Админ (обсуждение | вклад) м |
||
(не показано 38 промежуточных версий 4 участников) | |||
Строка 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 добавлена полноценная их поддержка. | ||
=== Что добавить (по приоритетам ) === | === Что добавить (по приоритетам ) === | ||
Строка 25: | Строка 40: | ||
=== Ключевые слова и их перевод === | === Ключевые слова и их перевод === | ||
+ | |||
+ | 1. Учитывая особенности русского языка имеет смысл для некоторых операторов добавить 2 синонима. Например | ||
+ | |||
+ | * true - да, правда (ВКЛ - так в Глаголе) | ||
+ | |||
+ | * false - нет, ложь (ОТКЛ - так в Глаголе) | ||
+ | |||
+ | 2. Для улучшения читабельности текста возможно имеет смысл "elseif" переводить как "иначе_если", а не "иначеесли" или "ИначеЕсли" (ЕСЛИ..ТО..АЕСЛИ..ТО..ИНАЧЕ..КОН - так в Глаголе) | ||
+ | |||
+ | 3. и, или, не, - сделать большими И, ИЛИ, НЕ - ? (И, ИЛИ, НЕ - так в Глаголе) | ||
+ | |||
+ | 3. после получения рабочей альфа версии необходимо будет ещё раз провести ревизию синтаксиса и на читабельность на больших кусках кода | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! [[Lua]] !! Зуев !! 1С !! [[ | + | ! [[Lua]] !! Зуев !! 1С !! [[LuaRu]] !! rts256 |
+ | |- | ||
+ | | and || || || И || и | ||
+ | |- | ||
+ | | break || || || первать / выход || стоп | ||
|- | |- | ||
− | | | + | | do || || || делать, повторять || начало |
|- | |- | ||
− | | | + | | else || || || иначе || иначе |
|- | |- | ||
− | | | + | | elseif || || || иначе_если || иначеесли |
|- | |- | ||
− | | | + | | end || || || конец || всё |
|- | |- | ||
− | | | + | | false || || || ложь, нет || ложь |
|- | |- | ||
− | | | + | | for || || || для || для |
|- | |- | ||
− | | | + | | function || || || функция || функция |
|- | |- | ||
− | | | + | | goto || || || перейти, перейти_к || идина |
|- | |- | ||
− | | | + | | if || || || если || если |
|- | |- | ||
− | | | + | | in || || || в || в |
|- | |- | ||
− | | | + | | local || || || локальная || локал |
|- | |- | ||
− | | | + | | nil || || || пусто || нуль |
|- | |- | ||
− | | not || || || НЕ | + | | not || || || НЕ || не |
|- | |- | ||
− | | or || || || ИЛИ | + | | or || || || ИЛИ || или |
|- | |- | ||
− | | repeat || || || повторить | + | | repeat || || || повторить || повторять |
|- | |- | ||
− | | return || || || вертуться, в начало | + | | return || || || вертуться, в начало|| возврат |
|- | |- | ||
− | | then || || || то | + | | then || || || то, тогда || тогда |
|- | |- | ||
− | | true || || || правда | + | | true || || || правда, да || истина |
|- | |- | ||
− | | until || || || покаНе | + | | until || || || покаНе || покуда |
|- | |- | ||
− | | while || || || пока | + | | while || || || пока || пока |
|} | |} | ||
Строка 85: | Строка 116: | ||
print(i,n) | print(i,n) | ||
end | end | ||
− | === На | + | === На LuaRu === |
− | функция | + | функция Квадрат ( целСчётчикМаксимальноеКоличество, текущийНомер ) |
− | если текущийНомер< | + | если текущийНомер < целСчётчикМаксимальноеКоличество |
тогда | тогда | ||
− | текущийНомер= текущийНомер+1 | + | текущийНомер= текущийНомер + 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++