Re: Colour of output text

2009-08-02 Thread Albert van der Horst
In article mailman.3163.1247670223.8015.python-l...@python.org,
Jean-Michel Pichavant  jeanmic...@sequans.com wrote:
Nobody wrote:
 On Fri, 10 Jul 2009 09:23:54 +, garabik-news-2005-05 wrote:


 I would like to learn a way of changing the colour of a particular
 part of the output text. I've tried the following

 On Unix operating systems this would be done through the curses interface:

 http://docs.python.org/library/curses.html

 Or using ANSI colour codes:

 colours = {
 'none'   :,
 'default':\033[0m,
 'bold'   :\033[1m,


 [snip]


 # non-standard attributes, supported by some terminals


 This comment should have appeared immediately after none ;)

 Hard-coding control/escape sequences is just lame. Use the curses modules
 to obtain the correct sequences for the terminal.


As the OP I'm really interested in doing so. I currently have all my
colors hard-coded.
Now It may be lame but as soon as I call curses.initscr(), it's just
messing up with my terminal, moreover I didn't figure out how to print
'hello' using curses color codes.
Anyone has an example ? I'm pretty sure it may fit in one line.

In general initscr() ought to work. It fails if it has no/a wrong
idea of what your terminal is.

In the same shell as you run run your program type

set | grep -i term

Now some entry should show up, e.g.
TERM=xterm

infocmp $TERM

should fetch information about your terminal, from the same source
as curses does.

Possible problems are:
- your operating system/configurations lies to curses about the terminal
  or your terminal is not specified at all
- curses has not been properly installed and cannot find the database

Groetjes Albert



JM




--
-- 
Albert van der Horst, UTRECHT,THE NETHERLANDS
Economic growth -- being exponential -- ultimately falters.
alb...@spearc.xs4all.nl =n http://home.hccnet.nl/a.w.m.van.der.horst

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Colour of output text

2009-07-15 Thread Jean-Michel Pichavant

Nobody wrote:

On Fri, 10 Jul 2009 09:23:54 +, garabik-news-2005-05 wrote:

  

I would like to learn a way of changing the colour of a particular
part of the output text. I've tried the following


On Unix operating systems this would be done through the curses interface:

http://docs.python.org/library/curses.html
  

Or using ANSI colour codes:

colours = {
'none'   :,
'default':\033[0m,
'bold'   :\033[1m,



[snip]

  
# non-standard attributes, supported by some terminals 



This comment should have appeared immediately after none ;)

Hard-coding control/escape sequences is just lame. Use the curses modules
to obtain the correct sequences for the terminal.

  
As the OP I'm really interested in doing so. I currently have all my 
colors hard-coded.
Now It may be lame but as soon as I call curses.initscr(), it's just 
messing up with my terminal, moreover I didn't figure out how to print  
'hello' using curses color codes.

Anyone has an example ? I'm pretty sure it may fit in one line.

JM


--
http://mail.python.org/mailman/listinfo/python-list


Re: Colour of output text

2009-07-15 Thread Nobody
On Wed, 15 Jul 2009 17:03:30 +0200, Jean-Michel Pichavant wrote:

 Hard-coding control/escape sequences is just lame. Use the curses modules
 to obtain the correct sequences for the terminal.

   
 As the OP I'm really interested in doing so. I currently have all my 
 colors hard-coded.
 Now It may be lame but as soon as I call curses.initscr(), it's just 
 messing up with my terminal,

Use curses.setupterm() to locate and parse the terminfo/termcap entry
without entering curses mode. Most curses functions won't work without
calling initscr(), but the terminfo functions will.

 moreover I didn't figure out how to print  
 'hello' using curses color codes.
 Anyone has an example ? I'm pretty sure it may fit in one line.

#!/usr/bin/env python
import curses
curses.setupterm()
setaf = curses.tigetstr('setaf')
if not setaf:
setaf = ''
print (curses.tparm(setaf,1) + hello,  +
curses.tparm(setaf,2) + world +
curses.tparm(setaf,0))


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Colour of output text

2009-07-11 Thread Nobody
On Fri, 10 Jul 2009 09:23:54 +, garabik-news-2005-05 wrote:

 I would like to learn a way of changing the colour of a particular
 part of the output text. I've tried the following
 
 On Unix operating systems this would be done through the curses interface:
 
 http://docs.python.org/library/curses.html
 
 Or using ANSI colour codes:
 
 colours = {
 'none'   :,
 'default':\033[0m,
 'bold'   :\033[1m,

[snip]

 # non-standard attributes, supported by some terminals 

This comment should have appeared immediately after none ;)

Hard-coding control/escape sequences is just lame. Use the curses modules
to obtain the correct sequences for the terminal.

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Colour of output text

2009-07-10 Thread garabik-news-2005-05
Tim Harig user...@ilthio.net wrote:
 On 2009-07-09, Alex Rosslyn black.line...@gmail.com wrote:
 I would like to learn a way of changing the colour of a particular
 part of the output text. I've tried the following

 On Unix operating systems this would be done through the curses interface:
 
 http://docs.python.org/library/curses.html

Or using ANSI colour codes:

colours = {
'none'   :,
'default':\033[0m,
'bold'   :\033[1m,
'underline'  :\033[4m,
'blink'  :\033[5m,
'reverse':\033[7m,
'concealed'  :\033[8m,

'black'  :\033[30m,
'red':\033[31m,
'green'  :\033[32m,
'yellow' :\033[33m,
'blue'   :\033[34m,
'magenta':\033[35m,
'cyan'   :\033[36m,
'white'  :\033[37m,

'on_black'   :\033[40m,
'on_red' :\033[41m,
'on_green'   :\033[42m,
'on_yellow'  :\033[43m,
'on_blue':\033[44m,
'on_magenta' :\033[45m,
'on_cyan':\033[46m,
'on_white'   :\033[47m,

'beep'   :\007,

# non-standard attributes, supported by some terminals 
'dark' :\033[2m,
'italic'   :\033[3m,
'rapidblink'   :\033[6m,
'strikethrough':\033[9m,
}

print colours['red'], 'this is red', colours['blue'], 'blue', 
colours['on_green'], 'and with a green background', colours['default']

-- 
 ---
| Radovan Garabík http://kassiopeia.juls.savba.sk/~garabik/ |
| __..--^^^--..__garabik @ kassiopeia.juls.savba.sk |
 ---
Antivirus alert: file .signature infected by signature virus.
Hi! I'm a signature virus! Copy me into your signature file to help me spread!
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Colour of output text

2009-07-10 Thread Tim Harig
On 2009-07-10, garabik-news-2005...@kassiopeia.juls.savba.sk 
garabik-news-2005...@kassiopeia.juls.savba.sk wrote:
 Tim Harig user...@ilthio.net wrote:
 On 2009-07-09, Alex Rosslyn black.line...@gmail.com wrote:
 I would like to learn a way of changing the colour of a particular
 part of the output text. I've tried the following
 On Unix operating systems this would be done through the curses interface:
 http://docs.python.org/library/curses.html
 Or using ANSI colour codes:

Which will only work for ANSI terminals.
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Colour of output text

2009-07-10 Thread Chris Rebert
On Fri, Jul 10, 2009 at 2:23 AM,
garabik-news-2005...@kassiopeia.juls.savba.sk wrote:
 Tim Harig user...@ilthio.net wrote:
 On 2009-07-09, Alex Rosslyn black.line...@gmail.com wrote:
 I would like to learn a way of changing the colour of a particular
 part of the output text. I've tried the following

 On Unix operating systems this would be done through the curses interface:

 http://docs.python.org/library/curses.html

 Or using ANSI colour codes:

 colours = {
snip
            'beep'       :    \007,

Sound is a color? Maybe if you have synaesthesia...

Cheers,
Chris
-- 
http://blog.rebertia.com
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Colour of output text

2009-07-09 Thread Tim Harig
On 2009-07-09, Alex Rosslyn black.line...@gmail.com wrote:
 I would like to learn a way of changing the colour of a particular
 part of the output text. I've tried the following

http://catb.org/esr/faqs/smart-questions.html

 import os
 os.system(color 17)
 print This should be white on blue

I assume that you are on Windows?

 But that command changes the colour of ALL the text and the whole
 background. What i'm trying to do is simple: Change a single part (A
 letter, a word, a phrase) of the output text.

If you are on Windows, then there is an API accessing the Windows Console:

http://msdn.microsoft.com/en-us/library/ms682010(VS.85).aspx

On Unix operating systems this would be done through the curses interface:

http://docs.python.org/library/curses.html
-- 
http://mail.python.org/mailman/listinfo/python-list