v self: force the subprocess to show colors

pull/4790/head
Delyan Angelov 2020-05-08 19:04:24 +03:00
parent 6ea741e26e
commit 4b347ff148
2 changed files with 5 additions and 0 deletions

View File

@ -7,6 +7,7 @@ fn main() {
vexe := pref.vexe_path() vexe := pref.vexe_path()
vroot := os.dir(vexe) vroot := os.dir(vexe)
os.chdir(vroot) os.chdir(vroot)
os.setenv('VCOLORS', 'always', true)
self_idx := os.args.index('self') self_idx := os.args.index('self')
args := os.args[1..self_idx] args := os.args[1..self_idx]

View File

@ -61,6 +61,10 @@ pub fn header(text, divider string) string {
} }
fn supports_escape_sequences(fd int) bool { fn supports_escape_sequences(fd int) bool {
vcolors_override := os.getenv('VCOLORS')
if vcolors_override == 'always' {
return true
}
$if windows { $if windows {
return (is_atty(fd) & 0x0004) > 0 && os.getenv('TERM') != 'dumb' // ENABLE_VIRTUAL_TERMINAL_PROCESSING return (is_atty(fd) & 0x0004) > 0 && os.getenv('TERM') != 'dumb' // ENABLE_VIRTUAL_TERMINAL_PROCESSING
} $else { } $else {