From: "Fabian Groffen (grobian)" <grobian@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] portage r11109 - main/branches/prefix/pym/_emerge
Date: Thu, 17 Jul 2008 14:06:15 +0000 [thread overview]
Message-ID: <E1KJU7b-0004Gj-H8@stork.gentoo.org> (raw)
Author: grobian
Date: 2008-07-17 14:06:14 +0000 (Thu, 17 Jul 2008)
New Revision: 11109
Modified:
main/branches/prefix/pym/_emerge/__init__.py
Log:
Merged from trunk 11106:11107
| 11107 | Reformat the status display. Here's an example: >>> Jobs: 0 |
| zmedico | of 2 complete, 2 running Load average: 2.9, 2.4, 2.0 >>> |
| | Jobs: 0 of 2 complete, 1 running, 2 merges Load average: |
| | 2.8, 2.4, 2.0 >>> Jobs: 2 of 2 complete Load average: 2.6, |
| | 2.3, 2.0 |
Modified: main/branches/prefix/pym/_emerge/__init__.py
===================================================================
--- main/branches/prefix/pym/_emerge/__init__.py 2008-07-17 14:03:12 UTC (rev 11108)
+++ main/branches/prefix/pym/_emerge/__init__.py 2008-07-17 14:06:14 UTC (rev 11109)
@@ -23,6 +23,7 @@
import array
from collections import deque
import fcntl
+import formatter
import fpformat
import logging
import select
@@ -91,6 +92,11 @@
except ImportError:
import pickle as cPickle
+try:
+ import cStringIO as StringIO
+except ImportError:
+ import StringIO
+
class stdout_spinner(object):
scroll_msgs = [
"Gentoo Rocks ("+platform.system()+")",
@@ -8347,9 +8353,7 @@
class JobStatusDisplay(object):
_bound_properties = ("curval", "merges", "running")
- _msg_template = "Jobs: %(curval)s of %(maxval)s complete, " + \
- "%(running)s running, %(merges)s merge%(merges_plural)s, " + \
- "load average: %(load_avg)s"
+ _jobs_column_width = 45
def __init__(self, quiet=False):
object.__setattr__(self, "quiet", quiet)
@@ -8399,32 +8403,53 @@
running_str = str(self.running)
merges_str = str(self.merges)
load_avg_str = self._load_avg_str()
- if self.merges == 1:
- merges_plural = ""
- else:
- merges_plural = "s"
- msg = self._msg_template % {
- "curval" : colorize("INFORM", curval_str),
- "maxval" : colorize("INFORM", maxval_str),
- "running" : colorize("INFORM", running_str),
- "merges" : colorize("INFORM", merges_str),
- "merges_plural" : merges_plural,
- "load_avg" : load_avg_str,
- }
- portage.writemsg_stdout(">>> %s\n" % (msg,), noiselevel=-1)
+ color_output = StringIO.StringIO()
+ plain_output = StringIO.StringIO()
+ style_file = portage.output.ConsoleStyleFile(color_output)
+ style_file.write_listener = plain_output
+ style_writer = portage.output.StyleWriter(file=style_file, maxcol=9999)
+ style_writer.style_listener = style_file.new_styles
+ f = formatter.AbstractFormatter(style_writer)
- xterm_msg = self._msg_template % {
- "curval" : curval_str,
- "maxval" : maxval_str,
- "running" : running_str,
- "merges" : merges_str,
- "merges_plural" : merges_plural,
- "load_avg" : load_avg_str,
- }
+ number_style = "INFORM"
+ f.add_literal_data("Jobs: ")
+ f.push_style(number_style)
+ f.add_literal_data(curval_str)
+ f.pop_style()
+ f.add_literal_data(" of ")
+ f.push_style(number_style)
+ f.add_literal_data(maxval_str)
+ f.pop_style()
+ f.add_literal_data(" complete")
- xtermTitle(xterm_msg)
+ if self.running:
+ f.add_literal_data(", ")
+ f.push_style(number_style)
+ f.add_literal_data(running_str)
+ f.pop_style()
+ f.add_literal_data(" running")
+ if self.merges:
+ f.add_literal_data(", ")
+ f.push_style(number_style)
+ f.add_literal_data(merges_str)
+ f.pop_style()
+ f.add_literal_data(" merge")
+ if self.merges != 1:
+ f.add_literal_data("s")
+
+ padding = self._jobs_column_width - len(plain_output.getvalue())
+ if padding > 0:
+ f.add_literal_data(padding * " ")
+
+ f.add_literal_data("Load average: ")
+ f.add_literal_data(load_avg_str)
+
+ portage.writemsg_stdout(">>> %s\n" % \
+ (color_output.getvalue(),), noiselevel=-1)
+ xtermTitle(plain_output.getvalue())
+
class Scheduler(PollScheduler):
_opts_ignore_blockers = \
--
gentoo-commits@lists.gentoo.org mailing list
reply other threads:[~2008-07-17 14:06 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E1KJU7b-0004Gj-H8@stork.gentoo.org \
--to=grobian@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox