Юникод в LuaFAR

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

Ошибка в unicode.utf-8.match ?

Post by Shmuel »

Latest post of the previous page:

John Doe wrote:
Wed 04 Sep, 2019 12:29
опасаюсь, что новая find при использовании в цикле для прохода по длинным строкам может быть драматически неэффективна
Не исключено. Но не оставлять же обе библиотеки в LuaFAR. По мере накопления информации картина будет яснее.
Неск. лет назад я тестировал некоторые ф-ции этой б-ки на производительность, и результаты были в её пользу по сравнению c Selene Unicode.

User avatar
John Doe
Бюрократ
Posts: 12836
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 290 times

Ошибка в unicode.utf-8.match ?

Post by John Doe »

Ещё следут помнить, что utf-8 версия sub значительно медленнее стандартной.
И вот беглый просмотр содержимого папки Macros показывает, что это распространённый паттерн - использование sub по значениям полученным из find.

Раньше я сочетал utf8.find и string.sub, теперь это видимо поломалось.
Last edited by John Doe on Wed 04 Sep, 2019 12:42, edited 1 time in total.

User avatar
John Doe
Бюрократ
Posts: 12836
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 290 times

Ошибка в unicode.utf-8.match ?

Post by John Doe »

Shmuel wrote:
Wed 04 Sep, 2019 12:37
Но не оставлять же обе библиотеки в LuaFAR.
Да, это был бы перебор.
Надо разобраться, возможна новая библиотека предоставляет какие-то свои средства для эффективной обработки описанных кейсов.

Shmuel
Posts: 6150
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 319 times

Ошибка в unicode.utf-8.match ?

Post by Shmuel »

John Doe wrote:
Wed 04 Sep, 2019 12:40
Раньше я сочетал utf-8.find и string.sub, теперь это видимо поломалось.
Сожалею о причинённых неудобствах, но всё же у меня ощущение, что достоинства перевешивают.
Возможно, вы приспособите gmatch/gsub для той задачи, о которой вы говорите. Предлагаю не спешить, а если действительно будет видно, что чего-то не хватает, будем принимать меры.

Shmuel
Posts: 6150
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 319 times

Ошибка в unicode.utf-8.match ?

Post by Shmuel »

Ещё одно преимущество перед прежней библиотекой: эта - живая, есть автор, с которым можно взаимодействовать. Однажды он оперативно сделал фикс в ответ на мой репорт.

User avatar
John Doe
Бюрократ
Posts: 12836
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 290 times

Ошибка в unicode.utf-8.match ?

Post by John Doe »

Shmuel wrote:
Wed 04 Sep, 2019 12:49
но всё же у меня ощущение, что достоинства перевешивают.
Да я тоже не против прогресса.
В данном случае неприятно то, что ошибки на глаз не слишком легко обнаружить, а всплывут они не сразу.

Насчёт живого автора полностью согласен.

buniak_a_h
Posts: 1926
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 124 times
Been thanked: 183 times
Contact:

Ошибка в unicode.utf-8.match ?

Post by buniak_a_h »

Shmuel wrote:
Wed 04 Sep, 2019 12:49
достоинства перевешивают
Согласен, но у меня просьба (на всякий случай): хотя _G.unicode.utf8 == _G.utf8, первый вариант не убирайте. Пусть будет...
Last edited by buniak_a_h on Wed 04 Sep, 2019 13:37, edited 1 time in total.

Shmuel
Posts: 6150
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 319 times

Ошибка в unicode.utf-8.match ?

Post by Shmuel »

buniak_a_h wrote:
Wed 04 Sep, 2019 13:36
хотя _G.unicode.utf8 == _G.utf8, первый вариант не убирайте. Пусть будет...
Убирать планов нет.

User avatar
John Doe
Бюрократ
Posts: 12836
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 290 times

Ошибка в unicode.utf-8.match ?

Post by John Doe »

Задал вопрос автору: https://github.com/starwing/luautf8/issues/25
(Проверьте не ошибся ли я в формулировках)

Shmuel
Posts: 6150
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 319 times

Ошибка в unicode.utf-8.match ?

Post by Shmuel »

John Doe wrote:
Wed 04 Sep, 2019 14:14
(Проверьте не ошибся ли я в формулировках)
Наверное следует отредактировать код, чтобы не было синтаксиса с двоеточием - автор же не знает, что у нас переопределено. То есть использовать utf8.sub и т.п.

User avatar
John Doe
Бюрократ
Posts: 12836
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 290 times

Юникод в LuaFAR

Post by John Doe »

Спасибо, исправил.
Кстати пример реальный, из Symlink.lua

Shmuel
Posts: 6150
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 319 times

Юникод в LuaFAR

Post by Shmuel »

Пример может и реальный, но не рабочий (не самодостаточный). Нет инициализации pos, не ясно что такое str2.

User avatar
zg
zero-gravity
Posts: 5842
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 153 times
Contact:

Юникод в LuaFAR

Post by zg »

John Doe wrote:
Wed 04 Sep, 2019 12:12
3. Другие изменения?
match тоже раньше байты принимал.

Post Reply

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