1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 | from ranger.gui.colorscheme import ColorScheme
from ranger.gui.color import *
class dcat(ColorScheme):
progress_bar_color = yellow
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:
fg = yellow
bg = black
if context.border:
fg = black
if context.image:
fg = yellow
if context.video:
fg = yellow
if context.audio:
fg = yellow
if context.document:
fg = black
if context.container:
attr |= bold
fg = red
if context.directory:
attr |= normal
fg = yellow
elif context.executable and not \
any((context.media, context.container,
context.fifo, context.socket)):
attr |= bold
fg = cyan
if context.socket:
fg = yellow
attr |= bold
if context.fifo or context.device:
fg = blue
if context.device:
attr |= bold
if context.link:
fg = context.good and white or black
if context.bad:
fg = yellow
if context.tag_marker and not context.selected:
attr |= bold
if fg in (black, white):
fg = yellow
else:
fg = red
if not context.selected and (context.cut or context.copied):
fg = yellow
bg = black
if context.main_column:
if context.selected:
attr |= bold
if context.marked:
attr |= bold
fg = black
if context.badinfo:
if attr & reverse:
bg = red
else:
fg = white
elif context.in_titlebar:
attr |= bold
if context.hostname:
fg = context.bad and black or yellow
bg = black
elif context.directory:
fg = black
elif context.tab:
if context.good:
fg = red
elif context.link:
fg = white
elif context.in_statusbar:
if context.permissions:
if context.good:
fg = yellow
bg = black
elif context.bad:
fg = red
if context.marked:
attr |= bold | reverse
fg = black
if context.message:
if context.bad:
attr |= bold
fg = yellow
if context.loaded:
bg = self.progress_bar_color
if context.vcsinfo:
fg = red
attr &= ~bold
if context.vcscommit:
fg = white
attr &= ~bold
if context.text:
if context.highlight:
attr |= reverse
if context.in_taskview:
if context.title:
fg = yellow
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 = yellow
elif context.vcschanged:
fg = red
elif context.vcsunknown:
fg = white
elif context.vcsstaged:
fg = yellow
elif context.vcssync:
fg = black
elif context.vcsignored:
fg = default
elif context.vcsremote and not context.selected:
attr &= ~bold
if context.vcssync:
fg = yellow
elif context.vcsbehind:
fg = white
elif context.vcsahead:
fg = red
elif context.vcsdiverged:
fg = black
elif context.vcsunknown:
fg = black
return fg, bg, attr
|
x