Initial commit

This commit is contained in:
2024-01-28 14:26:18 -06:00
commit 9b6eca40d5
27 changed files with 1167 additions and 0 deletions

21
LICENSE Normal file
View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2024 Simmer505
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -0,0 +1,13 @@
[font]
size = 12
[font.italic]
family = "Codelia Nerd Font"
style = "Italic"
[font.normal]
family = "Codelia Nerd Font"
style = "Regular"
[shell]
program = "/bin/zsh"

View File

@@ -0,0 +1,12 @@
font:
normal:
family: Codelia Nerd Font
style: Regular
italic:
family: Codelia Nerd Font
style: Italic
size: 14
shell:
program: /bin/zsh

9
desktop/nvim/init.lua Normal file
View File

@@ -0,0 +1,9 @@
require('config/keymaps')
require('config/settings')
require('config/plugins')
require('config/plugins/lualine')
require('config/plugins/lspconfig')
local vimscriptpath = vim.fn.stdpath("config") .. "/lua/config/vimscript/"
vim.cmd('source' .. vimscriptpath .. 'init.vim')

View File

@@ -0,0 +1,10 @@
vim.g.mapleader=','
vim.keymap.set('n', '<C-h>', '<C-w>h')
vim.keymap.set('n', '<C-j>', '<C-w>j')
vim.keymap.set('n', '<C-k>', '<C-w>k')
vim.keymap.set('n', '<C-l>', '<C-w>l')
vim.keymap.set('n', '<leader>ff', ':FzfLua files<CR>')
vim.keymap.set('n', '<leader>fb', ':FzfLua buffers<CR>')
vim.keymap.set('n', '<leader>rg', ':FzfLua grep<CR>')

View File

@@ -0,0 +1,44 @@
local plugins = {
'rebelot/kanagawa.nvim',
'nvim-lualine/lualine.nvim',
'kyazdani42/nvim-web-devicons',
'kylechui/nvim-surround',
{
'ibhagwan/fzf-lua',
config = function()
require('fzf-lua').setup({'skim'})
end
},
'neovim/nvim-lspconfig',
'hrsh7th/nvim-cmp',
'hrsh7th/cmp-nvim-lsp',
'hrsh7th/cmp-path',
'rust-lang/rust.vim',
{
'windwp/nvim-autopairs',
event = 'InsertEnter',
opts={},
},
}
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable", -- latest stable release
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
require("lazy").setup(plugins, opts)

View File

@@ -0,0 +1,38 @@
local capabilities = require('cmp_nvim_lsp').default_capabilities()
local lspconfig = require('lspconfig')
vim.lsp.set_log_level('debug')
local servers = {'ccls', 'rust_analyzer'}
for _, lsp in ipairs(servers) do
lspconfig[lsp].setup {
capabilities = capabilities
}
end
local cmp = require 'cmp'
cmp.setup {
mapping = cmp.mapping.preset.insert({
['<Tab>'] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
else
fallback()
end
end, { 'i', 's' }),
['<S-Tab>'] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
else
fallback()
end
end, { 'i', 's' }),
}),
sources = {
{ name = 'nvim_lsp' },
{ name = 'path' }
},
}

View File

@@ -0,0 +1,36 @@
require('lualine').setup {
options = {
icons_enabled = true,
theme = 'wombat',
component_separators = { left = '', right = ''},
section_separators = { left = '', right = ''},
disabled_filetypes = {},
always_divide_middle = true,
globalstatus = true,
},
sections = {
lualine_a = {'mode'},
lualine_b = {'branch', 'diff', 'diagnostics'},
lualine_c = {'filename'},
lualine_x = {'encoding', 'fileformat', 'filetype'},
lualine_y = {'progress'},
lualine_z = {'location'}
},
inactive_sections = {
lualine_a = {},
lualine_b = {},
lualine_c = {'filename'},
lualine_x = {'location'},
lualine_y = {},
lualine_z = {}
},
tabline = {
lualine_a = {'buffers'},
lualine_b = {'branch'},
lualine_c = {'filename'},
lualine_x = {},
lualine_y = {},
lualine_z = {'tabs'}
},
extensions = {}
}

