feat: 上传我的配置

This commit is contained in:
2026-02-06 17:17:48 +08:00
parent 5ae578a012
commit ac517ad717
126 changed files with 15159 additions and 0 deletions

2
.Xresources Normal file
View File

@@ -0,0 +1,2 @@
Xft.dpi: 144
Xcursor.size: 24

272
.config/btop/btop.conf Normal file
View File

@@ -0,0 +1,272 @@
#? Config file for btop v.1.4.6
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
color_theme = "/home/zhenyan121/.config/btop/themes/matugen.theme"
#* If the theme set background should be shown, set to False if you want terminal background transparency.
theme_background = true
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
truecolor = true
#* Set to true to force tty mode regardless if a real tty has been detected or not.
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
force_tty = false
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
#* Use whitespace " " as separator between different presets.
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
vim_keys = false
#* Rounded corners on boxes, is ignored if TTY mode is ON.
rounded_corners = true
#* Use terminal synchronized output sequences to reduce flickering on supported terminals.
terminal_sync = true
#* Default symbols to use for graph creation, "braille", "block" or "tty".
#* "braille" offers the highest resolution but might not be included in all fonts.
#* "block" has half the resolution of braille but uses more common characters.
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
graph_symbol = "braille"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_cpu = "default"
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
graph_symbol_gpu = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_mem = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_net = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_proc = "default"
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
shown_boxes = "cpu mem net proc"
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
update_ms = 2000
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
proc_sorting = "cpu lazy"
#* Reverse sorting order, True or False.
proc_reversed = false
#* Show processes as a tree.
proc_tree = false
#* Use the cpu graph colors in the process list.
proc_colors = true
#* Use a darkening gradient in the process list.
proc_gradient = true
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
proc_per_core = false
#* Show process memory as bytes instead of percent.
proc_mem_bytes = true
#* Show cpu graph for each process.
proc_cpu_graphs = true
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
proc_info_smaps = false
#* Show proc box on left side of screen instead of right.
proc_left = false
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = false
#* In tree-view, always accumulate child process resources in the parent process.
proc_aggregate = false
#* Should cpu and memory usage display be preserved for dead processes when paused.
keep_dead_proc_usage = false
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_upper = "Auto"
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_lower = "Auto"
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
show_gpu_info = "Auto"
#* Toggles if the lower CPU graph should be inverted.
cpu_invert_lower = true
#* Set to True to completely disable the lower CPU graph.
cpu_single_graph = false
#* Show cpu box at bottom of screen instead of top.
cpu_bottom = false
#* Shows the system uptime in the CPU box.
show_uptime = true
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
show_cpu_watts = true
#* Show cpu temperature.
check_temp = true
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
cpu_sensor = "Auto"
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
show_coretemp = true
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
#* Example: "4:0 5:1 6:3"
cpu_core_map = ""
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
temp_scale = "celsius"
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
base_10_sizes = false
#* Show CPU frequency.
show_cpu_freq = true
#* How to calculate CPU frequency, available values: "first", "range", "lowest", "highest" and "average".
freq_mode = "first"
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
clock_format = "%X"
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
background_update = true
#* Custom cpu model name, empty string to disable.
custom_cpu_name = ""
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
disks_filter = ""
#* Show graphs instead of meters for memory values.
mem_graphs = true
#* Show mem box below net box instead of above.
mem_below_net = false
#* Count ZFS ARC in cached and available memory.
zfs_arc_cached = true
#* If swap memory should be shown in memory box.
show_swap = true
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
swap_disk = true
#* If mem box should be split to also show disks info.
show_disks = true
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
only_physical = true
#* Read disks list from /etc/fstab. This also disables only_physical.
use_fstab = true
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
zfs_hide_datasets = false
#* Set to true to show available disk space for privileged users.
disk_free_priv = false
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
show_io_stat = true
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
io_mode = false
#* Set to True to show combined read/write io graphs in io mode.
io_graph_combined = false
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
#* Example: "/mnt/media:100 /:20 /boot:1".
io_graph_speeds = ""
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
net_download = 100
net_upload = 100
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
net_auto = true
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
net_sync = true
#* Starts with the Network Interface specified here.
net_iface = ""
#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes.
base_10_bitrate = "Auto"
#* Show battery stats in top right if battery is present.
show_battery = true
#* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "Auto"
#* Show power stats of battery next to charge indicator.
show_battery_watts = true
#* Set loglevel for "~/.local/state/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
log_level = "WARNING"
#* Automatically save current settings to config file on exit.
save_config_on_exit = true
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
nvml_measure_pcie_speeds = true
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
rsmi_measure_pcie_speeds = true
#* Horizontally mirror the GPU graph.
gpu_mirror_graph = true
#* Set which GPU vendors to show. Available values are "nvidia amd intel"
shown_gpus = "nvidia amd intel"
#* Custom gpu0 model name, empty string to disable.
custom_gpu_name0 = ""
#* Custom gpu1 model name, empty string to disable.
custom_gpu_name1 = ""
#* Custom gpu2 model name, empty string to disable.
custom_gpu_name2 = ""
#* Custom gpu3 model name, empty string to disable.
custom_gpu_name3 = ""
#* Custom gpu4 model name, empty string to disable.
custom_gpu_name4 = ""
#* Custom gpu5 model name, empty string to disable.
custom_gpu_name5 = ""

View File

@@ -0,0 +1,89 @@
# Matugen template for btop
# Colors should be in 6 or 2 character hexadecimal or single spaced rgb decimal: "#RRGGBB", "#BW" or "0-255 0-255 0-255"
# example for white: "#ffffff", "#ff" or "255 255 255".
# All graphs and meters can be gradients
# For single color graphs leave "mid" and "end" variable empty.
# Use "start" and "end" variables for two color gradient
# Use "start", "mid" and "end" for three color gradient
# Main background, empty for terminal default, need to be empty if you want transparent background
theme[main_bg]=""
# Main text color
theme[main_fg]="#e9e2d4"
# Title color for boxes
theme[title]="#dcc66e"
# Highlight color for keyboard shortcuts
theme[hi_fg]="#d1c6a1"
# Background color of selected item in processes box
theme[selected_bg]="#dcc66e"
# Foreground color of selected item in processes box
theme[selected_fg]="#3a3000"
# Color of inactive/disabled text
theme[inactive_fg]="#cdc6b4"
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
theme[proc_misc]="#aad0b3"
# Cpu box outline color
theme[cpu_box]="#969080"
# Memory/disks box outline color
theme[mem_box]="#969080"
# Net up/down box outline color
theme[net_box]="#969080"
# Processes box outline color
theme[proc_box]="#969080"
# Box divider line and small boxes line color
theme[div_line]="#4b4739"
# Temperature graph colors
theme[temp_start]="#d1c6a1"
theme[temp_mid]="#dcc66e"
theme[temp_end]="#ffb4ab"
# CPU graph colors
theme[cpu_start]="#d1c6a1"
theme[cpu_mid]="#dcc66e"
theme[cpu_end]="#ffb4ab"
# Mem/Disk free meter
theme[free_start]="#d1c6a1"
theme[free_mid]=""
theme[free_end]="#4e472a"
# Mem/Disk cached meter
theme[cached_start]="#aad0b3"
theme[cached_mid]=""
theme[cached_end]="#2c4e38"
# Mem/Disk available meter
theme[available_start]="#dcc66e"
theme[available_mid]=""
theme[available_end]="#534600"
# Mem/Disk used meter
theme[used_start]="#ffb4ab"
theme[used_mid]=""
theme[used_end]="#93000a"
# Download graph colors
theme[download_start]="#d1c6a1"
theme[download_mid]="#dcc66e"
theme[download_end]="#aad0b3"
# Upload graph colors
theme[upload_start]="#d1c6a1"
theme[upload_mid]="#dcc66e"
theme[upload_end]="#aad0b3"

321
.config/cava/config Normal file
View File

@@ -0,0 +1,321 @@
## Configuration file for CAVA.
# Remove the ; to change parameters.
[general]
# Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0
; mode = normal
# Accepts only non-negative values.
; framerate = 60
# 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off
# new as of 0.6.0 autosens of low values (dynamic range)
# 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0
; autosens = 1
; overshoot = 20
# Manual sensitivity in %. If autosens is enabled, this will only be the initial value.
# 200 means double height. Accepts only non-negative values.
; sensitivity = 100
# The number of bars (0-512). 0 sets it to auto (fill up console).
# Bars' width and space between bars in number of characters.
; bars = 0
; bar_width = 2
; bar_spacing = 1
# bar_height is only used for output in "noritake" format
; bar_height = 32
# For SDL width and space between bars is in pixels, defaults are:
; bar_width = 20
; bar_spacing = 5
# sdl_glsl have these default values, they are only used to calculate max number of bars.
; bar_width = 1
; bar_spacing = 0
# ceter bars in terminal, if there is space.
; center_align = 1
# max height of bars in terminal, in percent of terminal height.
; max_height = 100
# Lower and higher cutoff frequencies for lowest and highest bars
# the bandwidth of the visualizer.
# Note: there is a minimum total bandwidth of 43Mhz x number of bars.
# Cava will automatically increase the higher cutoff if a too low band is specified.
; lower_cutoff_freq = 50
; higher_cutoff_freq = 10000
# Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and
# only check for input once per second. Cava will wake up once input is detected. 0 = disable.
; sleep_timer = 0
[input]
# Audio capturing method. Possible methods are: 'fifo', 'portaudio', 'pipewire', 'alsa', 'pulse', 'sndio', 'oss', 'jack' or 'shmem'
# Defaults to 'oss', 'pipewire', 'sndio', 'jack', 'pulse', 'alsa', 'portaudio' or 'fifo', in that order, dependent on what support cava was built with.
# On Mac it defaults to 'portaudio' or 'fifo'
# On windows this is automatic and no input settings are needed.
#
# All input methods uses the same config variable 'source'
# to define where it should get the audio.
#
# For pulseaudio and pipewire 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink
# (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them).
#
# For pipewire 'source' will be the object name or object.serial of the device to capture from.
# Both input and output devices are supported. To capture the monitor source of a sink node, append '.monitor' to the sink's object name.
#
# For alsa 'source' will be the capture device.
# For fifo 'source' will be the path to fifo-file.
# For shmem 'source' will be /squeezelite-AA:BB:CC:DD:EE:FF where 'AA:BB:CC:DD:EE:FF' will be squeezelite's MAC address
#
# For sndio 'source' will be a raw recording audio descriptor or a monitoring sub-device, e.g. 'rsnd/2' or 'snd/1'. Default: 'default'.
# README.md contains further information on how to setup CAVA for sndio.
#
# For oss 'source' will be the path to a audio device, e.g. '/dev/dsp2'. Default: '/dev/dsp', i.e. the default audio device.
# README.md contains further information on how to setup CAVA for OSS on FreeBSD.
#
# For jack 'source' will be the name of the JACK server to connect to, e.g. 'foobar'. Default: 'default'.
# README.md contains further information on how to setup CAVA for JACK.
#
; method = pulse
; source = auto
; method = pipewire
; source = auto
; method = alsa
; source = hw:Loopback,1
; method = fifo
; source = /tmp/mpd.fifo
; method = shmem
; source = /squeezelite-AA:BB:CC:DD:EE:FF
; method = portaudio
; source = auto
; method = sndio
; source = default
; method = oss
; source = /dev/dsp
; method = jack
; source = default
# The options 'sample_rate', 'sample_bits', 'channels' and 'autoconnect' can be configured for some input methods:
# sample_rate: fifo, pipewire, sndio, oss
# sample_bits: fifo, pipewire, sndio, oss
# channels: sndio, oss, jack
# autoconnect: jack
# Other methods ignore these settings.
# For pipewire, sample_rate will default to 48000, for all other input methods, sample_rate will default to 44100.
#
# For 'sndio' and 'oss' they are only preferred values, i.e. if the values are not supported
# by the chosen audio device, the device will use other supported values instead.
# Example: 48000, 32 and 2, but the device only supports 44100, 16 and 1, then it
# will use 44100, 16 and 1.
#
#
# The 'pipewire' input method has three options to control linking and mixing:
# active: Force the node to always process. Useful for monitoring sources when no other application is active.
# remix: Allow pipewire to remix audio channels to match cava's channel count. Useful for surround sound.
# virtual: Set the node to virtual, to avoid recording notifications from the DE.
#
; sample_rate = 44100
; sample_bits = 16
; channels = 2
; autoconnect = 2
; active = 0
; remix = 1
; virtual = 1
[output]
# Output method. Can be 'ncurses', 'noncurses', 'raw', 'noritake', 'sdl'
# or 'sdl_glsl'.
# 'noncurses' (default) uses a buffer and cursor movements to only print
# changes from frame to frame in the terminal. Uses less resources and is less
# prone to tearing (vsync issues) than 'ncurses'.
#
# 'raw' is an 8 or 16 bit (configurable via the 'bit_format' option) data
# stream of the bar heights that can be used to send to other applications.
# 'raw' defaults to 1024 bars stereo (512 bars mono), which can be adjusted in the 'bars' option above.
#
# 'noritake' outputs a bitmap in the format expected by a Noritake VFD display
# in graphic mode. It only support the 3000 series graphical VFDs for now.
#
# 'sdl' uses the Simple DirectMedia Layer to render in a graphical context.
# 'sdl_glsl' uses SDL to create an OpenGL context. Write your own shaders or
# use one of the predefined ones.
; method = noncurses
# Orientation of the visualization. Can be 'bottom', 'top', 'left', 'right' or
# 'horizontal'. Default is 'bottom'. 'left and 'right' are only supported on sdl
# and ncruses output. 'horizontal' (bars go up and down from center) is only supported
# on noncurses output.
# Note: many fonts have weird or missing glyphs for characters used in orientations
# other than 'bottom', which can make output not look right.
; orientation = bottom
# Visual channels. Can be 'stereo' or 'mono'.
# 'stereo' mirrors both channels with low frequencies in center.
# 'mono' outputs left to right lowest to highest frequencies.
# 'mono_option' set mono to either take input from 'left', 'right' or 'average'.
# set 'reverse' to 1 to display frequencies the other way around.
; channels = stereo
; mono_option = average
; reverse = 0
# Raw output target.
# On Linux, a fifo will be created if target does not exist.
# On Windows, a named pipe will be created if target does not exist.
; raw_target = /dev/stdout
# Raw data format. Can be 'binary' or 'ascii'.
; data_format = binary
# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530).
; bit_format = 16bit
# Ascii max value. In 'ascii' mode range will run from 0 to value specified here
; ascii_max_range = 1000
# Ascii delimiters. In ascii format each bar and frame is separated by a delimiters.
# Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)).
; bar_delimiter = 59
; frame_delimiter = 10
# sdl window size and position. -1,-1 is centered.
; sdl_width = 1024
; sdl_height = 512
; sdl_x = -1
; sdl_y= -1
; sdl_full_screen = 0
# set label on bars on the x-axis. Can be 'frequency' or 'none'. Default: 'none'
# 'frequency' displays the lower cut off frequency of the bar above.
# Only supported on ncurses and noncurses output.
; xaxis = none
# enable synchronized sync. 1 = on, 0 = off
# removes flickering in alacritty terminal emulator.
# defaults to off since the behaviour in other terminal emulators is unknown
; synchronized_sync = 0
# Shaders for sdl_glsl, located in $HOME/.config/cava/shaders
; vertex_shader = pass_through.vert
; fragment_shader = bar_spectrum.frag
; for glsl output mode, keep rendering even if no audio
; continuous_rendering = 0
# disable console blank (screen saver) in tty
# (Not supported on FreeBSD)
; disable_blanking = 0
# show a flat bar at the bottom of the screen when idle, 1 = on, 0 = off
; show_idle_bar_heads = 1
# show waveform instead of frequency spectrum, 1 = on, 0 = off
; waveform = 0
[color]
# Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow.
# Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires
# a terminal that can change color definitions such as Gnome-terminal or rxvt.
# default is to keep current terminal color
; background = default
; foreground = default
# SDL and sdl_glsl only support hex code colors, these are the default:
; background = '#111111'
; foreground = '#33ffff'
# Gradient mode, only hex defined colors are supported,
# background must also be defined in hex or remain commented out. 1 = on, 0 = off.
# You can define as many as 8 different colors. They range from bottom to top of screen
; gradient = 0
; gradient_color_1 = '#59cc33'
; gradient_color_2 = '#80cc33'
; gradient_color_3 = '#a6cc33'
; gradient_color_4 = '#cccc33'
; gradient_color_5 = '#cca633'
; gradient_color_6 = '#cc8033'
; gradient_color_7 = '#cc5933'
; gradient_color_8 = '#cc3333'
# Horizontal is only supported on noncurses output.
# Only one color will be calculated per bar.
; horizontal_gradient = 0
; horizontal_gradient_color_1 = '#c45161'
; horizontal_gradient_color_2 = '#e094a0'
; horizontal_gradient_color_3 = '#f2b6c0'
; horizontal_gradient_color_4 = '#f2dde1'
; horizontal_gradient_color_5 = '#cbc7d8'
; horizontal_gradient_color_6 = '#8db7d2'
; horizontal_gradient_color_7 = '#5e62a9'
; horizontal_gradient_color_8 = '#434279'
# If both vertical and horizontal gradient is enabled, vertical will be blended in this direction.
# Can be 'up', 'down', 'left' or 'right'. 'up' means the vertical gradient will be blended in from
# bottom to top. I.e. the bottom will be only the horizontal
# and top will be only the color of the vertical gradient.
; blend_direction = 'up'
# use theme file instead of defining colors in this file
# themes are located in $HOME/.config/cava/themes
; theme = 'none'
[smoothing]
# Percentage value for integral smoothing. Takes values from 0 - 100.
# Higher values means smoother, but less precise. 0 to disable.
# DEPRECATED as of 0.8.0, use noise_reduction instead
; integral = 77
# Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable.
; monstercat = 0
; waves = 0
# Set gravity percentage for "drop off". Higher values means bars will drop faster.
# Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off".
# DEPRECATED as of 0.8.0, use noise_reduction instead
; gravity = 100
# In bar height, bars that would have been lower that this will not be drawn.
# DEPRECATED as of 0.8.0
; ignore = 0
# Noise reduction, int 0 - 100. default 77
# the raw visualization is very noisy, this factor adjusts the integral and gravity filters to keep the signal smooth
# 100 will be very slow and smooth, 0 will be fast but noisy.
; noise_reduction = 77
[eq]
# This one is tricky. You can have as much keys as you want.
# Remember to uncomment more than one key! More keys = more precision.
# Look at readme.md on github for further explanations and examples.
; 1 = 1 # bass
; 2 = 1
; 3 = 1 # midtone
; 4 = 1
; 5 = 1 # treble

View File

@@ -0,0 +1,73 @@
#version 330
in vec2 fragCoord;
out vec4 fragColor;
// bar values. defaults to left channels first (low to high), then right (high to low).
uniform float bars[512];
uniform int bars_count; // number of bars (left + right) (configurable)
uniform int bar_width; // bar width (configurable), not used here
uniform int bar_spacing; // space bewteen bars (configurable)
uniform vec3 u_resolution; // window resolution
// colors, configurable in cava config file (r,g,b) (0.0 - 1.0)
uniform vec3 bg_color; // background color
uniform vec3 fg_color; // foreground color
uniform int gradient_count;
uniform vec3 gradient_colors[8]; // gradient colors
uniform float shader_time; // shader execution time s (not used here)
uniform sampler2D inputTexture; // Texture from the last render pass (not used here)
vec3 normalize_C(float y, vec3 col_1, vec3 col_2, float y_min, float y_max) {
// create color based on fraction of this color and next color
float yr = (y - y_min) / (y_max - y_min);
return col_1 * (1.0 - yr) + col_2 * yr;
}
void main() {
// find which bar to use based on where we are on the x axis
float x = u_resolution.x * fragCoord.x;
int bar = int(bars_count * fragCoord.x);
// calculate a bar size
float bar_size = u_resolution.x / bars_count;
// the y coordinate and bar values are the same
float y = bars[bar];
// make sure there is a thin line at bottom
if (y * u_resolution.y < 1.0) {
y = 1.0 / u_resolution.y;
}
// draw the bar up to current height
if (y > fragCoord.y) {
// make some space between bars basen on settings
if (x > (bar + 1) * (bar_size)-bar_spacing) {
fragColor = vec4(bg_color, 1.0);
} else {
if (gradient_count == 0) {
fragColor = vec4(fg_color, 1.0);
} else {
// find which color in the configured gradient we are at
int color = int((gradient_count - 1) * fragCoord.y);
// find where on y this and next color is supposed to be
float y_min = color / (gradient_count - 1.0);
float y_max = (color + 1.0) / (gradient_count - 1.0);
// make color
fragColor = vec4(normalize_C(fragCoord.y, gradient_colors[color],
gradient_colors[color + 1], y_min, y_max),
1.0);
}
}
} else {
fragColor = vec4(bg_color, 1.0);
}
}

View File

@@ -0,0 +1,117 @@
#version 330
// this shader was stolen from shadertoy user ChunderFPV
#define SCALE 8.0
#define PI radians(180.0)
#define TAU (PI * 2.0)
#define CS(a) vec2(cos(a), sin(a))
#define PT(u, r) smoothstep(0.0, r, r - length(u))
in vec2 fragCoord;
out vec4 fragColor;
uniform float bars[512];
uniform int bars_count; // number of bars (left + right) (configurable)
uniform float shader_time; // shader execution time s
uniform int bar_width; // bar width (configurable), not used here
uniform int bar_spacing; // space bewteen bars (configurable)
uniform vec3 u_resolution; // window resolution
// colors, configurable in cava config file (r,g,b) (0.0 - 1.0)
uniform vec3 bg_color; // background color
uniform vec3 fg_color; // foreground color
uniform int gradient_count;
uniform vec3 gradient_colors[8]; // gradient colors
// gradient map ( color, equation, time, width, shadow, reciprocal )
vec3 gm(vec3 c, float n, float t, float w, float d, bool i) {
float g = min(abs(n), 1.0 / abs(n));
float s = abs(sin(n * PI - t));
if (i)
s = min(s, abs(sin(PI / n + t)));
return (1.0 - pow(abs(s), w)) * c * pow(g, d) * 6.0;
}
// denominator spiral, use 1/n for numerator
// ( screen xy, spiral exponent, decimal, line width, hardness, rotation )
float ds(vec2 u, float e, float n, float w, float h, float ro) {
float ur = length(u); // unit radius
float sr = pow(ur, e); // spiral radius
float a = round(sr) * n * TAU; // arc
vec2 xy = CS(a + ro) * ur; // xy coords
float l = PT(u - xy, w); // line
float s = mod(sr + 0.5, 1.0); // gradient smooth
s = min(s, 1.0 - s); // darken filter
return l * s * h;
}
void main() {
float t = shader_time / PI * 2.0;
vec4 m = vec4(0, 0, 0, 0); // iMouse;
m.xy = m.xy * 2.0 / u_resolution.xy - 1.0; // ±1x, ±1y
if (m.z > 0.0)
t += m.y * SCALE; // move time with mouse y
float z = (m.z > 0.0) ? pow(1.0 - abs(m.y), sign(m.y)) : 1.0; // zoom (+)
float e = (m.z > 0.0) ? pow(1.0 - abs(m.x), -sign(m.x))
: 1.0; // screen exponent (+)
float se = (m.z > 0.0) ? e * -sign(m.y) : 1.0; // spiral exponent
vec3 bg = vec3(0); // black background
float aa = 3.0; // anti-aliasing
for (float j = 0.0; j < aa; j++)
for (float k = 0.0; k < aa; k++) {
vec3 c = vec3(0);
vec2 o = vec2(j, k) / aa;
vec2 uv = (fragCoord * u_resolution.xy - 0.5 * u_resolution.xy + o) /
u_resolution.y * SCALE * z; // apply cartesian, scale and zoom
if (m.z > 0.0)
uv =
exp(log(abs(uv)) * e) * sign(uv); // warp screen space with exponent
float px = length(fwidth(uv)); // pixel width
float x = uv.x; // every pixel on x
float y = uv.y; // every pixel on y
float l = length(uv); // hypot of xy: sqrt(x*x+y*y)
float mc = (x * x + y * y - 1.0) / y; // metallic circle at xy
float g = min(abs(mc), 1.0 / abs(mc)); // gradient
vec3 gold = vec3(1.0, 0.6, 0.0) * g * l;
vec3 blue = vec3(0.3, 0.5, 0.9) * (1.0 - g);
vec3 rgb = max(gold, blue);
float w = 0.1; // line width
float d = 0.4; // shadow depth
c = max(c, gm(rgb, mc, -t, w * bars[0], d, false)); // metallic
c = max(c, gm(rgb, abs(y / x) * sign(y), -t, w * bars[1], d,
false)); // tangent
c = max(c, gm(rgb, (x * x) / (y * y) * sign(y), -t, w * bars[2], d,
false)); // sqrt cotangent
c = max(c, gm(rgb, (x * x) + (y * y), t, w * bars[3], d,
true)); // sqrt circles
c += rgb * ds(uv, se, t / TAU, px * 2.0 * bars[4], 2.0, 0.0); // spiral 1a
c += rgb * ds(uv, se, t / TAU, px * 2.0 * bars[5], 2.0, PI); // spiral 1b
c +=
rgb * ds(uv, -se, t / TAU, px * 2.0 * bars[6], 2.0, 0.0); // spiral 2a
c += rgb * ds(uv, -se, t / TAU, px * 2.0 * bars[7], 2.0, PI); // spiral 2b
c = max(c, 0.0); // clear negative color
c += pow(max(1.0 - l, 0.0), 3.0 / z); // center glow
if (m.z > 0.0) // display grid on click
{
vec2 xyg = abs(fract(uv + 0.5) - 0.5) / px; // xy grid
c.gb += 0.2 * (1.0 - min(min(xyg.x, xyg.y), 1.0));
}
bg += c;
}
bg /= aa * aa;
bg *= sqrt(bg) * 1.5;
fragColor = vec4(bg, 1.0);
}

View File

@@ -0,0 +1,34 @@
#version 330
in vec2 fragCoord;
out vec4 fragColor;
// bar values. defaults to left channels first (low to high), then right (high to low).
uniform float bars[512];
uniform int bars_count; // number of bars (left + right) (configurable)
uniform vec3 u_resolution; // window resolution, not used here
//colors, configurable in cava config file
uniform vec3 bg_color; // background color(r,g,b) (0.0 - 1.0), not used here
uniform vec3 fg_color; // foreground color, not used here
void main()
{
// find which bar to use based on where we are on the x axis
int bar = int(bars_count * fragCoord.x);
float bar_y = 1.0 - abs((fragCoord.y - 0.5)) * 2.0;
float y = (bars[bar]) * bar_y;
float bar_x = (fragCoord.x - float(bar) / float(bars_count)) * bars_count;
float bar_r = 1.0 - abs((bar_x - 0.5)) * 2;
bar_r = bar_r * bar_r * 2;
// set color
fragColor.r = fg_color.x * y * bar_r;
fragColor.g = fg_color.y * y * bar_r;
fragColor.b = fg_color.z * y * bar_r;
}

View File

@@ -0,0 +1,14 @@
#version 330
// Input vertex data, different for all executions of this shader.
layout(location = 0) in vec3 vertexPosition_modelspace;
// Output data ; will be interpolated for each fragment.
out vec2 fragCoord;
void main()
{
gl_Position = vec4(vertexPosition_modelspace,1);
fragCoord = (vertexPosition_modelspace.xy+vec2(1,1))/2.0;
}

View File

@@ -0,0 +1,53 @@
#version 330
in vec2 fragCoord;
out vec4 fragColor;
// bar values. defaults to left channels first (low to high), then right (high
// to low).
uniform float bars[512];
uniform int bars_count; // number of bars (left + right) (configurable)
uniform int bar_width; // bar width (configurable), not used here
uniform int bar_spacing; // space bewteen bars (configurable)
uniform vec3 u_resolution; // window resolution
// colors, configurable in cava config file (r,g,b) (0.0 - 1.0)
uniform vec3 bg_color; // background color
uniform vec3 fg_color; // foreground color
uniform int gradient_count;
uniform vec3 gradient_colors[8]; // gradient colors
uniform sampler2D inputTexture; // Texture from the last render pass
vec3 normalize_C(float y, vec3 col_1, vec3 col_2, float y_min, float y_max) {
// create color based on fraction of this color and next color
float yr = (y - y_min) / (y_max - y_min);
return col_1 * (1.0 - yr) + col_2 * yr;
}
void main() {
// find which bar to use based on where we are on the y axis
int bar = int(bars_count * fragCoord.y);
float y = bars[bar];
float band_size = 1.0 / float(bars_count);
float current_band_min = bar * band_size;
float current_band_max = (bar + 1) * band_size;
int hist_length = 512;
float win_size = 1.0 / hist_length;
if (fragCoord.x > 1.0 - win_size) {
if (fragCoord.y > current_band_min && fragCoord.y < current_band_max) {
fragColor = vec4(fg_color * y, 1.0);
}
} else {
vec2 offsetCoord = fragCoord;
offsetCoord.x += float(win_size);
fragColor = texture(inputTexture, offsetCoord);
}
}

View File

@@ -0,0 +1,112 @@
#version 330
// Emulate the "line style" spectrum analyzer from Winamp 2.
// Try this config for a demonstration:
/*
[general]
bar_width = 2
bar_spacing = 0
higher_cutoff_freq = 22000
[output]
method = sdl_glsl
channels = mono
fragment_shader = winamp_line_style_spectrum.frag
[color]
background = '#000000'
gradient = 1
gradient_color_1 = '#319C08'
gradient_color_2 = '#29CE10'
gradient_color_3 = '#BDDE29'
gradient_color_4 = '#DEA518'
gradient_color_5 = '#D66600'
gradient_color_6 = '#CE2910'
[smoothing]
noise_reduction = 10
*/
in vec2 fragCoord;
out vec4 fragColor;
// bar values. defaults to left channels first (low to high), then right (high to low).
uniform float bars[512];
uniform int bars_count; // number of bars (left + right) (configurable)
uniform int bar_width; // bar width (configurable), not used here
uniform int bar_spacing; // space bewteen bars (configurable)
uniform vec3 u_resolution; // window resolution
//colors, configurable in cava config file (r,g,b) (0.0 - 1.0)
uniform vec3 bg_color; // background color
uniform vec3 fg_color; // foreground color
uniform int gradient_count;
uniform vec3 gradient_colors[8]; // gradient colors
vec3 normalize_C(float y,vec3 col_1, vec3 col_2, float y_min, float y_max)
{
//create color based on fraction of this color and next color
float yr = (y - y_min) / (y_max - y_min);
return col_1 * (1.0 - yr) + col_2 * yr;
}
void main()
{
// find which bar to use based on where we are on the x axis
float x = u_resolution.x * fragCoord.x;
int bar = int(bars_count * fragCoord.x);
//calculate a bar size
float bar_size = u_resolution.x / bars_count;
//the y coordinate is stretched by 4X to resemble Winamp
float y = min(bars[bar] * 4.0, 1.0);
// make sure there is a thin line at bottom
if (y * u_resolution.y < 1.0)
{
y = 1.0 / u_resolution.y;
}
vec4 bar_color;
if (gradient_count == 0)
{
bar_color = vec4(fg_color,1.0);
}
else
{
//find color in the configured gradient for the top of the bar
int color = int((gradient_count - 1) * y);
//find where on y this and next color is supposed to be
float y_min = float(color) / (gradient_count - 1.0);
float y_max = float(color + 1) / (gradient_count - 1.0);
//make a solid color for the entire bar
bar_color = vec4(normalize_C(y, gradient_colors[color], gradient_colors[color + 1], y_min, y_max), 1.0);
}
//draw the bar up to current height
if (y > fragCoord.y)
{
//make some space between bars based on settings
if (x > (bar + 1) * (bar_size) - bar_spacing)
{
fragColor = vec4(bg_color,1.0);
}
else
{
fragColor = bar_color;
}
}
else
{
fragColor = vec4(bg_color,1.0);
}
}

