Compare commits

..

8 commits

25 changed files with 313 additions and 199 deletions

View file

@ -0,0 +1,14 @@
import = [
"~/.config/alacritty/theme.toml",
]
[window]
opacity = 0.9
[font]
size = 14
[[keyboard.bindings]]
action = "ToggleFullscreen"
key = "Return"
mods = "Command"

View file

@ -0,0 +1,26 @@
# Colors (Gruvbox dark)
[colors.primary]
# hard contrast = background = '0x1d2021'
background = "0x282828"
# soft contrast = background = '0x32302f'
foreground = "0xebdbb2"
[colors.normal]
black = '0x282828'
red = '0xcc241d'
green = '0x98971a'
yellow = '0xd79921'
blue = '0x458588'
magenta = '0xb16286'
cyan = '0x689d6a'
white = '0xa89984'
[colors.bright]
black = '0x928374'
red = '0xfb4934'
green = '0xb8bb26'
yellow = '0xfabd2f'
blue = '0x83a598'
magenta = '0xd3869b'
cyan = '0x8ec07c'
white = '0xebdbb2'

View file

@ -0,0 +1,24 @@
# Colors (Gruvbox light)
[colors.primary]
background = "0xfbf1c7"
foreground = "0x3c3836"
[colors.normal]
black = "0xfbf1c7"
blue = "0x458588"
cyan = "0x689d6a"
green = "0x98971a"
magenta = "0xb16286"
red = "0xcc241d"
white = "0x7c6f64"
yellow = "0xd79921"
[colors.bright]
black = "0x928374"
blue = "0x076678"
cyan = "0x427b58"
green = "0x79740e"
magenta = "0x8f3f71"
red = "0x9d0006"
white = "0x3c3836"
yellow = "0xb57614"

View file

@ -1,3 +1,31 @@
#!/bin/bash
osascript -e 'tell app "System Events" to tell appearance preferences to set dark mode to not dark mode'
color_file=$HOME/.config/$USER/color.yml
if ! test -f $color_file; then
mkdir -p $HOME/.config/$USER
echo light > $color_file
fi
old_color=$(cat $color_file)
if [[ $old_color == "dark" ]]; then
new_color=light
else
new_color=dark
fi
alacritty=$HOME/.config/alacritty/
ln -sf $alacritty/themes/$new_color.toml $alacritty/theme.toml
# Alacritty does not notice update of imported symlink
touch $alacritty/alacritty.toml
echo $new_color > $color_file
if tmux info &> /dev/null; then
for pane_info in $(tmux list-panes -a -F '#{pane_id}-#{pane_current_command}'); do
IFS=- read pane cmd <<< "$pane_info"
if [[ $cmd == "vim" || $cmd == "nvim" ]]; then
tmux send-keys -t $pane ":lua ChangeBackground()" ENTER
fi
done
fi

View file

@ -1,3 +0,0 @@
theme = light:gruvboxlight,dark:gruvboxdark
font-size = 14
background-opacity = 0.9

View file

