Files
dotfiles/.config/ranger/bb.gotham-2019.py
T

177 lines
5.3 KiB
Python
Raw Normal View History

2026-05-16 13:01:39 -04:00
# Ivaylo Kuzev <ivkuzev@gmail.com>, 2014
# Zenburn like colorscheme for https://github.com/hut/ranger .
# default colorscheme.
# Copyright (C) 2009-2013 Roman Zimbelmann <hut@lepus.uberspace.de>
# 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