Compare commits

...

8 Commits

17 changed files with 200 additions and 186 deletions

View File

@@ -1,54 +1,50 @@
tap "homebrew/autoupdate" # Casks
tap "homebrew/bundle" cask "aerospace"
tap "homebrew/services" cask "jordanbaird-ice@beta"
tap "nikitabobko/tap" cask "monitorcontrol"
cask "opencloud"
cask "sioyek"
cask "wireshark-app"
cask "airbuddy"
cask "karabiner-elements"
cask "mos"
cask "prismlauncher"
cask "stremio"
cask "zen"
cask "bettertouchtool"
cask "flameshot"
cask "keyboard-cleaner"
cask "notchnook"
cask "qbittorrent"
cask "stretchly"
cask "brave-browser"
cask "hot"
cask "obs"
cask "qmk-toolbox"
cask "tailscale-app"
cask "zotero"
cask "discord"
cask "iina"
cask "obsidian"
cask "raycast"
# Tools
brew "atuin"
brew "bat"
brew "btop" brew "btop"
brew "htop" brew "htop"
brew "cmake"
brew "coreutils", link: false
brew "dart-sdk", link: false
brew "duf"
brew "eza" brew "eza"
brew "fd" brew "fd"
brew "fzf" brew "fzf"
brew "gcc"
brew "git" brew "git"
brew "git-delta" brew "git-delta"
brew "git-lfs" brew "gnu-tar"
brew "lazygit" brew "lazygit"
brew "llvm" brew "iperf3"
brew "neovim" brew "ncdu"
brew "openjdk@17"
brew "openssh" brew "openssh"
brew "pandoc"
brew "ripgrep" brew "ripgrep"
brew "rustup" brew "starship"
brew "shellcheck"
brew "texlive", link: false
brew "tmux"
brew "watch"
brew "wget" brew "wget"
cask "aerospace" brew "zsh"
cask "bartender"
cask "discord"
cask "element"
cask "firefox"
cask "flameshot"
cask "font-fira-mono-nerd-font"
cask "font-jetbrains-mono-nerd-font"
cask "iina"
cask "karabiner-elements"
cask "mos"
cask "nextcloud"
cask "notchnook"
cask "obs"
cask "obs-ndi"
cask "obsidian"
cask "raycast"
cask "skim"
cask "stremio"
cask "thunderbird"
cask "wezterm"
cask "wireshark"
cask "zotero"
cask "bitwarden"
cask "wireguard-tools"

View File

@@ -42,6 +42,10 @@ if.app-id = 'org.mozilla.firefox'
if.window-title-regex-substring = 'Picture-in-Picture' if.window-title-regex-substring = 'Picture-in-Picture'
run = 'layout floating' run = 'layout floating'
[[on-window-detected]]
if.app-id = 'com.brave.Browser'
run = 'layout floating'
[[on-window-detected]] [[on-window-detected]]
if.app-id = 'app.zen-browser.zen' if.app-id = 'app.zen-browser.zen'
if.window-title-regex-substring = 'Picture-in-Picture' if.window-title-regex-substring = 'Picture-in-Picture'
@@ -64,6 +68,10 @@ run = 'layout floating'
if.app-id = 'org.wireshark.Wireshark' if.app-id = 'org.wireshark.Wireshark'
run = 'layout tiling' run = 'layout tiling'
[[on-window-detected]]
if.app-id = 'eu.opencloud.desktop'
run = 'layout tiling'
[mode.service.binding] [mode.service.binding]
u = ['reload-config', 'mode main'] u = ['reload-config', 'mode main']

View File

@@ -1,5 +1,5 @@
# Theme # Theme
theme = dark:GruvboxDarkHard,light:AtomOneLight theme = dark:Gruvbox Dark Hard,light:Atom One Light
# Font # Font
font-family = IosevkaDT Nerd Font font-family = IosevkaDT Nerd Font

View File

@@ -967,6 +967,10 @@
{ {
"from": { "key_code": "right_option" }, "from": { "key_code": "right_option" },
"to": [{ "apple_vendor_top_case_key_code": "keyboard_fn" }] "to": [{ "apple_vendor_top_case_key_code": "keyboard_fn" }]
},
{
"from": { "apple_vendor_top_case_key_code": "keyboard_fn" },
"to": [{ "key_code": "left_control" }]
} }
] ]
}, },

View File