View File

@@ -0,0 +1,37 @@
vim.opt.cursorline=true
vim.opt.relativenumber=true
vim.opt.number=true
vim.opt.scrolloff=10
vim.opt.autoindent=true
vim.opt.expandtab=true
vim.opt.softtabstop=4
vim.opt.shiftwidth=4
vim.opt.shiftround=true
vim.opt.backspace={'indent','eol','start'}
vim.opt.hidden=true
vim.opt.laststatus=2
vim.opt.display='lastline'
vim.opt.showmode=true
vim.opt.showcmd=true
vim.opt.incsearch=true
vim.opt.ignorecase=true
vim.opt.smartcase=true
vim.opt.ttyfast=true
vim.opt.updatetime=300
vim.opt.splitright=true
vim.opt.wrapscan=true
vim.opt.report=0
vim.opt.list=true
vim.g['loaded_perl_provider']=0
vim.g['python3_host_prog']='/usr/bin/python'

View File

@@ -0,0 +1,9 @@
filetype plugin indent on
syntax on
colorscheme kanagawa
if has('multi_byte') && &encoding ==# 'utf-8'
let &listchars = 'tab:▸ ,extends:,precedes:,nbsp:±'
else
let &listchars = 'tab:> ,extends:>,precedes:<,nbsp:.'
endif

77
desktop/rofi/config.rasi Normal file
View File

@@ -0,0 +1,77 @@
configuration {
display-drun: "Applications:";
display-window: "Windows:";
drun-display-format: "{name}";
font: "JetBrainsMono Nerd Font Medium 10";
modi: "run,drun";
}
@theme "/dev/null"
* {
bg: #2f343f;
bg-alt: #444b6a;
fg: #f3f4f5;
fg-alt: #787c99;
background-color: @bg;
border: 0;
margin: 0;
padding: 0;
spacing: 0;
}
window {
width: 30%;
}
element {
padding: 8 0;
text-color: @fg-alt;
}
element selected {
text-color: @fg;
}
element-text {
background-color: inherit;
text-color: inherit;
vertical-align: 0.5;
}
element-icon {
size: 30;
}
entry {
background-color: @bg-alt;
padding: 12;
text-color: @fg;
}
inputbar {
children: [prompt, entry];
}
listview {
padding: 8 12;
background-color: @bg;
columns: 1;
lines: 8;
}
mainbox {
background-color: @bg;
children: [inputbar, listview];
}
prompt {
background-color: @bg-alt;
enabled: true;
padding: 12 0 0 12;
text-color: @fg;
}

287
desktop/sway/config Normal file
View File

