From: Richard Quadling on
Hi.

As previously mentioned, there is a tool for Windows XP+ called
ANSICON [1] which can be loaded via the registry or manually and
provides support for ANSI coloured output at the console.

Whilst editing the registry is not something many people actually like
doing, it can be done quite easily using the REG command from the
Windows Resource Toolkit.

REG ADD "HKLM\Software\Microsoft\Command Processor" /v AutoRun /t
REG_SZ /d "C:\Utils\ANSICon.exe -p"



Another useful feature is that ANSICON maintains an environment
variable which holds the current screensize ...

ANSICON=200x9999 (200x100)

200x9999 is the window size
200x100 is the current visible portion.

So, for text-tabled output, you can tailor the size to fit. Useful for
interactive console apps.

Regards,

Richard.


[1] http://adoxa.110mb.com/ansicon/index.html
--
-----
Richard Quadling
"Standing on the shoulders of some very clever giants!"
EE : http://www.experts-exchange.com/M_248814.html
Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
ZOPA : http://uk.zopa.com/member/RQuadling
From: Hannes Magnusson on
On Mon, Sep 21, 2009 at 12:59, Richard Quadling
<rquadling(a)googlemail.com> wrote:
> doing, it can be done quite easily using the REG command from the
> Windows Resource Toolkit.
>
> REG ADD "HKLM\Software\Microsoft\Command Processor" /v AutoRun /t
> REG_SZ /d "C:\Utils\ANSICon.exe -p"

Right, but that has to be done when installing the application, not
every time phd.bat is executed.
And we would also have to detect if the system supports it rather then
blindly polluting the registry.

Plus, afaik, the PEAR installer doesn't support doing such things.

-Hannes
From: Richard Quadling on
2009/9/21 Hannes Magnusson <hannes.magnusson(a)gmail.com>:
> On Mon, Sep 21, 2009 at 12:59, Richard Quadling
> <rquadling(a)googlemail.com> wrote:
>> doing, it can be done quite easily using the REG command from the
>> Windows Resource Toolkit.
>>
>> REG ADD "HKLM\Software\Microsoft\Command Processor" /v AutoRun /t
>> REG_SZ /d "C:\Utils\ANSICon.exe -p"
>
> Right, but that has to be done when installing the application, not
> every time phd.bat is executed.

Agreed. And the ANSICON instructions could easily be amended to show this.


> And we would also have to detect if the system supports it rather then
> blindly polluting the registry.

"blindly polluting the registry" ?

From cmd /? ...

"If /D was NOT specified on the command line, then when CMD.EXE starts, it
looks for the following REG_SZ/REG_EXPAND_SZ registry variables, and if
either or both are present, they are executed first.

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun

and/or

HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun"


This is "blindly polluting", but a completely standard and supported
facility, albeit an obscure one.

As for detection, once ANSICON is loaded, the ANSICON environment variable.

But maybe ANSICon needs a small installer which has the option of
doing this (Jason - possible?) automatically for those too nervous of
editing registry.

>
> Plus, afaik, the PEAR installer doesn't support doing such things.
>

!is_null(getenv('ANSICON')) ?

> -Hannes
>

I think that whilst windows no longer has coloured console output as
standard, a free alternative is a viable option.

The other option is to disable coloured output when on windows, but if
that was the case, I would like the option of having a mechanism to
enable this without having to add it to the command line every time -
yet another env_var?

The source is available. Jason has been very receptive to the issues
that I've raised.

Richard

--
-----
Richard Quadling
"Standing on the shoulders of some very clever giants!"
EE : http://www.experts-exchange.com/M_248814.html
Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
ZOPA : http://uk.zopa.com/member/RQuadling
From: Hannes Magnusson on
On Tue, Sep 22, 2009 at 11:38, Richard Quadling
<rquadling(a)googlemail.com> wrote:
> As for detection, once ANSICON is loaded,  the ANSICON environment variable.
>
> But maybe ANSICon needs a small installer which has the option of
> doing this (Jason - possible?) automatically for those too nervous of
> editing registry.
>
>>
>> Plus, afaik, the PEAR installer doesn't support doing such things.
>>
>
> !is_null(getenv('ANSICON')) ?

We cannot do any such check at install time.

We can do it when running the application, but then we'd have to check
the registry if we already have added the setting before trying to
adding it yet again.

In any case, I don't think its the job of PhD to do registry magic.
Check if the environment variable exists, and then print out color
codes however is something we should probably be doing.

-Hannes
From: Brett Bieber on
Greetings

On Tue, Sep 22, 2009 at 3:55 PM, Hannes Magnusson
<hannes.magnusson(a)gmail.com> wrote:
>> As for detection, once ANSICON is loaded,  the ANSICON environment variable.
>>
>> But maybe ANSICon needs a small installer which has the option of
>> doing this (Jason - possible?) automatically for those too nervous of
>> editing registry.
>>
>>>
>>> Plus, afaik, the PEAR installer doesn't support doing such things.

Just so everyone is aware, PEAR supports post-install-scripts which
can do anything PHP can do.

This does require an additional step by the end-user when the package
is installed, pear run-scripts mychannel/Package, but it is possible
to do this.

--
Brett Bieber