View File

@@ -0,0 +1,15 @@
[color]
background = '#001e26'
foreground = '#708183'
gradient = 1
gradient_color_1 = '#268bd2'
gradient_color_2 = '#6c71c4'
gradient_color_3 = '#cb4b16'
horizontal_gradient = 1
horizontal_gradient_color_1 = '#586e75'
horizontal_gradient_color_2 = '#b58900'
horizontal_gradient_color_3 = '#839496'
blend_direction = 'up'

View File

@@ -0,0 +1,10 @@
[color]
horizontal_gradient = 1
horizontal_gradient_color_1 = '#c45161'
horizontal_gradient_color_2 = '#e094a0'
horizontal_gradient_color_3 = '#f2b6c0'
horizontal_gradient_color_4 = '#f2dde1'
horizontal_gradient_color_5 = '#cbc7d8'
horizontal_gradient_color_6 = '#8db7d2'
horizontal_gradient_color_7 = '#5e62a9'
horizontal_gradient_color_8 = '#434279'

View File

@@ -0,0 +1,19 @@
[color]
background = 'default'
foreground = '#dcc66e'
; gradient = 0
gradient = 1
gradient_color_1 = '#534600'
gradient_color_2 = '#dcc66e'
gradient_color_3 = '#f9e287'
horizontal_gradient = 0
; horizontal_gradient = 1
horizontal_gradient_color_1 = '#534600'
horizontal_gradient_color_2 = '#dcc66e'
horizontal_gradient_color_3 = '#f9e287'
horizontal_gradient_color_4 = '#dcc66e'
horizontal_gradient_color_5 = '#534600'

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,3 @@
# 隐藏通知
HiddenNotifications=

83
.config/fcitx5/config Normal file
View File

@@ -0,0 +1,83 @@
[Hotkey]
# 按住切换键的修饰键时进行轮换切换
EnumerateWithTriggerKeys=True
# 向前切换输入法
EnumerateForwardKeys=
# 向后切换输入法
EnumerateBackwardKeys=
# 轮换输入法时跳过第一个输入法
EnumerateSkipFirst=False
# 触发修饰键快捷键的时限 (毫秒)
ModifierOnlyKeyTimeout=250
[Hotkey/TriggerKeys]
0=Super+space
1=Zenkaku_Hankaku
2=Hangul
[Hotkey/ActivateKeys]
0=Hangul_Hanja
[Hotkey/DeactivateKeys]
0=Hangul_Romaja
[Hotkey/AltTriggerKeys]
0=Shift_L
[Hotkey/EnumerateGroupForwardKeys]
0=Super+bracketright
[Hotkey/EnumerateGroupBackwardKeys]
0=Super+bracketright
[Hotkey/PrevPage]
0=Up
[Hotkey/NextPage]
0=Down
[Hotkey/PrevCandidate]
0=Shift+Tab
[Hotkey/NextCandidate]
0=Tab
[Hotkey/TogglePreedit]
0=Control+Alt+P
[Behavior]
# 默认状态为激活
ActiveByDefault=False
# 重新聚焦时重置状态
resetStateWhenFocusIn=No
# 共享输入状态
ShareInputState=No
# 在程序中显示预编辑文本
PreeditEnabledByDefault=True
# 切换输入法时显示输入法信息
ShowInputMethodInformation=True
# 在焦点更改时显示输入法信息
showInputMethodInformationWhenFocusIn=False
# 显示紧凑的输入法信息
CompactInputMethodInformation=True
# 显示第一个输入法的信息
ShowFirstInputMethodInformation=True
# 默认页大小
DefaultPageSize=5
# 覆盖 XKB 选项
OverrideXkbOption=False
# 自定义 XKB 选项
CustomXkbOption=
# Force Enabled Addons
EnabledAddons=
# Force Disabled Addons
DisabledAddons=
# Preload input method to be used by default
PreloadInputMethod=True
# 允许在密码框中使用输入法
AllowInputMethodForPassword=False
# 输入密码时显示预编辑文本
ShowPreeditForPassword=False
# 保存用户数据的时间间隔(以分钟为单位)
AutoSavePeriod=30

23
.config/fcitx5/profile Normal file
View File

@@ -0,0 +1,23 @@
[Groups/0]
# Group Name
Name=默认
# Layout
Default Layout=us
# Default Input Method
DefaultIM=rime
[Groups/0/Items/0]
# Name
Name=keyboard-us
# Layout
Layout=
[Groups/0/Items/1]
# Name
Name=rime
# Layout
Layout=
[GroupOrder]
0=默认

View File

@@ -0,0 +1,23 @@
[Groups/0]
# Group Name
Name=默认
# Layout
Default Layout=us
# Default Input Method
DefaultIM=rime
[Groups/0/Items/0]
# Name
Name=keyboard-us
# Layout
Layout=
[Groups/0/Items/1]
# Name
Name=rime
# Layout
Layout=
[GroupOrder]
0=默认

View File

@@ -0,0 +1,30 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="pattern">
<test qual="any" name="family">
<string>sans-serif</string>
</test>
<edit name="family" mode="prepend" binding="strong">
<string>Source Han Sans CN</string>
<string>Source Han Sans</string>
<string>Twemoji</string>
</edit>
</match>
<match target="pattern">
<test name="family">
<string>Source Han Sans CN</string>
</test>
<edit name="style" mode="assign">
<string>SemiLight</string>
</edit>
</match>
<match target="font">
<edit name="antialias" mode="assign"><bool>true</bool></edit>
<edit name="hinting" mode="assign"><bool>true</bool></edit>
<edit name="hintstyle" mode="assign"><const>hintslight</const></edit>
<edit name="rgba" mode="assign"><const>rgb</const></edit>
</match>
</fontconfig>

View File

@@ -0,0 +1,55 @@
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<!-- 【1. 为不同字体族指定正确的JetBrains变体】 -->
<!-- 1.1 无衬线字体(用于界面、文档):使用比例字体 -->
<match target="pattern">
<test qual="any" name="family"><string>sans-serif</string></test>
<edit name="family" mode="prepend" binding="strong">
<string>JetBrainsMono Nerd Font</string>
<string>Noto Sans CJK SC</string> <!-- 中文回退 -->
</edit>
</match>
<!-- 1.2 衬线字体(用于少量文档):同样使用比例字体 -->
<match target="pattern">
<test qual="any" name="family"><string>serif</string></test>
<edit name="family" mode="prepend" binding="strong">
<string>JetBrainsMono Nerd Font</string>
<string>Noto Serif CJK SC</string> <!-- 中文回退 -->
</edit>
</match>
<!-- 1.3 等宽字体(用于终端、代码):必须使用等宽字体 -->
<match target="pattern">
<test qual="any" name="family"><string>monospace</string></test>
<edit name="family" mode="prepend" binding="strong">
<string>JetBrainsMono Nerd Font Mono</string>
<string>Noto Sans Mono CJK SC</string> <!-- 中文回退 -->
</edit>
</match>
<!-- 【2. 为Nerd Font添加图标回退防止方框】 -->
<match target="pattern">
<test name="family"><string>JetBrainsMono Nerd Font</string></test>
<edit name="family" mode="append" binding="strong">
<string>Symbols Nerd Font</string>
<string>Noto Color Emoji</string>
</edit>
</match>
<match target="pattern">
<test name="family"><string>JetBrainsMono Nerd Font Mono</string></test>
<edit name="family" mode="append" binding="strong">
<string>Symbols Nerd Font Mono</string>
<string>Noto Color Emoji</string>
</edit>
</match>
<!-- 【3. 保留优秀的全局渲染设置】 -->
<match target="font">
<edit name="antialias" mode="assign"><bool>true</bool></edit>
<edit name="hinting" mode="assign"><bool>true</bool></edit>
<edit name="hintstyle" mode="assign"><const>hintslight</const></edit>
<edit name="rgba" mode="assign"><const>rgb</const></edit>
</match>
</fontconfig>

View File

@@ -0,0 +1,5 @@
file:///home/zhenyan121/Videos Videos
file:///home/zhenyan121/Pictures Pictures
file:///home/zhenyan121/Music Music
file:///home/zhenyan121/Downloads Downloads
file:///home/zhenyan121/Documents Documents

View File

@@ -0,0 +1,38 @@
cursor #e9e2d4
cursor_text_color #cdc6b4
foreground #e9e2d4
background #15130b
selection_foreground #373016
selection_background #d1c6a1
url_color #dcc66e
# black
color8 #969080
color0 #4c4c4c
# red
color1 #ac8a8c
color9 #c49ea0
# green
color2 #8aac8b
color10 #9ec49f
# yellow
color3 #aca98a
color11 #c4c19e
# blue
color4 #dcc66e
color12 #a39ec4
# magenta
color5 #aad0b3
color13 #c5ecce
# cyan
color6 #8aacab
color14 #9ec3c4
# white
color15 #e7e7e7
color7 #f0f0f0

40
.config/kitty/kitty.conf Normal file
View File

@@ -0,0 +1,40 @@
#导入颜色文件
include themes/frappe.conf
#设置左右边距
window_padding_width 5
#隐藏标题栏
hide_window_decorations yes
#背景透明度
background_opacity 0.8
#字体
font_family JetBrainsMono Nerd Font
bold_font auto
italic_font auto
bold_italic_font auto
#字体大小
font_size 15
#不要记住窗口大小yes no
remember_window_size no
initial_window_width 105c
initial_window_height 30c
#关闭窗口时不要询问是否关闭
confirm_os_window_close 0
#开启光标拖影
cursor_trail 1
cursor_shape block
shell_integration no-cursor
# 1. 启用 splits 布局(必须放在布局列表的首位或明确指定)
enabled_layouts splits,stack
# 2. 映射快捷键:在当前窗口下方新建分屏
map f5 launch --location=hsplit --cwd=current
# 3. 映射快捷键:在当前窗口右侧新建分屏
map f6 launch --location=vsplit --cwd=current
# BEGIN_KITTY_THEME
# Matugen
include current-theme.conf
# END_KITTY_THEME

View File

@@ -0,0 +1,34 @@
#导入颜色文件
include themes/frappe.conf
#设置左右边距
window_padding_width 5
#隐藏标题栏
hide_window_decorations yes
#背景透明度
background_opacity 0.8
#字体
font_family JetBrainsMono Nerd Font
bold_font auto
italic_font auto
bold_italic_font auto
#字体大小
font_size 15
#不要记住窗口大小yes no
remember_window_size no
initial_window_width 105c
initial_window_height 30c
#关闭窗口时不要询问是否关闭
confirm_os_window_close 0
#开启光标拖影
cursor_trail 1
cursor_shape block
shell_integration no-cursor
# 1. 启用 splits 布局(必须放在布局列表的首位或明确指定)
enabled_layouts splits,stack
# 2. 映射快捷键:在当前窗口下方新建分屏
map f5 launch --location=hsplit --cwd=current
# 3. 映射快捷键:在当前窗口右侧新建分屏
map f6 launch --location=vsplit --cwd=current

View File

@@ -0,0 +1,84 @@
# vim:ft=kitty
## name: Catppuccin Kitty Frappé
## author: Catppuccin Org
## license: MIT
## upstream: https://github.com/catppuccin/kitty/blob/main/themes/frappe.conf
## blurb: Soothing pastel theme for the high-spirited!
# The basic colors
foreground #c6d0f5
background #303446
selection_foreground #303446
selection_background #f2d5cf
# Cursor colors
cursor #f2d5cf
cursor_text_color #303446
# Scrollbar colors
scrollbar_handle_color #949cbb
scrollbar_track_color #51576d
# URL color when hovering with mouse
url_color #f2d5cf
# Kitty window border colors
active_border_color #babbf1
inactive_border_color #737994
bell_border_color #e5c890
# OS Window titlebar colors
wayland_titlebar_color system
macos_titlebar_color system
# Tab bar colors
active_tab_foreground #232634
active_tab_background #ca9ee6
inactive_tab_foreground #c6d0f5
inactive_tab_background #292c3c
tab_bar_background #232634
# Colors for marks (marked text in the terminal)
mark1_foreground #303446
mark1_background #babbf1
mark2_foreground #303446
mark2_background #ca9ee6
mark3_foreground #303446
mark3_background #85c1dc
# The 16 terminal colors
# black
color0 #51576d
color8 #626880
# red
color1 #e78284
color9 #e78284
# green
color2 #a6d189
color10 #a6d189
# yellow
color3 #e5c890
color11 #e5c890
# blue
color4 #8caaee
color12 #8caaee
# magenta
color5 #f4b8e4
color13 #f4b8e4
# cyan
color6 #81c8be
color14 #81c8be
# white
color7 #b5bfe2
color15 #a5adce

View File

@@ -0,0 +1,38 @@
cursor #e9e2d4
cursor_text_color #cdc6b4
foreground #e9e2d4
background #15130b
selection_foreground #373016
selection_background #d1c6a1
url_color #dcc66e
# black
color8 #969080
color0 #4c4c4c
# red
color1 #ac8a8c
color9 #c49ea0
# green
color2 #8aac8b
color10 #9ec49f
# yellow
color3 #aca98a
color11 #c4c19e
# blue
color4 #dcc66e
color12 #a39ec4
# magenta
color5 #aad0b3
color13 #c5ecce
# cyan
color6 #8aacab
color14 #9ec3c4
# white
color15 #e7e7e7
color7 #f0f0f0

3
.config/mako/colors.conf Normal file
View File

@@ -0,0 +1,3 @@
background-color=#3c3930
border-color=#969080
text-color=#e9e2d4

13
.config/mako/config Normal file
View File

@@ -0,0 +1,13 @@
include=~/.config/mako/colors.conf
border-size=2
border-radius=8
icon-border-radius=8
icons=1
anchor=top-right
default-timeout=5000
margin=10
padding=10,0
font=adwaita sans regular 11
history=1
max-visible=20
max-history=100

126
.config/matugen/config.toml Executable file
View File

@@ -0,0 +1,126 @@
[config.wallpaper]
command = "swww"
#arguments = ["img", "--transition-type", "center"]
#set = false
[templates.waybar]
input_path = '~/.config/matugen/templates/colors.css'
output_path = '~/.config/waybar/colors.css'
#post_hook='ln -s ~/.config/waybar/colors.css ~/.config/waybar-niri-Win11Like/colors.css'
#[templates.pywalfox]
#input_path = '~/.config/matugen/templates/pywalfox-colors.json'
#output_path = '~/.cache/wal/colors.json'
#post_hook = 'pywalfox update &'
[templates.fuzzel]
input_path = '~/.config/matugen/templates/fuzzel.ini'
output_path = '~/.config/fuzzel/colors.ini'
[templates.kitty]
input_path = '~/.config/matugen/templates/kitty-colors.conf'
output_path ='~/.config/kitty/themes/matugen.conf'
post_hook = "kitty +kitten themes --reload-in=all matugen &"
#[templates.fcitx5]
#input_path = '~/.config/matugen/templates/fcitx5-theme.conf'
#output_path = '~/.local/share/fcitx5/themes/Matugen/theme.conf'
#post_hook= 'fcitx5 -r & disown '
[templates.mako]
input_path = '~/.config/matugen/templates/mako-colors.conf'
output_path = '~/.config/mako/colors.conf'
post_hook='makoctl reload &'
[templates.btop]
input_path = '~/.config/matugen/templates/btop.theme'
output_path = '~/.config/btop/themes/matugen.theme'
post_hook = 'killall -SIGUSR1 btop && killall -SIGUSR2 btop &'
[templates.cava]
input_path = '~/.config/matugen/templates/cava-colors.ini'
output_path = '~/.config/cava/themes/your-theme'
#post_hook = "pkill -USR1 cava"
#[templates.starship]
#input_path = '~/.config/matugen/templates/starship-colors.toml'
#output_path = '~/.config/starship.toml'
[templates.yazi]
input_path = '~/.config/matugen/templates/yazi-theme.toml'
output_path = '~/.config/yazi/theme.toml'
#[templates.wlogout]
#input_path = '~/.config/matugen/templates/colors.css'
#output_path = '~/.config/wlogout/colors.css'
#[templates.wlogout-recolor]
#input_path = '~/.config/matugen/templates/wlogout/recolor.sh'
#output_path = '~/.config/wlogout/icons/recolor.sh'
#post_hook = 'chmod +x ~/.config/wlogout/icons/recolor.sh && bash ~/.config/wlogout/icons/recolor.sh &'
#[templates.gtk3]
#input_path ='~/.config/matugen/templates/gtk-colors.css'
#output_path = '~/.config/gtk-3.0/colors.css'
#[templates.gtk4]
#input_path ='~/.config/matugen/templates/gtk-colors.css'
#output_path = '~/.config/gtk-4.0/colors.css'
#[templates.swaync]
#input_path = '~/.config/matugen/templates/swaync-colors.css'
#output_path = '~/.config/swaync/colors.css'
#post_hook = 'swaync-client -rs &'
#[templates.ghostty]
#input_path = '~/.config/matugen/templates/ghostty-colors.conf'
#output_path = '~/.config/ghostty/themes/Matugen'
#post_hook = 'pkill -SIGUSR2 ghostty'
#[templates.qt5ct]
#input_path = '~/.config/matugen/templates/qtct-colors.conf'
#output_path = '~/.config/qt5ct/colors/matugen.conf'
#[templates.qt6ct]
#input_path = '~/.config/matugen/templates/qtct-colors.conf'
#output_path = '~/.config/qt6ct/colors/matugen.conf'
#[templates.color-scheme]
#input_path = '~/.config/matugen/templates/Matugen.colors'
#output_path = '~/.local/share/color-schemes/Matugen.colors'
#[templates.hyprland]
#input_path = '~/.config/matugen/templates/hyprland-colors.conf'
#output_path = '~/.config/hypr/colors.conf'
#post_hook = 'hyprctl reload &'
#[templates.niriswitcher]
#input_path = '~/.config/matugen/templates/niriswitcher-colors.css'
#output_path = '~/.config/niriswitcher/style.css'
#post_hook= 'pkill niriswitcher || true && niriswitcher & disown'
[templates.niri]
input_path = '~/.config/matugen/templates/niri-colors.kdl'
output_path = '~/.config/niri/colors.kdl'
post_hook = 'niri msg action load-config-file'
#[templates.gtk-folder]
#input_path = '~/.config/matugen/templates/gtk-folder/recolor.sh'
#output_path = '~/.cache/matugen/recoloricons.sh'
#post_hook = 'bash ~/.cache/matugen/recoloricons.sh &'
#[templates.swayosd]
#input_path = '~/.config/matugen/templates/colors.css'
#output_path = '~/.config/swayosd/colors.css'
#post_hook = 'pkill swayosd && swayosd-server &'
#[templates.swaylock-effects]
#input_path = '~/.config/matugen/templates/swaylock-colors'
#output_path = '~/.config/swaylock/config'
#[templates.fastfetch]
#input_path = '~/.config/matugen/templates/fastfetch-config.jsonc'
#output_path = '~/.config/fastfetch/config.jsonc'
#[templates.neovim]
#input_path = '~/.config/matugen/templates/neovim/template.lua'
#output_path = '~/.config/nvim/generated.lua'
#post_hook = 'pkill -SIGUSR1 nvim'
#[templates.hyprlock]
#input_path = '~/.config/matugen/templates/hyprland-colors.conf'
#output_path = '~/.config/hypr/colors.conf'

View File

