[SVN] Re: Sync output from TextMate::Process.run ?

Luke Daley ld at ldaley.com
Sun Nov 15 10:26:23 UTC 2009


Where is the output of the tmCommand being sent?

Any chance you could send me a copy with instructions on how to execute?

On 15/11/2009, at 7:48 PM, Stray <dailystraying at googlemail.com> wrote:

> Thanks Luke,
>
> Multiline but mostly one line at a time - if I run it verbose then the
> first output is 2 lines and then there's about 60 lines that arrive
> one at a time. If I run it non-verbose then it's 2 lines in one go at
> the start, then a single line at the end.
>
>
> On 15 Nov 2009, at 08:51, Luke Daley wrote:
>
>> This is always trick because of the level of indirection.
>>
>> Is the output from your command multiline?
>>
>> On 15/11/2009, at 6:34 PM, Stray <dailystraying at googlemail.com>  
>> wrote:
>>
>>> Unfortunately yes... didn't make a difference. In the script only
>>> version, granularity =>  makes it add a letter at a time, but in the
>>> command it's just the same - no output from the git pull reaches the
>>> html pane until the process is complete.
>>>
>>> On 14 Nov 2009, at 23:01, Luke Daley wrote:
>>>
>>>> Have you tried passing :granularity => 1 to Process.run()?
>>>>
>>>> Check the docs in the file for what it means.
>>>>
>>>> On 13/11/2009, at 9:41 PM, Stray wrote:
>>>>
>>>>> I'm developing a bundle for RobotLegs AS3 projects, mostly using
>>>>> Ruby.
>>>>>
>>>>> I have a command, 'Create New RobotLegs Project', which sets up
>>>>> directories and files, pulling the required code libraries from
>>>>> github.
>>>>>
>>>>> When the script clones the git repository, the output is sync if I
>>>>> run
>>>>> a .rb script (using the Ruby Bundle's Run command in TextMate),  
>>>>> but
>>>>> when I paste that script direct into the tmCommand, the git output
>>>>> is
>>>>> suppressed until the end of the clone, when it all comes through  
>>>>> in
>>>>> one go. It all works as a command, but I don't get the feedback in
>>>>> real time.
>>>>>
>>>>> Relevant part of the code is:
>>>>>
>>>>>  args = ["clone", "-v", "git://github.com/robotlegs/robotlegs-
>>>>> framework.git
>>>>> ", "robotlegs/"]
>>>>>  TextMate::Process.run("git", args, :interactive_input => false)
>>>>> do |
>>>>> str|
>>>>>      STDOUT.puts str
>>>>>  end
>>>>>
>>>>> I have STDOUT.sync = true higher up in the script.
>>>>>
>>>>> I have also tried
>>>>>
>>>>>  STDOUT << str
>>>>>
>>>>> and
>>>>>
>>>>>  puts str
>>>>>
>>>>> They both work, but are also stalled until the end of the clone
>>>>> process.
>>>>>
>>>>> ---
>>>>>
>>>>> To be clear - when running the script normally, the 'STDOUT.puts
>>>>> str'
>>>>> line executes in real time, but when running the command all the
>>>>> output comes through in one block at the end.  The code in the
>>>>> command
>>>>> is identical to the code in the .rb script.  I am including the
>>>>> html_header and using <pre/> around this output.
>>>>>
>>>>> I'm aware that I could try TextMate::Executor.run as well, but I'd
>>>>> much rather keep the actual ruby code in the command itself where
>>>>> it's
>>>>> easier for the Bundle's users to tweak it to suit them.
>>>>>
>>>>> Does anyone have any ideas? I'm really out of them...
>>>>>
>>>>> _______________________________________________
>>>>> textmate-dev mailing list
>>>>> textmate-dev at lists.macromates.com
>>>>> http://lists.macromates.com/listinfo/textmate-dev
>>>>
>>>> _______________________________________________
>>>> textmate-dev mailing list
>>>> textmate-dev at lists.macromates.com
>>>> http://lists.macromates.com/listinfo/textmate-dev
>>>
>>> _______________________________________________
>>> textmate-dev mailing list
>>> textmate-dev at lists.macromates.com
>>> http://lists.macromates.com/listinfo/textmate-dev
>> _______________________________________________
>> textmate-dev mailing list
>> textmate-dev at lists.macromates.com
>> http://lists.macromates.com/listinfo/textmate-dev
>
> _______________________________________________
> textmate-dev mailing list
> textmate-dev at lists.macromates.com
> http://lists.macromates.com/listinfo/textmate-dev



More information about the textmate-dev mailing list