#!/usr/bin/env python #coding:utf-8 """ Author: sir garbagetruck --<> Purpose: convert xrdb defs into st array Created: 25/01/17 """ import argparse #---------------------------------------------------------------------- def main(filename): """the main chunk""" f = open(filename) colors = {} c2 = {} for i in f.readlines(): (crap,color,rgb)=i.split(' ') cbits = color.split('_') rgb = rgb.rstrip() try: idx = int(cbits[1]) colors[idx] = rgb c2[rgb] = idx except: # print(color) if color == 'Background_Color': bg = rgb if color == 'Cursor_Color': cs = rgb if color == 'Foreground_Color': fg = rgb pass l = colors.keys() for i in l: print('"'+colors[i]+'", // '+str(i)) x = 256 try: print("static unsigned int defaultbg = " + str(c2[bg])) +';' except: print('"'+bg+'", /* bg color */') print("static unsigned int defaultbg = " + str(x)) +';' x=x+1 try: print("static unsigned int defaultfg = " + str(c2[fg])) +';' except: print('"'+fg+'", /* fg color */') print("static unsigned int defaultfg = " + str(x)) +';' x=x+1 try: print("static unsigned int defaultcs = " + str(c2[cs])) +';' except: print('"'+cs+'" /* cs color */') print("static unsigned int defaultcs = " + str(x)) +';' if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument("file",help="the file to read") args = parser.parse_args() main(args.file)