@@ -0,0 +1,153 @@
[UiSettings]
ColorScheme=Matugen
[ColorEffects:Disabled]
Color={{colors.surface_dim.default.hex}}
ColorAmount=0
ColorEffect=0
ContrastAmount=0.65
ContrastEffect=1
IntensityAmount=0.1
IntensityEffect=2
[ColorEffects:Inactive]
ChangeSelectionColor=true
Color={{colors.surface_variant.default.hex}}
ColorAmount=0.025
ColorEffect=2
ContrastAmount=0.1
ContrastEffect=2
Enable=false
IntensityAmount=0
IntensityEffect=0
[Colors:Button]
BackgroundAlternate={{colors.surface_container_low.default.hex}}
BackgroundNormal={{colors.surface_container_high.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_surface.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Complementary]
BackgroundAlternate={{colors.surface_container_low.default.hex}}
BackgroundNormal={{colors.surface.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_primary_container.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Header]
BackgroundAlternate={{colors.surface.default.hex}}
BackgroundNormal={{colors.surface_container.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_surface.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Header][Inactive]
BackgroundAlternate={{colors.surface_container.default.hex}}
BackgroundNormal={{colors.surface.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_surface.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Selection]
BackgroundAlternate={{colors.surface_container_low.default.hex}}
BackgroundNormal={{colors.primary.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.on_primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary_fixed.default.hex}}
ForegroundNegative={{colors.error_container.default.hex}}
ForegroundNeutral={{colors.tertiary_fixed_dim.default.hex}}
ForegroundNormal={{colors.on_primary.default.hex}}
ForegroundPositive={{colors.tertiary_container.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Tooltip]
BackgroundAlternate={{colors.surface.default.hex}}
BackgroundNormal={{colors.surface_container.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_background.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:View]
BackgroundAlternate={{colors.surface_container.default.hex}}
BackgroundNormal={{colors.background.default.hex}}
DecorationFocus={{colors.on_primary_container.default.hex}}
DecorationHover={{colors.on_primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_background.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Window]
BackgroundAlternate={{colors.primary_container.default.hex}}
BackgroundNormal={{colors.surface_container.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_background.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[General]
ColorScheme=Matugen
Name=Matugen
[Appearance]
color_scheme=Matugen
[KDE]
contrast=4
[WM]
activeBackground={{colors.primary_container.default.hex}}
activeBlend={{colors.on_primary_container.default.hex}}
activeForeground={{colors.on_primary_container.default.hex}}
inactiveBackground={{colors.surface.default.hex}}
inactiveBlend={{colors.on_surface_variant.default.hex}}
inactiveForeground={{colors.on_surface_variant.default.hex}}

View File

@@ -0,0 +1,89 @@
# Matugen template for btop
# Colors should be in 6 or 2 character hexadecimal or single spaced rgb decimal: "#RRGGBB", "#BW" or "0-255 0-255 0-255"
# example for white: "#ffffff", "#ff" or "255 255 255".
# All graphs and meters can be gradients
# For single color graphs leave "mid" and "end" variable empty.
# Use "start" and "end" variables for two color gradient
# Use "start", "mid" and "end" for three color gradient
# Main background, empty for terminal default, need to be empty if you want transparent background
theme[main_bg]=""
# Main text color
theme[main_fg]="{{colors.on_surface.default.hex}}"
# Title color for boxes
theme[title]="{{colors.primary.default.hex}}"
# Highlight color for keyboard shortcuts
theme[hi_fg]="{{colors.secondary.default.hex}}"
# Background color of selected item in processes box
theme[selected_bg]="{{colors.primary.default.hex}}"
# Foreground color of selected item in processes box
theme[selected_fg]="{{colors.on_primary.default.hex}}"
# Color of inactive/disabled text
theme[inactive_fg]="{{colors.on_surface_variant.default.hex}}"
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
theme[proc_misc]="{{colors.tertiary.default.hex}}"
# Cpu box outline color
theme[cpu_box]="{{colors.outline.default.hex}}"
# Memory/disks box outline color
theme[mem_box]="{{colors.outline.default.hex}}"
# Net up/down box outline color
theme[net_box]="{{colors.outline.default.hex}}"
# Processes box outline color
theme[proc_box]="{{colors.outline.default.hex}}"
# Box divider line and small boxes line color
theme[div_line]="{{colors.outline_variant.default.hex}}"
# Temperature graph colors
theme[temp_start]="{{colors.secondary.default.hex}}"
theme[temp_mid]="{{colors.primary.default.hex}}"
theme[temp_end]="{{colors.error.default.hex}}"
# CPU graph colors
theme[cpu_start]="{{colors.secondary.default.hex}}"
theme[cpu_mid]="{{colors.primary.default.hex}}"
theme[cpu_end]="{{colors.error.default.hex}}"
# Mem/Disk free meter
theme[free_start]="{{colors.secondary.default.hex}}"
theme[free_mid]=""
theme[free_end]="{{colors.secondary_container.default.hex}}"
# Mem/Disk cached meter
theme[cached_start]="{{colors.tertiary.default.hex}}"
theme[cached_mid]=""
theme[cached_end]="{{colors.tertiary_container.default.hex}}"
# Mem/Disk available meter
theme[available_start]="{{colors.primary.default.hex}}"
theme[available_mid]=""
theme[available_end]="{{colors.primary_container.default.hex}}"
# Mem/Disk used meter
theme[used_start]="{{colors.error.default.hex}}"
theme[used_mid]=""
theme[used_end]="{{colors.error_container.default.hex}}"
# Download graph colors
theme[download_start]="{{colors.secondary.default.hex}}"
theme[download_mid]="{{colors.primary.default.hex}}"
theme[download_end]="{{colors.tertiary.default.hex}}"
# Upload graph colors
theme[upload_start]="{{colors.secondary.default.hex}}"
theme[upload_mid]="{{colors.primary.default.hex}}"
theme[upload_end]="{{colors.tertiary.default.hex}}"

View File

@@ -0,0 +1,19 @@
[color]
background = 'default'
foreground = '{{colors.primary.default.hex}}'
; gradient = 0
gradient = 1
gradient_color_1 = '{{colors.primary_container.default.hex}}'
gradient_color_2 = '{{colors.primary.default.hex}}'
gradient_color_3 = '{{colors.on_primary_container.default.hex}}'
horizontal_gradient = 0
; horizontal_gradient = 1
horizontal_gradient_color_1 = '{{colors.primary_container.default.hex}}'
horizontal_gradient_color_2 = '{{colors.primary.default.hex}}'
horizontal_gradient_color_3 = '{{colors.on_primary_container.default.hex}}'
horizontal_gradient_color_4 = '{{colors.primary.default.hex}}'
horizontal_gradient_color_5 = '{{colors.primary_container.default.hex}}'

View File

@@ -0,0 +1,7 @@
/*
* Css Colors
* Generated with Matugen
*/
<* for name, value in colors *>
@define-color {{name}} {{value.default.hex}};
<* endfor *>

View File

@@ -0,0 +1,124 @@
{
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/master/doc/json_schema.json",
"logo": {
"type": "kitty",
//"source": "/home/shorin/Pictures/picture.png",
"width": 25,
// "height":20,
"padding": {
"top": 1, // Top padding
"left": 2, // Left padding
"right": 2 // Right padding
},
},
"display": {
"separator": " ", // Separator between keys and values
"color": {
//"keys": "{{colors.secondary.default.hex}}", // Key color module名字的颜色
"title": "{{colors.on_surface_variant.default.hex}}", // Title color 主机名的颜色
"output": "{{colors.on_surface_variant.default.hex}}"
},
},
"modules": [
"break",
{
"type": "os", //这是哪个module
"key": "OS", //module名字的显示
// "keyColor": "#00ff00", //module名字颜色
// "format": "{name} {version}", //具体内容
"keyColor": "{{colors.primary.default.hex}}",
},
{
"type": "kernel",
"key": " ├  KER ",
"keyColor": "{{colors.primary.default.hex}}",
},
{
"type": "packages",
"key": " ├  PAK ",
"format": "{all}",
"keyColor": "{{colors.primary.default.hex}}",
},
{
"type": "title",
"key": " └  USR ",
"keyColor": "{{colors.primary.default.hex}}",
},
"break",
"break",
{
"type": "wm",
"key": "WM",
"keyColor": "{{colors.tertiary.default.hex}}",
},
{
"type": "de",
"key": " ├ 󱈹 DES ",
"keyColor": "{{colors.tertiary.default.hex}}",
//"outputColor": "{{colors.tertiary_fixed_dim.default.hex}}"
},
{
"type": "shell",
"key": " ├  SHE ",
"keyColor": "{{colors.tertiary.default.hex}}",
//"outputColor": "{{colors.tertiary_fixed_dim.default.hex}}"
},
{
"type": "terminal",
"key": " ├  TER ",
"keyColor": "{{colors.tertiary.default.hex}}",
//"outputColor": "{{colors.tertiary_fixed_dim.default.hex}}"
},
{
"type": "terminalfont",
"key": " └  TFO ",
"keyColor": "{{colors.tertiary.default.hex}}",
//"outputColor": "{{colors.tertiary_fixed_dim.default.hex}}"
},
"break",
"break",
{
"type": "host",
"key": "PC ",
"keyColor": "{{colors.secondary_fixed.default.hex}}",
//"outputColor": "{{colors.secondary_fixed_dim.default.hex}}"
},
{
"type": "cpu",
"key": " ├  CPU ",
"keyColor": "{{colors.secondary_fixed.default.hex}}",
//"outputColor": "{{colors.secondary_fixed_dim.default.hex}}"
},
{
"type": "memory",
"key": " ├  MEM ",
"keyColor": "{{colors.secondary_fixed.default.hex}}",
//"outputColor": "{{colors.secondary_fixed_dim.default.hex}}"
},
{
"type": "gpu",
"key": " ├ 󰢮 GPU ",
"format": "{1} {2}",
"keyColor": "{{colors.secondary_fixed.default.hex}}",
//"outputColor": "{{colors.secondary_fixed_dim.default.hex}}"
},
{
"type": "display",
"key": " ├  MON ",
"format": "{name} {width}x{height}@{refresh-rate} ",
"keyColor": "{{colors.secondary_fixed.default.hex}}",
//"outputColor": "{{colors.secondary_fixed_dim.default.hex}}"
},
{
"type": "disk",
"key": " └ 󰋊 DIS ",
"keyColor": "{{colors.secondary_fixed.default.hex}}",
//"outputColor": "{{colors.secondary_fixed_dim.default.hex}}"
},
"break",
"break",
"colors"
]
}

View File

@@ -0,0 +1,296 @@
# vim: ft=dosini
[Metadata]
Name=Matugen
Version=0.1
Author=shorin
Description=WallpaperColorSyncByMatugen
ScaleWithDPI=True
[InputPanel]
# 改这个:一般文字颜色
NormalColor={{colors.on_surface.default.hex}}
# 高亮文字颜色
HighlightColor={{colors.on_primary.default.hex}}
# 高亮背景颜色
HighlightBackgroundColor={{colors.tertiary.default.hex}}
# 改这个:这个才是被选中的文字颜色
HighlightCandidateColor={{colors.on_tertiary.default.hex}}
# KWin 下启用模糊
EnableBlur=False
# 模糊遮罩
BlurMask=
# 竖排列表时使用所有横向空间高亮
FullWidthHighlight=True
# 页面按钮垂直对齐
PageButtonAlignment="Last Candidate"
[InputPanel/Background]
# 改这个:输入法框整体背景颜色
Color={{colors.surface_container.default.hex}}
# 边框颜色
BorderColor={{colors.outline.default.hex}}
# 改这个:边框宽度
BorderWidth=2
[InputPanel/Background/Margin]
# 左侧边距
Left=2
# 右侧边距
Right=2
# 顶部边距
Top=2
# 底部边距
Bottom=2
[InputPanel/Highlight]
# 改这个:高亮背景颜色
Color={{colors.tertiary.default.hex}}
[InputPanel/Highlight/Margin]
# 左侧边距
Left=5
# 右侧边距
Right=5
# 顶部边距
Top=5
# 底部边距
Bottom=5
[InputPanel/ContentMargin]
# 左侧边距
Left=2
# 右侧边距
Right=2
# 顶部边距
Top=2
# 底部边距
Bottom=2
[InputPanel/TextMargin]
# 左侧边距
Left=5
# 右侧边距
Right=5
# 顶部边距
Top=5
# 底部边距
Bottom=5
[Menu]
# 一般文字颜色
NormalColor={{colors.on_surface.default.hex}}
# 选中项文本颜色
HighlightCandidateColor={{colors.on_surface.default.hex}}
[Menu/Background]
# 背景图片
Image=
# 颜色
Color={{colors.surface_container.default.hex}}
# 边框颜色
BorderColor={{colors.outline.default.hex}}
# 边框宽度
BorderWidth=2
# 覆盖图片
Overlay=
# 覆盖图片位置
Gravity="Top Left"
# 覆盖图片 X 偏移
OverlayOffsetX=0
# 覆盖图片 Y 偏移
OverlayOffsetY=0
# 显示区域不足时隐藏覆盖图片
HideOverlayIfOversize=False
[Menu/Background/Margin]
# 左侧边距
Left=2
# 右侧边距
Right=2
# 顶部边距
Top=2
# 底部边距
Bottom=2
[Menu/Highlight]
# 背景图片
Image=
# 颜色
Color={{colors.tertiary.default.hex}}
# 边框颜色
BorderColor={{colors.outline.default.hex}}
# 边框宽度
BorderWidth=0
# 覆盖图片
Overlay=
# 覆盖图片位置
Gravity="Top Left"
# 覆盖图片 X 偏移
OverlayOffsetX=0
# 覆盖图片 Y 偏移
OverlayOffsetY=0
# 显示区域不足时隐藏覆盖图片
HideOverlayIfOversize=False
[Menu/Highlight/Margin]
# 左侧边距
Left=5
# 右侧边距
Right=5
# 顶部边距
Top=5
# 底部边距
Bottom=5
[Menu/Highlight/OverlayClipMargin]
# 左侧边距
Left=0
# 右侧边距
Right=0
# 顶部边距
Top=0
# 底部边距
Bottom=0
[Menu/Separator]
# 背景图片
Image=
# 颜色
Color=#c0c0c0
# 边框颜色
BorderColor=#ffffff00
# 边框宽度
BorderWidth=0
# 覆盖图片
Overlay=
# 覆盖图片位置
Gravity="Top Left"
# 覆盖图片 X 偏移
OverlayOffsetX=0
# 覆盖图片 Y 偏移
OverlayOffsetY=0
# 显示区域不足时隐藏覆盖图片
HideOverlayIfOversize=False
[Menu/Separator/Margin]
# 左侧边距
Left=0
# 右侧边距
Right=0
# 顶部边距
Top=0
# 底部边距
Bottom=0
[Menu/Separator/OverlayClipMargin]
# 左侧边距
Left=0
# 右侧边距
Right=0
# 顶部边距
Top=0
# 底部边距
Bottom=0
[Menu/CheckBox]
# 背景图片
Image=radio.png
# 颜色
Color=#ffffff
# 边框颜色
BorderColor=#ffffff00
# 边框宽度
BorderWidth=0
# 覆盖图片
Overlay=
# 覆盖图片位置
Gravity="Top Left"
# 覆盖图片 X 偏移
OverlayOffsetX=0
# 覆盖图片 Y 偏移
OverlayOffsetY=0
# 显示区域不足时隐藏覆盖图片
HideOverlayIfOversize=False
[Menu/CheckBox/Margin]
# 左侧边距
Left=0
# 右侧边距
Right=0
# 顶部边距
Top=0
# 底部边距
Bottom=0
[Menu/CheckBox/OverlayClipMargin]
# 左侧边距
Left=0
# 右侧边距
Right=0
# 顶部边距
Top=0
# 底部边距
Bottom=0
[Menu/SubMenu]
# 背景图片
Image=arrow.png
# 颜色
Color=#ffffff
# 边框颜色
BorderColor=#ffffff00
# 边框宽度
BorderWidth=0
# 覆盖图片
Overlay=
# 覆盖图片位置
Gravity="Top Left"
# 覆盖图片 X 偏移
OverlayOffsetX=0
# 覆盖图片 Y 偏移
OverlayOffsetY=0
# 显示区域不足时隐藏覆盖图片
HideOverlayIfOversize=False
[Menu/SubMenu/Margin]
# 左侧边距
Left=0
# 右侧边距
Right=0
# 顶部边距
Top=0
# 底部边距
Bottom=0
[Menu/SubMenu/OverlayClipMargin]
# 左侧边距
Left=0
# 右侧边距
Right=0
# 顶部边距
Top=0
# 底部边距
Bottom=0
[Menu/ContentMargin]
# 左侧边距
Left=2
# 右侧边距
Right=2
# 顶部边距
Top=2
# 底部边距
Bottom=2
[Menu/TextMargin]
# 左侧边距
Left=5
# 右侧边距
Right=5
# 顶部边距
Top=5
# 底部边距
Bottom=5

View File

@@ -0,0 +1,15 @@
# Fuzzel Colors
# Generated with Matugen
[colors]
background={{colors.surface_container.default.hex_stripped}}ff
text={{colors.on_surface.default.hex_stripped}}ff
prompt={{colors.secondary.default.hex_stripped}}ff
placeholder={{colors.tertiary.default.hex_stripped}}ff
input={{colors.primary.default.hex_stripped}}ff
match={{colors.tertiary.default.hex_stripped}}ff
selection={{colors.secondary.default.hex_stripped}}ff
selection-text={{colors.on_secondary.default.hex_stripped}}ff
selection-match={{colors.on_tertiary.default.hex_stripped}}ff
counter={{colors.secondary.default.hex_stripped}}ff
border={{colors.secondary.default.hex_stripped}}ff

View File

@@ -0,0 +1,6 @@
background = {{colors.background.default.hex}}
foreground = {{colors.on_surface.default.hex}}
cursor-color = {{colors.on_surface.default.hex}}
cursor-text = {{colors.on_surface_variant.default.hex}}
selection-background = {{colors.secondary_fixed_dim.default.hex}}
selection-foreground = {{colors.on_secondary.default.hex}}

View File

@@ -0,0 +1,17 @@
@define-color accent_color {{colors.primary_fixed_dim.default.hex}};
@define-color accent_fg_color {{colors.on_primary.default.hex}};
@define-color accent_bg_color {{colors.primary.default.hex}};
@define-color window_bg_color {{colors.surface_container.default.hex}};
@define-color window_fg_color {{colors.on_surface.default.hex}};
@define-color headerbar_bg_color {{colors.surface_container.default.hex}};
@define-color headerbar_fg_color {{colors.on_surface.default.hex}};
@define-color popover_bg_color {{colors.surface_container.default.hex}};
@define-color popover_fg_color {{colors.on_surface.default.hex}};
@define-color view_bg_color {{colors.surface_container_low.default.hex}};
@define-color view_fg_color {{colors.on_surface.default.hex}};
@define-color card_bg_color {{colors.surface_container_low.default.hex}};
@define-color card_fg_color {{colors.on_surface.default.hex}};
@define-color sidebar_bg_color @window_bg_color;
@define-color sidebar_fg_color @window_fg_color;
@define-color sidebar_border_color @window_bg_color;
@define-color sidebar_backdrop_color @window_bg_color;

View File

@@ -0,0 +1,235 @@
[Icon Theme]
Name=Adwaita-Matugen
Comment=The Only One
Example=folder
Inherits=Adwaita,AdwaitaLegacy,hicolor
Hidden=true
# KDE Specific Stuff
DisplayDepth=32
LinkOverlay=link_overlay
LockOverlay=lock_overlay
ZipOverlay=zip_overlay
DesktopDefault=48
DesktopSizes=16,22,32,48,64,72,96,128
ToolbarDefault=22
ToolbarSizes=16,22,32,48
MainToolbarDefault=22
MainToolbarSizes=16,22,32,48
SmallDefault=16
SmallSizes=16
PanelDefault=32
PanelSizes=16,22,32,48,64,72,96,128
# Directory list
Directories=16x16/actions,16x16/apps,16x16/categories,16x16/devices,16x16/emblems,16x16/emotes,16x16/legacy,16x16/mimetypes,16x16/places,16x16/status,16x16/ui,scalable/devices,scalable/mimetypes,scalable/places,scalable/status,scalable/actions,scalable/apps,scalable/categories,scalable/emblems,scalable/emotes,scalable/legacy,scalable/ui,symbolic/actions,symbolic/apps,symbolic/categories,symbolic/devices,symbolic/emblems,symbolic/emotes,symbolic/mimetypes,symbolic/places,symbolic/status,symbolic/legacy,symbolic/ui,
[16x16/actions]
Context=Actions
Size=16
Type=Fixed
[16x16/apps]
Context=Applications
Size=16
Type=Fixed
[16x16/categories]
Context=Categories
Size=16
Type=Fixed
[16x16/devices]
Context=Devices
Size=16
Type=Fixed
[16x16/emblems]
Context=Emblems
Size=16
Type=Fixed
[16x16/emotes]
Context=Emotes
Size=16
Type=Fixed
[16x16/legacy]
Context=Legacy
Size=16
Type=Fixed
[16x16/mimetypes]
Context=MimeTypes
Size=16
Type=Fixed
[16x16/places]
Context=Places
Size=16
Type=Fixed
[16x16/status]
Context=Status
Size=16
Type=Fixed
[16x16/ui]
Context=UI
Size=16
Type=Fixed
[scalable/devices]
Context=Devices
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/mimetypes]
Context=MimeTypes
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/places]
Context=Places
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/status]
Context=Status
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/actions]
Context=Actions
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/apps]
Context=Applications
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/categories]
Context=Categories
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/emblems]
Context=Emblems
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/emotes]
Context=Emotes
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/legacy]
Context=Legacy
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[scalable/ui]
Context=UI
Size=128
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/actions]
Context=Actions
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/apps]
Context=Applications
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/categories]
Context=Categories
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/devices]
Context=Devices
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/emblems]
Context=Emblems
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/emotes]
Context=Emotes
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/mimetypes]
Context=MimeTypes
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/places]
Context=Places
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/status]
Context=Status
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/legacy]
Context=Legacy
Size=16
MinSize=8
MaxSize=512
Type=Scalable
[symbolic/ui]
Context=UI
Size=16
MinSize=8
MaxSize=512
Type=Scalable

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<path d="m 23.507812 18.898438 l 1.945313 16.953124 c 0.410156 3.546876 1.113281 7.082032 1.050781 10.652344 c -0.027344 1.789063 -0.320312 3.609375 -1.179687 5.171875 c -0.429688 0.785157 -1 1.492188 -1.707031 2.039063 c -0.707032 0.546875 -1.550782 0.925781 -2.4375 1.035156 c -1.25 0.152344 -2.5 -0.222656 -3.679688 -0.675781 c -1.175781 -0.449219 -2.335938 -0.988281 -3.582031 -1.171875 c -1.367188 -0.203125 -2.785157 0.035156 -4.039063 0.617187 c -1.25 0.582031 -2.335937 1.5 -3.164062 2.605469 c -1.652344 2.210938 -2.242188 5.09375 -2.042969 7.851562 c 0.152344 2.113282 0.773437 4.25 2.109375 5.898438 c 0.667969 0.824219 1.507812 1.515625 2.46875 1.964844 c 0.960938 0.449218 2.039062 0.652344 3.09375 0.53125 c 1.476562 -0.167969 2.800781 -0.9375 4.136719 -1.582032 c 0.667969 -0.324218 1.355469 -0.621093 2.074219 -0.800781 c 0.722656 -0.175781 1.484374 -0.230469 2.207031 -0.070312 c 0.78125 0.175781 1.5 0.597656 2.070312 1.15625 c 0.574219 0.5625 1.007813 1.257812 1.3125 1.996093 c 0.613281 1.480469 0.726563 3.113282 0.800781 4.714844 c 0.441407 9.582032 -0.285156 19.21875 -2.152343 28.628906 c 6.460937 2.402344 13.152343 4.175782 19.953125 5.285157 c 2.421875 0.394531 4.945312 0.695312 7.285156 -0.023438 c 1.171875 -0.363281 2.273438 -0.988281 3.109375 -1.886719 c 0.832031 -0.898437 1.378906 -2.082031 1.414063 -3.304687 c 0.019531 -0.792969 -0.167969 -1.578125 -0.464844 -2.308594 c -0.296875 -0.734375 -0.699219 -1.417969 -1.125 -2.085937 c -0.851563 -1.332032 -1.8125 -2.644532 -2.195313 -4.175782 c -0.378906 -1.492187 -0.167969 -3.105468 0.484375 -4.5 c 0.652344 -1.394531 1.722656 -2.570312 2.992188 -3.4375 c 2.539062 -1.738281 5.742187 -2.222656 8.816406 -2.167968 c 2.75 0.046875 5.578125 0.515625 7.90625 1.980468 c 1.164062 0.730469 2.1875 1.707032 2.898438 2.882813 c 0.707031 1.179687 1.097656 2.5625 1.023437 3.933594 c -0.105469 1.996093 -1.148437 3.796875 -1.984375 5.609375 c -0.417969 0.90625 -0.789062 1.84375 -0.96875 2.824218 c -0.179688 0.980469 -0.160156 2.019532 0.195312 2.953126 c 0.5 1.324218 1.632813 2.339843 2.910157 2.953124 c 1.28125 0.613282 2.699219 0.867188 4.109375 1.03125 c 8.546875 0.988282 17.421875 -1.183593 24.546875 -6.007812 l -2.867188 -18.113281 c -0.515625 -3.257813 -1.230469 -6.523438 -1.128906 -9.820313 c 0.050781 -1.648437 0.359375 -3.320312 1.152344 -4.769531 c 0.394531 -0.722656 0.910156 -1.382813 1.546875 -1.914063 c 0.632812 -0.527343 1.382812 -0.917968 2.191406 -1.097656 c 0.761719 -0.167968 1.5625 -0.144531 2.332031 -0.003906 s 1.511719 0.394531 2.242188 0.679688 c 1.457031 0.566406 2.890625 1.265624 4.441406 1.46875 c 1.433594 0.191406 2.917969 -0.066407 4.226563 -0.679688 c 1.308593 -0.613281 2.445312 -1.574219 3.308593 -2.734375 c 1.726563 -2.316406 2.3125 -5.363281 1.960938 -8.234375 c -0.285157 -2.339844 -1.195313 -4.644531 -2.816407 -6.359375 c -0.8125 -0.855469 -1.792968 -1.554687 -2.882812 -2.003906 s -2.285156 -0.648438 -3.460938 -0.535157 c -1.5625 0.152344 -3.011718 0.835938 -4.476562 1.398438 c -0.734375 0.28125 -1.480469 0.53125 -2.253906 0.671875 c -0.769532 0.140625 -1.570313 0.167969 -2.335938 -0.003906 c -1.160156 -0.257813 -2.195312 -0.964844 -2.945312 -1.882813 c -0.75 -0.921875 -1.226563 -2.046875 -1.476563 -3.207031 c -0.5 -2.324219 -0.121093 -4.734375 0.21875 -7.085937 c 1.132813 -7.882813 1.773438 -15.835938 1.910157 -23.800782 c -6.902344 -2.328125 -14.0625 -3.890625 -21.304688 -4.648437 c -2.097656 -0.222657 -4.269531 -0.367188 -6.273438 0.300781 c -1 0.332031 -1.941406 0.875 -2.667968 1.636719 c -0.730469 0.765625 -1.234375 1.753906 -1.335938 2.804687 c -0.074218 0.796875 0.082032 1.605469 0.367188 2.351563 c 0.28125 0.746093 0.695312 1.441406 1.140625 2.105469 c 0.886719 1.328124 1.9375 2.585937 2.480469 4.089843 c 0.578124 1.613281 0.519531 3.429688 -0.066407 5.039063 c -0.582031 1.613281 -1.671875 3.019531 -3.023437 4.078125 c -2.695313 2.113281 -6.289063 2.785156 -9.714844 2.632812 c -2.800781 -0.125 -5.664062 -0.800781 -7.90625 -2.488281 c -1.117188 -0.847656 -2.0625 -1.9375 -2.660156 -3.207031 c -0.601563 -1.269531 -0.847656 -2.714844 -0.621094 -4.097657 c 0.324219 -1.976562 1.550781 -3.667968 2.574219 -5.390624 c 0.511719 -0.863282 0.980469 -1.757813 1.269531 -2.71875 c 0.289062 -0.960938 0.386719 -1.992188 0.148438 -2.96875 c -0.242188 -0.980469 -0.820313 -1.863282 -1.574219 -2.535157 c -0.75 -0.671875 -1.675781 -1.140625 -2.640625 -1.425781 c -1.9375 -0.574219 -4.003906 -0.433594 -6.011719 -0.207031 c -7.308594 0.820312 -14.496094 2.714843 -21.257813 5.605469 z m 0 0" fill="#62a0ea"/>
</svg>

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<clipPath id="a">
<path d="m 4 4 h 119 v 119 h -119 z m 0 0"/>
</clipPath>
<clipPath id="b">
<path d="m 69.164062 6.558594 l 51.542969 51.542968 c 3.046875 3.046876 3.046875 7.988282 0 11.035157 l -51.542969 51.542969 c -3.046874 3.046874 -7.988281 3.046874 -11.035156 0 l -51.542968 -51.542969 c -3.046876 -3.046875 -3.046876 -7.988281 0 -11.035157 l 51.542968 -51.542968 c 3.046875 -3.046875 7.988282 -3.046875 11.035156 0 z m 0 0"/>
</clipPath>
<clipPath id="c">
<path d="m 48 32 h 75 v 91 h -75 z m 0 0"/>
</clipPath>
<clipPath id="d">
<path d="m 69.164062 6.558594 l 51.542969 51.542968 c 3.046875 3.046876 3.046875 7.988282 0 11.035157 l -51.542969 51.542969 c -3.046874 3.046874 -7.988281 3.046874 -11.035156 0 l -51.542968 -51.542969 c -3.046876 -3.046875 -3.046876 -7.988281 0 -11.035157 l 51.542968 -51.542968 c 3.046875 -3.046875 7.988282 -3.046875 11.035156 0 z m 0 0"/>
</clipPath>
<clipPath id="e">
<path d="m 4 4 h 57 v 89 h -57 z m 0 0"/>
</clipPath>
<clipPath id="f">
<path d="m 69.164062 6.558594 l 51.542969 51.542968 c 3.046875 3.046876 3.046875 7.988282 0 11.035157 l -51.542969 51.542969 c -3.046874 3.046874 -7.988281 3.046874 -11.035156 0 l -51.542968 -51.542969 c -3.046876 -3.046875 -3.046876 -7.988281 0 -11.035157 l 51.542968 -51.542968 c 3.046875 -3.046875 7.988282 -3.046875 11.035156 0 z m 0 0"/>
</clipPath>
<g clip-path="url(#a)">
<g clip-path="url(#b)">
<path d="m 65.136719 2.53125 l 59.597656 59.597656 c 0.824219 0.824219 0.824219 2.15625 0 2.980469 l -59.597656 59.597656 c -0.824219 0.824219 -2.15625 0.824219 -2.980469 0 l -59.597656 -59.597656 c -0.824219 -0.824219 -0.824219 -2.15625 0 -2.980469 l 59.597656 -59.597656 c 0.824219 -0.824219 2.15625 -0.824219 2.980469 0 z m 0 0" fill="#3584e4"/>
</g>
</g>
<g clip-path="url(#c)">
<g clip-path="url(#d)">
<path d="m 100.933594 32.875 l -2.410156 7.273438 c -0.117188 -0.007813 -0.230469 -0.011719 -0.347657 -0.015626 c -1.953125 0.011719 -3.902343 0.164063 -5.835937 0.449219 l -3.363282 -6.949219 c -2.4375 0.46875 -4.832031 1.117188 -7.171874 1.945313 l 0.558593 7.65625 c -1.910156 0.78125 -3.765625 1.707031 -5.542969 2.761719 l -5.78125 -5.148438 c -2.066406 1.371094 -4.027343 2.890625 -5.867187 4.554688 l 3.4375 6.84375 c -1.464844 1.460937 -2.820313 3.027344 -4.058594 4.6875 l -7.328125 -2.550782 c -1.378906 2.058594 -2.605468 4.21875 -3.660156 6.460938 l 5.785156 5 c -0.792968 1.910156 -1.441406 3.878906 -1.945312 5.886719 l -7.738282 0.449219 c -0.492187 2.429687 -0.800781 4.894531 -0.921874 7.371093 l 7.273437 2.410157 c -0.003906 0.113281 -0.011719 0.230468 -0.015625 0.347656 c 0.015625 1.953125 0.164062 3.902344 0.449219 5.835937 l -6.949219 3.363281 c 0.46875 2.433594 1.117188 4.832032 1.945312 7.167969 l 7.65625 -0.554687 c 0.785157 1.910156 1.707032 3.765625 2.761719 5.542968 l -5.148437 5.78125 c 1.371094 2.066407 2.894531 4.027344 4.554687 5.867188 l 6.84375 -3.4375 c 1.460938 1.464844 3.027344 2.820312 4.6875 4.054688 l -2.546875 7.332031 c 2.054688 1.378906 4.214844 2.601562 6.457032 3.660156 l 5 -5.785156 c 1.914062 0.792969 3.878906 1.441406 5.886718 1.945312 l 0.453125 7.738281 c 2.429688 0.488282 4.890625 0.796876 7.367188 0.921876 l 2.410156 -7.273438 c 0.117187 0.003906 0.230469 0.011719 0.347656 0.015625 c 1.953125 -0.015625 3.902344 -0.164063 5.835938 -0.449219 l 3.363281 6.949219 c 2.433594 -0.46875 4.832031 -1.117187 7.167969 -1.945313 l -0.554688 -7.65625 c 1.910157 -0.785156 3.765625 -1.707031 5.542969 -2.761718 l 5.78125 5.144531 c 2.066406 -1.367187 4.027344 -2.890625 5.867188 -4.550781 l -3.4375 -6.847656 c 1.464843 -1.457032 2.820312 -3.023438 4.054687 -4.683594 l 7.332031 2.546875 c 1.378906 -2.058594 2.601563 -4.214844 3.660156 -6.457031 l -5.785156 -5 c 0.792969 -1.914063 1.441406 -3.878907 1.945313 -5.886719 l 7.738281 -0.453125 c 0.492188 -2.429688 0.796875 -4.890625 0.921875 -7.367188 l -7.273437 -2.410156 c 0.003906 -0.117188 0.011718 -0.230469 0.015624 -0.347656 c -0.015624 -1.953125 -0.164062 -3.902344 -0.449218 -5.835938 l 6.949218 -3.363281 c -0.46875 -2.4375 -1.117187 -4.832031 -1.945312 -7.171875 l -7.65625 0.558594 c -0.785156 -1.914063 -1.707031 -3.765625 -2.761719 -5.542969 l 5.144531 -5.78125 c -1.367187 -2.066406 -2.890624 -4.027344 -4.550781 -5.867187 l -6.847656 3.4375 c -1.457031 -1.464844 -3.023437 -2.820313 -4.683594 -4.058594 l 2.546875 -7.328125 c -2.058594 -1.378907 -4.214844 -2.605469 -6.457031 -3.660157 l -5 5.785157 c -1.914063 -0.792969 -3.878906 -1.441407 -5.886719 -1.945313 l -0.453125 -7.738281 c -2.429687 -0.492187 -4.890625 -0.800781 -7.367187 -0.921875 z m -2.757813 18.484375 c 17.09375 0 30.949219 13.855469 30.949219 30.949219 s -13.855469 30.949218 -30.949219 30.949218 s -30.949219 -13.855468 -30.949219 -30.949218 s 13.855469 -30.949219 30.949219 -30.949219 z m 0 0" fill="#98c1f1"/>
</g>
</g>
<g clip-path="url(#e)">
<g clip-path="url(#f)">
<path d="m 13.84375 -6.292969 l -2.414062 7.273438 c -0.113282 -0.007813 -0.230469 -0.011719 -0.347657 -0.019531 c -1.953125 0.015624 -3.902343 0.167968 -5.832031 0.453124 l -3.367188 -6.949218 c -2.433593 0.46875 -4.832031 1.117187 -7.167968 1.945312 l 0.558594 7.65625 c -1.914063 0.78125 -3.765626 1.703125 -5.542969 2.757813 l -5.785157 -5.144531 c -2.066406 1.371093 -4.027343 2.890624 -5.867187 4.554687 l 3.4375 6.84375 c -1.464844 1.460937 -2.820313 3.027344 -4.054687 4.683594 l -7.328126 -2.546875 c -1.382812 2.058594 -2.605468 4.21875 -3.664062 6.460937 l 5.789062 5 c -0.792968 1.910157 -1.445312 3.878907 -1.949218 5.886719 l -7.738282 0.449219 c -0.488281 2.429687 -0.796874 4.894531 -0.917968 7.367187 l 7.273437 2.414063 c -0.007812 0.113281 -0.011719 0.230469 -0.019531 0.347656 c 0.015625 1.953125 0.167969 3.902344 0.453125 5.832031 l -6.949219 3.367188 c 0.464844 2.433594 1.117188 4.832031 1.941406 7.167968 l 7.660157 -0.558593 c 0.78125 1.914062 1.703125 3.765625 2.757812 5.542969 l -5.144531 5.785156 c 1.367188 2.066406 2.890625 4.027344 4.554688 5.867187 l 6.84375 -3.4375 c 1.460937 1.464844 3.027343 2.820313 4.683593 4.054688 l -2.546875 7.328125 c 2.058594 1.382812 4.21875 2.605468 6.457032 3.664062 l 5.003906 -5.785156 c 1.910156 0.789062 3.878906 1.441406 5.886718 1.945312 l 0.449219 7.738282 c 2.429688 0.488281 4.890625 0.796875 7.367188 0.917968 l 2.410156 -7.273437 c 0.117187 0.007813 0.234375 0.015625 0.347656 0.019531 c 1.953125 -0.015625 3.902344 -0.167968 5.835938 -0.453125 l 3.367187 6.949219 c 2.433594 -0.464844 4.828125 -1.117188 7.167969 -1.941406 l -0.558594 -7.660156 c 1.914063 -0.78125 3.765625 -1.703126 5.542969 -2.757813 l 5.785156 5.144531 c 2.066406 -1.367187 4.027344 -2.890625 5.863282 -4.554687 l -3.4375 -6.84375 c 1.46875 -1.460938 2.824218 -3.023438 4.058593 -4.683594 l 7.328125 2.546875 c 1.382813 -2.058594 2.605469 -4.21875 3.664063 -6.457031 l -5.789063 -5 c 0.792969 -1.914063 1.445313 -3.882813 1.949219 -5.890625 l 7.734375 -0.449219 c 0.492188 -2.429687 0.800781 -4.890625 0.921875 -7.367187 l -7.273437 -2.410157 c 0.007812 -0.117187 0.011718 -0.234375 0.019531 -0.347656 c -0.015625 -1.953125 -0.167969 -3.902344 -0.453125 -5.835937 l 6.949218 -3.367188 c -0.46875 -2.433594 -1.117187 -4.828125 -1.941406 -7.167969 l -7.660156 0.558594 c -0.78125 -1.914063 -1.703125 -3.765625 -2.757812 -5.542969 l 5.144531 -5.785156 c -1.371094 -2.066406 -2.890625 -4.027344 -4.554688 -5.863281 l -6.84375 3.4375 c -1.460937 -1.464844 -3.027343 -2.824219 -4.683593 -4.058594 l 2.546874 -7.328125 c -2.058593 -1.378906 -4.21875 -2.605469 -6.460937 -3.664062 l -5 5.789062 c -1.910156 -0.792969 -3.878906 -1.445312 -5.886719 -1.949219 l -0.449218 -7.734375 c -2.429688 -0.492187 -4.894532 -0.800781 -7.367188 -0.921875 z m 0 0" fill="#1a5fb4"/>
</g>
</g>
<path d="m 5.167969 60.457031 c -1.234375 3.042969 -0.613281 6.644531 1.859375 9.117188 l 50.660156 50.664062 c 3.300781 3.300781 8.617188 3.300781 11.917969 0 l 50.660156 -50.664062 c 2.472656 -2.472657 3.09375 -6.074219 1.859375 -9.117188 c -0.410156 1.019531 -1.03125 1.972657 -1.859375 2.800781 l -50.660156 50.660157 c -3.300781 3.300781 -8.617188 3.300781 -11.917969 0 l -50.660156 -50.660157 c -0.828125 -0.828124 -1.449219 -1.78125 -1.859375 -2.800781 z m 0 0" fill="#1a5fb4" fill-opacity="0.501961"/>
</svg>

After

