# Ivaylo Kuzev , 2014 # Zenburn like colorscheme for https://github.com/hut/ranger . # default colorscheme. # Copyright (C) 2009-2013 Roman Zimbelmann # This software is distributed under the terms of the GNU GPL version 3. from ranger.gui.colorscheme import ColorScheme from ranger.gui.color import default_colors, reverse, bold, normal, default # pylint: disable=too-many-branches,too-many-statements class Gotham(ColorScheme): progress_bar_color = 108 def use(self, context): fg, bg, attr = default_colors if context.reset: return default_colors elif context.in_browser: if context.selected: attr = reverse else: attr = normal if context.empty or context.error: attr |= bold fg = 232 bg = 124 if context.border: fg = 7 if context.image: # spellbinder fg = 208 if context.video: fg = 66 if context.audio: # shriek fg = 45 bg = 231 if context.document: fg = 15 if context.container: # ra's al ghul in talia's body attr |= bold fg = 141 bg = 28 if context.directory: attr |= bold fg = 124 # simon harper elif context.executable and not \ any((context.media, context.container, context.fifo, context.socket)): attr |= bold fg = 94 if context.socket: # chronos fg = 40 attr |= bold if context.fifo or context.device: # inque fg = 16 bg = 18 if context.device: attr |= bold if context.link: # hush, dick grayson clone fg = 20 bg = 247 if context.good else 196 if context.bad: bg = 232 if context.tag_marker and not context.selected: attr |= bold # if fg is empty/error or badinfo if fg in (232, 196): fg = 248 else: fg = 174 if not context.selected and (context.cut or context.copied): fg = 108 bg = 234 if context.main_column: if context.selected: attr |= bold if context.marked: attr |= bold fg = 223 if context.badinfo: if attr & reverse: bg = 196 else: fg = 196 elif context.in_titlebar: attr |= bold if context.hostname: fg = 124 if context.bad: attr |= reverse elif context.directory: fg = 124 elif context.tab: if context.good: bg = 150 elif context.link: fg = 20 elif context.in_statusbar: if context.permissions: if context.good: fg = 124 elif context.bad: bg = 124 fg = 16 if context.marked: attr |= bold | reverse fg = 223 if context.message: if context.bad: attr |= bold fg = 16 bg = 124 if context.loaded: bg = self.progress_bar_color if context.vcsinfo: fg = 124 attr &= ~bold if context.vcscommit: fg = 124 attr &= ~bold if context.text: if context.highlight: attr |= reverse if context.in_taskview: if context.title: fg = 116 if context.selected: attr |= reverse if context.loaded: if context.selected: fg = self.progress_bar_color else: bg = self.progress_bar_color if context.vcsfile and not context.selected: attr &= ~bold if context.vcsconflict: fg = 16 bg = 124 elif context.vcschanged: fg = 124 elif context.vcsunknown: #fg = 246 fg = 200 elif context.vcsstaged: fg = 40 elif context.vcssync: fg = 124 elif context.vcsignored: fg = default elif context.vcsremote and not context.selected: attr &= ~bold if context.vcssync: fg = 124 elif context.vcsbehind: fg = 15 elif context.vcsahead: fg = 20 elif context.vcsdiverged: fg = 16 bg = 124 elif context.vcsunknown: fg = 247 return fg, bg, attr