本文整理汇总了Python中portage.output.colorize函数的典型用法代码示例。如果您正苦于以下问题:Python colorize函数的具体用法?Python colorize怎么用?Python colorize使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了colorize函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: _start
def _start(self):
self.scheduler = self.merge.scheduler
pkg = self.merge.pkg
pkg_count = self.merge.pkg_count
if pkg.installed:
action_desc = "Uninstalling"
preposition = "from"
counter_str = ""
else:
action_desc = "Installing"
preposition = "to"
counter_str = "(%s of %s) " % \
(colorize("MERGE_LIST_PROGRESS", str(pkg_count.curval)),
colorize("MERGE_LIST_PROGRESS", str(pkg_count.maxval)))
msg = "%s %s%s" % \
(action_desc,
counter_str,
colorize("GOOD", pkg.cpv))
if pkg.root != "/":
msg += " %s %s" % (preposition, pkg.root)
if not self.merge.build_opts.fetchonly and \
not self.merge.build_opts.pretend and \
not self.merge.build_opts.buildpkgonly:
self.merge.statusMessage(msg)
task = self.merge.create_install_task()
self._start_task(task, self._default_final_exit)
开发者ID:Acidburn0zzz,项目名称:portage-funtoo,代码行数:32,代码来源:PackageMerge.py
示例2: _start
def _start(self):
self.scheduler = self.merge.scheduler
pkg = self.merge.pkg
pkg_count = self.merge.pkg_count
pkg_color = "PKG_MERGE"
if pkg.type_name == "binary":
pkg_color = "PKG_BINARY_MERGE"
if pkg.installed:
action_desc = "Uninstalling"
preposition = "from"
counter_str = ""
else:
action_desc = "Installing"
preposition = "to"
counter_str = "(%s of %s) " % (
colorize("MERGE_LIST_PROGRESS", str(pkg_count.curval)),
colorize("MERGE_LIST_PROGRESS", str(pkg_count.maxval)),
)
msg = "%s %s%s" % (action_desc, counter_str, colorize(pkg_color, pkg.cpv + _repo_separator + pkg.repo))
if pkg.root_config.settings["ROOT"] != "/":
msg += " %s %s" % (preposition, pkg.root)
if (
not self.merge.build_opts.fetchonly
and not self.merge.build_opts.pretend
and not self.merge.build_opts.buildpkgonly
):
self.merge.statusMessage(msg)
task = self.merge.create_install_task()
self._start_task(task, self._default_final_exit)
开发者ID:nullishzero,项目名称:portage-1,代码行数:35,代码来源:PackageMerge.py
示例3: chk_updated_cfg_files
def chk_updated_cfg_files(eroot, config_protect):
target_root = eroot
result = list(
portage.util.find_updated_config_files(target_root, config_protect))
for x in result:
writemsg_level("\n %s " % (colorize("WARN", "* " + _("IMPORTANT:"))),
level=logging.INFO, noiselevel=-1)
if not x[1]: # it's a protected file
writemsg_level( _("config file '%s' needs updating.\n") % x[0],
level=logging.INFO, noiselevel=-1)
else: # it's a protected dir
if len(x[1]) == 1:
head, tail = os.path.split(x[1][0])
tail = tail[len("._cfg0000_"):]
fpath = os.path.join(head, tail)
writemsg_level(_("config file '%s' needs updating.\n") % fpath,
level=logging.INFO, noiselevel=-1)
else:
writemsg_level(
_("%d config files in '%s' need updating.\n") % \
(len(x[1]), x[0]), level=logging.INFO, noiselevel=-1)
if result:
print(" " + yellow("*") + " See the " +
colorize("INFORM", _("CONFIGURATION FILES")) + " and " +
colorize("INFORM", _("CONFIGURATION FILES UPDATE TOOLS")))
print(" " + yellow("*") + " sections of the " + bold("emerge") + " " +
_("man page to learn how to update config files."))
开发者ID:aeroniero33,项目名称:portage,代码行数:29,代码来源:chk_updated_cfg_files.py
示例4: highlight_violations
def highlight_violations(atom, version, use=[]):
"""Colorize parts of an atom"""
atom_str = str(atom)
if version:
op = atom.operator
ver = cpv_getversion(atom.cpv)
slot = atom.slot
atom_str = atom_str.replace(op, colorize("BAD", op), 1)
start = atom_str.rfind(ver)
end = start + len(ver)
atom_str = atom_str[:start] + \
colorize("BAD", ver) + \
atom_str[end+1:]
if slot:
atom_str = atom_str.replace(":" + slot, colorize("BAD", ":" + slot))
if use and atom.use.tokens:
use_part_start = atom_str.find("[")
use_part_end = atom_str.find("]")
new_tokens = []
for token in atom.use.tokens:
if token.lstrip("-!").rstrip("=?") in use:
new_tokens.append(colorize("BAD", token))
else:
new_tokens.append(token)
atom_str = atom_str[:use_part_start] \
+ "[%s]" % (",".join(new_tokens),) + \
atom_str[use_part_end+1:]
return atom_str
开发者ID:Neuvoo,项目名称:legacy-portage,代码行数:33,代码来源:slot_collision.py
示例5: show_diff
def show_diff(s):
output = ''
for tag, i0, i1, j0, j1 in s.get_opcodes():
if tag == 'equal':
output += s.a[i0:i1]
if tag in ('delete', 'replace'):
o = s.a[i0:i1]
if style == 'color-inline':
o = colorize('bg_darkred', o)
else:
o = '-{%s}' % o
output += o
if tag in ('insert', 'replace'):
o = s.b[j0:j1]
if style == 'color-inline':
o = colorize('bg_darkgreen', o)
else:
o = '+{%s}' % o
output += o
return output
开发者ID:zmedico,项目名称:gentoolkit,代码行数:25,代码来源:ekeyword.py
示例6: pkgprint
def pkgprint(pkg_str, pkg_info):
"""Colorizes a string acording to pkg_info settings
@param pkg_str: string
@param pkg_info: dictionary
@rtype colorized string
"""
if pkg_info.merge:
if pkg_info.built:
if pkg_info.system:
return colorize("PKG_BINARY_MERGE_SYSTEM", pkg_str)
elif pkg_info.world:
return colorize("PKG_BINARY_MERGE_WORLD", pkg_str)
else:
return colorize("PKG_BINARY_MERGE", pkg_str)
else:
if pkg_info.system:
return colorize("PKG_MERGE_SYSTEM", pkg_str)
elif pkg_info.world:
return colorize("PKG_MERGE_WORLD", pkg_str)
else:
return colorize("PKG_MERGE", pkg_str)
elif pkg_info.operation == "uninstall":
return colorize("PKG_UNINSTALL", pkg_str)
else:
if pkg_info.system:
return colorize("PKG_NOMERGE_SYSTEM", pkg_str)
elif pkg_info.world:
return colorize("PKG_NOMERGE_WORLD", pkg_str)
else:
return colorize("PKG_NOMERGE", pkg_str)
开发者ID:pombredanne,项目名称:portage-3,代码行数:31,代码来源:output.py
示例7: _start
def _start(self):
pkg = self.merge.pkg
pkg_count = self.merge.pkg_count
if pkg.installed:
action_desc = "Uninstalling"
preposition = "from"
counter_str = ""
else:
action_desc = "Installing"
preposition = "to"
counter_str = "(%s of %s) " % \
(colorize("MERGE_LIST_PROGRESS", str(pkg_count.curval)),
colorize("MERGE_LIST_PROGRESS", str(pkg_count.maxval)))
msg = "%s %s%s" % \
(action_desc,
counter_str,
colorize("GOOD", pkg.cpv))
if pkg.root != "/":
msg += " %s %s" % (preposition, pkg.root)
if not self.merge.build_opts.fetchonly and \
not self.merge.build_opts.pretend and \
not self.merge.build_opts.buildpkgonly:
self.merge.statusMessage(msg)
self.returncode = self.merge.merge()
self.wait()
开发者ID:Neuvoo,项目名称:legacy-portage,代码行数:31,代码来源:PackageMerge.py
示例8: _finalize
def _finalize():
global _items
printer = EOutput()
for root, key, logentries, logfile in _items:
print()
if root == "/":
printer.einfo(_("Messages for package %s:") %
colorize("INFORM", key))
else:
printer.einfo(_("Messages for package %(pkg)s merged to %(root)s:") %
{"pkg": colorize("INFORM", key), "root": root})
if logfile is not None:
printer.einfo(_("Log file: %s") % colorize("INFORM", logfile))
print()
for phase in EBUILD_PHASES:
if phase not in logentries:
continue
for msgtype, msgcontent in logentries[phase]:
fmap = {"INFO": printer.einfo,
"WARN": printer.ewarn,
"ERROR": printer.eerror,
"LOG": printer.einfo,
"QA": printer.ewarn}
if isinstance(msgcontent, basestring):
msgcontent = [msgcontent]
for line in msgcontent:
fmap[msgtype](line.strip("\n"))
_items = []
return
开发者ID:mgorny,项目名称:portage,代码行数:29,代码来源:mod_echo.py
示例9: ask
def ask(self, name, input_f=raw_input):
"""Ask for a config value.
:param name: Name of config option to be retrieved
:type name: string
:param input_f: function to do the asking
:type: input_f: function
:returns: Config value or if given option not valid, ask again.
"""
if self.IS_FIRST_QUESTION:
self.print_help()
if self.options.nocolors:
msg = "%s [%r]: "
else:
msg = colorize("GOOD", " * ") + "%s" + colorize("BRACKET", " [") + "%r" + colorize("BRACKET", "]") + ": "
option = Config.allowed_options[name]
# ask the question or use default
answer = input_f(msg % (option[0].capitalize(), option[2])) or option[2]
try:
return Config.validate(name, answer)
except GPyPiValidationError, e:
log.error("Error: %s" % e)
return self.ask(name, input_f)
开发者ID:Miriup,项目名称:g-pypi,代码行数:27,代码来源:config.py
示例10: deprecated_profile_check
def deprecated_profile_check(settings=None):
config_root = "/"
if settings is not None:
config_root = settings["PORTAGE_CONFIGROOT"]
deprecated_profile_file = os.path.join(config_root,
DEPRECATED_PROFILE_FILE)
if not os.access(deprecated_profile_file, os.R_OK):
return False
dcontent = codecs.open(_unicode_encode(deprecated_profile_file,
encoding=_encodings['fs'], errors='strict'),
mode='r', encoding=_encodings['content'], errors='replace').readlines()
writemsg(colorize("BAD", _("\n!!! Your current profile is "
"deprecated and not supported anymore.")) + "\n", noiselevel=-1)
writemsg(colorize("BAD", _("!!! Use eselect profile to update your "
"profile.")) + "\n", noiselevel=-1)
if not dcontent:
writemsg(colorize("BAD", _("!!! Please refer to the "
"Gentoo Upgrading Guide.")) + "\n", noiselevel=-1)
return True
newprofile = dcontent[0]
writemsg(colorize("BAD", _("!!! Please upgrade to the "
"following profile if possible:")) + "\n", noiselevel=-1)
writemsg(8*" " + colorize("GOOD", newprofile) + "\n", noiselevel=-1)
if len(dcontent) > 1:
writemsg(_("To upgrade do the following steps:\n"), noiselevel=-1)
for myline in dcontent[1:]:
writemsg(myline, noiselevel=-1)
writemsg("\n\n", noiselevel=-1)
return True
开发者ID:Neuvoo,项目名称:legacy-portage,代码行数:29,代码来源:deprecated_profile_check.py
示例11: finalize
def finalize(mysettings=None):
"""The mysettings parameter is just for backward compatibility since
an older version of portage will import the module from a newer version
when it upgrades itself."""
global _items
printer = EOutput()
for root, key, logentries in _items:
print()
if root == "/":
printer.einfo(_("Messages for package %s:") %
colorize("INFORM", key))
else:
printer.einfo(_("Messages for package %(pkg)s merged to %(root)s:") %
{"pkg": colorize("INFORM", key), "root": root})
print()
for phase in EBUILD_PHASES:
if phase not in logentries:
continue
for msgtype, msgcontent in logentries[phase]:
fmap = {"INFO": printer.einfo,
"WARN": printer.ewarn,
"ERROR": printer.eerror,
"LOG": printer.einfo,
"QA": printer.ewarn}
if isinstance(msgcontent, basestring):
msgcontent = [msgcontent]
for line in msgcontent:
fmap[msgtype](line.strip("\n"))
_items = []
return
开发者ID:TommyD,项目名称:gentoo-portage-multilib,代码行数:30,代码来源:mod_echo.py
示例12: display
def display(self):
self.out.write(
"\r"
+ colorize("WARN", _("cache miss: '") + str(self.misses) + "'")
+ " --- "
+ colorize("GOOD", _("cache hit: '") + str(self.hits) + "'")
)
self.out.flush()
开发者ID:lucianposton,项目名称:portage,代码行数:8,代码来源:getbinpkg.py
示例13: print_change
def print_change(change, indent=""):
mymsg = ""
for pkg in change:
changes = []
for flag, state in change[pkg].items():
if state:
changes.append(colorize("red", "+" + flag))
else:
changes.append(colorize("blue", "-" + flag))
mymsg += indent + "- " + pkg.cpv + " (Change USE: %s" % " ".join(changes) + ")\n"
mymsg += "\n"
return mymsg
开发者ID:entoo,项目名称:portage-src,代码行数:12,代码来源:slot_collision.py
示例14: print_solution
def print_solution(solution, indent=""):
mymsg = ""
for pkg in solution:
changes = []
for flag, state in solution[pkg].items():
if state == "enabled" and flag not in _pkg_use_enabled(pkg):
changes.append(colorize("red", "+" + flag))
elif state == "disabled" and flag in _pkg_use_enabled(pkg):
changes.append(colorize("blue", "-" + flag))
if changes:
mymsg += indent + "- " + pkg.cpv + " (Change USE: %s" % " ".join(changes) + ")\n"
mymsg += "\n"
return mymsg
开发者ID:Neuvoo,项目名称:legacy-portage,代码行数:13,代码来源:slot_collision.py
示例15: _start
def _start(self):
pkg = self.pkg
settings = self.settings
if not self.opts.fetchonly:
rval = _check_temp_dir(settings)
if rval != os.EX_OK:
self.returncode = rval
self._current_task = None
self._async_wait()
return
root_config = pkg.root_config
tree = "porttree"
self._tree = tree
portdb = root_config.trees[tree].dbapi
settings.setcpv(pkg)
settings.configdict["pkg"]["EMERGE_FROM"] = "ebuild"
if self.opts.buildpkgonly:
settings.configdict["pkg"]["MERGE_TYPE"] = "buildonly"
else:
settings.configdict["pkg"]["MERGE_TYPE"] = "source"
ebuild_path = portdb.findname(pkg.cpv, myrepo=pkg.repo)
if ebuild_path is None:
raise AssertionError("ebuild not found for '%s'" % pkg.cpv)
self._ebuild_path = ebuild_path
portage.doebuild_environment(ebuild_path, 'setup',
settings=self.settings, db=portdb)
# Check the manifest here since with --keep-going mode it's
# currently possible to get this far with a broken manifest.
if not self._check_manifest():
self.returncode = 1
self._current_task = None
self._async_wait()
return
prefetcher = self.prefetcher
if prefetcher is None:
pass
elif prefetcher.isAlive() and \
prefetcher.poll() is None:
waiting_msg = "Fetching files " + \
"in the background. " + \
"To view fetch progress, run `tail -f %s` in another terminal." \
% (_emerge.emergelog._emerge_log_dir)
msg_prefix = colorize("GOOD", " * ")
from textwrap import wrap
waiting_msg = "".join("%s%s\n" % (msg_prefix, line) \
for line in wrap(waiting_msg, 65))
if not self.background:
writemsg(waiting_msg, noiselevel=-1)
self._current_task = prefetcher
prefetcher.addExitListener(self._prefetch_exit)
return
self._prefetch_exit(prefetcher)
开发者ID:nullishzero,项目名称:portage-1,代码行数:60,代码来源:EbuildBuild.py
示例16: make_http_request
def make_http_request(conn, address, params={}, headers={}, dest=None):
"""(conn,address,params,headers) --- uses the conn object to request
the data from address, performing Location forwarding and using the
optional params and headers."""
warnings.warn("portage.getbinpkg.make_http_request() is deprecated",
DeprecationWarning, stacklevel=2)
rc = 0
response = None
while (rc == 0) or (rc == 301) or (rc == 302):
try:
if (rc != 0):
conn,ignore,ignore,ignore,ignore = create_conn(address)
conn.request("GET", address, body=None, headers=headers)
except SystemExit as e:
raise
except Exception as e:
return None,None,"Server request failed: "+str(e)
response = conn.getresponse()
rc = response.status
# 301 means that the page address is wrong.
if ((rc == 301) or (rc == 302)):
ignored_data = response.read()
del ignored_data
for x in str(response.msg).split("\n"):
parts = x.split(": ",1)
if parts[0] == "Location":
if (rc == 301):
sys.stderr.write(colorize("BAD",
_("Location has moved: ")) + str(parts[1]) + "\n")
if (rc == 302):
sys.stderr.write(colorize("BAD",
_("Location has temporarily moved: ")) + \
str(parts[1]) + "\n")
address = parts[1]
break
if (rc != 200) and (rc != 206):
return None,rc,"Server did not respond successfully ("+str(response.status)+": "+str(response.reason)+")"
if dest:
dest.write(response.read())
return "",0,""
return response.read(),0,""
开发者ID:clickbeetle,项目名称:portage-cb,代码行数:47,代码来源:getbinpkg.py
示例17: __str__
def __str__(self):
total_installs = self.upgrades + self.downgrades + self.newslot + self.new + self.reinst
myoutput = []
details = []
myoutput.append("Total: %s package" % total_installs)
if total_installs != 1:
myoutput.append("s")
if total_installs != 0:
myoutput.append(" (")
if self.upgrades > 0:
details.append("%s upgrade" % self.upgrades)
if self.upgrades > 1:
details[-1] += "s"
if self.downgrades > 0:
details.append("%s downgrade" % self.downgrades)
if self.downgrades > 1:
details[-1] += "s"
if self.new > 0:
details.append("%s new" % self.new)
if self.newslot > 0:
details.append("%s in new slot" % self.newslot)
if self.newslot > 1:
details[-1] += "s"
if self.reinst > 0:
details.append("%s reinstall" % self.reinst)
if self.reinst > 1:
details[-1] += "s"
if self.binary > 0:
details.append("%s binary" % self.binary)
if self.binary > 1:
details[-1] = details[-1][:-1] + "ies"
if self.uninst > 0:
details.append("%s uninstall" % self.uninst)
if self.uninst > 1:
details[-1] += "s"
if self.interactive > 0:
details.append("%s %s" % (self.interactive,
colorize("WARN", "interactive")))
myoutput.append(", ".join(details))
if total_installs != 0:
myoutput.append(")")
myoutput.append(", Size of downloads: %s" % format_size(self.totalsize))
if self.restrict_fetch:
myoutput.append("\nFetch Restriction: %s package" % \
self.restrict_fetch)
if self.restrict_fetch > 1:
myoutput.append("s")
if self.restrict_fetch_satisfied < self.restrict_fetch:
myoutput.append(bad(" (%s unsatisfied)") % \
(self.restrict_fetch - self.restrict_fetch_satisfied))
if self.blocks > 0:
myoutput.append("\nConflict: %s block" % \
self.blocks)
if self.blocks > 1:
myoutput.append("s")
if self.blocks_satisfied < self.blocks:
myoutput.append(bad(" (%s unsatisfied)") % \
(self.blocks - self.blocks_satisfied))
return "".join(myoutput)
开发者ID:TommyD,项目名称:gentoo-portage-multilib,代码行数:59,代码来源:PackageCounters.py
示例18: _p_file
def _p_file(field: str) -> str:
"""
Prints a file name consistently.
:param field: Field label to print
:return: colourised string
"""
return colorize(file_colour, field)
开发者ID:Amynka,项目名称:misc,代码行数:8,代码来源:check-files.py
示例19: _p_good
def _p_good(name: str) -> str:
"""
Prints good output consistently.
:param name: Name to print
:return: string of colourised name
"""
return colorize(good_colour, name)
开发者ID:Amynka,项目名称:misc,代码行数:8,代码来源:check-files.py
示例20: _p_error
def _p_error(addr: str) -> str:
"""
Prints an error text consistently.
:param addr: Address to print
:return: colourised address
"""
return colorize(error_colour, addr)
开发者ID:Amynka,项目名称:misc,代码行数:8,代码来源:check-files.py
注:本文中的portage.output.colorize函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论