- Баллы
- 153
repeat, а что если попробовать записать всю кириллицу в массив и уже перекодировывать каждый отдельный элемент массива?
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
function print(data)
if not data then data = "\n" end
wfile:write(data.."\n")
end
function parse2b(s)
local z = string.gsub(s,"([\195\194])(.)",function(k,v)
if (k:byte() == 194 and v:byte() == 184) then
utf8 = "\209\145"
elseif (k:byte() == 195 and v:byte() >=128 and v:byte() <= 191) then
utf8 = k:byte()*256 + v:byte() + 0xD10
utf8 = string.format("%s%s",string.char(math.floor(utf8/256)),string.char(utf8-math.floor(utf8/256)*256))
else utf8 = k..v
end
return utf8
end
)
return z
end
function parse4b(s)
local z = string.gsub(s,"(\195[\144\145])\194(.)",function(k,v)
if (k:byte(2) == 145) then
utf8 = k:byte()*256 + v:byte() + 0xD40
utf8 = string.format("%s%s",string.char(math.floor(utf8/256)),string.char(utf8-math.floor(utf8/256)*256))
elseif (k:byte(2) == 144) then
utf8 = k:byte()*256 + v:byte() + 0xD00
utf8 = string.format("%s%s",string.char(math.floor(utf8/256)),string.char(utf8-math.floor(utf8/256)*256))
else utf8 = k..v
end
return utf8
end
)
return z
end
local fname_in, fname_out = ...
fname_in = "server.log"
if (fname_in == nil) then
io.write("USAGE:\n")
io.write("ruFixer.exe inputFile outputFile\n")
os.exit()
end
fname_out = fname_out or fname_in..".fix"
file = assert(io.open(fname_in, "r"))
wfile = assert(io.open(fname_out, "w+"))
t = file:read("*l")
repeat
line = parse4b(t)
line = parse2b(line)
print(line)
t = file:read("*l")
until t == nil
2011-10-14 19:20:09 [INFO] <Hiros[37m> Dave, shas napishu qwertyuiop[0m
2011-10-14 19:20:16 [INFO] [ruFixDebug]:йцукенгшщзхъ:
2011-10-14 19:20:16 [INFO] <Hiros[37m> йÑÑкенгÑÑзÑ
Ñ[0m
2011-10-14 19:20:22 [INFO] [ruFixDebug]:asdfghjkl;':
2011-10-14 19:20:22 [INFO] <Hiros[37m> asdfghjkl;'[0m
2011-10-14 19:20:26 [INFO] [ruFixDebug]:фывапролджэ:
2011-10-14 19:20:26 [INFO] <Hiros[37m> ÑÑвапÑолджÑ[0m
2011-10-14 19:20:27 [INFO] [31m[36mIIWOLFII[31m was killed by an angry [36mSpider[31m [0m
2011-10-14 19:20:27 [INFO] [HeroicDeath] IIWOLFII was killed by an angry Spider
2011-10-14 19:20:28 [INFO] Player Respawning
2011-10-14 19:20:31 [INFO] [ruFixDebug]:zxcvbnm,./:
2011-10-14 19:20:31 [INFO] <Hiros[37m> zxcvbnm,./[0m
2011-10-14 19:20:31 [INFO] Connection reset
2011-10-14 19:20:31 [INFO] IIWOLFII lost connection: disconnect.quitting
2011-10-14 19:20:32 [INFO] /31.23.104.246:2347 lost connection
2011-10-14 19:20:36 [INFO] [ruFixDebug]:ячсмитьбю.:
2011-10-14 19:20:36 [INFO] <Hiros[37m> ÑÑÑмиÑÑбÑ.[0m
2011-10-14 19:20:38 [INFO] [ruFixDebug]:îê õâàòèò:
2011-10-14 19:20:38 [INFO] <[36mChief DaveDee[37m> ок хватит[0m
http://rubukkit.org/threads/rufix-исправление-русского-чата-в-windows.1224/page-9#post-19809Какие параметра батника и версия плагина актуальна сейчас?
Пока отказался от ртулкита, будет достаточно рпосто руского чата в консоли стандартного батника с возможностью ввода команд
Теперь все замечательно, благодарю за оперативность.обновлённая версия в первом сообщении
У меня линукс на сервере, макось (unix-like система, кстати) на клиенте. Макось отправляет серверу юникод, как и линукс.так по идеи или точно?
З.Ы Надо найти кого-нибудь на linux чтобы тестировать плагины
приму в дар от тебя компьютер с настроенным линухом и миником для тестирования. тогда и точнотак по идеи или точно?
