Compare commits

...

5 Commits

11 changed files with 401 additions and 56 deletions

View File

@@ -54,14 +54,12 @@ end
local function read_theme()
local theme = "theme_dark.lua"
local f = io.open(os.getenv('HOME') .. '/.config/alacritty/alacritty.toml')
local f = io.open(os.getenv('HOME') .. '/.lightmode')
if f then
if string.find(f:read('*all'), 'light') then
theme = 'theme_light.lua'
end
f:close()
return theme
end
return theme
end
local theme = read_theme()
@@ -88,7 +86,7 @@ local function switch_theme()
end
-- This is used later as the default terminal and editor to run.
local terminal = "st"
local terminal = "kitty --single-instance --instance-group default"
-- Default modkey.
local modkey = "Mod4"
@@ -242,7 +240,9 @@ local function focus_nth_window (n)
if awful.widget.tasklist.filter.currenttags(c, mouse.screen) then cc[#cc + 1] = c end
end
local new_focused = cc[n]
if new_focused then client.focus = new_focused; new_focused:raise() end
if new_focused then
client.focus = new_focused; new_focused:raise()
end
end
-- {{{ Key bindings
@@ -296,7 +296,7 @@ local globalkeys = gears.table.join(
{ description = "open a terminal", group = "launcher" }),
awful.key({ modkey, "Control", "Shift" }, "s", function() awful.spawn("systemctl suspend") end,
{ description = "open a terminal", group = "launcher" }),
awful.key({ modkey, "Shift" }, "F6", switch_theme,
awful.key({ modkey, "Control", "Shift" }, "t", switch_theme,
{ description = "switch theme", group = "launcher" }),
awful.key({ modkey, }, "q", awesome.restart,
{ description = "reload awesome", group = "awesome" }),
@@ -347,7 +347,7 @@ local globalkeys = gears.table.join(
end,
{ description = "lua execute prompt", group = "awesome" }),
-- Menubar
awful.key({ modkey }, "p", function() awful.spawn("dmenu_run -fn 'FiraCode Nerd Font Ret:size=10'") end,
awful.key({ modkey }, "p", function() awful.spawn("dmenu_run -fn 'HurmitNerdFont:size=16'") end,
{ description = "run command", group = "launcher" })
)

View File

@@ -5,7 +5,7 @@ local dpi = xresources.apply_dpi
local theme = {}
theme.font = "Fira Code Nerd Font 10"
theme.font = "HurmitNerdFont 10"
theme.tasklist_disable_icon = true
theme.wibar_height = 30

View File

@@ -5,7 +5,7 @@ local dpi = xresources.apply_dpi
local theme = {}
theme.font = "Fira Code Nerd Font 10"
theme.font = "HurmitNerdFont 10"
theme.tasklist_disable_icon = true
theme.wibar_height = 30

View File

@@ -1,20 +1,23 @@
font_family FiraCode Nerd
font_family HurmitNerdFont
font_size 11
cursor_blink_interval 0
enable_audio_bell no
visual_bell_duration 1.0
tab_title_template "{fmt.fg.red}{bell_symbol}{activity_symbol}{fmt.fg.tab}{title} {index}"
tab_bar_style powerline
tab_bar_filter session:~ or session:^$
tab_title_template "{index}:{session_name}:{bell_symbol}{activity_symbol}{title}"
tab_powerline_style round
action_alias launch_tab launch --type=tab --cwd=current
open_url_with qutebrowser
action_alias launch_tab_home launch --type tab --cwd=~
kitten_alias hints hints --hints-background-color red --hints-foreground-color white
map ctrl+shift+n launch_tab tmux
map ctrl+shift+t launch_tab tmux attach
map ctrl+shift+s launch_tab zsh
map ctrl+shift+6 no_op
map ctrl+shift+0 nth_window -1
map ctrl+shift+h previous_tab
map ctrl+shift+l next_tab
map ctrl+shift+p goto_tab -1
map ctrl+alt+1 goto_tab 1
map ctrl+alt+2 goto_tab 2
map ctrl+alt+3 goto_tab 3
@@ -24,9 +27,42 @@ map ctrl+alt+6 goto_tab 6
map ctrl+alt+7 goto_tab 7
map ctrl+alt+8 goto_tab 8
map ctrl+alt+9 goto_tab 9
map ctrl+alt+0 goto_tab 10
map ctrl+alt+0 goto_tab -1
map ctrl+alt+h neighboring_window left
map ctrl+alt+j neighboring_window down
map ctrl+alt+k neighboring_window up
map ctrl+alt+l neighboring_window right
map ctrl+alt+a last_used_layout
map ctrl+alt+b goto_layout fat
map ctrl+alt+g goto_layout grid
map ctrl+alt+r goto_layout tall
map ctrl+alt+space goto_session -1
map ctrl+alt+return new_window_with_cwd
map ctrl+alt+d new_tab_with_cwd sh -c 'cd $(kitten choose-file --mode dir) && nvim'
map ctrl+alt+e new_tab_with_cwd nvim
map ctrl+alt+i new_tab_with_cwd lazygit
map ctrl+alt+f new_tab_with_cwd sh -c 'nvim $(kitten choose-file)'
map ctrl+alt+m toggle_layout stack
map ctrl+alt+o goto_session ~/.config/kitty/sessions
map ctrl+alt+p new_tab_with_cwd spf
map ctrl+alt+s launch --stdin-source=@screen_scrollback --type=overlay nvim -R -
map ctrl+alt+w new_window_with_cwd
map ctrl+alt+t new_tab_with_cwd
map ctrl+alt+x close_window_with_confirmation
map ctrl+alt+u>d launch_tab_home sh -c 'cd $(kitten choose-file --mode dir) && nvim'
map ctrl+alt+u>f launch_tab_home sh -c 'nvim $(kitten choose-file)'
map ctrl+alt+v focus_visible_window
map ctrl+alt+y new_window nvim @selection
map ctrl+alt+shift+s save_as_session --base-dir ~/.config/kitty/sessions --match=session:.
map ctrl+alt+shift+t detach_tab
map ctrl+alt+shift+w detach_window
map ctrl+alt+shift+x close_session .
# BEGIN_KITTY_THEME
# Afterglow
# Kanagawa
include current-theme.conf
# END_KITTY_THEME

View File

@@ -13,3 +13,9 @@ vim.opt.timeout = false
vim.o.undofile = true
vim.cmd([[autocmd TermOpen * startinsert]]);
vim.filetype.add({
extension = {
["kitty-session"] = 'kitty',
},
})

View File

@@ -74,6 +74,12 @@ if ok then
set("n", "<leader>ep", function()
builtin.find_files({ cwd = vim.fs.joinpath(vim.fn.stdpath("data"), "site") })
end, { desc = "Telescope find files" })
set("n", "<leader>es", function()
builtin.find_files({ cwd = vim.fs.normalize('~/.config/kitty/sessions') })
end, { desc = "Telescope kitty sessions" })
set("n", "<leader>eS", function()
vim.cmd("Oil " .. vim.fs.normalize('~/.config/kitty/sessions'))
end, { desc = "Telescope kitty sessions (dir)" })
set("n", "<leader>fa", builtin.git_files, { desc = "Telescope nvim package files" })
set("n", "<leader>F", builtin.find_files, { desc = "Telescope find files" })
set("n", "<leader>fh", function()

View File

@@ -72,5 +72,25 @@ tai() {
}
vf() {
if [ "$TERM" = "xterm-kitty" ]; then
local FILE=$(kitten choose-file)
[ -n "$FILE" ] && nvim "$FILE"
else
nvim $(fzf --multi)
fi
}
vd() {
if [ "$TERM" = "xterm-kitty" ]; then
local DIR=$(kitten choose-file --mode dir)
[ -n "$DIR" ] && ( cd "$DIR" && exec nvim )
else
local DIR=$(fzf --walker dir,follow,hidden)
[ -n "$DIR" ] && ( cd "$DIR" && exec nvim )
fi
}
vz() {
local DIR=$(zoxide query -l | fzf --query "$Q")
[ -n "$DIR" ] && ( cd "$DIR" && exec nvim )
}

View File

@@ -0,0 +1,178 @@
##############################################
# #
# Superfile Configuration #
# #
##############################################
# This contains the root config file for superfile! More details can be found at
# https://superfile.dev/configure/superfile-config/.
###############################################################################
# Defaults #
###############################################################################
#-- File Editor
# Default: $EDITOR
editor = "nvim"
#-- Directory Editor
#
dir_editor = "nvim ."
#-- Auto check for update
auto_check_update = false
#-- cd on quit
# Should we cd the shell to the last directory open in superfile when the
# program exits?
cd_on_quit = false
#-- File Preview
# Should we open a file preview by default whenever selection-hovering over a
# file?
default_open_file_preview = true
#-- Image Preview
# Should we open an image preview by default whenever selection-hovering over an
# image?
show_image_preview = true
#-- File Info Footer
# Should we display a footer in the file panel that provides more file information?
show_panel_footer_info = true
#-- Default Directory
# The initial path that the file panel should navigate to when superfile is
# opened. This setting understands relative paths such as ".", "..", etc.
default_directory = "."
#-- File Size Units
# true: SI decimal units of 1000 (kB, MB, GB).
# false: IEC binary units of 1024 (KiB, MiB, GiB).
file_size_use_si = false
#-- Default File Sort Type
# (0: Name, 1: Size, 2: Date Modified, 3: Type).
default_sort_type = 0
#-- Sort Order Reversing
# true: Descending.
# false: Ascending.
sort_order_reversed = false
#-- Case-Sensitive Sorting (only for Name Sort)
# An uppercase "B" comes before a lowercase "a" if true.
case_sensitive_sort = false
#-- Exit Shell on Success
# Whether to exit the shell on successful command execution.
shell_close_on_success = false
#-- Page Scroll Size
# Number of lines to scroll for PgUp/PgDown keys (0: full page, default behavior).
page_scroll_size = 0
#-- Debug Mode
debug = false
#-- Ignore Missing Config Fields
# Whether to silence any warnings about missing config fields.
ignore_missing_fields = false
#-- File Panel Extra Columns Count
# Count of extra columns in file panel in addition to file name. When option equal 0 then feature is disabled.
file_panel_extra_columns = 0
#-- File name width in File Panel
# Percentage of file panel width allocated to file names (25-100). Higher values give more space to names, less to extra columns.
file_panel_name_percent = 50
###############################################################################
# Styling #
###############################################################################
#-- Theme
# Put your theme's name here!
theme = "catppuccin-mocha"
#-- Code Previewer
# Whether to use the builtin syntax highlighting with chroma or use bat. Values: "" for builtin chroma, "bat" for bat
code_previewer = ""
#-- Nerd Fonts Support
# Whether to enable support for Nerd Fonts symbols.
# Requires: Font patched with the Nerd Fonts patch.
nerdfont = true
#-- Show checkbox icons in select mode
# Requires: nerdfont = true
show_select_icons = true
#-- Transparent Background Support
# Set to true to enable background transparency.
# Requires: terminal support for colour transparency
transparent_background = false
#-- File Preview Panel Width
# Width of the file preview panel will be 1/n of the total width.
# Values recommended to be in 210.
# Default (0): Use the same width as file picker panel.
file_preview_width = 0
#-- File Preview Border
# Enable border around the file preview panel for better visual separation.
# Default: false (no border)
enable_file_preview_border = false
#-- Sidebar Width
# If you don't want to display the sidebar, you can input 0 directly.
# Values recommended to be in 520.
sidebar_width = 20
#-- Border
# Make sure to add strings that are exactly one character wide!
# Use ' ' for borderless.
border_top = '─'
border_bottom = '─'
border_left = '│'
border_right = '│'
border_top_left = '╭'
border_top_right = '╮'
border_bottom_left = '╰'
border_bottom_right = '╯'
border_middle_left = '├'
border_middle_right = '┤'
###############################################################################
# Plugins #
###############################################################################
# This section is for using plugins with superfile, external addons that extend
# the default capabilities of the program! More info can be found at
# https://superfile.dev/list/plugin-list/.
#-- Detailed Metadata
# Requires: exiftool
metadata = false
#-- MD5 Checksum Generation
# Requires: md5sum
enable_md5_checksum = false
#
#-- Zoxide Support - Smart directory navigation!
# Requires: zoxide
zoxide_support = true
#-- File opening rules
# Map file extensions to commands used to open them.
# The file path will be appended as the last argument.
# MUST BE IN THE VERY END OF THE FILE BECAUSE TOML CANNOT CLOSE TABLES
# Example:
# png = "feh"
# pdf = "zathura"
# conf = "nvim"
[open_with]
pdf = "zathura"
png = "sxiv"
jpg = "sxiv"

View File

@@ -0,0 +1,98 @@
##############################################
# #
# Superfile vim-like Hotkeys #
# #
##############################################
#-- Maintainer: nonepork <https://github.com/nonepork>
# This contains a hotkey config file for superfile, that's themed around vim
# controls! More details can be found at
# https://superfile.dev/configure/custom-hotkeys/.
###############################################################################
# Global hotkeys #
###############################################################################
# Note: These hotkeys should be unique.
#-- Basic Actions
confirm = ['enter', 'l']
quit = ['ctrl+c', ''] # a.k.a. "theprimeagen troller"
cd_quit = ['Q', '']
#-- Navigation
list_up = ['k', '']
list_down = ['j', '']
page_up = ['pgup','']
page_down = ['pgdown','']
#-- File Panel Controls
create_new_file_panel = ['n', '']
close_file_panel = ['q', '']
next_file_panel = ['tab', 'L']
previous_file_panel = ['shift+tab', 'H']
toggle_file_preview_panel = ['f', '']
open_sort_options_menu = ['o', '']
toggle_reverse_sort = ['R', '']
#-- Focus Manipulation
focus_on_process_bar = ['ctrl+p', '']
focus_on_sidebar = ['ctrl+s', '']
focus_on_metadata = ['ctrl+d', '']
#-- File/Dir Creation/Renaming
file_panel_item_create = ['a', '']
file_panel_item_rename = ['r', '']
#-- Main File Operations
copy_items = ['y', '']
cut_items = ['x', '']
paste_items = ['p', '']
delete_items = ['d', '']
permanently_delete_items = ['D', '']
#-- Archive Manipulation
extract_file = ['ctrl+e', '']
compress_file = ['ctrl+a', '']
#-- Editor Actions
open_file_with_editor = ['e', '']
open_current_directory_with_editor = ['E', '']
#-- Other Actions
pinned_directory = ['P', '']
toggle_dot_file = ['.', '']
change_panel_mode = ['m', '']
open_help_menu = ['?', '']
open_spf_prompt = ['>', '']
open_command_line = [':', '']
open_zoxide = ['z', '']
copy_path = ['Y', '']
copy_present_working_directory = ['c', '']
toggle_footer = ['ctrl+f', '']
###############################################################################
# Typing hotkeys #
###############################################################################
# Note: These hotkeys can override all hotkeys.
confirm_typing = ['enter', '']
cancel_typing = ['esc', '']
###############################################################################
# Mode-Specific Hotkeys #
###############################################################################
# Note: These hotkeys can conflict with other modes, but not with global
# hotkeys.
#-- Normal Mode Actions
parent_directory = ['-', 'h']
search_bar = ['/', '']
#-- Selection Mode Actions
file_panel_select_mode_items_select_down = ['J', '']
file_panel_select_mode_items_select_up = ['K', '']
file_panel_select_all_items = ['A', '']

View File

@@ -28,17 +28,18 @@ xsettingsd &
xsetroot -cursor_name left_ptr
picom -b -I 1 -O 1 -i 1 -e 1 --no-fading-openclose --backend glx || compton -b --no-fading-openclose
if which dwm > /dev/null; then
lupan-clock &
exec dwm
fi
picom -b -I 1 -O 1 -e 1 --no-fading-openclose --backend glx || compton -b --no-fading-openclose
if which awesome > /dev/null; then
exec awesome
fi
if which dwm > /dev/null; then
dunst &
lupan-clock &
exec dwm
fi
if which dk > /dev/null; then
for m in $(polybar --list-monitors | cut -d: -f1); do
MONITOR=$m polybar --reload bar &

View File

@@ -46,9 +46,9 @@ fi
XSET=$(readlink -e ~/.config/xsettingsd/xsettingsd.conf)
if [ "$THEME" = dark ]; then
kitten themes --reload-in=all Afterglow
kitten themes --reload-in=all Kanagawa
elif [ "$THEME" = light ]; then
kitten themes --reload-in=all One Half Light
kitten themes --reload-in=all Dayfox
fi
# GTK