Width:  |  Height:  |  Size: 8.4 KiB

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg">
<path d="m 28 8 h 50 l 30.042969 29.917969 v 74.058593 c 0 4.433594 -3.609375 8.023438 -8.042969 8.023438 h -72 c -4.433594 0 -8 -3.566406 -8 -8 v -96 c 0 -4.433594 3.566406 -8 8 -8 z m 0 0" fill="#f6f5f4"/>
<path d="m 78 8 v 22 c 0 4.433594 3.609375 7.921875 8.042969 7.921875 l 22 -0.003906 z m 0 0" fill="#deddda"/>
<path d="m 35.988281 99.925781 v -2 h 60 v 2 z m 0 0" fill="#1a5fb4"/>
<path d="m 63.707031 55.621094 c -6.925781 0 -13.933593 1.851562 -18.683593 5.234375 l 4.511718 8.777343 c 3.140625 -2.496093 7.890625 -4.027343 12.480469 -4.027343 c 6.761719 0 9.984375 3.140625 9.984375 8.535156 h -9.984375 c -13.207031 0 -18.601563 5.316406 -18.601563 12.964844 c 0 7.488281 6.039063 13.125 16.183594 13.125 c 6.363282 0 10.871094 -2.09375 13.207032 -6.039063 v 5.398438 h 11.757812 v -24.722656 c 0 -13.125 -7.652344 -19.246094 -20.855469 -19.246094 z m -0.96875 36.15625 c -4.425781 0 -7.085937 -2.09375 -7.085937 -5.234375 c 0 -2.898438 1.851562 -5.074219 7.730468 -5.074219 h 8.617188 v 4.429688 c -1.449219 3.945312 -5.074219 5.878906 -9.261719 5.878906 z m 0 0" fill="#3584e4"/>
<g fill="#1a5fb4">
<path d="m 89.988281 49.925781 h 2 v 56 h -2 z m 0 0"/>
<path d="m 86.996094 49.925781 l 3.992187 -3.992187 l 3.992188 3.992187 z m 0 0"/>
<path d="m 86.996094 103.933594 l 3.992187 3.992187 l 3.992188 -3.992187 z m 0 0"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg">
<path d="m 28 8 h 50 l 30.042969 29.917969 v 74.058593 c 0 4.433594 -3.609375 8.023438 -8.042969 8.023438 h -72 c -4.433594 0 -8 -3.566406 -8 -8 v -96 c 0 -4.433594 3.566406 -8 8 -8 z m 0 0" fill="#f6f5f4"/>
<path d="m 78 8 v 22 c 0 4.433594 3.609375 7.921875 8.042969 7.921875 l 22 -0.003906 z m 0 0" fill="#deddda"/>
<path d="m 94.023438 73.917969 c 0 16.570312 -13.433594 30 -30 30 c -16.570313 0 -30 -13.429688 -30 -30 c 0 -16.566407 13.429687 -30 30 -30 c 16.566406 0 30 13.433593 30 30 z m 0 0" fill="#62a0ea"/>
<path d="m 94.023438 72.917969 c 0 16.570312 -13.433594 30 -30 30 c -16.570313 0 -30 -13.429688 -30 -30 c 0 -16.566407 13.429687 -30 30 -30 c 16.566406 0 30 13.433593 30 30 z m 0 0" fill="#3584e4"/>
<path d="m 46.023438 73.417969 c 0.0625 6.957031 1.441406 13.683593 3.917968 19.125 c -1.96875 1.007812 -3.640625 2.222656 -4.929687 3.582031 c -6.820313 -5.585938 -10.839844 -13.890625 -10.984375 -22.707031 z m 0 0" fill="#99c1f1"/>
<path d="m 64.023438 73.417969 v 29.5 c -2.253907 0 -4.496094 -0.253907 -6.691407 -0.753907 c -6.734375 -4.71875 -11.191406 -16.050781 -11.308593 -28.746093 z m 0 0" fill="#62a0ea"/>
<path d="m 64.023438 89.417969 v 13.5 c -2.253907 0 -4.496094 -0.253907 -6.691407 -0.753907 c -2.898437 -2.03125 -5.445312 -5.34375 -7.390625 -9.617187 c 3.953125 -2.023437 8.9375 -3.128906 14.082032 -3.128906 z m 0 0" fill="#3584e4"/>
<path d="m 49.941406 92.542969 c 1.945313 4.273437 4.492188 7.589843 7.390625 9.621093 c -4.515625 -1.035156 -8.734375 -3.101562 -12.320312 -6.039062 c 1.289062 -1.359375 2.960937 -2.574219 4.929687 -3.582031 z m 0 0" fill="#62a0ea"/>
<path d="m 82.019531 73.417969 c -0.0625 6.960937 -1.441406 13.683593 -3.917969 19.128906 c 1.972657 1.007813 3.640626 2.21875 4.929688 3.578125 c 6.820312 -5.585938 10.839844 -13.890625 10.988281 -22.707031 z m 0 0" fill="#1c71d8"/>
<path d="m 64.023438 73.417969 v 29.5 c 2.25 0 4.492187 -0.253907 6.6875 -0.753907 c 6.734374 -4.71875 11.195312 -16.050781 11.308593 -28.746093 z m 0 0" fill="#3584e4"/>
<path d="m 64.023438 89.417969 v 13.5 c 2.25 0 4.492187 -0.253907 6.6875 -0.753907 c 2.898437 -2.03125 5.445312 -5.34375 7.390624 -9.617187 c -3.953124 -2.023437 -8.933593 -3.128906 -14.078124 -3.128906 z m 0 0" fill="#1c71d8"/>
<path d="m 78.101562 92.542969 c -1.945312 4.273437 -4.492187 7.589843 -7.390624 9.621093 c 4.519531 -1.035156 8.734374 -3.101562 12.320312 -6.039062 c -1.289062 -1.359375 -2.957031 -2.574219 -4.929688 -3.582031 z m 0 0" fill="#1a5fb4"/>
<path d="m 64.023438 42.917969 c -16.570313 0 -30 13.433593 -30 30 c 0 0.167969 0 0.335937 0.003906 0.5 h 29.996094 z m 0 0" fill="#b3d3f9"/>
<path d="m 57.335938 43.675781 c -4.519532 1.03125 -8.738282 3.097657 -12.324219 6.035157 c 1.289062 1.363281 2.960937 2.574218 4.929687 3.582031 c 1.945313 -4.273438 4.496094 -7.589844 7.394532 -9.617188 z m 0 0" fill="#d7e8fc"/>
<path d="m 64.023438 42.917969 c -2.25 0 -4.496094 0.253906 -6.6875 0.757812 c -6.832032 4.78125 -11.3125 16.363281 -11.3125 29.242188 v 0.5 h 18 z m 0 0" fill="#99c1f1"/>
<path d="m 64.023438 42.917969 c -2.25 0 -4.496094 0.253906 -6.6875 0.757812 c -2.898438 2.027344 -5.445313 5.34375 -7.390626 9.617188 c 3.953126 2.019531 8.933594 3.125 14.078126 3.125 z m 0 0" fill="#b3d3f9"/>
<path d="m 64.023438 42.917969 c 16.566406 0 30 13.433593 30 30 c 0 0.167969 -0.003907 0.335937 -0.003907 0.5 h -29.996093 z m 0 0" fill="#3584e4"/>
<path d="m 70.707031 43.675781 c 4.519531 1.03125 8.738281 3.097657 12.328125 6.035157 c -1.292968 1.363281 -2.960937 2.574218 -4.933594 3.582031 c -1.945312 -4.273438 -4.492187 -7.589844 -7.394531 -9.617188 z m 0 0" fill="#62a0ea"/>
<path d="m 64.023438 42.917969 c 2.25 0 4.492187 0.253906 6.683593 0.757812 c 6.835938 4.78125 11.316407 16.363281 11.316407 29.242188 c 0 0.167969 0 0.335937 -0.003907 0.5 h -17.996093 z m 0 0" fill="#62a0ea"/>
<path d="m 64.023438 42.917969 c 2.25 0 4.492187 0.253906 6.683593 0.757812 c 2.902344 2.027344 5.449219 5.34375 7.394531 9.617188 c -3.953124 2.019531 -8.933593 3.125 -14.078124 3.125 z m 0 0" fill="#99c1f1"/>
</svg>

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<clipPath id="a">
<path d="m 33 46 h 61 v 61 h -61 z m 0 0"/>
</clipPath>
<clipPath id="b">
<path d="m 66.675781 47.21875 l 26.046875 26.046875 c 1.539063 1.539063 1.539063 4.039063 0 5.578125 l -26.046875 26.046875 c -1.539062 1.539063 -4.035156 1.539063 -5.574219 0 l -26.046874 -26.046875 c -1.542969 -1.539062 -1.542969 -4.039062 0 -5.578125 l 26.046874 -26.046875 c 1.539063 -1.539062 4.035157 -1.539062 5.574219 0 z m 0 0"/>
</clipPath>
<clipPath id="c">
<path d="m 56 60 h 38 v 47 h -38 z m 0 0"/>
</clipPath>
<clipPath id="d">
<path d="m 66.675781 47.21875 l 26.046875 26.046875 c 1.539063 1.539063 1.539063 4.039063 0 5.578125 l -26.046875 26.046875 c -1.539062 1.539063 -4.035156 1.539063 -5.574219 0 l -26.046874 -26.046875 c -1.542969 -1.539062 -1.542969 -4.039062 0 -5.578125 l 26.046874 -26.046875 c 1.539063 -1.539062 4.035157 -1.539062 5.574219 0 z m 0 0"/>
</clipPath>
<clipPath id="e">
<path d="m 33 46 h 30 v 45 h -30 z m 0 0"/>
</clipPath>
<clipPath id="f">
<path d="m 66.675781 47.21875 l 26.046875 26.046875 c 1.539063 1.539063 1.539063 4.039063 0 5.578125 l -26.046875 26.046875 c -1.539062 1.539063 -4.035156 1.539063 -5.574219 0 l -26.046874 -26.046875 c -1.542969 -1.539062 -1.542969 -4.039062 0 -5.578125 l 26.046874 -26.046875 c 1.539063 -1.539062 4.035157 -1.539062 5.574219 0 z m 0 0"/>
</clipPath>
<path d="m 28 8 h 50 l 30.042969 29.917969 v 74.058593 c 0 4.433594 -3.609375 8.023438 -8.042969 8.023438 h -72 c -4.433594 0 -8 -3.566406 -8 -8 v -96 c 0 -4.433594 3.566406 -8 8 -8 z m 0 0" fill="#f6f5f4"/>
<path d="m 78 8 v 22 c 0 4.433594 3.609375 7.921875 8.042969 7.921875 l 22 -0.003906 z m 0 0" fill="#deddda"/>
<g clip-path="url(#a)">
<g clip-path="url(#b)">
<path d="m 64.640625 45.183594 l 30.117187 30.117187 c 0.417969 0.417969 0.417969 1.089844 0 1.507813 l -30.117187 30.117187 c -0.414063 0.414063 -1.089844 0.414063 -1.503906 0 l -30.117188 -30.117187 c -0.417969 -0.417969 -0.417969 -1.089844 0 -1.507813 l 30.117188 -30.117187 c 0.414062 -0.414063 1.089843 -0.414063 1.503906 0 z m 0 0" fill="#3584e4"/>
</g>
</g>
<g clip-path="url(#c)">
<g clip-path="url(#d)">
<path d="m 82.730469 60.519531 l -1.21875 3.675781 c -0.058594 -0.003906 -0.117188 -0.007812 -0.175781 -0.011718 c -0.984376 0.007812 -1.972657 0.085937 -2.949219 0.230468 l -1.699219 -3.511718 c -1.230469 0.234375 -2.441406 0.5625 -3.621094 0.980468 l 0.28125 3.871094 c -0.96875 0.394532 -1.902344 0.863282 -2.800781 1.394532 l -2.921875 -2.601563 c -1.046875 0.691406 -2.035156 1.460937 -2.964844 2.300781 l 1.734375 3.460938 c -0.738281 0.738281 -1.425781 1.527344 -2.046875 2.367187 l -3.707031 -1.289062 c -0.695313 1.042969 -1.3125 2.132812 -1.847656 3.265625 l 2.921875 2.527344 c -0.398438 0.964843 -0.726563 1.960937 -0.984375 2.972656 l -3.90625 0.230468 c -0.25 1.226563 -0.40625 2.472657 -0.46875 3.722657 l 3.675781 1.21875 c -0.003906 0.058593 -0.003906 0.117187 -0.007812 0.175781 c 0.007812 0.984375 0.085937 1.972656 0.226562 2.949219 l -3.511719 1.699219 c 0.238281 1.230468 0.566407 2.441406 0.984375 3.621093 l 3.871094 -0.28125 c 0.394531 0.96875 0.859375 1.902344 1.394531 2.800781 l -2.601562 2.921876 c 0.691406 1.046874 1.460937 2.035156 2.300781 2.964843 l 3.457031 -1.734375 c 0.738281 0.738282 1.53125 1.425782 2.367188 2.046875 l -1.285157 3.707031 c 1.039063 0.695313 2.128907 1.3125 3.261719 1.847657 l 2.527344 -2.921875 c 0.96875 0.398437 1.960937 0.726562 2.976563 0.984375 l 0.226562 3.90625 c 1.230469 0.25 2.472656 0.40625 3.722656 0.46875 l 1.21875 -3.675781 c 0.058594 0 0.117188 0.003906 0.175782 0.007812 c 0.988281 -0.007812 1.972656 -0.085938 2.949218 -0.226562 l 1.699219 3.511718 c 1.230469 -0.238281 2.441406 -0.566406 3.625 -0.984375 l -0.28125 -3.871093 c 0.964844 -0.394532 1.902344 -0.859376 2.800781 -1.394532 l 2.921875 2.601563 c 1.042969 -0.691407 2.035157 -1.460938 2.964844 -2.300781 l -1.738281 -3.460938 c 0.742187 -0.734375 1.425781 -1.527344 2.050781 -2.367188 l 3.703125 1.289063 c 0.699219 -1.039063 1.316406 -2.132813 1.851562 -3.261719 l -2.925781 -2.527344 c 0.402344 -0.96875 0.730469 -1.960937 0.984375 -2.976562 l 3.910156 -0.226562 c 0.246094 -1.230469 0.402344 -2.472657 0.464844 -3.722657 l -3.675781 -1.21875 c 0.003906 -0.058593 0.007813 -0.117187 0.007813 -0.175781 c -0.003907 -0.988281 -0.082032 -1.972656 -0.226563 -2.949219 l 3.511719 -1.699219 c -0.234375 -1.230468 -0.5625 -2.441406 -0.980469 -3.625 l -3.871094 0.28125 c -0.394531 -0.964843 -0.863281 -1.902343 -1.394531 -2.800781 l 2.601562 -2.921875 c -0.691406 -1.042968 -1.460937 -2.035156 -2.300781 -2.964844 l -3.460937 1.738282 c -0.738282 -0.742188 -1.527344 -1.425782 -2.367188 -2.050782 l 1.289063 -3.703124 c -1.042969 -0.699219 -2.132813 -1.316407 -3.265625 -1.851563 l -2.527344 2.925781 c -0.964844 -0.402344 -1.960938 -0.730468 -2.972656 -0.984375 l -0.230469 -3.910156 c -1.226563 -0.25 -2.472656 -0.402344 -3.722656 -0.464844 z m -1.394531 9.339844 c 8.636718 0 15.640624 7.003906 15.640624 15.640625 s -7.003906 15.636719 -15.640624 15.636719 c -8.636719 0 -15.636719 -7 -15.636719 -15.636719 s 7 -15.640625 15.636719 -15.640625 z m 0 0" fill="#98c1f1"/>
</g>
</g>
<g clip-path="url(#e)">
<g clip-path="url(#f)">
<path d="m 38.71875 40.726562 l -1.214844 3.675782 c -0.058594 -0.003906 -0.117187 -0.007813 -0.175781 -0.011719 c -0.988281 0.007813 -1.972656 0.085937 -2.949219 0.230469 l -1.703125 -3.511719 c -1.230469 0.234375 -2.441406 0.5625 -3.621093 0.980469 l 0.28125 3.871094 c -0.964844 0.394531 -1.902344 0.863281 -2.800782 1.394531 l -2.921875 -2.601563 c -1.042969 0.691406 -2.035156 1.460938 -2.964843 2.300782 l 1.738281 3.460937 c -0.742188 0.738281 -1.425781 1.527344 -2.050781 2.367187 l -3.703126 -1.289062 c -0.699218 1.042969 -1.316406 2.132812 -1.851562 3.265625 l 2.925781 2.527344 c -0.402343 0.964843 -0.730469 1.960937 -0.984375 2.972656 l -3.910156 0.230469 c -0.25 1.226562 -0.402344 2.472656 -0.464844 3.722656 l 3.675782 1.21875 c -0.003907 0.058594 -0.007813 0.117188 -0.011719 0.175781 c 0.007812 0.984375 0.085937 1.972657 0.230469 2.945313 l -3.511719 1.703125 c 0.234375 1.230469 0.5625 2.441406 0.980469 3.621093 l 3.871093 -0.28125 c 0.394531 0.96875 0.859375 1.902344 1.394531 2.800782 l -2.601562 2.921875 c 0.691406 1.046875 1.460938 2.035156 2.300781 2.964843 l 3.460938 -1.734374 c 0.738281 0.738281 1.527343 1.421874 2.367187 2.046874 l -1.289062 3.703126 c 1.042968 0.699218 2.132812 1.316406 3.265625 1.851562 l 2.527343 -2.921875 c 0.964844 0.398437 1.960938 0.726563 2.972657 0.980469 l 0.230469 3.910156 c 1.226562 0.25 2.46875 0.40625 3.722656 0.46875 l 1.21875 -3.675781 c 0.058594 0 0.117187 0.003906 0.175781 0.007812 c 0.984375 -0.007812 1.96875 -0.085937 2.945313 -0.230469 l 1.703124 3.511719 c 1.230469 -0.234375 2.441407 -0.5625 3.621094 -0.980469 l -0.28125 -3.871093 c 0.964844 -0.394531 1.902344 -0.859375 2.800782 -1.394531 l 2.921874 2.601562 c 1.046876 -0.691406 2.035157 -1.460938 2.964844 -2.300781 l -1.738281 -3.460938 c 0.742187 -0.734375 1.425781 -1.527343 2.050781 -2.367187 l 3.703125 1.289062 c 0.699219 -1.039062 1.316407 -2.132812 1.851563 -3.265625 l -2.921875 -2.523437 c 0.398437 -0.96875 0.726562 -1.960938 0.980469 -2.976563 l 3.910156 -0.226562 c 0.25 -1.230469 0.40625 -2.472657 0.464844 -3.722657 l -3.671876 -1.21875 c 0 -0.058593 0.003907 -0.117187 0.007813 -0.175781 c -0.007813 -0.988281 -0.085937 -1.972656 -0.230469 -2.949219 l 3.511719 -1.703124 c -0.234375 -1.230469 -0.5625 -2.441407 -0.980469 -3.621094 l -3.871094 0.28125 c -0.394531 -0.964844 -0.859374 -1.902344 -1.394531 -2.800782 l 2.601563 -2.921874 c -0.691406 -1.042969 -1.460938 -2.035157 -2.300782 -2.964844 l -3.460937 1.738281 c -0.738281 -0.742187 -1.527344 -1.425781 -2.367187 -2.050781 l 1.289062 -3.703125 c -1.039062 -0.699219 -2.132812 -1.316407 -3.265625 -1.851563 l -2.527344 2.925782 c -0.964843 -0.402344 -1.957031 -0.730469 -2.972656 -0.984376 l -0.226563 -3.910156 c -1.230468 -0.25 -2.472656 -0.402344 -3.726562 -0.464844 z m 0 0" fill="#1a5fb4"/>
</g>
</g>
<path d="m 34.335938 74.457031 c -0.621094 1.535157 -0.308594 3.359375 0.941406 4.609375 l 25.601562 25.601563 c 1.667969 1.667969 4.351563 1.667969 6.019532 0 l 25.601562 -25.601563 c 1.25 -1.25 1.5625 -3.074218 0.941406 -4.609375 c -0.210937 0.515625 -0.523437 0.996094 -0.941406 1.414063 l -25.601562 25.601562 c -1.667969 1.667969 -4.351563 1.667969 -6.019532 0 l -25.601562 -25.601562 c -0.417969 -0.417969 -0.730469 -0.898438 -0.941406 -1.414063 z m 0 0" fill="#1a5fb4" fill-opacity="0.501961"/>
</svg>

After

