diff --git a/config/openbox/autostart b/config/openbox/autostart index 66fdf95..85ec0da 100755 --- a/config/openbox/autostart +++ b/config/openbox/autostart @@ -3,4 +3,4 @@ setxkbmap "us,ua" ",winkeys" "grp:alt_shift_toggle" -option "ctrl:nocaps" & feh --randomize --bg-scale ~/Pictures/wallp & lxsession & picom -b & -tint2 & +tint2 -c ~/.config/openbox/tint2rc & diff --git a/config/openbox/tint2rc b/config/openbox/tint2rc new file mode 100644 index 0000000..e5e28d8 --- /dev/null +++ b/config/openbox/tint2rc @@ -0,0 +1,270 @@ +#---- Generated by tint2conf 3de0 ---- +# See https://gitlab.com/o9000/tint2/wikis/Configure for +# full documentation of the configuration options. +#------------------------------------- +# Gradients +#------------------------------------- +# Backgrounds +# Background 1: Active taskbar, Battery, Clock, Launcher, Systray, Tooltip +rounded = 0 +border_width = 0 +border_sides = TBLR +border_content_tint_weight = 0 +background_content_tint_weight = 0 +background_color = #262a2b 100 +border_color = #222222 0 +background_color_hover = #000000 80 +border_color_hover = #000000 0 +background_color_pressed = #000000 80 +border_color_pressed = #000000 0 + +# Background 2: Active task +rounded = 0 +border_width = 0 +border_sides = TBLR +border_content_tint_weight = 0 +background_content_tint_weight = 0 +background_color = #008dcd 100 +border_color = #272727 0 +background_color_hover = #272727 70 +border_color_hover = #272727 0 +background_color_pressed = #272727 70 +border_color_pressed = #272727 0 + +# Background 3: Urgent task +rounded = 0 +border_width = 0 +border_sides = TBLR +border_content_tint_weight = 0 +background_content_tint_weight = 0 +background_color = #ff6c6b 60 +border_color = #d98282 0 +background_color_hover = #ff6c6b 60 +border_color_hover = #d98282 0 +background_color_pressed = #ff6c6b 60 +border_color_pressed = #d98282 0 + +# Background 4: Default task, Executor +rounded = 0 +border_width = 0 +border_sides = TBLR +border_content_tint_weight = 0 +background_content_tint_weight = 0 +background_color = #262a2b 100 +border_color = #242424 0 +background_color_hover = #242424 60 +border_color_hover = #242424 0 +background_color_pressed = #242424 60 +border_color_pressed = #242424 0 + +# Background 5: Iconified task +rounded = 0 +border_width = 0 +border_sides = TBLR +border_content_tint_weight = 0 +background_content_tint_weight = 0 +background_color = #252525 60 +border_color = #252525 0 +background_color_hover = #252525 60 +border_color_hover = #252525 0 +background_color_pressed = #252525 60 +border_color_pressed = #252525 0 + +#------------------------------------- +# Panel +panel_items = TESEC +panel_size = 100% 24 +panel_margin = 0 0 +panel_padding = 0 0 0 +panel_background_id = 0 +wm_menu = 1 +panel_dock = 0 +panel_pivot_struts = 0 +panel_position = top center horizontal +panel_layer = top +panel_monitor = all +panel_shrink = 0 +autohide = 0 +autohide_show_timeout = 0.3 +autohide_hide_timeout = 1.5 +autohide_height = 1 +strut_policy = follow_size +panel_window_name = tint2 +disable_transparency = 0 +mouse_effects = 0 +font_shadow = 0 +mouse_hover_icon_asb = 100 0 10 +mouse_pressed_icon_asb = 100 0 0 +scale_relative_to_dpi = 0 +scale_relative_to_screen_height = 0 + +#------------------------------------- +# Taskbar +taskbar_mode = single_desktop +taskbar_hide_if_empty = 0 +taskbar_padding = 0 0 0 +taskbar_background_id = 0 +taskbar_active_background_id = 1 +taskbar_name = 0 +taskbar_hide_inactive_tasks = 0 +taskbar_hide_different_monitor = 0 +taskbar_hide_different_desktop = 0 +taskbar_always_show_all_desktop_tasks = 0 +taskbar_name_padding = 0 0 +taskbar_name_background_id = 0 +taskbar_name_active_background_id = 0 +taskbar_name_font = Droid Sans Bold 8 +taskbar_name_font_color = #d1d1d1 100 +taskbar_name_active_font_color = #aaaaaa 100 +taskbar_distribute_size = 0 +taskbar_sort_order = none +task_align = left + +#------------------------------------- +# Task +task_text = 1 +task_icon = 0 +task_centered = 1 +urgent_nb_of_blink = 20 +task_maximum_size = 180 0 +task_padding = 8 6 8 +task_font = Droid Sans Bold 8 +task_tooltip = 1 +task_thumbnail = 0 +task_thumbnail_size = 210 +task_font_color = #cccccc 100 +task_active_font_color = #ffffff 100 +task_urgent_font_color = #cccccc 100 +task_iconified_font_color = #cccccc 80 +task_icon_asb = 100 0 0 +task_active_icon_asb = 100 0 0 +task_urgent_icon_asb = 100 0 0 +task_iconified_icon_asb = 80 0 0 +task_background_id = 4 +task_active_background_id = 2 +task_urgent_background_id = 3 +task_iconified_background_id = 5 +mouse_left = toggle_iconify +mouse_middle = close +mouse_right = none +mouse_scroll_up = none +mouse_scroll_down = none + +#------------------------------------- +# System tray (notification area) +systray_padding = 8 0 12 +systray_background_id = 1 +systray_sort = right2left +systray_icon_size = 18 +systray_icon_asb = 100 0 0 +systray_monitor = 1 +systray_name_filter = + +#------------------------------------- +# Launcher +launcher_padding = 8 0 16 +launcher_background_id = 1 +launcher_icon_background_id = 0 +launcher_icon_size = 16 +launcher_icon_asb = 100 0 0 +launcher_icon_theme_override = 0 +startup_notifications = 0 +launcher_tooltip = 0 +launcher_item_app = /usr/share/applications/google-chrome.desktop +launcher_item_app = /usr/share/applications/kitty.desktop +launcher_item_app = ~/.local/share/applications/todoist.desktop +launcher_item_app = /usr/share/applications/visual-studio-code.desktop + +#------------------------------------- +# Clock +time1_format = %H:%M +time2_format = +time1_font = Droid Sans Bold 8 +time1_timezone = +time2_timezone = +clock_font_color = #d1d1d1 100 +clock_padding = 8 4 +clock_background_id = 1 +clock_tooltip = +clock_tooltip_timezone = +clock_lclick_command = gsimplecal +clock_rclick_command = gsimplecal +clock_mclick_command = +clock_uwheel_command = +clock_dwheel_command = + +#------------------------------------- +# Battery +battery_tooltip = 1 +battery_low_status = 25 +battery_low_cmd = notify-send "battery low" +battery_full_cmd = +bat1_font = Droid Sans Bold 8 +bat2_font = Droid Sans Bold 8 +battery_font_color = #d1d1d1 100 +bat1_format = +bat2_format = +battery_padding = 2 0 +battery_background_id = 1 +battery_hide = 96 +battery_lclick_command = +battery_rclick_command = +battery_mclick_command = +battery_uwheel_command = +battery_dwheel_command = +ac_connected_cmd = +ac_disconnected_cmd = + +#------------------------------------- +# Executor 1 +execp = new +execp_command = $HOME/.script/volume percent +execp_interval = 1 +execp_has_icon = 0 +execp_cache_icon = 1 +execp_continuous = 0 +execp_markup = 1 +execp_lclick_command = $HOME/.script/volume mute +execp_rclick_command = +execp_mclick_command = +execp_uwheel_command = $HOME/.script/volume up +execp_dwheel_command = $HOME/.script/volume down +execp_font = Droid Sans Bold 8 +execp_font_color = #d1d1d1 100 +execp_padding = 8 0 +execp_background_id = 4 +execp_centered = 0 +execp_icon_w = 0 +execp_icon_h = 0 + +#------------------------------------- +# Executor 2 +execp = new +execp_command = $HOME/.script/wifi-signal +execp_interval = 5 +execp_has_icon = 0 +execp_cache_icon = 1 +execp_continuous = 0 +execp_markup = 1 +execp_lclick_command = +execp_rclick_command = +execp_mclick_command = +execp_uwheel_command = +execp_dwheel_command = +execp_font = Droid Sans Bold 8 +execp_font_color = #d1d1d1 100 +execp_padding = 8 0 +execp_background_id = 4 +execp_centered = 0 +execp_icon_w = 0 +execp_icon_h = 0 + +#------------------------------------- +# Tooltip +tooltip_show_timeout = 1 +tooltip_hide_timeout = 0 +tooltip_padding = 6 6 +tooltip_background_id = 1 +tooltip_font_color = #d1d1d1 100 +tooltip_font = Droid Sans Bold 8 + diff --git a/config/ranger/plugins/archive.py b/config/ranger/plugins/archive.py deleted file mode 100644 index 7ef41bf..0000000 --- a/config/ranger/plugins/archive.py +++ /dev/null @@ -1,100 +0,0 @@ -from ranger.api.commands import * -from ranger.core.loader import CommandLoader -import os - - -class compress(Command): - def execute(self): - cwd = self.fm.thisdir - marked_files = cwd.get_selection() - - if not marked_files: return - - def refresh(_): - cwd = self.fm.get_directory(original_path) - cwd.load_content() - - original_path = cwd.path - - parts = self.line.strip().split() - if len(parts) > 1: au_flags = [' '.join(parts[1:])] - else: au_flags = [os.path.basename(self.fm.thisdir.path) + '.zip'] - - files_num = len(marked_files) - files_num_str = str(files_num) + ' objects' if files_num > 1 else '1 object' - descr = "Compressing " + files_num_str + " -> " + os.path.basename(au_flags[0]) - - obj = CommandLoader(args=['apack'] + au_flags + [os.path.relpath(f.path, cwd.path) for f in marked_files], descr=descr, read=True) - - obj.signal_bind('after', refresh) - self.fm.loader.add(obj) - - def tab(self, tabnum): - extension = ['.zip', '.tar.gz', '.rar', '.7z'] - return ['compress ' + os.path.basename(self.fm.thisdir.path) + ext for ext in extension] - - -class extract(Command): - def execute(self): - cwd = self.fm.thisdir - copied_files = cwd.get_selection() - - if not copied_files: return - - def refresh(_): - cwd = self.fm.get_directory(original_path) - cwd.load_content() - - one_file = copied_files[0] - cwd = self.fm.thisdir - original_path = cwd.path - - line_args = self.line.split()[1:] - if line_args: - extraction_dir = os.path.join(cwd.path, "".join(line_args)) - os.makedirs(extraction_dir, exist_ok=True) - flags = ['-X', extraction_dir] - flags += ['-e'] - else: - flags = ['-X', cwd.path] - flags += ['-e'] - - self.fm.copy_buffer.clear() - self.fm.cut_buffer = False - - if len(copied_files) == 1: descr = "Extracting: " + os.path.basename(one_file.path) - else: descr = "Extracting files from: " + os.path.basename(one_file.dirname) - obj = CommandLoader(args=['aunpack'] + flags + [f.path for f in copied_files], descr=descr, read=True) - - obj.signal_bind('after', refresh) - self.fm.loader.add(obj) - -class extract_to_dirs(Command): - def execute(self): - cwd = self.fm.thisdir - original_path = cwd.path - copied_files = cwd.get_selection() - - if not copied_files: return - - def refresh(_): - cwd = self.fm.get_directory(original_path) - cwd.load_content() - - def make_flags(fn): - flags = ['-D'] - return flags - - one_file = copied_files[0] - self.fm.copy_buffer.clear() - self.fm.cut_buffer = False - - if len(copied_files) == 1: descr = "Extracting: " + os.path.basename(one_file.path) - else: descr = "Extracting files from: " + os.path.basename(one_file.dirname) - - for f in copied_files: - obj = CommandLoader(args=['aunpack'] + make_flags(f.path) + [f.path], descr=descr, read=True) - obj.signal_bind('after', refresh) - self.fm.loader.add(obj) - - diff --git a/config/ranger/plugins/devicons.py b/config/ranger/plugins/devicons.py deleted file mode 100644 index 251afa7..0000000 --- a/config/ranger/plugins/devicons.py +++ /dev/null @@ -1,323 +0,0 @@ -#!/usr/bin/python -import ranger.api -from ranger.core.linemode import LinemodeBase -from .devicons import * -import re -import os - - -@ranger.api.register_linemode -class DevIconsLinemode(LinemodeBase): - name = "devicons" - uses_metadata = False - def filetitle(self, file, metadata): - return devicon(file) + ' ' + file.relative_path - -@ranger.api.register_linemode -class DevIconsLinemodeFile(LinemodeBase): - name = "filename" - def filetitle(self, file, metadata): - return devicon(file) + ' ' + file.relative_path - -file_node_extensions = { - '7z' : '', - 'a' : '', - 'ai' : '', - 'apk' : '', - 'asm' : '', - 'asp' : '', - 'aup' : '', - 'avi' : '', - 'awk' : '', - 'bash' : '', - 'bat' : '', - 'bmp' : '', - 'bz2' : '', - 'c' : '', - 'c++' : '', - 'cab' : '', - 'cbr' : '', - 'cbz' : '', - 'cc' : '', - 'class' : '', - 'clj' : '', - 'cljc' : '', - 'cljs' : '', - 'cmake' : '', - 'coffee' : '', - 'conf' : '', - 'cp' : '', - 'cpio' : '', - 'cpp' : '', - 'cs' : '', - 'csh' : '', - 'css' : '', - 'cue' : '', - 'cvs' : '', - 'cxx' : '', - 'd' : '', - 'dart' : '', - 'db' : '', - 'deb' : '', - 'diff' : '', - 'dll' : '', - 'doc' : '', - 'docx' : '', - 'dump' : '', - 'edn' : '', - 'eex' : '', - 'efi' : '', - 'ejs' : '', - 'elf' : '', - 'elm' : '', - 'epub' : '', - 'erl' : '', - 'ex' : '', - 'exe' : '', - 'exs' : '', - 'f#' : '', - 'fifo' : '|', - 'fish' : '', - 'flac' : '', - 'flv' : '', - 'fs' : '', - 'fsi' : '', - 'fsscript' : '', - 'fsx' : '', - 'gem' : '', - 'gemspec' : '', - 'gif' : '', - 'go' : '', - 'gz' : '', - 'gzip' : '', - 'h' : '', - 'haml' : '', - 'hbs' : '', - 'hh' : '', - 'hpp' : '', - 'hrl' : '', - 'hs' : '', - 'htaccess' : '', - 'htm' : '', - 'html' : '', - 'htpasswd' : '', - 'hxx' : '', - 'ico' : '', - 'img' : '', - 'ini' : '', - 'iso' : '', - 'jar' : '', - 'java' : '', - 'jl' : '', - 'jpeg' : '', - 'jpg' : '', - 'js' : '', - 'json' : '', - 'jsx' : '', - 'key' : '', - 'ksh' : '', - 'leex' : '', - 'less' : '', - 'lha' : '', - 'lhs' : '', - 'log' : '', - 'lua' : '', - 'lzh' : '', - 'lzma' : '', - 'm4a' : '', - 'm4v' : '', - 'markdown' : '', - 'md' : '', - 'mdx' : '', - 'mjs' : '', - 'mkv' : '', - 'ml' : 'λ', - 'mli' : 'λ', - 'mov' : '', - 'mp3' : '', - 'mp4' : '', - 'mpeg' : '', - 'mpg' : '', - 'msi' : '', - 'mustache' : '', - 'nix' : '', - 'o' : '', - 'ogg' : '', - 'pdf' : '', - 'php' : '', - 'pl' : '', - 'pm' : '', - 'png' : '', - 'pp' : '', - 'ppt' : '', - 'pptx' : '', - 'ps1' : '', - 'psb' : '', - 'psd' : '', - 'pub' : '', - 'py' : '', - 'pyc' : '', - 'pyd' : '', - 'pyo' : '', - 'r' : 'ﳒ', - 'rake' : '', - 'rar' : '', - 'rb' : '', - 'rc' : '', - 'rlib' : '', - 'rmd' : '', - 'rom' : '', - 'rpm' : '', - 'rproj' : '鉶', - 'rs' : '', - 'rss' : '', - 'rtf' : '', - 's' : '', - 'sass' : '', - 'scala' : '', - 'scss' : '', - 'sh' : '', - 'slim' : '', - 'sln' : '', - 'so' : '', - 'sql' : '', - 'styl' : '', - 'suo' : '', - 'swift' : '', - 't' : '', - 'tar' : '', - 'tex' : 'ﭨ', - 'tgz' : '', - 'toml' : '', - 'ts' : '', - 'tsx' : '', - 'twig' : '', - 'vim' : '', - 'vimrc' : '', - 'vue' : '﵂', - 'wav' : '', - 'webm' : '', - 'webmanifest' : '', - 'webp' : '', - 'xbps' : '', - 'xcplayground' : '', - 'xhtml' : '', - 'xls' : '', - 'xlsx' : '', - 'xml' : '', - 'xul' : '', - 'xz' : '', - 'yaml' : '', - 'yml' : '', - 'zip' : '', - 'zsh' : '', -} - -dir_node_exact_matches = { - '.git' : '', - 'Desktop' : '', - 'Documents' : '', - 'Downloads' : '', - 'Dotfiles' : '', - 'Dropbox' : '', - 'Music' : '', - 'Pictures' : '', - 'Public' : '', - 'Templates' : '', - 'Videos' : '', -} - -file_node_exact_matches = { - '.bash_aliases' : '', - '.bash_history' : '', - '.bash_logout' : '', - '.bash_profile' : '', - '.bashprofile' : '', - '.bashrc' : '', - '.dmrc' : '', - '.DS_Store' : '', - '.fasd' : '', - '.fehbg' : '', - '.gitattributes' : '', - '.gitconfig' : '', - '.gitignore' : '', - '.gitlab-ci.yml' : '', - '.gvimrc' : '', - '.inputrc' : '', - '.jack-settings' : '', - '.mime.types' : '', - '.ncmpcpp' : '', - '.nvidia-settings-rc' : '', - '.pam_environment' : '', - '.profile' : '', - '.recently-used' : '', - '.selected_editor' : '', - '.vim' : '', - '.viminfo' : '', - '.vimrc' : '', - '.Xauthority' : '', - '.Xdefaults' : '', - '.xinitrc' : '', - '.xinputrc' : '', - '.Xresources' : '', - '.zshrc' : '', - '_gvimrc' : '', - '_vimrc' : '', - 'a.out' : '', - 'authorized_keys' : '', - 'bspwmrc' : '', - 'cmakelists.txt' : '', - 'config' : '', - 'config.ac' : '', - 'config.m4' : '', - 'config.mk' : '', - 'config.ru' : '', - 'configure' : '', - 'docker-compose.yml' : '', - 'dockerfile' : '', - 'Dockerfile' : '', - 'dropbox' : '', - 'exact-match-case-sensitive-1.txt' : 'X1', - 'exact-match-case-sensitive-2' : 'X2', - 'favicon.ico' : '', - 'gemfile' : '', - 'gruntfile.coffee' : '', - 'gruntfile.js' : '', - 'gruntfile.ls' : '', - 'gulpfile.coffee' : '', - 'gulpfile.js' : '', - 'gulpfile.ls' : '', - 'ini' : '', - 'known_hosts' : '', - 'ledger' : '', - 'license' : '', - 'LICENSE' : '', - 'LICENSE.md' : '', - 'LICENSE.txt' : '', - 'Makefile' : '', - 'makefile' : '', - 'Makefile.ac' : '', - 'Makefile.in' : '', - 'mimeapps.list' : '', - 'mix.lock' : '', - 'node_modules' : '', - 'package-lock.json' : '', - 'package.json' : '', - 'playlists' : '', - 'procfile' : '', - 'Rakefile' : '', - 'rakefile' : '', - 'react.jsx' : '', - 'README' : '', - 'README.markdown' : '', - 'README.md' : '', - 'README.rst' : '', - 'README.txt' : '', - 'sxhkdrc' : '', - 'user-dirs.dirs' : '', - 'webpack.config.js' : '', -} - -def devicon(file): - if file.is_directory: return dir_node_exact_matches.get(file.relative_path, '') - return file_node_exact_matches.get(os.path.basename(file.relative_path), file_node_extensions.get(file.extension, '')) diff --git a/config/ranger/plugins/git.py b/config/ranger/plugins/git.py deleted file mode 100644 index 80589e0..0000000 --- a/config/ranger/plugins/git.py +++ /dev/null @@ -1,111 +0,0 @@ -import subprocess -from ranger.api.commands import Command - - -class git(Command): - - commands = 'init status clone add rm restore commit remote push'.split() - - - def execute(self): - # empty - if not self.arg(1): - return self.fm.notify("For commands check \"git help\"") - - # help - if self.arg(1) == "help": - return self.fm.notify("Not done yet!", bad=True) - - # init - if self.arg(1) == self.commands[0]: - subprocess.run(["git", "init", "--quiet"]) - return self.fm.notify("Repository initialized successefully") - - # status - if self.arg(1) == self.commands[1]: - output = subprocess.check_output(["git", "status"]).decode() - - with open('/tmp/gitplug-status', 'w') as out: - out.write(output) - - return self.fm.edit_file('/tmp/gitplug-status') - - # clone - if self.arg(1) == self.commands[2]: - if not self.arg(2): - return self.fm.notify("Missing url!", bad=True) - - if self.arg(2): - subprocess.run(["git", "clone", self.arg(2), "--quiet"]) - return self.fm.notify("Repository successfully cloned!") - - # add - if self.arg(1) == self.commands[3]: - if not self.arg(2): - return self.fm.notify("Missing arguments! Usage :git add ", bad=True) - - if self.arg(2): - subprocess.run(["git", "add", self.arg(2)]) - return self.fm.notify("Successfully added files to branch!") - - #rm - if self.arg(1) == self.commands[4]: - if not self.arg(2): - return self.fm.notify("Missing arguments! Usage :git rm ", bad=True) - - if self.arg(2): - subprocess.run(["git", "rm", self.arg(2)]) - return self.fm.notify("Successfully removed files from branch!") - - # restore - if self.arg(1) == self.commands[5]: - if not self.arg(2): - return self.fm.notify("Missing arguments! Usage :git restore ", bad=True) - - if self.arg(2): - subprocess.run(["git", "restore", "--staged", self.arg(2), "--quiet"]) - return self.fm.notify("Successfully restored files!") - - # commit - if self.arg(1) == self.commands[6]: - if not self.rest(2): - return self.fm.notify("Missing commit text", bad=True) - - if self.rest(2): - subprocess.run(["git", "commit", "-m", self.rest(2), "--quiet"]) - return self.fm.notify("Successfully commited!") - - # remote - if self.arg(1) == self.commands[7]: - if not self.arg(2): - return self.fm.notify("Missing arguments! Use: git remote add/rm ", bad=True) - - if self.arg(2) == "add": - if not self.arg(3): - return self.fm.notify("Missing name and url!", bad=True) - - if self.arg(3): - if not self.arg(4): - return self.fm.notify("Missing url!", bad=True) - - if self.arg(4): - subprocess.run(["git", "remote", "add", self.arg(3), self.arg(4)]) - return self.fm.notify("Remote successfully added!") - - if self.arg(2) == "rm": - if not self.arg(3): - return self.fm.notify("Missing name!", bad=True) - - if self.arg(3): - subprocess.run(["git", "remote", "rm", self.arg(3)]) - return self.fm.notify("Remote successfully removed") - - # push - if self.arg(1) == self.commands[8]: - if self.arg(2) == "-u" and self.arg(3) and self.arg(4): - subprocess.run(["git", "push", "--quiet", "-u", self.arg(3), self.arg(4)]) - return self.fm.notify("Repository successfully pushed") - - if not self.arg(2): - subprocess.run(["git", "push", "--quiet"]) - return self.fm.notify("Repository successfully pushed") diff --git a/vscode/settings.json b/vscode/settings.json index 6e0c132..09d781e 100644 --- a/vscode/settings.json +++ b/vscode/settings.json @@ -1,6 +1,6 @@ { // Apperence - "workbench.colorTheme": "Ayu Dark", + "workbench.colorTheme": "Ayu Dark Bordered", "workbench.iconTheme": "ayu", "editor.fontFamily": "Jetbrain Mono, Droid Sans Mono, monospace", "editor.wordWrap": "off", @@ -118,5 +118,567 @@ "editor.minimap.enabled": false, "tabnine.experimentalAutoImports": true, "git.confirmSync": false, + "workbench.colorCustomizations": { + "[generated-dark]": { + "focusBorder": "#008dcd", + "foreground": "#dfdfdf", + "widget.shadow": "#0e1010", + "selection.background": "#008dcd80", + "errorForeground": "#F07171", + "textLink.foreground": "#c678dd", + "textLink.activeForeground": "#008dcd", + "textPreformat.foreground": "#51afef", + "textSeparator.foreground": "#0f1112", + "button.background": "#c678dd", + "button.foreground": "#000000", + "button.hoverBackground": "#a463b7", + "checkbox.background": "#313638", + "dropdown.background": "#313638", + "dropdown.border": "#3a4042", + "input.background": "#313638", + "input.border": "#3a4042", + "inputValidation.errorBackground": "#F0717190", + "inputValidation.errorBorder": "#F07171", + "inputValidation.errorForeground": "#000000", + "inputValidation.infoBackground": "#399EE690", + "inputValidation.infoBorder": "#399EE6", + "inputValidation.infoForeground": "#000000", + "inputValidation.warningBackground": "#EF7C2A90", + "inputValidation.warningBorder": "#EF7C2A", + "inputValidation.warningForeground": "#000000", + "scrollbar.shadow": "#0e1010", + "scrollbarSlider.background": "#6a757750", + "scrollbarSlider.hoverBackground": "#808e9140", + "scrollbarSlider.activeBackground": "#535c5e40", + "badge.background": "#51afef", + "badge.foreground": "#000000", + "progressBar.background": "#008dcd", + "list.activeSelectionBackground": "#008dcd20", + "list.focusBackground": "#008dcd30", + "list.highlightForeground": "#51afef", + "list.hoverBackground": "#323739", + "list.inactiveSelectionBackground": "#008dcd25", + "list.errorForeground": "#F07171", + "list.warningForeground": "#EF7C2A", + "activityBar.background": "#1b1e1e", + "activityBar.inactiveForeground": "#acacac", + "activityBar.dropBorder": "#008dcd", + "activityBarBadge.background": "#51afef", + "activityBarBadge.foreground": "#000000", + "activityBar.activeBorder": "#008dcd", + "activityBar.activeBackground": "#008dcd13", + "activityBar.activeFocusBorder": "#008dcd", + "sideBar.background": "#202425", + "sideBarSectionHeader.background": "#2b3032", + "minimap.selectionHighlight": "#008dcd80", + "minimap.errorHighlight": "#F07171", + "minimap.warningHighlight": "#EF7C2A", + "minimapGutter.addedBackground": "#ecbe7b", + "minimapGutter.deletedBackground": "#F07171", + "minimapGutter.modifiedBackground": "#399EE6", + "editorGroup.border": "#1b1e1e", + "editorGroup.dropBackground": "#008dcd30", + "editorGroupHeader.noTabsBackground": "#313638", + "editorGroupHeader.tabsBackground": "#313638", + "tab.activeBackground": "#262a2b", + "tab.border": "#3d4345", + "tab.activeBorder": "#008dcd", + "tab.lastPinnedBorder": "#008dcd50", + "tab.inactiveBackground": "#313638", + "tab.hoverBackground": "#3d4345", + "tab.activeModifiedBorder": "#399EE6", + "editorPane.background": "#1d2021", + "editor.background": "#262a2b", + "editor.foreground": "#dfdfdf", + "editorLineNumber.foreground": "#565f61", + "editorLineNumber.activeForeground": "#a3abad", + "editorCursor.background": "#ffffff", + "editorCursor.foreground": "#008dcd", + "editor.selectionBackground": "#008dcd30", + "editor.findMatchHighlightBackground": "#dfdfdf30", + "editor.findMatchBorder": "#008dcd", + "editor.lineHighlightBackground": "#313638", + "editorLink.activeForeground": "#008dcd", + "editorWhitespace.foreground": "#535c5e", + "editorIndentGuide.background": "#3d4345", + "editorIndentGuide.activeBackground": "#008dcd", + "editorRuler.foreground": "#3d4345", + "editorBracketMatch.border": "#00699a", + "editorBracketMatch.background": "#212526", + "editor.foldBackground": "#008dcd30", + "editorOverviewRuler.border": "#3d4345", + "editorOverviewRuler.selectionHighlightForeground": "#008dcd", + "editorOverviewRuler.modifiedForeground": "#399EE6", + "editorOverviewRuler.addedForeground": "#399EE6", + "editorOverviewRuler.deletedForeground": "#399EE6", + "editorOverviewRuler.errorForeground": "#F07171", + "editorOverviewRuler.warningForeground": "#EF7C2A", + "editorOverviewRuler.infoForeground": "#399EE6", + "editorOverviewRuler.bracketMatchForeground": "#008dcd", + "editorError.foreground": "#F07171", + "editorWarning.foreground": "#EF7C2A", + "editorInfo.foreground": "#399EE6", + "problemsErrorIcon.foreground": "#F07171", + "problemsWarningIcon.foreground": "#EF7C2A", + "problemsInfoIcon.foreground": "#399EE6", + "editorGutter.modifiedBackground": "#399EE6", + "editorGutter.addedBackground": "#ecbe7b", + "editorGutter.deletedBackground": "#F07171", + "diffEditor.insertedTextBackground": "#ecbe7b30", + "diffEditor.removedTextBackground": "#F0717135", + "editorWidget.background": "#262a2b", + "editorWidget.resizeBorder": "#3d4345", + "editorSuggestWidget.background": "#313638", + "editorSuggestWidget.border": "#3d4345", + "editorSuggestWidget.highlightForeground": "#51afef", + "editorHoverWidget.border": "#3d4345", + "editorMarkerNavigation.background": "#262a2b", + "editorMarkerNavigationError.background": "#F07171", + "editorMarkerNavigationWarning.background": "#EF7C2A", + "editorMarkerNavigationInfo.background": "#399EE6", + "peekViewResult.background": "#313638", + "peekViewTitle.background": "#1b1e1e", + "panel.dropBorder": "#008dcd", + "panelTitle.activeBorder": "#008dcd", + "statusBar.background": "#1b1e1e", + "statusBarItem.hoverBackground": "#323737", + "statusBarItem.prominentBackground": "#008dcd", + "statusBarItem.prominentForeground": "#ffffff", + "statusBarItem.prominentHoverBackground": "#007bb3", + "titleBar.activeBackground": "#313638", + "titleBar.inactiveBackground": "#262a2b", + "titleBar.border": "#353b3d", + "menu.background": "#262a2b", + "menu.foreground": "#dfdfdf", + "menu.selectionBackground": "#008dcdDD", + "menu.selectionForeground": "#ffffff", + "menu.separatorBackground": "#535c5e", + "notificationsErrorIcon.foreground": "#F07171", + "notificationsWarningIcon.foreground": "#EF7C2A", + "notificationsInfoIcon.foreground": "#399EE6", + "notifications.background": "#262a2b", + "extensionButton.prominentBackground": "#c678dd", + "extensionButton.prominentForeground": "#000000", + "extensionButton.prominentHoverBackground": "#985caa", + "pickerGroup.border": "#0f1112", + "pickerGroup.foreground": "#008dcd", + "terminal.selectionBackground": "#008dcd", + "terminalCursor.foreground": "#008dcd", + "terminalCursor.background": "#ffffff", + "gitDecoration.addedResourceForeground": "#ecbe7b", + "gitDecoration.modifiedResourceForeground": "#399EE6", + "gitDecoration.deletedResourceForeground": "#F07171", + "gitDecoration.stageDeletedResourceForeground": "#F07171", + "gitDecoration.stageModifiedResourceForeground": "#399EE6", + "settings.modifiedItemIndicator": "#399EE6", + "notebook.focusedRowBorder": "#008dcd" + } + }, + "editor.tokenColorCustomizations": { + "[generated-dark]": { + "textMateRules": [ + { + "scope": "invalid", + "settings": { + "foreground": "#F07171" + } + }, + { + "scope": [ + "meta.embedded", + "source.groovy.embedded", + "meta.template.expression" + ], + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": [ + "variable", + "support.variable.property.dom", + "support.variable.dom", + "support.variable.property", + "punctuation.separator.parameter", + "string.interpolated.pug variable" + ], + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": [ + "comment", + "punctuation.definition.comment" + ], + "settings": { + "foreground": "#758184" + } + }, + { + "scope": [ + "string", + "punctuation.definition.string" + ], + "settings": { + "foreground": "#2623ab" + } + }, + { + "scope": "constant.character.escape", + "settings": { + "foreground": "#c678dd" + } + }, + { + "scope": [ + "keyword", + "constant.language.import-export-all" + ], + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": [ + "entity.name.type", + "support.type.primitive", + "support.type.builtin", + "meta.type.annotation entity.name.type", + "meta.type.parameters entity.name.type" + ], + "settings": { + "foreground": "#98be65" + } + }, + { + "scope": [ + "keyword.control", + "keyword.operator", + "storage", + "support.type", + "keyword.operator.expression", + "keyword.operator.new" + ], + "settings": { + "foreground": "#c678dd" + } + }, + { + "scope": [ + "entity.name.function", + "support.class", + "support.function", + "new.expr entity.name.type", + "entity.other.inherited-class" + ], + "settings": { + "foreground": "#008dcd" + } + }, + { + "scope": [ + "punctuation.definition.typeparameters", + "keyword.operator.type", + "keyword.operator.optional", + "punctuation.definition.template-expression", + "source.tsx punctuation.section.embedded", + "source.jsx punctuation.section.embedded" + ], + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": "constant", + "settings": { + "foreground": "#98be65" + } + }, + { + "scope": [ + "constant.numeric", + "constant.language" + ], + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": [ + "variable.parameter", + "parameter.variable", + "meta.function.parameter variable", + "source.rust meta.type_params.rust" + ], + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": [ + "punctuation", + "meta.brace" + ], + "settings": { + "foreground": "#868686" + } + }, + { + "scope": "comment.block.documentation entity.name.type", + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": [ + "variable.language.this", + "variable.language.special.self" + ], + "settings": { + "foreground": "#c678dd" + } + }, + { + "scope": [ + "meta.tag.metadata.doctype entity.name.tag", + "meta.tag.metadata.doctype punctuation.definition.tag", + "meta.tag.metadata.doctype string", + "meta.tag.metadata.doctype entity.other.attribute-name.html", + "meta.tag.sgml.doctype" + ], + "settings": { + "foreground": "#868686" + } + }, + { + "scope": "entity.name.tag", + "settings": { + "foreground": "#c678dd" + } + }, + { + "scope": "meta.tag string", + "settings": { + "foreground": "#2623ab" + } + }, + { + "scope": "meta.attribute punctuation.definition.string", + "settings": { + "foreground": "#868686" + } + }, + { + "scope": [ + "meta.tag entity.other.attribute-name", + "entity.other.attribute-name.html" + ], + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": [ + "constant.character.entity", + "punctuation.definition.entity" + ], + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": [ + "entity.name.section.markdown", + "markup.heading.setext" + ], + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": "punctuation.definition.list", + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": "meta.separator.markdown", + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": "markup.inline.raw", + "settings": { + "foreground": "#c678dd" + } + }, + { + "scope": "markup.bold", + "settings": { + "fontStyle": "bold" + } + }, + { + "scope": "markup.italic", + "settings": { + "fontStyle": "italic" + } + }, + { + "scope": [ + "meta.link punctuation.definition.string", + "meta.image punctuation.definition.string" + ], + "settings": { + "foreground": "#868686" + } + }, + { + "scope": [ + "link", + "markup.underline.link", + "constant.other.reference.link.markdown" + ], + "settings": { + "foreground": "#008dcd" + } + }, + { + "scope": "markup.quote", + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": [ + "entity.name.tag.css", + "entity.name.tag.wildcard" + ], + "settings": { + "foreground": "#2623ab" + } + }, + { + "scope": [ + "entity.other.attribute-name.class", + "entity.other.attribute-name punctuation.definition.entity" + ], + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": [ + "entity.other.attribute-name.pseudo-element", + "entity.other.attribute-name.pseudo-class", + "constant.other.color" + ], + "settings": { + "foreground": "#c678dd" + } + }, + { + "scope": [ + "entity.other.attribute-name.id", + "entity.other.attribute-name.id punctuation.definition.entity" + ], + "settings": { + "foreground": "#008dcd" + } + }, + { + "scope": "source.css constant.numeric", + "settings": { + "foreground": "#2623ab" + } + }, + { + "scope": [ + "meta.property-name", + "support.type.property-name" + ], + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": [ + "meta.property-value", + "meta.property-value constant.other", + "support.constant.property-value" + ], + "settings": { + "foreground": "#008dcd" + } + }, + { + "scope": "variable.parameter.url", + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": "punctuation.definition.variable", + "settings": { + "foreground": "#dfdfdf" + } + }, + { + "scope": [ + "punctuation.section.embedded.begin.php", + "punctuation.section.embedded.end.php" + ], + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": "entity.name.section", + "settings": { + "foreground": "#008dcd" + } + }, + { + "scope": "support.type.property-name.json", + "settings": { + "foreground": "#51afef" + } + }, + { + "scope": "markup.inserted", + "settings": { + "foreground": "#ecbe7b" + } + }, + { + "scope": "markup.changed", + "settings": { + "foreground": "#399EE6" + } + }, + { + "scope": "markup.deleted", + "settings": { + "foreground": "#F07171" + } + }, + { + "scope": "meta.diff.header", + "settings": { + "foreground": "#399EE6", + "fontStyle": "italic" + } + }, + { + "scope": "meta.diff.range", + "settings": { + "foreground": "#c678dd" + } + } + ] + } + }, }