Русскоязычное программирование

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Русскоязычное программирование » трансляторы » Русификация Lua 5.3.4 - LuaRu


Русификация Lua 5.3.4 - LuaRu

Сообщений 1 страница 24 из 24

1

Спасибо rst256 за то что помог разобраться с кодом !

Вот его ссылкана правленные исходники Lua (Яндекс Диск)

Вот моя ссылка на ГитХаб

Учебник по LuaRu - в процессе перевода

При обсуждении не хотелось бы делить шкуру неубитого медведя и обсуждать второстепенные вещи типа конкретного перевода тех или иных операторов.

Для экспериментов хотелось бы получить минимально работающую версию, в нашем случае описание как
1. Где и как править исходники - сделано спасибо rst256
2. Как и чем скомпилировать исходники (под Windows) -
3. сделать тесты и проверить работоспособность - первоначально можно сделать мини тесты из русифицированных примеров из учебника
4. из исходников получить Exe шник и как его прикрутить к IDE  - минимально->  как настроить Notepad++ и сделать в нём подсветку синтаксиса

Отредактировано тхаб.рф (2018-03-30 18:29:51)

0

2

1. Я последний раз писал на Турбо С лет 20 назад, не подскажите ли и мне как и чем всё это правильно скомпилировать под Win7-64 ? попробовал собрать стандартным MSVC2017 неполучается
2. я по исходникам не понял, там добавлены русские синонимы или ЗАМЕНЕНЫ английские на русские ?

вот код

llex.c

lctype.h

Отредактировано тхаб.рф (2018-04-01 11:56:47)

0

3

Частично перевёл учебник по LuaRu - получилось интересно , особенно про объекты стало более понятно. Часть слов поменял на более логичные но в компиляторе пока оставил оригинальные от rst256. думаю оставить синонимы да/правда - для  true и нет/ложь для false

учебник по ЛуаРу

Отредактировано тхаб.рф (2018-04-01 11:16:02)

0

4

Всегда пожалуйста тхаб.рф, рад что смог вам помочь.
Вот вам еще пример того как можно добавить русские названия для базовых ф-й (см. файл lbaselib.c).

И насчет битовых операций у вас в учебнике устаревшая информация, в версии 5.3 добавлена полноценная их поддержка.

+1

5

тхаб.рф написал(а):

1. Я последний раз писал на Турбо С лет 20 назад, не подскажите ли и мне как и чем всё это правильно скомпилировать под Win7-64 ? попробовал собрать стандартным MSVC2017 неполучается

Собирать также как и оригинальную версию lua.
Самый оптимальный вариант использовать mingw:
1. Запустите "MinGW Shell"
2. Перейдите в каталог с исходниками (командой "cd")
3. И запустите сборку командой "make mingw"

тхаб.рф написал(а):

2. я по исходникам не понял, там добавлены русские синонимы или ЗАМЕНЕНЫ английские на русские ?

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

+1

6

rst256 написал(а):

Собирать также как и оригинальную версию lua.
Самый оптимальный вариант использовать mingw:
1. Запустите "MinGW Shell"
2. Перейдите в каталог с исходниками (командой "cd")
3. И запустите сборку командой "make mingw"

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

Спасибо!!

0

7

rst256 написал(а):

Собирать также как и оригинальную версию lua.
Самый оптимальный вариант использовать mingw:
1. Запустите "MinGW Shell"
2. Перейдите в каталог с исходниками (командой "cd")
3. И запустите сборку командой "make mingw"