Width:  |  Height:  |  Size: 8.7 KiB

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<radialGradient id="a" cx="413.639404" cy="226.77327" gradientTransform="matrix(0.231318 0.400655 0.244759 -0.141312 -89.187302 -67.681122)" gradientUnits="userSpaceOnUse" r="192">
<stop offset="0" stop-color="#50db81"/>
<stop offset="1" stop-color="#8ff0a4" stop-opacity="0.003922"/>
</radialGradient>
<radialGradient id="b" cx="521.890137" cy="228.371063" gradientTransform="matrix(0.00000003 -0.278432 -0.284052 0 110.869301 251.310974)" gradientUnits="userSpaceOnUse" r="192">
<stop offset="0" stop-color="#4a86cf"/>
<stop offset="1" stop-color="#87bae1" stop-opacity="0"/>
</radialGradient>
<path d="m 28 8 h 50 l 30.042969 29.917969 v 74.058593 c 0 4.433594 -3.609375 8.023438 -8.042969 8.023438 h -72 c -4.433594 0 -8 -3.566406 -8 -8 v -96 c 0 -4.433594 3.566406 -8 8 -8 z m 0 0" fill="#f6f5f4"/>
<g fill="#deddda">
<path d="m 78 8 v 22 c 0 4.433594 3.609375 7.921875 8.042969 7.921875 l 22 -0.003906 z m 0 0"/>
<path d="m 82 100 h 12 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -12 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0"/>
<path d="m 82 92 h 12 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -12 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0"/>
<path d="m 82 84 h 12 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -12 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0"/>
<path d="m 82 76 h 12 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -12 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0"/>
<path d="m 82 68 h 12 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -12 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0"/>
<path d="m 82 60 h 12 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -12 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0"/>
<path d="m 82 52 h 12 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -12 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0"/>
<path d="m 34 44 h 60 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -60 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0"/>
<path d="m 34 36 h 36 c 1.105469 0 2 0.59375 2 1.324219 v 1.351562 c 0 0.730469 -0.894531 1.324219 -2 1.324219 h -36 c -1.105469 0 -2 -0.59375 -2 -1.324219 v -1.351562 c 0 -0.730469 0.894531 -1.324219 2 -1.324219 z m 0 0"/>
<path d="m 34 28 h 36 c 1.105469 0 2 0.59375 2 1.324219 v 1.351562 c 0 0.730469 -0.894531 1.324219 -2 1.324219 h -36 c -1.105469 0 -2 -0.59375 -2 -1.324219 v -1.351562 c 0 -0.730469 0.894531 -1.324219 2 -1.324219 z m 0 0"/>
</g>
<path d="m 36 104 h 34 c 2.210938 0 4 -1.789062 4 -4 v -42.035156 c 0 -2.207032 -1.789062 -4 -4 -4 h -34 c -2.210938 0 -4 1.792968 -4 4 v 42.035156 c 0 2.210938 1.789062 4 4 4 z m 0 0" fill="url(#a)"/>
<path d="m 36 104 h 34 c 2.210938 0 4 -1.789062 4 -4 v -42.035156 c 0 -2.207032 -1.789062 -4 -4 -4 h -34 c -2.210938 0 -4 1.792968 -4 4 v 42.035156 c 0 2.210938 1.789062 4 4 4 z m 0 0" fill="url(#b)"/>
</svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientUnits="userSpaceOnUse" x1="64" x2="64" y1="276" y2="284">
<stop offset="0" stop-color="#414140"/>
<stop offset="1" stop-color="#949390"/>
</linearGradient>
<linearGradient id="b" gradientUnits="userSpaceOnUse" x1="18.20984075" x2="109.79022225" y1="102" y2="102">
<stop offset="0" stop-color="#c7c6c3"/>
<stop offset="0.024221" stop-color="#e8e7e3"/>
<stop offset="0.0686115" stop-color="#cbcac7"/>
<stop offset="0.916655" stop-color="#cbcac7"/>
<stop offset="0.960246" stop-color="#eae8e4"/>
<stop offset="1" stop-color="#acaba8"/>
</linearGradient>
<linearGradient id="c" gradientTransform="matrix(0.2875 0 0 0.27027 -331.600006 -696.756775)" gradientUnits="userSpaceOnUse" x1="1376" x2="1376" y1="2692" y2="2932">
<stop offset="0" stop-color="#f6f5f4"/>
<stop offset="1" stop-color="#ffffff"/>
</linearGradient>
<linearGradient id="d" gradientUnits="userSpaceOnUse" x1="82.25" x2="82.25" y1="12" y2="26">
<stop offset="0" stop-color="#deddda"/>
<stop offset="1" stop-color="#9a9996"/>
</linearGradient>
<path d="m 83 286 l -14 -14 m -24 14 l 14 -14" fill="none" stroke="url(#a)" stroke-linecap="round" stroke-width="6" transform="matrix(1 0 0 1 0 -172)"/>
<path d="m 24 24 h 80 c 3.3125 0 6 2.6875 6 6 v 68 c 0 3.3125 -2.6875 6 -6 6 h -80 c -3.3125 0 -6 -2.6875 -6 -6 v -68 c 0 -3.3125 2.6875 -6 6 -6 z m 0 0" fill="url(#b)"/>
<path d="m 24 20 h 80 c 3.3125 0 6 2.6875 6 6 v 68 c 0 3.3125 -2.6875 6 -6 6 h -80 c -3.3125 0 -6 -2.6875 -6 -6 v -68 c 0 -3.3125 2.6875 -6 6 -6 z m 0 0" fill="url(#c)"/>
<path d="m 20 12 h 88 c 4.417969 0 8 3.582031 8 8 s -3.582031 8 -8 8 h -88 c -4.417969 0 -8 -3.582031 -8 -8 s 3.582031 -8 8 -8 z m 0 0" fill="url(#d)"/>
<path d="m 69.88671875 69.99609375 c -0.6484375 5.8046875 -4.08203125 10.9453125 -9.19921875 13.765625 c -0.96484375 0.53125 -2.625 1.21875 -3.6875 1.52734375 c -5.609375 1.625 -11.67578125 0.41796875 -16.234375 -3.23046875 c -0.86328125 -0.69140625 -2.1328125 -1.9609375 -2.82421875 -2.82421875 c -3.6484375 -4.55859375 -4.85546875 -10.625 -3.23046875 -16.234375 c 0.30859375 -1.0625 0.99609375 -2.72265625 1.52734375 -3.6875 c 2.8203125 -5.1171875 7.9609375 -8.55078125 13.765625 -9.19921875 c 1.09765625 -0.12109375 1.99609375 0.78515625 1.99609375 1.890625 v 13.99609375 c 0 1.10546875 0.89453125 2 2 2 h 13.99609375 c 1.10546875 0 2.01171875 0.8984375 1.890625 1.99609375 z m 0 0" fill="#1a5fb4" stroke="#204a87" stroke-width="0.0018155"/>
<path d="m 57.99609375 46.11328125 c 8.34375 0.921875 14.96875 7.546875 15.890625 15.890625 c 0.12109375 1.09765625 -0.78515625 1.99609375 -1.890625 1.99609375 h -13.99609375 c -1.10546875 0 -2 -0.89453125 -2 -2 v -13.99609375 c 0 -1.10546875 0.8984375 -2.01171875 1.99609375 -1.890625 z m 0 0" fill="#26a269" stroke="#204a87" stroke-width="0.0018155"/>
<path d="m 84 80 h 10 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -10 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 -10 h 10 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -10 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 -10 h 10 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -10 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 -10 h 10 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -10 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 -10 h 10 c 1.105469 0 2 0.894531 2 2 s -0.894531 2 -2 2 h -10 c -1.105469 0 -2 -0.894531 -2 -2 s 0.894531 -2 2 -2 z m 0 0" fill="#d5d3cf"/>
<path d="m 69.88671875 67.99609375 c -0.6484375 5.8046875 -4.08203125 10.9453125 -9.19921875 13.765625 c -0.96484375 0.53125 -2.625 1.21875 -3.6875 1.52734375 c -5.609375 1.625 -11.67578125 0.41796875 -16.234375 -3.23046875 c -0.86328125 -0.69140625 -2.1328125 -1.9609375 -2.82421875 -2.82421875 c -3.6484375 -4.55859375 -4.85546875 -10.625 -3.23046875 -16.234375 c 0.30859375 -1.0625 0.99609375 -2.72265625 1.52734375 -3.6875 c 2.8203125 -5.1171875 7.9609375 -8.55078125 13.765625 -9.19921875 c 1.09765625 -0.12109375 1.99609375 0.78515625 1.99609375 1.890625 v 13.99609375 c 0 1.10546875 0.89453125 2 2 2 h 13.99609375 c 1.10546875 0 2.01171875 0.8984375 1.890625 1.99609375 z m 0 0" fill="#4a86cf" stroke="#204a87" stroke-width="0.0018155"/>
<path d="m 57.99609375 44.11328125 c 8.34375 0.921875 14.96875 7.546875 15.890625 15.890625 c 0.12109375 1.09765625 -0.78515625 1.99609375 -1.890625 1.99609375 h -13.99609375 c -1.10546875 0 -2 -0.89453125 -2 -2 v -13.99609375 c 0 -1.10546875 0.8984375 -2.01171875 1.99609375 -1.890625 z m 0 0" fill="#50db81" stroke="#204a87" stroke-width="0.0018155"/>
<path d="m 18 18 h 92" fill="none" stroke="#deddda" stroke-linecap="round" stroke-width="4"/>
</svg>

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<path d="m 58 60 c -3.289062 0 -6 2.710938 -6 6 v 20 c 0 3.289062 2.710938 6 6 6 h 12 c 3.289062 0 6 -2.710938 6 -6 v -17 c 0 -0.53125 -0.210938 -1.039062 -0.585938 -1.414062 l -7 -7 c -0.375 -0.375 -0.882812 -0.585938 -1.414062 -0.585938 z m 0 4 h 8 v 3 c 0 2 1 3 3 3 h 3 v 16 c 0 1.140625 -0.859375 2 -2 2 h -12 c -1.140625 0 -2 -0.859375 -2 -2 v -20 c 0 -1.140625 0.859375 -2 2 -2 z m 0 0" fill="#438de6"/>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<path d="m 64 60 c -1.101562 0 -2 0.898438 -2 2 v 17.171875 l -4.585938 -4.585937 c -0.375 -0.375 -0.882812 -0.585938 -1.414062 -0.585938 s -1.039062 0.210938 -1.414062 0.585938 c -0.78125 0.78125 -0.78125 2.046874 0 2.828124 l 8 8 c 0.78125 0.78125 2.046874 0.78125 2.828124 0 l 8 -8 c 0.78125 -0.78125 0.78125 -2.046874 0 -2.828124 s -2.046874 -0.78125 -2.828124 0 l -4.585938 4.585937 v -17.171875 c 0 -1.101562 -0.898438 -2 -2 -2 z m -12 28 v 4 h 24 v -4 z m 0 0" fill="#438de6"/>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<path d="m 66 64 c -3.289062 0 -6 2.710938 -6 6 v 8.679688 c -0.914062 -0.429688 -1.929688 -0.679688 -3 -0.679688 c -3.84375 0 -7 3.15625 -7 7 s 3.15625 7 7 7 c 3.828125 0 6.984375 -3.140625 7 -6.96875 c 0 -0.007812 0 -0.023438 0 -0.03125 v -15 c 0 -1.125 0.875 -2 2 -2 h 8 c 1.125 0 2 0.875 2 2 v 8.679688 c -0.914062 -0.429688 -1.929688 -0.679688 -3 -0.679688 c -3.84375 0 -7 3.15625 -7 7 s 3.15625 7 7 7 s 7 -3.15625 7 -7 v -15 c 0 -3.289062 -2.710938 -6 -6 -6 z m -9 18 c 1.679688 0 3 1.320312 3 3 v 0.03125 c -0.015625 1.664062 -1.328125 2.96875 -3 2.96875 c -1.679688 0 -3 -1.320312 -3 -3 s 1.320312 -3 3 -3 z m 16 0 c 1.679688 0 3 1.320312 3 3 s -1.320312 3 -3 3 s -3 -1.320312 -3 -3 s 1.320312 -3 3 -3 z m 0 0" fill="#438de6"/>
</svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<g fill="#438de6">
<path d="m 60 72 c -1.101562 0 -2 0.898438 -2 2 s 0.898438 2 2 2 s 2 -0.898438 2 -2 s -0.898438 -2 -2 -2 z m 7 6 l -4 4 l -3 -2 l -4 4 v 1 c 0 1 1 1 1 1 h 14 s 0.945312 -0.070312 1 -1 v -2 z m 0 0"/>
<path d="m 56 64 c -3.289062 0 -6 2.710938 -6 6 v 16 c 0 3.289062 2.710938 6 6 6 h 16 c 3.289062 0 6 -2.710938 6 -6 v -16 c 0 -3.289062 -2.710938 -6 -6 -6 z m 0 4 h 16 c 1.140625 0 2 0.859375 2 2 v 16 c 0 1.140625 -0.859375 2 -2 2 h -16 c -1.140625 0 -2 -0.859375 -2 -2 v -16 c 0 -1.140625 0.859375 -2 2 -2 z m 0 0"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<path d="m 74 60 c -3.3125 0 -6 2.679688 -6 6 c 0 0.242188 0.023438 0.492188 0.054688 0.734375 l -9.890626 4.945313 c -1.117187 -1.078126 -2.609374 -1.679688 -4.164062 -1.679688 c -3.3125 0 -6 2.679688 -6 6 c 0 3.3125 2.6875 6 6 6 c 1.546875 -0.007812 3.039062 -0.617188 4.148438 -1.6875 l 9.90625 4.945312 c -0.03125 0.242188 -0.054688 0.492188 -0.054688 0.742188 c 0 3.3125 2.6875 6 6 6 s 6 -2.6875 6 -6 c 0 -3.320312 -2.6875 -6 -6 -6 c -1.546875 0 -3.039062 0.609375 -4.148438 1.6875 l -9.90625 -4.953125 c 0.03125 -0.242187 0.054688 -0.492187 0.054688 -0.734375 c 0 -0.25 -0.015625 -0.5 -0.046875 -0.742188 l 9.890625 -4.945312 c 1.117188 1.070312 2.609375 1.679688 4.15625 1.6875 c 3.3125 0 6 -2.6875 6 -6 c 0 -3.320312 -2.6875 -6 -6 -6 z m 0 0" fill="#438de6"/>
</svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0 -0.932866 -1 0 0.000045 -158.918314)" gradientUnits="userSpaceOnUse" x1="-280.623596" x2="-287.76535" y1="-66.117432" y2="-66.117432">
<stop offset="0" stop-color="#313133"/>
<stop offset="1" stop-color="#9a9996"/>
</linearGradient>
<linearGradient id="b" gradientTransform="matrix(0 -1 -1 0 0.000051 -160.000093)" gradientUnits="userSpaceOnUse" x1="-271.974609" x2="-266.414551" y1="-62.938477" y2="-62.938477">
<stop offset="0" stop-color="#aeadab"/>
<stop offset="1" stop-color="#aeadab" stop-opacity="0"/>
</linearGradient>
<linearGradient id="c" gradientTransform="matrix(2.381786 0 0 2.083491 -2851.15317 1648.156841)" gradientUnits="userSpaceOnUse" x1="1202" x2="1246" y1="-735" y2="-735">
<stop offset="0" stop-color="#9a9996" stop-opacity="0"/>
<stop offset="0.0909091" stop-color="#9a9996"/>
<stop offset="0.909091" stop-color="#9a9996"/>
<stop offset="1" stop-color="#9a9996" stop-opacity="0"/>
</linearGradient>
<linearGradient id="d" gradientTransform="matrix(0.25 0 0 0.166667 -163.999958 180.666578)" gradientUnits="userSpaceOnUse" x1="904" x2="904" y1="-340" y2="-385.948242">
<stop offset="0" stop-color="#77767b"/>
<stop offset="0.603496" stop-color="#c0bfbc"/>
<stop offset="1" stop-color="#aeadab"/>
</linearGradient>
<linearGradient id="e" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 76 c 0 5.539062 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460938 9.980469 -10 v -64 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.480469 0 -4.78125 -1.304688 -6.0625 -3.4375 l -0.84375 -1.410156 c -1.921875 -3.195313 -5.371094 -5.152344 -9.09375 -5.152344 z m 0 0" fill="#438de6"/>
<path d="m 68 117.210938 v -29.851563 h -8 v 29.851563 z m 0 0" fill="url(#a)"/>
<path d="m 63.796875 117.210938 v -29.851563 h -1.796875 v 29.851563 z m 0 0" fill="url(#b)"/>
<path d="m 8.179688 117.832031 h 111.945312 v 4.167969 h -111.945312 z m 0 0" fill="url(#c)"/>
<path d="m 51.730469 116 h 24.539062 c 2.0625 0 3.730469 1.667969 3.730469 3.730469 v 0.539062 c 0 2.0625 -1.667969 3.730469 -3.730469 3.730469 h -24.539062 c -2.0625 0 -3.730469 -1.667969 -3.730469 -3.730469 v -0.539062 c 0 -2.0625 1.667969 -3.730469 3.730469 -3.730469 z m 0 0" fill="url(#d)"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 44 c 0 5.539062 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460938 9.980469 -10 v -52 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#e)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 46 c 0 5.539062 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460938 9.980469 -10 v -54 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
</svg>

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<path d="m 58 60 c -3.289062 0 -6 2.710938 -6 6 v 15.992188 h 2 v -1.992188 h 2 v -14 c 0 -1.140625 0.859375 -2 2 -2 h 8 v 3 c 0 2 1 3 3 3 h 3 v 16 h 2 v 2 h 2 v -19 c 0 -0.53125 -0.210938 -1.039062 -0.585938 -1.414062 l -7 -7 c -0.375 -0.375 -0.882812 -0.585938 -1.414062 -0.585938 z m 16 28 h -2 v 1.984375 h -2 v 2 h 2 v -1.984375 h 2 z m -4 1.984375 v -2 h -2 v 2 z m -2 0 h -2 v 2 h 2 z m -2 0 v -2 h -2 v 2 z m -2 0 h -2 v 2 h 2 z m -2 0 v -2 h -2 v 2 z m -2 0 h -2 v 2 h 2 z m -2 0 v -2 h -2 v 2 z m -2 0 h -2 v 2 h 2 z m -2 0 v -2 h -2 v 2 z m 0 -2 h 2 v -2 h -2 z m 0 -2 v -2 h -2 v 2 z m 0 -2 h 2 v -2 h -2 z m 0 0" fill="#438de6"/>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<g fill="#438de6">
<path d="m 49.089844 71.960938 h -1.089844 v 16.0625 h 1.035156 l 10.203125 -8.023438 z m 0 0"/>
<path d="m 62 68 c -3.289062 0 -6 2.710938 -6 6 v 12 c 0 3.289062 2.710938 6 6 6 h 12 c 3.289062 0 6 -2.710938 6 -6 v -12 c 0 -3.289062 -2.710938 -6 -6 -6 z m 0 4 h 12 c 1.140625 0 2 0.859375 2 2 v 12 c 0 1.140625 -0.859375 2 -2 2 h -12 c -1.140625 0 -2 -0.859375 -2 -2 v -12 c 0 -1.140625 0.859375 -2 2 -2 z m 0 0"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0 -0.932866 -1 0 -0.000006 -170.918221)" gradientUnits="userSpaceOnUse" x1="-280.623596" x2="-287.76535" y1="-66.117432" y2="-66.117432">
<stop offset="0" stop-color="#313133"/>
<stop offset="1" stop-color="#9a9996"/>
</linearGradient>
<linearGradient id="b" gradientTransform="matrix(0 -1 -1 0 0 -172)" gradientUnits="userSpaceOnUse" x1="-271.974609" x2="-266.414551" y1="-62.938477" y2="-62.938477">
<stop offset="0" stop-color="#aeadab"/>
<stop offset="1" stop-color="#aeadab" stop-opacity="0"/>
</linearGradient>
<linearGradient id="c" gradientTransform="matrix(2.381786 0 0 2.083491 -2851.15332 1636.15686)" gradientUnits="userSpaceOnUse" x1="1202" x2="1246" y1="-735" y2="-735">
<stop offset="0" stop-color="#9a9996" stop-opacity="0"/>
<stop offset="0.0909091" stop-color="#9a9996"/>
<stop offset="0.909091" stop-color="#9a9996"/>
<stop offset="1" stop-color="#9a9996" stop-opacity="0"/>
</linearGradient>
<linearGradient id="d" gradientTransform="matrix(0.25 0 0 0.166667 -164.000015 168.666656)" gradientUnits="userSpaceOnUse" x1="904" x2="904" y1="-340" y2="-385.948242">
<stop offset="0" stop-color="#77767b"/>
<stop offset="0.603496" stop-color="#c0bfbc"/>
<stop offset="1" stop-color="#aeadab"/>
</linearGradient>
<linearGradient id="e" gradientTransform="matrix(0.232338 0 0 0.233165 -8.671706 198.782745)" gradientUnits="userSpaceOnUse" x1="88.595886" x2="536.595886" y1="-449.394012" y2="-449.394012">
<stop offset="0" stop-color="#c4c4c6"/>
<stop offset="0.0357143" stop-color="#f0f0ee"/>
<stop offset="0.0713653" stop-color="#cfcfcd"/>
<stop offset="0.928571" stop-color="#d5d5d5"/>
<stop offset="0.964286" stop-color="#c0bfbc"/>
<stop offset="1" stop-color="#77767b"/>
</linearGradient>
<linearGradient id="f" gradientUnits="userSpaceOnUse" x1="45.543945" x2="45.543945" y1="72.562012" y2="83.275391">
<stop offset="0" stop-color="#77767b"/>
<stop offset="1" stop-color="#c0bfbc"/>
</linearGradient>
<path d="m 68 105.210938 v -29.851563 h -8 v 29.851563 z m 0 0" fill="url(#a)"/>
<path d="m 63.796875 105.210938 v -29.851563 h -1.796875 v 29.851563 z m 0 0" fill="url(#b)"/>
<path d="m 8.179688 105.832031 h 111.945312 v 4.167969 h -111.945312 z m 0 0" fill="url(#c)"/>
<path d="m 51.730469 104 h 24.539062 c 2.0625 0 3.730469 1.667969 3.730469 3.730469 v 0.539062 c 0 2.0625 -1.667969 3.730469 -3.730469 3.730469 h -24.539062 c -2.0625 0 -3.730469 -1.667969 -3.730469 -3.730469 v -0.539062 c 0 -2.0625 1.667969 -3.730469 3.730469 -3.730469 z m 0 0" fill="url(#d)"/>
<path d="m 19.355469 23.117188 h 89.203125 c 4.109375 0 7.441406 3.339843 7.441406 7.460937 v 55.960937 c 0 4.121094 -3.332031 7.460938 -7.441406 7.460938 h -89.203125 c -4.109375 0 -7.441407 -3.339844 -7.441407 -7.460938 v -55.960937 c 0 -4.121094 3.332032 -7.460937 7.441407 -7.460937 z m 0 0" fill="url(#e)"/>
<path d="m 19.5625 12 h 88.929688 c 4.148437 0 7.507812 3.359375 7.507812 7.507812 v 40.722657 c 0 4.148437 -3.359375 7.507812 -7.507812 7.507812 h -88.929688 c -4.144531 0 -7.507812 -3.359375 -7.507812 -7.507812 v -40.722657 c 0 -4.148437 3.363281 -7.507812 7.507812 -7.507812 z m 0 0" fill="#deddda"/>
<g fill="#ff7800">
<path d="m 104 84.996094 c 0 0.5625 -0.457031 1.023437 -1.023438 1.023437 c -0.5625 0 -1.019531 -0.460937 -1.019531 -1.023437 s 0.457031 -1.023438 1.019531 -1.023438 c 0.566407 0 1.023438 0.460938 1.023438 1.023438 z m 0 0"/>
<path d="m 104 81.023438 c 0 0.5625 -0.457031 1.019531 -1.023438 1.019531 c -0.5625 0 -1.019531 -0.457031 -1.019531 -1.019531 c 0 -0.566407 0.457031 -1.023438 1.019531 -1.023438 c 0.566407 0 1.023438 0.457031 1.023438 1.023438 z m 0 0"/>
<path d="m 104 77.039062 c 0 0.566407 -0.457031 1.023438 -1.023438 1.023438 c -0.5625 0 -1.019531 -0.457031 -1.019531 -1.023438 c 0 -0.5625 0.457031 -1.019531 1.019531 -1.019531 c 0.566407 0 1.023438 0.457031 1.023438 1.019531 z m 0 0"/>
</g>
<path d="m 11.914062 58.566406 v 1.859375 c 0 4.167969 3.347657 7.519531 7.507813 7.519531 h 89.066406 c 4.160157 0 7.511719 -3.351562 7.511719 -7.519531 v -1.859375 c 0 4.164063 -3.351562 7.519532 -7.511719 7.519532 h -89.066406 c -4.160156 0 -7.507813 -3.355469 -7.507813 -7.519532 z m 0 0" fill="#f6f5f4"/>
<path d="m 101.011719 84.996094 c 0 0.5625 -0.457031 1.023437 -1.019531 1.023437 c -0.566407 0 -1.023438 -0.460937 -1.023438 -1.023437 s 0.457031 -1.023438 1.023438 -1.023438 c 0.5625 0 1.019531 0.460938 1.019531 1.023438 z m 0 0" fill="#c01c28"/>
<path d="m 101.011719 81.023438 c 0 0.5625 -0.457031 1.019531 -1.019531 1.019531 c -0.566407 0 -1.023438 -0.457031 -1.023438 -1.019531 c 0 -0.566407 0.457031 -1.023438 1.023438 -1.023438 c 0.5625 0 1.019531 0.457031 1.019531 1.023438 z m 0 0" fill="#ff7800"/>
<path d="m 101.011719 77.039062 c 0 0.566407 -0.457031 1.023438 -1.019531 1.023438 c -0.566407 0 -1.023438 -0.457031 -1.023438 -1.023438 c 0 -0.5625 0.457031 -1.019531 1.023438 -1.019531 c 0.5625 0 1.019531 0.457031 1.019531 1.019531 z m 0 0" fill="#c01c28"/>
<path d="m 98.027344 84.996094 c 0 0.5625 -0.457032 1.023437 -1.023438 1.023437 c -0.5625 0 -1.019531 -0.460937 -1.019531 -1.023437 s 0.457031 -1.023438 1.019531 -1.023438 c 0.566406 0 1.023438 0.460938 1.023438 1.023438 z m 0 0" fill="#ff7800"/>
<path d="m 98.027344 81.023438 c 0 0.5625 -0.457032 1.019531 -1.023438 1.019531 c -0.5625 0 -1.019531 -0.457031 -1.019531 -1.019531 c 0 -0.566407 0.457031 -1.023438 1.019531 -1.023438 c 0.566406 0 1.023438 0.457031 1.023438 1.023438 z m 0 0" fill="#c01c28"/>
<path d="m 98.027344 77.039062 c 0 0.566407 -0.457032 1.023438 -1.023438 1.023438 c -0.5625 0 -1.019531 -0.457031 -1.019531 -1.023438 c 0 -0.5625 0.457031 -1.019531 1.019531 -1.019531 c 0.566406 0 1.023438 0.457031 1.023438 1.019531 z m 0 0" fill="#c01c28"/>
<path d="m 65.421875 80.441406 c -0.511719 0.007813 -0.996094 0.214844 -1.355469 0.578125 l -3.644531 3.714844 c -0.742187 0.757813 -0.730469 1.972656 0.027344 2.714844 c 0.757812 0.742187 1.972656 0.730469 2.714843 -0.023438 l 3.644532 -3.71875 c 0.742187 -0.757812 0.730468 -1.972656 -0.023438 -2.714843 c -0.367187 -0.355469 -0.855468 -0.554688 -1.363281 -0.550782 z m -35.875 -8.375 c -0.507813 0.007813 -0.996094 0.214844 -1.351563 0.578125 l -3.644531 3.714844 c -0.742187 0.757813 -0.730469 1.972656 0.023438 2.714844 c 0.757812 0.746093 1.972656 0.734375 2.714843 -0.023438 l 3.648438 -3.71875 c 0.742188 -0.757812 0.730469 -1.972656 -0.027344 -2.714843 c -0.363281 -0.355469 -0.855468 -0.554688 -1.363281 -0.550782 z m 8.675781 -0.066406 c -0.511718 -0.003906 -1 0.195312 -1.363281 0.550781 l -12.285156 12.097657 c -0.757813 0.746093 -0.765625 1.960937 -0.023438 2.714843 c 0.746094 0.757813 1.960938 0.765625 2.714844 0.023438 l 12.289063 -12.097657 c 0.753906 -0.746093 0.765624 -1.960937 0.019531 -2.714843 c -0.355469 -0.363281 -0.84375 -0.570313 -1.351563 -0.574219 z m 9.117188 0 c -0.511719 -0.003906 -1 0.195312 -1.363282 0.550781 l -12.289062 12.097657 c -0.753906 0.746093 -0.761719 1.960937 -0.019531 2.714843 c 0.746093 0.757813 1.960937 0.765625 2.714843 0.023438 l 12.289063 -12.097657 c 0.753906 -0.746093 0.765625 -1.960937 0.019531 -2.714843 c -0.355468 -0.363281 -0.84375 -0.570313 -1.351562 -0.574219 z m 9.117187 0 c -0.507812 -0.003906 -0.996093 0.195312 -1.359375 0.550781 l -12.289062 12.097657 c -0.753906 0.746093 -0.765625 1.960937 -0.019532 2.714843 c 0.355469 0.363281 0.84375 0.570313 1.351563 0.574219 c 0.511719 0.003906 1 -0.195312 1.363281 -0.550781 l 12.289063 -12.097657 c 0.753906 -0.746093 0.761719 -1.960937 0.019531 -2.714843 c -0.359375 -0.363281 -0.84375 -0.570313 -1.355469 -0.574219 z m 7.757813 0.550781 l -12.285156 12.097657 c -0.753907 0.746093 -0.765626 1.960937 -0.019532 2.714843 c 0.742188 0.757813 1.957032 0.765625 2.714844 0.023438 l 12.285156 -12.097657 c 0.757813 -0.746093 0.765625 -1.960937 0.019532 -2.714843 c -0.742188 -0.757813 -1.957032 -0.765625 -2.714844 -0.023438 z m 0 0" fill="url(#f)"/>
</svg>

After

Width:  |  Height:  |  Size: 8.2 KiB

View File

@@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<clipPath id="a">
<path d="m 32 51 h 36 v 39 h -36 z m 0 0"/>
</clipPath>
<clipPath id="b">
<path d="m 31.351562 39.5625 h 37.296876 v 51.050781 h -37.296876 z m 28.242188 31.855469 c 0 -5.023438 -4.289062 -9.101563 -9.582031 -9.101563 c -5.289063 0 -9.578125 4.078125 -9.578125 9.101563 c 0 5.027343 4.289062 9.101562 9.578125 9.101562 c 5.292969 0 9.582031 -4.074219 9.582031 -9.101562 z m 0 0"/>
</clipPath>
<linearGradient id="c" gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#9a9996"/>
<stop offset="0.0414257" stop-color="#c0bfbc"/>
<stop offset="0.0815191" stop-color="#9a9996"/>
<stop offset="0.899024" stop-color="#77767b"/>
<stop offset="0.952865" stop-color="#c0bfbc"/>
<stop offset="1" stop-color="#77767b"/>
</linearGradient>
<linearGradient id="d" gradientTransform="matrix(0.129522 0 0 0.12304 -20.172717 -8.276901)" x1="403.496033" x2="678.908813" xlink:href="#c" y1="793.565552" y2="793.565552"/>
<clipPath id="e">
<path d="m 32 50 h 36 v 39 h -36 z m 0 0"/>
</clipPath>
<clipPath id="f">
<path d="m 31.351562 39.5625 h 37.296876 v 51.050781 h -37.296876 z m 28.242188 31.855469 c 0 -5.023438 -4.289062 -9.101563 -9.582031 -9.101563 c -5.289063 0 -9.578125 4.078125 -9.578125 9.101563 c 0 5.027343 4.289062 9.101562 9.578125 9.101562 c 5.292969 0 9.582031 -4.074219 9.582031 -9.101562 z m 0 0"/>
</clipPath>
<clipPath id="g">
<path d="m 32 40 h 36 v 40 h -36 z m 0 0"/>
</clipPath>
<clipPath id="h">
<path d="m 31.351562 39.5625 h 37.296876 v 51.050781 h -37.296876 z m 28.242188 31.855469 c 0 -5.023438 -4.289062 -9.101563 -9.582031 -9.101563 c -5.289063 0 -9.578125 4.078125 -9.578125 9.101563 c 0 5.027343 4.289062 9.101562 9.578125 9.101562 c 5.292969 0 9.582031 -4.074219 9.582031 -9.101562 z m 0 0"/>
</clipPath>
<linearGradient id="i" gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#3d3846"/>
<stop offset="0.0279595" stop-color="#79718e"/>
<stop offset="0.0654033" stop-color="#4e475a"/>
<stop offset="0.938181" stop-color="#716881"/>
<stop offset="0.971878" stop-color="#847a96"/>
<stop offset="1" stop-color="#3d3846"/>
</linearGradient>
<linearGradient id="j" gradientTransform="matrix(0.224856 0 0 0.22209 -200.939247 25.114628)" x1="928.741516" x2="1302.490479" xlink:href="#i" y1="216.638611" y2="216.638611"/>
<linearGradient id="k" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 612.172607)" gradientUnits="userSpaceOnUse" x1="2831.385498" x2="2732.762939" y1="-1295.160156" y2="-1196.75647">
<stop offset="0" stop-color="#1a5fb4"/>
<stop offset="1" stop-color="#14498a"/>
</linearGradient>
<clipPath id="l">
<path d="m 60 81 h 36 v 39 h -36 z m 0 0"/>
</clipPath>
<clipPath id="m">
<path d="m 59.351562 69.5625 h 37.296876 v 51.050781 h -37.296876 z m 28.242188 31.855469 c 0 -5.023438 -4.289062 -9.101563 -9.582031 -9.101563 c -5.289063 0 -9.578125 4.078125 -9.578125 9.101563 c 0 5.027343 4.289062 9.101562 9.578125 9.101562 c 5.292969 0 9.582031 -4.074219 9.582031 -9.101562 z m 0 0"/>
</clipPath>
<linearGradient id="n" gradientTransform="matrix(0.129522 0 0 0.12304 7.827283 21.723099)" x1="403.496033" x2="678.908813" xlink:href="#c" y1="793.565552" y2="793.565552"/>
<clipPath id="o">
<path d="m 60 80 h 36 v 39 h -36 z m 0 0"/>
</clipPath>
<clipPath id="p">
<path d="m 59.351562 69.5625 h 37.296876 v 51.050781 h -37.296876 z m 28.242188 31.855469 c 0 -5.023438 -4.289062 -9.101563 -9.582031 -9.101563 c -5.289063 0 -9.578125 4.078125 -9.578125 9.101563 c 0 5.027343 4.289062 9.101562 9.578125 9.101562 c 5.292969 0 9.582031 -4.074219 9.582031 -9.101562 z m 0 0"/>
</clipPath>
<clipPath id="q">
<path d="m 60 70 h 36 v 40 h -36 z m 0 0"/>
</clipPath>
<clipPath id="r">
<path d="m 59.351562 69.5625 h 37.296876 v 51.050781 h -37.296876 z m 28.242188 31.855469 c 0 -5.023438 -4.289062 -9.101563 -9.582031 -9.101563 c -5.289063 0 -9.578125 4.078125 -9.578125 9.101563 c 0 5.027343 4.289062 9.101562 9.578125 9.101562 c 5.292969 0 9.582031 -4.074219 9.582031 -9.101562 z m 0 0"/>
</clipPath>
<linearGradient id="s" gradientTransform="matrix(0.224856 0 0 0.22209 -172.939247 55.114628)" x1="928.741516" x2="1302.490479" xlink:href="#i" y1="216.638611" y2="216.638611"/>
<linearGradient id="t" gradientTransform="matrix(0.337063 0 0 0.330795 -867.055597 477.291929)" gradientUnits="userSpaceOnUse" x1="2704.463135" x2="2868.168457" y1="-1148.187378" y2="-1311.529175">
<stop offset="0" stop-color="#1c71d8"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<g clip-path="url(#a)">
<g clip-path="url(#b)">
<path d="m 34.5625 51.777344 h 30.875 c 1.417969 0 2.5625 1.136718 2.5625 2.542968 v 33.136719 c 0 1.410157 -1.144531 2.542969 -2.5625 2.542969 h -30.875 c -1.417969 0 -2.5625 -1.132812 -2.5625 -2.542969 v -33.136719 c 0 -1.40625 1.144531 -2.542968 2.5625 -2.542968 z m 0 0" fill="url(#d)"/>
</g>
</g>
<g clip-path="url(#e)">
<g clip-path="url(#f)">
<path d="m 34.5625 50.289062 h 30.875 c 1.417969 0 2.5625 1.132813 2.5625 2.542969 v 33.132813 c 0 1.410156 -1.144531 2.542968 -2.5625 2.542968 h -30.875 c -1.417969 0 -2.5625 -1.132812 -2.5625 -2.542968 v -33.132813 c 0 -1.410156 1.144531 -2.542969 2.5625 -2.542969 z m 0 0" fill="#77767b"/>
</g>
</g>
<g clip-path="url(#g)">
<g clip-path="url(#h)">
<path d="m 32 40.175781 h 36 v 39.816407 h -36 z m 0 0" fill="#434348" fill-opacity="0.509804"/>
</g>
</g>
<path d="m 92 15.105469 v 53.789062 c 0 3.921875 -3.175781 7.105469 -7.089844 7.105469 h -69.820312 c -3.914063 0 -7.089844 -3.183594 -7.089844 -7.105469 v -53.789062 c 0 -3.921875 3.175781 -7.105469 7.089844 -7.105469 h 69.820312 c 3.914063 0 7.089844 3.183594 7.089844 7.105469 z m 0 0" fill="url(#j)"/>
<path d="m 92 15.105469 v 50.832031 c 0 3.925781 -3.175781 7.105469 -7.089844 7.105469 h -69.820312 c -3.914063 0 -7.089844 -3.179688 -7.089844 -7.105469 v -50.832031 c 0 -3.921875 3.175781 -7.105469 7.089844 -7.105469 h 69.820312 c 3.914063 0 7.089844 3.183594 7.089844 7.105469 z m 0 0" fill="#241f31"/>
<path d="m 15.363281 10 h 69.183594 c 3.011719 0 5.453125 2.449219 5.453125 5.464844 v 50.070312 c 0 3.015625 -2.441406 5.464844 -5.453125 5.464844 h -69.183594 c -3.015625 0 -5.457031 -2.449219 -5.457031 -5.464844 v -50.070312 c 0 -3.015625 2.441406 -5.464844 5.457031 -5.464844 z m 0 0" fill="url(#k)"/>
<g clip-path="url(#l)">
<g clip-path="url(#m)">
<path d="m 62.5625 81.777344 h 30.875 c 1.417969 0 2.5625 1.136718 2.5625 2.542968 v 33.136719 c 0 1.410157 -1.144531 2.542969 -2.5625 2.542969 h -30.875 c -1.417969 0 -2.5625 -1.132812 -2.5625 -2.542969 v -33.136719 c 0 -1.40625 1.144531 -2.542968 2.5625 -2.542968 z m 0 0" fill="url(#n)"/>
</g>
</g>
<g clip-path="url(#o)">
<g clip-path="url(#p)">
<path d="m 62.5625 80.289062 h 30.875 c 1.417969 0 2.5625 1.132813 2.5625 2.542969 v 33.132813 c 0 1.410156 -1.144531 2.542968 -2.5625 2.542968 h -30.875 c -1.417969 0 -2.5625 -1.132812 -2.5625 -2.542968 v -33.132813 c 0 -1.410156 1.144531 -2.542969 2.5625 -2.542969 z m 0 0" fill="#77767b"/>
</g>
</g>
<g clip-path="url(#q)">
<g clip-path="url(#r)">
<path d="m 60 70.175781 h 36 v 39.816407 h -36 z m 0 0" fill="#434348" fill-opacity="0.509804"/>
</g>
</g>
<path d="m 120 45.105469 v 53.789062 c 0 3.921875 -3.175781 7.105469 -7.089844 7.105469 h -69.820312 c -3.914063 0 -7.089844 -3.183594 -7.089844 -7.105469 v -53.789062 c 0 -3.921875 3.175781 -7.105469 7.089844 -7.105469 h 69.820312 c 3.914063 0 7.089844 3.183594 7.089844 7.105469 z m 0 0" fill="url(#s)"/>
<path d="m 120 45.105469 v 50.832031 c 0 3.925781 -3.175781 7.105469 -7.089844 7.105469 h -69.820312 c -3.914063 0 -7.089844 -3.179688 -7.089844 -7.105469 v -50.832031 c 0 -3.921875 3.175781 -7.105469 7.089844 -7.105469 h 69.820312 c 3.914063 0 7.089844 3.183594 7.089844 7.105469 z m 0 0" fill="#241f31"/>
<path d="m 43.363281 40 h 69.183594 c 3.011719 0 5.453125 2.449219 5.453125 5.464844 v 50.070312 c 0 3.015625 -2.441406 5.464844 -5.453125 5.464844 h -69.183594 c -3.015625 0 -5.457031 -2.449219 -5.457031 -5.464844 v -50.070312 c 0 -3.015625 2.441406 -5.464844 5.457031 -5.464844 z m 0 0" fill="url(#t)"/>
</svg>

After

