Есть небольшая шабашка для знатоков Lazarus

Модератор: Модераторы

Есть небольшая шабашка для знатоков Lazarus

Сообщение NTFS » 14.08.2010 02:35:32

Добрый день.

Заранее извиняюсь перед модераторами, если нарушаю правила, размещая коммерческое сообщение, но я не нашел специального раздела типа "заказы".

Итак, мне нужно выполнить одну работу за небольшое вознаграждение:
есть каталог с lazarus 0.9.28, там установлены RxFPC, FIBLaz, все остальное - стандарт. Мне нужно
а) внести изменения в исходники так, чтобы все работало на основе кодировки WIN1251, без UTF8.
б) по возможности, оформить это как патч или diff-файл, чтобы можно было применять для более новых версий.

Проверять работу под другие операционные системы - не нужно, достаточно, чтобы работало под Windows.

Сроки не ограничиваю, плачу тысячу авансом + тысячу по завершении работы. Расчет лучше через Яндекс-Деньги или Альфа-карту, но можно и другими способами, нужно договариваться.

Кто возьмется - пишите сюда или на developer@tereshenkov.ru

Заранее спасибо.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение скалогрыз » 14.08.2010 09:21:04

NTFS писал(а):есть каталог с lazarus 0.9.28, там установлены RxFPC, FIBLaz, все остальное - стандарт. Мне нужно
а) внести изменения в исходники так, чтобы все работало на основе кодировки WIN1251, без UTF8.

сохранение/выгрузка данных в базу данных или файл в win1251?
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение NTFS » 14.08.2010 12:57:04

Я акцентирую задачу: внести изменения в исходники так, чтобы ВСЕ работало на основе кодировки WIN1251, без UTF8.
Т.е., чтобы нигде не осталось UTF8.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение скалогрыз » 14.08.2010 16:09:51

NTFS писал(а):Я акцентирую задачу: внести изменения в исходники так, чтобы ВСЕ работало на основе кодировки WIN1251, без UTF8.
Т.е., чтобы нигде не осталось UTF8.


дай определение слову "нигде". что-то я сомневаюсь, что кто-нибудь захочет из LCL выскабливать UTF8 :)
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение NTFS » 14.08.2010 18:25:55

Нигде - значит нигде :-) Пустое множество.
Ну хорошо, упростим задачу. Нужно, чтобы программист, разрабатывающий прикладное приложение на Lazarus 0.9.28 под Windows, не думал о том, что есть какие-то кодировки, отличные от WIN1251. Никаких функций AnsiToUTF8, никаких Charset=UTF8. Никаких странных символов в файлах форм и исходных модулях. Ничего. Нигде.
Возможно, это и сложновато, но так я и не на халяву прошу сделать, а готов спонсировать эту работу, пусть и небольшой суммой.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение .wOvAN » 14.08.2010 18:54:40

Пусть сохраняет все исходные файлы проекта в кодировке WIN1251 и не парится. :) для вознаграждения мой wmr: R769669127628 :mrgreen:

т.е. код типа:

.FieldByName('MyField').AsString:='Привет';

Будет передаваться в БД в нужной кодировке.

а вот вывод в интерфейс не обойдешь :cry:
.wOvAN
постоялец
 
Сообщения: 118
Зарегистрирован: 16.04.2010 06:36:12

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение NTFS » 14.08.2010 19:03:30

Вы же понимаете, что это не поможет :-)

Например, мне нужно, чтобы следующий код работал без проблем:

Код: Выделить всё
  Form1.Memo1.Lines.LoadFromFile('any_file_in_win1251') ;



Я уже подымал эту тему, мне надавали кучу советов, долго ковырялся, но не получилось - потому прошу помощи профессионалов.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение .wOvAN » 14.08.2010 19:06:12

Код: Выделить всё
Form1.Memo1.Lines.LoadFromFile('any_file_in_win1251') ;


ну так lcl придется переписывать.

могу предложить TurboDelphiExplorer
.wOvAN
постоялец
 
