initial commit
This commit is contained in:
commit
f637529a8d
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
/bash/.env
|
||||
/tmux/.config/tmux/plugins/
|
||||
__pycache__
|
2
Repos/.directory
Normal file
2
Repos/.directory
Normal file
@ -0,0 +1,2 @@
|
||||
[Desktop Entry]
|
||||
Icon=folder-git
|
42
bash/.bash-prompt/main.py
Normal file
42
bash/.bash-prompt/main.py
Normal file
@ -0,0 +1,42 @@
|
||||
import re
|
||||
import subprocess
|
||||
|
||||
from utils import (
|
||||
colors,
|
||||
status_indicators,
|
||||
)
|
||||
|
||||
BASH_PATH: str = fr"{colors.CYAN}{colors.BOLD}\w"
|
||||
POINTER: str = f"{colors.YELLOW}-> {colors.RESET}"
|
||||
|
||||
|
||||
def prompt() -> None:
|
||||
git_status: subprocess.CompletedProcess[str] = subprocess.run(
|
||||
['git', 'status'],
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE,
|
||||
text=True,
|
||||
)
|
||||
|
||||
if not git_status.stderr.strip():
|
||||
git_branch: str = re.findall( r'([a-zA-Z0-9-\/()]+)', git_status.stdout.strip())[2]
|
||||
|
||||
for key in status_indicators.keys():
|
||||
if key in git_status.stdout.strip():
|
||||
color: str = status_indicators[key]['color']
|
||||
icon: str = status_indicators[key]['icon']
|
||||
|
||||
git_branch_color: str = f"{color}({git_branch}{icon})"
|
||||
print(f"{BASH_PATH} {git_branch_color} {POINTER}")
|
||||
exit(0)
|
||||
|
||||
print(f"{BASH_PATH} {POINTER}")
|
||||
exit(0)
|
||||
|
||||
|
||||
def main():
|
||||
prompt()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
2
bash/.bash-prompt/utils/__init__.py
Normal file
2
bash/.bash-prompt/utils/__init__.py
Normal file
@ -0,0 +1,2 @@
|
||||
from .colors import *
|
||||
from .status_indicators import *
|
16
bash/.bash-prompt/utils/colors.py
Normal file
16
bash/.bash-prompt/utils/colors.py
Normal file
@ -0,0 +1,16 @@
|
||||
# ANSI color codes in bash format
|
||||
|
||||
def template(color_code: int) -> str:
|
||||
return fr"\[\033[{color_code}m\]"
|
||||
|
||||
|
||||
RESET = template(0)
|
||||
BOLD = template(1)
|
||||
RED = template(31)
|
||||
GREEN = template(32)
|
||||
YELLOW = template(33)
|
||||
BLUE = template(34)
|
||||
MAGENTA = template(35)
|
||||
CYAN = template(36)
|
||||
WHITE = template(37)
|
||||
DEFAULT = template(39)
|
29
bash/.bash-prompt/utils/status_indicators.py
Normal file
29
bash/.bash-prompt/utils/status_indicators.py
Normal file
@ -0,0 +1,29 @@
|
||||
from utils import colors
|
||||
from typing import Dict
|
||||
|
||||
status_indicators: Dict[str, Dict[str, str]] = {
|
||||
'working tree clean': {
|
||||
'color': colors.GREEN,
|
||||
'icon': '',
|
||||
},
|
||||
'not staged': {
|
||||
'color': colors.YELLOW,
|
||||
'icon': ' *',
|
||||
},
|
||||
'to be committed': {
|
||||
'color': colors.YELLOW,
|
||||
'icon': ' +',
|
||||
},
|
||||
'is behind': {
|
||||
'color': colors.YELLOW,
|
||||
'icon': ' ',
|
||||
},
|
||||
'is ahead': {
|
||||
'color': colors.YELLOW,
|
||||
'icon': ' ',
|
||||
},
|
||||
'fix conflicts': {
|
||||
'color': colors.RED,
|
||||
'icon': ' ',
|
||||
},
|
||||
}
|
59
bash/.bash_aliases
Normal file
59
bash/.bash_aliases
Normal file
@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
|
||||
# General Aliases
|
||||
alias ll='ls -la'
|
||||
alias update='sudo apt update && sudo apt upgrade -y && flatpak update -y'
|
||||
alias R='cd ~/Repos/'
|
||||
|
||||
# Git Config User
|
||||
function gitConfigUser() {
|
||||
git config user.email $1
|
||||
git config user.name "Kendall Whitman"
|
||||
}
|
||||
|
||||
alias gcp='gitConfigUser "kendall@kendallwhitman.dev"'
|
||||
alias gcw='gitConfigUser "kendall.whitman@nbcuni.com"'
|
||||
|
||||
# Git Formatter
|
||||
alias gft='python3 ~/.git-formatter/main.py'
|
||||
|
||||
# Git Aliases
|
||||
alias ga='git add'
|
||||
alias gaa='git add .'
|
||||
alias gb='git branch'
|
||||
alias gc='git clone'
|
||||
alias gcb='git checkout -b'
|
||||
alias gco='git checkout'
|
||||
alias gcmsg='gft -m'
|
||||
alias gd='git diff'
|
||||
alias gf='git fetch'
|
||||
alias gl='git pull'
|
||||
alias gp='git push'
|
||||
alias gpu='git push -u origin $(git branch --show-current)'
|
||||
alias grs='git restore --staged'
|
||||
alias gst='git status'
|
||||
alias gwa='gft -i'
|
||||
alias gwr='gft -r'
|
||||
|
||||
#NBC Aliases
|
||||
alias nbc='tmuxp load phoenix ramen amp amped-up hfs omega'
|
||||
alias p='cd ~/Repos/NBC/WEB.Phoenix.git/'
|
||||
alias r='cd ~/Repos/NBC/nextjs-ramen.git/'
|
||||
alias h='cd ~/Repos/NBC/header-footer-service.git/'
|
||||
alias o='cd ~/Repos/NBC/omega-player.git/'
|
||||
alias amp='cd ~/Repos/NBC/WEB.AMP.git/'
|
||||
alias amped='cd ~/Repos/NBC/amped-up.git/'
|
||||
|
||||
# NPM Alias
|
||||
alias ns='nvm use && npm start'
|
||||
alias nd='nvm use && npm run dev'
|
||||
|
||||
# OpenRGB
|
||||
alias rgb='sudo /media/kendall/1TB/AppImages/OpenRGB/OpenRGB.AppImage'
|
||||
|
||||
# Bash Prompt
|
||||
function bashPrompt() {
|
||||
PS1=$(python3 ~/.dotfiles/bash/.bash-prompt/main.py)
|
||||
}
|
||||
|
||||
PROMPT_COMMAND=bashPrompt
|
36
bash/.git-formatter/config.py
Normal file
36
bash/.git-formatter/config.py
Normal file
@ -0,0 +1,36 @@
|
||||
NBC = {
|
||||
'branch_format': "BRANCH_TYPE/BRANCH_ID",
|
||||
'commit_format': "BRANCH_ID",
|
||||
'types': {
|
||||
'Feature': 'feature',
|
||||
'Fix': 'fix',
|
||||
'Refactor': 'refactor',
|
||||
'Release': 'release',
|
||||
'Documentation': 'docs',
|
||||
}
|
||||
}
|
||||
|
||||
DEFAULT = {
|
||||
'branch_format': "BRANCH_TYPE(BRANCH_ID)",
|
||||
'commit_format': "BRANCH_TYPE(BRANCH_ID)",
|
||||
'types': {
|
||||
'Feature': 'feat',
|
||||
'Fix': 'fix',
|
||||
'Refactor': 'refactor',
|
||||
'Release': 'release',
|
||||
'Documentation': 'docs',
|
||||
}
|
||||
}
|
||||
|
||||
REPO_FORMATS = {
|
||||
'amped-up.git': NBC,
|
||||
'nextjs-ramen.git': NBC,
|
||||
'omega-player.git': DEFAULT,
|
||||
'WEB.AMP.git': NBC,
|
||||
'WEB.Phoenix.git': NBC,
|
||||
'header-footer-service.git': NBC,
|
||||
'ham-search': DEFAULT,
|
||||
}
|
||||
|
||||
if __name__ == '__main__':
|
||||
REPO_FORMATS
|
98
bash/.git-formatter/main.py
Normal file
98
bash/.git-formatter/main.py
Normal file
@ -0,0 +1,98 @@
|
||||
import argparse
|
||||
import sys
|
||||
from scripts import (
|
||||
add_worktree,
|
||||
remove_worktree,
|
||||
add_commit,
|
||||
new_branch,
|
||||
)
|
||||
|
||||
|
||||
def help_menu():
|
||||
parser = argparse.ArgumentParser(
|
||||
add_help=False,
|
||||
description="Git Formatter",
|
||||
prog="gft",
|
||||
formatter_class=argparse.RawTextHelpFormatter
|
||||
)
|
||||
|
||||
worktree_group = parser.add_argument_group('Worktree Options')
|
||||
branch_group = parser.add_argument_group('Branch Options')
|
||||
commit_group = parser.add_argument_group('Commit Options')
|
||||
options_group = parser.add_argument_group('General Options')
|
||||
|
||||
worktree_group.add_argument(
|
||||
'-a',
|
||||
default=False,
|
||||
metavar="worktree",
|
||||
nargs='?',
|
||||
help="Create a git worktree",
|
||||
)
|
||||
|
||||
worktree_group.add_argument(
|
||||
'-i',
|
||||
default=False,
|
||||
metavar="worktree",
|
||||
nargs='?',
|
||||
help="Create a git worktree and automatically install npm packages",
|
||||
)
|
||||
|
||||
worktree_group.add_argument(
|
||||
'-r',
|
||||
default=False,
|
||||
metavar="worktree",
|
||||
nargs='?',
|
||||
help="Remove a git worktree",
|
||||
)
|
||||
|
||||
branch_group.add_argument(
|
||||
'-b',
|
||||
default=False,
|
||||
metavar="branch",
|
||||
nargs='?',
|
||||
help="Create a branch",
|
||||
)
|
||||
|
||||
commit_group.add_argument(
|
||||
'-m',
|
||||
default=False,
|
||||
metavar="message",
|
||||
nargs='?',
|
||||
help="Commit changes with a formatted message",
|
||||
)
|
||||
|
||||
options_group.add_argument(
|
||||
'-h',
|
||||
'--help',
|
||||
action='help',
|
||||
help='Show this help menu'
|
||||
)
|
||||
|
||||
if len(sys.argv) == 1:
|
||||
parser.print_help()
|
||||
exit(0)
|
||||
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
def main():
|
||||
args = help_menu()
|
||||
|
||||
if args.a is not False:
|
||||
add_worktree(args.a)
|
||||
|
||||
if args.i is not False:
|
||||
add_worktree(args.i, True)
|
||||
|
||||
if args.r is not False:
|
||||
remove_worktree(args.r)
|
||||
|
||||
if args.b is not False:
|
||||
new_branch()
|
||||
|
||||
if args.m is not False:
|
||||
add_commit(args.m)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
8
bash/.git-formatter/scripts/__init__.py
Normal file
8
bash/.git-formatter/scripts/__init__.py
Normal file
@ -0,0 +1,8 @@
|
||||
from .worktree import (
|
||||
add_worktree,
|
||||
remove_worktree,
|
||||
)
|
||||
from .commit import add_commit
|
||||
from .branch import (
|
||||
new_branch,
|
||||
)
|
9
bash/.git-formatter/scripts/branch.py
Normal file
9
bash/.git-formatter/scripts/branch.py
Normal file
@ -0,0 +1,9 @@
|
||||
from utils.branch_details import branch_details
|
||||
from utils.format import format_branch
|
||||
from utils.git_commands import git_checkout_branch
|
||||
|
||||
|
||||
def new_branch():
|
||||
branch_type, branch_id = branch_details()
|
||||
branch_name = format_branch(branch_type, branch_id)
|
||||
git_checkout_branch(branch_name)
|
19
bash/.git-formatter/scripts/commit.py
Normal file
19
bash/.git-formatter/scripts/commit.py
Normal file
@ -0,0 +1,19 @@
|
||||
from utils.format import format_commit
|
||||
from utils.git_commands import git_commit
|
||||
from utils.messages import (
|
||||
title,
|
||||
instructions,
|
||||
commit_instructions,
|
||||
)
|
||||
|
||||
|
||||
def add_commit(message=''):
|
||||
commit_title = f"{format_commit()}: "
|
||||
commit_message = message
|
||||
|
||||
if commit_message == '':
|
||||
title("Commit Message")
|
||||
instructions(commit_instructions)
|
||||
commit_message = input(commit_title)
|
||||
|
||||
git_commit(f"{commit_title}{commit_message}")
|
60
bash/.git-formatter/scripts/worktree.py
Normal file
60
bash/.git-formatter/scripts/worktree.py
Normal file
@ -0,0 +1,60 @@
|
||||
import os
|
||||
import subprocess
|
||||
from .branch import branch_details
|
||||
from utils.format import format_branch
|
||||
from utils.git_commands import (
|
||||
git_add_worktree,
|
||||
git_remove_worktree,
|
||||
)
|
||||
from utils.messages import (
|
||||
title,
|
||||
instructions,
|
||||
worktree_instructions,
|
||||
)
|
||||
|
||||
|
||||
def add_worktree(worktree=None, auto_install=False):
|
||||
|
||||
# Check for bare repo
|
||||
try:
|
||||
with open('config') as git_config:
|
||||
content = ' '.join(git_config.readlines())
|
||||
if 'bare = true' in content:
|
||||
|
||||
# Ask for worktree folder name
|
||||
|
||||
if worktree is None:
|
||||
title('Create Worktree')
|
||||
instructions(worktree_instructions)
|
||||
worktree = input('Worktree Directory Name: ')
|
||||
|
||||
# Get branch details
|
||||
branch_type, branch_id = branch_details()
|
||||
|
||||
# Format branch name
|
||||
branch_name = format_branch(
|
||||
branch_type,
|
||||
branch_id,
|
||||
worktree,
|
||||
)
|
||||
|
||||
# Create worktree
|
||||
git_add_worktree(worktree, branch_name)
|
||||
|
||||
# Install NPM packages after worktree creation
|
||||
if auto_install:
|
||||
os.chdir(f"./{worktree}")
|
||||
|
||||
subprocess.run(['/bin/bash', '-i', '-c', 'nvm use'])
|
||||
subprocess.run(['npm', 'i'])
|
||||
|
||||
exit(0)
|
||||
|
||||
except Exception:
|
||||
print('No worktree found')
|
||||
exit(1)
|
||||
|
||||
|
||||
def remove_worktree(worktree):
|
||||
worktree_name = worktree if worktree else input('Worktree to remove: ')
|
||||
git_remove_worktree(worktree_name)
|
30
bash/.git-formatter/utils/__init__.py
Normal file
30
bash/.git-formatter/utils/__init__.py
Normal file
@ -0,0 +1,30 @@
|
||||
from .repo_format import (
|
||||
branch_format,
|
||||
branch_types,
|
||||
commit_format,
|
||||
repo_format,
|
||||
)
|
||||
|
||||
from .format import (
|
||||
format_branch,
|
||||
format_commit,
|
||||
)
|
||||
|
||||
from .git_commands import (
|
||||
git_add_worktree,
|
||||
git_branches,
|
||||
git_checkout_branch,
|
||||
git_commit,
|
||||
git_current_branch,
|
||||
git_remove_worktree,
|
||||
)
|
||||
|
||||
from .messages import (
|
||||
title,
|
||||
instructions,
|
||||
worktree_instructions,
|
||||
commit_instructions,
|
||||
)
|
||||
|
||||
from .repo_name import repo_name
|
||||
from .branch_details import branch_details
|
24
bash/.git-formatter/utils/branch_details.py
Normal file
24
bash/.git-formatter/utils/branch_details.py
Normal file
@ -0,0 +1,24 @@
|
||||
from utils.messages import (
|
||||
title,
|
||||
instructions,
|
||||
worktree_instructions,
|
||||
)
|
||||
from utils.repo_format import branch_types
|
||||
|
||||
|
||||
def branch_details():
|
||||
|
||||
# Ask for branch type
|
||||
for idx, type in enumerate(branch_types):
|
||||
print(f"[{idx + 1}] {type}")
|
||||
|
||||
title("Branch Types")
|
||||
instructions(worktree_instructions)
|
||||
branch_type: str = input('Branch Type: ')
|
||||
branch_type_idx: int = int(branch_type) - 1
|
||||
branch_type_value: str = list(branch_types.values())[branch_type_idx]
|
||||
|
||||
# Ask for branch id
|
||||
branch_id: str = input('Branch ID: ').upper()
|
||||
|
||||
return branch_type_value, branch_id
|
36
bash/.git-formatter/utils/format.py
Normal file
36
bash/.git-formatter/utils/format.py
Normal file
@ -0,0 +1,36 @@
|
||||
import re
|
||||
from .git_commands import git_current_branch
|
||||
from .repo_format import (
|
||||
branch_format,
|
||||
commit_format,
|
||||
)
|
||||
|
||||
|
||||
def format_branch(branch_type, branch_id, worktree_name=''):
|
||||
if branch_type != '' and branch_id != '':
|
||||
return (
|
||||
branch_format
|
||||
.replace('BRANCH_TYPE', branch_type)
|
||||
.replace('BRANCH_ID', branch_id)
|
||||
)
|
||||
|
||||
if branch_type == '' and branch_id == '' and worktree_name != '':
|
||||
return worktree_name
|
||||
|
||||
if branch_type == '' and branch_id != '':
|
||||
return branch_id
|
||||
|
||||
return 'Error: Something went wrong'
|
||||
|
||||
|
||||
def format_commit():
|
||||
branch_list = re.findall(r'([a-zA-Z0-9-]+)', git_current_branch())
|
||||
|
||||
if len(branch_list) == 1:
|
||||
return branch_list[0]
|
||||
elif len(branch_list) > 1:
|
||||
return (
|
||||
commit_format
|
||||
.replace('BRANCH_TYPE', branch_list[0])
|
||||
.replace('BRANCH_ID', branch_list[1])
|
||||
)
|
53
bash/.git-formatter/utils/git_commands.py
Normal file
53
bash/.git-formatter/utils/git_commands.py
Normal file
@ -0,0 +1,53 @@
|
||||
import subprocess
|
||||
|
||||
git_branches = subprocess.run(
|
||||
['git', 'branch'],
|
||||
stdout=subprocess.PIPE,
|
||||
text=True,
|
||||
).stdout.strip()
|
||||
|
||||
|
||||
def git_add_worktree(worktree_name, branch_name, git_branches=git_branches):
|
||||
# FIXME: This should check for the exact branch name.
|
||||
# If NGAV-1000 already exists, an error is thrown when
|
||||
# NGAV-100 tries to be created
|
||||
existing_branch = branch_name in git_branches
|
||||
|
||||
subprocess.run([
|
||||
'git',
|
||||
'worktree',
|
||||
'add',
|
||||
worktree_name,
|
||||
'--checkout' if existing_branch else '-b',
|
||||
branch_name
|
||||
])
|
||||
|
||||
|
||||
def git_remove_worktree(worktree_name):
|
||||
subprocess.run([
|
||||
'git',
|
||||
'worktree',
|
||||
'remove',
|
||||
worktree_name
|
||||
])
|
||||
|
||||
|
||||
def git_checkout_branch(branch_name):
|
||||
subprocess.run([
|
||||
'git',
|
||||
'checkout',
|
||||
'-b',
|
||||
branch_name
|
||||
])
|
||||
|
||||
|
||||
def git_current_branch():
|
||||
return subprocess.run(
|
||||
['git', 'branch', '--show-current'],
|
||||
stdout=subprocess.PIPE,
|
||||
text=True,
|
||||
).stdout
|
||||
|
||||
|
||||
def git_commit(commit_message):
|
||||
subprocess.run(['git', 'commit', '-m', commit_message])
|
14
bash/.git-formatter/utils/messages.py
Normal file
14
bash/.git-formatter/utils/messages.py
Normal file
@ -0,0 +1,14 @@
|
||||
def title(text) -> None:
|
||||
border_char = '='
|
||||
print(f"\n{text}\n{border_char * len(text)}")
|
||||
|
||||
|
||||
def instructions(text) -> None:
|
||||
print(f"{text}\n")
|
||||
|
||||
|
||||
worktree_instructions = """Name the worktree directory.
|
||||
This can be different than your branch name.
|
||||
"""
|
||||
|
||||
commit_instructions = """Some great commit instructions..."""
|
7
bash/.git-formatter/utils/repo_format.py
Normal file
7
bash/.git-formatter/utils/repo_format.py
Normal file
@ -0,0 +1,7 @@
|
||||
from config import REPO_FORMATS
|
||||
from .repo_name import repo_name
|
||||
|
||||
repo_format = REPO_FORMATS[repo_name()]
|
||||
branch_types = repo_format['types']
|
||||
branch_format = repo_format['branch_format']
|
||||
commit_format = repo_format['commit_format']
|
11
bash/.git-formatter/utils/repo_name.py
Normal file
11
bash/.git-formatter/utils/repo_name.py
Normal file
@ -0,0 +1,11 @@
|
||||
import os
|
||||
from config import REPO_FORMATS
|
||||
|
||||
|
||||
def repo_name() -> str:
|
||||
for repo in REPO_FORMATS:
|
||||
if repo in os.getcwd():
|
||||
return repo
|
||||
|
||||
print("Sorry, this repo isn't setup to use Git Formatter")
|
||||
exit(1)
|
BIN
fonts/FiraCodeNerdFont-Retina.ttf
Normal file
BIN
fonts/FiraCodeNerdFont-Retina.ttf
Normal file
Binary file not shown.
BIN
fonts/Fira_Code_Regular_Nerd_Font_Complete.ttf
Normal file
BIN
fonts/Fira_Code_Regular_Nerd_Font_Complete.ttf
Normal file
Binary file not shown.
204
install.sh
Normal file
204
install.sh
Normal file
@ -0,0 +1,204 @@
|
||||
APPS=(
|
||||
barrier
|
||||
cmake
|
||||
curl
|
||||
flatpak
|
||||
g++
|
||||
htop
|
||||
neofetch
|
||||
ninja-build
|
||||
plasma-discover-backend-flatpak
|
||||
ripgrep
|
||||
rtorrent
|
||||
scdaemon
|
||||
steam
|
||||
stow
|
||||
tmux
|
||||
tmuxp
|
||||
virt-manager
|
||||
xclip
|
||||
)
|
||||
|
||||
FLATPAK_APPS=(
|
||||
ch.protonmail.protonmail-bridge
|
||||
com.logseq.Logseq
|
||||
com.obsproject.Studio
|
||||
com.protonvpn.www
|
||||
com.ultimaker.cura
|
||||
im.riot.Riot
|
||||
org.blender.Blender
|
||||
org.darktable.Darktable
|
||||
org.freecadweb.FreeCAD
|
||||
org.gimp.GIMP
|
||||
org.inkscape.Inkscape
|
||||
org.libreoffice.LibreOffice
|
||||
org.mozilla.Thunderbird
|
||||
org.mozilla.firefox
|
||||
)
|
||||
|
||||
DOTFILES=(
|
||||
bash
|
||||
konsole
|
||||
#menus
|
||||
nvim
|
||||
rtorrent
|
||||
tmux
|
||||
tmuxp
|
||||
)
|
||||
|
||||
# Check if Snap is installed
|
||||
if [ -x "$(command -v snap)" ]; then
|
||||
echo "Remove Snap packages first before running this script!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check for Debian installation. If yes, remove some default programs
|
||||
while true; do
|
||||
read -p "Is this a Debian installation? y/N: " osChoice
|
||||
osChoice=$(echo "$osChoice" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
if [ "$osChoice" = "y" ]; then
|
||||
sudo apt purge libreoffice-core libreoffice-base-core libreoffice-common libreoffice-style-breeze libreoffice-style-colibre firefox-esr gimp -y
|
||||
sudo apt autoremove -y
|
||||
break
|
||||
elif [ "$osChoice" = "n" ]; then
|
||||
break
|
||||
else
|
||||
echo "Invalid input. Please enter y or n."
|
||||
fi
|
||||
done
|
||||
|
||||
# Sym Link Home Folders To External Storage
|
||||
while true; do
|
||||
read -p "Do you want to link home folders with external storage? y/N: " storageChoice
|
||||
storageChoice=$(echo "$storageChoice" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
sudo rm -rf ~/Public ~/Templates
|
||||
|
||||
if [ "$storageChoice" = "y" ]; then
|
||||
read -p "Specify the path to the external storage device (full path must be used): " storagePath
|
||||
|
||||
sudo rm -rf ~/Documents ~/Pictures ~/Downloads
|
||||
|
||||
ln -s "$storagePath/Pictures/" ~/
|
||||
ln -s "$storagePath/Repos/" ~/
|
||||
ln -s "$storagePath/Documents/" ~/
|
||||
ln -s "$storagePath/Downloads/" ~/
|
||||
|
||||
break
|
||||
elif [ "$storageChoice" = "n" ]; then
|
||||
echo "Skipping sym linking..."
|
||||
cp -r ./Repos ~
|
||||
break
|
||||
else
|
||||
echo "Invalid input. Please enter y or n."
|
||||
fi
|
||||
done
|
||||
|
||||
# Install Apt Apps
|
||||
for i in "${APPS[@]}"
|
||||
do
|
||||
if [ -x "$(command -v $i)" ]; then
|
||||
echo "$i already installed!"
|
||||
else
|
||||
sudo apt install $i -y
|
||||
fi
|
||||
done
|
||||
|
||||
# Add Flathub Repo
|
||||
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
|
||||
# Install Flatpak Apps
|
||||
for i in "${FLATPAK_APPS[@]}"
|
||||
do
|
||||
if [ -x "$(command -v $i)" ]; then
|
||||
echo "$i already installed!"
|
||||
else
|
||||
flatpak install $i -y
|
||||
fi
|
||||
done
|
||||
|
||||
# NVM Setup
|
||||
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
|
||||
|
||||
source ~/.bashrc
|
||||
. ~/.nvm/nvm.sh
|
||||
nvm install --lts
|
||||
|
||||
# Add Yubikey Support to bashrc
|
||||
if grep -q '# Yubikey SSH Support' ~/.bashrc; then
|
||||
echo "Yubikey support already added."
|
||||
else
|
||||
|
||||
echo "
|
||||
# Yubikey SSH Support
|
||||
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
|
||||
" >> ~/.bashrc
|
||||
|
||||
fi
|
||||
|
||||
# Link Config Files
|
||||
for folder in ${DOTFILES[@]}
|
||||
do
|
||||
echo $folder
|
||||
stow $folder --adopt
|
||||
done
|
||||
|
||||
git restore .
|
||||
|
||||
# Font Install
|
||||
sudo cp ./fonts/Fira_Code_Regular_Nerd_Font_Complete.ttf /usr/local/share/fonts
|
||||
sudo cp ./fonts/FiraCodeNerdFont-Retina.ttf /usr/local/share/fonts
|
||||
|
||||
# Check if this is my profile
|
||||
while true; do
|
||||
read -p "Is this profile for Kendall? y/N: " profileChoice
|
||||
profileChoice=$(echo "$profileChoice" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
if [ "$profileChoice" = "y" ]; then
|
||||
# Add Profile Image
|
||||
sudo rm ~/.face
|
||||
cp ./profile/.face ~
|
||||
|
||||
# Add User To Group For Virtual Manager
|
||||
sudo adduser kendall libvirt-qemu
|
||||
break
|
||||
elif [ "$profileChoice" = "n" ]; then
|
||||
break
|
||||
else
|
||||
echo "Invalid input. Please enter y or n."
|
||||
fi
|
||||
done
|
||||
|
||||
# Add touchscreen scroll support to Firefox
|
||||
while true; do
|
||||
read -p "Does this device have a touchscreen? y/N: " touchscreenChoice
|
||||
touchscreenChoice=$(echo "$touchscreenChoice" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
if [ "$touchscreenChoice" = "y" ]; then
|
||||
sudo flatpak override --env="MOZ_USE_XINPUT2=1" org.mozilla.firefox
|
||||
break
|
||||
elif [ "$touchscreenChoice" = "n" ]; then
|
||||
echo "Skipping touchscreen setup..."
|
||||
break
|
||||
else
|
||||
echo "Invalid input. Please enter y or n."
|
||||
fi
|
||||
done
|
||||
|
||||
# Add filesystem override to Firefox
|
||||
sudo flatpak override org.mozilla.firefox --filesystem=$HOME
|
||||
|
||||
# Install latest Neovim
|
||||
if ! [ -x "$(command -v nvim)" ]; then
|
||||
sudo apt remove gettext-base -y
|
||||
sudo apt install gettext -y
|
||||
source ~/.bashrc
|
||||
git clone https://github.com/neovim/neovim
|
||||
cd neovim
|
||||
make CMAKE_BUILD_TYPE=RelWithDebInfo && cd build && cpack -G DEB && sudo dpkg -i nvim-linux64.deb
|
||||
cd ~/.dotfiles/ && sudo rm -rf neovim
|
||||
fi
|
||||
|
||||
# Install TPM
|
||||
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
|
35
konsole/.config/konsolerc
Normal file
35
konsole/.config/konsolerc
Normal file
@ -0,0 +1,35 @@
|
||||
[Desktop Entry]
|
||||
DefaultProfile=Profile 1.profile
|
||||
|
||||
[General]
|
||||
ConfigVersion=1
|
||||
|
||||
[KFileDialog Settings]
|
||||
iconViewIconSize=64
|
||||
|
||||
[MainWindow]
|
||||
1920x1080 screen: Height=554
|
||||
1920x1080 screen: Width=911
|
||||
1920x1080 screen: Window-Maximized=true
|
||||
2 screens: Height=1041
|
||||
2 screens: Width=1732
|
||||
2 screens: Window-Maximized=true
|
||||
2 screens: XPosition=0
|
||||
2 screens: YPosition=30
|
||||
2560x1440 screen: Height=690
|
||||
2560x1440 screen: Width=1280
|
||||
2560x1440 screen: Window-Maximized=true
|
||||
2560x1440 screen: XPosition=0
|
||||
2560x1440 screen: YPosition=30
|
||||
3 screens: Height=900
|
||||
3 screens: Width=1706
|
||||
3 screens: Window-Maximized=true
|
||||
DP-1=DP-1
|
||||
DP-2=DP-2
|
||||
DP-2 HDMI-0=DP-2
|
||||
MenuBar=Disabled
|
||||
State=AAAA/wAAAAD9AAAAAQAAAAAAAAAAAAAAAPwCAAAAAvsAAAAcAFMAUwBIAE0AYQBuAGEAZwBlAHIARABvAGMAawAAAAAA/////wAAARUBAAAD+wAAACIAUQB1AGkAYwBrAEMAbwBtAG0AYQBuAGQAcwBEAG8AYwBrAAAAAAD/////AAABfAEAAAMAAAeAAAAD7wAAAAQAAAAEAAAACAAAAAj8AAAAAQAAAAIAAAACAAAAFgBtAGEAaQBuAFQAbwBvAGwAQgBhAHIAAAAAAP////8AAAAAAAAAAAAAABwAcwBlAHMAcwBpAG8AbgBUAG8AbwBsAGIAYQByAAAAAAD/////AAAAAAAAAAA=
|
||||
ToolBarsMovable=Disabled
|
||||
|
||||
[UiSettings]
|
||||
ColorScheme=
|
20
konsole/.local/share/konsole/Profile 1.profile
Normal file
20
konsole/.local/share/konsole/Profile 1.profile
Normal file
@ -0,0 +1,20 @@
|
||||
[Appearance]
|
||||
ColorScheme=Breeze
|
||||
Font=FiraCode Nerd Font,11,-1,5,53,0,0,0,0,0,Retina
|
||||
UseFontLineChararacters=false
|
||||
|
||||
[General]
|
||||
Command=/bin/tmux
|
||||
DimWhenInactive=false
|
||||
Name=Profile 1
|
||||
Parent=FALLBACK/
|
||||
StartInCurrentSessionDir=false
|
||||
|
||||
[Scrolling]
|
||||
HistoryMode=2
|
||||
ScrollBarPosition=2
|
||||
ScrollFullPage=false
|
||||
|
||||
[Terminal Features]
|
||||
BellMode=3
|
||||
BlinkingCursorEnabled=true
|
310
menus/.config/menus/applications-kmenuedit.menu
Normal file
310
menus/.config/menus/applications-kmenuedit.menu
Normal file
@ -0,0 +1,310 @@
|
||||
<!DOCTYPE Menu PUBLIC '-//freedesktop//DTD Menu 1.0//EN' 'http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd'>
|
||||
<Menu>
|
||||
<Menu>
|
||||
<Name>Development</Name>
|
||||
<Layout>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>Translation</Menuname>
|
||||
<Menuname>Web Development</Menuname>
|
||||
</Layout>
|
||||
<Exclude>
|
||||
<Filename>org.kde.kate.desktop</Filename>
|
||||
</Exclude>
|
||||
<Deleted/>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Education</Name>
|
||||
<Menu>
|
||||
<Name>Mathematics</Name>
|
||||
<Layout/>
|
||||
<Exclude>
|
||||
<Filename>org.libreoffice.LibreOffice.math.desktop</Filename>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Science</Name>
|
||||
<Layout/>
|
||||
<Exclude>
|
||||
<Filename>org.freecadweb.FreeCAD.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.math.desktop</Filename>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
<Layout>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>Languages</Menuname>
|
||||
<Menuname>Mathematics</Menuname>
|
||||
<Menuname>Miscellaneous</Menuname>
|
||||
<Menuname>Science</Menuname>
|
||||
<Menuname>Tools</Menuname>
|
||||
</Layout>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Games</Name>
|
||||
<Layout>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>Arcade</Menuname>
|
||||
<Menuname>Board</Menuname>
|
||||
<Menuname>Card</Menuname>
|
||||
<Menuname>Kidsgames</Menuname>
|
||||
<Merge type="files"/>
|
||||
<Filename>steam.desktop</Filename>
|
||||
<Menuname>Logic</Menuname>
|
||||
<Menuname>TacticStrategy</Menuname>
|
||||
</Layout>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Graphics</Name>
|
||||
<Exclude>
|
||||
<Filename>org.kde.gwenview.desktop</Filename>
|
||||
<Filename>display-im6.q16.desktop</Filename>
|
||||
<Filename>org.kde.okular.desktop</Filename>
|
||||
<Filename>org.kde.skanlite.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.draw.desktop</Filename>
|
||||
<Filename>org.kde.kontrast.desktop</Filename>
|
||||
</Exclude>
|
||||
<Layout>
|
||||
<Merge type="files"/>
|
||||
<Filename>org.blender.Blender.desktop</Filename>
|
||||
<Filename>org.darktable.Darktable.desktop</Filename>
|
||||
<Filename>org.freecadweb.FreeCAD.desktop</Filename>
|
||||
<Filename>org.gimp.GIMP.desktop</Filename>
|
||||
<Filename>Godot.desktop</Filename>
|
||||
<Filename>org.inkscape.Inkscape.desktop</Filename>
|
||||
<Separator/>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>More</Menuname>
|
||||
</Layout>
|
||||
<Include>
|
||||
<Filename>Godot.desktop</Filename>
|
||||
</Include>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Internet</Name>
|
||||
<Menu>
|
||||
<Name>Terminal</Name>
|
||||
<Deleted/>
|
||||
</Menu>
|
||||
<Exclude>
|
||||
<Filename>org.kde.kdeconnect.app.desktop</Filename>
|
||||
<Filename>org.kde.kdeconnect.sms.desktop</Filename>
|
||||
<Filename>org.kde.kdeconnect_open.desktop</Filename>
|
||||
<Filename>steam.desktop</Filename>
|
||||
<Filename>remote-viewer.desktop</Filename>
|
||||
<Filename>org.kde.akregator.desktop</Filename>
|
||||
<Filename>org.kde.contactprintthemeeditor.desktop</Filename>
|
||||
<Filename>org.kde.contactthemeeditor.desktop</Filename>
|
||||
<Filename>org.kde.kmail2.desktop</Filename>
|
||||
<Filename>org.kde.headerthemeeditor.desktop</Filename>
|
||||
<Filename>konqbrowser.desktop</Filename>
|
||||
<Filename>org.kde.ktnef.desktop</Filename>
|
||||
<Filename>org.kde.pimdataexporter.desktop</Filename>
|
||||
<Filename>org.kde.sieveeditor.desktop</Filename>
|
||||
</Exclude>
|
||||
<Include>
|
||||
<Filename>ch.protonmail.protonmail-bridge.desktop</Filename>
|
||||
</Include>
|
||||
<Layout>
|
||||
<Merge type="files"/>
|
||||
<Filename>com.discordapp.Discord.desktop</Filename>
|
||||
<Filename>im.riot.Riot.desktop</Filename>
|
||||
<Filename>org.mozilla.firefox.desktop</Filename>
|
||||
<Filename>org.kde.krdc.desktop</Filename>
|
||||
<Filename>ch.protonmail.protonmail-bridge.desktop</Filename>
|
||||
<Filename>com.slack.Slack.desktop</Filename>
|
||||
<Filename>org.mozilla.Thunderbird.desktop</Filename>
|
||||
<Separator/>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>More</Menuname>
|
||||
</Layout>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Multimedia</Name>
|
||||
<Layout>
|
||||
<Merge type="files"/>
|
||||
<Filename>org.kde.haruna.desktop</Filename>
|
||||
<Filename>pavucontrol-qt.desktop</Filename>
|
||||
<Separator/>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>More</Menuname>
|
||||
</Layout>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Office</Name>
|
||||
<Exclude>
|
||||
<Filename>org.kde.contactprintthemeeditor.desktop</Filename>
|
||||
<Filename>org.kde.contactthemeeditor.desktop</Filename>
|
||||
<Filename>org.kde.kaddressbook.desktop</Filename>
|
||||
<Filename>org.kde.kmail2.desktop</Filename>
|
||||
<Filename>org.kde.headerthemeeditor.desktop</Filename>
|
||||
<Filename>org.kde.korganizer.desktop</Filename>
|
||||
<Filename>org.kde.ktnef.desktop</Filename>
|
||||
<Filename>org.kde.sieveeditor.desktop</Filename>
|
||||
<Filename>ch.protonmail.protonmail-bridge.desktop</Filename>
|
||||
</Exclude>
|
||||
<Layout>
|
||||
<Merge type="files"/>
|
||||
<Filename>org.libreoffice.LibreOffice.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.base.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.calc.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.draw.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.impress.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.math.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.writer.desktop</Filename>
|
||||
<Filename>com.logseq.Logseq.desktop</Filename>
|
||||
<Filename>org.kde.okular.desktop</Filename>
|
||||
<Separator/>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>More</Menuname>
|
||||
</Layout>
|
||||
<Include>
|
||||
<Filename>com.logseq.Logseq.desktop</Filename>
|
||||
</Include>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>Utilities</Name>
|
||||
<Menu>
|
||||
<Name>Settingsmenu</Name>
|
||||
<NotDeleted/>
|
||||
<Layout>
|
||||
<Merge type="files"/>
|
||||
<Filename>im-config.desktop</Filename>
|
||||
<Filename>pavucontrol-qt.desktop</Filename>
|
||||
<Filename>systemsettings.desktop</Filename>
|
||||
<Filename>kde_wacom_tabletfinder.desktop</Filename>
|
||||
</Layout>
|
||||
</Menu>
|
||||
<Menu>
|
||||
<Name>System</Name>
|
||||
<NotDeleted/>
|
||||
<Layout>
|
||||
<Merge type="files"/>
|
||||
<Filename>org.kde.discover.desktop</Filename>
|
||||
<Filename>org.kde.dolphin.desktop</Filename>
|
||||
<Filename>htop.desktop</Filename>
|
||||
<Filename>org.kde.kinfocenter.desktop</Filename>
|
||||
<Filename>org.kde.partitionmanager.desktop</Filename>
|
||||
<Filename>org.kde.konsole.desktop</Filename>
|
||||
<Filename>org.kde.ksystemlog.desktop</Filename>
|
||||
<Filename>org.kde.kwalletmanager5.desktop</Filename>
|
||||
<Filename>org.kde.kmenuedit.desktop</Filename>
|
||||
<Filename>apport-kde.desktop</Filename>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>ScreenSavers</Menuname>
|
||||
<Filename>usb-creator-kde.desktop</Filename>
|
||||
<Filename>org.kde.plasma-systemmonitor.desktop</Filename>
|
||||
<Menuname>Terminal</Menuname>
|
||||
<Filename>debian-uxterm.desktop</Filename>
|
||||
<Filename>virt-manager.desktop</Filename>
|
||||
<Filename>debian-xterm.desktop</Filename>
|
||||
<Separator/>
|
||||
<Menuname>More</Menuname>
|
||||
</Layout>
|
||||
</Menu>
|
||||
<Include>
|
||||
<Filename>org.kde.gwenview.desktop</Filename>
|
||||
<Filename>display-im6.q16.desktop</Filename>
|
||||
<Filename>org.kde.skanlite.desktop</Filename>
|
||||
<Filename>remote-viewer.desktop</Filename>
|
||||
<Filename>via.desktop</Filename>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Filename>org.libreoffice.LibreOffice.draw.desktop</Filename>
|
||||
<Filename>com.logseq.Logseq.desktop</Filename>
|
||||
</Exclude>
|
||||
<Layout>
|
||||
<Merge type="files"/>
|
||||
<Filename>org.kde.ark.desktop</Filename>
|
||||
<Filename>barrier.desktop</Filename>
|
||||
<Filename>org.kde.plasma.emojier.desktop</Filename>
|
||||
<Filename>org.kde.gwenview.desktop</Filename>
|
||||
<Filename>display-im6.q16.desktop</Filename>
|
||||
<Filename>org.kde.kate.desktop</Filename>
|
||||
<Filename>org.kde.kcalc.desktop</Filename>
|
||||
<Filename>nvim.desktop</Filename>
|
||||
<Filename>remote-viewer.desktop</Filename>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>Settingsmenu</Menuname>
|
||||
<Filename>org.kde.skanlite.desktop</Filename>
|
||||
<Filename>org.kde.spectacle.desktop</Filename>
|
||||
<Menuname>System</Menuname>
|
||||
<Filename>info.desktop</Filename>
|
||||
<Filename>com.ultimaker.cura.desktop</Filename>
|
||||
<Menuname>XUtilities</Menuname>
|
||||
<Separator/>
|
||||
<Menuname>More</Menuname>
|
||||
</Layout>
|
||||
</Menu>
|
||||
<Move>
|
||||
<Old>System</Old>
|
||||
<New>Utilities/System</New>
|
||||
</Move>
|
||||
<Move>
|
||||
<Old>Settingsmenu</Old>
|
||||
<New>Utilities/Settingsmenu</New>
|
||||
</Move>
|
||||
<Menu>
|
||||
<Name>.hidden</Name>
|
||||
<Include>
|
||||
<Filename>org.kde.kate.desktop</Filename>
|
||||
<Filename>org.freecadweb.FreeCAD.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.math.desktop</Filename>
|
||||
<Filename>org.kde.okular.desktop</Filename>
|
||||
<Filename>org.libreoffice.LibreOffice.draw.desktop</Filename>
|
||||
<Filename>org.kde.kdeconnect.app.desktop</Filename>
|
||||
<Filename>org.kde.kdeconnect.sms.desktop</Filename>
|
||||
<Filename>org.kde.kdeconnect_open.desktop</Filename>
|
||||
<Filename>steam.desktop</Filename>
|
||||
<Filename>org.kde.khelpcenter.desktop</Filename>
|
||||
<Filename>org.kde.kontrast.desktop</Filename>
|
||||
<Filename>org.kde.akregator.desktop</Filename>
|
||||
<Filename>konqbrowser.desktop</Filename>
|
||||
<Filename>org.kde.pimdataexporter.desktop</Filename>
|
||||
<Filename>org.kde.contactprintthemeeditor.desktop</Filename>
|
||||
<Filename>org.kde.contactthemeeditor.desktop</Filename>
|
||||
<Filename>org.kde.kaddressbook.desktop</Filename>
|
||||
<Filename>org.kde.kmail2.desktop</Filename>
|
||||
<Filename>org.kde.headerthemeeditor.desktop</Filename>
|
||||
<Filename>org.kde.korganizer.desktop</Filename>
|
||||
<Filename>org.kde.ktnef.desktop</Filename>
|
||||
<Filename>org.kde.sieveeditor.desktop</Filename>
|
||||
</Include>
|
||||
</Menu>
|
||||
<Exclude>
|
||||
<Filename>org.kde.khelpcenter.desktop</Filename>
|
||||
</Exclude>
|
||||
<Menu>
|
||||
<Name>Applications</Name>
|
||||
<Layout>
|
||||
<Merge type="files"/>
|
||||
<Filename>via.desktop</Filename>
|
||||
</Layout>
|
||||
<Exclude>
|
||||
<Filename>via.desktop</Filename>
|
||||
</Exclude>
|
||||
<Deleted/>
|
||||
</Menu>
|
||||
<Layout>
|
||||
<Merge type="menus"/>
|
||||
<Menuname>Education</Menuname>
|
||||
<Menuname>Games</Menuname>
|
||||
<Menuname>Graphics</Menuname>
|
||||
<Menuname>Internet</Menuname>
|
||||
<Menuname>Multimedia</Menuname>
|
||||
<Menuname>Office</Menuname>
|
||||
<Menuname>Science</Menuname>
|
||||
<Menuname>Utilities</Menuname>
|
||||
</Layout>
|
||||
<Menu>
|
||||
<Name>Science</Name>
|
||||
<Layout/>
|
||||
<Menu>
|
||||
<Name>Development</Name>
|
||||
<Directory>Development.directory</Directory>
|
||||
<Deleted/>
|
||||
</Menu>
|
||||
<Include/>
|
||||
<Exclude>
|
||||
<Filename>Godot.desktop</Filename>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
</Menu>
|
277
menus/.config/plasma-org.kde.plasma.desktop-appletsrc
Normal file
277
menus/.config/plasma-org.kde.plasma.desktop-appletsrc
Normal file
@ -0,0 +1,277 @@
|
||||
[ActionPlugins][0]
|
||||
MiddleButton;NoModifier=org.kde.paste
|
||||
RightButton;NoModifier=org.kde.contextmenu
|
||||
wheel:Vertical;NoModifier=org.kde.switchdesktop
|
||||
|
||||
[ActionPlugins][1]
|
||||
RightButton;NoModifier=org.kde.contextmenu
|
||||
|
||||
[Containments][1]
|
||||
activityId=
|
||||
formfactor=2
|
||||
immutability=1
|
||||
lastScreen=0
|
||||
location=4
|
||||
plugin=org.kde.panel
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][1][Applets][19]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.digitalclock
|
||||
|
||||
[Containments][1][Applets][19][Configuration]
|
||||
PreloadWeight=100
|
||||
popupHeight=550
|
||||
popupWidth=990
|
||||
|
||||
[Containments][1][Applets][19][Configuration][Appearance]
|
||||
customDateFormat=dddd MMM, d
|
||||
enabledCalendarPlugins=/usr/lib/x86_64-linux-gnu/qt5/plugins/plasmacalendarplugins/holidaysevents.so
|
||||
use24hFormat=0
|
||||
|
||||
[Containments][1][Applets][19][Configuration][ConfigDialog]
|
||||
DialogHeight=660
|
||||
DialogWidth=880
|
||||
|
||||
[Containments][1][Applets][2]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.kickoff
|
||||
|
||||
[Containments][1][Applets][2][Configuration]
|
||||
PreloadWeight=100
|
||||
popupHeight=577
|
||||
popupWidth=735
|
||||
|
||||
[Containments][1][Applets][2][Configuration][ConfigDialog]
|
||||
DialogHeight=660
|
||||
DialogWidth=880
|
||||
|
||||
[Containments][1][Applets][2][Configuration][Configuration/General]
|
||||
showAppsByName=true
|
||||
|
||||
[Containments][1][Applets][2][Configuration][General]
|
||||
alphaSort=true
|
||||
compactMode=true
|
||||
favoritesPortedToKAstats=true
|
||||
systemFavorites=suspend\\,hibernate\\,reboot\\,shutdown
|
||||
|
||||
[Containments][1][Applets][2][Configuration][Shortcuts]
|
||||
global=Alt+F1
|
||||
|
||||
[Containments][1][Applets][2][Shortcuts]
|
||||
global=
|
||||
|
||||
[Containments][1][Applets][32]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.pager
|
||||
|
||||
[Containments][1][Applets][32][Configuration][ConfigDialog]
|
||||
DialogHeight=660
|
||||
DialogWidth=880
|
||||
|
||||
[Containments][1][Applets][4]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.icontasks
|
||||
|
||||
[Containments][1][Applets][4][Configuration][ConfigDialog]
|
||||
DialogHeight=660
|
||||
DialogWidth=880
|
||||
|
||||
[Containments][1][Applets][4][Configuration][General]
|
||||
launchers=preferred://filemanager,file:///var/lib/flatpak/exports/share/applications/org.mozilla.firefox.desktop,file:///var/lib/flatpak/exports/share/applications/org.mozilla.Thunderbird.desktop,applications:org.kde.konsole.desktop,file:///var/lib/flatpak/exports/share/applications/im.riot.Riot.desktop,file:///var/lib/flatpak/exports/share/applications/com.slack.Slack.desktop,file:///var/lib/flatpak/exports/share/applications/com.logseq.Logseq.desktop,applications:Godot.desktop,file:///var/lib/flatpak/exports/share/applications/org.blender.Blender.desktop
|
||||
|
||||
[Containments][1][Applets][5]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.marginsseparator
|
||||
|
||||
[Containments][1][Applets][6]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.systemtray
|
||||
|
||||
[Containments][1][Applets][6][Configuration]
|
||||
PreloadWeight=100
|
||||
SystrayContainmentId=7
|
||||
|
||||
[Containments][1][ConfigDialog]
|
||||
DialogHeight=93
|
||||
DialogWidth=2560
|
||||
|
||||
[Containments][1][General]
|
||||
AppletOrder=2;4;32;5;6;19
|
||||
|
||||
[Containments][100][Applets][101][Configuration]
|
||||
PreloadWeight=100
|
||||
popupHeight=574
|
||||
popupWidth=729
|
||||
|
||||
[Containments][23]
|
||||
ItemGeometries-2560x1440=
|
||||
ItemGeometriesHorizontal=
|
||||
activityId=da69c9c3-3ae2-43e4-8ff9-3d000803aa74
|
||||
formfactor=0
|
||||
immutability=1
|
||||
lastScreen=0
|
||||
location=0
|
||||
plugin=org.kde.plasma.folder
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][23][ConfigDialog]
|
||||
DialogHeight=660
|
||||
DialogWidth=880
|
||||
|
||||
[Containments][23][General]
|
||||
ToolBoxButtonState=topcenter
|
||||
ToolBoxButtonX=697
|
||||
|
||||
[Containments][23][Wallpaper][org.kde.image][General]
|
||||
Image=/home/kendall/Pictures/Wallpapers/low-poly-planet.webp
|
||||
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
|
||||
|
||||
[Containments][33]
|
||||
ItemGeometries-2560x1440=
|
||||
ItemGeometriesHorizontal=
|
||||
activityId=da69c9c3-3ae2-43e4-8ff9-3d000803aa74
|
||||
formfactor=0
|
||||
immutability=1
|
||||
lastScreen=1
|
||||
location=0
|
||||
plugin=org.kde.plasma.folder
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][33][ConfigDialog]
|
||||
DialogHeight=660
|
||||
DialogWidth=880
|
||||
|
||||
[Containments][33][Wallpaper][org.kde.image][General]
|
||||
Image=/home/kendall/Pictures/Wallpapers/low-poly-planet.webp
|
||||
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
|
||||
|
||||
[Containments][34]
|
||||
ItemGeometries-0x0=Applet-35:0,1104,336,80,0;Applet-36:336,1104,336,80,0;
|
||||
ItemGeometries-2560x1440=Applet-35:0,1104,336,320,0;Applet-36:336,1104,336,320,0;
|
||||
ItemGeometriesHorizontal=Applet-35:0,1104,336,80,0;Applet-36:336,1104,336,80,0;
|
||||
activityId=da69c9c3-3ae2-43e4-8ff9-3d000803aa74
|
||||
formfactor=0
|
||||
immutability=1
|
||||
lastScreen=2
|
||||
location=0
|
||||
plugin=org.kde.plasma.folder
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][34][Applets][35]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.notes
|
||||
|
||||
[Containments][34][Applets][35][Configuration][General]
|
||||
fontSize=10
|
||||
noteId=9c7feb20-fbad-4171-bba4-92dcb46c87
|
||||
|
||||
[Containments][34][Applets][36]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.notes
|
||||
|
||||
[Containments][34][Applets][36][Configuration][General]
|
||||
fontSize=10
|
||||
noteId=d0cc9522-bccd-48ec-9571-f3d84abc60
|
||||
|
||||
[Containments][34][ConfigDialog]
|
||||
DialogHeight=660
|
||||
DialogWidth=880
|
||||
|
||||
[Containments][34][Wallpaper][org.kde.image][General]
|
||||
Image=/home/kendall/Pictures/Wallpapers/low-poly-planet.webp
|
||||
SlidePaths=/usr/share/plasma/wallpapers/,/usr/share/wallpapers/
|
||||
|
||||
[Containments][7]
|
||||
activityId=
|
||||
formfactor=2
|
||||
immutability=1
|
||||
lastScreen=0
|
||||
location=4
|
||||
plugin=org.kde.plasma.private.systemtray
|
||||
popupHeight=528
|
||||
popupWidth=528
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][7][Applets][10][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][11][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][12][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][13][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][14][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][15]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.volume
|
||||
|
||||
[Containments][7][Applets][15][Configuration]
|
||||
PreloadWeight=100
|
||||
|
||||
[Containments][7][Applets][15][Configuration][General]
|
||||
migrated=true
|
||||
showVirtualDevices=true
|
||||
|
||||
[Containments][7][Applets][16][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][17][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][18][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][22]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.networkmanagement
|
||||
|
||||
[Containments][7][Applets][22][Configuration]
|
||||
PreloadWeight=100
|
||||
|
||||
[Containments][7][Applets][23]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.bluetooth
|
||||
|
||||
[Containments][7][Applets][23][Configuration]
|
||||
PreloadWeight=100
|
||||
|
||||
[Containments][7][Applets][24]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.mediacontroller
|
||||
|
||||
[Containments][7][Applets][24][Configuration]
|
||||
PreloadWeight=0
|
||||
selectedConfig=0
|
||||
|
||||
[Containments][7][Applets][25][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][8][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][7][Applets][9]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.notifications
|
||||
|
||||
[Containments][7][Applets][9][Configuration]
|
||||
PreloadWeight=75
|
||||
|
||||
[Containments][7][ConfigDialog]
|
||||
DialogHeight=838
|
||||
DialogWidth=1050
|
||||
|
||||
[Containments][7][General]
|
||||
extraItems=org.kde.plasma.networkmanagement,org.kde.plasma.notifications,org.kde.plasma.volume,org.kde.plasma.bluetooth,org.kde.plasma.mediacontroller
|
||||
hiddenItems=org.kde.plasma.notifications,org.kde.plasma.mediacontroller,indicator-solaar,Proton Mail Bridge,martchus.syncthingplasmoid
|
||||
knownItems=org.kde.plasma.vault,org.kde.plasma.battery,org.kde.plasma.networkmanagement,org.kde.kupapplet,org.kde.plasma.notifications,org.kde.plasma.keyboardlayout,org.kde.kdeconnect,org.kde.plasma.keyboardindicator,org.kde.plasma.manage-inputmethod,org.kde.plasma.bluetooth,org.kde.plasma.devicenotifier,org.kde.plasma.volume,org.kde.plasma.nightcolorcontrol,org.kde.plasma.clipboard,org.kde.kscreen,org.kde.plasma.mediacontroller,org.kde.plasma.printmanager
|
||||
|
||||
[ScreenMapping]
|
||||
itemsOnDisabledScreens=
|
||||
screenMapping=
|
84
nvim/.config/nvim/init.lua
Normal file
84
nvim/.config/nvim/init.lua
Normal file
@ -0,0 +1,84 @@
|
||||
local g = vim.g
|
||||
local o = vim.o
|
||||
local keymap = vim.keymap.set
|
||||
local cmd = vim.cmd
|
||||
local fn = vim.fn
|
||||
local api = vim.api
|
||||
|
||||
-- Leader Key
|
||||
g.mapleader = " "
|
||||
|
||||
-- Disable netrw for Nvim Tree
|
||||
g.loaded_netrw = 1
|
||||
g.loaded_netrwPlugin = 1
|
||||
|
||||
-- Numbers
|
||||
o.number = true
|
||||
o.relativenumber = true
|
||||
o.numberwidth = 1
|
||||
|
||||
-- Clipboard
|
||||
cmd[[set clipboard+=unnamedplus]]
|
||||
|
||||
-- Files
|
||||
o.swapfile = false
|
||||
o.backup = false
|
||||
|
||||
-- Scroll Offset
|
||||
o.scrolloff = 15
|
||||
|
||||
-- Cursor & Column Lines
|
||||
o.colorcolumn = "80"
|
||||
o.cursorline = true
|
||||
|
||||
-- Mouse
|
||||
o.mouse = "a"
|
||||
|
||||
-- Spacing
|
||||
o.tabstop = 2
|
||||
o.shiftwidth = 2
|
||||
o.expandtab = true
|
||||
|
||||
-- Update Time
|
||||
o.updatetime = 50
|
||||
|
||||
-- Hide Highlighting
|
||||
cmd[[set nohlsearch]]
|
||||
|
||||
-- Indent
|
||||
keymap("n", "<S-Tab>", "<<")
|
||||
keymap("n", "<Tab>", ">>")
|
||||
keymap("v", "<S-Tab>", "<<")
|
||||
keymap("v", "<Tab>", ">>")
|
||||
keymap("i", "<S-Tab>", "<BS>")
|
||||
|
||||
-- Move Between Panels
|
||||
keymap("", "<C-h>", ":wincmd h<CR>")
|
||||
keymap("", "<C-j>", ":wincmd j<CR>")
|
||||
keymap("", "<C-k>", ":wincmd k<CR>")
|
||||
keymap("", "<C-l>", ":wincmd l<CR>")
|
||||
|
||||
-- Jump Up/Down A Half Page
|
||||
keymap("n", "<C-d>", "<C-d>zz")
|
||||
keymap("n", "<C-u>", "<C-u>zz")
|
||||
|
||||
-- Keep Copy/Paste Value
|
||||
keymap("x", "<leader>p", "\"_dP")
|
||||
|
||||
-- Sort
|
||||
keymap("v", "<C-s>", ":sort<CR>")
|
||||
|
||||
-- Disable F1 in Insert mode
|
||||
keymap('i', '<F1>', '<nop>')
|
||||
|
||||
-- Close Neovim
|
||||
cmd("command! Qa qa")
|
||||
|
||||
-- Remove trailing whitespace when focus is lost or the window is closed,
|
||||
-- without moving the cursor
|
||||
api.nvim_exec([[
|
||||
autocmd FocusLost,WinLeave * if &modifiable | let w:save_cursor = getcurpos() | %s/\s\+$//e | call setpos('.', w:save_cursor) | endif
|
||||
]], false)
|
||||
|
||||
-- Lazy.nvim
|
||||
require("plugins")
|
22
nvim/.config/nvim/lazy-lock.json
Normal file
22
nvim/.config/nvim/lazy-lock.json
Normal file
@ -0,0 +1,22 @@
|
||||
{
|
||||
"LuaSnip": { "branch": "master", "commit": "33b06d72d220aa56a7ce80a0dd6f06c70cd82b9d" },
|
||||
"auto-save.nvim": { "branch": "main", "commit": "979b6c82f60cfa80f4cf437d77446d0ded0addf0" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" },
|
||||
"copilot.vim": { "branch": "release", "commit": "87038123804796ca7af20d1b71c3428d858a9124" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "5f808b5e4fef30bd8aca1b803b4e555da07fc412" },
|
||||
"gruvbox.nvim": { "branch": "main", "commit": "68c3460a5d1d1a362318960035c9f3466d5011f5" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "259357fa4097e232730341fa60988087d189193a" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "7e6c863bc7563efbdd757a310d17ebc95166cef3" },
|
||||
"lsp-zero.nvim": { "branch": "v3.x", "commit": "ab2a3413646fedd77aa0eab4214a6473e62f6a64" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "c6c686781f9841d855bf1b926e10aa5e19430a38" },
|
||||
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "b464658e9b880f463b9f7e6ccddd93fb0013f559" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "b555203ce4bd7ff6192e759af3362f9d217e8c89" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "ff2b85abaa810f6611233dbe6d31c07510ebf43d" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "68fc4c20f5803444277022c681785c5edd11916d" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "eb3e850acff4d9f2f2dd8dacd75353043c899753" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "63f552a7f59badc6e6b6d22e603150f0d5abebb7" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }
|
||||
}
|
14
nvim/.config/nvim/lua/plugins/colorscheme.lua
Normal file
14
nvim/.config/nvim/lua/plugins/colorscheme.lua
Normal file
@ -0,0 +1,14 @@
|
||||
require('gruvbox').setup({
|
||||
priority = 1000,
|
||||
|
||||
config = true,
|
||||
|
||||
contrast = "hard",
|
||||
transparent_mode = true,
|
||||
overrides = {
|
||||
NonText = { fg = "#666666" },
|
||||
},
|
||||
})
|
||||
|
||||
-- Colorscheme
|
||||
vim.cmd("colorscheme gruvbox")
|
0
nvim/.config/nvim/lua/plugins/copilot.lua
Normal file
0
nvim/.config/nvim/lua/plugins/copilot.lua
Normal file
9
nvim/.config/nvim/lua/plugins/gitsigns.lua
Normal file
9
nvim/.config/nvim/lua/plugins/gitsigns.lua
Normal file
@ -0,0 +1,9 @@
|
||||
require('gitsigns').setup({
|
||||
current_line_blame = true,
|
||||
current_line_blame_opts = {
|
||||
virt_text = true,
|
||||
virt_text_pos = 'eol', -- 'eol' | 'overlay' | 'right_align'
|
||||
delay = 0,
|
||||
ignore_whitespace = false,
|
||||
},
|
||||
})
|
12
nvim/.config/nvim/lua/plugins/indent-blankline.lua
Normal file
12
nvim/.config/nvim/lua/plugins/indent-blankline.lua
Normal file
@ -0,0 +1,12 @@
|
||||
vim.cmd [[highlight IndentBlanklineColor guifg=#555555 gui=nocombine]]
|
||||
|
||||
local highlights = {
|
||||
"CursorColumn",
|
||||
"Whitespace",
|
||||
}
|
||||
|
||||
require('ibl').setup({
|
||||
indent = {
|
||||
highlight = highlight,
|
||||
}
|
||||
})
|
68
nvim/.config/nvim/lua/plugins/init.lua
Normal file
68
nvim/.config/nvim/lua/plugins/init.lua
Normal file
@ -0,0 +1,68 @@
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not (vim.uv or 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)
|
||||
|
||||
-- Plugins
|
||||
require("lazy").setup({
|
||||
{ "windwp/nvim-autopairs" },
|
||||
{ "Pocco81/auto-save.nvim" },
|
||||
{ "ellisonleao/gruvbox.nvim" },
|
||||
{ "lewis6991/gitsigns.nvim" },
|
||||
{ "lukas-reineke/indent-blankline.nvim" },
|
||||
{
|
||||
"VonHeikemen/lsp-zero.nvim",
|
||||
branch = "v3.x",
|
||||
dependencies = {
|
||||
"williamboman/mason.nvim",
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
"neovim/nvim-lspconfig",
|
||||
"hrsh7th/nvim-cmp",
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"hrsh7th/cmp-buffer",
|
||||
"L3MON4D3/LuaSnip",
|
||||
},
|
||||
},
|
||||
{
|
||||
"nvim-telescope/telescope.nvim",
|
||||
tag = "0.1.8",
|
||||
dependencies = "nvim-lua/plenary.nvim",
|
||||
},
|
||||
{
|
||||
"nvim-tree/nvim-tree.lua",
|
||||
dependencies = "nvim-tree/nvim-web-devicons",
|
||||
},
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
build = ":TSUpdate",
|
||||
},
|
||||
{
|
||||
"github/copilot.vim",
|
||||
config = function()
|
||||
vim.g.copilot_no_tab_map = true
|
||||
vim.api.nvim_set_keymap(
|
||||
"i",
|
||||
"<C-J>",
|
||||
'copilot#Accept("<CR>")',
|
||||
{ silent = true, expr = true }
|
||||
)
|
||||
end,
|
||||
},
|
||||
})
|
||||
|
||||
require('plugins.colorscheme')
|
||||
require('plugins.gitsigns')
|
||||
require('plugins.indent-blankline')
|
||||
require('plugins.lsp-zero')
|
||||
require('plugins.nvim-autopairs')
|
||||
require('plugins.nvim-tree')
|
||||
require('plugins.telescope')
|
||||
require('plugins.treesitter')
|
62
nvim/.config/nvim/lua/plugins/lsp-zero.lua
Normal file
62
nvim/.config/nvim/lua/plugins/lsp-zero.lua
Normal file
@ -0,0 +1,62 @@
|
||||
local lsp_zero = require('lsp-zero')
|
||||
local cmp = require('cmp')
|
||||
local cmp_action = lsp_zero.cmp_action()
|
||||
|
||||
-- LSP Zero
|
||||
lsp_zero.on_attach(function(client, bufnr)
|
||||
lsp_zero.default_keymaps({buffer = bufnr})
|
||||
end)
|
||||
|
||||
lsp_zero.set_sign_icons({
|
||||
error = '✘',
|
||||
warn = '▲',
|
||||
hint = '⚑',
|
||||
info = '»'
|
||||
})
|
||||
|
||||
-- CMP
|
||||
cmp.setup({
|
||||
source = {
|
||||
{ name = 'nvim_lsp' },
|
||||
{ name = 'buffer' },
|
||||
},
|
||||
window = {
|
||||
completion = cmp.config.window.bordered(),
|
||||
documentation = cmp.config.window.bordered(),
|
||||
},
|
||||
preselect = 'item',
|
||||
completion = {
|
||||
completeopt = 'menu,menuone,noinsert'
|
||||
},
|
||||
mapping = {
|
||||
['<Tab>'] = cmp_action.luasnip_supertab(),
|
||||
['<S-Tab>'] = cmp_action.luasnip_shift_supertab(),
|
||||
['<CR>'] = cmp.mapping.confirm({select = true}),
|
||||
}
|
||||
})
|
||||
|
||||
-- Mason
|
||||
require('mason').setup({})
|
||||
|
||||
require('mason-lspconfig').setup({
|
||||
ensure_installed = {
|
||||
'lua_ls',
|
||||
'ts_ls',
|
||||
'html',
|
||||
'cssls',
|
||||
'jsonls',
|
||||
'emmet_ls',
|
||||
},
|
||||
handlers = {
|
||||
function(server_name)
|
||||
require('lspconfig')[server_name].setup({})
|
||||
end,
|
||||
},
|
||||
})
|
||||
|
||||
-- Show line diagnostics automatically in hover window
|
||||
vim.diagnostic.config({
|
||||
virtual_text = false,
|
||||
})
|
||||
|
||||
vim.cmd [[autocmd CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false})]]
|
4
nvim/.config/nvim/lua/plugins/nvim-autopairs.lua
Normal file
4
nvim/.config/nvim/lua/plugins/nvim-autopairs.lua
Normal file
@ -0,0 +1,4 @@
|
||||
require('nvim-autopairs').setup({
|
||||
event = "InsertEnter",
|
||||
config = true
|
||||
})
|
33
nvim/.config/nvim/lua/plugins/nvim-tree.lua
Normal file
33
nvim/.config/nvim/lua/plugins/nvim-tree.lua
Normal file
@ -0,0 +1,33 @@
|
||||
local function custom_mapping(bufnr)
|
||||
local api = require("nvim-tree.api")
|
||||
|
||||
local function opts(desc)
|
||||
return {
|
||||
desc = "nvim-tree: " .. desc,
|
||||
buffer = bufnr,
|
||||
noremap = true,
|
||||
silent = true,
|
||||
nowait = true
|
||||
}
|
||||
end
|
||||
|
||||
-- default mappings
|
||||
api.config.mappings.default_on_attach(bufnr)
|
||||
|
||||
-- custom mappings
|
||||
vim.keymap.set('n', 's', api.node.open.vertical, opts('Open: Vertical Split'))
|
||||
vim.keymap.set('n', 'u', api.node.navigate.parent_close, opts('Close Directory'))
|
||||
end
|
||||
|
||||
require("nvim-tree").setup({
|
||||
view = {
|
||||
width = {},
|
||||
},
|
||||
on_attach = custom_mapping,
|
||||
})
|
||||
|
||||
-- Tree
|
||||
vim.keymap.set("n", [[<C-\>]], ":NvimTreeToggle<CR>")
|
||||
vim.keymap.set("n", [[<leader>\]], ":NvimTreeToggle<CR>")
|
||||
vim.keymap.set("n", "<leader>ff", ":NvimTreeFindFile<CR>")
|
||||
|
10
nvim/.config/nvim/lua/plugins/telescope.lua
Normal file
10
nvim/.config/nvim/lua/plugins/telescope.lua
Normal file
@ -0,0 +1,10 @@
|
||||
require('telescope').setup({})
|
||||
|
||||
-- Telescope
|
||||
local builtin = require("telescope.builtin")
|
||||
|
||||
vim.keymap.set("n", "<leader>gf", builtin.git_files)
|
||||
vim.keymap.set("n", "<leader>gs", builtin.git_status)
|
||||
vim.keymap.set("n", "<leader>gg", builtin.live_grep)
|
||||
vim.keymap.set("n", "<leader>b", builtin.buffers)
|
||||
|
31
nvim/.config/nvim/lua/plugins/treesitter.lua
Normal file
31
nvim/.config/nvim/lua/plugins/treesitter.lua
Normal file
@ -0,0 +1,31 @@
|
||||
require('nvim-treesitter.configs').setup({
|
||||
ensure_installed = {
|
||||
"bash",
|
||||
"css",
|
||||
"graphql",
|
||||
"html",
|
||||
"javascript",
|
||||
"jsdoc",
|
||||
"json",
|
||||
"lua",
|
||||
"markdown",
|
||||
"python",
|
||||
"query",
|
||||
"regex",
|
||||
"scss",
|
||||
"svelte",
|
||||
"tmux",
|
||||
"typescript",
|
||||
"vim",
|
||||
"vimdoc",
|
||||
"yaml",
|
||||
"tsx",
|
||||
},
|
||||
sync_install = false,
|
||||
highlight = {
|
||||
enable = true,
|
||||
},
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
})
|
70
powerline/.config/powerline/colorschemes/shell/default.json
Normal file
70
powerline/.config/powerline/colorschemes/shell/default.json
Normal file
@ -0,0 +1,70 @@
|
||||
{
|
||||
"groups": {
|
||||
"information:additional": { "fg": "white", "bg": "gray3", "attrs": [] },
|
||||
"information:regular": { "fg": "white", "bg": "gray3", "attrs": ["bold"] },
|
||||
"information:highlighted": { "fg": "white", "bg": "gray4", "attrs": [] },
|
||||
"information:priority": { "fg": "brightyellow", "bg": "mediumorange", "attrs": [] },
|
||||
"warning:regular": { "fg": "white", "bg": "brightred", "attrs": ["bold"] },
|
||||
"critical:failure": { "fg": "white", "bg": "darkestred", "attrs": [] },
|
||||
"critical:success": { "fg": "white", "bg": "darkestgreen", "attrs": [] },
|
||||
"background": { "fg": "white", "bg": "gray0", "attrs": [] },
|
||||
"background:divider": { "fg": "gray5", "bg": "gray0", "attrs": [] },
|
||||
"session": { "fg": "black", "bg": "gray10", "attrs": ["bold"] },
|
||||
"date": { "fg": "gray8", "bg": "gray2", "attrs": [] },
|
||||
"time": { "fg": "gray10", "bg": "gray2", "attrs": ["bold"] },
|
||||
"time:divider": { "fg": "gray5", "bg": "gray2", "attrs": [] },
|
||||
"email_alert": "warning:regular",
|
||||
"email_alert_gradient": { "fg": "white", "bg": "yellow_orange_red", "attrs": ["bold"] },
|
||||
"hostname": { "fg": "black", "bg": "gray10", "attrs": ["bold"] },
|
||||
"weather": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"weather_temp_gradient": { "fg": "blue_red", "bg": "gray0", "attrs": [] },
|
||||
"weather_condition_hot": { "fg": "khaki1", "bg": "gray0", "attrs": [] },
|
||||
"weather_condition_snowy": { "fg": "skyblue1", "bg": "gray0", "attrs": [] },
|
||||
"weather_condition_rainy": { "fg": "skyblue1", "bg": "gray0", "attrs": [] },
|
||||
"uptime": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"external_ip": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"internal_ip": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"network_load": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"network_load_gradient": { "fg": "green_yellow_orange_red", "bg": "gray0", "attrs": [] },
|
||||
"network_load_sent_gradient": "network_load_gradient",
|
||||
"network_load_recv_gradient": "network_load_gradient",
|
||||
"network_load:divider": "background:divider",
|
||||
"system_load": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"system_load_gradient": { "fg": "green_yellow_orange_red", "bg": "gray0", "attrs": [] },
|
||||
"environment": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"cpu_load_percent": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"cpu_load_percent_gradient": { "fg": "green_yellow_orange_red", "bg": "gray0", "attrs": [] },
|
||||
"battery": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"battery_gradient": { "fg": "white_red", "bg": "gray0", "attrs": [] },
|
||||
"battery_full": { "fg": "red", "bg": "gray0", "attrs": [] },
|
||||
"battery_empty": { "fg": "white", "bg": "gray0", "attrs": [] },
|
||||
"player": { "fg": "gray10", "bg": "black", "attrs": [] },
|
||||
"user": { "fg": "white", "bg": "darkblue", "attrs": ["bold"] },
|
||||
"branch": { "fg": "gray9", "bg": "gray2", "attrs": [] },
|
||||
"branch_dirty": { "fg": "brightyellow", "bg": "gray2", "attrs": [] },
|
||||
"branch_clean": { "fg": "gray9", "bg": "gray2", "attrs": [] },
|
||||
"branch:divider": { "fg": "gray7", "bg": "gray2", "attrs": [] },
|
||||
"stash": "branch_dirty",
|
||||
"stash:divider": "branch:divider",
|
||||
"cwd": "information:additional",
|
||||
"cwd:current_folder": "information:regular",
|
||||
"cwd:divider": { "fg": "gray7", "bg": "gray3", "attrs": [] },
|
||||
"virtualenv": { "fg": "white", "bg": "darkcyan", "attrs": [] },
|
||||
"attached_clients": { "fg": "gray8", "bg": "gray0", "attrs": [] },
|
||||
"workspace": "information:regular",
|
||||
"gitstatus": { "fg": "gray9", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_branch": { "fg": "white", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_branch_clean": { "fg": "green", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_branch_dirty": { "fg": "gray9", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_branch_detached": { "fg": "mediumpurple", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_tag": { "fg": "darkcyan", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_behind": { "fg": "gray10", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_ahead": { "fg": "gray10", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_staged": { "fg": "green", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_unmerged": { "fg": "brightred", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_changed": { "fg": "mediumorange", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_untracked": { "fg": "brightestorange", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_stashed": { "fg": "darkblue", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus:divider": { "fg": "gray8", "bg": "gray2", "attrs": [] }
|
||||
}
|
||||
}
|
28
powerline/.config/powerline/colorschemes/tmux/default.json
Normal file
28
powerline/.config/powerline/colorschemes/tmux/default.json
Normal file
@ -0,0 +1,28 @@
|
||||
{
|
||||
"groups": {
|
||||
"active_window_status": {"fg": "gray8", "bg": "gray0", "attrs": []},
|
||||
"window_status": {"fg": "gray70", "bg": "gray0", "attrs": []},
|
||||
"activity_status": {"fg": "yellow", "bg": "gray0", "attrs": []},
|
||||
"bell_status": {"fg": "red", "bg": "gray0", "attrs": []},
|
||||
"window": {"fg": "gray6", "bg": "gray0", "attrs": []},
|
||||
"window:divider": {"fg": "gray4", "bg": "gray0", "attrs": []},
|
||||
"window:current": {"fg": "gray8", "bg": "gray3", "attrs": []},
|
||||
"window_name": {"fg": "white", "bg": "gray3", "attrs": ["bold"]},
|
||||
"session": {"fg": "black", "bg": "gray90", "attrs": ["bold"]},
|
||||
"session:prefix": {"fg": "gray90", "bg": "darkblue", "attrs": ["bold"]},
|
||||
"gitstatus": { "fg": "gray9", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_branch": { "fg": "white", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_branch_clean": { "fg": "green", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_branch_dirty": { "fg": "gray9", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_branch_detached": { "fg": "mediumpurple", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_tag": { "fg": "darkcyan", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_behind": { "fg": "gray10", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_ahead": { "fg": "gray10", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_staged": { "fg": "green", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_unmerged": { "fg": "brightred", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_changed": { "fg": "mediumorange", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_untracked": { "fg": "brightestorange", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus_stashed": { "fg": "darkblue", "bg": "gray2", "attrs": [] },
|
||||
"gitstatus:divider": { "fg": "gray8", "bg": "gray2", "attrs": [] }
|
||||
}
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
{
|
||||
"segments": {
|
||||
"left": [
|
||||
{
|
||||
"function": "powerline.segments.common.net.hostname"
|
||||
},
|
||||
{
|
||||
"function": "powerline.segments.common.env.virtualenv"
|
||||
},
|
||||
{
|
||||
"function": "powerline.segments.shell.cwd"
|
||||
},
|
||||
{
|
||||
"function": "powerline_gitstatus.gitstatus",
|
||||
"args": {
|
||||
"formats": {
|
||||
"branch": "\ue0a0 {}",
|
||||
"tag": " ★ {} ",
|
||||
"behind": " ↓ {}",
|
||||
"ahead": " ↑ {}",
|
||||
"staged": " ● {}",
|
||||
"unmerged": " ✖ {} ",
|
||||
"changed": " ✚ {} ",
|
||||
"untracked": " … {}",
|
||||
"stashed": " ⚑ {}"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
29
powerline/.config/powerline/themes/tmux/default.json
Normal file
29
powerline/.config/powerline/themes/tmux/default.json
Normal file
@ -0,0 +1,29 @@
|
||||
{
|
||||
"segments": {
|
||||
"right": [
|
||||
{
|
||||
"function": "powerline.segments.common.net.network_load"
|
||||
},
|
||||
{
|
||||
"function": "powerline.segments.common.net.internal_ip"
|
||||
},
|
||||
{
|
||||
"function": "powerline_gitstatus.gitstatus",
|
||||
"args": {
|
||||
"formats": {
|
||||
"branch": "\ue0a0 {}",
|
||||
"tag": " ★ {} ",
|
||||
"behind": " ↓ {}",
|
||||
"ahead": " ↑ {}",
|
||||
"staged": " ● {}",
|
||||
"unmerged": " ✖ {} ",
|
||||
"changed": " ✚ {} ",
|
||||
"untracked": " … {}",
|
||||
"stashed": " ⚑ {}"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"left": []
|
||||
}
|
||||
}
|
BIN
profile/.face
Normal file
BIN
profile/.face
Normal file
Binary file not shown.
After Width: | Height: | Size: 918 KiB |
122
rtorrent/.config/rtorrent/rtorrent.rc
Normal file
122
rtorrent/.config/rtorrent/rtorrent.rc
Normal file
@ -0,0 +1,122 @@
|
||||
#############################################################################
|
||||
# A minimal rTorrent configuration that provides the basic features
|
||||
# you want to have in addition to the built-in defaults.
|
||||
#
|
||||
# See https://github.com/rakshasa/rtorrent/wiki/CONFIG-Template
|
||||
# for an up-to-date version.
|
||||
#############################################################################
|
||||
|
||||
|
||||
## Instance layout (base paths)
|
||||
method.insert = cfg.basedir, private|const|string, (cat,"/home/kendall/Downloads/")
|
||||
method.insert = cfg.download, private|const|string, (cat,(cfg.basedir))
|
||||
method.insert = cfg.logs, private|const|string, (cat,(cfg.basedir),".rtorrent/log/")
|
||||
method.insert = cfg.logfile, private|const|string, (cat,(cfg.logs),"rtorrent-",(system.time),".log")
|
||||
method.insert = cfg.session, private|const|string, (cat,(cfg.basedir),".rtorrent/session/")
|
||||
method.insert = cfg.watch, private|const|string, (cat,(cfg.basedir))
|
||||
|
||||
|
||||
## Create instance directories
|
||||
execute.throw = sh, -c, (cat,\
|
||||
"mkdir -p \"",(cfg.download),"\" ",\
|
||||
"\"",(cfg.logs),"\" ",\
|
||||
"\"",(cfg.session),"\" ",\
|
||||
"\"",(cfg.watch),".rtorrent/load\" ",\
|
||||
"\"",(cfg.watch),".rtorrent/start\" ")
|
||||
|
||||
|
||||
## Listening port for incoming peer traffic (fixed; you can also randomize it)
|
||||
network.port_range.set = 50000-50000
|
||||
network.port_random.set = no
|
||||
|
||||
|
||||
## Tracker-less torrent and UDP tracker support
|
||||
## (conservative settings for 'private' trackers, change for 'public')
|
||||
dht.mode.set = disable
|
||||
protocol.pex.set = no
|
||||
|
||||
trackers.use_udp.set = yes
|
||||
|
||||
|
||||
## Peer settings
|
||||
throttle.max_uploads.set = 100
|
||||
throttle.max_uploads.global.set = 250
|
||||
|
||||
throttle.min_peers.normal.set = 20
|
||||
throttle.max_peers.normal.set = 60
|
||||
throttle.min_peers.seed.set = 30
|
||||
throttle.max_peers.seed.set = 80
|
||||
trackers.numwant.set = 80
|
||||
|
||||
protocol.encryption.set = allow_incoming,try_outgoing,enable_retry
|
||||
|
||||
|
||||
## Limits for file handle resources, this is optimized for
|
||||
## an `ulimit` of 1024 (a common default). You MUST leave
|
||||
## a ceiling of handles reserved for rTorrent's internal needs!
|
||||
network.http.max_open.set = 50
|
||||
network.max_open_files.set = 600
|
||||
network.max_open_sockets.set = 300
|
||||
|
||||
|
||||
## Memory resource usage (increase if you have a large number of items loaded,
|
||||
## and/or the available resources to spend)
|
||||
pieces.memory.max.set = 1800M
|
||||
network.xmlrpc.size_limit.set = 4M
|
||||
|
||||
|
||||
## Basic operational settings (no need to change these)
|
||||
session.path.set = (cat, (cfg.session))
|
||||
directory.default.set = (cat, (cfg.download))
|
||||
log.execute = (cat, (cfg.logs), "execute.log")
|
||||
#log.xmlrpc = (cat, (cfg.logs), "xmlrpc.log")
|
||||
execute.nothrow = sh, -c, (cat, "echo >",\
|
||||
(session.path), "rtorrent.pid", " ",(system.pid))
|
||||
|
||||
|
||||
## Other operational settings (check & adapt)
|
||||
encoding.add = utf8
|
||||
system.umask.set = 0027
|
||||
system.cwd.set = (directory.default)
|
||||
network.http.dns_cache_timeout.set = 25
|
||||
schedule2 = monitor_diskspace, 15, 60, ((close_low_diskspace, 1000M))
|
||||
#pieces.hash.on_completion.set = no
|
||||
#view.sort_current = seeding, greater=d.ratio=
|
||||
#keys.layout.set = qwerty
|
||||
#network.http.capath.set = "/etc/ssl/certs"
|
||||
#network.http.ssl_verify_peer.set = 0
|
||||
#network.http.ssl_verify_host.set = 0
|
||||
|
||||
|
||||
## Some additional values and commands
|
||||
method.insert = system.startup_time, value|const, (system.time)
|
||||
method.insert = d.data_path, simple,\
|
||||
"if=(d.is_multi_file),\
|
||||
(cat, (d.directory), /),\
|
||||
(cat, (d.directory), /, (d.name))"
|
||||
method.insert = d.session_file, simple, "cat=(session.path), (d.hash), .torrent"
|
||||
|
||||
|
||||
## Watch directories (add more as you like, but use unique schedule names)
|
||||
## Add torrent
|
||||
schedule2 = watch_load, 11, 10, ((load.verbose, (cat, (cfg.watch), "*.torrent")))
|
||||
## Add & download straight away
|
||||
schedule2 = watch_start, 10, 10, ((load.start_verbose, (cat, (cfg.watch), "*.torrent")))
|
||||
|
||||
|
||||
## Run the rTorrent process as a daemon in the background
|
||||
## (and control via XMLRPC sockets)
|
||||
#system.daemon.set = true
|
||||
#network.scgi.open_local = (cat,(session.path),rpc.socket)
|
||||
#execute.nothrow = chmod,770,(cat,(session.path),rpc.socket)
|
||||
|
||||
|
||||
## Logging:
|
||||
## Levels = critical error warn notice info debug
|
||||
## Groups = connection_* dht_* peer_* rpc_* storage_* thread_* tracker_* torrent_*
|
||||
print = (cat, "Logging to ", (cfg.logfile))
|
||||
log.open_file = "log", (cfg.logfile)
|
||||
log.add_output = "info", "log"
|
||||
#log.add_output = "tracker_debug", "log"
|
||||
|
||||
### END of rtorrent.rc ###
|
55
tmux/.config/tmux/tmux.conf
Normal file
55
tmux/.config/tmux/tmux.conf
Normal file
@ -0,0 +1,55 @@
|
||||
BG=default
|
||||
COLOR1=#16A085
|
||||
COLOR2=#fabd2f
|
||||
|
||||
# Global Settings
|
||||
set -g default-terminal "screen-256color"
|
||||
set -ga terminal-overrides ",*256col*:Tc"
|
||||
|
||||
# Bar Position
|
||||
set -g status-position bottom
|
||||
|
||||
# Bar Background Color
|
||||
set -g status-style 'bg=#{BG}'
|
||||
|
||||
# Command Bar Color
|
||||
set -g message-style 'fg=#{COLOR2}'
|
||||
|
||||
# Session Selector Background Color
|
||||
set -g mode-style 'bg=#{COLOR1}'
|
||||
|
||||
# Border
|
||||
set -g pane-border-style '#{fg=#{COLOR1}}'
|
||||
set -g pane-active-border-style '#{fg=#{COLOR2}}'
|
||||
|
||||
# Extra Space On Top
|
||||
# set -g status 2
|
||||
# set -Fg status-format[1] '#{status-format[0]}'
|
||||
# set -g status-format[0] ''
|
||||
|
||||
# Left
|
||||
set -g status-left '#[fg=#{COLOR1} bold] '
|
||||
|
||||
# Window Status
|
||||
set -g window-status-current-format '#[fg=#{COLOR2} bold]#I#W '
|
||||
set -g window-status-format '#[fg=#{COLOR1} bold]#I#W '
|
||||
|
||||
# Right
|
||||
set -g status-right-length 200
|
||||
set -g status-right '#[fg=#{COLOR1} bold] %l:%M%p %m/%d/%Y #{forecast} '
|
||||
|
||||
# Movement Keybindings
|
||||
bind-key -r -T prefix C-k select-pane -U
|
||||
bind-key -r -T prefix C-j select-pane -D
|
||||
bind-key -r -T prefix C-h select-pane -L
|
||||
bind-key -r -T prefix C-l select-pane -R
|
||||
|
||||
# Plugins
|
||||
set -g @plugin 'tmux-plugins/tpm'
|
||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||
|
||||
set -g @plugin 'aaronpowell/tmux-weather'
|
||||
set -g @forecast-location 75025
|
||||
set -g @forecast-format '%C+%t'
|
||||
|
||||
run '~/.tmux/plugins/tpm/tpm'
|
17
tmuxp/.config/tmuxp/amp.yaml
Normal file
17
tmuxp/.config/tmuxp/amp.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
session_name: Amp
|
||||
windows:
|
||||
- window_name: Amp
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/WEB.AMP.git/
|
||||
- cmd: clear
|
||||
|
||||
- window_name: Server
|
||||
layout: even-horizontal
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/WEB.AMP.git/
|
||||
- cmd: clear
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/WEB.AMP.git/
|
||||
- cmd: clear
|
17
tmuxp/.config/tmuxp/amped-up.yaml
Normal file
17
tmuxp/.config/tmuxp/amped-up.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
session_name: Amped
|
||||
windows:
|
||||
- window_name: Amped
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/amped-up.git/
|
||||
- cmd: clear
|
||||
|
||||
- window_name: Server
|
||||
layout: even-horizontal
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/amped-up.git/
|
||||
- cmd: clear
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/amped-up.git/
|
||||
- cmd: clear
|
17
tmuxp/.config/tmuxp/hfs.yaml
Normal file
17
tmuxp/.config/tmuxp/hfs.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
session_name: HFS
|
||||
windows:
|
||||
- window_name: HFS
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/header-footer-service.git/
|
||||
- cmd: clear
|
||||
|
||||
- window_name: Server
|
||||
layout: even-horizontal
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/header-footer-service.git/
|
||||
- cmd: clear
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/header-footer-service.git/
|
||||
- cmd: clear
|
17
tmuxp/.config/tmuxp/omega.yaml
Normal file
17
tmuxp/.config/tmuxp/omega.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
session_name: Omega
|
||||
windows:
|
||||
- window_name: Omega
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/omega-player.git/
|
||||
- cmd: clear
|
||||
|
||||
- window_name: Server
|
||||
layout: even-horizontal
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/omega-player.git/
|
||||
- cmd: clear
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/omega-player.git/
|
||||
- cmd: clear
|
17
tmuxp/.config/tmuxp/phoenix.yaml
Normal file
17
tmuxp/.config/tmuxp/phoenix.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
session_name: Phoenix
|
||||
windows:
|
||||
- window_name: Phoenix
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/WEB.Phoenix.git/
|
||||
- cmd: clear
|
||||
|
||||
- window_name: Server
|
||||
layout: even-horizontal
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/WEB.Phoenix.git/
|
||||
- cmd: clear
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/WEB.Phoenix.git/
|
||||
- cmd: clear
|
17
tmuxp/.config/tmuxp/ramen.yaml
Normal file
17
tmuxp/.config/tmuxp/ramen.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
session_name: Ramen
|
||||
windows:
|
||||
- window_name: Ramen
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/nextjs-ramen.git/
|
||||
- cmd: clear
|
||||
|
||||
- window_name: Server
|
||||
layout: even-horizontal
|
||||
panes:
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/nextjs-ramen.git/
|
||||
- cmd: clear
|
||||
- shell_command:
|
||||
- cmd: cd ~/Repos/NBC/nextjs-ramen.git/
|
||||
- cmd: clear
|
Loading…
x
Reference in New Issue
Block a user