my dotfiles for arch

Compare changes

Choose any two refs to compare.

+345 -795
+1 -1
dot_gitconfig
··· 1 1 [user] 2 2 name = Thomas G. Lopes 3 - email = thomasgl@pm.me 3 + email = 26071571+TGlide@users.noreply.github.com 4 4 [pull] 5 5 rebase = true 6 6 [init]
-132
private_dot_config/DankMaterialShell/firefox.css
··· 1 - @media -moz-pref("userChrome.theme-material") { 2 - :root { 3 - --md-sys-color-primary: #2f628c; 4 - --md-sys-color-surface-tint: #2f628c; 5 - --md-sys-color-on-primary: #ffffff; 6 - --md-sys-color-primary-container: #cee5ff; 7 - --md-sys-color-on-primary-container: #001d33; 8 - --md-sys-color-secondary: #51606f; 9 - --md-sys-color-on-secondary: #ffffff; 10 - --md-sys-color-secondary-container: #d5e4f7; 11 - --md-sys-color-on-secondary-container: #0e1d2a; 12 - --md-sys-color-tertiary: #68587a; 13 - --md-sys-color-on-tertiary: #ffffff; 14 - --md-sys-color-tertiary-container: #efdbff; 15 - --md-sys-color-on-tertiary-container: #231533; 16 - --md-sys-color-error: #ba1a1a; 17 - --md-sys-color-on-error: #ffffff; 18 - --md-sys-color-error-container: #ffdad6; 19 - --md-sys-color-on-error-container: #410002; 20 - --md-sys-color-background: #f7f9ff; 21 - --md-sys-color-on-background: #181c20; 22 - --md-sys-color-surface: #f7f9ff; 23 - --md-sys-color-on-surface: #181c20; 24 - --md-sys-color-surface-variant: #dee3eb; 25 - --md-sys-color-on-surface-variant: #42474e; 26 - --md-sys-color-outline: #72777f; 27 - --md-sys-color-outline-variant: #c2c7cf; 28 - --md-sys-color-shadow: #000000; 29 - --md-sys-color-scrim: #000000; 30 - --md-sys-color-inverse-surface: #2d3135; 31 - --md-sys-color-inverse-on-surface: #eff1f6; 32 - --md-sys-color-inverse-primary: #9bcbfb; 33 - --md-sys-color-primary-fixed: #cee5ff; 34 - --md-sys-color-on-primary-fixed: #001d33; 35 - --md-sys-color-primary-fixed-dim: #9bcbfb; 36 - --md-sys-color-on-primary-fixed-variant: #0f4a73; 37 - --md-sys-color-secondary-fixed: #d5e4f7; 38 - --md-sys-color-on-secondary-fixed: #0e1d2a; 39 - --md-sys-color-secondary-fixed-dim: #b9c8da; 40 - --md-sys-color-on-secondary-fixed-variant: #3a4857; 41 - --md-sys-color-tertiary-fixed: #efdbff; 42 - --md-sys-color-on-tertiary-fixed: #231533; 43 - --md-sys-color-tertiary-fixed-dim: #d3bfe6; 44 - --md-sys-color-on-tertiary-fixed-variant: #504061; 45 - --md-sys-color-surface-dim: #d8dae0; 46 - --md-sys-color-surface-bright: #f7f9ff; 47 - --md-sys-color-surface-container-lowest: #ffffff; 48 - --md-sys-color-surface-container-low: #f1f3f9; 49 - --md-sys-color-surface-container: #eceef3; 50 - --md-sys-color-surface-container-high: #e6e8ee; 51 - --md-sys-color-surface-container-highest: #e0e2e8; 52 - 53 - --m3-radius: 12px; 54 - --m3-radius-sm: 10px; 55 - --m3-elev-0: none; 56 - --m3-elev-1: 0 1px 2px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.06); 57 - --m3-elev-2: 0 2px 6px rgba(0,0,0,.10), 0 1px 3px rgba(0,0,0,.06); 58 - 59 - --tab-height: 34px; 60 - --urlbar-height: 38px; 61 - 62 - --state-hover: color-mix(in srgb, var(--md-sys-color-on-surface) 8%, transparent); 63 - --state-press: color-mix(in srgb, var(--md-sys-color-on-surface) 12%, transparent); 64 - 65 - --focus-ring: 0 0 0 2px color-mix(in srgb, var(--md-sys-color-primary) 70%, transparent); 66 - } 67 - } 68 - 69 - @media (prefers-color-scheme: dark) { 70 - :root { 71 - --md-sys-color-primary: #9bcbfb; 72 - --md-sys-color-surface-tint: #9bcbfb; 73 - --md-sys-color-on-primary: #003353; 74 - --md-sys-color-primary-container: #0f4a73; 75 - --md-sys-color-on-primary-container: #cee5ff; 76 - --md-sys-color-secondary: #b9c8da; 77 - --md-sys-color-on-secondary: #243240; 78 - --md-sys-color-secondary-container: #3a4857; 79 - --md-sys-color-on-secondary-container: #d5e4f7; 80 - --md-sys-color-tertiary: #d3bfe6; 81 - --md-sys-color-on-tertiary: #392a49; 82 - --md-sys-color-tertiary-container: #504061; 83 - --md-sys-color-on-tertiary-container: #efdbff; 84 - --md-sys-color-error: #ffb4ab; 85 - --md-sys-color-on-error: #690005; 86 - --md-sys-color-error-container: #93000a; 87 - --md-sys-color-on-error-container: #ffdad6; 88 - --md-sys-color-background: #101418; 89 - --md-sys-color-on-background: #e0e2e8; 90 - --md-sys-color-surface: #101418; 91 - --md-sys-color-on-surface: #e0e2e8; 92 - --md-sys-color-surface-variant: #42474e; 93 - --md-sys-color-on-surface-variant: #c2c7cf; 94 - --md-sys-color-outline: #8c9198; 95 - --md-sys-color-outline-variant: #42474e; 96 - --md-sys-color-shadow: #000000; 97 - --md-sys-color-scrim: #000000; 98 - --md-sys-color-inverse-surface: #e0e2e8; 99 - --md-sys-color-inverse-on-surface: #2d3135; 100 - --md-sys-color-inverse-primary: #2f628c; 101 - --md-sys-color-primary-fixed: #cee5ff; 102 - --md-sys-color-on-primary-fixed: #001d33; 103 - --md-sys-color-primary-fixed-dim: #9bcbfb; 104 - --md-sys-color-on-primary-fixed-variant: #0f4a73; 105 - --md-sys-color-secondary-fixed: #d5e4f7; 106 - --md-sys-color-on-secondary-fixed: #0e1d2a; 107 - --md-sys-color-secondary-fixed-dim: #b9c8da; 108 - --md-sys-color-on-secondary-fixed-variant: #3a4857; 109 - --md-sys-color-tertiary-fixed: #efdbff; 110 - --md-sys-color-on-tertiary-fixed: #231533; 111 - --md-sys-color-tertiary-fixed-dim: #d3bfe6; 112 - --md-sys-color-on-tertiary-fixed-variant: #504061; 113 - --md-sys-color-surface-dim: #101418; 114 - --md-sys-color-surface-bright: #36393e; 115 - --md-sys-color-surface-container-lowest: #0b0f12; 116 - --md-sys-color-surface-container-low: #181c20; 117 - --md-sys-color-surface-container: #1c2024; 118 - --md-sys-color-surface-container-high: #272a2f; 119 - --md-sys-color-surface-container-highest: #323539; 120 - 121 - --m3-elev-1: 0 1px 2px rgba(0,0,0,.50), 0 1px 3px rgba(0,0,0,.35); 122 - --m3-elev-2: 0 4px 10px rgba(0,0,0,.55), 0 1px 3px rgba(0,0,0,.35); 123 - 124 - --state-hover: color-mix(in srgb, var(--md-sys-color-on-surface) 6%, transparent); 125 - --state-press: color-mix(in srgb, var(--md-sys-color-on-surface) 10%, transparent); 126 - } 127 - } 128 - 129 - /* idk if this even works, but the suggestion in the material updated readme bricks symbols no matter how many fallbacks I add */ 130 - :root { 131 - font-family: system-ui, "Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important; 132 - }
-231
private_dot_config/DankMaterialShell/settings.json
··· 1 - { 2 - "currentThemeName": "dynamic", 3 - "customThemeFile": "", 4 - "matugenScheme": "scheme-tonal-spot", 5 - "runUserMatugenTemplates": false, 6 - "matugenTargetMonitor": "", 7 - "dankBarTransparency": 0, 8 - "dankBarWidgetTransparency": 1, 9 - "popupTransparency": 0.92, 10 - "dockTransparency": 1, 11 - "use24HourClock": true, 12 - "showSeconds": false, 13 - "useFahrenheit": false, 14 - "nightModeEnabled": false, 15 - "weatherLocation": "São José de São Lázaro, 4715-037", 16 - "weatherCoordinates": "41.5452457,-8.4202993", 17 - "useAutoLocation": false, 18 - "weatherEnabled": true, 19 - "showLauncherButton": true, 20 - "showWorkspaceSwitcher": true, 21 - "showFocusedWindow": true, 22 - "showWeather": true, 23 - "showMusic": true, 24 - "showClipboard": true, 25 - "showCpuUsage": true, 26 - "showMemUsage": true, 27 - "showCpuTemp": true, 28 - "showGpuTemp": true, 29 - "selectedGpuIndex": 0, 30 - "enabledGpuPciIds": [], 31 - "showSystemTray": true, 32 - "showClock": true, 33 - "showNotificationButton": true, 34 - "showBattery": true, 35 - "showControlCenterButton": true, 36 - "controlCenterShowNetworkIcon": true, 37 - "controlCenterShowBluetoothIcon": true, 38 - "controlCenterShowAudioIcon": true, 39 - "controlCenterWidgets": [ 40 - { 41 - "id": "volumeSlider", 42 - "enabled": true, 43 - "width": 50 44 - }, 45 - { 46 - "id": "brightnessSlider", 47 - "enabled": true, 48 - "width": 50 49 - }, 50 - { 51 - "id": "wifi", 52 - "enabled": true, 53 - "width": 50 54 - }, 55 - { 56 - "id": "bluetooth", 57 - "enabled": true, 58 - "width": 50 59 - }, 60 - { 61 - "id": "audioOutput", 62 - "enabled": true, 63 - "width": 50 64 - }, 65 - { 66 - "id": "audioInput", 67 - "enabled": true, 68 - "width": 50 69 - }, 70 - { 71 - "id": "nightMode", 72 - "enabled": true, 73 - "width": 50 74 - }, 75 - { 76 - "id": "darkMode", 77 - "enabled": true, 78 - "width": 50 79 - } 80 - ], 81 - "showWorkspaceIndex": true, 82 - "workspaceScrolling": false, 83 - "showWorkspacePadding": false, 84 - "showWorkspaceApps": false, 85 - "maxWorkspaceIcons": 3, 86 - "workspacesPerMonitor": true, 87 - "dwlShowAllTags": false, 88 - "workspaceNameIcons": {}, 89 - "waveProgressEnabled": true, 90 - "clockCompactMode": false, 91 - "focusedWindowCompactMode": false, 92 - "runningAppsCompactMode": true, 93 - "keyboardLayoutNameCompactMode": true, 94 - "runningAppsCurrentWorkspace": false, 95 - "runningAppsGroupByApp": false, 96 - "clockDateFormat": "d MMM yyyy", 97 - "lockDateFormat": "", 98 - "mediaSize": 1, 99 - "dankBarLeftWidgets": [ 100 - { 101 - "id": "launcherButton", 102 - "enabled": true 103 - }, 104 - { 105 - "id": "workspaceSwitcher", 106 - "enabled": true 107 - }, 108 - { 109 - "id": "focusedWindow", 110 - "enabled": true 111 - } 112 - ], 113 - "dankBarCenterWidgets": [ 114 - "music", 115 - "clock", 116 - "weather" 117 - ], 118 - "dankBarRightWidgets": [ 119 - "systemTray", 120 - "clipboard", 121 - "cpuUsage", 122 - "memUsage", 123 - "notificationButton", 124 - "battery", 125 - "controlCenterButton" 126 - ], 127 - "appLauncherViewMode": "list", 128 - "spotlightModalViewMode": "list", 129 - "sortAppsAlphabetically": false, 130 - "networkPreference": "auto", 131 - "vpnLastConnected": "", 132 - "iconTheme": "System Default", 133 - "launcherLogoMode": "apps", 134 - "launcherLogoCustomPath": "", 135 - "launcherLogoColorOverride": "", 136 - "launcherLogoColorInvertOnMode": false, 137 - "launcherLogoBrightness": 1, 138 - "launcherLogoContrast": 0, 139 - "launcherLogoSizeOffset": 0, 140 - "fontFamily": "FantasqueSansM Nerd Font", 141 - "monoFontFamily": "Fira Code", 142 - "fontWeight": 500, 143 - "fontScale": 1.05, 144 - "dankBarFontScale": 1, 145 - "notepadUseMonospace": true, 146 - "notepadFontFamily": "", 147 - "notepadFontSize": 14, 148 - "notepadShowLineNumbers": false, 149 - "notepadTransparencyOverride": -1, 150 - "notepadLastCustomTransparency": 0.7, 151 - "soundsEnabled": true, 152 - "useSystemSoundTheme": false, 153 - "soundNewNotification": true, 154 - "soundVolumeChanged": true, 155 - "soundPluggedIn": true, 156 - "gtkThemingEnabled": false, 157 - "qtThemingEnabled": false, 158 - "syncModeWithPortal": true, 159 - "showDock": false, 160 - "dockAutoHide": false, 161 - "dockGroupByApp": false, 162 - "dockOpenOnOverview": false, 163 - "dockPosition": 1, 164 - "dockSpacing": 4, 165 - "dockBottomGap": 0, 166 - "dockIconSize": 40, 167 - "dockIndicatorStyle": "circle", 168 - "cornerRadius": 8, 169 - "notificationOverlayEnabled": false, 170 - "dankBarAutoHide": false, 171 - "dankBarOpenOnOverview": false, 172 - "dankBarVisible": true, 173 - "dankBarSpacing": 0, 174 - "dankBarBottomGap": -4, 175 - "dankBarInnerPadding": 8, 176 - "dankBarSquareCorners": false, 177 - "dankBarNoBackground": false, 178 - "dankBarGothCornersEnabled": false, 179 - "dankBarBorderEnabled": false, 180 - "dankBarBorderColor": "surfaceText", 181 - "dankBarBorderOpacity": 1, 182 - "dankBarBorderThickness": 1, 183 - "popupGapsAuto": true, 184 - "popupGapsManual": 4, 185 - "dankBarPosition": 0, 186 - "lockScreenShowPowerActions": true, 187 - "enableFprint": false, 188 - "maxFprintTries": 3, 189 - "hideBrightnessSlider": true, 190 - "widgetBackgroundColor": "sc", 191 - "surfaceBase": "s", 192 - "wallpaperFillMode": "Fill", 193 - "blurredWallpaperLayer": false, 194 - "blurWallpaperOnOverview": false, 195 - "notificationTimeoutLow": 5000, 196 - "notificationTimeoutNormal": 5000, 197 - "notificationTimeoutCritical": 0, 198 - "notificationPopupPosition": 0, 199 - "osdAlwaysShowValue": false, 200 - "powerActionConfirm": true, 201 - "customPowerActionLock": "", 202 - "customPowerActionLogout": "", 203 - "customPowerActionSuspend": "", 204 - "customPowerActionHibernate": "", 205 - "customPowerActionReboot": "", 206 - "customPowerActionPowerOff": "", 207 - "updaterUseCustomCommand": false, 208 - "updaterCustomCommand": "", 209 - "updaterTerminalAdditionalParams": "", 210 - "screenPreferences": { 211 - "wallpaper": [ 212 - "all" 213 - ] 214 - }, 215 - "showOnLastDisplay": {}, 216 - "animationSpeed": 2, 217 - "customAnimationDuration": 500, 218 - "acMonitorTimeout": 7200, 219 - "acLockTimeout": 3600, 220 - "acSuspendTimeout": 0, 221 - "acHibernateTimeout": 0, 222 - "batteryMonitorTimeout": 0, 223 - "batteryLockTimeout": 0, 224 - "batterySuspendTimeout": 0, 225 - "batteryHibernateTimeout": 0, 226 - "lockBeforeSuspend": false, 227 - "loginctlLockIntegration": true, 228 - "launchPrefix": "", 229 - "brightnessDevicePins": {}, 230 - "configVersion": 1 231 - }
+1 -2
private_dot_config/ghostty/config
··· 1 + theme = rose-pine-moon 1 2 theme = matugen 2 3 3 - background-opacity = 0.95 4 - background-blur = true 5 4 font-family = "FantasqueSansM Nerd Font" 6 5 font-size = 14 7 6
-3
private_dot_config/jjui/config.toml
··· 1 - [ui.theme] 2 - dark = "matugen" 3 - light = "matugen"
+12 -17
private_dot_config/matugen/config.toml
··· 1 - [config] 1 + [config.wallpaper] 2 + command = "dms" 3 + arguments = ["ipc", "call", "wallpaper", "set"] 4 + set = true 2 5 3 6 [templates.ghostty] 4 - input_path = '~/.config/matugen/templates/ghostty-theme' 7 + input_path = './templates/ghostty-theme' 5 8 output_path = '~/.config/ghostty/themes/matugen' 6 9 post_hook = 'pkill -SIGUSR2 ghostty' 7 10 8 11 [templates.gtk3] 9 - input_path = '~/.config/matugen/templates/gtk-colors.css' 12 + input_path = './templates/gtk-colors.css' 10 13 output_path = '~/.config/gtk-3.0/colors.css' 11 14 12 15 [templates.gtk4] 13 - input_path = '~/.config/matugen/templates/gtk-colors.css' 16 + input_path = './templates/gtk-colors.css' 14 17 output_path = '~/.config/gtk-4.0/colors.css' 15 18 16 19 [templates.starship] 17 - input_path = '~/.config/matugen/templates/starship-colors.toml' 20 + input_path = './templates/starship-colors.toml' 18 21 output_path = '~/.config/starship.toml' 19 22 20 23 [templates.yazi] 21 - input_path = '~/.config/matugen/templates/yazi-theme.toml' 24 + input_path = './templates/yazi-theme.toml' 22 25 output_path = '~/.config/yazi/theme.toml' 23 26 24 27 [templates.qt5ct] 25 - input_path = '~/.config/matugen/templates/qtct-colors.conf' 28 + input_path = './templates/qtct-colors.conf' 26 29 output_path = '~/.config/qt5ct/colors/matugen.conf' 27 30 28 31 [templates.rofi] 29 - input_path = '~/.config/matugen/templates/rofi-colors.rasi' 32 + input_path = './templates/rofi-colors.rasi' 30 33 output_path = '~/.config/rofi/colors/matugen.rasi' 31 34 32 35 [templates.niri] 33 - input_path = '~/.config/matugen/templates/niri-colors.kdl' 36 + input_path = './templates/niri-colors.kdl' 34 37 output_path = '~/.config/niri/colors.kdl' 35 - 36 - [templates.jjui] 37 - input_path = '~/.config/matugen/templates/jjui-theme.toml' 38 - output_path = '~/.config/jjui/themes/matugen.toml' 39 - 40 - [templates.nvim] 41 - input_path = '~/.config/matugen/templates/neovim.lua' 42 - output_path = '~/.config/nvim/lua/plugins/dankcolors.lua'
+1
private_dot_config/matugen/templates/ghostty-theme
··· 1 + 1 2 cursor-color = {{colors.on_surface.default.hex}} 2 3 cursor-text = {{colors.on_surface_variant.default.hex}} 3 4 foreground = {{colors.on_surface.default.hex}}
-51
private_dot_config/matugen/templates/jjui-theme.toml
··· 1 - "text" = { fg = "{{colors.on_surface.default.hex}}", bg = "{{colors.surface.default.hex}}" } 2 - "dimmed" = { fg = "{{colors.on_surface_variant.default.hex}}" } 3 - "selected" = { bg = "{{colors.primary_container.default.hex}}", fg = "{{colors.on_primary_container.default.hex}}" } 4 - "border" = { fg = "{{colors.outline.default.hex}}" } 5 - "title" = { fg = "{{colors.primary.default.hex}}", bold = true } 6 - "shortcut" = { fg = "{{colors.secondary.default.hex}}" } 7 - "matched" = { fg = "{{colors.tertiary.default.hex}}", underline = true } 8 - 9 - "source_marker" = { bg = "{{colors.tertiary_container.default.hex}}", fg = "{{colors.on_tertiary_container.default.hex}}" } 10 - "target_marker" = { bg = "{{colors.error_container.default.hex}}", fg = "{{colors.on_error_container.default.hex}}" } 11 - 12 - "revisions rebase source_marker" = { bold = true } 13 - "revisions rebase target_marker" = { bold = true } 14 - 15 - "status" = { bg = "{{colors.surface_container_high.default.hex}}" } 16 - "status title" = { fg = "{{colors.on_primary.default.hex}}", bg = "{{colors.primary.default.hex}}", bold = true } 17 - "status shortcut" = { fg = "{{colors.secondary.default.hex}}" } 18 - "status dimmed" = { fg = "{{colors.on_surface_variant.default.hex}}" } 19 - 20 - "revset text" = { bold = true } 21 - "revset completion selected" = { bg = "{{colors.primary_container.default.hex}}", fg = "{{colors.on_primary_container.default.hex}}" } 22 - "revset completion matched" = { bold = true } 23 - "revset completion dimmed" = { fg = "{{colors.on_surface_variant.default.hex}}" } 24 - 25 - "revisions selected" = { bold = true } 26 - "oplog selected" = { bold = true } 27 - 28 - "evolog selected" = { bg = "{{colors.secondary_container.default.hex}}", fg = "{{colors.on_secondary_container.default.hex}}", bold = true } 29 - 30 - "help" = { bg = "{{colors.surface_container.default.hex}}" } 31 - "help title" = { fg = "{{colors.primary.default.hex}}", bold = true, underline = true } 32 - "help border" = { fg = "{{colors.outline.default.hex}}" } 33 - 34 - "menu" = { bg = "{{colors.surface_container.default.hex}}" } 35 - "menu title" = { fg = "{{colors.primary.default.hex}}", bold = true } 36 - "menu shortcut" = { fg = "{{colors.secondary.default.hex}}" } 37 - "menu dimmed" = { fg = "{{colors.on_surface_variant.default.hex}}" } 38 - "menu border" = { fg = "{{colors.outline.default.hex}}" } 39 - "menu selected" = { bg = "{{colors.primary_container.default.hex}}", fg = "{{colors.on_primary_container.default.hex}}" } 40 - 41 - "confirmation" = { bg = "{{colors.surface_container.default.hex}}" } 42 - "confirmation text" = { fg = "{{colors.on_surface.default.hex}}" } 43 - "confirmation selected" = { bg = "{{colors.primary_container.default.hex}}", fg = "{{colors.on_primary_container.default.hex}}" } 44 - "confirmation dimmed" = { fg = "{{colors.on_surface_variant.default.hex}}" } 45 - "confirmation border" = { fg = "{{colors.primary.default.hex}}" } 46 - 47 - "undo" = { bg = "{{colors.surface_container.default.hex}}" } 48 - "undo confirmation dimmed" = { fg = "{{colors.on_surface_variant.default.hex}}" } 49 - "undo confirmation selected" = { bg = "{{colors.primary_container.default.hex}}", fg = "{{colors.on_primary_container.default.hex}}" } 50 - 51 - "preview" = { fg = "{{colors.on_surface.default.hex}}" }
-124
private_dot_config/matugen/templates/neovim.lua
··· 1 - -- Matugen-generated palette for use by other plugins 2 - _G.matugen_palette = { 3 - color0 = "{{dank16.color0.default.hex}}", 4 - color1 = "{{dank16.color1.default.hex}}", 5 - color2 = "{{dank16.color2.default.hex}}", 6 - color3 = "{{dank16.color3.default.hex}}", 7 - color4 = "{{dank16.color4.default.hex}}", 8 - color5 = "{{dank16.color5.default.hex}}", 9 - color6 = "{{dank16.color6.default.hex}}", 10 - color7 = "{{dank16.color7.default.hex}}", 11 - color8 = "{{dank16.color8.default.hex}}", 12 - color9 = "{{dank16.color9.default.hex}}", 13 - color10 = "{{dank16.color10.default.hex}}", 14 - color11 = "{{dank16.color11.default.hex}}", 15 - color12 = "{{dank16.color12.default.hex}}", 16 - color13 = "{{dank16.color13.default.hex}}", 17 - color14 = "{{dank16.color14.default.hex}}", 18 - color15 = "{{dank16.color15.default.hex}}", 19 - } 20 - 21 - return { 22 - { 23 - "RRethy/base16-nvim", 24 - priority = 1000, 25 - config = function() 26 - require("base16-colorscheme").setup({ 27 - base00 = "{{dank16.color0.default.hex}}", 28 - base01 = "{{dank16.color0.default.hex}}", 29 - base02 = "{{dank16.color8.default.hex}}", 30 - base03 = "{{dank16.color8.default.hex}}", 31 - base04 = "{{dank16.color7.default.hex}}", 32 - base05 = "{{dank16.color15.default.hex}}", 33 - base06 = "{{dank16.color15.default.hex}}", 34 - base07 = "{{dank16.color15.default.hex}}", 35 - base08 = "{{dank16.color9.default.hex}}", 36 - base09 = "{{dank16.color9.default.hex}}", 37 - base0A = "{{dank16.color12.default.hex}}", 38 - base0B = "{{dank16.color10.default.hex}}", 39 - base0C = "{{dank16.color14.default.hex}}", 40 - base0D = "{{dank16.color12.default.hex}}", 41 - base0E = "{{dank16.color13.default.hex}}", 42 - base0F = "{{dank16.color13.default.hex}}", 43 - }) 44 - 45 - vim.api.nvim_set_hl(0, "Visual", { 46 - bg = "{{dank16.color8.default.hex}}", 47 - fg = "{{dank16.color15.default.hex}}", 48 - bold = true, 49 - }) 50 - vim.api.nvim_set_hl(0, "Statusline", { 51 - bg = "{{dank16.color12.default.hex}}", 52 - fg = "{{dank16.color0.default.hex}}", 53 - }) 54 - vim.api.nvim_set_hl(0, "LineNr", { fg = "{{dank16.color8.default.hex}}" }) 55 - vim.api.nvim_set_hl(0, "CursorLineNr", { fg = "{{dank16.color14.default.hex}}", bold = true }) 56 - 57 - vim.api.nvim_set_hl(0, "Statement", { 58 - fg = "{{dank16.color13.default.hex}}", 59 - bold = true, 60 - }) 61 - vim.api.nvim_set_hl(0, "Keyword", { link = "Statement" }) 62 - vim.api.nvim_set_hl(0, "Repeat", { link = "Statement" }) 63 - vim.api.nvim_set_hl(0, "Conditional", { link = "Statement" }) 64 - 65 - vim.api.nvim_set_hl(0, "Function", { 66 - fg = "{{dank16.color12.default.hex}}", 67 - bold = true, 68 - }) 69 - vim.api.nvim_set_hl(0, "Macro", { 70 - fg = "{{dank16.color12.default.hex}}", 71 - italic = true, 72 - }) 73 - vim.api.nvim_set_hl(0, "@function.macro", { link = "Macro" }) 74 - 75 - vim.api.nvim_set_hl(0, "Type", { 76 - fg = "{{dank16.color14.default.hex}}", 77 - bold = true, 78 - italic = true, 79 - }) 80 - vim.api.nvim_set_hl(0, "Structure", { link = "Type" }) 81 - 82 - vim.api.nvim_set_hl(0, "String", { 83 - fg = "{{dank16.color10.default.hex}}", 84 - italic = true, 85 - }) 86 - 87 - vim.api.nvim_set_hl(0, "Operator", { fg = "{{dank16.color7.default.hex}}" }) 88 - vim.api.nvim_set_hl(0, "Delimiter", { fg = "{{dank16.color7.default.hex}}" }) 89 - vim.api.nvim_set_hl(0, "@punctuation.bracket", { link = "Delimiter" }) 90 - vim.api.nvim_set_hl(0, "@punctuation.delimiter", { link = "Delimiter" }) 91 - 92 - vim.api.nvim_set_hl(0, "Comment", { 93 - fg = "{{dank16.color8.default.hex}}", 94 - italic = true, 95 - }) 96 - 97 - -- Transparent background 98 - vim.api.nvim_set_hl(0, "Normal", { bg = "NONE" }) 99 - vim.api.nvim_set_hl(0, "NormalNC", { bg = "NONE" }) 100 - vim.api.nvim_set_hl(0, "NormalFloat", { bg = "NONE" }) 101 - vim.api.nvim_set_hl(0, "SignColumn", { bg = "NONE" }) 102 - vim.api.nvim_set_hl(0, "EndOfBuffer", { bg = "NONE" }) 103 - 104 - -- Emit event for other plugins to react to theme changes 105 - vim.api.nvim_exec_autocmds("User", { pattern = "MatugenReload" }) 106 - 107 - local current_file_path = vim.fn.stdpath("config") .. "/lua/plugins/dankcolors.lua" 108 - if not _G._matugen_theme_watcher then 109 - local uv = vim.uv or vim.loop 110 - _G._matugen_theme_watcher = uv.new_fs_event() 111 - _G._matugen_theme_watcher:start( 112 - current_file_path, 113 - {}, 114 - vim.schedule_wrap(function() 115 - local new_spec = dofile(current_file_path) 116 - if new_spec and new_spec[1] and new_spec[1].config then 117 - new_spec[1].config() 118 - end 119 - end) 120 - ) 121 - end 122 - end, 123 - }, 124 - }
+198 -75
private_dot_config/niri/config.kdl
··· 3 3 // Check the wiki for a full description of the configuration: 4 4 // https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction 5 5 6 - // include "colors.kdl" 7 - include "./dms/colors.kdl" 8 - include "./dms/cursor.kdl" 9 - include "./dms/wpblur.kdl" 6 + include "colors.kdl" 10 7 8 + // Input device configuration. 9 + // Find the full list of options on the wiki: 11 10 // https://github.com/YaLTeR/niri/wiki/Configuration:-Input 12 11 input { 13 12 keyboard { 14 13 xkb { 14 + // You can set rules, model, layout, variant and options. 15 15 // For more information, see xkeyboard-config(7). 16 16 layout "us,us_intl" 17 17 variant ",qwerty" ··· 66 66 67 67 // You can configure outputs by their name, which you can find 68 68 // by running `niri msg outputs` while inside a niri instance. 69 + // The built-in laptop monitor is usually called "eDP-1". 70 + // Find more information on the wiki: 69 71 // https://github.com/YaLTeR/niri/wiki/Configuration:-Outputs 72 + // Remember to uncomment the node by removing "/-"! 70 73 output "DP-1" { 71 74 // Uncomment this line to disable this output. 72 75 // off 73 76 77 + // Resolution and, optionally, refresh rate of the output. 78 + // The format is "<width>x<height>" or "<width>x<height>@<refresh rate>". 74 79 // If the refresh rate is omitted, niri will pick the highest refresh rate 75 80 // for the resolution. 76 81 // If the mode is omitted altogether or is invalid, niri will pick one automatically. 82 + // Run `niri msg outputs` while inside a niri instance to list all outputs and their modes. 77 83 mode "3840x2160@240" 78 - // mode "3840x2160@119.880" 84 + // mode "3840x2160@120" 79 85 80 86 // You can use integer or fractional scale, for example use 1.5 for 150% scale. 81 87 scale 2 ··· 93 99 // so to put another output directly adjacent to it on the right, set its x to 1920. 94 100 // If the position is unset or results in an overlap, the output is instead placed 95 101 // automatically. 96 - // position x=2400 y=0 102 + position x=2400 y=0 97 103 } 98 104 99 105 // Settings that influence how windows are positioned and sized. 100 106 // Find more information on the wiki: 101 107 // https://github.com/YaLTeR/niri/wiki/Configuration:-Layout 102 108 layout { 109 + // Set gaps around windows in logical pixels. 103 110 gaps 16 111 + 112 + // When to center a column when changing focus, options are: 113 + // - "never", default behavior, focusing an off-screen column will keep at the left 114 + // or right edge of the screen. 115 + // - "always", the focused column will always be centered. 116 + // - "on-overflow", focusing a column will center it if it doesn't fit 117 + // together with the previously focused column. 104 118 center-focused-column "on-overflow" 105 119 120 + // You can customize the widths that "switch-preset-column-width" (Mod+R) toggles between. 106 121 preset-column-widths { 122 + // Proportion sets the width as a fraction of the output width, taking gaps into account. 123 + // For example, you can perfectly fit four windows sized "proportion 0.25" on an output. 124 + // The default preset widths are 1/3, 1/2 and 2/3 of the output. 107 125 proportion 0.5 108 - proportion 0.66667 126 + proportion 0.66667 109 127 proportion 0.75 110 128 proportion 0.95 111 129 ··· 121 139 // If you leave the brackets empty, the windows themselves will decide their initial width. 122 140 // default-column-width {} 123 141 142 + // By default focus ring and border are rendered as a solid background rectangle 143 + // behind windows. That is, they will show up through semitransparent windows. 144 + // This is because windows using client-side decorations can have an arbitrary shape. 145 + // 146 + // If you don't like that, you should uncomment `prefer-no-csd` below. 147 + // Niri will draw focus ring and border *around* windows that agree to omit their 148 + // client-side decorations. 149 + // 150 + // Alternatively, you can override it with a window rule called 151 + // `draw-border-with-background`. 152 + 124 153 // You can change how the focus ring looks. 125 154 focus-ring { 126 155 // Uncomment this line to disable the focus ring. ··· 128 157 129 158 // How many logical pixels the ring extends out from the windows. 130 159 width 4 160 + 161 + // Colors can be set in a variety of ways: 162 + // - CSS named colors: "red" 163 + // - RGB hex: "#rgb", "#rgba", "#rrggbb", "#rrggbbaa" 164 + // - CSS-like notation: "rgb(255, 127, 0)", rgba(), hsl() and a few others. 165 + 166 + // You can also use gradients. They take precedence over solid colors. 167 + // Gradients are rendered the same as CSS linear-gradient(angle, from, to). 168 + // The angle is the same as in linear-gradient, and is optional, 169 + // defaulting to 180 (top-to-bottom gradient). 170 + // You can use any CSS linear-gradient tool on the web to set these up. 171 + // Changing the color space is also supported, check the wiki for more info. 172 + // 173 + // active-gradient from="#80c8ff" to="#bbddff" angle=45 174 + 175 + // You can also color the gradient relative to the entire view 176 + // of the workspace, rather than relative to just the window itself. 177 + // To do that, set relative-to="workspace-view". 178 + // 179 + // inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view" 131 180 } 132 181 133 182 // You can also add a border. It's similar to the focus ring, but always visible. ··· 144 193 // Uncomment the next line to enable shadows. 145 194 // on 146 195 196 + // By default, the shadow draws only around its window, and not behind it. 197 + // Uncomment this setting to make the shadow draw behind its window. 198 + // 199 + // Note that niri has no way of knowing about the CSD window corner 200 + // radius. It has to assume that windows have square corners, leading to 201 + // shadow artifacts inside the CSD rounded corners. This setting fixes 202 + // those artifacts. 203 + // 204 + // However, instead you may want to set prefer-no-csd and/or 205 + // geometry-corner-radius. Then, niri will know the corner radius and 206 + // draw the shadow correctly, without having to draw it behind the 207 + // window. These will also remove client-side shadows if the window 208 + // draws any. 209 + // 210 + // draw-behind-window true 211 + 212 + // You can change how shadows look. The values below are in logical 213 + // pixels and match the CSS box-shadow properties. 214 + 147 215 // Softness controls the shadow blur radius. 148 216 softness 30 149 217 ··· 153 221 // Offset moves the shadow relative to the window. 154 222 offset x=0 y=5 155 223 } 224 + 225 + // Struts shrink the area occupied by windows, similarly to layer-shell panels. 226 + // You can think of them as a kind of outer gaps. They are set in logical pixels. 227 + // Left and right struts will cause the next window to the side to always be visible. 228 + // Top and bottom struts will simply add outer gaps in addition to the area occupied by 229 + // layer-shell panels and regular gaps. 230 + struts { 231 + // left 64 232 + // right 64 233 + // top 64 234 + // bottom 64 235 + } 156 236 } 157 237 238 + // Add lines like this to spawn processes at startup. 239 + // Note that running niri as a session supports xdg-desktop-autostart, 240 + // which may be more convenient to use. 241 + // See the binds section below for more spawn examples. 242 + 243 + // This line starts waybar, a commonly used bar for Wayland compositors. 158 244 spawn-at-startup "xwayland-satellite" 245 + spawn-at-startup "sh" "-c" "~/.config/niri/niri-watcher.sh" 246 + spawn-at-startup "sh" "-c" "niri-update-status" 159 247 160 - prefer-no-csd 248 + // Uncomment this line to ask the clients to omit their client-side decorations if possible. 249 + // If the client will specifically ask for CSD, the request will be honored. 250 + // Additionally, clients will be informed that they are tiled, removing some client-side rounded corners. 251 + // This option will also fix border/focus ring drawing behind some semitransparent windows. 252 + // After enabling or disabling this, you need to restart the apps for this to take effect. 253 + // prefer-no-csd 161 254 255 + // You can change the path where screenshots are saved. 256 + // A ~ at the front will be expanded to the home directory. 257 + // The path is formatted with strftime(3) to give you the screenshot date and time. 162 258 screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png" 259 + 260 + // You can also set this to null to disable saving screenshots to disk. 261 + // screenshot-path null 163 262 164 263 // Animation settings. 165 264 // The wiki explains how to configure individual animations: ··· 208 307 block-out-from "screen-capture" 209 308 } 210 309 211 - // Block out legcord from screen capture. 310 + 212 311 window-rule { 213 312 match app-id=r#"legcord$"# 214 313 // block-out-from "screencast" ··· 220 319 default-floating-position x=10 y=10 relative-to="bottom-right" 221 320 } 222 321 322 + // Example: block out two password managers from screen capture. 323 + // (This example rule is commented out with a "/-" in front.) 324 + /-window-rule { 325 + match app-id=r#"^org\.keepassxc\.KeePassXC$"# 326 + match app-id=r#"^org\.gnome\.World\.Secrets$"# 327 + 328 + block-out-from "screen-capture" 329 + 330 + // Use this instead if you want them visible on third-party screenshot tools. 331 + // block-out-from "screencast" 332 + } 333 + 223 334 // Example: enable rounded corners for all windows. 224 335 // (This example rule is commented out with a "/-" in front.) 225 336 window-rule { ··· 227 338 clip-to-geometry true 228 339 } 229 340 230 - hotkey-overlay { 231 - skip-at-startup 232 - } 341 + binds { 342 + // Keys consist of modifiers separated by + signs, followed by an XKB key name 343 + // in the end. To find an XKB name for a particular key, you may use a program 344 + // like wev. 345 + // 346 + // "Mod" is a special modifier equal to Super when running on a TTY, and to Alt 347 + // when running as a winit window. 348 + // 349 + // Most actions that you can bind here can also be invoked programmatically with 350 + // `niri msg action do-something`. 233 351 234 - binds { 235 - Mod+Shift+Slash { show-hotkey-overlay; } 352 + // Mod-Shift-/, which is usually the same as Mod-?, 353 + // shows a list of important hotkeys. 354 + Mod+Shift+Slash { show-hotkey-overlay; } 236 355 237 356 // APPLICATIONS 238 - Mod+T hotkey-overlay-title="Open a Terminal: Ghostty" { spawn "ghostty"; } 357 + Mod+T hotkey-overlay-title="Open a Terminal: Ghostty" { spawn "ghostty"; } 239 358 Super+E hotkey-overlay-title="Open Nautilus" { spawn "nautilus"; } 240 359 241 360 // SCRIPTS 242 - Super+B { spawn "sh" "-c" "dms ipc call wallpaper set $(~/scripts/random-wallpaper.sh)"; } 243 - Super+Shift+D hotkey-overlay-title="Restart DMS" { spawn "sh" "-c" "dms restart" ; } 361 + Super+B { spawn "sh" "-c" "matugen image $(~/scripts/random-wallpaper.sh)"; } 362 + Super+Shift+W hotkey-overlay-title="Restart Waybar" { spawn "sh" "-c" "killall waybar ; sleep 0.1 ; waybar & disown 363 + " ; } 244 364 // Super+A hotkey-overlay-title="Capture Screen" { spawn "sh" "-c" "grim -g \"$(slurp; sleep .1)\" - | swappy -f -"; } 245 365 Super+M hotkey-overlay-title="Media Output Select" { spawn "sh" "-c" "~/scripts/rofi-media.sh"; } 246 366 Super+Semicolon hotkey-overlay-title="Emoji picker" { spawn "sh" "-c" "rofimoji"; } 367 + 247 368 248 369 XF86AudioPlay allow-when-locked=true { spawn "playerctl" "play-pause"; } 249 370 XF86AudioNext allow-when-locked=true { spawn "playerctl" "next"; } 250 371 XF86AudioPrev allow-when-locked=true { spawn "playerctl" "previous"; } 251 - 372 + // Open/close the Overview: a zoomed-out view of workspaces and windows. 373 + // You can also move the mouse into the top-left hot corner, 374 + // or do a four-finger swipe up on a touchpad. 252 375 Mod+O repeat=false { toggle-overview; } 253 376 254 377 Mod+Q { close-window; } 255 378 256 379 Mod+Left { focus-column-left; } 257 - Mod+Down { focus-window-or-workspace-down; } 258 - Mod+Up { focus-window-or-workspace-up; } 380 + Mod+Down { focus-window-down; } 381 + Mod+Up { focus-window-up; } 259 382 Mod+Right { focus-column-right; } 260 383 // Mod+H { focus-column-left; } 261 384 // Mod+J { focus-window-down; } ··· 466 589 467 590 // The quit action will show a confirmation dialog to avoid accidental exits. 468 591 Mod+Shift+E { quit; } 592 + Ctrl+Alt+Delete { quit; } 469 593 470 594 // Powers off the monitors. To turn them back on, do any input like 471 595 // moving the mouse or pressing any other key. 472 596 Mod+Shift+P { power-off-monitors; } 473 597 474 - // DMS 475 - Mod+Space hotkey-overlay-title="Application Launcher" { 476 - spawn "dms" "ipc" "call" "spotlight" "toggle"; 477 - } 478 - Mod+Ctrl+V hotkey-overlay-title="Clipboard Manager" { 479 - spawn "dms" "ipc" "call" "clipboard" "toggle"; 480 - } 481 - Mod+Shift+M hotkey-overlay-title="Task Manager" { 482 - spawn "dms" "ipc" "call" "processlist" "toggle"; 483 - } 484 - Ctrl+Alt+Delete hotkey-overlay-title="Task Manager" { 485 - spawn "dms" "ipc" "call" "processlist" "toggle"; 486 - } 487 - Mod+N hotkey-overlay-title="Notification Center" { 488 - spawn "dms" "ipc" "call" "notifications" "toggle"; 489 - } 490 - Mod+Shift+Comma hotkey-overlay-title="Settings" { 491 - spawn "dms" "ipc" "call" "settings" "toggle"; 492 - } 493 - Mod+Y hotkey-overlay-title="Browse Wallpapers" { 494 - spawn "dms" "ipc" "call" "dankdash" "wallpaper"; 495 - } 496 - // Mod+Shift+N hotkey-overlay-title="Notepad" { 497 - // spawn "dms" "ipc" "call" "notepad" "toggle"; 498 - // } 499 - Super+L hotkey-overlay-title="Lock Screen" { 500 - spawn "dms" "ipc" "call" "lock" "lock"; 501 - } 502 - Mod+X hotkey-overlay-title="Power Menu" { 503 - spawn "dms" "ipc" "call" "powermenu" "toggle"; 504 - } 505 - XF86AudioRaiseVolume allow-when-locked=true { 506 - spawn "dms" "ipc" "call" "audio" "increment" "3"; 507 - } 508 - XF86AudioLowerVolume allow-when-locked=true { 509 - spawn "dms" "ipc" "call" "audio" "decrement" "3"; 510 - } 511 - XF86AudioMute allow-when-locked=true { 512 - spawn "dms" "ipc" "call" "audio" "mute"; 513 - } 514 - XF86AudioMicMute allow-when-locked=true { 515 - spawn "dms" "ipc" "call" "audio" "micmute"; 516 - } 517 - XF86MonBrightnessUp allow-when-locked=true { 518 - spawn "dms" "ipc" "call" "brightness" "increment" "5" ""; 519 - } 520 - // You can override the default device for e.g. keyboards by adding the device name to the last param 521 - XF86MonBrightnessDown allow-when-locked=true { 522 - spawn "dms" "ipc" "call" "brightness" "decrement" "5" ""; 523 - } 524 - // Night mode toggle 525 - Mod+Shift+N allow-when-locked=true { 526 - spawn "dms" "ipc" "call" "night" "toggle"; 527 - } 598 + Mod+Space hotkey-overlay-title="Application Launcher" { 599 + spawn "dms" "ipc" "call" "spotlight" "toggle"; 600 + } 601 + Mod+Ctrl+V hotkey-overlay-title="Clipboard Manager" { 602 + spawn "dms" "ipc" "call" "clipboard" "toggle"; 603 + } 604 + Mod+Shift+M hotkey-overlay-title="Task Manager" { 605 + spawn "dms" "ipc" "call" "processlist" "toggle"; 606 + } 607 + Mod+N hotkey-overlay-title="Notification Center" { 608 + spawn "dms" "ipc" "call" "notifications" "toggle"; 609 + } 610 + Mod+Shift+Comma hotkey-overlay-title="Settings" { 611 + spawn "dms" "ipc" "call" "settings" "toggle"; 612 + } 613 + // Mod+P hotkey-overlay-title="Notepad" { 614 + // spawn "dms" "ipc" "call" "notepad" "toggle"; 615 + // } 616 + Super+L hotkey-overlay-title="Lock Screen" { 617 + spawn "dms" "ipc" "call" "lock" "lock"; 618 + } 619 + Mod+X hotkey-overlay-title="Power Menu" { 620 + spawn "dms" "ipc" "call" "powermenu" "toggle"; 621 + } 622 + XF86AudioRaiseVolume allow-when-locked=true { 623 + spawn "dms" "ipc" "call" "audio" "increment" "3"; 624 + } 625 + XF86AudioLowerVolume allow-when-locked=true { 626 + spawn "dms" "ipc" "call" "audio" "decrement" "3"; 627 + } 628 + XF86AudioMute allow-when-locked=true { 629 + spawn "dms" "ipc" "call" "audio" "mute"; 630 + } 631 + XF86AudioMicMute allow-when-locked=true { 632 + spawn "dms" "ipc" "call" "audio" "micmute"; 633 + } 634 + XF86MonBrightnessUp allow-when-locked=true { 635 + spawn "dms" "ipc" "call" "brightness" "increment" "5" ""; 636 + } 637 + // You can override the default device for e.g. keyboards by adding the device name to the last param 638 + XF86MonBrightnessDown allow-when-locked=true { 639 + spawn "dms" "ipc" "call" "brightness" "decrement" "5" ""; 640 + } 641 + // Night mode toggle 642 + Mod+Shift+N allow-when-locked=true { 643 + spawn "dms" "ipc" "call" "night" "toggle"; 644 + } 528 645 } 529 646 530 647 environment { ··· 536 653 } 537 654 538 655 cursor { 539 - hide-when-typing 656 + xcursor-theme "Adwaita" 657 + xcursor-size 28 658 + 659 + // hide-when-typing 540 660 // hide-after-inactive-ms 1000 541 661 } 542 662 ··· 546 666 // Recommended (must install polkit-mate before hand) for elevation prompts 547 667 spawn-at-startup "/usr/lib/mate-polkit/polkit-mate-authentication-agent-1" 548 668 // This may be a different path on different distributions, the above is for the arch linux mate-polkit package 669 + 670 + // Starts DankShell 671 + spawn-at-startup "dms" "run" 549 672 550 673 // If using niri newer than 271534e115e5915231c99df287bbfe396185924d (~aug 17 2025) 551 674 // you can add this to disable built in config load errors since dank shell provides this
+1 -1
private_dot_config/nvim/lua/plugins/alpha.lua
··· 29 29 -- Randomly select a header 30 30 math.randomseed(os.time()) -- Initialize random seed 31 31 local random_header = headers[math.random(#headers)] 32 - local random_header = "outer_wilds" 32 + -- local random_header = "bee" 33 33 34 34 -- Construct the full path and require the header 35 35 local header = "plugins.alpha_headers." .. random_header
+1 -1
private_dot_config/nvim/lua/plugins/alpha_headers/cat_gun.lua
··· 1 1 local M = {} 2 2 3 3 M.setup = function(dashboard) 4 - vim.api.nvim_set_hl(0, "AlphaHeaderRed", { fg = _G.matugen_palette.color12, bold = true }) 4 + -- vim.api.nvim_set_hl(0, "AlphaHeaderRed", { fg = "#ff5555", bold = true }) 5 5 6 6 local logo = { 7 7 "⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⠋⠀⢀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠈⠉⠉⠙⠛⠛⠻⢿⣿⡿⠟⠁⠀⣀⣴⣿⣿⣿⣿⣿⠟",
+1 -1
private_dot_config/nvim/lua/plugins/alpha_headers/doom.lua
··· 1 1 local M = {} 2 2 3 3 M.setup = function(dashboard) 4 - vim.api.nvim_set_hl(0, "AlphaHeaderRed", { fg = _G.matugen_palette.color12, bold = true }) 4 + vim.api.nvim_set_hl(0, "AlphaHeaderRed", { fg = "#ff5555", bold = true }) 5 5 6 6 local logo = { 7 7 " :h- Nhy` ",
+1 -1
private_dot_config/nvim/lua/plugins/alpha_headers/fallout.lua
··· 1 1 local M = {} 2 2 3 3 M.setup = function(dashboard) 4 - vim.api.nvim_set_hl(0, "AlphaHeaderGreen", { fg = _G.matugen_palette.color12, bold = true }) 4 + vim.api.nvim_set_hl(0, "AlphaHeaderGreen", { fg = "#50fa7b", bold = true }) 5 5 6 6 local logo = [[ 7 7 ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡿⠛⢶⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
+14 -25
private_dot_config/nvim/lua/plugins/alpha_headers/nyan.lua
··· 85 85 [[ WWWWVVVVVVVVVVVVVVVVWWWWWWWWWWWWWWWWVVVVVVVVVVBBBBBBBBWWWWBBBBBBWWWWWWWWWWWWWWBBBBBBWWWWBBBBWWWWWWWWWW ]], 86 86 } 87 87 88 - local c = { 89 - color0 = "#191724", 90 - color1 = "#eb6f92", 91 - color2 = "#31748f", 92 - color3 = "#f6c177", 93 - color4 = "#9ccfd8", 94 - color5 = "#c4a7e7", 95 - color6 = "#ebbcba", 96 - color7 = "#908caa", 97 - color8 = "#26233a", 98 - color15 = "#e0def4", 99 - } 88 + local palette = require("rose-pine.palette") 100 89 101 90 local colors = { 102 - ["W"] = { fg = c.color0 }, 103 - ["C"] = { fg = c.color15 }, 104 - ["B"] = { fg = c.color8 }, 105 - ["R"] = { fg = c.color1 }, 106 - ["O"] = { fg = c.color6 }, 107 - ["Y"] = { fg = c.color3 }, 108 - ["G"] = { fg = c.color4 }, 109 - ["U"] = { fg = c.color2 }, 110 - ["P"] = { fg = c.color3 }, 111 - ["H"] = { fg = c.color5 }, 112 - ["F"] = { fg = c.color1 }, 113 - ["M"] = { fg = c.color7 }, 114 - ["V"] = { fg = c.color5 }, 91 + ["W"] = { fg = palette.base }, 92 + ["C"] = { fg = palette.text }, 93 + ["B"] = { fg = palette.surface }, 94 + ["R"] = { fg = palette.love }, 95 + ["O"] = { fg = palette.rose }, 96 + ["Y"] = { fg = palette.gold }, 97 + ["G"] = { fg = palette.foam }, 98 + ["U"] = { fg = palette.pine }, 99 + ["P"] = { fg = "#d7c08d" }, -- Using Yellow color (as specified in original) 100 + ["H"] = { fg = palette.iris }, 101 + ["F"] = { fg = palette.love }, 102 + ["M"] = { fg = palette.subtle }, 103 + ["V"] = { fg = palette.iris }, 115 104 } 116 105 117 106 dashboard.section.header.val = header
-8
private_dot_config/nvim/lua/plugins/alpha_headers/outer_wilds.lua
··· 1 1 local M = {} 2 2 3 3 M.setup = function(dashboard) 4 - vim.api.nvim_set_hl(0, "AlphaHeaderColor", { fg = _G.matugen_palette.color12, bold = true }) 5 - 6 4 dashboard.section.header.val = { 7 5 "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", 8 6 "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀", ··· 19 17 "⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠋⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠹⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀", 20 18 "", 21 19 "", 22 - } 23 - 24 - dashboard.section.header.opts = { 25 - position = "center", 26 - hl = "AlphaHeaderColor", 27 - shrink_margin = false, 28 20 } 29 21 end 30 22
-1
private_dot_config/nvim/lua/plugins/colors.lua
··· 2 2 { 3 3 "rose-pine/neovim", 4 4 name = "rose-pine", 5 - enabled = false, 6 5 config = function() 7 6 vim.opt.laststatus = 2 -- Or 3 for global statusline 8 7 vim.opt.statusline = " %f %m %= %l:%c ♥ "
+2 -2
private_dot_config/nvim/lua/plugins/context.lua
··· 1 1 return { 2 2 "nvim-treesitter/nvim-treesitter-context", 3 3 config = function() 4 - local c = _G.matugen_palette or { color0 = "#191724" } 5 - vim.api.nvim_set_hl(0, "TreesitterContext", { bg = c.color0, ctermbg = "blue" }) 4 + local p = require("rose-pine.palette") 5 + vim.api.nvim_set_hl(0, "TreesitterContext", { bg = p.base, ctermbg = "blue" }) 6 6 end, 7 7 }
-22
private_dot_config/nvim/lua/plugins/jjui.lua
··· 1 - return { 2 - "HotThoughts/jjui.nvim", 3 - cmd = { 4 - "JJUI", 5 - "JJUICurrentFile", 6 - "JJUIFilter", 7 - "JJUIFilterCurrentFile", 8 - "JJConfig", 9 - }, 10 - -- Setting the keybinding here helps lazy-loading 11 - keys = { 12 - { "<leader>jj", "<cmd>JJUI<cr>", desc = "JJUI" }, 13 - { "<leader>jc", "<cmd>JJUICurrentFile<cr>", desc = "JJUI (current file)" }, 14 - { "<leader>jl", "<cmd>JJUIFilter<cr>", desc = "JJUI Log" }, 15 - { "<leader>jf", "<cmd>JJUIFilterCurrentFile<cr>", desc = "JJUI Log (current file)" }, 16 - }, 17 - config = function() 18 - require("jjui").setup({ 19 - -- configuration options (see below) 20 - }) 21 - end, 22 - }
+111 -96
private_dot_config/nvim/lua/plugins/lualine.lua
··· 1 - local fallback_palette = { 2 - color0 = "#191724", 3 - color1 = "#eb6f92", 4 - color2 = "#31748f", 5 - color3 = "#f6c177", 6 - color4 = "#9ccfd8", 7 - color5 = "#c4a7e7", 8 - color6 = "#ebbcba", 9 - color7 = "#908caa", 10 - color8 = "#26233a", 11 - color9 = "#eb6f92", 12 - color10 = "#31748f", 13 - color11 = "#f6c177", 14 - color12 = "#9ccfd8", 15 - color13 = "#c4a7e7", 16 - color14 = "#ebbcba", 17 - color15 = "#e0def4", 18 - } 19 - 20 - local function build_theme() 21 - local c = _G.matugen_palette or fallback_palette 22 - local bg_base = "NONE" 23 - local dark = "#000000" 24 - local color = require("util.color") 25 - 26 - return { 27 - normal = { 28 - a = { bg = c.color4, fg = dark, gui = "bold" }, 29 - b = { bg = color.darken(c.color4, 50), fg = c.color15 }, 30 - c = { bg = c.color0, fg = c.color15 }, 31 - }, 32 - insert = { 33 - a = { bg = c.color2, fg = dark, gui = "bold" }, 34 - b = { bg = color.darken(c.color2, 50), fg = c.color15 }, 35 - }, 36 - visual = { 37 - a = { bg = c.color5, fg = dark, gui = "bold" }, 38 - b = { bg = color.darken(c.color5, 50), fg = c.color15 }, 39 - }, 40 - replace = { 41 - a = { bg = c.color3, fg = dark, gui = "bold" }, 42 - b = { bg = color.darken(c.color3, 50), fg = c.color15 }, 43 - }, 44 - command = { 45 - a = { bg = c.color1, fg = dark, gui = "bold" }, 46 - b = { bg = color.darken(c.color1, 50), fg = c.color15 }, 47 - }, 48 - inactive = { 49 - a = { bg = bg_base, fg = c.color7, gui = "bold" }, 50 - b = { bg = bg_base, fg = c.color7 }, 51 - }, 52 - } 53 - end 54 - 55 1 local function setup_macro_refresh(lualine) 56 2 vim.api.nvim_create_autocmd("RecordingEnter", { 57 3 callback = function() 58 - lualine.refresh({ place = { "statusline" } }) 4 + lualine.refresh({ 5 + place = { "statusline" }, 6 + }) 59 7 end, 60 8 }) 61 9 vim.api.nvim_create_autocmd("RecordingLeave", { ··· 65 13 50, 66 14 0, 67 15 vim.schedule_wrap(function() 68 - lualine.refresh({ place = { "statusline" } }) 16 + lualine.refresh({ 17 + place = { "statusline" }, 18 + }) 69 19 end) 70 20 ) 71 21 end, ··· 73 23 end 74 24 75 25 local function macro_recording_status() 76 - return { 77 - "macro-recording", 78 - fmt = function() 79 - local register = vim.fn.reg_recording() 80 - return register == "" and "" or "RECORDING @" .. register 81 - end, 82 - } 83 - end 84 - 85 - local function heart() 86 - return [[♥ ]] 26 + local function current_status() 27 + local register = vim.fn.reg_recording() 28 + return register == "" and "" or "RECORDING @" .. register 29 + end 30 + return { "macro-recording", fmt = current_status } 87 31 end 88 32 89 33 return { 90 34 "nvim-lualine/lualine.nvim", 91 35 event = "VeryLazy", 92 - dependencies = { "nvim-tree/nvim-web-devicons" }, 36 + dependencies = { 37 + "nvim-tree/nvim-web-devicons", 38 + }, 93 39 init = function() 94 40 vim.opt.laststatus = 0 95 41 end, ··· 99 45 local lualine = require("lualine") 100 46 setup_macro_refresh(lualine) 101 47 102 - local function do_setup() 103 - lualine.setup({ 104 - options = { 105 - theme = build_theme(), 106 - component_separators = "", 107 - section_separators = { left = "", right = "" }, 108 - disabled_filetypes = { "alpha" }, 48 + local function heart() 49 + return [[♥ ]] 50 + --return [[󰋑]] 51 + end 52 + 53 + -- custom theme 54 + -- local custom_rose_pine = require 'lualine.themes.rose-pine' 55 + local p = require("rose-pine.palette") 56 + local config = require("rose-pine.config") 57 + 58 + local bg_base = p.base 59 + if config.options.styles.transparency then 60 + bg_base = "NONE" 61 + end 62 + 63 + local custom_rose_pine = { 64 + normal = { 65 + a = { bg = p.rose, fg = p.base, gui = "bold" }, 66 + b = { bg = p.overlay, fg = p.rose }, 67 + c = { bg = p.surface, fg = p.text }, 68 + }, 69 + insert = { 70 + a = { bg = p.foam, fg = p.base, gui = "bold" }, 71 + b = { bg = p.overlay, fg = p.foam }, 72 + --c = { bg = "#252834", fg = p.text }, 73 + }, 74 + visual = { 75 + a = { bg = p.iris, fg = p.base, gui = "bold" }, 76 + b = { bg = p.overlay, fg = p.iris }, 77 + --c = { bg = "#292436", fg = p.text }, 78 + }, 79 + replace = { 80 + a = { bg = p.pine, fg = p.base, gui = "bold" }, 81 + b = { bg = p.overlay, fg = p.pine }, 82 + -- c = { bg = "#1C2231", fg = p.text }, 83 + }, 84 + command = { 85 + a = { bg = p.love, fg = p.base, gui = "bold" }, 86 + b = { bg = p.overlay, fg = p.love }, 87 + -- c = { bg = "#2C1F2E", fg = p.text }, 88 + }, 89 + inactive = { 90 + a = { bg = bg_base, fg = p.muted, gui = "bold" }, 91 + b = { bg = bg_base, fg = p.muted }, 92 + -- c = { bg = bg_base, fg = p.muted }, 93 + }, 94 + } 95 + 96 + --- @param trunc_width number trunctates component when screen width is less then trunc_width 97 + --- @param trunc_len number truncates component to trunc_len number of chars 98 + --- @param hide_width number hides component when window width is smaller then hide_width 99 + --- @param no_ellipsis boolean whether to disable adding '...' at end after truncation 100 + --- return function that can format the component accordingly 101 + local function trunc(trunc_width, trunc_len, hide_width, no_ellipsis) 102 + return function(str) 103 + local win_width = vim.fn.winwidth(0) 104 + if hide_width and win_width < hide_width then 105 + return "" 106 + elseif trunc_width and trunc_len and win_width < trunc_width and #str > trunc_len then 107 + return str:sub(1, trunc_len) .. (no_ellipsis and "" or "...") 108 + end 109 + return str 110 + end 111 + end 112 + 113 + lualine.setup({ 114 + options = { 115 + theme = custom_rose_pine, 116 + component_separators = "", 117 + section_separators = { left = "", right = "" }, 118 + disabled_filetypes = { "alpha" }, 119 + }, 120 + sections = { 121 + lualine_a = { 122 + { "mode", separator = { left = "", right = "" }, right_padding = 2 }, 123 + macro_recording_status(), 109 124 }, 110 - sections = { 111 - lualine_a = { 112 - { "mode", separator = { left = "", right = "" }, right_padding = 2 }, 113 - macro_recording_status(), 125 + lualine_b = { 126 + { "branch", fmt = trunc(1200, 20, nil, false) }, 127 + "diff", 128 + "diagnostics", 129 + }, 130 + lualine_c = { 131 + -- { require("NeoComposer.ui").status_recording }, 132 + { "filename", path = 1 }, 133 + }, 134 + lualine_x = { "filetype" }, 135 + lualine_y = { "progress" }, 136 + lualine_z = { 137 + { 138 + "location", 139 + separator = { left = "" }, 140 + left_padding = 2, 114 141 }, 115 - lualine_b = { "diff", "diagnostics" }, 116 - lualine_c = { { "filename", path = 1 } }, 117 - lualine_x = { "filetype" }, 118 - lualine_y = { "progress" }, 119 - lualine_z = { 120 - { "location", separator = { left = "" }, left_padding = 2 }, 121 - { heart, separator = { right = "" } }, 142 + { 143 + heart, 144 + separator = { right = "" }, 122 145 }, 123 146 }, 124 - extensions = { "nvim-tree", "fzf" }, 125 - }) 126 - end 127 - 128 - do_setup() 129 - 130 - -- Re-setup lualine when matugen reloads theme 131 - vim.api.nvim_create_autocmd("User", { 132 - pattern = "MatugenReload", 133 - callback = do_setup, 147 + }, 148 + extensions = { "nvim-tree", "fzf" }, 134 149 }) 135 150 end, 136 151 }
+1 -1
private_dot_config/nvim/lua/plugins/oil.lua
··· 87 87 use_default_keymaps = true, 88 88 view_options = { 89 89 -- Show files and directories that start with "." 90 - show_hidden = true, 90 + show_hidden = false, 91 91 -- This function defines what is considered a "hidden" file 92 92 is_hidden_file = function(name, bufnr) 93 93 local m = name:match("^%.")