问题在于,当我通过Kubuntu的Konsole应用程序推出开发服务器时,调试输出是彩色的:
但是我是通过内置的" Run"或"调试"在PyCharm中,PyCharm控制台的输出都是红色的:
有没有办法让PyCharm的输出变为彩色?因为我无法在“设置”中找到任何相关内容。
UPD:链接到PyCharm问题跟踪器上的问题
正如我看到一些人在讨论这个问题,所以这里是PyCharm问题跟踪器youtrack.jetbrains.com/issue/PY-19790上这个问题的链接。如果您将投票支持此功能,它将更快发布!
答案 0 :(得分:0)
这是因为PyCharm的开发控制台没有使用与普通shell终端相同的标准来显示颜色(它们是两个截然不同的东西)。
PyCharm的输出控制台只是一个命令显示(它不是一个完整的shell,带有本地终端模拟器的所有铃声和口哨声。)
您可以将终端嵌入到PyCharm中(请参阅documentation了解如何设置它),但这样做不允许您将内置运行命令的输出重定向到终端窗口。它将使您能够在那里运行任意shell命令,并避免必须切换到终端控制台。
请记住,如果您有任何特殊的外壳自定义或字体/字形,这些可能无法在嵌入式终端中正确显示,因为它使用的是一组不同的字体和配置。
您可以尝试将其作为PyCharm bug tracker的增强功能进行提升;如果获得足够的票数,它可能会进入下一个版本。
答案 1 :(得分:0)
前段时间,我编写了一个代码片段,可以为我完成此任务。这不是一个完美的解决方案,但是可以解决问题。 BSD License
要使用它:
选项1:git clone/download this并将其导入到某个地方(例如django开发设置)。阅读模块文档字符串和readme了解详细信息。
选项2:在您的Django开发/调试设置(或其他将尽早运行的位置)中包含以下代码段。它会通过SHA-2自动针对文件更改进行验证。
try: # Colored logger CaaS. Auto downloaded and verified.
import os
import hashlib
from urllib import request
url, sha256 = "https://lab.it.hs-hannover.de/lukyanch/pydevutils/raw/c531eaf7/colored_logger.py", "083e1a39cfdbe17a7126188b5477fb8f324be8106a39ed4a00faeb3f18c5aedc"
cached_file = "/tmp/{0}.py".format(sha256)
code = bool(os.path.exists(cached_file) or [request.urlretrieve(url, cached_file), print("Downloaded: " + url)]) and open(cached_file, "r").read()
assert hashlib.sha256(code.encode()).hexdigest() == sha256, os.remove(cached_file) or "Bad content: " + cached_file
exec(code)
except Exception as e:
print("No colored logger: {e.__class__.__name__}: {e}".format(e=e))
答案 2 :(得分:0)
“ grep控制台”是可以完美处理此问题的插件: https://plugins.jetbrains.com/plugin/7125-grep-console