diff options
| author | Xander Swan <email> | 2025-12-03 10:00:41 -0500 |
|---|---|---|
| committer | Xander Swan <email> | 2025-12-03 10:00:41 -0500 |
| commit | 14ab5e2cb2e25031ef56218e74e3d3ed8c92a4a8 (patch) | |
| tree | 63e7bcfe0e0d3cfcc0141e4b6d8ca89f011aa0b6 /.config | |
| parent | 7cca5541771ce99ff88279583906693007feb0e8 (diff) | |
meh
Diffstat (limited to '.config')
| -rw-r--r-- | .config/i3/config | 143 | ||||
| -rw-r--r-- | .config/nvim/ftdetect/ox.vim | 1 | ||||
| -rw-r--r-- | .config/nvim/live-server/package-lock.json | 6 | ||||
| -rw-r--r-- | .config/nvim/lua/map.lua | 7 | ||||
| -rw-r--r-- | .config/nvim/lua/plugin/liveserver.lua | 13 | ||||
| -rw-r--r-- | .config/nvim/lua/plugin/packer.lua | 8 | ||||
| -rw-r--r-- | .config/nvim/lua/plugin/setup.lua | 2 | ||||
| -rw-r--r-- | .config/nvim/syntax/ox.vim | 51 |
8 files changed, 102 insertions, 129 deletions
diff --git a/.config/i3/config b/.config/i3/config index ed8a568..e6b6c07 100644 --- a/.config/i3/config +++ b/.config/i3/config @@ -1,35 +1,7 @@ -# i3 config file (v4) -# -# Please see https://i3wm.org/docs/userguide.html for a complete reference! -# -# This config file uses keycodes (bindsym) and was written for the QWERTY -# layout. -# -# To get a config file with the same key positions, but for your current -# layout, use the i3-config-wizard -# - -# Font for window titles. Will also be used by the bar unless a different font -# is used in the bar {} block below. font pango:Mononoki Nerd Font Mono 10 -# This font is widely installed, provides lots of unicode glyphs, right-to-left -# text rendering and scalability on retina/hidpi displays (thanks to pango). -#font pango:DejaVu Sans Mono 8 - -# Start XDG autostart .desktop files using dex. See also -# https://wiki.archlinux.org/index.php/XDG_Autostart exec --no-startup-id dex --autostart --environment i3 - -# The combination of xss-lock, nm-applet and pactl is a popular choice, so -# they are included here as an example. Modify as you see fit. - -# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the -# screen before suspend. Use loginctl lock-session to lock your screen. exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork - -# NetworkManager is the most popular way to manage wireless networks on Linux, -# and nm-applet is a desktop environment-independent system tray GUI for it. exec --no-startup-id nm-applet exec xrandr --output DVI-D-0 --auto --right-of HDMI-A-0 @@ -38,7 +10,6 @@ exec nitrogen --restore exec alacritty --hold -e sudo pacman -Syu exec unclutter --timeout 2 -# Use pactl to adjust volume in PulseAudio. set $refresh_i3status killall -SIGUSR1 i3status bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +2% && $refresh_i3status bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -2% && $refresh_i3status @@ -48,96 +19,57 @@ bindsym XF86AudioPause exec --no-startup-id playerctl play-pause && $refresh_i3s bindsym XF86AudioNext exec --no-startup-id playerctl next && $refresh_i3status bindsym XF86AudioPrev exec --no-startup-id playerctl previous && $refresh_i3status -# use these keys for focus, movement, and resize directions when reaching for -# the arrows is not convenient set $up k set $down j set $left h set $right l set $mod Mod4 -# use Mouse+$mod to drag floating windows to their wanted position floating_modifier $mod +smart_borders on -# move tiling windows via drag & drop by left-clicking into the title bar, -# or left-clicking anywhere into the window while holding the floating modifier. tiling_drag modifier titlebar -# start a terminal bindsym $mod+Return exec alacritty bindsym Print exec flameshot gui +bindsym $mod+u exec setxkbmap us +bindsym $mod+n exec setxkbmap nl -# kill focused window bindsym $mod+Shift+q kill -# start dmenu (a program launcher) bindsym $mod+d exec --no-startup-id rofi -show drun -show-icons -# A more modern dmenu replacement is rofi: -# bindsym $mod+d exec "rofi -modi drun,run -show drun" -# There also is i3-dmenu-desktop which only displays applications shipping a -# .desktop file. It is a wrapper around dmenu, so you need that installed. -# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop -# change focus bindsym $mod+$left focus left bindsym $mod+$down focus down bindsym $mod+$up focus up bindsym $mod+$right focus right -# alternatively, you can use the cursor keys: -# bindsym $mod+Left focus left -# bindsym $mod+Down focus down -# bindsym $mod+Up focus up -# bindsym $mod+Right focus right - -# move focused window bindsym $mod+Shift+$left move left bindsym $mod+Shift+$down move down bindsym $mod+Shift+$up move up bindsym $mod+Shift+$right move right -# alternatively, you can use the cursor keys: -# bindsym $mod+Shift+Left move left -# bindsym $mod+Shift+Down move down -# bindsym $mod+Shift+Up move up -# bindsym $mod+Shift+Right move right - -# split in horizontal orientation bindsym $mod+g split h -# split in vertical orientation bindsym $mod+v split v -# enter fullscreen mode for the focused container bindsym $mod+f fullscreen toggle -# change container layout (stacked, tabbed, toggle split) bindsym $mod+s layout stacking bindsym $mod+w layout tabbed bindsym $mod+e layout toggle split -# toggle tiling / floating bindsym $mod+Shift+space floating toggle -# change focus between tiling / floating windows bindsym $mod+space focus mode_toggle -# focus the parent container bindsym $mod+a focus parent -# focus the child container -#bindsym $mod+d focus child - -# move the currently focused window to the scratchpad bindsym $mod+Shift+minus move scratchpad -# Show the next scratchpad window or hide the focused scratchpad window. -# If there are multiple scratchpad windows, this command cycles through them. bindsym $mod+minus scratchpad show -# Define names for default workspaces for which we configure key bindings later on. -# We use variables to avoid repeating the names in multiple places. set $ws1 "1" set $ws2 "2" set $ws3 "3" @@ -149,7 +81,12 @@ set $ws8 "8" set $ws9 "9" set $ws10 "10" -# switch to workspace +workspace $ws1 output HDMI-A-0 +workspace $ws2 output HDMI-A-0 +workspace $ws3 output HDMI-A-0 +workspace $ws9 output DVI-D-0 +workspace $ws10 output DVI-D-0 + bindsym $mod+1 workspace number $ws1 bindsym $mod+2 workspace number $ws2 bindsym $mod+3 workspace number $ws3 @@ -161,10 +98,12 @@ bindsym $mod+8 workspace number $ws8 bindsym $mod+9 workspace number $ws9 bindsym $mod+0 workspace number $ws10 -bindsym $mod+x workspace number $ws10 +bindsym $mod+i workspace number $ws1 +bindsym $mod+t workspace number $ws2 +bindsym $mod+o workspace number $ws3 bindsym $mod+z workspace number $ws9 +bindsym $mod+x workspace number $ws10 -# move focused container to workspace bindsym $mod+Shift+1 move container to workspace number $ws1 bindsym $mod+Shift+2 move container to workspace number $ws2 bindsym $mod+Shift+3 move container to workspace number $ws3 @@ -176,39 +115,25 @@ bindsym $mod+Shift+8 move container to workspace number $ws8 bindsym $mod+Shift+9 move container to workspace number $ws9 bindsym $mod+Shift+0 move container to workspace number $ws10 -bindsym $mod+Shift+x move container to workspace number $ws10 +bindsym $mod+Shift+i move container to workspace number $ws1 +bindsym $mod+Shift+t move container to workspace number $ws2 +bindsym $mod+Shift+o move container to workspace number $ws3 bindsym $mod+Shift+z move container to workspace number $ws9 +bindsym $mod+Shift+x move container to workspace number $ws10 bindsym $mod+Ctrl+l move workspace to output right bindsym $mod+Ctrl+h move workspace to output left -# reload the configuration file bindsym $mod+Shift+c reload -# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) bindsym $mod+Shift+r restart -# exit i3 (logs you out of your X session) bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" -# resize window (you can also use the mouse for that) mode "resize" { - # These bindings trigger as soon as you enter the resize mode - - # Pressing left will shrink the window’s width. - # Pressing right will grow the window’s width. - # Pressing up will shrink the window’s height. - # Pressing down will grow the window’s height. bindsym $left resize shrink width 10 px or 10 ppt bindsym $down resize grow height 10 px or 10 ppt bindsym $up resize shrink height 10 px or 10 ppt bindsym $right resize grow width 10 px or 10 ppt - # same bindings, but for the arrow keys - bindsym Left resize shrink width 10 px or 10 ppt - bindsym Down resize grow height 10 px or 10 ppt - bindsym Up resize shrink height 10 px or 10 ppt - bindsym Right resize grow width 10 px or 10 ppt - - # back to normal: Enter or Escape or $mod+r bindsym Return mode "default" bindsym Escape mode "default" bindsym $mod+r mode "default" @@ -223,7 +148,6 @@ set $lgray #888888 set $black #000000 set $white #ffffff -# class border backgr. text indicator child_border client.focused $yellow $yellow $black #2e9ef4 $dyellow client.focused_inactive $dyellow $dyellow $black #484e50 $gray client.unfocused $gray $gray $lgray #292d2e $gray @@ -233,36 +157,3 @@ client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c client.background #ffffff exec_always --no-startup-id $HOME/.config/polybar/launch.sh - -# Start i3bar to display a workspace bar (plus the system information i3status -# finds out, if available) -# bar { -# status_command i3blocks -c ~/.config/i3/i3blocks.conf -# -# # mode hide -# -# colors { -# background #111111 -# statusline #ffffff -# separator #666666 -# -# # border bg text -# focused_workspace #ffffff #aaaaaa #444444 -# active_workspace #cccccc #888888 #444444 -# inactive_workspace #444444 #000000 #888888 -# urgent_workspace #2f343a #900000 #ffffff -# binding_mode #2f343a #900000 #ffffff -# } -# } - -####################################################################### -# automatically start i3-config-wizard to offer the user to create a -# keysym-based config which used their favorite modifier (alt or windows) -# -# i3-config-wizard will not launch if there already is a config file -# in ~/.config/i3/config (or $XDG_CONFIG_HOME/i3/config if set) or -# ~/.i3/config. -# -# Please remove the following exec line: -####################################################################### -exec i3-config-wizard diff --git a/.config/nvim/ftdetect/ox.vim b/.config/nvim/ftdetect/ox.vim new file mode 100644 index 0000000..d42940c --- /dev/null +++ b/.config/nvim/ftdetect/ox.vim @@ -0,0 +1 @@ +au BufRead,BufNewFile *.ox set filetype=ox diff --git a/.config/nvim/live-server/package-lock.json b/.config/nvim/live-server/package-lock.json new file mode 100644 index 0000000..9527ed2 --- /dev/null +++ b/.config/nvim/live-server/package-lock.json @@ -0,0 +1,6 @@ +{ + "name": "live-server", + "lockfileVersion": 3, + "requires": true, + "packages": {} +} diff --git a/.config/nvim/lua/map.lua b/.config/nvim/lua/map.lua index f23b703..f94cd9f 100644 --- a/.config/nvim/lua/map.lua +++ b/.config/nvim/lua/map.lua @@ -12,8 +12,11 @@ vim.keymap.set("n", "<C-l>", "<C-w>l", {}) vim.keymap.set("n", "<C-u>", "u", {}) vim.keymap.set("n", "u", "", {}) -vim.keymap.set({ "v", "n" }, ".", "<C-u>", {}) -vim.keymap.set({ "v", "n" }, ",", "<C-d>", {}) +vim.keymap.set("n", "<leader>b", "^", {}) +vim.keymap.set("n", "<leader>w", "$", {}) + +vim.keymap.set({ "v", "n" }, ".", "<C-u>zz", {}) +vim.keymap.set({ "v", "n" }, ",", "<C-d>zz", {}) vim.keymap.set("o", "as", "a\"", {}) vim.keymap.set("o", "is", "i\"", {}) diff --git a/.config/nvim/lua/plugin/liveserver.lua b/.config/nvim/lua/plugin/liveserver.lua new file mode 100644 index 0000000..542a1fb --- /dev/null +++ b/.config/nvim/lua/plugin/liveserver.lua @@ -0,0 +1,13 @@ +local status_ok, live_server = pcall(require, "live_server") +if not status_ok then + return +end + +live_server.setup({ + port = 8080, + browser_command = "", -- Empty string starts up with default browser + quiet = false, + no_css_inject = false, -- Disables css injection if true, might be useful when testing out tailwindcss + install_path = vim.fn.stdpath "config" .. "/live-server/", +}) + diff --git a/.config/nvim/lua/plugin/packer.lua b/.config/nvim/lua/plugin/packer.lua index 19265c8..015463d 100644 --- a/.config/nvim/lua/plugin/packer.lua +++ b/.config/nvim/lua/plugin/packer.lua @@ -24,6 +24,14 @@ return require("packer").startup(function(use) } use { + "aurum77/live-server.nvim", + run = function() + require"live_server.util".install() + end, + cmd = { "LiveServer", "LiveServerStart", "LiveServerStop" }, + } + + use { "utilyre/barbecue.nvim", tag = "*", requires = { diff --git a/.config/nvim/lua/plugin/setup.lua b/.config/nvim/lua/plugin/setup.lua index d5cca00..69eed82 100644 --- a/.config/nvim/lua/plugin/setup.lua +++ b/.config/nvim/lua/plugin/setup.lua @@ -4,9 +4,9 @@ require("nvim-lightbulb").setup({ autocmd = { enabled = true } }) +require("plugin.liveserver") require("plugin.nvimtree") require("plugin.treesitter") -require("plugin.presence") require("plugin.telescope") require("plugin.autopairs") require("plugin.lualine") diff --git a/.config/nvim/syntax/ox.vim b/.config/nvim/syntax/ox.vim new file mode 100644 index 0000000..c5abff4 --- /dev/null +++ b/.config/nvim/syntax/ox.vim @@ -0,0 +1,51 @@ +if exists("b:current_syntax") + finish +endif + +syn keyword oxTodo contained TODO FIXME HACK +syn match oxComment /\/\/.*$/ contains=oxTodo +syn region oxMComment start=/\/\*/ end=/\*\// + +syn keyword oxStatement return var break continue +syn keyword oxFunc fn +syn keyword oxRepeat for while +syn keyword oxDeclaration fn var +syn keyword oxStructure class enum +syn keyword oxConstants true false +syn keyword oxConditional if else +syn keyword oxStorageClass global local + +syn keyword oxOperator and or +syn match oxSymOperator /[+\-\*/%]|[\>\<\=\!]\=?/ + +syn match oxIdentifier /[A-z_]+[A-z0-9_]*/ + +syn match oxNumber /\<\d\+\>/ +syn match oxNumber /\<\d\+\.\d*\%([eE][-+]\=\d\+\)\=/ +syn match oxNumber /\.\d\+\%([eE][-+]\=\d\+\)\=\>/ +syn match oxNumber /\<\d\+[eE][-+]\=\d\+\>/ + +syn match oxEscape contained /\\[ntr\\\"']/ +syn match oxStringD /\".*\"/ contains=oxEscape +syn match oxStringS /\'.*\'/ contains=oxEscape +syn match oxType /(?<=\:)\s*[A-z_]+[A-z0-9_]*/ + +let b:current_syntax = "ox" + +hi def link oxComment Comment +hi def link oxMComment Comment +hi def link oxStatement Statement +hi def link oxFunc Function +hi def link oxDeclaration Statement +hi def link oxRepeat Repeat +hi def link oxIdentifier Identifier +hi def link oxNumber Number +hi def link oxStringD String +hi def link oxStringS String +hi def link oxConstants Constant +hi def link oxOperator Operator +hi def link oxSymOperator Operator +hi def link oxConditional Conditional +hi def link oxStructure Structure +hi def link oxStorageClass StorageClass +hi def link oxType Type |
