Страница 15 из 35

Добавлено: 13.01.2008 22:54:23
B4rr4cuda
Да, и ещё такую вещь спросить хотел:
Дц скомпилен под gtk (1), локаль системы - utf-8.
Все русские надписи отображаются коректно, кроме имен файлов в файл-панелях, где страшно глючит кодировка кирилицы и выводит бессмысленный набор символов, как будто попыталиcь юникодный набор в koi8-r сконвертить.
При этом если попытаться переименовать (Shift+F6), отображается нормально, также нормально отображается в диалогах копирования\перемещения\удаления.
Так вот, это баг дц или моей системы?

Добавлено: 14.01.2008 00:54:33
Alexx2000
Скриптовый язык это конечно хорошо, только не все сразу :)

У меня тоже локаль UTF-8, все отображается нормально. Попробуй другой шрифт выбрать.

Добавлено: 14.01.2008 02:14:10
B4rr4cuda
И ещё забавные вопросы возникли:
куда в лине будет устанавливаться DC?
Где будет храниться файл конфига?
Если UseIniInProgramDir будет 1, а прав на запись в этот каталог не будет, то писать в .config?
Почему default.bar хранится не в .config, а в основной папке?

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

Добавлено: 14.01.2008 02:34:39
B4rr4cuda
Спасибо, с отображением помог шрифт terminus - iso10646-1.

То что не все сразу - это понятно. :) Просто, реализовав скрипты можно будет облегчить себе жизнь. То же динамичекое меню скриптом формировать. Благо в луа и модуль для парсинга xml есть. Или еще круче, скрипт динамически формирует меню во время работы. Удобно. А в случае ошибки поправить и выложить скриптик, а не перекомпилить весь проект или искать ошибку в 5-ти модулях...
Просто потом будет поздно, придется через анал прикручивать. А сейчас самое оно. И базовый функционал уже реализован и рефакторинг со дня на день ожидается. Интерфейс точно переботать надо, очень уж диалоги неудобные....

Добавлено: 14.01.2008 13:47:16
B4rr4cuda
Ступил я немного с портом. В поставке fpc есть модули для работы с луа.
PS:Простите если излишне настойчив, но идея встроенного интерпретатора мне очень нравится.

Добавлено: 14.01.2008 17:43:46
Alexx2000
B4rr4cuda писал(а):В общем надо продумать систему расположения файлов, учитывая разграничения прав доступа никсов.

Устанавливаться будет к примеру в /usr/local/lib/doublecmd
В /usr/bin symlink на бинарник doublecmd
Конфиги будет хранить:
1) UseIniInProgramDir=1, в каталоге программы, будет что-то типа portable версия
2) UseIniInProgramDir=0, в /home/username/.config/doublecmd
Ступил я немного с портом. В поставке fpc есть модули для работы с луа.

Вот только как это использовать, что-то примеры найти не смог.
Как к например получить доступ к объектам программы :?:

Добавлено: 14.01.2008 19:29:37
B4rr4cuda
Устанавливаться будет к примеру в /usr/local/lib/doublecmd

Тогда уж лучше /usr/local/share/doublecmd

Вот только как это использовать, что-то примеры найти не смог. Как к например получить доступ к объектам программы

Если использовать Lua4Delphi, то так:

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

F = GetObject('Form1');
 X = CreateObject('TLabel', false, F);
 X.Name ='New_Label'
 X.Parent = F.Panel1;
 X.Left = 20;
 X.Top = 30;

Это надстройка над VCL для луа. Правда я ещё не пробовал её в лазаре. Скорее всего надо будет адаптировать. Чем собственно и займусь.

А вообще информации очень мало. Сейчас собираю документацию, сорцы, осваиваю луа и его использование из fpc.

Только что тестовый примерчик наконец-то заработал:

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

