加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

在Windows 7的Git Bash中,运行黄瓜或rspec时,颜色显示为代码

发布时间:2020-12-14 01:40:04 所属栏目:Windows 来源:网络整理
导读:在 Windows 7上的 Git Bash中,我偶尔会发生一些事情,导致运行黄瓜情景或rspec规格时颜色编码失败. 偶尔,它是随机固定的(随机的我不知道我做了什么,导致它被修复). 所以当我跑: $bundle exec cucumber features 要么 $bundle exec rspec spec 而不是看到这个
在 Windows 7上的 Git Bash中,我偶尔会发生一些事情,导致运行黄瓜情景或rspec规格时颜色编码失败.

偶尔,它是随机固定的(随机的我不知道我做了什么,导致它被修复).

所以当我跑:

$bundle exec cucumber features

要么

$bundle exec rspec spec

而不是看到这个颜色:

......

 3 scenarios (3 passed)
 6 steps (6 passed)

我看到像:

[32m.[0m[32m.[0m[32m.[0m[32m.[0m[32m.[0m[32m.[0m

 3 scenarios ([32m3 passed[0m)
 6 steps ([32m6 passed[0m)

我知道这些是颜色的代码表示,但我不知道为什么它停止显示颜色,也不知道如何解决它.我失踪了什么

git config的输出–list:

core.symlinks=false
core.autocrlf=true
color.diff=auto
pack.packsizelimit=2g
help.format=html
http.sslcainfo=/bin/curl-ca-bundle.crt 
sendemail.smtpserver=/bin/msmtp.exe 
user.name=John Uhri 
user.email= ***** 
color.branch=auto 
color.diff=auto 
color.interactive=auto 
color.status=auto 
core.repositoryformatversion=0 
core.filemode=false 
core.bare=false 
core.logallrefupdates=true
core.symlinks=false 
core.ignorecase=true 
core.hidedotfiles=dotGitOnly 
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/* 
branch.master.remote=origin 
branch.master.merge=refs/heads/master
在windows上,git Bash使用内置的终端,该终端会滚动到cmd提示符下.如果安装cygwin,您可以使用mintty终端仿真器(在开始菜单上安装为“Cygwin终端”).

为什么这很重要?因为windows cmd提示术语不解释ANSI转义序列.它使用M $颜色控制方案.如果您正在使用的程序不会在Windows上切换到此方案,或者通过过滤器,那么您将看到原始的转义字符. Cygwin的软件控制台完全支持这些代码.

如果颜色通常工作,这是黄瓜/ rspec从移植中的错误.有人在打印颜色或某物时错过了窗口的检查.直到这个修复,一个工作是以下python脚本:

#!/usr/bin/env python
# Filter ANSI escapes from stdin to stdout
from __future__ import print_function
from colorama import init
import sys
init()

for line in sys.stdin.readlines():
    print(line)

您将需要安装colorama库.然后通过脚本管道输出:

$bundle exec rspec spec | colorFilter.py

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读