Skip to content

Commit 1db586b

Browse files
committed
bk/2024-09-16-1652
1 parent f8fd7f5 commit 1db586b

File tree

3 files changed

+34
-6
lines changed

3 files changed

+34
-6
lines changed

Src/CodeCompletion/DelphiAIDev.CodeCompletion.KeyTab.pas

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,9 @@ procedure TDelphiAIDevCodeCompletionKeyTab.Process(const AContext: IOTAKeyContex
4545
for i := 0 to Pred(FVars.Contents.Count) do
4646
LText := LText + FVars.Contents[i].Trim + sLineBreak;
4747

48-
AContext.EditBuffer.EditPosition.Delete(FVars.Contents.Count);
48+
if FVars.Contents.Count > 1 then
49+
AContext.EditBuffer.EditPosition.Delete(Pred(FVars.Contents.Count));
50+
4951
AContext.EditBuffer.EditPosition.InsertText(LText.Trim);
5052
//Context.EditBuffer.EditPosition.Move(TDelphiAIDevCodeCompletionVars.GetInstance.LineEnd, 20);
5153

Src/CodeCompletion/DelphiAIDev.CodeCompletion.Search.pas

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ procedure TDelphiAIDevCodeCompletionSearch.Process(const AContext: IOTAKeyContex
6262
var
6363
LRow: Integer;
6464
LColumn: Integer;
65-
LText: string;
65+
LBlankTextLines: string;
6666
i: Integer;
6767
LIOTAEditPosition: IOTAEditPosition;
6868
begin
@@ -101,11 +101,11 @@ procedure TDelphiAIDevCodeCompletionSearch.Process(const AContext: IOTAKeyContex
101101
FVars.LineIni := LRow;
102102
FVars.LineEnd := FVars.LineIni + FVars.Contents.Count;
103103

104-
LText := '';
105-
for i := 0 to Pred(FVars.Contents.Count) do
106-
LText := LText + sLineBreak;
104+
LBlankTextLines := '';
105+
for i := 1 to Pred(FVars.Contents.Count) do
106+
LBlankTextLines := LBlankTextLines + sLineBreak;
107107

108-
LIOTAEditPosition.InsertText(LText); //.TrimRight + sLineBreak);
108+
LIOTAEditPosition.InsertText(LBlankTextLines);
109109
LIOTAEditPosition.Move(FVars.LineIni, LColumn);
110110
finally
111111
Screen.Cursor := crDefault;

Src/Utils/DelphiAIDev.Utils.pas

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -384,6 +384,10 @@ class function TUtils.CodeIdMarkBeginCode(const AValue: string): Boolean;
384384
end;
385385

386386
class function TUtils.ConfReturnAI(const AValue: string): string;
387+
var
388+
LStrings: TStrings;
389+
LStrLine: string;
390+
i: Integer;
387391
begin
388392
Result := AValue.Trim
389393
.Replace(TConsts.MARK_BEGIN_DELPHI, '', [rfReplaceAll, rfIgnoreCase])
@@ -392,6 +396,28 @@ class function TUtils.ConfReturnAI(const AValue: string): string;
392396
.Replace(TConsts.MARK_BEGIN_SQL, '', [rfReplaceAll, rfIgnoreCase])
393397
.Replace(TConsts.MARK_BEGIN_SQL2, '', [rfReplaceAll, rfIgnoreCase])
394398
.Replace(TConsts.MARK_END, '', [rfReplaceAll, rfIgnoreCase]);
399+
400+
LStrings := TStringList.Create;
401+
try
402+
LStrings.Text := Result;
403+
404+
Result := '';
405+
for i := 0 to Pred(LStrings.Count) do
406+
begin
407+
LStrLine := LStrings[i];
408+
if (i = 0) and ((LStrLine.Trim.IsEmpty)or(LStrLine = sLineBreak)) then
409+
Continue;
410+
411+
//if (i = Pred(LStrings.Count)) and ((LStrLine.Trim.IsEmpty) or (LStrLine = sLineBreak)) then
412+
// Continue;
413+
414+
Result := Result + LStrLine + sLineBreak;
415+
end;
416+
417+
Result := Result.TrimRight;
418+
finally
419+
LStrings.Free;
420+
end;
395421
end;
396422

397423
class function TUtils.ProcessTextForEditor(const AText: string): string;

0 commit comments

Comments
 (0)