uses lua,lualib,lauxlib;
..........
function lua_print(L: Plua_State): Integer; cdecl;
 var
   i, n: Integer;
 begin
   n := lua_gettop(L);
   for i := 1 to n do
   begin
     if i > 1 then
       Write(#9);
     if lua_isstring(L, i) then
       Write(lua_tostring(L, i))
     else
       Write(Format('%s:%p', [lua_type(L, i), lua_topointer(L, i)]));
   end;
   WriteLn;
   Result := 0;
 end;

procedure TForm1.FormCreate(Sender: TObject);
var lulib:Plua_State;
begin
  lulib:=lauxlib.lua_open;
  lua_register(lulib, 'print', @lua_print);
  lua_dofile(lulib, PChar('hello.lua'));
  lua.lua_close(lulib);
end;


hello.lua

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

print("hello world, from Lua!\n")

Добавлено: 15.01.2008 07:06:40
Brainenjii
может не в тему, но тут что-то есть про лазарус и LUA...

Добавлено: 15.01.2008 12:17:49
Alexx2000
Очень даже в тему :)
Это как я понял как раз аналог Lua4Delphi.
В примерах есть обращение к компонентам формы:

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

-- Change the caption of the existing button
btn.Caption = 'Hello Alexx!'
-- Set its position
btn.Left = 20
btn.Top = 20
-- Add an event handler
function btn:OnClick ()
  ShowMessage('You clicked the button!')
end
-- Make it visible
btn.Visible = true

Добавлено: 15.01.2008 13:01:42
Attid
Устанавливаться будет к примеру в /usr/local/lib/doublecmd

Тогда уж лучше /usr/local/share/doublecmd


да вообщето поравну куда, если дойдет до мейнтеров то они сам разберутся, а себе ставить куда угодно можно, я предпочитаю подобный софт в /opt/doublecmd
а в /usr и подобное только дебы автомотом ставят.

Добавлено: 15.01.2008 15:08:29
Alexx2000
Attid писал(а): я предпочитаю подобный софт в /opt/doublecmd
а в /usr и подобное только дебы автомотом ставят.

Тоже неплохая идея, у меня в /opt сейчас Лазарус стоит.
Сейчас уже почти сделал создание rpm пакетов.

Добавлено: 15.01.2008 18:04:53
Святослав
Ребята! Посмотрите на: http://x-diesel.com
Там лежит уже готовый файлменеджер, который вы собираетесь писать. Бесплатный. Под Windows. Зачем есчьой раз изобретать калесо, а?

Добавлено: 15.01.2008 18:50:24
Alexx2000
Я о нем прекрасно знаю (и писали здесь уже о нем). :)
Еще если ввести в Google запрос "Бесплатный файловый менеджер" найдется еще десяток аналогичных программ. И так с большинством программ. Как говориться все уже написано до нас.
Да и он только под Windows.

Добавлено: 15.01.2008 18:55:26
m_guest
Во-первых, ключевое словосочетание "под Windows"..Если прочитаете внимательнее эту тему, то заметите, что ФМ планируется кросс-платформенный..

Во-вторых, зачем писать одно и тоже в двух темах? (здесь и в "предлагаю написать файловый менеджер")..?

Ну и последнее, Unreal Commader отнюдь не бесплатен..Вернее, бесплатная регистрация и получение ключей..Пока..

Читаем на форуме UC:
Да, верно, изначально проект задумывался как коммерческий (как минимум по той причине, что автору, то есть мне, надо чем-то питаться...). Для России и близлежащих стран программа либо останется бесплатной, либо цена будет символическая 0.3-0.5$ (30-50 центов). Для западных пользователей также цена предполагается весьма низкая.

Добавлено: 15.01.2008 18:56:58
Attid
Святослав писал(а):Ребята! Посмотрите на: http://x-diesel.com
Там лежит уже готовый файлменеджер, который вы собираетесь писать. Бесплатный. Под Windows. Зачем есчьой раз изобретать калесо, а?


ну даже если предположить что лениво топик с начало прочитать, а ума прочитать первое сообщения не хватает, то хотя бы 3 последние сообщения прочитать можно было ? и понять что ДС не только для венды . .