@@ -0,0 +1,287 @@
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
default_border pixel 5
default_floating_border pixel 5
# Use pactl to adjust volume in PulseAudio.
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5% && $refresh_i3status
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
bindsym XF86AudioPlay exec dbus-send --print-reply --dest=org.mpris.MediaPlayer2.Feishin /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause
# bindsym XF86AudioPlay exec python3 /home/eesim/Scripts/MuteMusic.py
bindsym XF86AudioPause exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym $mod+Shift+o exec swaymsg "output * dpms on"
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
bindsym $mod+Return exec --no-startup-id alacritty
bindsym $mod+Control+f exec MOZ_ENABLE_WAYLAND=1 firefox
bindsym $mod+Control+s exec steam
bindsym $mod+Control+t exec thunar
bindsym $mod+Control+d exec discord
bindsym $mod+Control+x exec strawberry
bindsym $mod+Control+q exec qbittorrent
bindsym $mod+Control+h exec helvum
bindsym $mod+Control+p exec pavucontrol
# kill focused window
bindsym $mod+Shift+q kill
# take screenshot
bindsym $mod+Shift+s exec flameshot gui
# change focus
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l 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+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l 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+b 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
# 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"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
set $MonitorA "DP-1"
set $MonitorB "HDMI-A-1"
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
workspace $ws1 output $MonitorA
workspace $ws2 output $MonitorA
workspace $ws3 output $MonitorA
workspace $ws4 output $MonitorB
workspace $ws5 output $MonitorB
workspace $ws6 output $MonitorB
workspace $ws7 output $MonitorB
workspace $ws8 output $MonitorB
workspace $ws9 output $MonitorB
workspace $ws10 output $MonitorB
set $opacity 0.9
for_window [app_id="de.shorsh.discord-screenaudio"] opacity $opacity
for_window [class="discord"] opacity $opacity
for_window [app_id="Alacritty"] opacity $opacity
for_window [app_id="org.qbittorrent.qBittorrent"] opacity $opacity
for_window [class="gamescope"] fullscreen
for_window [app_id="gamescope"] fullscreen
for_window [app_id="mpv"] fullscreen
# Workspace 1
# Workspace 2
assign [app_id="mpv"] $ws2
# Workspace 3
assign [class="steam"] $ws3
assign [class="gamescope"] $ws3
assign [app_id="gamescope"] $ws3
# Workspace 4
assign [app_id="firefox"] $ws4
# Workspace 5
assign [app_id="de.shorsh.discord-screenaudio"] $ws5
assign [class="discord"] $ws5
# Workspace 6
assign [app_id="com.obsproject.Studio"] $ws6
# Workspace 7
assign [class="Sonixd"] $ws7
assign [app_id="org.strawberrymusicplayer.strawberry"] $ws7
# Workspace 8
assign [app_id="com.github.wwmm.easyeffects"] $ws8
assign [app_id="org.pipewire.Helvum"] $ws8
assign [app_id="pavucontrol"] $ws8
# Workspace 9
assign [app_id="org.qbittorrent.qBittorrent"] $ws9
assign [app_id="transmission-qt"] $ws9
# Workspace 10
assign [app_id="python3"] $ws10
assign [class="steam_proton"] $ws10
# 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 swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg 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 windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym h resize shrink width 10 px
bindsym j resize grow height 10 px
bindsym k resize shrink height 10 px
bindsym l resize grow width 10 px
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px
bindsym Down resize grow height 10 px
bindsym Up resize shrink height 10 px
bindsym Right resize grow width 10 px
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
set $bg-color #58536d
set $inactive-bg-color #2f343f
set $text-color #f3f4f5
set $inactive-text-color #676E7D
set $urgent-bg-color #E53935
# window colors
# border background text indicator
client.focused $bg-color $bg-color $text-color #4B5177
client.unfocused $inactive-bg-color $inactive-bg-color $inactive-text-color #4B5177
client.focused_inactive $inactive-bg-color $inactive-bg-color $inactive-text-color #4B5177
client.urgent $urgent-bg-color $urgent-bg-color $text-color #4B5177
default_border pixel 6
gaps inner 10
gaps outer -5
smart_gaps on
smart_gaps inverse_outer
bar {
swaybar_command waybar
}
bindsym $mod+space exec rofi --no-startup-id -show drun
# Set Monitors
output DP-1 mode 3440x1440@144Hz pos 0 0 scale 1
output HDMI-A-1 mode 1920x1080@75Hz pos 3440 0
exec --no-startup-id openrgb --startminimized
exec --no-startup-id sway-audio-idle-inhibit
exec --no-startup-id ydotoold
exec --no-startup-id easyeffects --gapplication-service
exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec --no-startup-id swayidle -w \
timeout 300 'swaymsg "output * dpms off"' \
resume '/home/eesim/Scripts/ResumeMonitor.sh'
exec vorta
exec MOZ_ENABLE_WAYLAND=1 firefox
exec discord
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
exec sleep 0.2 && swww init
exec sleep 0.3 && swww img -o DP-1 /home/eesim/Pictures/UWWallpaper.png
exec sleep 0.3 && swww img -o HDMI-A-1 /home/eesim/Pictures/169Wallpaper.png

20
desktop/tmux/.tmux.conf Normal file
View File

