typical update of files

This commit is contained in:
iceyrazor 2025-02-11 15:48:30 -06:00
parent 0b274c969e
commit 34ed301bed
52 changed files with 2909 additions and 148 deletions

View File

@ -15,4 +15,3 @@ fi
#export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0 #export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0
export DWM_NOTIF_FILE="/home/iceyrazor/stuff/scripts/c/SDL/notif/notif.txt"

4
.bashrc Executable file → Normal file
View File

@ -4,7 +4,7 @@
# If not running interactively, don't do anything # If not running interactively, don't do anything
[[ $- != *i* ]] && return [[ $- != *i* ]] && return
PS1='\[\e[37;1m\][\[\e[31;1m\]B\[\e[35;1m\]\u\[\e[33m\]@\[\e[35;1m\]\h \[\e[36;1m\]\W\[\e[37;1m\]]\[\e[0;1m\]∮ ' PS1='\[\e[37;1m\][\[\e[35;1m\]\u\[\e[33m\]@\[\e[35;1m\]\h \[\e[36;1m\]\W\[\e[37;1m\]]\[\e[0;1m\]∮ '
source ~/stuff/scripts/system/neoboot.sh ~/stuff/scripts/system/neoboot.sh
source ~/.profile source ~/.profile

234
.config/atuin/config.toml Normal file
View File

@ -0,0 +1,234 @@
## where to store your database, default is your system data directory
## linux/mac: ~/.local/share/atuin/history.db
## windows: %USERPROFILE%/.local/share/atuin/history.db
# db_path = "~/.history.db"
## where to store your encryption key, default is your system data directory
## linux/mac: ~/.local/share/atuin/key
## windows: %USERPROFILE%/.local/share/atuin/key
# key_path = "~/.key"
## where to store your auth session token, default is your system data directory
## linux/mac: ~/.local/share/atuin/session
## windows: %USERPROFILE%/.local/share/atuin/session
# session_path = "~/.session"
## date format used, either "us" or "uk"
# dialect = "us"
## default timezone to use when displaying time
## either "l", "local" to use the system's current local timezone, or an offset
## from UTC in the format of "<+|->H[H][:M[M][:S[S]]]"
## for example: "+9", "-05", "+03:30", "-01:23:45", etc.
# timezone = "local"
## enable or disable automatic sync
# auto_sync = true
## enable or disable automatic update checks
# update_check = true
## address of the sync server
# sync_address = "https://api.atuin.sh"
## how often to sync history. note that this is only triggered when a command
## is ran, so sync intervals may well be longer
## set it to 0 to sync after every command
# sync_frequency = "10m"
## which search mode to use
## possible values: prefix, fulltext, fuzzy, skim
# search_mode = "fuzzy"
## which filter mode to use
## possible values: global, host, session, directory
# filter_mode = "global"
## With workspace filtering enabled, Atuin will filter for commands executed
## in any directory within a git repository tree (default: false)
# workspaces = false
## which filter mode to use when atuin is invoked from a shell up-key binding
## the accepted values are identical to those of "filter_mode"
## leave unspecified to use same mode set in "filter_mode"
# filter_mode_shell_up_key_binding = "global"
## which search mode to use when atuin is invoked from a shell up-key binding
## the accepted values are identical to those of "search_mode"
## leave unspecified to use same mode set in "search_mode"
# search_mode_shell_up_key_binding = "fuzzy"
## which style to use
## possible values: auto, full, compact
# style = "auto"
## the maximum number of lines the interface should take up
## set it to 0 to always go full screen
# inline_height = 0
inline_height = 0
## Invert the UI - put the search bar at the top , Default to `false`
# invert = false
## enable or disable showing a preview of the selected command
## useful when the command is longer than the terminal width and is cut off
# show_preview = true
## what to do when the escape key is pressed when searching
## possible values: return-original, return-query
# exit_mode = "return-original"
## possible values: emacs, subl
# word_jump_mode = "emacs"
## characters that count as a part of a word
# word_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
## number of context lines to show when scrolling by pages
# scroll_context_lines = 1
## use ctrl instead of alt as the shortcut modifier key for numerical UI shortcuts
## alt-0 .. alt-9
# ctrl_n_shortcuts = false
## default history list format - can also be specified with the --format arg
# history_format = "{time}\t{command}\t{duration}"
## prevent commands matching any of these regexes from being written to history.
## Note that these regular expressions are unanchored, i.e. if they don't start
## with ^ or end with $, they'll match anywhere in the command.
## For details on the supported regular expression syntax, see
## https://docs.rs/regex/latest/regex/#syntax
# history_filter = [
# "^secret-cmd",
# "^innocuous-cmd .*--secret=.+",
# ]
## prevent commands run with cwd matching any of these regexes from being written
## to history. Note that these regular expressions are unanchored, i.e. if they don't
## start with ^ or end with $, they'll match anywhere in CWD.
## For details on the supported regular expression syntax, see
## https://docs.rs/regex/latest/regex/#syntax
# cwd_filter = [
# "^/very/secret/area",
# ]
## Configure the maximum height of the preview to show.
## Useful when you have long scripts in your history that you want to distinguish
## by more than the first few lines.
# max_preview_height = 4
## Configure whether or not to show the help row, which includes the current Atuin
## version (and whether an update is available), a keymap hint, and the total
## amount of commands in your history.
# show_help = true
## Configure whether or not to show tabs for search and inspect
# show_tabs = true
## Defaults to true. This matches history against a set of default regex, and will not save it if we get a match. Defaults include
## 1. AWS key id
## 2. Github pat (old and new)
## 3. Slack oauth tokens (bot, user)
## 4. Slack webhooks
## 5. Stripe live/test keys
# secrets_filter = true
## Defaults to true. If enabled, upon hitting enter Atuin will immediately execute the command. Press tab to return to the shell and edit.
# This applies for new installs. Old installs will keep the old behaviour unless configured otherwise.
enter_accept = true
## Defaults to "emacs". This specifies the keymap on the startup of `atuin
## search`. If this is set to "auto", the startup keymap mode in the Atuin
## search is automatically selected based on the shell's keymap where the
## keybinding is defined. If this is set to "emacs", "vim-insert", or
## "vim-normal", the startup keymap mode in the Atuin search is forced to be
## the specified one.
# keymap_mode = "auto"
keymap_mode = "vim-normal"
## Cursor style in each keymap mode. If specified, the cursor style is changed
## in entering the cursor shape. Available values are "default" and
## "{blink,steady}-{block,underline,bar}".
# keymap_cursor = { emacs = "blink-block", vim_insert = "blink-block", vim_normal = "steady-block" }
# network_connect_timeout = 5
# network_timeout = 5
## Timeout (in seconds) for acquiring a local database connection (sqlite)
# local_timeout = 5
## Set this to true and Atuin will minimize motion in the UI - timers will not update live, etc.
## Alternatively, set env NO_MOTION=true
# prefers_reduced_motion = false
[stats]
## Set commands where we should consider the subcommand for statistics. Eg, kubectl get vs just kubectl
# common_subcommands = [
# "apt",
# "cargo",
# "composer",
# "dnf",
# "docker",
# "git",
# "go",
# "ip",
# "kubectl",
# "nix",
# "nmcli",
# "npm",
# "pecl",
# "pnpm",
# "podman",
# "port",
# "systemctl",
# "tmux",
# "yarn",
# ]
## Set commands that should be totally stripped and ignored from stats
# common_prefix = ["sudo"]
## Set commands that will be completely ignored from stats
# ignored_commands = [
# "cd",
# "ls",
# "vi"
# ]
[keys]
# Defaults to true. If disabled, using the up/down key won't exit the TUI when scrolled past the first/last entry.
# scroll_exits = false
[sync]
# Enable sync v2 by default
# This ensures that sync v2 is enabled for new installs only
# In a later release it will become the default across the board
records = true
[preview]
## which preview strategy to use to calculate the preview height (respects max_preview_height).
## possible values: auto, static
## auto: length of the selected command.
## static: length of the longest command stored in the history.
# strategy = "auto"
[daemon]
## Enables using the daemon to sync. Requires the daemon to be running in the background. Start it with `atuin daemon`
# enabled = false
## How often the daemon should sync in seconds
# sync_frequency = 300
## The path to the unix socket used by the daemon (on unix systems)
## linux/mac: ~/.local/share/atuin/atuin.sock
## windows: Not Supported
# socket_path = "~/.local/share/atuin/atuin.sock"
## Use systemd socket activation rather than opening the given path (the path must still be correct for the client)
## linux: false
## mac/windows: Not Supported
# systemd_socket = false
## The port that should be used for TCP on non unix systems
# tcp_port = 8889

View File

