├── .config
├── bat
│ └── themes
│ │ └── Catppuccin-mocha.tmTheme
├── cava
│ ├── .gitignore
│ └── config
├── dunst
│ ├── dunstrc
│ └── icons
│ │ ├── brightness-high.svg
│ │ ├── brightness-low.svg
│ │ ├── volume-high.svg
│ │ ├── volume-low.svg
│ │ ├── volume-medium.svg
│ │ └── volume-mute.svg
├── fastfetch
│ └── config.jsonc
├── hypr
│ ├── configs
│ │ ├── default_apps.conf
│ │ ├── env.conf
│ │ ├── inputs.conf
│ │ ├── keybinds.conf
│ │ ├── monitors.conf
│ │ ├── settings.conf
│ │ ├── startup_apps.conf
│ │ └── window_rules.conf
│ ├── hypridle.conf
│ ├── hyprland.conf
│ ├── hyprlock.conf
│ ├── hyprpaper.conf
│ ├── pyprland.toml
│ └── scripts
│ │ ├── brightness.sh
│ │ ├── clip_manager.sh
│ │ ├── fix_screen_share.sh
│ │ ├── portal_hyprland.sh
│ │ ├── refresh.sh
│ │ ├── rofi_calculator.sh
│ │ ├── rofi_emoji.sh
│ │ └── volume.sh
├── kitty
│ ├── current-theme.conf
│ ├── kitty.conf
│ ├── kitty.conf.bak
│ └── themes
│ │ └── oldworld.conf
├── lazygit
│ ├── .gitignore
│ └── config.yml
├── nvim
│ ├── .gitignore
│ ├── init.lua
│ ├── lua
│ │ ├── configs
│ │ │ ├── blink.lua
│ │ │ ├── bufferline.lua
│ │ │ ├── conform.lua
│ │ │ ├── lsp
│ │ │ │ ├── init.lua
│ │ │ │ ├── servers.lua
│ │ │ │ └── settings.lua
│ │ │ ├── lualine.lua
│ │ │ ├── luasnip.lua
│ │ │ ├── mason.lua
│ │ │ ├── snacks
│ │ │ │ ├── dashboard.lua
│ │ │ │ └── init.lua
│ │ │ └── treesitter.lua
│ │ ├── core
│ │ │ ├── autocmds.lua
│ │ │ ├── icons.lua
│ │ │ ├── init.lua
│ │ │ ├── keymappings.lua
│ │ │ ├── lazy.lua
│ │ │ ├── lazyConfig.lua
│ │ │ └── options.lua
│ │ └── plugins
│ │ │ ├── coding.lua
│ │ │ ├── colorscheme.lua
│ │ │ ├── editor.lua
│ │ │ ├── linters_formatters.lua
│ │ │ ├── lsp.lua
│ │ │ ├── misc.lua
│ │ │ ├── snacks.lua
│ │ │ ├── treesitter.lua
│ │ │ └── ui.lua
│ └── snippets
│ │ ├── django.json
│ │ ├── htmldjango.json
│ │ ├── javascript.json
│ │ ├── javascriptreact.json
│ │ ├── lua.json
│ │ ├── markdown.json
│ │ ├── package.json
│ │ ├── python.json
│ │ ├── rust.json
│ │ └── sql.json
├── rofi
│ ├── config.rasi
│ ├── config_calculator.rasi
│ ├── config_clipboard.rasi
│ ├── config_emoji.rasi
│ ├── master_config.rasi
│ └── oldworld.rasi
├── starship.toml
├── waybar
│ ├── config
│ ├── oldworld.css
│ └── style.css
├── zathura
│ ├── oldworld
│ └── zathurarc
└── zsh
│ ├── .zshrc
│ └── configs
│ ├── aliases.zsh
│ ├── colors_catppuccin.zsh
│ ├── colors_oldworld.zsh
│ └── exports.zsh
├── README.md
└── wallpapers
└── pastel.jpg
/.config/cava/.gitignore:
--------------------------------------------------------------------------------
1 | shaders
2 |
--------------------------------------------------------------------------------
/.config/cava/config:
--------------------------------------------------------------------------------
1 | [color]
2 | gradient = 1
3 |
4 | gradient_color_1 = '#90b99f'
5 | gradient_color_2 = '#85b5ba'
6 | gradient_color_3 = '#92a2d5'
7 | gradient_color_4 = '#aca1cf'
8 | gradient_color_5 = '#e29eca'
9 | gradient_color_6 = '#ea83a5'
10 | gradient_color_7 = '#f5a191'
11 | gradient_color_8 = '#e6b99d'
12 |
--------------------------------------------------------------------------------
/.config/dunst/dunstrc:
--------------------------------------------------------------------------------
1 | [global]
2 | monitor = 0
3 | follow = none
4 | width = 375
5 | height = 145
6 | origin = top-center
7 | alignment = "left"
8 | vertical_alignment = "center"
9 | ellipsize = "middle"
10 | offset = "15x15"
11 | padding = 15
12 | horizontal_padding = 15
13 | text_icon_padding = 15
14 | icon_position = "left"
15 | min_icon_size = 24
16 | max_icon_size = 26
17 | progress_bar = true
18 | progress_bar_height = 17
19 | progress_bar_frame_width = 1
20 | progress_bar_min_width = 150
21 | progress_bar_max_width = 400
22 | separator_height = 2
23 | frame_width = 2
24 | frame_color = "#3b3b3e"
25 | separator_color = "frame"
26 | corner_radius = 12
27 | transparency = 0
28 | gap_size = 8
29 | line_height = 0
30 | notification_limit = 0
31 | idle_threshold = 120
32 | history_length = 20
33 | show_age_threshold = 60
34 | markup = "full"
35 | font = "Maple Mono 12"
36 | word_wrap = "yes"
37 | sort = "yes"
38 | shrink = "no"
39 | indicate_hidden = "yes"
40 | sticky_history = "yes"
41 | ignore_newline = "no"
42 | show_indicators = "no"
43 | stack_duplicates = true
44 | always_run_script = true
45 | hide_duplicate_count = false
46 | ignore_dbusclose = false
47 | force_xwayland = false
48 | force_xinerama = false
49 | mouse_left_click = "do_action"
50 | mouse_middle_click = "close_all"
51 | mouse_right_click = "close_current"
52 | [experimental]
53 | per_monitor_dpi = false
54 |
55 |
56 | [urgency_low]
57 | background = "#131314"
58 | foreground = "#c9c7cd"
59 | highlight = "#92a2d5"
60 | timeout = 4
61 |
62 | [urgency_normal]
63 | background = "#131314"
64 | foreground = "#c9c7cd"
65 | highlight = "#cba6f7"
66 | timeout = 6
67 |
68 | [urgency_critical]
69 | background = "#131314"
70 | foreground = "#c9c7cd"
71 | highlight = "#cba6f7"
72 | timeout = 0
73 |
--------------------------------------------------------------------------------
/.config/dunst/icons/brightness-high.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.config/dunst/icons/brightness-low.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.config/dunst/icons/volume-high.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
--------------------------------------------------------------------------------
/.config/dunst/icons/volume-low.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.config/dunst/icons/volume-medium.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.config/dunst/icons/volume-mute.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.config/fastfetch/config.jsonc:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
3 | "display": {
4 | "separator": "",
5 | "key": {
6 | "width": 15
7 | }
8 | },
9 | "modules": [
10 | {
11 | "format": " ",
12 | "type": "custom"
13 | },
14 | {
15 | "format": "\u001b[11D\u001b[34m ╭───────────╮",
16 | "type": "custom"
17 | },
18 | {
19 | "key": "│ │\u001b[11D\u001b[32m hname",
20 | "type": "title",
21 | "format": "{2}"
22 | },
23 | {
24 | "key": "│ │\u001b[11D\u001b[33m uptime",
25 | "type": "uptime"
26 | },
27 | {
28 | "key": "│ │\u001b[11D\u001b[34m distro",
29 | "type": "os"
30 | },
31 | {
32 | "key": "│ │\u001b[11D\u001b[35m kernel",
33 | "type": "kernel"
34 | },
35 | {
36 | "key": "│ │\u001b[11D\u001b[36m desktop",
37 | "type": "wm"
38 | },
39 | {
40 | "key": "│ │\u001b[11D\u001b[31m term",
41 | "type": "terminal"
42 | },
43 | {
44 | "key": "│ │\u001b[11D\u001b[32m shell",
45 | "type": "shell"
46 | },
47 | {
48 | "key": "│ │\u001b[11D\u001b[33m cpu",
49 | "type": "cpu"
50 | },
51 | {
52 | "key": "│ │\u001b[11D\u001b[34m disk",
53 | "type": "disk",
54 | "folders": "/"
55 | },
56 | {
57 | "key": "│ │\u001b[11D\u001b[35m memory",
58 | "type": "memory"
59 | },
60 | {
61 | "key": "│ │\u001b[11D\u001b[36m packages",
62 | "type": "packages"
63 | },
64 | {
65 | "key": "│ │\u001b[11D\u001b[31m host",
66 | "type": "host"
67 | },
68 | {
69 | "key": "│ │\u001b[11D\u001b[32m gpu",
70 | "type": "gpu"
71 | },
72 | {
73 | "format": "\u001b[11D\u001b[34m ├───────────┤",
74 | "type": "custom"
75 | },
76 | {
77 | "key": "│ │\u001b[11D\u001b[m color",
78 | "type": "colors",
79 | "symbol": "circle"
80 | },
81 | {
82 | "format": "\u001b[11D\u001b[34m ╰───────────╯",
83 | "type": "custom"
84 | }
85 | ]
86 | }
87 |
--------------------------------------------------------------------------------
/.config/hypr/configs/default_apps.conf:
--------------------------------------------------------------------------------
1 | $terminal = kitty
2 | $fileManager = thunar
3 | $menu = pkill rofi || rofi -show drun
4 | $browser = brave
5 |
6 |
--------------------------------------------------------------------------------
/.config/hypr/configs/env.conf:
--------------------------------------------------------------------------------
1 | env = XCURSOR_SIZE,24
2 | env = HYPRCURSOR_SIZE,24
3 |
4 | env = CLUTTER_BACKEND,wayland
5 | env = GDK_BACKEND,wayland,x11
6 | env = QT_AUTO_SCREEN_SCALE_FACTOR,1
7 | env = QT_QPA_PLATFORM,wayland;xcb
8 | env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
9 | env = QT_QPA_PLATFORMTHEME,qt5ct
10 | env = XDG_CURRENT_DESKTOP,Hyprland
11 | env = XDG_SESSION_DESKTOP,Hyprland
12 | env = XDG_SESSION_TYPE,wayland
13 |
14 | env = ELECTRON_OZONE_PLATFORM_HINT,auto
15 |
--------------------------------------------------------------------------------
/.config/hypr/configs/inputs.conf:
--------------------------------------------------------------------------------
1 | input {
2 | kb_layout = us
3 | kb_variant = altgr-intl
4 | kb_model =
5 | kb_options = lv3:switch
6 | kb_rules =
7 | follow_mouse = 1
8 |
9 | sensitivity = 0
10 |
11 | touchpad {
12 | natural_scroll = true
13 | }
14 | }
15 |
16 | gestures {
17 | workspace_swipe = true
18 | }
19 |
20 | device {
21 | name = epic-mouse-v1
22 | sensitivity = -0.5
23 | }
24 |
--------------------------------------------------------------------------------
/.config/hypr/configs/keybinds.conf:
--------------------------------------------------------------------------------
1 |
2 | $scripts_dir = $HOME/.config/hypr/scripts
3 | $mainMod = SUPER
4 |
5 | # Execute apps
6 | bind = $mainMod, RETURN, exec, $terminal
7 | bind = $mainMod, K, exec, $browser
8 | bind = $mainMod, D, exec, $menu
9 | bind = $mainMod, T, exec, $fileManager
10 | bind = $mainMod ALT, V, exec, $scripts_dir/clip_manager.sh
11 | bind = $mainMod ALT, C, exec, $scripts_dir/rofi_calculator.sh
12 | bind = $mainMod ALT, E, exec, $scripts_dir/rofi_emoji.sh
13 |
14 | # Pyprland (Toggle term and zoom)
15 | bind = $mainMod SHIFT, Return, exec, pypr toggle term
16 | bind = $mainMod, Z, exec, pypr zoom
17 |
18 | bind = CTRL ALT, Delete, exec, hyprctl dispatch exit 0
19 | bind = $mainMod, Q, killactive,
20 | bind = $mainMod, M, exit,
21 | bind = $mainMod, F, fullscreen
22 | bind = $mainMod SHIFT, F, togglefloating,
23 | bind = $mainMod, P, pseudo, # dwindle
24 | bind = $mainMod, J, togglesplit, # dwindle
25 |
26 | # Move focus with mainMod + arrow keys
27 | bind = $mainMod, left, movefocus, l
28 | bind = $mainMod, right, movefocus, r
29 | bind = $mainMod, up, movefocus, u
30 | bind = $mainMod, down, movefocus, d
31 |
32 | # Resize windows
33 | binde = $mainMod ALT, left, resizeactive,-50 0
34 | binde = $mainMod ALT, right, resizeactive,50 0
35 | binde = $mainMod ALT, up, resizeactive,0 -50
36 | binde = $mainMod ALT, down, resizeactive,0 50
37 |
38 | # Move windows
39 | bind = $mainMod CTRL, left, movewindow, l
40 | bind = $mainMod CTRL, right, movewindow, r
41 | bind = $mainMod CTRL, up, movewindow, u
42 | bind = $mainMod CTRL, down, movewindow, d
43 |
44 | bind = $mainMod SHIFT, left, movecurrentworkspacetomonitor, l
45 | bind = $mainMod SHIFT, right, movecurrentworkspacetomonitor, r
46 | # Switch workspaces with mainMod + [0-9]
47 | bind = $mainMod, 1, workspace, 1
48 | bind = $mainMod, 2, workspace, 2
49 | bind = $mainMod, 3, workspace, 3
50 | bind = $mainMod, 4, workspace, 4
51 | bind = $mainMod, 5, workspace, 5
52 | bind = $mainMod, 6, workspace, 6
53 | bind = $mainMod, 7, workspace, 7
54 | bind = $mainMod, 8, workspace, 8
55 | bind = $mainMod, 9, workspace, 9
56 | bind = $mainMod, 0, workspace, 10
57 |
58 |
59 | # Move active window to a workspace with mainMod + SHIFT + [0-9]
60 | bind = $mainMod SHIFT, 1, movetoworkspace, 1
61 | bind = $mainMod SHIFT, 2, movetoworkspace, 2
62 | bind = $mainMod SHIFT, 3, movetoworkspace, 3
63 | bind = $mainMod SHIFT, 4, movetoworkspace, 4
64 | bind = $mainMod SHIFT, 5, movetoworkspace, 5
65 | bind = $mainMod SHIFT, 6, movetoworkspace, 6
66 | bind = $mainMod SHIFT, 7, movetoworkspace, 7
67 | bind = $mainMod SHIFT, 8, movetoworkspace, 8
68 | bind = $mainMod SHIFT, 9, movetoworkspace, 9
69 | bind = $mainMod SHIFT, 0, movetoworkspace, 10
70 | bind = $mainMod SHIFT, bracketleft, movetoworkspace, -1
71 | bind = $mainMod SHIFT, bracketright, movetoworkspace, +1
72 |
73 | # Example special workspace (scratchpad)
74 | bind = $mainMod, O, togglespecialworkspace, magic
75 | # bind = $mainMod SHIFT, S, movetoworkspace, special:magic
76 |
77 | # Scroll through existing workspaces with mainMod + scroll
78 | bind = $mainMod, mouse_down, workspace, e+1
79 | bind = $mainMod, mouse_up, workspace, e-1
80 | # Workspaces related
81 | bind = $mainMod, tab, workspace, m+1
82 | bind = $mainMod SHIFT, tab, workspace, m-1
83 | bindm = $mainMod, mouse:272, movewindow
84 | bindm = $mainMod, mouse:273, resizewindow
85 |
86 | # Brightness control
87 | bindel = , XF86MonBrightnessUp, exec, $scripts_dir/brightness.sh --inc
88 | bindel = , XF86MonBrightnessDown, exec, $scripts_dir/brightness.sh --dec
89 |
90 | # Volume control
91 | binde = , xf86audioraisevolume, exec, $scripts_dir/volume.sh --inc
92 | binde = , xf86audiolowervolume, exec, $scripts_dir/volume.sh --dec
93 | bindel = , XF86AudioMute, exec, $scripts_dir/volume.sh --toggle
94 |
95 | # Screenshots
96 | bind = $mainMod SHIFT, S, exec, hyprshot -m region --clipboard-only
97 | bind = $mainMod ALT, S, exec, hyprshot -m region -o ~/Pictures/screenshots/
98 | bind = $mainMod, S, exec, hyprshot -m output -o ~/Pictures/screenshots/
99 |
100 | bind = $mainMod ALT, R, exec, $scripts_dir/refresh.sh
101 |
102 | bind = $mainMod, N, exec, playerctl play-pause
103 |
104 |
--------------------------------------------------------------------------------
/.config/hypr/configs/monitors.conf:
--------------------------------------------------------------------------------
1 | monitor=HDMI-A-2,preferred,1920x0,1
2 | monitor=eDP-1,preferred,auto,1
3 |
--------------------------------------------------------------------------------
/.config/hypr/configs/settings.conf:
--------------------------------------------------------------------------------
1 | general {
2 | gaps_in = 6
3 | gaps_out = 10
4 | border_size = 2
5 | resize_on_border = true
6 | col.active_border = rgb(6c6874)
7 | col.inactive_border = rgb(3b3b3e)
8 | allow_tearing = false
9 | layout = dwindle
10 | }
11 |
12 | misc {
13 | disable_hyprland_logo = true
14 | disable_splash_rendering = true
15 | middle_click_paste = false
16 | }
17 |
18 | ecosystem {
19 | no_update_news = true
20 | }
21 |
22 | decoration {
23 | rounding = 10
24 | active_opacity = 1.0
25 | inactive_opacity = 1.0
26 | shadow {
27 | enabled = true
28 | color = rgba(1a1a1aee)
29 | }
30 | blur {
31 | enabled = true
32 | size = 3
33 | passes = 1
34 | vibrancy = 0.1696
35 | }
36 | }
37 |
38 | animations {
39 | enabled = true
40 |
41 | bezier = wind, 0.05, 0.9, 0.1, 1.05
42 | bezier = winIn, 0.1, 1.1, 0.1, 1.1
43 | bezier = winOut, 0.3, -0.3, 0, 1
44 | bezier = liner, 1, 1, 1, 1
45 | animation = windows, 1, 6, wind, slide
46 | animation = windowsIn, 1, 6, winIn, slide
47 | animation = windowsOut, 1, 5, winOut, slide
48 | animation = windowsMove, 1, 5, wind, slide
49 | animation = border, 1, 1, liner
50 | animation = borderangle, 1, 180, liner, loop
51 | animation = fade, 1, 10, default
52 | animation = workspaces, 1, 5, wind
53 | }
54 |
55 | dwindle {
56 | pseudotile = true
57 | preserve_split = true
58 | }
59 |
60 | # master {
61 | # new_is_master = true
62 | # }
63 |
--------------------------------------------------------------------------------
/.config/hypr/configs/startup_apps.conf:
--------------------------------------------------------------------------------
1 | $scripts_dir = $HOME/.config/hypr/scripts
2 |
3 | exec-once = exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
4 | exec-once = hyprpaper
5 | exec-once = waybar &
6 | exec-once = hypridle &
7 | exec-once = wl-paste --type text --watch cliphist store
8 | exec-once = pypr &
9 | exec-once = dunst
10 | exec-once = $scripts_dir/portal_hyprland.sh
11 | exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
12 | exec-once = dbus-update-activation-environment --systemd --all
13 | exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
14 |
--------------------------------------------------------------------------------
/.config/hypr/configs/window_rules.conf:
--------------------------------------------------------------------------------
1 | windowrulev2 = suppressevent maximize, class:.*
2 |
3 | # WINDOWRULE v2
4 | # windowrule v2 - position
5 | windowrulev2 = center, class:([Tt]hunar), title:(File Operation Progress)
6 | windowrulev2 = center, class:([Tt]hunar), title:(Confirm to replace files)
7 | windowrulev2 = center, title:^(ROG Control)$
8 | windowrulev2 = center, title:^(Keybindings)$
9 | windowrulev2 = move 72% 7%,title:^(Picture-in-Picture)$
10 | windowrulev2 = move 72% 7%,title:is sharing your screen\.$
11 |
12 | # windowrule v2 to avoid idle for fullscreen apps
13 | windowrulev2 = idleinhibit fullscreen, class:^(*)$
14 | windowrulev2 = idleinhibit fullscreen, title:^(*)$
15 | windowrulev2 = idleinhibit fullscreen, fullscreen:1
16 |
17 | windowrulev2 = float, class:(xdg-desktop-portal-gtk)
18 | windowrulev2 = float, class:([Tt]hunar), title:(File Operation Progress)
19 | windowrulev2 = float, class:([Tt]hunar), title:(Confirm to replace files)
20 | windowrulev2 = float, class:^(file-roller|org.gnome.FileRoller)$
21 | windowrulev2 = float, class:^(nwg-look|qt6ct)$
22 | windowrulev2 = float, title:(Kvantum Manager)
23 | windowrulev2 = float, class:^([Qq]alculate-gtk)$
24 |
25 | # windowrule v2 - size
26 | windowrulev2 = size 70% 70%, class:^(xdg-desktop-portal-gtk)$
27 |
--------------------------------------------------------------------------------
/.config/hypr/hypridle.conf:
--------------------------------------------------------------------------------
1 | general {
2 | lock_cmd = pidof hyprlock || hyprlock
3 | before_sleep_cmd = loginctl lock-session
4 | after_sleep_cmd = hyprctl dispatch dpms on
5 | }
6 |
7 | listener {
8 | timeout = 3600 # 30min
9 | on-timeout = systemctl suspend # suspend pc
10 | } }
11 |
--------------------------------------------------------------------------------
/.config/hypr/hyprland.conf:
--------------------------------------------------------------------------------
1 | $configs = $HOME/.config/hypr/configs
2 |
3 | source=$configs/startup_apps.conf
4 | source=$configs/settings.conf
5 | source=$configs/env.conf
6 | source=$configs/inputs.conf
7 | source=$configs/monitors.conf
8 | source=$configs/default_apps.conf
9 | source=$configs/keybinds.conf
10 | source=$configs/window_rules.conf
11 |
12 |
--------------------------------------------------------------------------------
/.config/hypr/hyprlock.conf:
--------------------------------------------------------------------------------
1 | # BACKGROUND
2 | background {
3 | monitor =
4 | path = ~/wallpapers/pastel.jpg
5 | blur_passes = 3
6 | contrast = 0.8916
7 | brightness = 0.8172
8 | vibrancy = 0.1696
9 | vibrancy_darkness = 0.0
10 | }
11 |
12 | # GENERAL
13 | general {
14 | no_fade_in = false
15 | grace = 0
16 | disable_loading_bar = true
17 | }
18 |
19 | # INPUT FIELD
20 | input-field {
21 | monitor =
22 | size = 250, 60
23 | outline_thickness = 2
24 | dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
25 | dots_spacing = 0.2 # Scale of dots' absolute size, 0.0 - 1.0
26 | dots_center = true
27 | outer_color = rgba(0, 0, 0, 0)
28 | inner_color = rgba(0, 0, 0, 0.5)
29 | font_color = rgb(c9c7cd)
30 | fade_on_empty = false
31 | placeholder_text = Input Password...
32 | hide_input = false
33 | position = 0, -120
34 | halign = center
35 | valign = center
36 | }
37 |
38 | # TIME
39 | label {
40 | monitor =
41 | text = cmd[update:1000] echo "$(date +"%-I:%M%p")"
42 | # color = $foreground
43 | color = rgb(c9c7cd)
44 | font_size = 120
45 | position = 0, -300
46 | halign = center
47 | valign = top
48 | }
49 |
50 | # USER
51 | label {
52 | monitor =
53 | text = Hi there, $USER
54 | color = rgba(255, 255, 255, 0.6)
55 | font_size = 25
56 | font_family = Maple Mono
57 | position = 0, -40
58 | halign = center
59 | valign = center
60 | }
61 |
--------------------------------------------------------------------------------
/.config/hypr/hyprpaper.conf:
--------------------------------------------------------------------------------
1 | preload = ~/wallpapers/pastel.jpg
2 |
3 | wallpaper = , ~/wallpapers/pastel.jpg
4 |
--------------------------------------------------------------------------------
/.config/hypr/pyprland.toml:
--------------------------------------------------------------------------------
1 | [pyprland]
2 |
3 | plugins = [
4 | "scratchpads",
5 | "magnify",
6 | ]
7 |
8 | [scratchpads.term]
9 | animation = "fromTop"
10 | command = "kitty --class kitty-dropterm"
11 | class = "kitty-dropterm"
12 | size = "75% 60%"
13 |
--------------------------------------------------------------------------------
/.config/hypr/scripts/brightness.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | icons_dir="$HOME/.config/dunst/icons/"
4 |
5 | # Get brightness
6 | get_backlight() {
7 | echo $(brightnessctl -m | cut -d, -f4)
8 | }
9 |
10 | # Get icons
11 | get_icon() {
12 | current=$(get_backlight | sed 's/%//')
13 | if [ "$current" -le "50" ]; then
14 | icon="$icons_dir/brightness-low.svg"
15 | else
16 | icon="$icons_dir/brightness-high.svg"
17 | fi
18 | }
19 |
20 | # Notify
21 | notify_user() {
22 | notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Brightness: $current%"
23 | }
24 |
25 | # Change brightness
26 | change_backlight() {
27 | brightnessctl set "$1" -n && get_icon && notify_user
28 | }
29 |
30 | # Execute accordingly
31 | case "$1" in
32 | "--get")
33 | get_backlight
34 | ;;
35 | "--inc")
36 | change_backlight "+10%"
37 | ;;
38 | "--dec")
39 | change_backlight "10%-"
40 | ;;
41 | *)
42 | get_backlight
43 | ;;
44 | esac
45 |
--------------------------------------------------------------------------------
/.config/hypr/scripts/clip_manager.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | while true; do
4 | result=$(
5 | rofi -i -dmenu \
6 | -kb-custom-1 "Control-Delete" \
7 | -kb-custom-2 "Alt-Delete" \
8 | -config ~/.config/rofi/config_clipboard.rasi < <(cliphist list)
9 | )
10 |
11 | case "$?" in
12 | 1)
13 | exit
14 | ;;
15 | 0)
16 | case "$result" in
17 | "")
18 | continue
19 | ;;
20 | *)
21 | cliphist decode <<<"$result" | wl-copy
22 | exit
23 | ;;
24 | esac
25 | ;;
26 | 10)
27 | cliphist delete <<<"$result"
28 | ;;
29 | 11)
30 | cliphist wipe
31 | ;;
32 | esac
33 | done
34 |
--------------------------------------------------------------------------------
/.config/hypr/scripts/fix_screen_share.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/bash
2 | killall -e xdg-desktop-portal-hyprland
3 | killall -e xdg-desktop-portal
4 |
5 | systemctl restart --user pipewire.service
6 | sleep 1
7 | systemctl restart --user pipewire-pulse
8 | sleep 1
9 | /usr/lib/xdg-desktop-portal-hyprland &!
10 | sleep 2
11 | /usr/lib/xdg-desktop-portal &!
12 |
--------------------------------------------------------------------------------
/.config/hypr/scripts/portal_hyprland.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | sleep 1
3 | killall xdg-desktop-portal-hyprland
4 | killall xdg-desktop-portal
5 | sleep 1
6 | /usr/lib/xdg-desktop-portal-hyprland &
7 | sleep 2
8 | /usr/lib/xdg-desktop-portal &
9 |
--------------------------------------------------------------------------------
/.config/hypr/scripts/refresh.sh:
--------------------------------------------------------------------------------
1 | # Define file_exists function
2 | file_exists() {
3 | if [ -e "$1" ]; then
4 | return 0 # File exists
5 | else
6 | return 1 # File does not exist
7 | fi
8 | }
9 |
10 | # Kill already running processes
11 | _ps=(waybar rofi hyprpaper)
12 | for _prs in "${_ps[@]}"; do
13 | if pidof "${_prs}" >/dev/null; then
14 | pkill "${_prs}"
15 | fi
16 | done
17 |
18 | # Relaunch waybar
19 | waybar &
20 |
21 | hyprpaper
22 |
23 | exit 0
24 |
--------------------------------------------------------------------------------
/.config/hypr/scripts/rofi_calculator.sh:
--------------------------------------------------------------------------------
1 | rofi_config="$HOME/.config/rofi/config_calculator.rasi"
2 |
3 | # Kill Rofi if already running before execution
4 | if pgrep -x "rofi" >/dev/null; then
5 | pkill rofi
6 | exit 0
7 | fi
8 |
9 | # main function
10 |
11 | while true; do
12 | result=$(
13 | rofi -i -dmenu \
14 | -config "$rofi_config" \
15 | -mesg "$result = $calc_result"
16 | )
17 |
18 | if [ $? -ne 0 ]; then
19 | exit
20 | fi
21 |
22 | if [ -n "$result" ]; then
23 | calc_result=$(qalc -t "$result")
24 | echo "$calc_result" | wl-copy
25 | fi
26 | done
27 |
--------------------------------------------------------------------------------
/.config/hypr/scripts/volume.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | icons_dir="$HOME/.config/dunst/icons/"
3 |
4 | get_volume() {
5 | volume=$(pamixer --get-volume)
6 | if [[ "$volume" -eq "0" ]]; then
7 | echo "Muted"
8 | else
9 | echo "$volume%"
10 | fi
11 | }
12 |
13 | get_icon() {
14 | current=$(get_volume)
15 | if [[ "$current" == "Muted" ]]; then
16 | echo "$icons_dir/volume-mute.svg"
17 | elif [[ "${current%\%}" -le 30 ]]; then
18 | echo "$icons_dir/volume-low.svg"
19 | elif [[ "${current%\%}" -le 60 ]]; then
20 | echo "$icons_dir/volume-medium.svg"
21 | else
22 | echo "$icons_dir/volume-high.svg"
23 | fi
24 | }
25 |
26 | notify_user() {
27 | if [[ "$(get_volume)" == "Muted" ]]; then
28 | notify-send -e -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" "Volume: Muted"
29 | else
30 | notify-send -e -h int:value:"$(get_volume | sed 's/%//')" -h string:x-canonical-private-synchronous:volume_notif -u low -i "$(get_icon)" "Volume: $(get_volume)"
31 | fi
32 | }
33 |
34 | inc_volume() {
35 | if [ "$(pamixer --get-mute)" == "true" ]; then
36 | toggle_mute
37 | else
38 | pamixer -i 5 --allow-boost --set-limit 200 && notify_user
39 | fi
40 | }
41 |
42 | dec_volume() {
43 | if [ "$(pamixer --get-mute)" == "true" ]; then
44 | toggle_mute
45 | else
46 | pamixer -d 5 --allow-boost --set-limit 200 && notify_user
47 | fi
48 | }
49 |
50 | toggle_mute() {
51 | if [ "$(pamixer --get-mute)" == "false" ]; then
52 | pamixer -m && notify-send -e -u low -i "$icons_dir/volume-mute.svg" "Volume Switched OFF"
53 | elif [ "$(pamixer --get-mute)" == "true" ]; then
54 | pamixer -u && notify-send -e -u low -i "$(get_icon)" "Volume Switched ON"
55 | fi
56 | }
57 |
58 | if [[ "$1" == "--get" ]]; then
59 | get_volume
60 | elif [[ "$1" == "--inc" ]]; then
61 | inc_volume
62 | elif [[ "$1" == "--dec" ]]; then
63 | dec_volume
64 | elif [[ "$1" == "--toggle" ]]; then
65 | toggle_mute
66 | else
67 | get_volume
68 | fi
69 |
--------------------------------------------------------------------------------
/.config/kitty/current-theme.conf:
--------------------------------------------------------------------------------
1 |
2 | tab_bar_background #161617
3 | tab_title_template "{fmt.fg._353539}{fmt.bg.default}{fmt.fg._c9c7cd}{fmt.bg._353539} {title.split()[0]} {fmt.fg._353539}{fmt.bg.default} "
4 | active_tab_title_template "{fmt.fg._aca1cf}{fmt.bg.default}{fmt.fg._161617}{fmt.bg._aca1cf} {title.split()[0]} {fmt.fg._aca1cf}{fmt.bg.default} "
5 |
6 | cursor #c9c7cd
7 | foreground #c9c7cd
8 | background #161617
9 | selection_foreground #c9c7cd
10 | selection_background #3C3B3E
11 | # Black
12 | color0 #27272a
13 | color8 #353539
14 | # Red
15 | color1 #ea83a5
16 | color9 #f591b2
17 | # Green
18 | color2 #90b99f
19 | color10 #9dc6ac
20 | # Yellow
21 | color3 #e6b99d
22 | color11 #f0c5a9
23 | # Blue
24 | color4 #92a2d5
25 | color12 #a6b6e9
26 | # Purple
27 | color5 #aca1cf
28 | color13 #b9aeda
29 | # Cyan
30 | color6 #85b5ba
31 | color14 #99c9ce
32 | # White
33 | color7 #c9c7cd
34 | color15 #d3d1d7
35 |
36 | active_tab_foreground #c9c7cd
37 | active_tab_background #353539
38 | inactive_tab_foreground #57575f
39 | inactive_tab_background #1b1b1d
40 |
41 | active_border_color #57575f
42 | inactive_border_color #2a2a2d
43 |
--------------------------------------------------------------------------------
/.config/kitty/kitty.conf:
--------------------------------------------------------------------------------
1 | font_family Maple Mono Regular
2 | bold_font Maple Mono Bold
3 | italic_font Maple Mono Italic
4 | bold_italic_font Maple Mono Bold Italic
5 | font_features MapleMono-Regular +cv01 +ss02 +ss03
6 | font_features MapleMono-Italic +cv01 +ss02 +ss03
7 | font_features MapleMono-Bold +cv01 +ss02 +ss03
8 | font_features MapleMono-BoldItalic +cv01 +ss02 +ss03
9 | font_size 15
10 |
11 | symbol_map U+e000-U+e00a,U+ea60-U+ebeb,U+e0a0-U+e0c8,U+e0ca,U+e0cc-U+e0d4,U+e200-U+e2a9,U+e300-U+e3e3,U+e5fa-U+e6b1,U+e700-U+e7c5,U+f000-U+f2e0,U+f300-U+f372,U+f400-U+f532,U+f0001-U+f1af0 Symbols Nerd Font Mono
12 |
13 | window_padding_width 6
14 |
15 | enable_audio_bell no
16 | enabled_layouts tall:bias=50;full_size=1;mirrored=false
17 | confirm_os_window_close 0
18 |
19 | map kitty_mod+t new_tab_with_cwd
20 | map kitty_mod+enter new_window_with_cwd
21 |
22 | map kitty_mod+enter launch --cwd=current
23 | map kitty_mod+} next_window
24 | map kitty_mod+{ previous_window
25 |
26 | tab_bar_margin_width 9
27 | tab_bar_style separator
28 | tab_separator ""
29 |
30 | # BEGIN_KITTY_THEME
31 | # Oldworld
32 | include current-theme.conf
33 | # END_KITTY_THEME
34 |
35 |
36 | # BEGIN_KITTY_FONTS
37 | font_family family="Maple Mono"
38 | bold_font auto
39 | italic_font auto
40 | bold_italic_font auto
41 | # END_KITTY_FONTS
42 |
--------------------------------------------------------------------------------
/.config/kitty/kitty.conf.bak:
--------------------------------------------------------------------------------
1 | font_family Maple Mono Regular
2 | bold_font Maple Mono Bold
3 | italic_font Maple Mono Italic
4 | bold_italic_font Maple Mono Bold Italic
5 | font_features MapleMono-Regular +cv01 +ss02 +ss03
6 | font_features MapleMono-Italic +cv01 +ss02 +ss03
7 | font_features MapleMono-Bold +cv01 +ss02 +ss03
8 | font_features MapleMono-BoldItalic +cv01 +ss02 +ss03
9 | font_size 15
10 |
11 | symbol_map U+e000-U+e00a,U+ea60-U+ebeb,U+e0a0-U+e0c8,U+e0ca,U+e0cc-U+e0d4,U+e200-U+e2a9,U+e300-U+e3e3,U+e5fa-U+e6b1,U+e700-U+e7c5,U+f000-U+f2e0,U+f300-U+f372,U+f400-U+f532,U+f0001-U+f1af0 Symbols Nerd Font Mono
12 |
13 | window_padding_width 6
14 |
15 | enable_audio_bell no
16 | enabled_layouts tall:bias=50;full_size=1;mirrored=false
17 | confirm_os_window_close 0
18 |
19 | map kitty_mod+t new_tab_with_cwd
20 | map kitty_mod+enter new_window_with_cwd
21 |
22 | map kitty_mod+enter launch --cwd=current
23 | map kitty_mod+} next_window
24 | map kitty_mod+{ previous_window
25 |
26 | tab_bar_margin_width 9
27 | tab_bar_style separator
28 | tab_separator ""
29 |
30 | # BEGIN_KITTY_THEME
31 | # Oldworld
32 | include current-theme.conf
33 | # END_KITTY_THEME
34 |
--------------------------------------------------------------------------------
/.config/kitty/themes/oldworld.conf:
--------------------------------------------------------------------------------
1 |
2 | tab_bar_background #161617
3 | tab_title_template "{fmt.fg._353539}{fmt.bg.default}{fmt.fg._c9c7cd}{fmt.bg._353539} {title.split()[0]} {fmt.fg._353539}{fmt.bg.default} "
4 | active_tab_title_template "{fmt.fg._aca1cf}{fmt.bg.default}{fmt.fg._161617}{fmt.bg._aca1cf} {title.split()[0]} {fmt.fg._aca1cf}{fmt.bg.default} "
5 |
6 | cursor #c9c7cd
7 | foreground #c9c7cd
8 | background #161617
9 | selection_foreground #c9c7cd
10 | selection_background #3C3B3E
11 | # Black
12 | color0 #27272a
13 | color8 #353539
14 | # Red
15 | color1 #ea83a5
16 | color9 #ED96B3
17 | # Green
18 | color2 #90b99f
19 | color10 #a7c8b3
20 | # Yellow
21 | color3 #e6b99d
22 | color11 #eac5ae
23 | # Blue
24 | color4 #92a2d5
25 | color12 #a7b3dd
26 | # Purple
27 | color5 #aca1cf
28 | color13 #b7aed5
29 | # Cyan
30 | color6 #85b5ba
31 | color14 #97c0c4
32 | # White
33 | color7 #c9c7cd
34 | color15 #d3d1d7
35 |
36 | active_tab_foreground #c9c7cd
37 | active_tab_background #353539
38 | inactive_tab_foreground #57575f
39 | inactive_tab_background #1b1b1d
40 |
41 | active_border_color #57575f
42 | inactive_border_color #2a2a2d
43 |
--------------------------------------------------------------------------------
/.config/lazygit/.gitignore:
--------------------------------------------------------------------------------
1 | state.yml
2 |
--------------------------------------------------------------------------------
/.config/lazygit/config.yml:
--------------------------------------------------------------------------------
1 | gui:
2 | theme:
3 | activeBorderColor:
4 | - '#c9c7cd'
5 | - bold
6 | inactiveBorderColor:
7 | - '#9f9ca6'
8 | optionsTextColor:
9 | - '#aca1cf'
10 | selectedLineBgColor:
11 | - '#2a2a2c'
12 | cherryPickedCommitBgColor:
13 | - '#3b3b3e'
14 | cherryPickedCommitFgColor:
15 | - '#92a2d5'
16 | unstagedChangesColor:
17 | - '#ea83a5'
18 | searchingActiveBorderColor:
19 | - '#e6b99d'
20 |
21 | authorColors:
22 | '*': '#85b5ba'
23 |
--------------------------------------------------------------------------------
/.config/nvim/.gitignore:
--------------------------------------------------------------------------------
1 | lazy-lock.json
2 |
--------------------------------------------------------------------------------
/.config/nvim/init.lua:
--------------------------------------------------------------------------------
1 | require("core")
2 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/blink.lua:
--------------------------------------------------------------------------------
1 | require("blink.cmp").setup({
2 | keymap = {
3 | preset = "enter",
4 | },
5 | cmdline = {
6 | keymap = {
7 | preset = "none",
8 | },
9 | },
10 | completion = {
11 | menu = {
12 | border = "rounded",
13 | scrollbar = false,
14 | auto_show = function(ctx)
15 | return ctx.mode ~= "cmdline"
16 | end,
17 | },
18 | documentation = {
19 | auto_show = true,
20 | window = {
21 | border = "rounded",
22 | },
23 | },
24 | },
25 |
26 | appearance = {
27 | nerd_font_variant = "mono",
28 | },
29 | snippets = { preset = "luasnip" },
30 | sources = {
31 | default = { "lsp", "path", "snippets", "buffer" },
32 | },
33 | })
34 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/bufferline.lua:
--------------------------------------------------------------------------------
1 | require("bufferline").setup({
2 | options = {
3 | close_command = function(n)
4 | Snacks.bufdelete.delete()
5 | end,
6 | right_mouse_command = function(n)
7 | Snacks.bufdelete.delete()
8 | end,
9 | diagnostics = "nvim_lsp",
10 | always_show_bufferline = true,
11 | buffer_close_icon = "",
12 | modified_icon = "",
13 | close_icon = "",
14 | left_trunc_marker = "",
15 | right_trunc_marker = "",
16 | offsets = {
17 | {
18 | highlight = "Directory",
19 | text_align = "left",
20 | },
21 | },
22 | },
23 | })
24 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/conform.lua:
--------------------------------------------------------------------------------
1 | require("conform").setup({
2 | default_format_opts = {
3 | timeout_ms = 3000,
4 | async = false,
5 | quiet = false,
6 | lsp_format = "fallback",
7 | },
8 | format_on_save = {
9 | lsp_fallback = true,
10 | },
11 | formatters_by_ft = {
12 | lua = { "stylua" },
13 | python = { "ruff_format", "usort" },
14 | json = { "biome" },
15 | javascript = { "biome" },
16 | javascriptreact = { "biome" },
17 | typescript = { "biome" },
18 | typescriptreact = { "biome" },
19 | markdown = { "prettier" },
20 | html = { "prettier" },
21 | css = { "biome" },
22 | rust = { "rustfmt" },
23 | sh = { "shfmt" },
24 | typst = { "typstyle" },
25 | -- php = { "pint" },
26 | -- sql = { "sql_formatter" },
27 | },
28 | })
29 |
30 | require("conform.formatters.stylua").args = {
31 | "--indent-type",
32 | "Spaces",
33 | "--search-parent-directories",
34 | "--stdin-filepath",
35 | "$FILENAME",
36 | "-",
37 | }
38 |
39 | require("conform.formatters.prettier").args = {
40 | "--tab-width",
41 | "4",
42 | "--stdin-filepath",
43 | "$FILENAME",
44 | }
45 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/lsp/init.lua:
--------------------------------------------------------------------------------
1 | require("configs.lsp.settings")
2 | require("configs.lsp.servers")
3 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/lsp/servers.lua:
--------------------------------------------------------------------------------
1 | local lspconfig = require("lspconfig")
2 |
3 | local capabilities = require("blink.cmp").get_lsp_capabilities()
4 | capabilities.textDocument.foldingRange = {
5 | dynamicRegistration = false,
6 | lineFoldingOnly = true,
7 | }
8 |
9 | local function on_attach(client, bufnr) end
10 |
11 | lspconfig.lua_ls.setup({
12 | capabilities = capabilities,
13 | on_attach = on_attach,
14 | settings = {
15 | Lua = {
16 | workspace = {
17 | checkThirdParty = false,
18 | },
19 | completion = {
20 | callSnippet = "Replace",
21 | },
22 | },
23 | },
24 | })
25 |
26 | lspconfig.tinymist.setup({
27 | on_attach = on_attach,
28 | capabilities = capabilities,
29 | offset_encoding = "utf-8",
30 | settings = {
31 | formatterMode = "typstyle",
32 | exportPdf = "onSave",
33 | },
34 | })
35 |
36 | lspconfig.jsonls.setup({
37 | flags = { debounce_text_changes = 500 },
38 | capabilities = capabilities,
39 | on_attach = on_attach,
40 | settings = {
41 | json = {
42 | schemas = {
43 | {
44 | fileMatch = { "package.json" },
45 | url = "https://json.schemastore.org/package.json",
46 | },
47 | {
48 | fileMatch = { "tsconfig*.json" },
49 | url = "https://json.schemastore.org/tsconfig.json",
50 | },
51 | {
52 | fileMatch = {
53 | ".prettierrc",
54 | ".prettierrc.json",
55 | "prettier.config.json",
56 | },
57 | url = "https://json.schemastore.org/prettierrc.json",
58 | },
59 | {
60 | fileMatch = { ".eslintrc", ".eslintrc.json" },
61 | url = "https://json.schemastore.org/eslintrc.json",
62 | },
63 | },
64 | },
65 | },
66 | })
67 |
68 | lspconfig.tailwindcss.setup({
69 | capabilities = capabilities,
70 | on_attach = on_attach,
71 | filetypes = { "html", "javascriptreact", "typescriptreact", "astro", "svelte" },
72 | })
73 |
74 | lspconfig.basedpyright.setup({
75 | capabilities = capabilities,
76 | on_attach = on_attach,
77 | settings = {
78 | basedpyright = {
79 | analysis = {
80 | autoSearchPaths = true,
81 | diagnosticMode = "openFilesOnly",
82 | useLibraryCodeForTypes = true,
83 | },
84 | },
85 | },
86 | })
87 |
88 | -- lspconfig.intelephense.setup({
89 | -- capabilities = capabilities,
90 | -- on_attach = on_attach,
91 | -- settings = {
92 | -- intelephense = {
93 | -- stubs = {
94 | -- "apache",
95 | -- "bcmath",
96 | -- "bz2",
97 | -- "calendar",
98 | -- "com_dotnet",
99 | -- "Core",
100 | -- "ctype",
101 | -- "curl",
102 | -- "date",
103 | -- "dba",
104 | -- "dom",
105 | -- "enchant",
106 | -- "exif",
107 | -- "FFI",
108 | -- "fileinfo",
109 | -- "filter",
110 | -- "fpm",
111 | -- "ftp",
112 | -- "gd",
113 | -- "gettext",
114 | -- "gmp",
115 | -- "hash",
116 | -- "iconv",
117 | -- "imap",
118 | -- "intl",
119 | -- "json",
120 | -- "ldap",
121 | -- "libxml",
122 | -- "mbstring",
123 | -- "meta",
124 | -- "mysqli",
125 | -- "oci8",
126 | -- "odbc",
127 | -- "openssl",
128 | -- "pcntl",
129 | -- "pcre",
130 | -- "PDO",
131 | -- "pdo_ibm",
132 | -- "pdo_mysql",
133 | -- "pdo_pgsql",
134 | -- "pdo_sqlite",
135 | -- "pgsql",
136 | -- "Phar",
137 | -- "posix",
138 | -- "pspell",
139 | -- "readline",
140 | -- "Reflection",
141 | -- "session",
142 | -- "shmop",
143 | -- "SimpleXML",
144 | -- "snmp",
145 | -- "soap",
146 | -- "sockets",
147 | -- "sodium",
148 | -- "SPL",
149 | -- "sqlite3",
150 | -- "standard",
151 | -- "superglobals",
152 | -- "sysvmsg",
153 | -- "sysvsem",
154 | -- "sysvshm",
155 | -- "tidy",
156 | -- "tokenizer",
157 | -- "xml",
158 | -- "xmlreader",
159 | -- "xmlrpc",
160 | -- "xmlwriter",
161 | -- "xsl",
162 | -- "Zend OPcache",
163 | -- "zip",
164 | -- "zlib",
165 | -- "wordpress",
166 | -- "phpunit",
167 | -- },
168 | -- diagnostics = {
169 | -- enable = true,
170 | -- },
171 | -- format = {
172 | -- enable = false,
173 | -- },
174 | -- },
175 | -- },
176 | -- })
177 |
178 | for _, server in ipairs({ "bashls", "marksman", "biome", "cssls", "html", "astro" }) do
179 | lspconfig[server].setup({
180 | on_attach = on_attach,
181 | capabilities = capabilities,
182 | })
183 | end
184 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/lsp/settings.lua:
--------------------------------------------------------------------------------
1 | vim.diagnostic.config({
2 | virtual_text = true,
3 | underline = true,
4 | severity_sort = true,
5 | })
6 |
7 | local signs = {
8 | Error = " ",
9 | Warn = " ",
10 | Hint = " ",
11 | Info = " ",
12 | }
13 |
14 | for type, icon in pairs(signs) do
15 | local hl = "DiagnosticSign" .. type
16 | vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
17 | end
18 |
19 | require("lspconfig.ui.windows").default_options.border = "single"
20 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/lualine.lua:
--------------------------------------------------------------------------------
1 | local function config_lualine(colors)
2 | local modecolor = {
3 | n = colors.red,
4 | i = colors.cyan,
5 | v = colors.purple,
6 | [""] = colors.purple,
7 | V = colors.red,
8 | c = colors.yellow,
9 | no = colors.red,
10 | s = colors.yellow,
11 | S = colors.yellow,
12 | [""] = colors.yellow,
13 | ic = colors.yellow,
14 | R = colors.green,
15 | Rv = colors.purple,
16 | cv = colors.red,
17 | ce = colors.red,
18 | r = colors.cyan,
19 | rm = colors.cyan,
20 | ["r?"] = colors.cyan,
21 | ["!"] = colors.red,
22 | t = colors.bright_red,
23 | }
24 |
25 | local theme = {
26 | normal = {
27 | a = { fg = colors.bg_dark, bg = colors.blue },
28 | b = { fg = colors.blue, bg = colors.white },
29 | c = { fg = colors.white, bg = colors.bg_dark },
30 | z = { fg = colors.white, bg = colors.bg_dark },
31 | },
32 | insert = { a = { fg = colors.bg_dark, bg = colors.orange } },
33 | visual = { a = { fg = colors.bg_dark, bg = colors.green } },
34 | replace = { a = { fg = colors.bg_dark, bg = colors.green } },
35 | }
36 |
37 | local space = {
38 | function()
39 | return " "
40 | end,
41 | color = { bg = colors.bg_dark, fg = colors.blue },
42 | }
43 |
44 | local filename = {
45 | "filename",
46 | color = { bg = colors.blue, fg = colors.bg, gui = "bold" },
47 | separator = { left = "", right = "" },
48 | }
49 |
50 | local filetype = {
51 | "filetype",
52 | icons_enabled = false,
53 | color = { bg = colors.gray2, fg = colors.blue, gui = "italic,bold" },
54 | separator = { left = "", right = "" },
55 | }
56 |
57 | local branch = {
58 | "branch",
59 | icon = "",
60 | color = { bg = colors.green, fg = colors.bg, gui = "bold" },
61 | separator = { left = "", right = "" },
62 | }
63 |
64 | local location = {
65 | "location",
66 | color = { bg = colors.yellow, fg = colors.bg, gui = "bold" },
67 | separator = { left = "", right = "" },
68 | }
69 |
70 | local diff = {
71 | "diff",
72 | color = { bg = colors.gray2, fg = colors.bg, gui = "bold" },
73 | separator = { left = "", right = "" },
74 | symbols = { added = " ", modified = " ", removed = " " },
75 |
76 | diff_color = {
77 | added = { fg = colors.green },
78 | modified = { fg = colors.yellow },
79 | removed = { fg = colors.red },
80 | },
81 | }
82 |
83 | local modes = {
84 | "mode",
85 | color = function()
86 | local mode_color = modecolor
87 | return { bg = mode_color[vim.fn.mode()], fg = colors.bg_dark, gui = "bold" }
88 | end,
89 | separator = { left = "", right = "" },
90 | }
91 |
92 | local function getLspName()
93 | local bufnr = vim.api.nvim_get_current_buf()
94 | local buf_clients = vim.lsp.get_clients({ bufnr = bufnr })
95 | local buf_ft = vim.bo.filetype
96 | if next(buf_clients) == nil then
97 | return " No servers"
98 | end
99 | local buf_client_names = {}
100 |
101 | for _, client in pairs(buf_clients) do
102 | if client.name ~= "null-ls" then
103 | table.insert(buf_client_names, client.name)
104 | end
105 | end
106 |
107 | local lint_s, lint = pcall(require, "lint")
108 | if lint_s then
109 | for ft_k, ft_v in pairs(lint.linters_by_ft) do
110 | if type(ft_v) == "table" then
111 | for _, linter in ipairs(ft_v) do
112 | if buf_ft == ft_k then
113 | table.insert(buf_client_names, linter)
114 | end
115 | end
116 | elseif type(ft_v) == "string" then
117 | if buf_ft == ft_k then
118 | table.insert(buf_client_names, ft_v)
119 | end
120 | end
121 | end
122 | end
123 |
124 | local ok, conform = pcall(require, "conform")
125 | local formatters = table.concat(conform.list_formatters_for_buffer(), " ")
126 | if ok then
127 | for formatter in formatters:gmatch("%w+") do
128 | if formatter then
129 | table.insert(buf_client_names, formatter)
130 | end
131 | end
132 | end
133 |
134 | local hash = {}
135 | local unique_client_names = {}
136 |
137 | for _, v in ipairs(buf_client_names) do
138 | if not hash[v] then
139 | unique_client_names[#unique_client_names + 1] = v
140 | hash[v] = true
141 | end
142 | end
143 | local language_servers = table.concat(unique_client_names, ", ")
144 |
145 | return " " .. language_servers
146 | end
147 |
148 | local macro = {
149 | require("noice").api.status.mode.get,
150 | cond = require("noice").api.status.mode.has,
151 | color = { fg = colors.red, bg = colors.bg_dark, gui = "italic,bold" },
152 | }
153 |
154 | local dia = {
155 | "diagnostics",
156 | sources = { "nvim_diagnostic" },
157 | symbols = { error = " ", warn = " ", info = " ", hint = " " },
158 | diagnostics_color = {
159 | error = { fg = colors.red },
160 | warn = { fg = colors.yellow },
161 | info = { fg = colors.purple },
162 | hint = { fg = colors.cyan },
163 | },
164 | color = { bg = colors.gray2, fg = colors.blue, gui = "bold" },
165 | separator = { left = "" },
166 | }
167 |
168 | local lsp = {
169 | function()
170 | return getLspName()
171 | end,
172 | separator = { left = "", right = "" },
173 | color = { bg = colors.purple, fg = colors.bg, gui = "italic,bold" },
174 | }
175 |
176 | require("lualine").setup({
177 | options = {
178 | disabled_filetypes = { statusline = { "dashboard", "alpha", "ministarter", "snacks_dashboard" } },
179 | icons_enabled = true,
180 | theme = theme,
181 | component_separators = { left = "", right = "" },
182 | section_separators = { left = "", right = "" },
183 | ignore_focus = {},
184 | always_divide_middle = true,
185 | globalstatus = true,
186 | },
187 |
188 | sections = {
189 | lualine_a = {
190 | modes,
191 | },
192 | lualine_b = {
193 | space,
194 | },
195 | lualine_c = {
196 | filename,
197 | filetype,
198 | space,
199 | branch,
200 | diff,
201 | space,
202 | location,
203 | },
204 | lualine_x = {
205 | space,
206 | },
207 | lualine_y = { macro, space },
208 | lualine_z = {
209 | dia,
210 | lsp,
211 | },
212 | },
213 | inactive_sections = {
214 | lualine_a = {},
215 | lualine_b = {},
216 | lualine_c = { "filename" },
217 | lualine_x = { "location" },
218 | lualine_y = {},
219 | lualine_z = {},
220 | },
221 | })
222 | end
223 |
224 | local colors = require("oldworld.palette")
225 | config_lualine(colors)
226 | vim.o.laststatus = vim.g.lualine_laststatus
227 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/luasnip.lua:
--------------------------------------------------------------------------------
1 | local luasnip = require("luasnip")
2 |
3 | local options = {
4 | history = true,
5 | update_events = "InsertLeave",
6 | enable_autosnippets = true,
7 | region_check_events = "CursorHold,InsertLeave",
8 | delete_check_events = "TextChanged,InsertEnter",
9 | store_selection_keys = "",
10 | }
11 |
12 | luasnip.config.set_config(options)
13 | vim.api.nvim_create_autocmd("InsertLeave", {
14 | callback = function()
15 | if
16 | require("luasnip").session.current_nodes[vim.api.nvim_get_current_buf()]
17 | and not require("luasnip").session.jump_active
18 | then
19 | require("luasnip").unlink_current()
20 | end
21 | end,
22 | })
23 |
24 | require("luasnip.loaders.from_vscode").lazy_load({ paths = { "./snippets" } })
25 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/mason.lua:
--------------------------------------------------------------------------------
1 | require("mason").setup({
2 | registries = {
3 | "github:mason-org/mason-registry",
4 | },
5 | ui = {
6 | icons = {
7 | package_pending = " ",
8 | package_installed = " ",
9 | package_uninstalled = " ",
10 | },
11 |
12 | keymaps = {
13 | toggle_server_expand = "",
14 | install_server = "i",
15 | update_server = "u",
16 | check_server_version = "c",
17 | update_all_servers = "U",
18 | check_outdated_servers = "C",
19 | uninstall_server = "X",
20 | cancel_installation = "",
21 | },
22 | },
23 | max_concurrent_installers = 10,
24 | })
25 |
26 | require("mason-lspconfig").setup()
27 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/snacks/dashboard.lua:
--------------------------------------------------------------------------------
1 | local M = {}
2 |
3 | M.opts = {
4 | row = 5,
5 | preset = {
6 | pick = "snacks",
7 | keys = {
8 | { icon = " ", key = "f", desc = "Find File", action = ":lua Snacks.dashboard.pick('files')" },
9 | { icon = " ", key = "w", desc = "Find Text", action = ":lua Snacks.dashboard.pick('live_grep')" },
10 | { icon = " ", key = "n", desc = "New File", action = ":ene | startinsert" },
11 | { icon = " ", key = "r", desc = "Recent Files", action = ":lua Snacks.dashboard.pick('oldfiles')" },
12 | {
13 | icon = " ",
14 | key = "c",
15 | desc = "Config",
16 | action = ":lua Snacks.dashboard.pick('files', {cwd = vim.fn.stdpath('config')})",
17 | },
18 | { icon = " ", key = "l", desc = "Lazy", action = ":Lazy" },
19 | { icon = " ", key = "q", desc = "Quit", action = ":qa" },
20 | },
21 | },
22 | }
23 |
24 | return M
25 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/snacks/init.lua:
--------------------------------------------------------------------------------
1 | local dashboard = require("configs.snacks.dashboard")
2 |
3 | require("snacks").setup({
4 | dashboard = dashboard.opts,
5 | bigfile = {},
6 | bufdelete = {},
7 | explorer = {},
8 | indent = {},
9 | input = {},
10 | lazygit = {
11 | theme = {
12 | [241] = { fg = "Special" },
13 | activeBorderColor = { fg = "MatchParen", bold = true },
14 | cherryPickedCommitBgColor = { fg = "Identifier" },
15 | cherryPickedCommitFgColor = { fg = "Function" },
16 | defaultFgColor = { fg = "Normal" },
17 | inactiveBorderColor = { fg = "LazyDimmed" },
18 | optionsTextColor = { fg = "Function" },
19 | searchingActiveBorderColor = { fg = "MatchParen", bold = true },
20 | selectedLineBgColor = { bg = "Visual" }, -- set to `default` to have no background colour
21 | unstagedChangesColor = { fg = "DiagnosticError" },
22 | },
23 | },
24 | notifier = {},
25 | quickfile = { enabled = true },
26 | picker = {},
27 | zen = {},
28 | })
29 |
--------------------------------------------------------------------------------
/.config/nvim/lua/configs/treesitter.lua:
--------------------------------------------------------------------------------
1 | require("nvim-treesitter.configs").setup({
2 | ensure_installed = {
3 | "lua",
4 | "vim",
5 | "regex",
6 | "markdown",
7 | "markdown_inline",
8 | "json",
9 | "http",
10 | "python",
11 | "html",
12 | "html",
13 | "javascript",
14 | "typescript",
15 | "css",
16 | },
17 | sync_install = true,
18 | auto_install = false,
19 | ignore_install = {},
20 | modules = {},
21 | indent = {
22 | enable = true,
23 | disable = { "python" },
24 | },
25 | highlight = {
26 | enable = true,
27 | additional_vim_regex_highlighting = false,
28 | },
29 | incremental_selection = {
30 | enable = true,
31 | keymaps = {
32 | init_selection = "",
33 | node_incremental = "",
34 | scope_incremental = "",
35 | node_decremental = "",
36 | },
37 | },
38 | textobjects = {
39 | select = {
40 | enable = true,
41 | lookahead = true,
42 |
43 | keymaps = {
44 | ["af"] = "@function.outer",
45 | ["if"] = "@function.inner",
46 | ["ac"] = "@class.outer",
47 | ["ic"] = { query = "@class.inner", desc = "Select inner part of a class region" },
48 | ["as"] = { query = "@scope", query_group = "locals", desc = "Select language scope" },
49 | },
50 | selection_modes = {
51 | ["@parameter.outer"] = "v",
52 | ["@function.outer"] = "V",
53 | ["@class.outer"] = "",
54 | },
55 | include_surrounding_whitespace = true,
56 | },
57 | },
58 | })
59 |
--------------------------------------------------------------------------------
/.config/nvim/lua/core/autocmds.lua:
--------------------------------------------------------------------------------
1 | local autocmd = vim.api.nvim_create_autocmd
2 |
3 | -- Keymaps para http
4 | autocmd("FileType", {
5 | pattern = "http",
6 | callback = function()
7 | vim.keymap.set("n", "a", "lua require('kulala').run()", { noremap = true, silent = true })
8 | end,
9 | })
10 |
--------------------------------------------------------------------------------
/.config/nvim/lua/core/icons.lua:
--------------------------------------------------------------------------------
1 | local M = {}
2 |
3 | M.lspkind = {
4 | Namespace = "",
5 | Text = "",
6 | Method = "",
7 | Function = "",
8 | Constructor = "",
9 | Field = "",
10 | Variable = "",
11 | Class = "",
12 | Interface = "",
13 | Module = "",
14 | Property = "",
15 | Unit = "",
16 | Value = "",
17 | Enum = "",
18 | Keyword = "",
19 | Snippet = "",
20 | Color = "",
21 | File = "",
22 | Reference = "",
23 | Folder = "",
24 | EnumMember = "",
25 | Constant = "",
26 | Struct = "",
27 | Event = "",
28 | Operator = "",
29 | TypeParameter = "",
30 | Table = "",
31 | Object = "",
32 | Tag = "",
33 | Array = "[]",
34 | Boolean = "",
35 | Number = "",
36 | Null = "",
37 | String = "",
38 | Calendar = "",
39 | Watch = "",
40 | Package = "",
41 | Copilot = "",
42 | Codeium = "",
43 | TabNine = "",
44 | }
45 |
46 | M.devicons = {
47 | default_icon = {
48 | icon = "",
49 | name = "Default",
50 | },
51 |
52 | c = {
53 | icon = "",
54 | name = "c",
55 | },
56 |
57 | css = {
58 | icon = "",
59 | name = "css",
60 | },
61 |
62 | deb = {
63 | icon = "",
64 | name = "deb",
65 | },
66 |
67 | Dockerfile = {
68 | icon = "",
69 | name = "Dockerfile",
70 | },
71 |
72 | html = {
73 | icon = "",
74 | name = "html",
75 | },
76 |
77 | jpeg = {
78 | icon = "",
79 | name = "jpeg",
80 | },
81 |
82 | jpg = {
83 | icon = "",
84 | name = "jpg",
85 | },
86 |
87 | js = {
88 | icon = "",
89 | name = "js",
90 | },
91 |
92 | kt = {
93 | icon = "",
94 | name = "kt",
95 | },
96 |
97 | lock = {
98 | icon = "",
99 | name = "lock",
100 | },
101 |
102 | lua = {
103 | icon = "",
104 | name = "lua",
105 | },
106 |
107 | mp3 = {
108 | icon = "",
109 | name = "mp3",
110 | },
111 |
112 | mp4 = {
113 | icon = "",
114 | name = "mp4",
115 | },
116 |
117 | out = {
118 | icon = "",
119 | name = "out",
120 | },
121 |
122 | png = {
123 | icon = "",
124 | name = "png",
125 | },
126 |
127 | py = {
128 | icon = "",
129 | name = "py",
130 | },
131 |
132 | ["robots.txt"] = {
133 | icon = "",
134 | name = "robots",
135 | },
136 |
137 | toml = {
138 | icon = "",
139 | name = "toml",
140 | },
141 |
142 | ts = {
143 | icon = "",
144 | name = "ts",
145 | },
146 |
147 | ttf = {
148 | icon = "",
149 | name = "TrueTypeFont",
150 | },
151 |
152 | rb = {
153 | icon = "",
154 | name = "rb",
155 | },
156 |
157 | rpm = {
158 | icon = "",
159 | name = "rpm",
160 | },
161 |
162 | vue = {
163 | icon = "",
164 | name = "vue",
165 | },
166 |
167 | woff = {
168 | icon = "",
169 | name = "WebOpenFontFormat",
170 | },
171 |
172 | woff2 = {
173 | icon = "",
174 | name = "WebOpenFontFormat2",
175 | },
176 |
177 | xz = {
178 | icon = "",
179 | name = "xz",
180 | },
181 |
182 | zip = {
183 | icon = "",
184 | name = "zip",
185 | },
186 | }
187 |
188 | return M
189 |
--------------------------------------------------------------------------------
/.config/nvim/lua/core/init.lua:
--------------------------------------------------------------------------------
1 | local disable_providers = function()
2 | local default_providers = {
3 | "node",
4 | "perl",
5 | "python3",
6 | "ruby",
7 | }
8 |
9 | for _, provider in ipairs(default_providers) do
10 | vim.g["loaded_" .. provider .. "_provider"] = 0
11 | end
12 | end
13 |
14 | local add_filetype = function()
15 | vim.filetype.add({
16 | extension = {
17 | http = "http",
18 | env = "dotenv",
19 | },
20 | filename = {
21 | [".env"] = "dotenv",
22 | },
23 | pattern = {
24 | ["%.env%.[%w_.-]+"] = "dotenv",
25 | },
26 | })
27 | vim.api.nvim_create_autocmd({
28 | "BufNewFile",
29 | "BufRead",
30 | }, {
31 | pattern = "*.typ",
32 | callback = function()
33 | local buf = vim.api.nvim_get_current_buf()
34 | vim.api.nvim_buf_set_option(buf, "filetype", "typst")
35 | end,
36 | })
37 | end
38 |
39 | local leader_map = function()
40 | vim.api.nvim_set_keymap("n", "", "", { noremap = true })
41 | vim.api.nvim_set_keymap("x", "", "", { noremap = true })
42 | vim.g.maplocalleader = " "
43 | vim.g.mapleader = " "
44 | end
45 |
46 | local load_core = function()
47 | disable_providers()
48 | leader_map()
49 | add_filetype()
50 |
51 | vim.cmd([[ let g:omni_sql_no_default_maps = 1 ]])
52 | require("core.lazy")
53 | require("core.autocmds")
54 | require("core.options")
55 | require("core.keymappings")
56 | vim.cmd.colorscheme("oldworld")
57 | end
58 |
59 | load_core()
60 |
--------------------------------------------------------------------------------
/.config/nvim/lua/core/keymappings.lua:
--------------------------------------------------------------------------------
1 | local opts = { noremap = true, silent = true }
2 |
3 | local keymap = vim.keymap.set
4 |
5 | -- NORMAL MODE
6 | vim.api.nvim_set_keymap("n", "ZZ", "", opts)
7 | -- Redimensionar
8 | keymap("n", "", ":resize -2", opts)
9 | keymap("n", "", ":resize +2", opts)
10 | keymap("n", "", ":vertical resize -2", opts)
11 | keymap("n", "", ":vertical resize +2", opts)
12 | -- Moverse entre ventanas
13 | keymap("n", "", "h", opts)
14 | keymap("n", "", "j", opts)
15 | keymap("n", "", "k", opts)
16 | keymap("n", "", "l", opts)
17 | -- Diferentes formas de guardar y salir
18 | keymap("n", "w", ":w", opts)
19 | keymap("n", "q", ":q", opts)
20 | --Actualizar Plugins
21 | keymap("n", "l", ":Lazy", opts)
22 | -- Buscar y remplazar
23 | keymap("n", "r", ":%s/\\<\\>//gI", { noremap = true, silent = false })
24 | -- Abrir ajustes nvim
25 | -- keymap("n", "n", ":e $MYVIMRC | :cd %:p:h ", opts)
26 | -- Scroll mas rapido
27 | keymap("n", "", "2", opts)
28 | keymap("n", "", "2", opts)
29 | -- Mover lineas arriba o abajo
30 | keymap("n", "", ":m .-2==", opts)
31 | keymap("n", "", ":m .+1==", opts)
32 | -- Moverse de forma normal en lineas largas con wrap
33 | keymap("n", "k", "(v:count == 0 ? 'gk' : 'k')", { silent = true, expr = true })
34 | keymap("n", "j", "(v:count == 0 ? 'gj' : 'j')", { silent = true, expr = true })
35 | keymap("n", "", "(v:count == 0 ? 'gj' : 'j')", { silent = true, expr = true })
36 | keymap("n", "", "(v:count == 0 ? 'gk' : 'k')", { silent = true, expr = true })
37 | -- Remover highlights
38 | keymap("n", "", "noh", opts)
39 | keymap("n", "bb", "e #", opts)
40 |
41 | -- MODO INSERTAR
42 | -- Eliminar la palabra de adelante
43 | keymap("i", "", "dw", opts)
44 | -- Eliminar el resto de linea
45 | keymap("i", "", "D", opts)
46 | -- Mover lineas arriba o abajo
47 | keymap("i", "", ":m .-2==gi", opts)
48 | keymap("i", "", ":m .+1==gi", opts)
49 | -- Mover al inicio de linea
50 | keymap("i", "", "^i", opts)
51 | -- Mover al final de la linea
52 | keymap("i", "", "", opts)
53 |
54 | keymap("i", "", "", opts)
55 | keymap("i", "", "", opts)
56 | keymap("i", "", "", opts)
57 | keymap("i", "", "", opts)
58 |
59 | -- MODO VISUAL
60 | -- Mejor indentacion
61 | keymap("v", "<", "", ">gv", opts)
63 | -- Mover lineas arriba o abajo
64 | keymap("x", "", ":m '<-2gv=gv", opts)
65 | keymap("x", "", ":m '>+1gv=gv", opts)
66 | -- J y K solo para moverse
67 | keymap("x", "J", "j", opts)
68 | keymap("x", "K", "k", opts)
69 | -- Moverse de forma normal en lineas largas con wrap
70 | keymap("v", "j", "(v:count == 0 ? 'gj' : 'j')", { silent = true, expr = true })
71 | keymap("v", "k", "(v:count == 0 ? 'gk' : 'k')", { silent = true, expr = true })
72 | keymap("v", "", "(v:count == 0 ? 'gj' : 'j')", { silent = true, expr = true })
73 | keymap("v", "", "(v:count == 0 ? 'gk' : 'k')", { silent = true, expr = true })
74 | keymap("v", "r", "y:%s/0//gI", { desc = "Search/replace visual" })
75 |
--------------------------------------------------------------------------------
/.config/nvim/lua/core/lazy.lua:
--------------------------------------------------------------------------------
1 | local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
2 | if not vim.loop.fs_stat(lazypath) then
3 | vim.fn.system({
4 | "git",
5 | "clone",
6 | "--filter=blob:none",
7 | "https://github.com/folke/lazy.nvim.git",
8 | "--branch=stable",
9 | lazypath,
10 | })
11 | end
12 | vim.opt.rtp:prepend(lazypath)
13 |
14 | local options = require("core.lazyConfig").opts
15 |
16 | require("lazy").setup("plugins", options)
17 |
--------------------------------------------------------------------------------
/.config/nvim/lua/core/lazyConfig.lua:
--------------------------------------------------------------------------------
1 | local M = {}
2 |
3 | M.opts = {
4 | performance = {
5 | rtp = {
6 | disabled_plugins = {
7 | "gzip",
8 | "matchit",
9 | "matchparen",
10 | "netrwPlugin",
11 | "tarPlugin",
12 | "tohtml",
13 | "tutor",
14 | "zipPlugin",
15 | "2html_plugin",
16 | "getscript",
17 | "getscriptPlugin",
18 | "gzip",
19 | "logipat",
20 | "netrw",
21 | "netrwPlugin",
22 | "netrwSettings",
23 | "netrwFileHandlers",
24 | "matchit",
25 | "matchparen",
26 | "tar",
27 | "tarPlugin",
28 | "rrhelper",
29 | "spellfile",
30 | "vimball",
31 | "vimballPlugin",
32 | "zip",
33 | "zipPlugin",
34 | "tutor",
35 | "rplugin",
36 | "syntax",
37 | "synmenu",
38 | "optwin",
39 | "compiler",
40 | "bugreport",
41 | "ftplugin",
42 | "archlinux",
43 | "fzf",
44 | },
45 | },
46 | },
47 | }
48 |
49 | return M
50 |
--------------------------------------------------------------------------------
/.config/nvim/lua/core/options.lua:
--------------------------------------------------------------------------------
1 | local global_local = {
2 | backup = false,
3 | cmdheight = 0,
4 | clipboard = "unnamedplus",
5 | hidden = true,
6 | hlsearch = true,
7 | ignorecase = true,
8 | mouse = "a",
9 | pumheight = 10,
10 | showmode = false,
11 | showtabline = 2,
12 | smartcase = true,
13 | splitbelow = true,
14 | splitright = true,
15 | swapfile = false,
16 | termguicolors = true,
17 | timeoutlen = 400,
18 | undofile = true,
19 | updatetime = 100,
20 | writebackup = false,
21 | expandtab = true,
22 | shiftwidth = 4,
23 | tabstop = 4,
24 | cursorline = true,
25 | number = true,
26 | numberwidth = 4,
27 | signcolumn = "yes",
28 | wrap = true,
29 | scrolloff = 8,
30 | sidescrolloff = 8,
31 | showcmd = false,
32 | ruler = false,
33 | laststatus = 3,
34 | relativenumber = true,
35 | linebreak = true,
36 | }
37 |
38 | for name, value in pairs(global_local) do
39 | vim.o[name] = value
40 | end
41 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/coding.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 | "saghen/blink.cmp",
4 | event = "InsertEnter",
5 | version = "*",
6 | config = function()
7 | require("configs.blink")
8 | end,
9 | opts_extend = { "sources.default" },
10 | },
11 |
12 | {
13 | "chrisgrieser/nvim-various-textobjs",
14 | event = "BufReadPost",
15 | opts = {
16 | keymaps = {
17 | useDefaults = true,
18 | },
19 | },
20 | },
21 |
22 | {
23 | "L3MON4D3/LuaSnip",
24 | event = "InsertEnter",
25 | config = function()
26 | require("configs.luasnip")
27 | end,
28 | },
29 |
30 | {
31 | "gbprod/yanky.nvim",
32 | event = "BufReadPost",
33 | keys = {
34 | { "", "(YankyCycleForward)" },
35 | { "", "(YankyCycleBackward)" },
36 | {
37 | "p",
38 | function()
39 | require("telescope").extensions.yank_history.yank_history({})
40 | end,
41 | desc = "Open Yank History",
42 | },
43 | { "y", "(YankyYank)", mode = { "n", "x" }, desc = "Yank text" },
44 | { "p", "(YankyPutAfter)", mode = { "n", "x" }, desc = "Put yanked text after cursor" },
45 | { "P", "(YankyPutBefore)", mode = { "n", "x" }, desc = "Put yanked text before cursor" },
46 | { "gp", "(YankyGPutAfter)", mode = { "n", "x" }, desc = "Put yanked text after selection" },
47 | { "gP", "(YankyGPutBefore)", mode = { "n", "x" }, desc = "Put yanked text before selection" },
48 | },
49 | opts = {
50 | highlight = {
51 | timer = 150,
52 | },
53 | },
54 | },
55 |
56 | {
57 | "echasnovski/mini.pairs",
58 | event = "BufReadPost",
59 | opts = {
60 | modes = { insert = true, command = true, terminal = false },
61 | skip_next = [=[[%w%%%'%[%"%.%`%$]]=],
62 | skip_ts = { "string" },
63 | skip_unbalanced = true,
64 | markdown = true,
65 | },
66 | config = true,
67 | },
68 |
69 | {
70 | "numToStr/Comment.nvim",
71 | keys = { "gc", { "gc", mode = "x" } },
72 | config = true,
73 | },
74 |
75 | {
76 | "kylechui/nvim-surround",
77 | version = "*",
78 | keys = { "cs", "ys", "ds" },
79 | },
80 |
81 | {
82 | "max397574/better-escape.nvim",
83 | event = "InsertEnter",
84 | opts = {
85 | k = function()
86 | vim.api.nvim_input("")
87 | local current_line = vim.api.nvim_get_current_line()
88 | if current_line:match("^%s+j$") then
89 | vim.schedule(function()
90 | vim.api.nvim_set_current_line("")
91 | end)
92 | end
93 | end,
94 | },
95 | },
96 | }
97 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/colorscheme.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 | -- "dgox16/oldworld.nvim",
4 | dir = "~/Documents/projects_neovim/oldworld.nvim/",
5 | priority = 1000,
6 | opts = {
7 | styles = {
8 | booleans = { bold = true },
9 | functions = { italic = true },
10 | comments = { italic = true },
11 | },
12 | },
13 | },
14 | }
15 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/editor.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 | "echasnovski/mini.files",
4 | version = false,
5 | keys = {
6 | { "-", "lua require('mini.files').open(vim.api.nvim_buf_get_name(0))", { silent = true } },
7 | },
8 | },
9 | {
10 | "nosduco/remote-sshfs.nvim",
11 | cmd = { "RemoteSSHFSConnect" },
12 | opts = {
13 | ui = {
14 | confirm = {
15 | connect = false,
16 | },
17 | },
18 | },
19 | },
20 | {
21 | "folke/todo-comments.nvim",
22 | cmd = { "TodoTrouble" },
23 | event = { "BufReadPost", "BufNewFile" },
24 | config = true,
25 | keys = {
26 | {
27 | "st",
28 | function()
29 | Snacks.picker.todo_comments()
30 | end,
31 | desc = "Todo",
32 | },
33 | },
34 | },
35 |
36 | {
37 | "folke/flash.nvim",
38 | opts = {},
39 | -- stylua: ignore
40 | keys = {
41 | { "s", mode = { "n", "x", "o" }, function() require("flash").jump() end, desc = "Flash" },
42 | { "S", mode = { "n", "x", "o" }, function() require("flash").treesitter() end, desc = "Flash Treesitter" },
43 | { "r", mode = "o", function() require("flash").remote() end, desc = "Remote Flash" },
44 | { "R", mode = { "o", "x" }, function() require("flash").treesitter_search() end, desc = "Treesitter Search" },
45 | { "", mode = { "c" }, function() require("flash").toggle() end, desc = "Toggle Flash Search" },
46 | },
47 | },
48 |
49 | {
50 | "mistweaverco/kulala.nvim",
51 | opts = {},
52 | ft = "http",
53 | },
54 |
55 | {
56 |
57 | "folke/trouble.nvim",
58 | lazy = true,
59 | cmd = { "Trouble", "TroubleToggle", "TroubleRefresh" },
60 | opts = { use_diagnostic_signs = true },
61 | keys = {
62 | { "xx", "Trouble diagnostics toggle", desc = "Document Diagnostics (Trouble)" },
63 | },
64 | },
65 |
66 | {
67 | "lewis6991/gitsigns.nvim",
68 | event = "BufReadPre",
69 | opts = {
70 | signs = {
71 | add = { text = "▎" },
72 | change = { text = "▎" },
73 | delete = { text = "" },
74 | topdelete = { text = "" },
75 | changedelete = { text = "▎" },
76 | untracked = { text = "▎" },
77 | },
78 | diff_opts = { internal = true },
79 | preview_config = { border = "rounded" },
80 | },
81 | },
82 | }
83 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/linters_formatters.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 | "stevearc/conform.nvim",
4 | event = { "BufReadPre" },
5 | config = function()
6 | require("configs.conform")
7 | end,
8 | },
9 |
10 | {
11 | "mfussenegger/nvim-lint",
12 | event = "BufReadPre",
13 | config = function()
14 | require("lint").linters_by_ft = {
15 | python = { "ruff" },
16 | }
17 | vim.api.nvim_create_autocmd({ "InsertLeave", "BufWritePost", "BufReadPost" }, {
18 | callback = function()
19 | local lint_status, lint = pcall(require, "lint")
20 | if lint_status then
21 | lint.try_lint()
22 | end
23 | end,
24 | })
25 | end,
26 | },
27 | }
28 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/lsp.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 | "neovim/nvim-lspconfig",
4 | event = "BufReadPre",
5 | dependencies = {
6 | {
7 | "williamboman/mason.nvim",
8 | config = function()
9 | require("configs.mason")
10 | end,
11 | },
12 | "williamboman/mason-lspconfig.nvim",
13 | { "folke/neodev.nvim", config = true },
14 | },
15 | keys = {
16 | { "K", "lua vim.lsp.buf.hover()", { noremap = true, silent = true } },
17 | { "c", "lua vim.lsp.buf.code_action()", { noremap = true, silent = true } },
18 | { "g{", "lua vim.diagnostic.goto_prev()", { noremap = true, silent = true } },
19 | { "g}", "lua vim.diagnostic.goto_next()", { noremap = true, silent = true } },
20 | { "gl", "lua vim.diagnostic.open_float()", { noremap = true, silent = true } },
21 | { "gd", "lua vim.lsp.buf.definition()", { noremap = true, silent = true } },
22 | { "gD", "lua vim.lsp.buf.declaration()", { noremap = true, silent = true } },
23 | { "gi", "lua vim.lsp.buf.implementation()", { noremap = true, silent = true } },
24 | { "gr", "lua vim.lsp.buf.references()", { noremap = true, silent = true } },
25 | },
26 | config = function()
27 | require("configs.lsp")
28 | end,
29 | },
30 |
31 | {
32 | "mrcjkb/rustaceanvim",
33 | version = "^4",
34 | lazy = false,
35 | config = function()
36 | vim.g.rustaceanvim = {
37 | server = {
38 | settings = {
39 | ["rust-analyzer"] = {
40 | inlayHints = {
41 | bindingModeHints = {
42 | enable = false,
43 | },
44 | chainingHints = {
45 | enable = true,
46 | },
47 | closingBraceHints = {
48 | enable = true,
49 | minLines = 25,
50 | },
51 | closureReturnTypeHints = {
52 | enable = "never",
53 | },
54 | lifetimeElisionHints = {
55 | enable = "never",
56 | useParameterNames = false,
57 | },
58 | maxLength = 25,
59 | parameterHints = {
60 | enable = true,
61 | },
62 | reborrowHints = {
63 | enable = "never",
64 | },
65 | renderColons = true,
66 | typeHints = {
67 | enable = true,
68 | hideClosureInitialization = false,
69 | hideNamedConstructor = false,
70 | },
71 | },
72 | },
73 | },
74 | },
75 | }
76 | end,
77 | },
78 |
79 | {
80 | "pmizio/typescript-tools.nvim",
81 | event = "BufReadPre",
82 |
83 | dependencies = { "nvim-lua/plenary.nvim", "neovim/nvim-lspconfig" },
84 | opts = {
85 | settings = {
86 | jsx_close_tag = {
87 | enable = true,
88 | filetypes = { "javascriptreact", "typescriptreact" },
89 | },
90 | tsserver_file_preferences = {
91 | includeInlayParameterNameHints = "all",
92 | includeInlayParameterNameHintsWhenArgumentMatchesName = false,
93 | includeInlayFunctionParameterTypeHints = true,
94 | includeInlayVariableTypeHints = true,
95 | includeInlayVariableTypeHintsWhenTypeMatchesName = false,
96 | includeInlayPropertyDeclarationTypeHints = true,
97 | includeInlayFunctionLikeReturnTypeHints = true,
98 | includeInlayEnumMemberValueHints = true,
99 | },
100 | },
101 | },
102 | },
103 | }
104 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/misc.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 | "nvim-lua/plenary.nvim",
4 | event = "VeryLazy",
5 | },
6 |
7 | {
8 | "fladson/vim-kitty",
9 | ft = "kitty",
10 | },
11 |
12 | {
13 | "lambdalisue/suda.vim",
14 | cmd = { "SudaRead", "SudaWrite" },
15 | },
16 |
17 | {
18 | "MeanderingProgrammer/render-markdown.nvim",
19 | dependencies = { "nvim-treesitter/nvim-treesitter", "echasnovski/mini.icons" }, -- if you use standalone mini plugins
20 | opts = {},
21 | ft = "markdown",
22 | },
23 | }
24 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/snacks.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 | "folke/snacks.nvim",
4 | lazy = false,
5 | priority = 1000,
6 | config = function()
7 | require("configs.snacks")
8 | end,
9 | keys = {
10 | -- Explorer
11 | {
12 | "e",
13 | function()
14 | Snacks.explorer()
15 | end,
16 | desc = "File Explorer",
17 | },
18 | -- Bufdelete
19 | {
20 | "bd",
21 | function()
22 | Snacks.bufdelete()
23 | end,
24 | desc = "Delete Buffer",
25 | },
26 | -- Zen
27 | {
28 | "z",
29 | function()
30 | Snacks.zen()
31 | end,
32 | desc = "Toggle Zen Mode",
33 | },
34 | -- Lazygit
35 | {
36 | "gg",
37 | function()
38 | Snacks.lazygit()
39 | end,
40 | },
41 | -- Picker
42 | {
43 | ",",
44 | function()
45 | Snacks.picker.buffers()
46 | end,
47 | desc = "Buffers",
48 | },
49 | {
50 | "/",
51 | function()
52 | Snacks.picker.lines()
53 | end,
54 | desc = "Grep",
55 | },
56 | {
57 | "",
58 | function()
59 | Snacks.picker.smart()
60 | end,
61 | desc = "Smart Find Files",
62 | },
63 | {
64 | ":",
65 | function()
66 | Snacks.picker.command_history()
67 | end,
68 | desc = "Command History",
69 | },
70 |
71 | {
72 | "ff",
73 | function()
74 | Snacks.picker.files()
75 | end,
76 | desc = "Find Files",
77 | },
78 |
79 | {
80 | "fh",
81 | function()
82 | Snacks.picker.files({ hidden = true, ignored = true })
83 | end,
84 | desc = "Find Files",
85 | },
86 |
87 | {
88 | "fc",
89 | function()
90 | Snacks.picker.cliphist()
91 | end,
92 | },
93 | {
94 | "fw",
95 | function()
96 | Snacks.picker.grep()
97 | end,
98 | desc = "Visual selection or word",
99 | mode = { "n", "x" },
100 | },
101 | {
102 | "gl",
103 | function()
104 | Snacks.picker.git_log()
105 | end,
106 | desc = "Git Log",
107 | },
108 | },
109 | },
110 | }
111 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/treesitter.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 |
4 | "nvim-treesitter/nvim-treesitter",
5 | dependencies = {},
6 | config = function()
7 | require("configs.treesitter")
8 | end,
9 | build = ":TSUpdate",
10 | },
11 |
12 | { "virchau13/tree-sitter-astro", ft = "astro" },
13 |
14 | {
15 | "nvim-treesitter/nvim-treesitter-textobjects",
16 | event = { "BufReadPre", "BufNewFile" },
17 | dependencies = {
18 | "nvim-treesitter/nvim-treesitter",
19 | },
20 | },
21 | {
22 |
23 | "windwp/nvim-ts-autotag",
24 | config = true,
25 | event = { "BufReadPre", "BufNewFile" },
26 | dependencies = {
27 | "nvim-treesitter/nvim-treesitter",
28 | },
29 | },
30 | }
31 |
--------------------------------------------------------------------------------
/.config/nvim/lua/plugins/ui.lua:
--------------------------------------------------------------------------------
1 | return {
2 | {
3 | "hoob3rt/lualine.nvim",
4 | event = "VeryLazy",
5 | init = function()
6 | vim.g.lualine_laststatus = vim.o.laststatus
7 | if vim.fn.argc(-1) > 0 then
8 | vim.o.statusline = " "
9 | else
10 | vim.o.laststatus = 0
11 | end
12 | end,
13 | config = function()
14 | require("configs.lualine")
15 | end,
16 | },
17 |
18 | {
19 | "akinsho/bufferline.nvim",
20 | event = "VeryLazy",
21 | keys = {
22 | { "bb", "BufferLinePick", { noremap = true, silent = true } },
23 | { "bo", "BufferLineCloseOthers" },
24 | { "br", "BufferLineCloseRight" },
25 | { "bl", "BufferLineCloseLeft" },
26 | { "", "BufferLineCyclePrev", { noremap = true, silent = true } },
27 | { "", "BufferLineCycleNext", { noremap = true, silent = true } },
28 | },
29 | config = function()
30 | require("configs.bufferline")
31 | end,
32 | },
33 |
34 | {
35 | "echasnovski/mini.icons",
36 | lazy = true,
37 | opts = {
38 | file = {
39 | [".keep"] = { glyph = "", hl = "MiniIconsGrey" },
40 | ["devcontainer.json"] = { glyph = "", hl = "MiniIconsAzure" },
41 | },
42 | filetype = {
43 | dotenv = { glyph = "", hl = "MiniIconsYellow" },
44 | },
45 | },
46 | init = function()
47 | package.preload["nvim-web-devicons"] = function()
48 | require("mini.icons").mock_nvim_web_devicons()
49 | return package.loaded["nvim-web-devicons"]
50 | end
51 | end,
52 | },
53 |
54 | {
55 | "NvChad/nvim-colorizer.lua",
56 | event = "BufReadPost",
57 | opts = {
58 | user_default_options = {
59 | names = false,
60 | },
61 | },
62 | },
63 |
64 | { "echasnovski/mini.cursorword", event = { "BufReadPost", "BufNewFile" }, config = true },
65 |
66 | {
67 | "folke/noice.nvim",
68 | event = "VeryLazy",
69 | dependencies = {
70 | { "MunifTanjim/nui.nvim", lazy = true },
71 | {
72 | "rcarriga/nvim-notify",
73 | lazy = true,
74 | event = "VeryLazy",
75 | keys = {
76 | {
77 | "un",
78 | function()
79 | require("notify").dismiss({ silent = true, pending = true })
80 | end,
81 | desc = "Delete all Notifications",
82 | },
83 | },
84 | opts = {
85 | timeout = 3000,
86 | max_height = function()
87 | return math.floor(vim.o.lines * 0.75)
88 | end,
89 | max_width = function()
90 | return math.floor(vim.o.columns * 0.75)
91 | end,
92 | },
93 | },
94 | },
95 | opts = {
96 | presets = {
97 | bottom_search = true,
98 | command_palette = true,
99 | long_message_to_split = true,
100 | inc_rename = false,
101 | lsp_doc_border = true,
102 | },
103 | lsp = {
104 | progress = {
105 | enabled = true,
106 | format = "lsp_progress",
107 | format_done = "lsp_progress_done",
108 | throttle = 1000 / 30,
109 | view = "mini",
110 | },
111 | override = {
112 | ["vim.lsp.util.convert_input_to_markdown_lines"] = true,
113 | ["vim.lsp.util.stylize_markdown"] = true,
114 | ["cmp.entry.get_documentation"] = true,
115 | },
116 | },
117 | },
118 | },
119 | }
120 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/htmldjango.json:
--------------------------------------------------------------------------------
1 | {
2 | "autoescape": {
3 | "prefix": "autoescape",
4 | "body": "\r\n{% autoescape ${1:off} %}\r\n\t${2:$SELECTION}\r\n{% endautoescape %}\r\n",
5 | "description": "autoescape",
6 | "scope": "text.html.django"
7 | },
8 | "block": {
9 | "prefix": "block",
10 | "body": "\r\n{% block ${1:blockname} %}\r\n\t${2:$SELECTION}\r\n{% endblock ${1:blockname} %}\r\n\t",
11 | "description": "block",
12 | "scope": "text.html.django"
13 | },
14 | "blocktrans": {
15 | "prefix": "blocktrans",
16 | "body": "\r\n{% blocktrans %}\r\n\t${1:$SELECTION}\r\n{% endblocktrans %}\r\n",
17 | "description": "blocktrans",
18 | "scope": "text.html.django"
19 | },
20 | "comment": {
21 | "prefix": "comment",
22 | "body": "\r\n{% comment %}\r\n\t${1:$SELECTION}\r\n{% endcomment %}\r\n\t",
23 | "description": "comment",
24 | "scope": "text.html.django"
25 | },
26 | "var": {
27 | "prefix": "var",
28 | "body": "{{ ${1:$SELECTION} }}",
29 | "description": "context variable (var)",
30 | "scope": "text.html.django"
31 | },
32 | "csrf": {
33 | "prefix": "csrf",
34 | "body": "{% csrf_token %}",
35 | "description": "csrf_token",
36 | "scope": "text.html.django"
37 | },
38 | "cycle": {
39 | "prefix": "cycle",
40 | "body": "{% cycle $1 %}",
41 | "description": "cycle",
42 | "scope": "text.html.django"
43 | },
44 | "debug": {
45 | "prefix": "debug",
46 | "body": "{% debug %}",
47 | "description": "debug",
48 | "scope": "text.html.django"
49 | },
50 | "elif": {
51 | "prefix": "elif",
52 | "body": "{% elif %}",
53 | "description": "elif",
54 | "scope": "text.html.django"
55 | },
56 | "else": {
57 | "prefix": "else",
58 | "body": "{% else %}",
59 | "description": "else",
60 | "scope": "text.html.django"
61 | },
62 | "ext": {
63 | "prefix": "ext",
64 | "body": "{% extends '${1:$SELECTION}' %}",
65 | "description": "extends (ext)",
66 | "scope": "text.html.django"
67 | },
68 | "extends": {
69 | "prefix": "extends",
70 | "body": "{% extends '${1:$SELECTION}' %}",
71 | "description": "extends",
72 | "scope": "text.html.django"
73 | },
74 | "extrahead": {
75 | "prefix": "extrahead",
76 | "body": "\r\n{% block extrahead %}\r\n\t${1:$SELECTION}\r\n{% endblock extrahead %}\r\n\t",
77 | "description": "block extrahead",
78 | "scope": "text.html.django"
79 | },
80 | "extrastyle": {
81 | "prefix": "extrastyle",
82 | "body": "\r\n{% block extrastyle %}\r\n\t${1:$SELECTION}\r\n{% endblock extrastyle %}\r\n\t",
83 | "description": "block extrastyle",
84 | "scope": "text.html.django"
85 | },
86 | "filter": {
87 | "prefix": "filter",
88 | "body": "\r\n{% filter $1 %}\r\n\t${2:$SELECTION}\r\n{% endfilter %}\r\n",
89 | "description": "filter",
90 | "scope": "text.html.django"
91 | },
92 | "firstof": {
93 | "prefix": "firstof",
94 | "body": "{% firstof $1 %}",
95 | "description": "firstof",
96 | "scope": "text.html.django"
97 | },
98 | "for": {
99 | "prefix": "for",
100 | "body": "\r\n{% for $1 in $2 %}\r\n\t${3:$SELECTION}\r\n{% endfor %}\r\n\t",
101 | "description": "for",
102 | "scope": "text.html.django"
103 | },
104 | "fore": {
105 | "prefix": "fore",
106 | "body": "\r\n{% for $1 in $2 %}\r\n\t$3\r\n{% empty %}\r\n\t$4\r\n{% endfor %}\r\n\t",
107 | "description": "for... empty...",
108 | "scope": "text.html.django"
109 | },
110 | "iblock": {
111 | "prefix": "iblock",
112 | "body": "{% block ${1:blockname} %}${2:$SELECTION}{% endblock ${1:blockname} %}",
113 | "description": "inline block",
114 | "scope": "text.html.django"
115 | },
116 | "if": {
117 | "prefix": "if",
118 | "body": "\r\n{% if $1 %}\r\n\t${2:$SELECTION}\r\n{% endif %}\r\n\t",
119 | "description": "if",
120 | "scope": "text.html.django"
121 | },
122 | "ifchanged": {
123 | "prefix": "ifchanged",
124 | "body": "\r\n{% ifchanged $1 %}\r\n\t${2:$SELECTION}\r\n{% endifchanged %}\r\n\t",
125 | "description": "ifchanged",
126 | "scope": "text.html.django"
127 | },
128 | "ife": {
129 | "prefix": "ife",
130 | "body": "\r\n{% if $1 %}\r\n\t$2\r\n{% else %}\r\n\t$3\r\n{% endif %}\r\n\t",
131 | "description": "if... else...",
132 | "scope": "text.html.django"
133 | },
134 | "ifelse": {
135 | "prefix": "ifelse",
136 | "body": "\r\n{% if $1 %}\r\n\t$2\r\n{% else %}\r\n\t$3\r\n{% endif %}\r\n\t",
137 | "description": "if... else...",
138 | "scope": "text.html.django"
139 | },
140 | "ifeq": {
141 | "prefix": "ifeq",
142 | "body": "\r\n{% ifequal $1 $2 %}\r\n\t${3:$SELECTION}\r\n{% endifequal %}\r\n\t",
143 | "description": "ifequal (ifeq)",
144 | "scope": "text.html.django"
145 | },
146 | "ifequal": {
147 | "prefix": "ifequal",
148 | "body": "\r\n{% ifequal $1 $2 %} \r\n\t${3:$SELECTION}\r\n{% endifequal %}\r\n\t",
149 | "description": "ifequal",
150 | "scope": "text.html.django"
151 | },
152 | "ifnotequal": {
153 | "prefix": "ifnotequal",
154 | "body": "\r\n{% ifnotequal $1 $2 %}\r\n\t${3:$SELECTION}\r\n{% endifnotequal %}\r\n\t",
155 | "description": "ifnotequal",
156 | "scope": "text.html.django"
157 | },
158 | "inc": {
159 | "prefix": "inc",
160 | "body": "{% include ${1:'$2'} %}",
161 | "description": "include (inc)",
162 | "scope": "text.html.django"
163 | },
164 | "include": {
165 | "prefix": "include",
166 | "body": "{% include ${1:'$2'} %}",
167 | "description": "include",
168 | "scope": "text.html.django"
169 | },
170 | "load": {
171 | "prefix": "load",
172 | "body": "{% load $1 %}",
173 | "description": "load",
174 | "scope": "text.html.django"
175 | },
176 | "media": {
177 | "prefix": "media",
178 | "body": "{{ MEDIA_URL }} ",
179 | "description": "media",
180 | "scope": "text.html.django"
181 | },
182 | "now": {
183 | "prefix": "now",
184 | "body": "{% now '$1' %}",
185 | "description": "now",
186 | "scope": "text.html.django"
187 | },
188 | "regroup": {
189 | "prefix": "regroup",
190 | "body": "{% regroup $1 by $2 as $3 %}",
191 | "description": "regroup",
192 | "scope": "text.html.django"
193 | },
194 | "spaceless": {
195 | "prefix": "spaceless",
196 | "body": "\r\n{% spaceless %}\r\n\t${1:$SELECTION}\r\n{% endspaceless %}\r\n\t",
197 | "description": "spaceless",
198 | "scope": "text.html.django"
199 | },
200 | "ssi": {
201 | "prefix": "ssi",
202 | "body": "{% ssi $1 ${2:parsed} %}",
203 | "description": "ssi",
204 | "scope": "text.html.django"
205 | },
206 | "static": {
207 | "prefix": "static",
208 | "body": "{% static '${1:$SELECTION}' %}",
209 | "description": "static",
210 | "scope": "text.html.django"
211 | },
212 | "staticu": {
213 | "prefix": "staticu",
214 | "body": "{{ STATIC_URL }} ",
215 | "description": "static URL",
216 | "scope": "text.html.django"
217 | },
218 | "super": {
219 | "prefix": "super",
220 | "body": "{{ block.super }}",
221 | "description": "block.super",
222 | "scope": "text.html.django"
223 | },
224 | "tag": {
225 | "prefix": "tag",
226 | "body": "{% $1 %}",
227 | "description": "tag braces",
228 | "scope": "text.html.django"
229 | },
230 | "templatetag": {
231 | "prefix": "templatetag",
232 | "body": "{% templatetag $1 %}",
233 | "description": "templatetag",
234 | "scope": "text.html.django"
235 | },
236 | "trans": {
237 | "prefix": "trans",
238 | "body": "{% trans '${1:$SELECTION}' %}",
239 | "description": "trans",
240 | "scope": "text.html.django"
241 | },
242 | "url": {
243 | "prefix": "url",
244 | "body": "{% url $1 %}",
245 | "description": "url",
246 | "scope": "text.html.django"
247 | },
248 | "verbatim": {
249 | "prefix": "verbatim",
250 | "body": "\r\n{% verbatim %}\r\n\t${1:$SELECTION}\r\n{% endverbatim %}\r\n\t",
251 | "description": "verbatim",
252 | "scope": "text.html.django"
253 | },
254 | "widthratio": {
255 | "prefix": "widthratio",
256 | "body": "{% widthratio ${1:this_value} ${2:max_value} ${3:100} %}",
257 | "description": "widthratio",
258 | "scope": "text.html.django"
259 | },
260 | "with": {
261 | "prefix": "with",
262 | "body": "\r\n{% with $1 as $2 %}\r\n\t${3:$SELECTION}\r\n{% endwith %}\r\n\t",
263 | "description": "with",
264 | "scope": "text.html.django"
265 | }
266 | }
267 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/javascript.json:
--------------------------------------------------------------------------------
1 | {
2 | "addEventListener": {
3 | "prefix": "ae",
4 | "body": "${1:document}.addEventListener('${2:event}', ${3:ev} => {\n\t${0}\n})"
5 | },
6 | "removeEventListener": {
7 | "prefix": "rel",
8 | "body": "${1:document}.removeEventListener('${2:event}', ${3:listener})"
9 | },
10 | "getElementById": {
11 | "prefix": "gi",
12 | "body": "${1:document}.getElementById('${2:id}')"
13 | },
14 | "getElementsByClassName": {
15 | "prefix": "gc",
16 | "body": "Array.from(${1:document}.getElementsByClassName('${2:class}'))"
17 | },
18 | "getElementsByTagName": {
19 | "prefix": "gt",
20 | "body": "Array.from(${1:document}.getElementsByTagName('${2:tag}'))"
21 | },
22 | "querySelector": {
23 | "prefix": "qs",
24 | "body": "${1:document}.querySelector('${2:selector}')"
25 | },
26 | "querySelectorAll": {
27 | "prefix": "qsa",
28 | "body": "Array.from(${1:document}.querySelectorAll('${2:selector}'))"
29 | },
30 | "createDocumentFragment": {
31 | "prefix": "cdf",
32 | "body": "${1:document}.createDocumentFragment(${2:elem})"
33 | },
34 | "createElement": {
35 | "prefix": "cel",
36 | "body": "${1:document}.createElement(${2:elem})"
37 | },
38 | "await Promise.all": {
39 | "prefix": "apa",
40 | "body": "await Promise.all(${1:value})"
41 | },
42 | "await Promise.all with destructuring": {
43 | "prefix": "apad",
44 | "body": "const [${0}] = await Promise.all(${1:value})"
45 | },
46 | "await Promise.all map": {
47 | "prefix": "apm",
48 | "body": "await Promise.all(${1:array}.map(async (${2:value}) => {\n\t${0}\n}))"
49 | },
50 | "await sleep": {
51 | "prefix": "ast",
52 | "body": "await new Promise((r) => setTimeout(r, ${0}))"
53 | },
54 | "Node callback": {
55 | "prefix": "cb",
56 | "body": "function (err, ${1:value}) {\n\tif (err) throw err\n\t${0}\n}"
57 | },
58 | "process.env": {
59 | "prefix": "pe",
60 | "body": "process.env"
61 | },
62 | "Promise.all": {
63 | "prefix": "pa",
64 | "body": "Promise.all(${1:value})"
65 | },
66 | "Promise.resolve": {
67 | "prefix": "prs",
68 | "body": "Promise.resolve(${1:value})"
69 | },
70 | "Promise.reject": {
71 | "prefix": "prj",
72 | "body": "Promise.reject(${1:value})"
73 | },
74 | "Promise": {
75 | "prefix": "p",
76 | "body": "Promise"
77 | },
78 | "new Promise": {
79 | "prefix": "np",
80 | "body": "new Promise((resolve, reject) => {\n\t${0}\n})"
81 | },
82 | "Promise.then": {
83 | "prefix": "pt",
84 | "body": "${1:promise}.then((${2:value}) => {\n\t${0}\n})"
85 | },
86 | "Promise.catch": {
87 | "prefix": "pc",
88 | "body": "${1:promise}.catch(error => {\n\t${0}\n})"
89 | },
90 | "await": {
91 | "prefix": "a",
92 | "body": "await ${0}"
93 | },
94 | "If Statement": {
95 | "prefix": "if",
96 | "body": ["if (${1:condition}) {", "\t$0", "}"],
97 | "description": "If Statement"
98 | },
99 | "If-Else Statement": {
100 | "prefix": "ifelse",
101 | "body": ["if (${1:condition}) {", "\t$0", "} else {", "\t", "}"],
102 | "description": "If-Else Statement"
103 | },
104 | "While Statement": {
105 | "prefix": "while",
106 | "body": ["while (${1:condition}) {", "\t$0", "}"],
107 | "description": "While Statement"
108 | },
109 | "Do-While Statement": {
110 | "prefix": "dowhile",
111 | "body": ["do {", "\t$0", "} while (${1:condition});"],
112 | "description": "Do-While Statement"
113 | },
114 | "try/catch": {
115 | "prefix": "tc",
116 | "body": "try {\n\t${0}\n} catch (${1:err}) {\n\t\n}"
117 | },
118 | "Function Statement": {
119 | "prefix": "fun",
120 | "body": ["function ${1:name}(${2:params}) {", "\t$0", "}"],
121 | "description": "Function Statement"
122 | },
123 | "console.log a variable": {
124 | "prefix": "cv",
125 | "body": "console.log('${1}:', ${1})"
126 | },
127 | "Express GET": {
128 | "prefix": "eget",
129 | "body": ["router.get('${1:route}', ${2:unimplemented!})"]
130 | },
131 |
132 | "Express POST": {
133 | "prefix": "epost",
134 | "body": ["router.post('${1:route}', ${2:unimplemented!})"]
135 | },
136 |
137 | "Express DELETE": {
138 | "prefix": "edel",
139 | "body": ["router.delete('${1:route}', ${2:unimplemented!})"]
140 | },
141 |
142 | "Express PUT": {
143 | "prefix": "eput",
144 | "body": ["router.put('${1:route}', ${2:unimplemented!})"]
145 | },
146 | "consoleAssert": {
147 | "prefix": "cas",
148 | "body": ["console.assert(${1:first}, ${2:second})"],
149 | "description": "If the specified expression is false, the message is written to the console along with a stack trace"
150 | },
151 | "consoleClear": {
152 | "prefix": "ccl",
153 | "body": ["console.clear()"],
154 | "description": "Clears the console"
155 | },
156 | "consoleCount": {
157 | "prefix": "cco",
158 | "body": ["console.count(${1:first})"],
159 | "description": "Writes the the number of times that count() has been invoked at the same line and with the same label"
160 | },
161 | "consoleDir": {
162 | "prefix": "cdi",
163 | "body": ["console.dir(${1:first})"],
164 | "description": "Prints a JavaScript representation of the specified object"
165 | },
166 | "consoleError": {
167 | "prefix": "cer",
168 | "body": ["console.error(${1:first})"],
169 | "description": "Displays a message in the console and also includes a stack trace from where the method was called"
170 | },
171 | "consoleGroup": {
172 | "prefix": "cgr",
173 | "body": ["console.group('${1:first}')"],
174 | "description": "Groups and indents all following output by an additional level, until console.groupEnd() is called."
175 | },
176 | "consoleGroupEnd": {
177 | "prefix": "cge",
178 | "body": ["console.groupEnd()"],
179 | "description": "Closes out the corresponding console.group()."
180 | },
181 | "consoleLog": {
182 | "prefix": "clg",
183 | "body": ["console.log(${1:first})"],
184 | "description": "Displays a message in the console"
185 | },
186 | "consoleTrace": {
187 | "prefix": "ctr",
188 | "body": ["console.trace(${1:first})"],
189 | "description": "Prints a stack trace from the point where the method was called"
190 | },
191 | "consoleLogObject": {
192 | "prefix": "clo",
193 | "body": ["console.log('${1:first}', ${1:first})"],
194 | "description": "Logs property with name."
195 | },
196 | "consoleLogJson": {
197 | "prefix": "clj",
198 | "body": ["console.log('${1:first}', JSON.stringify(${1:first}, null, 2))"],
199 | "description": "Logs stringified JSON property with name."
200 | },
201 | "consoleTime": {
202 | "prefix": "ctm",
203 | "body": ["console.time('${1:first}')"],
204 | "description": "Console time wrapper"
205 | },
206 | "consoleTimeEnd": {
207 | "prefix": "cte",
208 | "body": ["console.timeEnd('${1:first}')"],
209 | "description": "Console time end wrapper"
210 | },
211 | "consoleWarn": {
212 | "prefix": "cwa",
213 | "body": ["console.warn(${1:first})"],
214 | "description": "Displays a message in the console but also displays a yellow warning icon along with the logged message"
215 | },
216 | "consoleInfo": {
217 | "prefix": "cin",
218 | "body": ["console.info(${1:first})"],
219 | "description": "Displays a message in the console but also displays a blue information icon along with the logged message"
220 | },
221 | "consoleTable": {
222 | "prefix": "ctl",
223 | "body": ["console.table([${1:first}])"],
224 | "description": "Logs table to console"
225 | },
226 | "importAs": {
227 | "prefix": "ima",
228 | "body": ["import { ${2:second} as ${3:third} } from '${1:first}'"]
229 | },
230 | "importDestructing": {
231 | "prefix": "imd",
232 | "body": ["import { ${2:second} } from '${1:first}'"]
233 | },
234 | "importEverything": {
235 | "prefix": "ime",
236 | "body": ["import * as ${2:second} from '${1:first}'"]
237 | },
238 | "importNoModuleName": {
239 | "prefix": "imn",
240 | "body": ["import '${1:first}'"]
241 | },
242 | "import": {
243 | "prefix": "imp",
244 | "body": ["import ${2:second} from '${1:first}'"]
245 | },
246 | "destructingObject": {
247 | "prefix": "dob",
248 | "body": ["const {${2:second}} = ${1:first}"],
249 | "description": "Creates and assigns a local variable using object destructing"
250 | },
251 | "destructingArray": {
252 | "prefix": "dar",
253 | "body": ["const [${2:second}] = ${1:first}"],
254 | "description": "Creates and assigns a local variable using array destructing"
255 | },
256 | "forOf": {
257 | "prefix": "fof",
258 | "body": ["for(let ${1:first} of ${2:second}) {${3:third}}"],
259 | "description": "Iterating over property names of iterable objects"
260 | },
261 | "forIn": {
262 | "prefix": "fin",
263 | "body": ["for(let ${1:first} in ${2:second}) {${3:third}}"],
264 | "description": "Iterating over property values of iterable objects"
265 | },
266 | "try/catch/finally": {
267 | "prefix": "tcf",
268 | "body": "try {\n\t${0}\n} catch (${1:err}) {\n\t\n} finally {\n\t\n}"
269 | },
270 | "anonymousFunction": {
271 | "prefix": "anfn",
272 | "body": ["(${1:first}) => { ${2:second} }"],
273 | "description": "Creates an anonymous function"
274 | },
275 | "namedFunction": {
276 | "prefix": "nfn",
277 | "body": ["const ${1:first} = (${2:second}) => { ${3:third} }"],
278 | "description": "Creates a named function"
279 | },
280 | "forEach": {
281 | "prefix": "fre",
282 | "body": ["${1:first}.forEach(${2:second} => {${3:third}})"],
283 | "description": "Creates a forEach statement"
284 | },
285 | "map": {
286 | "prefix": "map",
287 | "body": "${1:iterable}.map((${2:item}) => {\n\t${0}\n})"
288 | },
289 | "reduce": {
290 | "prefix": "reduce",
291 | "body": "${1:iterable}.reduce((${2:previous}, ${3:current}) => {\n\t${0}\n}${4:, initial})"
292 | },
293 | "filter": {
294 | "prefix": "filter",
295 | "body": "${1:iterable}.filter((${2:item}) => {\n\t${0}\n})"
296 | },
297 | "find": {
298 | "prefix": "find",
299 | "body": "${1:iterable}.find((${2:item}) => {\n\t${0}\n})"
300 | },
301 | "every": {
302 | "prefix": "every",
303 | "body": "${1:iterable}.every((${2:item}) => {\n\t${0}\n})"
304 | },
305 | "some": {
306 | "prefix": "some",
307 | "body": "${1:iterable}.some((${2:item}) => {\n\t${0}\n})"
308 | },
309 | "appendChild": {
310 | "prefix": "heac",
311 | "body": "${1:el}.appendChild(${2:elem})"
312 | },
313 | "removeChild": {
314 | "prefix": "herc",
315 | "body": "${1:el}.removeChild(${2:elem})"
316 | },
317 | "exportDefault": {
318 | "prefix": "exp",
319 | "body": ["export default ${1:first}"]
320 | },
321 | "exportDestructing": {
322 | "prefix": "exd",
323 | "body": ["export { ${2:second} } from '${1:first}'"]
324 | },
325 | "exportAs": {
326 | "prefix": "exa",
327 | "body": ["export { ${2:second} as ${3:third} } from '${1:first}'"]
328 | },
329 | "exportNamedFunction": {
330 | "prefix": "enf",
331 | "body": ["export const ${1:first} = (${2:second}) => {${3:third}}"],
332 | "description": "Export named function"
333 | },
334 | "exportDefaultFunction": {
335 | "prefix": "edf",
336 | "body": ["export default (${1:first}) => {${2:second}}"],
337 | "description": "Export default function"
338 | },
339 | "exportDefaultNamedFunction": {
340 | "prefix": "ednf",
341 | "body": ["export default function ${1:first}(${2:second}) {${3:third}}"],
342 | "description": "Export default named function"
343 | },
344 | "method": {
345 | "prefix": "met",
346 | "body": ["${1:first} = (${2:second}) => {${3:third}}"],
347 | "description": "Creates a method inside a class"
348 | }
349 | }
350 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/javascriptreact.json:
--------------------------------------------------------------------------------
1 | {
2 | "exportType": {
3 | "body": ["export type ${1:first} = {${2:second}}"],
4 | "prefix": "exptp"
5 | },
6 | "exportInterface": {
7 | "prefix": "expint",
8 | "body": ["export interface ${1:first} {${2:second}}"]
9 | },
10 | "reactArrowFunctionComponent": {
11 | "prefix": "rafc",
12 | "body": [
13 | "export const ${1:${TM_FILENAME_BASE}} = () => {",
14 | " return (",
15 | " ${1:first}
",
16 | " )",
17 | "}",
18 | ""
19 | ],
20 | "description": "Creates a React Arrow Function Component with ES7 module system"
21 | },
22 | "reactArrowFunctionComponentWithPropTypes": {
23 | "prefix": "rafcp",
24 | "body": [
25 | "import PropTypes from 'prop-types'",
26 | "",
27 | "const ${1:${TM_FILENAME_BASE}} = props => {",
28 | " return (",
29 | " ${1:first}
",
30 | " )",
31 | "}",
32 | "",
33 | "${1:${TM_FILENAME_BASE}}.propTypes = {}",
34 | "",
35 | "export default ${1:${TM_FILENAME_BASE}}"
36 | ],
37 | "description": "Creates a React Arrow Function Component with ES7 module system with PropTypes"
38 | },
39 | "reactArrowFunctionExportComponent": {
40 | "prefix": "rafce",
41 | "body": [
42 | "const ${1:${TM_FILENAME_BASE}} = () => {",
43 | " return (",
44 | " ${1:first}
",
45 | " )",
46 | "}",
47 | "",
48 | "export default ${1:${TM_FILENAME_BASE}}"
49 | ],
50 | "description": "Creates a React Arrow Function Component with ES7 module system"
51 | },
52 | "reactClassComponent": {
53 | "prefix": "rcc",
54 | "body": [
55 | "import { Component } from 'react'",
56 | "",
57 | "export default class ${1:${TM_FILENAME_BASE}} extends Component {",
58 | " render() {",
59 | " return (",
60 | " ${1:first}
",
61 | " )",
62 | " }",
63 | "}",
64 | ""
65 | ],
66 | "description": "Creates a React component class with ES7 module system"
67 | },
68 | "reactClassComponentPropTypes": {
69 | "prefix": "rccp",
70 | "body": [
71 | "import PropTypes from 'prop-types'",
72 | "import { Component } from 'react'",
73 | "",
74 | "export default class ${1:${TM_FILENAME_BASE}} extends Component {",
75 | " static propTypes = {${2:second}: ${3:third}}",
76 | "",
77 | " render() {",
78 | " return (",
79 | " ${1:first}
",
80 | " )",
81 | " }",
82 | "}",
83 | ""
84 | ],
85 | "description": "Creates a React component class with PropTypes and ES7 module system"
86 | },
87 | "reactClassComponentRedux": {
88 | "prefix": "rcredux",
89 | "body": [
90 | "import { Component } from 'react'",
91 | "import { connect } from 'react-redux'",
92 | "",
93 | "export class ${1:${TM_FILENAME_BASE}} extends Component {",
94 | " render() {",
95 | " return (",
96 | " ${1:first}
",
97 | " )",
98 | " }",
99 | "}",
100 | "",
101 | "const mapStateToProps = (state) => ({})",
102 | "",
103 | "const mapDispatchToProps = {}",
104 | "",
105 | "export default connect(mapStateToProps, mapDispatchToProps)(${1:${TM_FILENAME_BASE}})"
106 | ],
107 | "description": "Creates a React component class with connected redux and ES7 module system"
108 | },
109 | "reactClassComponentReduxPropTypes": {
110 | "prefix": "rcreduxp",
111 | "body": [
112 | "import PropTypes from 'prop-types'",
113 | "import { Component } from 'react'",
114 | "import { connect } from 'react-redux'",
115 | "",
116 | "export class ${1:${TM_FILENAME_BASE}} extends Component {",
117 | " static propTypes = {",
118 | " ${2:second}: ${3:third}",
119 | " }",
120 | "",
121 | " render() {",
122 | " return (",
123 | " ${1:first}
",
124 | " )",
125 | " }",
126 | "}",
127 | "",
128 | "const mapStateToProps = (state) => ({})",
129 | "",
130 | "const mapDispatchToProps = {}",
131 | "",
132 | "export default connect(mapStateToProps, mapDispatchToProps)(${1:${TM_FILENAME_BASE}})"
133 | ],
134 | "description": "Creates a React component class with PropTypes with connected redux and ES7 module system"
135 | },
136 | "reactClassExportComponent": {
137 | "prefix": "rce",
138 | "body": [
139 | "import { Component } from 'react'",
140 | "",
141 | "export class ${1:${TM_FILENAME_BASE}} extends Component {",
142 | " render() {",
143 | " return (",
144 | " ${1:first}
",
145 | " )",
146 | " }",
147 | "}",
148 | "",
149 | "export default ${1:${TM_FILENAME_BASE}}"
150 | ],
151 | "description": "Creates a React component class with ES7 module system"
152 | },
153 | "reactClassExportComponentWithPropTypes": {
154 | "prefix": "rcep",
155 | "body": [
156 | "import PropTypes from 'prop-types'",
157 | "import { Component } from 'react'",
158 | "",
159 | "export class ${1:${TM_FILENAME_BASE}} extends Component {",
160 | " static propTypes = {}",
161 | "",
162 | " render() {",
163 | " return (",
164 | " ${1:first}
",
165 | " )",
166 | " }",
167 | "}",
168 | "",
169 | "export default ${1:${TM_FILENAME_BASE}}"
170 | ],
171 | "description": "Creates a React component class with ES7 module system"
172 | },
173 | "reactClassExportPureComponent": {
174 | "prefix": "rpce",
175 | "body": [
176 | "import { PureComponent } from 'react'",
177 | "",
178 | "export class ${1:${TM_FILENAME_BASE}} extends PureComponent {",
179 | " render() {",
180 | " return (",
181 | " ${1:first}
",
182 | " )",
183 | " }",
184 | "}",
185 | "",
186 | "export default ${1:${TM_FILENAME_BASE}}"
187 | ],
188 | "description": "Creates a React pure component class with ES7 module system export"
189 | },
190 | "reactClassPureComponent": {
191 | "prefix": "rpc",
192 | "body": [
193 | "import { PureComponent } from 'react'",
194 | "",
195 | "export default class ${1:${TM_FILENAME_BASE}} extends PureComponent {",
196 | " render() {",
197 | " return (",
198 | " ${1:first}
",
199 | " )",
200 | " }",
201 | "}",
202 | ""
203 | ],
204 | "description": "Creates a React pure component class with ES7 module system"
205 | },
206 | "reactClassPureComponentWithPropTypes": {
207 | "prefix": "rpcp",
208 | "body": [
209 | "import PropTypes from 'prop-types'",
210 | "import { PureComponent } from 'react'",
211 | "",
212 | "export default class ${1:${TM_FILENAME_BASE}} extends PureComponent {",
213 | " static propTypes = {}",
214 | "",
215 | " render() {",
216 | " return (",
217 | " ${1:first}
",
218 | " )",
219 | " }",
220 | "}",
221 | ""
222 | ],
223 | "description": "Creates a React component class with ES7 module system"
224 | },
225 | "reactFunctionMemoComponent": {
226 | "prefix": "rmc",
227 | "body": [
228 | "import { memo } from 'react'",
229 | "",
230 | "const ${1:${TM_FILENAME_BASE}} = memo(() => {",
231 | " return (",
232 | " ${1:first}
",
233 | " )",
234 | "})",
235 | "",
236 | "export default ${1:${TM_FILENAME_BASE}}"
237 | ],
238 | "description": "Creates a React Memo Function Component with ES7 module system"
239 | },
240 | "reactFunctionMemoComponentWithPropTypes": {
241 | "prefix": "rmcp",
242 | "body": [
243 | "import PropTypes from 'prop-types'",
244 | "import { memo } from 'react'",
245 | "",
246 | "const ${1:${TM_FILENAME_BASE}} = memo((props) => {",
247 | " return (",
248 | " ${1:first}
",
249 | " )",
250 | "})",
251 | "",
252 | "${1:${TM_FILENAME_BASE}}.propTypes = {}",
253 | "",
254 | "export default ${1:${TM_FILENAME_BASE}}"
255 | ],
256 | "description": "Creates a React Memo Function Component with ES7 module system with PropTypes"
257 | },
258 | "reactFunctionalComponent": {
259 | "prefix": "rfc",
260 | "body": [
261 | "import React from 'react'",
262 | "",
263 | "export default function ${1:${TM_FILENAME_BASE}}() {",
264 | " return (",
265 | " ${1:first}
",
266 | " )",
267 | "}",
268 | ""
269 | ],
270 | "description": "Creates a React Functional Component with ES7 module system"
271 | },
272 | "reactFunctionalComponentRedux": {
273 | "prefix": "rfcredux",
274 | "body": [
275 | "import { connect } from 'react-redux'",
276 | "",
277 | "export const ${1:${TM_FILENAME_BASE}} = (props) => {",
278 | " return (",
279 | " ${1:first}
",
280 | " )",
281 | "}",
282 | "",
283 | "const mapStateToProps = (state) => ({})",
284 | "",
285 | "const mapDispatchToProps = {}",
286 | "",
287 | "export default connect(mapStateToProps, mapDispatchToProps)(${1:${TM_FILENAME_BASE}})"
288 | ],
289 | "description": "Creates a React functional component with connected redux and ES7 module system"
290 | },
291 | "reactFunctionalComponentReduxPropTypes": {
292 | "prefix": "rfcreduxp",
293 | "body": [
294 | "import PropTypes from 'prop-types'",
295 | "import { connect } from 'react-redux'",
296 | "",
297 | "export const ${1:${TM_FILENAME_BASE}} = (props) => {",
298 | " return (",
299 | " ${1:first}
",
300 | " )",
301 | "}",
302 | "",
303 | "${1:${TM_FILENAME_BASE}}.propTypes = {",
304 | " ${2:second}: PropTypes.${3:third}",
305 | "}",
306 | "",
307 | "const mapStateToProps = (state) => ({})",
308 | "",
309 | "const mapDispatchToProps = {}",
310 | "",
311 | "export default connect(mapStateToProps, mapDispatchToProps)(${1:${TM_FILENAME_BASE}})"
312 | ],
313 | "description": "DEPRECATED: Creates a React functional component with PropTypes with connected redux and ES7 module system"
314 | },
315 | "reactFunctionalComponentWithPropTypes": {
316 | "prefix": "rfcp",
317 | "body": [
318 | "import PropTypes from 'prop-types'",
319 | "",
320 | "function ${1:${TM_FILENAME_BASE}}(props) {",
321 | " return (",
322 | " ${1:first}
",
323 | " )",
324 | "}",
325 | "",
326 | "${1:${TM_FILENAME_BASE}}.propTypes = {}",
327 | "",
328 | "export default ${1:${TM_FILENAME_BASE}}",
329 | ""
330 | ],
331 | "description": "Creates a React Functional Component with ES7 module system with PropTypes"
332 | },
333 | "reactFunctionalExportComponent": {
334 | "prefix": "rfce",
335 | "body": [
336 | "function ${1:${TM_FILENAME_BASE}}() {",
337 | " return (",
338 | " ${1:first}
",
339 | " )",
340 | "}",
341 | "",
342 | "export default ${1:${TM_FILENAME_BASE}}"
343 | ],
344 | "description": "Creates a React Functional Component with ES7 module system"
345 | },
346 | "useCallback": {
347 | "prefix": "useCallbackSnippet",
348 | "body": [
349 | "useCallback(",
350 | " () => {",
351 | " ${1:first}",
352 | " },",
353 | " [${2:second}],",
354 | ")",
355 | ""
356 | ]
357 | },
358 | "useContext": {
359 | "prefix": "useContextSnippet",
360 | "body": ["const ${1:first} = useContext(${2:second})"]
361 | },
362 | "useEffect": {
363 | "prefix": "useEffectSnippet",
364 | "body": [
365 | "useEffect(() => {",
366 | " ${1:first}",
367 | "",
368 | " return () => {",
369 | " ${2:second}",
370 | " }",
371 | "}, [${3:third}])",
372 | ""
373 | ]
374 | },
375 | "useImperativeHandle": {
376 | "prefix": "useImperativeHandleSnippet",
377 | "body": [
378 | "useImperativeHandle(",
379 | " ${1:first},",
380 | " () => {",
381 | " ${2:second}",
382 | " },",
383 | " [${3:third}],",
384 | ")"
385 | ]
386 | },
387 | "useLayoutEffect": {
388 | "prefix": "useLayoutEffectSnippet",
389 | "body": [
390 | "useLayoutEffect(() => {",
391 | " ${1:first}",
392 | "",
393 | " return () => {",
394 | " ${2:second}",
395 | " };",
396 | "}, [${3:third}])"
397 | ]
398 | },
399 | "useMemo": {
400 | "prefix": "useMemoSnippet",
401 | "body": ["useMemo(() => ${1:first}, [${2:second}])"]
402 | },
403 | "useReducer": {
404 | "prefix": "useReducerSnippet",
405 | "body": [
406 | "const [state, dispatch] = useReducer(${1:first}, ${2:second}, ${3:third})"
407 | ]
408 | },
409 | "useRef": {
410 | "prefix": "useRefSnippet",
411 | "body": ["const ${1:first} = useRef(${2:second})"]
412 | },
413 | "useState": {
414 | "prefix": "useStateSnippet",
415 | "body": [
416 | "const [${1:first}, set${1/(.*)/${1:/capitalize}/}] = useState(${2:second})"
417 | ]
418 | },
419 | "importPropTypes": {
420 | "prefix": "impt",
421 | "body": ["import PropTypes from 'prop-types'"]
422 | },
423 | "importReact": {
424 | "prefix": "imr",
425 | "body": ["import React from 'react'"]
426 | },
427 | "importReactDom": {
428 | "prefix": "imrd",
429 | "body": ["import ReactDOM from 'react-dom'"]
430 | },
431 | "importReactWithComponent": {
432 | "prefix": "imrc",
433 | "body": ["import React, { Component } from 'react'"]
434 | },
435 | "importReactWithComponentAndPropTypes": {
436 | "prefix": "imrcp",
437 | "body": [
438 | "import React, { Component } from 'react'",
439 | "import PropTypes from 'prop-types'",
440 | ""
441 | ]
442 | },
443 | "importReactWithMemo": {
444 | "prefix": "imrm",
445 | "body": ["import React, { memo } from 'react'"]
446 | },
447 | "importReactWithMemoAndPropTypes": {
448 | "prefix": "imrmp",
449 | "body": [
450 | "import React, { memo } from 'react'",
451 | "import PropTypes from 'prop-types'",
452 | ""
453 | ]
454 | },
455 | "importReactWithPureComponent": {
456 | "prefix": "imrpc",
457 | "body": ["import React, { PureComponent } from 'react'"]
458 | },
459 | "importReactWithPureComponentAndPropTypes": {
460 | "prefix": "imrpcp",
461 | "body": [
462 | "import React, { PureComponent } from 'react'",
463 | "import PropTypes from 'prop-types'",
464 | ""
465 | ]
466 | },
467 | "importRouterLink": {
468 | "prefix": "imbrl",
469 | "body": ["import { Link } from 'react-router-dom'"]
470 | },
471 | "importRouterNavLink": {
472 | "prefix": "imbrnl",
473 | "body": ["import { NavLink } from 'react-router-dom'"]
474 | },
475 | "importRouterSetup": {
476 | "prefix": "imbrc",
477 | "body": [
478 | "import { Route, Switch, NavLink, Link } from 'react-router-dom'"
479 | ]
480 | },
481 | "importRouterSwitch": {
482 | "prefix": "imbrs",
483 | "body": ["import { Switch } from 'react-router-dom'"]
484 | },
485 | "propTypeArray": {
486 | "prefix": "pta",
487 | "body": ["PropTypes.array"],
488 | "description": "Array prop type"
489 | },
490 | "propTypeArrayRequired": {
491 | "prefix": "ptar",
492 | "body": ["PropTypes.array.isRequired"],
493 | "description": "Array prop type required"
494 | },
495 | "propTypeBool": {
496 | "prefix": "ptb",
497 | "body": ["PropTypes.bool"],
498 | "description": "Bool prop type"
499 | },
500 | "propTypeBoolRequired": {
501 | "prefix": "ptbr",
502 | "body": ["PropTypes.bool.isRequired"],
503 | "description": "Bool prop type required"
504 | },
505 | "propTypeFunc": {
506 | "prefix": "ptf",
507 | "body": ["PropTypes.func"],
508 | "description": "Func prop type"
509 | },
510 | "propTypeFuncRequired": {
511 | "prefix": "ptfr",
512 | "body": ["PropTypes.func.isRequired"],
513 | "description": "Func prop type required"
514 | },
515 | "propTypeNumber": {
516 | "prefix": "ptn",
517 | "body": ["PropTypes.number"],
518 | "description": "Number prop type"
519 | },
520 | "propTypeNumberRequired": {
521 | "prefix": "ptnr",
522 | "body": ["PropTypes.number.isRequired"],
523 | "description": "Number prop type required"
524 | },
525 | "propTypeObject": {
526 | "prefix": "pto",
527 | "body": ["PropTypes.object"],
528 | "description": "Object prop type"
529 | },
530 | "propTypeObjectRequired": {
531 | "prefix": "ptor",
532 | "body": ["PropTypes.object.isRequired"],
533 | "description": "Object prop type required"
534 | },
535 | "propTypeString": {
536 | "prefix": "pts",
537 | "body": ["PropTypes.string"],
538 | "description": "String prop type"
539 | },
540 | "propTypeStringRequired": {
541 | "prefix": "ptsr",
542 | "body": ["PropTypes.string.isRequired"],
543 | "description": "String prop type required"
544 | },
545 | "propTypeNode": {
546 | "prefix": "ptnd",
547 | "body": ["PropTypes.node"],
548 | "description": "Anything that can be rendered: numbers, strings, elements or an array"
549 | },
550 | "propTypeNodeRequired": {
551 | "prefix": "ptndr",
552 | "body": ["PropTypes.node.isRequired"],
553 | "description": "Anything that can be rendered: numbers, strings, elements or an array required"
554 | },
555 | "propTypeElement": {
556 | "prefix": "ptel",
557 | "body": ["PropTypes.element"],
558 | "description": "React element prop type"
559 | },
560 | "propTypeElementRequired": {
561 | "prefix": "ptelr",
562 | "body": ["PropTypes.element.isRequired"],
563 | "description": "React element prop type required"
564 | },
565 | "propTypeInstanceOf": {
566 | "prefix": "pti",
567 | "body": ["PropTypes.instanceOf($0)"],
568 | "description": "Is an instance of a class prop type"
569 | },
570 | "propTypeInstanceOfRequired": {
571 | "prefix": "ptir",
572 | "body": ["PropTypes.instanceOf($0).isRequired"],
573 | "description": "Is an instance of a class prop type required"
574 | },
575 | "propTypeEnum": {
576 | "prefix": "pte",
577 | "body": ["PropTypes.oneOf(['$0'])"],
578 | "description": "Prop type limited to specific values by treating it as an enum"
579 | },
580 | "propTypeEnumRequired": {
581 | "prefix": "pter",
582 | "body": ["PropTypes.oneOf(['$0']).isRequired"],
583 | "description": "Prop type limited to specific values by treating it as an enum required"
584 | },
585 | "propTypeOneOfType": {
586 | "prefix": "ptet",
587 | "body": ["PropTypes.oneOfType([", " $0", "])"],
588 | "description": "An object that could be one of many types"
589 | },
590 | "propTypeOneOfTypeRequired": {
591 | "prefix": "ptetr",
592 | "body": ["PropTypes.oneOfType([", " $0", "]).isRequired"],
593 | "description": "An object that could be one of many types required"
594 | },
595 | "propTypeArrayOf": {
596 | "prefix": "ptao",
597 | "body": ["PropTypes.arrayOf($0)"],
598 | "description": "An array of a certain type"
599 | },
600 | "propTypeArrayOfRequired": {
601 | "prefix": "ptaor",
602 | "body": ["PropTypes.arrayOf($0).isRequired"],
603 | "description": "An array of a certain type required"
604 | },
605 | "propTypeObjectOf": {
606 | "prefix": "ptoo",
607 | "body": ["PropTypes.objectOf($0)"],
608 | "description": "An object with property values of a certain type"
609 | },
610 | "propTypeObjectOfRequired": {
611 | "prefix": "ptoor",
612 | "body": ["PropTypes.objectOf($0).isRequired"],
613 | "description": "An object with property values of a certain type required"
614 | },
615 | "propTypeShape": {
616 | "prefix": "ptsh",
617 | "body": ["PropTypes.shape({", " $0", "})"],
618 | "description": "An object taking on a particular shape"
619 | },
620 | "propTypeShapeRequired": {
621 | "prefix": "ptshr",
622 | "body": ["PropTypes.shape({", " $0", "}).isRequired"],
623 | "description": "An object taking on a particular shape required"
624 | },
625 | "propTypeExact": {
626 | "prefix": "ptex",
627 | "body": ["PropTypes.exact({", " $0", "})"],
628 | "description": "An object with warnings on extra properties"
629 | },
630 | "propTypeExactRequired": {
631 | "prefix": "ptexr",
632 | "body": ["PropTypes.exact({", " $0", "}).isRequired"],
633 | "description": "An object with warnings on extra properties required"
634 | },
635 | "propTypeAny": {
636 | "prefix": "ptany",
637 | "body": ["PropTypes.any"],
638 | "description": "Any prop type"
639 | },
640 | "destructProps": {
641 | "prefix": "cp",
642 | "body": ["const { ${1:first} } = this.props"],
643 | "description": "Creates and assigns a local variable using props destructing"
644 | },
645 | "destructState": {
646 | "prefix": "cs",
647 | "body": ["const { ${1:first} } = this.state"],
648 | "description": "Creates and assigns a local variable using state destructing"
649 | },
650 | "classConstructor": {
651 | "prefix": "rconst",
652 | "body": [
653 | "constructor(props) {",
654 | " super(props)",
655 | "",
656 | " this.state = {",
657 | " ${1:first}",
658 | " }",
659 | "}"
660 | ],
661 | "description": "Adds a default constructor for it('', () => {})the class that contains props as arguments"
662 | },
663 | "emptyState": {
664 | "prefix": "est",
665 | "body": ["state = { ${1:first} }"],
666 | "description": "Creates empty state object. To be used in a constructor."
667 | },
668 | "componentDidMount": {
669 | "prefix": "cdm",
670 | "body": ["componentDidMount() { ${1:first} }"],
671 | "description": "Invoked once, only on the client (not on the server), immediately after the initial rendering occurs."
672 | },
673 | "shouldComponentUpdate": {
674 | "prefix": "scu",
675 | "body": ["shouldComponentUpdate(nextProps, nextState) { ${1:first} }"],
676 | "description": "Invoked before rendering when new props or state are being received. "
677 | },
678 | "componentDidUpdate": {
679 | "prefix": "cdup",
680 | "body": ["componentDidUpdate(prevProps, prevState) { ${1:first}} "],
681 | "description": "Invoked immediately after the component's updates are flushed to the DOM."
682 | },
683 | "componentWillUnmount": {
684 | "prefix": "cwun",
685 | "body": ["componentWillUnmount() {${1:first} }"],
686 | "description": "Invoked immediately before a component is unmounted from the DOM."
687 | },
688 | "getDerivedStateFromProps": {
689 | "prefix": "gdsfp",
690 | "body": ["static getDerivedStateFromProps(props, state) {${1:first}}"],
691 | "description": "Invoked right before calling the render method, both on the initial mount and on subsequent updates."
692 | },
693 | "getSnapshotBeforeUpdate": {
694 | "prefix": "gsbu",
695 | "body": [
696 | "getSnapshotBeforeUpdate = (prevProps, prevState) => {${1:first}}"
697 | ],
698 | "description": "Called right before mutations are made (e.g. before the DOM is updated)"
699 | },
700 | "createContext": {
701 | "prefix": "rcontext",
702 | "body": ["const ${1:first} = React.createContext()"],
703 | "description": "Create React context"
704 | },
705 | "createRef": {
706 | "prefix": "cref",
707 | "body": ["this.${1:first}Ref = React.createRef()"],
708 | "description": "Create ref statement used inside constructor"
709 | },
710 | "componentSetStateObject": {
711 | "prefix": "sst",
712 | "body": ["this.setState({${1:first}})"],
713 | "description": "Performs a shallow merge of nextState into current state"
714 | },
715 | "componentSetStateFunc": {
716 | "prefix": "ssf",
717 | "body": ["this.setState((state, props) => { return { ${1:first} }})"],
718 | "description": "Performs a shallow merge of nextState into current state"
719 | },
720 | "componentProps": {
721 | "prefix": "props",
722 | "body": ["this.props.${1:first}"],
723 | "description": "Access component's props"
724 | },
725 | "componentState": {
726 | "prefix": "state",
727 | "body": ["this.state.${1:first}"]
728 | },
729 | "bindThis": {
730 | "prefix": "bnd",
731 | "body": ["this.${1:first} = this.${1:first}.bind(this)"],
732 | "description": "Binds this to a method"
733 | }
734 | }
735 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/lua.json:
--------------------------------------------------------------------------------
1 | {
2 | "require": {
3 | "prefix": "req",
4 | "body": ["require(\"${1:module}\")"],
5 | "description": "Require module"
6 | },
7 | "return": {
8 | "prefix": "rt",
9 | "body": ["return $0"],
10 | "description": "return value"
11 | },
12 | "assigment": {
13 | "prefix": "ll",
14 | "body": ["local ${1:varName} = ${0:value}"],
15 | "description": "create a variable"
16 | },
17 | "local": {
18 | "prefix": "l",
19 | "body": ["local ${0}"],
20 | "description": "create a variable"
21 | },
22 | "locreq": {
23 | "prefix": "lreq",
24 | "body": ["local ${1:var} = require(\"${2:module}\")"],
25 | "description": "Require module as a variable"
26 | },
27 | "class": {
28 | "prefix": "cl",
29 | "body": [
30 | "${1:className} = {}\n",
31 | "$1.${2:new} = function($3)",
32 | "\tlocal ${4:varName} = ${5:value}\n",
33 | "\t${6: --code}\n",
34 | "\treturn $4",
35 | "end"
36 | ],
37 | "description": "Create a class"
38 | },
39 | "if": {
40 | "prefix": "if",
41 | "body": ["if ${1:true} then", "\t$0", "end"]
42 | },
43 | "elseif": {
44 | "prefix": "elseif",
45 | "body": ["elseif ${1:true} then", "\t$0"]
46 | },
47 | "for": {
48 | "prefix": "for",
49 | "body": ["for ${1:i}=${2:1},${3:10} do", "\t$0", "end"],
50 | "description": "for loop range"
51 | },
52 | "foreach": {
53 | "prefix": "foreach",
54 | "body": ["for i, ${1:x} in pairs(${2:table}) do", "\t$0", "end"]
55 | },
56 | "forline": {
57 | "prefix": "forline",
58 | "body": [
59 | "f = io.open(${1:\"${2:filename}\"}, \"${3:r}\")\n",
60 | "while true do",
61 | "\tline = f:read()",
62 | "\tif line == nil then break end\n",
63 | "\t${0:-- code}",
64 | "end"
65 | ],
66 | "description": "read file line by line"
67 | },
68 | "function": {
69 | "prefix": "fu",
70 | "body": ["function ${1:name}($2)", "\t${0:-- code}", "end"]
71 | },
72 | "inline-function": {
73 | "prefix": "f=",
74 | "body": ["local ${1:name} = function($2)", "\t${0:-- code}", "end"]
75 | },
76 | "print": {
77 | "prefix": "p",
78 | "body": ["print(${0})"]
79 | },
80 | "self": {
81 | "prefix": "self:",
82 | "body": ["function self:${1:methodName}($2)", "\t$0", "end"]
83 | },
84 | "while": {
85 | "prefix": "while",
86 | "body": ["while ${1:true} do", "\t$0", "end"]
87 | },
88 | "pcall": {
89 | "prefix": "pca",
90 | "body": ["pcall(${1:function})"],
91 | "description": "Protect call a function"
92 | },
93 | "locpcall": {
94 | "prefix": "lpca",
95 | "body": ["local ${1:status}, ${2:err_or_value} = pcall(${3:function})"],
96 | "description": "Protect call a function as a variable"
97 | }
98 | }
99 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/markdown.json:
--------------------------------------------------------------------------------
1 | {
2 | "Create title header": {
3 | "prefix": "title",
4 | "body": [
5 | "---",
6 | "title: '${1:title}'",
7 | "author: '${2:autor}'",
8 | "date: '${3:fecha}'",
9 | "---"
10 | ]
11 | },
12 | "LTEX en ingles": {
13 | "prefix": "eng",
14 | "body": [""]
15 | },
16 | "header 1": {
17 | "prefix": "h1",
18 | "body": ["# ${0}"],
19 | "description": "Add header level 1"
20 | },
21 | "header 2": {
22 | "prefix": "h2",
23 | "body": ["## ${0}"],
24 | "description": "Add header level 2"
25 | },
26 | "header 3": {
27 | "prefix": "h3",
28 | "body": ["### ${0}"],
29 | "description": "Add header level 3"
30 | },
31 | "header 4": {
32 | "prefix": "h4",
33 | "body": ["#### ${0}"],
34 | "description": "Add header level 4"
35 | },
36 | "header 5": {
37 | "prefix": "h5",
38 | "body": ["##### ${0}"],
39 | "description": "Add header level 5"
40 | },
41 | "header 6": {
42 | "prefix": "h6",
43 | "body": ["###### ${0}"],
44 | "description": "Add header level 6"
45 | },
46 | "Links": {
47 | "prefix": ["l", "link"],
48 | "body": ["[${1:text}](${2:url}) ${0}"],
49 | "description": "Add links"
50 | },
51 | "URLS": {
52 | "prefix": ["u", "url"],
53 | "body": ["<${1}> ${0}"],
54 | "description": "Add urls"
55 | },
56 | "Images": {
57 | "prefix": "img",
58 | "body": [" ${0}"],
59 | "description": "Add images"
60 | },
61 | "Insert strikethrough": {
62 | "prefix": "strikethrough",
63 | "body": "~~${1}~~ ${0}",
64 | "description": "Insert strikethrough"
65 | },
66 | "Insert bold text": {
67 | "prefix": ["bold", "b"],
68 | "body": "**${1}** $0",
69 | "description": "Insert bold text"
70 | },
71 | "Insert italic text": {
72 | "prefix": ["i", "italic"],
73 | "body": "*${1}* $0",
74 | "description": "Insert italic text"
75 | },
76 | "Insert bold and italic text": {
77 | "prefix": ["bold and italic", "bi"],
78 | "body": "***${1}*** $0",
79 | "description": "Insert bold and italic text"
80 | },
81 | "Insert quoted text": {
82 | "prefix": "quote",
83 | "body": "> ${1}",
84 | "description": "Insert quoted text"
85 | },
86 | "Insert code": {
87 | "prefix": "code",
88 | "body": "`${1}` $0",
89 | "description": "Insert code"
90 | },
91 | "Insert code block": {
92 | "prefix": "codeblock",
93 | "body": ["```${1:language}", "$0", "```"],
94 | "description": "Insert fenced code block"
95 | },
96 | "Insert unordered list": {
97 | "prefix": "unordered list",
98 | "body": ["- ${1:first}", "- ${2:second}", "- ${3:third}", "$0"],
99 | "description": "Insert unordered list"
100 | },
101 | "Insert ordered list": {
102 | "prefix": "ordered list",
103 | "body": ["1. ${1:first}", "2. ${2:second}", "3. ${3:third}", "$0"],
104 | "description": "Insert ordered list"
105 | },
106 | "Insert horizontal rule": {
107 | "prefix": "horizontal rule",
108 | "body": "----------\n",
109 | "description": "Insert horizontal rule"
110 | },
111 | "Insert task list": {
112 | "prefix": "task",
113 | "body": ["- [${1| ,x|}] ${2:text}", "${0}"],
114 | "description": "Insert task list"
115 | },
116 | "Insert task list 2": {
117 | "prefix": "task2",
118 | "body": ["- [${1| ,x|}] ${2:text}", "- [${3| ,x|}] ${4:text}", "${0}"],
119 | "description": "Insert task list with 2 tasks"
120 | },
121 | "Insert task list 3": {
122 | "prefix": "task3",
123 | "body": [
124 | "- [${1| ,x|}] ${2:text}",
125 | "- [${3| ,x|}] ${4:text}",
126 | "- [${5| ,x|}] ${6:text}",
127 | "${0}"
128 | ],
129 | "description": "Insert task list with 3 tasks"
130 | },
131 | "Insert task list 4": {
132 | "prefix": "task4",
133 | "body": [
134 | "- [${1| ,x|}] ${2:text}",
135 | "- [${3| ,x|}] ${4:text}",
136 | "- [${5| ,x|}] ${6:text}",
137 | "- [${7| ,x|}] ${8:text}",
138 | "${0}"
139 | ],
140 | "description": "Insert task list with 4 tasks"
141 | },
142 | "Insert task list 5": {
143 | "prefix": "task5",
144 | "body": [
145 | "- [${1| ,x|}] ${2:text}",
146 | "- [${3| ,x|}] ${4:text}",
147 | "- [${5| ,x|}] ${6:text}",
148 | "- [${7| ,x|}] ${8:text}",
149 | "- [${9| ,x|}] ${10:text}",
150 | "${0}"
151 | ],
152 | "description": "Insert task list with 5 tasks"
153 | },
154 | "Insert table": {
155 | "prefix": "table",
156 | "body": [
157 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} |",
158 | "|-------------- | -------------- | -------------- |",
159 | "| ${4:Item1} | ${5:Item1} | ${6:Item1} |",
160 | "${0}"
161 | ],
162 | "description": "Insert table with 2 rows and 3 columns. First row is heading."
163 | },
164 | "Insert 2x1 table": {
165 | "prefix": "2x1table",
166 | "body": [
167 | "| ${1:Column1} |",
168 | "|-------------- |",
169 | "| ${2:Item1} |",
170 | "${0}"
171 | ],
172 | "description": "Insert table with 2 rows and 1 column. First row is heading."
173 | },
174 | "Insert 3x1 table": {
175 | "prefix": "3x1table",
176 | "body": [
177 | "| ${1:Column1} |",
178 | "|-------------- |",
179 | "| ${2:Item1} |",
180 | "| ${3:Item2} |",
181 | "${0}"
182 | ],
183 | "description": "Insert table with 3 rows and 1 column. First row is heading."
184 | },
185 | "Insert 4x1 table": {
186 | "prefix": "4x1table",
187 | "body": [
188 | "| ${1:Column1} |",
189 | "|-------------- |",
190 | "| ${2:Item1} |",
191 | "| ${3:Item2} |",
192 | "| ${4:Item3} |",
193 | "${0}"
194 | ],
195 | "description": "Insert table with 4 rows and 1 column. First row is heading."
196 | },
197 | "Insert 5x1 table": {
198 | "prefix": "5x1table",
199 | "body": [
200 | "| ${1:Column1} |",
201 | "|-------------- |",
202 | "| ${2:Item1} |",
203 | "| ${3:Item2} |",
204 | "| ${4:Item3} |",
205 | "| ${5:Item4} |",
206 | "${0}"
207 | ],
208 | "description": "Insert table with 5 rows and 1 column. First row is heading."
209 | },
210 | "Insert 2x2 table": {
211 | "prefix": "2x2table",
212 | "body": [
213 | "| ${1:Column1} | ${2:Column2} |",
214 | "|--------------- | --------------- |",
215 | "| ${3:Item1.1} | ${4:Item2.1} |",
216 | "${0}"
217 | ],
218 | "description": "Insert table with 2 rows and 2 columns. First row is heading."
219 | },
220 | "Insert 3x2 table": {
221 | "prefix": "3x2table",
222 | "body": [
223 | "| ${1:Column1} | ${2:Column2} |",
224 | "|--------------- | --------------- |",
225 | "| ${3:Item1.1} | ${4:Item2.1} |",
226 | "| ${5:Item1.2} | ${6:Item2.2} |",
227 | "${0}"
228 | ],
229 | "description": "Insert table with 3 rows and 2 columns. First row is heading."
230 | },
231 | "Insert 4x2 table": {
232 | "prefix": "4x2table",
233 | "body": [
234 | "| ${1:Column1} | ${2:Column2} |",
235 | "|--------------- | --------------- |",
236 | "| ${3:Item1.1} | ${4:Item2.1} |",
237 | "| ${5:Item1.2} | ${6:Item2.2} |",
238 | "| ${7:Item1.3} | ${8:Item2.3} |",
239 | "${0}"
240 | ],
241 | "description": "Insert table with 4 rows and 2 columns. First row is heading."
242 | },
243 | "Insert 5x2 table": {
244 | "prefix": "5x2table",
245 | "body": [
246 | "| ${1:Column1} | ${2:Column2} |",
247 | "|--------------- | --------------- |",
248 | "| ${3:Item1.1} | ${4:Item2.1} |",
249 | "| ${4:Item1.2} | ${5:Item2.2} |",
250 | "| ${6:Item1.3} | ${7:Item2.3} |",
251 | "| ${8:Item1.4} | ${9:Item2.4} |",
252 | "${0}"
253 | ],
254 | "description": "Insert table with 5 rows and 2 columns. First row is heading."
255 | },
256 | "Insert 2x3 table": {
257 | "prefix": "2x3table",
258 | "body": [
259 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} |",
260 | "|---------------- | --------------- | --------------- |",
261 | "| ${4:Item1.1} | ${5:Item2.1} | ${6:Item3.1} |",
262 | "${0}"
263 | ],
264 | "description": "Insert table with 2 rows and 3 columns. First row is heading."
265 | },
266 | "Insert 3x3 table": {
267 | "prefix": "3x3table",
268 | "body": [
269 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} |",
270 | "|---------------- | --------------- | --------------- |",
271 | "| ${4:Item1.1} | ${5:Item2.1} | ${6:Item3.1} |",
272 | "| ${7:Item1.2} | ${8:Item2.2} | ${9:Item3.2} |",
273 | "${0}"
274 | ],
275 | "description": "Insert table with 3 rows and 3 columns. First row is heading."
276 | },
277 | "Insert 4x3 table": {
278 | "prefix": "4x3table",
279 | "body": [
280 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} |",
281 | "|---------------- | --------------- | --------------- |",
282 | "| ${4:Item1.1} | ${5:Item2.1} | ${6:Item3.1} |",
283 | "| ${7:Item1.2} | ${8:Item2.2} | ${9:Item3.2} |",
284 | "| ${10:Item1.3} | ${11:Item2.3} | ${12:Item3.3} |",
285 | "${0}"
286 | ],
287 | "description": "Insert table with 4 rows and 3 columns. First row is heading."
288 | },
289 | "Insert 5x3 table": {
290 | "prefix": "5x3table",
291 | "body": [
292 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} |",
293 | "|---------------- | --------------- | --------------- |",
294 | "| ${4:Item1.1} | ${5:Item2.1} | ${6:Item3.1} |",
295 | "| ${7:Item1.2} | ${8:Item2.2} | ${9:Item3.2} |",
296 | "| ${10:Item1.3} | ${11:Item2.3} | ${12:Item3.3} |",
297 | "| ${13:Item1.4} | ${14:Item2.4} | ${15:Item3.4} |",
298 | "${0}"
299 | ],
300 | "description": "Insert table with 5 rows and 3 columns. First row is heading."
301 | },
302 | "Insert 2x4 table": {
303 | "prefix": "2x4table",
304 | "body": [
305 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} | ${4:Column4} |",
306 | "|---------------- | --------------- | --------------- | --------------- |",
307 | "| ${5:Item1.1} | ${6:Item2.1} | ${7:Item3.1} | ${8:Item4.1} |",
308 | "${0}"
309 | ],
310 | "description": "Insert table with 2 rows and 4 columns. First row is heading."
311 | },
312 | "Insert 3x4 table": {
313 | "prefix": "3x4table",
314 | "body": [
315 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} | ${4:Column4} |",
316 | "|---------------- | --------------- | --------------- | --------------- |",
317 | "| ${5:Item1.1} | ${6:Item2.1} | ${7:Item3.1} | ${8:Item4.1} |",
318 | "| ${9:Item1.2} | ${10:Item2.2} | ${11:Item3.2} | ${12:Item4.2} |",
319 | "${0}"
320 | ],
321 | "description": "Insert table with 3 rows and 4 columns. First row is heading."
322 | },
323 | "Insert 4x4 table": {
324 | "prefix": "4x4table",
325 | "body": [
326 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} | ${4:Column4} |",
327 | "|---------------- | --------------- | --------------- | --------------- |",
328 | "| ${5:Item1.1} | ${6:Item2.1} | ${7:Item3.1} | ${8:Item4.1} |",
329 | "| ${9:Item1.2} | ${10:Item2.2} | ${11:Item3.2} | ${12:Item4.2} |",
330 | "| ${13:Item1.3} | ${14:Item2.3} | ${15:Item3.3} | ${16:Item4.3} |",
331 | "${0}"
332 | ],
333 | "description": "Insert table with 4 rows and 4 columns. First row is heading."
334 | },
335 | "Insert 5x4 table": {
336 | "prefix": "5x4table",
337 | "body": [
338 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} | ${4:Column4} |",
339 | "|---------------- | --------------- | --------------- | --------------- |",
340 | "| ${5:Item1.1} | ${6:Item2.1} | ${7:Item3.1} | ${8:Item4.1} |",
341 | "| ${9:Item1.2} | ${10:Item2.2} | ${11:Item3.2} | ${12:Item4.2} |",
342 | "| ${13:Item1.3} | ${14:Item2.3} | ${15:Item3.3} | ${16:Item4.3} |",
343 | "| ${17:Item1.4} | ${18:Item2.4} | ${19:Item3.4} | ${20:Item4.4} |",
344 | "${0}"
345 | ],
346 | "description": "Insert table with 5 rows and 4 columns. First row is heading."
347 | },
348 | "Insert 2x5 table": {
349 | "prefix": "2x5table",
350 | "body": [
351 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} | ${4:Column4} | ${5:Column5} |",
352 | "|---------------- | --------------- | --------------- | --------------- | --------------- |",
353 | "| ${6:Item1.1} | ${7:Item2.1} | ${8:Item3.1} | ${9:Item4.1} | ${10:Item5.1} |",
354 | "${0}"
355 | ],
356 | "description": "Insert table with 2 rows and 5 columns. First row is heading."
357 | },
358 | "Insert 3x5 table": {
359 | "prefix": "3x5table",
360 | "body": [
361 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} | ${4:Column4} | ${5:Column5} |",
362 | "|---------------- | --------------- | --------------- | --------------- | --------------- |",
363 | "| ${6:Item1.1} | ${7:Item2.1} | ${8:Item3.1} | ${9:Item4.1} | ${10:Item5.1} |",
364 | "| ${11:Item1.2} | ${12:Item2.2} | ${13:Item3.2} | ${14:Item4.2} | ${15:Item5.2} |",
365 | "${0}"
366 | ],
367 | "description": "Insert table with 3 rows and 5 columns. First row is heading."
368 | },
369 | "Insert 4x5 table": {
370 | "prefix": "4x5table",
371 | "body": [
372 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} | ${4:Column4} | ${5:Column5} |",
373 | "|---------------- | --------------- | --------------- | --------------- | --------------- |",
374 | "| ${6:Item1.1} | ${7:Item2.1} | ${8:Item3.1} | ${9:Item4.1} | ${10:Item5.1} |",
375 | "| ${11:Item1.2} | ${12:Item2.2} | ${13:Item3.2} | ${14:Item4.2} | ${15:Item5.2} |",
376 | "| ${16:Item1.3} | ${17:Item2.3} | ${18:Item3.3} | ${19:Item4.3} | ${20:Item5.3} |",
377 | "${0}"
378 | ],
379 | "description": "Insert table with 4 rows and 5 columns. First row is heading."
380 | },
381 | "Insert 5x5 table": {
382 | "prefix": "5x5table",
383 | "body": [
384 | "| ${1:Column1} | ${2:Column2} | ${3:Column3} | ${4:Column4} | ${5:Column5} |",
385 | "|---------------- | --------------- | --------------- | --------------- | --------------- |",
386 | "| ${6:Item1.1} | ${7:Item2.1} | ${8:Item3.1} | ${9:Item4.1} | ${10:Item5.1} |",
387 | "| ${11:Item1.2} | ${12:Item2.2} | ${13:Item3.2} | ${14:Item4.2} | ${15:Item5.2} |",
388 | "| ${16:Item1.3} | ${17:Item2.3} | ${18:Item3.3} | ${19:Item4.3} | ${20:Item5.3} |",
389 | "| ${21:Item1.4} | ${22:Item2.4} | ${23:Item3.4} | ${24:Item4.4} | ${25:Item5.4} |",
390 | "${0}"
391 | ],
392 | "description": "Insert table with 5 rows and 5 columns. First row is heading."
393 | },
394 | "Insert subscript": {
395 | "prefix": "sub",
396 | "body": ["${1}${0}"],
397 | "description": "Create a subscript."
398 | },
399 | "Insert superscript": {
400 | "prefix": "sup",
401 | "body": ["${1}${0}"],
402 | "description": "Create a superscript."
403 | }
404 | }
405 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "my-custom-snippets",
3 | "engines": {
4 | "vscode": "^1.11.0"
5 | },
6 | "contributes": {
7 | "snippets": [
8 | {
9 | "language": ["sql"],
10 | "path": "./sql.json"
11 | },
12 | {
13 | "language": ["rust"],
14 | "path": "./rust.json"
15 | },
16 | {
17 | "language": ["lua"],
18 | "path": "./lua.json"
19 | },
20 | {
21 | "language": ["markdown"],
22 | "path": "./markdown.json"
23 | },
24 | {
25 | "language": [
26 | "javascript",
27 | "javascriptreact",
28 | "vue",
29 | "svelte",
30 | "astro",
31 | "javascript.jsx",
32 | "typescript",
33 | "typescriptreact",
34 | "typescript.tsx"
35 | ],
36 | "path": "./javascript.json"
37 | },
38 | {
39 | "language": [
40 | "javascriptreact",
41 | "javascript.jsx",
42 | "typescriptreact",
43 | "typescript.tsx"
44 | ],
45 | "path": "./javascriptreact.json"
46 | },
47 | {
48 | "language": ["tex"],
49 | "path": "./tex.json"
50 | },
51 | {
52 | "language": ["python"],
53 | "path": "./django.json"
54 | },
55 | {
56 | "language": ["python"],
57 | "path": "./python.json"
58 | },
59 | {
60 | "language": ["html"],
61 | "path": "./htmldjango.json"
62 | }
63 | ]
64 | }
65 | }
66 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/python.json:
--------------------------------------------------------------------------------
1 | {
2 | "#!/usr/bin/env python": {
3 | "prefix": "env",
4 | "body": "#!/usr/bin/env python\n$0",
5 | "description": "Adds shebang line for default python interpreter."
6 | },
7 | "#!/usr/bin/env python3": {
8 | "prefix": "env3",
9 | "body": "#!/usr/bin/env python3\n$0",
10 | "description": "Adds shebang line for default python 3 interpreter."
11 | },
12 | "# -*- coding=utf-8 -*-": {
13 | "prefix": "enc",
14 | "body": "# -*- coding=utf-8 -*-\n$0",
15 | "description": "set default python2.x encoding specification to utf-8 as it is mentioned in pep-0263."
16 | },
17 | "# coding=utf-8": {
18 | "prefix": "enco",
19 | "body": "# coding=utf-8\n$0",
20 | "description": "Set default python3 encoding specification to utf-8, by default this is the encoding for python3.x as it is mentioned in pep-3120."
21 | },
22 | "from future import ...": {
23 | "prefix": "fenc",
24 | "body": [
25 | "# -*- coding: utf-8 -*-",
26 | "from __future__ import absolute_import, division, print_function, unicode_literals"
27 | ],
28 | "description": "Import future statement definitions for python2.x scripts using utf-8 as encoding."
29 | },
30 | "from future import ... v1": {
31 | "prefix": "fenco",
32 | "body": [
33 | "# coding: utf-8",
34 | "from __future__ import absolute_import, division, print_function, unicode_literals"
35 | ],
36 | "description": "Import future statement definitions for python3.x scripts using utf-8 as encoding."
37 | },
38 | "import": {
39 | "prefix": "im",
40 | "body": "import ${1:package/module}$0",
41 | "description": "Import a package or module"
42 | },
43 | "from ... import ...": {
44 | "prefix": "fim",
45 | "body": "from ${1:package/module} import ${2:names}$0",
46 | "description": "Import statement that allows individual objects from the module to be imported directly into the caller’s symbol table."
47 | },
48 | "class": {
49 | "prefix": "class",
50 | "body": ["class ${1:classname}(${2:object}):", "\t${3:pass}"],
51 | "description": "Code snippet for a class definition"
52 | },
53 | "New class": {
54 | "prefix": "classi",
55 | "body": "class ${1:ClassName}(${2:object}):\n\t\"\"\"${3:docstring for $1.}\"\"\"\n\tdef __init__(self, ${4:arg}):\n\t\t${5:super($1, self).__init__()}\n\t\tself.arg = arg\n\t\t$0",
56 | "description": "Code snippet for a class definition."
57 | },
58 | "New method": {
59 | "prefix": "defs",
60 | "body": "def ${1:mname}(self, ${2:arg}):\n\t${3:pass}$0",
61 | "description": "Code snippet for a class method definition."
62 | },
63 | "New method w/ return": {
64 | "prefix": "defst",
65 | "body": "def ${1:mname}(self, ${2:arg}) -> ${3:return_type}:\n\t${4:pass}$0",
66 | "description": "Code snippet for a class method definition."
67 | },
68 | "New function": {
69 | "prefix": "def",
70 | "body": "def ${1:fname}(${2:arg}):\n\t${3:pass}$0",
71 | "description": "Code snippet for function definition."
72 | },
73 | "New function w/ return": {
74 | "prefix": "deft",
75 | "body": "def ${1:fname}(${2:arg}) -> ${3:return_type}:\n\t${4:pass}$0",
76 | "description": "Code snippet for function definition."
77 | },
78 | "New async function": {
79 | "prefix": "adef",
80 | "body": "async def ${1:fname}(${2:arg}):\n\t${3:pass}$0",
81 | "description": "Code snippet for async function definition."
82 | },
83 | "New property": {
84 | "prefix": "property",
85 | "body": "@property\ndef ${1:foo}(self):\n \"\"\"${2:The $1 property.}\"\"\"\n ${3:return self._$1}\n@${4:$1}.setter\ndef ${5:$1}(self, value):\n ${6:self._$1} = value",
86 | "description": "New property: get and set via decorator"
87 | },
88 | "if": {
89 | "prefix": "if",
90 | "body": "if ${1:condition}:\n\t${2:pass}$0",
91 | "description": "Code snippet for the if statement."
92 | },
93 | "if/else": {
94 | "prefix": "if/else",
95 | "body": ["if ${1:condition}:", "\t${2:pass}", "else:", "\t${3:pass}"],
96 | "description": "Code snippet for an if statement with else"
97 | },
98 | "elif": {
99 | "prefix": "elif",
100 | "body": ["elif ${1:expression}:", "\t${2:pass}"],
101 | "description": "Code snippet for an elif"
102 | },
103 | "else": {
104 | "prefix": "else",
105 | "body": ["else:", "\t${1:pass}"],
106 | "description": "Code snippet for an else"
107 | },
108 | "for": {
109 | "prefix": "for",
110 | "body": "for ${1:value} in ${2:iterable}:\n\t${3:pass}$0",
111 | "description": "Code snippet to create a for loop structure."
112 | },
113 | "for/else": {
114 | "prefix": "for/else",
115 | "body": [
116 | "for ${1:target_list} in ${2:expression_list}:",
117 | "\t${3:pass}",
118 | "else:",
119 | "\t${4:pass}"
120 | ],
121 | "description": "Code snippet for a for loop with else"
122 | },
123 | "while": {
124 | "prefix": "while",
125 | "body": "while ${1:condition}:\n\t${2:pass}$0",
126 | "description": "Code snippet to create a while loop structure."
127 | },
128 | "while/else": {
129 | "prefix": "while/else",
130 | "body": ["while ${1:expression}:", "\t${2:pass}", "else:", "\t${3:pass}"],
131 | "description": "Code snippet for a while loop with else"
132 | },
133 | "try:except:": {
134 | "prefix": "try",
135 | "body": "try:\n\t${1:pass}\nexcept ${2:Exception} as ${3:e}:\n\t${4:raise $3}$0",
136 | "description": "Code Snippet for a try and except blocks."
137 | },
138 | "try:except:else:finally": {
139 | "prefix": "tryef",
140 | "body": "try:\n\t${1:pass}\nexcept${2: ${3:Exception} as ${4:e}}:\n\t${5:raise}\nelse:\n\t${6:pass}\nfinally:\n\t${7:pass}$0",
141 | "description": "Code Snippet for a try/except/finally with else statement."
142 | },
143 | "try:except:else": {
144 | "prefix": "trye",
145 | "body": "try:\n\t${1:pass}\nexcept ${2:Exception} as ${3:e}:\n\t${4:raise $3}\nelse:\n\t${5:pass}$0",
146 | "description": "Code Snippet for a try/except with else statement."
147 | },
148 | "try:except:finally": {
149 | "prefix": "tryf",
150 | "body": "try:\n\t${1:pass}\nexcept ${2:Exception} as ${3:e}:\n\t${4:raise $3}\nfinally:\n\t${5:pass}$0",
151 | "description": "Code Snippet for a try/except/finally."
152 | },
153 | "with": {
154 | "prefix": "with",
155 | "body": ["with ${1:expression} as ${2:target}:", "\t${3:pass}"],
156 | "description": "Code snippet for a with statement"
157 | },
158 | "self": {
159 | "prefix": ".",
160 | "body": "self.$0",
161 | "description": "Shortend snippet to reference the self property in an object."
162 | },
163 | "__magic__": {
164 | "prefix": "__",
165 | "body": "__${1:init}__$0",
166 | "description": "Code snippet to create magic methods."
167 | },
168 | "if __name__ == \"__main__\"": {
169 | "prefix": "ifmain",
170 | "body": "if __name__ == \"__main__\":\n\t${1:main()}$0",
171 | "description": "Create implicitly all the code at the top level using the __name__ special variable."
172 | },
173 | "List comprehension": {
174 | "prefix": "lc",
175 | "body": "[${1:value} for ${2:value} in ${3:iterable}]$0",
176 | "description": "List comprehension for creating a list based on existing lists."
177 | },
178 | "List comprehension if else": {
179 | "prefix": "lcie",
180 | "body": "[${1:value} if ${2:condition} else ${3:condition} for ${4:value} in ${5:iterable}]$0",
181 | "description": "List comprehension for creating a list based on existing lists, with conditional if-else statement."
182 | },
183 | "List comprehension if filter": {
184 | "prefix": "lci",
185 | "body": "[${1:value} for ${2:value} in ${3:iterable} if ${4:condition}$0]",
186 | "description": "List comprehension for creating a list based on existing lists, with conditional if statement."
187 | },
188 | "Dictionary comprehension": {
189 | "prefix": "dc",
190 | "body": "{${1:key}: ${2:value} for ${3:key}, ${4:value} in ${5:iterable}}$0",
191 | "description": "Handy and faster way to create dictories based on existing dictionaries."
192 | },
193 | "Dictionary comprehension if filter": {
194 | "prefix": "dci",
195 | "body": "{${1:key}: ${2:value} for ${3:key}, ${4:value} in ${5:iterable} if ${6:condition}}$0",
196 | "description": "Handy and faster way to create dictories based on existing dictionaries, with conditional if statement."
197 | },
198 | "Set comprehension": {
199 | "prefix": "sc",
200 | "body": "{${1:value} for ${2:value} in ${3:iterable}}$0",
201 | "description": "Create a set based on existing iterables."
202 | },
203 | "Set Comprehension if filter": {
204 | "prefix": "sci",
205 | "body": "{${1:value} for ${2:value} in ${3:iterable} if ${4:condition}}$0",
206 | "description": "Create a set based on existing iterables, with condition if statement."
207 | },
208 | "Generator comprehension": {
209 | "prefix": "gc",
210 | "body": "(${1:key} for ${2:value} in ${3:iterable})$0",
211 | "description": "Create a generator based on existing iterables."
212 | },
213 | "Generator comprehension if filter": {
214 | "prefix": "gci",
215 | "body": "(${1:key} for ${2:value} in ${3:iterable} if ${4:condition})$0",
216 | "description": "Create a generator based on existing iterables, with condition if statement."
217 | },
218 | "try/except": {
219 | "prefix": "try/except",
220 | "body": [
221 | "try:",
222 | "\t${1:pass}",
223 | "except ${2:expression} as ${3:identifier}:",
224 | "\t${4:pass}"
225 | ],
226 | "description": "Code snippet for a try/except statement"
227 | },
228 | "try/finally": {
229 | "prefix": "try/finally",
230 | "body": ["try:", "\t${1:pass}", "finally:", "\t${2:pass}"],
231 | "description": "Code snippet for a try/finally statement"
232 | },
233 | "try/except/else": {
234 | "prefix": "try/except/else",
235 | "body": [
236 | "try:",
237 | "\t${1:pass}",
238 | "except ${2:expression} as ${3:identifier}:",
239 | "\t${4:pass}",
240 | "else:",
241 | "\t${5:pass}"
242 | ],
243 | "description": "Code snippet for a try/except/else statement"
244 | },
245 | "try/except/finally": {
246 | "prefix": "try/except/finally",
247 | "body": [
248 | "try:",
249 | "\t${1:pass}",
250 | "except ${2:expression} as ${3:identifier}:",
251 | "\t${4:pass}",
252 | "finally:",
253 | "\t${5:pass}"
254 | ],
255 | "description": "Code snippet for a try/except/finally statement"
256 | },
257 | "try/except/else/finally": {
258 | "prefix": "try/except/else/finally",
259 | "body": [
260 | "try:",
261 | "\t${1:pass}",
262 | "except ${2:expression} as ${3:identifier}:",
263 | "\t${4:pass}",
264 | "else:",
265 | "\t${5:pass}",
266 | "finally:",
267 | "\t${6:pass}"
268 | ],
269 | "description": "Code snippet for a try/except/else/finally statement"
270 | },
271 | "def(class method)": {
272 | "prefix": "def class method",
273 | "body": ["def ${1:funcname}(self, ${2:parameter_list}):", "\t${3:pass}"],
274 | "description": "Code snippet for a class method"
275 | },
276 | "def(static class method)": {
277 | "prefix": "def static class method",
278 | "body": ["@staticmethod", "def ${1:funcname}(${2:parameter_list}):", "\t${3:pass}"],
279 | "description": "Code snippet for a static class method"
280 | },
281 | "def(abstract class method)": {
282 | "prefix": "def abstract class method",
283 | "body": ["def ${1:funcname}(self, ${2:parameter_list}):", "\traise NotImplementedError"],
284 | "description": "Code snippet for an abstract class method"
285 | },
286 | "lambda": {
287 | "prefix": "lambda",
288 | "body": ["lambda ${1:parameter_list}: ${2:expression}"],
289 | "description": "Code snippet for a lambda statement"
290 | },
291 | "if(main)": {
292 | "prefix": "__main__",
293 | "body": ["if __name__ == \"__main__\":", " ${1:pass}"],
294 | "description": "Code snippet for a `if __name__ == \"__main__\": ...` block"
295 | },
296 | "async/def": {
297 | "prefix": "async/def",
298 | "body": ["async def ${1:funcname}(${2:parameter_list}):", "\t${3:pass}"],
299 | "description": "Code snippet for an async statement"
300 | },
301 | "async/for": {
302 | "prefix": "async/for",
303 | "body": ["async for ${1:target} in ${2:iter}:", "\t${3:block}"],
304 | "description": "Code snippet for an async for statement"
305 | },
306 | "async/for/else": {
307 | "prefix": "async/for/else",
308 | "body": ["async for ${1:target} in ${2:iter}:", "\t${3:block}", "else:", "\t${4:block}"],
309 | "description": "Code snippet for an async for statement with else"
310 | },
311 | "async/with": {
312 | "prefix": "async/with",
313 | "body": ["async with ${1:expr} as ${2:var}:", "\t${3:block}"],
314 | "description": "Code snippet for an async with statement"
315 | },
316 | "add/new/cell": {
317 | "prefix": "add/new/cell",
318 | "body": "# %%",
319 | "description": "Code snippet to add a new cell"
320 | },
321 | "mark/markdown": {
322 | "prefix": "mark/markdown",
323 | "body": "# %% [markdown]",
324 | "description": "Code snippet to add a new markdown cell"
325 | }
326 | }
327 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/rust.json:
--------------------------------------------------------------------------------
1 | {
2 | "Complete format to test": {
3 | "prefix": "testformat",
4 | "body": [
5 | "#[cfg(test)]",
6 | "mod tests {",
7 | " #[test]",
8 | " fn ${1:name}() {",
9 | " ${2:unimplemented!();}",
10 | " }",
11 | "}"
12 | ]
13 | },
14 | "allow": {
15 | "prefix": "allow",
16 | "body": ["#![allow(${1})]"],
17 | "description": "#![allow(…)]"
18 | },
19 | "deny": {
20 | "prefix": "deny",
21 | "body": ["#![deny(${1})]"],
22 | "description": "#![deny(…)]"
23 | },
24 | "warn": {
25 | "prefix": "warn",
26 | "body": ["#![warn(${1})]"],
27 | "description": "#![warn(…)]"
28 | },
29 | "no_std": {
30 | "prefix": "no_std",
31 | "body": ["#![no_std]"],
32 | "description": "#![no_std]"
33 | },
34 | "no_core": {
35 | "prefix": "no_core",
36 | "body": ["#![no_core]"],
37 | "description": "#![no_core]"
38 | },
39 | "feature": {
40 | "prefix": "feature",
41 | "body": ["#![feature(${1})]"],
42 | "description": "#![feature(…)]"
43 | },
44 | "macro_use": {
45 | "prefix": "macro_use",
46 | "body": ["#[macro_use(${1})]"],
47 | "description": "#[macro_use(…)]"
48 | },
49 | "repr": {
50 | "prefix": "repr",
51 | "body": ["#[repr(${1})]"],
52 | "description": "#[repr(…)]"
53 | },
54 | "cfg": {
55 | "prefix": "cfg",
56 | "body": ["#[cfg(${1})]"],
57 | "description": "#[cfg(…)]"
58 | },
59 | "cfg_attr": {
60 | "prefix": "cfg_attr",
61 | "body": ["#[cfg_attr(${1}, ${2})]"],
62 | "description": "#[cfg_attr(…, …)]"
63 | },
64 | "cfg!": {
65 | "prefix": "cfg!",
66 | "body": ["cfg!(${1})"],
67 | "description": "cfg!(…)"
68 | },
69 | "column": {
70 | "prefix": "column",
71 | "body": ["column!()"],
72 | "description": "column!()"
73 | },
74 | "concat": {
75 | "prefix": "concat",
76 | "body": ["concat!(${1})"],
77 | "description": "concat!(…)"
78 | },
79 | "concat_idents": {
80 | "prefix": "concat_idents",
81 | "body": ["concat_idents!(${1})"],
82 | "description": "concat_idents!(…)"
83 | },
84 | "debug_assert": {
85 | "prefix": "debug_assert",
86 | "body": ["debug_assert!(${1});"],
87 | "description": "debug_assert!(…)"
88 | },
89 | "debug_assert_eq": {
90 | "prefix": "debug_assert_eq",
91 | "body": ["debug_assert_eq!(${1}, ${2});"],
92 | "description": "debug_assert_eq!(…, …)"
93 | },
94 | "env": {
95 | "prefix": "env",
96 | "body": ["env!(\"${1}\")"],
97 | "description": "env!(\"…\")"
98 | },
99 | "file": {
100 | "prefix": "file",
101 | "body": ["file!()"],
102 | "description": "file!()"
103 | },
104 | "format": {
105 | "prefix": "format",
106 | "body": ["format!(\"${1}\")"],
107 | "description": "format!(…)"
108 | },
109 | "format_args": {
110 | "prefix": "format_args",
111 | "body": ["format_args!(\"${1}\")"],
112 | "description": "format_args!(…)"
113 | },
114 | "include": {
115 | "prefix": "include",
116 | "body": ["include!(\"${1}\");"],
117 | "description": "include!(\"…\");"
118 | },
119 | "include_bytes": {
120 | "prefix": "include_bytes",
121 | "body": ["include_bytes!(\"${1}\")"],
122 | "description": "include_bytes!(\"…\")"
123 | },
124 | "include_str": {
125 | "prefix": "include_str",
126 | "body": ["include_str!(\"${1}\")"],
127 | "description": "include_str!(\"…\")"
128 | },
129 | "line": {
130 | "prefix": "line",
131 | "body": ["line!()"],
132 | "description": "line!()"
133 | },
134 | "module_path": {
135 | "prefix": "module_path",
136 | "body": ["module_path!()"],
137 | "description": "module_path!()"
138 | },
139 | "option_env": {
140 | "prefix": "option_env",
141 | "body": ["option_env!(\"${1}\")"],
142 | "description": "option_env!(\"…\")"
143 | },
144 | "panic": {
145 | "prefix": "panic",
146 | "body": ["panic!(\"${1}\");"],
147 | "description": "panic!(…);"
148 | },
149 | "print": {
150 | "prefix": "print",
151 | "body": ["print!(\"${1}\");"],
152 | "description": "print!(…);"
153 | },
154 | "println": {
155 | "prefix": "println",
156 | "body": ["println!(\"${1}\");"],
157 | "description": "println!(…);"
158 | },
159 | "stringify": {
160 | "prefix": "stringify",
161 | "body": ["stringify!(${1})"],
162 | "description": "stringify!(…)"
163 | },
164 | "thread_local": {
165 | "prefix": "thread_local",
166 | "body": ["thread_local!(static ${1:STATIC}: ${2:Type} = ${4:init});"],
167 | "description": "thread_local!(static …: … = …);"
168 | },
169 | "try": {
170 | "prefix": "try",
171 | "body": ["try!(${1})"],
172 | "description": "try!(…)"
173 | },
174 | "unimplemented": {
175 | "prefix": "unimplemented",
176 | "body": ["unimplemented!()"],
177 | "description": "unimplemented!()"
178 | },
179 | "unreachable": {
180 | "prefix": "unreachable",
181 | "body": ["unreachable!(${1})"],
182 | "description": "unreachable!(…)"
183 | },
184 | "vec": {
185 | "prefix": "vec",
186 | "body": ["vec![${1}]"],
187 | "description": "vec![…]"
188 | },
189 | "write": {
190 | "prefix": "write",
191 | "body": ["write!(${1}, \"${2}\")"],
192 | "description": "write!(…)"
193 | },
194 | "writeln": {
195 | "prefix": "writeln",
196 | "body": ["writeln!(${1}, \"${2}\")"],
197 | "description": "writeln!(…, …)"
198 | },
199 | "Err": {
200 | "prefix": "Err",
201 | "body": ["Err(${1})"],
202 | "description": "Err(…)"
203 | },
204 | "Ok": {
205 | "prefix": "Ok",
206 | "body": ["Ok(${1:result})"],
207 | "description": "Ok(…)"
208 | },
209 | "Some": {
210 | "prefix": "Some",
211 | "body": ["Some(${1})"],
212 | "description": "Some(…)"
213 | },
214 | "assert": {
215 | "prefix": "assert",
216 | "body": ["assert!(${1});"],
217 | "description": "assert!(…);"
218 | },
219 | "assert_eq": {
220 | "prefix": "assert_eq",
221 | "body": ["assert_eq!(${1}, ${2});"],
222 | "description": "assert_eq!(…, …);"
223 | },
224 | "bench": {
225 | "prefix": "bench",
226 | "body": [
227 | "#[bench]",
228 | "fn ${1:name}(b: &mut test::Bencher) {",
229 | " ${2:b.iter(|| ${3:/* benchmark code */})}",
230 | "}"
231 | ],
232 | "description": "#[bench]"
233 | },
234 | "const": {
235 | "prefix": "const",
236 | "body": ["const ${1:CONST}: ${2:Type} = ${4:init};"],
237 | "description": "const …: … = …;"
238 | },
239 | "derive": {
240 | "prefix": "derive",
241 | "body": ["#[derive(${1})]"],
242 | "description": "#[derive(…)]"
243 | },
244 | "else": {
245 | "prefix": "else",
246 | "body": ["else {", " ${1:todo!();}", "}"],
247 | "description": "else { … }"
248 | },
249 | "enum": {
250 | "prefix": "enum",
251 | "body": [
252 | "#[derive(Debug)]",
253 | "enum ${1:Name} {",
254 | " ${2:Variant1},",
255 | " ${3:Variant2},",
256 | "}"
257 | ],
258 | "description": "enum … { … }"
259 | },
260 | "extern-crate": {
261 | "prefix": "extern-crate",
262 | "body": ["extern crate ${1:name};"],
263 | "description": "extern crate …;"
264 | },
265 | "extern-fn": {
266 | "prefix": "extern-fn",
267 | "body": [
268 | "extern \"C\" fn ${1:name}(${2:arg}: ${3:Type}) -> ${4:RetType} {",
269 | " ${5:// add code here}",
270 | "}"
271 | ],
272 | "description": "extern \"C\" fn …(…) { … }"
273 | },
274 | "extern-mod": {
275 | "prefix": "extern-mod",
276 | "body": ["extern \"C\" {", " ${2:// add code here}", "}"],
277 | "description": "extern \"C\" { … }"
278 | },
279 | "pfn": {
280 | "prefix": "pfn",
281 | "body": [
282 | "pub fn ${1:name}(${2:arg}: ${3:Type}) -> ${4:RetType} {",
283 | " ${5:todo!();}",
284 | "}"
285 | ],
286 | "description": "pub fn …(…) { … }"
287 | },
288 | "fn": {
289 | "prefix": "fn",
290 | "body": [
291 | "fn ${1:name}(${2:arg}: ${3:Type}) -> ${4:RetType} {",
292 | " ${5:todo!();}",
293 | "}"
294 | ],
295 | "description": "fn …(…) { … }"
296 | },
297 | "for": {
298 | "prefix": "for",
299 | "body": ["for ${1:pat} in ${2:expr} {", " ${3:todo!();}", "}"],
300 | "description": "for … in … { … }"
301 | },
302 | "if-let": {
303 | "prefix": "if-let",
304 | "body": ["if let ${1:Some(pat)} = ${2:expr} {", " ${0:todo!();}", "}"],
305 | "description": "if let … = … { … }"
306 | },
307 | "if": {
308 | "prefix": "if",
309 | "body": ["if ${1:condition} {", " ${2:todo!();}", "}"],
310 | "description": "if … { … }"
311 | },
312 | "impl-trait": {
313 | "prefix": "impl-trait",
314 | "body": [
315 | "impl ${1:Trait} for ${2:Type} {",
316 | " ${3:// add code here}",
317 | "}"
318 | ],
319 | "description": "impl … for … { … }"
320 | },
321 | "impl": {
322 | "prefix": "impl",
323 | "body": ["impl ${1:Type} {", " ${2:// add code here}", "}"],
324 | "description": "impl … { … }"
325 | },
326 | "inline-fn": {
327 | "prefix": "inline-fn",
328 | "body": ["#[inline]", "pub fn ${1:name}() {", " ${2:todo!();}", "}"],
329 | "description": "inlined function"
330 | },
331 | "let": {
332 | "prefix": "let",
333 | "body": ["let ${1:pat} = ${2:expr};"],
334 | "description": "let … = …;"
335 | },
336 | "loop": {
337 | "prefix": "loop",
338 | "body": ["loop {", " ${2:todo!();}", "}"],
339 | "description": "loop { … }"
340 | },
341 | "macro_rules": {
342 | "prefix": "macro_rules",
343 | "body": ["macro_rules! ${1:name} {", " (${2}) => (${3})", "}"],
344 | "description": "macro_rules! … { … }"
345 | },
346 | "main": {
347 | "prefix": "main",
348 | "body": ["fn main() {", " ${1:todo!();}", "}"],
349 | "description": "fn main() { … }"
350 | },
351 | "match": {
352 | "prefix": "match",
353 | "body": ["match ${1:expr} {}"],
354 | "description": "match … { … }"
355 | },
356 | "mod": {
357 | "prefix": "mod",
358 | "body": ["mod ${1:name};"],
359 | "description": "mod …;"
360 | },
361 | "mod-block": {
362 | "prefix": "mod-block",
363 | "body": ["mod ${1:name} {", " ${2:// add code here}", "}"],
364 | "description": "mod … { … }"
365 | },
366 | "static": {
367 | "prefix": "static",
368 | "body": ["static ${1:STATIC}: ${2:Type} = ${4:init};"],
369 | "description": "static …: … = …;"
370 | },
371 | "struct-tuple": {
372 | "prefix": "struct-tuple",
373 | "body": ["struct ${1:Name}(${2:Type});"],
374 | "description": "struct …(…);"
375 | },
376 | "struct-unit": {
377 | "prefix": "struct-unit",
378 | "body": ["struct ${1:Name};"],
379 | "description": "struct …;"
380 | },
381 | "struct": {
382 | "prefix": "struct",
383 | "body": [
384 | "#[derive(Debug)]",
385 | "struct ${1:Name} {",
386 | " ${2:field}: ${3:Type}",
387 | "}"
388 | ],
389 | "description": "struct … { … }"
390 | },
391 | "modtest": {
392 | "prefix": "modtest",
393 | "body": [
394 | "#[cfg(test)]",
395 | "mod test {",
396 | " #[test]",
397 | " fn ${1:name}() {",
398 | " ${2:todo!();}",
399 | " }",
400 | "}"
401 | ],
402 | "description": "#[cfg(test)]\nmod test {...}"
403 | },
404 | "test": {
405 | "prefix": "test",
406 | "body": ["#[test]", "fn ${1:name}() {", " ${2:todo!();}", "}"],
407 | "description": "#[test]"
408 | },
409 | "trait": {
410 | "prefix": "trait",
411 | "body": ["trait ${1:Name} {", " ${2:// add code here}", "}", ""],
412 | "description": "trait … { … }"
413 | },
414 | "type": {
415 | "prefix": "type",
416 | "body": ["type ${1:Alias} = ${2:Type};"],
417 | "description": "type … = …;"
418 | },
419 | "while-let": {
420 | "prefix": "while-let",
421 | "body": [
422 | "while let ${1:Some(pat)} = ${2:expr} {",
423 | " ${0:todo!();}",
424 | "}"
425 | ],
426 | "description": "while let … = … { … }"
427 | },
428 | "while": {
429 | "prefix": "while",
430 | "body": ["while ${1:condition} {", " ${2:todo!();}", "}"],
431 | "description": "while … { … }"
432 | }
433 | }
434 |
--------------------------------------------------------------------------------
/.config/nvim/snippets/sql.json:
--------------------------------------------------------------------------------
1 | {
2 | "INTEGER NOT NULL": {
3 | "prefix": "int",
4 | "body": ["INTEGER NOT NULL"]
5 | },
6 | "VARCHAR NOT NULL": {
7 | "prefix": "varchar",
8 | "body": ["VARCHAR($1) NOT NULL$0"]
9 | },
10 | "BOOLEAN NOT NULL": {
11 | "prefix": "bool",
12 | "body": ["BOOLEAN NOT NULL"]
13 | },
14 | "REAL NOT NULL": {
15 | "prefix": "real",
16 | "body": ["REAL NOT NULL"]
17 | },
18 | "SERIAL PRIMARY KEY": {
19 | "prefix": "srk",
20 | "body": ["SERIAL PRIMARY KEY"]
21 | },
22 | "FOREIGN KEY": {
23 | "prefix": "fgk",
24 | "body": [
25 | "FOREIGN KEY (${1:attribute}) REFERENCES ${2:tableName}(${3:attribute}) ON DELETE RESTRICT"
26 | ],
27 | "description": "Foreign Key"
28 | },
29 | "CREATE TABLE": {
30 | "prefix": "ctt",
31 | "body": ["CREATE TABLE ${1:tableName} (", "\t${2:attribute(s)}", ");"],
32 | "description": "Create regular table"
33 | },
34 | "CREATE TYPE": {
35 | "prefix": "cte",
36 | "body": [
37 | "CREATE TYPE ${1:typeName} AS ENUM (",
38 | "\t${2:attribute(s)}",
39 | ");"
40 | ],
41 | "description": "Create type enum"
42 | },
43 | "INSERT": {
44 | "prefix": "ins",
45 | "body": [
46 | "INSERT INTO ${1:tableName} (",
47 | "\t${2:attribute(s)}",
48 | ") VALUES ( ${3:values} )"
49 | ],
50 | "description": "Insert value(s)"
51 | },
52 | "DROP TABLE": {
53 | "prefix": "dpt",
54 | "body": ["DROP TABLE ${1:tableName};"],
55 | "description": "Drop table"
56 | },
57 | "DROP TYPE": {
58 | "prefix": "dpe",
59 | "body": ["DROP TYPE ${1:typeNAme};"],
60 | "description": "Drop type enum"
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/.config/rofi/config.rasi:
--------------------------------------------------------------------------------
1 | @import "~/.config/rofi/master_config.rasi"
2 |
3 | /* ---- Configuration ---- */
4 | configuration {
5 | font: "Maple Mono Regular 12";
6 | }
7 |
8 | element-text {
9 | font: "Maple Mono Regular 14";
10 | }
11 |
--------------------------------------------------------------------------------
/.config/rofi/config_calculator.rasi:
--------------------------------------------------------------------------------
1 | @import "~/.config/rofi/config.rasi"
2 |
3 | entry {
4 | width: 27%;
5 | placeholder: "🧮 Calculate";
6 | }
7 |
8 | window {
9 | width: 30%;
10 | }
11 |
--------------------------------------------------------------------------------
/.config/rofi/config_clipboard.rasi:
--------------------------------------------------------------------------------
1 | @import "~/.config/rofi/config.rasi"
2 |
3 | entry {
4 | width: 37%;
5 | placeholder: "📝 Search Clipboard";
6 | }
7 |
8 | listview {
9 | columns: 1;
10 | lines: 12;
11 | }
12 |
--------------------------------------------------------------------------------
/.config/rofi/config_emoji.rasi:
--------------------------------------------------------------------------------
1 | @import "~/.config/rofi/config.rasi"
2 |
3 | entry {
4 | width: 37%;
5 | placeholder: "💫 Search Emoji's";
6 | }
7 |
8 | listview {
9 | columns: 1;
10 | lines: 8;
11 | }
12 |
--------------------------------------------------------------------------------
/.config/rofi/master_config.rasi:
--------------------------------------------------------------------------------
1 | configuration {
2 | modi: "drun,run,filebrowser";
3 | show-icons: true;
4 | terminal: "kitty";
5 | drun-display-format: "{icon} {name}";
6 | location: 0;
7 | disable-history: false;
8 | hide-scrollbar: true;
9 | display-drun: " Apps ";
10 | display-run: " Run ";
11 | display-window: " Window";
12 | display-filebrowser: " Filebrowser";
13 | sidebar-mode: true;
14 | }
15 |
16 | @theme "~/.config/rofi/oldworld.rasi"
17 |
--------------------------------------------------------------------------------
/.config/rofi/oldworld.rasi:
--------------------------------------------------------------------------------
1 | * {
2 | bg-col: #161617;
3 | bg-col-light: #161617;
4 | border-col: #3b3b3e;
5 | selected-col: #2a2a2c;
6 | blue: #92a2d5;
7 | fg-col: #c9c7cd;
8 | fg-col2: #c9c7cd;
9 | grey: #8b8693;
10 | width: 800;
11 | }
12 |
13 | element-text, element-icon , mode-switcher {
14 | background-color: inherit;
15 | text-color: inherit;
16 | }
17 |
18 | window {
19 | height: 360px;
20 | border: 2px;
21 | border-radius: 14px;
22 | border-color: @border-col;
23 | background-color: @bg-col;
24 | }
25 |
26 | mainbox {
27 | background-color: @bg-col;
28 | }
29 |
30 | inputbar {
31 | children: [prompt,entry];
32 | background-color: @bg-col;
33 | border-radius: 5px;
34 | padding: 2px;
35 | }
36 |
37 | prompt {
38 | background-color: @blue;
39 | padding: 6px;
40 | text-color: @bg-col;
41 | border-radius: 3px;
42 | margin: 20px 0px 0px 20px;
43 | }
44 |
45 | textbox-prompt-colon {
46 | expand: false;
47 | str: ":";
48 | }
49 |
50 | entry {
51 | padding: 6px;
52 | margin: 20px 0px 0px 10px;
53 | text-color: @fg-col;
54 | background-color: @bg-col;
55 | }
56 |
57 | listview {
58 | border: 0px 0px 0px;
59 | padding: 6px 0px 0px;
60 | margin: 10px 0px 0px 20px;
61 | columns: 2;
62 | lines: 5;
63 | background-color: @bg-col;
64 | }
65 |
66 | element {
67 | padding: 5px;
68 | background-color: @bg-col;
69 | text-color: @fg-col ;
70 | }
71 |
72 | element-icon {
73 | size: 25px;
74 | }
75 |
76 | element selected {
77 | background-color: @selected-col;
78 | text-color: @fg-col2 ;
79 | }
80 |
81 | mode-switcher {
82 | spacing: 0;
83 | }
84 |
85 | button {
86 | padding: 10px;
87 | background-color: @bg-col-light;
88 | text-color: @grey;
89 | vertical-align: 0.5;
90 | horizontal-align: 0.5;
91 | }
92 |
93 | button selected {
94 | background-color: @bg-col;
95 | text-color: @blue;
96 | }
97 |
98 | message {
99 | background-color: @bg-col-light;
100 | margin: 2px;
101 | padding: 2px;
102 | border-radius: 5px;
103 | }
104 |
105 | textbox {
106 | padding: 6px;
107 | margin: 20px 0px 0px 20px;
108 | text-color: @blue;
109 | background-color: @bg-col-light;
110 | }
111 |
--------------------------------------------------------------------------------
/.config/starship.toml:
--------------------------------------------------------------------------------
1 | format = """$directory$git_branch$ruby$php$kotlin$java$golang$c$nodejs$rust$lua$python$character"""
2 |
3 | palette = "oldworld"
4 |
5 | [character]
6 | success_symbol = '[](bold blue) '
7 | error_symbol = '[](bold red) '
8 | vimcmd_symbol = '[](bold green) '
9 | vimcmd_replace_one_symbol = '[](bold purple) '
10 | vimcmd_replace_symbol = '[](bold purple) '
11 | vimcmd_visual_symbol = '[](bold yellow) '
12 |
13 | [hostname]
14 | disabled = true
15 |
16 | [cmd_duration]
17 | min_time = 1
18 | format = "(fg:bg bg:bg)[](fg:purple bg:bg)[ $duration](fg:bg bg:purple)[](fg:purple bg:none) "
19 | disabled = true
20 | style = "fg:purple bg:bg"
21 |
22 | [directory]
23 | format = "(fg:bg bg:bg)[](fg:magenta bg:bg)[ $path](fg:bg bg:magenta italic)[](fg:magenta bg:none) "
24 | style = "fg:#d9d7d6 bg:bg"
25 | truncation_length = 2
26 | truncate_to_repo = true
27 |
28 | [package]
29 | disabled = true
30 |
31 | [git_branch]
32 | format = "(fg:bg bg:bg)[](fg:yellow bg:bg)[ $branch](fg:bg bg:yellow)[](fg:yellow bg:none) "
33 | style = "fg:yellow bg:bg"
34 |
35 | [python]
36 | format = "(fg:bg bg:bg)[](fg:green bg:bg)[${symbol}${pyenv_prefix}(${version})( - ${virtualenv})](fg:bg bg:green)[](fg:green bg:none) "
37 | style = "fg:green bg:bg"
38 | symbol = ' '
39 |
40 | [lua]
41 | format = "(fg:bg bg:bg)[](fg:blue bg:bg)[$symbol$version](fg:bg bg:blue)[](fg:blue bg:none) "
42 | style = "fg:blue bg:bg"
43 | symbol = ' '
44 |
45 | [rust]
46 | format = "(fg:bg bg:bg)[](fg:red bg:bg)[$symbol$version](fg:bg bg:red)[](fg:red bg:none) "
47 | style = "fg:red bg:bg"
48 | symbol = ' '
49 |
50 | [nodejs]
51 | format = "(fg:bg bg:bg)[](fg:green bg:bg)[$symbol$version](fg:bg bg:green)[](fg:green bg:none) "
52 | style = "fg:green bg:bg"
53 | symbol = ' '
54 |
55 | [c]
56 | format = "(fg:bg bg:bg)[](fg:cyan bg:bg)[$symbol$version-$name](fg:bg bg:cyan)[](fg:cyan bg:none) "
57 | style = "fg:cyan bg:bg"
58 | symbol = ' '
59 |
60 | [golang]
61 | format = "(fg:bg bg:bg)[](fg:blue bg:bg)[$symbol$version-$name](fg:bg bg:blue)[](fg:blue bg:none) "
62 | style = "fg:blue bg:bg"
63 | symbol = ' '
64 |
65 | [java]
66 | format = "(fg:bg bg:bg)[](fg:orange bg:bg)[$symbol$version-$name](fg:bg bg:orange)[](fg:orange bg:none) "
67 | style = "fg:orange bg:bg"
68 | symbol = ' '
69 |
70 | [kotlin]
71 | format = "(fg:bg bg:bg)[](fg:#orange bg:bg)[$symbol$version-$name](fg:bg bg:#orange)[](fg:#orange bg:none) "
72 | style = "fg:#orange bg:bg"
73 | symbol = ' '
74 |
75 | [php]
76 | format = "(fg:bg bg:bg)[](fg:blue bg:bg)[$symbol$version](fg:bg bg:blue)[](fg:blue bg:none) "
77 | style = "fg:blue bg:bg"
78 | symbol = ' '
79 |
80 | [ruby]
81 | format = "(fg:bg bg:bg)[](fg:yellow bg:bg)[$symbol$version-$name](fg:bg bg:yellow)[](fg:yellow bg:none) "
82 | style = "fg:yellow bg:bg"
83 | symbol = ' '
84 |
85 | [palettes.oldworld]
86 | magenta = "#e29eca"
87 | purple = "#aca1cf"
88 | red = "#ea83a5"
89 | orange = "#f5a191"
90 | yellow = "#e6b99d"
91 | green = "#90b99f"
92 | cyan = "#85b5ba"
93 | blue = "#92a2d5"
94 | fg = "#c9c7cd"
95 | bg = "#161617"
96 |
--------------------------------------------------------------------------------
/.config/waybar/config:
--------------------------------------------------------------------------------
1 | {
2 | "layer": "top",
3 | "margin-top": 10,
4 | "margin-bottom": 0,
5 | "margin-left":10,
6 | "margin-right":10,
7 |
8 | "modules-left": ["cpu","memory","temperature", "bluetooth"],
9 | "modules-center": ["hyprland/workspaces"],
10 | "modules-right": ["network","pulseaudio", "battery","clock"],
11 |
12 | "pulseaudio": {
13 | "tooltip": false,
14 | "scroll-step": 5,
15 | "format": "{icon} {volume}%",
16 | "format-muted": "{icon} {volume}%",
17 | "on-click":"pactl set-sink-mute @DEFAULT_SINK@ toggle",
18 | "format-icons": {
19 | "default": [
20 | "",
21 | "",
22 | ""
23 | ]
24 | }
25 | },
26 | "hyprland/workspaces": {
27 | "disable-scroll": true,
28 | "on-click": "activate",
29 | "all-outputs": true,
30 | "active-only": false,
31 | "persistent-workspaces": {
32 | "1": [],
33 | "2": [],
34 | "3": [],
35 | "4": [],
36 | "5": [],
37 | "6": [],
38 | },
39 | "format": "{icon}",
40 | "format-icons": {
41 | "active": "",
42 | "empty": "",
43 | "persistent": "",
44 | },
45 | },
46 |
47 | "network": {
48 | "format-wifi": "{icon} {bandwidthDownBits}",
49 | "format-ethernet": "",
50 | "interval": 30,
51 |
52 | "format-icons": [
53 | "",
54 | "",
55 | "",
56 | "",
57 | ""
58 | ]
59 | },
60 |
61 | "battery": {
62 | "states": {
63 | "good": 95,
64 | "warning": 30,
65 | "critical": 10
66 | },
67 | "format": "{icon} {capacity}%",
68 | "format-charging": " {capacity}%",
69 | "format-plugged": " {capacity}%",
70 | "format-alt": "{time} {icon}",
71 | "format-icons": [
72 | "",
73 | "",
74 | "",
75 | "",
76 | ""
77 | ]
78 | },
79 |
80 | "clock": {
81 | "interval": 60,
82 | "format": "{:%H:%M | %a, %b %d}",
83 | },
84 |
85 | "cpu": {
86 | "interval": 15,
87 | "format": " {}%",
88 | "max-length": 10
89 | },
90 | "temperature": {
91 | "interval": 20,
92 | "format": " {}°C",
93 | "max-length": 10
94 | },
95 |
96 | "memory": {
97 | "interval": 10,
98 | "format": " {used}GiB",
99 | "max-length": 13
100 | },
101 | "bluetooth": {
102 | "format": " Connecting...",
103 | "format-disabled": " Off",
104 | "format-connected": " {device_alias}",
105 | "on-click": "rfkill toggle bluetooth",
106 | },
107 | }
108 |
--------------------------------------------------------------------------------
/.config/waybar/oldworld.css:
--------------------------------------------------------------------------------
1 | @define-color magenta #e29eca;
2 | @define-color purple #aca1cf;
3 | @define-color red #ea83a5;
4 | @define-color orange #f5a191;
5 | @define-color yellow #e6b99d;
6 | @define-color green #90b99f;
7 | @define-color cyan #85b5ba;
8 | @define-color blue #92a2d5;
9 | @define-color fg #c9c7cd;
10 | @define-color bg #161617;
11 | @define-color bg-dark #110e1c;
12 | @define-color bg-light #222224;
13 |
--------------------------------------------------------------------------------
/.config/waybar/style.css:
--------------------------------------------------------------------------------
1 | @import "oldworld.css";
2 |
3 | * {
4 | border: none;
5 | font-family: "Maple Mono";
6 | font-feature-settings: "zero";
7 | font-size: 15px;
8 | min-height: 10px;
9 | }
10 |
11 | window#waybar {
12 | background-color: @bg;
13 | margin-top: 6px;
14 | border-radius: 10px;
15 | }
16 |
17 | window#waybar.hidden {
18 | opacity: 0.2;
19 | }
20 |
21 | #window {
22 | transition: none;
23 | color: transparent;
24 | border-radius: 10px;
25 | background: transparent;
26 | }
27 |
28 | #workspaces {
29 | margin: 6px 6px 6px 6px;
30 | border-radius: 18px;
31 | background: @bg-light;
32 | transition: none;
33 | padding-left: 12px;
34 | padding-right: 6px;
35 | }
36 |
37 | #workspaces button {
38 | transition: none;
39 | color: @cyan;
40 | background: transparent;
41 | margin-right: 10px;
42 | }
43 |
44 | #workspaces button.persistent {
45 | transition: none;
46 | color: @purple;
47 | background: transparent;
48 | font-size: 4px;
49 | }
50 |
51 | #workspaces button.empty {
52 | color: @magenta;
53 | font-size: 2px;
54 | transition: none;
55 | background: transparent;
56 | }
57 |
58 | #workspaces button.active {
59 | transition: none;
60 | color: @yellow;
61 | background: transparent;
62 | font-size: 4px;
63 | }
64 |
65 | #network {
66 | margin-top: 6px;
67 | margin-left: 8px;
68 | padding-left: 10px;
69 | padding-right: 10px;
70 | margin-bottom: 6px;
71 | font-size: 14px;
72 | font-weight: bold;
73 | transition: none;
74 | color: @yellow;
75 | }
76 |
77 | #pulseaudio {
78 | margin-top: 6px;
79 | margin-left: 8px;
80 | padding-left: 10px;
81 | padding-right: 10px;
82 | margin-bottom: 6px;
83 | font-size: 14px;
84 | font-weight: bold;
85 | transition: none;
86 | color: @blue;
87 | }
88 |
89 | #battery {
90 | margin-top: 6px;
91 | margin-left: 8px;
92 | padding-left: 10px;
93 | padding-right: 10px;
94 | margin-bottom: 6px;
95 | font-size: 14px;
96 | font-weight: bold;
97 | color: @green;
98 | }
99 |
100 | #battery.charging,
101 | #battery.plugged {
102 | color: @green;
103 | }
104 |
105 | #battery.critical:not(.charging) {
106 | color: @red;
107 | animation-name: blink;
108 | animation-duration: 0.5s;
109 | animation-timing-function: linear;
110 | animation-iteration-count: infinite;
111 | animation-direction: alternate;
112 | }
113 |
114 | @keyframes blink {
115 | to {
116 | color: @red;
117 | }
118 | }
119 |
120 | #clock {
121 | margin-top: 6px;
122 | margin-left: 8px;
123 | padding-left: 12px;
124 | padding-right: 17px;
125 | margin-right: 10px;
126 | margin-bottom: 6px;
127 | font-size: 14px;
128 | font-weight: bold;
129 | color: @fg;
130 | }
131 |
132 | #memory {
133 | margin-top: 6px;
134 | margin-left: 8px;
135 | padding-left: 12px;
136 | padding-right: 12px;
137 | margin-right: 10px;
138 | margin-bottom: 6px;
139 | font-size: 14px;
140 | font-weight: bold;
141 | color: @cyan;
142 | }
143 |
144 | #temperature {
145 | margin-top: 6px;
146 | margin-left: 8px;
147 | padding-left: 12px;
148 | padding-right: 12px;
149 | margin-right: 10px;
150 | margin-bottom: 6px;
151 | font-size: 14px;
152 | font-weight: bold;
153 | color: @orange;
154 | }
155 |
156 | #cpu {
157 | margin-top: 6px;
158 | margin-left: 17px;
159 | padding-left: 10px;
160 | margin-bottom: 6px;
161 | padding-right: 10px;
162 | font-size: 14px;
163 | font-weight: bold;
164 | color: @red;
165 | }
166 |
167 | #bluetooth {
168 | margin-top: 6px;
169 | margin-left: 8px;
170 | padding-left: 10px;
171 | margin-bottom: 6px;
172 | padding-right: 10px;
173 | font-size: 14px;
174 | font-weight: bold;
175 | color: @purple;
176 | }
177 |
--------------------------------------------------------------------------------
/.config/zathura/oldworld:
--------------------------------------------------------------------------------
1 | set default-fg "#c9c7cd"
2 | set default-bg "#161617"
3 |
4 | set completion-bg "#1b1b1c"
5 | set completion-fg "#c9c7cd"
6 | set completion-highlight-bg "#313134"
7 | set completion-highlight-fg "#c9c7cd"
8 | set completion-group-bg "#1b1b1c"
9 | set completion-group-fg "#92a2d5"
10 |
11 | set statusbar-fg "#c9c7cd"
12 | set statusbar-bg "#1b1b1c"
13 |
14 | set notification-bg "#1b1b1c"
15 | set notification-fg "#c9c7cd"
16 | set notification-error-bg "#1b1b1c"
17 | set notification-error-fg "#ea83a5"
18 | set notification-warning-bg "#1b1b1c"
19 | set notification-warning-fg "#f5a191"
20 |
21 | set inputbar-fg "#c9c7cd"
22 | set inputbar-bg "#1b1b1c"
23 |
24 | set recolor-lightcolor "#161617"
25 | set recolor-darkcolor "#c9c7cd"
26 |
27 | set index-fg "#c9c7cd"
28 | set index-bg "#161617"
29 | set index-active-fg "#c9c7cd"
30 | set index-active-bg "#1b1b1c"
31 |
32 | set render-loading-bg "#161617"
33 | set render-loading-fg "#c9c7cd"
34 |
35 | set highlight-color "#313134"
36 | set highlight-fg "#e29eca"
37 | set highlight-active-color "#e29eca"
38 |
--------------------------------------------------------------------------------
/.config/zathura/zathurarc:
--------------------------------------------------------------------------------
1 | include oldworld
2 | set selection-clipboard clipboard
3 |
4 | set synctex true
5 | set synctex-editor-command "code -g %{input}:%{line}"
6 |
--------------------------------------------------------------------------------
/.config/zsh/.zshrc:
--------------------------------------------------------------------------------
1 | [ -f "$HOME/.local/share/zap/zap.zsh" ] && source "$HOME/.local/share/zap/zap.zsh"
2 | DISABLE_AUTO_TITLE="true"
3 |
4 | # source
5 | plug "$HOME/.config/zsh/configs/aliases.zsh"
6 | plug "$HOME/.config/zsh/configs/exports.zsh"
7 | plug "$HOME/.config/zsh/configs/colors_oldworld.zsh"
8 |
9 |
10 | HISTFILE=~/.histfile
11 | HISTSIZE=1000000
12 | SAVEHIST=1000000
13 | setopt HIST_IGNORE_ALL_DUPS
14 | setopt HIST_FIND_NO_DUPS
15 | precmd () {print -Pn "\e]0;%~\a"}
16 |
17 | plug "zsh-users/zsh-autosuggestions"
18 | plug "zsh-users/zsh-syntax-highlighting"
19 | plug "softmoth/zsh-vim-mode"
20 |
21 | autoload -U up-line-or-beginning-search
22 | autoload -U down-line-or-beginning-search
23 | zle -N up-line-or-beginning-search
24 | zle -N down-line-or-beginning-search
25 | bindkey "^[[A" up-line-or-beginning-search
26 | bindkey "^[[B" down-line-or-beginning-search
27 |
--------------------------------------------------------------------------------
/.config/zsh/configs/aliases.zsh:
--------------------------------------------------------------------------------
1 | alias g='lazygit'
2 | alias df='df -h' # human-readable sizes
3 | alias free='free -h' # show sizes in MB
4 | alias cs="clear"
5 | alias mkdir="mkdir -pv"
6 | alias v="nvim"
7 | alias csn="cs && fastfetch"
8 | alias ..="cd .."
9 | alias ...="cd ../.."
10 | alias lh="eza -l --color=always --icons --group-directories-first --octal-permissions --no-permissions"
11 | alias lah="eza -al --color=always --icons --group-directories-first --octal-permissions --no-permissions"
12 | alias ls="eza --color=always --icons --group-directories-first"
13 | alias las="eza -a --color=always --icons --group-directories-first"
14 | alias lt="eza -T --color=always --icons --group-directories-first"
15 | alias lat="eza -aT --color=always --icons --group-directories-first"
16 | alias du="dust -b"
17 |
18 | alias glog='git log --graph --decorate --oneline'
19 |
20 | # Django
21 | alias djrun='python manage.py runserver'
22 | alias djmkm='python manage.py makemigrations'
23 | alias djmig='python manage.py migrate'
24 |
25 | # Start services
26 | alias spsql='sudo systemctl start postgresql.service'
27 | alias sdocker='sudo systemctl start docker'
28 |
--------------------------------------------------------------------------------
/.config/zsh/configs/colors_catppuccin.zsh:
--------------------------------------------------------------------------------
1 | ZSH_HIGHLIGHT_HIGHLIGHTERS=(main cursor)
2 | typeset -gA ZSH_HIGHLIGHT_STYLES
3 |
4 | ZSH_HIGHLIGHT_STYLES[comment]='fg=#585b70'
5 | ZSH_HIGHLIGHT_STYLES[alias]='fg=#a6e3a1,bold'
6 | ZSH_HIGHLIGHT_STYLES[suffix-alias]='fg=#a6e3a1'
7 | ZSH_HIGHLIGHT_STYLES[global-alias]='fg=#a6e3a1'
8 | ZSH_HIGHLIGHT_STYLES[function]='fg=#a6e3a1'
9 | ZSH_HIGHLIGHT_STYLES[command]='fg=#a6e3a1,bold'
10 | ZSH_HIGHLIGHT_STYLES[precommand]='fg=#a6e3a1,italic'
11 | ZSH_HIGHLIGHT_STYLES[autodirectory]='fg=#cba6f7,italic'
12 | ZSH_HIGHLIGHT_STYLES[single-hyphen-option]='fg=#cba6f7'
13 | ZSH_HIGHLIGHT_STYLES[double-hyphen-option]='fg=#cba6f7'
14 | ZSH_HIGHLIGHT_STYLES[back-quoted-argument]='fg=#cba6f7'
15 | ZSH_HIGHLIGHT_STYLES[builtin]='fg=#a6e3a1'
16 | ZSH_HIGHLIGHT_STYLES[reserved-word]='fg=#a6e3a1'
17 | ZSH_HIGHLIGHT_STYLES[hashed-command]='fg=#a6e3a1'
18 | ZSH_HIGHLIGHT_STYLES[commandseparator]='fg=#89b4fa'
19 | ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]='fg=#cdd6f4'
20 | ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-unquoted]='fg=#cdd6f4'
21 | ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]='fg=#cdd6f4'
22 | ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]='fg=#89b4fa'
23 | ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]='fg=#89b4fa'
24 | ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]='fg=#89b4fa'
25 | ZSH_HIGHLIGHT_STYLES[command-substitution-quoted]='fg=#f9e2af'
26 | ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-quoted]='fg=#f9e2af'
27 | ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=#f9e2af'
28 | ZSH_HIGHLIGHT_STYLES[single-quoted-argument-unclosed]='fg=#f38ba8'
29 | ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=#f9e2af'
30 | ZSH_HIGHLIGHT_STYLES[double-quoted-argument-unclosed]='fg=#f38ba8'
31 | ZSH_HIGHLIGHT_STYLES[rc-quote]='fg=#f9e2af'
32 | ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]='fg=#cdd6f4'
33 | ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument-unclosed]='fg=#f38ba8'
34 | ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]='fg=#cdd6f4'
35 | ZSH_HIGHLIGHT_STYLES[assign]='fg=#cdd6f4'
36 | ZSH_HIGHLIGHT_STYLES[named-fd]='fg=#cdd6f4'
37 | ZSH_HIGHLIGHT_STYLES[numeric-fd]='fg=#cdd6f4'
38 | ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=#f38ba8'
39 | ZSH_HIGHLIGHT_STYLES[path]='fg=#cdd6f4,underline'
40 | ZSH_HIGHLIGHT_STYLES[path_pathseparator]='fg=#89b4fa,underline'
41 | ZSH_HIGHLIGHT_STYLES[path_prefix]='fg=#cdd6f4,underline'
42 | ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]='fg=#89b4fa,underline'
43 | ZSH_HIGHLIGHT_STYLES[globbing]='fg=#cdd6f4'
44 | ZSH_HIGHLIGHT_STYLES[history-expansion]='fg=#cba6f7'
45 | ZSH_HIGHLIGHT_STYLES[back-quoted-argument-unclosed]='fg=#f38ba8'
46 | ZSH_HIGHLIGHT_STYLES[redirection]='fg=#cdd6f4'
47 | ZSH_HIGHLIGHT_STYLES[arg0]='fg=#cdd6f4'
48 | ZSH_HIGHLIGHT_STYLES[default]='fg=#cdd6f4'
49 | ZSH_HIGHLIGHT_STYLES[cursor]='fg=#cdd6f4'
50 |
--------------------------------------------------------------------------------
/.config/zsh/configs/colors_oldworld.zsh:
--------------------------------------------------------------------------------
1 | ZSH_HIGHLIGHT_HIGHLIGHTERS=(main cursor)
2 | typeset -gA ZSH_HIGHLIGHT_STYLES
3 |
4 | ZSH_HIGHLIGHT_STYLES[comment]='fg=#57575f'
5 | ZSH_HIGHLIGHT_STYLES[alias]='fg=#90b99f,bold'
6 | ZSH_HIGHLIGHT_STYLES[suffix-alias]='fg=#90b99f'
7 | ZSH_HIGHLIGHT_STYLES[global-alias]='fg=#90b99f'
8 | ZSH_HIGHLIGHT_STYLES[function]='fg=#90b99f'
9 | ZSH_HIGHLIGHT_STYLES[command]='fg=#90b99f,bold'
10 | ZSH_HIGHLIGHT_STYLES[precommand]='fg=#90b99f,italic'
11 | ZSH_HIGHLIGHT_STYLES[autodirectory]='fg=#aca1cf,italic'
12 | ZSH_HIGHLIGHT_STYLES[single-hyphen-option]='fg=#aca1cf'
13 | ZSH_HIGHLIGHT_STYLES[double-hyphen-option]='fg=#aca1cf'
14 | ZSH_HIGHLIGHT_STYLES[back-quoted-argument]='fg=#aca1cf'
15 | ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=#57575f'
16 | ZSH_HIGHLIGHT_STYLES[builtin]='fg=#90b99f'
17 | ZSH_HIGHLIGHT_STYLES[reserved-word]='fg=#90b99f'
18 | ZSH_HIGHLIGHT_STYLES[hashed-command]='fg=#90b99f'
19 | ZSH_HIGHLIGHT_STYLES[commandseparator]='fg=#92a2d5'
20 | ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]='fg=#c9c7cd'
21 | ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-unquoted]='fg=#c9c7cd'
22 | ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]='fg=#c9c7cd'
23 | ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]='fg=#92a2d5'
24 | ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]='fg=#92a2d5'
25 | ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]='fg=#92a2d5'
26 | ZSH_HIGHLIGHT_STYLES[command-substitution-quoted]='fg=#e6b99d'
27 | ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter-quoted]='fg=#e6b99d'
28 | ZSH_HIGHLIGHT_STYLES[single-quoted-argument]='fg=#e6b99d'
29 | ZSH_HIGHLIGHT_STYLES[single-quoted-argument-unclosed]='fg=#f38ba8'
30 | ZSH_HIGHLIGHT_STYLES[double-quoted-argument]='fg=#e6b99d'
31 | ZSH_HIGHLIGHT_STYLES[double-quoted-argument-unclosed]='fg=#f38ba8'
32 | ZSH_HIGHLIGHT_STYLES[rc-quote]='fg=#e6b99d'
33 | ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]='fg=#c9c7cd'
34 | ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument-unclosed]='fg=#f38ba8'
35 | ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]='fg=#c9c7cd'
36 | ZSH_HIGHLIGHT_STYLES[assign]='fg=#c9c7cd'
37 | ZSH_HIGHLIGHT_STYLES[named-fd]='fg=#c9c7cd'
38 | ZSH_HIGHLIGHT_STYLES[numeric-fd]='fg=#c9c7cd'
39 | ZSH_HIGHLIGHT_STYLES[unknown-token]='fg=#f38ba8'
40 | ZSH_HIGHLIGHT_STYLES[path]='fg=#c9c7cd,underline'
41 | ZSH_HIGHLIGHT_STYLES[path_pathseparator]='fg=#92a2d5,underline'
42 | ZSH_HIGHLIGHT_STYLES[path_prefix]='fg=#c9c7cd,underline'
43 | ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]='fg=#92a2d5,underline'
44 | ZSH_HIGHLIGHT_STYLES[globbing]='fg=#c9c7cd'
45 | ZSH_HIGHLIGHT_STYLES[history-expansion]='fg=#aca1cf'
46 | ZSH_HIGHLIGHT_STYLES[back-quoted-argument-unclosed]='fg=#f38ba8'
47 | ZSH_HIGHLIGHT_STYLES[redirection]='fg=#c9c7cd'
48 | ZSH_HIGHLIGHT_STYLES[arg0]='fg=#c9c7cd'
49 | ZSH_HIGHLIGHT_STYLES[default]='fg=#c9c7cd'
50 | ZSH_HIGHLIGHT_STYLES[cursor]='fg=#c9c7cd'
51 |
--------------------------------------------------------------------------------
/.config/zsh/configs/exports.zsh:
--------------------------------------------------------------------------------
1 | export EDITOR="nvim"
2 | export SYSTEMD_EDITOR="nvim"
3 | export TERMINAL="kitty"
4 | export MANPAGER='nvim +Man!'
5 | export MANWIDTH=999
6 | export BAT_THEME="ansi"
7 | export KITTY_SHELL_INTEGRATION="enabled"
8 | export FZF_DEFAULT_OPTS=" \
9 | --color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 \
10 | --color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc \
11 | --color=marker:#f5e0dc,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8"
12 | #export PATH="$PATH:./node_modules/.bin"
13 | eval "$(zoxide init zsh)"
14 | eval "$(starship init zsh)"
15 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Dotfiles
2 |
3 | 
4 | 
5 |
--------------------------------------------------------------------------------
/wallpapers/pastel.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/dgox16/dotfiles/396a5195130a4fa512a7130ceb3cdc55fcf5eb1b/wallpapers/pastel.jpg
--------------------------------------------------------------------------------