@@ -0,0 +1,20 @@
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
unbind-key '"'
unbind-key %
bind-key | split-window -h -c "#{pane_current_path}"
bind-key - split-window -v -c "#{pane_current_path}"
bind-key h select-pane -L
bind-key j select-pane -D
bind-key k select-pane -U
bind-key l select-pane -R
bind-key -r H resize-pane -L 5
bind-key -r J resize-pane -D 5
bind-key -r K resize-pane -U 5
bind-key -r L resize-pane -R 5

View File

@@ -0,0 +1,3 @@
import = [
"~/.config/alacritty/themes/AyuDark.toml"
]

11
laptop/nvim/init.lua Normal file
View File

@@ -0,0 +1,11 @@
require('config/keymaps')
require('config/settings')
require('config/plugins')
require('config/plugins/coc')
require('config/plugins/lualine')
require('config/plugins/ale')
require('config/plugins/nerdtree')
local vimscriptpath = vim.fn.stdpath("config") .. "/lua/config/vimscript/"
vim.cmd('source' .. vimscriptpath .. 'init.vim')

View File

@@ -0,0 +1,6 @@
vim.g.mapleader=','
vim.keymap.set('n', '<C-h>', '<C-w>h')
vim.keymap.set('n', '<C-j>', '<C-w>j')
vim.keymap.set('n', '<C-k>', '<C-w>k')
vim.keymap.set('n', '<C-l>', '<C-w>l')

View File

@@ -0,0 +1 @@
vim.g['ale_linters']={ ['cs'] = 'OmniSharp' }

View File

@@ -0,0 +1 @@
vim.g['AutoPairsFlyMode']=0

View File

