Double Commander
Модератор: Модераторы
Да, и ещё такую вещь спросить хотел:
Дц скомпилен под gtk (1), локаль системы - utf-8.
Все русские надписи отображаются коректно, кроме имен файлов в файл-панелях, где страшно глючит кодировка кирилицы и выводит бессмысленный набор символов, как будто попыталиcь юникодный набор в koi8-r сконвертить.
При этом если попытаться переименовать (Shift+F6), отображается нормально, также нормально отображается в диалогах копирования\перемещения\удаления.
Так вот, это баг дц или моей системы?
Дц скомпилен под gtk (1), локаль системы - utf-8.
Все русские надписи отображаются коректно, кроме имен файлов в файл-панелях, где страшно глючит кодировка кирилицы и выводит бессмысленный набор символов, как будто попыталиcь юникодный набор в koi8-r сконвертить.
При этом если попытаться переименовать (Shift+F6), отображается нормально, также нормально отображается в диалогах копирования\перемещения\удаления.
Так вот, это баг дц или моей системы?
И ещё забавные вопросы возникли:
куда в лине будет устанавливаться DC?
Где будет храниться файл конфига?
Если UseIniInProgramDir будет 1, а прав на запись в этот каталог не будет, то писать в .config?
Почему default.bar хранится не в .config, а в основной папке?
В общем надо продумать систему расположения файлов, учитывая разграничения прав доступа никсов.
куда в лине будет устанавливаться DC?
Где будет храниться файл конфига?
Если UseIniInProgramDir будет 1, а прав на запись в этот каталог не будет, то писать в .config?
Почему default.bar хранится не в .config, а в основной папке?
В общем надо продумать систему расположения файлов, учитывая разграничения прав доступа никсов.
Спасибо, с отображением помог шрифт terminus - iso10646-1.
То что не все сразу - это понятно.
Просто, реализовав скрипты можно будет облегчить себе жизнь. То же динамичекое меню скриптом формировать. Благо в луа и модуль для парсинга xml есть. Или еще круче, скрипт динамически формирует меню во время работы. Удобно. А в случае ошибки поправить и выложить скриптик, а не перекомпилить весь проект или искать ошибку в 5-ти модулях...
Просто потом будет поздно, придется через анал прикручивать. А сейчас самое оно. И базовый функционал уже реализован и рефакторинг со дня на день ожидается. Интерфейс точно переботать надо, очень уж диалоги неудобные....
То что не все сразу - это понятно.
Просто потом будет поздно, придется через анал прикручивать. А сейчас самое оно. И базовый функционал уже реализован и рефакторинг со дня на день ожидается. Интерфейс точно переботать надо, очень уж диалоги неудобные....
- Alexx2000
- постоялец
- Сообщения: 490
- Зарегистрирован: 25.10.2006 00:22:07
- Откуда: Мытищи
- Контактная информация:
B4rr4cuda писал(а):В общем надо продумать систему расположения файлов, учитывая разграничения прав доступа никсов.
Устанавливаться будет к примеру в /usr/local/lib/doublecmd
В /usr/bin symlink на бинарник doublecmd
Конфиги будет хранить:
1) UseIniInProgramDir=1, в каталоге программы, будет что-то типа portable версия
2) UseIniInProgramDir=0, в /home/username/.config/doublecmd
Ступил я немного с портом. В поставке fpc есть модули для работы с луа.
Вот только как это использовать, что-то примеры найти не смог.
Как к например получить доступ к объектам программы
Устанавливаться будет к примеру в /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")- Brainenjii
- энтузиаст
- Сообщения: 1351
- Зарегистрирован: 10.05.2007 00:04:46
может не в тему, но тут что-то есть про лазарус и LUA...
- Alexx2000
- постоялец
- Сообщения: 490
- Зарегистрирован: 25.10.2006 00:22:07
- Откуда: Мытищи
- Контактная информация:
Очень даже в тему
Это как я понял как раз аналог Lua4Delphi.
В примерах есть обращение к компонентам формы:
Это как я понял как раз аналог 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
- Attid
- долгожитель
- Сообщения: 2588
- Зарегистрирован: 27.10.2006 17:29:15
- Откуда: 44°32′23.63″N 41°2′25.2″E
- Контактная информация:
Устанавливаться будет к примеру в /usr/local/lib/doublecmd
Тогда уж лучше /usr/local/share/doublecmd
да вообщето поравну куда, если дойдет до мейнтеров то они сам разберутся, а себе ставить куда угодно можно, я предпочитаю подобный софт в /opt/doublecmd
а в /usr и подобное только дебы автомотом ставят.
Ребята! Посмотрите на: http://x-diesel.com
Там лежит уже готовый файлменеджер, который вы собираетесь писать. Бесплатный. Под Windows. Зачем есчьой раз изобретать калесо, а?
Там лежит уже готовый файлменеджер, который вы собираетесь писать. Бесплатный. Под Windows. Зачем есчьой раз изобретать калесо, а?
Во-первых, ключевое словосочетание "под Windows"..Если прочитаете внимательнее эту тему, то заметите, что ФМ планируется кросс-платформенный..
Во-вторых, зачем писать одно и тоже в двух темах? (здесь и в "предлагаю написать файловый менеджер")..?
Ну и последнее, Unreal Commader отнюдь не бесплатен..Вернее, бесплатная регистрация и получение ключей..Пока..
Читаем на форуме UC:
Во-вторых, зачем писать одно и тоже в двух темах? (здесь и в "предлагаю написать файловый менеджер")..?
Ну и последнее, Unreal Commader отнюдь не бесплатен..Вернее, бесплатная регистрация и получение ключей..Пока..
Читаем на форуме UC:
Да, верно, изначально проект задумывался как коммерческий (как минимум по той причине, что автору, то есть мне, надо чем-то питаться...). Для России и близлежащих стран программа либо останется бесплатной, либо цена будет символическая 0.3-0.5$ (30-50 центов). Для западных пользователей также цена предполагается весьма низкая.
- Attid
- долгожитель
- Сообщения: 2588
- Зарегистрирован: 27.10.2006 17:29:15
- Откуда: 44°32′23.63″N 41°2′25.2″E
- Контактная информация:
Святослав писал(а):Ребята! Посмотрите на: http://x-diesel.com
Там лежит уже готовый файлменеджер, который вы собираетесь писать. Бесплатный. Под Windows. Зачем есчьой раз изобретать калесо, а?
ну даже если предположить что лениво топик с начало прочитать, а ума прочитать первое сообщения не хватает, то хотя бы 3 последние сообщения прочитать можно было ? и понять что ДС не только для венды . .