@@ -8,9 +8,6 @@ return {
}, },
version = '*', version = '*',
opts = { opts = {
enabled = function()
return not (string.find(vim.bo.filetype, "himalaya") or string.find(vim.bo.filetype, "mail"))
end,
keymap = { keymap = {
preset = 'default', preset = 'default',
['<Up>'] = {}, ['<Up>'] = {},

View File

@@ -19,28 +19,6 @@ return {
event = "VeryLazy", event = "VeryLazy",
opts = {} opts = {}
}, },
-- {
-- "ray-x/go.nvim",
-- dependencies = {
-- "ray-x/guihua.lua",
-- "neovim/nvim-lspconfig",
-- "nvim-treesitter/nvim-treesitter",
-- },
-- config = function(lp, opts)
-- require("go").setup(opts)
-- local format_sync_grp = vim.api.nvim_create_augroup("GoFormat", {})
-- vim.api.nvim_create_autocmd("BufWritePre", {
-- pattern = "*.go",
-- callback = function()
-- require('go.format').goimports()
-- end,
-- group = format_sync_grp,
-- })
-- end,
-- event = { "CmdlineEnter" },
-- ft = { "go", 'gomod' },
-- build = ':lua require("go.install").update_all_sync()'
-- },
{ {
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
dependencies = { dependencies = {
@@ -169,48 +147,47 @@ return {
lspconfig["pyright"].setup({ lspconfig["pyright"].setup({
capabilities = capabilities, capabilities = capabilities,
}) })
vim.lsp.config["tinymist"].capabilities = capabilities vim.lsp.config["tinymist"] = {
vim.lsp.enable("tinymist") capabilities = capabilities,
end, settings = {
-- exportPdf = "onType",
-- outputPath = "$root/$name",
formatterMode = "typstyle",
fontPaths = {
"./fonts"
}
}, },
{ on_attach = function(client, bufnr)
'mrcjkb/rustaceanvim', vim.keymap.set("n", "<leader>tp", function()
version = '^5', client:exec_cmd({
lazy = false title = "pin",
command = "tinymist.pinMain",
arguments = { vim.api.nvim_buf_get_name(0) },
}, { bufnr = bufnr })
end, { desc = "[T]inymist [P]in", noremap = true })
vim.keymap.set("n", "<leader>tu", function()
client:exec_cmd({
title = "unpin",
command = "tinymist.pinMain",
arguments = { vim.v.null },
}, { bufnr = bufnr })
end, { desc = "[T]inymist [U]npin", noremap = true })
end,
}
vim.lsp.enable("tinymist")
vim.lsp.config['nil_ls'].capabilities = capabilities
vim.lsp.enable('nil_ls')
end,
}, },
{ {
'chomosuke/typst-preview.nvim', 'chomosuke/typst-preview.nvim',
ft = 'typst', ft = 'typst',
version = '1.*', version = '1.*',
opts = {}, opts = {
extra_args = {"--font-path=fonts"},
invert_colors = '{"rest": "auto","image": "never"}'
}, },
{
"leoluz/nvim-dap-go",
ft = "go",
dependencies = "mfussenegger/nvim-dap",
opts = {}
},
{
"rcarriga/nvim-dap-ui",
event = "VeryLazy",
dependencies = { "mfussenegger/nvim-dap", "nvim-neotest/nvim-nio" },
config = function()
local dap = require("dap")
local dapui = require("dapui")
dapui.setup()
dap.listeners.after.event_initialized["dapui_config"] = function()
dapui.open()
end
dap.listeners.before.event_terminated["dapui_config"] = function()
dapui.close()
end
dap.listeners.before.event_exited["dapui_config"] = function()
dapui.close()
end
end
},
{
"mfussenegger/nvim-dap",
}, },
{ {
"stevearc/conform.nvim", "stevearc/conform.nvim",

View File

@@ -25,7 +25,14 @@ return {
statuscolumn = { enabled = true }, statuscolumn = { enabled = true },
dashboard = { enabled = true }, dashboard = { enabled = true },
input = { enabled = true }, input = { enabled = true },
image = { enabled = true }, image = {
doc = {
inline = false,
float = true,
max_width = 10,
max_height = 5,
}
},
lazygit = { lazygit = {
vim.keymap.set('n', '<leader>lg', function() vim.keymap.set('n', '<leader>lg', function()
Snacks.lazygit.open() Snacks.lazygit.open()
@@ -47,27 +54,9 @@ return {
end end
}, },
"tpope/vim-fugitive", "tpope/vim-fugitive",
{
'codethread/qmk.nvim',
config = function()
---@type qmk.UserConfig
local conf = {
name = 'LAYOUT_lily58_pro',
variant = 'zmk',
layout = {
'x x x x x x _ _ _ _ x x x x x x',
'x x x x x x _ _ _ _ x x x x x x',
'x x x x x x _ _ _ _ x x x x x x',
'x x x x x x x _ _ x x x x x x x',
'_ _ _ x x x x _ _ x x x x _ _ _',
}
}
require('qmk').setup(conf)
end
},
{ {
"afonsofrancof/worktrees.nvim", "afonsofrancof/worktrees.nvim",
dev = false, dev = true,
event = "VeryLazy", event = "VeryLazy",
opts = { opts = {
mappings = { mappings = {

View File

@@ -53,5 +53,4 @@ return {
}) })
end end
}, },
"kyoh86/vim-jsonl"
} }

View File

@@ -1,14 +1,5 @@
return { return {
-- {
-- "vimpostor/vim-tpipeline",
-- config = function()
-- vim.g.tpipeline_restore = 0
-- vim.g.tpipeline_autoembed = 0
-- vim.o.laststatus = 0
-- vim.g.tpipeline_statusline = '%=%l:%c'
-- end
-- },
{ {
"folke/noice.nvim", "folke/noice.nvim",
event = "VeryLazy", event = "VeryLazy",
@@ -34,19 +25,6 @@ return {
"MunifTanjim/nui.nvim", "MunifTanjim/nui.nvim",
} }
}, },
{
'kevinhwang91/nvim-ufo',
event = "VeryLazy",
dependencies = 'kevinhwang91/promise-async',
config = function()
vim.o.foldcolumn = '0'
vim.o.foldlevel = 99
vim.o.foldlevelstart = 99
vim.keymap.set('n', 'zR', require('ufo').openAllFolds)
vim.keymap.set('n', 'zM', require('ufo').closeAllFolds)
require('ufo').setup()
end
},
{ {
"OXY2DEV/markview.nvim", "OXY2DEV/markview.nvim",
ft = "markdown", ft = "markdown",
@@ -61,9 +39,4 @@ return {
require 'colorizer'.setup() require 'colorizer'.setup()
end end
}, },
{
"echasnovski/mini.diff",
opts = {}
}
} }

View File

@@ -1,14 +0,0 @@
# --> Catppuccin (Frappe)
thm_bg="#303446"
thm_fg="#c6d0f5"
thm_cyan="#99d1db"
thm_black="#292c3c"
thm_gray="#414559"
thm_magenta="#ca9ee6"
thm_pink="#f4b8e4"
thm_red="#e78284"
thm_green="#a6d189"
thm_yellow="#e5c890"
thm_blue="#8caaee"
thm_orange="#ef9f76"
thm_black4="#626880"

View File

@@ -1,14 +0,0 @@
#--> Catppuccin (Latte)
bg="dce0e8"
fg="4c4f69"
cyan="179299"
black="e6e9ef"
gray="bcc0cc"
magenta="ea76cb"
pink="8839ef"
red="d20f39"
green="40a02b"
yellow="df8e1d"
blue="1e66f5"
orange="fe640b"
black4="acb0be"

View File

@@ -32,12 +32,14 @@ set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible' set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'niqodea/tmux-matryoshka' set -g @plugin 'niqodea/tmux-matryoshka'
set -g @plugin 'laktak/extrakto' set -g @plugin 'laktak/extrakto'
set -g @plugin 'Morantron/tmux-fingers'
# Plugin settings # Plugin settings
set -g @resurrect-strategy-nvim 'session' set -g @resurrect-strategy-nvim 'session'
set -g @resurrect-capture-pane-contents 'on' set -g @resurrect-capture-pane-contents 'on'
set -g @continuum-save-interval '5' set -g @continuum-save-interval '5'
set -g @open-lazygit 'g' set -g @open-lazygit 'g'
set -g @fingers-key f
# Binds # Binds
bind-key 'x' kill-pane bind-key 'x' kill-pane
@@ -78,5 +80,4 @@ unbind-key -T copy-mode-vi MouseDragEnd1Pane
bind-key -T copy-mode-vi MouseDown1Pane select-pane\; send-keys -X clear-selection bind-key -T copy-mode-vi MouseDown1Pane select-pane\; send-keys -X clear-selection
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
set-environment -g PATH "/opt/homebrew/bin:/bin:/usr/bin"
run '~/.config/tmux/plugins/tpm/tpm' run '~/.config/tmux/plugins/tpm/tpm'

View File

@@ -46,9 +46,10 @@ export GOBIN="$GOPATH/bin"
# OS-specific exports # OS-specific exports
if [[ $(uname) == "Darwin" ]]; then if [[ $(uname) == "Darwin" ]]; then
prepend_path PATH "/opt/homebrew/bin" prepend_path PATH "/opt/homebrew/bin"
if [ -n "$(/usr/libexec/java_home 2>/dev/null)" ]; then
export JAVA_HOME=$(/usr/libexec/java_home) export JAVA_HOME=$(/usr/libexec/java_home)
fi
export GEM_HOME=$HOME/.gem export GEM_HOME=$HOME/.gem
export GOROOT=$(brew --prefix golang)/libexec
prepend_path PATH "/opt/homebrew/opt/texlive/bin" prepend_path PATH "/opt/homebrew/opt/texlive/bin"
append_path PATH $GEM_HOME/bin append_path PATH $GEM_HOME/bin
fi fi

View File

@@ -16,3 +16,4 @@ fi
eval "$(atuin init zsh --disable-up-arrow)" eval "$(atuin init zsh --disable-up-arrow)"
eval "$(starship init zsh)"

View File

@@ -41,6 +41,4 @@ function cd()
builtin cd "$@" && ls; builtin cd "$@" && ls;
} }
alias bb="brew bundle --file=~/Brewfile"

37
.local/bin/macos.sh Executable file
View File

@@ -0,0 +1,37 @@
#!/bin/bash
echo "Configuring macOS system defaults..."
# NSGlobalDomain settings
defaults write -g AppleShowAllExtensions -bool true
defaults write -g ApplePressAndHoldEnabled -bool false
defaults write -g KeyRepeat -int 2
defaults write -g InitialKeyRepeat -int 15
defaults write -g com.apple.mouse.tapBehavior -int 1
defaults write -g com.apple.sound.beep.volume -float 0.0
defaults write -g com.apple.sound.beep.feedback -int 0
# Dock settings
defaults write com.apple.dock autohide -bool true
defaults write com.apple.dock autohide-delay -float 0.1
defaults write com.apple.dock autohide-time-modifier -float 0.0
defaults write com.apple.dock show-recents -bool false
defaults write com.apple.dock launchanim -bool false
defaults write com.apple.dock orientation -string "bottom"
defaults write com.apple.dock tilesize -int 48
defaults write com.apple.dock mineffect -string "scale"
# Finder settings
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true
# Trackpad settings
defaults write com.apple.AppleMultitouchTrackpad Clicking -bool true
defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true
defaults write com.apple.AppleMultitouchTrackpad TrackpadThreeFingerDrag -bool true
defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad TrackpadThreeFingerDrag -bool true
echo "Restarting affected services..."
killall Dock
killall Finder
echo "Configuration complete! Some changes may require a logout/login to take effect."

61
Brewfile Normal file
View File

@@ -0,0 +1,61 @@
# Casks
cask "aerospace"
cask "jordanbaird-ice@beta"
cask "monitorcontrol"
cask "opencloud"
cask "sioyek"
cask "wireshark-app"
cask "airbuddy"
cask "karabiner-elements"
cask "mos"
cask "prismlauncher"
cask "stremio"
cask "zen"
cask "bettertouchtool"
cask "flameshot"
cask "keyboard-cleaner"
cask "notchnook"
cask "qbittorrent"
cask "stretchly"
cask "brave-browser"
cask "hot"
cask "obs"
cask "qmk-toolbox"
cask "tailscale-app"
cask "zotero"
cask "discord"
cask "iina"
cask "obsidian"
cask "raycast"
# Tools
brew "atuin"
brew "bat"
brew "btop"
brew "htop"
brew "eza"
brew "fd"
brew "fzf"
brew "git"
brew "git-delta"
brew "gnu-tar"
brew "lazygit"
brew "iperf3"
brew "ncdu"
brew "openssh"
brew "pandoc"
brew "ripgrep"
brew "starship"
brew "zsh"
brew "wget"
brew "ninja"
brew "cmake"
brew "gettext"
brew "curl"
brew "libevent"
brew "ncurses"
brew "utf8proc"
brew "coreutils"
brew "bash"
brew "aria2"
cask "orion"