我有个问题
Pash 提示符中的 ANSI 转义在 Gnome 终端中显示为垃圾
$ mono Source/PashConsole/bin/Debug/Pash.exe
[%?%p1%{8}%<%t37%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;7%;m[%?%p1%{8}%<%t40%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;0%;mPash - Copyright (C) Pash Contributors. License: GPL/BSD. See https://github.com/Pash-Project/Pash/
[%?%p1%{8}%<%t37%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;7%;m[%?%p1%{8}%<%t40%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;0%;m
[%?%p1%{8}%<%t37%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;7%;m[%?%p1%{8}%<%t40%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;0%;mPASH /home/gbuday/projects/Pash> [%?%p1%{8}%<%t37%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;7%;m[%?%p1%{8}%<%t40%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;0%;m
这似乎是一个终端,但它可能是一个 Mono 终端。 Mono 是否可能未设置termcap
或未terminfo
正确设置,从而导致我的终端上出现垃圾?
答案1
这是 Mono 中的一个错误:
https://bugzilla.xamarin.com/show_bug.cgi?format=multiple&id=18315
使用
TERM=xterm mono Source/PashConsole/bin/Debug/Pash.exe
解决问题。默认
TERM=xterm-256color
让 Mono 消除那些垃圾。