Re: [Geany-Devel] spawning rewrite - RFC

2013-11-17 Thread Dimitar Zhekov
On Sat, 16 Nov 2013 15:12:03 -0800
Matthew Brush mbr...@codebrainz.ca wrote:

 It's an on-going effort to improve the situation with process spawning 
 on Win32 in Geany core for [...] build commands and such.

BTW, the patched build.c runs the build [non-execute] commands without
sh. I'm not sure if sh was used for variable / filename expansion[1],
to preserve the command line, or for some other reason. If you think
running via /bin/sh is better, I'll restore it, that's trivial.

[1] on win~1, the applications do filename expansion, and the
environment variables are not used that much.

-- 
E-gards: Jimmy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] spawning rewrite - RFC

2013-11-16 Thread Steven Blatnick
I'm not familiar with what this is about?  I'm away from my computer to look at 
the code.  Is this a plugin to run/spawn external programs and capture output?

If so, you may want to check out my external-tools plugin:

https://github.com/sblatnick/geany-plugins/tree/external-tools/external-tools/src
 

Thanks,

Steve

___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] spawning rewrite - RFC

2013-11-16 Thread Matthew Brush

On 13-11-16 02:20 PM, Steven Blatnick wrote:

I'm not familiar with what this is about?  I'm away from my computer to look at 
the code.  Is this a plugin to run/spawn external programs and capture output?

If so, you may want to check out my external-tools plugin:

https://github.com/sblatnick/geany-plugins/tree/external-tools/external-tools/src



It's an on-going effort to improve the situation with process spawning 
on Win32 in Geany core for stuff like Send Selection To and running 
build commands and such.


Cheers,
Matthew Brush

___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] spawning rewrite - RFC

2013-11-05 Thread Dimitar Zhekov
On Mon, 04 Nov 2013 21:33:36 +0100
Thomas Martitz thomas.mart...@student.htw-berlin.de wrote:

 Am 04.11.2013 19:04, schrieb Dimitar Zhekov:
  On Mon, 4 Nov 2013 09:44:45 +1100
  Lex Trotman ele...@gmail.com wrote:
 
  I propose to always create the win~1 programs with a minimized,
  non-focused window. [...]
  Though not a windows user, that sounds sensible to me, but will it work
  with execute keeping the console open until enter is pressed?
  No. Imagine if you need to close a minimized console for each tool
  (grep, gcc, ...) Geany launches. :)
 
 Could you have some wrapper batch script like on Linux?

Yes, if you specify an interpreter .exe before the script, such as
cmd /c my_gcc -Wall -c %f (win~1 CreatePropcess() starts binary
executables only, and the .exe suffix is optional).

-- 
E-gards: Jimmy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] spawning rewrite - RFC

2013-11-04 Thread Dimitar Zhekov
On Mon, 4 Nov 2013 09:44:45 +1100
Lex Trotman ele...@gmail.com wrote:

  I propose to always create the win~1 programs with a minimized,
  non-focused window. For console programs, the uncaptured output will
  go to the console, and will be lost when the console is auto closed
  by win~1, but that's better than nothing. Moreover, if a console
  program crashes, the console will remain on screen until you confirm
  the win~1 crash dialog.
 
 Though not a windows user, that sounds sensible to me, but will it work
 with execute keeping the console open until enter is pressed?

No. Imagine if you need to close a minimized console for each tool
(grep, gcc, ...) Geany launches. :)

So far, I don't plan to use the rewritten spawning for the build
Execute commands, as they may contain  or  redirection.

It seems that win~1 redirection is either all or none, so if you
capture stdout, there will be no stderr in the console. However, our
redirections are std{out,err}, std{in,out,err} or none (some calls to
utils_spawn_sync).

-- 
E-gards: Jimmy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


[Geany-Devel] spawning rewrite - RFC

2013-11-04 Thread Dimitar Zhekov
Hi again,

Win~1 supports some weird command line syntaxises:

c:\some path\program.exe - without closing quote

c:\some path\program.exefoo bar qux - runs program.exe with:

argv[0] = c:\some path\program.exefoo   (or something similar)
argv[1] = bar
argv[1] = qux

I'm going to disallow the first syntax to be able to join a command
and an argument vector, and the second syntax because it's not clear
whether all CRTL-s will handle it like msvcrt (the splitting is done
by the CRTL, not Windows). The supported variants will be:

c:\some path\program.exe
c:\some path\program.exe foo bar qux

as expected by any sane person. For the arguments, the normal win~1
quoting/escaping rules will apply:

foo bar is a single argument
foo \bar is a single argument containing a 
foo \\\bar is a single argument containing \ etc.

http://msdn.microsoft.com/en-us/library/windows/desktop/bb776391.aspx

-- 
E-gards: Jimmy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel