urxvt2.6 pada tahun 2004 menambahkan dukungan untuk fitur warna dinamis xterm . Dalam XTerm Control Sequences , ini adalah OSC11. OSC10 mengatur warna teks default. Changelog menyebutkan bagian dari perubahan:
2.6 Fri Apr 2 03:24:10 CEST 2004
- minor doc corrections.
- WARNING: changed menu sequence from ESC ] 10 to ESC ] 703 to
avoid clashes with xterm.
- changed OSC701/OSC702 sequence to return standard escaped reports.
- xterm-compat: make set window colour and other requests report
window colour when arg is "?".
tetapi kode sumber menceritakan kisahnya, seperti biasa:
/*
* XTerm escape sequences: ESC ] Ps;Pt (ST|BEL)
* 0 = change iconName/title
* 1 = change iconName
* 2 = change title
* 4 = change color
+ * 10 = change fg color
+ * 11 = change bg color
* 12 = change text color
* 13 = change mouse foreground color
* 17 = change highlight character colour
@@ -2949,20 +3236,21 @@
* 50 = change font
*
* rxvt extensions:
- * 10 = menu (may change in future)
* 20 = bg pixmap
* 39 = change default fg color
* 49 = change default bg color
* 55 = dump scrollback buffer and all of screen
* 701 = change locale
* 702 = find font
+ * 703 = menu
*/
Manual rxvt(7)tidak memberikan informasi berguna:
Perintah Sistem Operasi XTerm
"ESC] Ps; Pt ST"
Set Parameter XTerm. 8-bit ST: 0x9c, urutan 7-bit ST: ESC \
(0x1b, 0x5c), BEL juga terminator kompatibel (0x07)
diterima. oktet apa pun dapat lolos dengan awalan dengan SYN (0x16,
^ V).
Contoh sederhana ini menetapkan warna latar depan (teks) dan latar belakang standar :
#!/bin/sh
printf '\033]10;red\007'
printf '\033]11;green\007'
Seperti xterm, warna - warna default ini dapat ditimpa sementara oleh warna "ANSI".
Fitur ini dapat dinonaktifkan dalam xtermmenggunakan dynamicColorssumber daya. Tidak seperti xterm, urxvttidak memiliki pengaturan sumber daya untuk fitur ini.
VTE juga mengimplementasikan fitur ini, dan juga tidak mendokumentasikannya. urxvtsetidaknya dimulai dengan dokumentasi dari rxvt. Untuk VTE, Anda harus membaca kode sumber. Fitur yang relevan dalam vteseq.ccterlihat seperti ini:
/* Change the default background cursor, BEL terminated */
static void
vte_sequence_handler_change_background_color_bel (VteTerminalPrivate *that, GValueArray *params)
{
vte_sequence_handler_change_special_color_internal (that, params,
VTE_DEFAULT_BG, -1, 11, BEL);
}
/* Change the default background cursor, ST terminated */
static void
vte_sequence_handler_change_background_color_st (VteTerminalPrivate *that, GValueArray *params)
{
vte_sequence_handler_change_special_color_internal (that, params,
VTE_DEFAULT_BG, -1, 11, ST);
}
Kode itu tanggal kembali sekitar tahun 2003 (ketika ditulis dalam C):
commit f39e281529827f68fd0e9bba41785d66a21efc1c
Author: Nalin Dahyabhai <nalin@src.gnome.org>
Date: Wed Jan 22 21:35:22 2003 +0000
accept OSC{number};{string}ST as set-text-parameters, per XTerm docs (part
* src/caps.c: accept OSC{number};{string}ST as set-text-parameters, per XTerm
docs (part of #104154).
* src/keymap.c: revert change to prepend "1;" to keys with modifiers (#104139).
Bacaan lebih lanjut: