Python 2's cmd module을 사용하여 프로그램의 명령 줄을 만듭니다. 내 프롬프트에 색상을 추가하지 않는 한 모든 것이 훌륭하게 작동합니다.일부 문자는 파이썬에서 내 색상이 지정된 프롬프트에 붙습니다. cmd
근무 코드 : 나는 긴 명령을 입력하거나 명령 기록에서 검색하려고하면 나는 다음과 같이 코드를 변경
from cmd import Cmd
class App(Cmd):
def __init__(self):
Cmd.__init__(self)
self.prompt = "PG ["+ (str('username'), 'green') +"@"+ str('hostname') +"]: "
def do_exit(self, line):
'''
'''
return True
App().cmdloop()
는 일부 문자 내 프롬프트에 충실.
문제 코드 :
from cmd import Cmd
class App(Cmd):
def __init__(self):
Cmd.__init__(self)
self.prompt = "PG ["+ self.colorize(str('username'), 'green') +"@"+ str('hostname') +"]: "
colorcodes = {'green':{True:'\x1b[32m',False:'\x1b[39m'}}
def colorize(self, val, color):
return self.colorcodes[color][True] + val + self.colorcodes[color][False]
def do_exit(self, line):
'''
'''
return True
App().cmdloop()
당신은 asciicasts에서이 문제를 볼 수 있습니다. 문제는 cmd2 module에도 있습니다.
@cxw 예, Python2와'cmd'이지만이 문제는'cmd2'에도 있습니다! – RaminNietzsche