Width:  |  Height:  |  Size: 8.6 KiB

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<path d="m 57.9375 64 c -2.664062 0 -4.546875 1.632812 -5.289062 3.109375 c -0.742188 1.476563 -0.710938 2.890625 -0.710938 2.890625 l 0.0625 24.945312 l 11.992188 -4.804687 l 12.007812 4.804687 l -0.0625 -24.953124 c 0 -0.007813 0.023438 -1.414063 -0.710938 -2.882813 c -0.742187 -1.476563 -2.625 -3.109375 -5.289062 -3.109375 z m 0 4 h 12 c 1.390625 0.023438 2.007812 0.734375 2 2 l 0.046875 19.039062 l -7.992187 -3.203124 l -8.007813 3.203124 l -0.046875 -19.046874 c -0.015625 -1.296876 0.796875 -1.992188 2 -1.992188 z m 0 0" fill="#438de6"/>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<g fill="#438de6">
<path d="m 50 70 v 2 h 16 v -2 z m 0 0"/>
<path d="m 54 64 c -3.289062 0 -6 2.710938 -6 6 v 16 c 0 3.289062 2.710938 6 6 6 h 20 c 3.289062 0 6 -2.710938 6 -6 v -12 c 0 -3.289062 -2.710938 -6 -6 -6 h -7.171875 l -3.414063 -3.414062 c -0.375 -0.375 -0.882812 -0.585938 -1.414062 -0.585938 z m 0 4 h 7.171875 l 3.414063 3.414062 c 0.375 0.375 0.882812 0.585938 1.414062 0.585938 h 8 c 1.125 0 2 0.875 2 2 v 12 c 0 1.132812 -0.875 2 -2 2 h -20 c -1.125 0 -2 -0.867188 -2 -2 v -16 c 0 -1.125 0.875 -2 2 -2 z m 0 0"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
<path d="m 64.875 64 c -0.414062 0 -0.820312 0.132812 -1.164062 0.367188 l -14.878907 10 c -0.898437 0.648437 -1.109375 1.890624 -0.46875 2.789062 c 0.382813 0.53125 0.984375 0.84375 1.632813 0.835938 v 8.007812 c 0 3.289062 2.710937 6 6 6 h 18.003906 c 3.289062 0 6 -2.640625 6 -6 v -8.007812 c 0.648438 0.007812 1.25 -0.304688 1.632812 -0.835938 c 0.640626 -0.898438 0.429688 -2.140625 -0.46875 -2.789062 l -15.125 -10 c -0.34375 -0.234376 -0.75 -0.367188 -1.164062 -0.367188 z m 0 4.453125 l 11.125 7.140625 v 10.40625 c 0 1.125 -0.875 2 -2 2 h -8.003906 v -8 c 0 -1.109375 -0.890625 -2 -2 -2 h -2 c -1.109375 0 -2 0.890625 -2 2 v 8 h -4 c -1.125 0 -2 -0.875 -2 -2 v -10.40625 z m 0 0" fill="#438de6"/>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientUnits="userSpaceOnUse" x1="17.999982" x2="109.999715" y1="70.999989" y2="70.999989">
<stop offset="0" stop-color="#26a269"/>
<stop offset="0.0394022" stop-color="#42d390"/>
<stop offset="0.0869565" stop-color="#2ec27e"/>
<stop offset="0.956524" stop-color="#2ec27e"/>
<stop offset="1" stop-color="#26a168"/>
</linearGradient>
<clipPath id="b">
<path d="m 18 32 h 92 v 82 h -92 z m 0 0"/>
</clipPath>
<clipPath id="c">
<path d="m 26.65625 32 h 74.6875 c 4.78125 0 8.65625 3.875 8.65625 8.65625 v 64.6875 c 0 4.78125 -3.875 8.65625 -8.65625 8.65625 h -74.6875 c -4.78125 0 -8.65625 -3.875 -8.65625 -8.65625 v -64.6875 c 0 -4.78125 3.875 -8.65625 8.65625 -8.65625 z m 0 0"/>
</clipPath>
<filter id="d" height="100%" width="100%" x="0%" y="0%">
<feColorMatrix in="SourceGraphic" type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/>
</filter>
<mask id="e">
<g filter="url(#d)">
<rect fill-opacity="0.2" height="128" width="128"/>
</g>
</mask>
<clipPath id="f">
<rect height="152" width="192"/>
</clipPath>
<linearGradient id="g" gradientTransform="matrix(1.043478 0 0 0.909091 -6.95654 -159.27274)" gradientUnits="userSpaceOnUse" x1="22" x2="114" y1="206" y2="206">
<stop offset="0" stop-color="#deddda"/>
<stop offset="0.0562887" stop-color="#eeedec"/>
<stop offset="0.117776" stop-color="#deddda"/>
<stop offset="0.892135" stop-color="#deddda"/>
<stop offset="0.945937" stop-color="#efeeed"/>
<stop offset="1" stop-color="#c3c2bc"/>
</linearGradient>
<clipPath id="h">
<path d="m 20 12 h 6 v 24 h -6 z m 0 0"/>
</clipPath>
<clipPath id="i">
<path d="m 24 12 h 80 c 2.210938 0 4 1.789062 4 4 v 16 c 0 2.210938 -1.789062 4 -4 4 h -80 c -2.210938 0 -4 -1.789062 -4 -4 v -16 c 0 -2.210938 1.789062 -4 4 -4 z m 0 0"/>
</clipPath>
<linearGradient id="j" gradientTransform="matrix(1.043478 0 0 0.873303 -46.695677 -45.017061)" gradientUnits="userSpaceOnUse" x1="63.916664" x2="75.416664" y1="79.029953" y2="79.029953">
<stop offset="0" stop-color="#77767b"/>
<stop offset="1" stop-color="#77767b" stop-opacity="0"/>
</linearGradient>
<clipPath id="k">
<path d="m 20 12 h 88 v 24 h -88 z m 0 0"/>
</clipPath>
<clipPath id="l">
<path d="m 24 12 h 80 c 2.210938 0 4 1.789062 4 4 v 16 c 0 2.210938 -1.789062 4 -4 4 h -80 c -2.210938 0 -4 -1.789062 -4 -4 v -16 c 0 -2.210938 1.789062 -4 4 -4 z m 0 0"/>
</clipPath>
<mask id="m">
<g filter="url(#d)">
<rect fill-opacity="0.317" height="128" width="128"/>
</g>
</mask>
<linearGradient id="n" gradientTransform="matrix(-1.043478 0 0 0.873303 182.695658 -29.017061)" gradientUnits="userSpaceOnUse" x1="63.916672" x2="75.416672" y1="76.739799" y2="76.739799">
<stop offset="0" stop-color="#ffffff"/>
<stop offset="1" stop-color="#e8e7e8" stop-opacity="0"/>
</linearGradient>
<clipPath id="o">
<rect height="152" width="192"/>
</clipPath>
<linearGradient id="p" gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#deddda"/>
<stop offset="1" stop-color="#ffffff"/>
</linearGradient>
<linearGradient id="q" x1="80.428823" x2="80.499478" xlink:href="#p" y1="90.759449" y2="83.384449"/>
<linearGradient id="r" x1="45.608907" x2="53.124498" xlink:href="#p" y1="89.499714" y2="93.999714"/>
<linearGradient id="s" x1="64.374326" x2="57.932443" xlink:href="#p" y1="60.000004" y2="62.777791"/>
<path d="m 26 34 h 76 c 4.417969 0 8 3.582031 8 8 v 66 c 0 4.417969 -3.582031 8 -8 8 h -76 c -4.417969 0 -8 -3.582031 -8 -8 v -66 c 0 -4.417969 3.582031 -8 8 -8 z m 0 0" fill="#26a269"/>
<path d="m 26 30 h 76 c 4.417969 0 8 3.582031 8 8 v 68 c 0 4.417969 -3.582031 8 -8 8 h -76 c -4.417969 0 -8 -3.582031 -8 -8 v -68 c 0 -4.417969 3.582031 -8 8 -8 z m 0 0" fill="url(#a)"/>
<g clip-path="url(#b)">
<g clip-path="url(#c)">
<g clip-path="url(#f)" mask="url(#e)" transform="matrix(1 0 0 1 -8 -16)">
<path d="m 31.882812 26 h 80.234376 c 4.355468 0 7.882812 3.527344 7.882812 7.882812 v 24.234376 c 0 4.355468 -3.527344 7.882812 -7.882812 7.882812 h -80.234376 c -4.355468 0 -7.882812 -3.527344 -7.882812 -7.882812 v -24.234376 c 0 -4.355468 3.527344 -7.882812 7.882812 -7.882812 z m 0 0"/>
</g>
</g>
</g>
<path d="m 24 8 h 80 c 4.417969 0 8 3.582031 8 8 v 24 c 0 4.417969 -3.582031 8 -8 8 h -80 c -4.417969 0 -8 -3.582031 -8 -8 v -24 c 0 -4.417969 3.582031 -8 8 -8 z m 0 0" fill="url(#g)"/>
<path d="m 24 8 h 80 c 4.417969 0 8 3.582031 8 8 v 16 c 0 4.417969 -3.582031 8 -8 8 h -80 c -4.417969 0 -8 -3.582031 -8 -8 v -16 c 0 -4.417969 3.582031 -8 8 -8 z m 0 0" fill="#f6f5f4"/>
<path d="m 24 12 h 80 c 2.210938 0 4 1.789062 4 4 v 16 c 0 2.210938 -1.789062 4 -4 4 h -80 c -2.210938 0 -4 -1.789062 -4 -4 v -16 c 0 -2.210938 1.789062 -4 4 -4 z m 0 0" fill="#9a9996"/>
<g clip-path="url(#h)">
<g clip-path="url(#i)">
<path d="m 26 12 h -6 v 24 h 6 z m 0 0" fill="url(#j)"/>
</g>
</g>
<g clip-path="url(#k)">
<g clip-path="url(#l)">
<g clip-path="url(#o)" mask="url(#m)" transform="matrix(1 0 0 1 -8 -16)">
<path d="m 110 28 v 24 h 6 v -24 z m 0 0" fill="url(#n)"/>
</g>
</g>
</g>
<g fill-rule="evenodd">
<path d="m 73.804688 81.410156 l 10.390624 -6 l 3 5.199219 c 1.070313 1.855469 1.070313 4.140625 0 6 l -3 5.195313 l -2.195312 3.800781 l -6.929688 -11.996094 z m 0 0" fill="url(#q)"/>
<path d="m 58 88 v 12 h -6 c -2.144531 0 -4.125 -1.144531 -5.195312 -3 l -3 -5.195312 l -2.195313 -3.804688 z m 0 0" fill="url(#r)"/>
<path d="m 60.195312 72.195312 l -10.390624 -6 l 3 -5.195312 c 1.070312 -1.855469 3.050781 -3 5.195312 -3 h 10.390625 l -6.925781 12 z m 0 0" fill="url(#s)"/>
<path d="m 64 58 l -4.390625 0.003906 l 6.925781 11.996094 l 1.269532 2.195312 l -3.464844 2 l 12.660156 1.929688 l 4.660156 -11.929688 l -3.464844 2 l -3 -5.195312 c -1.070312 -1.855469 -3.050781 -3 -5.195312 -3 z m 0 0" fill="#ffffff"/>
<path d="m 70 84 l -8 10 l 8 10 v -4 h 6 c 2.144531 0 4.125 -1.144531 5.195312 -3 l 3 -5.195312 l 2.195313 -3.804688 h -16.390625 z m 0 0" fill="#ffffff"/>
<path d="m 53 71.484375 l -12.660156 1.925781 l 3.464844 2 l -3 5.195313 c -1.070313 1.859375 -1.070313 4.144531 0 6 l 2.996093 5.199219 l 2.199219 3.800781 l 6.925781 -12 l 1.269531 -2.195313 l 3.464844 2 z m 0 0" fill="#ffffff"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg height="128px" viewBox="0 0 128 128" width="128px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<linearGradient id="a" gradientTransform="matrix(0.45451 0 0 0.455522 -1210.292114 616.172607)" gradientUnits="userSpaceOnUse" x1="2689.251953" x2="2918.069824" y1="-1106.802979" y2="-1106.802979">
<stop offset="0" stop-color="#62a0ea"/>
<stop offset="0.0576991" stop-color="#afd4ff"/>
<stop offset="0.122204" stop-color="#62a0ea"/>
<stop offset="0.873306" stop-color="#62a0ea"/>
<stop offset="0.955997" stop-color="#c0d5ea"/>
<stop offset="1" stop-color="#62a0ea"/>
</linearGradient>
<path d="m 21.976562 12 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 86.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -72.085938 c 0 -6.628906 -5.359375 -12 -11.972656 -12 h -46.027344 c -2.453125 0 -4.695312 -1.386718 -5.796875 -3.582031 l -1.503906 -2.992187 c -1.65625 -3.292969 -5.019531 -5.371094 -8.699219 -5.371094 z m 0 0" fill="#438de6"/>
<path d="m 65.976562 36 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 54.03125 c 0 5.542969 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.457031 9.980469 -10 v -62.03125 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="url(#a)"/>
<path d="m 65.976562 32 c -2.746093 0 -5.226562 1.101562 -7.027343 2.890625 c -2.273438 2.253906 -5.382813 5.109375 -8.632813 5.109375 h -28.339844 c -5.527343 0 -9.976562 4.460938 -9.976562 10 v 55.976562 c 0 5.539063 4.449219 10 9.976562 10 h 84.042969 c 5.53125 0 9.980469 -4.460937 9.980469 -10 v -63.976562 c 0 -5.539062 -4.449219 -10 -9.980469 -10 z m 0 0" fill="#a4caee"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 55 KiB

View File

@@ -0,0 +1,264 @@
#!/usr/bin/env bash
# ==============================================================================
# Adwaita-Matugen Icon Generator V6 (扁平化配置版)
# 逻辑:每一组 SVG 文件的颜色变量直接在顶部定义,方便用户微调。
# ==============================================================================
# ==============================================================================
# [一] 颜色变量配置区 (用户修改此处)
# ==============================================================================
MAIN_COLOR="{{colors.secondary_fixed_dim.default.hex}}"
MAIN_SHADOW="{{colors.secondary_container.default.hex}}"
MAIN_DARKER_SHADOW="{{colors.on_secondary.default.hex}}"
MAIN_HILIGHT="{{colors.secondary.default.hex}}"
INVERSE_MAIN_COLOR="{{colors.tertiary_fixed_dim.default.hex}}"
INVERSE_MAIN_HIGHLT="{{colors.tertiary.default.hex}}"
INVERSE_MAIN_SHADOW="{{colors.tertiary_container.default.hex}}"
PAPER_COLOR="#fafafa"
PAPER_FOLE_COLOR="#deddda"
# ------------------------------------------------------------------------------
# [1] 文件夹 (folder*.svg / user-home.svg ...)
# ------------------------------------------------------------------------------
# 文件夹保持使用 Secondary (次色系),为了不刺眼使用 dim 版本作为主体
COLOR_FOLDER_BODY=$MAIN_COLOR # 主体 (原 #a4caee)
COLOR_FOLDER_TOP=$MAIN_HILIGHT # 顶部高光/符号 (原 #afd4ff)
COLOR_FOLDER_SHADOW=$MAIN_SHADOW # 阴影/渐变暗部 (原 #438de6)
# ------------------------------------------------------------------------------
# [2] 网络与垃圾桶 (network*.svg / user-trash*.svg)
# ------------------------------------------------------------------------------
# 使用 Tertiary (第三色系) 作为强调色
COLOR_ACCENT_BODY=$INVERSE_MAIN_COLOR # 主体 (原 #1c71d8/垃圾桶身)
COLOR_ACCENT_LIGHT=$INVERSE_MAIN_HIGHLT # 亮部 (原 #62a0ea/垃圾桶盖亮面)
COLOR_ACCENT_DARK=$INVERSE_MAIN_SHADOW # 暗部 (原 #1a5fb4/垃圾桶内侧)
COLOR_TRASH_PAPER="{{colors.on_tertiary_container.default.hex}}" # 废纸团颜色
# ------------------------------------------------------------------------------
# [3] 脚本与可执行文件 (text-x-script.svg / application-x-executable.svg)
# ------------------------------------------------------------------------------
# 重点修正:防止偏淡,主体使用 Primary Default (最鲜艳的主色)
# 对应 Adwaita 原版光影逻辑:
COLOR_SCRIPT_BODY=$MAIN_SHADOW # 主体 (原 #3584e4 - 基准蓝)
COLOR_SCRIPT_HIGHLIGHT=$MAIN_HILIGHT # 高光 (原 #99c1f1 - 亮蓝)
COLOR_SCRIPT_MID="#f0f0f0" # 侧面/次亮 (原 #62a0ea)
COLOR_SCRIPT_SHADOW=$MAIN_SHADOW # 阴影 (原 #1c71d8)
COLOR_SCRIPT_GEAR=$MAIN_DARKER_SHADOW # 齿轮/最深色
COLOR_SCRIPT_PALE="ffffff" # 极亮部 (原 #d7e8fc)
# ------------------------------------------------------------------------------
# [4] 网页地球仪 (text-html.svg)
# ------------------------------------------------------------------------------
# [新增] 极高光/反光 (原 #b3d3f9, #d7e8fc)
# 建议:使用 secondary_fixed (通常比 dim 更亮) 或 surface_bright
COLOR_HTML_PALE="#f0f0f0"
COLOR_HTML_HIGHLIGHT=$MAIN_HILIGHT # 中间向左上一级左上反光 (原 #99c1f1)
COLOR_HTML_BODY=$MAIN_SHADOW # 球体中间 (原 #62a0ea)
COLOR_HTML_MID=$MAIN_SHADOW # 球体中间向右下一级 (原 #3584e4)
COLOR_HTML_SHADOW=$MAIN_DARKER_SHADOW # 右下 (原 #1c71d8)
COLOR_HTML_DEEP="{{colors.surface_container.default.hex}}" # 最右下 (原 #1a5fb4)
# [新增] 纸张背景 (原 #f6f5f4, #deddda) -
COLOR_DOC_PAPER=$PAPER_COLOR
COLOR_DOC_FOLD=$PAPER_FOLE_COLOR
# ------------------------------------------------------------------------------
# [5] 插件图标 (application-x-addon.svg)
# ------------------------------------------------------------------------------
# 你的要求:必须和 Folder (Secondary) 颜色一致
COLOR_ADDON_BODY=$MAIN_COLOR # 主体 (原 #3584e4 -> 对应 Folder Body)
COLOR_ADDON_HIGHLIGHT=$MAIN_HILIGHT # 高光 (原 #98c1f1 -> 对应 Folder Top)
COLOR_ADDON_SHADOW=$MAIN_SHADOW # 阴影 (原 #1c71d8 -> 对应 Folder Shadow)
COLOR_ADDON_DEEP=$MAIN_DARKER_SHADOW # 轮廓 (原 #1a5fb4 -> 对应 Folder Deep)
# ------------------------------------------------------------------------------
# [6] 字体文件 (font-x-generic.svg)
# ------------------------------------------------------------------------------
COLOR_FONT_A=$MAIN_SHADOW # 字母 "A" (原 #3584e4)
COLOR_FONT_BASE=$MAIN_DARKER_SHADOW # 底座/阴影 (原 #1a5fb4)
# ------------------------------------------------------------------------------
# [7] Office 文档 (x-office-document.svg)
# ------------------------------------------------------------------------------
COLOR_DOC_PAPER=$PAPER_COLOR # 纸张白
COLOR_DOC_FOLD=$PAPER_FOLE_COLOR # 折角灰
# 绿色渐变 -> 映射为 Tertiary (强调色)
COLOR_DOC_GRAD_ACCENT_START=$INVERSE_MAIN_COLOR # 原 #50db81
COLOR_DOC_GRAD_ACCENT_END=$INVERSE_MAIN_COLOR # 原 #8ff0a4
# 蓝色阴影 -> 映射为 Primary (主色)
COLOR_DOC_GRAD_SHADE_START=$MAIN_COLOR # 原 #4a86cf
COLOR_DOC_GRAD_SHADE_END=$INVERSE_MAIN_COLOR # 原 #87bae1
# ------------------------------------------------------------------------------
# [8] Office 演示文稿 (x-office-presentation.svg)
# ------------------------------------------------------------------------------
# 你的要求:饼图蓝色变 Folder 色,绿色变 Accent 色
COLOR_PRES_CHART_BLUE=$MAIN_COLOR # 饼图-蓝 (Folder Body)
COLOR_PRES_CHART_BLUE_DEEP=$MAIN_SHADOW # 饼图-深蓝 (Folder Shadow)
COLOR_PRES_CHART_GREEN=$INVERSE_MAIN_COLOR # 饼图-绿 (Accent Body)
COLOR_PRES_CHART_GREEN_DEEP=$INVERSE_MAIN_SHADOW # 饼图-深绿 (Accent Dark)
# 支架颜色 (保持中性灰或微调)
COLOR_PRES_STAND_DARK="{{colors.outline.default.hex}}"
COLOR_PRES_STAND_LIGHT="{{colors.outline.default.hex}}"
# ==============================================================================
# [二] 核心逻辑与 Sed 规则生成
# ==============================================================================
# 1. 文件夹规则
CMD_FOLDER="
s/#a4caee/$COLOR_FOLDER_BODY/g;
s/#438de6/$COLOR_FOLDER_SHADOW/g;
s/#62a0ea/$COLOR_FOLDER_SHADOW/g;
s/#afd4ff/$COLOR_FOLDER_TOP/g;
s/#c0d5ea/$COLOR_FOLDER_TOP/g"
# 2. 网络规则
CMD_NETWORK="
s/#62a0ea/$COLOR_ACCENT_LIGHT/g;
s/#1c71d8/$COLOR_ACCENT_BODY/g;
s/#c0bfbc/$COLOR_ACCENT_BODY/g;
s/#1a5fb4/$COLOR_ACCENT_DARK/g;
s/#14498a/$COLOR_ACCENT_DARK/g;
s/#9a9996/$COLOR_ACCENT_DARK/g;
s/#77767b/$COLOR_FOLDER_SHADOW/g;
s/#241f31/$COLOR_FOLDER_SHADOW/g;
s/#3d3846/$COLOR_FOLDER_SHADOW/g"
# 3. 垃圾桶规则
CMD_TRASH="
s/#2ec27e/$COLOR_ACCENT_BODY/g;
s/#33d17a/$COLOR_ACCENT_BODY/g;
s/#26a269/$COLOR_ACCENT_DARK/g;
s/#26a168/$COLOR_ACCENT_DARK/g;
s/#9a9996/$COLOR_ACCENT_DARK/g;
s/#c3c2bc/$COLOR_ACCENT_DARK/g;
s/#42d390/$COLOR_ACCENT_LIGHT/g;
s/#ffffff/$COLOR_FOLDER_SHADOW/g;
s/#deddda/$COLOR_TRASH_PAPER/g;
s/#f6f5f4/$COLOR_TRASH_PAPER/g;
s/#77767b/$COLOR_FOLDER_SHADOW/g"
# 4. 脚本/可执行文件规则 (核心光影修正)
CMD_SCRIPT="
s/#3584e4/$COLOR_SCRIPT_BODY/g;
s/#99c1f1/$COLOR_SCRIPT_HIGHLIGHT/g;
s/#98c1f1/$COLOR_SCRIPT_HIGHLIGHT/g;
s/#62a0ea/$COLOR_SCRIPT_MID/g;
s/#1c71d8/$COLOR_SCRIPT_SHADOW/g;
s/#1a5fb4/$COLOR_SCRIPT_GEAR/g;
s/#d7e8fc/$COLOR_SCRIPT_PALE/g;
s/#b3d3f9/$COLOR_SCRIPT_PALE/g"
# 5. 网页地球仪规则 (已补全所有 Hex)
CMD_HTML="
s/#f6f5f4/$COLOR_DOC_PAPER/g;
s/#deddda/$COLOR_DOC_FOLD/g;
s/#b3d3f9/$COLOR_HTML_PALE/g;
s/#d7e8fc/$COLOR_HTML_PALE/g;
s/#62a0ea/$COLOR_HTML_BODY/g;
s/#3584e4/$COLOR_HTML_MID/g;
s/#99c1f1/$COLOR_HTML_HIGHLIGHT/g;
s/#1c71d8/$COLOR_HTML_SHADOW/g;
s/#1a5fb4/$COLOR_HTML_DEEP/g"
# 6. Addon (拼图) 规则
CMD_ADDON="
s/#3584e4/$COLOR_ADDON_BODY/g;
s/#62a0ea/$COLOR_ADDON_HIGHLIGHT/g;
s/#98c1f1/$COLOR_ADDON_HIGHLIGHT/g;
s/#1c71d8/$COLOR_ADDON_SHADOW/g;
s/#1a5fb4/$COLOR_ADDON_DEEP/g"
# 7. Font (字体) 规则
CMD_FONT="
s/#3584e4/$COLOR_FONT_A/g;
s/#1a5fb4/$COLOR_FONT_BASE/g"
# 8. Document (文档) 规则
CMD_DOC="
s/#f6f5f4/$COLOR_DOC_PAPER/g;
s/#deddda/$COLOR_DOC_FOLD/g;
s/#50db81/$COLOR_DOC_GRAD_ACCENT_START/g;
s/#8ff0a4/$COLOR_DOC_GRAD_ACCENT_END/g;
s/#4a86cf/$COLOR_DOC_GRAD_SHADE_START/g;
s/#87bae1/$COLOR_DOC_GRAD_SHADE_END/g;
s/#d7e8fc/$COLOR_SCRIPT_PALE/g;
s/#b3d3f9/$COLOR_SCRIPT_PALE/g"
# 9. Presentation (PPT) 规则
CMD_PRES="
s/#4a86cf/$COLOR_PRES_CHART_BLUE/g;
s/#1a5fb4/$COLOR_PRES_CHART_BLUE_DEEP/g;
s/#50db81/$COLOR_PRES_CHART_GREEN/g;
s/#26a269/$COLOR_PRES_CHART_GREEN_DEEP/g;
s/#f6f5f4/$COLOR_DOC_PAPER/g;
s/#ffffff/$COLOR_DOC_PAPER/g;
s/#414140/$COLOR_PRES_STAND_DARK/g;
s/#949390/$COLOR_PRES_STAND_LIGHT/g;
s/#d7e8fc/$COLOR_SCRIPT_PALE/g"
# ==============================================================================
# [三] 执行核心流程
# ==============================================================================
TEMPLATE_DIR="$HOME/.config/matugen/templates/gtk-folder/Adwaita-Matugen"
CURRENT_THEME=$(gsettings get org.gnome.desktop.interface icon-theme | tr -d "'")
if [[ "$CURRENT_THEME" == "Adwaita-Matugen-A" ]]; then
TARGET_THEME="Adwaita-Matugen-B"
else
TARGET_THEME="Adwaita-Matugen-A"
fi
TARGET_DIR="$HOME/.local/share/icons/$TARGET_THEME"
# 1. 准备目录
mkdir -p "$TARGET_DIR"
cp -rf --reflink=auto --no-preserve=mode,ownership "$TEMPLATE_DIR/"* "$TARGET_DIR/"
sed -i "s/Name=.*/Name=$TARGET_THEME/" "$TARGET_DIR/index.theme"
# 2. 处理 PNG (统一使用文件夹颜色)
find "$TARGET_DIR" -name "*.png" -print0 | xargs -0 -P0 -I {} magick "{}" \
-channel RGB -colorspace gray -sigmoidal-contrast 10,50% \
+level-colors "$COLOR_FOLDER_SHADOW","$COLOR_FOLDER_BODY" \
+channel "{}"
# 3. 处理 SVG (分模块并行处理)
# [Group 1] Folders
find "$TARGET_DIR/scalable" \
\( -name "folder*.svg" -o -name "user-home*.svg" -o -name "user-desktop*.svg" -o -name "user-bookmarks*.svg" -o -name "inode-directory*.svg" \) \
-print0 | xargs -0 -P0 sed -i "$CMD_FOLDER"
# [Group 2] Network
find "$TARGET_DIR/scalable" -name "network*.svg" -print0 | xargs -0 -P0 sed -i --follow-symlinks "$CMD_NETWORK"
# [Group 3] Trash
find "$TARGET_DIR/scalable" -name "user-trash*.svg" -print0 | xargs -0 -P0 sed -i --follow-symlinks "$CMD_TRASH"
# [Group 4] Mimetypes - Script & Executable
find "$TARGET_DIR/scalable/mimetypes" \
\( -name "text-x-script*.svg" -o -name "application-x-executable*.svg" \) \
-print0 | xargs -0 -P0 sed -i "$CMD_SCRIPT"
# [Group 5] Mimetypes - Addon
find "$TARGET_DIR/scalable/mimetypes" -name "application-x-addon*.svg" -print0 | xargs -0 -P0 sed -i "$CMD_ADDON"
# [Group 6] Mimetypes - HTML
find "$TARGET_DIR/scalable/mimetypes" -name "text-html*.svg" -print0 | xargs -0 -P0 sed -i "$CMD_HTML"
# [Group 7] Mimetypes - Font
find "$TARGET_DIR/scalable/mimetypes" -name "font-x-generic*.svg" -print0 | xargs -0 -P0 sed -i "$CMD_FONT"
# [Group 8] Mimetypes - Document
find "$TARGET_DIR/scalable/mimetypes" -name "x-office-document*.svg" -print0 | xargs -0 -P0 sed -i "$CMD_DOC"
# [Group 9] Mimetypes - Presentation
find "$TARGET_DIR/scalable/mimetypes" -name "x-office-presentation*.svg" -print0 | xargs -0 -P0 sed -i "$CMD_PRES"
# 4. 应用变更
gsettings set org.gnome.desktop.interface icon-theme "$TARGET_THEME"
flatpak override --user --env=ICON_THEME="$TARGET_THEME" 2>/dev/null || true
exit 0

View File

@@ -0,0 +1,4 @@
<* for name, value in colors *>
$image = {{image}}
${{name}} = rgba({{value.default.hex_stripped}}ff)
<* endfor *>

View File

@@ -0,0 +1,38 @@
cursor {{colors.on_surface.default.hex}}
cursor_text_color {{colors.on_surface_variant.default.hex}}
foreground {{colors.on_surface.default.hex}}
background {{colors.surface.default.hex}}
selection_foreground {{colors.on_secondary.default.hex}}
selection_background {{colors.secondary_fixed_dim.default.hex}}
url_color {{colors.primary.default.hex}}
# black
color8 {{colors.outline.default.hex}}
color0 #4c4c4c
# red
color1 #ac8a8c
color9 #c49ea0
# green
color2 #8aac8b
color10 #9ec49f
# yellow
color3 #aca98a
color11 #c4c19e
# blue
color4 {{colors.primary.default.hex}}
color12 #a39ec4
# magenta
color5 {{colors.tertiary.default.hex}}
color13 {{colors.on_tertiary_container.default.hex}}
# cyan
color6 #8aacab
color14 #9ec3c4
# white
color15 #e7e7e7
color7 #f0f0f0

View File

@@ -0,0 +1,3 @@
background-color={{colors.surface_bright.default.hex}}
border-color={{colors.outline.default.hex}}
text-color={{colors.on_surface.default.hex}}

View File

@@ -0,0 +1,73 @@
-- ==========================================================================
-- 1. 自动安装插件管理器 (Lazy.nvim)
-- ==========================================================================
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable",
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
-- ==========================================================================
-- 2. 加载插件 (已替换为更稳定的源)
-- ==========================================================================
require("lazy").setup({
{
-- 【关键修改】换成了官方社区版,更稳定,不会报错
"RRethy/base16-nvim",
lazy = false,
priority = 1000,
},
})
-- ==========================================================================
-- 3. Matugen 热更新逻辑
-- ==========================================================================
local function source_matugen()
local matugen_path = vim.fn.stdpath('config') .. "/generated.lua"
local f = io.open(matugen_path, "r")
if f ~= nil then
io.close(f)
-- 尝试执行生成的文件
local ok, err = pcall(dofile, matugen_path)
if not ok then
-- 如果加载出错,只打印提示,不阻断启动
print("Matugen Load Error: " .. err)
end
else
-- 如果还没有生成过文件,使用内置主题兜底
vim.cmd.colorscheme('habamax')
end
end
-- 热重载函数
local function matugen_reload()
-- 重新加载颜色
source_matugen()
-- 如果你有 lualine可以在这里刷新
-- package.loaded['lualine'] = nil
-- require('lualine').setup({ options = { theme = 'base16' } })
-- 修复一些高亮丢失
vim.api.nvim_set_hl(0, "Comment", { italic = true })
end
-- 监听 Matugen 发出的信号
vim.api.nvim_create_autocmd("Signal", {
pattern = "SIGUSR1",
callback = function()
matugen_reload()
print("Matugen 颜色已更新!")
end,
})
-- 启动时加载一次
source_matugen()

View File

@@ -0,0 +1,59 @@
-- Auto-generated by Matugen
require('base16-colorscheme').setup({
base00 = '{{colors.background.default.hex}}', -- 背景
base01 = '{{colors.surface_container_lowest.default.hex}}', --较浅的背景色
base02 = '{{colors.surface_container_low.default.hex}}',
base03 = '{{colors.primary.default.hex}}', -- 键盘字符,匹配大括号
base04 = '{{colors.on_surface_variant.default.hex}}',
base05 = '{{colors.primary.default.hex}}', -- 括号,运算符
base06 = '{{colors.inverse_on_surface.default.hex}}',
base07 = '{{colors.surface_bright.default.hex}}',
base08 = '{{colors.tertiary.default.hex}}',-- 变量名
base09 = '{{colors.secondary_fixed.default.hex}}', -- 整数、布尔值 (True/False)。
base0A = '{{colors.secondary.default.hex}}', --类名 (Class)、搜索匹配到的背景
base0B = '{{colors.primary_fixed_dim.default.hex}}', -- 字符串
base0C = '{{colors.tertiary_fixed_dim.default.hex}}',
base0D = '{{colors.primary_container.default.hex}}', -- 函数名
base0E = '{{colors.secondary_fixed_dim.default.hex}}', -- 关键词 (if, else, return, import)。
base0F = '{{colors.error.default.hex}}',
})
-- We first theme base16, but we also need to fix some other colors that don't
-- contrast well by default
-- Helper function to set multiple highlight groups at once
local function set_hl_mutliple(groups, value)
for _, v in pairs(groups) do
vim.api.nvim_set_hl(0, v, value)
end
end
-- Make selected text stand out more
vim.api.nvim_set_hl(0, 'Visual', {
bg = '{{colors.on_surface.default.hex}}', -- 选中文字背景
fg = '{{colors.surface.default.hex}}', -- 选中文字颜色
})
set_hl_mutliple({ 'TSComment', 'Comment' }, {
fg = '{{colors.outline.default.hex}}', -- 注释
})
set_hl_mutliple({ 'TSMethod', 'Method' }, {
fg = '{{colors.tertiary.default.hex}}',
})
set_hl_mutliple({ 'TSFunction', 'Function' }, {
fg = '{{colors.secondary.default.hex}}',
})
vim.api.nvim_set_hl(0, 'Keyword', {
fg = '{{colors.inverse_primary.default.hex}}',
})
vim.api.nvim_set_hl(0, 'MsgArea', {
bg = '{{colors.surface_container.default.hex}}', --底边
fg = '{{colors.primary.default.hex}}',
})

View File

@@ -0,0 +1,13 @@
layout{
focus-ring{
active-gradient from="{{colors.primary.default.hex}}cc" to="{{colors.tertiary.default.hex}}cc" angle=135
urgent-color "{{colors.error.default.hex}}"
}
}
recent-windows {
highlight {
active-color "{{colors.surface_bright.default.hex}}"
urgent-color "{{colors.error.default.hex}}"
}
}

View File

@@ -0,0 +1,170 @@
:root {
/* 背景 */
--bg-color: {{colors.surface.default.rgba | set_alpha: 0.95}};
/* 标题颜色 */
--label-color: {{colors.on_surface.default.rgba | set_alpha: 1.0}};
/* 右上角显示器标签文字的颜色 */
--alternate-label-color: {{colors.on_secondary_container.default.rgba | set_alpha: 1.0}};
/* 不知道是啥 */
--dim-label-color: rgb(142, 142, 147);
/* 边框 */
--border-color: {{colors.outline.default.rgba | set_alpha: 1.0}};
/* 选中窗口的背景高亮和右上角显示器标签背景的颜色 */
--highlight-color: {{colors.surface_bright.default.rgba | set_alpha: 0.8}};
/* 不知道是啥 */
--urgency-color: {{colors.error.default.rgba | set_alpha: 1.0}};
/* 左边显示的当前工作区的指示器的颜色 */
--indicator-focus-color: {{colors.primary.default.rgba | set_alpha: 0.95}};
/* 非当前工作区指示器的颜色 */
--indicator-color: rgba(58, 58, 60, .95);
}
#niriswitcher.background {
background-color: transparent;
}
#niriswitcher {on_surface
background-color: transparent;
padding: 40px;
}
#main-view {
background-color: var(--bg-color);
border-radius: 22px;
border: 1px solid var(--border-color);
padding: 10px 20px 10px;
box-shadow: 0 0 20px 5px rgba(0,0,0,.3),
0 0 13px 8px rgba(0,0,0,.2);
}
.workspace scrollbar, .workspace scrollbar * {
background-color: transparent;
min-width: 0px;
min-height: 0px;
opacity: 0;
}
.workspace scrollbar,
.workspace scrollbar slider {
background: transparent;
min-width: 6px;
min-height: 6px;
}
#application-title {
background: transparent;
color: var(--label-color);
transition: all 0.2s ease-in-out;
}
#workspace-name {
transition: all 0.2s ease-in-out;
background-color: var(--highlight-color);
color: var(--alternate-label-color);
border-radius: 22px;
padding: 3px 9px;
}
#workspaces {
margin: 5px 10px 5px;
}
.workspace-indicator {
background-color: var(--indicator-color);
transition: background 200ms 20ms;
margin:0;
}
.workspace-indicator:first-child {
border-radius: 20% 20% 0 0;
}
.workspace-indicator:last-child {
border-radius: 0 0 20% 20%;
}
.workspace-indicator.selected {
background-color: var(--indicator-focus-color);
}
.workspace-indicator:hover {
background-color: var(--indicator-focus-color);
}
#workspace-indicators {
background: transparent;
margin-top: 22px;
margin-bottom: 22px;
margin-right: 2px;
}
.application {
background-color: transparent;
}
.application-icon {
transition: -gtk-icon-filter 0.2s ease-in-out;
padding: 10px 15px 10px;
-gtk-icon-shadow: 0 1px 1px hsl(0deg 0% 0% / 0.075),
0 2px 2px hsl(0deg 0% 0% / 0.075),
0 4px 4px hsl(0deg 0% 0% / 0.075),
0 8px 8px hsl(0deg 0% 0% / 0.075),
0 16px 16px hsl(0deg 0% 0% / 0.075);
}
.application-name {
transition: opacity 0.2s ease;
opacity: 0;
color: var(--dim-label-color);
margin-top: 3px;
}
.application.selected .application-name {
opacity: 1;
color: var(--label-color);
}
.application.urgent .application-icon {
animation-timing-function: linear;
animation: urgency-pulse-animation 2.5s infinite;
}
@keyframes urgency-pulse-animation {
0% {
-gtk-icon-filter: drop-shadow(0 0 2px var(--urgency-color));
}
25% {
-gtk-icon-filter: drop-shadow(0 0 5px var(--urgency-color));
}
50% {
-gtk-icon-filter: drop-shadow(0 0 10px var(--urgency-color));
}
75% {
-gtk-icon-filter: drop-shadow(0 0 5px var(--urgency-color));
}
100% {
-gtk-icon-filter: drop-shadow(0 0 2px var(--urgency-color));
}
}
.application.focused .application-name {
opacity: 1;
color: var(--dim-label-color);
}
.application.selected .application-icon {
transition: background-color 0.1s ease-in;
border-radius: 10%;
background-color: var(--highlight-color);
}
@import "/home/shorin/.config/niriswitcher/colors.css";

