feat: rofi plugins
This commit is contained in:
parent
26e0aed70e
commit
5a383e7aad
18 changed files with 139 additions and 113 deletions
3
.prettierrc
Normal file
3
.prettierrc
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"trailingComma": "none"
|
||||||
|
}
|
||||||
10
home/config/nvim/.gitignore
vendored
10
home/config/nvim/.gitignore
vendored
|
|
@ -1,10 +0,0 @@
|
||||||
tt.*
|
|
||||||
.tests
|
|
||||||
doc/tags
|
|
||||||
debug
|
|
||||||
.repro
|
|
||||||
foo.*
|
|
||||||
*.log
|
|
||||||
data
|
|
||||||
lazy-lock.json
|
|
||||||
lazyvim.json
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
{
|
|
||||||
"neodev": {
|
|
||||||
"library": {
|
|
||||||
"enabled": true,
|
|
||||||
"plugins": true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"neoconf": {
|
|
||||||
"plugins": {
|
|
||||||
"lua_ls": {
|
|
||||||
"enabled": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -44,7 +44,7 @@ require("lazy").setup({
|
||||||
{ import = "lazyvim.plugins.extras.lang.toml" },
|
{ import = "lazyvim.plugins.extras.lang.toml" },
|
||||||
{ import = "lazyvim.plugins.extras.lang.yaml" },
|
{ import = "lazyvim.plugins.extras.lang.yaml" },
|
||||||
{ import = "lazyvim.plugins.extras.linting.eslint" },
|
{ import = "lazyvim.plugins.extras.linting.eslint" },
|
||||||
{ import = "lazyvim.plugins.extras.ui.dashboard-nvim" },
|
{ import = "lazyvim.plugins.extras.ui.alpha" },
|
||||||
{ import = "lazyvim.plugins.extras.ui.edgy" },
|
{ import = "lazyvim.plugins.extras.ui.edgy" },
|
||||||
{ import = "lazyvim.plugins.extras.ui.mini-animate" },
|
{ import = "lazyvim.plugins.extras.ui.mini-animate" },
|
||||||
{ import = "lazyvim.plugins.extras.ui.mini-indentscope" },
|
{ import = "lazyvim.plugins.extras.ui.mini-indentscope" },
|
||||||
|
|
@ -52,7 +52,7 @@ require("lazy").setup({
|
||||||
{ import = "lazyvim.plugins.extras.ui.treesitter-context" },
|
{ import = "lazyvim.plugins.extras.ui.treesitter-context" },
|
||||||
{ import = "lazyvim.plugins.extras.util.dot" },
|
{ import = "lazyvim.plugins.extras.util.dot" },
|
||||||
{ import = "lazyvim.plugins.extras.util.mini-hipatterns" },
|
{ import = "lazyvim.plugins.extras.util.mini-hipatterns" },
|
||||||
{ import = "lazyvim.plugins.extras.util.project" },
|
{ import = "lazyvim.plugins.extras.editor.telescope" },
|
||||||
-- import/override with your plugins
|
-- import/override with your plugins
|
||||||
{ import = "plugins" },
|
{ import = "plugins" },
|
||||||
},
|
},
|
||||||
|
|
|
||||||
20
home/config/nvim/lua/plugins/alpha.lua
Normal file
20
home/config/nvim/lua/plugins/alpha.lua
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"goolord/alpha-nvim",
|
||||||
|
opts = function()
|
||||||
|
local dashboard = require("alpha.themes.dashboard")
|
||||||
|
local logo = [[
|
||||||
|
██████████ █████████ █████████ █████ █████ █████ █████ █████ █████
|
||||||
|
░░███░░░░███ ███░░░░░███ ███░░░░░███░░███ ░░███ ░░███ ░░███ ░░███ ░░███
|
||||||
|
░███ ░░███ ░███ ░███ ███ ░░░ ░███ ░███ ░░███ ███ ░░███ ███
|
||||||
|
░███ ░███ ░███████████ ░███ ░███████████ ░░█████ ░░█████
|
||||||
|
░███ ░███ ░███░░░░░███ ░███ ░███░░░░░███ ███░███ ░░███
|
||||||
|
░███ ███ ░███ ░███ ░░███ ███ ░███ ░███ ███ ░░███ ░███
|
||||||
|
██████████ █████ █████ ░░█████████ █████ █████ █████ █████ █████
|
||||||
|
░░░░░░░░░░ ░░░░░ ░░░░░ ░░░░░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░
|
||||||
|
]]
|
||||||
|
|
||||||
|
dashboard.section.header.val = vim.split(logo, "\n")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
||||||
11
home/config/nvim/lua/plugins/conform.lua
Normal file
11
home/config/nvim/lua/plugins/conform.lua
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
"stevearc/conform.nvim",
|
||||||
|
opts = {
|
||||||
|
formatters_by_ft = {
|
||||||
|
json = { "prettierd", "prettier", stop_after_first = true },
|
||||||
|
jsonc = { "prettierd", "prettier", stop_after_first = true },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
@ -2,10 +2,14 @@ local util = require("lspconfig.util")
|
||||||
local async = require("lspconfig.async")
|
local async = require("lspconfig.async")
|
||||||
local mod_cache = nil
|
local mod_cache = nil
|
||||||
|
|
||||||
require("lspconfig").lua_ls.setup({
|
return {
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
event = "LazyFile",
|
||||||
|
opts = {
|
||||||
on_init = function(client)
|
on_init = function(client)
|
||||||
local path = client.workspace_folders[1].name
|
local path = client.workspace_folders[1].name
|
||||||
if vim.loop.fs_stat(path .. "/.luarc.json") or vim.loop.fs_stat(path .. "/.luarc.jsonc") then
|
if vim.uv.fs_stat(path .. "/.luarc.json") or vim.uv.fs_stat(path .. "/.luarc.jsonc") then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -27,16 +31,6 @@ require("lspconfig").lua_ls.setup({
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
settings = {
|
|
||||||
Lua = {},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
return {
|
|
||||||
{
|
|
||||||
"neovim/nvim-lspconfig",
|
|
||||||
event = "LazyFile",
|
|
||||||
opts = {
|
|
||||||
servers = {
|
servers = {
|
||||||
-- biome = {
|
-- biome = {
|
||||||
-- root_dir = function(fname)
|
-- root_dir = function(fname)
|
||||||
|
|
@ -80,10 +74,10 @@ return {
|
||||||
filetypes = { "nginx" },
|
filetypes = { "nginx" },
|
||||||
rootPatterns = { "nginx.conf", ".git" },
|
rootPatterns = { "nginx.conf", ".git" },
|
||||||
},
|
},
|
||||||
jsonls = {
|
-- jsonls = {
|
||||||
cmd = { "vscode-json-languageserver", "--stdio" },
|
-- cmd = { "vscode-json-languageserver", "--stdio" },
|
||||||
filetypes = { "json" },
|
-- filetypes = { "json", "jsonc" },
|
||||||
},
|
-- },
|
||||||
vuels = {
|
vuels = {
|
||||||
cmd = { "vue-language-server", "--stdio" },
|
cmd = { "vue-language-server", "--stdio" },
|
||||||
filetypes = { "vue" },
|
filetypes = { "vue" },
|
||||||
|
|
@ -129,7 +123,7 @@ return {
|
||||||
single_file_support = true,
|
single_file_support = true,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
|
||||||
setup = {},
|
setup = {},
|
||||||
},
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,8 @@ configuration {
|
||||||
display-drun: " drun:";
|
display-drun: " drun:";
|
||||||
display-window: " window:";
|
display-window: " window:";
|
||||||
display-combi: " combi:";
|
display-combi: " combi:";
|
||||||
|
display-emoji: " emoji:";
|
||||||
|
display-calc: " calc:";
|
||||||
display-filebrowser: " filebrowser:";
|
display-filebrowser: " filebrowser:";
|
||||||
|
|
||||||
dpi: 110;
|
dpi: 110;
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,7 @@
|
||||||
|
|
||||||
transparent: rgba(0,0,0,0.1);
|
transparent: rgba(0,0,0,0.1);
|
||||||
|
|
||||||
|
text-color: @gruv4;
|
||||||
}
|
}
|
||||||
|
|
||||||
window {
|
window {
|
||||||
|
|
@ -51,8 +52,8 @@ mainbox {
|
||||||
|
|
||||||
message {
|
message {
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
border: 0px 2px 2px 2px;
|
border: 0px 4px 4px 4px;
|
||||||
border-color: @gruv0;
|
border-color: @gruv6;
|
||||||
background-color: @transparent;
|
background-color: @transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
killall .waybar-wrapped
|
killall .waybar-wrapped
|
||||||
killall .swaync-wrapped
|
killall .swaync-wrapped
|
||||||
waybar -c ~/.config/waybar/config.json -s ~/.config/waybar/style.css &
|
waybar -c ~/.config/waybar/config.jsonc -s ~/.config/waybar/style.css &
|
||||||
|
|
||||||
XDG_CONFIG_HOME="$HOME/.dummy" # Prevent swaync use default gtk theme
|
XDG_CONFIG_HOME="$HOME/.dummy" # Prevent swaync use default gtk theme
|
||||||
swaync -c ~/.config/swaync/config.json -s ~/.config/swaync/style.css &
|
swaync -c ~/.config/swaync/config.json -s ~/.config/swaync/style.css &
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,42 @@
|
||||||
[
|
[
|
||||||
|
// Primary
|
||||||
|
{
|
||||||
|
"output": "DP-3",
|
||||||
|
"include": "~/.config/waybar/modules.jsonc",
|
||||||
|
"layer": "top",
|
||||||
|
"exclusive": true,
|
||||||
|
"passthrough": false,
|
||||||
|
"position": "top",
|
||||||
|
"fixed-center": true,
|
||||||
|
"ipc": true,
|
||||||
|
"margin-top": 0,
|
||||||
|
"margin-left": 0,
|
||||||
|
"margin-right": 0,
|
||||||
|
"margin-bottom": 0,
|
||||||
|
|
||||||
|
"modules-left": [
|
||||||
|
"custom/os",
|
||||||
|
"hyprland/workspaces",
|
||||||
|
"clock",
|
||||||
|
"custom/cava",
|
||||||
|
"mpris"
|
||||||
|
],
|
||||||
|
|
||||||
|
"modules-center": ["hyprland/window"],
|
||||||
|
|
||||||
|
"modules-right": [
|
||||||
|
"wlr/taskbar",
|
||||||
|
"network",
|
||||||
|
"cpu",
|
||||||
|
"memory",
|
||||||
|
"pulseaudio",
|
||||||
|
"custom/swaync"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
// Secondary
|
||||||
{
|
{
|
||||||
"output": "HDMI-A-2",
|
"output": "HDMI-A-2",
|
||||||
"include": "~/.config/waybar/modules.json",
|
"include": "~/.config/waybar/modules.jsonc",
|
||||||
"layer": "top",
|
"layer": "top",
|
||||||
"exclusive": true,
|
"exclusive": true,
|
||||||
"height": 54,
|
"height": 54,
|
||||||
|
|
@ -26,9 +61,10 @@
|
||||||
"pulseaudio"
|
"pulseaudio"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
// Laptop
|
||||||
{
|
{
|
||||||
"output": "eDP-1",
|
"output": "eDP-1",
|
||||||
"include": "~/.config/waybar/modules.json",
|
"include": "~/.config/waybar/modules.jsonc",
|
||||||
"layer": "top",
|
"layer": "top",
|
||||||
"exclusive": true,
|
"exclusive": true,
|
||||||
"passthrough": false,
|
"passthrough": false,
|
||||||
|
|
@ -40,7 +76,13 @@
|
||||||
"margin-right": 0,
|
"margin-right": 0,
|
||||||
"margin-bottom": 0,
|
"margin-bottom": 0,
|
||||||
|
|
||||||
"modules-left": ["custom/os", "hyprland/workspaces", "clock", "custom/cava", "mpris"],
|
"modules-left": [
|
||||||
|
"custom/os",
|
||||||
|
"hyprland/workspaces",
|
||||||
|
"clock",
|
||||||
|
"custom/cava",
|
||||||
|
"mpris"
|
||||||
|
],
|
||||||
|
|
||||||
"modules-center": ["hyprland/window"],
|
"modules-center": ["hyprland/window"],
|
||||||
|
|
||||||
|
|
@ -52,32 +94,5 @@
|
||||||
"battery",
|
"battery",
|
||||||
"custom/swaync"
|
"custom/swaync"
|
||||||
]
|
]
|
||||||
},
|
|
||||||
{
|
|
||||||
"output": "DP-3",
|
|
||||||
"include": "~/.config/waybar/modules.json",
|
|
||||||
"layer": "top",
|
|
||||||
"exclusive": true,
|
|
||||||
"passthrough": false,
|
|
||||||
"position": "top",
|
|
||||||
"fixed-center": true,
|
|
||||||
"ipc": true,
|
|
||||||
"margin-top": 0,
|
|
||||||
"margin-left": 0,
|
|
||||||
"margin-right": 0,
|
|
||||||
"margin-bottom": 0,
|
|
||||||
|
|
||||||
"modules-left": ["custom/os", "hyprland/workspaces", "clock", "custom/cava", "mpris"],
|
|
||||||
|
|
||||||
"modules-center": ["hyprland/window"],
|
|
||||||
|
|
||||||
"modules-right": [
|
|
||||||
"wlr/taskbar",
|
|
||||||
"network",
|
|
||||||
"cpu",
|
|
||||||
"memory",
|
|
||||||
"pulseaudio",
|
|
||||||
"custom/swaync"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -92,12 +92,7 @@
|
||||||
"format-bluetooth": " {volume}%",
|
"format-bluetooth": " {volume}%",
|
||||||
"format-muted": " Muted",
|
"format-muted": " Muted",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"default": [
|
"default": ["", "", " ", " "],
|
||||||
"",
|
|
||||||
"",
|
|
||||||
" ",
|
|
||||||
" "
|
|
||||||
],
|
|
||||||
"ignored-sinks": ["Easy Effects Sink"]
|
"ignored-sinks": ["Easy Effects Sink"]
|
||||||
},
|
},
|
||||||
"scroll-step": 5.0,
|
"scroll-step": 5.0,
|
||||||
|
|
@ -182,7 +177,7 @@
|
||||||
"format-alt": "{icon} {time}"
|
"format-alt": "{icon} {time}"
|
||||||
},
|
},
|
||||||
|
|
||||||
"network" : {
|
"network": {
|
||||||
"format": "{ifname}",
|
"format": "{ifname}",
|
||||||
"format-wifi": " {essid} {bandwidthTotalBytes}",
|
"format-wifi": " {essid} {bandwidthTotalBytes}",
|
||||||
"format-ethernet": " Ethernet {bandwidthTotalBytes}",
|
"format-ethernet": " Ethernet {bandwidthTotalBytes}",
|
||||||
|
|
@ -5,7 +5,6 @@ let
|
||||||
terminal = "${prefix}ghostty";
|
terminal = "${prefix}ghostty";
|
||||||
filemanager = "nemo";
|
filemanager = "nemo";
|
||||||
scripts = "~/.config/scripts";
|
scripts = "~/.config/scripts";
|
||||||
flatEmoji = "it.mijorus.smile";
|
|
||||||
|
|
||||||
# freezeShot = "--freeze";
|
# freezeShot = "--freeze";
|
||||||
freezeShot = "";
|
freezeShot = "";
|
||||||
|
|
@ -31,7 +30,8 @@ in
|
||||||
''${mainMod} SHIFT, s, exec, hyprshot -m region --clipboard-only ${freezeShot}''
|
''${mainMod} SHIFT, s, exec, hyprshot -m region --clipboard-only ${freezeShot}''
|
||||||
''CTRL SHIFT, s, exec, hyprshot -m window --clipboard-only ${freezeShot}''
|
''CTRL SHIFT, s, exec, hyprshot -m window --clipboard-only ${freezeShot}''
|
||||||
''CTRL SHIFT ${mainMod}, s, exec, hyprshot -m output --clipboard-only ${freezeShot}''
|
''CTRL SHIFT ${mainMod}, s, exec, hyprshot -m output --clipboard-only ${freezeShot}''
|
||||||
''${mainMod}, PERIOD, exec, flatpak run ${flatEmoji}''
|
''${mainMod}, PERIOD, exec, rofi -modi emoji -show emoji''
|
||||||
|
''CTRL ${mainMod}, c, exec, rofi -show calc -modi calc -no-show-match -no-sort''
|
||||||
''${mainMod}, X, exec, sleep 0.1 && swaync-client -t -sw''
|
''${mainMod}, X, exec, sleep 0.1 && swaync-client -t -sw''
|
||||||
''${mainMod} SHIFT, C, centerwindow''
|
''${mainMod} SHIFT, C, centerwindow''
|
||||||
'',F11, fullscreen''
|
'',F11, fullscreen''
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ let
|
||||||
dbus-update-activation-environment --systemd --all &
|
dbus-update-activation-environment --systemd --all &
|
||||||
systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP &
|
systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP &
|
||||||
hyprpaper &
|
hyprpaper &
|
||||||
waybar -c ~/.config/waybar/config.json -s ~/.config/waybar/style.css &
|
waybar -c ~/.config/waybar/config.jsonc -s ~/.config/waybar/style.css &
|
||||||
systemctl --user enable --now hypridle.service &
|
systemctl --user enable --now hypridle.service &
|
||||||
fcitx5 -rd &
|
fcitx5 -rd &
|
||||||
fcitx5-remote -r &
|
fcitx5-remote -r &
|
||||||
|
|
|
||||||
|
|
@ -170,4 +170,13 @@ in
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.rofi = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.rofi-wayland;
|
||||||
|
plugins = with pkgs; [
|
||||||
|
rofi-emoji-wayland
|
||||||
|
(rofi-calc.override { rofi-unwrapped = rofi-wayland-unwrapped; })
|
||||||
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -38,20 +38,15 @@ let
|
||||||
configDir = ../config;
|
configDir = ../config;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
# Other Lsp servers are defined in system/module/lsp.nix
|
# Other Lsp servers & formatter are defined in system/module/lsp.nix
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
gh
|
gh
|
||||||
vue-language-server
|
vue-language-server
|
||||||
dockerfile-language-server-nodejs
|
dockerfile-language-server-nodejs
|
||||||
black
|
|
||||||
prettierd
|
|
||||||
javascript-typescript-langserver
|
javascript-typescript-langserver
|
||||||
marksman
|
|
||||||
ruff
|
ruff
|
||||||
ruff-lsp
|
ruff-lsp
|
||||||
pyright
|
|
||||||
hadolint
|
hadolint
|
||||||
yaml-language-server
|
|
||||||
nodePackages_latest.typescript
|
nodePackages_latest.typescript
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,6 @@
|
||||||
qt6.qtwayland
|
qt6.qtwayland
|
||||||
wlogout
|
wlogout
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
rofi-wayland-unwrapped
|
|
||||||
waybar
|
waybar
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,5 +17,12 @@
|
||||||
tailwindcss-language-server
|
tailwindcss-language-server
|
||||||
vscode-langservers-extracted
|
vscode-langservers-extracted
|
||||||
gopls
|
gopls
|
||||||
|
pyright
|
||||||
|
yaml-language-server
|
||||||
|
marksman
|
||||||
|
|
||||||
|
# formatter
|
||||||
|
prettierd
|
||||||
|
black
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue