finish hyprland
This commit is contained in:
@@ -16,7 +16,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
brave
|
floorp
|
||||||
];
|
];
|
||||||
|
|
||||||
home.stateVersion = "24.05";
|
home.stateVersion = "24.05";
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
./kitty
|
./kitty
|
||||||
./rofi
|
./rofi
|
||||||
./tmux
|
./tmux
|
||||||
# ./hyprland
|
./hyprland
|
||||||
# ./vscode
|
# ./vscode
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,2 +1,78 @@
|
|||||||
$borderActive = 0xffb072d1
|
|
||||||
$borderInactive = 0xff292a37
|
$rosewater = rgb(f5e0dc)
|
||||||
|
$rosewaterAlpha = f5e0dc
|
||||||
|
|
||||||
|
$flamingo = rgb(f2cdcd)
|
||||||
|
$flamingoAlpha = f2cdcd
|
||||||
|
|
||||||
|
$pink = rgb(f5c2e7)
|
||||||
|
$pinkAlpha = f5c2e7
|
||||||
|
|
||||||
|
$mauve = rgb(cba6f7)
|
||||||
|
$mauveAlpha = cba6f7
|
||||||
|
|
||||||
|
$red = rgb(f38ba8)
|
||||||
|
$redAlpha = f38ba8
|
||||||
|
|
||||||
|
$maroon = rgb(eba0ac)
|
||||||
|
$maroonAlpha = eba0ac
|
||||||
|
|
||||||
|
$peach = rgb(fab387)
|
||||||
|
$peachAlpha = fab387
|
||||||
|
|
||||||
|
$yellow = rgb(f9e2af)
|
||||||
|
$yellowAlpha = f9e2af
|
||||||
|
|
||||||
|
$green = rgb(a6e3a1)
|
||||||
|
$greenAlpha = a6e3a1
|
||||||
|
|
||||||
|
$teal = rgb(94e2d5)
|
||||||
|
$tealAlpha = 94e2d5
|
||||||
|
|
||||||
|
$sky = rgb(89dceb)
|
||||||
|
$skyAlpha = 89dceb
|
||||||
|
|
||||||
|
$sapphire = rgb(74c7ec)
|
||||||
|
$sapphireAlpha = 74c7ec
|
||||||
|
|
||||||
|
$blue = rgb(89b4fa)
|
||||||
|
$blueAlpha = 89b4fa
|
||||||
|
|
||||||
|
$lavender = rgb(b4befe)
|
||||||
|
$lavenderAlpha = b4befe
|
||||||
|
|
||||||
|
$text = rgb(cdd6f4)
|
||||||
|
$textAlpha = cdd6f4
|
||||||
|
|
||||||
|
$subtext1 = rgb(bac2de)
|
||||||
|
$subtext1Alpha = bac2de
|
||||||
|
|
||||||
|
$subtext0 = rgb(a6adc8)
|
||||||
|
$subtext0Alpha = a6adc8
|
||||||
|
|
||||||
|
$overlay2 = rgb(9399b2)
|
||||||
|
$overlay2Alpha = 9399b2
|
||||||
|
|
||||||
|
$overlay1 = rgb(7f849c)
|
||||||
|
$overlay1Alpha = 7f849c
|
||||||
|
|
||||||
|
$overlay0 = rgb(6c7086)
|
||||||
|
$overlay0Alpha = 6c7086
|
||||||
|
|
||||||
|
$surface2 = rgb(585b70)
|
||||||
|
$surface2Alpha = 585b70
|
||||||
|
|
||||||
|
$surface1 = rgb(45475a)
|
||||||
|
$surface1Alpha = 45475a
|
||||||
|
|
||||||
|
$surface0 = rgb(313244)
|
||||||
|
$surface0Alpha = 313244
|
||||||
|
|
||||||
|
$base = rgb(1e1e2e)
|
||||||
|
$baseAlpha = 1e1e2e
|
||||||
|
|
||||||
|
$mantle = rgb(181825)
|
||||||
|
$mantleAlpha = 181825
|
||||||
|
|
||||||
|
$crust = rgb(11111b)
|
||||||
|
$crustAlpha = 11111b
|
||||||
|
|||||||
@@ -3,10 +3,10 @@
|
|||||||
monitor=eDP-1,preferred,0x0,1
|
monitor=eDP-1,preferred,0x0,1
|
||||||
|
|
||||||
|
|
||||||
source = ~/.config/hypr/startup.conf
|
source = ~/.config/hypr/colors.conf
|
||||||
source = ~/.config/hypr/setup.conf
|
source = ~/.config/hypr/setup.conf
|
||||||
source = ~/.config/hypr/rules.conf
|
source = ~/.config/hypr/rules.conf
|
||||||
source = ~/.config/hypr/keybinds.conf
|
source = ~/.config/hypr/keybinds.conf
|
||||||
source = ~/.config/hypr/colors.conf
|
|
||||||
source = ~/.config/hypr/theme.conf
|
source = ~/.config/hypr/theme.conf
|
||||||
|
source = ~/.config/hypr/startup.conf
|
||||||
|
|
||||||
|
|||||||
@@ -2,24 +2,26 @@ $mainMod = SUPER
|
|||||||
|
|
||||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||||
bind = $mainMod, RETURN, exec, kitty
|
bind = $mainMod, RETURN, exec, kitty
|
||||||
bind = $mainMod, Q, exec, brave
|
bind = $mainMod, B, exec, floorp
|
||||||
bind = SUPER, BackSpace, killactive,
|
bind = SUPER, BackSpace, killactive,
|
||||||
bind = SUPER_SHIFT, P, exec, sudo shutdown now
|
bind = SUPER_SHIFT, P, exec, rofi -show power-menu -modi power-menu:rofi-power-menu
|
||||||
bind = SUPER_SHIFT, R, exec, sudo reboot now
|
bind = $mainMod, M, exec, rofi -show drun
|
||||||
bind = $mainMod, M, exec, hyprctl dispatch exit
|
bind = $mainMod, M, exec, rofi -show power-menu -modi power-menu:rofi-power-menurofi -show drun
|
||||||
#bind = $mainMod, E, exec, dolphin
|
#bind = $mainMod, E, exec, dolphin
|
||||||
bind = $mainMod, V, togglefloating,
|
bind = $mainMod, Space, togglefloating,
|
||||||
|
bind = $mainMod, S, exec, rofi-screenshot,
|
||||||
|
|
||||||
# bind = $mainMod, R, exec, rofi -show drun
|
# bind = $mainMod, R, exec, rofi -show drun
|
||||||
#bind = $mainMod, P, pseudo, # dwindle
|
#bind = $mainMod, P, pseudo, # dwindle
|
||||||
bind = $mainMod, J, togglesplit, # dwindle
|
#bind = $mainMod, J, togglesplit, # dwindle
|
||||||
bind = $mainMod, F, fullscreen,1
|
bind = $mainMod, F, fullscreen,1
|
||||||
bind = SUPER_SHIFT, F, fullscreen,0
|
bind = SUPER_SHIFT, F, fullscreen,0
|
||||||
|
|
||||||
# Move focus with mainMod + arrow keys
|
# Move focus with mainMod + arrow keys
|
||||||
bind = $mainMod, left, movefocus, l
|
bind = $mainMod, H, movefocus, l
|
||||||
bind = $mainMod, right, movefocus, r
|
bind = $mainMod, L, movefocus, r
|
||||||
bind = $mainMod, up, movefocus, u
|
bind = $mainMod, K, movefocus, u
|
||||||
bind = $mainMod, down, movefocus, d
|
bind = $mainMod, J, movefocus, d
|
||||||
|
|
||||||
# Switch workspaces with mainMod + [0-9]
|
# Switch workspaces with mainMod + [0-9]
|
||||||
bind = $mainMod, 1, workspace, 1
|
bind = $mainMod, 1, workspace, 1
|
||||||
|
|||||||
@@ -1,78 +1,106 @@
|
|||||||
# ######## Window rules ########
|
|
||||||
windowrule = noblur,.*
|
|
||||||
# windowrule = opacity 0.89 override 0.89 override, .* # Applies transparency to EVERY WINDOW
|
|
||||||
windowrule = float, ^(blueberry.py)$
|
|
||||||
windowrule = float, ^(steam)$
|
|
||||||
windowrule = float, ^(guifetch)$ # FlafyDev/guifetch
|
|
||||||
windowrulev2 = tile, class:(dev.warp.Warp)
|
|
||||||
windowrulev2 = float, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
|
||||||
windowrule = center, title:^(Open File)(.*)$
|
|
||||||
windowrule = center, title:^(Select a File)(.*)$
|
|
||||||
windowrule = center, title:^(Choose wallpaper)(.*)$
|
|
||||||
windowrule = center, title:^(Open Folder)(.*)$
|
|
||||||
windowrule = center, title:^(Save As)(.*)$
|
|
||||||
windowrule = center, title:^(Library)(.*)$
|
|
||||||
windowrule = center, title:^(File Upload)(.*)$
|
|
||||||
|
|
||||||
# Dialogs
|
# █░█░█ █ █▄░█ █▀▄ █▀█ █░█░█ █▀█ █░█ █░░ █▀▀ █▀
|
||||||
windowrule=float,title:^(Open File)(.*)$
|
# ▀▄▀▄▀ █ █░▀█ █▄▀ █▄█ ▀▄▀▄▀ █▀▄ █▄█ █▄▄ ██▄ ▄█
|
||||||
windowrule=float,title:^(Select a File)(.*)$
|
|
||||||
windowrule=float,title:^(Choose wallpaper)(.*)$
|
|
||||||
windowrule=float,title:^(Open Folder)(.*)$
|
|
||||||
windowrule=float,title:^(Save As)(.*)$
|
|
||||||
windowrule=float,title:^(Library)(.*)$
|
|
||||||
windowrule=float,title:^(File Upload)(.*)$
|
|
||||||
|
|
||||||
# Tearing
|
# See https://wiki.hyprland.org/Configuring/Window-Rules/
|
||||||
windowrule=immediate,.*\.exe
|
|
||||||
windowrulev2=immediate,class:(steam_app)
|
|
||||||
|
|
||||||
# No shadow for tiled windows
|
windowrulev2 = opacity 0.90 0.90,class:^(firefox)$
|
||||||
windowrulev2 = noshadow,floating:0
|
windowrulev2 = opacity 0.90 0.90,class:^(Google-chrome)$
|
||||||
|
windowrulev2 = opacity 0.90 0.90,class:^(Brave-browser)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(code-oss)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^([Cc]ode)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(code-url-handler)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(code-insiders-url-handler)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(kitty)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(org.kde.dolphin)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(org.kde.ark)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(nwg-look)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(qt5ct)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(qt6ct)$
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(kvantummanager)$
|
||||||
|
windowrulev2 = opacity 0.80 0.70,class:^(org.pulseaudio.pavucontrol)$
|
||||||
|
windowrulev2 = opacity 0.80 0.70,class:^(blueman-manager)$
|
||||||
|
windowrulev2 = opacity 0.80 0.70,class:^(nm-applet)$
|
||||||
|
windowrulev2 = opacity 0.80 0.70,class:^(nm-connection-editor)$
|
||||||
|
windowrulev2 = opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$
|
||||||
|
windowrulev2 = opacity 0.80 0.70,class:^(polkit-gnome-authentication-agent-1)$
|
||||||
|
windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.gtk)$
|
||||||
|
windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.hyprland)$
|
||||||
|
windowrulev2 = opacity 0.70 0.70,class:^([Ss]team)$
|
||||||
|
windowrulev2 = opacity 0.70 0.70,class:^(steamwebhelper)$
|
||||||
|
windowrulev2 = opacity 0.70 0.70,class:^([Ss]potify)$
|
||||||
|
windowrulev2 = opacity 0.70 0.70,initialTitle:^(Spotify Free)$
|
||||||
|
windowrulev2 = opacity 0.70 0.70,initialTitle:^(Spotify Premium)$
|
||||||
|
|
||||||
# ######## Layer rules ########
|
windowrulev2 = opacity 0.90 0.90,class:^(com.github.rafostar.Clapper)$ # Clapper-Gtk
|
||||||
layerrule = xray 1, .*
|
windowrulev2 = opacity 0.80 0.80,class:^(com.github.tchx84.Flatseal)$ # Flatseal-Gtk
|
||||||
# layerrule = noanim, .*
|
windowrulev2 = opacity 0.80 0.80,class:^(hu.kramo.Cartridges)$ # Cartridges-Gtk
|
||||||
layerrule = noanim, walker
|
windowrulev2 = opacity 0.80 0.80,class:^(com.obsproject.Studio)$ # Obs-Qt
|
||||||
layerrule = noanim, selection
|
windowrulev2 = opacity 0.80 0.80,class:^(gnome-boxes)$ # Boxes-Gtk
|
||||||
layerrule = noanim, overview
|
windowrulev2 = opacity 0.80 0.80,class:^(vesktop)$ # Vesktop
|
||||||
layerrule = noanim, anyrun
|
windowrulev2 = opacity 0.80 0.80,class:^(discord)$ # Discord-Electron
|
||||||
layerrule = noanim, indicator.*
|
windowrulev2 = opacity 0.80 0.80,class:^(WebCord)$ # WebCord-Electron
|
||||||
layerrule = noanim, osk
|
windowrulev2 = opacity 0.80 0.80,class:^(ArmCord)$ # ArmCord-Electron
|
||||||
layerrule = noanim, hyprpicker
|
windowrulev2 = opacity 0.80 0.80,class:^(app.drey.Warp)$ # Warp-Gtk
|
||||||
layerrule = blur, shell:*
|
windowrulev2 = opacity 0.80 0.80,class:^(net.davidotek.pupgui2)$ # ProtonUp-Qt
|
||||||
layerrule = ignorealpha 0.6, shell:*
|
windowrulev2 = opacity 0.80 0.80,class:^(yad)$ # Protontricks-Gtk
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(Signal)$ # Signal-Gtk
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(io.github.alainm23.planify)$ # planify-Gtk
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gtk
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
|
||||||
|
windowrulev2 = opacity 0.80 0.80,class:^(io.github.flattool.Warehouse)$ # Warehouse-Gtk
|
||||||
|
|
||||||
layerrule = noanim, noanim
|
windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Progress Dialog — Dolphin)$
|
||||||
layerrule = blur, gtk-layer-shell
|
windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Copying — Dolphin)$
|
||||||
layerrule = ignorezero, gtk-layer-shell
|
windowrulev2 = float,title:^(About Mozilla Firefox)$
|
||||||
layerrule = blur, launcher
|
windowrulev2 = float,class:^(firefox)$,title:^(Picture-in-Picture)$
|
||||||
layerrule = ignorealpha 0.5, launcher
|
windowrulev2 = float,class:^(firefox)$,title:^(Library)$
|
||||||
|
windowrulev2 = float,class:^(kitty)$,title:^(top)$
|
||||||
|
windowrulev2 = float,class:^(kitty)$,title:^(btop)$
|
||||||
|
windowrulev2 = float,class:^(kitty)$,title:^(htop)$
|
||||||
|
windowrulev2 = float,class:^(vlc)$
|
||||||
|
windowrulev2 = float,class:^(kvantummanager)$
|
||||||
|
windowrulev2 = float,class:^(qt5ct)$
|
||||||
|
windowrulev2 = float,class:^(qt6ct)$
|
||||||
|
windowrulev2 = float,class:^(nwg-look)$
|
||||||
|
windowrulev2 = float,class:^(org.kde.ark)$
|
||||||
|
windowrulev2 = float,class:^(org.pulseaudio.pavucontrol)$
|
||||||
|
windowrulev2 = float,class:^(blueman-manager)$
|
||||||
|
windowrulev2 = float,class:^(nm-applet)$
|
||||||
|
windowrulev2 = float,class:^(nm-connection-editor)$
|
||||||
|
windowrulev2 = float,class:^(org.kde.polkit-kde-authentication-agent-1)$
|
||||||
|
|
||||||
|
windowrulev2 = float,class:^(Signal)$ # Signal-Gtk
|
||||||
|
windowrulev2 = float,class:^(com.github.rafostar.Clapper)$ # Clapper-Gtk
|
||||||
|
windowrulev2 = float,class:^(app.drey.Warp)$ # Warp-Gtk
|
||||||
|
windowrulev2 = float,class:^(net.davidotek.pupgui2)$ # ProtonUp-Qt
|
||||||
|
windowrulev2 = float,class:^(yad)$ # Protontricks-Gtk
|
||||||
|
windowrulev2 = float,class:^(eog)$ # Imageviewer-Gtk
|
||||||
|
windowrulev2 = float,class:^(io.github.alainm23.planify)$ # planify-Gtk
|
||||||
|
windowrulev2 = float,class:^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
|
||||||
|
windowrulev2 = float,class:^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gkk
|
||||||
|
windowrulev2 = float,class:^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
|
||||||
|
windowrulev2 = float,class:^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
|
||||||
|
|
||||||
|
# common modals
|
||||||
|
windowrule = float,title:^(Open)$
|
||||||
|
windowrule = float,title:^(Choose Files)$
|
||||||
|
windowrule = float,title:^(Save As)$
|
||||||
|
windowrule = float,title:^(Confirm to replace files)$
|
||||||
|
windowrule = float,title:^(File Operation Progress)$
|
||||||
|
windowrulev2 = float,class:^(xdg-desktop-portal-gtk)$
|
||||||
|
|
||||||
|
# █░░ ▄▀█ █▄█ █▀▀ █▀█ █▀█ █░█ █░░ █▀▀ █▀
|
||||||
|
# █▄▄ █▀█ ░█░ ██▄ █▀▄ █▀▄ █▄█ █▄▄ ██▄ ▄█
|
||||||
|
|
||||||
|
layerrule = blur,rofi
|
||||||
|
layerrule = ignorezero,rofi
|
||||||
layerrule = blur,notifications
|
layerrule = blur,notifications
|
||||||
layerrule = ignorealpha 0.69, notifications
|
layerrule = ignorezero,notifications
|
||||||
|
layerrule = blur,swaync-notification-window
|
||||||
# ags
|
layerrule = ignorezero,swaync-notification-window
|
||||||
layerrule = animation slide top, sideleft.*
|
layerrule = blur,swaync-control-center
|
||||||
layerrule = animation slide top, sideright.*
|
layerrule = ignorezero,swaync-control-center
|
||||||
layerrule = blur, session
|
layerrule = blur,logout_dialog
|
||||||
|
|
||||||
layerrule = blur, bar
|
|
||||||
layerrule = ignorealpha 0.6, bar
|
|
||||||
layerrule = blur, corner.*
|
|
||||||
layerrule = ignorealpha 0.6, corner.*
|
|
||||||
layerrule = blur, dock
|
|
||||||
layerrule = ignorealpha 0.6, dock
|
|
||||||
layerrule = blur, indicator.*
|
|
||||||
layerrule = ignorealpha 0.6, indicator.*
|
|
||||||
layerrule = blur, overview
|
|
||||||
layerrule = ignorealpha 0.6, overview
|
|
||||||
layerrule = blur, cheatsheet
|
|
||||||
layerrule = ignorealpha 0.6, cheatsheet
|
|
||||||
layerrule = blur, sideright
|
|
||||||
layerrule = ignorealpha 0.6, sideright
|
|
||||||
layerrule = blur, sideleft
|
|
||||||
layerrule = ignorealpha 0.6, sideleft
|
|
||||||
layerrule = blur, indicator*
|
|
||||||
layerrule = ignorealpha 0.6, indicator*
|
|
||||||
layerrule = blur, osk
|
|
||||||
layerrule = ignorealpha 0.6, osk
|
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
input {
|
input {
|
||||||
kb_layout = de
|
kb_layout = us,de
|
||||||
kb_variant =
|
kb_variant =
|
||||||
kb_model =
|
kb_model =
|
||||||
kb_options =
|
kb_options =
|
||||||
kb_rules =
|
kb_rules =
|
||||||
|
kb_options=alt_space_toggle
|
||||||
|
|
||||||
follow_mouse = 1
|
follow_mouse = 1
|
||||||
|
|
||||||
@@ -18,8 +19,8 @@ general {
|
|||||||
gaps_in=6
|
gaps_in=6
|
||||||
gaps_out=12
|
gaps_out=12
|
||||||
border_size=4
|
border_size=4
|
||||||
col.active_border=$borderActive
|
col.active_border=$mauve
|
||||||
col.inactive_border=$borderInactive
|
col.inactive_border=$base
|
||||||
}
|
}
|
||||||
|
|
||||||
misc {
|
misc {
|
||||||
@@ -36,9 +37,9 @@ decoration {
|
|||||||
enabled = true
|
enabled = true
|
||||||
xray = true
|
xray = true
|
||||||
}
|
}
|
||||||
drop_shadow=true
|
# drop_shadow=true
|
||||||
shadow_range=4
|
# shadow_range=4
|
||||||
col.shadow=0x66000000
|
# col.shadow=0x66000000
|
||||||
}
|
}
|
||||||
|
|
||||||
animations {
|
animations {
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
exec-once=asztal
|
exec-once=waybar
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ group {
|
|||||||
|
|
||||||
decoration {
|
decoration {
|
||||||
rounding = 10
|
rounding = 10
|
||||||
drop_shadow = false
|
# drop_shadow = false
|
||||||
|
|
||||||
blur {
|
blur {
|
||||||
enabled = yes
|
enabled = yes
|
||||||
|
|||||||
@@ -2,7 +2,10 @@
|
|||||||
{
|
{
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
lua-language-server
|
||||||
|
nil
|
||||||
|
ripgrep
|
||||||
|
lldb
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.neovim = {
|
programs.neovim = {
|
||||||
@@ -13,6 +16,7 @@ programs.neovim = {
|
|||||||
|
|
||||||
programs.neovim.plugins = [
|
programs.neovim.plugins = [
|
||||||
pkgs.vimPlugins.lazy-nvim
|
pkgs.vimPlugins.lazy-nvim
|
||||||
|
pkgs.vimPlugins.nvim-lspconfig
|
||||||
];
|
];
|
||||||
|
|
||||||
home.file =
|
home.file =
|
||||||
@@ -20,12 +24,20 @@ programs.neovim.plugins = [
|
|||||||
{
|
{
|
||||||
".config/nvim/init.lua".source = ./init.lua;
|
".config/nvim/init.lua".source = ./init.lua;
|
||||||
".config/nvim/lua/config/lazy.lua".source = ./lua/config/lazy.lua;
|
".config/nvim/lua/config/lazy.lua".source = ./lua/config/lazy.lua;
|
||||||
".config/nvim/lua/plugins/flutter.lua".source = ./lua/plugins/flutter.lua;
|
# ".config/nvim/lua/plugins/flutter.lua".source = ./lua/plugins/flutter.lua;
|
||||||
".config/nvim/lua/plugins/coq.lua".source = ./lua/plugins/coq.lua;
|
".config/nvim/lua/plugins/coq.lua".source = ./lua/plugins/coq.lua;
|
||||||
".config/nvim/lua/plugins/treesitter.lua".source = ./lua/plugins/treesitter.lua;
|
".config/nvim/lua/plugins/treesitter.lua".source = ./lua/plugins/treesitter.lua;
|
||||||
".config/nvim/lua/plugins/catppuccin.lua".source = ./lua/plugins/catppuccin.lua;
|
".config/nvim/lua/plugins/catppuccin.lua".source = ./lua/plugins/catppuccin.lua;
|
||||||
".config/nvim/lua/plugins/telescope.lua".source = ./lua/plugins/telescope.lua;
|
".config/nvim/lua/plugins/telescope.lua".source = ./lua/plugins/telescope.lua;
|
||||||
".config/nvim/lua/plugins/highlight-colors.lua".source = ./lua/plugins/highlight-colors.lua;
|
".config/nvim/lua/plugins/highlight-colors.lua".source = ./lua/plugins/highlight-colors.lua;
|
||||||
|
".config/nvim/lua/plugins/comment.lua".source = ./lua/plugins/comment.lua;
|
||||||
|
# ".config/nvim/lua/plugins/lazydev.lua".source = ./lua/plugins/lazydev.lua;
|
||||||
|
".config/nvim/lua/plugins/lualine.lua".source = ./lua/plugins/lualine.lua;
|
||||||
|
".config/nvim/lua/plugins/whichkey.lua".source = ./lua/plugins/whichkey.lua;
|
||||||
|
".config/nvim/lua/plugins/trouble.lua".source = ./lua/plugins/trouble.lua;
|
||||||
|
".config/nvim/lua/plugins/dap.lua".source = ./lua/plugins/dap.lua;
|
||||||
|
".config/nvim/lua/plugins/blankline.lua".source = ./lua/plugins/blankline.lua;
|
||||||
|
".config/nvim/lua/plugins/rustaceanvim.lua".source = ./lua/plugins/rustaceanvim.lua;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
36
packages/nvim/default.nix.backup
Normal file
36
packages/nvim/default.nix.backup
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
{ inputs, pkgs, lib, config, ...}:
|
||||||
|
{
|
||||||
|
imports = [ inputs.nvf.homeManagerModules.default ];
|
||||||
|
|
||||||
|
programs.nvf = {
|
||||||
|
enable = true;
|
||||||
|
# your settings need to go into the settings attribute set
|
||||||
|
# most settings are documented in the appendix
|
||||||
|
settings = {
|
||||||
|
vim.viAlias = false;
|
||||||
|
vim.vimAlias = true;
|
||||||
|
|
||||||
|
vim.theme = {
|
||||||
|
enable = true;
|
||||||
|
name = "catppuccin";
|
||||||
|
style = "mocha";
|
||||||
|
};
|
||||||
|
|
||||||
|
vim.statusline.lualine.enable = true;
|
||||||
|
vim.binds.cheatsheet.enable = true;
|
||||||
|
vim.binds.whichKey.enable = true;
|
||||||
|
vim.projects.project-nvim.setupOpts.show_hidden = true;
|
||||||
|
vim.telescope.enable = true;
|
||||||
|
vim.autocomplete.blink-cmp.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
vim.lsp = {
|
||||||
|
enable = false;
|
||||||
|
};
|
||||||
|
vim.languages.clang.enable = true;
|
||||||
|
vim.languages.rust.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
31
packages/nvim/default.nix~
Normal file
31
packages/nvim/default.nix~
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
{ pkgs, config, lib,... }:
|
||||||
|
{
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.neovim = {
|
||||||
|
enable = true;
|
||||||
|
vimAlias = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
programs.neovim.plugins = [
|
||||||
|
pkgs.vimPlugins.lazy-nvim
|
||||||
|
];
|
||||||
|
|
||||||
|
home.file =
|
||||||
|
lib.mkMerge [
|
||||||
|
{
|
||||||
|
".config/nvim/init.lua".source = ./init.lua;
|
||||||
|
".config/nvim/lua/config/lazy.lua".source = ./lua/config/lazy.lua;
|
||||||
|
".config/nvim/lua/plugins/flutter.lua".source = ./lua/plugins/flutter.lua;
|
||||||
|
".config/nvim/lua/plugins/coq.lua".source = ./lua/plugins/coq.lua;
|
||||||
|
".config/nvim/lua/plugins/treesitter.lua".source = ./lua/plugins/treesitter.lua;
|
||||||
|
".config/nvim/lua/plugins/catppuccin.lua".source = ./lua/plugins/catppuccin.lua;
|
||||||
|
".config/nvim/lua/plugins/telescope.lua".source = ./lua/plugins/telescope.lua;
|
||||||
|
".config/nvim/lua/plugins/highlight-colors.lua".source = ./lua/plugins/highlight-colors.lua;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -31,15 +31,12 @@ vim.keymap.set('n', '<C-Down>', ':resize +2<CR>', opts)
|
|||||||
vim.keymap.set('n', '<C-Left>', ':vertical resize -2<CR>', opts)
|
vim.keymap.set('n', '<C-Left>', ':vertical resize -2<CR>', opts)
|
||||||
vim.keymap.set('n', '<C-Right>', ':vertical resize +2<CR>', opts)
|
vim.keymap.set('n', '<C-Right>', ':vertical resize +2<CR>', opts)
|
||||||
|
|
||||||
-- Telescope binds
|
|
||||||
vim.keymap.set("n", "<space>fb", ":Telescope file_browser<CR>")
|
|
||||||
|
|
||||||
|
|
||||||
vim.keymap.set('i', 'jk', '<Esc>', opts)
|
vim.keymap.set('i', 'jk', '<Esc>', opts)
|
||||||
|
|
||||||
-- Lazy
|
-- Lazy
|
||||||
require("config.lazy")
|
require("config.lazy")
|
||||||
require("flutter-tools").setup {} -- use defaults
|
-- require("flutter-tools").setup {} -- use defaults
|
||||||
require("catppuccin").setup({
|
require("catppuccin").setup({
|
||||||
integrations = {
|
integrations = {
|
||||||
cmp = false,
|
cmp = false,
|
||||||
@@ -54,8 +51,117 @@ require("catppuccin").setup({
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
-- css colors
|
-- css colors
|
||||||
vim.opt.termguicolors = true
|
vim.opt.termguicolors = true
|
||||||
require('nvim-highlight-colors').setup({})
|
require('nvim-highlight-colors').setup({})
|
||||||
|
|
||||||
vim.cmd.colorscheme "catppuccin"
|
vim.cmd.colorscheme "catppuccin"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- lsp
|
||||||
|
local on_attach = function(_, bufnr)
|
||||||
|
|
||||||
|
local bufmap = function(keys, func)
|
||||||
|
vim.keymap.set('n', keys, func, { buffer = bufnr })
|
||||||
|
end
|
||||||
|
|
||||||
|
bufmap('<leader>r', vim.lsp.buf.rename)
|
||||||
|
bufmap('<leader>a', vim.lsp.buf.code_action)
|
||||||
|
|
||||||
|
bufmap('gd', vim.lsp.buf.definition)
|
||||||
|
bufmap('gD', vim.lsp.buf.declaration)
|
||||||
|
bufmap('gI', vim.lsp.buf.implementation)
|
||||||
|
bufmap('<leader>D', vim.lsp.buf.type_definition)
|
||||||
|
|
||||||
|
bufmap('gr', require('telescope.builtin').lsp_references)
|
||||||
|
bufmap('<leader>s', require('telescope.builtin').lsp_document_symbols)
|
||||||
|
bufmap('<leader>S', require('telescope.builtin').lsp_dynamic_workspace_symbols)
|
||||||
|
|
||||||
|
bufmap('K', vim.lsp.buf.hover)
|
||||||
|
|
||||||
|
vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_)
|
||||||
|
vim.lsp.buf.format()
|
||||||
|
end, {})
|
||||||
|
end
|
||||||
|
|
||||||
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
capabilities = require('coq').lsp_ensure_capabilities(capabilities)
|
||||||
|
|
||||||
|
require('lspconfig').lua_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
root_dir = function()
|
||||||
|
return vim.loop.cwd()
|
||||||
|
end,
|
||||||
|
cmd = { "lua-language-server" },
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
workspace = { checkThirdParty = false },
|
||||||
|
telemetry = { enable = false },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
require('lspconfig').nil_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
}
|
||||||
|
|
||||||
|
--[[ require('lspconfig').rust_analyzer.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
} ]]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- Plugin setups
|
||||||
|
require('lualine').setup()
|
||||||
|
require("dapui").setup()
|
||||||
|
require("ibl").setup()
|
||||||
|
|
||||||
|
-- -- Debugger
|
||||||
|
local dap, dapui = require("dap"), require("dapui")
|
||||||
|
dap.listeners.before.attach.dapui_config = function()
|
||||||
|
dapui.open()
|
||||||
|
end
|
||||||
|
dap.listeners.before.launch.dapui_config = function()
|
||||||
|
dapui.open()
|
||||||
|
end
|
||||||
|
dap.listeners.before.event_terminated.dapui_config = function()
|
||||||
|
dapui.close()
|
||||||
|
end
|
||||||
|
dap.listeners.before.event_exited.dapui_config = function()
|
||||||
|
dapui.close()
|
||||||
|
end
|
||||||
|
|
||||||
|
-- c und rust
|
||||||
|
dap.adapters.lldb = {
|
||||||
|
type = 'executable',
|
||||||
|
command = 'lldb', -- adjust as needed, must be absolute path
|
||||||
|
name = 'lldb'
|
||||||
|
}
|
||||||
|
dap.configurations.c = dap.configurations.cpp
|
||||||
|
dap.configurations.rust = dap.configurations.cpp
|
||||||
|
|
||||||
|
--------------------------------------------
|
||||||
|
local builtin = require('telescope.builtin')
|
||||||
|
-- Telescope binds
|
||||||
|
vim.keymap.set('n', '<leader>ff', builtin.find_files, { desc = 'Telescope find files' })
|
||||||
|
vim.keymap.set('n', '<leader>fg', builtin.live_grep, { desc = 'Telescope live grep' })
|
||||||
|
vim.keymap.set('n', '<leader>fb', ":Telescope file_browser<CR>", { desc = 'Telescope file_browser' })
|
||||||
|
vim.keymap.set('n', '<leader>fh', builtin.help_tags, { desc = 'Telescope help tags' })
|
||||||
|
|
||||||
|
-- Dap binds
|
||||||
|
vim.keymap.set('n', '<leader>do', dapui.open, { desc = "Open debug overlay" })
|
||||||
|
vim.keymap.set('n', '<leader>dc', dapui.close, { desc = "Close debug overlay" })
|
||||||
|
vim.keymap.set('n', '<F5>', dap.toggle_breakpoint, { desc = "Close debug overlay" })
|
||||||
|
vim.keymap.set('n', '<F6>', dap.continue, { desc = "Close debug overlay" })
|
||||||
|
vim.keymap.set('n', '<F7>', dap.step_over, { desc = "Close debug overlay" })
|
||||||
|
vim.keymap.set('n', '<F8>', dap.step_into, { desc = "Close debug overlay" })
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
113
packages/nvim/init.lua~
Normal file
113
packages/nvim/init.lua~
Normal file
@@ -0,0 +1,113 @@
|
|||||||
|
-- Tab
|
||||||
|
vim.opt.tabstop = 2 -- number of visual spaces per TAB
|
||||||
|
vim.opt.softtabstop = 2 -- number of spacesin tab when editing
|
||||||
|
vim.opt.shiftwidth = 2 -- insert 4 spaces on a tab
|
||||||
|
vim.opt.expandtab = true -- tabs are spaces, mainly because of python
|
||||||
|
|
||||||
|
-- UI config
|
||||||
|
vim.opt.number = true -- show absolute number
|
||||||
|
vim.opt.relativenumber = true -- add numbers to each line on the left side
|
||||||
|
vim.opt.splitbelow = true -- open new vertical split bottom
|
||||||
|
vim.opt.splitright = true -- open new horizontal splits right
|
||||||
|
-- vim.opt.termguicolors = true -- enabl 24-bit RGB color in the TUI
|
||||||
|
vim.opt.showmode = false -- we are experienced, wo don't need the "-- INSERT --" mode hint
|
||||||
|
|
||||||
|
-- Searching
|
||||||
|
vim.opt.incsearch = true -- search as characters are entered
|
||||||
|
vim.opt.hlsearch = false -- do not highlight matches
|
||||||
|
vim.opt.ignorecase = true -- ignore case in searches by default
|
||||||
|
vim.opt.smartcase = true -- but make it case sensitive if an uppercase is entered
|
||||||
|
|
||||||
|
-- -- Keybinds
|
||||||
|
vim.keymap.set('n', '<C-h>', '<C-w>h', opts)
|
||||||
|
vim.keymap.set('n', '<C-j>', '<C-w>j', opts)
|
||||||
|
vim.keymap.set('n', '<C-k>', '<C-w>k', opts)
|
||||||
|
vim.keymap.set('n', '<C-l>', '<C-w>l', opts)
|
||||||
|
|
||||||
|
-- Resize with arrows
|
||||||
|
-- delta: 2 lines
|
||||||
|
vim.keymap.set('n', '<C-Up>', ':resize -2<CR>', opts)
|
||||||
|
vim.keymap.set('n', '<C-Down>', ':resize +2<CR>', opts)
|
||||||
|
vim.keymap.set('n', '<C-Left>', ':vertical resize -2<CR>', opts)
|
||||||
|
vim.keymap.set('n', '<C-Right>', ':vertical resize +2<CR>', opts)
|
||||||
|
|
||||||
|
-- Telescope binds
|
||||||
|
vim.keymap.set("n", "<space>fb", ":Telescope file_browser<CR>")
|
||||||
|
|
||||||
|
|
||||||
|
vim.keymap.set('i', 'jk', '<Esc>', opts)
|
||||||
|
|
||||||
|
-- Lazy
|
||||||
|
require("config.lazy")
|
||||||
|
-- require("flutter-tools").setup {} -- use defaults
|
||||||
|
require("catppuccin").setup({
|
||||||
|
integrations = {
|
||||||
|
cmp = false,
|
||||||
|
gitsigns = true,
|
||||||
|
nvimtree = true,
|
||||||
|
treesitter = true,
|
||||||
|
notify = false,
|
||||||
|
mini = {
|
||||||
|
enabled = false,
|
||||||
|
indentscope_color = "",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
-- css colors
|
||||||
|
vim.opt.termguicolors = true
|
||||||
|
require('nvim-highlight-colors').setup({})
|
||||||
|
|
||||||
|
vim.cmd.colorscheme "catppuccin"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- lsp
|
||||||
|
local on_attach = function(_, bufnr)
|
||||||
|
|
||||||
|
local bufmap = function(keys, func)
|
||||||
|
vim.keymap.set('n', keys, func, { buffer = bufnr })
|
||||||
|
end
|
||||||
|
|
||||||
|
bufmap('<leader>r', vim.lsp.buf.rename)
|
||||||
|
bufmap('<leader>a', vim.lsp.buf.code_action)
|
||||||
|
|
||||||
|
bufmap('gd', vim.lsp.buf.definition)
|
||||||
|
bufmap('gD', vim.lsp.buf.declaration)
|
||||||
|
bufmap('gI', vim.lsp.buf.implementation)
|
||||||
|
bufmap('<leader>D', vim.lsp.buf.type_definition)
|
||||||
|
|
||||||
|
bufmap('gr', require('telescope.builtin').lsp_references)
|
||||||
|
bufmap('<leader>s', require('telescope.builtin').lsp_document_symbols)
|
||||||
|
bufmap('<leader>S', require('telescope.builtin').lsp_dynamic_workspace_symbols)
|
||||||
|
|
||||||
|
bufmap('K', vim.lsp.buf.hover)
|
||||||
|
|
||||||
|
vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_)
|
||||||
|
vim.lsp.buf.format()
|
||||||
|
end, {})
|
||||||
|
end
|
||||||
|
|
||||||
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
capabilities = require('coq').lsp_ensure_capabilities(capabilities)
|
||||||
|
|
||||||
|
require('lspconfig').lua_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
root_dir = function()
|
||||||
|
return vim.loop.cwd()
|
||||||
|
end,
|
||||||
|
cmd = { "lua-lsp" },
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
workspace = { checkThirdParty = false },
|
||||||
|
telemetry = { enable = false },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
require('lspconfig').nil_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
}
|
||||||
7
packages/nvim/lua/plugins/blankline.lua
Normal file
7
packages/nvim/lua/plugins/blankline.lua
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
return {
|
||||||
|
"lukas-reineke/indent-blankline.nvim",
|
||||||
|
main = "ibl",
|
||||||
|
---@module "ibl"
|
||||||
|
---@type ibl.config
|
||||||
|
opts = {},
|
||||||
|
}
|
||||||
6
packages/nvim/lua/plugins/comment.lua
Normal file
6
packages/nvim/lua/plugins/comment.lua
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
return {
|
||||||
|
'numToStr/Comment.nvim',
|
||||||
|
opts = {
|
||||||
|
-- add any options here
|
||||||
|
}
|
||||||
|
}
|
||||||
0
packages/nvim/lua/plugins/comment.lua~
Normal file
0
packages/nvim/lua/plugins/comment.lua~
Normal file
1
packages/nvim/lua/plugins/dap.lua
Normal file
1
packages/nvim/lua/plugins/dap.lua
Normal file
@@ -0,0 +1 @@
|
|||||||
|
return { "rcarriga/nvim-dap-ui", dependencies = {"mfussenegger/nvim-dap", "nvim-neotest/nvim-nio"} }
|
||||||
33
packages/nvim/lua/plugins/lazydev.lua
Normal file
33
packages/nvim/lua/plugins/lazydev.lua
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
return {
|
||||||
|
{
|
||||||
|
"folke/lazydev.nvim",
|
||||||
|
ft = "lua", -- only load on lua files
|
||||||
|
opts = {
|
||||||
|
library = {
|
||||||
|
-- See the configuration section for more details
|
||||||
|
-- Load luvit types when the `vim.uv` word is found
|
||||||
|
{ path = "${3rd}/luv/library", words = { "vim%.uv" } },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{ -- optional blink completion source for require statements and module annotations
|
||||||
|
"saghen/blink.cmp",
|
||||||
|
build = 'cargo +nightly build --release',
|
||||||
|
|
||||||
|
opts = {
|
||||||
|
sources = {
|
||||||
|
-- add lazydev to your completion providers
|
||||||
|
default = { "lazydev", "lsp", "path", "snippets", "buffer" },
|
||||||
|
providers = {
|
||||||
|
lazydev = {
|
||||||
|
name = "LazyDev",
|
||||||
|
module = "lazydev.integrations.blink",
|
||||||
|
-- make lazydev completions top priority (see `:h blink.cmp`)
|
||||||
|
score_offset = 100,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
-- { "folke/neodev.nvim", enabled = false }, -- make sure to uninstall or disable neodev.nvim
|
||||||
|
}
|
||||||
0
packages/nvim/lua/plugins/lazydev.lua~
Normal file
0
packages/nvim/lua/plugins/lazydev.lua~
Normal file
53
packages/nvim/lua/plugins/lsp.lua
Normal file
53
packages/nvim/lua/plugins/lsp.lua
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
local on_attach = function(_, bufnr)
|
||||||
|
|
||||||
|
local bufmap = function(keys, func)
|
||||||
|
vim.keymap.set('n', keys, func, { buffer = bufnr })
|
||||||
|
end
|
||||||
|
|
||||||
|
bufmap('<leader>r', vim.lsp.buf.rename)
|
||||||
|
bufmap('<leader>a', vim.lsp.buf.code_action)
|
||||||
|
|
||||||
|
bufmap('gd', vim.lsp.buf.definition)
|
||||||
|
bufmap('gD', vim.lsp.buf.declaration)
|
||||||
|
bufmap('gI', vim.lsp.buf.implementation)
|
||||||
|
bufmap('<leader>D', vim.lsp.buf.type_definition)
|
||||||
|
|
||||||
|
bufmap('gr', require('telescope.builtin').lsp_references)
|
||||||
|
bufmap('<leader>s', require('telescope.builtin').lsp_document_symbols)
|
||||||
|
bufmap('<leader>S', require('telescope.builtin').lsp_dynamic_workspace_symbols)
|
||||||
|
|
||||||
|
bufmap('K', vim.lsp.buf.hover)
|
||||||
|
|
||||||
|
vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_)
|
||||||
|
vim.lsp.buf.format()
|
||||||
|
end, {})
|
||||||
|
end
|
||||||
|
|
||||||
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
capabilities = require('coq').lsp_capabilities(capabilities) -- COQ spezifische Fähigkeiten
|
||||||
|
|
||||||
|
require('neodev').setup()
|
||||||
|
require('lspconfig').lua_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
root_dir = function()
|
||||||
|
return vim.loop.cwd()
|
||||||
|
end,
|
||||||
|
cmd = { "lua-language-server" },
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
workspace = { checkThirdParty = false },
|
||||||
|
telemetry = { enable = false },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
require('lspconfig').nil_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
}
|
||||||
|
|
||||||
|
require('lspconfig').rust_analyzer.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
}
|
||||||
13
packages/nvim/lua/plugins/lsp.lua~
Normal file
13
packages/nvim/lua/plugins/lsp.lua~
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
return
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
opts = function()
|
||||||
|
local keys = require("lazyvim.plugins.lsp.keymaps").get()
|
||||||
|
-- change a keymap
|
||||||
|
keys[#keys + 1] = { "K", "<cmd>echo 'hello'<cr>" }
|
||||||
|
-- disable a keymap
|
||||||
|
keys[#keys + 1] = { "K", false }
|
||||||
|
-- add a keymap
|
||||||
|
keys[#keys + 1] = { "H", "<cmd>echo 'hello'<cr>" }
|
||||||
|
end,
|
||||||
|
}
|
||||||
5
packages/nvim/lua/plugins/lualine.lua
Normal file
5
packages/nvim/lua/plugins/lualine.lua
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
return {
|
||||||
|
'nvim-lualine/lualine.nvim',
|
||||||
|
dependencies = { 'nvim-tree/nvim-web-devicons' }
|
||||||
|
|
||||||
|
}
|
||||||
0
packages/nvim/lua/plugins/lualine.lua~
Normal file
0
packages/nvim/lua/plugins/lualine.lua~
Normal file
5
packages/nvim/lua/plugins/rustaceanvim.lua
Normal file
5
packages/nvim/lua/plugins/rustaceanvim.lua
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
return {
|
||||||
|
'mrcjkb/rustaceanvim',
|
||||||
|
version = '^5', -- Recommended
|
||||||
|
lazy = false, -- This plugin is already lazy
|
||||||
|
}
|
||||||
37
packages/nvim/lua/plugins/trouble.lua
Normal file
37
packages/nvim/lua/plugins/trouble.lua
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
return {
|
||||||
|
"folke/trouble.nvim",
|
||||||
|
opts = {}, -- for default options, refer to the configuration section for custom setup.
|
||||||
|
cmd = "Trouble",
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<leader>xx",
|
||||||
|
"<cmd>Trouble diagnostics toggle<cr>",
|
||||||
|
desc = "Diagnostics (Trouble)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>xX",
|
||||||
|
"<cmd>Trouble diagnostics toggle filter.buf=0<cr>",
|
||||||
|
desc = "Buffer Diagnostics (Trouble)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cs",
|
||||||
|
"<cmd>Trouble symbols toggle focus=false<cr>",
|
||||||
|
desc = "Symbols (Trouble)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cl",
|
||||||
|
"<cmd>Trouble lsp toggle focus=false win.position=right<cr>",
|
||||||
|
desc = "LSP Definitions / references / ... (Trouble)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>xL",
|
||||||
|
"<cmd>Trouble loclist toggle<cr>",
|
||||||
|
desc = "Location List (Trouble)",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>xQ",
|
||||||
|
"<cmd>Trouble qflist toggle<cr>",
|
||||||
|
desc = "Quickfix List (Trouble)",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
18
packages/nvim/lua/plugins/whichkey.lua
Normal file
18
packages/nvim/lua/plugins/whichkey.lua
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
return {
|
||||||
|
"folke/which-key.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
opts = {
|
||||||
|
-- your configuration comes here
|
||||||
|
-- or leave it empty to use the default settings
|
||||||
|
-- refer to the configuration section below
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<leader>?",
|
||||||
|
function()
|
||||||
|
require("which-key").show({ global = false })
|
||||||
|
end,
|
||||||
|
desc = "Buffer Local Keymaps (which-key)",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
0
packages/nvim/lua/plugins/whichkey.lua~
Normal file
0
packages/nvim/lua/plugins/whichkey.lua~
Normal file
35
packages/nvim/nvim/config/lazy.lua
Normal file
35
packages/nvim/nvim/config/lazy.lua
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
-- Bootstrap lazy.nvim
|
||||||
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
|
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||||
|
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||||
|
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||||
|
if vim.v.shell_error ~= 0 then
|
||||||
|
vim.api.nvim_echo({
|
||||||
|
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||||
|
{ out, "WarningMsg" },
|
||||||
|
{ "\nPress any key to exit..." },
|
||||||
|
}, true, {})
|
||||||
|
vim.fn.getchar()
|
||||||
|
os.exit(1)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
|
||||||
|
-- Make sure to setup `mapleader` and `maplocalleader` before
|
||||||
|
-- loading lazy.nvim so that mappings are correct.
|
||||||
|
-- This is also a good place to setup other settings (vim.opt)
|
||||||
|
vim.g.mapleader = " "
|
||||||
|
vim.g.maplocalleader = "\\"
|
||||||
|
|
||||||
|
-- Setup lazy.nvim
|
||||||
|
require("lazy").setup({
|
||||||
|
spec = {
|
||||||
|
-- import your plugins
|
||||||
|
{ import = "plugins" },
|
||||||
|
},
|
||||||
|
-- Configure any other settings here. See the documentation for more details.
|
||||||
|
-- colorscheme that will be used when installing plugins.
|
||||||
|
install = { colorscheme = { "habamax" } },
|
||||||
|
-- automatically check for plugin updates
|
||||||
|
checker = { enabled = true },
|
||||||
|
})
|
||||||
18
packages/nvim/nvim/options.lua
Normal file
18
packages/nvim/nvim/options.lua
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
vim.g.mapleader = ' '
|
||||||
|
vim.g.maplocalleader = ' '
|
||||||
|
|
||||||
|
vim.o.clipboard = 'unnamedplus'
|
||||||
|
|
||||||
|
vim.o.number = true
|
||||||
|
-- vim.o.relativenumber = true
|
||||||
|
|
||||||
|
vim.o.signcolumn = 'yes'
|
||||||
|
|
||||||
|
vim.o.tabstop = 4
|
||||||
|
vim.o.shiftwidth = 4
|
||||||
|
|
||||||
|
vim.o.updatetime = 300
|
||||||
|
|
||||||
|
vim.o.termguicolors = true
|
||||||
|
|
||||||
|
vim.o.mouse = 'a'
|
||||||
15
packages/nvim/nvim/plugins/#treesitter.lua#
Normal file
15
packages/nvim/nvim/plugins/#treesitter.lua#
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
|
||||||
|
return {
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
build = ":TSUpdate",
|
||||||
|
config= function ()
|
||||||
|
local configs = require("nvim-treesitter.configs")
|
||||||
|
|
||||||
|
configs.setup({
|
||||||
|
ensure_installed = { "c", "lua", "html", "dart" },
|
||||||
|
sync_install = false,
|
||||||
|
highlight = { enable = true },
|
||||||
|
indent = { enable = true },
|
||||||
|
})
|
||||||
|
end
|
||||||
|
}
|
||||||
1
packages/nvim/nvim/plugins/catppuccin.lua
Normal file
1
packages/nvim/nvim/plugins/catppuccin.lua
Normal file
@@ -0,0 +1 @@
|
|||||||
|
return { "catppuccin/nvim", name = "catppuccin", priority = 1000 }
|
||||||
46
packages/nvim/nvim/plugins/cmp.lua
Normal file
46
packages/nvim/nvim/plugins/cmp.lua
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
local cmp = require('cmp')
|
||||||
|
local luasnip = require('luasnip')
|
||||||
|
|
||||||
|
require('luasnip.loaders.from_vscode').lazy_load()
|
||||||
|
luasnip.config.setup {}
|
||||||
|
|
||||||
|
cmp.setup {
|
||||||
|
snippet = {
|
||||||
|
expand = function(args)
|
||||||
|
luasnip.lsp_expand(args.body)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
mapping = cmp.mapping.preset.insert {
|
||||||
|
['<C-n>'] = cmp.mapping.select_next_item(),
|
||||||
|
['<C-p>'] = cmp.mapping.select_prev_item(),
|
||||||
|
['<C-d>'] = cmp.mapping.scroll_docs(-4),
|
||||||
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||||
|
['<C-Space>'] = cmp.mapping.complete {},
|
||||||
|
['<CR>'] = cmp.mapping.confirm {
|
||||||
|
behavior = cmp.ConfirmBehavior.Replace,
|
||||||
|
select = true,
|
||||||
|
},
|
||||||
|
['<Tab>'] = cmp.mapping(function(fallback)
|
||||||
|
if cmp.visible() then
|
||||||
|
cmp.select_next_item()
|
||||||
|
elseif luasnip.expand_or_locally_jumpable() then
|
||||||
|
luasnip.expand_or_jump()
|
||||||
|
else
|
||||||
|
fallback()
|
||||||
|
end
|
||||||
|
end, { 'i', 's' }),
|
||||||
|
['<S-Tab>'] = cmp.mapping(function(fallback)
|
||||||
|
if cmp.visible() then
|
||||||
|
cmp.select_prev_item()
|
||||||
|
elseif luasnip.locally_jumpable(-1) then
|
||||||
|
luasnip.jump(-1)
|
||||||
|
else
|
||||||
|
fallback()
|
||||||
|
end
|
||||||
|
end, { 'i', 's' }),
|
||||||
|
},
|
||||||
|
sources = {
|
||||||
|
{ name = 'nvim_lsp' },
|
||||||
|
{ name = 'luasnip' },
|
||||||
|
},
|
||||||
|
}
|
||||||
30
packages/nvim/nvim/plugins/coq.lua
Normal file
30
packages/nvim/nvim/plugins/coq.lua
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
|
||||||
|
return {
|
||||||
|
"neovim/nvim-lspconfig", -- REQUIRED: for native Neovim LSP integration
|
||||||
|
lazy = false, -- REQUIRED: tell lazy.nvim to start this plugin at startup
|
||||||
|
dependencies = {
|
||||||
|
-- main one
|
||||||
|
{ "ms-jpq/coq_nvim", branch = "coq" },
|
||||||
|
|
||||||
|
-- 9000+ Snippets
|
||||||
|
{ "ms-jpq/coq.artifacts", branch = "artifacts" },
|
||||||
|
|
||||||
|
-- lua & third party sources -- See https://github.com/ms-jpq/coq.thirdparty
|
||||||
|
-- Need to **configure separately**
|
||||||
|
{ 'ms-jpq/coq.thirdparty', branch = "3p" }
|
||||||
|
-- - shell repl
|
||||||
|
-- - nvim lua api
|
||||||
|
-- - scientific calculator
|
||||||
|
-- - comment banner
|
||||||
|
-- - etc
|
||||||
|
},
|
||||||
|
init = function()
|
||||||
|
vim.g.coq_settings = {
|
||||||
|
auto_start = true, -- if you want to start COQ at startup
|
||||||
|
-- Your COQ settings here
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
config = function()
|
||||||
|
-- Your LSP settings here
|
||||||
|
end,
|
||||||
|
}
|
||||||
10
packages/nvim/nvim/plugins/flutter.lua
Normal file
10
packages/nvim/nvim/plugins/flutter.lua
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
return {
|
||||||
|
|
||||||
|
'nvim-flutter/flutter-tools.nvim',
|
||||||
|
lazy = false,
|
||||||
|
dependencies = {
|
||||||
|
'nvim-lua/plenary.nvim',
|
||||||
|
'stevearc/dressing.nvim', -- optional for vim.ui.select
|
||||||
|
},
|
||||||
|
config = true,
|
||||||
|
}
|
||||||
1
packages/nvim/nvim/plugins/highlight-colors.lua
Normal file
1
packages/nvim/nvim/plugins/highlight-colors.lua
Normal file
@@ -0,0 +1 @@
|
|||||||
|
return { "brenoprata10/nvim-highlight-colors", name = "highlight-colotrs" }
|
||||||
60
packages/nvim/nvim/plugins/lazy.lua
Normal file
60
packages/nvim/nvim/plugins/lazy.lua
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
-- Bootstrap lazy.nvim
|
||||||
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
|
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||||
|
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||||
|
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||||
|
if vim.v.shell_error ~= 0 then
|
||||||
|
vim.api.nvim_echo({
|
||||||
|
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||||
|
{ out, "WarningMsg" },
|
||||||
|
{ "\nPress any key to exit..." },
|
||||||
|
}, true, {})
|
||||||
|
vim.fn.getchar()
|
||||||
|
os.exit(1)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
|
||||||
|
-- Make sure to setup `mapleader` and `maplocalleader` before
|
||||||
|
-- loading lazy.nvim so that mappings are correct.
|
||||||
|
-- This is also a good place to setup other settings (vim.opt)
|
||||||
|
vim.g.mapleader = " "
|
||||||
|
vim.g.maplocalleader = "\\"
|
||||||
|
|
||||||
|
-- Setup lazy.nvim
|
||||||
|
require("lazy").setup({
|
||||||
|
spec = {
|
||||||
|
-- add your plugins here
|
||||||
|
|
||||||
|
{
|
||||||
|
'nvim-lualine/lualine.nvim',
|
||||||
|
dependencies = { 'nvim-tree/nvim-web-devicons' }
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"folke/which-key.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
opts = {
|
||||||
|
-- your configuration comes here
|
||||||
|
-- or leave it empty to use the default settings
|
||||||
|
-- refer to the configuration section below
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<leader>?",
|
||||||
|
function()
|
||||||
|
require("which-key").show({ global = false })
|
||||||
|
end,
|
||||||
|
desc = "Buffer Local Keymaps (which-key)",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
},
|
||||||
|
-- Configure any other settings here. See the documentation for more details.
|
||||||
|
-- colorscheme that will be used when installing plugins.
|
||||||
|
install = { colorscheme = { "catppuccin" } },
|
||||||
|
-- automatically check for plugin updates
|
||||||
|
checker = { enabled = true },
|
||||||
|
})
|
||||||
34
packages/nvim/nvim/plugins/lazy.lua~
Normal file
34
packages/nvim/nvim/plugins/lazy.lua~
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
-- Bootstrap lazy.nvim
|
||||||
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
|
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||||
|
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||||
|
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||||
|
if vim.v.shell_error ~= 0 then
|
||||||
|
vim.api.nvim_echo({
|
||||||
|
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||||
|
{ out, "WarningMsg" },
|
||||||
|
{ "\nPress any key to exit..." },
|
||||||
|
}, true, {})
|
||||||
|
vim.fn.getchar()
|
||||||
|
os.exit(1)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
|
||||||
|
-- Make sure to setup `mapleader` and `maplocalleader` before
|
||||||
|
-- loading lazy.nvim so that mappings are correct.
|
||||||
|
-- This is also a good place to setup other settings (vim.opt)
|
||||||
|
vim.g.mapleader = " "
|
||||||
|
vim.g.maplocalleader = "\\"
|
||||||
|
|
||||||
|
-- Setup lazy.nvim
|
||||||
|
require("lazy").setup({
|
||||||
|
spec = {
|
||||||
|
-- add your plugins here
|
||||||
|
},
|
||||||
|
-- Configure any other settings here. See the documentation for more details.
|
||||||
|
-- colorscheme that will be used when installing plugins.
|
||||||
|
-- install = { colorscheme = { "habamax" } },
|
||||||
|
-- automatically check for plugin updates
|
||||||
|
checker = { enabled = true },
|
||||||
|
})
|
||||||
48
packages/nvim/nvim/plugins/lsp.lua
Normal file
48
packages/nvim/nvim/plugins/lsp.lua
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
local on_attach = function(_, bufnr)
|
||||||
|
|
||||||
|
local bufmap = function(keys, func)
|
||||||
|
vim.keymap.set('n', keys, func, { buffer = bufnr })
|
||||||
|
end
|
||||||
|
|
||||||
|
bufmap('<leader>r', vim.lsp.buf.rename)
|
||||||
|
bufmap('<leader>a', vim.lsp.buf.code_action)
|
||||||
|
|
||||||
|
bufmap('gd', vim.lsp.buf.definition)
|
||||||
|
bufmap('gD', vim.lsp.buf.declaration)
|
||||||
|
bufmap('gI', vim.lsp.buf.implementation)
|
||||||
|
bufmap('<leader>D', vim.lsp.buf.type_definition)
|
||||||
|
|
||||||
|
bufmap('gr', require('telescope.builtin').lsp_references)
|
||||||
|
bufmap('<leader>s', require('telescope.builtin').lsp_document_symbols)
|
||||||
|
bufmap('<leader>S', require('telescope.builtin').lsp_dynamic_workspace_symbols)
|
||||||
|
|
||||||
|
bufmap('K', vim.lsp.buf.hover)
|
||||||
|
|
||||||
|
vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_)
|
||||||
|
vim.lsp.buf.format()
|
||||||
|
end, {})
|
||||||
|
end
|
||||||
|
|
||||||
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
capabilities = require('cmp_nvim_lsp').default_capabilities(capabilities)
|
||||||
|
|
||||||
|
require('neodev').setup()
|
||||||
|
require('lspconfig').lua_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
root_dir = function()
|
||||||
|
return vim.loop.cwd()
|
||||||
|
end,
|
||||||
|
cmd = { "lua-language-server" },
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
workspace = { checkThirdParty = false },
|
||||||
|
telemetry = { enable = false },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
require('lspconfig').nil_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
}
|
||||||
48
packages/nvim/nvim/plugins/lsp.lua~
Normal file
48
packages/nvim/nvim/plugins/lsp.lua~
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
local on_attach = function(_, bufnr)
|
||||||
|
|
||||||
|
local bufmap = function(keys, func)
|
||||||
|
vim.keymap.set('n', keys, func, { buffer = bufnr })
|
||||||
|
end
|
||||||
|
|
||||||
|
bufmap('<leader>r', vim.lsp.buf.rename)
|
||||||
|
bufmap('<leader>a', vim.lsp.buf.code_action)
|
||||||
|
|
||||||
|
bufmap('gd', vim.lsp.buf.definition)
|
||||||
|
bufmap('gD', vim.lsp.buf.declaration)
|
||||||
|
bufmap('gI', vim.lsp.buf.implementation)
|
||||||
|
bufmap('<leader>D', vim.lsp.buf.type_definition)
|
||||||
|
|
||||||
|
bufmap('gr', require('telescope.builtin').lsp_references)
|
||||||
|
bufmap('<leader>s', require('telescope.builtin').lsp_document_symbols)
|
||||||
|
bufmap('<leader>S', require('telescope.builtin').lsp_dynamic_workspace_symbols)
|
||||||
|
|
||||||
|
bufmap('K', vim.lsp.buf.hover)
|
||||||
|
|
||||||
|
vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_)
|
||||||
|
vim.lsp.buf.format()
|
||||||
|
end, {})
|
||||||
|
end
|
||||||
|
|
||||||
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
capabilities = require('cmp_nvim_lsp').default_capabilities(capabilities)
|
||||||
|
|
||||||
|
require('neodev').setup()
|
||||||
|
require('lspconfig').lua_ls.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
root_dir = function()
|
||||||
|
return vim.loop.cwd()
|
||||||
|
end,
|
||||||
|
cmd = { "lua-language-server" },
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
workspace = { checkThirdParty = false },
|
||||||
|
telemetry = { enable = false },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
require('lspconfig').rnix.setup {
|
||||||
|
on_attach = on_attach,
|
||||||
|
capabilities = capabilities,
|
||||||
|
}
|
||||||
41
packages/nvim/nvim/plugins/lualine.lua
Normal file
41
packages/nvim/nvim/plugins/lualine.lua
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
require('lualine').setup {
|
||||||
|
options = {
|
||||||
|
icons_enabled = true,
|
||||||
|
theme = 'catppuccin',
|
||||||
|
component_separators = { left = '', right = ''},
|
||||||
|
section_separators = { left = '', right = ''},
|
||||||
|
disabled_filetypes = {
|
||||||
|
statusline = {},
|
||||||
|
winbar = {},
|
||||||
|
},
|
||||||
|
ignore_focus = {},
|
||||||
|
always_divide_middle = true,
|
||||||
|
always_show_tabline = true,
|
||||||
|
globalstatus = false,
|
||||||
|
refresh = {
|
||||||
|
statusline = 100,
|
||||||
|
tabline = 100,
|
||||||
|
winbar = 100,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
sections = {
|
||||||
|
lualine_a = {'mode'},
|
||||||
|
lualine_b = {'branch', 'diff', 'diagnostics'},
|
||||||
|
lualine_c = {'filename'},
|
||||||
|
lualine_x = {'encoding', 'fileformat', 'filetype'},
|
||||||
|
lualine_y = {'progress'},
|
||||||
|
lualine_z = {'location'}
|
||||||
|
},
|
||||||
|
inactive_sections = {
|
||||||
|
lualine_a = {},
|
||||||
|
lualine_b = {},
|
||||||
|
lualine_c = {'filename'},
|
||||||
|
lualine_x = {'location'},
|
||||||
|
lualine_y = {},
|
||||||
|
lualine_z = {}
|
||||||
|
},
|
||||||
|
tabline = {},
|
||||||
|
winbar = {},
|
||||||
|
inactive_winbar = {},
|
||||||
|
extensions = {}
|
||||||
|
}
|
||||||
5
packages/nvim/nvim/plugins/lualine.lua~
Normal file
5
packages/nvim/nvim/plugins/lualine.lua~
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
return {
|
||||||
|
{
|
||||||
|
'nvim-lualine/lualine.nvim',
|
||||||
|
dependencies = { 'nvim-tree/nvim-web-devicons' }
|
||||||
|
}}
|
||||||
8
packages/nvim/nvim/plugins/other.lua
Normal file
8
packages/nvim/nvim/plugins/other.lua
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
-- Lualine
|
||||||
|
require("lualine").setup({
|
||||||
|
icons_enabled = true,
|
||||||
|
theme = 'catppuccin',
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Comment
|
||||||
|
require("Comment").setup()
|
||||||
7
packages/nvim/nvim/plugins/other.lua~
Normal file
7
packages/nvim/nvim/plugins/other.lua~
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
-- Lualine
|
||||||
|
require("lualine").setup({
|
||||||
|
icons_enabled = true,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Comment
|
||||||
|
require("Comment").setup()
|
||||||
13
packages/nvim/nvim/plugins/telescope.lua
Normal file
13
packages/nvim/nvim/plugins/telescope.lua
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
require('telescope').setup({
|
||||||
|
extensions = {
|
||||||
|
fzf = {
|
||||||
|
fuzzy = true, -- false will only do exact matching
|
||||||
|
override_generic_sorter = true, -- override the generic sorter
|
||||||
|
override_file_sorter = true, -- override the file sorter
|
||||||
|
case_mode = "smart_case", -- or "ignore_case" or "respect_case"
|
||||||
|
-- the default case_mode is "smart_case"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
require('telescope').load_extension('fzf')
|
||||||
4
packages/nvim/nvim/plugins/telescope.lua~
Normal file
4
packages/nvim/nvim/plugins/telescope.lua~
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
return {
|
||||||
|
"nvim-telescope/telescope-file-browser.nvim",
|
||||||
|
dependencies = { "nvim-telescope/telescope.nvim", "nvim-lua/plenary.nvim" }
|
||||||
|
}
|
||||||
15
packages/nvim/nvim/plugins/treesitter.lua
Normal file
15
packages/nvim/nvim/plugins/treesitter.lua
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
|
||||||
|
return {
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
build = ":TSUpdate",
|
||||||
|
config = function ()
|
||||||
|
local configs = require("nvim-treesitter.configs")
|
||||||
|
|
||||||
|
configs.setup({
|
||||||
|
ensure_installed = { "c", "lua", "html", "dart" },
|
||||||
|
sync_install = false,
|
||||||
|
highlight = { enable = true },
|
||||||
|
indent = { enable = true },
|
||||||
|
})
|
||||||
|
end
|
||||||
|
}
|
||||||
@@ -3,13 +3,13 @@
|
|||||||
"position": "top",
|
"position": "top",
|
||||||
"height": 35,
|
"height": 35,
|
||||||
"spacing": 0,
|
"spacing": 0,
|
||||||
"modules-left": ["clock", "sway/workspaces","sway/mode"],
|
"modules-left": ["clock", "hyprland/workspaces"],
|
||||||
"modules-center": ["sway/window"],
|
"modules-center": [ ],
|
||||||
"modules-right": ["network", "cpu", "memory", "custom/keyboard-layout", "pulseaudio", "tray"],
|
"modules-right": ["network", "cpu", "memory", "custom/keyboard-layout", "pulseaudio", "tray"],
|
||||||
|
|
||||||
"custom/keyboard-layout": {
|
"custom/keyboard-layout": {
|
||||||
"interval": 1,
|
"interval": 1,
|
||||||
"exec": "swaymsg -t get_inputs | jq -r '.[] | select(.type == \"keyboard\") | .xkb_active_layout_name'"
|
"exec": "hyprctl devices -j | jq -r '.keyboards[] | .active_keymap' | head -n1 | cut -c1-2 | tr 'a-z' 'A-Z"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user