summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Johnson <[email protected]>2025-01-23 00:41:07 -0500
committerSamuel Johnson <[email protected]>2025-01-23 00:41:07 -0500
commit52a12ad842257b6bcb267b5e0d18c3c10816cf03 (patch)
tree89028d201f571c8baf5e5a8c2ab6cbbd3c95d894
But it was a beginning
-rw-r--r--.config/lf/cleaner2
-rw-r--r--.config/lf/lfrc24
-rw-r--r--.config/lf/previewer16
-rw-r--r--.vimrc39
-rw-r--r--.zshrc130
5 files changed, 211 insertions, 0 deletions
diff --git a/.config/lf/cleaner b/.config/lf/cleaner
new file mode 100644
index 0000000..8d8c8b9
--- /dev/null
+++ b/.config/lf/cleaner
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec kitten icat --clear --stdin no --transfer-mode file </dev/null >/dev/tty
diff --git a/.config/lf/lfrc b/.config/lf/lfrc
new file mode 100644
index 0000000..9522d1b
--- /dev/null
+++ b/.config/lf/lfrc
@@ -0,0 +1,24 @@
+set previewer ctpv
+set cleaner ctpvclear
+&ctpv -s $id
+&ctpvquit $id
+
+cmd open ${{
+readarray -t myfiles < <(printf "%s" "$fx")
+for file in "${myfiles[@]}"; do
+ case $(file --mime-type "$file" -bL) in
+ text/html) setsid -f xdg-open "$file" >/dev/null 2>&1 ;;
+ text/*|application/json) setsid -f konsole -e nvim "$file" >/dev/null 2>&1 ;;
+ video/*) setsid -f vlc "$file" >/dev/null 2>&1 ;;
+ audio/*) setsid -f vlc "$file" >/dev/null 2>&1 ;;
+ application/x-executable|application/x-pie-executable) setsid -f "$file" >/dev/null 2>&1 ;;
+ application/vnd.microsoft.portable-executable) setsid -f wine "$file" >/dev/null 2>&1 ;;
+ *) setsid -f xdg-open "$file" >/dev/null 2>&1 ;;
+ esac
+done
+lf -remote "send unselect \"${myfiles[@]}\""
+}}
+
+cmd drag ${{
+~/.cargo/bin/ripdrag $fx
+}}
diff --git a/.config/lf/previewer b/.config/lf/previewer
new file mode 100644
index 0000000..e755ce2
--- /dev/null
+++ b/.config/lf/previewer
@@ -0,0 +1,16 @@
+#!/usr/bin/sh
+file=$1
+w=$2
+h=$3
+x=$4
+y=$5
+
+case "$(file -Lb --mime-type -- "$1")" in
+ image/*)
+ kitty +kitten icat --silent --stdin no --transfer-mode file --place "${w}x${h}@${x}x${y}" "$file" < /dev/null > /dev/tty
+ exit 1
+ ;;
+ *)
+ pistol "$1"
+ ;;
+esac
diff --git a/.vimrc b/.vimrc
new file mode 100644
index 0000000..72b0954
--- /dev/null
+++ b/.vimrc
@@ -0,0 +1,39 @@
+call plug#begin()
+
+Plug 'prabirshrestha/vim-lsp'
+Plug 'mattn/vim-lsp-settings'
+
+Plug 'prabirshrestha/asyncomplete.vim'
+Plug 'prabirshrestha/asyncomplete-lsp.vim'
+
+Plug 'lunacookies/vim-substrata'
+
+Plug 'preservim/tagbar'
+
+Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
+Plug 'junegunn/fzf.vim'
+
+Plug 'itchyny/lightline.vim'
+
+call plug#end()
+
+set termguicolors
+colorscheme substrata
+
+if executable('ada_language_server')
+ au User lsp_setup call lsp#register_server({
+ \ 'name': 'ada_language_server',
+ \ 'cmd': ['ada_language_server'],
+ \ 'allowlist': ['ada'],
+ \ 'workspace_config': {'ada': {
+ \ 'projectFile': "project.gpr",
+ \ 'scenarioVariables': {"ARCH": "x86_64-pc-linux-gnu"}}},
+ \ })
+endif
+
+nnoremap <C-s> :Files<CR>
+nnoremap <F8> :TagbarToggle<CR>
+
+set tabstop=4
+set shiftwidth=4
+set expandtab
diff --git a/.zshrc b/.zshrc
new file mode 100644
index 0000000..33d8864
--- /dev/null
+++ b/.zshrc
@@ -0,0 +1,130 @@
+# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
+# Initialization code that may require console input (password prompts, [y/n]
+# confirmations, etc.) must go above this block; everything else may go below.
+if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
+ source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
+fi
+
+# If you come from bash you might have to change your $PATH.
+# export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH
+
+# Path to your Oh My Zsh installation.
+export ZSH="$HOME/.oh-my-zsh"
+
+# Set name of the theme to load --- if set to "random", it will
+# load a random theme each time Oh My Zsh is loaded, in which case,
+# to know which specific one was loaded, run: echo $RANDOM_THEME
+# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
+# ZSH_THEME="robbyrussell"
+
+# Set list of themes to pick from when loading at random
+# Setting this variable when ZSH_THEME=random will cause zsh to load
+# a theme from this variable instead of looking in $ZSH/themes/
+# If set to an empty array, this variable will have no effect.
+# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
+
+# Uncomment the following line to use case-sensitive completion.
+# CASE_SENSITIVE="true"
+
+# Uncomment the following line to use hyphen-insensitive completion.
+# Case-sensitive completion must be off. _ and - will be interchangeable.
+# HYPHEN_INSENSITIVE="true"
+
+# Uncomment one of the following lines to change the auto-update behavior
+# zstyle ':omz:update' mode disabled # disable automatic updates
+# zstyle ':omz:update' mode auto # update automatically without asking
+# zstyle ':omz:update' mode reminder # just remind me to update when it's time
+
+# Uncomment the following line to change how often to auto-update (in days).
+# zstyle ':omz:update' frequency 13
+
+# Uncomment the following line if pasting URLs and other text is messed up.
+# DISABLE_MAGIC_FUNCTIONS="true"
+
+# Uncomment the following line to disable colors in ls.
+# DISABLE_LS_COLORS="true"
+
+# Uncomment the following line to disable auto-setting terminal title.
+# DISABLE_AUTO_TITLE="true"
+
+# Uncomment the following line to enable command auto-correction.
+# ENABLE_CORRECTION="true"
+
+# Uncomment the following line to display red dots whilst waiting for completion.
+# You can also set it to another string to have that shown instead of the default red dots.
+# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
+# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
+# COMPLETION_WAITING_DOTS="true"
+
+# Uncomment the following line if you want to disable marking untracked files
+# under VCS as dirty. This makes repository status check for large repositories
+# much, much faster.
+# DISABLE_UNTRACKED_FILES_DIRTY="true"
+
+# Uncomment the following line if you want to change the command execution time
+# stamp shown in the history command output.
+# You can set one of the optional three formats:
+# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
+# or set a custom format using the strftime function format specifications,
+# see 'man strftime' for details.
+# HIST_STAMPS="mm/dd/yyyy"
+
+# Would you like to use another custom folder than $ZSH/custom?
+# ZSH_CUSTOM=/path/to/new-custom-folder
+
+# Which plugins would you like to load?
+# Standard plugins can be found in $ZSH/plugins/
+# Custom plugins may be added to $ZSH_CUSTOM/plugins/
+# Example format: plugins=(rails git textmate ruby lighthouse)
+# Add wisely, as too many plugins slow down shell startup.
+plugins=(
+ git
+ zsh-autosuggestions
+ fast-syntax-highlighting
+)
+
+ZSH_THEME="powerlevel10k/powerlevel10k"
+source $ZSH/oh-my-zsh.sh
+
+# User configuration
+
+# export MANPATH="/usr/local/man:$MANPATH"
+
+# You may need to manually set your language environment
+# export LANG=en_US.UTF-8
+
+# Preferred editor for local and remote sessions
+# if [[ -n $SSH_CONNECTION ]]; then
+# export EDITOR='vim'
+# else
+# export EDITOR='mvim'
+# fi
+
+# Compilation flags
+# export ARCHFLAGS="-arch $(uname -m)"
+
+# Set personal aliases, overriding those provided by Oh My Zsh libs,
+# plugins, and themes. Aliases can be placed here, though Oh My Zsh
+# users are encouraged to define aliases within a top-level file in
+# the $ZSH_CUSTOM folder, with .zsh extension. Examples:
+# - $ZSH_CUSTOM/aliases.zsh
+# - $ZSH_CUSTOM/macos.zsh
+# For a full list of active aliases, run `alias`.
+#
+# Example aliases
+# alias zshconfig="mate ~/.zshrc"
+# alias ohmyzsh="mate ~/.oh-my-zsh"
+
+# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
+[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
+
+PATH="$PATH:/usr/sbin:/home/$USER/go/bin"
+
+alias yactl="$HOME/.local/share/yabridge/yabridgectl"
+alias spacechk="du -skmh -- *(/D) | pr -2ts | column -t"
+alias dev="tmux new-session -s \"Dev\" -d; tmux split-window -v; tmux resize-pane -D 10; tmux send-keys -t -1 \"vim\" Enter; tmux attach -t Dev"
+alias tkill="tmux kill-pane -a; exit"
+alias dotfiles="/usr/bin/git --git-dir=$HOME/Documents/repos/.dotfiles/ --work-tree=$HOME"
+
+# kitty ssh fix
+[[ "$TERM" == "xterm-kitty" ]] && alias ssh="TERM=xterm-256color ssh"