Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 14 15 16 17 18 19 20 21 [22] 23   вперед  Ctrl
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 3753
Док
От llvm пилится новый отладчик LLDB, и то, только под МАКи

Бранч с llvm тоже уже пилится. Приколько будет, если допилят раньше чем к дельфийскому бэкенду оптимизацию сделают.
13 мар 19, 16:43    [21831527]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 3753
Kazantsev Alexey
Бранч с llvm тоже уже пилится

Вот, если интересно.
13 мар 19, 17:00    [21831538]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Arioch
Member

Откуда:
Сообщений: 10967
Kazantsev Alexey
Arioch
или всё дело в LLVM/ARC ?

Ты в курсе, что речь о FPC?


Забыл. Тогда странно.

Видимо либо в FPC либо в Linux синхронизация межпоточная сделана мeдленнеe, чем в Delphi/Win32
13 мар 19, 18:02    [21831635]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25779
Лазарь из последних транковых, дебаг.

Код:
+
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
    Classes, SysUtils, Forms, Controls, Graphics, Dialogs, wcthread;

type

    { TForm1 }

    TForm1 = class(TForm)
        Task1: TTask;
        WCThread1: TWCThread;
        procedure FormCreate(Sender: TObject);
        procedure Task1Execute(const Sender: TTask; const Msg: Word; var Param: Variant);
        procedure TaskMemExecute(const Sender: TTask; const Msg: Word; var Param: Variant);
    private

    public

    end;

var
    Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
begin
    Task1.Start;
end;

procedure TForm1.Task1Execute(const Sender: TTask; const Msg: Word; var Param: Variant);
var i: integer;
    threads: array [0..199] of TWCThread;
    thread: TWCThread;
    task: TTask;
begin
    for i := Low(threads) to High(threads) do begin
        thread := TWCThread.Create(Sender.Parent);
        task := TTask.Create(thread);
        task.OnExecute := @TaskMemExecute;
        task.Start;
        threads[i] := thread;
    end;
end;

procedure TForm1.TaskMemExecute(const Sender: TTask; const Msg: Word; var Param: Variant);
var p: Pointer;
begin
    while not Sender.Terminated do begin
        p := GetMemory(1024*10);
        Sender.WaitMs(10);
        Freemem(p);
        Sender.WaitMs(10);
    end;
end;

end.

Результат:

К сообщению приложен файл. Размер - 12Kb
14 мар 19, 11:54    [21832283]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
DmSer
Member

Откуда: Пенза
Сообщений: 871
Оперативно они!
:)
14 мар 19, 13:01    [21832414]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
Вышли багофиксы к последнему мажорному релизу
http://wiki.freepascal.org/Lazarus_2.0_fixes_branch#Fixes_for_2.0.2_.28Merged.29

Работа над ошибками продолжается :)
16 апр 19, 11:58    [21863482]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
Кому интересно: чел портировал модули ExprDraw и ExprMake (для отрисовки на канвасе математических формул) Антона Григорьева на Лазарь под именами соответственно LazExprDraw и LazExprMake. Для корректного их отображения требуется шрифт XITS. Подробности здесь.

К сообщению приложен файл. Размер - 30Kb
20 апр 19, 21:31    [21867925]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
asutp2
Member

Откуда: Тюмень
Сообщений: 540
Вот что мне нравится в лазарус, так это что люди реально работают над качеством и расширением функционала. В отличие от Эмбы.
20 апр 19, 23:21    [21867964]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Gator
Member

Откуда: Москва
Сообщений: 14934
asutp2,

ты будешь удивлён, но они тоже работают
21 апр 19, 00:28    [21868000]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
asutp2
Member

Откуда: Тюмень
Сообщений: 540
Gator
asutp2,

ты будешь удивлён, но они тоже работают
Эмба? люди там дааа, работают, жаль только у них руки из ж*пы растут.
Просто наболело :-)
21 апр 19, 01:17    [21868011]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
rgreat
Member

Откуда:
Сообщений: 5243
Кол-во юзеров у эмбы и лазаря говорит само за себя.

