Юникод в LuaFAR

Здесь обсуждается всё, что касается макросов.
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

Юникод в LuaFAR

Post by Shmuel »

Latest post of the previous page:

John Doe wrote: Sat 16 Jan, 2021 10:59 Ещё одно изменение вызывает вопрос: неясно нужно ли это только для фара, или полезно и для библиотеки в целом не помешает:
Это изменение создаёт глобальную переменную utf8. Для Фара было решено её создавать.
Полезно ли это для библиотеки? На взгляд создателей Lua - не полезно и, начиная с версии 5.2, этого синтаксиса уже нет.
Если пользователю библиотеки нужно, он создаст глобальную переменную прямо в строке вызова require().
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Юникод в LuaFAR

Post by John Doe »

Shmuel wrote: Sat 16 Jan, 2021 19:36 Если пользователю библиотеки нужно, он создаст глобальную переменную прямо в строке вызова require().
Ну что ж, автор (не глядя?) уже применил и это наше изменение.
Подозреваю, что лучше бы создание переменной переместить в LuaFAR, но..
https://t.me/FarManager — Telegram чат
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Юникод в LuaFAR

Post by buniak_a_h »

John Doe wrote: Sat 16 Jan, 2021 19:32
buniak_a_h wrote: Sat 16 Jan, 2021 19:25 А в "парной" функции utf8.rep - нет.
А если utf8.rep = string.rep?
А я не понял. Это надо в _macroinit добавить (там, где я свой пресловутый «враппер» записал)? Причём для всех трёх функций? Это, наверно, правильно удобно будет. Или это был вопрос типа что будет если…?
User avatar
John Doe
Бюрократ
Posts: 13807
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 426 times
Contact:

Юникод в LuaFAR

Post by John Doe »

buniak_a_h wrote: Sat 16 Jan, 2021 19:59 Или это был вопрос типа что будет если…?
Да, это вопрос. С одной стороны не вижу почему бы этому не работать. А с другой - почему-то же Shmuel поступил не так:

Code: Select all

   - A few missing functions are copied to utf8 from unicode.utf8: dump, format, rep, utf8valid.
(т.е. сейчас эти функции скопированы из нашей прошлой библиотеки - Selene Unicode)
https://t.me/FarManager — Telegram чат
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Юникод в LuaFAR

Post by buniak_a_h »

John Doe wrote: Sat 16 Jan, 2021 20:38
buniak_a_h wrote: Sat 16 Jan, 2021 19:59 Или это был вопрос типа что будет если…?
Да, это вопрос. С одной стороны не вижу почему бы этому не работать. А с другой - почему-то же Shmuel поступил не так:

Code: Select all

   - A few missing functions are copied to utf8 from unicode.utf8: dump, format, rep, utf8valid.
(т.е. сейчас эти функции скопированы из нашей прошлой библиотеки - Selene Unicode)
1. Конкретно rep из string прекрасно работает. Можно в _macroinit добавить замену и не париться.
2. Я думал (точнее, я даже проверил):
lua:=_G.utf8 == _G. unicode.utf8.
Т.е. не "некоторые функции скопированы", а скопирована вся таблица. Думаю, приведённая цитата, возможно, устарела.
Last edited by buniak_a_h on Sat 16 Jan, 2021 21:14, edited 2 times in total.
Post Reply

Return to “Обсуждение макросов”