Сообщения: 118
Зарегистрирован: 16.04.2010 06:36:12

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение NTFS » 14.08.2010 19:26:15

>могу предложить TurboDelphiExplorer
Спасибо, я очень активно его пользую, но Lazarus имеет два преимущества: исходники и развитие.
Собственно, я серьезные проекты пишу на Turbo, а утилиты сопровождения - на Lazarus.

>ну так lcl придется переписывать.
Так в том и задача.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение скалогрыз » 14.08.2010 19:44:39

NTFS писал(а):Вы же понимаете, что это не поможет :-)
Например, мне нужно, чтобы следующий код работал без проблем:

Код: Выделить всё
  Form1.Memo1.Lines.LoadFromFile('any_file_in_win1251') ;





Код: Выделить всё
unit
  CrossCLUtils;

uses
{$ifdef FPC}
  LConvEncoding
{$endif}

procedure StringsFromFile(st: TStrings; const FileName: AnsiString; const Enc : AnsiString='cp1251');
{$ifdef FPC}
var
  c : TStringList;
begin
  c:=TStringList.Create;
  try
    c.LoadFromFile(FileName);
    st.Text:=ConvertEncoding(c.Text, Enc, 'utf8');
  finally
    c.Free;
  end;
end;
{$else}
begin
  st.LoadFromFile(fileName);
end;
{$endif}


пример использования:
Код: Выделить всё
  StringsFromFile(Form1.Memo1.Lines, 'any_file_in_win1251');


так профессионалы и поступают ;)

Добавлено спустя 13 минут 44 секунды:
но на самом деле, если ты действительно хочешь геморроя, то сделай так.

Открой win32defines.inc (он находится в lcl\interfaces\win32\)

внеси в конец этого файла следующие строчки:
Код: Выделить всё
{$DEFINE DisableWindowsUnicodeSupport}
{$UNDEF  WindowsUnicodeSupport}

пересобери LCL.

Memo1.LoadFromFile('any_cp1251_file'); - работает без проблем...а вот насчёт остального, я гарантий не дам :)
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение NTFS » 14.08.2010 20:43:06

win32defines я менял. Это помогает при создании нового проекта - но как только я пытаюсь прочитать сохраненный в win1251 файл формы или исходника, приходит пушной зверь :-)

В общем, камрады, задача описана, цена назначена. Кто хочет подработать - действуйте. Не думаю, что для этого нужно перебирать весь код Lazarus - скорее, исправить пару-тройку ключевых модулей.

Да, и, похоже, у нас разные понятия о профессионализме :-) Я стараюсь всячески избегать лишнего кодирования - это рутина, и отвлекает от сбора бабла за проекты.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение NTFS » 17.08.2010 11:13:15

И? Никому не нужны две тысячи, или задача невыполнима?
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение .wOvAN » 17.08.2010 11:41:59

NTFS писал(а):И? Никому не нужны две тысячи, или задача невыполнима?

:lol: евро-денег?
.wOvAN
постоялец
 
Сообщения: 118
Зарегистрирован: 16.04.2010 06:36:12

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение NTFS » 17.08.2010 12:51:17

.wOvAN писал(а):
NTFS писал(а):И? Никому не нужны две тысячи, или задача невыполнима?

:lol: евро-денег?


Очень смешно :-) За 2000Е можно купить почти любой Delphi.
NTFS
постоялец
 
Сообщения: 388
Зарегистрирован: 05.11.2007 14:57:50
Откуда: Краснодар

Re: Есть небольшая шабашка для знатоков Lazarus

Сообщение Nik » 17.08.2010 13:21:05

Имхо, поставленная задача потребует очень больших затрат времени (фактические переписывание LCL), так что вряд ли за неё кто-то возьмётся за скоромное вознаграждение.
Аватара пользователя
Nik
энтузиаст
 
Сообщения: 573
Зарегистрирован: 04.02.2006 00:08:09
Откуда: Киров

След.

Вернуться в Помощь за вознаграждение

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6

Рейтинг@Mail.ru