@@ -0,0 +1,10 @@
local keyset = vim.keymap.set
function _G.check_back_space()
local col = vim.fn.col('.') - 1
return col == 0 or vim.fn.getline('.'):sub(col, col):match('%s') ~= nil
end
local opts = {silent = true, noremap = true, expr = true, replace_keycodes = false}
keyset("i", "<TAB>", 'coc#pum#visible() ? coc#pum#next(1) : v:lua.check_back_space() ? "<TAB>" : coc#refresh()', opts)
keyset("i", "<S-TAB>", [[coc#pum#visible() ? coc#pum#prev(1) : "\<C-h>"]], opts)

View File

@@ -0,0 +1,35 @@
local plugins = {
'nvim-lualine/lualine.nvim',
'kyazdani42/nvim-web-devicons',
{'neoclide/coc.nvim',
branch = 'release'},
'navarasu/onedark.nvim',
'tpope/vim-surround',
'godlygeek/tabular',
'OmniSharp/omnisharp-vim',
'dense-analysis/ale',
{
'windwp/nvim-autopairs',
event = 'InsertEnter',
opts={},
},
'preservim/nerdtree',
'junegunn/fzf.vim',
'junegunn/fzf',
'rust-lang/rust.vim'
}
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable", -- latest stable release
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
require("lazy").setup(plugins, opts)

View File

@@ -0,0 +1,36 @@
require('lualine').setup {
options = {
icons_enabled = true,
theme = 'wombat',
component_separators = { left = '', right = ''},
section_separators = { left = '', right = ''},
disabled_filetypes = {},
always_divide_middle = true,
globalstatus = true,
},
sections = {
lualine_a = {'mode'},
lualine_b = {'branch', 'diff', 'diagnostics'},
lualine_c = {'filename'},
lualine_x = {'encoding', 'fileformat', 'filetype'},
lualine_y = {'progress'},
lualine_z = {'location'}
},
inactive_sections = {
lualine_a = {},
lualine_b = {},
lualine_c = {'filename'},
lualine_x = {'location'},
lualine_y = {},
lualine_z = {}
},
tabline = {
lualine_a = {'buffers'},
lualine_b = {'branch'},
lualine_c = {'filename'},
lualine_x = {},
lualine_y = {},
lualine_z = {'tabs'}
},
extensions = {}
}

View File

@@ -0,0 +1,6 @@
vim.keymap.set('n', '<leader>nt', ':NERDTreeToggle<CR>')
vim.cmd[[
" Close the tab if NERDTree is the only window remaining in it.
autocmd BufEnter * if winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif
]]

View File

@@ -0,0 +1,37 @@
vim.opt.cursorline=true
vim.opt.relativenumber=true
vim.opt.number=true
vim.opt.scrolloff=10
vim.opt.autoindent=true
vim.opt.expandtab=true
vim.opt.softtabstop=4
vim.opt.shiftwidth=4
vim.opt.shiftround=true
vim.opt.backspace={'indent','eol','start'}
vim.opt.hidden=true
vim.opt.laststatus=2
vim.opt.display='lastline'
vim.opt.showmode=true
vim.opt.showcmd=true
vim.opt.incsearch=true
vim.opt.ignorecase=true
vim.opt.smartcase=true
vim.opt.ttyfast=true
vim.opt.updatetime=300
vim.opt.splitright=true
vim.opt.wrapscan=true
vim.opt.report=0
vim.opt.list=true
vim.g['loaded_perl_provider']=0
vim.g['python3_host_prog']='/usr/bin/python'

View File

@@ -0,0 +1,8 @@
filetype plugin indent on
syntax on
colorscheme onedark
if has('multi_byte') && &encoding ==# 'utf-8'
let &listchars = 'tab:▸ ,extends:,precedes:,nbsp:±'
else
let &listchars = 'tab:> ,extends:>,precedes:<,nbsp:.'
endif

77
laptop/rofi/config.rasi Normal file
View File

@@ -0,0 +1,77 @@
configuration {
display-drun: "Applications:";
display-window: "Windows:";
drun-display-format: "{name}";
font: "JetBrainsMono Nerd Font Medium 10";
modi: "run,drun";
}
@theme "/dev/null"
* {
bg: #2f343f;
bg-alt: #444b6a;
fg: #f3f4f5;
fg-alt: #787c99;
background-color: @bg;
border: 0;
margin: 0;
padding: 0;
spacing: 0;
}
window {
width: 30%;
}
element {
padding: 8 0;
text-color: @fg-alt;
}
element selected {
text-color: @fg;
}
element-text {
background-color: inherit;
text-color: inherit;
vertical-align: 0.5;
}
element-icon {
size: 30;
}
entry {
background-color: @bg-alt;
padding: 12;
text-color: @fg;
}
inputbar {
children: [prompt, entry];
}
listview {
padding: 8 12;
background-color: @bg;
columns: 1;
lines: 8;
}
mainbox {
background-color: @bg;
children: [inputbar, listview];
}
prompt {
background-color: @bg-alt;
enabled: true;
padding: 12 0 0 12;
text-color: @fg;
}

202
laptop/sway/config Normal file
View File

@@ -0,0 +1,202 @@
### Variables
set $mod Mod4
set $left h
set $down j
set $up k
set $right l
set $term alacritty
set $menu rofi -show drun
### Output configuration
output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
output eDP-1 resolution 1920x1200 pos 1920,0
output HDMI-A-1 resolution 1920x1080 pos 0,0
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
### Idle configuration
exec swayidle -w \
timeout 300 'swaylock -f -c 000000' \
timeout 420 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
timeout 600 'systemctl suspend' \
before-sleep 'swaylock -f -c 000000'
### Input configuration
input type:touchpad {
tap enabled
natural_scroll enabled
scroll_factor 0.5
accel_profile adaptive
pointer_accel 0.1
}
### Key bindings
bindsym XF86MonBrightnessDown exec light -U 5
bindsym XF86MonBrightnessUp exec light -A 5
bindsym $mod+Shift+s exec grim -g "$(slurp)"
floating_modifier $mod normal
# Start a terminal
bindsym $mod+Return exec $term
# Kill focused window
bindsym $mod+Shift+q kill
# Start your launcher
bindsym $mod+Space exec $menu
# Reload the configuration file
bindsym $mod+Shift+c reload
# Exit sway (logs you out of your Wayland session)
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
# Move your focus around
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# Or use $mod+[up|down|left|right]
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Move the focused window with the same, but add Shift
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# Ditto, with arrow 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
# Switch to workspace
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10
# Move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10
# Horizontal and vertical splits
bindsym $mod+b splith
bindsym $mod+v splitv
# Switch the current container between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# Make the current focus fullscreen
bindsym $mod+f fullscreen
# Toggle the current focus between tiling and floating mode
bindsym $mod+Shift+p floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+p focus mode_toggle
# Move focus to the parent container
bindsym $mod+a focus parent
### Scratchpad:
# 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
### Resizing containers:
mode "resize" {
bindsym $left resize shrink width 20px
bindsym $down resize grow height 20px
bindsym $up resize shrink height 20px
bindsym $right resize grow width 20px
bindsym Left resize shrink width 20px
bindsym Down resize grow height 20px
bindsym Up resize shrink height 20px
bindsym Right resize grow width 20px
# Return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
### Style
set $bg-color #58536D
set $inactive-bg-color #2f343f
set $text-color #f3f4f5
set $inactive-text-color #676E7D
set $urgent-bg-color #E53935
# window colors
# border background text indicator
client.focused $bg-color $bg-color $text-color #4B5177
client.unfocused $inactive-bg-color $inactive-bg-color $inactive-text-color #4B5177
client.focused_inactive $inactive-bg-color $inactive-bg-color $inactive-text-color #4B5177
client.urgent $urgent-bg-color $urgent-bg-color $text-color #4B5177
default_border pixel 4
font pango:SourceCodePro Medium 0
### Status Bar:
bar {
swaybar_command waybar
}
include /etc/sway/config.d/*

121
portable_vimrc Normal file
View File

@@ -0,0 +1,121 @@
filetype plugin indent on
syntax on
"
" Settings
"
set nocompatible
" Scroll when nearing edge of screen
set scrolloff=10
" Read file when edited outside of vim
set autoread
" Hide buffers instead of unload
set hidden
" Autoindent with 4 spaces
set autoindent
set expandtab
set softtabstop=4
set shiftwidth=4
set shiftround
" Show relative numbers and cursorline
set number
set relativenumber
" Search
" Highlight / Ignore Case / Wrap
set incsearch
set hlsearch
set ignorecase
set smartcase
set wrapscan
" Set cursor modes
if exists('$TMUX')
let &t_SI = "\ePtmux;\e\e[6 q\e\\"
let &t_SR = "\ePtmux;\e\e[4 q\e\\"
let &t_EI = "\ePtmux;\e\e[2 q\e\\"
elseif &term =~ "xterm\\|rxvt\\|alacritty"
let &t_SI = "\e[6 q"
let &t_SR = "\e[4 q"
let &t_EI = "\e[2 q"
endif
" Extras
set wildmenu
set backspace=indent,eol,start
set laststatus=2
set display=lastline
set showmode
set showcmd
set updatetime=300
set splitright
set report=0
"
" Keybindings
"
" Make Shift Tab reverse tab
inoremap <S-Tab> <C-d>
" Window Movement Bindings
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l
"
" Plugins
"
let data_dir = has('nvim') ? stdpath('data') . '/site' : '~/.vim'
if empty(glob(data_dir . '/autoload/plug.vim'))
silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
endif
call plug#begin()
Plug 'jiangmiao/auto-pairs'
Plug 'tpope/vim-surround'
Plug 'joshdick/onedark.vim'
Plug 'sheerun/vim-polyglot'
Plug 'vim-airline/vim-airline'
Plug 'dense-analysis/ale'
call plug#end()
let g:ale_completion_enabled=1
let g:airline_section_z=airline#section#create_right(['ln: %l/%c', '%p%%'])
" Setup colorscheme
if (empty($TMUX))
if (has("nvim"))
let $NVIM_TUI_ENABLE_TRUE_COLOR=1
endif
if (has("termguicolors"))
set termguicolors
endif
endif
colorscheme onedark