Compare commits

...

6 Commits

Author SHA1 Message Date
1b11595fb3 hyprland: Start eww on buran 2024-05-07 23:00:24 +02:00
3fc49a7491 nvim: Add bindings for telescope lsp stuff 2024-05-07 22:59:17 +02:00
34ee591b48 Make alacritty more transparent 2024-05-07 22:58:29 +02:00
b13ab1ee86 Change wallpaper 2024-05-07 22:55:21 +02:00
9ea4271925 s/findex/fuzzel 2024-05-07 22:54:56 +02:00
0867bbae0f Improve eww bar 2024-05-07 22:54:24 +02:00
8 changed files with 125 additions and 93 deletions

View File

@ -367,7 +367,7 @@ program = "nu"
{% if demo %} {% if demo %}
opacity = 1.0 opacity = 1.0
{% else %} {% else %}
opacity = 0.95 opacity = 0.85
{% end %} {% end %}
[window.dimensions] [window.dimensions]

View File

@ -1,36 +1,26 @@
$black: #1D2021; //$text: wheat;
$black1: #282828; $text: #f6daa8;
$white: #FBF1C7; $highlight1: #4e8172;
$grey: #A89984; $highlight2: #679a8b;
$blue: #458588; $background: #1d2021;
$cyan: #8EC07C; $background: #23231b;
$pink: #D3869B;
$yellow: #FABD2F;
$purple: #B12686;
$teal: #8EC07C;
$darkteal: #689D6A;
$green: #B8BB26;
$orange: #FE8019;
$red: #FB4934;
$bluealt: $black1;
$blackdark: $black;
*{ *{
all: unset; all: unset;
font-family: "Sauce Code Pro Nerd Font Mono"; font-family: "Sauce Code Pro Nerd Font Mono";
color: $text;
} }
window { window {
background: $blackdark; background: rgba($background, 0.85);
border-radius: 15px; border-radius: 15px;
} }
.workspace { .workspace {
font-size: 18px; font-size: 18px;
font-weight: 300; font-weight: 300;
border: solid wheat 1px; border: solid $highlight1 1px;
background: black; background: black;
color: wheat;
border-radius: 30px; border-radius: 30px;
padding-top: 3px; padding-top: 3px;
padding-bottom: 5px; padding-bottom: 5px;
@ -42,7 +32,8 @@ window {
} }
.workspace.active { .workspace.active {
background: wheat; font-weight: 600;
background: $text;
color: black; color: black;
} }
@ -51,6 +42,18 @@ window {
margin-bottom: 10px; margin-bottom: 10px;
} }
.boxed {
border: solid $highlight1 2px;
border-top: solid $highlight1 1px;
border-bottom: dotted $highlight1 6px;
color: $highlight1;
background: black;
border-radius: 30px;
padding-top: 0.5em;
padding-bottom: 0.3em;
box-shadow: 0 0px 5px 1px #06060b;
}
scale trough { scale trough {
all: unset; all: unset;
background-color: #22242b; background-color: #22242b;
@ -66,17 +69,23 @@ scale trough {
} }
.volume trough highlight { .volume trough highlight {
background-image: linear-gradient(to right, #6b4f73 30%, #5b3f63 50%, #5b3f63 100% *50); background-image: linear-gradient(to right, $highlight2 30%, $highlight1 50%, $highlight1 100% *50);
border-radius: 10px; border-radius: 10px;
} }
.battery {
margin-top: 20px;
padding-bottom: 0.6em;
}
.vpn { .vpn {
font-size: 40px; font-size: 40px;
color: wheat; color: $highlight1;
border-bottom: dotted green 6px; border-color: green;
margin: 2px; margin: 2px;
margin-top: 20px; margin-top: 20px;
transition: border-color 1s; transition: border-color 1s;
transition: all 1s;
} }
.vpn label { .vpn label {
@ -84,6 +93,10 @@ scale trough {
margin-bottom: -5px; margin-bottom: -5px;
} }
.vpn:hover {
border-top: dotted 6px;
}
.vpn.connecting { .vpn.connecting {
border-color: orange; border-color: orange;
} }
@ -95,7 +108,7 @@ scale trough {
.clock { .clock {
font-size: 30px; font-size: 30px;
font-weight: 400; font-weight: 400;
color: wheat; color: $highlight1;
margin-top: 20px; margin-top: 20px;
margin-bottom: 20px; margin-bottom: 20px;
} }

View File

@ -1,67 +1,89 @@
(defwindow bar (defwindow bar0
:monitor 0 :monitor 0
:geometry (geometry :y "0%" :geometry (geometry :y "0%"
:x "10px" :x "3px"
:height "90%" :height "70%"
:width "50px" :width "50px"
:anchor "center left") :anchor "center left")
:stacking "fg" :stacking "fg"
:exclusive true :exclusive true
(box :orientation "v" (box :orientation "v"
(workspaces) (workspaces)
(bottom) (bottom)
)) ))
(defwindow bar1
:monitor 1
:geometry (geometry :y "0%"
:x "3px"
:height "70%"
:width "50px"
:anchor "center left")
:stacking "fg"
:exclusive true
(box :orientation "v"
(workspaces)
(bottom)
))
(defwidget bottom [] (defwidget bottom []
(box :orientation "v" (box :orientation "v"
:space-evenly false :space-evenly false
:valign "end" :valign "end"
(speaker) (speaker)
(vpn) (vpn)
(clock) (battery)
(clock)
)) ))
(defwidget workspaces [] (defwidget workspaces []
(box :orientation "v" (box :orientation "v"
:valign "start" :valign "start"
:class "workspaces" :class "workspaces"
(for workspace in workspaces_json (for workspace in workspaces_json
(label :class 'workspace ${workspace.class}' :text '${workspace.id}') (label :class 'workspace ${workspace.class}' :text '${workspace.id}')
) )))
))
(defwidget speaker [] (defwidget speaker []
(box (box :class "volume"
:class "volume" :orientation "v"
:orientation "v" :valign "end"
:valign "end" (scale :orientation "v"
(scale :flipped true
:orientation "v" :min 0
:flipped true :max 100
:min 0 :value volume_out
:max 100 :onchange "pamixer --set-volume {} && volshow")
:value volume_out ))
:onchange "pamixer --set-volume {} && volshow")
))
(defwidget vpn [] (defwidget vpn []
(button (button :valign "end"
:valign "end" :class "vpn boxed ${vpn_status.class}"
:class "vpn ${vpn_status.class}" :onclick "${vpn_status.on_click}"
:onclick "${vpn_status.on_click}" (label :text "${vpn_status.icon}")
(label :text '${vpn_status.icon}') ))
))
(defwidget battery []
(box :orientation "v"
:valign "end"
:class "battery boxed"
(label :text "BAT")
(label :text "${current_battery}%")
))
(defwidget clock [] (defwidget clock []
(box :orientation "v" (box :orientation "v"
:valign "end" :valign "end"
:class "clock" :class "clock boxed"
(label :text current_hour) (label :text current_hour)
(label :text current_minute) (label :text current_minute)
)) ))
(defpoll workspaces_json :interval "1s" "eww-workspaces") (defpoll workspaces_json :interval "1s" "eww-workspaces")
(defpoll volume_out :interval "1s" "pamixer --get-volume") (defpoll volume_out :interval "1s" "pamixer --get-volume")
(defpoll vpn_status :interval "1s" "mullvad-status") (defpoll vpn_status :interval "1s" "mullvad-status")
(defpoll current_minute :interval "1s" "date +%M") (defpoll current_minute :interval "1s" "date +%M")
(defpoll current_hour :interval "1s" "date +%H") (defpoll current_hour :interval "1s" "date +%H")
(defpoll current_day :interval "60s" "date +%d")
(defpoll current_month :interval "60s" "date +%b")
(defpoll current_battery :interval "15s" "cat /sys/class/power_supply/BAT0/capacity")

View File

@ -140,7 +140,7 @@ bind = $mainMod_SHIFT, Q, killactive,
bind = $mainMod_SHIFT, Plus, exec, screenlock bind = $mainMod_SHIFT, Plus, exec, screenlock
#bind = $mainMod, E, exec, dolphin #bind = $mainMod, E, exec, dolphin
bind = $mainMod, Space, togglefloating, bind = $mainMod, Space, togglefloating,
bind = $mainMod, D, exec, trigger-findex bind = $mainMod, D, exec, fuzzel
bind = $mainMod, P, pseudo, # dwindle bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, E, togglesplit, # dwindle bind = $mainMod, E, togglesplit, # dwindle
bind = $mainMod, F, fullscreen, bind = $mainMod, F, fullscreen,
@ -222,12 +222,7 @@ monitor=DP-2,3840x1600@59.99400,0x0,1.25
exec-once=hyprpaper exec-once=hyprpaper
exec-once=dunst exec-once=dunst
{% if hostname == "buran" %}
exec-once=waybar
{% else %}
exec-once=eww daemon exec-once=eww daemon
exec-once=eww open bar exec-once=eww open bar0
{% end %}
exec-once=findex-daemon
exec-once=nextcloud exec-once=nextcloud

View File

@ -1,2 +1,2 @@
preload = ~/.config/wallpapers/2880x1800/city.jpg preload = ~/.config/wallpapers/3840x2160/bladerunner.jpg
wallpaper = ,~/.config/wallpapers/2880x1800/city.jpg wallpaper = ,~/.config/wallpapers/3840x2160/bladerunner.jpg

View File

@ -1,3 +1,4 @@
-- todo: whichkey
local telescope = require('telescope.builtin') local telescope = require('telescope.builtin')
vim.keymap.set('n', '<leader>ff', telescope.find_files, {}) vim.keymap.set('n', '<leader>ff', telescope.find_files, {})
vim.keymap.set('n', '<leader>fg', telescope.live_grep, {}) vim.keymap.set('n', '<leader>fg', telescope.live_grep, {})
@ -25,11 +26,12 @@ vim.api.nvim_create_autocmd('LspAttach', {
-- Buffer local mappings. -- Buffer local mappings.
-- See `:help vim.lsp.*` for documentation on any of the below functions -- See `:help vim.lsp.*` for documentation on any of the below functions
local opts = { buffer = ev.buf } local opts = { buffer = ev.buf }
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, opts) vim.keymap.set('n', '<leader>ld', telescope.lsp_definitions, opts)
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, opts) vim.keymap.set('n', '<leader>lr', telescope.lsp_references, opts)
vim.keymap.set('n', 'gr', vim.lsp.buf.references, opts) vim.keymap.set('n', '<leader>li', telescope.lsp_implementations, opts)
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, opts) vim.keymap.set('n', '<leader>lt', telescope.lsp_type_definitions, opts)
vim.keymap.set('n', 'gt', vim.lsp.buf.type_definition, opts) vim.keymap.set('n', '<leader>le', telescope.diagnostics, opts)
vim.keymap.set('n', '<leader>ls', telescope.lsp_workspace_symbols, opts)
vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts) vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts)
vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, opts) vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, opts)
vim.keymap.set('n', '<leader>wa', vim.lsp.buf.add_workspace_folder, opts) vim.keymap.set('n', '<leader>wa', vim.lsp.buf.add_workspace_folder, opts)

View File

Before

Width:  |  Height:  |  Size: 418 KiB

After

Width:  |  Height:  |  Size: 418 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 315 KiB