@ -10,5 +10,4 @@
aet-*/**
aet-*
aet_*
*_aet_*

View file

@ -38,6 +38,51 @@ install_shared_brew_packages() {
echo done
}
install_alacritty() {
echo -n Checking Alacritty...
if command -v alacritty > /dev/null; then
echo -n already installed...
else
echo -n installing...
cargo install alacritty
curl \
--fail \
--location \
--output /tmp/Alacritty.svg \
https://raw.githubusercontent.com/alacritty/alacritty/master/extra/logo/alacritty-term.svg
curl \
--fail \
--location \
--output /tmp/Alacritty.desktop \
https://raw.githubusercontent.com/alacritty/alacritty/master/extra/linux/Alacritty.desktop
sudo mv /tmp/Alacritty.svg /usr/share/pixmaps/Alacritty.svg
sudo desktop-file-install /tmp/Alacritty.desktop
sudo update-desktop-database
sudo ln -s /home/$USER/.cargo/bin/alacritty /usr/local/bin/alacritty
fi
echo done
}
install_alacritty_terminfo() {
echo -n Checking Alacritty terminfo...
if infocmp alacritty > /dev/null; then
echo -n already installed...
else
echo -n installing...
curl \
--fail \
--location \
--output /tmp/alacritty.info \
https://raw.githubusercontent.com/alacritty/alacritty/master/extra/alacritty.info
sudo tic -xe alacritty,alacritty-direct /tmp/alacritty.info
fi
echo done
}
install_tmux_terminfo() {
echo -n Checking Tmux terminfo...
if infocmp tmux-256color > /dev/null; then
@ -145,6 +190,17 @@ install_darwin_brew_cask_packages() {
echo done
}
install_color_default() {
echo -n Checking color default file...
if [[ -f $HOME/.config/$USER/color.yml ]]; then
echo -n already installed...
else
echo -n installing....
$HOME/dotfiles/bin/bin/toggle-color-mode
fi
echo done
}
install_darwin_profile_hack() {
echo -n Checking profile hack...
if [[ ! -f /etc/zprofile ]]; then
@ -179,7 +235,7 @@ install_env() {
}
install_stow_paths() {
stow bin ghostty git nvim ruby tmux zsh
stow alacritty bin git nvim ruby tmux zsh
}
install_linux() {
@ -194,7 +250,10 @@ install_linux() {
install_shared_brew_packages
install_fzf
install_rust
install_alacritty
install_alacritty_terminfo
install_stow_paths
install_color_default
}
install_darwin() {
@ -209,6 +268,7 @@ install_darwin() {
install_darwin_brew_cask_packages
install_tmux_terminfo
install_stow_paths
install_color_default
}
main() {

View file

@ -0,0 +1,121 @@
-- PLUGIN CONFIGURATION
--- bufdelete.nvim
vim.keymap.set("n", "<Leader>bd", function()
require("bufdelete").bufdelete(0, true)
end)
--- gitblame.nvim
vim.g.gitblame_use_blame_commit_file_urls = true
vim.g.gitblame_display_virtual_text = 0
require('gitblame').setup {enabled = true}
vim.api.nvim_set_keymap('n', '<leader>gbo', ':GitBlameOpenCommitURL<CR>', {
noremap = true,
silent = true,
})
--- gitlinker.nvim
require"gitlinker".setup({
router = {
browse = {
["^git%.atomaka%.com"] = "https://git.atomaka.com/"
.. "{_A.ORG}/"
.. "{_A.REPO}/commit/"
.. "{_A.REV}/"
},
blame = {
["^git%.atomaka%.com"] = "https://git.atomaka.com/"
.. "{_A.ORG}/"
.. "{_A.REPO}/blame/"
.. "branch/{_A.CURRENT_BRANCH}/"
.. "{_A.FILE}"
},
},
})
vim.keymap.set(
{"n", 'v'},
"<leader>gl",
function()
require("gitlinker").link({ action = require("gitlinker.actions").system })
end,
{ silent = true, noremap = true, desc = "GitLink!" }
)
vim.keymap.set(
{"n", 'v'},
"<leader>glb",
function()
require("gitlinker").link({
router_type = "blame",
action = require("gitlinker.actions").system,
})
end,
{ silent = true, noremap = true, desc = "GitLink! blame" }
)
--- gitsigns.nvim
require("gitsigns").setup()
vim.keymap.set("n", "<leader>gb", require("gitsigns").toggle_current_line_blame)
--- git-messanger.vim
vim.g["git_messenger_always_into_popup"] = 1
--- nvim-surround
require("nvim-surround").setup()
--- telescope.nvim
vim.api.nvim_set_keymap('n', '<leader>t', ':Telescope<CR>', {
noremap = true,
silent = true,
})
vim.keymap.set("n", "<C-p>", function()
require("telescope.builtin").find_files({
file_ignore_patterns = {".git/", "node_modules/"},
hidden = true,
previewer = false,
})
end)
vim.keymap.set('n', '<Leader>ff', function()
require("telescope.builtin").find_files({
file_ignore_patterns = {".git/", "node_modules/"},
hidden = true,
no_ignore = true,
previewer = false,
})
end)
vim.keymap.set('n', '<Leader>fg', function()
require("telescope.builtin").live_grep({
file_ignore_patterns = {".git/", "node_modules/"},
hidden = true,
previewer = false,
})
end)
vim.keymap.set('n', '<Leader>fb', function()
require("telescope.builtin").buffers()
end)
--- whitespace.nvim
require("whitespace-nvim").setup({
hightlight = "red"
})
vim.keymap.set("n", "<Leader>fw", function()
require("whitespace-nvim").trim()
end, { silent = true })
--- vim-zoom
-- let g:zoom#statustext='Z'
vim.api.nvim_tabpage_set_var(0, "zoomed", 0)
vim.keymap.set("n", "<C-w>", function()
local char = vim.fn.nr2char(vim.fn.getchar())
if vim.api.nvim_tabpage_get_var(0, "zoomed")== 1 then
if char == 'v' or char == 's' or char == '' or char == '' then
vim.notify("cannot split when zoomed", vim.log.levels.ERROR)
return ""
end
end
return "<C-w>"..char
end, {expr = true, replace_keycodes = true})
vim.keymap.set("n", "<C-w>z", "<Plug>(zoom-toggle)")
vim.keymap.set("n", "<C-w><C-z>", "<Plug>(zoom-toggle)")

View file

@ -1,23 +1,22 @@
{
"auto-dark-mode.nvim": { "branch": "master", "commit": "02ef9553e2a1d6e861bc6955d58ce5883d28a6ad" },
"bufdelete.nvim": { "branch": "master", "commit": "f6bcea78afb3060b198125256f897040538bcb81" },
"editorconfig.nvim": { "branch": "master", "commit": "5b9e303e1d6f7abfe616ce4cc8d3fffc554790bf" },
"git-blame.nvim": { "branch": "master", "commit": "2883a7460f611c2705b23f12d58d398d5ce6ec00" },
"git-blame.nvim": { "branch": "master", "commit": "8c56e864d448e84e0162872c381dd2715824dce2" },
"git-messenger.vim": { "branch": "master", "commit": "edc603d4cda7894a743e383e16c638e206d03148" },
"gitlinker.nvim": { "branch": "master", "commit": "296ad98061ca31706a7d890a0f13baed6e137c79" },
"gitsigns.nvim": { "branch": "main", "commit": "4c40357994f386e72be92a46f41fc1664c84c87d" },
"gitlinker.nvim": { "branch": "master", "commit": "a221c13fc3c7f5b8799933f4966ee8e618287292" },
"gitsigns.nvim": { "branch": "main", "commit": "1ef74b546732f185d0f806860fa5404df7614f28" },
"gruvbox": { "branch": "master", "commit": "143a3b8babcfd2bce6c99d6ba496942647c3e30b" },
"lazy.nvim": { "branch": "main", "commit": "e5e9bf48211a13d9ee6c1077c88327c49c1ab4a0" },
"nvim-surround": { "branch": "main", "commit": "ae298105122c87bbe0a36b1ad20b06d417c0433e" },
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"telescope.nvim": { "branch": "master", "commit": "78857db9e8d819d3cc1a9a7bdc1d39d127a36495" },
"typescript-vim": { "branch": "master", "commit": "4740441db1e070ef8366c888c658000dd032e4cb" },
"vim-eunuch": { "branch": "master", "commit": "e86bb794a1c10a2edac130feb0ea590a00d03f1e" },
"vim-go": { "branch": "master", "commit": "6adc82bfef7f9a4b0db78065ae51b8ebb145c355" },
"vim-markdown": { "branch": "master", "commit": "f9f845f28f4da33a7655accb22f4ad21f7d9fb66" },
"vim-rails": { "branch": "master", "commit": "b0a5c76f86ea214ade36ab0b811e730c3f0add67" },
"vim-ruby": { "branch": "master", "commit": "9139741a9d786144aae66755df030f8e5fab36df" },
"vim-terraform": { "branch": "master", "commit": "8912ca1be3025a1c9fab193618f3b99517e01973" },
"lazy.nvim": { "branch": "main", "commit": "460e1cd8f24e364d54543a4b0e83f6f4ec1f65fb" },
"nvim-surround": { "branch": "main", "commit": "ec2dc7671067e0086cdf29c2f5df2dd909d5f71f" },
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
"telescope.nvim": { "branch": "master", "commit": "b5fd7f7ae0ea4537511077ed8ef4a6021cedba2f" },
"typescript-vim": { "branch": "master", "commit": "8d169e16b5487771f6568125d4c63e6086e524d9" },
"vim-eunuch": { "branch": "master", "commit": "8fb3904be27b6b60d086f87c2570085902414069" },
"vim-go": { "branch": "master", "commit": "105c4591c99ab152fac967ef4a566c97e071104e" },
"vim-markdown": { "branch": "master", "commit": "f405b47fd8774ecd5e808e6de9c85d9029da251c" },
"vim-rails": { "branch": "master", "commit": "d3954dfe3946c9330dc91b4fbf79ccacb2c626c0" },
"vim-ruby": { "branch": "master", "commit": "f06f069ce67bdda6f2cd408f8859cdf031e5b6b4" },
"vim-terraform": { "branch": "master", "commit": "24de93afb05078bac6a2e966402cc1f672277708" },
"vim-zoom": { "branch": "master", "commit": "01c737005312c09e0449d6518decf8cedfee32c7" },
"whitespace.nvim": { "branch": "master", "commit": "f7d14be0f23a9c1e8021aca70d280aea26649b68" }
}

View file

@ -33,6 +33,17 @@ vim.api.nvim_create_autocmd({"WinLeave"}, {
end
})
--- background matching terminal
function ChangeBackground()
local home = os.getenv("HOME")
local user = os.getenv("USER")
local file = io.open(home.."/.config/"..user.."/color.yml", "rb")
local background = file:read()
file:close()
vim.opt.background = background
end
ChangeBackground()
-- LEADER CONFIGURATION
vim.keymap.set("n", "<leader>sz", ":luafile ~/.config/nvim/init.lua<cr>")

View file

@ -1,14 +0,0 @@
return {
"f-person/auto-dark-mode.nvim",
opts = {
update_interval = 3000,
set_dark_mode = function()
vim.api.nvim_set_option_value("background", "dark", {})
vim.cmd("colorscheme gruvbox")
end,
set_light_mode = function()
vim.api.nvim_set_option_value("background", "light", {})
vim.cmd("colorscheme gruvbox")
end,
},
}

View file

@ -1,6 +0,0 @@
return {
"famiu/bufdelete.nvim",
keys = {
{ "<Leader>bd", function() require("bufdelete").bufdelete(0, true) end }
},
}

View file

@ -1,8 +1,16 @@
return {
"nvim-lua/plenary.nvim",
"nvim-telescope/telescope.nvim",
"famiu/bufdelete.nvim",
"dhruvasagar/vim-zoom",
"gpanders/editorconfig.nvim",
"johnfrankmorgan/whitespace.nvim",
"kylechui/nvim-surround",
-- "FabijanZulj/blame.nvim",
"rhysd/git-messenger.vim",
"lewis6991/gitsigns.nvim",
"linrongbin16/gitlinker.nvim",
"f-person/git-blame.nvim",
"tpope/vim-eunuch",
"gruvbox-community/gruvbox",

View file

@ -1,12 +0,0 @@
return {
"f-person/git-blame.nvim",
event = "VeryLazy",
keys = {
{ "<leader>gbo", "<cmd>GitBlameOpenCommitURL<CR>", desc = "Open Commit" }
},
opts = {
enabled = true,
use_blame_commit_file_urls = true,
display_virtual_text = false
},
}

View file

@ -1,5 +0,0 @@
vim.g["git_messenger_always_into_popup"] = 1
return {
"rhysd/git-messenger.vim"
}

View file

@ -1,27 +0,0 @@
return {
{
"linrongbin16/gitlinker.nvim",
cmd = "GitLink",
opts = {
router = {
browse = {
["^git%.atomaka%.com"] = "https://git.atomaka.com/"
.. "{_A.ORG}/"
.. "{_A.REPO}/commit/"
.. "{_A.REV}/"
},
blame = {
["^git%.atomaka%.com"] = "https://git.atomaka.com/"
.. "{_A.ORG}/"
.. "{_A.REPO}/blame/"
.. "branch/{_A.CURRENT_BRANCH}/"
.. "{_A.FILE}"
},
},
},
keys = {
{ "<leader>gl", "<cmd>GitLink!<cr>", mode = { "n", "v" }, desc = "Gitlink!" },
{ "<leader>glb", "<cmd>GitLink! blame<cr>", mode = { "n", "v" }, desc = "Gitlink! blame" },
},
},
}

View file

@ -1,11 +0,0 @@
return {
"lewis6991/gitsigns.nvim",
keys = {
{
"<leader>gb",
function() require("gitsigns").toggle_current_line_blame() end,
desc = "Toggle line blame"
}
},
config = function() require("gitsigns").setup({}) end,
}

View file

@ -1,7 +0,0 @@
return {
"kylechui/nvim-surround",
event = "VeryLazy",
config = function()
require("nvim-surround").setup({})
end
}

View file

@ -1,46 +0,0 @@
local builtin = require('telescope.builtin')
vim.api.nvim_set_keymap('n', '<leader>t', ':Telescope<CR>', {
noremap = true,
silent = true,
})
vim.keymap.set("n", "<C-p>", function()
builtin.find_files({
file_ignore_patterns = {".git/", "node_modules/"},
hidden = true,
previewer = false,
})
end)
vim.keymap.set('n', '<Leader>ff', function()
builtin.find_files({
file_ignore_patterns = {".git/", "node_modules/"},
hidden = true,
no_ignore = true,
previewer = false,
})
end)
vim.keymap.set('n', '<Leader>fg', function()
builtin.live_grep({
file_ignore_patterns = {".git/", "node_modules/"},
hidden = true,
previewer = false,
})
end)
vim.keymap.set('n', '<Leader>fb', function()
builtin.buffers()
end)
local gem_dir = vim.fn.systemlist("ruby -e 'puts Gem.dir'")[1]
vim.keymap.set('n', '<Leader>fgg', function()
builtin.live_grep({
file_ignore_patterns = {".git/", "node_modules/"},
hidden = true,
previewer = false,
search_dirs = { gem_dir }
})
end)
return {
'nvim-telescope/telescope.nvim',
dependencies = { 'nvim-lua/plenary.nvim' }
}

View file

@ -1,21 +0,0 @@
vim.api.nvim_tabpage_set_var(0, "zoomed", 0)
vim.keymap.set("n", "<C-w>", function()
local char = vim.fn.nr2char(vim.fn.getchar())
if vim.api.nvim_tabpage_get_var(0, "zoomed")== 1 then
if char == 'v' or char == 's' or char == '' or char == '' then
vim.notify("cannot split when zoomed", vim.log.levels.ERROR)
return ""
end
end
return "<C-w>"..char
end, {expr = true, replace_keycodes = true})
return {
"dhruvasagar/vim-zoom",
keys = {
{ "<C-w>z", "<Plug>(zoom-toggle)" },
{ "<C-w><C-z>", "<Plug>(zoom-toggle)" },
}
}

View file

@ -1,15 +0,0 @@
return {
"johnfrankmorgan/whitespace.nvim",
config = function ()
require('whitespace-nvim').setup({
highlight = 'DiffDelete',
})
end,
keys = {
{
"<leader>fw",
function() require('whitespace-nvim').trim() end,
desc = "Fix training whitespace"
}
}
}

View file

@ -1,8 +1,8 @@
alacritty
android-file-transfer
brave-browser
discord
firefox
ghostty
google-chrome
obsidian
podman-desktop

View file

@ -11,8 +11,6 @@ done
source $ZDOTDIR/prompt
setopt append_history
# Larger history
HISTSIZE=20000
HISTFILE=~/.zsh_history
@ -30,6 +28,10 @@ if which mise > /dev/null; then
eval "$(mise activate zsh)"
fi
if [ -f $HOME/.orbstack/shell/init.zsh ]; then
source $HOME/.orbstack/shell/init.zsh 2>/dev/null || :
fi
autoload compinit -Uz
setopt EXTENDEDGLOB
if [[ -n ${ZDOTDIR}/.zcompdump(#qN.m+1) ]]; then

View file

@ -9,7 +9,6 @@ alias awsp="aws-profile"
alias b="bundle"
alias be="bundle exec"
alias bea="run-rails"
alias bel="bundle exec rubocop"
alias ber="bundle exec rake"
alias bet="test-rails"
alias c="clear"

View file

@ -1,5 +1,3 @@
# vim: set filetype=bash :
function advanced-git-checkout {
if [ $# -eq 0 ]; then
git branch \
@ -90,14 +88,6 @@ function install-ruby {
fi
}
function lint-ruby {
if [ -f "aet-rubocop.yml" ]; then
bundle exec rubocop --config aet-rubocop.yml $@
else
bundle exec rubocop $@
fi
}
function password-generator {
if [ -x "$(command -v openssl)" ]; then
password=$(