New configuration for hyprscrolling
This commit is contained in:
@@ -1,27 +1,59 @@
|
|||||||
{ config, lib, pkgs, flakeRoot, ... }:
|
# --------------------------------------------------
|
||||||
|
# Hyprscrolling (hyprland-plugins) – valid config
|
||||||
|
# Managed in repo: assets/conf/desktop/hypr/hyprscrolling.conf
|
||||||
|
#
|
||||||
|
# This file is sourced by Home-Manager via:
|
||||||
|
# source = ~/.config/hypr/conf.d/90-hyprscrolling.conf
|
||||||
|
#
|
||||||
|
# IMPORTANT:
|
||||||
|
# - Do NOT use "scrolling { ... }" here unless your Hyprland build supports the
|
||||||
|
# native scrolling layout config category. Your configerrors show it does not.
|
||||||
|
# - Do NOT use "scrolling:..." keywords here (they will error for the same reason).
|
||||||
|
# - The plugin is already loaded by HM: pkgs.hyprlandPlugins.hyprscrolling
|
||||||
|
# --------------------------------------------------
|
||||||
|
|
||||||
let
|
# Make scrolling the active layout in Hyprland
|
||||||
repoConf =
|
general {
|
||||||
flakeRoot + "/assets/conf/desktop/hypr/hyprscrolling.conf";
|
layout = scrolling
|
||||||
|
|
||||||
targetRel = "hypr/conf.d/90-hyprscrolling.conf";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
# Make sure Hyprland is managed by Home-Manager
|
|
||||||
wayland.windowManager.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
# Load the plugin
|
|
||||||
plugins = [
|
|
||||||
pkgs.hyprlandPlugins.hyprscrolling
|
|
||||||
];
|
|
||||||
|
|
||||||
# Source the drop-in config
|
|
||||||
extraConfig = ''
|
|
||||||
source = ~/.config/${targetRel}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
# Copy your repo config into ~/.config
|
|
||||||
xdg.configFile."${targetRel}".source = repoConf;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# hyprscrolling plugin configuration
|
||||||
|
# (this is the format used by hyprland-plugins)
|
||||||
|
plugin {
|
||||||
|
hyprscrolling {
|
||||||
|
# Default width of a column (0.1 - 1.0 typically)
|
||||||
|
column_width = 0.5
|
||||||
|
|
||||||
|
# If only one column exists, make it fullscreen-width
|
||||||
|
fullscreen_on_one_column = true
|
||||||
|
|
||||||
|
# How focused columns are brought into view (commonly 0=center, 1=fit)
|
||||||
|
focus_fit_method = 1
|
||||||
|
|
||||||
|
# Auto-scroll/follow when focus changes
|
||||||
|
follow_focus = true
|
||||||
|
|
||||||
|
# Keep a minimum part of adjacent columns visible (0.0 - 1.0)
|
||||||
|
follow_min_visible = 0.4
|
||||||
|
|
||||||
|
# Optional: widths you can cycle with layoutmsg colresize +conf (if you use it)
|
||||||
|
# explicit_column_widths = 0.333, 0.5, 0.667, 1.0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# --------------------------------------------------
|
||||||
|
# OPTIONAL BINDS
|
||||||
|
#
|
||||||
|
# If you want binds here, either:
|
||||||
|
# - ensure $mainMod is defined BEFORE this file is sourced, OR
|
||||||
|
# - define it here (uncomment the next line).
|
||||||
|
#
|
||||||
|
# $mainMod = SUPER
|
||||||
|
#
|
||||||
|
# bind = $mainMod, period, layoutmsg, move +col
|
||||||
|
# bind = $mainMod, comma, layoutmsg, move -col
|
||||||
|
# bind = $mainMod, H, layoutmsg, swapcol l
|
||||||
|
# bind = $mainMod, L, layoutmsg, swapcol r
|
||||||
|
# bind = $mainMod, P, layoutmsg, promote
|
||||||
|
# bind = $mainMod, 0, layoutmsg, colresize +conf
|
||||||
|
# --------------------------------------------------
|
||||||
|
|||||||
Reference in New Issue
Block a user