@ -80,6 +80,9 @@ theme.taglist_squares_unsel = theme_assets.taglist_squares_unsel(
theme.menu_submenu_icon = themes_path.."submenu.png" theme.menu_submenu_icon = themes_path.."submenu.png"
theme.menu_height = dpi(15) theme.menu_height = dpi(15)
theme.menu_width = dpi(100) theme.menu_width = dpi(100)
theme.notification_bg = "#222222"
theme.notification_border_color = theme.border_focus
theme.notification_font = "inconsolata regular 15"
-- You can add as many variables as -- You can add as many variables as
-- you wish and access them by using -- you wish and access them by using

View File

@ -18,8 +18,8 @@ local hotkeys_popup = require("awful.hotkeys_popup")
-- when client with a matching name is opened: -- when client with a matching name is opened:
require("awful.hotkeys_popup.keys") require("awful.hotkeys_popup.keys")
local HOMEDIR="/home/iceyrazor/" local HOMEDIR="/home/iceyrazor"
local mpris=HOMEDIR.."/stuff/scripts/system/mpris_player_control"
local show_desktop = false local show_desktop = false
@ -40,6 +40,7 @@ function show_my_desktop()
end end
--auto switch to tag with clients if no current clients exist in current tag --auto switch to tag with clients if no current clients exist in current tag
--[[
client.connect_signal("unmanage", function(c) client.connect_signal("unmanage", function(c)
local t = c.first_tag or awful.screen.focused().selected_tag local t = c.first_tag or awful.screen.focused().selected_tag
for _, cl in ipairs(t:clients()) do for _, cl in ipairs(t:clients()) do
@ -54,6 +55,7 @@ client.connect_signal("unmanage", function(c)
end end
end end
end) end)
]]--
-- {{{ Error handling -- {{{ Error handling
@ -98,6 +100,10 @@ editor_cmd = terminal .. " -e " .. editor
-- I suggest you to remap Mod4 to another key using xmodmap or other tools. -- I suggest you to remap Mod4 to another key using xmodmap or other tools.
-- However, you can use another modifier like Mod1, but it may interact with others. -- However, you can use another modifier like Mod1, but it may interact with others.
modkey = "Mod4" modkey = "Mod4"
if awesome.hostname == "DangerNoodle" then
--modkey = "Mod3"
end
-- Table of layouts to cover with awful.layout.inc, order matters. -- Table of layouts to cover with awful.layout.inc, order matters.
awful.layout.layouts = { awful.layout.layouts = {
@ -189,7 +195,8 @@ local tasklist_buttons = gears.table.join(
end), end),
awful.button({ }, 5, function () awful.button({ }, 5, function ()
awful.client.focus.byidx(-1) awful.client.focus.byidx(-1)
end)) end)
)
local function set_wallpaper(s) local function set_wallpaper(s)
-- Wallpaper -- Wallpaper
@ -212,7 +219,7 @@ awful.screen.connect_for_each_screen(function(s)
-- Each screen has its own tag table. -- Each screen has its own tag table.
--awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[2]) --awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[2])
awful.tag({ " ", "", "", "  ", "  ", "  ", "  ", " ", "  ", "  " }, s, awful.layout.layouts[2]) awful.tag({ " ", "", "", "  ", "  ", "  ", "  ", " ", "  ", "  " }, s, awful.layout.layouts[2])
-- Create a promptbox for each screen -- Create a promptbox for each screen
s.mypromptbox = awful.widget.prompt() s.mypromptbox = awful.widget.prompt()
@ -242,32 +249,51 @@ awful.screen.connect_for_each_screen(function(s)
s.mywibox = awful.wibar({ position = "bottom", screen = s , height = 20}) s.mywibox = awful.wibar({ position = "bottom", screen = s , height = 20})
-- Add widgets to the wibox -- Add widgets to the wibox
s.mywibox:setup { if s.index==1 then
layout = wibox.layout.align.horizontal, s.mywibox:setup {
{ -- Left widgets layout = wibox.layout.align.horizontal,
layout = wibox.layout.fixed.horizontal, { -- Left widgets
mylauncher, layout = wibox.layout.fixed.horizontal,
s.mytaglist, mylauncher,
s.mypromptbox, s.mytaglist,
}, s.mypromptbox,
s.mytasklist, -- Middle widget },
{ -- Right widgets s.mytasklist, -- Middle widget
layout = wibox.layout.fixed.horizontal, { -- Right widgets
mykeyboardlayout, layout = wibox.layout.fixed.horizontal,
awful.widget.watch(HOMEDIR..'stuff/scripts/system/stbar/stbar-awesome.sh', 2), mykeyboardlayout,
mytextclock, awful.widget.watch(HOMEDIR..'/stuff/scripts/system/stbar/stbar-awesome.sh', 2),
wibox.widget.systray(), mytextclock,
s.mylayoutbox, wibox.widget.systray(),
}, s.mylayoutbox,
} },
}
else
s.mywibox:setup {
layout = wibox.layout.align.horizontal,
{ -- Left widgets
layout = wibox.layout.fixed.horizontal,
mylauncher,
s.mytaglist,
s.mypromptbox,
},
s.mytasklist, -- Middle widget
{ -- Right widgets
layout = wibox.layout.fixed.horizontal,
mykeyboardlayout,
mytextclock,
wibox.widget.systray(),
s.mylayoutbox,
},
}
end
end) end)
local month_calendar = awful.widget.calendar_popup.month() local month_calendar = awful.widget.calendar_popup.month({start_sunday=true})
month_calendar:attach( mytextclock, "br" ) month_calendar:attach( mytextclock, "br" )
--mytextclock:connect_signal("button::press",function () --mytextclock:connect_signal("button::press",function ()
--end) --end)
screen[2]:fake_resize(1920,0,1790,1006)
-- }}} -- }}}
-- {{{ Mouse bindings -- {{{ Mouse bindings
@ -381,7 +407,33 @@ globalkeys = gears.table.join(
{description = "lua execute prompt", group = "awesome"}), {description = "lua execute prompt", group = "awesome"}),
-- Menubar -- Menubar
awful.key({ modkey }, "p", function() menubar.show() end, awful.key({ modkey }, "p", function() menubar.show() end,
{description = "show the menubar", group = "launcher"}) {description = "show the menubar", group = "launcher"}),
awful.key({ }, "XF86AudioNext", function () awful.util.spawn("mpc next") end),
awful.key({ }, "XF86AudioPrev", function () awful.util.spawn("mpc prev") end),
awful.key({ }, "XF86AudioPlay", function () awful.util.spawn(mpris.." -a PlayPause") end),
awful.key({ }, "XF86AudioStop", function () awful.util.spawn(mpris.." -a pause") end),
--awful.key({ }, "XF86AudioRaiseVolume", function () awful.util.spawn("amixer -D pulse sset Master 2%+", false) end),
awful.key({ }, "XF86AudioRaiseVolume", function () awful.util.spawn("pactl set-sink-volume @DEFAULT_SINK@ +2%", false) end),
awful.key({ }, "XF86AudioLowerVolume", function () awful.util.spawn("pactl set-sink-volume @DEFAULT_SINK@ -2%", false) end),
awful.key({ }, "XF86AudioMute", function ()
awful.spawn("pactl set-source-mute @DEFAULT_SOURCE@ toggle", false)
awful.spawn.with_shell("notify-send 'mic' \"$(pactl get-source-mute @DEFAULT_SOURCE@)\"", false)
end),
--also pamixer -i 5 #to increase 5%
--pamixer -d 5 #to decrease 5%
awful.key({ }, "Print", function()
awful.spawn.with_shell("ffmpeg -f x11grab -framerate 1 -video_size 1920x1200 -i :0.0 -vframes 1 -crf 0 ~/Pictures/Screenshots/$(date '+%m-%d-%Y-%I-%M')_${RANDOM}_screenshot.jpg")
gears.timer.start_new(3, function()
naughty.notify({title="screenshot taken",text="possibly"})
return false -- Stop the timer after the first iteration
end)
end),
awful.key({ "Shift" }, "Print", function()
awful.spawn.with_shell("/bin/flameshot screen")
end)
) )
clientkeys = gears.table.join( clientkeys = gears.table.join(
@ -401,6 +453,8 @@ clientkeys = gears.table.join(
{description = "move to screen", group = "client"}), {description = "move to screen", group = "client"}),
awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end, awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end,
{description = "toggle keep on top", group = "client"}), {description = "toggle keep on top", group = "client"}),
awful.key({ modkey, "Shift" }, "s", function (c) c.sticky = not c.sticky end,
{description = "toggle sticky mode", group="client"}),
awful.key({ modkey, "Shift" }, "n", awful.key({ modkey, "Shift" }, "n",
function (c) function (c)
-- The client currently has the input focus, so it cannot be -- The client currently has the input focus, so it cannot be
@ -541,6 +595,7 @@ awful.rules.rules = {
"MessageWin", -- kalarm. "MessageWin", -- kalarm.
"Sxiv", "Sxiv",
"Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size. "Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size.
"nheko",
"Wpa_gui", "Wpa_gui",
"Pcmanfm", "Pcmanfm",
"veromix", "veromix",
@ -550,6 +605,7 @@ awful.rules.rules = {
-- and the name shown there might not match defined rules here. -- and the name shown there might not match defined rules here.
name = { name = {
"Event Tester", -- xev. "Event Tester", -- xev.
"LinVAM",
}, },
role = { role = {
"AlarmWindow", -- Thunderbird's calendar. "AlarmWindow", -- Thunderbird's calendar.
@ -563,14 +619,16 @@ awful.rules.rules = {
}, properties = { titlebars_enabled = false } }, properties = { titlebars_enabled = false }
}, },
--[[
{ rule_any = { { rule_any = {
class = { "Mumble", "Gajim", "vesktop" } class = { "Mumble", "Gajim", "vesktop" }
}, },
properties = { floating = true, screen = 2 } properties = { floating = true, screen = 2 }
}, },
--]]
{ rule_any = { { rule_any = {
class = { "steam_app*" } class = { "steam_app*", "vesktop", "Minecraft*" }
}, },
properties = { border_width = 0 } properties = { border_width = 0 }
} }
@ -580,6 +638,16 @@ awful.rules.rules = {
-- properties = { screen = 1, tag = "2" } }, -- properties = { screen = 1, tag = "2" } },
} }
-- }}} -- }}}
if screen[2] then
screen[2]:fake_resize(1986,33,1792,1015)
table.insert(awful.rules.rules,
{ rule_any = {
class = { "Mumble", "Gajim", "vesktop" }
},
properties = { floating = true, screen = 2 }
}
)
end
-- {{{ Signals -- {{{ Signals
-- Signal function to execute when a new client appears. -- Signal function to execute when a new client appears.

View File

@ -1,9 +1,9 @@
#!/bin/bash #!/bin/bash
extra=0 extra=0
if [ "$(cat /etc/hostname)" == "iceynethp1" ]; then if [ "$(cat /etc/hostname)" == "Kasino" ]; then
extra=1 extra=1
fi fi
if [ "$(cat /etc/hostname)" == "iceyartixmain" ]; then if [ "$(cat /etc/hostname)" == "Witchen" ]; then
extra=1 extra=1
fi fi
@ -19,11 +19,15 @@ xcompmgr &
if [ $extra == 1 ]; then if [ $extra == 1 ]; then
if [ -z $(pgrep -f stbar.sh) ]; then if [ -z $(pgrep -f stbar.sh) ]; then
~/stuff/scripts/system/stbar/stbar.sh & # ~/stuff/scripts/system/stbar/stbar.sh &
echo hall
fi fi
nohup pipewire & sleep 0.5s
nohup wireplumber & pipewire &
nohup pipewire-pulse & if [ -z $(pgrep wireplumber) ]; then
wireplumber &
fi
pipewire-pulse &
fi fi
if [ -z $(pgrep -f newsboat-fetch.sh) ]; then if [ -z $(pgrep -f newsboat-fetch.sh) ]; then
~/.config/dwm/newsboat-fetch.sh & ~/.config/dwm/newsboat-fetch.sh &
@ -31,5 +35,5 @@ fi
if [ -z $(pgrep wezterm) ]; then if [ -z $(pgrep wezterm) ]; then
sleep 2 sleep 2
wezterm -e ~/stuff/scripts/system/task.sh wezterm -e ~/stuff/scripts/system/task.sh &
fi fi

View File

@ -1,3 +0,0 @@
[Settings]
gtk-theme-name = Breeze-dark-gtk

9
.config/lf/lfrc Normal file → Executable file
View File

@ -112,7 +112,7 @@ cmd trash ${{
while [ "$files" ]; do while [ "$files" ]; do
file=${files%%;*} file=${files%%;*}
mv "$(basename "$file")" ~/Trash mv "$(basename "$file")" ~/.trash
if [ "$files" = "$file" ]; then if [ "$files" = "$file" ]; then
files='' files=''
else else
@ -126,15 +126,20 @@ cmd vim ${{
}} }}
cmd Sxiv ${{ cmd Sxiv ${{
sxiv $f & disown nohup sxiv $f > /dev/null 2> /dev/null < /dev/null & disown
}} }}
cmd clipf ${{ cmd clipf ${{
printf "$f" | xclip -selection clipboard printf "$f" | xclip -selection clipboard
}} }}
cmd filebrowser ${{
nohup pcmanfm $f > /dev/null 2> /dev/null < /dev/null & disown
}}
map DD trash map DD trash
map DP delete map DP delete
map V vim map V vim
map S Sxiv map S Sxiv
map C clipf map C clipf
map P filebrowser

3
.config/nvim/.luarc.json Normal file → Executable file
View File

@ -4,7 +4,8 @@
"lua/?.lua", "lua/?.lua",
"lua/?/init.lua" "lua/?/init.lua"
], ],
"diagnostics.globals": ["vim"], "diagnostics.globals": ["vim",
"endclose_tag_on_exit"],
"workspace.checkThirdParty": false, "workspace.checkThirdParty": false,
"workspace.library": [ "workspace.library": [
"$VIMRUNTIME", "$VIMRUNTIME",

View File

@ -0,0 +1,31 @@
require('yourmom/cloak').setup({
enabled = true,
cloak_character = '*',
-- The applied highlight group (colors) on the cloaking, see `:h highlight`.
highlight_group = 'Comment',
-- Applies the length of the replacement characters for all matched
-- patterns, defaults to the length of the matched pattern.
cloak_length = nil, -- Provide a number if you want to hide the true length of the value.
-- Whether it should try every pattern to find the best fit or stop after the first.
try_all_patterns = true,
-- Set to true to cloak Telescope preview buffers. (Required feature not in 0.1.x)
cloak_telescope = true,
-- Re-enable cloak when a matched buffer leaves the window.
cloak_on_leave = false,
patterns = {
{
-- Match any file starting with '.env'.
-- This can be a table to match multiple file patterns.
file_pattern = '.env*',
-- Match an equals sign and any character after it.
-- This can also be a table of patterns to cloak,
-- example: cloak_pattern = { ':.+', '-.+' } for yaml files.
cloak_pattern = '=.+',
-- A function, table or string to generate the replacement.
-- The actual replacement will contain the 'cloak_character'
-- where it doesn't cover the original text.
-- If left empty the legacy behavior of keeping the first character is retained.
replace = nil,
}
},
})

View File

@ -0,0 +1 @@
require("colorizer").setup()

View File

@ -0,0 +1 @@
require("hardtime").setup()

2
.config/nvim/after/plugin/harpoon.lua Normal file → Executable file
View File

@ -5,7 +5,7 @@ vim.keymap.set("n","<leader>a", mark.add_file)
vim.keymap.set("n","<C-e>", ui.toggle_quick_menu) vim.keymap.set("n","<C-e>", ui.toggle_quick_menu)
vim.keymap.set("n","<C-h>", function() ui.nav_file(1) end) vim.keymap.set("n","<C-y>", function() ui.nav_file(1) end)
vim.keymap.set("n","<C-t>", function() ui.nav_file(2) end) vim.keymap.set("n","<C-t>", function() ui.nav_file(2) end)
vim.keymap.set("n","<C-n>", function() ui.nav_file(3) end) vim.keymap.set("n","<C-n>", function() ui.nav_file(3) end)
vim.keymap.set("n","<C-s>", function() ui.nav_file(4) end) vim.keymap.set("n","<C-s>", function() ui.nav_file(4) end)

View File

@ -0,0 +1,30 @@
local highlight = {
"RainbowRed",
}
local hooks = require "ibl.hooks"
-- create the highlight groups in the highlight setup hook, so they are reset
-- every time the colorscheme changes
hooks.register(hooks.type.HIGHLIGHT_SETUP, function()
vim.api.nvim_set_hl(0, "RainbowRed", { fg = "#702ec0" })
end)
require('ibl').setup {
indent = {
char = '|',
highlight = highlight,
},
scope = {
show_start = false,
show_end = false,
show_exact_scope = false,
},
exclude = {
filetypes = {
'help',
'packer',
'undotree',
'diff',
},
},
}

30
.config/nvim/after/plugin/lsp.lua Normal file → Executable file
View File

@ -1,3 +1,10 @@
vim.api.nvim_create_autocmd("FileType", {
pattern = "src",
callback = function()
print("LSP should now be active for src files")
end,
})
local lsp = require("lsp-zero") local lsp = require("lsp-zero")
lsp.preset("recommended") lsp.preset("recommended")
@ -32,14 +39,33 @@ lsp.on_attach(function(client, bufnr)
vim.keymap.set("i", "<C-h>", function() vim.lsp.buf.signature_help() end, opts) vim.keymap.set("i", "<C-h>", function() vim.lsp.buf.signature_help() end, opts)
end) end)
local lsp_configurations = require('lspconfig.configs')
if not lsp_configurations.greybel then
lsp_configurations.greybel = {
default_config = {
cmd = { "/bin/greybel-languageserver", "--stdio" },
filetypes = { "greyscript" },
root_dir = require('lspconfig.util').root_pattern(".git", vim.fn.getcwd()),
settings = {},
}
}
end
-- to learn how to use mason.nvim with lsp-zero -- to learn how to use mason.nvim with lsp-zero
-- read this: https://github.com/VonHeikemen/lsp-zero.nvim/blob/v3.x/doc/md/guides/integrate-with-mason-nvim.md -- read this: https://github.com/VonHeikemen/lsp-zero.nvim/blob/v3.x/doc/md/guides/integrate-with-mason-nvim.md
require('mason').setup({}) require('mason').setup({
registries = {
"github:mason-org/mason-registry",
},
})
require('mason-lspconfig').setup({ require('mason-lspconfig').setup({
ensure_installed = {}, ensure_installed = { },
handlers = { handlers = {
lsp.default_setup, lsp.default_setup,
}, },
}) })
require('lspconfig').greybel.setup({})
lsp.setup() lsp.setup()

View File

@ -0,0 +1,46 @@
require('lualine').setup()
local custom_gruvbox = require'lualine.themes.base16'
-- Change the background of lualine_c section for normal mode
custom_gruvbox.normal.c.bg = '#222222'
local hide_in_width = function()
return vim.fn.winwidth(0) > 80
end
local diagnostics = {
'diagnostics',
sources = { 'nvim_diagnostic' },
sections = { 'error' , 'warn' },
symbols = { error = '', warn = '', info = '', hint = '' },
update_in_insert = false,
allways_visible = false,
cond = hide_in_width,
}
require('lualine').setup {
options = {
theme = custom_gruvbox,
icons_enabled = true,
disabled_filetypes = {'undotree', 'diff'},
},
sections = {
lualine_a = {{
'mode',
fmt = function(str)
return '' .. str
end,
}},
lualine_b = {'branch', 'diff', diagnostics},
lualine_c = {{
'filename',
file_status = true,
path = 0,
}},
--lualine_x = {'encoding', 'fileformat', 'filetype'},
lualine_x = {{'encoding', cond=hide_in_width}, {'filetype',cond=hide_in_width}},
lualine_y = {'progress'},
lualine_z = {'location'}
}
}

View File

@ -0,0 +1,4 @@
vim.notify = require("notify")
require("notify").setup({
background_colour="#000000"
})

3
.config/nvim/after/plugin/telescope.lua Normal file → Executable file
View File

@ -1,5 +1,8 @@
local builtin = require('telescope.builtin') local builtin = require('telescope.builtin')
vim.keymap.set('n', '<leader>pf', builtin.find_files, {}) vim.keymap.set('n', '<leader>pf', builtin.find_files, {})
vim.keymap.set('n', '<leader>pg', builtin.live_grep, {})
vim.keymap.set('n', '<leader>pb', builtin.buffers, {})
vim.keymap.set('n', '<leader>ph', builtin.help_tags, {})
vim.keymap.set('n', '<leader>ps', function() vim.keymap.set('n', '<leader>ps', function()
builtin.grep_string({ search = vim.fn.input("Grep > ") }); builtin.grep_string({ search = vim.fn.input("Grep > ") });
end) end)

0
.config/nvim/custom-lsp/.luarc.json Normal file → Executable file
View File

0
.config/nvim/init.lua Normal file → Executable file
View File

View File

@ -0,0 +1,293 @@
local group = vim.api.nvim_create_augroup('cloak', {})
local namespace = vim.api.nvim_create_namespace('cloak')
-- In case cmp is lazy loaded, we check :CmpStatus instead of a pcall to require
-- so we maintain the lazy load.
local has_cmp = function()
return vim.fn.exists(':CmpStatus') > 0
end
local M = {}
M.opts = {
enabled = true,
cloak_character = '*',
cloak_length = nil,
highlight_group = 'Comment',
try_all_patterns = true,
patterns = { { file_pattern = '.env*', cloak_pattern = '=.+' } },
cloak_telescope = true,
uncloaked_line_num = nil,
cloak_on_leave = false,
}
M.setup = function(opts)
M.opts = vim.tbl_deep_extend('force', M.opts, opts or {})
vim.b.cloak_enabled = M.opts.enabled
for _, pattern in ipairs(M.opts.patterns) do
if type(pattern.cloak_pattern) == 'string' then
pattern.cloak_pattern = { { pattern.cloak_pattern, replace = pattern.replace } }
else
for i, inner_pattern in ipairs(pattern.cloak_pattern) do
pattern.cloak_pattern[i] =
type(inner_pattern) == 'string'
and { inner_pattern, replace = pattern.cloak_pattern.replace or pattern.replace }
or inner_pattern
end
end
vim.api.nvim_create_autocmd(
{ 'BufEnter', 'TextChanged', 'TextChangedI', 'TextChangedP' }, {
pattern = pattern.file_pattern,
callback = function()
if M.opts.enabled then
M.cloak(pattern)
else
M.uncloak()
end
end,
group = group,
}
)
if M.opts.cloak_on_leave then
vim.api.nvim_create_autocmd(
'BufWinLeave', {
pattern = pattern.file_pattern,
callback = function()
M.enable()
end,
group = group,
}
)
end
end
if M.opts.cloak_telescope then
vim.api.nvim_create_autocmd(
'User', {
pattern = 'TelescopePreviewerLoaded',
callback = function(args)
-- Feature not in 0.1.x
if not M.opts.enabled or args.data == nil then
return
end
local buffer = require('telescope.state').get_existing_prompt_bufnrs()[1]
local picker = require('telescope.actions.state').get_current_picker(
buffer
)
-- If our state variable is set, meaning we have just refreshed after cloaking a buffer,
-- set the selection to that row again.
if picker.__cloak_selection then
picker:set_selection(picker.__cloak_selection)
picker.__cloak_selection = nil
vim.schedule(
function()
picker:refresh_previewer()
end
)
return
end
local is_cloaked, _ = pcall(
vim.api.nvim_buf_get_var, args.buf, 'cloaked'
)
-- Check the buffer agains all configured patterns,
-- if matched, set a variable on the picker to know where we left off,
-- set a buffer variable to know we already cloaked it later, and refresh.
-- a refresh will result in the cloak being visible, and will make this
-- aucmd be called again right away with the first result, which we will then
-- set to what we have stored in the code above.
if M.recloak_file(args.data.bufname) then
vim.api.nvim_buf_set_var(args.buf, 'cloaked', true)
if is_cloaked then
return
end
local row = picker:get_selection_row()
picker.__cloak_selection = row
picker:refresh()
return
end
end,
group = group,
}
)
end
-- Handle cloaking the Telescope preview.
vim.api.nvim_create_user_command('CloakEnable', M.enable, {})
vim.api.nvim_create_user_command('CloakDisable', M.disable, {})
vim.api.nvim_create_user_command('CloakToggle', M.toggle, {})
vim.api.nvim_create_user_command('CloakPreviewLine', M.uncloak_line, {})
end
M.uncloak = function()
vim.api.nvim_buf_clear_namespace(0, namespace, 0, -1)
end
M.uncloak_line = function()
if not M.opts.enabled then
return
end
local buf = vim.api.nvim_win_get_buf(0)
local cursor = vim.api.nvim_win_get_cursor(0)
M.opts.uncloaked_line_num = cursor[1]
vim.api.nvim_create_autocmd(
{ 'CursorMoved', 'CursorMovedI', 'BufLeave' }, {
buffer = buf,
callback = function(args)
if not M.opts.enabled then
M.opts.uncloaked_line_num = nil
return true
end
if args.event == 'BufLeave' then
M.opts.uncloaked_line_num = nil
M.recloak_file(vim.api.nvim_buf_get_name(buf))
return true
end
local ncursor = vim.api.nvim_win_get_cursor(0)
if ncursor[1] == M.opts.uncloaked_line_num then
return
end
M.opts.uncloaked_line_num = nil
M.recloak_file(vim.api.nvim_buf_get_name(buf))
-- deletes the auto command
return true
end,
group = group,
}
)
M.recloak_file(vim.api.nvim_buf_get_name(buf))
end
M.cloak = function(pattern)
M.uncloak()
if has_cmp() then
require('cmp').setup.buffer({ enabled = false })
end
local function determine_replacement(length, prefix)
local cloak_str = prefix
.. M.opts.cloak_character:rep(
tonumber(M.opts.cloak_length)
or length - vim.fn.strchars(prefix))
local remaining_length = length - vim.fn.strchars(cloak_str)
-- Fixme:
-- - When cloak_length is longer than the text underlying it,
-- it results in overlaying of extra text
-- => Possiblie solutions would could be implemented using inline virtual text
-- (https://github.com/neovim/neovim/pull/20130)
return cloak_str -- :sub(1, math.min(remaining_length - 1, -1))
.. (' '):rep(remaining_length)
end
local found_pattern = false
local lines = vim.api.nvim_buf_get_lines(0, 0, -1, false)
for i, line in ipairs(lines) do
-- Find all matches for the current line
local searchStartIndex = 1
while searchStartIndex < #line and
-- if the line is uncloaked skip
i ~= M.opts.uncloaked_line_num do
-- Find best pattern based on starting position and tiebreak with length
local first, last, matching_pattern, has_groups = -1, 1, nil, false
for _, inner_pattern in ipairs(pattern.cloak_pattern) do
local current_first, current_last, capture_group =
line:find(inner_pattern[1], searchStartIndex)
if current_first ~= nil
and (first < 0
or current_first < first
or (current_first == first and current_last > last)) then
first, last, matching_pattern, has_groups =
current_first, current_last, inner_pattern, capture_group ~= nil
if M.opts.try_all_patterns == false then break end
end
end
if first >= 0 then
found_pattern = true
local prefix = line:sub(first,first)
if has_groups and matching_pattern.replace ~= nil then
prefix = line:sub(first,last)
:gsub(matching_pattern[1], matching_pattern.replace, 1)
end
local last_of_prefix = first + vim.fn.strchars(prefix) - 1
if prefix == line:sub(first, last_of_prefix) then
first, prefix = last_of_prefix + 1, ''
end
vim.api.nvim_buf_set_extmark(
0, namespace, i - 1, first-1, {
hl_mode = 'combine',
virt_text = {
{
determine_replacement(last - first + 1, prefix),
M.opts.highlight_group,
},
},
virt_text_pos = 'overlay',
}
)
else break end
searchStartIndex = last
end
end
if found_pattern then
vim.opt_local.wrap = false
end
end
M.recloak_file = function(filename)
local base_name = vim.fn.fnamemodify(filename, ':t')
for _, pattern in ipairs(M.opts.patterns) do
-- Could be a string or a table of patterns.
local file_patterns = pattern.file_pattern
if type(file_patterns) == 'string' then
file_patterns = { file_patterns }
end
for _, file_pattern in ipairs(file_patterns) do
if base_name ~= nil and
vim.fn.match(base_name, vim.fn.glob2regpat(file_pattern)) ~= -1 then
M.cloak(pattern)
return true
end
end
end
return false
end
M.disable = function()
M.uncloak()
M.opts.enabled = false
vim.b.cloak_enabled = false
end
M.enable = function()
M.opts.enabled = true
vim.b.cloak_enabled = true
vim.cmd('doautocmd TextChanged')
end
M.toggle = function()
if M.opts.enabled then
M.disable()
else
M.enable()
end
end
return M

View File

@ -12,11 +12,13 @@ vim.opt.expandtab = true
vim.opt.smartindent=true vim.opt.smartindent=true
vim.opt.wrap = false vim.opt.wrap = true
vim.opt.hlsearch = false vim.opt.hlsearch = false
vim.opt.incsearch = true vim.opt.incsearch = true
vim.o.ignorecase = true
vim.opt.updatetime = 50 vim.opt.updatetime = 50
--vim.opt.colorcolumn = "80" --vim.opt.colorcolumn = "80"
--vim.cmd('colorscheme vim') --vim.cmd('colorscheme vim')
@ -37,3 +39,10 @@ vim.cmd('hi StatusLine cterm=reverse')
--allows highlighint in comments --allows highlighint in comments
--vim.api.nvim_set_hl(0, '@lsp.type.comment.cpp', {}) --vim.api.nvim_set_hl(0, '@lsp.type.comment.cpp', {})
vim.filetype.add({
extension = {
src = "greyscript"
}
})

View File

@ -10,6 +10,10 @@ return require('packer').startup(function(use)
use 'ThePrimeagen/vim-be-good' use 'ThePrimeagen/vim-be-good'
use 'ThePrimeagen/harpoon' use 'ThePrimeagen/harpoon'
use 'm4xshen/hardtime.nvim'
use 'rcarriga/nvim-notify'
use { "rose-pine/neovim", as = "rose-pine" } use { "rose-pine/neovim", as = "rose-pine" }
use { use {
@ -20,6 +24,17 @@ return require('packer').startup(function(use)
use("mbbill/undotree") use("mbbill/undotree")
use "lukas-reineke/indent-blankline.nvim"
use({ "NStefan002/screenkey.nvim", tag = "*" })
use("catgoose/nvim-colorizer.lua")
use {
'nvim-lualine/lualine.nvim',
--requires = { 'nvim-tree/nvim-web-devicons', opt = true }
}
--[[ --[[
use('nvim-treesitter/nvim-treesitter', {run = ':TSUpdate', use('nvim-treesitter/nvim-treesitter', {run = ':TSUpdate',
config = function() config = function()
@ -50,6 +65,4 @@ return require('packer').startup(function(use)
{'L3MON4D3/LuaSnip'}, {'L3MON4D3/LuaSnip'},
} }
} }
end) end)

View File

@ -1,15 +1,8 @@
vim.g.mapleader=" " vim.g.mapleader=" "
vim.g.maplocalleader=" "
vim.keymap.set("n", "<leader>pv", vim.cmd.Ex) vim.keymap.set("n", "<leader>pv", vim.cmd.Ex)
--[[
vim.keymap.set("n","<C-h>","<C-g>h")
vim.keymap.set("n","<C-j>","<C-w>j")
vim.keymap.set("n","<C-l>","<C-w>l")
vim.keymap.set("n","<C-k>","<C-w>k")
]]--
--[[vim.cmd[[ --[[vim.cmd[[
au VimEnter * silent! !xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape' au VimEnter * silent! !xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape'
au VimLeave * silent! !xmodmap -e 'clear Lock' -e 'keycode 0x42 = Caps_Lock'> au VimLeave * silent! !xmodmap -e 'clear Lock' -e 'keycode 0x42 = Caps_Lock'>
@ -25,15 +18,52 @@ vim.keymap.set("n", "J", "mzJ`z")
--keeps cursur in middle with up down --keeps cursur in middle with up down
vim.keymap.set("n", "<C-d>", "<C-d>zz") vim.keymap.set("n", "<C-d>", "<C-d>zz")
vim.keymap.set("n", "<C-u>", "<C-u>zz") vim.keymap.set("n", "<C-u>", "<C-u>zz")
vim.keymap.set("n", "n", "nzzzv")
vim.keymap.set("n", "N", "Nzzzv")
--sets leader y to put in sys clipboard --sets leader y to put in sys clipboard
vim.keymap.set("n", "<leader>y", "\"+y") vim.keymap.set("n", "<leader>y", "\"+y")
vim.keymap.set("v", "<leader>y", "\"+y") vim.keymap.set("v", "<leader>y", "\"+y")
vim.keymap.set("n", "<leader>Y", "\"+Y") vim.keymap.set("n", "<leader>Y", "\"+Y")
--paste but dont overwrite current register with selection
vim.keymap.set("v", "<leader>p", "\"_dP")
--nnoremap S :%s//g<left><left> --nnoremap S :%s//g<left><left>
vim.keymap.set("n", "S", [[:%s//<Left>]]) vim.keymap.set("n", "S", [[:%s//<Left>]])
vim.keymap.set('n', '<leader>to', ':tabnew<CR>')
vim.keymap.set('n', '<leader>tx', ':tabclose<CR>')
vim.keymap.set('n', '<leader>tn', ':tabn<CR>')
vim.keymap.set('n', '<leader>tp', ':tabp<CR>')
vim.keymap.set('n', '<leader>lw', '<cmd>:set wrap!<CR>')
--stay in indent mode
vim.keymap.set('v', '<', '<gv', {noremap = true})
vim.keymap.set('v', '>', '>gv', {noremap = true})
--reize with arrows
vim.keymap.set('n', '<Up>', ':resize -2<CR>')
vim.keymap.set('n', '<Down>', ':resize +2<CR>')
vim.keymap.set('n', '<Left>', ':vertical resize -2<CR>')
vim.keymap.set('n', '<RIght>', ':vertical resize +2<CR>')
-- window management
vim.keymap.set('n', '<leader>v', '<C-w>v')
vim.keymap.set('n', '<leader>h', '<C-w>s')
vim.keymap.set('n', '<leader>se', '<C-w>=')
vim.keymap.set('n', '<leader>xs', ':close<CR>')
-- navigate splits
vim.keymap.set("n","<C-h>","<C-w>h")
vim.keymap.set("n","<C-j>","<C-w>j")
vim.keymap.set("n","<C-l>","<C-w>l")
vim.keymap.set("n","<C-k>","<C-w>k")
vim.keymap.set("n", "<leader>ee", "oif err != nil {<CR>}<Esc>Oreturn err<Esc>") vim.keymap.set("n", "<leader>ee", "oif err != nil {<CR>}<Esc>Oreturn err<Esc>")
--per file type log quick binds --per file type log quick binds
@ -46,10 +76,40 @@ elseif string.find(filename,".*%.lua$") then
cc_command="oterm.print()<Esc>V=$i" cc_command="oterm.print()<Esc>V=$i"
elseif string.find(filename,".*%.c$") then elseif string.find(filename,".*%.c$") then
cc_command="oprintf(\"debug: %i\",);<Esc>V=$hi" cc_command="oprintf(\"debug: %i\",);<Esc>V=$hi"
elseif string.find(filename,".*%.rs$") then
cc_command="oprintln!(\"debug: {}\",);<Esc>V=$hi"
end end
vim.keymap.set("n", "<leader>cc", cc_command) vim.keymap.set("n", "<leader>cc", cc_command)
local auto_close=false
local function toggle_auto_close()
if auto_close==false then
vim.keymap.set("i", "{", "{<CR>}<Esc>ko");
vim.keymap.set("i", "(", "()<Esc>i");
if string.find(filename,".*%.html$") then
vim.keymap.set("i", "<", "<");
vim.keymap.set("i", ">", "><Esc>T<yef>a</><Esc>hpF<i");
else
vim.keymap.set("i", "<", "<><Esc>i");
vim.keymap.set("i", ">", ">");
end
vim.keymap.set("i", "[", "[]<Esc>i");
vim.keymap.set("i", "\"", "\"\"<Esc>i");
vim.keymap.set("i", "'", "''<Esc>i");
auto_close=true
else
vim.keymap.set("i", "{", "{");
vim.keymap.set("i", "(", "(");
vim.keymap.set("i", "<", "<");
vim.keymap.set("i", ">", ">");
vim.keymap.set("i", "[", "[");
auto_close=false
end
end
toggle_auto_close()
vim.keymap.set("n", "<leader>k", toggle_auto_close)
--[[ --[[
vim.keymap("i","<Caps_Lock>", function() vim.keymap("i","<Caps_Lock>", function()

31
.config/picom.conf Normal file → Executable file
View File

@ -78,11 +78,11 @@ fading = true;
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028) # Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
# fade-in-step = 0.028 # fade-in-step = 0.028
fade-in-step = 0.03; fade-in-step = 0.6;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03) # Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
# fade-out-step = 0.03 # fade-out-step = 0.03
fade-out-step = 0.03; fade-out-step = 0.06;
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10) # The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
# fade-delta = 10 # fade-delta = 10
@ -104,7 +104,7 @@ fade-out-step = 0.03;
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0) # Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
# inactive-opacity = 1 # inactive-opacity = 1
inactive-opacity = 0.8; inactive-opacity = 1;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default) # Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
# frame-opacity = 1.0 # frame-opacity = 1.0
@ -138,12 +138,13 @@ focus-exclude = [ "class_g = 'Cairo-clock'" ];
# #
opacity-rule = [ opacity-rule = [
"90:name *= 'Firefox'", #"95:name *= 'Firefox'",
"95:name *= 'Discord'", #"80:name *= 'Discord'",
"90:name *= 'OBS'", "90:name *= 'OBS'",
"90:name *= 'urxvt'", "90:name *= 'urxvt'",
"80:class_g = 'steam'", #"80:class_g = 'steam'",
"70:class_g *= 'screen-recorder-gtk'", "70:class_g *= 'screen-recorder-gtk'",
"80:class_g *= 'simplex'",
]; ];
@ -154,7 +155,7 @@ opacity-rule = [
# Sets the radius of rounded window corners. When > 0, the compositor will # Sets the radius of rounded window corners. When > 0, the compositor will
# round the corners of windows. Does not interact well with # round the corners of windows. Does not interact well with
# `transparent-clipping`. # `transparent-clipping`.
corner-radius = 15 corner-radius = 0
# Exclude conditions for rounded corners. # Exclude conditions for rounded corners.
rounded-corners-exclude = [ rounded-corners-exclude = [
@ -172,12 +173,12 @@ rounded-corners-exclude = [
# Parameters for background blurring, see the *BLUR* section for more information. # Parameters for background blurring, see the *BLUR* section for more information.
# blur-method = blur-method = "box"
# blur-size = 12 blur-size = 5
#
# blur-deviation = false blur-deviation = false
#
# blur-strength = 5 blur-strength = 3
# Blur background of semi-transparent / ARGB windows. # Blur background of semi-transparent / ARGB windows.
# Bad in performance, with driver-dependent behavior. # Bad in performance, with driver-dependent behavior.
@ -227,7 +228,7 @@ blur-background-exclude = [
# `xrender` is the default one. # `xrender` is the default one.
# #
# backend = "glx" # backend = "glx"
backend = "xrender"; backend = "glx";
# Use higher precision during rendering, and apply dither when presenting the # Use higher precision during rendering, and apply dither when presenting the
# rendered screen. Reduces banding artifacts, but might cause performance # rendered screen. Reduces banding artifacts, but might cause performance
@ -236,7 +237,7 @@ dithered-present = false;
# Enable/disable VSync. # Enable/disable VSync.
# vsync = false # vsync = false
vsync = false; vsync = true;
# Try to detect WM windows (a non-override-redirect window with no # Try to detect WM windows (a non-override-redirect window with no
# child that has 'WM_STATE') and mark them as active. # child that has 'WM_STATE') and mark them as active.

View File

@ -1,5 +1,14 @@
@theme "Arc-Dark" @theme "Arc-Dark"
//background: #30303050;
*{ *{
background: #30303050; background: #201f5060;
alternate-normal-background: #4030B060;
foreground: #F0C3F0;
border-color: #5030D0;
selected-normal-background: #20202060;
}
window, mainbox{
//border-radius: 20px;
} }

8
.config/screenkey.json Normal file → Executable file
View File

@ -20,10 +20,10 @@
"vis_shift": false, "vis_shift": false,
"vis_space": true, "vis_space": true,
"geometry": [ "geometry": [
1303, 1191,
180, 152,
611, 720,
103 81
], ],
"screen": 0, "screen": 0,
"start_disabled": false, "start_disabled": false,

View File

@ -1,13 +1,17 @@
gtk-enable-event-sounds=1 # DO NOT EDIT! This file will be overwritten by LXAppearance.
gtk-enable-animations=1 # Any customization should be done in ~/.gtkrc-2.0.mine instead.
gtk-theme-name="Breeze-Dark"
gtk-primary-button-warps-slider=1
gtk-toolbar-style=3
gtk-menu-images=1
gtk-button-images=1
gtk-cursor-theme-size=24
gtk-cursor-theme-name="breeze_cursors"
gtk-sound-theme-name="freedesktop"
gtk-icon-theme-name="breeze-dark"
gtk-font-name="Noto Sans, 10"
include "/home/iceyrazor/.gtkrc-2.0.mine"
gtk-theme-name="Breeze-dark-gtk"
gtk-icon-theme-name="Adwaita"
gtk-font-name="Cantarell 11"
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_BOTH
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1
gtk-menu-images=1
gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle="hintfull"

1739
.p10k.zsh Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,15 @@
#!/bin/bash #!/bin/bash
if [ -n "$BASH_SOURCE" ]; then
# Bash or zsh (if BASH_SOURCE is defined)
script="$BASH_SOURCE[0]"
elif [ -n "$ZSH_VERSION" ]; then
# Zsh
script="${(%):-%x}"
else
# Dash or POSIX sh
script="$0"
fi
if test -z "${XDG_RUNTIME_DIR}"; then if test -z "${XDG_RUNTIME_DIR}"; then
export XDG_RUNTIME_DIR=/tmp/${UID}-runtime-dir export XDG_RUNTIME_DIR=/tmp/${UID}-runtime-dir
if ! test -d "${XDG_RUNTIME_DIR}"; then if ! test -d "${XDG_RUNTIME_DIR}"; then
@ -16,7 +27,7 @@ export PROMPT_EOL_MARK=""
export EDITOR="nvim" export EDITOR="nvim"
export BROWSER="firefox" export BROWSER="firefox"
export PREFIX=/usr export PREFIX=/usr
export PATH="$PATH:$HOME/stuff/scripts/system:$HOME/.cargo/bin:$HOME/stuff/scripts/system/backup" export PATH="$PATH:$HOME/.cargo/bin:$HOME/stuff/scripts/system:$HOME/stuff/scripts/system/backup:$HOME/stuff/scripts/system/wlx:$HOME/stuff/scripts/system/youtube-playlist-cli:$HOME/.local/bin/blender-4.1.1-linux-x64:$HOME/stuff/manual-programs/app-images"
export MANPAGER='nvim +Man!' export MANPAGER='nvim +Man!'
# export DWM_NOTIF_FILE="/home/iceyrazor/stuff/scripts/c/SDL/notif/notif.txt" # export DWM_NOTIF_FILE="/home/iceyrazor/stuff/scripts/c/SDL/notif/notif.txt"
@ -24,33 +35,50 @@ export heartost="/home/iceyrazor/.steam/root/steamapps/music/Heartbound - OST"
export cutil=/home/iceyrazor/stuff/scripts/c/my_utils export cutil=/home/iceyrazor/stuff/scripts/c/my_utils
alias fukin="sudo $@"
alias fukn="sudo $@"
alias fuckin="sudo $@"
alias ls='ls --color=auto' alias ls='ls --color=auto'
alias lss="sudo du -ah -d 1 | sort -hr" alias lss="fukin du -ah -d 1 | sort -hr"
alias lsu="lsblk --filter 'NAME=~\"sd[abcde]\"' -o NAME,MOUNTPOINTS" alias lsu="lsblk --filter 'NAME=~\"sd[abcde]\"' -o NAME,MOUNTPOINTS"
alias surf="WEBKIT_DISABLE_COMPOSITING_MODE=1 surf"
alias lsblkfs="lsblk -o PATH,FSTYPE,MOUNTPOINT" alias lsblkfs="lsblk -o PATH,FSTYPE,MOUNTPOINT"
alias grep='grep --color=auto' alias grep='grep --color=auto'
alias fastfetch='fastfetch --localip-show-ipv4 0' alias fastfetch='fastfetch --localip-show-ipv4 0 --kitty-direct /home/iceyrazor/stuff/media/ICE/Sprite-0009.png --logo-width 40 --logo-height 20'
[ "$(cat /etc/hostname)" = "Kasino" ] && alias fukn="doas $@"
[ "$(cat /etc/hostname)" = "Kasino" ] && alias fukin="doas $@"
[ "$(cat /etc/hostname)" = "Kasino" ] && alias fuckin="doas $@"
alias numen="echo key x | fukin dotool && NUMEN_DMENU=rofi NUMEN_DMENU_OPTS='-show drun' LD_LIBRARY_PATH=/usr/lib/ numen & disown"
#[ "$(cat /etc/hostname)" = "Kasino" ] && alias gaysex="zypper dup --allow-vendor-change"
#[ "$(cat /etc/hostname)" = "Kasino" ] && alias cleangaysex="zypper clean -a && fukin zypper ref && fukin zypper dup --allow-vendor-change"
[ "$(cat /etc/hostname)" = "Witchen" ] && alias gaysex="pacman -Syyu && paru -Syyu --aur"
[ "$(cat /etc/hostname)" = "Kasino" ] && alias gaysex="pacman -Syyu && paru -Syyu --aur"
alias ascii="~/stuff/scripts/c/SDL/ascii/ascii" alias ascii="~/stuff/scripts/c/SDL/ascii/ascii"
alias watchlss="sudo watch \"du -ah -d 1 | sort -hr\"" alias watchlss="fukin watch \"du -ah -d 1 | sort -hr\""
alias lfub=~/.local/bin/lf-gadgets/lf-ueberzug/lf-ueberzug alias lfub=~/.local/bin/lf-gadgets/lf-ueberzug/lf-ueberzug
alias lfk=~/.local/bin/lf-gadgets/lf-kitty/lf-kitty alias lfk=~/.local/bin/lf-gadgets/lf-kitty/lf-kitty
alias ovim=/usr/bin/vim alias ovim=/usr/bin/vim
alias vim=nvim alias vim=nvim
alias fzf="fzf --walker-skip=.private-parent" alias fzf="fzf --walker-skip=.private-parent"
alias fcd="cd \"\$(fzf --walker dir,hidden --walker-skip=.private-parent)\"" alias fcd="cd \"\$(fzf --walker dir,hidden --walker-skip=.private-parent)\""
alias notes="cd ~/stuff/notes && vim notes.md && cd ~"
alias ts="~/stuff/scripts/system/tmux-sessionizer.sh" alias ts="~/stuff/scripts/system/tmux-sessionizer.sh"
alias fman="bash -c 'compgen -c' | fzf | xargs man"
alias etask="$EDITOR stuff/scripts/system/task.sh"
#alias updateL='sudo /home/iceyrazor/update_list/update_list.sh ' #alias updateL='fukin /home/iceyrazor/update_list/update_list.sh '
alias session="./Downloads/session-desktop-linux-x86_64-1.12.4.AppImage > /dev/null & disown" alias session="./Downloads/session-desktop-linux-x86_64-1.12.4.AppImage > /dev/null & disown"
alias simplex="_JAVA_AWT_WM_NONREPARENTING=1 ./Downloads/simplex-desktop-x86_64.AppImage > /dev/null & disown" alias simplex="_JAVA_AWT_WM_NONREPARENTING=1 ./Downloads/simplex-desktop-x86_64.AppImage > /dev/null & disown"
alias ygg="fukin bash -c 'mkdir /var/run/yggdrasil; yggdrasil -useconf < /etc/yggdrasil.conf'"
alias loki="./stuff/scripts/loki-toggle.sh" alias loki="./stuff/scripts/loki-toggle.sh"
alias lokig="sudo Lokinet-GUI.AppImage --no-sandbox > /dev/null & disown" alias lokig="fukin Lokinet-GUI.AppImage --no-sandbox > /dev/null & disown"
alias alvr="WINIT_X11_SCALE_FACTOR=\"1\" ~/stuff/app_images/ALVR-x86_64.AppImage & disown" alias alvr="WINIT_X11_SCALE_FACTOR=\"1\" /home/iceyrazor/stuff/manual-programs/dontsync/alvr_streamer_linux/bin/alvr_dashboard & disown"
alias wlx="~/stuff/app_images/WlxOverlay-v1.4.5-x86_64.AppImage & disown" alias obss="fukin obs && obs & disown"
alias obss="sudo obs && obs & disown" alias get_channel_id="xargs curl -s | grep -Eo 'channel_id=.{0,50}' | sed 's/\".*//g' | fzf | xargs printf \"https://www.youtube.com/feeds/videos.xml?%s\" | xclip -selection clipboard"
alias killa="~/stuff/killall.sh" alias killa="~/stuff/killall.sh"
alias bbackup="~/stuff/scripts/system/backup/backup.sh" alias bbackup="~/stuff/scripts/system/backup/backup.sh"
@ -58,22 +86,25 @@ alias bbacklap="~/stuff/scripts/system/backup/backup-tol.sh"
alias bgit="~/stuff/scripts/system/backup/move-to-git.sh" alias bgit="~/stuff/scripts/system/backup/move-to-git.sh"
alias vasm="~/stuff/manual-programs/vasm/vasm6502_oldstyle -Fbin -dotdir " alias vasm="~/stuff/manual-programs/vasm/vasm6502_oldstyle -Fbin -dotdir "
alias pipes="pipes.sh -t 0 -p 3 -f 30 -r 2000" alias pipes="pipes.sh -t 0 -p 3 -f 30 -r 2000"
alias rerules="fukin udevadm control --reload-rules && fukin udevadm trigger"
alias bri="sudo ~/stuff/scripts/system/bri.sh"
alias bri="fukin ~/stuff/scripts/system/bri.sh"
alias drkwll="nitrogen --head=0 --set-zoom-fill ~/stuff/media/gallifreyan/linux2.png"
# mounting # mounting
alias umsu="sudo umount u" alias umsu="fukin umount u"
alias umsu2="sudo umount u2" alias umsu2="fukin umount u2"
alias mswin="sudo mount -o umask=0,uid=nobody,gid=nobody /dev/sdb3 ~/windir" alias mswin="fukin mount -o umask=0,uid=nobody,gid=nobody /dev/sdb3 ~/windir"
alias umswin="sudo umount ~/windir" alias umswin="fukin umount ~/windir"
alias msbak="sudo cryptsetup open /dev/sda1 backups && sudo mount /dev/mapper/backups ~/mnt-backups" # && sudo bindfs -u iceyrazor /mnt-backups ~/mnt-backups" alias msbak="doas cryptsetup open /dev/sda1 backups && doas mount /dev/mapper/backups ~/mnt-backups" # && fukin bindfs -u iceyrazor /mnt-backups ~/mnt-backups"
alias umsbak="sudo umount ~/mnt-backups && sudo cryptsetup close backups" # " sudo umount /mnt-backups && sudo cryptsetup close backups" alias umsbak="doas umount ~/mnt-backups && doas cryptsetup close backups" # " fukin umount /mnt-backups && fukin cryptsetup close backups"
alias msfd="sudo mount /dev/sdc1 u2" alias msfd="fukin mount /dev/sdc1 u2"
alias msf="sudo cryptsetup open /dev/sdc2 flashdrive && sudo mount /dev/mapper/flashdrive ~/u" alias msf="fukin cryptsetup open /dev/sdc2 flashdrive && fukin mount /dev/mapper/flashdrive ~/u"
alias umsf="sudo umount ~/u && sudo cryptsetup close flashdrive" alias umsf="fukin umount ~/u && fukin cryptsetup close flashdrive"
alias cam="ffplay -input_format mjpeg -fast -fflags +nobuffer -i -framerate 30 -max_delay 100 -max_probe_packets 0 -analyzeduration 0 -flags +low_delay /dev/video0" alias cam="ffplay -input_format mjpeg -fast -fflags +nobuffer -i -framerate 30 -max_delay 100 -max_probe_packets 0 -analyzeduration 0 -flags +low_delay /dev/video0"
alias sc="ffmpeg -f x11grab -framerate 1 -video_size 1920x1200 -i :0.0 -vframes 1 -crf 18 ~/output.jpeg" alias sc="ffmpeg -f x11grab -framerate 1 -video_size 1920x1200 -i :0.0 -vframes 1 -crf 18 ~/Pictures/Screenshots/$(date '+%m-%d-%Y-%I-%M')_${RANDOM}_screenshot.jpeg"
alias sc2="escrotum -s ~/Pictures/%Y-%m-%d-%H%M%S_$wx$h_escrotum.png" alias sc2="escrotum -s ~/Pictures/%Y-%m-%d-%H%M%S_$wx$h_escrotum.png"
alias scs="sleep 3s && ffmpeg -f x11grab -framerate 1 -video_size 1920x1200 -i :0.0 -vframes 1 -crf 18 output.jpeg" alias scs="sleep 3s && ffmpeg -f x11grab -framerate 1 -video_size 1920x1200 -i :0.0 -vframes 1 -crf 18 output.jpeg"
alias wwrite="watch -d grep -e Dirty: -e Writeback: /proc/meminfo" alias wwrite="watch -d grep -e Dirty: -e Writeback: /proc/meminfo"
@ -83,7 +114,7 @@ alias gol="~/stuff/scripts/c/SDL/game-of-life/game-of-life & disown"
alias statst="echo full_stat:true > ~/stuff/scripts/system/stbar/config.txt" alias statst="echo full_stat:true > ~/stuff/scripts/system/stbar/config.txt"
alias statsf="echo full_stat:false > ~/stuff/scripts/system/stbar/config.txt" alias statsf="echo full_stat:false > ~/stuff/scripts/system/stbar/config.txt"
alias get_drm="sudo cat /sys/module/nvidia_drm/parameters/modeset" alias get_drm="fukin cat /sys/module/nvidia_drm/parameters/modeset"
alias nodem="find . -name 'node_modules' -type d | xargs du -sh | sort -hr | fzf -m --header \"select witch ones to delete\" --preview 'cat $(dirname {})/package.json'|awk print '{print $2}' | xargs -r rm -rf" alias nodem="find . -name 'node_modules' -type d | xargs du -sh | sort -hr | fzf -m --header \"select witch ones to delete\" --preview 'cat $(dirname {})/package.json'|awk print '{print $2}' | xargs -r rm -rf"
@ -91,3 +122,4 @@ alias walltaker="stuff/manual-programs/git/walltaker-client/walltaker.sh"
alias savewall="stuff/manual-programs/git/walltaker-client/save.sh" alias savewall="stuff/manual-programs/git/walltaker-client/save.sh"
xset r rate 300 50 xset r rate 300 50
# xset r off

View File

@ -1,16 +0,0 @@
*,div,pre,textarea,body,input,td,tr,p {
background-color: #202020 !important;
background-image: none !important;
color: #bbbbbb !important;
}
h1,h2,h3,h4 {
background-color: #202020 !important;
color: #b8ddea !important;
}
img {
opacity: .5;
}
img:hover {
opacity: 1;
}

69
.tmux.conf Executable file
View File

@ -0,0 +1,69 @@
#run-shell ~/clone/path/logging.tmux
set -g default-terminal "screen-256color"
set -g terminal-overrides 'screen*:colors=256'
set -g default-shell /bin/zsh
set -g default-command /bin/zsh
#set -g status-interval 3
unbind C-b
set-option -g prefix C-Space
# set vim mode
set-window-option -g mode-keys vi
setw -g mode-keys vi
# yank and visual rebinds
bind -T copy-mode-vi v send-keys -X begin-selection
bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'xclip -selection clipboard'
# dont exit copy mode with mouse drag
unbind -T copy-mode-vi MouseDragEnd1Pane
# bind r to reload config
unbind r
bind r source-file ~/.tmux.conf
# start panes and windows 1
set -g base-index 1
set -g pane-base-index 1
set -g renumber-windows on # renumber windows when one is closed
# nav rebinds
bind -r C-h select-pane -L
bind -r C-j select-pane -D
bind -r C-k select-pane -U
bind -r C-l select-pane -R
bind -r h resize-pane -L 5
bind -r j resize-pane -D 5
bind -r k resize-pane -U 5
bind -r l resize-pane -R 5
bind -r m resize-pane -Z # maximize
# pane joining
bind J switch-client -T pane-management
bind-key -T pane-management \" command-prompt -p "join pane from:" "join-pane -s '%%' -h"
bind-key -T pane-management H command-prompt -p "join pane from:" "join-pane -s '%%' -f -h"
bind-key -T pane-management % command-prompt -p "join pane from:" "join-pane -s '%%' -v"
bind-key -T pane-management V command-prompt -p "join pane from:" "join-pane -s '%%' -f -v"
bind-key -T pane-management B break-pane
bind-key -T pane-management S command-prompt -p "send pane to:" "join-pane -t '%%'"
bind-key -r H split-window -h -f
# colors/theme
set -g status-bg "#333333"
set -g status-fg "#f1f1f1"
set -wg mode-style bg="#333334"
set -g pane-border-style fg='#333333'
set -g pane-active-border-style fg='#a030f0'
active_window_fg='#e080f0'
set -g status-left "#[fg=${session_fg},bold,bg=${bg}][ #S] "
set -g status-left-length 40
set -g window-status-current-format "#[fg=${active_window_fg},bg=default] #I:#W"
set -g window-status-format "#[fg=${default_fg},bg=default]#I:#W"
# set -g window-status-last-style "fg=${default_fg},bg=default"

View File

@ -2,9 +2,13 @@ local wezterm = require 'wezterm'
local config = {} local config = {}
local act = wezterm.action local act = wezterm.action
config.default_prog = { 'zsh', '-l' }
--config.font = wezterm.font 'Classic Console' --config.font = wezterm.font 'Classic Console'
--config.font_size = 15 --config.font_size = 15
--config.font = wezterm.font 'Source Code Pro' --config.font = wezterm.font 'Source Code Pro'
config.show_tabs_in_tab_bar = false
config.enable_tab_bar = false
config.font = wezterm.font 'CozetteVector' config.font = wezterm.font 'CozetteVector'
config.font_size = 15 config.font_size = 15
@ -21,7 +25,8 @@ config.keys = {
config.colors={ config.colors={
foreground = '#e6e6e6', foreground = '#e6e6e6',
background = '#101010', --background = '#101010',
background = '#04000a',
cursor_fg = '#fabd2f', cursor_fg = '#fabd2f',
ansi = { ansi = {
'#263640', '#263640',
@ -47,4 +52,62 @@ config.colors={
config.window_background_opacity = 0.8 config.window_background_opacity = 0.8
local function tab_title(tab_info)
local title = tab_info.tab_title
-- if the tab title is explicitly set, take that
if title and #title > 0 then
return title
end
-- Otherwise, use the title from the active pane
-- in that tab
return tab_info.active_pane.title
end
-- The filled in variant of the < symbol
local SOLID_LEFT_ARROW = wezterm.nerdfonts.pl_right_hard_divider
-- The filled in variant of the > symbol
local SOLID_RIGHT_ARROW = wezterm.nerdfonts.pl_left_hard_divider
config.use_fancy_tab_bar = false
config.show_new_tab_button_in_tab_bar = false
--[[
wezterm.on(
'format-tab-title',
function(tab, tabs, panes, config2, hover, max_width)
local edge_background = '#0b0022'
local background = '#1b1032'
local foreground = '#808080'
if tab.is_active then
background = '#2b2042'
foreground = '#c0c0c0'
elseif hover then
background = '#3b3052'
foreground = '#909090'
end
local edge_foreground = background
local title = tab_title(tab)
-- ensure that the titles fit in the available space,
-- and that we have room for the edges.
title = wezterm.truncate_right(title, max_width - 2)
return {
{ Background = { Color = edge_background } },
{ Foreground = { Color = edge_foreground } },
{ Text = SOLID_LEFT_ARROW },
{ Background = { Color = background } },
{ Foreground = { Color = foreground } },
{ Text = title },
{ Background = { Color = edge_background } },
{ Foreground = { Color = edge_foreground } },
{ Text = SOLID_RIGHT_ARROW },
}
end
)
--]]
return config return config

23
.zshrc
View File

@ -1,22 +1,37 @@
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
# Initialization code that may require console input (password prompts, [y/n]
# confirmations, etc.) must go above this block; everything else may go below.
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
# Lines configured by zsh-newuser-install # Lines configured by zsh-newuser-install
HISTFILE=~/.histfile HISTFILE=~/.histfile
HISTSIZE=1000 HISTSIZE=1000
SAVEHIST=1000 SAVEHIST=1000
bindkey -v
# End of lines configured by zsh-newuser-install # End of lines configured by zsh-newuser-install
PS1='%B%F{white}[%B%F{red}Z%B%F{magenta}%n%B%F{yellow}@%B%F{magenta}%M %B%F{cyan}%1~%B%F{white}]%B%F{default}$ ' PS1='%B%F{white}[%B%F{magenta}%n%B%F{yellow}@%B%F{magenta}%M %B%F{cyan}%1~%B%F{white}]%B%F{default}$ '
#PS1='%B%F{white}[%B%F{red}Z%B%F{magenta}ARCH %B%F{cyan}%1~%B%F{white}]%B%F{default}$ ' #PS1='%B%F{white}[%B%F{red}Z%B%F{magenta}ARCH %B%F{cyan}%1~%B%F{white}]%B%F{default}$ '
bindkey -v
# Yank to the system clipboard # Yank to the system clipboard
function vi-yank-xclip { function vi-yank-xclip {
#zle vi-yank zle vi-yank
echo "$CUTBUFFER" | xclip -selection clipboard echo "$CUTBUFFER" | xclip -selection clipboard
} }
zle -N vi-yank-xclip zle -N vi-yank-xclip
bindkey -M vicmd ' y' vi-yank-xclip bindkey -M vicmd ' y' vi-yank-xclip
source ~/stuff/scripts/system/neoboot.sh
source ~/.profile source ~/.profile
#bash --login -i -c 'source ~/.profile'
source ~/.config/zsh/powerlevel10k/powerlevel10k.zsh-theme
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
eval "$(atuin init zsh)"

0
stuff/manual-programs/suckless/dmenu-5.2/dmenu Normal file → Executable file
View File

0
stuff/manual-programs/suckless/dmenu-5.2/dmenu_path Normal file → Executable file
View File

0
stuff/manual-programs/suckless/dmenu-5.2/dmenu_run Normal file → Executable file
View File

0
stuff/manual-programs/suckless/dmenu-5.2/stest Normal file → Executable file
View File

0
stuff/manual-programs/suckless/dwm-bak/dwm Normal file → Executable file
View File

0
stuff/manual-programs/suckless/dwm/dwm Normal file → Executable file
View File

View File

@ -223,6 +223,7 @@ static void resizemouse(const Arg *arg);
static void resizerequest(XEvent *e); static void resizerequest(XEvent *e);
static void restack(Monitor *m); static void restack(Monitor *m);
static void run(void); static void run(void);
static void runAutostart(void);
static void scan(void); static void scan(void);
static int sendevent(Window w, Atom proto, int m, long d0, long d1, long d2, long d3, long d4); static int sendevent(Window w, Atom proto, int m, long d0, long d1, long d2, long d3, long d4);
static void sendmon(Client *c, Monitor *m); static void sendmon(Client *c, Monitor *m);
@ -1554,6 +1555,12 @@ run(void)
handler[ev.type](&ev); /* call handler */ handler[ev.type](&ev); /* call handler */
} }
void
runAutostart(void) {
system("cd ~/.config/dwm; ./autostart_blocking.sh");
system("cd ~/.config/dwm; ./autostart.sh &");
}
void void
scan(void) scan(void)
{ {
@ -2509,6 +2516,7 @@ main(int argc, char *argv[])
die("pledge"); die("pledge");
#endif /* __OpenBSD__ */ #endif /* __OpenBSD__ */
scan(); scan();
runAutostart();
run(); run();
cleanup(); cleanup();
XCloseDisplay(dpy); XCloseDisplay(dpy);

View File

@ -30,3 +30,4 @@ WEBEXTCFLAGS = -fPIC $(WEBEXTINC)
# compiler # compiler
#CC = c99 #CC = c99
CC = gcc -std=c99

View File

@ -15,11 +15,13 @@ fsyncb () {
fi fi
} }
syncfile="stuff .bash_profile .bashrc .surf .wezterm.lua .tmux.conf .gtkrc-2.0 .profile .urlview .vimrc .xinitrc .Xresources .zshrc .newsboat .gnupg .ssh .local/bin/lf-gadgets .config/dwm .config/awesome .config/gtk-3.0 .config/rofi .config/lf .config/picom.conf .config/nvim .config/screenkey.json .config/vesktop/themes .keepass .config/Pinta" syncfile="stuff .bash_profile .bashrc .surf/styles .wezterm.lua .tmux.conf .gtkrc-2.0 .profile .urlview .vimrc .xinitrc .Xresources .zshrc .p10k.zsh .newsboat .gnupg .ssh .local/bin/lf-gadgets .config/dwm .config/awesome .config/wlxoverlay .config/vesktop/themes .config/gtk-3.0 .config/rofi .config/lf .config/mutt .config/zsh .config/picom.conf .config/nvim .config/atuin .config/screenkey.json .config/vesktop/themes .keepass .config/Pinta .local/share/applications/custom"
# se shit
syncfile="$syncfile /home/iceyrazor/.local/share/Steam/steamapps/compatdata/244850/pfx/drive_c/users/steamuser/AppData/Roaming/SpaceEngineers/Blueprints /home/iceyrazor/.local/share/Steam/steamapps/compatdata/244850/pfx/drive_c/users/steamuser/AppData/Roaming/SpaceEngineers/IngameScripts /home/iceyrazor/.local/share/Steam/steamapps/compatdata/244850/pfx/drive_c/users/steamuser/AppData/Roaming/SpaceEngineers/Saves"
#sync game stuff
target="/home/iceyrazor/mnt-backups/LINUX FILES/home/iceyrazor" target="/home/iceyrazor/mnt-backups/LINUX FILES/home/iceyrazor"
exclude="--exclude **/cc-survival --exclude node_modules --exclude dontsync --exclude **/iceys-linux-stuffs" exclude="--exclude node_modules --exclude node_modules_23 --exclude dontsync --exclude **/iceys-linux-stuffs --exclude **/target --exclude LinVAM/pyenv"
fsynca fsynca
@ -27,4 +29,3 @@ fsynca
printf "==CC-survival unsynced\n\n" printf "==CC-survival unsynced\n\n"
fsyncb fsyncb

View File

@ -1,21 +1,21 @@
cd ~/ cd ~/
fsync () { fsync () {
rsync -RUurvn --size-only --delete-after $exclude $syncfile "$target" rsync -RUurvn --delete-after $exclude $syncfile "$target"
printf "===commit these changes?\n" printf "===commit these changes?\n"
read -p "y/n: " uinput read -p "y/n: " uinput
if [ "$uinput" != "n" ] && [ "$uinput" != "N" ]; then if [ "$uinput" != "n" ] && [ "$uinput" != "N" ]; then
printf "\n\n\n" printf "\n\n\n"
rsync -PRUurv --size-only --delete-after $exclude $syncfile "$target" rsync -PRUurv --delete-after $exclude $syncfile "$target"
printf "\n===end sync\n---------\n\n" printf "\n===end sync\n---------\n\n"
fi fi
} }
syncfile=".bash_profile .bashrc .gtkrc-2.0 .wezterm.lua .profile .urlview .vimrc .Xresources .zshrc .config/dwm .config/awesome .config/rofi .config/lf .config/picom.conf .config/nvim .config/screenkey.json stuff/manual-programs/suckless" syncfile=".bash_profile .bashrc .gtkrc-2.0 .tmux.conf .wezterm.lua .profile .urlview .vimrc .Xresources .zshrc .p10k.zsh .config/dwm .config/awesome .config/rofi .config/lf .config/picom.conf .config/nvim .config/atuin .config/screenkey.json stuff/manual-programs/suckless"
syncfile="$syncfile stuff/scripts/system/stbar stuff/scripts/system/url-handler.sh stuff/scripts/system/backup/copy-to-git.sh stuff/scripts/system/backup/backup.sh" syncfile="$syncfile stuff/scripts/system/stbar stuff/scripts/system/url-handler.sh stuff/scripts/system/backup/copy-to-git.sh stuff/scripts/system/backup/backup.sh"
syncfile="$syncfile stuff/scripts/system/neoboot.sh stuff/scripts/system/math.sh stuff/scripts/system/bri.sh stuff/scripts/system/restart-pipe.sh stuff/scripts/system/set-pri-java.sh" syncfile="$syncfile stuff/scripts/system/neoboot.sh stuff/scripts/system/math.sh stuff/scripts/system/bri.sh stuff/scripts/system/restart-pipe.sh stuff/scripts/system/set-pri-java.sh"
target=~/stuff/iceys-linux-stuffs target=~/stuff/iceys-linux-stuffs
exclude="--exclude check_weth.sh --exclude lua-ls-cc-tweaked --exclude .config/nvim/plugin" exclude="--exclude check_weth.sh --exclude awesome/default --exclude lua-ls-cc-tweaked --exclude .config/nvim/plugin"
fsync fsync

View File

@ -1,3 +1,4 @@
#!/bin/bash
normal() { normal() {
randnum=$(($RANDOM % 2)) randnum=$(($RANDOM % 2))
@ -21,7 +22,7 @@ laptop() {
lsblk --filter 'NAME=~"sd[abcde]"' -o NAME,MOUNTPOINTS | lolcat -as 10000 -S 100 lsblk --filter 'NAME=~"sd[abcde]"' -o NAME,MOUNTPOINTS | lolcat -as 10000 -S 100
} }
if [[ "$(cat /etc/hostname)" == "iceynethp1" ]]; then if [[ "$(cat /etc/hostname)" == "Witchen" ]]; then
laptop laptop
else else
normal normal

View File

@ -3,7 +3,7 @@ delim='|'
curr_dir="$(cd "$(dirname "$0")" && pwd)" curr_dir="$(cd "$(dirname "$0")" && pwd)"
#wifi_device=$(cat $curr_dir/config.txt | grep wifi_device | sed 's/wifi_device://') #wifi_device=$(cat $curr_dir/config.txt | grep wifi_device | sed 's/wifi_device://')
wifi_device="wlp4s0" wifi_device="wlan0"
# curr_dir/check_weth.sh "$cur_dir" & # curr_dir/check_weth.sh "$cur_dir" &
@ -32,28 +32,34 @@ if [ "$(ls /sys/class/power_supply/BAT0/)" ]; then
echo "$delim" echo "$delim"
fi fi
#mic
[ "$(pactl get-source-mute @DEFAULT_SOURCE@)" == "Mute: no" ] && echo|| echo 󰍭
echo "$delim"
#rss #rss
echo RSS:$(newsboat -x print-unread|sed "s/\s.*//; s/Error:/IA/") echo $(newsboat -x print-unread|sed "s/\s.*//; s/Error:/IA/")
echo "$delim" echo "$delim"
if [ "$(cat $curr_dir/config.txt | grep full_stat)" == "full_stat:true" ]; then if [ "$(cat $curr_dir/config.txt | grep full_stat)" == "full_stat:true" ]; then
#cpu #cpu
echo CPU:$(ps axch -o cmd:15,%cpu --sort=-%cpu | sed "1q")% echo $(ps axch -o cmd:15,%cpu --sort=-%cpu | sed "1q")%
echo "$delim" echo "$delim"
#mem #mem
echo Mem:$(free -mlw | grep Mem: | sed "s/Mem\:\W*[0-9]*\W*//; s/ .*//") echo $(free -mlw | grep Mem: | sed "s/Mem\:\W*[0-9]*\W*//; s/ .*//")
echo $(ps axch -o cmd:15,%mem --sort=-%mem | sed "1q")% echo $(ps axch -o cmd:15,%mem --sort=-%mem | sed "1q")%
else else
#cpu #cpu
echo CPU:$(ps axch -o cmd:15,%cpu --sort=-%cpu | sed "1q" | sed 's/.* //')% echo $(ps axch -o cmd:15,%cpu --sort=-%cpu | sed "1q" | sed 's/.* //')%
#mem #mem
echo Mem:$(free -mlw | grep Mem: | sed "s/Mem\:\W*[0-9]*\W*//; s/ .*//") echo $(free -mlw | grep Mem: | sed "s/Mem\:\W*[0-9]*\W*//; s/ .*//")
fi fi
echo "$delim" echo "$delim"
@ -62,7 +68,7 @@ echo "$delim"
#echo \/$(df -h | grep /dev/nvme0n1p3 | sed "s/\/dev\/nvme0n1p3 *[0-9]*.[0-9]*. *[0-9]*.[0-9]*. *//" | sed "s/ .*//") #echo \/$(df -h | grep /dev/nvme0n1p3 | sed "s/\/dev\/nvme0n1p3 *[0-9]*.[0-9]*. *[0-9]*.[0-9]*. *//" | sed "s/ .*//")
#echo \~$(df -h | grep /dev/nvme0n1p4 | sed "s/\/dev\/nvme0n1p4 *[0-9]*.[0-9]*. *[0-9]*.[0-9]*. *//" | sed "s/ .*//") #echo \~$(df -h | grep /dev/nvme0n1p4 | sed "s/\/dev\/nvme0n1p4 *[0-9]*.[0-9]*. *[0-9]*.[0-9]*. *//" | sed "s/ .*//")
echo $(df -h -x=used /dev/mapper/system-root | sed '1d' | awk '{print $4}') echo $(df -h -x=used /dev/mapper/artix-root | sed '1d' | awk '{print $4}'| sed 's/[^0-9]*//g')
echo "$delim" echo "$delim"

View File

@ -9,7 +9,7 @@ clipboard
firefox firefox
" "
choice=$(echo "$choices" | sed /^$/d | dmenu -i -p "$prompt_message") choice=$(echo "$choices" | sed /^$/d | rofi -dmenu "$prompt_message")
if [ "$choice" == "clipboard" ]; then if [ "$choice" == "clipboard" ]; then
printf "$url" | xclip -selection clipboard printf "$url" | xclip -selection clipboard