mirror of https://gitlab.com/basile.b/dexed.git
close #207, add a consoleProgram option
This commit is contained in:
parent
e1cd3bddce
commit
d6420925f3
|
@ -709,7 +709,6 @@ var
|
|||
nme: string;
|
||||
i, j: integer;
|
||||
begin
|
||||
//
|
||||
for i := 0 to processInfo.simpleCommands.Count-1 do
|
||||
begin
|
||||
nme := fSymStringExpander.expand(processInfo.simpleCommands[i]);
|
||||
|
@ -723,6 +722,7 @@ begin
|
|||
prc.Options:= [poUsePipes, poStderrToOutPut];
|
||||
lst.Delete(0);
|
||||
prc.Parameters.Assign(lst);
|
||||
prc.XTermProgram:=consoleProgram;
|
||||
prc.Execute;
|
||||
lst.Clear;
|
||||
processOutputToStrings(prc, lst);
|
||||
|
@ -844,6 +844,7 @@ begin
|
|||
ChDir(fRunnerOldCwd);
|
||||
//
|
||||
fRunner := TCEProcess.Create(nil);
|
||||
fRunner.XTermProgram:=consoleProgram;
|
||||
currentConfiguration.runOptions.setProcess(fRunner);
|
||||
if runArgs.isNotEmpty then
|
||||
begin
|
||||
|
@ -872,7 +873,8 @@ begin
|
|||
SetCurrentDirUTF8(cwd);
|
||||
fRunner.CurrentDirectory := cwd;
|
||||
end;
|
||||
if poUsePipes in fRunner.Options then begin
|
||||
if poUsePipes in fRunner.Options then
|
||||
begin
|
||||
fRunner.OnReadData := @runProcOutput;
|
||||
fRunner.OnTerminate := @runProcOutput;
|
||||
getprocInputHandler.addProcess(fRunner);
|
||||
|
|
|
@ -320,8 +320,10 @@ type
|
|||
procedure leadingSpacesToTabs(var value: string; width: integer);
|
||||
|
||||
var
|
||||
// supplementatl directories to find background tools
|
||||
// additional directories to find background tools
|
||||
additionalPath: string;
|
||||
// terminal used under posix
|
||||
consoleProgram: string;
|
||||
|
||||
|
||||
implementation
|
||||
|
|
|
@ -28,10 +28,12 @@ type
|
|||
fDepCheck: TDubDependencyCheck;
|
||||
fOther: string;
|
||||
fCompiler: DCompiler;
|
||||
fShowConsole: boolean;
|
||||
procedure setLinkMode(value: TDubLinkMode);
|
||||
procedure setCompiler(value: DCompiler);
|
||||
function getCompiler: DCompiler;
|
||||
published
|
||||
property showConsole: boolean read fShowConsole write fShowConsole default false;
|
||||
property compiler: DCompiler read getCompiler write setCompiler;
|
||||
property parallel: boolean read fParallel write fParallel;
|
||||
property forceRebuild: boolean read fForceRebuild write fForceRebuild;
|
||||
|
@ -647,10 +649,18 @@ begin
|
|||
end;
|
||||
chDir(fFilename.extractFilePath);
|
||||
fDubProc.Executable := 'dub' + exeExt;
|
||||
fDubProc.Options := fDubProc.Options + [poStderrToOutPut, poUsePipes];
|
||||
if not dubBuildOptions.showConsole then
|
||||
begin
|
||||
fDubProc.Options := fDubProc.Options + [poStderrToOutPut, poUsePipes];
|
||||
fDubProc.OnReadData:= @dubProcOutput;
|
||||
fDubProc.ShowWindow := swoHIDE;
|
||||
end
|
||||
else
|
||||
begin
|
||||
fDubProc.Options := fDubProc.Options + [poWaitOnExit, poNewConsole];
|
||||
end;
|
||||
fDubProc.CurrentDirectory := fFilename.extractFilePath;
|
||||
fDubProc.ShowWindow := swoHIDE;
|
||||
fDubProc.OnReadData:= @dubProcOutput;
|
||||
fDubProc.XTermProgram:=consoleProgram;
|
||||
if not run then
|
||||
begin
|
||||
fDubProc.Parameters.Add('build');
|
||||
|
|
|
@ -1513,45 +1513,6 @@ object CEMainForm: TCEMainForm
|
|||
000089898AFF000000000000000000000000FFFFFF00FFFFFF00
|
||||
}
|
||||
end
|
||||
object MenuItem109: TMenuItem
|
||||
Action = actFileNewClip
|
||||
Bitmap.Data = {
|
||||
36040000424D3604000000000000360000002800000010000000100000000100
|
||||
2000000000000004000064000000640000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000002E00000033000000330000
|
||||
0033000000330000003300000033000000330000003300000030000000230000
|
||||
003300000033000000330000003300000033C28722ECB88222FFB57F20FFB57F
|
||||
1FFFB57F1FFFB57F1FFFB57F1FFFB57F20FFB68124FFB7852CF23B6088C04068
|
||||
93FF3F6893FF406893FF3E6795FF33649BFFC38419FFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB68124FF3F6A94FF568A
|
||||
B0FF4C82ABFF4D82ABFF4B82ACFF407EB3FFC08013FFFFFFFFFFE6D6AEFFE6D6
|
||||
AFFFE6D7B0FFE6D7B0FFE6D6AFFFE6D6AEFFFFFFFFFFB57F1FFF3F6A95FF6594
|
||||
BBFF4C83AEFF4E83AEFF4C83B0FF4180B8FFC07F12FFFFFFFFFFE5D5ACFFE6D6
|
||||
AFFFE6D6AFFFE6D6AFFFE6D6AFFFE5D5ACFFFFFFFFFFB47E1EFF3F6B95FF74A1
|
||||
C3FF4F86B1FF5187B2FF4F87B4FF4585BCFFBF7E11FFFFFFFFFFF8F2E5FFF8F2
|
||||
E6FFF8F3E7FFF8F3E7FFF8F2E6FFF8F2E5FFFFFFFFFFB47E1EFF3F6B97FF82AB
|
||||
CCFF5088B5FF528AB6FF518AB8FF4788C0FFBF7E10FFFFFFFFFFF3ECD9FFF3EC
|
||||
D9FFF3ECDAFFF3ECD9FFF3ECD9FFF3ECD8FFFFFFFFFFB47E1EFF3E6C97FF91B6
|
||||
D5FF528BBAFF558CBBFF548DBDFF4A8BC6FFBF7E10FFFFFFFFFFF1E8CFFFF1E8
|
||||
D0FFF1E8D0FFF0E7CFFFF0E6CDFFF0E7CDFFFFFFFFFFB47E1EFF3E6D97FF9FC1
|
||||
DDFF538EBDFF5791BFFF5691C1FF4C90CAFFBE7D10FFFFFFFFFFEDE3C7FFEDE3
|
||||
C8FFEDE3C7FFF6F0E1FFFFFFFFFFFFFFFFFFFFFFFFFFB47F1EFF3E6E99FFACCA
|
||||
E4FF5691C1FF5A93C3FF5994C5FF5093CFFFBE7D0FFFFFFFFFFFEBDDBCFFEBDD
|
||||
BDFFEBDCBBFFFFFFFFFFCFAB6DFFAC7005FFFFFFFFFFB58022FF3E6F9AFFB9D5
|
||||
EAFF5794C6FF5B97C8FF5B98CAFF5298D5FFBE7D0FFFFFFFFFFFE7D8B1FFE7D8
|
||||
B1FFE7D7B0FFFFFFFFFFAC7005FFFFFFFFFFECDCC4FFB78327AC3D709AFFC6DE
|
||||
F0FF5997CBFF5E9ACDFF5E9BCFFF569BD9FFC17F10FFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFECDCC4FFB58022A7B9872E003E729DFFD4E7
|
||||
F8FF5997CBFF7F95A7FF99938EFF99938EFF988E63FFBC7F14FFB97C12FFBA7C
|
||||
10FFBB7E14FFB87F1BFFB68020FFB78326ACB9872E00BB89320042759FFFADD2
|
||||
F4FF5997CBFFA7A19BFFD6CBC5FFD6CBC5FFD6CBC5FFA7A19BFF5997CBFFA5D4
|
||||
FFFF3173B0FFC7892100BE892C00BB893100BB8A3200BB8A3300477AA3B03E77
|
||||
A4FF3E77A4FF99938EFFE5DDD8FFE5DDD8FFE5DDD8FF99938EFF3E77A4FF3C77
|
||||
A6FF4179AAAF3879B700C48B2A00BD8A3100BB8A3300BB8A3300487BA500417A
|
||||
A700908B8700F4F2F00099938EFF99938EFF99938EFFF2F0EE00908B8700417A
|
||||
A700467BA7003D7AB200C68C2700BD8A3100BB8A3300BB8A3300
|
||||
}
|
||||
end
|
||||
object MenuItem24: TMenuItem
|
||||
Action = actFileNewRun
|
||||
Bitmap.Data = {
|
||||
|
@ -1591,6 +1552,45 @@ object CEMainForm: TCEMainForm
|
|||
07FFB47A07FFB47A08FFB57C0AFFB67F0FFFB88114FFBA851B23
|
||||
}
|
||||
end
|
||||
object MenuItem109: TMenuItem
|
||||
Action = actFileNewClip
|
||||
Bitmap.Data = {
|
||||
36040000424D3604000000000000360000002800000010000000100000000100
|
||||
2000000000000004000064000000640000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000002E00000033000000330000
|
||||
0033000000330000003300000033000000330000003300000030000000230000
|
||||
003300000033000000330000003300000033C28722ECB88222FFB57F20FFB57F
|
||||
1FFFB57F1FFFB57F1FFFB57F1FFFB57F20FFB68124FFB7852CF23B6088C04068
|
||||
93FF3F6893FF406893FF3E6795FF33649BFFC38419FFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB68124FF3F6A94FF568A
|
||||
B0FF4C82ABFF4D82ABFF4B82ACFF407EB3FFC08013FFFFFFFFFFE6D6AEFFE6D6
|
||||
AFFFE6D7B0FFE6D7B0FFE6D6AFFFE6D6AEFFFFFFFFFFB57F1FFF3F6A95FF6594
|
||||
BBFF4C83AEFF4E83AEFF4C83B0FF4180B8FFC07F12FFFFFFFFFFE5D5ACFFE6D6
|
||||
AFFFE6D6AFFFE6D6AFFFE6D6AFFFE5D5ACFFFFFFFFFFB47E1EFF3F6B95FF74A1
|
||||
C3FF4F86B1FF5187B2FF4F87B4FF4585BCFFBF7E11FFFFFFFFFFF8F2E5FFF8F2
|
||||
E6FFF8F3E7FFF8F3E7FFF8F2E6FFF8F2E5FFFFFFFFFFB47E1EFF3F6B97FF82AB
|
||||
CCFF5088B5FF528AB6FF518AB8FF4788C0FFBF7E10FFFFFFFFFFF3ECD9FFF3EC
|
||||
D9FFF3ECDAFFF3ECD9FFF3ECD9FFF3ECD8FFFFFFFFFFB47E1EFF3E6C97FF91B6
|
||||
D5FF528BBAFF558CBBFF548DBDFF4A8BC6FFBF7E10FFFFFFFFFFF1E8CFFFF1E8
|
||||
D0FFF1E8D0FFF0E7CFFFF0E6CDFFF0E7CDFFFFFFFFFFB47E1EFF3E6D97FF9FC1
|
||||
DDFF538EBDFF5791BFFF5691C1FF4C90CAFFBE7D10FFFFFFFFFFEDE3C7FFEDE3
|
||||
C8FFEDE3C7FFF6F0E1FFFFFFFFFFFFFFFFFFFFFFFFFFB47F1EFF3E6E99FFACCA
|
||||
E4FF5691C1FF5A93C3FF5994C5FF5093CFFFBE7D0FFFFFFFFFFFEBDDBCFFEBDD
|
||||
BDFFEBDCBBFFFFFFFFFFCFAB6DFFAC7005FFFFFFFFFFB58022FF3E6F9AFFB9D5
|
||||
EAFF5794C6FF5B97C8FF5B98CAFF5298D5FFBE7D0FFFFFFFFFFFE7D8B1FFE7D8
|
||||
B1FFE7D7B0FFFFFFFFFFAC7005FFFFFFFFFFECDCC4FFB78327AC3D709AFFC6DE
|
||||
F0FF5997CBFF5E9ACDFF5E9BCFFF569BD9FFC17F10FFFFFFFFFFFFFFFFFFFFFF
|
||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFECDCC4FFB58022A7B9872E003E729DFFD4E7
|
||||
F8FF5997CBFF7F95A7FF99938EFF99938EFF988E63FFBC7F14FFB97C12FFBA7C
|
||||
10FFBB7E14FFB87F1BFFB68020FFB78326ACB9872E00BB89320042759FFFADD2
|
||||
F4FF5997CBFFA7A19BFFD6CBC5FFD6CBC5FFD6CBC5FFA7A19BFF5997CBFFA5D4
|
||||
FFFF3173B0FFC7892100BE892C00BB893100BB8A3200BB8A3300477AA3B03E77
|
||||
A4FF3E77A4FF99938EFFE5DDD8FFE5DDD8FFE5DDD8FF99938EFF3E77A4FF3C77
|
||||
A6FF4179AAAF3879B700C48B2A00BD8A3100BB8A3300BB8A3300487BA500417A
|
||||
A700908B8700F4F2F00099938EFF99938EFF99938EFFF2F0EE00908B8700417A
|
||||
A700467BA7003D7AB200C68C2700BD8A3100BB8A3300BB8A3300
|
||||
}
|
||||
end
|
||||
object MenuItem97: TMenuItem
|
||||
Action = actFileNewDubScript
|
||||
Bitmap.Data = {
|
||||
|
|
|
@ -569,6 +569,8 @@ type
|
|||
fSplitterScrollSpeed: byte;
|
||||
fAutoCheckUpdates: boolean;
|
||||
fShowBuildDuration: boolean;
|
||||
function getConsoleProgram: string;
|
||||
procedure setConsoleProgram(const value: string);
|
||||
function getAdditionalPATH: string;
|
||||
procedure setAdditionalPATH(const value: string);
|
||||
function getNativeProjecCompiler: DCompiler;
|
||||
|
@ -577,6 +579,7 @@ type
|
|||
published
|
||||
property additionalPATH: string read getAdditionalPATH write setAdditionalPath;
|
||||
property autoCheckUpdates: boolean read fAutoCheckUpdates write fAutoCheckUpdates;
|
||||
property consoleProgram: string read getConsoleProgram write setConsoleProgram;
|
||||
property coverModuleTests: boolean read fCovModUt write fCovModUt;
|
||||
property floatingWidgetOnTop: boolean read fFloatingWidgetOnTop write fFloatingWidgetOnTop;
|
||||
property reloadLastDocuments: boolean read fReloadLastDocuments write fReloadLastDocuments;
|
||||
|
@ -815,6 +818,17 @@ begin
|
|||
exit(ce_common.additionalPath);
|
||||
end;
|
||||
|
||||
function TCEApplicationOptionsBase.getConsoleProgram: string;
|
||||
begin
|
||||
result := ce_common.consoleProgram;
|
||||
end;
|
||||
|
||||
procedure TCEApplicationOptionsBase.setConsoleProgram(const value: string);
|
||||
begin
|
||||
if exeFullName(value).fileExists then
|
||||
ce_common.consoleProgram:=value;
|
||||
end;
|
||||
|
||||
procedure TCEApplicationOptionsBase.setAdditionalPath(const value: string);
|
||||
var
|
||||
str: TStringList;
|
||||
|
@ -2792,6 +2806,7 @@ begin
|
|||
{$IFNDEF WINDOWS}
|
||||
fRunProc.Options := fRunProc.Options + [poNewConsole];
|
||||
{$ENDIF}
|
||||
fRunProc.XTermProgram:=consoleProgram;
|
||||
end;
|
||||
lst := TStringList.Create;
|
||||
try
|
||||
|
@ -3011,6 +3026,7 @@ begin
|
|||
fRunProc.ShowWindow := swoHIDE;
|
||||
fRunProc.OnReadData := @asyncprocOutput;
|
||||
fRunProc.OnTerminate:= @asyncprocTerminate;
|
||||
fRunProc.XTermProgram:=consoleProgram;
|
||||
getprocInputHandler.addProcess(fRunProc);
|
||||
end
|
||||
else
|
||||
|
|
|
@ -209,6 +209,7 @@ begin
|
|||
fProcess.Executable := exeFullName(fSymStringExpander.expand(fExecutable));
|
||||
fProcess.ShowWindow := fShowWin;
|
||||
fProcess.CurrentDirectory := fSymStringExpander.expand(fWorkingDir);
|
||||
fProcess.XTermProgram:=consoleProgram;
|
||||
for prm in fParameters do if not isStringDisabled(prm) then
|
||||
fProcess.Parameters.AddText(fSymStringExpander.expand(prm));
|
||||
if fQueryParams then
|
||||
|
|
Loading…
Reference in New Issue