View File

@@ -0,0 +1,22 @@
{
"wallpaper": "{{image}}",
"alpha": "100",
"colors": {
"color0": "{{colors.background.default.hex}}",
"color1": "",
"color2": "",
"color3": "",
"color4": "",
"color5": "",
"color6": "",
"color7": "",
"color8": "",
"color9": "",
"color10": "{{colors.primary.default.hex}}",
"color11": "",
"color12": "",
"color13": "{{colors.surface_bright.default.hex}}",
"color14": "",
"color15": "{{colors.on_surface.default.hex}}"
}
}

View File

@@ -0,0 +1,5 @@
[ColorScheme]
active_colors={{colors.on_background.default.hex}}, {{colors.surface.default.hex}}, #ffffff, #cacaca, #9f9f9f, #b8b8b8, {{colors.on_background.default.hex}}, #ffffff, {{colors.on_surface.default.hex}}, {{colors.background.default.hex}}, {{colors.background.default.hex}}, {{colors.shadow.default.hex}}, {{colors.primary_container.default.hex}}, {{colors.on_primary_container.default.hex}}, {{colors.secondary.default.hex}}, {{colors.primary.default.hex}}, {{colors.surface.default.hex}}, {{colors.scrim.default.hex}}, {{colors.surface.default.hex}}, {{colors.on_surface.default.hex}}, {{colors.secondary.default.hex}}
disabled_colors={{colors.on_background.default.hex}}, {{colors.surface.default.hex}}, #ffffff, #cacaca, #9f9f9f, #b8b8b8, {{colors.on_background.default.hex}}, #ffffff, {{colors.on_surface.default.hex}}, {{colors.background.default.hex}}, {{colors.background.default.hex}}, {{colors.shadow.default.hex}}, {{colors.primary_container.default.hex}}, {{colors.on_primary_container.default.hex}}, {{colors.secondary.default.hex}}, {{colors.primary.default.hex}}, {{colors.surface.default.hex}}, {{colors.scrim.default.hex}}, {{colors.surface.default.hex}}, {{colors.on_surface.default.hex}}, {{colors.secondary.default.hex}}
inactive_colors={{colors.on_background.default.hex}}, {{colors.surface.default.hex}}, #ffffff, #cacaca, #9f9f9f, #b8b8b8, {{colors.on_background.default.hex}}, #ffffff, {{colors.on_surface.default.hex}}, {{colors.background.default.hex}}, {{colors.background.default.hex}}, {{colors.shadow.default.hex}}, {{colors.primary_container.default.hex}}, {{colors.on_primary_container.default.hex}}, {{colors.secondary.default.hex}}, {{colors.primary.default.hex}}, {{colors.surface.default.hex}}, {{colors.scrim.default.hex}}, {{colors.surface.default.hex}}, {{colors.on_surface.default.hex}}, {{colors.secondary.default.hex}}

View File

@@ -0,0 +1,181 @@
"$schema" = 'https://starship.rs/config-schema.json'
format = """
[](color_orange)\
$os\
$username\
[](bg:color_yellow fg:color_orange)\
$directory\
[](fg:color_yellow bg:color_aqua)\
$git_branch\
$git_status\
[](fg:color_aqua bg:color_blue)\
$c\
$cpp\
$rust\
$golang\
$nodejs\
$php\
$java\
$kotlin\
$haskell\
$python\
[](fg:color_blue bg:color_bg3)\
$docker_context\
$conda\
$pixi\
[](fg:color_bg3 bg:color_bg1)\
$time\
[ ](fg:color_bg1)\
$line_break$character"""
palette = 'colors'
[palettes.colors]
mustard = '#af8700'
color_orange = '{{colors.primary_fixed_dim.default.hex}}'
color_fg0 = '{{colors.on_primary.default.hex}}'
color_fg1 = '{{colors.on_surface.default.hex}}'
color_purple = '{{colors.on_tertiary_container.default.hex}}'
color_bg3 = '{{colors.secondary.default.hex}}'
color_green = '{{colors.on_primary.default.hex}}'
color_bg1 = '{{colors.secondary_container.default.hex}}'
color_blue = '{{colors.inverse_primary.default.hex}}'
color_red = '{{colors.primary.default.hex}}'
color_aqua = '{{colors.on_secondary_container.default.hex}}'
color_yellow = '{{colors.tertiary.default.hex}}'
[os]
disabled = false
style = "bg:color_orange fg:color_fg0"
[os.symbols]
Windows = "󰍲"
Ubuntu = "󰕈"
SUSE = ""
Raspbian = "󰐿"
Mint = "󰣭"
Macos = "󰀵"
Manjaro = ""
Linux = "󰌽"
Gentoo = "󰣨"
Fedora = "󰣛"
Alpine = ""
Amazon = ""
Android = ""
Arch = "󰣇"
Artix = "󰣇"
EndeavourOS = ""
CentOS = ""
Debian = "󰣚"
Redhat = "󱄛"
RedHatEnterprise = "󱄛"
Pop = ""
[username]
show_always = true
style_user = "bg:color_orange fg:color_fg0"
style_root = "bg:color_orange fg:color_fg0"
format = '[ $user ]($style)'
[directory]
style = "fg:color_fg0 bg:color_yellow"
format = "[ $path ]($style)"
truncation_length = 3
truncation_symbol = "…/"
[directory.substitutions]
"Documents" = "󰈙 "
"Downloads" = " "
"Music" = "󰝚 "
"Pictures" = " "
"Developer" = "󰲋 "
[git_branch]
symbol = ""
style = "bg:color_aqua"
format = '[[ $symbol $branch ](fg:color_fg0 bg:color_aqua)]($style)'
[git_status]
style = "bg:color_aqua"
format = '[[($all_status$ahead_behind )](fg:color_fg0 bg:color_aqua)]($style)'
[nodejs]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[c]
symbol = " "
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[cpp]
symbol = " "
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[rust]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[golang]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[php]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[java]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[kotlin]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg1 bg:color_blue)]($style)'
[haskell]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[python]
symbol = ""
style = "bg:color_blue"
format = '[[ $symbol( $version) ](fg:color_fg0 bg:color_blue)]($style)'
[docker_context]
symbol = ""
style = "bg:color_bg3"
format = '[[ $symbol( $context) ](fg:#83a598 bg:color_bg3)]($style)'
[conda]
style = "bg:color_bg3"
format = '[[ $symbol( $environment) ](fg:#83a598 bg:color_bg3)]($style)'
[pixi]
style = "bg:color_bg3"
format = '[[ $symbol( $version)( $environment) ](fg:color_fg0 bg:color_bg3)]($style)'
[time]
disabled = false
time_format = "%R"
style = "bg:color_bg1"
format = '[[  $time ](fg:color_fg1 bg:color_bg1)]($style)'
[line_break]
disabled = false
[character]
disabled = false
success_symbol = '[](bold fg:color_green)'
error_symbol = '[](bold fg:color_red)'
vimcmd_symbol = '[](bold fg:color_green)'
vimcmd_replace_one_symbol = '[](bold fg:color_purple)'
vimcmd_replace_symbol = '[](bold fg:color_purple)'
vimcmd_visual_symbol = '[](bold fg:color_yellow)'

View File

@@ -0,0 +1,158 @@
:root {
--bg-color: {{colors.tertiary.default.rgb}};
--label-color: {{colors.tertiary.default.rgb}};
--alternate-label-color: {{colors.tertiary.default.rgb}};
--dim-label-color: {{colors.tertiary.default.rgb}};
--border-color: rgba(72, 72, 74, .95);
--highlight-color: rgba(99,99,102,0.95);
--urgency-color: {{colors.tertiary.default.rgb}};
--indicator-focus-color: rgba(10, 132, 255, 0.95);
--indicator-color: rgba(58, 58, 60, .95);
}
#niriswitcher.background {
background-color: transparent;
}
#niriswitcher {
background-color: transparent;
padding: 40px;
}
#main-view {
background-color: var(--bg-color);
border-radius: 22px;
border: 1px solid var(--border-color);
padding: 10px 20px 10px;
box-shadow: 0 0 20px 5px rgba(0,0,0,.3),
0 0 13px 8px rgba(0,0,0,.2);
}
.workspace scrollbar, .workspace scrollbar * {
background-color: transparent;
min-width: 0px;
min-height: 0px;
opacity: 0;
}
.workspace scrollbar,
.workspace scrollbar slider {
background: transparent;
min-width: 6px;
min-height: 6px;
}
#application-title {
background: transparent;
color: var(--label-color);
transition: all 0.2s ease-in-out;
}
#workspace-name {
transition: all 0.2s ease-in-out;
background-color: var(--highlight-color);
color: var(--alternate-label-color);
border-radius: 22px;
padding: 3px 9px;
}
#workspaces {
margin: 5px 10px 5px;
}
.workspace-indicator {
background-color: var(--indicator-color);
transition: background 200ms 20ms;
margin:0;
}
.workspace-indicator:first-child {
border-radius: 20% 20% 0 0;
}
.workspace-indicator:last-child {
border-radius: 0 0 20% 20%;
}
.workspace-indicator.selected {
background-color: var(--indicator-focus-color);
}
.workspace-indicator:hover {
background-color: var(--indicator-focus-color);
}
#workspace-indicators {
background: transparent;
margin-top: 22px;
margin-bottom: 22px;
margin-right: 2px;
}
.application {
background-color: transparent;
}
.application-icon {
transition: -gtk-icon-filter 0.2s ease-in-out;
padding: 10px 15px 10px;
-gtk-icon-shadow: 0 1px 1px hsl(0deg 0% 0% / 0.075),
0 2px 2px hsl(0deg 0% 0% / 0.075),
0 4px 4px hsl(0deg 0% 0% / 0.075),
0 8px 8px hsl(0deg 0% 0% / 0.075),
0 16px 16px hsl(0deg 0% 0% / 0.075);
}
.application-name {
transition: opacity 0.2s ease;
opacity: 0;
color: var(--dim-label-color);
margin-top: 3px;
}
.application.selected .application-name {
opacity: 1;
color: var(--label-color);
}
.application.urgent .application-icon {
animation-timing-function: linear;
animation: urgency-pulse-animation 2.5s infinite;
}
@keyframes urgency-pulse-animation {
0% {
-gtk-icon-filter: drop-shadow(0 0 2px var(--urgency-color));
}
25% {
-gtk-icon-filter: drop-shadow(0 0 5px var(--urgency-color));
}
50% {
-gtk-icon-filter: drop-shadow(0 0 10px var(--urgency-color));
}
75% {
-gtk-icon-filter: drop-shadow(0 0 5px var(--urgency-color));
}
100% {
-gtk-icon-filter: drop-shadow(0 0 2px var(--urgency-color));
}
}
.application.focused .application-name {
opacity: 1;
color: var(--dim-label-color);
}
.application.selected .application-icon {
transition: background-color 0.1s ease-in;
border-radius: 10%;
background-color: var(--highlight-color);
}

View File

@@ -0,0 +1,19 @@
screenshots
clock
indicator
indicator-radius=200
indicator-thickness=15
effect-blur=10x5
ring-color={{colors.primary_container.default.hex}}
key-hl-color={{colors.primary.default.hex}}
line-color={{colors.outline.default.hex}}
inside-color={{colors.surface_container.default.hex}}
separator-color={{colors.primary_container.default.hex}}
ring-ver-color={{colors.tertiary_container.default.hex}}
inside-ver-color={{colors.tertiary.default.hex}}
text-ver-color={{colors.on_tertiary.default.hex}}
line-ver-color={{colors.outline.default.hex}}
ring-wrong-color={{colors.error_container.default.hex}}
inside-wrong-color={{colors.error.default.hex}}
text-wrong-color={{colors.on_error.default.hex}}
line-wrong-color={{colors.outline.default.hex}}

View File