P.S. Лазарь это конечно хорошо, но эмба лучше.
21 апр 19, 01:36    [21868024]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 3753
У FPC багтрекер изменился... радикальненько так.
21 апр 19, 02:00    [21868036]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
Kazantsev Alexey
У FPC багтрекер изменился... радикальненько так.

То-то народ завалил рассылку письменами :)
21 апр 19, 13:29    [21868164]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
Кстати, юзер wp выложил исходники ридера рассылки fpc/lazarus

https://svn.code.sf.net/p/wp-laz/code/Lazarus MailingList Reader/trunk

Из доп.компонентов требуется synapse и TurboPower Abbrevia (все есть в OPM, VTV ставить отдельно не надо, работает встроенный LazVTV), под винду требуется подложить рядом с экзешником libeay32.dll и ssleay32.dll (лежат в корне установленного Лазаря)

К сообщению приложен файл. Размер - 101Kb
21 апр 19, 13:40    [21868172]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
Некто Akira1364 с основного лазарусовского форума допилил патч компилятора, который позволяет (если я правильно понял из 7-страничного обсуждения) писать в редакторе кода мультилайн строки без необходимости "склеивать" их при помощи "+" и не "экранировать" в коде апостроф (') строки другим апострофом. Для этого строка обрамляется с обеих сторон обратным апострофом (backtick `) - тот, который на клавише Ё под тильдой.

Режим по умолчанию отключен, включается директивой компилятора
{$modeswitch MultiLineStrings} 

+ пример

program Example;
 
// You must set the below modeswitch to use the feature,
// and will get an "illegal char" error at the opening
// backtick of the first multi-line string encountered if you don't.
// To be clear: multi-line strings are exclusively denoted with backticks,
// not single quotes.
 
{$modeswitch MultiLineStrings}
 
{$MultiLineStringTrimLeft 1}
 
// There's two leading spaces on each line
// of the multi-line string below. One will
// be removed from each line, based on what we
// just set for the trim directive.
 
const A = `
  A
  B
  C
  D
`;

begin
  Write(A);
end.

выведет
 A
 B
 C
 D

Поддерживается сохранение перевода строки в переменной/константе. Можно указать компилятору, как интерпретировать конец строки при помощи переключателя
{$MultiLineStringLineEnding Platform}

символыOS
CRMac OS до v.9
CRLFWindows
LFUNIX
PLATFORMкак в текущей ОС (по умолчанию)
SOURCEкак указано в коде

+ пример
StrConst = 'Foo' + sLineBreak + 'Bar';

эквивалентно
{$MultiLineStringLineEnding Platform}
StrConst = `Foo
            Bar`;

Также можно указать, сколько начальных пробелов новой строки должно обрезаться (от 0 до 65535) при помощи директивы
{$MultiLineStringTrimLeft Auto}

значениепояснение
0без обрезки
Allобрезаются все начальные пробелы
Auto позиции столбца с начальным backtick (по умолчанию)

+ пояснение
ALL - это просто более удобный для пользователя способ передачи 
максимально возможного значения, то есть он просто гарантирует, 
что буквально все начальные пробелы урезаются из каждой строки.

AUTO - основан на позиции столбца открывающей backtick текущей 
многострочной строки в исходном файле. Режим для тех, кто не хочет 
беспокоиться об отступах.
+ пример

program tmultilinestring25;
 
{$modeswitch MultiLineStrings}
{$MultiLineStringTrimLeft Auto}
 
// vvv interpreted the same as if {$MultiLineStringTrimLeft 10} was set
 
const
  Str1 = `SELECT o.*, C.Company
          from Orders O
          join Customer C
            on o.CustNo=C.ID
          where
            O.saledate=DATE '2001.03.20'`;
 
// vvv interpreted the same as if {$MultiLineStringTrimLeft 5} was set
 
const
  Str2 =
    `SELECT o.*, C.Company
     from Orders O
     join Customer C
       on o.CustNo=C.ID
     where
       O.saledate=DATE '2001.03.20'`;
 
begin
  WriteLn(Str1);
  WriteLn(Str2);
end.


результат
SELECT o.*, C.Company
from Orders O
join Customer C
  on o.CustNo=C.ID
where
  O.saledate=DATE '2001.03.20'

SELECT o.*, C.Company
from Orders O
join Customer C
  on o.CustNo=C.ID
where
  O.saledate=DATE '2001.03.20'


Патчик применим для fpc v.3.2.0 и транков. Скачать можно здесь.

зы. сам пока не пробовал, 3-й день до машины добраться не могу :(
19 июл 19, 10:40    [21930023]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Василий 2
Member

Откуда:
Сообщений: 703
Учитывая, что задавать многострочные константы в исходнике не самая лучшая идея, не особо полезно. Тем более что есть куча всяких помогашек, которые позволят оформить кусок текста в код.
19 июл 19, 14:21    [21930265]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
Василий 2
не особо полезно. Тем более что есть куча всяких помогашек

В той ветке, ссылку на которую я привел выше, тоже был народ, категорично возражавший против этой фичи, вплоть до полного ухода с Лазаря на Дельфи. По мне, так пусть будет. По умолчанию она все равно выключена.

Что касается "помогашек", на Лазаре я пока не видел ни одной сторонней. Так что, имхо, будет не лишней.
19 июл 19, 14:29    [21930272]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25779
Док
Что касается "помогашек"

В идее, КМК, сделано удобнее и проще: начал строку, а при нажатии ввода строка автоматом форматируется (закрывается, +, открывается).
19 июл 19, 15:15    [21930335]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
wadman,

основной довод, который проводит автор патча - не надо ломать глаза, спотыкаясь об "+" и алиасы перевода строки. Пример со sql-запросами приведен выше
19 июл 19, 15:32    [21930374]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25779
Док
не надо ломать глаза

Мои глаза как раз об эти строки и ломаются. Картинка с другого сайта.
Что настройка имеет право на жизнь, не спорю.
19 июл 19, 15:44    [21930395]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
wadman
Мои глаза как раз об эти строки и ломаются. Картинка с другого сайта.

Ретроград!

Честно говоря, меня тоже пока такой синтаксис смущает.
19 июл 19, 16:16    [21930448]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 3753
Док
основной довод, который проводит автор патча - не надо ломать глаза, спотыкаясь об "+" и алиасы перевода строки.

Зато для того чтобы понять что именно сохранится в константе нужно прошерстить файл на эти дополнительные директивы... Надеюсь эта дрянь в компилятор не попадёт.
19 июл 19, 16:25    [21930465]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Василий 2
Member

Откуда:
Сообщений: 703
Док
Что касается "помогашек", на Лазаре я пока не видел ни одной сторонней. Так что, имхо, будет не лишней.

Ну вот например Edit > Multipaste

Кстати, как починить докинг форм в дизайнере? Обновился до текущего транка и полезла ошибка сборки пакета sparta. Ошибку прогуглил, пакет chmhelp удалял, удалял также и ссылки на него из пакетов спарты - пакет ставится, но при попытке открыть форму в дизайнере показывает просто пустую панель без контролов. При этом новый проект контролы отображает.

К сообщению приложен файл. Размер - 86Kb
19 июл 19, 17:25    [21930553]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
Kazantsev Alexey
Надеюсь эта дрянь в компилятор не попадёт.

скорее всего - это дело ближайшего будущего. Судя по всему, эта тема давно мусолится в почтовых рассылках
19 июл 19, 18:53    [21930661]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6353
Василий 2
Кстати, как починить докинг форм в дизайнере? Обновился до текущего транка и полезла ошибка сборки пакета sparta.

там пока все печально, насколько я в курсе.

В последние 7-8 мес столько изменений в коде лазаря и компилятора, что 15% компонентов (обычно у авторов, которые не заморачиваются их поддержкой) просто не ставятся. Печаль.
19 июл 19, 18:58    [21930667]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 14 15 16 17 18 19 20 21 [22] 23   вперед  Ctrl
Все форумы / Delphi Ответить