add xrdb2hterm script for Chrome Secure Shell colors
This commit is contained in:
parent
2fd00e003b
commit
b8fd582c70
1 changed files with 53 additions and 0 deletions
53
tools/xrdb2hterm
Executable file
53
tools/xrdb2hterm
Executable file
|
|
@ -0,0 +1,53 @@
|
|||
#!/usr/bin/env ruby
|
||||
#
|
||||
# Converts xrdb(1) color schemes into Chrome Secure Shell preferences format
|
||||
# and prints the result to STDOUT. Reads STDIN if no input files are given.
|
||||
#
|
||||
# Usage: xrdb2hterm FILE...
|
||||
# Usage: cat FILE... | xrdb2hterm
|
||||
# Usage: xrdb2hterm < INPUT
|
||||
#
|
||||
#--
|
||||
# Written in 2014 by Suraj N. Kurapati <https://github.com/sunaku>
|
||||
|
||||
# expand preprocessor definitions
|
||||
input = DATA.read + ARGF.read
|
||||
defines = Hash[ input.scan /\#define\s+(\w+)\s+(.*)\s*/ ]
|
||||
while defines.any? {|k,v| input.gsub! k, v } do end
|
||||
|
||||
# convert xrdb(1) colors to hterm
|
||||
xrdb = Hash[ input.scan /(\w+)\s*:\s*(.*)\s*/ ]
|
||||
puts <<HTERM
|
||||
term_.prefs_.set("background-color", "#{ xrdb['background'] }");
|
||||
term_.prefs_.set("foreground-color", "#{ xrdb['foreground'] }");
|
||||
term_.prefs_.set("cursor-color", "rgba(#{
|
||||
xrdb['cursorColor'].scan(/\h{2}/).map {|s| s.to_i 16 }.join(?,)
|
||||
}, 0.5)"); /* #{ xrdb['cursorColor'] } */
|
||||
term_.prefs_.set("color-palette-overrides", #{
|
||||
(0..15).map {|i| xrdb["color#{i}"] }
|
||||
});
|
||||
HTERM
|
||||
|
||||
__END__
|
||||
*color0 : Ansi_0_Color
|
||||
*color1 : Ansi_1_Color
|
||||
*color2 : Ansi_2_Color
|
||||
*color3 : Ansi_3_Color
|
||||
*color4 : Ansi_4_Color
|
||||
*color5 : Ansi_5_Color
|
||||
*color6 : Ansi_6_Color
|
||||
*color7 : Ansi_7_Color
|
||||
*color8 : Ansi_8_Color
|
||||
*color9 : Ansi_9_Color
|
||||
*color10 : Ansi_10_Color
|
||||
*color11 : Ansi_11_Color
|
||||
*color12 : Ansi_12_Color
|
||||
*color13 : Ansi_13_Color
|
||||
*color14 : Ansi_14_Color
|
||||
*color15 : Ansi_15_Color
|
||||
*colorBD : Bold_Color
|
||||
*colorIT : Italic_Color
|
||||
*colorUL : Underline_Color
|
||||
*foreground : Foreground_Color
|
||||
*background : Background_Color
|
||||
*cursorColor : Cursor_Color
|
||||
Loading…
Add table
Add a link
Reference in a new issue