Пишет : make не является командой или пакетным файлом :(

Решено
1. необходимо прописать в переменной PATH путь к mingw32-make  (установщик MinGW этого почему то не делает)
2. запускать на компиляцию из папки с исходниками lua строкой: mingw32-make mingw

Отредактировано тхаб.рф (2018-04-04 18:40:41)

0

8

Большое человеческое Спасибо rst256!!! Удалось скомпилировать luaRuи вроде работает !! правда с небольшими оговорками посмотреть можно на https://yadi.sk/d/b8tmsD993U6iai 
папка с rst256 - его синтаксис
папка с тхаб.рф - бетта версия от тхаб.рф -

перевод операторов luaRu

Отредактировано тхаб.рф (2018-04-04 20:24:38)

0

9

Вариант соответствия операторов от тхаб.рф
    "and", "break", "do", "else", "elseif",    "end", "false", "for", "function", "goto", "if",    "in", "local", "nil", "not", "or", "repeat",    "return", "then", "true", "until", "while",
    "и", "выход", "делать", "иначе", "иначе_если",    "конец", "ложь", "для", "функция", "перейти_к", "если",    "в", "локальная", "пусто", "не", "или", "повторить",   "вернутся", "тогда", "истина", "пока_не", "пока"

0

10

Первая программа на LuaRu

-- операторы тхаб.рф
функция спать(сек) -- в секундах
локальная время= os.clock
локальная нач_время = время()
пока время() - нач_время <= сек делать
                конец
конец

вывести = print -- русификация print

функция факториал(число) -- вычисление факториала
     если число == 0 тогда
       вернутся 1 -- надо вернуть или возрат
     иначе
       вернутся число * факториал(число-1)
     конец
   конец

   спать(2)
   вывести("please Nomber:")
   цифра = io.read("*number")        -- получение числа
   вывести(факториал(цифра))
     
   вывести('Пауза')
   спать(3)
   вывести('end')

0

11

самая серьёзная проблема  -
1.  так и не понял в какой кодировке набирать сообщения в print чтобы не было "гречки". кодировка постоянно сбивается. добиться русских символов не удалось
2. невозможно сделать русское имя файла скрипта

0

12

1. Есть идея попробовать сделать к логическим операторам 2 синонима например false - нет , ложь и к true - да и истина.
2. Возможно стоит логические операнды набирать заглавными буквами  или -> ИЛИ, не -> НЕ чтобы они были более заметны в логических выражениях

0

13

тхаб.рф написал(а):

самая серьёзная проблема  -
1.  так и не понял в какой кодировке набирать сообщения в print чтобы не было "гречки". кодировка постоянно сбивается. добиться русских символов не удалось
2. невозможно сделать русское имя файла скрипта

Я попробовал отредактировать прямо на хабе, в их редакторе, вроде удалось. У них utf-8 вроде как...

0

14

Сандро написал(а):

Я попробовал отредактировать прямо на хабе, в их редакторе, вроде удалось. У них utf-8 вроде как...

У тебя удалось всё это скомпилировать ?? У меня нет :( Промбдема в маке файле - при использовании твоего как и раньше пишет ошибку 10 - я посылал тете на почту, при использовании моего начинает компиляцию - ошибок уже сильно меньше , но всё равно не собирается :(

0

15

тут изображение вставить почему то не удалось скриншёт ушёл почтой.

0

16

вот дистрибутив рабочей альфа версии который собирается под Win7 minGW . там же есть тестовый файл на luaRu - который выполняется.
ты чем собираешь исходники ?
по поводу конкретного наименования ключевых слов я не думаю сейчас заморачиватся, Цель создать минимально рабочую версию, и отработать всю технологию по русификации
у текущего собираемого дистрибутива  ключевые слова такие - чисто для тестов и подсветки синтакиса

"and", "break", "do", "else", "elseif",    "end", "false", "for", "function", "goto", "if",    "in", "local", "nil", "not", "or", "repeat",    "return", "then", "true", "until", "while",

"и", "выход", "делать", "иначе", "иначе_если",    "конец", "ложь", "для", "функция", "перейти_к", "если",    "в", "локальная", "пусто", "не", "или", "повторить",   "вернуть", "тогда", "истина", "пока_не", "пока"

Отредактировано тхаб.рф (2018-04-08 13:14:53)

0

17

тхаб.рф написал(а):

вот дистрибутив рабочей альфа версии который собирается под Win7 minGW . там же есть тестовый файл на luaRu - который выполняется.

Карочи так:

Резюме по папке luaru-01-rst256
При написании файлов test.lua, scir.lua, scipt11.lua, llex.c, использовалась кодировка win-1251, хотя надо было utf-8.
Резюме по папке luaru-02-тхаб.рф, - кодировка win-1251
файл замечания.текст, test.lua, llex.c, -  кодировка win-1251
Резюме по папке LuaRu-Альфа версия-01
файл test.lua,замечания.текст, -  кодировка win-1251
файл test-Utf8.lua, langs.model.xml, langs.model-старая.xml - кодировка utf-8


Поскольку гитхаб работает на utf-8 и остальные исходники написаны в utf-8, то и наши желательно писать в той же кодировке.
Текстовик npp++ легко настраивается на эту кодировку, вот в нём и пишу всегда.
Компилит автоматом  в Visual Studio Code с помощью встроенной minGW64

0

18

Сандро написал(а):

Карочи так:

Поскольку гитхаб работает на utf-8 и остальные исходники написаны в utf-8, то и наши желательно писать в той же кодировке.
Текстовик npp++ легко настраивается на эту кодировку, вот в нём и пишу всегда.
Компилит автоматом  в Visual Studio Code с помощью встроенной minGW64

попробовал в  llex.c - колировку поменять с Win1251 на UTF-8 - скомпилировал - полученный файл lua.exe   не выполняет скрипт test.lua ни в кодировке Win ни в UTF-8
Единственная рабочая версия   LuaRu-Альфа версия-01  - которая выполняет скрипт в test.lua - в кодировке Win1251? если его конвертировать в UTF-8 скрипт не выполняется. т.е. проблема в кодировке.  В Lua5.1 по моему разработчики запретили не латинские символы для совместимости скриптов. возможно надо сравнить версии Lua 5.0-5.3 где там менялись настройки кодировки. Но это просто моё предположение. Я в интерпретаторах не разбираюсь :(.

0

19

При попытке  добавить исправленную lbaselib.c - у меня проект не собирается :( - есть предположения в чём причина ? может попробовать его набрать в Win1251 ?
В каком файле содержатся сообщения об ошибках ?

0

20

https://vk.com/selinux - опрос какой язык программирования русифицировать в первую очередь
1 Питон - 50%
2 C? C++ C # - 30%

0

21

в первую очередь
1 Питон - 50%
2 C? C++ C # - 30%

В Си, кажется, уже делал Юрий.
А ведь в 3 остальных можно компилировать из уже русифицированного AL-IV. Хотя и не со всеми библиотеками, но механизм для их перевода прост, открыт и документирован.
Только каждый будет делать по-своему, заново, несовместимо и т.п.

Отредактировано MihalNik (2018-04-12 23:37:30)

0

22

MihalNik написал(а):

В Си, кажется, уже делал Юрий.
А ведь в 3 остальных можно компилировать из уже русифицированного AL-IV. Хотя и не со всеми библиотеками, но механизм для их перевода прост, открыт и документирован.
Только каждый будет делать по-своему, заново, несовместимо и т.п.

Отредактировано MihalNik (Вчера 21:37:30)


Я не хочу своё, чтот новое, я хочу чтобы остался промышленный язык программирования который позволял использовать любую оригинальную библиотеку + была возможность использования русских синонимов с поддержкой подсветки синтаксиса, автодополнения и русскими сообщениями об ошибках. И всё.

Ссылка  AL-IVhttp://kolmck.ru/AL4/index_AL-IV_start_RU.htm

Отредактировано тхаб.рф (2018-04-13 21:24:23)

0

23

чтобы остался промышленный язык программирования который позволял использовать любую оригинальную библиотеку

А что там с этим не так?

0

24

тхаб.рф написал(а):

попробовал в  llex.c - колировку поменять с Win1251 на UTF-8 - скомпилировал - полученный файл lua.exe   не выполняет скрипт test.lua ни в кодировке Win ни в UTF-8
Единственная рабочая версия   LuaRu-Альфа версия-01  - которая выполняет скрипт в test.lua - в кодировке Win1251? если его конвертировать в UTF-8 скрипт не выполняется. т.е. проблема в кодировке.  В Lua5.1 по моему разработчики запретили не латинские символы для совместимости скриптов. возможно надо сравнить версии Lua 5.0-5.3 где там менялись настройки кодировки. Но это просто моё предположение. Я в интерпретаторах не разбираюсь .

В файле "lctype.h" есть макросы lislalpha и lislalnum, они определяют относится ли тот или иной символ к буквенным (lislalpha ) и цифро-буквенным (lislalnum) знакам.
Вот только обрабатывают они с каждым байтом строки отдельно, т.е. расчитаны на однобайтные кодировки. Если сумеете научить их отличать русские буквы в кодировке utf-8 ...

0


Вы здесь » Русскоязычное программирование » трансляторы » Русификация Lua 5.3.4 - LuaRu