@@ -0,0 +1,5 @@
:root {
<* for name, value in colors *>
--{{name}}: {{value.default.hex}};
<* endfor *>
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -0,0 +1,78 @@
#!/bin/bash
# ==========================================
# 配置区域
# ==========================================
# 源图标目录 (Matugen 模板目录)
SRC_DIR="$HOME/.config/matugen/templates/wlogout/icons"
# 目标图标目录 (实际生效目录)
DEST_DIR="$HOME/.config/wlogout/icons"
# ==========================================
# 脚本逻辑
# ==========================================
# 1. 获取目标颜色参数
# 我们期望在运行脚本时传入颜色,例如: ./recolor_icons.sh "#ff0000"
TARGET_COLOR="{{colors.primary.default.hex}}"
# 检查是否提供了颜色参数
if [ -z "$TARGET_COLOR" ]; then
echo "错误: 未提供目标颜色。"
echo "用法: $0 <十六进制颜色代码>"
echo "示例: $0 \"#ff0000\""
exit 1
fi
# 检查 ImageMagick 是否安装
if ! command -v magick &> /dev/null; then
echo "错误: 未找到 ImageMagick (magick 命令)。请先安装它。"
exit 1
fi
# 检查源目录是否存在
if [ ! -d "$SRC_DIR" ]; then
echo "错误: 源目录不存在: $SRC_DIR"
exit 1
fi
echo "开始处理图标..."
echo "源目录: $SRC_DIR"
echo "目标目录: $DEST_DIR"
echo "应用颜色: $TARGET_COLOR"
# 2. 确保目标目录存在
# 如果不存在则创建它 (使用 -p 选项,如果已存在也不会报错)
mkdir -p "$DEST_DIR"
# 3. 循环处理源目录下的所有 PNG 文件
# 使用 find 命令查找,并配合 while 循环处理,可以安全处理文件名中的特殊字符
find "$SRC_DIR" -maxdepth 1 -name "*.png" -print0 | while IFS= read -r -d '' img_path; do
# 获取文件名 (例如 icon.png)
filename=$(basename "$img_path")
# 构建目标文件路径
dest_path="$DEST_DIR/$filename"
echo -n "正在处理: $filename ... "
# 执行 ImageMagick 命令 (核心逻辑)
# 1. 读取原图
# 2. 转为灰度 (-colorspace Gray)
# 3. 设置填充颜色 (-fill "$TARGET_COLOR")
# 4. 应用着色 (-tint 100%)
# 5. 输出到目标路径
magick "$img_path" \
-colorspace Gray \
-fill "$TARGET_COLOR" \
-tint 100% \
"$dest_path"
if [ $? -eq 0 ]; then
echo "完成。"
else
echo "失败!"
fi
done
echo "所有图标处理完毕。"

View File

@@ -0,0 +1,174 @@
# : Manager [[[
[mgr]
cwd = { fg = "{{colors.on_surface.default.hex}}" }
# Find
find_keyword = { fg = "{{colors.error.default.hex}}", bold = true, italic = true, underline = true }
find_position = { fg = "{{colors.error.default.hex}}", bold = true, italic = true }
# Marker
marker_copied = { fg = "{{colors.tertiary_fixed.default.hex | auto_lightness: 20.0}}", bg = "{{colors.tertiary_fixed.default.hex | auto_lightness: 20.0}}" }
marker_cut = { fg = "{{colors.tertiary_fixed.default.hex}}", bg = "{{colors.tertiary_fixed.default.hex}}" }
marker_marked = { fg = "{{colors.error.default.hex}}", bg = "{{colors.error.default.hex}}" }
marker_selected = { fg = "{{colors.tertiary.default.hex}}", bg = "{{colors.tertiary.default.hex}}" }
# Count
count_copied = { fg = "{{colors.on_tertiary_fixed.default.hex}}", bg = "{{colors.tertiary_fixed.default.hex}}" }
count_cut = { fg = "{{colors.on_tertiary_fixed.default.hex}}", bg = "{{colors.tertiary_fixed.default.hex}}" }
count_selected = { fg = "{{colors.on_primary.default.hex}}", bg = "{{colors.tertiary.default.hex}}" }
# Border
border_symbol = "│"
border_style = { fg = "{{colors.surface_tint.default.hex}}" }
# : ]]]
# : Tabs (New Section) [[[
[tabs]
active = { fg = "{{colors.on_primary.default.hex}}", bg = "{{colors.primary.default.hex}}", bold = true }
inactive = { fg = "{{colors.primary_fixed.default.hex}}", bg = "{{colors.on_primary_fixed.default.hex}}" }
# : ]]]
# : Mode [[[
[mode]
# Mode
normal_main = { bg = "{{colors.primary.default.hex}}", fg = "{{colors.on_primary.default.hex}}", bold = true }
normal_alt = { bg = "{{colors.surface_variant.default.hex}}", fg = "{{colors.on_surface_variant.default.hex}}" }
# Select mode
select_main = { bg = "{{colors.secondary.default.hex}}", fg = "{{colors.on_secondary.default.hex}}", bold = true }
select_alt = { bg = "{{colors.surface_variant.default.hex}}", fg = "{{colors.on_surface_variant.default.hex}}" }
# Unset mode
unset_main = { bg = "{{colors.tertiary.default.hex}}", fg = "{{colors.on_tertiary.default.hex}}", bold = true }
unset_alt = { bg = "{{colors.surface_variant.default.hex}}", fg = "{{colors.on_surface_variant.default.hex}}" }
# : ]]]
# : Status [[[
[status]
sep_left = { open = "🭁", close = "🭠" }
sep_right = { open = "🭁", close = "🭠" }
# Progress
progress_label = { bold = true }
progress_normal = { fg = "{{colors.primary.default.hex}}", bg = "{{colors.surface_bright.default.hex}}" }
progress_error = { fg = "{{colors.error.default.hex}}", bg = "{{colors.surface_bright.default.hex}}" }
# Permissions
perm_type = { fg = "{{colors.secondary.default.hex | auto_lightness: 30.0}}" }
perm_write = { fg = "{{colors.tertiary.default.hex | auto_lightness: 30.0}}" }
perm_read = { fg = "{{colors.error.default.hex | auto_lightness: 30.0}}" }
perm_exec = { fg = "{{colors.tertiary_fixed.default.hex | auto_lightness: 30.0}}" }
perm_sep = { fg = "{{colors.primary_fixed.default.hex | auto_lightness: 30.0}}" }
# : ]]]
# : Picker (Renamed from Select) [[[
[pick]
border = { fg = "{{colors.primary.default.hex}}" }
active = { fg = "{{colors.tertiary.default.hex}}", bold = true }
inactive = {}
# : ]]]
# : Input [[[
[input]
border = { fg = "{{colors.primary.default.hex}}" }
value = { fg = "{{colors.on_surface.default.hex}}" }
# : ]]]
# : Completion (Renamed from Completion) [[[
[cmp]
border = { fg = "{{colors.primary.default.hex}}", bg = "{{colors.on_primary.default.hex}}" }
# : ]]]
# : Tasks [[[
[tasks]
border = { fg = "{{colors.primary.default.hex}}" }
title = {}
hovered = { fg = "{{colors.tertiary_fixed.default.hex}}", underline = true }
# : ]]]
# : Which [[[
[which]
cols = 3
mask = { bg = "{{colors.surface_bright.default.hex}}" }
cand = { fg = "{{colors.primary.default.hex}}" }
rest = { fg = "{{colors.on_primary.default.hex}}" }
desc = { fg = "{{colors.on_surface.default.hex}}" }
separator = " ▶ "
separator_style = { fg = "{{colors.on_surface.default.hex}}" }
# : ]]]
# : Help [[[
[help]
on = { fg = "{{colors.on_surface.default.hex}}" }
run = { fg = "{{colors.on_surface.default.hex}}" }
footer = { fg = "{{colors.on_secondary.default.hex}}", bg = "{{colors.secondary.default.hex}}" }
# : ]]]
# : Notify [[[
[notify]
title_info = { fg = "{{colors.tertiary.default.hex}}" }
title_warn = { fg = "{{colors.primary.default.hex}}" }
title_error = { fg = "{{colors.error.default.hex}}" }
# : ]]]
# : File-specific styles [[[
[filetype]
rules = [
# Images
{ mime = "image/*", fg = "#94e2d5" },
# Media
{ mime = "{audio,video}/*", fg = "#f9e2af" },
# Archives
{ mime = "application/{zip,rar,7z*,tar,gzip,xz,zstd,bzip*,lzma,compress,archive,cpio,arj,xar,ms-cab*}", fg = "#f5c2e7" },
# Documents
{ mime = "application/{pdf,doc,rtf}", fg = "#a6e3a1" },
# Special files
{ url = "*", is = "orphan", bg = "{{colors.error_container.default.hex}}" },
{ url = "*", is = "exec", fg = "{{colors.on_error_container.default.hex}}" },
# Fallback
{ url = "*", fg = "{{colors.on_surface.default.hex}}" },
{ url = "*/", fg = "{{colors.surface_tint.default.hex}}" },
]
# : ]]]

13
.config/niri/colors.kdl Normal file
View File

@@ -0,0 +1,13 @@
layout{
focus-ring{
active-gradient from="#dcc66ecc" to="#aad0b3cc" angle=135
urgent-color "#ffb4ab"
}
}
recent-windows {
highlight {
active-color "#3c3930"
urgent-color "#ffb4ab"
}
}

670
.config/niri/config.kdl Normal file
View File

@@ -0,0 +1,670 @@
// This config is in the KDL format: https://kdl.dev
// "/-" comments out the following node.
// Check the wiki for a full description of the configuration:
// https://yalter.github.io/niri/Configuration:-Introduction
environment {
// LANG "zh_CN.UTF-8"
// LC_CTYPE "en_US.UTF-8"
// qt主题
QT_QPA_PLATFORMTHEME "qt6ct"
}
cursor {
// 主题,存放路径在~/.local/share/icons
//xcursor-theme "breeze_cursors"
// 大小
xcursor-size 32
// 闲置多少毫秒自动隐藏光标
hide-after-inactive-ms 15000
}
// Input device configuration.
// Find the full list of options on the wiki:
// https://yalter.github.io/niri/Configuration:-Input
include "colors.kdl"
input {
keyboard {
xkb {
// You can set rules, model, layout, variant and options.
// For more information, see xkeyboard-config(7).
// For example:
// layout "us,ru"
// options "grp:win_space_toggle,compose:ralt,ctrl:nocaps"
// If this section is empty, niri will fetch xkb settings
// from org.freedesktop.locale1. You can control these using
// localectl set-x11-keymap.
}
// Enable numlock on startup, omitting this setting disables it.
numlock
}
// Next sections include libinput settings.
// Omitting settings disables them, or leaves them at their default values.
// All commented-out settings here are examples, not defaults.
touchpad {
// off
tap
// dwt
// dwtp
// drag false
// drag-lock
// natural-scroll
// accel-speed 0.2
// accel-profile "flat"
// scroll-method "two-finger"
// disabled-on-external-mouse
}
mouse {
// off
// natural-scroll
// accel-speed 0.2
// accel-profile "flat"
// scroll-method "no-scroll"
}
trackpoint {
// off
// natural-scroll
// accel-speed 0.2
// accel-profile "flat"
// scroll-method "on-button-down"
// scroll-button 273
// scroll-button-lock
// middle-emulation
}
// Uncomment this to make the mouse warp to the center of newly focused windows.
// warp-mouse-to-focus
// focus-follows-mouse
// Focus windows and outputs automatically when moving the mouse into them.
// Setting max-scroll-amount="0%" makes it work only on windows already fully on screen.
// focus-follows-mouse max-scroll-amount="0%"
}
// You can configure outputs by their name, which you can find
// by running `niri msg outputs` while inside a niri instance.
// The built-in laptop monitor is usually called "eDP-1".
// Find more information on the wiki:
// https://yalter.github.io/niri/Configuration:-Outputs
// Remember to uncomment the node by removing "/-"!
output "eDP-1" {
mode "2560x1600@240.000"
scale 1.25
position x=0 y=0
focus-at-startup
}
/-output "eDP-1" {
// Uncomment this line to disable this output.
// off
// Resolution and, optionally, refresh rate of the output.
// The format is "<width>x<height>" or "<width>x<height>@<refresh rate>".
// If the refresh rate is omitted, niri will pick the highest refresh rate
// for the resolution.
// If the mode is omitted altogether or is invalid, niri will pick one automatically.
// Run `niri msg outputs` while inside a niri instance to list all outputs and their modes.
mode "1920x1080@120.030"
// You can use integer or fractional scale, for example use 1.5 for 150% scale.
scale 2
// Transform allows to rotate the output counter-clockwise, valid values are:
// normal, 90, 180, 270, flipped, flipped-90, flipped-180 and flipped-270.
transform "normal"
// Position of the output in the global coordinate space.
// This affects directional monitor actions like "focus-monitor-left", and cursor movement.
// The cursor can only move between directly adjacent outputs.
// Output scale and rotation has to be taken into account for positioning:
// outputs are sized in logical, or scaled, pixels.
// For example, a 3840×2160 output with scale 2.0 will have a logical size of 1920×1080,
// so to put another output directly adjacent to it on the right, set its x to 1920.
// If the position is unset or results in an overlap, the output is instead placed
// automatically.
position x=1280 y=0
}
// Settings that influence how windows are positioned and sized.
// Find more information on the wiki:
// https://yalter.github.io/niri/Configuration:-Layout
layout {
// Set gaps around windows in logical pixels.
gaps 12
// When to center a column when changing focus, options are:
// - "never", default behavior, focusing an off-screen column will keep at the left
// or right edge of the screen.
// - "always", the focused column will always be centered.
// - "on-overflow", focusing a column will center it if it doesn't fit
// together with the previously focused column.
center-focused-column "never"
// You can customize the widths that "switch-preset-column-width" (Mod+R) toggles between.
preset-column-widths {
// Proportion sets the width as a fraction of the output width, taking gaps into account.
// For example, you can perfectly fit four windows sized "proportion 0.25" on an output.
// The default preset widths are 1/3, 1/2 and 2/3 of the output.
proportion 0.33333
proportion 0.5
proportion 0.66667
// Fixed sets the width in logical pixels exactly.
// fixed 1920
}
// You can also customize the heights that "switch-preset-window-height" (Mod+Shift+R) toggles between.
// preset-window-heights { }
// You can change the default width of the new windows.
default-column-width { proportion 0.5; }
// If you leave the brackets empty, the windows themselves will decide their initial width.
// default-column-width {}
// By default focus ring and border are rendered as a solid background rectangle
// behind windows. That is, they will show up through semitransparent windows.
// This is because windows using client-side decorations can have an arbitrary shape.
//
// If you don't like that, you should uncomment `prefer-no-csd` below.
// Niri will draw focus ring and border *around* windows that agree to omit their
// client-side decorations.
//
// Alternatively, you can override it with a window rule called
// `draw-border-with-background`.
// You can change how the focus ring looks.
focus-ring {
// Uncomment this line to disable the focus ring.
// off
// How many logical pixels the ring extends out from the windows.
width 3
// Colors can be set in a variety of ways:
// - CSS named colors: "red"
// - RGB hex: "#rgb", "#rgba", "#rrggbb", "#rrggbbaa"
// - CSS-like notation: "rgb(255, 127, 0)", rgba(), hsl() and a few others.
// Color of the ring on the active monitor.
// active-color "#7fc8ff"
// Color of the ring on inactive monitors.
//
// The focus ring only draws around the active window, so the only place
// where you can see its inactive-color is on other monitors.
// inactive-color "#505050"
// You can also use gradients. They take precedence over solid colors.
// Gradients are rendered the same as CSS linear-gradient(angle, from, to).
// The angle is the same as in linear-gradient, and is optional,
// defaulting to 180 (top-to-bottom gradient).
// You can use any CSS linear-gradient tool on the web to set these up.
// Changing the color space is also supported, check the wiki for more info.
//
// active-gradient from="#80c8ff" to="#c7ff7f" angle=45
// You can also color the gradient relative to the entire view
// of the workspace, rather than relative to just the window itself.
// To do that, set relative-to="workspace-view".
//
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
}
// You can also add a border. It's similar to the focus ring, but always visible.
border {
// The settings are the same as for the focus ring.
// If you enable the border, you probably want to disable the focus ring.
off
width 4
active-color "#ffc87f"
inactive-color "#505050"
// Color of the border around windows that request your attention.
urgent-color "#9b0000"
// Gradients can use a few different interpolation color spaces.
// For example, this is a pastel rainbow gradient via in="oklch longer hue".
//
// active-gradient from="#e5989b" to="#ffb4a2" angle=45 relative-to="workspace-view" in="oklch longer hue"
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
}
// You can enable drop shadows for windows.
shadow {
// Uncomment the next line to enable shadows.
on
// By default, the shadow draws only around its window, and not behind it.
// Uncomment this setting to make the shadow draw behind its window.
//
// Note that niri has no way of knowing about the CSD window corner
// radius. It has to assume that windows have square corners, leading to
// shadow artifacts inside the CSD rounded corners. This setting fixes
// those artifacts.
//
// However, instead you may want to set prefer-no-csd and/or
// geometry-corner-radius. Then, niri will know the corner radius and
// draw the shadow correctly, without having to draw it behind the
// window. These will also remove client-side shadows if the window
// draws any.
//
// draw-behind-window true
// You can change how shadows look. The values below are in logical
// pixels and match the CSS box-shadow properties.
// Softness controls the shadow blur radius.
softness 20
// Spread expands the shadow.
spread 2
// Offset moves the shadow relative to the window.
offset x=-4 y=-4
// You can also change the shadow color and opacity.
color "#0007"
}
// Struts shrink the area occupied by windows, similarly to layer-shell panels.
// You can think of them as a kind of outer gaps. They are set in logical pixels.
// Left and right struts will cause the next window to the side to always be visible.
// Top and bottom struts will simply add outer gaps in addition to the area occupied by
// layer-shell panels and regular gaps.
struts {
// left 64
// right 64
// top 64
// bottom 64
}
}
// Add lines like this to spawn processes at startup.
// Note that running niri as a session supports xdg-desktop-autostart,
// which may be more convenient to use.
// See the binds section below for more spawn examples.
// This line starts waybar, a commonly used bar for Wayland compositors.
spawn-at-startup "waybar"
spawn-at-startup "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
spawn-at-startup "mako"
spawn-at-startup "swww-daemon"
spawn-at-startup "nm-applet"
spawn-sh-at-startup "xrdb -merge /home/zhenyan121/.Xresources"
spawn-sh-at-startup "clipse --listen"
// To run a shell command (with variables, pipes, etc.), use spawn-sh-at-startup:
// spawn-sh-at-startup "qs -c ~/source/qs/MyAwesomeShell"
hotkey-overlay {
// Uncomment this line to disable the "Important Hotkeys" pop-up at startup.
skip-at-startup
}
// Uncomment this line to ask the clients to omit their client-side decorations if possible.
// If the client will specifically ask for CSD, the request will be honored.
// Additionally, clients will be informed that they are tiled, removing some client-side rounded corners.
// This option will also fix border/focus ring drawing behind some semitransparent windows.
// After enabling or disabling this, you need to restart the apps for this to take effect.
// prefer-no-csd
// You can change the path where screenshots are saved.
// A ~ at the front will be expanded to the home directory.
// The path is formatted with strftime(3) to give you the screenshot date and time.
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
// You can also set this to null to disable saving screenshots to disk.
// screenshot-path null
// Animation settings.
// The wiki explains how to configure individual animations:
// https://yalter.github.io/niri/Configuration:-Animations
animations {
// Uncomment to turn off all animations.
// off
// Slow down all animations by this factor. Values below 1 speed them up instead.
// slowdown 3.0
}
// Window rules let you adjust behavior for individual windows.
// Find more information on the wiki:
// https://yalter.github.io/niri/Configuration:-Window-Rules
// Work around WezTerm's initial configure bug
// by setting an empty default-column-width.
window-rule {
// This regular expression is intentionally made as specific as possible,
// since this is the default config, and we want no false positives.
// You can get away with just app-id="wezterm" if you want.
match app-id=r#"^org\.wezfurlong\.wezterm$"#
default-column-width {}
}
// Open the Firefox picture-in-picture player as floating by default.
window-rule {
// This app-id regular expression will work for both:
// - host Firefox (app-id is "firefox")
// - Flatpak Firefox (app-id is "org.mozilla.firefox")
match app-id=r#"firefox$"# title="^Picture-in-Picture$"
match app-id="waypaper"
open-floating true
}
// Example: block out two password managers from screen capture.
// (This example rule is commented out with a "/-" in front.)
/-window-rule {
match app-id=r#"^org\.keepassxc\.KeePassXC$"#
match app-id=r#"^org\.gnome\.World\.Secrets$"#
block-out-from "screen-capture"
// Use this instead if you want them visible on third-party screenshot tools.
// block-out-from "screencast"
}
// Example: enable rounded corners for all windows.
// (This example rule is commented out with a "/-" in front.)
/-window-rule {
geometry-corner-radius 12
clip-to-geometry true
}
window-rule {
//圆角
geometry-corner-radius 12
//剪掉圆角外的窗口内容
clip-to-geometry true
//透明度
opacity 0.99
//禁止边框画到窗口后面
draw-border-with-background false
}
binds {
// Keys consist of modifiers separated by + signs, followed by an XKB key name
// in the end. To find an XKB name for a particular key, you may use a program
// like wev.
//
// "Mod" is a special modifier equal to Super when running on a TTY, and to Alt
// when running as a winit window.
//
// Most actions that you can bind here can also be invoked programmatically with
// `niri msg action do-something`.
// Mod-Shift-/, which is usually the same as Mod-?,
// shows a list of important hotkeys.
Mod+Shift+Slash { show-hotkey-overlay; }
Mod+F12 {spawn-sh "pkill waybar || true && waybar";}
Mod+B {spawn "firefox"; }
Mod+Alt+V {spawn-sh "kitty -e clipse";}
Mod+Alt+W {spawn "waypaper";}
// Suggested binds for running programs: terminal, app launcher, screen locker.
Mod+T hotkey-overlay-title="Open a Terminal: kitty" { spawn "kitty"; }
Mod+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; }
Mod+E { spawn "nautilus";}
Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
// Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc.
// Note: the entire command goes as a single argument. It's passed verbatim to `sh -c`.
// For example, this is a standard bind to toggle the screen reader (orca).
Super+Alt+S allow-when-locked=true hotkey-overlay-title=null { spawn-sh "pkill orca || exec orca"; }
// Example volume keys mappings for PipeWire & WirePlumber.
// The allow-when-locked=true property makes them work even when the session is locked.
// Using spawn-sh allows to pass multiple arguments together with the command.
// "-l 1.0" limits the volume to 100%.
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; }
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
// Example media keys mapping using playerctl.
// This will work with any MPRIS-enabled media player.
XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; }
XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; }
XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; }
XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; }
// Example brightness key mappings for brightnessctl.
// You can use regular spawn with multiple arguments too (to avoid going through "sh"),
// but you need to manually put each argument in separate "" quotes.
XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
// Open/close the Overview: a zoomed-out view of workspaces and windows.
// You can also move the mouse into the top-left hot corner,
// or do a four-finger swipe up on a touchpad.
Mod+O repeat=false { toggle-overview; }
Mod+Q repeat=false { close-window; }
Mod+Left { focus-column-left; }
Mod+Down { focus-window-down; }
Mod+Up { focus-window-up; }
Mod+Right { focus-column-right; }
Mod+H { focus-column-left; }
Mod+J { focus-window-down; }
Mod+K { focus-window-up; }
Mod+L { focus-column-right; }
Mod+Ctrl+Left { move-column-left; }
Mod+Ctrl+Down { move-window-down; }
Mod+Ctrl+Up { move-window-up; }
Mod+Ctrl+Right { move-column-right; }
Mod+Ctrl+H { move-column-left; }
Mod+Ctrl+J { move-window-down; }
Mod+Ctrl+K { move-window-up; }
Mod+Ctrl+L { move-column-right; }
// Alternative commands that move across workspaces when reaching
// the first or last window in a column.
// Mod+J { focus-window-or-workspace-down; }
// Mod+K { focus-window-or-workspace-up; }
// Mod+Ctrl+J { move-window-down-or-to-workspace-down; }
// Mod+Ctrl+K { move-window-up-or-to-workspace-up; }
Mod+Home { focus-column-first; }
Mod+End { focus-column-last; }
Mod+Ctrl+Home { move-column-to-first; }
Mod+Ctrl+End { move-column-to-last; }
Mod+Shift+Left { focus-monitor-left; }
Mod+Shift+Down { focus-monitor-down; }
Mod+Shift+Up { focus-monitor-up; }
Mod+Shift+Right { focus-monitor-right; }
Mod+Shift+H { focus-monitor-left; }
Mod+Shift+J { focus-monitor-down; }
Mod+Shift+K { focus-monitor-up; }
Mod+Shift+L { focus-monitor-right; }
Mod+Shift+Ctrl+Left { move-column-to-monitor-left; }
Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }
Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }
Mod+Shift+Ctrl+Right { move-column-to-monitor-right; }
Mod+Shift+Ctrl+H { move-column-to-monitor-left; }
Mod+Shift+Ctrl+J { move-column-to-monitor-down; }
Mod+Shift+Ctrl+K { move-column-to-monitor-up; }
Mod+Shift+Ctrl+L { move-column-to-monitor-right; }
// Alternatively, there are commands to move just a single window:
// Mod+Shift+Ctrl+Left { move-window-to-monitor-left; }
// ...
// And you can also move a whole workspace to another monitor:
// Mod+Shift+Ctrl+Left { move-workspace-to-monitor-left; }
// ...
Mod+Page_Down { focus-workspace-down; }
Mod+Page_Up { focus-workspace-up; }
Mod+U { focus-workspace-down; }
Mod+I { focus-workspace-up; }
Mod+Ctrl+Page_Down { move-column-to-workspace-down; }
Mod+Ctrl+Page_Up { move-column-to-workspace-up; }
Mod+Ctrl+U { move-column-to-workspace-down; }
Mod+Ctrl+I { move-column-to-workspace-up; }
// Alternatively, there are commands to move just a single window:
// Mod+Ctrl+Page_Down { move-window-to-workspace-down; }
// ...
Mod+Shift+Page_Down { move-workspace-down; }
Mod+Shift+Page_Up { move-workspace-up; }
Mod+Shift+U { move-workspace-down; }
Mod+Shift+I { move-workspace-up; }
// You can bind mouse wheel scroll ticks using the following syntax.
// These binds will change direction based on the natural-scroll setting.
//
// To avoid scrolling through workspaces really fast, you can use
// the cooldown-ms property. The bind will be rate-limited to this value.
// You can set a cooldown on any bind, but it's most useful for the wheel.
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }
Mod+WheelScrollRight { focus-column-right; }
Mod+WheelScrollLeft { focus-column-left; }
Mod+Ctrl+WheelScrollRight { move-column-right; }
Mod+Ctrl+WheelScrollLeft { move-column-left; }
// Usually scrolling up and down with Shift in applications results in
// horizontal scrolling; these binds replicate that.
Mod+Shift+WheelScrollDown { focus-column-right; }
Mod+Shift+WheelScrollUp { focus-column-left; }
Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }
// Similarly, you can bind touchpad scroll "ticks".
// Touchpad scrolling is continuous, so for these binds it is split into
// discrete intervals.
// These binds are also affected by touchpad's natural-scroll, so these
// example binds are "inverted", since we have natural-scroll enabled for
// touchpads by default.
// Mod+TouchpadScrollDown { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.02+"; }
// Mod+TouchpadScrollUp { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.02-"; }
// You can refer to workspaces by index. However, keep in mind that
// niri is a dynamic workspace system, so these commands are kind of
// "best effort". Trying to refer to a workspace index bigger than
// the current workspace count will instead refer to the bottommost
// (empty) workspace.
//
// For example, with 2 workspaces + 1 empty, indices 3, 4, 5 and so on
// will all refer to the 3rd workspace.
Mod+1 { focus-workspace 1; }
Mod+2 { focus-workspace 2; }
Mod+3 { focus-workspace 3; }
Mod+4 { focus-workspace 4; }
Mod+5 { focus-workspace 5; }
Mod+6 { focus-workspace 6; }
Mod+7 { focus-workspace 7; }
Mod+8 { focus-workspace 8; }
Mod+9 { focus-workspace 9; }
Mod+Ctrl+1 { move-column-to-workspace 1; }
Mod+Ctrl+2 { move-column-to-workspace 2; }
Mod+Ctrl+3 { move-column-to-workspace 3; }
Mod+Ctrl+4 { move-column-to-workspace 4; }
Mod+Ctrl+5 { move-column-to-workspace 5; }
Mod+Ctrl+6 { move-column-to-workspace 6; }
Mod+Ctrl+7 { move-column-to-workspace 7; }
Mod+Ctrl+8 { move-column-to-workspace 8; }
Mod+Ctrl+9 { move-column-to-workspace 9; }
// Alternatively, there are commands to move just a single window:
// Mod+Ctrl+1 { move-window-to-workspace 1; }
// Switches focus between the current and the previous workspace.
// Mod+Tab { focus-workspace-previous; }
// The following binds move the focused window in and out of a column.
// If the window is alone, they will consume it into the nearby column to the side.
// If the window is already in a column, they will expel it out.
Mod+BracketLeft { consume-or-expel-window-left; }
Mod+BracketRight { consume-or-expel-window-right; }
// Consume one window from the right to the bottom of the focused column.
Mod+Comma { consume-window-into-column; }
// Expel the bottom window from the focused column to the right.
Mod+Period { expel-window-from-column; }
Mod+R { switch-preset-column-width; }
// Cycling through the presets in reverse order is also possible.
// Mod+R { switch-preset-column-width-back; }
Mod+Shift+R { switch-preset-window-height; }
Mod+Ctrl+R { reset-window-height; }
Mod+F { maximize-column; }
Mod+Alt+F { fullscreen-window; }
// Expand the focused column to space not taken up by other fully visible columns.
// Makes the column "fill the rest of the space".
Mod+Ctrl+F { expand-column-to-available-width; }
Mod+C { center-column; }
// Center all fully visible columns on screen.
Mod+Ctrl+C { center-visible-columns; }
// Finer width adjustments.
// This command can also:
// * set width in pixels: "1000"
// * adjust width in pixels: "-5" or "+5"
// * set width as a percentage of screen width: "25%"
// * adjust width as a percentage of screen width: "-10%" or "+10%"
// Pixel sizes use logical, or scaled, pixels. I.e. on an output with scale 2.0,
// set-column-width "100" will make the column occupy 200 physical screen pixels.
Mod+Minus { set-column-width "-10%"; }
Mod+Equal { set-column-width "+10%"; }
// Finer height adjustments when in column with other windows.
Mod+Shift+Minus { set-window-height "-10%"; }
Mod+Shift+Equal { set-window-height "+10%"; }
// Move the focused window between the floating and the tiling layout.
Mod+V { toggle-window-floating; }
Mod+Shift+V { switch-focus-between-floating-and-tiling; }
// Toggle tabbed column display mode.
// Windows in this column will appear as vertical tabs,
// rather than stacked on top of each other.
Mod+W { toggle-column-tabbed-display; }
// Actions to switch layouts.
// Note: if you uncomment these, make sure you do NOT have
// a matching layout switch hotkey configured in xkb options above.
// Having both at once on the same hotkey will break the switching,
// since it will switch twice upon pressing the hotkey (once by xkb, once by niri).
// Mod+Space { switch-layout "next"; }
// Mod+Shift+Space { switch-layout "prev"; }
Print { screenshot; }
Ctrl+Alt+A { screenshot; }
Ctrl+Print { screenshot-screen; }
Alt+Print { screenshot-window; }
// Applications such as remote-desktop clients and software KVM switches may
// request that niri stops processing the keyboard shortcuts defined here
// so they may, for example, forward the key presses as-is to a remote machine.
// It's a good idea to bind an escape hatch to toggle the inhibitor,
// so a buggy application can't hold your session hostage.
//
// The allow-inhibiting=false property can be applied to other binds as well,
// which ensures niri always processes them, even when an inhibitor is active.
Mod+Escape allow-inhibiting=false { toggle-keyboard-shortcuts-inhibit; }
// The quit action will show a confirmation dialog to avoid accidental exits.
Mod+Shift+E { quit; }
Ctrl+Alt+Delete { quit; }
// Powers off the monitors. To turn them back on, do any input like
// moving the mouse or pressing any other key.
Mod+Shift+P { power-off-monitors; }
}
// 隐藏窗口标题栏
prefer-no-csd

8
.config/nvim/init.lua Normal file
View File

@@ -0,0 +1,8 @@
require("config.lazy")
-- 基础缩进设置
vim.opt.tabstop = 4 -- 1个Tab显示为4个空格
vim.opt.shiftwidth = 4 -- 自动缩进时缩进4个空格
vim.opt.expandtab = true -- 把Tab键变成空格现代编程通用习惯
vim.opt.softtabstop = 4 -- 编辑模式下按退格键退回4个空格
-- 显示行数
vim.opt.number = true

View File

@@ -0,0 +1,16 @@
{
"cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" },
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
"lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "4cfe411526a7a99c18281135e8b4765ae6330d15" },
"mason.nvim": { "branch": "main", "commit": "57e5a8addb8c71fb063ee4acda466c7cf6ad2800" },
"nvim-autopairs": { "branch": "master", "commit": "c2a0dd0d931d0fb07665e1fedb1ea688da3b80b4" },
"nvim-cmp": { "branch": "main", "commit": "85bbfad83f804f11688d1ab9486b459e699292d6" },
"nvim-lspconfig": { "branch": "master", "commit": "ac04ec3c2af08e9821b4eb64ede86072b9b213bf" },
"nvim-tree.lua": { "branch": "master", "commit": "321bc61580fd066b76861c32de3319c3a6d089e7" },
"nvim-treesitter": { "branch": "main", "commit": "31fc7e10cd7c1fd7717b439050d0f91c2c4f0a4b" },
"nvim-web-devicons": { "branch": "master", "commit": "6788013bb9cb784e606ada44206b0e755e4323d7" },
"ouroboros": { "branch": "master", "commit": "f528c0baf0b872b37036c166a144abcfc4752ec9" },
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"tokyonight.nvim": { "branch": "main", "commit": "5da1b76e64daf4c5d410f06bcb6b9cb640da7dfd" }
}

View File

@@ -0,0 +1,35 @@
-- Bootstrap lazy.nvim
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end
vim.opt.rtp:prepend(lazypath)
-- Make sure to setup `mapleader` and `maplocalleader` before
-- loading lazy.nvim so that mappings are correct.
-- This is also a good place to setup other settings (vim.opt)
vim.g.mapleader = " "
vim.g.maplocalleader = "\\"
-- Setup lazy.nvim
require("lazy").setup({
spec = {
-- import your plugins
{ import = "plugins" },
},
-- Configure any other settings here. See the documentation for more details.
-- colorscheme that will be used when installing plugins.
install = { colorscheme = { "habamax" } },
-- automatically check for plugin updates
checker = { enabled = false },
})

View File

@@ -0,0 +1,5 @@
return {
"windwp/nvim-autopairs",
event = "InsertEnter", -- 只有进入插入模式时才加载,节省性能
config = true -- 相当于调用 require("nvim-autopairs").setup({})
}

View File

@@ -0,0 +1,11 @@
-- ~/.config/nvim/lua/plugins/colorscheme.lua
return {
{
"folke/tokyonight.nvim",
lazy = false, -- 我们希望启动就加载
priority = 1000, -- 高优先级,确保先于其他插件加载
config = function()
vim.cmd.colorscheme("tokyonight-night") -- 加载后,立即设置这个主题
end,
}
}

View File

@@ -0,0 +1,131 @@
return {
{
"neovim/nvim-lspconfig",
dependencies = {
"williamboman/mason.nvim",
"williamboman/mason-lspconfig.nvim",
"hrsh7th/nvim-cmp",
"hrsh7th/cmp-nvim-lsp",
},
config = function()
-- 1. 初始化 Mason (包管理器)
require("mason").setup({
ui = { border = "rounded" }
})
-- 2. 配置 mason-lspconfig (自动安装LSP服务器)
require("mason-lspconfig").setup({
ensure_installed = { "clangd", "lua_ls" },
-- 【重要】新框架下mason-lspconfig 会自动处理安装和配置
-- 你不再需要手动调用 `require('lspconfig').xxx.setup()`
})
-- 3. 通用配置:快捷键与能力集
local on_attach = function(client, bufnr)
local opts = { buffer = bufnr, noremap = true, silent = true }
-- 按键映射
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, opts)
vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts)
vim.keymap.set('n', '<leader>rn', vim.lsp.buf.rename, opts)
vim.keymap.set('n', '<leader>ca', vim.lsp.buf.code_action, opts)
vim.keymap.set('n', 'gr', vim.lsp.buf.references, opts)
end
-- 获取自动补全的能力集
local capabilities = require('cmp_nvim_lsp').default_capabilities()
-- 4. 【核心修改】新版 LSP 配置框架
-- 全局配置表mason-lspconfig 会自动将这里定义的配置应用到对应服务器
vim.lsp.config = vim.lsp.config or {}
-- 导入工具函数(用于根目录检测)
local util = require("lspconfig.util")
-- ========== 配置 clangd (C/C++) ==========
vim.lsp.config.clangd = {
default_config = {
cmd = {
"clangd",
"--background-index",
"--clang-tidy",
"--header-insertion=never",
"--completion-style=detailed",
"--all-scopes-completion",
"--cross-file-rename",
"--completion-parse=auto"
},
filetypes = { "c", "cpp", "objc", "objcpp", "cuda" },
root_dir = function(fname)
local root_markers = { '.git', 'compile_commands.json', 'compile_flags.txt', '.clangd', 'Makefile', 'build' }
local root = util.root_pattern(unpack(root_markers))(fname)
if not root then
root = util.find_git_ancestor(fname) or vim.fs.dirname(fname)
end
return root
end,
single_file_support = true,
capabilities = capabilities,
on_attach = on_attach, -- 【重要】在这里绑定快捷键
}
}
-- ========== 配置 lua_ls (Lua) ==========
vim.lsp.config.lua_ls = {
default_config = {
settings = {
Lua = {
runtime = { version = 'LuaJIT' },
diagnostics = { globals = { 'vim' } },
workspace = {
library = vim.api.nvim_get_runtime_file("", true),
checkThirdParty = false,
},
telemetry = { enable = false },
},
},
capabilities = capabilities,
on_attach = on_attach, -- 【重要】在这里绑定快捷键
}
}
-- 5. 美化UI设置
-- 悬浮文档窗口使用圆角边框
vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(
vim.lsp.handlers.hover, {
border = "rounded",
}
)
-- 【注意】在新框架下,通常不需要手动创建 LspAttach 自动命令
-- 因为每个服务器的 on_attach 已在 default_config 中定义
-- mason-lspconfig 会自动处理服务器启动和配置应用
end,
},
-- 6. 自动补全配置 (nvim-cmp) - 保持不变,与新旧框架都兼容
{
"hrsh7th/nvim-cmp",
config = function()
local cmp = require("cmp")
cmp.setup({
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
view = {
entries = { name = 'custom', selection_order = 'near_cursor' }
},
mapping = cmp.mapping.preset.insert({
['<C-Space>'] = cmp.mapping.complete(),
['<CR>'] = cmp.mapping.confirm({ select = true }),
['<Tab>'] = cmp.mapping.select_next_item(),
['<S-Tab>'] = cmp.mapping.select_prev_item(),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'path' },
})
})
end,
},
}

View File

@@ -0,0 +1,14 @@
return {
'nvim-lualine/lualine.nvim',
dependencies = { 'nvim-tree/nvim-web-devicons' },
config = function()
require('lualine').setup({
options = {
theme = 'auto',
icons_enabled = true, -- 确保图标功能已启用
},
})
end,
}

View File

@@ -0,0 +1,38 @@
return {
"nvim-tree/nvim-tree.lua",
version = "*",
lazy = false,
dependencies = { "nvim-tree/nvim-web-devicons" },
config = function()
require("nvim-tree").setup({
-- 这里可以放自定义设置,初始用默认即可
})
-- 设置一个常用快捷键:空格+e 打开/关闭文件树
-- 为 nvim-tree 设置一组实用快捷键
vim.keymap.set('n', '<leader>e', ':NvimTreeToggle<CR>', { desc = 'Toggle file tree' })
vim.keymap.set('n', '<leader>f', function()
local current_win = vim.api.nvim_get_current_win()
local current_buf = vim.api.nvim_win_get_buf(current_win)
local buf_ft = vim.api.nvim_buf_get_option(current_buf, 'filetype')
if buf_ft == 'NvimTree' then
-- 从文件树返回时,尝试回到之前编辑的窗口
vim.cmd('wincmd p')
-- 如果上一个窗口还是文件树(可能只有一个文件树窗口),就关闭它
local new_win = vim.api.nvim_get_current_win()
local new_buf = vim.api.nvim_win_get_buf(new_win)
local new_buf_ft = vim.api.nvim_buf_get_option(new_buf, 'filetype')
if new_buf_ft == 'NvimTree' then
vim.cmd('NvimTreeClose')
end
else
-- 保存当前窗口ID以便从文件树返回时能准确回来
vim.g.last_normal_win = current_win
vim.cmd('NvimTreeFindFile')
end
end, { desc = '智能切换: 文件⇄树' })
vim.keymap.set('n', '<leader>t', ':NvimTreeFocus<CR>', { desc = 'Focus on the file tree' })
end,
}

View File

@@ -0,0 +1,84 @@
-- 在你的 Lazy 插件配置文件中例如lua/plugins/cpp.lua
return {
{
"jakemason/ouroboros",
ft = { "c", "cpp", "h", "hpp" }, -- 可选:按文件类型懒加载
dependencies = {
"nvim-lua/plenary.nvim" -- 明确声明依赖[citation:8]
},
config = function()
require("ouroboros").setup({
-- 基本配置
open_all_alternates = false,
-- 查找策略(按顺序尝试)
strategies = {
"directory", -- 同一目录
"underscore", -- main_window.cpp -> main_window.h
"basename", -- 相同基名
"subdirectory", -- 在 include/ 或 src/ 中查找
"cabal", -- Cabal 项目结构
"complement", -- 互补扩展名
},
-- 扩展名映射
extension_map = {
h = { "cpp", "c", "cc", "cxx", "c++", "m", "mm" },
hpp = { "cpp", "cc", "cxx", "c++" },
hxx = { "cxx", "cpp" },
hh = { "cc", "cpp" },
c = { "h" },
cc = { "h", "hh" },
cpp = { "h", "hpp" },
cxx = { "h", "hxx", "hpp" },
m = { "h" },
mm = { "h" },
},
-- 目录映射(适用于标准项目结构)
directory_map = {
["include/(.*)%.h$"] = "src/%1.cpp",
["src/(.*)%.cpp$"] = "include/%1.h",
["inc/(.*)%.hpp$"] = "src/%1.cpp",
["lib/(.*)%.c$"] = "include/%1.h",
["source/(.*)%.cxx$"] = "headers/%1.hxx",
},
-- 自定义匹配函数
match_callback = function(filepath, strategies, bufnr)
-- 获取文件扩展名
local extension = filepath:match("%.(%w+)$") or ""
-- 如果是测试文件,寻找对应的源文件
if filepath:match("_test%.cpp$") then
local source_file = filepath:gsub("_test%.cpp$", ".cpp")
if vim.fn.filereadable(source_file) == 1 then
return { source_file }
end
end
-- 返回默认策略
return strategies
end,
})
-- 键位映射
vim.keymap.set("n", "<leader>oh", "<cmd>Ouroboros<cr>", {
desc = "切换头文件/源文件",
noremap = true,
silent = true,
})
vim.keymap.set("n", "<leader>oa", "<cmd>OuroborosAll<cr>", {
desc = "打开所有匹配文件",
noremap = true,
silent = true,
})
-- 可以添加更多命令
vim.api.nvim_create_user_command("AltFile", function()
require("ouroboros").switch()
end, {})
end,
},
}

View File

@@ -0,0 +1,19 @@
return {
"nvim-treesitter/nvim-treesitter",
version = false, -- 建议使用 master 分支
build = ":TSUpdate",
event = { "BufReadPost", "BufNewFile" }, -- 只有打开文件时才加载,防止启动报错
config = function()
-- 增加一个保护性检测
local status_ok, configs = pcall(require, "nvim-treesitter.configs")
if not status_ok then
return
end
configs.setup({
ensure_installed = { "lua", "vim", "vimdoc", "query", "c", "cpp" }, -- 基础必装
highlight = { enable = true },
indent = { enable = true }, -- 建议开启C++ 缩进会更准确
})
end,
}

7
.config/nwg-look/config Normal file
View File

@@ -0,0 +1,7 @@
{
"export-settings-ini": true,
"export-gtkrc-20": true,
"export-index-theme": true,
"export-xsettingsd": true,
"export-gtk4-symlinks": true
}

Some files were not shown because too many files have changed in this diff Show More