Compare commits
79
Commits
main
..
30ee4caad9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
30ee4caad9 | ||
|
|
fabb7c68ca | ||
|
|
3c634278cd
|
||
|
|
2770b72355
|
||
|
|
d3b0782e84
|
||
|
|
fd8b2c0aac
|
||
|
|
3ac70d1e2e
|
||
|
|
f8c5f62871
|
||
|
|
688b807fa2 | ||
|
|
9e4d04184b | ||
|
|
3065489412 | ||
|
|
aa484bc634 | ||
|
|
1b86c7f07c | ||
|
|
24c08f0ff4 | ||
|
|
76d4defbe7 | ||
|
|
6c4519b70a | ||
|
|
0432e4bc63 | ||
|
|
12fb34790d | ||
|
|
203bf80f82 | ||
|
|
860e8cfa1f | ||
|
|
12de555bb2 | ||
|
|
fcd43e2222 | ||
|
|
52173751aa | ||
|
|
c412133d6d | ||
|
|
b15f6fe848 | ||
|
|
305432a395 | ||
|
|
51c05ecbe1 | ||
|
|
62fd071f33 | ||
|
|
ec1a04e8a0 | ||
|
|
198e3e3698 | ||
|
|
21596b75bb | ||
|
|
da8b2a7f73 | ||
|
|
606f287837 | ||
|
|
208d168b87 | ||
|
|
b13290f579 | ||
|
|
ac282b8c5e | ||
|
|
92d8bdb4e5 | ||
|
|
76ba0edd51 | ||
|
|
c21065c994 | ||
|
|
c3834b205d | ||
|
|
f39489236f | ||
|
|
3f0a64d893 | ||
|
|
1d2b1286b3 | ||
|
|
1b2e9c3153 | ||
|
|
e60d76ecf1 | ||
|
|
16117501cd | ||
|
|
05ebcf6019 | ||
|
|
a51ed03279 | ||
|
|
5a20a32e93 | ||
|
|
59ad93a98a | ||
|
|
70dae5218d | ||
|
|
f5259b86f4 | ||
|
|
b5bbe3af38 | ||
|
|
a625bb99d9 | ||
|
|
9486b8f9fd | ||
|
|
c91a077a58 | ||
|
|
e02c23baee | ||
|
|
b4a1b03df4 | ||
|
|
45fec2ff49 | ||
|
|
5c744b3d6e | ||
|
|
fbc76627f0 | ||
|
|
077b942657 | ||
|
|
7dfecfe1b4 | ||
|
|
1a85eac1bb | ||
|
|
be1afcec6c | ||
|
|
c441610ea8 | ||
|
|
f7935e0451 | ||
|
|
ed61a72c9a | ||
|
|
5b24f235af | ||
|
|
2ffc3aa672 | ||
|
|
61c29ce56e | ||
|
|
120e43d96d | ||
|
|
203ed03f4b | ||
|
|
cdb35cc9f3 | ||
|
|
9802a5b7eb | ||
|
|
7f09a07e27 | ||
|
|
6e16bb5597 | ||
|
|
a794841b60 | ||
|
|
88e99a3a6e |
@@ -0,0 +1 @@
|
||||
--theme=noctalia
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,280 @@
|
||||
## 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 calulate max number of bars.
|
||||
; bar_width = 1
|
||||
; bar_spacing = 0
|
||||
|
||||
|
||||
# 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.
|
||||
#
|
||||
# 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 '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.
|
||||
#
|
||||
; sample_rate = 44100
|
||||
; sample_bits = 16
|
||||
; channels = 2
|
||||
; autoconnect = 2
|
||||
|
||||
|
||||
[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 200 bars, 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' or 'right'.
|
||||
# Default is 'bottom'. Other orientations are only supported on sdl and ncruses
|
||||
# output. Note: many fonts have weird glyphs for 'top' and 'right' characters,
|
||||
# which can make ncurses 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. A fifo 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 = 1000
|
||||
; sdl_height = 500
|
||||
; 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 alacritty synchronized updates. 1 = on, 0 = off
|
||||
# removes flickering in alacritty terminal emulator.
|
||||
# defaults to off since the behaviour in other terminal emulators is unknown
|
||||
; alacritty_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]
|
||||
theme = "noctalia"
|
||||
|
||||
# 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_count = 8
|
||||
; 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'
|
||||
|
||||
|
||||
|
||||
[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
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"workspace": {
|
||||
"library": [
|
||||
"/usr/share/hypr/stubs"
|
||||
]
|
||||
},
|
||||
"diagnostics": {
|
||||
"globals": ["hl"]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
-- User-specific autostart. Loaded after hyprland/autostart.lua.
|
||||
|
||||
hl.on("hyprland.start", function()
|
||||
hl.exec_cmd("dbus-update-activation-environment --systemd --all")
|
||||
hl.exec_cmd("systemctl --user start hyprland-session.target")
|
||||
end)
|
||||
@@ -0,0 +1 @@
|
||||
-- User-specific environment variables. Loaded after hyprland/environments.lua.
|
||||
@@ -0,0 +1,3 @@
|
||||
-- User-specific input config (kb_layout, per-device, gestures). Loaded after hyprland/inputs.lua.
|
||||
|
||||
hl.device({ name = "logitech-g-pro--1", sensitivity = -0.8 })
|
||||
@@ -0,0 +1 @@
|
||||
-- User-specific keybinds. Loaded after hyprland/keybinds.lua.
|
||||
@@ -0,0 +1,6 @@
|
||||
-- User-specific monitor overrides. Loaded after hyprland/monitors.lua.
|
||||
|
||||
hl.monitor({ output = "eDP-1", mode = "2256x1504@60", position = "auto", scale = 1.33, bitdepth = 10, vrr = 1 })
|
||||
hl.monitor({ output = "DP-3", mode = "3440x1440@99", position = "auto", scale = 1, bitdepth = 10, vrr = 1 })
|
||||
hl.monitor({ output = "DP-4", mode = "4096x2160@120", position = "auto", scale = 1.33, bitdepth = 10, vrr = 1 })
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
-- User-specific windowrules. Loaded after hyprland/windowrules.lua.
|
||||
require("custom/windowrules/godot")
|
||||
@@ -0,0 +1,51 @@
|
||||
-- Godot application windowrules --
|
||||
|
||||
hl.window_rule({
|
||||
name = "Resize Godot confirmation dialogs",
|
||||
match = {
|
||||
class = "org.godotengine.Editor",
|
||||
float = true,
|
||||
},
|
||||
size = { "monitor_w * 0.15", "monitor_h * 0.1" },
|
||||
center = true,
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "Resize New node dialog",
|
||||
match = {
|
||||
class = "org.godotengine.Editor",
|
||||
title = "Créer un nouveau Node",
|
||||
},
|
||||
size = { 1000, 750 },
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "Resize Region edit dialog",
|
||||
match = {
|
||||
class = "org.godotengine.Editor",
|
||||
title = "Éditeur de régions",
|
||||
},
|
||||
size = { 1500, 1000 },
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "Resize Region edit dialog",
|
||||
match = {
|
||||
class = "org.godotengine.Editor",
|
||||
title = "Sélectionner une scène",
|
||||
},
|
||||
size = { 550, 450 },
|
||||
})
|
||||
|
||||
|
||||
|
||||
hl.window_rule({
|
||||
name = "Floating DEBUG window",
|
||||
match = {
|
||||
class = "org.godotengine.Editor",
|
||||
title = ".*DEBUG.*",
|
||||
},
|
||||
size = { 1280, 720 },
|
||||
float = true,
|
||||
center = true,
|
||||
})
|
||||
@@ -0,0 +1,4 @@
|
||||
hl.workspace_rule({ workspace = "1", monitor = "eDP-1", persistent = true, default_name = "web" })
|
||||
--hl.workspace_rule({ workspace = "2", monitor = "eDP-1", persistent = true, default_name = "code" })
|
||||
-- hl.workspace_rule({ workspace = "3", monitor = "eDP-1", persistent = true, default_name = "chat" })
|
||||
-- hl.workspace_rule({ workspace = "4", monitor = "eDP-1", persistent = true, default_name = "game" })
|
||||
@@ -0,0 +1,30 @@
|
||||
-- ##############################################################
|
||||
-- MY SUPER HYPRLAND CONFIG.
|
||||
-- https://wiki.hypr.land/Configuring/
|
||||
--
|
||||
-- Do not edit files in `hyprland/` (shared defaults across all
|
||||
-- users). Put any changes in the matching file under `custom/`,
|
||||
-- which is loaded after and overrides the defaults.
|
||||
-- ##############################################################
|
||||
|
||||
-- Defaults (do not edit) --
|
||||
require("hyprland/monitors")
|
||||
require("hyprland/environments")
|
||||
require("hyprland/autostart")
|
||||
require("hyprland/permissions")
|
||||
require("hyprland/look-and-feel")
|
||||
require("hyprland/inputs")
|
||||
require("hyprland/keybinds")
|
||||
require("hyprland/windowrules")
|
||||
|
||||
-- Custom --
|
||||
require("custom/autostart")
|
||||
require("custom/monitors")
|
||||
require("custom/environments")
|
||||
require("custom/inputs")
|
||||
require("custom/keybinds")
|
||||
require("custom/windowrules")
|
||||
require("custom/workspacerules")
|
||||
|
||||
-- For Noctalia Color templates
|
||||
require("noctalia").apply_theme()
|
||||
@@ -0,0 +1,6 @@
|
||||
-- https://wiki.hypr.land/Configuring/Autostart/
|
||||
-- Shared defaults — do not edit. Add user-specific autostart in custom/autostart.lua.
|
||||
|
||||
hl.on("hyprland.start", function()
|
||||
hl.exec_cmd("noctalia")
|
||||
end)
|
||||
@@ -0,0 +1,2 @@
|
||||
-- https://wiki.hypr.land/Configuring/Environment-variables/
|
||||
-- Shared defaults — do not edit. Add user-specific env vars in custom/environments.lua.
|
||||
@@ -0,0 +1,20 @@
|
||||
-- https://wiki.hypr.land/Configuring/Variables/#input
|
||||
-- Shared defaults — do not edit. Add user-specific input config in custom/inputs.lua.
|
||||
|
||||
hl.config({
|
||||
input = {
|
||||
kb_layout = "fr",
|
||||
kb_variant = "",
|
||||
kb_model = "",
|
||||
kb_options = "",
|
||||
kb_rules = "",
|
||||
follow_mouse = 1,
|
||||
sensitivity = 0,
|
||||
touchpad = {
|
||||
natural_scroll = false,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- https://wiki.hypr.land/Configuring/Gestures
|
||||
hl.gesture({ fingers = 3, direction = "horizontal", action = "workspace" })
|
||||
@@ -0,0 +1,99 @@
|
||||
-- https://wiki.hypr.land/Configuring/Binds/
|
||||
-- Shared defaults — do not edit. Add user-specific keybindings in custom/keybinds.lua.
|
||||
|
||||
local mainMod = "SUPER"
|
||||
local terminal = "kitty"
|
||||
local fileMgr = "nautilus"
|
||||
local ipc = "noctalia msg"
|
||||
|
||||
hl.bind("CTRL + ALT + T", hl.dsp.exec_cmd(terminal))
|
||||
hl.bind(mainMod .. " + C", hl.dsp.window.close())
|
||||
hl.bind(mainMod .. " + M", hl.dsp.exit())
|
||||
hl.bind(mainMod .. " + E", hl.dsp.exec_cmd(fileMgr))
|
||||
hl.bind(mainMod .. " + V", hl.dsp.window.float({ action = "toggle" }))
|
||||
hl.bind(mainMod .. " + F", hl.dsp.window.fullscreen({ mode = "maximized", state = "toggle" }))
|
||||
hl.bind(mainMod .. " + CTRL + F", hl.dsp.window.fullscreen({ mode = "fullscreen", state = "toggle" }))
|
||||
hl.bind(mainMod .. " + P", hl.dsp.window.pseudo())
|
||||
hl.bind(mainMod .. " + U", hl.dsp.layout("togglesplit"))
|
||||
hl.bind(mainMod .. " + H", hl.dsp.layout("swapsplit"))
|
||||
|
||||
-- Focus: arrow keys + IJKL
|
||||
for _, m in ipairs({
|
||||
{ "left", "l" },
|
||||
{ "right", "r" },
|
||||
{ "up", "u" },
|
||||
{ "down", "d" },
|
||||
{ "J", "l" },
|
||||
{ "L", "r" },
|
||||
{ "I", "u" },
|
||||
{ "K", "d" },
|
||||
}) do
|
||||
hl.bind(mainMod .. " + " .. m[1], hl.dsp.focus({ direction = m[2] }))
|
||||
end
|
||||
|
||||
-- Workspaces 1..10: digit + AZERTY keysym, plus SHIFT to move active window
|
||||
local azerty = {
|
||||
"ampersand",
|
||||
"eacute",
|
||||
"quotedbl",
|
||||
"apostrophe",
|
||||
"parenleft",
|
||||
"minus",
|
||||
"egrave",
|
||||
"underscore",
|
||||
"ccedilla",
|
||||
"agrave",
|
||||
}
|
||||
for i = 1, 10 do
|
||||
local digit = (i == 10) and "0" or tostring(i)
|
||||
hl.bind(mainMod .. " + " .. digit, hl.dsp.focus({ workspace = i }))
|
||||
hl.bind(mainMod .. " + " .. azerty[i], hl.dsp.focus({ workspace = i }))
|
||||
hl.bind(mainMod .. " + SHIFT + " .. azerty[i], hl.dsp.window.move({ workspace = i }))
|
||||
end
|
||||
|
||||
-- Mouse scroll between workspaces
|
||||
hl.bind(mainMod .. " + mouse_down", hl.dsp.focus({ workspace = "e+1" }))
|
||||
hl.bind(mainMod .. " + mouse_up", hl.dsp.focus({ workspace = "e-1" }))
|
||||
|
||||
-- Mouse drag / resize
|
||||
hl.bind(mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true })
|
||||
hl.bind(mainMod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true })
|
||||
|
||||
-- Volume / brightness
|
||||
for _, b in ipairs({
|
||||
{ "XF86AudioRaiseVolume", "wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+" },
|
||||
{ "XF86AudioLowerVolume", "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-" },
|
||||
{ "XF86AudioMute", "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" },
|
||||
{ "XF86AudioMicMute", "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle" },
|
||||
{ "XF86MonBrightnessUp", "brightnessctl -e4 -n2 set 5%+" },
|
||||
{ "XF86MonBrightnessDown", "brightnessctl -e4 -n2 set 5%-" },
|
||||
}) do
|
||||
hl.bind(b[1], hl.dsp.exec_cmd(b[2]), { locked = true, repeating = true })
|
||||
end
|
||||
|
||||
-- Media player
|
||||
for _, b in ipairs({
|
||||
{ "XF86AudioNext", "playerctl next" },
|
||||
{ "XF86AudioPause", "playerctl play-pause" },
|
||||
{ "XF86AudioPlay", "playerctl play-pause" },
|
||||
{ "XF86AudioPrev", "playerctl previous" },
|
||||
}) do
|
||||
hl.bind(b[1], hl.dsp.exec_cmd(b[2]), { locked = true })
|
||||
end
|
||||
|
||||
-- Screenshot
|
||||
-- hl.bind("Print", hl.dsp.exec_cmd("hyprshot -m region"), { locked = true })
|
||||
-- hl.bind("CTRL + Print", hl.dsp.exec_cmd("hyprshot -m output -m active"), { locked = true })
|
||||
|
||||
hl.bind("XF86Calculator", hl.dsp.exec_cmd("gnome-calculator"))
|
||||
|
||||
-- Noctalia IPC
|
||||
hl.bind(mainMod .. " + SPACE", hl.dsp.exec_cmd(ipc .. " panel-toggle launcher"))
|
||||
hl.bind(mainMod .. " + S", hl.dsp.exec_cmd(ipc .. " panel-toggle control-center"))
|
||||
hl.bind(mainMod .. " + T", hl.dsp.exec_cmd(ipc .. " theme-mode-toggle"))
|
||||
hl.bind(mainMod .. " + W", hl.dsp.exec_cmd(ipc .. " panel-toggle noctalia/wallhaven:browser"))
|
||||
hl.bind(mainMod .. " + SHIFT + L", hl.dsp.exec_cmd(ipc .. " session lock"))
|
||||
hl.bind("switch:Lid Switch", hl.dsp.exec_cmd(ipc .. " session lock"), { locked = true })
|
||||
hl.bind(mainMod .. " + R", hl.dsp.exec_cmd(ipc .. " plugin noctalia/screen_recorder:service all toggle"))
|
||||
hl.bind("Print", hl.dsp.exec_cmd(ipc .. " screenshot-region"), { locked = true })
|
||||
hl.bind("CTRL + Print", hl.dsp.exec_cmd(ipc .. " screenshot-fullscreen pick"))
|
||||
@@ -0,0 +1,87 @@
|
||||
-- https://wiki.hypr.land/Configuring/Variables/
|
||||
-- Shared defaults — do not edit. No custom/look-and-feel.lua override exists; add one if needed.
|
||||
|
||||
hl.config({
|
||||
general = {
|
||||
gaps_in = 5,
|
||||
gaps_out = 10,
|
||||
border_size = 2,
|
||||
col = {
|
||||
active_border = { colors = {"rgba(33ccffee)", "rgba(00ff99ee)"}, angle = 45 },
|
||||
inactive_border = "rgba(595959aa)",
|
||||
},
|
||||
resize_on_border = false,
|
||||
allow_tearing = false,
|
||||
layout = "dwindle",
|
||||
},
|
||||
|
||||
decoration = {
|
||||
rounding = 12,
|
||||
rounding_power = 2,
|
||||
active_opacity = 1.0,
|
||||
inactive_opacity = 1.0,
|
||||
shadow = {
|
||||
enabled = true,
|
||||
range = 30,
|
||||
render_power = 5,
|
||||
offset = "0 5",
|
||||
color = "rgba(00000070)",
|
||||
},
|
||||
blur = {
|
||||
enabled = false,
|
||||
size = 3,
|
||||
passes = 1,
|
||||
vibrancy = 0.1696,
|
||||
},
|
||||
},
|
||||
|
||||
animations = {
|
||||
enabled = true,
|
||||
},
|
||||
|
||||
dwindle = {
|
||||
preserve_split = true,
|
||||
},
|
||||
|
||||
master = {
|
||||
new_status = "master",
|
||||
mfact = 0.5,
|
||||
},
|
||||
|
||||
scrolling = {
|
||||
fullscreen_on_one_column = true,
|
||||
},
|
||||
|
||||
misc = {
|
||||
disable_splash_rendering = true,
|
||||
force_default_wallpaper = 0,
|
||||
disable_hyprland_logo = true,
|
||||
},
|
||||
|
||||
xwayland = {
|
||||
force_zero_scaling = true,
|
||||
},
|
||||
})
|
||||
|
||||
-- Default curves and animations. See https://wiki.hypr.land/Configuring/Animations/
|
||||
hl.curve("easeOutQuint", { type = "bezier", points = { {0.23, 1}, {0.32, 1} } })
|
||||
hl.curve("easeInOutCubic", { type = "bezier", points = { {0.65, 0.05}, {0.36, 1} } })
|
||||
hl.curve("linear", { type = "bezier", points = { {0, 0}, {1, 1} } })
|
||||
hl.curve("almostLinear", { type = "bezier", points = { {0.5, 0.5}, {0.75, 1} } })
|
||||
hl.curve("quick", { type = "bezier", points = { {0.15, 0}, {0.1, 1} } })
|
||||
hl.curve("easy", { type = "spring", mass = 1, stiffness = 71.2633, dampening = 15.8273644 })
|
||||
|
||||
hl.animation({ leaf = "global", enabled = true, speed = 10, bezier = "default" })
|
||||
hl.animation({ leaf = "border", enabled = true, speed = 5.39, bezier = "easeOutQuint" })
|
||||
hl.animation({ leaf = "windows", enabled = true, speed = 4.79, spring = "easy" })
|
||||
hl.animation({ leaf = "windowsIn", enabled = true, speed = 4.1, spring = "easy", style = "popin 87%" })
|
||||
hl.animation({ leaf = "windowsOut", enabled = true, speed = 1.49, bezier = "linear", style = "popin 87%" })
|
||||
hl.animation({ leaf = "fadeIn", enabled = true, speed = 1.73, bezier = "almostLinear" })
|
||||
hl.animation({ leaf = "fadeOut", enabled = true, speed = 1.46, bezier = "almostLinear" })
|
||||
hl.animation({ leaf = "fade", enabled = true, speed = 3.03, bezier = "quick" })
|
||||
hl.animation({ leaf = "layers", enabled = true, speed = 3.81, bezier = "easeOutQuint" })
|
||||
hl.animation({ leaf = "layersIn", enabled = true, speed = 4, bezier = "easeOutQuint", style = "fade" })
|
||||
hl.animation({ leaf = "layersOut", enabled = true, speed = 1.5, bezier = "linear", style = "fade" })
|
||||
hl.animation({ leaf = "fadeLayersIn", enabled = true, speed = 1.79, bezier = "almostLinear" })
|
||||
hl.animation({ leaf = "fadeLayersOut", enabled = true, speed = 1.39, bezier = "almostLinear" })
|
||||
hl.animation({ leaf = "zoomFactor", enabled = true, speed = 7, bezier = "quick" })
|
||||
@@ -0,0 +1,4 @@
|
||||
-- https://wiki.hypr.land/Configuring/Monitors/
|
||||
-- Shared defaults — do not edit. Add user-specific monitor config in custom/monitors.lua.
|
||||
|
||||
hl.monitor({ output = "", mode = "preferred", position = "auto", scale = "auto" })
|
||||
@@ -0,0 +1,9 @@
|
||||
-- https://wiki.hypr.land/Configuring/Permissions/
|
||||
-- Shared defaults — do not edit. No custom/permissions.lua override exists; add one if needed.
|
||||
-- Permission changes require a Hyprland restart, not a reload.
|
||||
|
||||
-- hl.config({ ecosystem = { enforce_permissions = 1 } })
|
||||
|
||||
-- hl.permission({ path = "/usr/(bin|local/bin)/grim", capability = "screencopy", action = "allow" })
|
||||
-- hl.permission({ path = "/usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland", capability = "screencopy", action = "allow" })
|
||||
-- hl.permission({ path = "/usr/(bin|local/bin)/hyprpm", capability = "plugin", action = "allow" })
|
||||
@@ -0,0 +1,42 @@
|
||||
-- https://wiki.hypr.land/Configuring/Window-Rules/
|
||||
-- Shared defaults — do not edit. Add user-specific window rules in custom/windowrules.lua.
|
||||
|
||||
hl.window_rule({
|
||||
name = "floating-window",
|
||||
match = { class = "(Imprimer l'image|org.gnome.Calculator|org.gnome.Loupe)" },
|
||||
float = true,
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "kitty-term",
|
||||
match = { class = "kitty" },
|
||||
size = "995 600",
|
||||
float = true,
|
||||
center = true,
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "floating-messages",
|
||||
match = { class = "(signal|org.telegram.desktop)" },
|
||||
size = "425 790",
|
||||
move = "(monitor_w*0.72) (monitor_h*0.15)",
|
||||
float = true,
|
||||
pin = true,
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "filesystems",
|
||||
match = { class = "DevTools|Tous les fichiers|org.gnome.Nautilus" },
|
||||
float = true,
|
||||
center = true,
|
||||
size = "(monitor_w*0.48) (monitor_h*0.5)",
|
||||
})
|
||||
|
||||
hl.window_rule({
|
||||
name = "pip",
|
||||
match = { class = "zen", title = "Picture-in-Picture" },
|
||||
center = true,
|
||||
size = "1280 720",
|
||||
float = true,
|
||||
pin = true,
|
||||
})
|
||||
@@ -0,0 +1,22 @@
|
||||
font_family FiraCode Nerd Font
|
||||
bold_font auto
|
||||
italic_font auto
|
||||
bold_italic_font auto
|
||||
font_size 12.0
|
||||
|
||||
window_padding_width 4
|
||||
|
||||
enable_audio_bell = no
|
||||
remember_window_size no
|
||||
cursor_trail 10
|
||||
|
||||
tab_bar_min_tabs 1
|
||||
tab_bar_edge bottom
|
||||
tab_bar_style powerline
|
||||
tab_powerline_style slanted
|
||||
|
||||
# OS Window titlebar colors
|
||||
# wayland_titlebar_color system
|
||||
# macos_titlebar_color system
|
||||
|
||||
include themes/noctalia.conf
|
||||
@@ -0,0 +1,174 @@
|
||||
# vim:ft=dircolors
|
||||
# (This is not a dircolors file but it helps to highlight colors and comments)
|
||||
|
||||
# default values from dircolors
|
||||
# (entries with a leading # are not implemented in lf)
|
||||
# #no 00 # NORMAL
|
||||
# fi 00 # FILE
|
||||
# #rs 0 # RESET
|
||||
# di 01;34 # DIR
|
||||
# ln 01;36 # LINK
|
||||
# #mh 00 # MULTIHARDLINK
|
||||
# pi 40;33 # FIFO
|
||||
# so 01;35 # SOCK
|
||||
# #do 01;35 # DOOR
|
||||
# bd 40;33;01 # BLK
|
||||
# cd 40;33;01 # CHR
|
||||
# or 40;31;01 # ORPHAN
|
||||
# #mi 00 # MISSING
|
||||
# su 37;41 # SETUID
|
||||
# sg 30;43 # SETGID
|
||||
# #ca 30;41 # CAPABILITY
|
||||
# tw 30;42 # STICKY_OTHER_WRITABLE
|
||||
# ow 34;42 # OTHER_WRITABLE
|
||||
# st 37;44 # STICKY
|
||||
# ex 01;32 # EXEC
|
||||
|
||||
# default values from lf (with matching order)
|
||||
# ln 01;36 # LINK
|
||||
# or 31;01 # ORPHAN
|
||||
# tw 01;34 # STICKY_OTHER_WRITABLE
|
||||
# ow 01;34 # OTHER_WRITABLE
|
||||
# st 01;34 # STICKY
|
||||
# di 01;34 # DIR
|
||||
# pi 33 # FIFO
|
||||
# so 01;35 # SOCK
|
||||
# bd 33;01 # BLK
|
||||
# cd 33;01 # CHR
|
||||
# su 01;32 # SETUID
|
||||
# sg 01;32 # SETGID
|
||||
# ex 01;32 # EXEC
|
||||
# fi 00 # FILE
|
||||
|
||||
# file types (with matching order)
|
||||
ln 01;36 # LINK
|
||||
or 31;01 # ORPHAN
|
||||
tw 34 # STICKY_OTHER_WRITABLE
|
||||
ow 34 # OTHER_WRITABLE
|
||||
st 01;34 # STICKY
|
||||
di 01;34 # DIR
|
||||
pi 33 # FIFO
|
||||
so 01;35 # SOCK
|
||||
bd 33;01 # BLK
|
||||
cd 33;01 # CHR
|
||||
su 01;32 # SETUID
|
||||
sg 01;32 # SETGID
|
||||
ex 01;32 # EXEC
|
||||
fi 00 # FILE
|
||||
|
||||
# archives or compressed (dircolors defaults)
|
||||
*.tar 01;31
|
||||
*.tgz 01;31
|
||||
*.arc 01;31
|
||||
*.arj 01;31
|
||||
*.taz 01;31
|
||||
*.lha 01;31
|
||||
*.lz4 01;31
|
||||
*.lzh 01;31
|
||||
*.lzma 01;31
|
||||
*.tlz 01;31
|
||||
*.txz 01;31
|
||||
*.tzo 01;31
|
||||
*.t7z 01;31
|
||||
*.zip 01;31
|
||||
*.z 01;31
|
||||
*.dz 01;31
|
||||
*.gz 01;31
|
||||
*.lrz 01;31
|
||||
*.lz 01;31
|
||||
*.lzo 01;31
|
||||
*.xz 01;31
|
||||
*.zst 01;31
|
||||
*.tzst 01;31
|
||||
*.bz2 01;31
|
||||
*.bz 01;31
|
||||
*.tbz 01;31
|
||||
*.tbz2 01;31
|
||||
*.tz 01;31
|
||||
*.deb 01;31
|
||||
*.rpm 01;31
|
||||
*.jar 01;31
|
||||
*.war 01;31
|
||||
*.ear 01;31
|
||||
*.sar 01;31
|
||||
*.rar 01;31
|
||||
*.alz 01;31
|
||||
*.ace 01;31
|
||||
*.zoo 01;31
|
||||
*.cpio 01;31
|
||||
*.7z 01;31
|
||||
*.rz 01;31
|
||||
*.cab 01;31
|
||||
*.wim 01;31
|
||||
*.swm 01;31
|
||||
*.dwm 01;31
|
||||
*.esd 01;31
|
||||
|
||||
# image formats (dircolors defaults)
|
||||
*.jpg 01;35
|
||||
*.jpeg 01;35
|
||||
*.mjpg 01;35
|
||||
*.mjpeg 01;35
|
||||
*.gif 01;35
|
||||
*.bmp 01;35
|
||||
*.pbm 01;35
|
||||
*.pgm 01;35
|
||||
*.ppm 01;35
|
||||
*.tga 01;35
|
||||
*.xbm 01;35
|
||||
*.xpm 01;35
|
||||
*.tif 01;35
|
||||
*.tiff 01;35
|
||||
*.png 01;35
|
||||
*.svg 01;35
|
||||
*.svgz 01;35
|
||||
*.mng 01;35
|
||||
*.pcx 01;35
|
||||
*.mov 01;35
|
||||
*.mpg 01;35
|
||||
*.mpeg 01;35
|
||||
*.m2v 01;35
|
||||
*.mkv 01;35
|
||||
*.webm 01;35
|
||||
*.ogm 01;35
|
||||
*.mp4 01;35
|
||||
*.m4v 01;35
|
||||
*.mp4v 01;35
|
||||
*.vob 01;35
|
||||
*.qt 01;35
|
||||
*.nuv 01;35
|
||||
*.wmv 01;35
|
||||
*.asf 01;35
|
||||
*.rm 01;35
|
||||
*.rmvb 01;35
|
||||
*.flc 01;35
|
||||
*.avi 01;35
|
||||
*.fli 01;35
|
||||
*.flv 01;35
|
||||
*.gl 01;35
|
||||
*.dl 01;35
|
||||
*.xcf 01;35
|
||||
*.xwd 01;35
|
||||
*.yuv 01;35
|
||||
*.cgm 01;35
|
||||
*.emf 01;35
|
||||
*.ogv 01;35
|
||||
*.ogx 01;35
|
||||
|
||||
# audio formats (dircolors defaults)
|
||||
*.aac 00;36
|
||||
*.au 00;36
|
||||
*.flac 00;36
|
||||
*.m4a 00;36
|
||||
*.mid 00;36
|
||||
*.midi 00;36
|
||||
*.mka 00;36
|
||||
*.mp3 00;36
|
||||
*.mpc 00;36
|
||||
*.ogg 00;36
|
||||
*.ra 00;36
|
||||
*.wav 00;36
|
||||
*.oga 00;36
|
||||
*.opus 00;36
|
||||
*.spx 00;36
|
||||
*.xspf 00;36
|
||||
@@ -0,0 +1,377 @@
|
||||
# vim:ft=conf
|
||||
|
||||
# These examples require Nerd Fonts or a compatible font to be used.
|
||||
# See https://www.nerdfonts.com for more information.
|
||||
|
||||
# default values from lf (with matching order)
|
||||
# ln l # LINK
|
||||
# or l # ORPHAN
|
||||
# tw t # STICKY_OTHER_WRITABLE
|
||||
# ow d # OTHER_WRITABLE
|
||||
# st t # STICKY
|
||||
# di d # DIR
|
||||
# pi p # FIFO
|
||||
# so s # SOCK
|
||||
# bd b # BLK
|
||||
# cd c # CHR
|
||||
# su u # SETUID
|
||||
# sg g # SETGID
|
||||
# ex x # EXEC
|
||||
# fi - # FILE
|
||||
|
||||
# file types (with matching order)
|
||||
ln # LINK
|
||||
or # ORPHAN
|
||||
tw t # STICKY_OTHER_WRITABLE
|
||||
ow # OTHER_WRITABLE
|
||||
st t # STICKY
|
||||
di # DIR
|
||||
pi p # FIFO
|
||||
so s # SOCK
|
||||
bd b # BLK
|
||||
cd c # CHR
|
||||
su u # SETUID
|
||||
sg g # SETGID
|
||||
ex # EXEC
|
||||
fi # FILE
|
||||
|
||||
# disable some default filetype icons, let them choose icon by filename
|
||||
# ln # LINK
|
||||
# or # ORPHAN
|
||||
# tw # STICKY_OTHER_WRITABLE
|
||||
# ow # OTHER_WRITABLE
|
||||
# st # STICKY
|
||||
# di # DIR
|
||||
# pi # FIFO
|
||||
# so # SOCK
|
||||
# bd # BLK
|
||||
# cd # CHR
|
||||
# su # SETUID
|
||||
# sg # SETGID
|
||||
# ex # EXEC
|
||||
# fi # FILE
|
||||
|
||||
# file extensions (vim-devicons)
|
||||
*.styl
|
||||
*.sass
|
||||
*.scss
|
||||
*.htm
|
||||
*.html
|
||||
*.slim
|
||||
*.haml
|
||||
*.ejs
|
||||
*.css
|
||||
*.less
|
||||
*.md
|
||||
*.mdx
|
||||
*.markdown
|
||||
*.rmd
|
||||
*.json
|
||||
*.webmanifest
|
||||
*.js
|
||||
*.mjs
|
||||
*.jsx
|
||||
*.rb
|
||||
*.gemspec
|
||||
*.rake
|
||||
*.php
|
||||
*.py
|
||||
*.pyc
|
||||
*.pyo
|
||||
*.pyd
|
||||
*.coffee
|
||||
*.mustache
|
||||
*.hbs
|
||||
*.conf
|
||||
*.ini
|
||||
*.yml
|
||||
*.yaml
|
||||
*.toml
|
||||
*.bat
|
||||
*.mk
|
||||
*.jpg
|
||||
*.jpeg
|
||||
*.bmp
|
||||
*.png
|
||||
*.webp
|
||||
*.gif
|
||||
*.ico
|
||||
*.twig
|
||||
*.cpp
|
||||
*.c++
|
||||
*.cxx
|
||||
*.cc
|
||||
*.cp
|
||||
*.c
|
||||
*.cs
|
||||
*.h
|
||||
*.hh
|
||||
*.hpp
|
||||
*.hxx
|
||||
*.hs
|
||||
*.lhs
|
||||
*.nix
|
||||
*.lua
|
||||
*.java
|
||||
*.sh
|
||||
*.fish
|
||||
*.bash
|
||||
*.zsh
|
||||
*.ksh
|
||||
*.csh
|
||||
*.awk
|
||||
*.ps1
|
||||
*.ml λ
|
||||
*.mli λ
|
||||
*.diff
|
||||
*.db
|
||||
*.sql
|
||||
*.dump
|
||||
*.clj
|
||||
*.cljc
|
||||
*.cljs
|
||||
*.edn
|
||||
*.scala
|
||||
*.go
|
||||
*.dart
|
||||
*.xul
|
||||
*.sln
|
||||
*.suo
|
||||
*.pl
|
||||
*.pm
|
||||
*.t
|
||||
*.rss
|
||||
'*.f#'
|
||||
*.fsscript
|
||||
*.fsx
|
||||
*.fs
|
||||
*.fsi
|
||||
*.rs
|
||||
*.rlib
|
||||
*.d
|
||||
*.erl
|
||||
*.hrl
|
||||
*.ex
|
||||
*.exs
|
||||
*.eex
|
||||
*.leex
|
||||
*.heex
|
||||
*.vim
|
||||
*.ai
|
||||
*.psd
|
||||
*.psb
|
||||
*.ts
|
||||
*.tsx
|
||||
*.jl
|
||||
*.pp
|
||||
*.vue
|
||||
*.elm
|
||||
*.swift
|
||||
*.xcplayground
|
||||
*.tex
|
||||
*.r
|
||||
*.rproj
|
||||
*.sol
|
||||
*.pem
|
||||
|
||||
# file names (vim-devicons) (case-insensitive not supported in lf)
|
||||
*gruntfile.coffee
|
||||
*gruntfile.js
|
||||
*gruntfile.ls
|
||||
*gulpfile.coffee
|
||||
*gulpfile.js
|
||||
*gulpfile.ls
|
||||
*mix.lock
|
||||
*dropbox
|
||||
*.ds_store
|
||||
*.gitconfig
|
||||
*.gitignore
|
||||
*.gitattributes
|
||||
*.gitlab-ci.yml
|
||||
*.bashrc
|
||||
*.zshrc
|
||||
*.zshenv
|
||||
*.zprofile
|
||||
*.vimrc
|
||||
*.gvimrc
|
||||
*_vimrc
|
||||
*_gvimrc
|
||||
*.bashprofile
|
||||
*favicon.ico
|
||||
*license
|
||||
*node_modules
|
||||
*react.jsx
|
||||
*procfile
|
||||
*dockerfile
|
||||
*docker-compose.yml
|
||||
*docker-compose.yaml
|
||||
*compose.yml
|
||||
*compose.yaml
|
||||
*rakefile
|
||||
*config.ru
|
||||
*gemfile
|
||||
*makefile
|
||||
*cmakelists.txt
|
||||
*robots.txt
|
||||
|
||||
# file names (case-sensitive adaptations)
|
||||
*Gruntfile.coffee
|
||||
*Gruntfile.js
|
||||
*Gruntfile.ls
|
||||
*Gulpfile.coffee
|
||||
*Gulpfile.js
|
||||
*Gulpfile.ls
|
||||
*Dropbox
|
||||
*.DS_Store
|
||||
*LICENSE
|
||||
*React.jsx
|
||||
*Procfile
|
||||
*Dockerfile
|
||||
*Docker-compose.yml
|
||||
*Docker-compose.yaml
|
||||
*Rakefile
|
||||
*Gemfile
|
||||
*Makefile
|
||||
*CMakeLists.txt
|
||||
|
||||
# file patterns (vim-devicons) (patterns not supported in lf)
|
||||
# .*jquery.*\.js$
|
||||
# .*angular.*\.js$
|
||||
# .*backbone.*\.js$
|
||||
# .*require.*\.js$
|
||||
# .*materialize.*\.js$
|
||||
# .*materialize.*\.css$
|
||||
# .*mootools.*\.js$
|
||||
# .*vimrc.*
|
||||
# Vagrantfile$
|
||||
|
||||
# file patterns (file name adaptations)
|
||||
*jquery.min.js
|
||||
*angular.min.js
|
||||
*backbone.min.js
|
||||
*require.min.js
|
||||
*materialize.min.js
|
||||
*materialize.min.css
|
||||
*mootools.min.js
|
||||
*vimrc
|
||||
Vagrantfile
|
||||
|
||||
# archives or compressed (extensions from dircolors defaults)
|
||||
*.tar
|
||||
*.tgz
|
||||
*.arc
|
||||
*.arj
|
||||
*.taz
|
||||
*.lha
|
||||
*.lz4
|
||||
*.lzh
|
||||
*.lzma
|
||||
*.tlz
|
||||
*.txz
|
||||
*.tzo
|
||||
*.t7z
|
||||
*.zip
|
||||
*.z
|
||||
*.dz
|
||||
*.gz
|
||||
*.lrz
|
||||
*.lz
|
||||
*.lzo
|
||||
*.xz
|
||||
*.zst
|
||||
*.tzst
|
||||
*.bz2
|
||||
*.bz
|
||||
*.tbz
|
||||
*.tbz2
|
||||
*.tz
|
||||
*.deb
|
||||
*.rpm
|
||||
*.jar
|
||||
*.war
|
||||
*.ear
|
||||
*.sar
|
||||
*.rar
|
||||
*.alz
|
||||
*.ace
|
||||
*.zoo
|
||||
*.cpio
|
||||
*.7z
|
||||
*.rz
|
||||
*.cab
|
||||
*.wim
|
||||
*.swm
|
||||
*.dwm
|
||||
*.esd
|
||||
|
||||
# image formats (extensions from dircolors defaults)
|
||||
*.jpg
|
||||
*.jpeg
|
||||
*.mjpg
|
||||
*.mjpeg
|
||||
*.gif
|
||||
*.bmp
|
||||
*.pbm
|
||||
*.pgm
|
||||
*.ppm
|
||||
*.tga
|
||||
*.xbm
|
||||
*.xpm
|
||||
*.tif
|
||||
*.tiff
|
||||
*.png
|
||||
*.svg
|
||||
*.svgz
|
||||
*.mng
|
||||
*.pcx
|
||||
*.mov
|
||||
*.mpg
|
||||
*.mpeg
|
||||
*.m2v
|
||||
*.mkv
|
||||
*.webm
|
||||
*.ogm
|
||||
*.mp4
|
||||
*.m4v
|
||||
*.mp4v
|
||||
*.vob
|
||||
*.qt
|
||||
*.nuv
|
||||
*.wmv
|
||||
*.asf
|
||||
*.rm
|
||||
*.rmvb
|
||||
*.flc
|
||||
*.avi
|
||||
*.fli
|
||||
*.flv
|
||||
*.gl
|
||||
*.dl
|
||||
*.xcf
|
||||
*.xwd
|
||||
*.yuv
|
||||
*.cgm
|
||||
*.emf
|
||||
*.ogv
|
||||
*.ogx
|
||||
|
||||
# audio formats (extensions from dircolors defaults)
|
||||
*.aac
|
||||
*.au
|
||||
*.flac
|
||||
*.m4a
|
||||
*.mid
|
||||
*.midi
|
||||
*.mka
|
||||
*.mp3
|
||||
*.mpc
|
||||
*.ogg
|
||||
*.ra
|
||||
*.wav
|
||||
*.oga
|
||||
*.opus
|
||||
*.spx
|
||||
*.xspf
|
||||
|
||||
# other formats
|
||||
*.pdf
|
||||
@@ -0,0 +1,6 @@
|
||||
set icons true
|
||||
set previewer ~/.config/lf/scripts/lfpreview
|
||||
cmd on-select &{{
|
||||
exec lf -remote 'redraw'
|
||||
}}
|
||||
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#!/bin/sh
|
||||
draw() {
|
||||
kitten icat --stdin no --transfer-mode memory \
|
||||
--place "${w}x${h}@${x}x${y}" "$1" </dev/null >/dev/tty
|
||||
}
|
||||
|
||||
file="$1"
|
||||
w="$2"
|
||||
h="$3"
|
||||
x="$4"
|
||||
y="$5"
|
||||
|
||||
case "$(file -Lb --mime-type "$file")" in
|
||||
image/*)
|
||||
draw "$file"
|
||||
;;
|
||||
application/pdf)
|
||||
pdftoppm -f 1 -singlefile "$file" "/tmp/lfoutput"
|
||||
draw "/tmp/lfoutput.ppm"
|
||||
;;
|
||||
*)
|
||||
bat --color=always "$1"
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 1 # do not cache
|
||||
@@ -0,0 +1,3 @@
|
||||
-- bootstrap lazy.nvim, LazyVim and your plugins
|
||||
require("config.lazy")
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,324 @@
|
||||
@OBSThemeMeta {
|
||||
name: 'Frappe';
|
||||
id: 'com.obsproject.Catppuccin.Frappe';
|
||||
extends: 'com.obsproject.Catppuccin';
|
||||
author: 'Xurdejl';
|
||||
dark: 'true';
|
||||
}
|
||||
|
||||
@OBSThemeVars {
|
||||
--ctp_rosewater: #f2d5cf;
|
||||
--ctp_flamingo: #eebebe;
|
||||
--ctp_pink: #f4b8e4;
|
||||
--ctp_mauve: #ca9ee6;
|
||||
--ctp_red: #e78284;
|
||||
--ctp_maroon: #ea999c;
|
||||
--ctp_peach: #ef9f76;
|
||||
--ctp_yellow: #e5c890;
|
||||
--ctp_green: #a6d189;
|
||||
--ctp_teal: #81c8be;
|
||||
--ctp_sky: #99d1db;
|
||||
--ctp_sapphire: #85c1dc;
|
||||
--ctp_blue: #8caaee;
|
||||
--ctp_lavender: #babbf1;
|
||||
--ctp_text: #c6d0f5;
|
||||
--ctp_subtext1: #b5bfe2;
|
||||
--ctp_subtext0: #a5adce;
|
||||
--ctp_overlay2: #949cbb;
|
||||
--ctp_overlay1: #838ba7;
|
||||
--ctp_overlay0: #737994;
|
||||
--ctp_surface2: #626880;
|
||||
--ctp_surface1: #51576d;
|
||||
--ctp_surface0: #414559;
|
||||
--ctp_base: #303446;
|
||||
--ctp_mantle: #292c3c;
|
||||
--ctp_crust: #232634;
|
||||
--ctp_selection_background: #44495d;
|
||||
}
|
||||
|
||||
VolumeMeter {
|
||||
qproperty-foregroundNominalColor: #7cbc52;
|
||||
qproperty-foregroundWarningColor: #e76f33;
|
||||
qproperty-foregroundErrorColor: #db4346;
|
||||
}
|
||||
|
||||
/* Context Menu */
|
||||
QMenu::right-arrow {
|
||||
image: url(theme:Dark/expand.svg);
|
||||
}
|
||||
|
||||
/* Dock Widget */
|
||||
QDockWidget {
|
||||
titlebar-close-icon: url(theme:Dark/close.svg);
|
||||
titlebar-normal-icon: url(theme:Dark/popout.svg);
|
||||
}
|
||||
|
||||
/* Source Context Bar */
|
||||
QPushButton#sourcePropertiesButton {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
QPushButton#sourceFiltersButton {
|
||||
qproperty-icon: url(theme:Dark/filter.svg);
|
||||
}
|
||||
|
||||
/* Scenes and Sources toolbar */
|
||||
* [themeID="addIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/plus.svg);
|
||||
}
|
||||
|
||||
* [themeID="removeIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/trash.svg);
|
||||
}
|
||||
|
||||
* [themeID="clearIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/entry-clear.svg);
|
||||
}
|
||||
|
||||
* [themeID="propertiesIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="configIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="menuIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/dots-vert.svg);
|
||||
}
|
||||
|
||||
* [themeID="refreshIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/refresh.svg);
|
||||
}
|
||||
|
||||
* [themeID="cogsIcon"] {
|
||||
qproperty-icon: url(theme:Dark/cogs.svg);
|
||||
}
|
||||
|
||||
#sourceInteractButton {
|
||||
qproperty-icon: url(theme:Dark/interact.svg);
|
||||
}
|
||||
|
||||
* [themeID="upArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/up.svg);
|
||||
}
|
||||
|
||||
* [themeID="downArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/media-pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="filtersIcon"] {
|
||||
qproperty-icon: url(theme:Dark/filter.svg);
|
||||
}
|
||||
|
||||
QToolBarExtension {
|
||||
qproperty-icon: url(theme:Dark/dots-vert.svg);
|
||||
}
|
||||
|
||||
/* ComboBox */
|
||||
QComboBox::down-arrow,
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Dark/collapse.svg);
|
||||
}
|
||||
|
||||
QComboBox::down-arrow:editable,
|
||||
QDateTimeEdit::down-arrow:editable {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Spinbox and doubleSpinbox */
|
||||
QSpinBox::up-arrow,
|
||||
QDoubleSpinBox::up-arrow {
|
||||
image: url(theme:Dark/up.svg);
|
||||
}
|
||||
|
||||
QSpinBox::down-arrow,
|
||||
QDoubleSpinBox::down-arrow {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Buttons */
|
||||
QPushButton::menu-indicator {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Settings Icons */
|
||||
OBSBasicSettings {
|
||||
qproperty-generalIcon: url(theme:Dark/settings/general.svg);
|
||||
qproperty-appearanceIcon: url(theme:Dark/settings/appearance.svg);
|
||||
qproperty-streamIcon: url(theme:Dark/settings/stream.svg);
|
||||
qproperty-outputIcon: url(theme:Dark/settings/output.svg);
|
||||
qproperty-audioIcon: url(theme:Dark/settings/audio.svg);
|
||||
qproperty-videoIcon: url(theme:Dark/settings/video.svg);
|
||||
qproperty-hotkeysIcon: url(theme:Dark/settings/hotkeys.svg);
|
||||
qproperty-accessibilityIcon: url(theme:Dark/settings/accessibility.svg);
|
||||
qproperty-advancedIcon: url(theme:Dark/settings/advanced.svg);
|
||||
}
|
||||
|
||||
/* Checkboxes */
|
||||
QCheckBox::indicator:unchecked,
|
||||
QGroupBox::indicator:unchecked {
|
||||
image: url(theme:Yami/checkbox_unchecked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:unchecked:hover,
|
||||
QGroupBox::indicator:unchecked:hover {
|
||||
border: none;
|
||||
image: url(theme:Yami/checkbox_unchecked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked,
|
||||
QGroupBox::indicator:checked {
|
||||
image: url(theme:Yami/checkbox_checked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:hover,
|
||||
QGroupBox::indicator:checked:hover {
|
||||
image: url(theme:Yami/checkbox_checked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:disabled,
|
||||
QGroupBox::indicator:checked:disabled {
|
||||
image: url(theme:Yami/checkbox_checked_disabled.svg);
|
||||
}
|
||||
|
||||
/* Locked CheckBox */
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked,
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/locked.svg);
|
||||
}
|
||||
|
||||
/* Visibility CheckBox */
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked,
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/visible.svg);
|
||||
}
|
||||
|
||||
* [themeID="revertIcon"] {
|
||||
qproperty-icon: url(theme:Dark/revert.svg);
|
||||
}
|
||||
|
||||
/* Mute CheckBox */
|
||||
MuteCheckBox::indicator:checked {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:indeterminate {
|
||||
image: url(theme:Dark/unassigned.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:hover {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:focus {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:hover {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:focus {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:disabled {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:disabled {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
/* Sources List Group Collapse Checkbox */
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/expand.svg);
|
||||
}
|
||||
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked:hover {
|
||||
image: url(theme:Dark/collapse.svg);
|
||||
}
|
||||
|
||||
/* Source Icons */
|
||||
OBSBasic {
|
||||
qproperty-imageIcon: url(theme:Dark/sources/image.svg);
|
||||
qproperty-colorIcon: url(theme:Dark/sources/brush.svg);
|
||||
qproperty-slideshowIcon: url(theme:Dark/sources/slideshow.svg);
|
||||
qproperty-audioInputIcon: url(theme:Dark/sources/microphone.svg);
|
||||
qproperty-audioOutputIcon: url(theme:Dark/settings/audio.svg);
|
||||
qproperty-desktopCapIcon: url(theme:Dark/settings/video.svg);
|
||||
qproperty-windowCapIcon: url(theme:Dark/sources/window.svg);
|
||||
qproperty-gameCapIcon: url(theme:Dark/sources/gamepad.svg);
|
||||
qproperty-cameraIcon: url(theme:Dark/sources/camera.svg);
|
||||
qproperty-textIcon: url(theme:Dark/sources/text.svg);
|
||||
qproperty-mediaIcon: url(theme:Dark/sources/media.svg);
|
||||
qproperty-browserIcon: url(theme:Dark/sources/globe.svg);
|
||||
qproperty-groupIcon: url(theme:Dark/sources/group.svg);
|
||||
qproperty-sceneIcon: url(theme:Dark/sources/scene.svg);
|
||||
qproperty-defaultIcon: url(theme:Dark/sources/default.svg);
|
||||
qproperty-audioProcessOutputIcon: url(theme:Dark/sources/windowaudio.svg);
|
||||
}
|
||||
|
||||
/* Save icon */
|
||||
* [themeID="replayIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/save.svg);
|
||||
}
|
||||
|
||||
/* Media icons */
|
||||
* [themeID="playIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_play.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="restartIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_restart.svg);
|
||||
}
|
||||
|
||||
* [themeID="stopIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_stop.svg);
|
||||
}
|
||||
|
||||
* [themeID="nextIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_next.svg);
|
||||
}
|
||||
|
||||
* [themeID="previousIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_previous.svg);
|
||||
}
|
||||
|
||||
/* YouTube Integration */
|
||||
OBSYoutubeActions {
|
||||
qproperty-thumbPlaceholder: url(theme:Dark/sources/image.svg);
|
||||
}
|
||||
|
||||
/* Calendar Widget */
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Calendar Top Bar Buttons */
|
||||
#qt_calendar_monthbutton::menu-indicator {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_prevmonth {
|
||||
qproperty-icon: url(theme:Dark/left.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_nextmonth {
|
||||
qproperty-icon: url(theme:Dark/right.svg);
|
||||
}
|
||||
@@ -0,0 +1,324 @@
|
||||
@OBSThemeMeta {
|
||||
name: 'Latte';
|
||||
id: 'com.obsproject.Catppuccin.Latte';
|
||||
extends: 'com.obsproject.Catppuccin';
|
||||
author: 'Xurdejl';
|
||||
dark: 'false';
|
||||
}
|
||||
|
||||
@OBSThemeVars {
|
||||
--ctp_rosewater: #dc8a78;
|
||||
--ctp_flamingo: #dd7878;
|
||||
--ctp_pink: #ea76cb;
|
||||
--ctp_mauve: #8839ef;
|
||||
--ctp_red: #d20f39;
|
||||
--ctp_maroon: #e64553;
|
||||
--ctp_peach: #fe640b;
|
||||
--ctp_yellow: #df8e1d;
|
||||
--ctp_green: #40a02b;
|
||||
--ctp_teal: #179299;
|
||||
--ctp_sky: #04a5e5;
|
||||
--ctp_sapphire: #209fb5;
|
||||
--ctp_blue: #1e66f5;
|
||||
--ctp_lavender: #7287fd;
|
||||
--ctp_text: #4c4f69;
|
||||
--ctp_subtext1: #5c5f77;
|
||||
--ctp_subtext0: #6c6f85;
|
||||
--ctp_overlay2: #7c7f93;
|
||||
--ctp_overlay1: #8c8fa1;
|
||||
--ctp_overlay0: #9ca0b0;
|
||||
--ctp_surface2: #acb0be;
|
||||
--ctp_surface1: #bcc0cc;
|
||||
--ctp_surface0: #ccd0da;
|
||||
--ctp_base: #eff1f5;
|
||||
--ctp_mantle: #e6e9ef;
|
||||
--ctp_crust: #dce0e8;
|
||||
--ctp_selection_background: #d4d7df;
|
||||
}
|
||||
|
||||
VolumeMeter {
|
||||
qproperty-foregroundNominalColor: #62ce4a;
|
||||
qproperty-foregroundWarningColor: #fe9558;
|
||||
qproperty-foregroundErrorColor: #f13d64;
|
||||
}
|
||||
|
||||
/* Context Menu */
|
||||
QMenu::right-arrow {
|
||||
image: url(theme:Light/expand.svg);
|
||||
}
|
||||
|
||||
/* Dock Widget */
|
||||
QDockWidget {
|
||||
titlebar-close-icon: url(theme:Light/close.svg);
|
||||
titlebar-normal-icon: url(theme:Light/popout.svg);
|
||||
}
|
||||
|
||||
/* Source Context Bar */
|
||||
QPushButton#sourcePropertiesButton {
|
||||
qproperty-icon: url(theme:Light/settings/general.svg);
|
||||
}
|
||||
|
||||
QPushButton#sourceFiltersButton {
|
||||
qproperty-icon: url(theme:Light/filter.svg);
|
||||
}
|
||||
|
||||
/* Scenes and Sources toolbar */
|
||||
* [themeID="addIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/plus.svg);
|
||||
}
|
||||
|
||||
* [themeID="removeIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/trash.svg);
|
||||
}
|
||||
|
||||
* [themeID="clearIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/entry-clear.svg);
|
||||
}
|
||||
|
||||
* [themeID="propertiesIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="configIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="menuIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/dots-vert.svg);
|
||||
}
|
||||
|
||||
* [themeID="refreshIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/refresh.svg);
|
||||
}
|
||||
|
||||
* [themeID="cogsIcon"] {
|
||||
qproperty-icon: url(theme:Light/cogs.svg);
|
||||
}
|
||||
|
||||
#sourceInteractButton {
|
||||
qproperty-icon: url(theme:Light/interact.svg);
|
||||
}
|
||||
|
||||
* [themeID="upArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/up.svg);
|
||||
}
|
||||
|
||||
* [themeID="downArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/media-pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="filtersIcon"] {
|
||||
qproperty-icon: url(theme:Light/filter.svg);
|
||||
}
|
||||
|
||||
QToolBarExtension {
|
||||
qproperty-icon: url(theme:Light/dots-vert.svg);
|
||||
}
|
||||
|
||||
/* ComboBox */
|
||||
QComboBox::down-arrow,
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Light/collapse.svg);
|
||||
}
|
||||
|
||||
QComboBox::down-arrow:editable,
|
||||
QDateTimeEdit::down-arrow:editable {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
/* Spinbox and doubleSpinbox */
|
||||
QSpinBox::up-arrow,
|
||||
QDoubleSpinBox::up-arrow {
|
||||
image: url(theme:Light/up.svg);
|
||||
}
|
||||
|
||||
QSpinBox::down-arrow,
|
||||
QDoubleSpinBox::down-arrow {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
/* Buttons */
|
||||
QPushButton::menu-indicator {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
/* Settings Icons */
|
||||
OBSBasicSettings {
|
||||
qproperty-generalIcon: url(theme:Light/settings/general.svg);
|
||||
qproperty-appearanceIcon: url(theme:Light/settings/appearance.svg);
|
||||
qproperty-streamIcon: url(theme:Light/settings/stream.svg);
|
||||
qproperty-outputIcon: url(theme:Light/settings/output.svg);
|
||||
qproperty-audioIcon: url(theme:Light/settings/audio.svg);
|
||||
qproperty-videoIcon: url(theme:Light/settings/video.svg);
|
||||
qproperty-hotkeysIcon: url(theme:Light/settings/hotkeys.svg);
|
||||
qproperty-accessibilityIcon: url(theme:Light/settings/accessibility.svg);
|
||||
qproperty-advancedIcon: url(theme:Light/settings/advanced.svg);
|
||||
}
|
||||
|
||||
/* Checkboxes */
|
||||
QCheckBox::indicator:unchecked,
|
||||
QGroupBox::indicator:unchecked {
|
||||
image: url(theme:Light/checkbox_unchecked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:unchecked:hover,
|
||||
QGroupBox::indicator:unchecked:hover {
|
||||
border: none;
|
||||
image: url(theme:Light/checkbox_unchecked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked,
|
||||
QGroupBox::indicator:checked {
|
||||
image: url(theme:Light/checkbox_checked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:hover,
|
||||
QGroupBox::indicator:checked:hover {
|
||||
image: url(theme:Light/checkbox_checked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:disabled,
|
||||
QGroupBox::indicator:checked:disabled {
|
||||
image: url(theme:Light/checkbox_checked_disabled.svg);
|
||||
}
|
||||
|
||||
/* Locked CheckBox */
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked,
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Light/locked.svg);
|
||||
}
|
||||
|
||||
/* Visibility CheckBox */
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked,
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Light/visible.svg);
|
||||
}
|
||||
|
||||
* [themeID="revertIcon"] {
|
||||
qproperty-icon: url(theme:Light/revert.svg);
|
||||
}
|
||||
|
||||
/* Mute CheckBox */
|
||||
MuteCheckBox::indicator:checked {
|
||||
image: url(theme:Light/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:indeterminate {
|
||||
image: url(theme:Light/unassigned.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked {
|
||||
image: url(theme:Light/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:hover {
|
||||
image: url(theme:Light/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:focus {
|
||||
image: url(theme:Light/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:hover {
|
||||
image: url(theme:Light/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:focus {
|
||||
image: url(theme:Light/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:disabled {
|
||||
image: url(theme:Light/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:disabled {
|
||||
image: url(theme:Light/settings/audio.svg);
|
||||
}
|
||||
|
||||
/* Sources List Group Collapse Checkbox */
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked:hover {
|
||||
image: url(theme:Light/expand.svg);
|
||||
}
|
||||
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked:hover {
|
||||
image: url(theme:Light/collapse.svg);
|
||||
}
|
||||
|
||||
/* Source Icons */
|
||||
OBSBasic {
|
||||
qproperty-imageIcon: url(theme:Light/sources/image.svg);
|
||||
qproperty-colorIcon: url(theme:Light/sources/brush.svg);
|
||||
qproperty-slideshowIcon: url(theme:Light/sources/slideshow.svg);
|
||||
qproperty-audioInputIcon: url(theme:Light/sources/microphone.svg);
|
||||
qproperty-audioOutputIcon: url(theme:Light/settings/audio.svg);
|
||||
qproperty-desktopCapIcon: url(theme:Light/settings/video.svg);
|
||||
qproperty-windowCapIcon: url(theme:Light/sources/window.svg);
|
||||
qproperty-gameCapIcon: url(theme:Light/sources/gamepad.svg);
|
||||
qproperty-cameraIcon: url(theme:Light/sources/camera.svg);
|
||||
qproperty-textIcon: url(theme:Light/sources/text.svg);
|
||||
qproperty-mediaIcon: url(theme:Light/sources/media.svg);
|
||||
qproperty-browserIcon: url(theme:Light/sources/globe.svg);
|
||||
qproperty-groupIcon: url(theme:Light/sources/group.svg);
|
||||
qproperty-sceneIcon: url(theme:Light/sources/scene.svg);
|
||||
qproperty-defaultIcon: url(theme:Light/sources/default.svg);
|
||||
qproperty-audioProcessOutputIcon: url(theme:Light/sources/windowaudio.svg);
|
||||
}
|
||||
|
||||
/* Save icon */
|
||||
* [themeID="replayIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/save.svg);
|
||||
}
|
||||
|
||||
/* Media icons */
|
||||
* [themeID="playIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_play.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="restartIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_restart.svg);
|
||||
}
|
||||
|
||||
* [themeID="stopIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_stop.svg);
|
||||
}
|
||||
|
||||
* [themeID="nextIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_next.svg);
|
||||
}
|
||||
|
||||
* [themeID="previousIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_previous.svg);
|
||||
}
|
||||
|
||||
/* YouTube Integration */
|
||||
OBSYoutubeActions {
|
||||
qproperty-thumbPlaceholder: url(theme:Light/sources/image.svg);
|
||||
}
|
||||
|
||||
/* Calendar Widget */
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
/* Calendar Top Bar Buttons */
|
||||
#qt_calendar_monthbutton::menu-indicator {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_prevmonth {
|
||||
qproperty-icon: url(theme:Light/left.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_nextmonth {
|
||||
qproperty-icon: url(theme:Light/right.svg);
|
||||
}
|
||||
@@ -0,0 +1,324 @@
|
||||
@OBSThemeMeta {
|
||||
name: 'Macchiato';
|
||||
id: 'com.obsproject.Catppuccin.Macchiato';
|
||||
extends: 'com.obsproject.Catppuccin';
|
||||
author: 'Xurdejl';
|
||||
dark: 'true';
|
||||
}
|
||||
|
||||
@OBSThemeVars {
|
||||
--ctp_rosewater: #f4dbd6;
|
||||
--ctp_flamingo: #f0c6c6;
|
||||
--ctp_pink: #f5bde6;
|
||||
--ctp_mauve: #c6a0f6;
|
||||
--ctp_red: #ed8796;
|
||||
--ctp_maroon: #ee99a0;
|
||||
--ctp_peach: #f5a97f;
|
||||
--ctp_yellow: #eed49f;
|
||||
--ctp_green: #a6da95;
|
||||
--ctp_teal: #8bd5ca;
|
||||
--ctp_sky: #91d7e3;
|
||||
--ctp_sapphire: #7dc4e4;
|
||||
--ctp_blue: #8aadf4;
|
||||
--ctp_lavender: #b7bdf8;
|
||||
--ctp_text: #cad3f5;
|
||||
--ctp_subtext1: #b8c0e0;
|
||||
--ctp_subtext0: #a5adcb;
|
||||
--ctp_overlay2: #939ab7;
|
||||
--ctp_overlay1: #8087a2;
|
||||
--ctp_overlay0: #6e738d;
|
||||
--ctp_surface2: #5b6078;
|
||||
--ctp_surface1: #494d64;
|
||||
--ctp_surface0: #363a4f;
|
||||
--ctp_base: #24273a;
|
||||
--ctp_mantle: #1e2030;
|
||||
--ctp_crust: #181926;
|
||||
--ctp_selection_background: #3a3d53;
|
||||
}
|
||||
|
||||
VolumeMeter {
|
||||
qproperty-foregroundNominalColor: #78c75d;
|
||||
qproperty-foregroundWarningColor: #ef7939;
|
||||
qproperty-foregroundErrorColor: #e3455d;
|
||||
}
|
||||
|
||||
/* Context Menu */
|
||||
QMenu::right-arrow {
|
||||
image: url(theme:Dark/expand.svg);
|
||||
}
|
||||
|
||||
/* Dock Widget */
|
||||
QDockWidget {
|
||||
titlebar-close-icon: url(theme:Dark/close.svg);
|
||||
titlebar-normal-icon: url(theme:Dark/popout.svg);
|
||||
}
|
||||
|
||||
/* Source Context Bar */
|
||||
QPushButton#sourcePropertiesButton {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
QPushButton#sourceFiltersButton {
|
||||
qproperty-icon: url(theme:Dark/filter.svg);
|
||||
}
|
||||
|
||||
/* Scenes and Sources toolbar */
|
||||
* [themeID="addIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/plus.svg);
|
||||
}
|
||||
|
||||
* [themeID="removeIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/trash.svg);
|
||||
}
|
||||
|
||||
* [themeID="clearIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/entry-clear.svg);
|
||||
}
|
||||
|
||||
* [themeID="propertiesIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="configIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="menuIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/dots-vert.svg);
|
||||
}
|
||||
|
||||
* [themeID="refreshIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/refresh.svg);
|
||||
}
|
||||
|
||||
* [themeID="cogsIcon"] {
|
||||
qproperty-icon: url(theme:Dark/cogs.svg);
|
||||
}
|
||||
|
||||
#sourceInteractButton {
|
||||
qproperty-icon: url(theme:Dark/interact.svg);
|
||||
}
|
||||
|
||||
* [themeID="upArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/up.svg);
|
||||
}
|
||||
|
||||
* [themeID="downArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/media-pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="filtersIcon"] {
|
||||
qproperty-icon: url(theme:Dark/filter.svg);
|
||||
}
|
||||
|
||||
QToolBarExtension {
|
||||
qproperty-icon: url(theme:Dark/dots-vert.svg);
|
||||
}
|
||||
|
||||
/* ComboBox */
|
||||
QComboBox::down-arrow,
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Dark/collapse.svg);
|
||||
}
|
||||
|
||||
QComboBox::down-arrow:editable,
|
||||
QDateTimeEdit::down-arrow:editable {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Spinbox and doubleSpinbox */
|
||||
QSpinBox::up-arrow,
|
||||
QDoubleSpinBox::up-arrow {
|
||||
image: url(theme:Dark/up.svg);
|
||||
}
|
||||
|
||||
QSpinBox::down-arrow,
|
||||
QDoubleSpinBox::down-arrow {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Buttons */
|
||||
QPushButton::menu-indicator {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Settings Icons */
|
||||
OBSBasicSettings {
|
||||
qproperty-generalIcon: url(theme:Dark/settings/general.svg);
|
||||
qproperty-appearanceIcon: url(theme:Dark/settings/appearance.svg);
|
||||
qproperty-streamIcon: url(theme:Dark/settings/stream.svg);
|
||||
qproperty-outputIcon: url(theme:Dark/settings/output.svg);
|
||||
qproperty-audioIcon: url(theme:Dark/settings/audio.svg);
|
||||
qproperty-videoIcon: url(theme:Dark/settings/video.svg);
|
||||
qproperty-hotkeysIcon: url(theme:Dark/settings/hotkeys.svg);
|
||||
qproperty-accessibilityIcon: url(theme:Dark/settings/accessibility.svg);
|
||||
qproperty-advancedIcon: url(theme:Dark/settings/advanced.svg);
|
||||
}
|
||||
|
||||
/* Checkboxes */
|
||||
QCheckBox::indicator:unchecked,
|
||||
QGroupBox::indicator:unchecked {
|
||||
image: url(theme:Yami/checkbox_unchecked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:unchecked:hover,
|
||||
QGroupBox::indicator:unchecked:hover {
|
||||
border: none;
|
||||
image: url(theme:Yami/checkbox_unchecked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked,
|
||||
QGroupBox::indicator:checked {
|
||||
image: url(theme:Yami/checkbox_checked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:hover,
|
||||
QGroupBox::indicator:checked:hover {
|
||||
image: url(theme:Yami/checkbox_checked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:disabled,
|
||||
QGroupBox::indicator:checked:disabled {
|
||||
image: url(theme:Yami/checkbox_checked_disabled.svg);
|
||||
}
|
||||
|
||||
/* Locked CheckBox */
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked,
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/locked.svg);
|
||||
}
|
||||
|
||||
/* Visibility CheckBox */
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked,
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/visible.svg);
|
||||
}
|
||||
|
||||
* [themeID="revertIcon"] {
|
||||
qproperty-icon: url(theme:Dark/revert.svg);
|
||||
}
|
||||
|
||||
/* Mute CheckBox */
|
||||
MuteCheckBox::indicator:checked {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:indeterminate {
|
||||
image: url(theme:Dark/unassigned.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:hover {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:focus {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:hover {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:focus {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:disabled {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:disabled {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
/* Sources List Group Collapse Checkbox */
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/expand.svg);
|
||||
}
|
||||
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked:hover {
|
||||
image: url(theme:Dark/collapse.svg);
|
||||
}
|
||||
|
||||
/* Source Icons */
|
||||
OBSBasic {
|
||||
qproperty-imageIcon: url(theme:Dark/sources/image.svg);
|
||||
qproperty-colorIcon: url(theme:Dark/sources/brush.svg);
|
||||
qproperty-slideshowIcon: url(theme:Dark/sources/slideshow.svg);
|
||||
qproperty-audioInputIcon: url(theme:Dark/sources/microphone.svg);
|
||||
qproperty-audioOutputIcon: url(theme:Dark/settings/audio.svg);
|
||||
qproperty-desktopCapIcon: url(theme:Dark/settings/video.svg);
|
||||
qproperty-windowCapIcon: url(theme:Dark/sources/window.svg);
|
||||
qproperty-gameCapIcon: url(theme:Dark/sources/gamepad.svg);
|
||||
qproperty-cameraIcon: url(theme:Dark/sources/camera.svg);
|
||||
qproperty-textIcon: url(theme:Dark/sources/text.svg);
|
||||
qproperty-mediaIcon: url(theme:Dark/sources/media.svg);
|
||||
qproperty-browserIcon: url(theme:Dark/sources/globe.svg);
|
||||
qproperty-groupIcon: url(theme:Dark/sources/group.svg);
|
||||
qproperty-sceneIcon: url(theme:Dark/sources/scene.svg);
|
||||
qproperty-defaultIcon: url(theme:Dark/sources/default.svg);
|
||||
qproperty-audioProcessOutputIcon: url(theme:Dark/sources/windowaudio.svg);
|
||||
}
|
||||
|
||||
/* Save icon */
|
||||
* [themeID="replayIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/save.svg);
|
||||
}
|
||||
|
||||
/* Media icons */
|
||||
* [themeID="playIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_play.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="restartIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_restart.svg);
|
||||
}
|
||||
|
||||
* [themeID="stopIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_stop.svg);
|
||||
}
|
||||
|
||||
* [themeID="nextIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_next.svg);
|
||||
}
|
||||
|
||||
* [themeID="previousIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_previous.svg);
|
||||
}
|
||||
|
||||
/* YouTube Integration */
|
||||
OBSYoutubeActions {
|
||||
qproperty-thumbPlaceholder: url(theme:Dark/sources/image.svg);
|
||||
}
|
||||
|
||||
/* Calendar Widget */
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Calendar Top Bar Buttons */
|
||||
#qt_calendar_monthbutton::menu-indicator {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_prevmonth {
|
||||
qproperty-icon: url(theme:Dark/left.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_nextmonth {
|
||||
qproperty-icon: url(theme:Dark/right.svg);
|
||||
}
|
||||
@@ -0,0 +1,324 @@
|
||||
@OBSThemeMeta {
|
||||
name: 'Mocha';
|
||||
id: 'com.obsproject.Catppuccin.Mocha';
|
||||
extends: 'com.obsproject.Catppuccin';
|
||||
author: 'Xurdejl';
|
||||
dark: 'true';
|
||||
}
|
||||
|
||||
@OBSThemeVars {
|
||||
--ctp_rosewater: #f5e0dc;
|
||||
--ctp_flamingo: #f2cdcd;
|
||||
--ctp_pink: #f5c2e7;
|
||||
--ctp_mauve: #cba6f7;
|
||||
--ctp_red: #f38ba8;
|
||||
--ctp_maroon: #eba0ac;
|
||||
--ctp_peach: #fab387;
|
||||
--ctp_yellow: #f9e2af;
|
||||
--ctp_green: #a6e3a1;
|
||||
--ctp_teal: #94e2d5;
|
||||
--ctp_sky: #89dceb;
|
||||
--ctp_sapphire: #74c7ec;
|
||||
--ctp_blue: #89b4fa;
|
||||
--ctp_lavender: #b4befe;
|
||||
--ctp_text: #cdd6f4;
|
||||
--ctp_subtext1: #bac2de;
|
||||
--ctp_subtext0: #a6adc8;
|
||||
--ctp_overlay2: #9399b2;
|
||||
--ctp_overlay1: #7f849c;
|
||||
--ctp_overlay0: #6c7086;
|
||||
--ctp_surface2: #585b70;
|
||||
--ctp_surface1: #45475a;
|
||||
--ctp_surface0: #313244;
|
||||
--ctp_base: #1e1e2e;
|
||||
--ctp_mantle: #181825;
|
||||
--ctp_crust: #11111b;
|
||||
--ctp_selection_background: #353649;
|
||||
}
|
||||
|
||||
VolumeMeter {
|
||||
qproperty-foregroundNominalColor: #6fd266;
|
||||
qproperty-foregroundWarningColor: #f7853f;
|
||||
qproperty-foregroundErrorColor: #ec4675;
|
||||
}
|
||||
|
||||
/* Context Menu */
|
||||
QMenu::right-arrow {
|
||||
image: url(theme:Dark/expand.svg);
|
||||
}
|
||||
|
||||
/* Dock Widget */
|
||||
QDockWidget {
|
||||
titlebar-close-icon: url(theme:Dark/close.svg);
|
||||
titlebar-normal-icon: url(theme:Dark/popout.svg);
|
||||
}
|
||||
|
||||
/* Source Context Bar */
|
||||
QPushButton#sourcePropertiesButton {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
QPushButton#sourceFiltersButton {
|
||||
qproperty-icon: url(theme:Dark/filter.svg);
|
||||
}
|
||||
|
||||
/* Scenes and Sources toolbar */
|
||||
* [themeID="addIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/plus.svg);
|
||||
}
|
||||
|
||||
* [themeID="removeIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/trash.svg);
|
||||
}
|
||||
|
||||
* [themeID="clearIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/entry-clear.svg);
|
||||
}
|
||||
|
||||
* [themeID="propertiesIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="configIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="menuIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/dots-vert.svg);
|
||||
}
|
||||
|
||||
* [themeID="refreshIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/refresh.svg);
|
||||
}
|
||||
|
||||
* [themeID="cogsIcon"] {
|
||||
qproperty-icon: url(theme:Dark/cogs.svg);
|
||||
}
|
||||
|
||||
#sourceInteractButton {
|
||||
qproperty-icon: url(theme:Dark/interact.svg);
|
||||
}
|
||||
|
||||
* [themeID="upArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/up.svg);
|
||||
}
|
||||
|
||||
* [themeID="downArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/media-pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="filtersIcon"] {
|
||||
qproperty-icon: url(theme:Dark/filter.svg);
|
||||
}
|
||||
|
||||
QToolBarExtension {
|
||||
qproperty-icon: url(theme:Dark/dots-vert.svg);
|
||||
}
|
||||
|
||||
/* ComboBox */
|
||||
QComboBox::down-arrow,
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Dark/collapse.svg);
|
||||
}
|
||||
|
||||
QComboBox::down-arrow:editable,
|
||||
QDateTimeEdit::down-arrow:editable {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Spinbox and doubleSpinbox */
|
||||
QSpinBox::up-arrow,
|
||||
QDoubleSpinBox::up-arrow {
|
||||
image: url(theme:Dark/up.svg);
|
||||
}
|
||||
|
||||
QSpinBox::down-arrow,
|
||||
QDoubleSpinBox::down-arrow {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Buttons */
|
||||
QPushButton::menu-indicator {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Settings Icons */
|
||||
OBSBasicSettings {
|
||||
qproperty-generalIcon: url(theme:Dark/settings/general.svg);
|
||||
qproperty-appearanceIcon: url(theme:Dark/settings/appearance.svg);
|
||||
qproperty-streamIcon: url(theme:Dark/settings/stream.svg);
|
||||
qproperty-outputIcon: url(theme:Dark/settings/output.svg);
|
||||
qproperty-audioIcon: url(theme:Dark/settings/audio.svg);
|
||||
qproperty-videoIcon: url(theme:Dark/settings/video.svg);
|
||||
qproperty-hotkeysIcon: url(theme:Dark/settings/hotkeys.svg);
|
||||
qproperty-accessibilityIcon: url(theme:Dark/settings/accessibility.svg);
|
||||
qproperty-advancedIcon: url(theme:Dark/settings/advanced.svg);
|
||||
}
|
||||
|
||||
/* Checkboxes */
|
||||
QCheckBox::indicator:unchecked,
|
||||
QGroupBox::indicator:unchecked {
|
||||
image: url(theme:Yami/checkbox_unchecked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:unchecked:hover,
|
||||
QGroupBox::indicator:unchecked:hover {
|
||||
border: none;
|
||||
image: url(theme:Yami/checkbox_unchecked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked,
|
||||
QGroupBox::indicator:checked {
|
||||
image: url(theme:Yami/checkbox_checked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:hover,
|
||||
QGroupBox::indicator:checked:hover {
|
||||
image: url(theme:Yami/checkbox_checked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:disabled,
|
||||
QGroupBox::indicator:checked:disabled {
|
||||
image: url(theme:Yami/checkbox_checked_disabled.svg);
|
||||
}
|
||||
|
||||
/* Locked CheckBox */
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked,
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/locked.svg);
|
||||
}
|
||||
|
||||
/* Visibility CheckBox */
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked,
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/visible.svg);
|
||||
}
|
||||
|
||||
* [themeID="revertIcon"] {
|
||||
qproperty-icon: url(theme:Dark/revert.svg);
|
||||
}
|
||||
|
||||
/* Mute CheckBox */
|
||||
MuteCheckBox::indicator:checked {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:indeterminate {
|
||||
image: url(theme:Dark/unassigned.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:hover {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:focus {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:hover {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:focus {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:disabled {
|
||||
image: url(theme:Dark/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:disabled {
|
||||
image: url(theme:Dark/settings/audio.svg);
|
||||
}
|
||||
|
||||
/* Sources List Group Collapse Checkbox */
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked:hover {
|
||||
image: url(theme:Dark/expand.svg);
|
||||
}
|
||||
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked:hover {
|
||||
image: url(theme:Dark/collapse.svg);
|
||||
}
|
||||
|
||||
/* Source Icons */
|
||||
OBSBasic {
|
||||
qproperty-imageIcon: url(theme:Dark/sources/image.svg);
|
||||
qproperty-colorIcon: url(theme:Dark/sources/brush.svg);
|
||||
qproperty-slideshowIcon: url(theme:Dark/sources/slideshow.svg);
|
||||
qproperty-audioInputIcon: url(theme:Dark/sources/microphone.svg);
|
||||
qproperty-audioOutputIcon: url(theme:Dark/settings/audio.svg);
|
||||
qproperty-desktopCapIcon: url(theme:Dark/settings/video.svg);
|
||||
qproperty-windowCapIcon: url(theme:Dark/sources/window.svg);
|
||||
qproperty-gameCapIcon: url(theme:Dark/sources/gamepad.svg);
|
||||
qproperty-cameraIcon: url(theme:Dark/sources/camera.svg);
|
||||
qproperty-textIcon: url(theme:Dark/sources/text.svg);
|
||||
qproperty-mediaIcon: url(theme:Dark/sources/media.svg);
|
||||
qproperty-browserIcon: url(theme:Dark/sources/globe.svg);
|
||||
qproperty-groupIcon: url(theme:Dark/sources/group.svg);
|
||||
qproperty-sceneIcon: url(theme:Dark/sources/scene.svg);
|
||||
qproperty-defaultIcon: url(theme:Dark/sources/default.svg);
|
||||
qproperty-audioProcessOutputIcon: url(theme:Dark/sources/windowaudio.svg);
|
||||
}
|
||||
|
||||
/* Save icon */
|
||||
* [themeID="replayIconSmall"] {
|
||||
qproperty-icon: url(theme:Dark/save.svg);
|
||||
}
|
||||
|
||||
/* Media icons */
|
||||
* [themeID="playIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_play.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="restartIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_restart.svg);
|
||||
}
|
||||
|
||||
* [themeID="stopIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_stop.svg);
|
||||
}
|
||||
|
||||
* [themeID="nextIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_next.svg);
|
||||
}
|
||||
|
||||
* [themeID="previousIcon"] {
|
||||
qproperty-icon: url(theme:Dark/media/media_previous.svg);
|
||||
}
|
||||
|
||||
/* YouTube Integration */
|
||||
OBSYoutubeActions {
|
||||
qproperty-thumbPlaceholder: url(theme:Dark/sources/image.svg);
|
||||
}
|
||||
|
||||
/* Calendar Widget */
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
/* Calendar Top Bar Buttons */
|
||||
#qt_calendar_monthbutton::menu-indicator {
|
||||
image: url(theme:Dark/down.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_prevmonth {
|
||||
qproperty-icon: url(theme:Dark/left.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_nextmonth {
|
||||
qproperty-icon: url(theme:Dark/right.svg);
|
||||
}
|
||||
@@ -0,0 +1,324 @@
|
||||
@OBSThemeMeta {
|
||||
name: 'Latte';
|
||||
id: 'com.obsproject.Catppuccin.Latte';
|
||||
extends: 'com.obsproject.Catppuccin';
|
||||
author: 'Xurdejl';
|
||||
dark: 'false';
|
||||
}
|
||||
|
||||
@OBSThemeVars {
|
||||
--ctp_rosewater: #dc8a78;
|
||||
--ctp_flamingo: #dd7878;
|
||||
--ctp_pink: #ea76cb;
|
||||
--ctp_mauve: #8839ef;
|
||||
--ctp_red: #d20f39;
|
||||
--ctp_maroon: #e64553;
|
||||
--ctp_peach: #fe640b;
|
||||
--ctp_yellow: #df8e1d;
|
||||
--ctp_green: #40a02b;
|
||||
--ctp_teal: #179299;
|
||||
--ctp_sky: #04a5e5;
|
||||
--ctp_sapphire: #209fb5;
|
||||
--ctp_blue: #1e66f5;
|
||||
--ctp_lavender: #7287fd;
|
||||
--ctp_text: #4c4f69;
|
||||
--ctp_subtext1: #5c5f77;
|
||||
--ctp_subtext0: #6c6f85;
|
||||
--ctp_overlay2: #7c7f93;
|
||||
--ctp_overlay1: #8c8fa1;
|
||||
--ctp_overlay0: #9ca0b0;
|
||||
--ctp_surface2: #acb0be;
|
||||
--ctp_surface1: #bcc0cc;
|
||||
--ctp_surface0: #ccd0da;
|
||||
--ctp_base: #eff1f5;
|
||||
--ctp_mantle: #e6e9ef;
|
||||
--ctp_crust: #dce0e8;
|
||||
--ctp_selection_background: #d4d7df;
|
||||
}
|
||||
|
||||
VolumeMeter {
|
||||
qproperty-foregroundNominalColor: #62ce4a;
|
||||
qproperty-foregroundWarningColor: #fe9558;
|
||||
qproperty-foregroundErrorColor: #f13d64;
|
||||
}
|
||||
|
||||
/* Context Menu */
|
||||
QMenu::right-arrow {
|
||||
image: url(theme:Light/expand.svg);
|
||||
}
|
||||
|
||||
/* Dock Widget */
|
||||
QDockWidget {
|
||||
titlebar-close-icon: url(theme:Light/close.svg);
|
||||
titlebar-normal-icon: url(theme:Light/popout.svg);
|
||||
}
|
||||
|
||||
/* Source Context Bar */
|
||||
QPushButton#sourcePropertiesButton {
|
||||
qproperty-icon: url(theme:Light/settings/general.svg);
|
||||
}
|
||||
|
||||
QPushButton#sourceFiltersButton {
|
||||
qproperty-icon: url(theme:Light/filter.svg);
|
||||
}
|
||||
|
||||
/* Scenes and Sources toolbar */
|
||||
* [themeID="addIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/plus.svg);
|
||||
}
|
||||
|
||||
* [themeID="removeIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/trash.svg);
|
||||
}
|
||||
|
||||
* [themeID="clearIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/entry-clear.svg);
|
||||
}
|
||||
|
||||
* [themeID="propertiesIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="configIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/settings/general.svg);
|
||||
}
|
||||
|
||||
* [themeID="menuIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/dots-vert.svg);
|
||||
}
|
||||
|
||||
* [themeID="refreshIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/refresh.svg);
|
||||
}
|
||||
|
||||
* [themeID="cogsIcon"] {
|
||||
qproperty-icon: url(theme:Light/cogs.svg);
|
||||
}
|
||||
|
||||
#sourceInteractButton {
|
||||
qproperty-icon: url(theme:Light/interact.svg);
|
||||
}
|
||||
|
||||
* [themeID="upArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/up.svg);
|
||||
}
|
||||
|
||||
* [themeID="downArrowIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/media-pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="filtersIcon"] {
|
||||
qproperty-icon: url(theme:Light/filter.svg);
|
||||
}
|
||||
|
||||
QToolBarExtension {
|
||||
qproperty-icon: url(theme:Light/dots-vert.svg);
|
||||
}
|
||||
|
||||
/* ComboBox */
|
||||
QComboBox::down-arrow,
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Light/collapse.svg);
|
||||
}
|
||||
|
||||
QComboBox::down-arrow:editable,
|
||||
QDateTimeEdit::down-arrow:editable {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
/* Spinbox and doubleSpinbox */
|
||||
QSpinBox::up-arrow,
|
||||
QDoubleSpinBox::up-arrow {
|
||||
image: url(theme:Light/up.svg);
|
||||
}
|
||||
|
||||
QSpinBox::down-arrow,
|
||||
QDoubleSpinBox::down-arrow {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
/* Buttons */
|
||||
QPushButton::menu-indicator {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
/* Settings Icons */
|
||||
OBSBasicSettings {
|
||||
qproperty-generalIcon: url(theme:Light/settings/general.svg);
|
||||
qproperty-appearanceIcon: url(theme:Light/settings/appearance.svg);
|
||||
qproperty-streamIcon: url(theme:Light/settings/stream.svg);
|
||||
qproperty-outputIcon: url(theme:Light/settings/output.svg);
|
||||
qproperty-audioIcon: url(theme:Light/settings/audio.svg);
|
||||
qproperty-videoIcon: url(theme:Light/settings/video.svg);
|
||||
qproperty-hotkeysIcon: url(theme:Light/settings/hotkeys.svg);
|
||||
qproperty-accessibilityIcon: url(theme:Light/settings/accessibility.svg);
|
||||
qproperty-advancedIcon: url(theme:Light/settings/advanced.svg);
|
||||
}
|
||||
|
||||
/* Checkboxes */
|
||||
QCheckBox::indicator:unchecked,
|
||||
QGroupBox::indicator:unchecked {
|
||||
image: url(theme:Light/checkbox_unchecked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:unchecked:hover,
|
||||
QGroupBox::indicator:unchecked:hover {
|
||||
border: none;
|
||||
image: url(theme:Light/checkbox_unchecked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked,
|
||||
QGroupBox::indicator:checked {
|
||||
image: url(theme:Light/checkbox_checked.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:hover,
|
||||
QGroupBox::indicator:checked:hover {
|
||||
image: url(theme:Light/checkbox_checked_focus.svg);
|
||||
}
|
||||
|
||||
QCheckBox::indicator:checked:disabled,
|
||||
QGroupBox::indicator:checked:disabled {
|
||||
image: url(theme:Light/checkbox_checked_disabled.svg);
|
||||
}
|
||||
|
||||
/* Locked CheckBox */
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked,
|
||||
QCheckBox[lockCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Light/locked.svg);
|
||||
}
|
||||
|
||||
/* Visibility CheckBox */
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked,
|
||||
QCheckBox[visibilityCheckBox=true]::indicator:checked:hover {
|
||||
image: url(theme:Light/visible.svg);
|
||||
}
|
||||
|
||||
* [themeID="revertIcon"] {
|
||||
qproperty-icon: url(theme:Light/revert.svg);
|
||||
}
|
||||
|
||||
/* Mute CheckBox */
|
||||
MuteCheckBox::indicator:checked {
|
||||
image: url(theme:Light/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:indeterminate {
|
||||
image: url(theme:Light/unassigned.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked {
|
||||
image: url(theme:Light/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:hover {
|
||||
image: url(theme:Light/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:focus {
|
||||
image: url(theme:Light/settings/audio.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:hover {
|
||||
image: url(theme:Light/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:focus {
|
||||
image: url(theme:Light/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:checked:disabled {
|
||||
image: url(theme:Light/mute.svg);
|
||||
}
|
||||
|
||||
MuteCheckBox::indicator:unchecked:disabled {
|
||||
image: url(theme:Light/settings/audio.svg);
|
||||
}
|
||||
|
||||
/* Sources List Group Collapse Checkbox */
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:checked:hover {
|
||||
image: url(theme:Light/expand.svg);
|
||||
}
|
||||
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked,
|
||||
QCheckBox[sourceTreeSubItem=true]::indicator:unchecked:hover {
|
||||
image: url(theme:Light/collapse.svg);
|
||||
}
|
||||
|
||||
/* Source Icons */
|
||||
OBSBasic {
|
||||
qproperty-imageIcon: url(theme:Light/sources/image.svg);
|
||||
qproperty-colorIcon: url(theme:Light/sources/brush.svg);
|
||||
qproperty-slideshowIcon: url(theme:Light/sources/slideshow.svg);
|
||||
qproperty-audioInputIcon: url(theme:Light/sources/microphone.svg);
|
||||
qproperty-audioOutputIcon: url(theme:Light/settings/audio.svg);
|
||||
qproperty-desktopCapIcon: url(theme:Light/settings/video.svg);
|
||||
qproperty-windowCapIcon: url(theme:Light/sources/window.svg);
|
||||
qproperty-gameCapIcon: url(theme:Light/sources/gamepad.svg);
|
||||
qproperty-cameraIcon: url(theme:Light/sources/camera.svg);
|
||||
qproperty-textIcon: url(theme:Light/sources/text.svg);
|
||||
qproperty-mediaIcon: url(theme:Light/sources/media.svg);
|
||||
qproperty-browserIcon: url(theme:Light/sources/globe.svg);
|
||||
qproperty-groupIcon: url(theme:Light/sources/group.svg);
|
||||
qproperty-sceneIcon: url(theme:Light/sources/scene.svg);
|
||||
qproperty-defaultIcon: url(theme:Light/sources/default.svg);
|
||||
qproperty-audioProcessOutputIcon: url(theme:Light/sources/windowaudio.svg);
|
||||
}
|
||||
|
||||
/* Save icon */
|
||||
* [themeID="replayIconSmall"] {
|
||||
qproperty-icon: url(theme:Light/save.svg);
|
||||
}
|
||||
|
||||
/* Media icons */
|
||||
* [themeID="playIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_play.svg);
|
||||
}
|
||||
|
||||
* [themeID="pauseIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_pause.svg);
|
||||
}
|
||||
|
||||
* [themeID="restartIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_restart.svg);
|
||||
}
|
||||
|
||||
* [themeID="stopIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_stop.svg);
|
||||
}
|
||||
|
||||
* [themeID="nextIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_next.svg);
|
||||
}
|
||||
|
||||
* [themeID="previousIcon"] {
|
||||
qproperty-icon: url(theme:Light/media/media_previous.svg);
|
||||
}
|
||||
|
||||
/* YouTube Integration */
|
||||
OBSYoutubeActions {
|
||||
qproperty-thumbPlaceholder: url(theme:Light/sources/image.svg);
|
||||
}
|
||||
|
||||
/* Calendar Widget */
|
||||
QDateTimeEdit::down-arrow {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
/* Calendar Top Bar Buttons */
|
||||
#qt_calendar_monthbutton::menu-indicator {
|
||||
image: url(theme:Light/down.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_prevmonth {
|
||||
qproperty-icon: url(theme:Light/left.svg);
|
||||
}
|
||||
|
||||
QCalendarWidget #qt_calendar_nextmonth {
|
||||
qproperty-icon: url(theme:Light/right.svg);
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
theme: Catppuccin
|
||||
@@ -0,0 +1,26 @@
|
||||
name: Catppuccin
|
||||
primary: '#8839ef'
|
||||
secondary: '#40a02b'
|
||||
accent: '#7287fd'
|
||||
background: '#eff1f5'
|
||||
surface: '#ccd0da'
|
||||
error: '#d20f39'
|
||||
success: '#40a02b'
|
||||
warning: '#df8e1d'
|
||||
|
||||
text_area:
|
||||
gutter: 'bold #b4befe'
|
||||
matched_bracket: 'white on #8839ef'
|
||||
url:
|
||||
base: 'italic #1e66f5'
|
||||
protocol: 'bold #40a02b'
|
||||
syntax:
|
||||
json_key: 'italic #1e66f5'
|
||||
json_number: '#fe640b'
|
||||
json_string: '#40a02b'
|
||||
json_boolean: '#8839ef'
|
||||
json_null: 'underline #8839ef'
|
||||
|
||||
author: Thomas Philippot
|
||||
description: A soothing pastel theme for the high-spirited!
|
||||
homepage: https://github.com/catppuccin/catppuccin
|
||||
@@ -0,0 +1,26 @@
|
||||
name: Catppuccin
|
||||
primary: '#c6a0f6'
|
||||
secondary: '#a6da95'
|
||||
accent: '#8aadf4'
|
||||
background: '#24273a'
|
||||
surface: '#363a4f'
|
||||
error: '#ed8796'
|
||||
success: '#a6da95'
|
||||
warning: '#eed49f'
|
||||
|
||||
text_area:
|
||||
gutter: 'bold #b4befe'
|
||||
matched_bracket: 'black on #c6a0f6'
|
||||
url:
|
||||
base: 'italic #91d7e3'
|
||||
protocol: 'bold #a6da95'
|
||||
syntax:
|
||||
json_key: 'italic #8aadf4'
|
||||
json_number: '#f5a97f'
|
||||
json_string: '#a6da95'
|
||||
json_boolean: '#c6a0f6'
|
||||
json_null: 'underline #c6a0f6'
|
||||
|
||||
author: Thomas Philippot
|
||||
description: A soothing pastel theme for the high-spirited!
|
||||
homepage: https://github.com/catppuccin/catppuccin
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #222D32FF;
|
||||
background-alt: #29353BFF;
|
||||
foreground: #B8C2C6FF;
|
||||
selected: #00BCD4FF;
|
||||
active: #21FF90FF;
|
||||
urgent: #FF4B60FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #2F343FFF;
|
||||
background-alt: #383C4AFF;
|
||||
foreground: #BAC5D0FF;
|
||||
selected: #5294E2FF;
|
||||
active: #98C379FF;
|
||||
urgent: #E06B74FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #000000FF;
|
||||
background-alt: #101010FF;
|
||||
foreground: #FFFFFFFF;
|
||||
selected: #62AEEFFF;
|
||||
active: #98C379FF;
|
||||
urgent: #E06B74FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #24273a;
|
||||
background-alt: #1e2030;
|
||||
foreground: #6c7086;
|
||||
selected: #8aadf4;
|
||||
active: #a6da95;
|
||||
urgent: #ed8796;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #000B1EFF;
|
||||
background-alt: #0A1528FF;
|
||||
foreground: #0ABDC6FF;
|
||||
selected: #0ABDC6FF;
|
||||
active: #00FF00FF;
|
||||
urgent: #FF0000FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #1E1F29FF;
|
||||
background-alt: #282A36FF;
|
||||
foreground: #FFFFFFFF;
|
||||
selected: #BD93F9FF;
|
||||
active: #50FA7BFF;
|
||||
urgent: #FF5555FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #323D43FF;
|
||||
background-alt: #3C474DFF;
|
||||
foreground: #DAD1BEFF;
|
||||
selected: #7FBBB3FF;
|
||||
active: #A7C080FF;
|
||||
urgent: #E67E80FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #282828FF;
|
||||
background-alt: #353535FF;
|
||||
foreground: #EBDBB2FF;
|
||||
selected: #83A598FF;
|
||||
active: #B8BB26FF;
|
||||
urgent: #FB4934FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #eff1f5;
|
||||
background-alt: #e6e9ef;
|
||||
foreground: #9ca0b0;
|
||||
selected: #1e66f5;
|
||||
active: #40a02b;
|
||||
urgent: #d20f39;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #1D1F28FF;
|
||||
background-alt: #282A36FF;
|
||||
foreground: #FDFDFDFF;
|
||||
selected: #79E6F3FF;
|
||||
active: #5ADECDFF;
|
||||
urgent: #F37F97FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #24273a;
|
||||
background-alt: #1e2030;
|
||||
foreground: #6c7086;
|
||||
selected: #8aadf4;
|
||||
active: #a6da95;
|
||||
urgent: #ed8796;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #021B21FF;
|
||||
background-alt: #0C252BFF;
|
||||
foreground: #F2F1B9FF;
|
||||
selected: #44B5B1FF;
|
||||
active: #7CBF9EFF;
|
||||
urgent: #C2454EFF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #2E3440FF;
|
||||
background-alt: #383E4AFF;
|
||||
foreground: #E5E9F0FF;
|
||||
selected: #81A1C1FF;
|
||||
active: #A3BE8CFF;
|
||||
urgent: #BF616AFF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #1E2127FF;
|
||||
background-alt: #282B31FF;
|
||||
foreground: #FFFFFFFF;
|
||||
selected: #61AFEFFF;
|
||||
active: #98C379FF;
|
||||
urgent: #E06C75FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #F1F1F1FF;
|
||||
background-alt: #E0E0E0FF;
|
||||
foreground: #252525FF;
|
||||
selected: #008EC4FF;
|
||||
active: #10A778FF;
|
||||
urgent: #C30771FF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #002B36FF;
|
||||
background-alt: #073642FF;
|
||||
foreground: #EEE8D5FF;
|
||||
selected: #268BD2FF;
|
||||
active: #859900FF;
|
||||
urgent: #DC322FFF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #24273a;
|
||||
background-alt: #1e2030;
|
||||
foreground: #6c7086;
|
||||
selected: #8aadf4;
|
||||
active: #a6da95;
|
||||
urgent: #ed8796;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Levi Lacoss (fishyfishfish55)
|
||||
* Github : @fishyfishfish55
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #15161EFF;
|
||||
background-alt: #1A1B26FF;
|
||||
foreground: #C0CAF5FF;
|
||||
selected: #33467CFF;
|
||||
active: #414868FF;
|
||||
urgent: #F7768EFF;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Colors
|
||||
**/
|
||||
|
||||
* {
|
||||
background: #F5E7DEFF;
|
||||
background-alt: #EBDCD2FF;
|
||||
foreground: #34302DFF;
|
||||
selected: #D97742FF;
|
||||
active: #BF8F60FF;
|
||||
urgent: #B23636FF;
|
||||
}
|
||||
@@ -0,0 +1,181 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Configuration For Rofi Version: 1.7.3
|
||||
**/
|
||||
|
||||
configuration {
|
||||
/*---------- General setting ----------*/
|
||||
modi: "drun,run,filebrowser,window";
|
||||
case-sensitive: false;
|
||||
cycle: true;
|
||||
filter: "";
|
||||
scroll-method: 0;
|
||||
normalize-match: true;
|
||||
show-icons: true;
|
||||
icon-theme: "Papirus";
|
||||
/* cache-dir: ;*/
|
||||
steal-focus: false;
|
||||
/* dpi: -1;*/
|
||||
|
||||
/*---------- Matching setting ----------*/
|
||||
matching: "normal";
|
||||
tokenize: true;
|
||||
|
||||
/*---------- SSH settings ----------*/
|
||||
ssh-client: "ssh";
|
||||
ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";
|
||||
parse-hosts: true;
|
||||
parse-known-hosts: true;
|
||||
|
||||
/*---------- Drun settings ----------*/
|
||||
drun-categories: "";
|
||||
drun-match-fields: "name,generic,exec,categories,keywords";
|
||||
drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";
|
||||
drun-show-actions: false;
|
||||
drun-url-launcher: "xdg-open";
|
||||
drun-use-desktop-cache: false;
|
||||
drun-reload-desktop-cache: false;
|
||||
drun {
|
||||
/** Parse user desktop files. */
|
||||
parse-user: true;
|
||||
/** Parse system desktop files. */
|
||||
parse-system: true;
|
||||
}
|
||||
|
||||
/*---------- Run settings ----------*/
|
||||
run-command: "{cmd}";
|
||||
run-list-command: "";
|
||||
run-shell-command: "{terminal} -e {cmd}";
|
||||
|
||||
/*---------- Fallback Icon ----------*/
|
||||
run,drun {
|
||||
fallback-icon: "application-x-addon";
|
||||
}
|
||||
|
||||
/*---------- Window switcher settings ----------*/
|
||||
window-match-fields: "title,class,role,name,desktop";
|
||||
window-command: "wmctrl -i -R {window}";
|
||||
window-format: "{w} - {c} - {t:0}";
|
||||
window-thumbnail: false;
|
||||
|
||||
/*---------- Combi settings ----------*/
|
||||
/* combi-modi: "window,run";*/
|
||||
/* combi-hide-mode-prefix: false;*/
|
||||
/* combi-display-format: "{mode} {text}";*/
|
||||
|
||||
/*---------- History and Sorting ----------*/
|
||||
disable-history: false;
|
||||
sorting-method: "normal";
|
||||
max-history-size: 25;
|
||||
|
||||
/*---------- Display setting ----------*/
|
||||
display-window: "Windows";
|
||||
display-windowcd: "Window CD";
|
||||
display-run: "Run";
|
||||
display-ssh: "SSH";
|
||||
display-drun: "Apps";
|
||||
display-combi: "Combi";
|
||||
display-keys: "Keys";
|
||||
display-filebrowser: "Files";
|
||||
|
||||
/*---------- Misc setting ----------*/
|
||||
terminal: "rofi-sensible-terminal";
|
||||
font: "Mono 12";
|
||||
sort: false;
|
||||
threads: 0;
|
||||
click-to-exit: true;
|
||||
/* ignored-prefixes: "";*/
|
||||
/* pid: "/run/user/1000/rofi.pid";*/
|
||||
|
||||
/*---------- File browser settings ----------*/
|
||||
filebrowser {
|
||||
/* directory: "/home";*/
|
||||
directories-first: true;
|
||||
sorting-method: "name";
|
||||
}
|
||||
|
||||
/*---------- Other settings ----------*/
|
||||
timeout {
|
||||
action: "kb-cancel";
|
||||
delay: 0;
|
||||
}
|
||||
|
||||
/*---------- Keybindings ----------*/
|
||||
/*
|
||||
kb-primary-paste: "Control+V,Shift+Insert";
|
||||
kb-secondary-paste: "Control+v,Insert";
|
||||
kb-clear-line: "Control+w";
|
||||
kb-move-front: "Control+a";
|
||||
kb-move-end: "Control+e";
|
||||
kb-move-word-back: "Alt+b,Control+Left";
|
||||
kb-move-word-forward: "Alt+f,Control+Right";
|
||||
kb-move-char-back: "Left,Control+b";
|
||||
kb-move-char-forward: "Right,Control+f";
|
||||
kb-remove-word-back: "Control+Alt+h,Control+BackSpace";
|
||||
kb-remove-word-forward: "Control+Alt+d";
|
||||
kb-remove-char-forward: "Delete,Control+d";
|
||||
kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";
|
||||
kb-remove-to-eol: "Control+k";
|
||||
kb-remove-to-sol: "Control+u";
|
||||
kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";
|
||||
kb-accept-custom: "Control+Return";
|
||||
kb-accept-custom-alt: "Control+Shift+Return";
|
||||
kb-accept-alt: "Shift+Return";
|
||||
kb-delete-entry: "Shift+Delete";
|
||||
kb-mode-next: "Shift+Right,Control+Tab";
|
||||
kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";
|
||||
kb-mode-complete: "Control+l";
|
||||
kb-row-left: "Control+Page_Up";
|
||||
kb-row-right: "Control+Page_Down";
|
||||
kb-row-down: "Down,Control+n";
|
||||
kb-page-prev: "Page_Up";
|
||||
kb-page-next: "Page_Down";
|
||||
kb-row-first: "Home,KP_Home";
|
||||
kb-row-last: "End,KP_End";
|
||||
kb-row-select: "Control+space";
|
||||
kb-screenshot: "Alt+S";
|
||||
kb-ellipsize: "Alt+period";
|
||||
kb-toggle-case-sensitivity: "grave,dead_grave";
|
||||
kb-toggle-sort: "Alt+grave";
|
||||
kb-cancel: "Escape,Control+g,Control+bracketleft";
|
||||
kb-custom-1: "Alt+1";
|
||||
kb-custom-2: "Alt+2";
|
||||
kb-custom-3: "Alt+3";
|
||||
kb-custom-4: "Alt+4";
|
||||
kb-custom-5: "Alt+5";
|
||||
kb-custom-6: "Alt+6";
|
||||
kb-custom-7: "Alt+7";
|
||||
kb-custom-8: "Alt+8";
|
||||
kb-custom-9: "Alt+9";
|
||||
kb-custom-10: "Alt+0";
|
||||
kb-custom-11: "Alt+exclam";
|
||||
kb-custom-12: "Alt+at";
|
||||
kb-custom-13: "Alt+numbersign";
|
||||
kb-custom-14: "Alt+dollar";
|
||||
kb-custom-15: "Alt+percent";
|
||||
kb-custom-16: "Alt+dead_circumflex";
|
||||
kb-custom-17: "Alt+ampersand";
|
||||
kb-custom-18: "Alt+asterisk";
|
||||
kb-custom-19: "Alt+parenleft";
|
||||
kb-select-1: "Super+1";
|
||||
kb-select-2: "Super+2";
|
||||
kb-select-3: "Super+3";
|
||||
kb-select-4: "Super+4";
|
||||
kb-select-5: "Super+5";
|
||||
kb-select-6: "Super+6";
|
||||
kb-select-7: "Super+7";
|
||||
kb-select-8: "Super+8";
|
||||
kb-select-9: "Super+9";
|
||||
kb-select-10: "Super+0";
|
||||
ml-row-left: "ScrollLeft";
|
||||
ml-row-right: "ScrollRight";
|
||||
ml-row-up: "ScrollUp";
|
||||
ml-row-down: "ScrollDown";
|
||||
me-select-entry: "MousePrimary";
|
||||
me-accept-entry: "MouseDPrimary";
|
||||
me-accept-custom: "Control+MouseDPrimary";
|
||||
*/
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Fonts
|
||||
*
|
||||
**/
|
||||
|
||||
* {
|
||||
font: "Iosevka Nerd Font 10";
|
||||
}
|
||||
@@ -0,0 +1,171 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Rofi Theme File
|
||||
* Rofi Version: 1.7.3
|
||||
**/
|
||||
|
||||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
modi: "drun";
|
||||
show-icons: true;
|
||||
display-drun: "";
|
||||
drun-display-format: "{name}";
|
||||
}
|
||||
|
||||
/*****----- Global Properties -----*****/
|
||||
@import "~/.config/rofi/colors/theme.rasi"
|
||||
@import "~/.config/rofi/fonts.rasi"
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
width: 700px;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 2px;
|
||||
border-radius: 12px;
|
||||
border-color: @selected;
|
||||
background-color: @background;
|
||||
cursor: "default";
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 20px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
children: [ "inputbar", "listview" ];
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
inputbar {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 15px;
|
||||
border: 0px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @selected;
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
children: [ "prompt", "entry" ];
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
textbox-prompt-colon {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
str: "::";
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
entry {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
cursor: text;
|
||||
placeholder: "Search...";
|
||||
placeholder-color: inherit;
|
||||
}
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 2;
|
||||
lines: 8;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
scrollbar: false;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 5px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: "default";
|
||||
}
|
||||
scrollbar {
|
||||
handle-width: 5px ;
|
||||
handle-color: @selected;
|
||||
border-radius: 0px;
|
||||
background-color: @background-alt;
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 5px;
|
||||
border: 0px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: pointer;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: @selected;
|
||||
text-color: @background;
|
||||
}
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 32px;
|
||||
cursor: inherit;
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
highlight: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
error-message {
|
||||
padding: 15px;
|
||||
border: 2px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @selected;
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
}
|
||||
textbox {
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
highlight: none;
|
||||
}
|
||||
@@ -0,0 +1,171 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Rofi Theme File
|
||||
* Rofi Version: 1.7.3
|
||||
**/
|
||||
|
||||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
modi: "drun";
|
||||
show-icons: false;
|
||||
display-drun: "search";
|
||||
drun-display-format: "{name}";
|
||||
}
|
||||
|
||||
/*****----- Global Properties -----*****/
|
||||
@import "~/.config/rofi/colors/theme.rasi"
|
||||
@import "~/.config/rofi/fonts.rasi"
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
width: 400px;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @selected;
|
||||
background-color: @background;
|
||||
cursor: "default";
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 0px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
children: [ "inputbar", "listview" ];
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
inputbar {
|
||||
enabled: false;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 15px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: @selected;
|
||||
text-color: @background;
|
||||
children: [ "prompt", "entry" ];
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
textbox-prompt-colon {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
str: "::";
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
entry {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
cursor: text;
|
||||
placeholder: "Search...";
|
||||
placeholder-color: inherit;
|
||||
}
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 1;
|
||||
lines: 6;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
scrollbar: false;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 5px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: "default";
|
||||
}
|
||||
scrollbar {
|
||||
handle-width: 5px ;
|
||||
handle-color: @selected;
|
||||
border-radius: 0px;
|
||||
background-color: @background-alt;
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 8px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: pointer;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
}
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 32px;
|
||||
cursor: inherit;
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
highlight: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
error-message {
|
||||
padding: 15px;
|
||||
border: 2px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @selected;
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
}
|
||||
textbox {
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
highlight: none;
|
||||
}
|
||||
@@ -0,0 +1,151 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Rofi Theme File
|
||||
* Rofi Version: 1.7.3
|
||||
**/
|
||||
|
||||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
modi: "drun";
|
||||
show-icons: true;
|
||||
display-drun: " Applications";
|
||||
drun-display-format: "{name}";
|
||||
}
|
||||
|
||||
/*****----- Global Properties -----*****/
|
||||
@import "~/.config/rofi/colors/theme.rasi"
|
||||
@import "~/.config/rofi/fonts.rasi"
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
width: 450px;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: @background;
|
||||
cursor: "default";
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 0px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
children: [ "listview", "entry" ];
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
entry {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
padding: 20px 0px;
|
||||
background-color: @selected;
|
||||
text-color: @background;
|
||||
cursor: text;
|
||||
placeholder: "Search...";
|
||||
placeholder-color: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.5;
|
||||
}
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 3;
|
||||
lines: 3;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
scrollbar: false;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 0px;
|
||||
margin: 0px;
|
||||
padding: 20px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
cursor: "default";
|
||||
}
|
||||
scrollbar {
|
||||
handle-width: 5px ;
|
||||
handle-color: @selected;
|
||||
border-radius: 0px;
|
||||
background-color: @background-alt;
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
spacing: 15px;
|
||||
margin: 0px;
|
||||
padding: 20px 10px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: transparent;
|
||||
text-color: @foreground;
|
||||
orientation: vertical;
|
||||
cursor: pointer;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: @background-alt;
|
||||
text-color: @foreground;
|
||||
}
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 64px;
|
||||
cursor: inherit;
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
highlight: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.5;
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
error-message {
|
||||
padding: 15px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @selected;
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
}
|
||||
textbox {
|
||||
background-color: @background;
|
||||
text-color: @foreground;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
highlight: none;
|
||||
}
|
||||
@@ -0,0 +1,140 @@
|
||||
--wave-color-material-dark: #363a4f;
|
||||
--wave-color-material-light: #494d64;
|
||||
--wave-color-opacity-base-bright-thick: fade(#1e2030, 60%);
|
||||
--wave-color-opacity-base-bright-thin: fade(#1e2030, 20%);
|
||||
--wave-color-opacity-base-bright-transparent: #1e2030;
|
||||
--wave-color-opacity-base-bright-ultra-thick: fade(#1e2030, 80%);
|
||||
--wave-color-opacity-base-brightest-regular: fade(#24273a, 40%);
|
||||
--wave-color-opacity-base-brightest-thin: fade(#24273a, 20%);
|
||||
--wave-color-opacity-base-brightest-ultra-thin: fade(#24273a, 10%);
|
||||
--wave-color-opacity-base-brighter-ultra-thick: fade(#363a4f, 80%);
|
||||
--wave-color-opacity-base-fill-regular: fade(#181926, 40%);
|
||||
--wave-color-opacity-base-fill-thick: fade(#181926, 60%);
|
||||
--wave-color-opacity-base-fill-thin: #181926;
|
||||
--wave-color-opacity-base-fill-transparent: #181926;
|
||||
--wave-color-opacity-base-fill-ultra-thick: fade(#181926, 10%);
|
||||
--wave-color-opacity-base-fill-ultra-thin: fade(#181926, 10%);
|
||||
--wave-color-opacity-contrast-fill-regular: fade(#cad3f5, 40%);
|
||||
--wave-color-opacity-contrast-fill-thin: fade(#cad3f5, 20%);
|
||||
--wave-color-opacity-contrast-fill-ultra-thin: fade(#6e738d, 40%);
|
||||
--wave-color-opacity-contrast-fill-transparent: #cad3f5;
|
||||
--wave-color-opacity-contrast-fill-thick: #a5adcb;
|
||||
--wave-color-opacity-contrast-fill-ultra-thick: #a5adcb;
|
||||
--wave-color-opacity-rainbow-blue-thin: fade(#8aadf4, 8%);
|
||||
--wave-color-solid-accent-fill: #7dc4e4;
|
||||
--wave-color-solid-accent-bright: lighten(#7dc4e4, 7%);
|
||||
--wave-color-solid-accent-brighter: lighten(#7dc4e4, 8%);
|
||||
--wave-color-solid-accent-dark: darken(#7dc4e4, 5%);
|
||||
--wave-color-solid-accent-darker: darken(#7dc4e4, 8%);
|
||||
--wave-color-solid-accent-darkest: darken(#7dc4e4, 9%);
|
||||
--wave-color-solid-base-fill: #24273a;
|
||||
--wave-color-solid-contrast-fill: #cad3f5;
|
||||
--wave-color-solid-base-bright: #363a4f;
|
||||
--wave-color-solid-base-brighter: #363a4f;
|
||||
--wave-color-solid-base-brightest: #494d64;
|
||||
--wave-color-solid-base-brighter-ultra-thick: #494d64;
|
||||
--wave-color-solid-contrast-dark: #cad3f5;
|
||||
--wave-color-solid-contrast-darker: #a5adcb;
|
||||
--wave-color-solid-contrast-darkest: #b8c0e0;
|
||||
--wave-color-solid-rainbow-blue-fill: #8aadf4;
|
||||
--wave-color-solid-rainbow-green-brighter: lighten(#a6da95, 8%);
|
||||
--wave-color-solid-rainbow-green-dark: darken(#a6da95, 5%);
|
||||
--wave-color-solid-rainbow-green-darker: darken(#a6da95, 8%);
|
||||
--wave-color-solid-rainbow-green-darkest: darken(#a6da95, 9%);
|
||||
--wave-color-solid-rainbow-green-fill: #a6da95;
|
||||
--wave-color-solid-rainbow-orange-fill: #f5a97f;
|
||||
--wave-color-solid-rainbow-purple-fill: #c6a0f6;
|
||||
--wave-color-solid-rainbow-red-bright: lighten(#ed8796, 2%);
|
||||
--wave-color-solid-rainbow-red-brighter: lighten(#ed8796, 3%);
|
||||
--wave-color-solid-rainbow-red-dark: darken(#ed8796, 6%);
|
||||
--wave-color-solid-rainbow-red-darker: darken(#ed8796, 8%);
|
||||
--wave-color-solid-rainbow-red-darkest: darken(#ed8796, 9%);
|
||||
--wave-color-solid-rainbow-red-fill: #ed8796;
|
||||
--wave-color-solid-rainbow-yellow-bright: lighten(#eed49f, 3%);
|
||||
--wave-color-solid-rainbow-yellow-brighter: lighten(#eed49f, 9%);
|
||||
--wave-color-solid-rainbow-yellow-dark: darken(#eed49f, 6%);
|
||||
--wave-color-solid-rainbow-yellow-darker: darken(#eed49f, 8%);
|
||||
--wave-color-solid-rainbow-yellow-darkest: darken(#eed49f, 9%);
|
||||
--wave-color-solid-rainbow-yellow-fill: #eed49f;
|
||||
--wave-color-solid-special-bright: lighten(#f5a97f, 3%);
|
||||
--wave-color-solid-special-brighter: lighten(#f5a97f, 9%);
|
||||
--wave-color-solid-special-dark: darken(#f5a97f, 6%);
|
||||
--wave-color-solid-special-darker: darken(#f5a97f, 8%);
|
||||
--wave-color-solid-special-darkest: darken(#f5a97f, 9%);
|
||||
--wave-color-solid-special-fill: #f5a97f;
|
||||
--wave-color-solid-warning-bright: lighten(#ed8796, 3%);
|
||||
--wave-color-solid-warning-brighter: lighten(#ed8796, 9%);
|
||||
--wave-color-solid-warning-dark: darken(#ed8796, 6%);
|
||||
--wave-color-solid-warning-darker: darken(#ed8796, 8%);
|
||||
--wave-color-solid-warning-darkest: darken(#ed8796, 9%);
|
||||
--wave-color-solid-warning-fill: #ed8796;
|
||||
|
||||
[data-wave-color="textDefault"],
|
||||
[class^="css--"],
|
||||
[class^="icon"],
|
||||
[class*="smallHeader"] .artist-link a,
|
||||
[class*="smallHeader"] .artist-link span {
|
||||
color: #cad3f5;
|
||||
}
|
||||
|
||||
[class*="primary"] [data-wave-color="textDefault"],
|
||||
[class*="activeTab"] [data-wave-color="textDefault"],
|
||||
[class*="primary"] [class^="icon"],
|
||||
[class*="activeTab"] [class^="icon"] {
|
||||
color: #24273a;
|
||||
}
|
||||
|
||||
[class*="accentedIcon"],
|
||||
[data-wave-color="textUrl"] {
|
||||
color: #7dc4e4;
|
||||
}
|
||||
|
||||
[data-test="stream-metadata"] [class^="textContainer"] span {
|
||||
color: #1e2030 !important;
|
||||
}
|
||||
|
||||
[data-wave-color="textSecondary"] {
|
||||
color: #a5adcb;
|
||||
}
|
||||
|
||||
[class*="_wave-btn-rank-secondary"] {
|
||||
background-color: #494d64;
|
||||
}
|
||||
|
||||
[class*="iconsWrapper"] [class*="icons"] {
|
||||
background-color: fade(#7dc4e4, 30%) !important;
|
||||
}
|
||||
|
||||
[class*="_wave-btn-rank-primary"] {
|
||||
background-color: #cad3f5;
|
||||
color: #24273a !important;
|
||||
}
|
||||
|
||||
[class*="_wave-btn-rank-primary"]:hover {
|
||||
background-color: #24273a;
|
||||
color: #cad3f5 !important;
|
||||
}
|
||||
|
||||
[class*="_wave-badge-color-default"] {
|
||||
color: #cad3f5;
|
||||
background-color: fade(#cad3f5, 20%);
|
||||
}
|
||||
|
||||
[class*="_wave-badge-color-high"] {
|
||||
color: #7dc4e4;
|
||||
background-color: fade(#7dc4e4, 20%);
|
||||
}
|
||||
|
||||
[class*="_wave-badge-color-max"] {
|
||||
color: #eed49f;
|
||||
background-color: fade(#eed49f, 20%);
|
||||
}
|
||||
|
||||
.ReactModal__Content [data-type="page"] {
|
||||
background-color: #363a4f;
|
||||
}
|
||||
|
||||
.ReactModal__Overlay {
|
||||
background-color: fade(#6e738d, 50%) !important;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
# Set true color
|
||||
set-option -sa terminal-overrides ",xterm*:Tc"
|
||||
set -g mouse on
|
||||
|
||||
# Set prefix
|
||||
unbind C-b
|
||||
set -g prefix C-Space
|
||||
bind C-Space send-prefix
|
||||
|
||||
# Start windows and panes at 1, not 0
|
||||
set -g base-index 1
|
||||
set -g pane-base-index 1
|
||||
set-window-option -g pane-base-index 1
|
||||
set-option -g renumber-windows on
|
||||
|
||||
set -g @catppuccin_flavour 'macchiato'
|
||||
set -g @catppuccin_status_modules_right "application session load"
|
||||
|
||||
set -g @plugin 'tmux-plugins/tpm'
|
||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||
set -g @plugin 'catppuccin/tmux'
|
||||
set -g @plugin 'jamesoff/tmux-loadavg'
|
||||
|
||||
run '~/.tmux/plugins/tpm/tpm'
|
||||
@@ -0,0 +1 @@
|
||||
include noctaliarc
|
||||
@@ -0,0 +1,29 @@
|
||||
# File system
|
||||
if command -v eza &> /dev/null; then
|
||||
alias ls='eza -lh --group-directories-first --icons=auto'
|
||||
alias lsa='ls -a'
|
||||
alias lt='eza --tree --level=2 --long --icons --git'
|
||||
alias lta='lt -a'
|
||||
fi
|
||||
|
||||
if [[ "$TERM" == "xterm-kitty" ]]; then
|
||||
alias ff="fzf --preview 'case \$(file --mime-type -b {}) in image/*) kitty icat --clear --transfer-mode=memory --stdin=no --place=\${FZF_PREVIEW_COLUMNS}x\${FZF_PREVIEW_LINES}@0x0 {} ;; *) bat --style=numbers --color=always {} ;; esac'"
|
||||
fi
|
||||
|
||||
|
||||
# Tools
|
||||
#alias c='opencode'
|
||||
#alias cx='printf "\033[2J\033[3J\033[H" && claude --permission-mode bypassPermissions'
|
||||
#alias d='docker'
|
||||
#alias r='rails'
|
||||
#alias t='tmux attach || tmux new -s Work'
|
||||
#alias ic='tdl c'
|
||||
#alias ix='tdl cx'
|
||||
#alias icx='tdl c cx'
|
||||
#n() { if [ "$#" -eq 0 ]; then command nvim . ; else command nvim "$@"; fi; }
|
||||
|
||||
# Git
|
||||
alias g='git'
|
||||
alias gcm='git commit -m'
|
||||
alias gcam='git commit -a -m'
|
||||
alias gcad='git commit -a --amend'
|
||||
@@ -0,0 +1,2 @@
|
||||
.idea/
|
||||
|
||||
@@ -0,0 +1,234 @@
|
||||
# ANSI formatting function (\033[<code>m)
|
||||
# 0: reset, 1: bold, 4: underline, 22: no bold, 24: no underline, 31: red, 33: yellow
|
||||
omz_f() {
|
||||
[ $# -gt 0 ] || return
|
||||
IFS=";" printf "\033[%sm" $*
|
||||
}
|
||||
# If stdout is not a terminal ignore all formatting
|
||||
[ -t 1 ] || omz_f() { :; }
|
||||
|
||||
# Protect against non-zsh execution of Oh My Zsh (use POSIX syntax here)
|
||||
[ -n "$ZSH_VERSION" ] || {
|
||||
omz_ptree() {
|
||||
# Get process tree of the current process
|
||||
pid=$$; pids="$pid"
|
||||
while [ ${pid-0} -ne 1 ] && ppid=$(ps -e -o pid,ppid | awk "\$1 == $pid { print \$2 }"); do
|
||||
pids="$pids $pid"; pid=$ppid
|
||||
done
|
||||
|
||||
# Show process tree
|
||||
case "$(uname)" in
|
||||
Linux) ps -o ppid,pid,command -f -p $pids 2>/dev/null ;;
|
||||
Darwin|*) ps -o ppid,pid,command -p $pids 2>/dev/null ;;
|
||||
esac
|
||||
|
||||
# If ps command failed, try Busybox ps
|
||||
[ $? -eq 0 ] || ps -o ppid,pid,comm | awk "NR == 1 || index(\"$pids\", \$2) != 0"
|
||||
}
|
||||
|
||||
{
|
||||
shell=$(ps -o pid,comm | awk "\$1 == $$ { print \$2 }")
|
||||
printf "$(omz_f 1 31)Error:$(omz_f 22) Oh My Zsh can't be loaded from: $(omz_f 1)${shell}$(omz_f 22). "
|
||||
printf "You need to run $(omz_f 1)zsh$(omz_f 22) instead.$(omz_f 0)\n"
|
||||
printf "$(omz_f 33)Here's the process tree:$(omz_f 22)\n\n"
|
||||
omz_ptree
|
||||
printf "$(omz_f 0)\n"
|
||||
} >&2
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
# Check if in emulation mode, if so early return
|
||||
# https://github.com/ohmyzsh/ohmyzsh/issues/11686
|
||||
[[ "$(emulate)" = zsh ]] || {
|
||||
printf "$(omz_f 1 31)Error:$(omz_f 22) Oh My Zsh can't be loaded in \`$(emulate)\` emulation mode.$(omz_f 0)\n" >&2
|
||||
return 1
|
||||
}
|
||||
|
||||
unset -f omz_f
|
||||
|
||||
# If ZSH is not defined, use the current script's directory.
|
||||
[[ -n "$ZSH" ]] || export ZSH="${${(%):-%x}:a:h}"
|
||||
|
||||
# Set ZSH_CUSTOM to the path where your custom config files
|
||||
# and plugins exists, or else we will use the default custom/
|
||||
[[ -n "$ZSH_CUSTOM" ]] || ZSH_CUSTOM="$ZSH/custom"
|
||||
|
||||
# Set ZSH_CACHE_DIR to the path where cache files should be created
|
||||
# or else we will use the default cache/
|
||||
[[ -n "$ZSH_CACHE_DIR" ]] || ZSH_CACHE_DIR="$ZSH/cache"
|
||||
|
||||
# Make sure $ZSH_CACHE_DIR is writable, otherwise use a directory in $HOME
|
||||
if [[ ! -w "$ZSH_CACHE_DIR" ]]; then
|
||||
ZSH_CACHE_DIR="${XDG_CACHE_HOME:-$HOME/.cache}/oh-my-zsh"
|
||||
fi
|
||||
|
||||
# Create cache and completions dir and add to $fpath
|
||||
mkdir -p "$ZSH_CACHE_DIR/completions"
|
||||
(( ${fpath[(Ie)$ZSH_CACHE_DIR/completions]} )) || fpath=("$ZSH_CACHE_DIR/completions" $fpath)
|
||||
|
||||
# Check for updates on initial load...
|
||||
source "$ZSH/tools/check_for_upgrade.sh"
|
||||
|
||||
# Initializes Oh My Zsh
|
||||
|
||||
# add a function path
|
||||
fpath=($ZSH/{functions,completions} $ZSH_CUSTOM/{functions,completions} $fpath)
|
||||
|
||||
# Load all stock functions (from $fpath files) called below.
|
||||
autoload -U compaudit compinit zrecompile
|
||||
|
||||
is_plugin() {
|
||||
local base_dir=$1
|
||||
local name=$2
|
||||
builtin test -f $base_dir/plugins/$name/$name.plugin.zsh \
|
||||
|| builtin test -f $base_dir/plugins/$name/_$name
|
||||
}
|
||||
|
||||
# Add all defined plugins to fpath. This must be done
|
||||
# before running compinit.
|
||||
for plugin ($plugins); do
|
||||
if is_plugin "$ZSH_CUSTOM" "$plugin"; then
|
||||
fpath=("$ZSH_CUSTOM/plugins/$plugin" $fpath)
|
||||
elif is_plugin "$ZSH" "$plugin"; then
|
||||
fpath=("$ZSH/plugins/$plugin" $fpath)
|
||||
else
|
||||
echo "[oh-my-zsh] plugin '$plugin' not found"
|
||||
fi
|
||||
done
|
||||
|
||||
# Figure out the SHORT hostname
|
||||
if [[ "$OSTYPE" = darwin* ]]; then
|
||||
# macOS's $HOST changes with dhcp, etc. Use LocalHostName if possible.
|
||||
SHORT_HOST=$(scutil --get LocalHostName 2>/dev/null) || SHORT_HOST="${HOST/.*/}"
|
||||
else
|
||||
SHORT_HOST="${HOST/.*/}"
|
||||
fi
|
||||
|
||||
# Save the location of the current completion dump file.
|
||||
if [[ -z "$ZSH_COMPDUMP" ]]; then
|
||||
ZSH_COMPDUMP="${ZDOTDIR:-$HOME}/.zcompdump-${SHORT_HOST}-${ZSH_VERSION}"
|
||||
fi
|
||||
|
||||
# Construct zcompdump OMZ metadata
|
||||
zcompdump_revision="#omz revision: $(builtin cd -q "$ZSH"; git rev-parse HEAD 2>/dev/null)"
|
||||
zcompdump_fpath="#omz fpath: $fpath"
|
||||
|
||||
# Delete the zcompdump file if OMZ zcompdump metadata changed
|
||||
if ! command grep -q -Fx "$zcompdump_revision" "$ZSH_COMPDUMP" 2>/dev/null \
|
||||
|| ! command grep -q -Fx "$zcompdump_fpath" "$ZSH_COMPDUMP" 2>/dev/null; then
|
||||
command rm -f "$ZSH_COMPDUMP"
|
||||
zcompdump_refresh=1
|
||||
fi
|
||||
|
||||
if [[ "$ZSH_DISABLE_COMPFIX" != true ]]; then
|
||||
source "$ZSH/lib/compfix.zsh"
|
||||
# Load only from secure directories
|
||||
compinit -i -d "$ZSH_COMPDUMP"
|
||||
# If completion insecurities exist, warn the user
|
||||
handle_completion_insecurities &|
|
||||
else
|
||||
# If the user wants it, load from all found directories
|
||||
compinit -u -d "$ZSH_COMPDUMP"
|
||||
fi
|
||||
|
||||
# Append zcompdump metadata if missing
|
||||
if (( $zcompdump_refresh )) \
|
||||
|| ! command grep -q -Fx "$zcompdump_revision" "$ZSH_COMPDUMP" 2>/dev/null; then
|
||||
# Use `tee` in case the $ZSH_COMPDUMP filename is invalid, to silence the error
|
||||
# See https://github.com/ohmyzsh/ohmyzsh/commit/dd1a7269#commitcomment-39003489
|
||||
tee -a "$ZSH_COMPDUMP" &>/dev/null <<EOF
|
||||
|
||||
$zcompdump_revision
|
||||
$zcompdump_fpath
|
||||
EOF
|
||||
fi
|
||||
unset zcompdump_revision zcompdump_fpath zcompdump_refresh
|
||||
|
||||
# zcompile the completion dump file if the .zwc is older or missing.
|
||||
if command mkdir "${ZSH_COMPDUMP}.lock" 2>/dev/null; then
|
||||
zrecompile -q -p "$ZSH_COMPDUMP"
|
||||
command rm -rf "$ZSH_COMPDUMP.zwc.old" "${ZSH_COMPDUMP}.lock"
|
||||
fi
|
||||
|
||||
_omz_source() {
|
||||
local context filepath="$1"
|
||||
|
||||
# Construct zstyle context based on path
|
||||
case "$filepath" in
|
||||
lib/*) context="lib:${filepath:t:r}" ;; # :t = lib_name.zsh, :r = lib_name
|
||||
plugins/*) context="plugins:${filepath:h:t}" ;; # :h = plugins/plugin_name, :t = plugin_name
|
||||
esac
|
||||
|
||||
local disable_aliases=0
|
||||
zstyle -T ":omz:${context}" aliases || disable_aliases=1
|
||||
|
||||
# Back up alias names prior to sourcing
|
||||
local -A aliases_pre galiases_pre
|
||||
if (( disable_aliases )); then
|
||||
aliases_pre=("${(@kv)aliases}")
|
||||
galiases_pre=("${(@kv)galiases}")
|
||||
fi
|
||||
|
||||
# Source file from $ZSH_CUSTOM if it exists, otherwise from $ZSH
|
||||
if [[ -f "$ZSH_CUSTOM/$filepath" ]]; then
|
||||
source "$ZSH_CUSTOM/$filepath"
|
||||
elif [[ -f "$ZSH/$filepath" ]]; then
|
||||
source "$ZSH/$filepath"
|
||||
fi
|
||||
|
||||
# Unset all aliases that don't appear in the backed up list of aliases
|
||||
if (( disable_aliases )); then
|
||||
if (( #aliases_pre )); then
|
||||
aliases=("${(@kv)aliases_pre}")
|
||||
else
|
||||
(( #aliases )) && unalias "${(@k)aliases}"
|
||||
fi
|
||||
if (( #galiases_pre )); then
|
||||
galiases=("${(@kv)galiases_pre}")
|
||||
else
|
||||
(( #galiases )) && unalias "${(@k)galiases}"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Load all of the lib files in ~/.oh-my-zsh/lib that end in .zsh
|
||||
# TIP: Add files you don't want in git to .gitignore
|
||||
for lib_file ("$ZSH"/lib/*.zsh); do
|
||||
_omz_source "lib/${lib_file:t}"
|
||||
done
|
||||
unset lib_file
|
||||
|
||||
# Load all of the plugins that were defined in ~/.zshrc
|
||||
for plugin ($plugins); do
|
||||
_omz_source "plugins/$plugin/$plugin.plugin.zsh"
|
||||
done
|
||||
unset plugin
|
||||
|
||||
# Load all of your custom configurations from custom/
|
||||
for config_file ("$ZSH_CUSTOM"/*.zsh(N)); do
|
||||
source "$config_file"
|
||||
done
|
||||
unset config_file
|
||||
|
||||
# Load the theme
|
||||
is_theme() {
|
||||
local base_dir=$1
|
||||
local name=$2
|
||||
builtin test -f $base_dir/$name.zsh-theme
|
||||
}
|
||||
|
||||
if [[ -n "$ZSH_THEME" ]]; then
|
||||
if is_theme "$ZSH_CUSTOM" "$ZSH_THEME"; then
|
||||
source "$ZSH_CUSTOM/$ZSH_THEME.zsh-theme"
|
||||
elif is_theme "$ZSH_CUSTOM/themes" "$ZSH_THEME"; then
|
||||
source "$ZSH_CUSTOM/themes/$ZSH_THEME.zsh-theme"
|
||||
elif is_theme "$ZSH/themes" "$ZSH_THEME"; then
|
||||
source "$ZSH/themes/$ZSH_THEME.zsh-theme"
|
||||
else
|
||||
echo "[oh-my-zsh] theme '$ZSH_THEME' not found"
|
||||
fi
|
||||
fi
|
||||
|
||||
# set completion colors to be the same as `ls`, after theme has been loaded
|
||||
[[ -z "$LS_COLORS" ]] || zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
|
||||
@@ -0,0 +1,199 @@
|
||||
# Generated by Powerlevel10k configuration wizard on 2024-05-17 at 10:37 CEST.
|
||||
# Based on romkatv/powerlevel10k/config/p10k-pure.zsh, checksum 35142.
|
||||
# Wizard options: nerdfont-v3 + powerline, small icons, pure, original, rprompt,
|
||||
# 2 lines, sparse, transient_prompt, instant_prompt=verbose.
|
||||
# Type `p10k configure` to generate another config.
|
||||
#
|
||||
# Config file for Powerlevel10k with the style of Pure (https://github.com/sindresorhus/pure).
|
||||
#
|
||||
# Differences from Pure:
|
||||
#
|
||||
# - Git:
|
||||
# - `@c4d3ec2c` instead of something like `v1.4.0~11` when in detached HEAD state.
|
||||
# - No automatic `git fetch` (the same as in Pure with `PURE_GIT_PULL=0`).
|
||||
#
|
||||
# Apart from the differences listed above, the replication of Pure prompt is exact. This includes
|
||||
# even the questionable parts. For example, just like in Pure, there is no indication of Git status
|
||||
# being stale; prompt symbol is the same in command, visual and overwrite vi modes; when prompt
|
||||
# doesn't fit on one line, it wraps around with no attempt to shorten it.
|
||||
#
|
||||
# If you like the general style of Pure but not particularly attached to all its quirks, type
|
||||
# `p10k configure` and pick "Lean" style. This will give you slick minimalist prompt while taking
|
||||
# advantage of Powerlevel10k features that aren't present in Pure.
|
||||
|
||||
# Temporarily change options.
|
||||
'builtin' 'local' '-a' 'p10k_config_opts'
|
||||
[[ ! -o 'aliases' ]] || p10k_config_opts+=('aliases')
|
||||
[[ ! -o 'sh_glob' ]] || p10k_config_opts+=('sh_glob')
|
||||
[[ ! -o 'no_brace_expand' ]] || p10k_config_opts+=('no_brace_expand')
|
||||
'builtin' 'setopt' 'no_aliases' 'no_sh_glob' 'brace_expand'
|
||||
|
||||
() {
|
||||
emulate -L zsh -o extended_glob
|
||||
|
||||
# Unset all configuration options.
|
||||
unset -m '(POWERLEVEL9K_*|DEFAULT_USER)~POWERLEVEL9K_GITSTATUS_DIR'
|
||||
|
||||
# Zsh >= 5.1 is required.
|
||||
[[ $ZSH_VERSION == (5.<1->*|<6->.*) ]] || return
|
||||
|
||||
# Prompt colors.
|
||||
local grey='242'
|
||||
local red='1'
|
||||
local yellow='3'
|
||||
local blue='4'
|
||||
local magenta='5'
|
||||
local cyan='6'
|
||||
local white='7'
|
||||
|
||||
# Left prompt segments.
|
||||
typeset -g POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(
|
||||
# =========================[ Line #1 ]=========================
|
||||
# context # user@host
|
||||
dir # current directory
|
||||
vcs # git status
|
||||
# command_execution_time # previous command duration
|
||||
# =========================[ Line #2 ]=========================
|
||||
newline # \n
|
||||
# virtualenv # python virtual environment
|
||||
prompt_char # prompt symbol
|
||||
)
|
||||
|
||||
# Right prompt segments.
|
||||
typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(
|
||||
# =========================[ Line #1 ]=========================
|
||||
command_execution_time # previous command duration
|
||||
virtualenv # python virtual environment
|
||||
context # user@host
|
||||
# time # current time
|
||||
# =========================[ Line #2 ]=========================
|
||||
newline # \n
|
||||
)
|
||||
|
||||
# Basic style options that define the overall prompt look.
|
||||
typeset -g POWERLEVEL9K_BACKGROUND= # transparent background
|
||||
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_{LEFT,RIGHT}_WHITESPACE= # no surrounding whitespace
|
||||
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SUBSEGMENT_SEPARATOR=' ' # separate segments with a space
|
||||
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SEGMENT_SEPARATOR= # no end-of-line symbol
|
||||
typeset -g POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION= # no segment icons
|
||||
|
||||
# Add an empty line before each prompt except the first. This doesn't emulate the bug
|
||||
# in Pure that makes prompt drift down whenever you use the Alt-C binding from fzf or similar.
|
||||
typeset -g POWERLEVEL9K_PROMPT_ADD_NEWLINE=true
|
||||
|
||||
# Magenta prompt symbol if the last command succeeded.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS}_FOREGROUND=$magenta
|
||||
# Red prompt symbol if the last command failed.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS}_FOREGROUND=$red
|
||||
# Default prompt symbol.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIINS_CONTENT_EXPANSION='❯'
|
||||
# Prompt symbol in command vi mode.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VICMD_CONTENT_EXPANSION='❮'
|
||||
# Prompt symbol in visual vi mode is the same as in command mode.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIVIS_CONTENT_EXPANSION='❮'
|
||||
# Prompt symbol in overwrite vi mode is the same as in command mode.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_OVERWRITE_STATE=false
|
||||
|
||||
# Grey Python Virtual Environment.
|
||||
typeset -g POWERLEVEL9K_VIRTUALENV_FOREGROUND=$grey
|
||||
# Don't show Python version.
|
||||
typeset -g POWERLEVEL9K_VIRTUALENV_SHOW_PYTHON_VERSION=false
|
||||
typeset -g POWERLEVEL9K_VIRTUALENV_{LEFT,RIGHT}_DELIMITER=
|
||||
|
||||
# Blue current directory.
|
||||
typeset -g POWERLEVEL9K_DIR_FOREGROUND=$blue
|
||||
|
||||
# Context format when root: user@host. The first part white, the rest grey.
|
||||
typeset -g POWERLEVEL9K_CONTEXT_ROOT_TEMPLATE="%F{$white}%n%f%F{$grey}@%m%f"
|
||||
# Context format when not root: user@host. The whole thing grey.
|
||||
typeset -g POWERLEVEL9K_CONTEXT_TEMPLATE="%F{$grey}%n@%m%f"
|
||||
# Don't show context unless root or in SSH.
|
||||
typeset -g POWERLEVEL9K_CONTEXT_{DEFAULT,SUDO}_CONTENT_EXPANSION=
|
||||
|
||||
# Show previous command duration only if it's >= 5s.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD=5
|
||||
# Don't show fractional seconds. Thus, 7s rather than 7.3s.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION=0
|
||||
# Duration format: 1d 2h 3m 4s.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FORMAT='d h m s'
|
||||
# Yellow previous command duration.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FOREGROUND=$yellow
|
||||
|
||||
# Grey Git prompt. This makes stale prompts indistinguishable from up-to-date ones.
|
||||
typeset -g POWERLEVEL9K_VCS_FOREGROUND=$grey
|
||||
|
||||
# Disable async loading indicator to make directories that aren't Git repositories
|
||||
# indistinguishable from large Git repositories without known state.
|
||||
typeset -g POWERLEVEL9K_VCS_LOADING_TEXT=
|
||||
|
||||
# Don't wait for Git status even for a millisecond, so that prompt always updates
|
||||
# asynchronously when Git state changes.
|
||||
typeset -g POWERLEVEL9K_VCS_MAX_SYNC_LATENCY_SECONDS=0
|
||||
|
||||
# Cyan ahead/behind arrows.
|
||||
typeset -g POWERLEVEL9K_VCS_{INCOMING,OUTGOING}_CHANGESFORMAT_FOREGROUND=$cyan
|
||||
# Don't show remote branch, current tag or stashes.
|
||||
typeset -g POWERLEVEL9K_VCS_GIT_HOOKS=(vcs-detect-changes git-untracked git-aheadbehind)
|
||||
# Don't show the branch icon.
|
||||
typeset -g POWERLEVEL9K_VCS_BRANCH_ICON=
|
||||
# When in detached HEAD state, show @commit where branch normally goes.
|
||||
typeset -g POWERLEVEL9K_VCS_COMMIT_ICON='@'
|
||||
# Don't show staged, unstaged, untracked indicators.
|
||||
typeset -g POWERLEVEL9K_VCS_{STAGED,UNSTAGED,UNTRACKED}_ICON=
|
||||
# Show '*' when there are staged, unstaged or untracked files.
|
||||
typeset -g POWERLEVEL9K_VCS_DIRTY_ICON='*'
|
||||
# Show '⇣' if local branch is behind remote.
|
||||
typeset -g POWERLEVEL9K_VCS_INCOMING_CHANGES_ICON=':⇣'
|
||||
# Show '⇡' if local branch is ahead of remote.
|
||||
typeset -g POWERLEVEL9K_VCS_OUTGOING_CHANGES_ICON=':⇡'
|
||||
# Don't show the number of commits next to the ahead/behind arrows.
|
||||
typeset -g POWERLEVEL9K_VCS_{COMMITS_AHEAD,COMMITS_BEHIND}_MAX_NUM=1
|
||||
# Remove space between '⇣' and '⇡' and all trailing spaces.
|
||||
typeset -g POWERLEVEL9K_VCS_CONTENT_EXPANSION='${${${P9K_CONTENT/⇣* :⇡/⇣⇡}// }//:/ }'
|
||||
|
||||
# Grey current time.
|
||||
typeset -g POWERLEVEL9K_TIME_FOREGROUND=$grey
|
||||
# Format for the current time: 09:51:02. See `man 3 strftime`.
|
||||
typeset -g POWERLEVEL9K_TIME_FORMAT='%D{%H:%M:%S}'
|
||||
# If set to true, time will update when you hit enter. This way prompts for the past
|
||||
# commands will contain the start times of their commands rather than the end times of
|
||||
# their preceding commands.
|
||||
typeset -g POWERLEVEL9K_TIME_UPDATE_ON_COMMAND=false
|
||||
|
||||
# Transient prompt works similarly to the builtin transient_rprompt option. It trims down prompt
|
||||
# when accepting a command line. Supported values:
|
||||
#
|
||||
# - off: Don't change prompt when accepting a command line.
|
||||
# - always: Trim down prompt when accepting a command line.
|
||||
# - same-dir: Trim down prompt when accepting a command line unless this is the first command
|
||||
# typed after changing current working directory.
|
||||
typeset -g POWERLEVEL9K_TRANSIENT_PROMPT=always
|
||||
|
||||
# Instant prompt mode.
|
||||
#
|
||||
# - off: Disable instant prompt. Choose this if you've tried instant prompt and found
|
||||
# it incompatible with your zsh configuration files.
|
||||
# - quiet: Enable instant prompt and don't print warnings when detecting console output
|
||||
# during zsh initialization. Choose this if you've read and understood
|
||||
# https://github.com/romkatv/powerlevel10k/blob/master/README.md#instant-prompt.
|
||||
# - verbose: Enable instant prompt and print a warning when detecting console output during
|
||||
# zsh initialization. Choose this if you've never tried instant prompt, haven't
|
||||
# seen the warning, or if you are unsure what this all means.
|
||||
typeset -g POWERLEVEL9K_INSTANT_PROMPT=verbose
|
||||
|
||||
# Hot reload allows you to change POWERLEVEL9K options after Powerlevel10k has been initialized.
|
||||
# For example, you can type POWERLEVEL9K_BACKGROUND=red and see your prompt turn red. Hot reload
|
||||
# can slow down prompt by 1-2 milliseconds, so it's better to keep it turned off unless you
|
||||
# really need it.
|
||||
typeset -g POWERLEVEL9K_DISABLE_HOT_RELOAD=true
|
||||
|
||||
# If p10k is already loaded, reload configuration.
|
||||
# This works even with POWERLEVEL9K_DISABLE_HOT_RELOAD=true.
|
||||
(( ! $+functions[p10k] )) || p10k reload
|
||||
}
|
||||
|
||||
# Tell `p10k configure` which file it should overwrite.
|
||||
typeset -g POWERLEVEL9K_CONFIG_FILE=${${(%):-%x}:a}
|
||||
|
||||
(( ${#p10k_config_opts} )) && setopt ${p10k_config_opts[@]}
|
||||
'builtin' 'unset' 'p10k_config_opts'
|
||||
@@ -0,0 +1,126 @@
|
||||
# If you come from bash you might have to change your $PATH.
|
||||
# export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
|
||||
# Path to your Oh My Zsh installation.
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
export FZF_DEFAULT_OPTS=" \
|
||||
--color=bg+:#363A4F,bg:#24273A,spinner:#F4DBD6,hl:#ED8796 \
|
||||
--color=fg:#CAD3F5,header:#ED8796,info:#C6A0F6,pointer:#F4DBD6 \
|
||||
--color=marker:#B7BDF8,fg+:#CAD3F5,prompt:#C6A0F6,hl+:#ED8796 \
|
||||
--color=selected-bg:#494D64 \
|
||||
--color=border:#6E738D,label:#CAD3F5"
|
||||
|
||||
# Set name of the theme to load --- if set to "random", it will
|
||||
# load a random theme each time Oh My Zsh is loaded, in which case,
|
||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||
ZSH_THEME="robbyrussell"
|
||||
|
||||
# Set list of themes to pick from when loading at random
|
||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||
# a theme from this variable instead of looking in $ZSH/themes/
|
||||
# If set to an empty array, this variable will have no effect.
|
||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||
|
||||
# Uncomment the following line to use case-sensitive completion.
|
||||
# CASE_SENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Uncomment one of the following lines to change the auto-update behavior
|
||||
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||
|
||||
# Uncomment the following line to change how often to auto-update (in days).
|
||||
# zstyle ':omz:update' frequency 13
|
||||
|
||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||
|
||||
# Uncomment the following line to disable colors in ls.
|
||||
# DISABLE_LS_COLORS="true"
|
||||
|
||||
# Uncomment the following line to disable auto-setting terminal title.
|
||||
# DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to enable command auto-correction.
|
||||
# ENABLE_CORRECTION="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# You can also set it to another string to have that shown instead of the default red dots.
|
||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||
# COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Uncomment the following line if you want to disable marking untracked files
|
||||
# under VCS as dirty. This makes repository status check for large repositories
|
||||
# much, much faster.
|
||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# Uncomment the following line if you want to change the command execution time
|
||||
# stamp shown in the history command output.
|
||||
# You can set one of the optional three formats:
|
||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||
# or set a custom format using the strftime function format specifications,
|
||||
# see 'man strftime' for details.
|
||||
# HIST_STAMPS="mm/dd/yyyy"
|
||||
|
||||
# Would you like to use another custom folder than $ZSH/custom?
|
||||
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||
|
||||
# Which plugins would you like to load?
|
||||
# Standard plugins can be found in $ZSH/plugins/
|
||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
# Add wisely, as too many plugins slow down shell startup.
|
||||
plugins=(
|
||||
git
|
||||
fast-syntax-highlighting
|
||||
zsh-autosuggestions
|
||||
)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# User configuration
|
||||
|
||||
# export MANPATH="/usr/local/man:$MANPATH"
|
||||
|
||||
# You may need to manually set your language environment
|
||||
# export LANG=en_US.UTF-8
|
||||
|
||||
# Preferred editor for local and remote sessions
|
||||
# if [[ -n $SSH_CONNECTION ]]; then
|
||||
# export EDITOR='vim'
|
||||
# else
|
||||
# export EDITOR='nvim'
|
||||
# fi
|
||||
|
||||
source ~/.config/zsh/config
|
||||
|
||||
export EDITOR="nvim"
|
||||
|
||||
# GPG Key - uncommunt if needed
|
||||
export GPG_TTY=$(tty)
|
||||
|
||||
# Compilation flags
|
||||
# export ARCHFLAGS="-arch $(uname -m)"
|
||||
|
||||
# Set personal aliases, overriding those provided by Oh My Zsh libs,
|
||||
# plugins, and themes. Aliases can be placed here, though Oh My Zsh
|
||||
# users are encouraged to define aliases within a top-level file in
|
||||
# the $ZSH_CUSTOM folder, with .zsh extension. Examples:
|
||||
# - $ZSH_CUSTOM/aliases.zsh
|
||||
# - $ZSH_CUSTOM/macos.zsh
|
||||
# For a full list of active aliases, run `alias`.
|
||||
#
|
||||
# Example aliases
|
||||
# alias zshconfig="mate ~/.zshrc"
|
||||
|
||||
source ~/.config/zsh/aliases
|
||||
|
||||
eval "$(zoxide init --cmd cd zsh)"
|
||||
eval "$(~/.local/bin/mise activate zsh --shims)"
|
||||
@@ -1,15 +1,61 @@
|
||||
# Dotfiles
|
||||
🏠 - Personal Dotfiles (Managed by GNU Stow)
|
||||
|
||||
## Arch
|
||||
[install here](https://github.com/Thomas-Philippot/dotfiles/tree/arch)
|
||||

|
||||

|
||||

|
||||
|
||||
### Specs
|
||||
- Azerty Keyboard layout and french system language.
|
||||
- Desktop environment. (no battery, wifi or brightness controls)
|
||||
|
||||
## Ubuntu 24.04
|
||||
[install here](https://github.com/Thomas-Philippot/dotfiles/tree/ubuntu-24)
|
||||
### Specs
|
||||
- Us keyboard layout and English system language.
|
||||
- Laptop environment. (battery, wifi and brightness controls)
|
||||
## Overview
|
||||
|
||||
- **DE**: [Hyprland](https://hyprland.com)
|
||||
- **OS**: [Fedora Linux](https://fedoraproject.org/fr/)
|
||||
- **Shell**: ZSH
|
||||
- **Framework**: [oh-my-zsh](https://ohmyz.sh/)
|
||||
- **Prompt**: [p10k](https://github.com/romkatv/powerlevel10k)
|
||||
- **Applications**:
|
||||
- **Spotify**: [Spicetify](https://spicetify.app/)
|
||||
- **Discord**: [vesktop](https://vesktop.dev)
|
||||
- **Terminal**: [kitty](https://github.com/kovidgoyal/kitty)
|
||||
- **Editor**: [Neovim](https://github.com/neovim/neovim/) (using [LazyNvim](https://www.lazyvim.org/) configuration)
|
||||
- **Browser**: [Zen](https://zen-browser.app/)
|
||||
- **Fonts**: Jetbrains Mono, Fira Code Mono [Nerd Font](https://www.nerdfonts.com/)
|
||||
- **Icons**:
|
||||
- **Cursor**: [Catppuccin Cursor](https://github.com/catppuccin/cursors), [Phinger Cursors](https://github.com/phisch/phinger-cursors)
|
||||
- **Colorscheme**: [Catppuccin](https://github.com/catppuccin/catppuccin) Dark : Macchiato / Light : Latte
|
||||
- **Keyboard Layout**: FR-fr (AZERTY)
|
||||
- **System Language**: English
|
||||
|
||||
## Installation
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- [Stow](https://www.gnu.org/software/stow/)
|
||||
- [Git](https://git-scm.com)
|
||||
- [Zoxide](https://github.com/ajeetdsouza/zoxide)
|
||||
- [Eza](https://eza.rocks)
|
||||
- [Hyprshot](https://github.com/Gustash/hyprshot)
|
||||
- [Noctalia](https://noctalia.dev)
|
||||
- [wl-clipboard](https://github.com/bugaevc/wl-clipboard)
|
||||
|
||||
clone the repo into your `$HOME` folder and let stow do its magic !
|
||||
|
||||
````
|
||||
git clone https://github.com/Thomas-Philippot/dotfiles
|
||||
cd dotfiles
|
||||
stow .
|
||||
``````
|
||||
|
||||
all the files should now be simlinked to your $HOME folder
|
||||
|
||||
### Theme switcher
|
||||
|
||||
user the <kbd>SUPER</kbd> + <kbd>T</kbd> shortcut to switch between light and dark theme
|
||||
|
||||
### Issues
|
||||
|
||||
bat might not apply the catppuccin theme at launch, because you need to rebuild it's cache
|
||||
|
||||
```
|
||||
bat cache --build
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user