From 0051a163c37a5053c01dc71f13ca31ee43a4eefa Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 02:25:06 +0100 Subject: [PATCH 01/48] breaking: Remove setup script and use chezmoi --- .chezmoiignore | 13 + .just.d/check.just | 45 --- .just.d/cmds.just | 26 -- .just.d/common.just | 52 --- .just.d/linux.just | 61 ---- .just.d/misc.just | 15 - .just.d/tools.just | 69 ---- .just.d/vars.just | 42 --- Justfile | 15 - bootstrap/components/emacs.sh | 11 - bootstrap/components/mocha-port.bash | 231 ------------- bootstrap/components/mocha_port.fish | 43 --- bootstrap/components/pwsh.ps1 | 3 - bootstrap/components/requirements.txt | 112 ------- bootstrap/components/rime.sh | 17 - bootstrap/components/symlinks.bash | 110 ------ bootstrap/components/zsh.sh | 28 -- bootstrap/linux/appman.bash | 12 - bootstrap/linux/chromium-flags.bash | 71 ---- bootstrap/linux/chromium-flags.hypr.bash | 71 ---- bootstrap/linux/electron_flag_append.py | 44 --- bootstrap/linux/main.bash | 193 ----------- bootstrap/linux/symlinks.bash | 29 -- bootstrap/linux/wsl.bash | 1 - bootstrap/macOS/Brewfile | 150 --------- bootstrap/macOS/duti.zsh | 74 ---- bootstrap/macOS/main.zsh | 106 ------ bootstrap/macOS/plist.zsh | 37 -- bootstrap/macOS/symlinks.zsh | 29 -- bootstrap/setup.ps1 | 223 ------------- bootstrap/setup.sh | 28 -- bootstrap/win/Defender.ps1 | 23 -- bootstrap/win/Environments.ps1 | 93 ------ bootstrap/win/Registry.ps1 | 11 - bootstrap/win/Tasks.ps1 | 21 -- bootstrap/win/symlinks.ps1 | 78 ----- {tools => dot_config}/doom/beancount.el | 0 {tools => dot_config}/doom/calendar.el | 0 {tools => dot_config}/doom/config.el | 0 dot_config/doom/dot_custom.el | 13 + .../doom/dot_gitignore | 0 {tools => dot_config}/doom/evil.el | 0 {tools => dot_config}/doom/init.el | 0 .../lisp/org-pomodoro-music-controller.el | 0 .../lisp/org-pomodoro-telegram-notifier.el | 0 {tools => dot_config}/doom/org.el | 0 {tools => dot_config}/doom/packages.el | 0 .../doom/snippets/org-mode/align-math | 0 .../doom/snippets/org-mode/display-math | 0 .../doom/snippets/org-mode/inline-math | 0 .../doom/snippets/org-mode/limit | 0 .../doom/snippets/org-mode/summation | 0 .../doom/snippets/org-mode/unnumbered | 0 {tools => dot_config}/doom/telega.el | 0 {tools => dot_config}/doom/treemacs.el | 0 dot_config/fish/completions/.keep | 0 {tools => dot_config}/fish/conf.d/0init.fish | 0 {tools => dot_config}/fish/conf.d/alias.fish | 0 .../fish/conf.d/colorscheme.fish | 0 {tools => dot_config}/fish/conf.d/keymap.fish | 0 .../fish/conf.d/keymap/+colemak.fish | 0 {tools => dot_config}/fish/conf.d/navi.fish | 0 {tools => dot_config}/fish/conf.d/prompt.fish | 0 .../fish/conf.d/winterop.fish | 0 {tools => dot_config}/fish/config.fish | 0 .../fish/dot_gitignore | 0 dot_config/fish/functions/.keep | 0 dot_config/fish/private_fish_variables | 39 +++ {tools => dot_config}/fish/readme.md | 0 .../fish/themes/Catppuccin Latte.theme | 0 .../fish/themes/Catppuccin Mocha.theme | 0 .../fish/themes/Rosé Pine Dawn.theme | 0 .../kitty/dark-theme.auto.conf | 0 {tools => dot_config}/kitty/kitty.conf | 0 .../kitty/light-theme.auto.conf | 0 {tools => dot_config}/kitty/window.py | 0 .../nvim/dot_editorconfig | 0 {tools => dot_config}/nvim/init.lua | 0 dot_config/nvim/lazy-lock.json | 53 +++ {tools => dot_config}/nvim/lsp/bashls.lua | 0 {tools => dot_config}/nvim/lsp/beancount.lua | 0 {tools => dot_config}/nvim/lsp/clangd.lua | 0 {tools => dot_config}/nvim/lsp/gopls.lua | 0 {tools => dot_config}/nvim/lsp/jdtls.lua | 0 {tools => dot_config}/nvim/lsp/jsonls.lua | 0 {tools => dot_config}/nvim/lsp/luals.lua | 0 .../nvim/lsp/markdown_oxide.lua | 0 {tools => dot_config}/nvim/lsp/pyright.lua | 0 .../nvim/lsp/rust_analyzer.lua | 0 {tools => dot_config}/nvim/lsp/taplo.lua | 0 {tools => dot_config}/nvim/lsp/vimls.lua | 0 {tools => dot_config}/nvim/lsp/yamlls.lua | 0 .../nvim/lua/config/colors.lua | 0 .../nvim/lua/config/colorscheme.lua | 0 .../nvim/lua/config/diagnostics.lua | 0 .../nvim/lua/config/icons.lua | 0 .../nvim/lua/config/keymaps.lua | 0 .../nvim/lua/config/migration.lua | 0 .../nvim/lua/config/options.lua | 0 .../nvim/lua/config/plugins.lua | 0 .../nvim/lua/config/servers.lua | 0 .../nvim/lua/config/vscode.lua | 0 .../nvim/lua/keymaps/basic.lua | 0 .../nvim/lua/keymaps/buffer.lua | 0 .../nvim/lua/keymaps/init.lua | 0 .../nvim/lua/keymaps/language.lua | 0 .../nvim/lua/keymaps/leaders.bak | 0 .../nvim/lua/keymaps/leaders.lua | 0 .../nvim/lua/keymaps/lspkeys.lua | 0 .../nvim/lua/keymaps/modifier.lua | 0 .../nvim/lua/keymaps/nvim-tree.lua | 0 .../nvim/lua/keymaps/user-command.lua | 0 .../nvim/lua/keymaps/utils.lua | 0 .../nvim/lua/keymaps/visual-multi.lua | 0 .../nvim/lua/keymaps/which.lua | 0 .../nvim/lua/plugins/appearance.lua | 0 .../nvim/lua/plugins/completion.lua | 0 .../nvim/lua/plugins/dap.lua | 0 .../nvim/lua/plugins/edit.lua | 0 .../nvim/lua/plugins/fileutils.lua | 0 .../nvim/lua/plugins/init.lua | 0 .../nvim/lua/plugins/lang/beancount.lua | 0 .../nvim/lua/plugins/lang/init.lua | 0 .../nvim/lua/plugins/lang/just.lua | 0 .../nvim/lua/plugins/lang/lua.lua | 0 .../nvim/lua/plugins/lang/markdown/init.lua | 0 .../plugins/lang/markdown/markview.lua.bak | 0 .../plugins/lang/markdown/obsidian-nvim.lua | 0 .../plugins/lang/markdown/render-markdown.lua | 0 .../nvim/lua/plugins/lang/org.lua | 0 .../nvim/lua/plugins/lang/tex.lua | 0 .../nvim/lua/plugins/lang/treesitter.lua | 0 .../nvim/lua/plugins/lang/typst.lua | 0 .../nvim/lua/plugins/lazy-nvim.lua | 0 .../nvim/lua/plugins/misc.lua | 0 .../nvim/lua/plugins/mod/alpha-nvim.lua | 0 .../nvim/lua/plugins/mod/autopairs.lua | 0 .../nvim/lua/plugins/mod/avante-nvim.lua | 0 .../nvim/lua/plugins/mod/blink-cmp.lua | 0 .../nvim/lua/plugins/mod/bufferline.lua | 0 .../nvim/lua/plugins/mod/conform-nvim.lua | 0 .../nvim/lua/plugins/mod/copilot-lua.lua | 0 .../nvim/lua/plugins/mod/fzf.lua | 0 .../nvim/lua/plugins/mod/hover-nvim.lua | 0 .../nvim/lua/plugins/mod/image-nvim.lua | 0 .../nvim/lua/plugins/mod/img-clip.lua | 0 .../lua/plugins/mod/lualine/components.lua | 0 .../nvim/lua/plugins/mod/lualine/init.lua | 0 .../nvim/lua/plugins/mod/mc.lua | 0 .../nvim/lua/plugins/mod/neo-tree.lua | 0 .../nvim/lua/plugins/mod/nvim-cmp.lua | 0 .../nvim/lua/plugins/mod/nvim-lspconfig.lua | 0 .../nvim/lua/plugins/mod/nvim-tree.lua | 0 .../nvim/lua/plugins/mod/snacks-nvim.lua | 0 .../nvim/lua/plugins/mod/telescope.lua | 0 .../nvim/lua/plugins/mod/toggleterm.lua | 0 .../nvim/lua/plugins/mod/trouble-nvim.lua | 0 .../nvim/lua/plugins/mod/which-keys-nvim.lua | 0 {tools => dot_config}/nvim/readme.md | 0 {tools => dot_config}/nvim/stylua.toml | 0 {common => dot_config/rtorrent}/rtorrent.rc | 0 {tools => dot_config}/tmux/+colemak.tmux | 0 {tools => dot_config}/tmux/+qwerty.tmux | 0 {tools => dot_config}/tmux/tmux.conf | 0 tools/emacs.d/.gitignore | 30 -- tools/emacs.d/early-init.el | 1 - tools/emacs.d/init.el | 65 ---- tools/emacs.d/lisp/init-ai.el | 14 - tools/emacs.d/lisp/init-appearance.el | 110 ------ tools/emacs.d/lisp/init-basic.el | 81 ----- tools/emacs.d/lisp/init-beancount.el | 39 --- tools/emacs.d/lisp/init-calendar.el | 99 ------ tools/emacs.d/lisp/init-counsel.el | 31 -- tools/emacs.d/lisp/init-edit.el | 102 ------ tools/emacs.d/lisp/init-evil.el | 93 ------ tools/emacs.d/lisp/init-file.el | 87 ----- tools/emacs.d/lisp/init-keymaps.el | 8 - tools/emacs.d/lisp/init-latex.el | 50 --- tools/emacs.d/lisp/init-markdown.el | 12 - tools/emacs.d/lisp/init-org.el | 315 ------------------ tools/emacs.d/lisp/init-package.el | 68 ---- tools/emacs.d/lisp/init-scratch.el | 5 - tools/emacs.d/lisp/init-treesitter.el | 28 -- tools/emacs.d/lisp/init-wayland.el | 11 - tools/emacs.d/lisp/init-writer.el | 8 - tools/emacs.d/site-lisp | 1 - tools/emacs.d/snippets/org-mode/begin_quote | 7 - tools/emacs.d/snippets/org-mode/begin_src | 8 - .../emacs.d/snippets/org-mode/begin_src_elisp | 8 - tools/nvim/lua/plugins/mod/dap-setup.lua | 1 - 190 files changed, 118 insertions(+), 3456 deletions(-) create mode 100644 .chezmoiignore delete mode 100644 .just.d/check.just delete mode 100644 .just.d/cmds.just delete mode 100644 .just.d/common.just delete mode 100644 .just.d/linux.just delete mode 100644 .just.d/misc.just delete mode 100644 .just.d/tools.just delete mode 100644 .just.d/vars.just delete mode 100644 Justfile delete mode 100644 bootstrap/components/emacs.sh delete mode 100644 bootstrap/components/mocha-port.bash delete mode 100644 bootstrap/components/mocha_port.fish delete mode 100644 bootstrap/components/pwsh.ps1 delete mode 100644 bootstrap/components/requirements.txt delete mode 100644 bootstrap/components/rime.sh delete mode 100644 bootstrap/components/symlinks.bash delete mode 100644 bootstrap/components/zsh.sh delete mode 100644 bootstrap/linux/appman.bash delete mode 100755 bootstrap/linux/chromium-flags.bash delete mode 100755 bootstrap/linux/chromium-flags.hypr.bash delete mode 100644 bootstrap/linux/electron_flag_append.py delete mode 100644 bootstrap/linux/main.bash delete mode 100644 bootstrap/linux/symlinks.bash delete mode 100644 bootstrap/linux/wsl.bash delete mode 100644 bootstrap/macOS/Brewfile delete mode 100644 bootstrap/macOS/duti.zsh delete mode 100644 bootstrap/macOS/main.zsh delete mode 100644 bootstrap/macOS/plist.zsh delete mode 100644 bootstrap/macOS/symlinks.zsh delete mode 100644 bootstrap/setup.ps1 delete mode 100644 bootstrap/setup.sh delete mode 100644 bootstrap/win/Defender.ps1 delete mode 100644 bootstrap/win/Environments.ps1 delete mode 100644 bootstrap/win/Registry.ps1 delete mode 100644 bootstrap/win/Tasks.ps1 delete mode 100644 bootstrap/win/symlinks.ps1 rename {tools => dot_config}/doom/beancount.el (100%) rename {tools => dot_config}/doom/calendar.el (100%) rename {tools => dot_config}/doom/config.el (100%) create mode 100644 dot_config/doom/dot_custom.el rename tools/doom/.gitignore => dot_config/doom/dot_gitignore (100%) rename {tools => dot_config}/doom/evil.el (100%) rename {tools => dot_config}/doom/init.el (100%) rename {tools => dot_config}/doom/lisp/org-pomodoro-music-controller.el (100%) rename {tools => dot_config}/doom/lisp/org-pomodoro-telegram-notifier.el (100%) rename {tools => dot_config}/doom/org.el (100%) rename {tools => dot_config}/doom/packages.el (100%) rename {tools => dot_config}/doom/snippets/org-mode/align-math (100%) rename {tools => dot_config}/doom/snippets/org-mode/display-math (100%) rename {tools => dot_config}/doom/snippets/org-mode/inline-math (100%) rename {tools => dot_config}/doom/snippets/org-mode/limit (100%) rename {tools => dot_config}/doom/snippets/org-mode/summation (100%) rename {tools => dot_config}/doom/snippets/org-mode/unnumbered (100%) rename {tools => dot_config}/doom/telega.el (100%) rename {tools => dot_config}/doom/treemacs.el (100%) create mode 100644 dot_config/fish/completions/.keep rename {tools => dot_config}/fish/conf.d/0init.fish (100%) rename {tools => dot_config}/fish/conf.d/alias.fish (100%) rename {tools => dot_config}/fish/conf.d/colorscheme.fish (100%) rename {tools => dot_config}/fish/conf.d/keymap.fish (100%) rename {tools => dot_config}/fish/conf.d/keymap/+colemak.fish (100%) rename {tools => dot_config}/fish/conf.d/navi.fish (100%) rename {tools => dot_config}/fish/conf.d/prompt.fish (100%) rename {tools => dot_config}/fish/conf.d/winterop.fish (100%) rename {tools => dot_config}/fish/config.fish (100%) rename tools/fish/.gitignore => dot_config/fish/dot_gitignore (100%) create mode 100644 dot_config/fish/functions/.keep create mode 100644 dot_config/fish/private_fish_variables rename {tools => dot_config}/fish/readme.md (100%) rename {tools => dot_config}/fish/themes/Catppuccin Latte.theme (100%) rename {tools => dot_config}/fish/themes/Catppuccin Mocha.theme (100%) rename {tools => dot_config}/fish/themes/Rosé Pine Dawn.theme (100%) rename {tools => dot_config}/kitty/dark-theme.auto.conf (100%) rename {tools => dot_config}/kitty/kitty.conf (100%) rename {tools => dot_config}/kitty/light-theme.auto.conf (100%) rename {tools => dot_config}/kitty/window.py (100%) rename tools/nvim/.editorconfig => dot_config/nvim/dot_editorconfig (100%) rename {tools => dot_config}/nvim/init.lua (100%) create mode 100644 dot_config/nvim/lazy-lock.json rename {tools => dot_config}/nvim/lsp/bashls.lua (100%) rename {tools => dot_config}/nvim/lsp/beancount.lua (100%) rename {tools => dot_config}/nvim/lsp/clangd.lua (100%) rename {tools => dot_config}/nvim/lsp/gopls.lua (100%) rename {tools => dot_config}/nvim/lsp/jdtls.lua (100%) rename {tools => dot_config}/nvim/lsp/jsonls.lua (100%) rename {tools => dot_config}/nvim/lsp/luals.lua (100%) rename {tools => dot_config}/nvim/lsp/markdown_oxide.lua (100%) rename {tools => dot_config}/nvim/lsp/pyright.lua (100%) rename {tools => dot_config}/nvim/lsp/rust_analyzer.lua (100%) rename {tools => dot_config}/nvim/lsp/taplo.lua (100%) rename {tools => dot_config}/nvim/lsp/vimls.lua (100%) rename {tools => dot_config}/nvim/lsp/yamlls.lua (100%) rename {tools => dot_config}/nvim/lua/config/colors.lua (100%) rename {tools => dot_config}/nvim/lua/config/colorscheme.lua (100%) rename {tools => dot_config}/nvim/lua/config/diagnostics.lua (100%) rename {tools => dot_config}/nvim/lua/config/icons.lua (100%) rename {tools => dot_config}/nvim/lua/config/keymaps.lua (100%) rename {tools => dot_config}/nvim/lua/config/migration.lua (100%) rename {tools => dot_config}/nvim/lua/config/options.lua (100%) rename {tools => dot_config}/nvim/lua/config/plugins.lua (100%) rename {tools => dot_config}/nvim/lua/config/servers.lua (100%) rename {tools => dot_config}/nvim/lua/config/vscode.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/basic.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/buffer.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/init.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/language.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/leaders.bak (100%) rename {tools => dot_config}/nvim/lua/keymaps/leaders.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/lspkeys.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/modifier.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/nvim-tree.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/user-command.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/utils.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/visual-multi.lua (100%) rename {tools => dot_config}/nvim/lua/keymaps/which.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/appearance.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/completion.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/dap.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/edit.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/fileutils.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/init.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/beancount.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/init.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/just.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/lua.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/markdown/init.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/markdown/markview.lua.bak (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/markdown/render-markdown.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/org.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/tex.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/treesitter.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lang/typst.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/lazy-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/misc.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/alpha-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/autopairs.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/avante-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/blink-cmp.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/bufferline.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/conform-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/copilot-lua.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/fzf.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/hover-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/image-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/img-clip.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/lualine/components.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/lualine/init.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/mc.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/neo-tree.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/nvim-cmp.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/nvim-lspconfig.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/nvim-tree.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/snacks-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/telescope.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/toggleterm.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/trouble-nvim.lua (100%) rename {tools => dot_config}/nvim/lua/plugins/mod/which-keys-nvim.lua (100%) rename {tools => dot_config}/nvim/readme.md (100%) rename {tools => dot_config}/nvim/stylua.toml (100%) rename {common => dot_config/rtorrent}/rtorrent.rc (100%) rename {tools => dot_config}/tmux/+colemak.tmux (100%) rename {tools => dot_config}/tmux/+qwerty.tmux (100%) rename {tools => dot_config}/tmux/tmux.conf (100%) delete mode 100644 tools/emacs.d/.gitignore delete mode 100644 tools/emacs.d/early-init.el delete mode 100644 tools/emacs.d/init.el delete mode 100644 tools/emacs.d/lisp/init-ai.el delete mode 100644 tools/emacs.d/lisp/init-appearance.el delete mode 100644 tools/emacs.d/lisp/init-basic.el delete mode 100644 tools/emacs.d/lisp/init-beancount.el delete mode 100644 tools/emacs.d/lisp/init-calendar.el delete mode 100644 tools/emacs.d/lisp/init-counsel.el delete mode 100644 tools/emacs.d/lisp/init-edit.el delete mode 100644 tools/emacs.d/lisp/init-evil.el delete mode 100644 tools/emacs.d/lisp/init-file.el delete mode 100644 tools/emacs.d/lisp/init-keymaps.el delete mode 100644 tools/emacs.d/lisp/init-latex.el delete mode 100644 tools/emacs.d/lisp/init-markdown.el delete mode 100644 tools/emacs.d/lisp/init-org.el delete mode 100644 tools/emacs.d/lisp/init-package.el delete mode 100644 tools/emacs.d/lisp/init-scratch.el delete mode 100644 tools/emacs.d/lisp/init-treesitter.el delete mode 100644 tools/emacs.d/lisp/init-wayland.el delete mode 100644 tools/emacs.d/lisp/init-writer.el delete mode 120000 tools/emacs.d/site-lisp delete mode 100644 tools/emacs.d/snippets/org-mode/begin_quote delete mode 100644 tools/emacs.d/snippets/org-mode/begin_src delete mode 100644 tools/emacs.d/snippets/org-mode/begin_src_elisp delete mode 100644 tools/nvim/lua/plugins/mod/dap-setup.lua diff --git a/.chezmoiignore b/.chezmoiignore new file mode 100644 index 0000000..9f409eb --- /dev/null +++ b/.chezmoiignore @@ -0,0 +1,13 @@ +# .chezmoiignore + +# macOS only +{{ if ne .chezmoi.os "darwin" -}} +{{ end -}} + +# Linux only +{{ if ne .chezmoi.os "linux" -}} +{{ end -}} + +# Windows only +{{ if ne .chezmoi.os "windows" -}} +{{ end -}} diff --git a/.just.d/check.just b/.just.d/check.just deleted file mode 100644 index b06d518..0000000 --- a/.just.d/check.just +++ /dev/null @@ -1,45 +0,0 @@ - -test: - echo "DOTFILES={{DOTFILES}}" - echo "XDG_CONFIG_HOME={{XDG_CONFIG_HOME}}" - echo "XDG_DATA_HOME={{XDG_DATA_HOME}}" - - -check: - @just check_shell -format: - @just format_shell - - -[private] -[unix] -check_shell: - shellcheck -x -s sh --severity=error **/*.sh platforms/mac/yabairc - shellcheck -x -s bash --severity=error **/*.bash tools/bash/* **/*.bashrc - -[private] -[unix] -format_shell: - shfmt -w -i 2 -ci -bn -p **/*.sh - shfmt -w -i 2 -ci -bn -ln bash **/*.bash platforms/mac/sketchybar/sketchybarrc - # Ignore syntax errors in zsh files - shfmt -w -i 2 -ci -bn -ln bash **/*.zsh tools/zsh/**/* **/zshrc || true - -[private] -check_info: - shellcheck -x -s sh **/*.sh platforms/mac/yabairc - shellcheck -x -s bash **/*.bash tools/bash/* scripts/*.{sh,zsh,bash} **/*.bashrc - -[private] -init: - git remote add github git@github.com:js0ny/dotfiles.git - git remote add codeberg git@codeberg.org:js0ny/dotfiles.git - -[private] -push: - git push github master - git push codeberg master - -[private] -pull: - git pull github master diff --git a/.just.d/cmds.just b/.just.d/cmds.just deleted file mode 100644 index eb93a58..0000000 --- a/.just.d/cmds.just +++ /dev/null @@ -1,26 +0,0 @@ - -# Sudo and coreutils are required -LN := \ - if os_family() == "windows" { - "sudo ln -sf" - } else { - "ln -sf" - } -CLIP := \ - if os() == "windows" { "clip.exe" } \ - else if os() == "linux" { "wl-copy" } \ - else if os() == "macos" { "pbcopy" } \ - else { "" } - - -CURL := \ - if os() == "windows" { "Invoke-WebRequest" } \ - else if os() == "linux" { "curl -L" } \ - else if os() == "macos" { "curl -L" } \ - else { "" } - -CURL_OUT := \ - if os() == "windows" { "-OutFile" } \ - else if os() == "linux" { "-o" } \ - else if os() == "macos" { "-o" } \ - else { "" } diff --git a/.just.d/common.just b/.just.d/common.just deleted file mode 100644 index 1530a10..0000000 --- a/.just.d/common.just +++ /dev/null @@ -1,52 +0,0 @@ -ideavim: - {{LN}} {{DOTFILES}}/common/ideavimrc {{XDG_CONFIG_HOME}}/ideavim/ideavimrc - git clone https://github.com/MarcoIeni/intellimacs {{join(home_directory(), ".local/share/intellimacs")}} --depth 1 - -lsd: - -mkdir {{XDG_CONFIG_HOME}}/lsd - {{LN}} {{DOTFILES}}/common/lsd.yaml {{XDG_CONFIG_HOME}}/lsd/config.yaml - -bat: - mkdir -p "$(bat --config-dir)/themes" - wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Latte.tmTheme - wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Frappe.tmTheme - wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Macchiato.tmTheme - wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Mocha.tmTheme - {{LN}} {{DOTFILES}}/common/bat.config.dark {{DOTFILES}}/common/bat.config - {{LN}} {{DOTFILES}}/common/bat.config {{XDG_CONFIG_HOME}}/bat/config - -[unix] -neovide: - which neovide - -mkdir -p {{XDG_CONFIG_HOME}}/neovide - {{LN}} {{DOTFILES}}/platforms/{{OS}}/neovide.toml {{XDG_CONFIG_HOME}}/neovide/config.toml - - -[linux] -readline: - mkdir -p {{XDG_CONFIG_HOME}}/readline - {{LN}} {{DOTFILES}}/common/inputrc {{XDG_CONFIG_HOME}}/readline/inputrc - -[unix] -rtorrent: - mkdir -p {{XDG_CONFIG_HOME}}/rtorrent - {{LN}} {{DOTFILES}}/common/rtorrent.rc {{XDG_CONFIG_HOME}}/rtorrent/rtorrent.rc - mkdir -p {{XDG_DATA_HOME}}/rtorrent/session - mkdir -p {{XDG_DATA_HOME}}/rtorrent/watch - -starship: - {{LN}} {{DOTFILES}}/common/starship.toml {{XDG_CONFIG_HOME}}/starship.toml - - -[unix] -vim: - mkdir -p {{XDG_DATA_HOME}}/vim/after - mkdir -p {{XDG_STATE_HOME}}/vim/{backup,swap,undo,view} - mkdir -p {{XDG_CONFIG_HOME}}/vim/ - ln -sf {{DOTFILES}}/common/vimrc {{XDG_CONFIG_HOME}}/vim/vimrc - - -[windows] -vim: - New-Item -ItemType SymbolicLink -Path $HOME/_vimrc -Value {{DOTFILES}}/common/vim.noxdg.vimrc - diff --git a/.just.d/linux.just b/.just.d/linux.just deleted file mode 100644 index f5ac99d..0000000 --- a/.just.d/linux.just +++ /dev/null @@ -1,61 +0,0 @@ - -[linux] -systemd: - {{LN}} {{DOTFILES}}/platforms/{{OS}}/systemd {{XDG_CONFIG_HOME}}/systemd - -[linux] -keyd: - -which keyd || sudo pacman -S keyd --noconfirm || sudo apt install keyd --yes || @just build_keyd - sudo mkdir /etc/keyd/ - sudo cp {{DOTFILES}}/platforms/linux/keyd/default.conf /etc/keyd/default.conf - mkdir -p {{XDG_CONFIG_HOME}}/keyd - {{LN}} {{DOTFILES}}/platforms/linux/keyd/app.conf {{XDG_CONFIG_HOME}}/keyd/app.conf - sudo systemctl enable --now keyd.service - -[linux] -[private] -build_keyd: - git clone https://github.com/rvaiya/keyd $HOME/.local/build/keyd - cd $HOME/.local/build/keyd && make && sudo make install - -[linux] -flatpak: - flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo - -[linux] -swaylock: - mkdir -p {{XDG_CONFIG_HOME}}/swaylock - {{LN}} {{DOTFILES}}/platforms/linux/swaylock {{XDG_CONFIG_HOME}}/swaylock/config - -[linux] -dunst: - mkdir -p {{XDG_CONFIG_HOME}}/dunst - {{LN}} {{DOTFILES}}/platforms/linux/dunstrc {{XDG_CONFIG_HOME}}/dunst/dunstrc - -[linux] -hypr: - {{LN}} {{DOTFILES}}/platforms/linux/hypr/hyprland/dark.conf {{DOTFILES}}/platforms/linux/hypr/hyprland/current.conf - {{LN}} {{DOTFILES}}/platforms/linux/hypr {{XDG_CONFIG_HOME}}/hypr - -[linux] -rofi: - {{LN}} {{DOTFILES}}/platforms/linux/rofi/dark.rasi {{DOTFILES}}/platforms/linux/rofi/current.rasi - {{LN}} {{DOTFILES}}/platforms/linux/rofi {{XDG_CONFIG_HOME}}/rofi - -[linux] -waybar: - {{LN}} {{DOTFILES}}/platforms/linux/waybar {{XDG_CONFIG_HOME}}/waybar - {{LN}} {{DOTFILES}}/platforms/linux/waybar/dark.css {{DOTFILES}}/platforms/linux/waybar/current.css - -[linux] -hyprland: - @just hypr - @just dunst - @just swaylock - @just rofi - - -[linux] -fcitx: - [ -d {{XDG_CONFIG_HOME}}/fcitx5 ] && mv {{XDG_CONFIG_HOME}}/fcitx {{XDG_CONFIG_HOME}}/fcitx5.bak - {{LN}} {{DOTFILES}}/platforms/linux/fcitx5 {{XDG_CONFIG_HOME}}/fcitx5 diff --git a/.just.d/misc.just b/.just.d/misc.just deleted file mode 100644 index aef7bc8..0000000 --- a/.just.d/misc.just +++ /dev/null @@ -1,15 +0,0 @@ -uv: - uv init {{XDG_DATA_HOME}}/uvenv - cd {{XDG_DATA_HOME}}/uvenv - uv venv - uv add -r {{DOTFILES}}/bootstrap/components/requirements.txt - -vivaldi: - {{CURL}} https://github.com/catppuccin/vivaldi/releases/download/1.0.0-ctpv2/Catppuccin.Latte.Lavender.zip {{CURL_OUT}} "$HOME/Downloads/vivaldi-light.zip" # Catppuccin Latte Lavender - {{CURL}} https://github.com/catppuccin/vivaldi/releases/download/1.0.0-ctpv2/Catppuccin.Mocha.Lavender.zip {{CURL_OUT}} "$HOME/Downloads/vivaldi-dark.zip" # Catppuccin Mocha Lavender - - -zotero: - {{CURL}} https://github.com/syt2/zotero-addons/releases/download/V1.8.1/zotero-addons.xpi {{CURL_OUT}} "$HOME/Downloads/zotero-addons.xpi" - - diff --git a/.just.d/tools.just b/.just.d/tools.just deleted file mode 100644 index b0a4096..0000000 --- a/.just.d/tools.just +++ /dev/null @@ -1,69 +0,0 @@ -[unix] -kitty: - which kitty - {{LN}} {{DOTFILES}}/tools/kitty {{XDG_CONFIG_HOME}}/kitty - -neovim: - which nvim - {{LN}} {{DOTFILES}}/tools/nvim {{XDG_CONFIG_HOME}}/nvim - nvim --headless +checkhealth +"w nvim-healthcheck.txt" +qall - -nvim: - @just neovim - -[linux] -bash: - {{LN}} {{DOTFILES}}/tools/bash {{XDG_CONFIG_HOME}}/bash - sudo cp {{DOTFILES}}/tools/bash/xdg-compat.sh /etc/profile.d/xdg-compat.sh - -[unix] -fish: - {{LN}} {{DOTFILES}}/tools/fish {{XDG_CONFIG_HOME}}/fish - {{CURL}} https://raw.githubusercontent.com/SpaceAceMonkey/dotenv-for-fish/refs/heads/main/dotenv.fish {{CURL_OUT}} "{{DOTFILES}}/tools/fish/functions/dotenv.fish" - -[unix] -screen: - {{LN}} {{DOTFILES}}/tools/screen {{XDG_CONFIG_HOME}}/screen - -[unix] -tmux: - {{LN}} {{DOTFILES}}/tools/tmux {{XDG_CONFIG_HOME}}/tmux - -thunderbird: - {{CURL}} https://github.com/wshanks/tbkeys/releases/download/v2.4.0/tbkeys.xpi {{CURL_OUT}} "$HOME/Downloads/tbkeys.xpi" - {{CURL}} https://github.com/htyxyt/htyxyt-immersive-translate-Thunderbird/releases/download/thunderbird-v1.14.8/immersive-translate-Thunderbird.v1.14.8.xpi {{CURL_OUT}} "$HOME/Downloads/immersive-translate-Thunderbird.xpi" - {{CURL}} https://raw.githubusercontent.com/catppuccin/thunderbird/refs/heads/main/themes/mocha/mocha-lavender.xpi {{CURL_OUT}} "$HOME/Downloads/thunderbird-dark.xpi" - cat {{DOTFILES}}/tools/thunderbird/tbkeys.json | {{CLIP}} - -wezterm: - which wezterm - {{LN}} {{DOTFILES}}/tools/wezterm {{XDG_CONFIG_HOME}}/wezterm - - -yazi: - which yazi || cargo install --locked yazi-fm yazi-cli - -ya pack -a llanosrocas/yaziline - -ya pack -a yazi-rs/plugins:git - -ya pack -a Rolv-Apneseth/starship - -[unix] -zsh: - -[[ -f /etc/zshenv ]] && sudo cp {{DOTFILES}}/tools/zsh/global.zshenv /etc/zshenv # or /etc/zsh/zshenv - -[[ -f /etc/zsh/zshenv ]] && sudo cp {{DOTFILES}}/tools/zsh/global.zshenv /etc/zsh/zshenv - mkdir -p {{XDG_CONFIG_HOME}}/zsh - {{LN}} {{DOTFILES}}/tools/zsh/zshenv {{XDG_CONFIG_HOME}}/zsh/.zshenv - {{LN}} {{DOTFILES}}/tools/zsh/zshrc {{XDG_CONFIG_HOME}}/zsh/.zshrc - {{LN}} {{DOTFILES}}/tools/zsh/zprofile {{XDG_CONFIG_HOME}}/zsh/.zprofile - test -d {{XDG_CONFIG_HOME}}/zsh/plugins/zsh-autosuggestions || git clone --depth 1 https://github.com/zsh-users/zsh-autosuggestions.git {{XDG_CONFIG_HOME}}/zsh/plugins/zsh-autosuggestions - test -d {{XDG_CONFIG_HOME}}/zsh/plugins/zsh-syntax-highlighting || git clone --depth 1 https://github.com/zsh-users/zsh-syntax-highlighting.git {{XDG_CONFIG_HOME}}/zsh/plugins/zsh-syntax-highlighting - test -d {{XDG_CONFIG_HOME}}/zsh/plugins/zsh-history-substring-search || git clone --depth 1 https://github.com/zsh-users/zsh-history-substring-search.git {{XDG_CONFIG_HOME}}/zsh/plugins/zsh-history-substring-search - test -d {{XDG_CONFIG_HOME}}/zsh/plugins/zsh-completions || git clone --depth 1 https://github.com/zsh-users/zsh-completions.git {{XDG_CONFIG_HOME}}/zsh/plugins/zsh-completions - -[linux] -install_emacs: - git clone --depth 1 https://github.com/emacs-mirror/emacs.git --branch feature/igc $HOME/.local/build/emacs-igc-build - cd $HOME/.local/build/emacs-igc-build - ./autogen.sh - ./configure --with-mailutils --with-native-compilation --with-pgtk --with-tree-sitter --with-imagemagick - make -j$(nproc) - sudo make install diff --git a/.just.d/vars.just b/.just.d/vars.just deleted file mode 100644 index 5fd1146..0000000 --- a/.just.d/vars.just +++ /dev/null @@ -1,42 +0,0 @@ -OS := \ - if os() == "linux" { - if env("WSL_DISTRO_NAME","") != "" { - "wsl" - } else { - "linux" - } - } else if os() == "windows" { - "win" - } else if os() == "macos" { - "mac" - } else { "" } -DOTFILES := join(home_directory(), ".dotfiles") -XDG_CONFIG_HOME := \ - if env("XDG_CONFIG_HOME", "") != "" {env("XDG_CONFIG_HOME", "")} \ - else { - if os_family() == "windows" { - env("APPDATA") - } else { - join(home_directory(), ".config") - } - } - -XDG_DATA_HOME := \ - if env("XDG_DATA_HOME", "") != "" {env("XDG_DATA_HOME", "")} \ - else { - if os_family() == "windows" { - env("LOCALAPPDATA", "") - } else { - join(home_directory(), ".local/share") - } - } - -XDG_STATE_HOME := \ - if env("XDG_STATE_HOME", "") != "" {env("XDG_STATE_HOME", "")} \ - else { - if os_family() == "windows" { - join(env("LOCALAPPDATA", ""), "state") - } else { - join(home_directory(), ".local/state") - } - } diff --git a/Justfile b/Justfile deleted file mode 100644 index e81b300..0000000 --- a/Justfile +++ /dev/null @@ -1,15 +0,0 @@ -# set shell := ["fish", "-c"] -set shell := ["bash", "-c"] -set windows-shell := ["pwsh", "-c"] - -import '.just.d/vars.just' -import '.just.d/cmds.just' -import '.just.d/common.just' -import '.just.d/tools.just' -import '.just.d/misc.just' -import '.just.d/linux.just' -import '.just.d/check.just' - -_default: - @just test - @just --list diff --git a/bootstrap/components/emacs.sh b/bootstrap/components/emacs.sh deleted file mode 100644 index 1784a0a..0000000 --- a/bootstrap/components/emacs.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -# shellcheck shell=sh -echo "[INFO] Installing DOOM Emacs" -echo "[ACTION] Request Human Takeover" -test -d ~/.config/emacs && mv ~/.config/emacs ~/.config/emacs.bak -git clone --depth 1 https://github.com/doomemacs/doomemacs ~/.config/emacs -~/.config/emacs/bin/doom install -~/.config/emacs/bin/doom sync - -echo "[INFO] Installing Emacs-Rime" -git clone --depth 1 https://github.com/js0ny/Rime.git ~/.config/emacs/.local/cache/rime diff --git a/bootstrap/components/mocha-port.bash b/bootstrap/components/mocha-port.bash deleted file mode 100644 index ceabe73..0000000 --- a/bootstrap/components/mocha-port.bash +++ /dev/null @@ -1,231 +0,0 @@ -#!/usr/bin/env bash -# Adds better error handling and safety features -# shellcheck disable=SC2016 - -set -e # Exit immediately if a command exits with a non-zero status -set -u # Treat unset variables as an error - -# Create temporary working directory -TEMP_DIR="${HOME}/.tmp/catppuccin-install" -mkdir -p "${TEMP_DIR}" - -# Create config directories -mkdir -p "${HOME}/.config/tmux/plugins" -mkdir -p "${HOME}/.config/yazi" -mkdir -p "${HOME}/.config/btop/themes" -mkdir -p "${HOME}/.config/git" -mkdir -p "${HOME}/.config/lsd" -mkdir -p "${HOME}/.local/share/mc/skins" -mkdir -p "${HOME}/.config/fish/themes" -mkdir -p "${HOME}/.local/share/fcitx5/themes" - -# Function for downloading files -download_file() { - local url="$1" - local output_path="$2" - local output_dir - - # Extract directory from output path - output_dir=$(dirname "$output_path") - - # Create directory if it doesn't exist - if [ ! -d "$output_dir" ]; then - mkdir -p "$output_dir" - fi - - # Print status message - echo "Downloading: $url" - echo " to: $output_path" - - # Download with curl (using -L to follow redirects) - if ! curl -L -s --fail "$url" -o "$output_path"; then - echo "Error: Failed to download $url" >&2 - return 1 - fi - - # Verify file was downloaded - if [ ! -f "$output_path" ]; then - echo "Error: File was not created at $output_path" >&2 - return 1 - fi - - echo "Download successful." - return 0 -} - -# Function to check if command exists -command_exists() { - command -v "$1" >/dev/null 2>&1 -} - -# Install Bat themes -if command_exists bat; then - BAT_CONFIG_DIR=$(bat --config-dir 2>/dev/null || echo "${HOME}/.config/bat") - mkdir -p "${BAT_CONFIG_DIR}/themes" - - echo "Installing Bat themes..." - THEMES=("Latte" "Frappe" "Macchiato" "Mocha") - - for theme in "${THEMES[@]}"; do - download_file "https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20${theme}.tmTheme" \ - "${BAT_CONFIG_DIR}/themes/Catppuccin ${theme}.tmTheme" - done - - echo "Rebuilding Bat cache..." - bat cache --build || echo "WARNING: Failed to rebuild Bat cache" >&2 -else - echo "Bat not found, skipping Bat themes installation" >&2 -fi - -# Install Tmux plugin -if command_exists tmux; then - echo "Installing Tmux plugin..." - - TMUX_PLUGIN_DIR="${HOME}/.config/tmux/plugins/catppuccin" - rm -rf "${TMUX_PLUGIN_DIR}" - mkdir -p "${TMUX_PLUGIN_DIR}" - - if command_exists git; then - if ! git clone -b v2.1.2 --depth=1 https://github.com/catppuccin/tmux.git "${TMUX_PLUGIN_DIR}/tmux" 2>/dev/null; then - echo "WARNING: Failed to clone Tmux plugin repository" >&2 - fi - else - echo "Git not found, skipping Tmux plugin installation" >&2 - fi -else - echo "Tmux not found, skipping Tmux plugin installation" >&2 -fi - -# Install Yazi theme -if command_exists yazi; then - echo "Installing Yazi theme..." - download_file "https://raw.githubusercontent.com/catppuccin/yazi/main/themes/mocha/catppuccin-mocha-lavender.toml" \ - "${HOME}/.config/yazi/theme.toml" -else - echo "Yazi not found, skipping Yazi theme installation" >&2 -fi - -# Install BTopa themes -if command_exists btop; then - echo "Installing BTopa themes..." - download_file "https://raw.githubusercontent.com/catppuccin/btop/main/themes/catppuccin_mocha.theme" \ - "${HOME}/.config/btop/themes/catppuccin_mocha.theme" - download_file "https://raw.githubusercontent.com/catppuccin/btop/main/themes/catppuccin_latte.theme" \ - "${HOME}/.config/btop/themes/catppuccin_latte.theme" -else - echo "BTopa not found, skipping BTopa themes installation" >&2 -fi - -# Install Delta config -echo "Installing Delta config..." -download_file "https://raw.githubusercontent.com/catppuccin/delta/main/catppuccin.gitconfig" \ - "${HOME}/.config/git/catppuccin-delta.gitconfig" - -# Configure FZF -if command_exists fzf; then - echo "Configuring FZF..." - - # Check shell type to determine how to set environment variables - if [ -n "${FISH_VERSION:-}" ] || command_exists fish; then - # For Fish shell - fish -c 'set -U FZF_DEFAULT_OPTS "--color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 --color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc --color=marker:#b4befe,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8 --color=selected-bg:#45475a --multi"' \ - || echo "WARNING: Failed to set FZF options for Fish shell" >&2 - else - # For Bash/Zsh - add to both .bashrc and .zshrc if they exist - FZF_CONFIG="export FZF_DEFAULT_OPTS=\"--color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 --color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc --color=marker:#b4befe,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8 --color=selected-bg:#45475a --multi\"" - - # Add to .bashrc if it exists - if [ -f "${HOME}/.bashrc" ]; then - if ! grep -q "FZF_DEFAULT_OPTS.*catppuccin" "${HOME}/.bashrc"; then - echo "${FZF_CONFIG}" >>"${HOME}/.bashrc" - echo "Added FZF configuration to .bashrc" - fi - fi - - # Add to .zshrc if it exists - if [ -f "${HOME}/.zshrc" ]; then - if ! grep -q "FZF_DEFAULT_OPTS.*catppuccin" "${HOME}/.zshrc"; then - echo "${FZF_CONFIG}" >>"${HOME}/.zshrc" - echo "Added FZF configuration to .zshrc" - fi - fi - fi -else - echo "FZF not found, skipping FZF configuration" >&2 -fi - -# Install LSD themes -if command_exists lsd; then - echo "Installing LSD themes..." - download_file "https://raw.githubusercontent.com/catppuccin/lsd/main/themes/catppuccin-mocha/colors.yaml" \ - "${HOME}/.config/lsd/colors.yaml" - download_file "https://raw.githubusercontent.com/catppuccin/lsd/main/themes/catppuccin-latte/colors.yaml" \ - "${HOME}/.config/lsd/colors-light.yaml" -else - echo "LSD not found, skipping LSD themes installation" >&2 -fi - -# Install Midnight Commander skin -echo "Installing Midnight Commander skin..." -download_file "https://raw.githubusercontent.com/catppuccin/mc/main/catppuccin.ini" \ - "${HOME}/.local/share/mc/skins/catppuccin.ini" - -# Print MC configuration hint -echo "Note: To use the Midnight Commander theme:" -echo " - Change or add skin=catppuccin in the [Midnight-Commander] section inside ~/.config/mc/ini" -echo " - OR choose the skin inside Midnight Commander through F9 > Options > Appearance" -echo " - Save setup through F9 > Options > Save setup" - -# Install PowerShell module -if command_exists pwsh; then - echo "Installing PowerShell module..." - PS_MODULE_PATH=$(pwsh -C 'Write-Output $Env:PSModulePath.split(":")[0]' 2>/dev/null) - - if [ -n "${PS_MODULE_PATH}" ]; then - if command_exists git; then - if ! git clone --depth=1 https://github.com/catppuccin/powershell.git "${PS_MODULE_PATH}/Catppuccin" 2>/dev/null; then - echo "WARNING: Failed to clone PowerShell module repository" >&2 - fi - else - echo "Git not found, skipping PowerShell module installation" >&2 - fi - else - echo "PowerShell module path not found, skipping PowerShell module installation" >&2 - fi -else - echo "PowerShell not found, skipping PowerShell module installation" >&2 -fi - -# Install Fish themes -if command_exists fish; then - echo "Installing Fish themes..." - download_file "https://raw.githubusercontent.com/catppuccin/fish/main/themes/Catppuccin%20Mocha.theme" \ - "${HOME}/.config/fish/themes/Catppuccin Mocha.theme" - download_file "https://raw.githubusercontent.com/catppuccin/fish/main/themes/Catppuccin%20Latte.theme" \ - "${HOME}/.config/fish/themes/Catppuccin Latte.theme" -else - echo "Fish not found, skipping Fish themes installation" >&2 -fi - -# Install Fcitx5 themes -if command_exists fcitx5; then - echo "Installing Fcitx5 themes..." - - rm -rf "${TEMP_DIR}/fcitx5" - if command_exists git; then - if git clone --depth=1 https://github.com/catppuccin/fcitx5.git "${TEMP_DIR}/fcitx5" 2>/dev/null; then - cp -r "${TEMP_DIR}/fcitx5/src/"* "${HOME}/.local/share/fcitx5/themes/" - else - echo "WARNING: Failed to clone Fcitx5 repository" >&2 - fi - else - echo "Git not found, skipping Fcitx5 themes installation" >&2 - fi -else - echo "Fcitx5 not found, skipping Fcitx5 themes installation" >&2 -fi - -# Clean up temporary directory -rm -rf "${TEMP_DIR}" - -echo "Catppuccin themes installation completed!" diff --git a/bootstrap/components/mocha_port.fish b/bootstrap/components/mocha_port.fish deleted file mode 100644 index 804cf22..0000000 --- a/bootstrap/components/mocha_port.fish +++ /dev/null @@ -1,43 +0,0 @@ -mkdir -p ~/.tmp -# Bat -mkdir -p "$(bat --config-dir)/themes" -wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Latte.tmTheme -wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Frappe.tmTheme -wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Macchiato.tmTheme -wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Mocha.tmTheme -bat cache --build -# Tmux -mkdir -p ~/.config/tmux/plugins/catppuccin:w -git clone -b v2.1.2 https://github.com/catppuccin/tmux.git ~/.config/tmux/plugins/catppuccin/tmux -# Yazi -curl https://raw.githubusercontent.com/catppuccin/yazi/refs/heads/main/themes/mocha/catppuccin-mocha-lavender.toml -o ~/.config/yazi/theme.toml -# BTop -curl https://raw.githubusercontent.com/catppuccin/btop/refs/heads/main/themes/catppuccin_mocha.theme -o ~/.config/btop/themes/catppuccin_mocha.theme -curl https://raw.githubusercontent.com/catppuccin/btop/refs/heads/main/themes/catppuccin_latte.theme -o ~/.config/btop/themes/catppuccin_latte.theme -# Delta -curl https://raw.githubusercontent.com/catppuccin/delta/refs/heads/main/catppuccin.gitconfig -o ~/.config/git/catppuccin-delta.gitconfig -# Fzf -set -Ux FZF_DEFAULT_OPTS "\ ---color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 \ ---color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc \ ---color=marker:#b4befe,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8 \ ---color=selected-bg:#45475a \ ---multi" -# LsD -curl https://raw.githubusercontent.com/catppuccin/lsd/refs/heads/main/themes/catppuccin-mocha/colors.yaml -o ~/.config/lsd/colors.yaml -curl https://raw.githubusercontent.com/catppuccin/lsd/refs/heads/main/themes/catppuccin-latte/colors.yaml -o ~/.config/lsd/colors-light.yaml -# Midnight Commander -# Change or add skin=catppuccin in the [Midnight-Commander] section inside ~/.config/mc/ini OR Choose the skin inside Midnight Commander through F9>Options>Appearance and Save setup through F9>Options/Save setup -mkdir -p $HOME/.local/share/mc/skins -curl https://raw.githubusercontent.com/catppuccin/mc/refs/heads/main/catppuccin.ini -o $HOME/.local/share/mc/skins/catppuccin.ini -# PowerShell -pwsh -C 'git clone https://github.com/catppuccin/powershell.git (Join-Path $Env:PSModulePath.split(":")[0] Catppuccin)' -# Fish -mkdir -p ~/.config/fish/themes -curl https://raw.githubusercontent.com/catppuccin/fish/refs/heads/main/themes/Catppuccin%20Mocha.theme -o ~/.config/fish/themes/Catppuccin\ Mocha.theme -curl https://raw.githubusercontent.com/catppuccin/fish/refs/heads/main/themes/Catppuccin%20Latte.theme -o ~/.config/fish/themes/Catppuccin\ Latte.theme -# fcitx5 -git clone https://github.com/catppuccin/fcitx5.git ~/.tmp/fcitx5 -cd ~/.tmp/fcitx5 -mkdir -p ~/.local/share/fcitx5/themes -cp -r ./src/* ~/.local/share/fcitx5/themes diff --git a/bootstrap/components/pwsh.ps1 b/bootstrap/components/pwsh.ps1 deleted file mode 100644 index 086f340..0000000 --- a/bootstrap/components/pwsh.ps1 +++ /dev/null @@ -1,3 +0,0 @@ -Install-Module CompletionPredictor -Install-Module PSFzf -Install-Module Posh-Git diff --git a/bootstrap/components/requirements.txt b/bootstrap/components/requirements.txt deleted file mode 100644 index fa5157a..0000000 --- a/bootstrap/components/requirements.txt +++ /dev/null @@ -1,112 +0,0 @@ -anyio==4.8.0 -argon2-cffi==23.1.0 -argon2-cffi-bindings==21.2.0 -arrow==1.3.0 -asttokens==3.0.0 -async-lru==2.0.4 -attrs==25.1.0 -babel==2.17.0 -beautifulsoup4==4.13.3 -bleach==6.2.0 -certifi==2025.1.31 -cffi==1.17.1 -charset-normalizer==3.4.1 -comm==0.2.2 -contourpy==1.3.1 -cycler==0.12.1 -debugpy==1.8.13 -decorator==5.2.1 -defusedxml==0.7.1 -executing==2.2.0 -fastjsonschema==2.21.1 -fonttools==4.56.0 -fqdn==1.5.1 -h11==0.14.0 -httpcore==1.0.7 -httpx==0.28.1 -idna==3.10 -ipykernel==6.29.5 -ipython==9.0.2 -ipython-pygments-lexers==1.1.1 -ipywidgets==8.1.5 -isoduration==20.11.0 -jedi==0.19.2 -jinja2==3.1.6 -joblib==1.4.2 -json5==0.10.0 -jsonpointer==3.0.0 -jsonschema==4.23.0 -jsonschema-specifications==2024.10.1 -jupyter==1.1.1 -jupyter-client==8.6.3 -jupyter-console==6.6.3 -jupyter-core==5.7.2 -jupyter-events==0.12.0 -jupyter-lsp==2.2.5 -jupyter-server==2.15.0 -jupyter-server-terminals==0.5.3 -jupyterlab==4.3.5 -jupyterlab-pygments==0.3.0 -jupyterlab-server==2.27.3 -jupyterlab-widgets==3.0.13 -kiwisolver==1.4.8 -markupsafe==3.0.2 -matplotlib==3.10.1 -matplotlib-inline==0.1.7 -mistune==3.1.2 -nbclient==0.10.2 -nbconvert==7.16.6 -nbformat==5.10.4 -nest-asyncio==1.6.0 -notebook==7.3.2 -notebook-shim==0.2.4 -numpy==2.2.3 -overrides==7.7.0 -packaging==24.2 -pandas==2.2.3 -pandocfilters==1.5.1 -parso==0.8.4 -pexpect==4.9.0 -pillow==11.1.0 -platformdirs==4.3.6 -prometheus-client==0.21.1 -prompt-toolkit==3.0.50 -psutil==7.0.0 -ptyprocess==0.7.0 -pure-eval==0.2.3 -pycparser==2.22 -pygments==2.19.1 -pyparsing==3.2.1 -python-dateutil==2.9.0.post0 -python-json-logger==3.3.0 -pytz==2025.1 -pyyaml==6.0.2 -pyzmq==26.2.1 -referencing==0.36.2 -requests==2.32.3 -rfc3339-validator==0.1.4 -rfc3986-validator==0.1.1 -rpds-py==0.23.1 -scikit-learn==1.6.1 -scipy==1.15.2 -send2trash==1.8.3 -setuptools==76.0.0 -six==1.17.0 -sniffio==1.3.1 -soupsieve==2.6 -stack-data==0.6.3 -terminado==0.18.1 -threadpoolctl==3.5.0 -tinycss2==1.4.0 -tornado==6.4.2 -traitlets==5.14.3 -types-python-dateutil==2.9.0.20241206 -typing-extensions==4.12.2 -tzdata==2025.1 -uri-template==1.3.0 -urllib3==2.3.0 -wcwidth==0.2.13 -webcolors==24.11.1 -webencodings==0.5.1 -websocket-client==1.8.0 -widgetsnbextension==4.0.13 diff --git a/bootstrap/components/rime.sh b/bootstrap/components/rime.sh deleted file mode 100644 index 89ea323..0000000 --- a/bootstrap/components/rime.sh +++ /dev/null @@ -1,17 +0,0 @@ -echo "[INFO] Installing Rime" - -case "$(uname)" in - Linux) - RIMEDIR="${RIMEDIR:-$HOME/.local/share/fcitx5/rime}" - ;; - Darwin) - RIMEDIR="${RIMEDIR:-$HOME/Library/Rime}" - ;; -esac - -git clone --depth 1 https://github.com/js0ny/rime_wanxiang_pro.git "$RIMEDIR" -cd "$RIMEDIR" || exit - -just init -# just install_rime -just clone_plum diff --git a/bootstrap/components/symlinks.bash b/bootstrap/components/symlinks.bash deleted file mode 100644 index 2273a84..0000000 --- a/bootstrap/components/symlinks.bash +++ /dev/null @@ -1,110 +0,0 @@ -#!/usr/bin/env bash -# vim:ft=bash -# shellcheck disable=SC1090 shell=bash -# This should be run with bash > 4.0 or zsh -set -e # Exit immediately if a command exits with a non-zero status - -DOTFILES="${DOTFILES:-$HOME/.dotfiles}" -ZDOTDIR="${ZDOTDIR:-$HOME/.config/zsh}" -XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}" -NPM_CONFIG_USERCONFIG="${NPM_CONFIG_USERCONFIG:-$XDG_CONFIG_HOME/npm/npmrc}" -GUI_SETUP="${GUI_SETUP:-1}" -WHEEL="${WHEEL:-0}" - -XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}" -XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}" -XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}" - -echo "[INFO] Setting up some local directories" -test -d "$XDG_CACHE_HOME" || mkdir -p "$XDG_CACHE_HOME" -test -d "$XDG_DATA_HOME" || mkdir -p "$XDG_DATA_HOME" -test -d "$XDG_STATE_HOME" || mkdir -p "$XDG_STATE_HOME" -test -d ~/.local/state/zsh || mkdir -p ~/.local/state/zsh - -# echo "[INFO] Setting up system-wide zsh configuration" -# echo "[ACTION] Elevation required!" -# test -f "/etc/zsh/zshenv" && sudo cp "$DOTFILES/tools/zsh/zshenv" "/etc/zsh/zshenv" -# test -f "/etc/zshenv" && sudo cp "$DOTFILES/tools/zsh/zshenv" "/etc/zshenv" - -declare -A linkDots - -linkDots=( - ["$DOTFILES/common/condarc.yaml"]="$XDG_CONFIG_HOME/conda/.condarc" - # ["$DOTFILES/common/gitconfig"]="$XDG_CONFIG_HOME/git/config" - ["$DOTFILES/common/glow.yaml"]="$HOME/.config/glow/config.yml" - ["$DOTFILES/common/haskeline"]="$HOME/.haskeline" - ["$DOTFILES/common/ideavimrc"]="$XDG_CONFIG_HOME/ideavim/ideavimrc" - ["$DOTFILES/common/lazygit.yaml"]="$XDG_CONFIG_HOME/lazygit/config.yml" - ["$DOTFILES/common/lesskey"]="$XDG_CONFIG_HOME/lesskey" - ["$DOTFILES/common/npmrc"]="$NPM_CONFIG_USERCONFIG" - ["$DOTFILES/common/NuGet.Config"]="$XDG_CONFIG_HOME/NuGet/NuGet.Config" - ["$DOTFILES/common/pip.conf"]="$XDG_CONFIG_HOME/pip/pip.conf" - ["$DOTFILES/common/starship.toml"]="$HOME/.config/starship.toml" - ["$DOTFILES/common/tmux.conf"]="$XDG_CONFIG_HOME/tmux/tmux.conf" - ["$DOTFILES/common/vimrc"]="$XDG_CONFIG_HOME/vim/vimrc" - ["$DOTFILES/common/zellij.config.kdl"]="$HOME/.config/zellij/config.kdl" - # ["$DOTFILES/tools/emacs.d"]="$HOME/.emacs.d" - ["$DOTFILES/tools/doom"]="$HOME/.config/doom" - ["$DOTFILES/tools/fish"]="$HOME/.config/fish" - ["$DOTFILES/tools/ipython"]="$XDG_CONFIG_HOME/ipython" - ["$DOTFILES/tools/nvim"]="$XDG_CONFIG_HOME/nvim" - ["$DOTFILES/tools/yazi"]="$HOME/.config/yazi" - ["$DOTFILES/tools/zsh/zshrc"]="$ZDOTDIR/.zshrc" - ["$DOTFILES/tools/zsh/zshenv"]="$ZDOTDIR/.zshenv" - ["$DOTFILES/platforms/mac/pwshProfile.ps1"]="$HOME/.config/powershell/Microsoft.PowerShell_profile.ps1" -) - -if [ $(uname) = "Darwin" ]; then - echo "[INFO] Running on macOS" - linkDots+=( - ["$DOTFILES/platforms/mac/karabiner"]="$HOME/.config/karabiner" - ["$DOTFILES/platforms/mac/skhdrc"]="$XDG_CONFIG_HOME/skhd/skhdrc" - ["$DOTFILES/platforms/mac/sketchybarrc"]="$XDG_CONFIG_HOME/sketchybar/sketchybarrc" - ["$DOTFILES/platforms/mac/yabairc"]="$XDG_CONFIG_HOME/yabai/yabairc" - ["$DOTFILES/tools/wezterm"]="$HOME/.config/wezterm" - ["$DOTFILES/tools/zed"]="$HOME/.config/zed" - ["$DOTFILES/tools/sioyek"]="$HOME/.config/sioyek" - ) -else - echo "[INFO] Running on Linux" - linkDots+=( - ["$DOTFILES/common/inputrc"]="$XDG_CONFIG_HOME/readline/inputrc" - ) - # WSL1 : Microsoft - # WSL2 : microsoft - # if [ "$(uname -r)" = *icrosoft* ]; then - # echo "[INFO] Running on WSL" - # : # NOP - if [ "$GUI_SETUP" -eq 1 ]; then - echo "[INFO] Setting up Linux GUI Applications" - linkDots+=( - ["$DOTFILES/platforms/linux/awesome"]="$HOME/.config/awesome" - ["$DOTFILES/platforms/linux/hypr"]="$HOME/.config/hypr" - ["$DOTFILES/platforms/linux/waybar"]="$HOME/.config/waybar" - ["$DOTFILES/platforms/linux/wlogout"]="$HOME/.config/wlogout" - ["$DOTFILES/platforms/linux/mako-config"]="$HOME/.config/mako/config" - ["$DOTFILES/tools/wezterm"]="$HOME/.config/wezterm" - ["$DOTFILES/tools/zed"]="$HOME/.config/zed" - ["$DOTFILES/tools/sioyek"]="$HOME/.config/sioyek" - ) - for kde in "$DOTFILES/platforms/linux/kde/"*; do - linkDots+=["$kde"]="$HOME/.config/kde/$(basename "$kde")" - # echo "Linking $kde to $HOME/.config/kde/$(basename $kde)" - done - if [ "$WHEEL" -eq 1 ]; then - echo "[INFO] Setting up system environment variables" - echo "[ACTION] Elevation required!" - sudo cp "$DOTFILES/platforms/linux/etc/environment" "/etc/environment" - fi - fi -fi - -echo "[INFO] Copying example files" -test -d $XDG_CONFIG_HOME/git || mkdir -p $XDG_CONFIG_HOME/git -test -f $XDG_CONFIG_HOME/git/config && mv $XDG_CONFIG_HOME/git/config $XDG_CONFIG_HOME/git/config.bak -cp $DOTFILES/common/gitconfig.example $XDG_CONFIG_HOME/git/config -echo "[INFO] Don't forget to update your gitconfig!" - -test -f ~/.wakatime.cfg && mv ~/.wakatime.cfg ~/.wakatime.cfg.bak -cp $DOTFILES/common/wakatime.example.cfg ~/.wakatime.cfg -echo "[INFO] Don't forget to update your wakatime config!" diff --git a/bootstrap/components/zsh.sh b/bootstrap/components/zsh.sh deleted file mode 100644 index 485ac1d..0000000 --- a/bootstrap/components/zsh.sh +++ /dev/null @@ -1,28 +0,0 @@ -WHEEL="${WHEEL:-1}" - -echo "[INFO] ZDOTDIR = $ZDOTDIR" -echo "[INFO] DOTFILES = $DOTFILES" -echo "[INFO] WHEEL = $WHEEL" - -echo "[ACTION] Press any key to proceed" -read -n 1 - -if [ "$WHEEL" -eq 1 ]; then - echo "[INFO] Setting up system-wide zsh configuration" - echo "[ACTION] Elevation required" - test -f "/etc/zsh/zshenv" && sudo cp "$DOTFILES/tools/zsh/global.zshenv" "/etc/zsh/zshenv" - test -f "/etc/zshenv" && sudo cp "$DOTFILES/tools/zsh/global.zshenv" "/etc/zshenv" - if [ "$(uname)" = "Darwin" ]; then - sudo cp "$DOTFILES/tools/zsh/global.zshenv" "/etc/zshenv" - fi -else - echo "[INFO] Setting up user zsh configuration" - # A fallback case to set $ZDOTDIR in ~/.zshenv if the user cannot access global zshenv - ln -sf "$DOTFILES/tools/zsh/zshenv" "$HOME/.zshenv" -fi - -echo "[INFO] Installing zsh plugins" -test -d "$ZDOTDIR"/plugins/zsh-autosuggestions || git clone --depth 1 https://github.com/zsh-users/zsh-autosuggestions.git "$ZDOTDIR"/plugins/zsh-autosuggestions -test -d "$ZDOTDIR"/plugins/zsh-syntax-highlighting || git clone --depth 1 https://github.com/zsh-users/zsh-syntax-highlighting.git "$ZDOTDIR"/plugins/zsh-syntax-highlighting -test -d "$ZDOTDIR"/plugins/zsh-history-substring-search || git clone --depth 1 https://github.com/zsh-users/zsh-history-substring-search.git "$ZDOTDIR"/plugins/zsh-history-substring-search -test -d "$ZDOTDIR"/plugins/zsh-completions || git clone --depth 1 https://github.com/zsh-users/zsh-completions.git "$ZDOTDIR"/plugins/zsh-completions diff --git a/bootstrap/linux/appman.bash b/bootstrap/linux/appman.bash deleted file mode 100644 index dad1f09..0000000 --- a/bootstrap/linux/appman.bash +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env bash -# vim:ft=bash -echo "[INFO] Installing AppMan" -echo "[ACTION] Type [2] to install AppMan" -wget -q https://raw.githubusercontent.com/ivan-hc/AM/main/AM-INSTALLER && chmod a+x ./AM-INSTALLER && ./AM-INSTALLER - -APPMAN_PATH="$HOME/.local/bin/appman" - -if command -v "$APPMAN_PATH" >/dev/null 2>&1; then - $APPMAN_PATH install wezterm - $APPMAN_PATH install nvim -fi diff --git a/bootstrap/linux/chromium-flags.bash b/bootstrap/linux/chromium-flags.bash deleted file mode 100755 index 2ad6bbd..0000000 --- a/bootstrap/linux/chromium-flags.bash +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/env bash -# vim:ft=bash -# chromium-flags.sh -# Set Chromium & Electron Flags - -echo "[INFO] Set Chromium & Electron Flags" - -DOTFILES="${DOTFILES:-$HOME/.dotfiles}" -XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}" -BROWSER_FLAG=$DOTFILES/platforms/linux/chromium-flags.conf -ELECTRON_FLAG=$DOTFILES/platforms/linux/electron-flags.conf - - -parse_args() { - while [[ $# -gt 0 ]]; do - case "$1" in - # --debug|-d) - # export LOG_LEVEL="DEBUG" - # log_debug "Debug mode enabled" - # shift - # ;; - --force|-f) - FORCE_FILE="true" - echo "Force update enabled" - shift - ;; - *) - echo "Unknown argument: $1" - echo "Usage: chromium-flags.sh [--debug|-d] [--force|-f]" - exit 1 - ;; - esac - done -} - -parse_args "$@" - -# Browser Flags - -browser_flags_path=( - "$XDG_CONFIG_HOME/chromium-flags.conf" # Chromium - "$XDG_CONFIG_HOME/chrome-flags.conf" # Google Chrome - "$XDG_CONFIG_HOME/thorium-flags.conf" # Thorium - "$XDG_CONFIG_HOME/vivaldi-flags.conf" # Vivaldi - "$XDG_CONFIG_HOME/vivaldi-stable.conf" # Vivaldi - -) - -electron_flags_path=( - "$XDG_CONFIG_HOME/electron-flags.conf" # General - "$XDG_CONFIG_HOME/code-flags.conf" # VSCode - "$XDG_CONFIG_HOME/qq-electron-flags.conf" # QQ -) - -for path in "${browser_flags_path[@]}"; do - if [ -f "$path" ] && [ "$FORCE_FILE" != "true" ]; then - echo "[INFO] Found Browser Flags: $path" - else - echo "[INFO] Creating Browser Flags: $path" - ln -sf "$BROWSER_FLAG" "$path" - fi -done - -for path in "${electron_flags_path[@]}"; do - if [ -f "$path" ] && [ "$FORCE_FILE" != "true" ]; then - echo "[INFO] Found Electron Flags: $path" - else - echo "[INFO] Creating Electron Flags: $path" - ln -sf "$ELECTRON_FLAG" "$path" - fi -done diff --git a/bootstrap/linux/chromium-flags.hypr.bash b/bootstrap/linux/chromium-flags.hypr.bash deleted file mode 100755 index 982fb59..0000000 --- a/bootstrap/linux/chromium-flags.hypr.bash +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/env bash -# vim:ft=bash -# chromium-flags.sh -# Set Chromium & Electron Flags - -echo "[INFO] Set Chromium & Electron Flags" - -DOTFILES="${DOTFILES:-$HOME/.dotfiles}" -XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}" -BROWSER_FLAG=$DOTFILES/platforms/linux/chromium-flags.hypr.conf -ELECTRON_FLAG=$DOTFILES/platforms/linux/electron-flags.hypr.conf - - -parse_args() { - while [[ $# -gt 0 ]]; do - case "$1" in - # --debug|-d) - # export LOG_LEVEL="DEBUG" - # log_debug "Debug mode enabled" - # shift - # ;; - --force|-f) - FORCE_FILE="true" - echo "Force update enabled" - shift - ;; - *) - echo "Unknown argument: $1" - echo "Usage: chromium-flags.sh [--debug|-d] [--force|-f]" - exit 1 - ;; - esac - done -} - -parse_args "$@" - -# Browser Flags - -browser_flags_path=( - "$XDG_CONFIG_HOME/chromium-flags.conf" # Chromium - "$XDG_CONFIG_HOME/chrome-flags.conf" # Google Chrome - "$XDG_CONFIG_HOME/thorium-flags.conf" # Thorium - "$XDG_CONFIG_HOME/vivaldi-flags.conf" # Vivaldi - "$XDG_CONFIG_HOME/vivaldi-stable.conf" # Vivaldi - -) - -electron_flags_path=( - "$XDG_CONFIG_HOME/electron-flags.conf" # General - "$XDG_CONFIG_HOME/code-flags.conf" # VSCode - "$XDG_CONFIG_HOME/qq-electron-flags.conf" # QQ -) - -for path in "${browser_flags_path[@]}"; do - if [ -f "$path" ] && [ "$FORCE_FILE" != "true" ]; then - echo "[INFO] Found Browser Flags: $path" - else - echo "[INFO] Creating Browser Flags: $path" - ln -sf "$BROWSER_FLAG" "$path" - fi -done - -for path in "${electron_flags_path[@]}"; do - if [ -f "$path" ] && [ "$FORCE_FILE" != "true" ]; then - echo "[INFO] Found Electron Flags: $path" - else - echo "[INFO] Creating Electron Flags: $path" - ln -sf "$ELECTRON_FLAG" "$path" - fi -done diff --git a/bootstrap/linux/electron_flag_append.py b/bootstrap/linux/electron_flag_append.py deleted file mode 100644 index 31388bc..0000000 --- a/bootstrap/linux/electron_flag_append.py +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/env false -# TODO: This script is not ready for use yet -# -*- coding: utf-8 -*- -# Append Electron argument (for wayland) to *.desktop files - -import argparse -import configparser -import os - -APPEND_ARG_FILE = "~/.dotfiles/platforms/linux/electron-flags.conf" - - -with open(os.path.expanduser(APPEND_ARG_FILE)) as f: - APPEND_ARGS = list(map(str.strip, f.readlines())) - -# for file in desktop_files: -# config = configparser.ConfigParser() -# config.read(file) - - -def append_arg(file): - config = configparser.ConfigParser() - config.read(file) - try: - exec_line = config["Desktop Entry"].get("Exec") - except KeyError: - print(f"Skipping {file} as it does not have an Exec key") - return - print(f"Appending {APPEND_ARGS} to {exec_line}") - config["Desktop Entry"].update({"Exec": f"{exec_line} {' '.join(APPEND_ARGS)}"}) - with open(file, "w") as f: - config.write(f) - - -def main(): - parser = argparse.ArgumentParser() - parser.add_argument("-f", "--file", help="Desktop file to modify") - args = parser.parse_args() - append_arg(args.file) - pass - - -if __name__ == "__main__": - main() diff --git a/bootstrap/linux/main.bash b/bootstrap/linux/main.bash deleted file mode 100644 index fe6c916..0000000 --- a/bootstrap/linux/main.bash +++ /dev/null @@ -1,193 +0,0 @@ -#!/usr/bin/env bash -# vim:ft=bash - -set -e - -echo "Running the setup script" - -# Variables - -export DOTFILES="${DOTFILES:-$HOME/.dotfiles}" - -# If is in the sudo or wheel group, set the WHEEL variable to 1 -WHEEL=0 -groups "$(whoami)" | grep -E -q '\b(sudo|wheel)\b' && WHEEL=1 - -if [ "$WHEEL" -eq 1 ]; then - echo "[INFO] Running as sudo or wheel group" -else - echo "[INFO] Not running as sudo or wheel group" -fi - -export WHEEL - -GUI_SETUP=0 - -IS_WSL=0 -WINDOWS_USER="" -PACKAGE_MANAGER="" - -# WSL detection -# NOTE: This is NOT a POSIX-compliant way, for POSIX-compliant way, use case/esac -if [[ "$(uname -r)" = *icrosoft* ]]; then - echo "[INFO] Running on WSL" - WINDOWS_USER="$(cmd.exe /c "echo %USERNAME%" | tr -d '\r')" - IS_WSL=1 -fi - -if [ "$IS_WSL" -eq 1 ]; then - if [[ "$(uname -r)" = *Microsoft* ]]; then - IS_WSL=1 - elif [[ "$(uname -r)" = *microsoft* ]]; then - IS_WSL=2 - fi -fi - -if [ "$IS_WSL" -eq 1 ]; then - echo "[INFO] Running on WSL1 Skipping GUI setup" -else - read -p "[ACTION] Do you want to setup Linux GUI? (y/N) " -r choice - case "$choice" in - y | Y) - GUI_SETUP=1 - ;; - *) - echo "[INFO] Skipping GUI setup" - ;; - esac -fi - -export GUI_SETUP - -# base-devel - -if [ "$WHEEL" -eq 1 ]; then - echo "[INFO] Installing basic build tools" - if command -v apt >/dev/null 2>&1; then - sudo apt update - sudo apt install -y build-essential - PACKAGE_MANAGER="apt" - elif command -v pacman >/dev/null 2>&1; then - sudo pacman -Syu --noconfirm - sudo pacman -S --noconfirm base-devel - PACKAGE_MANAGER="pacman" - else - echo "[ERROR] Unsupported package manager" - read -p "[ACTION] Do you still want to continue? (y/N) " -r choice - case "$choice" in - y | Y) - : - ;; - *) - echo "[ERROR] Exiting" - exit 1 - ;; - esac - fi -fi - -echo "[INFO] Cloning Dotfiles" - -if [ -d "$DOTFILES" ]; then - echo "[INFO] Dotfiles already cloned" -elif [ "$IS_WSL" -eq 1 ]; then - ln -sf "/mnt/c/Users/$WINDOWS_USER/.dotfiles" "$DOTFILES" -elif command -v git >/dev/null 2>&1; then - git clone https://github.com/js0ny/dotfiles.git "$DOTFILES" --depth 1 -else - echo "[ERROR] Git is not installed" - exit 1 -fi - -if [ "$WHEEL" -eq 0 ]; then - read -p "[ACTION] Do you want to install some AppImages (by AppMan)? (y/N) " -r choice - case "$choice" in - y | Y) - source "$DOTFILES/bootstrap/linux/appman.bash" - ;; - *) - echo "[INFO] Skipping AppMan installation" - : - ;; - esac -fi - -echo "[INFO] Setting up symbolic links" - -source "$DOTFILES"/bootstrap/linux/symlinks.bash - -set +x - -if [ "$WHEEL" -eq 1 ]; then - source "$DOTFILES"/tools/bash/xdg-compat.sh - source "$DOTFILES"/tools/bash/global.bashrc -fi -source "$DOTFILES"/tools/bash/profile -source "$DOTFILES"/tools/bash/bashrc -source "$DOTFILES"/tools/bash/bash_aliases - -set -x - -if command -v zsh >/dev/null 2>&1; then - - read -p "[ACTION] Do you want to setup zsh? (Y/n) " -r choice - case "$choice" in - n | N) - : - ;; - *) - source "$DOTFILES"/bootstrap/components/zsh.sh - ;; - esac -fi - -if [ "$WHEEL" -eq 0 ]; then - echo "Done!" - exit 0 -fi - -# TODO: Add this part -read -p "[ACTION] Do you want to use other package managers? (y/N) " -r choice -case "$choice" in - y | Y) - : - ;; - *) - : - ;; -esac - -echo "[INFO] Installing Doom Emacs" - -source "$DOTFILES"/bootstrap/components/emacs.sh - -if [ "$IS_WSL" -eq 1 ]; then - ln -sf "/mnt/c/Users/$WINDOWS_USER" "$HOME/winhome" - ln -sf "/mnt/c/Users/$WINDOWS_USER/Downloads" "$HOME/Downloads" - ln -sf "/mnt/c/Users/$WINDOWS_USER/Documents" "$HOME/Documents" - ln -sf "/mnt/c/Users/$WINDOWS_USER/Desktop" "$HOME/Desktop" - ln -sf "/mnt/c/Users/$WINDOWS_USER/Pictures" "$HOME/Pictures" - ln -sf "/mnt/c/Users/$WINDOWS_USER/Music" "$HOME/Music" - ln -sf "/mnt/c/Users/$WINDOWS_USER/Videos" "$HOME/Videos" -fi - -if [ "$GUI_SETUP" -eq 0 ]; then - echo "Done!" - exit 0 -fi - -# Wayland - -source "$DOTFILES"/bootstrap/linux/chromium-flags.bash - -# Rime - -source "$DOTFILES"/bootstrap/components/rime.sh - -echo "[INFO] Installing Color Scheme (Catppuccin Mocha)" - -# fish $DOTFILES/bootstrap/temp/mocha_port.fish - -source "$DOTFILES"/bootstrap/components/mocha-port.bash - -echo "Done!" diff --git a/bootstrap/linux/symlinks.bash b/bootstrap/linux/symlinks.bash deleted file mode 100644 index 6842444..0000000 --- a/bootstrap/linux/symlinks.bash +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env bash -# vim:ft=bash -set -e # Exit immediately if a command exits with a non-zero status - -declare -A linkDots - -source "$DOTFILES/bootstrap/components/symlinks.bash" - -echo "[INFO] DOTFILES = $DOTFILES" - -echo "[ACTION] Press any key to proceed" -read -r -n1 -s - -echo "[INFO] Setting up symbolic links" - -for src in "${!linkDots[@]}"; do - dest="${linkDots[$src]}" - echo "Linking $src to $dest" - if [ -d "$src" ]; then - test -d "$dest" && mv "$dest" "$dest.bak" - ln -sf "$src" "$dest" - elif [ -f "$src" ]; then - dest_parent=$(dirname "$dest") - test -d "$dest_parent" || mkdir -p "$dest_parent" - ln -sf "$src" "$dest" - else - echo "[ERROR] $src does not exist" - fi -done diff --git a/bootstrap/linux/wsl.bash b/bootstrap/linux/wsl.bash deleted file mode 100644 index 8b13789..0000000 --- a/bootstrap/linux/wsl.bash +++ /dev/null @@ -1 +0,0 @@ - diff --git a/bootstrap/macOS/Brewfile b/bootstrap/macOS/Brewfile deleted file mode 100644 index ab56c89..0000000 --- a/bootstrap/macOS/Brewfile +++ /dev/null @@ -1,150 +0,0 @@ -tap "daipeihust/tap" -tap "felixkratz/formulae" -tap "homebrew/bundle" -tap "homebrew/services" -tap "koekeishiya/formulae" -tap "nikitabobko/tap" -tap "railwaycat/emacsmacport" -brew "age" -brew "aichat" -brew "bat" -brew "bottom" -brew "broot" -brew "btop" -brew "cmake" -brew "composer" -brew "coreutils" -brew "curlie" -brew "dark-mode" -brew "dos2unix" -brew "duf" -brew "dust" -brew "duti" -brew "fastfetch" -brew "fd" -brew "ffmpeg" -brew "fish" -brew "fzf" -brew "gh" -brew "ghcup" -brew "git-delta" -brew "glow" -brew "go" -brew "hugo" -brew "hyperfine" -brew "imagemagick" -brew "ipython" -brew "julia" -brew "just" -brew "lazygit" -brew "less" -brew "pkgconf" -brew "lua" -brew "librime" -brew "lsd" -brew "luajit" -brew "luarocks" -brew "macvim", link: false -brew "node" -brew "markdownlint-cli" -brew "mas" -brew "neovim" -brew "nowplaying-cli" -brew "nushell" -brew "openjdk@21" -brew "pandoc" -brew "pipx" -brew "pnpm" -brew "procs" -brew "ripgrep" -brew "ripgrep-all" -brew "rlwrap" -brew "rust" -brew "rustup" -brew "screenfetch" -brew "sd" -brew "sevenzip" -brew "speedtest-cli" -brew "starship" -brew "switchaudio-osx" -brew "tldr" -brew "tmux" -brew "tree" -brew "uv" -brew "vim" -brew "wget" -brew "wget2" -brew "yarn" -brew "yazi" -brew "zellij" -brew "zoxide" -brew "daipeihust/tap/im-select" -brew "felixkratz/formulae/borders" -brew "felixkratz/formulae/sketchybar" -brew "koekeishiya/formulae/skhd" -brew "koekeishiya/formulae/yabai" -brew "railwaycat/emacsmacport/emacs-mac" -cask "activitywatch" -cask "alacritty" -cask "alex313031-thorium" -cask "alt-tab" -cask "apparency" -cask "appcleaner" -cask "arc" -cask "betterdisplay" -cask "chatgpt" -cask "discord" -cask "dotnet-sdk" -cask "font-caskaydia-cove-nerd-font" -cask "font-iosevka-nerd-font" -cask "font-jetbrains-mono-nerd-font" -cask "font-lxgw-wenkai" -cask "font-sf-mono" -cask "font-sf-pro" -cask "google-drive" -cask "iina" -cask "iterm2" -cask "jordanbaird-ice" -cask "karabiner-elements" -cask "keka" -cask "keyguard" -cask "kitty" -cask "localsend" -cask "ltspice" -cask "macfuse" -cask "neovide" -cask "obsidian" -cask "onedrive" -cask "orbstack" -cask "powershell" -cask "protonvpn" -cask "qlcolorcode" -cask "qlimagesize" -cask "qlmarkdown" -cask "qlstephen" -cask "qlvideo" -cask "qspace-pro" -cask "quicklook-json" -cask "quicklookase" -cask "r" -cask "raycast" -cask "rider" -cask "rstudio" -cask "rustdesk" -cask "scroll-reverser" -cask "sf-symbols" -cask "sioyek" -cask "skim" -cask "squirrel" -cask "steam" -cask "suspicious-package" -cask "telegram-desktop" -cask "typora" -cask "visual-studio-code" -cask "vivaldi" -cask "warp" -cask "wezterm" -cask "zen-browser" -mas "QQ", id: 451108668 -mas "SnippetsLab", id: 1006087419 -mas "微信", id: 836500024 diff --git a/bootstrap/macOS/duti.zsh b/bootstrap/macOS/duti.zsh deleted file mode 100644 index 8f1ccf5..0000000 --- a/bootstrap/macOS/duti.zsh +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/zsh -# duti.zsh -# Set default apps (duti) -# The id of the app can be found by running -# `osascript -e 'id of app "AppName"'` -brew install --formula duti -echo "[INFO] Setting Default Apps" - -# Define an associative array with file extensions and corresponding app IDs -typeset -A app_defaults -app_defaults=( - # Markdown -> Typora - .md abnerworks.Typora - .markdown abnerworks.Typora - # PDF -> Sioyek - .pdf info.sioyek.sioyek - # Raw Text -> Neovide - .txt com.neovide.neovide - # Archive -> Keka - .zip com.aone.keka - .rar com.aone.keka - .7z com.aone.keka - .tar com.aone.keka - # Source Code Light -> Neovim - .gitignore com.neovide.neovide - .vimrc com.neovide.neovide - .vim com.neovide.neovide - .lua com.neovide.neovide - .py com.neovide.neovide - .jl com.neovide.neovide - .sh com.neovide.neovide - .c com.neovide.neovide - # Source Code DOTNET -> VSCode - .cs com.microsoft.VSCode - .fs com.microsoft.VSCode - .fsx com.microsoft.VSCode - .csx com.microsoft.VSCode - .ps1 com.microsoft.VSCode - # Source Code Web -> VSCode - .js com.microsoft.VSCode - .ts com.microsoft.VSCode - .jsx com.microsoft.VSCode - .tsx com.microsoft.VSCode - .css com.microsoft.VSCode - .scss com.microsoft.VSCode - .sass com.microsoft.VSCode - .vue com.microsoft.VSCode - # Source Code Config -> Neovim - .json com.neovide.neovide - .yaml com.neovide.neovide - .yml com.neovide.neovide - .toml com.neovide.neovide - .ini com.neovide.neovide - .cfg com.neovide.neovide - .conf com.neovide.neovide - .kdl com.neovide.neovide - .xml com.neovide.neovide - # Source Code Jupyter -> VSCode - .ipynb com.microsoft.VSCode - # Source Code DotNet Project -> Rider - .sln com.jetbrains.rider - .csproj com.jetbrains.rider - .fsproj com.jetbrains.rider - # Video -> IINA - .mp4 com.colliderli.iina - .mkv com.colliderli.iina -) - -# Loop through the array and set the default apps -for ext app_id in ${(kv)app_defaults}; do - duti -s $app_id $ext all -done - -unset app_defaults diff --git a/bootstrap/macOS/main.zsh b/bootstrap/macOS/main.zsh deleted file mode 100644 index 07a3855..0000000 --- a/bootstrap/macOS/main.zsh +++ /dev/null @@ -1,106 +0,0 @@ -#! /bin/zsh - -echo "Running the setup script" -set -e -set -x - -# VARIABLES - -export DOTFILES="${DOTFILES:-$HOME/.dotfiles}" - -# In macOS, consider the user as sudoer by default -export WHEEL=1 -export GUI_SETUP=1 - -# Xcode Command Line Tools -echo "[INFO] Installing Xcode Command Line Tools" -echo "[ACTION] Request Human Takeover" - -xcode-select --install - -# Press any key to continue (if Xcode Command Line Tools are installed) -echo "[ACTION] Press any key to continue when xcode CLI tools are installed" -read -n 1 - -# System Preferences -# Installation Sources -echo "[INFO] Setting Installation Sources" -echo "[ACTION] Request Human Takeover" -echo "In macOS Sequoia, setup manually (System preferences -> Security & Privacy -> General -> Allow apps downloaded from: Anywhere)" -# sudo spctl --master-disable -# In Mac OS Sequoia, the command above is not working -# Should be set up manually (System Preferences -> Security & Privacy -> General -> Allow apps downloaded from: Anywhere) - -echo "[INFO] Installing Homebrew" -echo "[ACTION] Request Human Input" -/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - -echo "[ACTION] Press any key to continue when xcode CLI tools are installed" -read -n 1 - -echo "[INFO] Cloning Dotfiles" - -git clone https://github.com/js0ny/dotfiles.git $DOTFILES - -echo "[INFO] Setting up system properties" - -source $DOTFILES/bootstrap/macOS/plist.zsh - -read -p "[ACTION] Do you want to use sudo with touch ID? (Y/n) " -r choice -case "$choice" in - n | N) - : - ;; - *) - # Use `sudo cp` to prevent losing sudo access - sudo cp /etc/pam.d/sudo /etc/pam.d/sudo.bak - sudo cp $DOTFILES/platforms/mac/etc/pam.d/sudo /etc/pam.d/sudo - ;; -esac - -echo "[INFO] Installing Homebrew Packages" - -# Load Brewfile -eval "$(/opt/homebrew/bin/brew shellenv)" -brew bundle --file=$DOTFILES/bootstrap/macOS/Brewfile - -# Setting up emacs -ln -s /usr/local/opt/emacs-mac/Emacs.app /Applications/Emacs.app - -# Setting Default Apps - -source $DOTFILES/bootstrap/macOS/duti.zsh - -# Setting up Dotfiles - -source $DOTFILES/bootstrap/macOS/symlinks.zsh -source $DOTFILES/bootstrap/components/zsh.sh - -source $DOTFILES/tools/zsh/global.zshenv -source $DOTFILES/tools/zsh/zshenv -source $DOTFILES/tools/zsh/zshrc - -# Rime - -source $DOTFILES/bootstrap/components/rime.sh - -echo "[INFO] Installing Doom Emacs" - -source $DOTFILES/bootstrap/components/emacs.sh - - -echo "[INFO] Installing Color Scheme (Catppuccin Mocha)" - -bash $DOTFILES/bootstrap/components/mocha-port.bash - -# Misc - -dotnet tool install --global dotnet-repl - -pnpm install -g typescript -pnpm install -g tsx - -echo "Done! For additional setup, boot to recovery mode and run the following command:" -echo "csrutil enable --without fs --without debug --without nvram" -echo "Then, reboot the system" -echo "Run the post-install script to finish the setup" diff --git a/bootstrap/macOS/plist.zsh b/bootstrap/macOS/plist.zsh deleted file mode 100644 index 9d7982c..0000000 --- a/bootstrap/macOS/plist.zsh +++ /dev/null @@ -1,37 +0,0 @@ -## Finder -echo "[INFO] Setting Finder Preferences" -defaults write com.apple.finder QuitMenuItem -bool true # Quit with CMD+Q -defaults write com.apple.finder ShowPathbar -bool true # Show Path Bar -defaults write com.apple.finder ShowStatusBar -bool true # Show Status Bar -defaults write NSGlobalDomain AppleShowAllExtensions -bool true # Show All File Extensions -defaults write com.apple.finder AppleShowAllFiles -bool true # Show Hidden Files -defaults write com.apple.finder _FXSortFoldersFirst -bool true -defaults write com.apple.finder FinderSpawnTab -bool true -# Don't show External Hard Drives on Desktop -defaults write com.apple.finder ShowExternalHardDrivesOnDesktop -bool false -defaults write com.apple.finder ShowHardDrivesOnDesktop -bool false -defaults write com.apple.finder ShowMountedServersOnDesktop -bool false -defaults write com.apple.finder ShowRemovableMediaOnDesktop -bool false -# No DS_Store on Network -defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true -# Keyboard -# Disable Accent Menu -defaults write NSGlobalDomain ApplePressAndHoldEnabled -boolean false -killall Finder -killall Dock -## Dock -echo "[INFO] Setting Dock Preferences" -defaults write com.apple.dock persistent-apps -array -defaults write com.apple.dock persistent-others -array -defaults write com.apple.dock autohide -bool true # Autohide Dock -defaults write com.apple.dock autohide-time-modifier -float 0.5 -defaults write com.apple.dock autohide-delay -float 0 # Immediately Autohide Dock -defaults write com.apple.dock show-recents -bool false # Hide Recent Applications -killall Dock -## Trackpad -echo "[INFO] Setting Trackpad Preferences" -defaults write com.apple.AppleMultitouchTrackpad TrackpadThreeFingerDrag -bool true -defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad TrackpadThreeFingerDrag -bool true -defaults write com.apple.AppleMultitouchTrackpad Clicking -bool true -defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true -defaults write -g NSWindowShouldDragOnGesture -bool true diff --git a/bootstrap/macOS/symlinks.zsh b/bootstrap/macOS/symlinks.zsh deleted file mode 100644 index f9466ca..0000000 --- a/bootstrap/macOS/symlinks.zsh +++ /dev/null @@ -1,29 +0,0 @@ -set -e # Exit immediately if a command exits with a non-zero status - -# 声明为关联数组 -typeset -A linkDots - -# 从通用配置文件加载 -source "$DOTFILES/bootstrap/components/symlinks.bash" - -echo "[INFO] DOTFILES = $DOTFILES" - -echo "[ACTION] Press any key to proceed" -read -r -n1 - -echo "[INFO] Setting up symbolic links" -# 使用 zsh 的关联数组语法 -for src in ${(k)linkDots}; do - dest="${linkDots[$src]}" - echo "Linking $src to $dest" - if [ -d "$src" ]; then - test -d $dest && mv $dest $dest.bak - ln -sf $src $dest - elif [ -f "$src" ]; then - dest_parent=$(dirname $dest) - test -d $dest_parent || mkdir -p $dest_parent - ln -sf $src $dest - else - echo "[ERROR] $src does not exist" - fi -done diff --git a/bootstrap/setup.ps1 b/bootstrap/setup.ps1 deleted file mode 100644 index fbbdd94..0000000 --- a/bootstrap/setup.ps1 +++ /dev/null @@ -1,223 +0,0 @@ -#Requires -RunAsAdministrator -# TODO: This file is under development -exit 1 - -$DOTFILES = if ($Env:DOTFILES) { $Env:DOTFILES } else { Join-Path "$Env:USERPROFILE" "dotfiles" } - - -New-Item -ItemType Directory -Path (Join-Path $Env:UserProfile "Temp") -Force - -winget install -e --id Git.Git - -if (Get-Command git -ErrorAction SilentlyContinue) { - git clone https://github.com/js0ny/dotfiles.git "$DOTFILES" --depth 1 -} -else { - Write-Output "[ERROR] Git is not installed" - exit 1 -} - -# Install scoop -Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser -Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression - -# Inline `sudo` -sudo sudo config --enable normal - -$BOOTSTRAP = Join-Path $DOTFILES "bootstrap" "win" - -. (Join-Path $BOOTSTRAP "Environment.ps1") -. (Join-Path $BOOTSTRAP "Registry.ps1") -. (Join-Path $BOOTSTRAP "Symlinks.ps1") - -scoop import (Join-Path $BOOTSTRAP "Scoopfile.json") - -# Rime - -$RIMEDIR = Join-Path $Env:AppData "Rime" -git clone --depth 1 https://github.com/js0ny/rime_wanxiang_pro.git $RIMEDIR - -Set-Location $RIMEDIR -just init -just clone_plum - -# The section below not done yet -exit 1 - -#!C:\Program Files\WindowsApps\Microsoft.PowerShell_7.4.6.0_x64__8wekyb3d8bbwe\pwsh.EXE -# Run with PowerShell 7 -winget install -e --id Git.Git -git clone https://github.com/js0ny/dotfiles.git ~\.dotfiles -Set-Location -Path ~\.dotfiles -Remove-Item -Force $PROFILE -$DOTFILES = "$HOME\.dotfiles" -New-Item -ItemType SymbolicLink -Path $PROFILE -Target "$DOTFILES\win\Microsoft.PowerShell_profile.ps1" -. $PROFILE -# Install Scoop -Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser -Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression -# Install Chocolatey -# Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) - -# Set Dotfiles -# $DOTFILES\.config -$folders = @("conda", "git", "ideavim", "ipython", "markdownlint", "npm", "NuGet", "nvim", "pip", "Vim") -foreach ($folder in $folders) { - New-Item -ItemType Directory -Path "$Env:XDG_CONFIG_HOME\$folder" -Force -} -New-Item -ItemType SymbolicLink -Path "$Env:XDG_CONFIG_HOME\conda\.condarc" -Target "$DOTFILES\.config\conda\condarc.yaml" -Force -New-Item -ItemType SymbolicLink -Path "$Env:XDG_CONFIG_HOME\git\config" -Target "$DOTFILES\.config\git\.gitconfig" -Force -New-Item -ItemType SymbolicLink -Path "~\.haskeline" -Target "$DOTFILES\.haskeline" -Force -New-Item -ItemType SymbolicLink -Path "$Env:XDG_CONFIG_HOME\ideavim\.ideavimrc" -Target "$DOTFILES\.config\ideavim\.ideavimrc" -Force -New-Item -ItemType SymbolicLink -Path "$Env:XDG_CONFIG_HOME\ipython" -Target "$DOTFILES\.config\ipython" -Force -# New-Item -ItemType SymbolicLink -Path "~\.markdownlint.json" -Target "$DOTFILES\.markdownlint.json" -Force -New-Item -ItemType SymbolicLink -Path "$Env:XDG_CONFIG_HOME\npm\npmrc" -Target "$DOTFILES\.config\npm\npmrc" -Force -New-Item -ItemType SymbolicLink -Path "$Env:AppData\NuGet\NuGet.Config" -Target "$DOTFILES\.config\NuGet\NuGet.Config" -Force -New-Item -ItemType SymbolicLink -Path "$Env:XDG_CONFIG_HOME\nvim" -Target "$DOTFILES\.config\nvim" -Force -New-Item -ItemType SymbolicLink -Path "$Env:AppData\pip\pip.ini" -Target "$DOTFILES\.config\pip\pip.conf" -Force -New-Item -ItemType SymbolicLink -Path "$Env:XDG_CONFIG_HOME\Vim\_vimrc" -Target "$DOTFILES\.config\vim\vimrc" -Force -New-Item -ItemType SymbolicLink -Path "~\.wslconfig" -Target "$DOTFILES\win\.wslconfig" -Force -New-Item -ItemType SymbolicLink -Path "$Env:AppData\neovide\config.toml" -Target "$DOTFILES\win\neovide.toml" -Force -# New-Item -ItemType SymbolicLink -Path "~\.vscode.vimrc" -Target "$DOTFILES\vscode\vscode.vimrc" Use Absolute Path -# Hide dotfiles -Get-ChildItem -Force -Filter .* -Path $HOME | ForEach-Object { $_.Attributes += "Hidden" } -@( - Join-Path $HOME '.config' - Join-Path $HOME '.dotfiles' -) | ForEach-Object { - $_.Attributes -band -bnot [System.IO.FileAttributes]::Hidden -} -Set-Location $HOME\Documents -# Match WindowsPowerShell and PowerShell -Get-ChildItem -Force -Filter *owerShell | ForEach-Object { $_.Attributes += "Hidden" } - -# Windows Terminal -if (Get-Command wt -ErrorAction SilentlyContinue) { - Write-Output "Windows Terminal (wt) installed" -} -else { - winget install -e --id Microsoft.WindowsTerminal -} - -# Uninstall Windows Apps -Get-AppxPackage *solit* | Remove-AppxPackage # 纸牌 -Get-AppxPackage *sound* | Remove-AppxPackage # 錄音機 -Get-AppxPackage *camera* | Remove-AppxPackage # 相機 -Get-AppxPackage *weather* | Remove-AppxPackage # 天氣 -Get-AppxPackage *Map* | Remove-AppxPackage # 地圖 -# Get-AppxPackage *clipchamp* | Remove-AppxPackage # 其實這個還行 - -# Added Packages -scoop bucket add main -scoop bucket add nerd-fonts -scoop bucket add extras -scoop bucket add nonportable - -# CLI Tools -# winget install -e --id GnuWin32.Grep # Use Select-String instead -scoop install main/make -# winget install -e --id GnuWin32.Which # Use Get-Command instead -scoop install main/fzf -scoop install main/ripgrep -scoop install main/wget -scoop install main/wget2 -scoop install main/cmake -scoop install main/bat # modern cat -scoop install main/zoxide # Directory Jump -scoop install main/dos2unix # Convert line endings -scoop install main/hyperfine # Benchmark -scoop install main/bottom # System Monitor -scoop install main/delta # diff -scoop install extras/gpg4win - -# File Management -scoop install extras/everything -scoop install main/7zip -scoop install extras/bandizip -scoop install main/pandoc -scoop install extras/sumatrapdf -winget install -e --id Google.GoogleDrive -sudo scoop install nonportable/winbtrfs-np - -# System Enhancements -scoop install extras/fancontrol -scoop install extras/powertoys -scoop install extras/msiafterburner -winget install -e --id Yuanli.uTools -scoop install extras/geekuninstaller -scoop install extras/flow-launcher -# winget install -e --id AutoHotkey.AutoHotkey -scoop install extras/autohotkey -scoop install nonportable/mactype-np -scoop install extras/diskgenius -# winget install -e --id Nilesoft.Shell -# scoop install umi-ocr-paddle - -# Editor -scoop install main/vim -scoop install main/neovim -scoop install extras/vscodium -scoop install extras/vscode -scoop install extras/neovide - - -# Security -scoop bucket add keyguard https://github.com/AChep/keyguard-repo-scoop -scoop install keyguard/keyguard - -# PKM -scoop install extras/obsidian -winget install -e --id 9P7HPMXP73K4 # Siyuan -scoop install extras/typora -scoop install extras/zotero -scoop install extras/anki -# winget install -e --id Notion.Notion - -# Browser -# Use Microsoft Edge directly -# winget install -e --id TheBrowserCompany.Arc -# winget install -e --id Mozilla.Firefox.Nightly # Not working - -# Programming Languages -winget install -e --id Python.Python.3.13 -winget install -e --id Anaconda.Miniconda3 -winget install -e --id OpenJS.NodeJS -winget install -e --id Rustlang.Rustup -winget install -e --id Microsoft.DotNet.SDK.9 - -# Dev -scoop install extras/docker -scoop install extras/lazygit - -# IDE -scoop install extras/rider - -# Gaming -winget install -e --id Valve.Steam - -# IME -winget install -e --id Rime.Weasel # 小狼毫 Rime - -# Misc -winget install -e --id 9N5LW3JBCXKF --source msstore # MSIX Packaging Tool -winget install -e --id 9PKTQ5699M62 --source msstore # iCloud -winget install -e --id RazerInc.RazerInstaller # Razer Synapse - -# Social -winget install -e --id 9N97ZCKPD60Q --source msstore # Unigram (Telegram client) -winget install -e --id Tencent.QQ.NT -winget install -e --id XPFCKBRNFZQ62G --source msstore # WeChat in Windows Store (MSIX) - -# Others -winget install -e --id Appest.TickTick -winget install -e --id 9NBLGGH4Z1SP --source msstore # ShareX (screen capture) - -# Fonts -scoop install FiraCode-NF -scoop install CascadiaCode-NF -scoop install LXGWWenKai # 霞鹜文楷 -scoop install LXGWWenKaiMono # 霞鹜文楷Mono - -# WSL -scoop install archwsl -wsl --set-version Arch 1 diff --git a/bootstrap/setup.sh b/bootstrap/setup.sh deleted file mode 100644 index bd6c661..0000000 --- a/bootstrap/setup.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env bash -# shellcheck disable=SC1090 shell=sh -# Date: 2025-02-11 -# Author: js0ny -# IMPORTANT: The default `bash` in macOS is outdated, run with zsh or install the latest `bash` via Homebrew -# If you are macOS, run `xcode select --install` first - -set -o errexit -set -o xtrace - -DOTFILES="${DOTFILES:-$HOME/.dotfiles}" - -mkdir -p ~/.local/.tmp - -export DOTFILES - -case "$(uname)" in - Linux) - curl https://raw.githubusercontent.com/js0ny/dotfiles/refs/heads/master/bootstrap/linux/main.bash -o ~/.local/.tmp/main.bash - source ~/.local/.tmp/main.bash - rm -rf ~/.local/.tmp/main.bash - ;; - Darwin) - curl https://raw.githubusercontent.com/js0ny/dotfiles/refs/heads/master/bootstrap/macOS/main.zsh -o ~/.local/.tmp/main.zsh - zsh ~/.local/.tmp/main.zsh - rm -rf ~/.local/.tmp/main.zsh - ;; -esac diff --git a/bootstrap/win/Defender.ps1 b/bootstrap/win/Defender.ps1 deleted file mode 100644 index 06577de..0000000 --- a/bootstrap/win/Defender.ps1 +++ /dev/null @@ -1,23 +0,0 @@ -#Requires -RunAsAdministrator - -Set-MpPreference -EnableControlledFolderAccess 1 - -$protected = (Get-MpPreference).ControlledFolderAccessProtectedFolders -$protected += "$Env:UserProfile\.ssh" -$protected += "$Env:UserProfile\.config" -$protected += "$Env:UserProfile\Vault" -Set-MpPreference -ControlledFolderAccessProtectedFolders $protected - -$apps = (Get-MpPreference).ControlledFolderAccessAllowedApplications -$apps += "$Env:Windir\System32\OpenSSH\ssh.exe" -$apps += "$Env:ProgramFiles\GPSoftware\Directory Opus\DOpus.exe" -$apps += (Get-Command -Name code).Source.Replace("bin\code.cmd", "Code.exe") -$apps += (Get-Command -Name pwsh).Source -$apps += (Get-Command -Name git).Source -Set-MpPreference -ControlledFolderAccessAllowedApplications $apps - -$exclusion = (Get-MpPreference).ExclusionPath -$exclusion += "$env:ProgramFiles\JetBrains" -$exclusion += "$env:LocalAppData\JetBrains" -$exclusion += "D:\Source" -Set-MpPreference -ExclusionPath $exclusion diff --git a/bootstrap/win/Environments.ps1 b/bootstrap/win/Environments.ps1 deleted file mode 100644 index 06feb5f..0000000 --- a/bootstrap/win/Environments.ps1 +++ /dev/null @@ -1,93 +0,0 @@ -# Set Environment Variables -# Use %PATH_EXT% to prevent PATH from being too long -[System.Environment]::SetEnvironmentVariable("Path_EXT_0", "D:\bin", "User") -[System.Environment]::SetEnvironmentVariable("Path_EXT_0", "C:\Users\jsony\AppData\Local\Cargo\bin", "User") -[System.Environment]::SetEnvironmentVariable("Path_EXT_1", "C:\Users\jsony\AppData\Local\Go\bin", "User") -[System.Environment]::SetEnvironmentVariable("Path_EXT_2", "C:\Users\jsony\AppData\Local\Cargo\bin", "User") -$currentPath = [System.Environment]::GetEnvironmentVariable("Path", "User") -if ($currentPath -notlike "*%PATH_EXT%*") { - $currentPath += ";%PATH_EXT_0%;%PATH_EXT_1%;%PATH_EXT_2%" -} -[System.Environment]::SetEnvironmentVariable("Path", $currentPath, "User") -[System.Environment]::SetEnvironmentVariable("PATH_EXT_0", "", [System.EnvironmentVariableTarget]::Machine) -[System.Environment]::SetEnvironmentVariable("PATH_EXT_1", "", [System.EnvironmentVariableTarget]::Machine) -[System.Environment]::SetEnvironmentVariable("PATH_EXT_2", "", [System.EnvironmentVariableTarget]::Machine) -$currentPath = [System.Environment]::GetEnvironmentVariable("Path", [System.EnvironmentVariableTarget]::Machine) -if ($currentPath -notlike "*%PATH_EXT%*") { - $currentPath += ";%PATH_EXT_0%;%PATH_EXT_1%;%PATH_EXT_2%" -} -[System.Environment]::SetEnvironmentVariable("Path", $currentPath, [System.EnvironmentVariableTarget]::Machine) -# Simulate XDG Base Directory Specification -$Env:XDG_CONFIG_HOME = "$Env:AppData" -$Env:XDG_DATA_HOME = "$Env:LocalAppData" -$Env:XDG_CACHE_HOME = "$Env:LocalAppData\Cache" -$Env:XDG_STATE_HOME = "$Env:LocalAppData\State" -[System.Environment]::SetEnvironmentVariable("XDG_CONFIG_HOME", "$Env:XDG_CONFIG_HOME", "User") -[System.Environment]::SetEnvironmentVariable("XDG_DATA_HOME", "$Env:XDG_DATA_HOME", "User") -New-Item -ItemType Directory -Path "$Env:LocalAppData\cache" -Force -[System.Environment]::SetEnvironmentVariable("XDG_CACHE_HOME", "$Env:XDG_CACHE_HOME", "User") -New-Item -ItemType Directory -Path "$Env:LocalAppData\state" -Force -[System.Environment]::SetEnvironmentVariable("XDG_STATE_HOME", "$Env:XDG_STATE_HOME", "User") -# Add environment variables -[System.Environment]::SetEnvironmentVariable("DOTFILES", "$DOTFILES", "User") -# Set potential environment variables to prevent softwares put their configs in the wrong place -# eg. dotfiles in %UserProfile% -# ~\.aws -> %AppData%\aws :: AWS CLI -New-Item -ItemType Directory -Path "$Env:AppData\aws" -Force -[System.Environment]::SetEnvironmentVariable("AWS_CONFIG_FILE", "$Env:AppData\aws\config", "User") -[System.Environment]::SetEnvironmentVariable("AWS_SHARED_CREDENTIALS_FILE", "$Env:AppData\aws\credentials", "User") -# ~\.azure -> %LocalAppData%\Azure :: Azure CLIcargo install --list -[System.Environment]::SetEnvironmentVariable("AZURE_CONFIG_DIR", "$Env:LocalAppData\Azure", "User") -# ~\.cargo -> %LocalAppData%\Cargo :: Rust https://doc.rust-lang.org/cargo/guide/cargo-home.html -[System.Environment]::SetEnvironmentVariable("CARGO_HOME", "$Env:LocalAppData\Cargo", "User") -# ~\.docker -> %AppData%\dotDocker :: Docker (Docker takes %AppData%\Docker, use dotDocker instead) -[System.Environment]::SetEnvironmentVariable("DOCKER_CONFIG", "$Env:AppData\dotDocker", "User") -# ~\.dotnet -> %LocalAppData%\dotNET :: .NET Core -[System.Environment]::SetEnvironmentVariable("DOTNET_CLI_HOME", "$Env:LocalAppData\dotNET", "User") -# ~\.emacs.d -> %AppData%\.emacs.d :: Emacs (This is default) -# [System.Environment]::SetEnvironmentVariable("EMACS_HOME", "$Env:AppData\emacs.d", "User") -# ~\go -> %LocalAppData%\GO :: golang -[System.Environment]::SetEnvironmentVariable("GOPATH", "$Env:LocalAppData\GO", "User") -# ~\.ipython -> %AppData%\ipython :: IPython -# IPython won't check XDG on Windows https://github.com/ipython/ipython/blob/0615526f80691452f2e282c363bce197c0141561/IPython/utils/path.py#L200 -[System.Environment]::SetEnvironmentVariable("IPYTHONDIR", "$Env:AppData\ipython", "User") -# ~\.julia -> %LocalAppData%\julia :: Julia -[System.Environment]::SetEnvironmentVariable("JULIA_DEPOT_PATH", "$Env:LocalAppData\julia", "User") -# ~\_lesshst -> %LocalAppData%\state\lesshst :: less -[System.Environment]::SetEnvironmentVariable("LESSHISTFILE", "$Env:XDG_STATE_HOME\lesshst", "User") -# %AppData%\less\lesskey :: less -New-Item -ItemType Directory -Path "$Env:AppData\less" -Force -[System.Environment]::SetEnvironmentVariable("LESSKEYIN", "$Env:AppData\less\lesskey", "User") -# ~\.matplotlib -> %LocalAppData%\matplotlib :: Matplotlib -[System.Environment]::SetEnvironmentVariable("MPLCONFIGDIR", "$Env:LocalAppData\matplotlib", "User") -# ~\.npmrc -> %AppData%\npm\npmrc :: npm -[System.Environment]::SetEnvironmentVariable("NPM_CONFIG_USERCONFIG", "$Env:AppData\npm\npmrc", "User") -# ~\.node_repl_history -> %LocalAppData%\state\node\repl_history :: Node.js -New-Item -ItemType Directory -Path "$Env:XDG_STATE_HOME\node" -Force -[System.Environment]::SetEnvironmentVariable("NODE_REPL_HISTORY", "$Env:XDG_STATE_HOME\node\repl_history", "User") -# ~\.ts_node_repl_history -> %LocalAppData%\state\node\ts_node_repl_history :: Node.js -# NOTE: ts-node doesn't support this yet -# [System.Environment]::SetEnvironmentVariable("TS_NODE_REPL_HISTORY", "$Env:XDG_STATE_HOME\node\ts_node_repl_history", "User") -# ~\.nuget\packages -> %LocalAppData%\cache\NuGet\packages :: NuGet -[System.Environment]::SetEnvironmentVariable("NUGET_PACKAGES", "$Env:XDG_CACHE_HOME\NuGet\packages", "User") -# ~\.omnisharp -> %AppData%\OmniSharp :: OmniSharp -[System.Environment]::SetEnvironmentVariable("OMNISHARPHOME", "$Env:AppData\OmniSharp", "User") -# ~\.python_history -> %LocalAppData%\state\python\python_history :: Python -# Only works for Python 3.13+ https://docs.python.org/3.13/using/cmdline.html#envvar-PYTHON_HISTORY -New-Item -ItemType Directory -Path "$Env:XDG_STATE_HOME\python" -Force -[System.Environment]::SetEnvironmentVariable("PYTHON_HISTORY", "$Env:XDG_STATE_HOME\python\python_history", "User") -# ~\.rustup -> %LocalAppData%\Rustup :: Rust -[System.Environment]::SetEnvironmentVariable("RUSTUP_HOME", "$Env:LocalAppData\Rustup", "User") -# ~\.vimrc -> %AppData%\Vim\_vimrc :: Vim -New-Item -ItemType Directory -Path "$Env:AppData\Vim" -Force -[System.Environment]::SetEnvironmentVariable("VIM", "$Env:AppData\Vim", "User") -[System.Environment]::SetEnvironmentVariable("KOMOREBI_CONFIG_HOME", "$Env:AppData\komorebi", "User") -# ~\.vuerc -> %AppData%\vue\.vuerc :: Vue CLI -# Currently, Vue CLI doesn't support file path configuration:https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/cli/lib/confifile -# [System.Environment]::SetEnvironmentVariable("VUE_CLI_CONFIG_PATH", "$Env:AppData\vue\.vuerc", "User") -# ~\.wget-hsts -> %LocalAppData%\cache\wget-hsts :: wget -# Use Alias, wget host file path is not configurable -# ~\.yarnrc -> %AppData%\yarn\config.yaml :: Yarn v1 -# Use Alias, yarnrc path is not configurable - -# Reload required here to make sure the environment variables are set diff --git a/bootstrap/win/Registry.ps1 b/bootstrap/win/Registry.ps1 deleted file mode 100644 index a170680..0000000 --- a/bootstrap/win/Registry.ps1 +++ /dev/null @@ -1,11 +0,0 @@ - -# Disable StickyKeys -REG ADD "HKEY_CURRENT_USER\Control Panel\Accessibility\StickyKeys" /v "Flags" /t REG_SZ /d "506" /f - -# Disable Hyper+Keys to open Office apps -REG ADD HKCU\Software\Classes\ms-officeapp\Shell\Open\Command /t REG_SZ /d rundll32 - -# Disable DOS 8.3 file name creation -sudo fsutil 8dot3name set 1 -# Delete all known DOS 8.3 file name -fsutil 8dot3name strip /s /v C:\ diff --git a/bootstrap/win/Tasks.ps1 b/bootstrap/win/Tasks.ps1 deleted file mode 100644 index d12756f..0000000 --- a/bootstrap/win/Tasks.ps1 +++ /dev/null @@ -1,21 +0,0 @@ -#Requires -RunAsAdministrator - -Write-Output "[INFO] Setting up KMonad Tasks" - -# PowerShell Path, use 7 if available -if (Get-Command "pwsh" -ErrorAction SilentlyContinue) { - $PowerShellPath = (Get-Command "pwsh").Source -} -else { - $PowerShellPath = (Get-Command "powershell").Source -} - -$DotStartUpPath = "$Env:DOTFILES\platforms\win\start" - -$KMonadRunnerPath = Join-Path $DotStartUpPath "KMonad.ps1" -$Action = New-ScheduledTaskAction -Execute $PowerShellPath -Argument "-NoProfile -ExecutionPolicy Bypass -File $KMonadRunnerPath" -$Trigger = New-ScheduledTaskTrigger -AtLogOn -$Principal = New-ScheduledTaskPrincipal -UserId "$env:USERNAME" -LogonType Interactive -RunLevel Highest -$Settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -DontStopOnIdleEnd -Hidden - -Register-ScheduledTask -TaskName "Start Kmonad" -Action $Action -Trigger $Trigger -Principal $Principal -Settings $Settings -TaskPath "\Personal" diff --git a/bootstrap/win/symlinks.ps1 b/bootstrap/win/symlinks.ps1 deleted file mode 100644 index 4b137ad..0000000 --- a/bootstrap/win/symlinks.ps1 +++ /dev/null @@ -1,78 +0,0 @@ -# $DOTFILES\bootstrap\set_symlink_win.ps1 -# Date: 2024-12-01 -# Author: js0ny -# Set symlinks for dotfiles on Windows -# 在 Windows 上设置 配置文件的符号链接 - -# Run this with Administrator privileges - -$DOTFILES = Join-Path $Env:UserProfile ".dotfiles" -$BASE_COMMON = Join-Path $DOTFILES "common" -$BASE_TOOLS = Join-Path $DOTFILES "tools" -$BASE_WIN = Join-Path $DOTFILES "platforms" "win" -$STARTUP = [System.Environment]::GetFolderPath("Startup") - -$BAT_CONF = Join-Path $Env:AppData "bat" "config" -if ((Get-Command bat).Source -ccontains "scoop") { - $BAT_CONF = Join-Path (scoop prefix bat) "config" -} - - -$SIOYEKDIR = scoop prefix sioyek - -$SIOYEKCFG = Get-ChildItem "$BASE_TOOLS\sioyek" -Filter "*.config" - -foreach ($cfg in $SIOYEKCFG) { - $cfgName = $cfg.Name - $cfgPath = Join-Path $SIOYEKDIR $cfgName - New-Item -ItemType SymbolicLink -Target $cfg -Path $cfgPath -Force -} - -$linkDots = @{ - "$BASE_WIN\wslconfig" = "$Env:UserProfile\.wslconfig" - "$BASE_WIN\glzr" = "$Env:UserProfile\.glzr" - "$BASE_WIN\neovide.toml" = "$Env:AppData\neovide\config.toml" - "$BASE_WIN\vsvimrc" = "$Env:UserProfile\.vsvimrc" - "$BASE_COMMON\bat.config" = "$BAT_CONF" - "$BASE_COMMON\condarc.yaml" = "$Env:XDG_CONFIG_HOME\conda\.condarc" - "$BASE_COMMON\glow.yaml" = "$Env:AppData\glow\glow.yml" - "$BASE_COMMON\haskeline" = "$Env:UserProfile\.haskeline" - "$BASE_COMMON\ideavimrc" = "$Env:XDG_CONFIG_HOME\ideavim\ideavimrc" - "$BASE_COMMON\lazygit.yaml" = "$Env:AppData\lazygit\config.yml" - "$BASE_COMMON\lesskey" = "$Env:LessKeyIn" - "$BASE_COMMON\lsd" = "$Env:AppData\lsd\config.yaml" - "$BASE_COMMON\npmrc" = "$Env:NPM_CONFIG_USERCONFIG" - "$BASE_COMMON\NuGet.Config" = "$Env:AppData\NuGet\NuGet.Config" - "$BASE_COMMON\starship.toml" = "$Env:UserProfile\.config\starship.toml" - "$BASE_COMMON\pip.conf" = "$Env:AppData\pip\pip.ini" - "$BASE_COMMON\vimrc.noxdg.vimrc" = "$Env:UserProfile\_vimrc" - "$BASE_COMMON\emacs.d" = "$Env:AppData\.emacs.d" - "$BASE_TOOLS\ipython" = "$Env:IPYTHONDIR" - "$BASE_TOOLS\nvim" = "$Env:XDG_CONFIG_HOME\nvim" - "$BASE_TOOLS\wezterm" = "$Env:XDG_CONFIG_HOME\wezterm" - "$BASE_TOOLS\yazi" = "$Env:AppData\yazi\config" - "$BASE_TOOLS\zed" = "$Env:AppData\Zed" -} - - - -foreach ($src in $linkDots.Keys) { - $dest = $linkDots[$src] - # Auto create directories (Untested) - if (Test-Path -Path $src -PathType Container) { - New-Item -ItemType Directory -Path $dest -Force - } - else { - $Local:destParent = Split-Path -Path $dest -Parent - New-Item -ItemType Directory -Path $destParent -Force - } - if (Test-Path -Path $dest) { - Move-Item $dest "$dest.bak" -Force - } - New-Item -ItemType SymbolicLink -Target $src -Path $dest -Force -} - -New-Item -ItemType SymbolicLink -Target "$BASE_WIN\Microsoft.PowerShell_profile.ps1" -Path "$Env:UserProfile\Documents\PowerShell\Microsoft.PowerShell_profile.ps1" -Force - -Copy-Item (Join-Path $BASE_WIN "ahk" "bin" "Caps.exe") $STARTUP -Copy-Item (Join-Path $BASE_COMMON "gitconfig") $Env:UserProfile diff --git a/tools/doom/beancount.el b/dot_config/doom/beancount.el similarity index 100% rename from tools/doom/beancount.el rename to dot_config/doom/beancount.el diff --git a/tools/doom/calendar.el b/dot_config/doom/calendar.el similarity index 100% rename from tools/doom/calendar.el rename to dot_config/doom/calendar.el diff --git a/tools/doom/config.el b/dot_config/doom/config.el similarity index 100% rename from tools/doom/config.el rename to dot_config/doom/config.el diff --git a/dot_config/doom/dot_custom.el b/dot_config/doom/dot_custom.el new file mode 100644 index 0000000..418534a --- /dev/null +++ b/dot_config/doom/dot_custom.el @@ -0,0 +1,13 @@ +;;; -*- lexical-binding: t -*- +(custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(auth-source-save-behavior nil)) +(custom-set-faces + ;; custom-set-faces was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + ) diff --git a/tools/doom/.gitignore b/dot_config/doom/dot_gitignore similarity index 100% rename from tools/doom/.gitignore rename to dot_config/doom/dot_gitignore diff --git a/tools/doom/evil.el b/dot_config/doom/evil.el similarity index 100% rename from tools/doom/evil.el rename to dot_config/doom/evil.el diff --git a/tools/doom/init.el b/dot_config/doom/init.el similarity index 100% rename from tools/doom/init.el rename to dot_config/doom/init.el diff --git a/tools/doom/lisp/org-pomodoro-music-controller.el b/dot_config/doom/lisp/org-pomodoro-music-controller.el similarity index 100% rename from tools/doom/lisp/org-pomodoro-music-controller.el rename to dot_config/doom/lisp/org-pomodoro-music-controller.el diff --git a/tools/doom/lisp/org-pomodoro-telegram-notifier.el b/dot_config/doom/lisp/org-pomodoro-telegram-notifier.el similarity index 100% rename from tools/doom/lisp/org-pomodoro-telegram-notifier.el rename to dot_config/doom/lisp/org-pomodoro-telegram-notifier.el diff --git a/tools/doom/org.el b/dot_config/doom/org.el similarity index 100% rename from tools/doom/org.el rename to dot_config/doom/org.el diff --git a/tools/doom/packages.el b/dot_config/doom/packages.el similarity index 100% rename from tools/doom/packages.el rename to dot_config/doom/packages.el diff --git a/tools/doom/snippets/org-mode/align-math b/dot_config/doom/snippets/org-mode/align-math similarity index 100% rename from tools/doom/snippets/org-mode/align-math rename to dot_config/doom/snippets/org-mode/align-math diff --git a/tools/doom/snippets/org-mode/display-math b/dot_config/doom/snippets/org-mode/display-math similarity index 100% rename from tools/doom/snippets/org-mode/display-math rename to dot_config/doom/snippets/org-mode/display-math diff --git a/tools/doom/snippets/org-mode/inline-math b/dot_config/doom/snippets/org-mode/inline-math similarity index 100% rename from tools/doom/snippets/org-mode/inline-math rename to dot_config/doom/snippets/org-mode/inline-math diff --git a/tools/doom/snippets/org-mode/limit b/dot_config/doom/snippets/org-mode/limit similarity index 100% rename from tools/doom/snippets/org-mode/limit rename to dot_config/doom/snippets/org-mode/limit diff --git a/tools/doom/snippets/org-mode/summation b/dot_config/doom/snippets/org-mode/summation similarity index 100% rename from tools/doom/snippets/org-mode/summation rename to dot_config/doom/snippets/org-mode/summation diff --git a/tools/doom/snippets/org-mode/unnumbered b/dot_config/doom/snippets/org-mode/unnumbered similarity index 100% rename from tools/doom/snippets/org-mode/unnumbered rename to dot_config/doom/snippets/org-mode/unnumbered diff --git a/tools/doom/telega.el b/dot_config/doom/telega.el similarity index 100% rename from tools/doom/telega.el rename to dot_config/doom/telega.el diff --git a/tools/doom/treemacs.el b/dot_config/doom/treemacs.el similarity index 100% rename from tools/doom/treemacs.el rename to dot_config/doom/treemacs.el diff --git a/dot_config/fish/completions/.keep b/dot_config/fish/completions/.keep new file mode 100644 index 0000000..e69de29 diff --git a/tools/fish/conf.d/0init.fish b/dot_config/fish/conf.d/0init.fish similarity index 100% rename from tools/fish/conf.d/0init.fish rename to dot_config/fish/conf.d/0init.fish diff --git a/tools/fish/conf.d/alias.fish b/dot_config/fish/conf.d/alias.fish similarity index 100% rename from tools/fish/conf.d/alias.fish rename to dot_config/fish/conf.d/alias.fish diff --git a/tools/fish/conf.d/colorscheme.fish b/dot_config/fish/conf.d/colorscheme.fish similarity index 100% rename from tools/fish/conf.d/colorscheme.fish rename to dot_config/fish/conf.d/colorscheme.fish diff --git a/tools/fish/conf.d/keymap.fish b/dot_config/fish/conf.d/keymap.fish similarity index 100% rename from tools/fish/conf.d/keymap.fish rename to dot_config/fish/conf.d/keymap.fish diff --git a/tools/fish/conf.d/keymap/+colemak.fish b/dot_config/fish/conf.d/keymap/+colemak.fish similarity index 100% rename from tools/fish/conf.d/keymap/+colemak.fish rename to dot_config/fish/conf.d/keymap/+colemak.fish diff --git a/tools/fish/conf.d/navi.fish b/dot_config/fish/conf.d/navi.fish similarity index 100% rename from tools/fish/conf.d/navi.fish rename to dot_config/fish/conf.d/navi.fish diff --git a/tools/fish/conf.d/prompt.fish b/dot_config/fish/conf.d/prompt.fish similarity index 100% rename from tools/fish/conf.d/prompt.fish rename to dot_config/fish/conf.d/prompt.fish diff --git a/tools/fish/conf.d/winterop.fish b/dot_config/fish/conf.d/winterop.fish similarity index 100% rename from tools/fish/conf.d/winterop.fish rename to dot_config/fish/conf.d/winterop.fish diff --git a/tools/fish/config.fish b/dot_config/fish/config.fish similarity index 100% rename from tools/fish/config.fish rename to dot_config/fish/config.fish diff --git a/tools/fish/.gitignore b/dot_config/fish/dot_gitignore similarity index 100% rename from tools/fish/.gitignore rename to dot_config/fish/dot_gitignore diff --git a/dot_config/fish/functions/.keep b/dot_config/fish/functions/.keep new file mode 100644 index 0000000..e69de29 diff --git a/dot_config/fish/private_fish_variables b/dot_config/fish/private_fish_variables new file mode 100644 index 0000000..fcdebd7 --- /dev/null +++ b/dot_config/fish/private_fish_variables @@ -0,0 +1,39 @@ +# This file contains fish universal variable definitions. +# VERSION: 3.0 +SETUVAR __fish_initialized:3800 +SETUVAR fish_color_autosuggestion:brblack +SETUVAR fish_color_cancel:\x2dr +SETUVAR fish_color_command:normal +SETUVAR fish_color_comment:red +SETUVAR fish_color_cwd:green +SETUVAR fish_color_cwd_root:red +SETUVAR fish_color_end:green +SETUVAR fish_color_error:brred +SETUVAR fish_color_escape:brcyan +SETUVAR fish_color_history_current:\x2d\x2dbold +SETUVAR fish_color_host:normal +SETUVAR fish_color_host_remote:yellow +SETUVAR fish_color_normal:normal +SETUVAR fish_color_operator:brcyan +SETUVAR fish_color_param:cyan +SETUVAR fish_color_quote:yellow +SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold +SETUVAR fish_color_search_match:white\x1e\x2d\x2dbackground\x3dbrblack\x1e\x2d\x2dbold +SETUVAR fish_color_selection:white\x1e\x2d\x2dbackground\x3dbrblack\x1e\x2d\x2dbold +SETUVAR fish_color_status:red +SETUVAR fish_color_user:brgreen +SETUVAR fish_color_valid_path:\x2d\x2dunderline +SETUVAR fish_pager_color_background:\x1d +SETUVAR fish_pager_color_completion:normal +SETUVAR fish_pager_color_description:yellow\x1e\x2di +SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline +SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan\x1e\x2d\x2dbold +SETUVAR fish_pager_color_secondary_background:\x1d +SETUVAR fish_pager_color_secondary_completion:\x1d +SETUVAR fish_pager_color_secondary_description:\x1d +SETUVAR fish_pager_color_secondary_prefix:\x1d +SETUVAR fish_pager_color_selected_background:\x2dr +SETUVAR fish_pager_color_selected_completion:\x1d +SETUVAR fish_pager_color_selected_description:\x1d +SETUVAR fish_pager_color_selected_prefix:\x1d +SETUVAR fish_user_paths:/home/js0ny/\x2elocal/bin\x1e/home/js0ny/\x2elocal/build\x1e/usr/bin\x1e/usr/local/bin diff --git a/tools/fish/readme.md b/dot_config/fish/readme.md similarity index 100% rename from tools/fish/readme.md rename to dot_config/fish/readme.md diff --git a/tools/fish/themes/Catppuccin Latte.theme b/dot_config/fish/themes/Catppuccin Latte.theme similarity index 100% rename from tools/fish/themes/Catppuccin Latte.theme rename to dot_config/fish/themes/Catppuccin Latte.theme diff --git a/tools/fish/themes/Catppuccin Mocha.theme b/dot_config/fish/themes/Catppuccin Mocha.theme similarity index 100% rename from tools/fish/themes/Catppuccin Mocha.theme rename to dot_config/fish/themes/Catppuccin Mocha.theme diff --git a/tools/fish/themes/Rosé Pine Dawn.theme b/dot_config/fish/themes/Rosé Pine Dawn.theme similarity index 100% rename from tools/fish/themes/Rosé Pine Dawn.theme rename to dot_config/fish/themes/Rosé Pine Dawn.theme diff --git a/tools/kitty/dark-theme.auto.conf b/dot_config/kitty/dark-theme.auto.conf similarity index 100% rename from tools/kitty/dark-theme.auto.conf rename to dot_config/kitty/dark-theme.auto.conf diff --git a/tools/kitty/kitty.conf b/dot_config/kitty/kitty.conf similarity index 100% rename from tools/kitty/kitty.conf rename to dot_config/kitty/kitty.conf diff --git a/tools/kitty/light-theme.auto.conf b/dot_config/kitty/light-theme.auto.conf similarity index 100% rename from tools/kitty/light-theme.auto.conf rename to dot_config/kitty/light-theme.auto.conf diff --git a/tools/kitty/window.py b/dot_config/kitty/window.py similarity index 100% rename from tools/kitty/window.py rename to dot_config/kitty/window.py diff --git a/tools/nvim/.editorconfig b/dot_config/nvim/dot_editorconfig similarity index 100% rename from tools/nvim/.editorconfig rename to dot_config/nvim/dot_editorconfig diff --git a/tools/nvim/init.lua b/dot_config/nvim/init.lua similarity index 100% rename from tools/nvim/init.lua rename to dot_config/nvim/init.lua diff --git a/dot_config/nvim/lazy-lock.json b/dot_config/nvim/lazy-lock.json new file mode 100644 index 0000000..4d74762 --- /dev/null +++ b/dot_config/nvim/lazy-lock.json @@ -0,0 +1,53 @@ +{ + "LuaSnip": { "branch": "master", "commit": "de10d8414235b0a8cabfeba60d07c24304e71f5c" }, + "auto-session": { "branch": "main", "commit": "7d37d1cae7a39ff57da9a452d21b5dbfc5636c18" }, + "avante.nvim": { "branch": "main", "commit": "2791db9984d01674c3a507cc1a522ad7234f400a" }, + "blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" }, + "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, + "bullets.vim": { "branch": "master", "commit": "1c13e510e11d08b0259e8e627f128359c5521962" }, + "catppuccin": { "branch": "main", "commit": "30fa4d122d9b22ad8b2e0ab1b533c8c26c4dde86" }, + "conform.nvim": { "branch": "master", "commit": "a0ab60ed666c56b37fd7ed1847d2ac52f2482ce0" }, + "copilot.lua": { "branch": "master", "commit": "f0c0d981de2737abc50bd7b5bb034ae440826827" }, + "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, + "flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" }, + "fzf-lua": { "branch": "main", "commit": "7d66cd81cf485fb17c22d82021cc166ce332a14c" }, + "gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" }, + "grug-far.nvim": { "branch": "main", "commit": "385d1949dc21d0c39e7a74b4f4a25da18817bc86" }, + "image.nvim": { "branch": "master", "commit": "5cbb891eb8dde53f350dde69e23106d4e85d898b" }, + "img-clip.nvim": { "branch": "main", "commit": "d8b6b030672f9f551a0e3526347699985a779d93" }, + "kanagawa.nvim": { "branch": "master", "commit": "debe91547d7fb1eef34ce26a5106f277fbfdd109" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, + "leetcode.nvim": { "branch": "master", "commit": "422b6beb4a64eca0524fbff94edd9550c156afc5" }, + "lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" }, + "luasnip-latex-snippets.nvim": { "branch": "main", "commit": "d3dd5223ef37a99c4adf3b5c7844fc760751b397" }, + "multiple-cursors.nvim": { "branch": "main", "commit": "1ac15d047a4b265cc2389957bcc56ee561b29e02" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "cea666ef965884414b1b71f6b39a537f9238bdb2" }, + "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, + "nvim-autopairs": { "branch": "master", "commit": "23320e75953ac82e559c610bec5a90d9c6dfa743" }, + "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" }, + "nvim-dap": { "branch": "master", "commit": "968f89f8aac11b6bdbfc942c71d3436658c1435f" }, + "nvim-dap-python": { "branch": "master", "commit": "bd771691da93846b0fc7e095512146a150218bfd" }, + "nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" }, + "nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" }, + "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, + "nvim-surround": { "branch": "main", "commit": "d56752df477ebd808cb82cea2fc68cf7455abb21" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-treesitter-context": { "branch": "master", "commit": "dca8726fea2c14e1ce6adbaa76a04816fbfaff61" }, + "nvim-web-devicons": { "branch": "master", "commit": "c2599a81ecabaae07c49ff9b45dcd032a8d90f1a" }, + "obsidian.nvim": { "branch": "main", "commit": "705cc9b4f66eca1e54040ac819102e80a32896d3" }, + "org-bullets.nvim": { "branch": "main", "commit": "21437cfa99c70f2c18977bffd423f912a7b832ea" }, + "orgmode": { "branch": "master", "commit": "b924cbb7e9c5f2c34f84d92e49dc76e01f32cad9" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, + "render-markdown.nvim": { "branch": "main", "commit": "8074a9cc9a6f737320b7a0d76b2c4c3485155688" }, + "rose-pine": { "branch": "main", "commit": "72befaffeac38db7bdd49e0549eaa2c4806dd878" }, + "snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, + "toggleterm.nvim": { "branch": "main", "commit": "9a88eae817ef395952e08650b3283726786fb5fb" }, + "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, + "typst-preview.nvim": { "branch": "master", "commit": "dea4525d5420b7c32eebda7de15a6beb9d6574fa" }, + "vim-beancount": { "branch": "master", "commit": "589a4f06f3b2fd7cd2356c2ef1dafadf6b7a97cf" }, + "vim-just": { "branch": "main", "commit": "04b0f122f14c83f55a0f8bb2a087754dc98cdccc" }, + "vim-wakatime": { "branch": "master", "commit": "3403495670f0ee08887401a28f8430dc4ac67429" }, + "vimtex": { "branch": "master", "commit": "dc90feacb86f7b85b0b791d8073eefc769a23725" }, + "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } +} diff --git a/tools/nvim/lsp/bashls.lua b/dot_config/nvim/lsp/bashls.lua similarity index 100% rename from tools/nvim/lsp/bashls.lua rename to dot_config/nvim/lsp/bashls.lua diff --git a/tools/nvim/lsp/beancount.lua b/dot_config/nvim/lsp/beancount.lua similarity index 100% rename from tools/nvim/lsp/beancount.lua rename to dot_config/nvim/lsp/beancount.lua diff --git a/tools/nvim/lsp/clangd.lua b/dot_config/nvim/lsp/clangd.lua similarity index 100% rename from tools/nvim/lsp/clangd.lua rename to dot_config/nvim/lsp/clangd.lua diff --git a/tools/nvim/lsp/gopls.lua b/dot_config/nvim/lsp/gopls.lua similarity index 100% rename from tools/nvim/lsp/gopls.lua rename to dot_config/nvim/lsp/gopls.lua diff --git a/tools/nvim/lsp/jdtls.lua b/dot_config/nvim/lsp/jdtls.lua similarity index 100% rename from tools/nvim/lsp/jdtls.lua rename to dot_config/nvim/lsp/jdtls.lua diff --git a/tools/nvim/lsp/jsonls.lua b/dot_config/nvim/lsp/jsonls.lua similarity index 100% rename from tools/nvim/lsp/jsonls.lua rename to dot_config/nvim/lsp/jsonls.lua diff --git a/tools/nvim/lsp/luals.lua b/dot_config/nvim/lsp/luals.lua similarity index 100% rename from tools/nvim/lsp/luals.lua rename to dot_config/nvim/lsp/luals.lua diff --git a/tools/nvim/lsp/markdown_oxide.lua b/dot_config/nvim/lsp/markdown_oxide.lua similarity index 100% rename from tools/nvim/lsp/markdown_oxide.lua rename to dot_config/nvim/lsp/markdown_oxide.lua diff --git a/tools/nvim/lsp/pyright.lua b/dot_config/nvim/lsp/pyright.lua similarity index 100% rename from tools/nvim/lsp/pyright.lua rename to dot_config/nvim/lsp/pyright.lua diff --git a/tools/nvim/lsp/rust_analyzer.lua b/dot_config/nvim/lsp/rust_analyzer.lua similarity index 100% rename from tools/nvim/lsp/rust_analyzer.lua rename to dot_config/nvim/lsp/rust_analyzer.lua diff --git a/tools/nvim/lsp/taplo.lua b/dot_config/nvim/lsp/taplo.lua similarity index 100% rename from tools/nvim/lsp/taplo.lua rename to dot_config/nvim/lsp/taplo.lua diff --git a/tools/nvim/lsp/vimls.lua b/dot_config/nvim/lsp/vimls.lua similarity index 100% rename from tools/nvim/lsp/vimls.lua rename to dot_config/nvim/lsp/vimls.lua diff --git a/tools/nvim/lsp/yamlls.lua b/dot_config/nvim/lsp/yamlls.lua similarity index 100% rename from tools/nvim/lsp/yamlls.lua rename to dot_config/nvim/lsp/yamlls.lua diff --git a/tools/nvim/lua/config/colors.lua b/dot_config/nvim/lua/config/colors.lua similarity index 100% rename from tools/nvim/lua/config/colors.lua rename to dot_config/nvim/lua/config/colors.lua diff --git a/tools/nvim/lua/config/colorscheme.lua b/dot_config/nvim/lua/config/colorscheme.lua similarity index 100% rename from tools/nvim/lua/config/colorscheme.lua rename to dot_config/nvim/lua/config/colorscheme.lua diff --git a/tools/nvim/lua/config/diagnostics.lua b/dot_config/nvim/lua/config/diagnostics.lua similarity index 100% rename from tools/nvim/lua/config/diagnostics.lua rename to dot_config/nvim/lua/config/diagnostics.lua diff --git a/tools/nvim/lua/config/icons.lua b/dot_config/nvim/lua/config/icons.lua similarity index 100% rename from tools/nvim/lua/config/icons.lua rename to dot_config/nvim/lua/config/icons.lua diff --git a/tools/nvim/lua/config/keymaps.lua b/dot_config/nvim/lua/config/keymaps.lua similarity index 100% rename from tools/nvim/lua/config/keymaps.lua rename to dot_config/nvim/lua/config/keymaps.lua diff --git a/tools/nvim/lua/config/migration.lua b/dot_config/nvim/lua/config/migration.lua similarity index 100% rename from tools/nvim/lua/config/migration.lua rename to dot_config/nvim/lua/config/migration.lua diff --git a/tools/nvim/lua/config/options.lua b/dot_config/nvim/lua/config/options.lua similarity index 100% rename from tools/nvim/lua/config/options.lua rename to dot_config/nvim/lua/config/options.lua diff --git a/tools/nvim/lua/config/plugins.lua b/dot_config/nvim/lua/config/plugins.lua similarity index 100% rename from tools/nvim/lua/config/plugins.lua rename to dot_config/nvim/lua/config/plugins.lua diff --git a/tools/nvim/lua/config/servers.lua b/dot_config/nvim/lua/config/servers.lua similarity index 100% rename from tools/nvim/lua/config/servers.lua rename to dot_config/nvim/lua/config/servers.lua diff --git a/tools/nvim/lua/config/vscode.lua b/dot_config/nvim/lua/config/vscode.lua similarity index 100% rename from tools/nvim/lua/config/vscode.lua rename to dot_config/nvim/lua/config/vscode.lua diff --git a/tools/nvim/lua/keymaps/basic.lua b/dot_config/nvim/lua/keymaps/basic.lua similarity index 100% rename from tools/nvim/lua/keymaps/basic.lua rename to dot_config/nvim/lua/keymaps/basic.lua diff --git a/tools/nvim/lua/keymaps/buffer.lua b/dot_config/nvim/lua/keymaps/buffer.lua similarity index 100% rename from tools/nvim/lua/keymaps/buffer.lua rename to dot_config/nvim/lua/keymaps/buffer.lua diff --git a/tools/nvim/lua/keymaps/init.lua b/dot_config/nvim/lua/keymaps/init.lua similarity index 100% rename from tools/nvim/lua/keymaps/init.lua rename to dot_config/nvim/lua/keymaps/init.lua diff --git a/tools/nvim/lua/keymaps/language.lua b/dot_config/nvim/lua/keymaps/language.lua similarity index 100% rename from tools/nvim/lua/keymaps/language.lua rename to dot_config/nvim/lua/keymaps/language.lua diff --git a/tools/nvim/lua/keymaps/leaders.bak b/dot_config/nvim/lua/keymaps/leaders.bak similarity index 100% rename from tools/nvim/lua/keymaps/leaders.bak rename to dot_config/nvim/lua/keymaps/leaders.bak diff --git a/tools/nvim/lua/keymaps/leaders.lua b/dot_config/nvim/lua/keymaps/leaders.lua similarity index 100% rename from tools/nvim/lua/keymaps/leaders.lua rename to dot_config/nvim/lua/keymaps/leaders.lua diff --git a/tools/nvim/lua/keymaps/lspkeys.lua b/dot_config/nvim/lua/keymaps/lspkeys.lua similarity index 100% rename from tools/nvim/lua/keymaps/lspkeys.lua rename to dot_config/nvim/lua/keymaps/lspkeys.lua diff --git a/tools/nvim/lua/keymaps/modifier.lua b/dot_config/nvim/lua/keymaps/modifier.lua similarity index 100% rename from tools/nvim/lua/keymaps/modifier.lua rename to dot_config/nvim/lua/keymaps/modifier.lua diff --git a/tools/nvim/lua/keymaps/nvim-tree.lua b/dot_config/nvim/lua/keymaps/nvim-tree.lua similarity index 100% rename from tools/nvim/lua/keymaps/nvim-tree.lua rename to dot_config/nvim/lua/keymaps/nvim-tree.lua diff --git a/tools/nvim/lua/keymaps/user-command.lua b/dot_config/nvim/lua/keymaps/user-command.lua similarity index 100% rename from tools/nvim/lua/keymaps/user-command.lua rename to dot_config/nvim/lua/keymaps/user-command.lua diff --git a/tools/nvim/lua/keymaps/utils.lua b/dot_config/nvim/lua/keymaps/utils.lua similarity index 100% rename from tools/nvim/lua/keymaps/utils.lua rename to dot_config/nvim/lua/keymaps/utils.lua diff --git a/tools/nvim/lua/keymaps/visual-multi.lua b/dot_config/nvim/lua/keymaps/visual-multi.lua similarity index 100% rename from tools/nvim/lua/keymaps/visual-multi.lua rename to dot_config/nvim/lua/keymaps/visual-multi.lua diff --git a/tools/nvim/lua/keymaps/which.lua b/dot_config/nvim/lua/keymaps/which.lua similarity index 100% rename from tools/nvim/lua/keymaps/which.lua rename to dot_config/nvim/lua/keymaps/which.lua diff --git a/tools/nvim/lua/plugins/appearance.lua b/dot_config/nvim/lua/plugins/appearance.lua similarity index 100% rename from tools/nvim/lua/plugins/appearance.lua rename to dot_config/nvim/lua/plugins/appearance.lua diff --git a/tools/nvim/lua/plugins/completion.lua b/dot_config/nvim/lua/plugins/completion.lua similarity index 100% rename from tools/nvim/lua/plugins/completion.lua rename to dot_config/nvim/lua/plugins/completion.lua diff --git a/tools/nvim/lua/plugins/dap.lua b/dot_config/nvim/lua/plugins/dap.lua similarity index 100% rename from tools/nvim/lua/plugins/dap.lua rename to dot_config/nvim/lua/plugins/dap.lua diff --git a/tools/nvim/lua/plugins/edit.lua b/dot_config/nvim/lua/plugins/edit.lua similarity index 100% rename from tools/nvim/lua/plugins/edit.lua rename to dot_config/nvim/lua/plugins/edit.lua diff --git a/tools/nvim/lua/plugins/fileutils.lua b/dot_config/nvim/lua/plugins/fileutils.lua similarity index 100% rename from tools/nvim/lua/plugins/fileutils.lua rename to dot_config/nvim/lua/plugins/fileutils.lua diff --git a/tools/nvim/lua/plugins/init.lua b/dot_config/nvim/lua/plugins/init.lua similarity index 100% rename from tools/nvim/lua/plugins/init.lua rename to dot_config/nvim/lua/plugins/init.lua diff --git a/tools/nvim/lua/plugins/lang/beancount.lua b/dot_config/nvim/lua/plugins/lang/beancount.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/beancount.lua rename to dot_config/nvim/lua/plugins/lang/beancount.lua diff --git a/tools/nvim/lua/plugins/lang/init.lua b/dot_config/nvim/lua/plugins/lang/init.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/init.lua rename to dot_config/nvim/lua/plugins/lang/init.lua diff --git a/tools/nvim/lua/plugins/lang/just.lua b/dot_config/nvim/lua/plugins/lang/just.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/just.lua rename to dot_config/nvim/lua/plugins/lang/just.lua diff --git a/tools/nvim/lua/plugins/lang/lua.lua b/dot_config/nvim/lua/plugins/lang/lua.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/lua.lua rename to dot_config/nvim/lua/plugins/lang/lua.lua diff --git a/tools/nvim/lua/plugins/lang/markdown/init.lua b/dot_config/nvim/lua/plugins/lang/markdown/init.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/markdown/init.lua rename to dot_config/nvim/lua/plugins/lang/markdown/init.lua diff --git a/tools/nvim/lua/plugins/lang/markdown/markview.lua.bak b/dot_config/nvim/lua/plugins/lang/markdown/markview.lua.bak similarity index 100% rename from tools/nvim/lua/plugins/lang/markdown/markview.lua.bak rename to dot_config/nvim/lua/plugins/lang/markdown/markview.lua.bak diff --git a/tools/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua b/dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua rename to dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua diff --git a/tools/nvim/lua/plugins/lang/markdown/render-markdown.lua b/dot_config/nvim/lua/plugins/lang/markdown/render-markdown.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/markdown/render-markdown.lua rename to dot_config/nvim/lua/plugins/lang/markdown/render-markdown.lua diff --git a/tools/nvim/lua/plugins/lang/org.lua b/dot_config/nvim/lua/plugins/lang/org.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/org.lua rename to dot_config/nvim/lua/plugins/lang/org.lua diff --git a/tools/nvim/lua/plugins/lang/tex.lua b/dot_config/nvim/lua/plugins/lang/tex.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/tex.lua rename to dot_config/nvim/lua/plugins/lang/tex.lua diff --git a/tools/nvim/lua/plugins/lang/treesitter.lua b/dot_config/nvim/lua/plugins/lang/treesitter.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/treesitter.lua rename to dot_config/nvim/lua/plugins/lang/treesitter.lua diff --git a/tools/nvim/lua/plugins/lang/typst.lua b/dot_config/nvim/lua/plugins/lang/typst.lua similarity index 100% rename from tools/nvim/lua/plugins/lang/typst.lua rename to dot_config/nvim/lua/plugins/lang/typst.lua diff --git a/tools/nvim/lua/plugins/lazy-nvim.lua b/dot_config/nvim/lua/plugins/lazy-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/lazy-nvim.lua rename to dot_config/nvim/lua/plugins/lazy-nvim.lua diff --git a/tools/nvim/lua/plugins/misc.lua b/dot_config/nvim/lua/plugins/misc.lua similarity index 100% rename from tools/nvim/lua/plugins/misc.lua rename to dot_config/nvim/lua/plugins/misc.lua diff --git a/tools/nvim/lua/plugins/mod/alpha-nvim.lua b/dot_config/nvim/lua/plugins/mod/alpha-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/alpha-nvim.lua rename to dot_config/nvim/lua/plugins/mod/alpha-nvim.lua diff --git a/tools/nvim/lua/plugins/mod/autopairs.lua b/dot_config/nvim/lua/plugins/mod/autopairs.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/autopairs.lua rename to dot_config/nvim/lua/plugins/mod/autopairs.lua diff --git a/tools/nvim/lua/plugins/mod/avante-nvim.lua b/dot_config/nvim/lua/plugins/mod/avante-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/avante-nvim.lua rename to dot_config/nvim/lua/plugins/mod/avante-nvim.lua diff --git a/tools/nvim/lua/plugins/mod/blink-cmp.lua b/dot_config/nvim/lua/plugins/mod/blink-cmp.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/blink-cmp.lua rename to dot_config/nvim/lua/plugins/mod/blink-cmp.lua diff --git a/tools/nvim/lua/plugins/mod/bufferline.lua b/dot_config/nvim/lua/plugins/mod/bufferline.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/bufferline.lua rename to dot_config/nvim/lua/plugins/mod/bufferline.lua diff --git a/tools/nvim/lua/plugins/mod/conform-nvim.lua b/dot_config/nvim/lua/plugins/mod/conform-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/conform-nvim.lua rename to dot_config/nvim/lua/plugins/mod/conform-nvim.lua diff --git a/tools/nvim/lua/plugins/mod/copilot-lua.lua b/dot_config/nvim/lua/plugins/mod/copilot-lua.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/copilot-lua.lua rename to dot_config/nvim/lua/plugins/mod/copilot-lua.lua diff --git a/tools/nvim/lua/plugins/mod/fzf.lua b/dot_config/nvim/lua/plugins/mod/fzf.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/fzf.lua rename to dot_config/nvim/lua/plugins/mod/fzf.lua diff --git a/tools/nvim/lua/plugins/mod/hover-nvim.lua b/dot_config/nvim/lua/plugins/mod/hover-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/hover-nvim.lua rename to dot_config/nvim/lua/plugins/mod/hover-nvim.lua diff --git a/tools/nvim/lua/plugins/mod/image-nvim.lua b/dot_config/nvim/lua/plugins/mod/image-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/image-nvim.lua rename to dot_config/nvim/lua/plugins/mod/image-nvim.lua diff --git a/tools/nvim/lua/plugins/mod/img-clip.lua b/dot_config/nvim/lua/plugins/mod/img-clip.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/img-clip.lua rename to dot_config/nvim/lua/plugins/mod/img-clip.lua diff --git a/tools/nvim/lua/plugins/mod/lualine/components.lua b/dot_config/nvim/lua/plugins/mod/lualine/components.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/lualine/components.lua rename to dot_config/nvim/lua/plugins/mod/lualine/components.lua diff --git a/tools/nvim/lua/plugins/mod/lualine/init.lua b/dot_config/nvim/lua/plugins/mod/lualine/init.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/lualine/init.lua rename to dot_config/nvim/lua/plugins/mod/lualine/init.lua diff --git a/tools/nvim/lua/plugins/mod/mc.lua b/dot_config/nvim/lua/plugins/mod/mc.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/mc.lua rename to dot_config/nvim/lua/plugins/mod/mc.lua diff --git a/tools/nvim/lua/plugins/mod/neo-tree.lua b/dot_config/nvim/lua/plugins/mod/neo-tree.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/neo-tree.lua rename to dot_config/nvim/lua/plugins/mod/neo-tree.lua diff --git a/tools/nvim/lua/plugins/mod/nvim-cmp.lua b/dot_config/nvim/lua/plugins/mod/nvim-cmp.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/nvim-cmp.lua rename to dot_config/nvim/lua/plugins/mod/nvim-cmp.lua diff --git a/tools/nvim/lua/plugins/mod/nvim-lspconfig.lua b/dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/nvim-lspconfig.lua rename to dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua diff --git a/tools/nvim/lua/plugins/mod/nvim-tree.lua b/dot_config/nvim/lua/plugins/mod/nvim-tree.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/nvim-tree.lua rename to dot_config/nvim/lua/plugins/mod/nvim-tree.lua diff --git a/tools/nvim/lua/plugins/mod/snacks-nvim.lua b/dot_config/nvim/lua/plugins/mod/snacks-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/snacks-nvim.lua rename to dot_config/nvim/lua/plugins/mod/snacks-nvim.lua diff --git a/tools/nvim/lua/plugins/mod/telescope.lua b/dot_config/nvim/lua/plugins/mod/telescope.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/telescope.lua rename to dot_config/nvim/lua/plugins/mod/telescope.lua diff --git a/tools/nvim/lua/plugins/mod/toggleterm.lua b/dot_config/nvim/lua/plugins/mod/toggleterm.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/toggleterm.lua rename to dot_config/nvim/lua/plugins/mod/toggleterm.lua diff --git a/tools/nvim/lua/plugins/mod/trouble-nvim.lua b/dot_config/nvim/lua/plugins/mod/trouble-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/trouble-nvim.lua rename to dot_config/nvim/lua/plugins/mod/trouble-nvim.lua diff --git a/tools/nvim/lua/plugins/mod/which-keys-nvim.lua b/dot_config/nvim/lua/plugins/mod/which-keys-nvim.lua similarity index 100% rename from tools/nvim/lua/plugins/mod/which-keys-nvim.lua rename to dot_config/nvim/lua/plugins/mod/which-keys-nvim.lua diff --git a/tools/nvim/readme.md b/dot_config/nvim/readme.md similarity index 100% rename from tools/nvim/readme.md rename to dot_config/nvim/readme.md diff --git a/tools/nvim/stylua.toml b/dot_config/nvim/stylua.toml similarity index 100% rename from tools/nvim/stylua.toml rename to dot_config/nvim/stylua.toml diff --git a/common/rtorrent.rc b/dot_config/rtorrent/rtorrent.rc similarity index 100% rename from common/rtorrent.rc rename to dot_config/rtorrent/rtorrent.rc diff --git a/tools/tmux/+colemak.tmux b/dot_config/tmux/+colemak.tmux similarity index 100% rename from tools/tmux/+colemak.tmux rename to dot_config/tmux/+colemak.tmux diff --git a/tools/tmux/+qwerty.tmux b/dot_config/tmux/+qwerty.tmux similarity index 100% rename from tools/tmux/+qwerty.tmux rename to dot_config/tmux/+qwerty.tmux diff --git a/tools/tmux/tmux.conf b/dot_config/tmux/tmux.conf similarity index 100% rename from tools/tmux/tmux.conf rename to dot_config/tmux/tmux.conf diff --git a/tools/emacs.d/.gitignore b/tools/emacs.d/.gitignore deleted file mode 100644 index 62c7ec6..0000000 --- a/tools/emacs.d/.gitignore +++ /dev/null @@ -1,30 +0,0 @@ -# 自动生成的目录 -/auto-save-list/ -/elpa/ -/eshell/ -/server/ -/url/ -transient/ - -# 临时文件 -tutorial -*~ -\#*\# -.#* -*.elc - -# 自动保存的文件 -auto-save-list -tramp - -recentf -custom.el -.custom.el - -.org-id-locations -bookmarks -.cache -eln-cache -org-persist - -local.el diff --git a/tools/emacs.d/early-init.el b/tools/emacs.d/early-init.el deleted file mode 100644 index 512068a..0000000 --- a/tools/emacs.d/early-init.el +++ /dev/null @@ -1 +0,0 @@ -(setq package-enable-at-startup nil) diff --git a/tools/emacs.d/init.el b/tools/emacs.d/init.el deleted file mode 100644 index 14c0f56..0000000 --- a/tools/emacs.d/init.el +++ /dev/null @@ -1,65 +0,0 @@ -;;; init.el --- Entry point of GNU/Emacs configuration -;;; First edit date 2025/01/27 - -;;; Organised by such directory structure -;;; init.el -- This file, entry point -;;; lisp/ -;;; init-*.el -;;; custom.el -- Auto Generated -;;; local.el -- Local variables - -;; All elisp files under emacs.d/lisp will be loaded -(add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory)) - -;; Store the auto-generated custom config to `custom.el` -(setq custom-file (expand-file-name ".custom.el" user-emacs-directory)) - - -(defvar xdg-data-home - (or (getenv "XDG_DATA_HOME") - (expand-file-name "~/.local/share"))) - -(defvar xdg-cache-home - (or (getenv "XDG_CACHE_HOME") - (expand-file-name "~/.cache"))) - -(defvar xdg-state-home - (or (getenv "XDG_STATE_HOME") - (expand-file-name "~/.local/state/"))) - -(defvar user-emacs-data (expand-file-name "emacs" xdg-data-home)) -(defvar user-emacs-cache (expand-file-name "emacs" xdg-cache-home)) -(defvar user-emacs-state (expand-file-name "emacs" xdg-state-home)) - -;; Load each modules -(require 'init-package) ; package manager should be loaded first -(require 'init-basic) -(require 'init-appearance) -(require 'init-wayland) -(require 'init-keymaps) -(require 'init-evil) -(require 'init-counsel) -(require 'init-file) -(require 'init-edit) -(require 'init-calendar) -(require 'init-writer) -(require 'init-org) -(require 'init-markdown) -(require 'init-latex) -(require 'init-beancount) -(require 'init-treesitter) -(require 'init-scratch) -(require 'init-ai) - - -;; Load `custom` file -(when (file-exists-p custom-file) - (load custom-file)) - - -(when (file-exists-p (expand-file-name "local.el" user-emacs-directory)) - (load (expand-file-name "local.el" user-emacs-directory))) - - - -;;; init.el end diff --git a/tools/emacs.d/lisp/init-ai.el b/tools/emacs.d/lisp/init-ai.el deleted file mode 100644 index 2945fc6..0000000 --- a/tools/emacs.d/lisp/init-ai.el +++ /dev/null @@ -1,14 +0,0 @@ - -;; (use-package copilot -;; :vc (:url "https://github.com/copilot-emacs/copilot.el" -;; :rev :newest -;; :branch "main") -;; :hook (prog-mode . copilot-mode) -;; :config -;; (define-key copilot-completion-map (kbd "") 'copilot-accept-completion) -;; (define-key copilot-completion-map (kbd "TAB") 'copilot-accept-completion)) - - -(provide 'init-ai) - -;;; init-ai.el ends here diff --git a/tools/emacs.d/lisp/init-appearance.el b/tools/emacs.d/lisp/init-appearance.el deleted file mode 100644 index 85a620e..0000000 --- a/tools/emacs.d/lisp/init-appearance.el +++ /dev/null @@ -1,110 +0,0 @@ -;;; init-appearance.el - -;; Always set frame font -;; If don't set this, `emacs --daemon' will not set the font -;; for new graphical frames. -(add-to-list 'default-frame-alist '(font . "Maple Mono NF CN")) - -;; Set CJK Display Font -(dolist (charset '(kana han cjk-misc bopomofo)) - (set-fontset-font t charset (font-spec :family "Maple Mono NF CN"))) - - -;; Variable Pitch Font -;; Used in `variable-pitch-mode' -(set-face-attribute 'variable-pitch nil - :family "LXGW WenKai Screen" - :height 140 - :weight 'regular) - - -;; Icon Support -;; Once installed, Manually install the fonts required: -;; M-x all-the-icons-install-fonts -;; If under Microsoft Windows, the Installation Directory should be chosen -;; and right-click them to install the fonts -(use-package all-the-icons - :if (display-graphic-p)) - - -(defun js0ny/get-system-theme () - " Get the current system theme. Returns 'light' or 'dark'." - ;; Default - (let ((background 'dark)) - (if (string= system-type "darwin") - (progn - ;; Check if 'defaults' command is available - (when (executable-find "defaults") - ;; Check if the system is in dark mode - (let ((apple-interface-style - (shell-command-to-string "defaults read -g AppleInterfaceStyle"))) - (when (string-match-p "Light" apple-interface-style) - (setq background 'light))))) - ;; Using systemd to check the current theme - (when (executable-find "busctl") - (let ((result - (shell-command-to-string - (concat "busctl --user call org.freedesktop.portal.Desktop " - "/org/freedesktop/portal/desktop " - "org.freedesktop.portal.Settings ReadOne ss " - "org.freedesktop.appearance color-scheme")))) - ;; 结果格式为浅色模式是 "v u 0",暗色模式是 "v u 1" - ;; v u 0 -> light, v u 1 -> dark - (when (string-match "u\\s+\\([0-9]\\)" result) - (let ((color-scheme (match-string 1 result))) - (when (string= color-scheme "0") - (setq background 'light))))))) - background)) - -(use-package catppuccin-theme - :custom - (catppuccin-flavor 'mocha) - :config - (if (string-equal (js0ny/get-system-theme) "light") - (setq catppuccin-flavor 'latte) - (setq catppuccin-flavor 'mocha)) - (load-theme 'catppuccin t)) - - - -;; (use-package doom-themes -;; :ensure t -;; :config -;; ;; Global settings (defaults) -;; :custom -;; (doom-themes-enable-bold t) ; if nil, bold is universally disabled -;; (doom-themes-enable-italic t) ; if nil, italics is universally disabled -;; ; (doom-themes-treemacs-theme "doom-nord-aurora") ; use "doom-colors" for less minimal icon theme -;; :config -;; (load-theme 'doom-nord-aurora t) - -;; ;; Enable flashing mode-line on errors -;; (doom-themes-visual-bell-config) - -;; ;; Enable custom neotree theme (nerd-icons must be installed!) -;; ;; (doom-themes-neotree-config) - -;; ;; or for treemacs users -;; (doom-themes-treemacs-config) -;; ;; Corrects (and improves) org-mode's native fontification. -;; (doom-themes-org-config)) - - -;; Better mode line, see (L11) for Icon install -;; M-x nerd-icons-install-fonts -(use-package doom-modeline - :ensure t - :init (doom-modeline-mode 1)) - -(global-tab-line-mode) ; bufferline - -(use-package highlight-indent-guides - :hook ((prog-mode yaml-mode org-mode) . highlight-indent-guides-mode) - :init - (setq highlight-indent-guides-method 'column) - (setq highlight-indent-guides-responsive 'top) - (setq highlight-indent-guides-auto-character-face-perc 1)) - - - -(provide 'init-appearance) diff --git a/tools/emacs.d/lisp/init-basic.el b/tools/emacs.d/lisp/init-basic.el deleted file mode 100644 index ef4e93c..0000000 --- a/tools/emacs.d/lisp/init-basic.el +++ /dev/null @@ -1,81 +0,0 @@ -;;; init-basic.el - -;; Disable startup message -(setq inhibit-startup-message t) - -;; Use line number by default -(global-display-line-numbers-mode 1) -;; Vim-like relativenumber -;; fix: work for folded region (visual relative line instead of physical) -(use-package display-line-numbers - :custom - (display-line-numbers-type 'visual) - (display-line-numbers-current-absolute t) - :hook - (prog-mode . display-line-numbers-mode)) - -(when (eq system-type 'darwin) - (setq mac-option-modifier 'meta) - (setq mac-command-modifier 'super)) - - -;; https://book.emacs-china.org/#orgcfd105e Open with Emacs -;; (server-mode 1) - -(setq use-short-answers t) - -(require 'recentf) -(setq recentf-save-file (expand-file-name "recentf" user-emacs-data)) -(recentf-mode 1) - -;; Disable topbars -(tool-bar-mode -1) -(scroll-bar-mode -1) -(menu-bar-mode -1) - -(use-package alert - :commands (alert) - :config - (setq alert-default-style 'libnotify)) - -;; 设置 Emacs 备份和自动保存目录 -(defvar user-backup-directory (expand-file-name "backups" user-emacs-data)) -(defvar user-autosaves-directory (expand-file-name "autosaves" user-emacs-cache)) - -;; 创建目录(如果不存在) -(dolist (dir (list user-backup-directory user-autosaves-directory)) - (unless (file-exists-p dir) - (make-directory dir t) - (message "Creating directory: %s" dir))) - -;; 配置备份文件目录 -(setq backup-directory-alist `(("." . ,user-backup-directory))) - -(setq project-list-file (expand-file-name "projects-list" user-emacs-data)) - -;; 配置自动保存文件目录 -(setq auto-save-file-name-transforms - `((".*" ,user-autosaves-directory t))) - -;; 配置自动保存列表文件前缀 -(setq auto-save-list-file-prefix - (expand-file-name "auto-save-list/.saves-" user-autosaves-directory)) - -;; TRAMP 远程文件的备份设置 -(setq tramp-backup-directory-alist (copy-tree backup-directory-alist)) -(setq tramp-persistency-file-name (expand-file-name "tramp" user-emacs-state)) - - -;; 备份设置(可选) -(setq backup-by-copying t ; 使用复制而非重命名 - delete-old-versions t ; 自动删除旧版本 - kept-new-versions 6 ; 保留的新版本数量 - kept-old-versions 2 ; 保留的旧版本数量 - version-control t) ; 使用版本号 - -(setq transient-history-file (expand-file-name "transient/history.el" user-emacs-data)) -(setq transient-values-file (expand-file-name "transient/values.el" user-emacs-data)) -(setq transient-levels-file (expand-file-name "transient/levels.el" user-emacs-data)) - -;; Export module -(provide 'init-basic) diff --git a/tools/emacs.d/lisp/init-beancount.el b/tools/emacs.d/lisp/init-beancount.el deleted file mode 100644 index 33cee8a..0000000 --- a/tools/emacs.d/lisp/init-beancount.el +++ /dev/null @@ -1,39 +0,0 @@ -;; (straight-use-package -;; '(beancount -;; :host github -;; :repo "beancount/beancount-mode" -;; :files ("*.el"))) - -(use-package beancount - :mode (("\\.beancount\\'" . beancount-mode) - ("\\.bean\\'" . beancount-mode)) - :init - (add-hook 'beancount-mode-hook #'outline-minor-mode) - (define-key beancount-mode-map (kbd "C-c C-n") #'outline-next-visible-heading) - (define-key beancount-mode-map (kbd "C-c C-p") #'outline-previous-visible-heading) - - (defvar beancount-accounts-files nil "List of account files.") - (setq beancount-accounts-files - (directory-files "~/Dropbox/beancount/accounts/" 'full (rx ".beancount" eos))) - - (defun w/beancount--collect-accounts-from-files (oldfun regex n) - "Collect all accounts from files." - (let ((keys (funcall oldfun regex n)) - (hash (make-hash-table :test 'equal))) - (dolist (key keys) - (puthash key nil hash)) - ;; collect accounts from files - (save-excursion - (dolist (f beancount-accounts-files) - (with-current-buffer (find-file-noselect f) - (goto-char (point-min)) - (while (re-search-forward beancount-account-regexp nil t) - (puthash (match-string-no-properties n) nil hash))))) - (hash-table-keys hash))) - - (advice-add #'beancount-collect - :around #'w/beancount--collect-accounts-from-files - '((name . "collect accounts from files as well")))) - - -(provide 'init-beancount) diff --git a/tools/emacs.d/lisp/init-calendar.el b/tools/emacs.d/lisp/init-calendar.el deleted file mode 100644 index f3ac6bd..0000000 --- a/tools/emacs.d/lisp/init-calendar.el +++ /dev/null @@ -1,99 +0,0 @@ -;;; init-calendar.el - -(setq calendar-date-style 'iso) -(setq diary-date-forms '((year "年" month "月" day "日" " 星期[" "日一二三四五六" "]") ;; Chinese - (year "-" month "-" day) ;; ISO - (month "[-/]" day "[^-/0-9]") (year "[-/]" month "[-/]" day "[^0-9]") - (monthname " *" day "[^-0-9]") (year " *" monthname " *" day "[^0-9]") - (dayname "\\W"))) - -(setq calendar-mark-holidays-flag t - calendar-week-start-day 1) - - -(use-package cal-china-x - :ensure t - :custom - (cal-china-x-important-holidays '((holiday-chinese-new-year) - (holiday-lunar 12 23 "小年(北)" 1) - (holiday-lunar 12 24 "小年(南)" 1) - (holiday-lunar 12 30 "除夕" 1) - (holiday-lunar 1 1 "春节" 0) - (holiday-lunar 1 2 "春节" 0) - (holiday-lunar 1 3 "春节" 0) - (holiday-lunar 1 4 "春节" 0) - (holiday-lunar 1 5 "春节(破五)" 0) - (holiday-lunar 1 15 "元宵节" 0) - (holiday-lunar 2 2 "龙抬头" 0) - (holiday-solar-term "清明" "清明节") - (holiday-fixed 5 1 "劳动节") - (holiday-lunar 5 5 "端午节" 0) - (holiday-lunar 7 7 "七夕节" 0) - (holiday-lunar 7 15 "中元节" 0) - (holiday-lunar 8 15 "中秋节" 0) - (holiday-fixed 10 1 "国庆节") - (holiday-fixed 10 2 "国庆节") - (holiday-fixed 10 3 "国庆节") - (holiday-lunar 9 9 "重阳节" 0) - (holiday-lunar 10 1 "寒衣节" 0) - (holiday-lunar 12 8 "腊八" 1) - (holiday-solar-term "立春" "立春") - (holiday-solar-term "立夏" "立夏") - (holiday-solar-term "立秋" "立秋") - (holiday-solar-term "立冬" "立冬") - (holiday-solar-term "春分" "春分") - (holiday-solar-term "夏至" "夏至") - (holiday-solar-term "秋分" "秋分") - (holiday-solar-term "冬至" "冬至"))) - (cal-china-x-general-holidays '((holiday-fixed 1 1 "元旦") - (holiday-fixed 2 14 "情人节") - (holiday-fixed 3 8 "妇女节") - (holiday-fixed 4 1 "愚人节") - (holiday-fixed 5 4 "青年节") - (holiday-float 5 0 2 "母亲节") - (holiday-fixed 6 1 "儿童节") - (holiday-float 6 0 3 "父亲节") - (holiday-fixed 9 10 "教师节") - (holiday-float 11 4 4 "感恩节") - (holiday-fixed 12 25 "圣诞节"))) - :config - (setq calendar-holidays (append cal-china-x-important-holidays - cal-china-x-general-holidays))) - -;; https://github.com/AbstProcDo/Master-Emacs-From-Scratch-with-Solid-Procedures/blob/master/06.Emacs-as-Agenda-by-Org.org -;;Sunrise and Sunset -;;日出而作, 日落而息 -(defun js0ny/diary-sunrise () - (let ((dss (diary-sunrise-sunset))) - (with-temp-buffer - (insert dss) - (goto-char (point-min)) - (while (re-search-forward " ([^)]*)" nil t) - (replace-match "" nil nil)) - (goto-char (point-min)) - (search-forward ",") - (buffer-substring (point-min) (match-beginning 0))))) - -(defun js0ny/diary-sunset () - (let ((dss (diary-sunrise-sunset)) - start end) - (with-temp-buffer - (insert dss) - (goto-char (point-min)) - (while (re-search-forward " ([^)]*)" nil t) - (replace-match "" nil nil)) - (goto-char (point-min)) - (search-forward ", ") - (setq start (match-end 0)) - (search-forward " at") - (setq end (match-beginning 0)) - (goto-char start) - (capitalize-word 1) - (buffer-substring start end)))) - - - -(setq diary-file "~/.local/js0ny/diary") - - -(provide 'init-calendar) diff --git a/tools/emacs.d/lisp/init-counsel.el b/tools/emacs.d/lisp/init-counsel.el deleted file mode 100644 index cf0fe3e..0000000 --- a/tools/emacs.d/lisp/init-counsel.el +++ /dev/null @@ -1,31 +0,0 @@ -;;; init-counsel.el -(defun js0ny/open-config-directory () - "Open `user-emacs-directory` using `counsel-find-file`." - (interactive) - (let ((default-directory user-emacs-directory)) - (counsel-file-jump))) - - -(use-package counsel - :demand t - :init - (counsel-mode 1) - :config - (global-set-key (kbd "C-x C-f") #'counsel-find-file) - (global-set-key (kbd "M-x") #'counsel-M-x) - (evil-leader/set-key - "SPC" #'counsel-file-jump - "/" #'counsel-rg - ";" #'counsel-M-x - "fc" #'js0ny/open-config-directory - "fh" #'counsel-recentf)) - -;; Replace `cd' with `counsel-cd' -(defun cd () - "Change currend default directory" - (interactive) - (counsel-cd)) - -(provide 'init-counsel) - -;;; init-counsel.el ends diff --git a/tools/emacs.d/lisp/init-edit.el b/tools/emacs.d/lisp/init-edit.el deleted file mode 100644 index c5e8191..0000000 --- a/tools/emacs.d/lisp/init-edit.el +++ /dev/null @@ -1,102 +0,0 @@ -;;; init-edit.el - -;; Use UTF-8 & LF -(setq-default buffer-file-coding-system 'utf-8-unix) - -;; Auto input pairred brackets -(electric-pair-mode 1) - -;; Enable Folding -(add-hook 'prog-mode-hook #'hs-minor-mode) - -;; Company - Complete Anything -(use-package company - :ensure t - :hook (after-init . global-company-mode) ; 在启动后自动启用 global-company-mode - :bind (:map company-active-map - ("C-n" . company-select-next) - ("C-p" . company-select-previous)) - :custom - (company-minimum-prefix-length 1) ; 设置最短补全前缀 - (company-idle-delay 0.2)) ; 设置补全延迟(秒) - -;; minibuffer 补全增强 -(use-package vertico - :init - (vertico-mode)) - -;; 提供补全注解 -(use-package marginalia - :init - (marginalia-mode)) - - -;; (set-language-environment "UTF-8") -(set-default-coding-systems 'utf-8) -;; (prefer-coding-system 'utf-8) - -;;; 设置语言环境为 UTF-8 -; -;;; 强制使用 UTF-8 -;(set-terminal-coding-system 'utf-8) -;(set-keyboard-coding-system 'utf-8) -; -;;; Windows 系统特殊设置 -;(when (eq system-type 'windows-nt) -; (set-file-name-coding-system 'gbk) ;; 文件名使用 GBK -; (set-clipboard-coding-system 'utf-16le)) ;; 剪贴板使用 UTF-16LE -; -;(setq-default buffer-file-coding-system 'utf-8-unix) -; -;;; 设置行尾为 Unix 风格 -;(add-hook 'find-file-hook 'find-file-check-line-endings) -; -;(defun dos-file-endings-p () -; (string-match "dos" (symbol-name buffer-file-coding-system))) -; -;(defun find-file-check-line-endings () -; (when (dos-file-endings-p) -; (set-buffer-file-coding-system 'undecided-unix) -; (set-buffer-modified-p nil))) - -(setq-default buffer-file-coding-system 'utf-8-unix) - -;; Avy - act like Vim Easymotion -(use-package avy - :ensure t - :config - (evil-define-key '(normal) 'global (kbd "T") 'avy-goto-char) - (evil-define-key '(normal) 'global (kbd "s") 'avy-goto-char-2) - (evil-define-key '(normal) 'global (kbd "s") 'avy-goto-char-2-above)) - -(use-package yasnippet - :ensure t - :defer t - :commands yas-minor-mode - :hook ((prog-mode . yas-minor-mode) - (org-mode . yas-minor-mode)) - :config - (setq yas-indent-line 'fixed) ;; 让 snippet 展开时不影响缩进 - (setq yas-wrap-around-region nil) ;; 关闭自动包裹选中区域 - (advice-add 'yas-expand-snippet :around - (lambda (orig-fn &rest args) - (let ((inhibit-field-text-motion t)) ;; 禁止字段自动换行 - (apply orig-fn args)))) - ;; (setq yas-snippet-dirs '("~/.dotfiles/tools/doom/snippets/")) - (add-to-list 'yas-snippet-dirs "~/.dotfiles/tools/doom/snippets/" t) - - (yas-reload-all) - ) - -(use-package diff-hl - :straight t - :hook ((prog-mode . diff-hl-mode) - (vc-dir-mode . diff-hl-dir-mode) - (magit-post-refresh . diff-hl-magit-post-refresh)) - :config - (setq diff-hl-margin-mode nil) - (diff-hl-flydiff-mode)) - -(global-font-lock-mode t) - -(provide 'init-edit) diff --git a/tools/emacs.d/lisp/init-evil.el b/tools/emacs.d/lisp/init-evil.el deleted file mode 100644 index c4c239b..0000000 --- a/tools/emacs.d/lisp/init-evil.el +++ /dev/null @@ -1,93 +0,0 @@ -;;; init-evil.el - -;; Evil - Extensible VI Layer -;; (defvar evil-colemak-state-map (make-sparse-keymap)) - - - -(use-package evil - :ensure t - :config - (evil-mode 1) - ; Colemak Vim Arrow - ; Motion - Emacs built-in read-only mode - (evil-define-key '(normal visual operator motion) 'global - ;; To see the keybindings, use k then type the key - ; "n" 'evil-next-line - ; "e" 'evil-previous-line - ; "i" 'evil-forward-char - ; ;"l" 'evil-insert - ; ;"L" 'evil-insert-0-line - ; "k" 'evil-search-next - ; "K" 'evil-search-previous - ; "j" 'evil-forward-word-end - ; "J" 'evil-forward-WORD-end - "J" '(lambda () (interactive) (evil-next-line 5)) ; 5n - "K" '(lambda () (interactive) (evil-previous-line 5)) ; 5e - ; (kbd "C-w n") 'evil-window-down - ; (kbd "C-w e") 'evil-window-up - ; (kbd "C-w i") 'evil-window-right - ; (kbd "C-w C-n") 'evil-window-down - ; (kbd "C-w C-e") 'evil-window-up - ; (kbd "C-w C-i") 'evil-window-right) - ; (evil-define-key '(normal visual) 'global - ; "l" 'evil-insert - ; "L" 'evil-insert-0-line) - (evil-define-key '(normal motion) 'global - "H" #'tab-line-switch-to-prev-tab - "L" #'tab-line-switch-to-next-tab) - (evil-define-key '(visual operator) 'global - "H" #'evil-beginning-of-line - "L" #'evil-end-of-line) - (evil-ex-define-cmd "bn" #'tab-line-switch-to-next-tab) - (evil-ex-define-cmd "bp" #'tab-line-switch-to-prev-tab))) - -;; Text Objects Keymap - Use `l` for inner (swap i and l) -;; https://github.com/emacs-evil/evil/blob/master/evil-maps.el#L398-L421 -(define-key evil-visual-state-map "l" evil-inner-text-objects-map) -(define-key evil-operator-state-map "l" evil-inner-text-objects-map) - - -;; Provides Vim-like Leader key -(use-package evil-leader - :after evil - :config - (global-evil-leader-mode) - (evil-leader/set-leader "") - (evil-leader/set-key - "ft" #'treemacs - "bb" #'buffer-menu)) - -;; Evil Commentary: Use gc to toggle comments -(use-package evil-commentary - :after evil - :config - (evil-commentary-mode)) - -;; Evil Surround: Vim-surround Evil fork -(use-package evil-surround - :after evil - :config - (global-evil-surround-mode 1)) - -(use-package evil-mc - :config - (global-evil-mc-mode 1)) - - -;; Evil-goggles: Highlight-yank (and more) -(use-package evil-goggles - :ensure t - :config - (evil-goggles-mode) - - ;; optionally use diff-mode's faces; as a result, deleted text - ;; will be highlighed with `diff-removed` face which is typically - ;; some red color (as defined by the color theme) - ;; other faces such as `diff-added` will be used for other actions - (evil-goggles-use-diff-faces)) - -(with-eval-after-load 'evil - (evil-set-initial-state 'org-agenda-mode 'motion)) - -(provide 'init-evil) diff --git a/tools/emacs.d/lisp/init-file.el b/tools/emacs.d/lisp/init-file.el deleted file mode 100644 index b9f1de1..0000000 --- a/tools/emacs.d/lisp/init-file.el +++ /dev/null @@ -1,87 +0,0 @@ -;;; init-file.el -- File Management configuration -;;; First edit at 2025/01/29 - -;; Dired - -;; Dired Configuration -(with-eval-after-load 'dired - (setq dired-recursive-deletes 'top) ;; Ask Before Delete Dir - (setq dired-recursive-copies 'always) ;; Always Copy Dir - (setq dired-dwim-target t)) ;; dwim for Do What I Mean - 当分屏显示两个 Buffer 时,复制或移动文件会自动将另一个 dired buffer 作为目标目录 - -;; Dired Keybindings - Colemak -(evil-define-key 'normal dired-mode-map - "h" 'dired-up-directory - "i" 'dired-find-file - "n" 'dired-next-line - "e" 'dired-previous-line) - -;; This prevents Dired from opening more buffers -;; https://stackoverflow.com/q/1839313 -(setq dired-kill-when-opening-new-dired-buffer t) - -;; Treemacs - Sidebar File Tree -(use-package treemacs - :straight t - :defer t - :init - (with-eval-after-load 'winum - (define-key winum-keymap (kbd "M-0") #'treemacs-select-window)) - :bind - (:map global-map - ("M-0" . treemacs-select-window) - ("C-x t 1" . treemacs-delete-other-windows) - ;; ("C-x t t" . treemacs) - ("C-x t d" . treemacs-select-directory) - ("C-x t B" . treemacs-bookmark) - ("C-x t C-t" . treemacs-find-file) - ("C-x t M-t" . treemacs-find-tag) - ) - :config - (setq treemacs-persist-file (expand-file-name "treemacs-persist" user-emacs-data))) - - -(use-package treemacs-nerd-icons - :config - (treemacs-load-theme "nerd-icons")) - -(use-package treemacs-evil - :after (treemacs evil) - :ensure t - :config - ;; Evil treemacs state bindings - (evil-define-key '(normal motion) evil-treemacs-state-map - (kbd "n") #'treemacs-next-line - (kbd "e") #'treemacs-previous-line - (kbd "N") #'treemacs-next-neighbour - (kbd "E") #'treemacs-previous-neighbour - (kbd "H") #'treemacs-toggle-show-dotfiles - (kbd "I") #'treemacs-hide-gitignored-files-mode - (kbd "i") #'treemacs-RET-action - (kbd "a") #'treemacs-create-file - (kbd "A") #'treemacs-create-dir - (kbd "c") #'treemacs-copy-file - (kbd "x") #'treemacs-move-file - (kbd "d") #'treemacs-delete-file - (kbd "r") #'treemacs-rename-file - (kbd "q") #'treemacs-quit - (kbd "y") #'treemacs-copy-relative-path-at-point - (kbd "Y") #'treemacs-copy-absolute-path-at-point - (kbd "m") #'treemacs-mark-or-unmark-path-at-point) - - ;; Treemacs mode specific binding - (evil-define-key 'treemacs treemacs-mode-map (kbd "i") #'treemacs-RET-action)) - -(use-package dirvish) - - -;; magit - Git Client -(use-package magit - :ensure t - :after (evil-leader) - :config - (evil-leader/set-key - "g" 'magit-status) - ) - -(provide 'init-file) diff --git a/tools/emacs.d/lisp/init-keymaps.el b/tools/emacs.d/lisp/init-keymaps.el deleted file mode 100644 index ae4081f..0000000 --- a/tools/emacs.d/lisp/init-keymaps.el +++ /dev/null @@ -1,8 +0,0 @@ -;;; init-keymaps.el - -;; Once this is defined, `M-x open-init-file` will open this file -(defun open-org-config() - (interactive) ;; Mark function as `interactive` that allows user to access by M-x open-init-file RET - (find-file "~/.dotfiles/tools/emacs.d/lisp/init-org.el")) - -(provide 'init-keymaps) diff --git a/tools/emacs.d/lisp/init-latex.el b/tools/emacs.d/lisp/init-latex.el deleted file mode 100644 index 2ec40fe..0000000 --- a/tools/emacs.d/lisp/init-latex.el +++ /dev/null @@ -1,50 +0,0 @@ - -(use-package texfrag - ;; :init - ;; (texfrag-global-mode) - :config - (evil-define-key 'normal texfrag-mode-map - (kbd "zL") #'texfrag-document) - :hook (markdown-mode . texfrag-mode)) - -(use-package laas - :hook ( - (LaTeX-mode . laas-mode) - (org-mode . laas-mode)) - :config ; do whatever here - (aas-set-snippets 'laas-mode - ;; set condition! - :cond #'texmathp ; expand only while in math - "nabl" "\\nabla" - "lg" "\\lg" - "hat" "\\hat" - ;; "iint" "\\iint" - ;; "int" "\\int" - "cdot" "\\cdot" - "dif" "\\mathrm{d}" - "pm" "\\pm" - "mp" "\\mp" - "sq" "\\sqrt" - ;; bind to functions! - "mk" (lambda () (interactive) - (yas-expand-snippet "\\( $1 \\)$0")) - "ppart" (lambda () (interactive) - (yas-expand-snippet "\\frac{\\partial $2}{\\partial $1} $0")) - "rm" (lambda () (interactive) - (yas-expand-snippet "\\mathrm{$1} $0")) - "sb" (lambda () (interactive) - (yas-expand-snippet "_{$1} $0")) - "Sum" (lambda () (interactive) - (yas-expand-snippet "\\sum_{$1}^{$2} $0")) - "Span" (lambda () (interactive) - (yas-expand-snippet "\\Span($1)$0")) - ;; add accent snippets - :cond #'laas-object-on-left-condition - "qq" (lambda () (interactive) (laas-wrap-previous-object "sqrt")) - :cond #'(lambda () (and (not (texmathp)) - (looking-back "^" nil))) - "dm" '(yas "\\[\n$1\n\\]$0")) - ) - -(provide 'init-latex) -;;; init-latex.el ends diff --git a/tools/emacs.d/lisp/init-markdown.el b/tools/emacs.d/lisp/init-markdown.el deleted file mode 100644 index 81f0b0f..0000000 --- a/tools/emacs.d/lisp/init-markdown.el +++ /dev/null @@ -1,12 +0,0 @@ -(use-package yaml-mode :straight t) - -(use-package markdown-mode - :mode ("\\.md\\'" . markdown-mode) - :init - (setq markdown-fontify-code-blokcs-natively t) - :custom - (setq markdown-fontify-code-block-natively t) - :hook ((markdown-mode . visual-line-mode))) - -(provide 'init-markdown) -;;; init-markdown.el ends diff --git a/tools/emacs.d/lisp/init-org.el b/tools/emacs.d/lisp/init-org.el deleted file mode 100644 index c748133..0000000 --- a/tools/emacs.d/lisp/init-org.el +++ /dev/null @@ -1,315 +0,0 @@ -;;; init-org.el - -;; Use =M-x org-mode-restart= to take effects -;; After =M-x eval-buffer= - -;; Org General - -(use-package org - :straight (:type built-in) ;; Tell straight to not install org - :custom - (org-log-done 'time) - (org-startup-indented nil) - ;; Use inline image - (org-startup-with-inline-images t) - (org-display-remote-inline-images 'cache) ; 预览网络图片 - - ;; Use LaTeX rendering - ;; (org-startup-with-latex-preview nil) - (org-image-actual-width 600) - ;; Conceal on markup markers - (org-hide-emphasis-markers t) - (org-directory "~/OrgFiles/") - (org-agenda-files (list (concat org-directory "tasks/"))) - (org-persist-directory (expand-file-name "org-persist" user-emacs-data)) - (org-archive-location "~/OrgFiles/.archive/%s_archive::") - (org-default-notes-file "~/OrgFiles/tasks/inbox.org") - (org-id-locations-file (expand-file-name ".org-id-locations" org-directory)) - (org-startup-folded "show2levels") - (org-log-into-drawer "LOGBOOK") - (org-pretty-entities t) - (org-src-fontify-natively t) - (org-src-tab-acts-natively t) ; Use TAB to indent inside source block - (org-src-preserve-indentation t) ; Prevent from auto-indent - (org-startup-folded 'showall) - :config - (require 'org-habit) - (with-eval-after-load 'org - (define-key org-mode-map (kbd "C-j") 'org-return-indent) - (evil-define-key 'normal org-mode-map (kbd "TAB") 'org-cycle)) - (evil-define-key 'normal org-mode-map (kbd "SPC a") 'org-agenda-list) ; TODO: Here Simulates the leader - ;; (setq org-emphasis-alist - ;; '(("*" (bold :foreground "cyan" )) - ;; ("/" (italic :foreground "green")) - ;; ("_" underline) - ;; ("=" (org-verbatim verbatim :background "maroon" :foreground "white")) - ;; ("~" (org-code verbatim :background "maroon" :foreground "white")) - ;; ("+" (:strike-through t)))) - (custom-set-faces - '(org-bold ((t (:weight bold :foreground unspecified)))) - '(org-italic ((t (:slant italic :foreground unspecified)))) - '(org-underline ((t (:underline t :foreground unspecified)))) - '(org-code ((t (:inherit fixed-pitch :background unspecified :foreground unspecified)))) - '(org-verbatim ((t (:inherit fixed-pitch :background unspecified :foreground unspecified)))) - '(org-strike-through ((t (:strike-through t :foreground unspecified))))) - - - (dolist (face '((org-level-1 . 1.6) - (org-level-2 . 1.4) - (org-level-3 . 1.2) - (org-level-4 . 1.1) - (org-level-5 . 1.0) - (org-level-6 . 1.0) - (org-level-7 . 1.0) - (org-level-8 . 1.0))) - (set-face-attribute (car face) nil :height (cdr face)))) - - -;; Org Styling - -;; Set Org Styles - - -;; Org Preview - -;; Better LaTeX preview - -(setq org-latex-preview-ltxpng-directory (expand-file-name "emacs/org/latex" xdg-cache-home)) -(setq org-preview-latex-default-process 'dvisvgm) -(setq org-format-latex-options (plist-put org-format-latex-options :scale 0.8)) - -;; org-appear: Show hidden emphasis markers -;; Just like Obsidian -(use-package org-appear - :hook - (org-mode . org-appear-mode)) - - -(use-package org-latex-impatient - :defer t - :hook (org-mode . org-latex-impatient-mode) - :init - (setq org-latex-impatient-tex2svg-bin - ;; location of tex2svg executable - "~/.local/share/pnpm/tex2svg")) - -(use-package org-fragtog - :after org - :hook (org-mode . org-fragtog-mode)) - -;; Pasting Images -;; Use =M-x org-download-clipboard= to paste image -;; Additional program required: magick -;; Windows: scoop install imagemagick -;; org-download config -(use-package org-download - :ensure t - :after org - :config - ;; Hardcoding the image dir - (setq-default org-download-image-dir (expand-file-name ".attach" org-directory)) - - (setq org-download-heading-lvl nil ; don't use heading when creating files - org-download-timestamp "%Y%m%d-%H%M%S" - org-download-screenshot-method "screencapture -i %s" ; for macOS only - org-download-backend 'curl) ; use curl to `download` image - - (org-download-enable) - - :bind (:map org-mode-map - ("C-c d c" . org-download-clipboard) ; 粘贴剪贴板内容 - ("C-c d s" . org-download-screenshot))) ; 截图 - - -;; For CJK users -;; Insert zero width space around the emphasis symbols, this might be useful for -;; languages that does not rely on space -(defun js0ny/insert-emphasis-with-zws (char) - (interactive "c") - (insert ?\u200B char) - (save-excursion (insert char ?\u200B))) - -(global-set-key (kbd "C-c b") (lambda () (interactive) (js0ny/insert-emphasis-with-zws ?*))) -(global-set-key (kbd "C-c i") (lambda () (interactive) (js0ny/insert-emphasis-with-zws ?/))) - -;; Pomodoro for org clock -(use-package org-pomodoro - :straight t - :bind (:map org-mode-map - ("C-c p" . org-pomodoro))) - - -(defun js0ny/org-pomodoro-resume-last-task () - "Clock in to the last task and start Pomodoro on it." - (interactive) - (let ((marker (car org-clock-history))) - (if marker - (progn - (org-with-point-at marker - (org-clock-in)) - (org-pomodoro)) - (message "No previous clock task found.")))) - -(use-package org-modern - :ensure t - :config - ;; (setopt org-modern-star 'replace - ;; org-modern-replace-stars '("§") - ;; org-modern-hide-stars "§") - (setopt org-modern-list '((?- . "•"))) - (setopt org-modern-timestamp '(" %Y-%m-%d " . " %H:%M ")) - (setopt org-modern-block-fringe nil) - -;; https://github.com/neoheartbeats/.emacs.d/blob/main/lisp/init-org.el#L126C1-L159C47 - (defun sthenno/org-modern-spacing () - "Adjust line-spacing for `org-modern' to correct svg display." - - ;; FIXME: This may not set properly - (setq-local line-spacing (cond ((eq major-mode #'org-mode) 0.20) - (t nil)))) - (add-hook 'org-mode-hook #'sthenno/org-modern-spacing) - - - ;; Hooks - (add-hook 'org-mode-hook #'org-modern-mode)) - -;; WARNING: This package will cause infinite recursion when initialising org -;; Test on 2025-03-14 Emacs 30 and Arch Linux -;(use-package mixed-pitch -; :hook -; (text-mode . org-mode)) - -;; Org Agenda - -(with-eval-after-load 'org-agenda - (evil-define-key 'motion org-agenda-mode-map - (kbd "n") #'org-agenda-next-line - (kbd "e") #'org-agenda-previous-line - (kbd "gn") #'org-agenda-next-item - (kbd "ge") #'org-agenda-previous-item - (kbd "N") #'org-agenda-priority-up - (kbd "E") #'org-agenda-priority-down - (kbd "i") #'evil-forward-char - (kbd ",") #'org-agenda-priority - (kbd "x") #'org-agenda-todo - (kbd "t") #'org-agenda-set-tags - (kbd "w") #'org-save-all-org-buffers - (kbd "ds") #'org-agenda-schedule - (kbd "dd") #'org-agenda-deadline - (kbd "$") #'org-agenda-archive - (kbd "!") #'org-agenda-toggle-deadlines - (kbd "cp") #'org-pomodoro - (kbd "vd") #'org-agenda-day-view - (kbd "vw") #'org-agenda-week-view - (kbd "vm") #'org-agenda-month-view - (kbd "vy") #'org-agenda-year-view - (kbd "v.") #'org-agenda-reset-view)) - -(evil-leader/set-key "A" #'org-agenda) - -(setq org-agenda-prefix-format '((agenda . " %i %-12:c%?-12t% s") - (todo . " %i %-12:c %e") - (tags . " %i %-12:c %e ") - (search . " %i %-12:c %e "))) - - -;; Org Babel - -;; Run source block with C-c C-c -;; Add supports for non-elisp langs -(use-package ob-python - :straight (:type built-in) ; Part of Org Mode - :after org) - -(use-package ob-C ;; C++ support is integrated in ob-C - :straight (:type built-in) ; Part of Org Mode - :after org) - -(org-babel-do-load-languages - 'org-babel-load-languages - '( - (python . t) ; No need to declare C/C++/emacs-lisp since is integrated - (shell . t) - (dot . t) - (ditaa . t) - )) -;; Don't ask me again when running source block -;; Use clang as default C/C++ Compiler on macOS and Windows -(setq org-confirm-babel-evaluate nil) -(if (not (eq system-type 'gnu/linux)) - (setq org-babel-C-compiler "clang")) - -(setq org-babel-default-header-args:C - '((:includes . " "))) - -(setq org-babel-default-header-args:C++ - '((:includes . " "))) - -;; Org Export - -;; icalendar - -(defun my/org-icalendar-filter-out-habits (entry backend info) - "Filter out Org entries that are marked as habits when exporting to iCalendar." - (when (and (eq backend 'icalendar) - (string-match ":STYLE:.*habit" (or entry ""))) - nil)) - -(add-hook 'org-export-filter-entry-functions #'my/org-icalendar-filter-out-habits) - - -(setq org-icalendar-use-scheduled '(event-if-todo event-if-not-todo)) -(setq org-icalendar-use-deadline '(event-if-todo event-if-not-todo)) -(setq org-icalendar-combined-agenda-file "~/Dropbox/org.ics") - - -;; ;; Integrate Emacs Timer with System Notifications -;; ;; 定义通知函数 -;; (defun js0ny/org-clock-notification (title message &optional icon) -;; "发送一个系统通知" -;; (alert message -;; :title title -;; :icon icon -;; :category 'org-clock)) - -;; ;; 添加定时器检查函数 -;; (defun js0ny/org-clock-check-timer () -;; "检查当前正在运行的 clock 是否到期" -;; (when (org-clocking-p) -;; (let* ((clocked-time (org-clock-get-clocked-time)) -;; (effort (org-duration-to-minutes -;; (or (org-entry-get (org-clock-is-active) "Effort") -;; "0"))) -;; (remaining (- effort clocked-time))) -;; (when (and (> effort 0) (<= remaining 0)) -;; (js0ny/org-clock-notification -;; "Org Clock 提醒" -;; (format "任务 '%s' 的预计时间已到!" -;; (org-clock-get-clock-string))))))) - -;; ;; 设置定时器,每分钟检查一次 -;; (run-with-timer 0 60 #'js0ny/org-clock-check-timer) - -;; 在 org-clock-in-hook 中添加检查 -;; (add-hook 'org-clock-in-hook -;; (lambda () -;; (let ((effort (org-entry-get (point) "Effort"))) -;; (when effort -;; (js0ny/org-clock-notification -;; "开始计时" -;; (format "开始计时任务: %s\n预计用时: %s" -;; (org-get-heading t t t t) -;; effort)))))) -(use-package org-node - :after org - :config (org-node-cache-mode)) - - -;; ;; 执行最后一行,重新生成解析表达式 -;; (with-eval-after-load 'org -;; ;; 添加常见全角标点 -;; (setf (nth 1 org-emphasis-regexp-components) -;; " \t\r\n,.:!?:;。,!?、」』)〉》」』〕〗】})]") -;; (org-set-emph-re 'org-emphasis-regexp-components org-emphasis-regexp-components)) - -(provide 'init-org) diff --git a/tools/emacs.d/lisp/init-package.el b/tools/emacs.d/lisp/init-package.el deleted file mode 100644 index 9befe21..0000000 --- a/tools/emacs.d/lisp/init-package.el +++ /dev/null @@ -1,68 +0,0 @@ -;;; init-package.el --- Package management setup using straight.el -*- lexical-binding: t -*- - -(setq straight-base-dir user-emacs-data) - -;; Bootstrap straight.el -(defvar bootstrap-version) -(let ((bootstrap-file - (expand-file-name - "straight/repos/straight.el/bootstrap.el" - (or (bound-and-true-p straight-base-dir) - user-emacs-directory))) - (bootstrap-version 7)) - (unless (file-exists-p bootstrap-file) - (with-current-buffer - (url-retrieve-synchronously - "https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el" - 'silent 'inhibit-cookies) - (goto-char (point-max)) - (eval-print-last-sexp))) - (load bootstrap-file nil 'nomessage)) - -;; Use straight.el with use-package -(straight-use-package 'use-package) -(setq straight-use-package-by-default t) ;; Automatically use straight for all packages - -;; Ensure gnu-elpa-keyring-update (equivalent to your previous keyring update logic) -(use-package gnu-elpa-keyring-update) - - -;; Which Key - Prompt available commands -(use-package which-key - :ensure t - :init - (which-key-mode) - :custom - (which-key-idle-delay 0.1)) - -;; Dashboard -(use-package dashboard - ;; Open with :dashboard-open - :after evil - :bind (:map dashboard-mode-map - ;; Navigation - ("n" . dashboard-next-line) - ("e" . dashboard-previous-line) - ;; Buffer switching - ("H" . previous-buffer) - ("I" . next-buffer)) - :custom - (dashboard-center-content t) - :config - (dashboard-setup-startup-hook) - ;; Use Emacs mode to use number to navigate dashboard - ) - - -(use-package wakatime-mode - :ensure t - :custom - ;; Use expand-file-name to prevent from error parsing on windows-nt - (wakatime-cli-path (expand-file-name "~/.local/bin/wakatime")) - :config - (global-wakatime-mode) - ) - - -(provide 'init-package) -;;; init-package.el ends here diff --git a/tools/emacs.d/lisp/init-scratch.el b/tools/emacs.d/lisp/init-scratch.el deleted file mode 100644 index ec9bf2b..0000000 --- a/tools/emacs.d/lisp/init-scratch.el +++ /dev/null @@ -1,5 +0,0 @@ - -(setq initial-major-mode 'org-mode) - - -(provide 'init-scratch) diff --git a/tools/emacs.d/lisp/init-treesitter.el b/tools/emacs.d/lisp/init-treesitter.el deleted file mode 100644 index 0268024..0000000 --- a/tools/emacs.d/lisp/init-treesitter.el +++ /dev/null @@ -1,28 +0,0 @@ -;;; init-treesitter.el tree-sitter integration for emacs -;;; Reference: https://emacs.liujiacai.net/post/038-hello-treesitter/ -;;; Download: https://github.com/emacs-tree-sitter/tree-sitter-langs/releases/tag/0.12.268 - - -(add-to-list 'treesit-extra-load-path (expand-file-name "tree-sitter" user-emacs-data)) - -(setq major-mode-remap-alist - '((yaml-mode . yaml-ts-mode) - (sh-mode . bash-ts-mode) - (js-mode . js-ts-mode) - (css-mode . css-ts-mode) - (c-mode . c-ts-mode) - (c++-mode . c++-ts-mode) - (c-or-c++-mode . c-or-c++-ts-mode) - (python-mode . python-ts-mode) - (js-json-mode . json-ts-mode))) - -(add-to-list 'treesit-language-source-alist - '(hyprlang "https://github.com/tree-sitter-grammars/tree-sitter-hyprlang")) - -(use-package hyprlang-ts-mode - :ensure t - :custom - (hyprlang-ts-mode-indent-offset 4)) - - -(provide 'init-treesitter) diff --git a/tools/emacs.d/lisp/init-wayland.el b/tools/emacs.d/lisp/init-wayland.el deleted file mode 100644 index 64c6ca7..0000000 --- a/tools/emacs.d/lisp/init-wayland.el +++ /dev/null @@ -1,11 +0,0 @@ - -(when (getenv "WAYLAND_DISPLAY") - ;; Fix: Emacs nox does not have clipboard integration under wayland - (use-package xclip - :config - (setq xclip-program "wl-copy") - (setq xclip-select-enable-clipboard t) - (setq xclip-mode t) - (setq xclip-method (quote wl-copy)))) - -(provide 'init-wayland) diff --git a/tools/emacs.d/lisp/init-writer.el b/tools/emacs.d/lisp/init-writer.el deleted file mode 100644 index cbdb7b3..0000000 --- a/tools/emacs.d/lisp/init-writer.el +++ /dev/null @@ -1,8 +0,0 @@ - -;; TODO -(use-package flyspell) - -(use-package olivetti - :hook (olivetti-mode . org-mode)) - -(provide 'init-writer) diff --git a/tools/emacs.d/site-lisp b/tools/emacs.d/site-lisp deleted file mode 120000 index 4683114..0000000 --- a/tools/emacs.d/site-lisp +++ /dev/null @@ -1 +0,0 @@ -../doom/lisp/ \ No newline at end of file diff --git a/tools/emacs.d/snippets/org-mode/begin_quote b/tools/emacs.d/snippets/org-mode/begin_quote deleted file mode 100644 index 3c90e2b..0000000 --- a/tools/emacs.d/snippets/org-mode/begin_quote +++ /dev/null @@ -1,7 +0,0 @@ -# -*- mode: snippet -*- -# name: begin_quote -# key: quote -# -- -#+BEGIN_QUOTE -$1 -#+END_QUOTE diff --git a/tools/emacs.d/snippets/org-mode/begin_src b/tools/emacs.d/snippets/org-mode/begin_src deleted file mode 100644 index 7ed1d69..0000000 --- a/tools/emacs.d/snippets/org-mode/begin_src +++ /dev/null @@ -1,8 +0,0 @@ -# -*- mode: snippet -*- -# name: begin_src -# key: src -# -- -#+BEGIN_SRC $1 -$2 -#+END_SRC - diff --git a/tools/emacs.d/snippets/org-mode/begin_src_elisp b/tools/emacs.d/snippets/org-mode/begin_src_elisp deleted file mode 100644 index e0c5f57..0000000 --- a/tools/emacs.d/snippets/org-mode/begin_src_elisp +++ /dev/null @@ -1,8 +0,0 @@ -# -*- mode: snippet -*- -# name: elisp -# key: elisp -# -- - -#+BEGIN_SRC emacs-lisp -$1 -#+END_SRC diff --git a/tools/nvim/lua/plugins/mod/dap-setup.lua b/tools/nvim/lua/plugins/mod/dap-setup.lua deleted file mode 100644 index 8b13789..0000000 --- a/tools/nvim/lua/plugins/mod/dap-setup.lua +++ /dev/null @@ -1 +0,0 @@ - From 2cbf244d7bdb8922a4c81e5cc71a04de55e3796c Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 12:11:09 +0100 Subject: [PATCH 02/48] chezmoi: zsh, starship --- common/agenda-view.el | 3 - common/fzfrc | 10 - common/starship.toml.bak | 455 ---------------- {common => dot_config}/starship.toml | 0 tools/zsh/zshenv => dot_config/zsh/dot_zshenv | 0 tools/zsh/zshrc => dot_config/zsh/dot_zshrc | 0 .../zsh/empty_dot_zprofile | 0 {tools => dot_config}/zsh/global.zshenv | 0 {tools => dot_config}/zsh/mod/alias.zsh | 0 {tools => dot_config}/zsh/mod/config.zsh | 0 {tools => dot_config}/zsh/mod/env.zsh | 0 {tools => dot_config}/zsh/mod/keymap.zsh | 0 {tools => dot_config}/zsh/mod/navi.zsh | 0 {tools => dot_config}/zsh/mod/prompt.zsh | 0 tools/obsidian/.markdownlint.jsonc | 34 -- tools/obsidian/latex-suite-snippet | 489 ------------------ tools/obsidian/obsidian.vimrc | 111 ---- 17 files changed, 1102 deletions(-) delete mode 100644 common/agenda-view.el delete mode 100644 common/fzfrc delete mode 100644 common/starship.toml.bak rename {common => dot_config}/starship.toml (100%) rename tools/zsh/zshenv => dot_config/zsh/dot_zshenv (100%) rename tools/zsh/zshrc => dot_config/zsh/dot_zshrc (100%) rename tools/zsh/zprofile => dot_config/zsh/empty_dot_zprofile (100%) rename {tools => dot_config}/zsh/global.zshenv (100%) rename {tools => dot_config}/zsh/mod/alias.zsh (100%) rename {tools => dot_config}/zsh/mod/config.zsh (100%) rename {tools => dot_config}/zsh/mod/env.zsh (100%) rename {tools => dot_config}/zsh/mod/keymap.zsh (100%) rename {tools => dot_config}/zsh/mod/navi.zsh (100%) rename {tools => dot_config}/zsh/mod/prompt.zsh (100%) delete mode 100644 tools/obsidian/.markdownlint.jsonc delete mode 100644 tools/obsidian/latex-suite-snippet delete mode 100644 tools/obsidian/obsidian.vimrc diff --git a/common/agenda-view.el b/common/agenda-view.el deleted file mode 100644 index cf8adaa..0000000 --- a/common/agenda-view.el +++ /dev/null @@ -1,3 +0,0 @@ - -(setq org-directory "~/OrgFiles/") -(setq org-agenda-files (list (concat org-directory "tasks/"))) diff --git a/common/fzfrc b/common/fzfrc deleted file mode 100644 index 4d88a35..0000000 --- a/common/fzfrc +++ /dev/null @@ -1,10 +0,0 @@ -# --preview 'bat --color=always --style=numbers {}' -# --bind alt-n:preview-down,alt-e:preview-up -# --bind ctrl-e:up -# --bind alt-p:toggle-preview -# --color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 -# --color=fg:#cdd6f4,header:#f38ba8,info:#f5c2e7,pointer:#f5e0dc -# --color=marker:#b4befe,fg+:#cdd6f4,prompt:#f5c2e7,hl+:#f38ba8 -# --color=selected-bg:#45475a -# --color=border:#313244,label:#cdd6f4 -# diff --git a/common/starship.toml.bak b/common/starship.toml.bak deleted file mode 100644 index 02d4358..0000000 --- a/common/starship.toml.bak +++ /dev/null @@ -1,455 +0,0 @@ -# $DOTFILES/common/starship.toml -# vim:foldmethod=marker -# Date: 2025-01-26 -# Description: Use one starship config for all shells - -# Location: $XDG_CONFIG_HOME/starship.toml -# Linking: ln -s $DOTFILES/common/starship.toml $XDG_CONFIG_HOME/starship.toml - -# Modified from the Powerline Preset - -"$schema" = 'https://starship.rs/config-schema.json' - - -# {{{ format -format = """ -$sudo\ -$jobs\ -$os\ -$time\ -[](bg:#DA627D fg:#9A348E)\ -$username\ -$hostname\ -[](fg:#DA627D bg:#FCA17D)\ -$directory\ -$git_branch\ -$git_status\ -[](fg:#FCA17D bg:#86BBD8)\ -$custom\ -$bun\ -$c\ -$cmake\ -$cobol\ -$daml\ -$dart\ -$deno\ -$dotnet\ -$elixir\ -$elm\ -$erlang\ -$fennel\ -$gleam\ -$golang\ -$guix_shell\ -$haskell\ -$haxe\ -$helm\ -$java\ -$julia\ -$kotlin\ -$gradle\ -$lua\ -$nim\ -$nodejs\ -$ocaml\ -$opa\ -$perl\ -$php\ -$pulumi\ -$purescript\ -$python\ -$quarto\ -$raku\ -$rlang\ -$red\ -$ruby\ -$rust\ -$scala\ -$solidity\ -$swift\ -$terraform\ -$typst\ -$vlang\ -$vagrant\ -$zig\ -[](fg:#86BBD8) -$character\ -$shell\ -[](fg:#06969A)\ -""" -# }}} - -# {{{ TODO: -# -# $buf\ -# $nix_shell\ -# $conda\ -# $meson\ -# $spack\ -# $memory_usage\ -# $aws\ -# $gcloud\ -# $openstack\ -# $azure\ -# $nats\ -# $direnv\ -# $env_var\ -# $crystal\ -# $sudo\ -# $cmd_duration\ -# $line_break\ -# $battery\ -# $container\ -# }}} - -# Disable the blank line at the start of the prompt -# add_newline = false - -# You can also replace your username with a neat symbol like  or disable this -# and use the os module below - -# {{{ Part 1 -[jobs] -style = "bg:#9A348E" -format = '[$symbol $number]($style)' - -[os] -style = "bg:#9A348E" -format = '[ $symbol ]($style)' -disabled = false # Disabled by default - -[os.symbols] -Alpaquita = " " -Alpine = " " -AlmaLinux = " " -Amazon = " " -Android = " " -Arch = " " -Artix = " " -CentOS = " " -Debian = " " -DragonFly = " " -Emscripten = " " -EndeavourOS = " " -Fedora = " " -FreeBSD = " " -Garuda = "󰛓 " -Gentoo = " " -HardenedBSD = "󰞌 " -Illumos = "󰈸 " -Kali = " " -Linux = " " -Mabox = " " -Macos = " " -Manjaro = " " -Mariner = " " -MidnightBSD = " " -Mint = " " -NetBSD = " " -NixOS = " " -OpenBSD = "󰈺 " -openSUSE = " " -OracleLinux = "󰌷 " -Pop = " " -Raspbian = " " -Redhat = " " -RedHatEnterprise = " " -RockyLinux = " " -Redox = "󰀘 " -Solus = "󰠳 " -SUSE = " " -Ubuntu = " " -Unknown = " " -Void = " " -Windows = "󰍲 " - -[time] -disabled = false -time_format = "%R" # Hour:Minute Format -# style = "bg:#33658A" -style = "bg:#9A348E" -format = '[$time ]($style)' -# }}} - -# {{{ Part 2 -[username] -show_always = true -style_user = "bg:#DA627D" -style_root = "bg:#DA627D" -# style_user = "bg:#9A348E" -# style_root = "bg:#9A348E" -format = '[ $user ]($style)' -disabled = false - - -[hostname] -ssh_only = false -# format = '[$ssh_symbol](bold blue) [$hostname](bold red) ' -style = "bg:#DA627D" -format = '[@ $hostname ]($style)' -trim_at = '.companyname.com' -disabled = false - - -# }}} - -# {{{ Part 3 -[directory] -style = "bg:#FCA17D fg:#035E82" -format = "[ $path ]($style)" -fish_style_pwd_dir_length = 1 -# truncation_length = 100 -truncation_length = 2 -truncation_symbol = ":" -truncate_to_repo = true - -# Here is how you can shorten some long paths by text replacementtruncation_symbol = ":" -# similar to mapped_locations in Oh My Posh: -[directory.substitutions] -# "Documents" = "󰈙 " -# "Downloads" = " " -# "Music" = " " -# "Pictures" = " " -# "Source" = " " -# ".dotfiles" = " " -# Keep in mind that the order matters. For example: -# "Important Documents" = " 󰈙 " -# will not be replaced, because "Documents" was already substituted before. -# So either put "Important Documents" before "Documents" or use the substituted version: -# "Important 󰈙 " = " 󰈙 " - -[git_branch] -symbol = "" -style = "bg:#FCA17D fg:#035E82" -format = '[ $symbol $branch ]($style)' - -[git_status] -style = "bg:#FCA17D fg:#035E82" -renamed = " " -modified = " " -staged = " " -deleted = " " -format = '[$all_status$ahead_behind ]($style)' -# }}} - -# {{{ Part 4 - - -[custom.just] -detect_files = ["Justfile", "justfile", ".Justfile", ".justfile"] -style = "bg:#86BBD8 fg:#794427" -format = "[ Just ]($style)" - -[custom.dotenv] -detect_files = [ - ".env", - ".env.local", - ".env.development", - ".env.test", - ".env.production", - ".env.staging", -] -style = "bg:#86BBD8 fg:#794427" -format = "[  ]($style)" -[custom.tex] -detect_extensions = ["tex", "bib"] -style = "bg:#86BBD8 fg:#794427" -format = "[  ]($style)" -[custom.readme] -detect_files = [ - "README.md", - "readme.md", - "README", - "readme", - "README.org", - "readme.org", -] -style = "bg:#86BBD8 fg:#794427" -format = "[ 󰂺 ]($style)" -[c] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[cmake] -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[dart] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[deno] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[dotnet] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' -detect_extensions = [ - "sln", - "csproj", - "fsproj", - "xproj", - "vbproj", - "cs", - "csx", - "fs", - "fsx", -] - -[docker_context] -symbol = " " -style = "bg:#06969A" -format = '[ $symbol $context ]($style)' - -[elixir] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[elm] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[golang] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[gradle] -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[haskell] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[java] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[julia] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[lua] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[nodejs] -symbol = "" -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[nim] -symbol = "󰆥 " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[rust] -symbol = "" -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[scala] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[python] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[ruby] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[bun] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[typst] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[zig] -symbol = "↯ " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -[kotlin] -symbol = " " -style = "bg:#86BBD8 fg:#794427" -format = '[ $symbol ($version) ]($style)' - -# }}} - -# {{{ Part 5 -[shell] -style = "bg:#06969A" -format = '[ $indicator ]($style)' -fish_indicator = "󰈺 " -bash_indicator = '\$ ' -zsh_indicator = "% " -powershell_indicator = "PS" -cmd_indicator = "cm" -nu_indicator = "nu" -disabled = false - -[character] -success_symbol = "[ ](bg:#33658A)[](fg:#33658A bg:#06969A)" -error_symbol = "[  ](fg:bold red bg:#33658A)[](fg:#33658A bg:#06969A)" -vimcmd_symbol = "[  ](fg:#32ff6c bg:#33658A)[](fg:#33658A bg:#06969A)" -vimcmd_visual_symbol = "[  ](fg:bold yellow bg:#33658A)[](fg:#33658A bg:#06969A)" -vimcmd_replace_symbol = "[  ](fg:bold purple bg:#33658A)[](fg:#33658A bg:#06969A)" -vimcmd_replace_one_symbol = "[  ](fg:bold purple bg:#33658A)[](fg:#33658A bg:#06969A)" -# success_symbol = "[ ](bg:#33658A)[](fg:#33658A bg:#06969A)" -# success_symbol = "[](fg:#86BBD8 bg:#33658A)" -format = "$symbol" -disabled = false -# }}} - -# {{{ Misc - -[palettes.catppuccin_mocha] -rosewater = "#f5e0dc" -flamingo = "#f2cdcd" -pink = "#f5c2e7" -mauve = "#cba6f7" -red = "#f38ba8" -maroon = "#eba0ac" -peach = "#fab387" -yellow = "#f9e2af" -green = "#a6e3a1" -teal = "#94e2d5" -sky = "#89dceb" -sapphire = "#74c7ec" -blue = "#89b4fa" -lavender = "#b4befe" -text = "#cdd6f4" -subtext1 = "#bac2de" -subtext0 = "#a6adc8" -overlay2 = "#9399b2" -overlay1 = "#7f849c" -overlay0 = "#6c7086" -surface2 = "#585b70" -surface1 = "#45475a" -surface0 = "#313244" -base = "#1e1e2e" -mantle = "#181825" -crust = "#11111b" - -# }}} diff --git a/common/starship.toml b/dot_config/starship.toml similarity index 100% rename from common/starship.toml rename to dot_config/starship.toml diff --git a/tools/zsh/zshenv b/dot_config/zsh/dot_zshenv similarity index 100% rename from tools/zsh/zshenv rename to dot_config/zsh/dot_zshenv diff --git a/tools/zsh/zshrc b/dot_config/zsh/dot_zshrc similarity index 100% rename from tools/zsh/zshrc rename to dot_config/zsh/dot_zshrc diff --git a/tools/zsh/zprofile b/dot_config/zsh/empty_dot_zprofile similarity index 100% rename from tools/zsh/zprofile rename to dot_config/zsh/empty_dot_zprofile diff --git a/tools/zsh/global.zshenv b/dot_config/zsh/global.zshenv similarity index 100% rename from tools/zsh/global.zshenv rename to dot_config/zsh/global.zshenv diff --git a/tools/zsh/mod/alias.zsh b/dot_config/zsh/mod/alias.zsh similarity index 100% rename from tools/zsh/mod/alias.zsh rename to dot_config/zsh/mod/alias.zsh diff --git a/tools/zsh/mod/config.zsh b/dot_config/zsh/mod/config.zsh similarity index 100% rename from tools/zsh/mod/config.zsh rename to dot_config/zsh/mod/config.zsh diff --git a/tools/zsh/mod/env.zsh b/dot_config/zsh/mod/env.zsh similarity index 100% rename from tools/zsh/mod/env.zsh rename to dot_config/zsh/mod/env.zsh diff --git a/tools/zsh/mod/keymap.zsh b/dot_config/zsh/mod/keymap.zsh similarity index 100% rename from tools/zsh/mod/keymap.zsh rename to dot_config/zsh/mod/keymap.zsh diff --git a/tools/zsh/mod/navi.zsh b/dot_config/zsh/mod/navi.zsh similarity index 100% rename from tools/zsh/mod/navi.zsh rename to dot_config/zsh/mod/navi.zsh diff --git a/tools/zsh/mod/prompt.zsh b/dot_config/zsh/mod/prompt.zsh similarity index 100% rename from tools/zsh/mod/prompt.zsh rename to dot_config/zsh/mod/prompt.zsh diff --git a/tools/obsidian/.markdownlint.jsonc b/tools/obsidian/.markdownlint.jsonc deleted file mode 100644 index 3aacfb0..0000000 --- a/tools/obsidian/.markdownlint.jsonc +++ /dev/null @@ -1,34 +0,0 @@ -{ - "ul-style": { // MD004 - "style": "dash" // - - }, - "ul-indent": { // MD007 - "indent": 4 - }, - "no-hard-tabs": { - "ignore_code_languages": [ - "go" - ] - }, - "line-length": false, // MD013 - "no-missing-space-atx": false, // MD018, prevent from formatting `#tag` to `# tag` - "no-inline-html": { // MD033 - "allowed_elements": [ - "kbd", // keyboard key - "u", // underline - "sup", // superscript - "sub", // subscript - "center", // center text - "cursor", // Personal use - "font", // Font family - "iframe" // Embed Web content - ] - }, - // "fenced-code-language": { // MD040 - // }, - "first-line-h1": false, // MD041 - "code-block-style": false // MD046: This will parse LaTeX indentation as indented code block - // "code-block-style": { - // "style": "fenced" // MD046 - // } -} \ No newline at end of file diff --git a/tools/obsidian/latex-suite-snippet b/tools/obsidian/latex-suite-snippet deleted file mode 100644 index e76d877..0000000 --- a/tools/obsidian/latex-suite-snippet +++ /dev/null @@ -1,489 +0,0 @@ -[ - {trigger: "mk", replacement: "$$0$", options: "tA" - }, - {trigger: "dm", replacement: "$$\n$0\n$$", options: "tAw" - }, - {trigger: "beg", replacement: "\\begin{$0}\n$1\n\\end{$0}", options: "mA" - }, - // Dashes - // {trigger: "--", replacement: "–", options: "tA"}, - // {trigger: "–-", replacement: "—", options: "tA"}, - // {trigger: "—-", replacement: "---", options: "tA"}, - // Greek letters - {trigger: "@a", replacement: "\\alpha", options: "mA" - }, - {trigger: "@b", replacement: "\\beta", options: "mA" - }, - {trigger: "@g", replacement: "\\gamma", options: "mA" - }, - {trigger: "@G", replacement: "\\Gamma", options: "mA" - }, - {trigger: "@d", replacement: "\\delta", options: "mA" - }, - {trigger: "@D", replacement: "\\Delta", options: "mA" - }, - {trigger: "@e", replacement: "\\epsilon", options: "mA" - }, - {trigger: ":e", replacement: "\\varepsilon", options: "mA" - }, - {trigger: "@z", replacement: "\\zeta", options: "mA" - }, - {trigger: "@t", replacement: "\\theta", options: "mA" - }, - {trigger: "@T", replacement: "\\Theta", options: "mA" - }, - {trigger: ":t", replacement: "\\vartheta", options: "mA" - }, - {trigger: "@i", replacement: "\\iota", options: "mA" - }, - {trigger: "@k", replacement: "\\kappa", options: "mA" - }, - {trigger: "@l", replacement: "\\lambda", options: "mA" - }, - {trigger: "@L", replacement: "\\Lambda", options: "mA" - }, - {trigger: "@s", replacement: "\\sigma", options: "mA" - }, - {trigger: "@S", replacement: "\\Sigma", options: "mA" - }, - {trigger: "@u", replacement: "\\upsilon", options: "mA" - }, - {trigger: "@U", replacement: "\\Upsilon", options: "mA" - }, - {trigger: "@o", replacement: "\\omega", options: "mA" - }, - {trigger: "@O", replacement: "\\Omega", options: "mA" - }, - {trigger: "ome", replacement: "\\omega", options: "mA" - }, - {trigger: "Ome", replacement: "\\Omega", options: "mA" - }, - // Text environment - {trigger: "text", replacement: "\\text{$0}$1", options: "mA" - }, - {trigger: "\"", replacement: "\\text{$0}$1", options: "mA" - }, - // Basic operations - {trigger: "sr", replacement: "^{2}", options: "mA" - }, - {trigger: "cb", replacement: "^{3}", options: "mA" - }, - {trigger: "pow", replacement: "^{$0}$1", options: "mA" - }, - {trigger: "_", replacement: "_{$0}$1", options: "mA" - }, - {trigger: "sb", replacement: "_{$0}$1", options: "mA" - }, - {trigger: "sts", replacement: "_\\text{$0}", options: "mA" - }, - {trigger: "sq", replacement: "\\sqrt{ $0 }$1", options: "mA" - }, - {trigger: "//", replacement: "\\frac{$0}{$1}$2", options: "mA" - }, - {trigger: "ee", replacement: "e^{ $0 }$1", options: "mA" - }, - {trigger: "invs", replacement: "^{-1}", options: "mA" - }, - {trigger: /([A-Za-z - ])(\d)/, replacement: "[[0]]_{[[1]]}", options: "rmA", description: "Auto letter subscript", priority: -1 - }, - {trigger: /([^\\ - ])(exp|log|ln)/, replacement: "[[0]]\\[[1]]", options: "rmA" - }, - {trigger: "conj", replacement: "^{*}", options: "mA" - }, - {trigger: "Re", replacement: "\\mathrm{Re}", options: "mA" - }, - {trigger: "Im", replacement: "\\mathrm{Im}", options: "mA" - }, - {trigger: "bf", replacement: "\\mathbf{$0}", options: "mA" - }, - {trigger: "rm", replacement: "\\mathrm{$0}$1", options: "mA" - }, - // Linear algebra - {trigger: /([^\\ - ])(det)/, replacement: "[[0]]\\[[1]]", options: "rmA" - }, - {trigger: "trace", replacement: "\\mathrm{Tr}", options: "mA" - }, - // More operations - {trigger: "([a-zA-Z])hat", replacement: "\\hat{[[0]]}", options: "rmA" - }, - {trigger: "([a-zA-Z])bar", replacement: "\\bar{[[0]]}", options: "rmA" - }, - {trigger: "([a-zA-Z])dot", replacement: "\\dot{[[0]]}", options: "rmA", priority: -1 - }, - {trigger: "([a-zA-Z])ddot", replacement: "\\ddot{[[0]]}", options: "rmA", priority: 1 - }, - {trigger: "([a-zA-Z])tilde", replacement: "\\tilde{[[0]]}", options: "rmA" - }, - {trigger: "([a-zA-Z])und", replacement: "\\underline{[[0]]}", options: "rmA" - }, - {trigger: "([a-zA-Z])vec", replacement: "\\vec{[[0]]}", options: "rmA" - }, - {trigger: "([a-zA-Z]),\\.", replacement: "\\mathbf{[[0]]}", options: "rmA" - }, - {trigger: "([a-zA-Z])\\.,", replacement: "\\mathbf{[[0]]}", options: "rmA" - }, - {trigger: "\\\\(${GREEK}),\\.", replacement: "\\boldsymbol{\\[[0]]}", options: "rmA" - }, - {trigger: "\\\\(${GREEK})\\.,", replacement: "\\boldsymbol{\\[[0]]}", options: "rmA" - }, - {trigger: "hat", replacement: "\\hat{$0}$1", options: "mA" - }, - {trigger: "bar", replacement: "\\bar{$0}$1", options: "mA" - }, - {trigger: "dot", replacement: "\\dot{$0}$1", options: "mA", priority: -1 - }, - {trigger: "ddot", replacement: "\\ddot{$0}$1", options: "mA" - }, - {trigger: "cdot", replacement: "\\cdot", options: "mA" - }, - {trigger: "tilde", replacement: "\\tilde{$0}$1", options: "mA" - }, - {trigger: "und", replacement: "\\underline{$0}$1", options: "mA" - }, - {trigger: "vec", replacement: "\\vec{$0}$1", options: "mA" - }, - // More auto letter subscript - {trigger: /([A-Za-z - ])_(\d\d)/, replacement: "[[0]]_{[[1]]}", options: "rmA" - }, - {trigger: /\\hat{([A-Za-z - ]) - }(\d)/, replacement: "\\hat{[[0]]}_{[[1]]}", options: "rmA" - }, - {trigger: /\\vec{([A-Za-z - ]) - }(\d)/, replacement: "\\vec{[[0]]}_{[[1]]}", options: "rmA" - }, - {trigger: /\\mathbf{([A-Za-z - ]) - }(\d)/, replacement: "\\mathbf{[[0]]}_{[[1]]}", options: "rmA" - }, - {trigger: "xnn", replacement: "x_{n}", options: "mA" - }, - {trigger: "xii", replacement: "x_{i}", options: "mA" - }, - {trigger: "xjj", replacement: "x_{j}", options: "mA" - }, - {trigger: "xp1", replacement: "x_{n+1}", options: "mA" - }, - {trigger: "ynn", replacement: "y_{n}", options: "mA" - }, - {trigger: "yii", replacement: "y_{i}", options: "mA" - }, - {trigger: "yjj", replacement: "y_{j}", options: "mA" - }, - // Symbols - {trigger: "ooo", replacement: "\\infty", options: "mA" - }, - {trigger: "sum", replacement: "\\sum", options: "mA" - }, - {trigger: "prod", replacement: "\\prod", options: "mA" - }, - {trigger: "\\sum", replacement: "\\sum_{${0:i}=${1:1}}^{${2:N}} $3", options: "m" - }, - {trigger: "\\prod", replacement: "\\prod_{${0:i}=${1:1}}^{${2:N}} $3", options: "m" - }, - {trigger: "lim", replacement: "\\lim_{ ${0:n} \\to ${1:\\infty} } $2", options: "mA" - }, - {trigger: "+-", replacement: "\\pm", options: "mA" - }, - {trigger: "-+", replacement: "\\mp", options: "mA" - }, - {trigger: "...", replacement: "\\dots", options: "mA" - }, - {trigger: "nabl", replacement: "\\nabla", options: "mA" - }, - {trigger: "del", replacement: "\\nabla", options: "mA" - }, - {trigger: "xx", replacement: "\\times", options: "mA" - }, - {trigger: "**", replacement: "\\cdot", options: "mA" - }, - {trigger: "para", replacement: "\\parallel", options: "mA" - }, - {trigger: "===", replacement: "\\equiv", options: "mA" - }, - {trigger: "!=", replacement: "\\neq", options: "mA" - }, - {trigger: ">=", replacement: "\\geq", options: "mA" - }, - {trigger: "<=", replacement: "\\leq", options: "mA" - }, - {trigger: ">>", replacement: "\\gg", options: "mA" - }, - {trigger: "<<", replacement: "\\ll", options: "mA" - }, - {trigger: "simm", replacement: "\\sim", options: "mA" - }, - {trigger: "sim=", replacement: "\\simeq", options: "mA" - }, - {trigger: "prop", replacement: "\\propto", options: "mA" - }, - {trigger: "<->", replacement: "\\leftrightarrow ", options: "mA" - }, - {trigger: "->", replacement: "\\to", options: "mA" - }, - {trigger: "!>", replacement: "\\mapsto", options: "mA" - }, - {trigger: "=>", replacement: "\\implies", options: "mA" - }, - {trigger: "=<", replacement: "\\impliedby", options: "mA" - }, - {trigger: "and", replacement: "\\cap", options: "mA" - }, - {trigger: "orr", replacement: "\\cup", options: "mA" - }, - {trigger: "inn", replacement: "\\in", options: "mA" - }, - {trigger: "notin", replacement: "\\not\\in", options: "mA" - }, - {trigger: "\\\\\\", replacement: "\\setminus", options: "mA" - }, - {trigger: "sub=", replacement: "\\subseteq", options: "mA" - }, - {trigger: "sup=", replacement: "\\supseteq", options: "mA" - }, - {trigger: "eset", replacement: "\\emptyset", options: "mA" - }, - {trigger: "set", replacement: "\\{ $0 \\}$1", options: "mA" - }, - {trigger: "e\\xi sts", replacement: "\\exists", options: "mA", priority: 1 - }, - {trigger: "LL", replacement: "\\mathcal{L}", options: "mA" - }, - {trigger: "HH", replacement: "\\mathcal{H}", options: "mA" - }, - {trigger: "CC", replacement: "\\mathbb{C}", options: "mA" - }, - {trigger: "RR", replacement: "\\mathbb{R}", options: "mA" - }, - {trigger: "ZZ", replacement: "\\mathbb{Z}", options: "mA" - }, - {trigger: "NN", replacement: "\\mathbb{N}", options: "mA" - }, - // Handle spaces and backslashes - // Snippet variables can be used as shortcuts when writing snippets. - // For example, ${GREEK} below is shorthand for "alpha|beta|gamma|Gamma|delta|..." - // You can edit snippet variables under the Advanced snippet settings section. - {trigger: "([^\\\\])(${GREEK})", replacement: "[[0]]\\[[1]]", options: "rmA", description: "Add backslash before Greek letters" - }, - {trigger: "([^\\\\])(${SYMBOL})", replacement: "[[0]]\\[[1]]", options: "rmA", description: "Add backslash before symbols" - }, - // Insert space after Greek letters and symbols - {trigger: "\\\\(${GREEK}|${SYMBOL}|${MORE_SYMBOLS})([A-Za-z])", replacement: "\\[[0]] [[1]]", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) sr", replacement: "\\[[0]]^{2}", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) cb", replacement: "\\[[0]]^{3}", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) rd", replacement: "\\[[0]]^{$0}$1", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) hat", replacement: "\\hat{\\[[0]]}", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) dot", replacement: "\\dot{\\[[0]]}", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) bar", replacement: "\\bar{\\[[0]]}", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) vec", replacement: "\\vec{\\[[0]]}", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) tilde", replacement: "\\tilde{\\[[0]]}", options: "rmA" - }, - {trigger: "\\\\(${GREEK}|${SYMBOL}) und", replacement: "\\underline{\\[[0]]}", options: "rmA" - }, - // Derivatives and integrals - {trigger: "par", replacement: "\\frac{ \\partial ${0:y} }{ \\partial ${1:x} } $2", options: "m" - }, - {trigger: /pa([A-Za-z - ])([A-Za-z - ])/, replacement: "\\frac{ \\partial [[0]] }{ \\partial [[1]] } ", options: "rm" - }, - {trigger: "ddt", replacement: "\\frac{d}{dt} ", options: "mA" - }, - {trigger: /([^\\ - ])int/, replacement: "[[0]]\\int", options: "mA", priority: -1 - }, - {trigger: "\\int", replacement: "\\int $0 \\, d${1:x} $2", options: "m" - }, - {trigger: "dint", replacement: "\\int_{${0:0}}^{${1:1}} $2 \\, d${3:x} $4", options: "mA" - }, - {trigger: "oint", replacement: "\\oint", options: "mA" - }, - {trigger: "iint", replacement: "\\iint", options: "mA" - }, - {trigger: "iiint", replacement: "\\iiint", options: "mA" - }, - {trigger: "oinf", replacement: "\\int_{0}^{\\infty} $0 \\, d${1:x} $2", options: "mA" - }, - {trigger: "infi", replacement: "\\int_{-\\infty}^{\\infty} $0 \\, d${1:x} $2", options: "mA" - }, - // Trigonometry - {trigger: /([^\\ - ])(arcsin|sin|arccos|cos|arctan|tan|csc|sec|cot)/, replacement: "[[0]]\\[[1]]", options: "rmA", description: "Add backslash before trig funcs" - }, - {trigger: /\\(arcsin|sin|arccos|cos|arctan|tan|csc|sec|cot)([A-Za-gi-z - ])/, - replacement: "\\[[0]] [[1]]", options: "rmA", - description: "Add space after trig funcs. Skips letter h to allow sinh, cosh, etc." - }, - {trigger: /\\(sinh|cosh|tanh|coth)([A-Za-z - ])/, - replacement: "\\[[0]] [[1]]", options: "rmA", - description: "Add space after hyperbolic trig funcs" - }, - // Visual operations - {trigger: "U", replacement: "\\underbrace{ ${VISUAL} }_{ $0 }", options: "mA" - }, - {trigger: "O", replacement: "\\overbrace{ ${VISUAL} }^{ $0 }", options: "mA" - }, - {trigger: "B", replacement: "\\underset{ $0 }{ ${VISUAL} }", options: "mA" - }, - {trigger: "C", replacement: "\\cancel{ ${VISUAL} }", options: "mA" - }, - {trigger: "K", replacement: "\\cancelto{ $0 }{ ${VISUAL} }", options: "mA" - }, - {trigger: "S", replacement: "\\sqrt{ ${VISUAL} }", options: "mA" - }, - // Physics - {trigger: "kbt", replacement: "k_{B}T", options: "mA" - }, - {trigger: "msun", replacement: "M_{\\odot}", options: "mA" - }, - // Quantum mechanics - {trigger: "dag", replacement: "^{\\dagger}", options: "mA" - }, - {trigger: "o+", replacement: "\\oplus ", options: "mA" - }, - {trigger: "ox", replacement: "\\otimes ", options: "mA" - }, - {trigger: "bra", replacement: "\\bra{$0} $1", options: "mA" - }, - {trigger: "ket", replacement: "\\ket{$0} $1", options: "mA" - }, - {trigger: "brk", replacement: "\\braket{ $0 | $1 } $2", options: "mA" - }, - {trigger: "outer", replacement: "\\ket{${0:\\psi}} \\bra{${0:\\psi}} $1", options: "mA" - }, - // Chemistry - {trigger: "pu", replacement: "\\pu{ $0 }", options: "mA" - }, - {trigger: "cee", replacement: "\\ce{ $0 }", options: "mA" - }, - {trigger: "he4", replacement: "{}^{4}_{2}He ", options: "mA" - }, - {trigger: "he3", replacement: "{}^{3}_{2}He ", options: "mA" - }, - {trigger: "iso", replacement: "{}^{${0:4}}_{${1:2}}${2:He}", options: "mA" - }, - // Environments - {trigger: "pmat", replacement: "\\begin{pmatrix}\n$0\n\\end{pmatrix}", options: "MA" - }, - {trigger: "bmat", replacement: "\\begin{bmatrix}\n$0\n\\end{bmatrix}", options: "MA" - }, - {trigger: "Bmat", replacement: "\\begin{Bmatrix}\n$0\n\\end{Bmatrix}", options: "MA" - }, - {trigger: "vmat", replacement: "\\begin{vmatrix}\n$0\n\\end{vmatrix}", options: "MA" - }, - {trigger: "Vmat", replacement: "\\begin{Vmatrix}\n$0\n\\end{Vmatrix}", options: "MA" - }, - {trigger: "matrix", replacement: "\\begin{matrix}\n$0\n\\end{matrix}", options: "MA" - }, - {trigger: "pmat", replacement: "\\begin{pmatrix}$0\\end{pmatrix}", options: "nA" - }, - {trigger: "bmat", replacement: "\\begin{bmatrix}$0\\end{bmatrix}", options: "nA" - }, - {trigger: "Bmat", replacement: "\\begin{Bmatrix}$0\\end{Bmatrix}", options: "nA" - }, - {trigger: "vmat", replacement: "\\begin{vmatrix}$0\\end{vmatrix}", options: "nA" - }, - {trigger: "Vmat", replacement: "\\begin{Vmatrix}$0\\end{Vmatrix}", options: "nA" - }, - {trigger: "matrix", replacement: "\\begin{matrix}$0\\end{matrix}", options: "nA" - }, - {trigger: "cases", replacement: "\\begin{cases}\n$0\n\\end{cases}", options: "mA" - }, - {trigger: "align", replacement: "\\begin{align}\n$0\n\\end{align}", options: "mA" - }, - {trigger: "array", replacement: "\\begin{array}\n$0\n\\end{array}", options: "mA" - }, - // Brackets - {trigger: "avg", replacement: "\\langle $0 \\rangle $1", options: "mA" - }, - {trigger: "norm", replacement: "\\lvert $0 \\rvert $1", options: "mA", priority: 1 - }, - {trigger: "Norm", replacement: "\\lVert $0 \\rVert $1", options: "mA", priority: 1 - }, - {trigger: "ceil", replacement: "\\lceil $0 \\rceil $1", options: "mA" - }, - {trigger: "floor", replacement: "\\lfloor $0 \\rfloor $1", options: "mA" - }, - {trigger: "mod", replacement: "|$0|$1", options: "mA" - }, - {trigger: "(", replacement: "(${VISUAL})", options: "mA" - }, - {trigger: "[", replacement: "[${VISUAL}]", options: "mA" - }, - {trigger: "{", replacement: "{${VISUAL}}", options: "mA" - }, - {trigger: "(", replacement: "($0)$1", options: "mA" - }, - {trigger: "{", replacement: "{$0}$1", options: "mA" - }, - {trigger: "[", replacement: "[$0]$1", options: "mA" - }, - {trigger: "lr(", replacement: "\\left( $0 \\right) $1", options: "mA" - }, - {trigger: "lr{", replacement: "\\left\\{ $0 \\right\\} $1", options: "mA" - }, - {trigger: "lr[", replacement: "\\left[ $0 \\right] $1", options: "mA" - }, - {trigger: "lr|", replacement: "\\left| $0 \\right| $1", options: "mA" - }, - {trigger: "lra", replacement: "\\left< $0 \\right> $1", options: "mA" - }, - // User defined - {trigger: "b\\otimes ed", replacement: "\\boxed{$1}", options: "mA" - }, - {trigger: "\\disp", replacement: "\\displaystyle $0", options: "mA" - }, - // Misc - // Automatically convert standalone letters in text to math (except a, A, I). - // (Un-comment to enable) - // {trigger: /([^'])\b([B-HJ-Zb-z])\b([\n\s.,?!:'])/, replacement: "[[0]]$[[1]]$[[2]]", options: "tA"}, - // Automatically convert Greek letters in text to math. - // {trigger: "(${GREEK})([\\n\\s.,?!:'])", replacement: "$\\[[0]]$[[1]]", options: "rtAw"}, - // Automatically convert text of the form "x=2" and "x=n+1" to math. - // {trigger: /([A-Za-z]=\d+)([\n\s.,?!:'])/, replacement: "$[[0]]$[[1]]", options: "rtAw"}, - // {trigger: /([A-Za-z]=[A-Za-z][+-]\d+)([\n\s.,?!:'])/, replacement: "$[[0]]$[[1]]", options: "tAw"}, - // Snippet replacements can have placeholders. - {trigger: "tayl", replacement: "${0:f}(${1:x} + ${2:h}) = ${0:f}(${1:x}) + ${0:f}'(${1:x})${2:h} + ${0:f}''(${1:x}) \\frac{${2:h}^{2}}{2!} + \\dots$3", options: "mA", description: "Taylor expansion" - }, - // Snippet replacements can also be JavaScript functions. - // See the documentation for more information. - {trigger: /iden(\d)/, replacement: (match) => { - const n = match[ - 1 - ]; - - let arr = []; - for (let j = 0; j < n; j++) { - arr[j - ] = []; - for (let i = 0; i < n; i++) { - arr[j - ][i - ] = (i === j) ? 1 : 0; - } - } - - let output = arr.map(el => el.join(" & ")).join(" \\\\\n"); - output = `\\begin{pmatrix - }\n${output - }\n\\end{pmatrix - }`; - return output; - }, options: "mA", description: "N x N identity matrix" - }, -] diff --git a/tools/obsidian/obsidian.vimrc b/tools/obsidian/obsidian.vimrc deleted file mode 100644 index db4a0cc..0000000 --- a/tools/obsidian/obsidian.vimrc +++ /dev/null @@ -1,111 +0,0 @@ -" Put this in OBSIDIAN_VAULT/.obsidian.vimrc -set clipboard=unnamed " Sync with System Clipboard - -" Colemak vim-like -noremap n j -noremap e k -noremap i l - -" Similar position to i -noremap l i -noremap L I -" ne[k]st -noremap k n -noremap K N -" [j]ump -noremap j e -noremap J E - -" Y to yank to end of line -noremap Y y$ - -""" Visual mode surrounding -exmap addbold obcommand editor:toogle-bold -exmap additalic obcommand editor:toogle-italic -exmap addhighlight obcommand editor:toogle-highlight -exmap addcode obcommand editor:toogle-code -exmap adddel obcommand editor:toogle-strikethrough -vnoremap ~ :adddel " Add delete to selection -vnoremap ` c`"` " editor:toogle-code is buggy -vnoremap * :addbold " Add bold to selection -vnoremap _ :additalic " Add italic to selection -vnoremap = :addhighlight " Add highlight to selection - -""" Commands -exmap write editor:save-file -exmap w editor:save-file -exmap q workspace:close-tab-group - -exmap prevtab obcommand workspace:previous-tab -exmap nexttab obcommand workspace:next-tab -nnoremap H :prevtab -nnoremap I :nexttab - -exmap prevhist obcommand app:go-back -exmap nexthist obcommand app:go-forward -nnoremap gh :prevhist -nnoremap gi :nexthist - -exmap reload :source .obsidian.vimrc - -unmap -exmap vsplit obcommand workspace:split-vertical -exmap hsplit obcommand workspace:split-horizontal -map | :vsplit -map - :hsplit -" map bd - -exmap chat obcommand obsidian-custom-frames:open-custom-frames-chatgpt -map ai :chat - - - -""" g-commands -exmap tsource obcommand editor:toggle-source -exmap tpreview obcommand markdown:toggle-preview -nnoremap gs :tsource -nnoremap gp :tpreview - -exmap wl obcommand editor:focus-left -exmap wr obcommand editor:focus-right -exmap wt obcommand editor:focus-top -exmap wb obcommand editor:focus-bottom - -map h :wl -map i :wr -map n :wb -map e :wt - -exmap FoldToggle obcommand editor:toggle-fold -exmap FoldLess obcommand editor:fold-less -exmap FoldMore obcommand editor:fold-more -exmap FoldAll obcommand editor:fold-all -exmap UnfoldAll obcommand editor:unfold-all -nnoremap za :FoldToggle -nnoremap zr :FoldLess -nnoremap zm :FoldMore -nnoremap zM :FoldAll -nnoremap zR :UnfoldAll - -exmap switchany obcommand darlal-switcher-plus:switcher-plus:open -exmap switchcmd obcommand darlal-switcher-plus:switcher-plus:open-commands -exmap switchrecent obcommand darlal-switcher-plus:switcher-plus:open-related-items -map :switchany -map : :switchcmd -map fr :switchrecent - -" b : +buffer -exmap bd obcommand -exmap DeleteOthers obcommand workspace:close-others -map bd :bd -map bX :DeleteOthers - -" m : +major/markdown -exmap addCallout obcommand editor:insert-callout -map mb :addbold -map mi :additalic -map mc :addcode -map md :adddel -map mh :addhighlight -map mp :tpreview -map mo :addCallout From 295f94ddb9796dcd67d58729d321e187a7b12c43 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 12:22:41 +0100 Subject: [PATCH 03/48] chezmoi: awesome, fish, screen, wezterm, yazi --- .chezmoiignore | 2 + .gitignore | 6 + dot_config/awesome/rc.lua | 604 ++++++++++++++++++ dot_config/fish/dot_gitignore | 4 - .../screen/+colemak.screenrc | 0 {tools => dot_config}/screen/+qwerty.screenrc | 0 {tools => dot_config}/screen/screenrc | 0 {tools => dot_config}/wezterm/appearance.lua | 0 {tools => dot_config}/wezterm/color.lua | 0 .../wezterm/dot_gitignore | 0 .../wezterm/keymaps/colemak.lua | 0 .../wezterm/keymaps/init.lua | 0 .../wezterm/keymaps/leaders.lua | 0 .../wezterm/keymaps/qwerty.lua | 0 {tools => dot_config}/wezterm/launcher.lua | 0 {tools => dot_config}/wezterm/misc.lua | 0 {tools => dot_config}/wezterm/tab.lua | 0 {tools => dot_config}/wezterm/utils.lua | 0 {tools => dot_config}/wezterm/wezterm.lua | 0 {tools => dot_config}/yazi/dark.toml | 0 .../yazi/dot_gitignore | 0 {tools => dot_config}/yazi/init.lua | 0 {tools => dot_config}/yazi/keymap.toml | 0 {tools => dot_config}/yazi/light.toml | 0 dot_config/yazi/symlink_theme.toml | 1 + {tools => dot_config}/yazi/yazi.toml | 0 tools/yazi/theme.toml | 1 - 27 files changed, 613 insertions(+), 5 deletions(-) create mode 100644 dot_config/awesome/rc.lua delete mode 100644 dot_config/fish/dot_gitignore rename {tools => dot_config}/screen/+colemak.screenrc (100%) rename {tools => dot_config}/screen/+qwerty.screenrc (100%) rename {tools => dot_config}/screen/screenrc (100%) rename {tools => dot_config}/wezterm/appearance.lua (100%) rename {tools => dot_config}/wezterm/color.lua (100%) rename tools/wezterm/.gitignore => dot_config/wezterm/dot_gitignore (100%) rename {tools => dot_config}/wezterm/keymaps/colemak.lua (100%) rename {tools => dot_config}/wezterm/keymaps/init.lua (100%) rename {tools => dot_config}/wezterm/keymaps/leaders.lua (100%) rename {tools => dot_config}/wezterm/keymaps/qwerty.lua (100%) rename {tools => dot_config}/wezterm/launcher.lua (100%) rename {tools => dot_config}/wezterm/misc.lua (100%) rename {tools => dot_config}/wezterm/tab.lua (100%) rename {tools => dot_config}/wezterm/utils.lua (100%) rename {tools => dot_config}/wezterm/wezterm.lua (100%) rename {tools => dot_config}/yazi/dark.toml (100%) rename tools/yazi/.gitignore => dot_config/yazi/dot_gitignore (100%) rename {tools => dot_config}/yazi/init.lua (100%) rename {tools => dot_config}/yazi/keymap.toml (100%) rename {tools => dot_config}/yazi/light.toml (100%) create mode 100644 dot_config/yazi/symlink_theme.toml rename {tools => dot_config}/yazi/yazi.toml (100%) delete mode 120000 tools/yazi/theme.toml diff --git a/.chezmoiignore b/.chezmoiignore index 9f409eb..a0cb850 100644 --- a/.chezmoiignore +++ b/.chezmoiignore @@ -1,11 +1,13 @@ # .chezmoiignore + # macOS only {{ if ne .chezmoi.os "darwin" -}} {{ end -}} # Linux only {{ if ne .chezmoi.os "linux" -}} +dot_config/awesome {{ end -}} # Windows only diff --git a/.gitignore b/.gitignore index f0d1635..7b20e54 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,12 @@ # Log *.log +# fish +dot_config/fish/fish_variables +dot_config/fish/completions +dot_config/fish/functions/br.fish +dot_config/fish/functions/dotenv.fish + # Private Files *private* .private.env.* diff --git a/dot_config/awesome/rc.lua b/dot_config/awesome/rc.lua new file mode 100644 index 0000000..2633e92 --- /dev/null +++ b/dot_config/awesome/rc.lua @@ -0,0 +1,604 @@ +-- If LuaRocks is installed, make sure that packages installed through it are +-- found (e.g. lgi). If LuaRocks is not installed, do nothing. +pcall(require, "luarocks.loader") + +-- Standard awesome library +local gears = require("gears") +local awful = require("awful") +require("awful.autofocus") +-- Widget and layout library +local wibox = require("wibox") +-- Theme handling library +local beautiful = require("beautiful") +-- Notification library +local naughty = require("naughty") +local menubar = require("menubar") +local hotkeys_popup = require("awful.hotkeys_popup") +-- Enable hotkeys help widget for VIM and other apps +-- when client with a matching name is opened: +require("awful.hotkeys_popup.keys") + +-- {{{ Error handling +-- Check if awesome encountered an error during startup and fell back to +-- another config (This code will only ever execute for the fallback config) +if awesome.startup_errors then + naughty.notify({ + preset = naughty.config.presets.critical, + title = "Oops, there were errors during startup!", + text = awesome.startup_errors, + }) +end + +-- Handle runtime errors after startup +do + local in_error = false + awesome.connect_signal("debug::error", function(err) + -- Make sure we don't go into an endless error loop + if in_error then + return + end + in_error = true + + naughty.notify({ + preset = naughty.config.presets.critical, + title = "Oops, an error happened!", + text = tostring(err), + }) + in_error = false + end) +end +-- }}} + +-- {{{ Variable definitions +-- Themes define colours, icons, font and wallpapers. +beautiful.init(gears.filesystem.get_themes_dir() .. "default/theme.lua") + +-- This is used later as the default terminal and editor to run. +terminal = "wezterm" +editor = os.getenv("EDITOR") or "vim" +editor_cmd = terminal .. " -e " .. editor + +-- Default modkey. +-- Usually, Mod4 is the key with a logo between Control and Alt. +-- If you do not like this or do not have such a key, +-- I suggest you to remap Mod4 to another key using xmodmap or other tools. +-- However, you can use another modifier like Mod1, but it may interact with others. +modkey = "Mod4" + +-- Table of layouts to cover with awful.layout.inc, order matters. +awful.layout.layouts = { + awful.layout.suit.tile, -- Tile by default + awful.layout.suit.floating, + awful.layout.suit.tile.left, + awful.layout.suit.tile.bottom, + awful.layout.suit.tile.top, + awful.layout.suit.fair, + awful.layout.suit.fair.horizontal, + awful.layout.suit.spiral, + awful.layout.suit.spiral.dwindle, + awful.layout.suit.max, + awful.layout.suit.max.fullscreen, + awful.layout.suit.magnifier, + awful.layout.suit.corner.nw, + -- awful.layout.suit.corner.ne, + -- awful.layout.suit.corner.sw, + -- awful.layout.suit.corner.se, +} +-- }}} + +-- {{{ Menu +-- Create a launcher widget and a main menu +myawesomemenu = { + { + "hotkeys", + function() + hotkeys_popup.show_help(nil, awful.screen.focused()) + end, + }, + { "manual", terminal .. " -e man awesome" }, + { "edit config", editor_cmd .. " " .. awesome.conffile }, + { "restart", awesome.restart }, + { + "quit", + function() + awesome.quit() + end, + }, +} + +mymainmenu = awful.menu({ + items = { + { "awesome", myawesomemenu, beautiful.awesome_icon }, + { "open terminal", terminal }, + }, +}) + +mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon, menu = mymainmenu }) + +-- Menubar configuration +menubar.utils.terminal = terminal -- Set the terminal for applications that require it +-- }}} + +-- Keyboard map indicator and switcher +mykeyboardlayout = awful.widget.keyboardlayout() + +-- {{{ Wibar +-- Create a textclock widget +mytextclock = wibox.widget.textclock() + +-- Create a wibox for each screen and add it +local taglist_buttons = gears.table.join( + awful.button({}, 1, function(t) + t:view_only() + end), + awful.button({ modkey }, 1, function(t) + if client.focus then + client.focus:move_to_tag(t) + end + end), + awful.button({}, 3, awful.tag.viewtoggle), + awful.button({ modkey }, 3, function(t) + if client.focus then + client.focus:toggle_tag(t) + end + end), + awful.button({}, 4, function(t) + awful.tag.viewnext(t.screen) + end), + awful.button({}, 5, function(t) + awful.tag.viewprev(t.screen) + end) +) + +local tasklist_buttons = gears.table.join( + awful.button({}, 1, function(c) + if c == client.focus then + c.minimized = true + else + c:emit_signal("request::activate", "tasklist", { raise = true }) + end + end), + awful.button({}, 3, function() + awful.menu.client_list({ theme = { width = 250 } }) + end), + awful.button({}, 4, function() + awful.client.focus.byidx(1) + end), + awful.button({}, 5, function() + awful.client.focus.byidx(-1) + end) +) + +local function set_wallpaper(s) + -- Wallpaper + if beautiful.wallpaper then + local wallpaper = beautiful.wallpaper + -- If wallpaper is a function, call it with the screen + if type(wallpaper) == "function" then + wallpaper = wallpaper(s) + end + gears.wallpaper.maximized(wallpaper, s, true) + end +end + +-- Re-set wallpaper when a screen's geometry changes (e.g. different resolution) +screen.connect_signal("property::geometry", set_wallpaper) + +awful.screen.connect_for_each_screen(function(s) + -- Wallpaper + set_wallpaper(s) + + -- Each screen has its own tag table. + awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[1]) + + -- Create a promptbox for each screen + s.mypromptbox = awful.widget.prompt() + -- Create an imagebox widget which will contain an icon indicating which layout we're using. + -- We need one layoutbox per screen. + s.mylayoutbox = awful.widget.layoutbox(s) + s.mylayoutbox:buttons(gears.table.join( + awful.button({}, 1, function() + awful.layout.inc(1) + end), + awful.button({}, 3, function() + awful.layout.inc(-1) + end), + awful.button({}, 4, function() + awful.layout.inc(1) + end), + awful.button({}, 5, function() + awful.layout.inc(-1) + end) + )) + -- Create a taglist widget + s.mytaglist = awful.widget.taglist({ + screen = s, + filter = awful.widget.taglist.filter.all, + buttons = taglist_buttons, + }) + + -- Create a tasklist widget + s.mytasklist = awful.widget.tasklist({ + screen = s, + filter = awful.widget.tasklist.filter.currenttags, + buttons = tasklist_buttons, + }) + + -- Create the wibox + s.mywibox = awful.wibar({ position = "top", screen = s }) + + -- Add widgets to the wibox + s.mywibox:setup({ + layout = wibox.layout.align.horizontal, + { -- Left widgets + layout = wibox.layout.fixed.horizontal, + mylauncher, + s.mytaglist, + s.mypromptbox, + }, + s.mytasklist, -- Middle widget + { -- Right widgets + layout = wibox.layout.fixed.horizontal, + mykeyboardlayout, + wibox.widget.systray(), + mytextclock, + s.mylayoutbox, + }, + }) +end) +-- }}} + +-- {{{ Mouse bindings +root.buttons(gears.table.join( + awful.button({}, 3, function() + mymainmenu:toggle() + end), + awful.button({}, 4, awful.tag.viewnext), + awful.button({}, 5, awful.tag.viewprev) +)) +-- }}} + +-- {{{ Key bindings +globalkeys = gears.table.join( + awful.key({ modkey }, "s", hotkeys_popup.show_help, { description = "show help", group = "awesome" }), + awful.key({ modkey }, "Left", awful.tag.viewprev, { description = "view previous", group = "tag" }), + awful.key({ modkey }, "Right", awful.tag.viewnext, { description = "view next", group = "tag" }), + awful.key({ modkey }, "Escape", awful.tag.history.restore, { description = "go back", group = "tag" }), + + awful.key({ modkey }, "n", function() + awful.client.focus.byidx(1) + end, { description = "focus next by index", group = "client" }), + awful.key({ modkey }, "e", function() + awful.client.focus.byidx(-1) + end, { description = "focus previous by index", group = "client" }), + awful.key({ modkey }, "w", function() + mymainmenu:show() + end, { description = "show main menu", group = "awesome" }), + + -- Layout manipulation + awful.key({ modkey, "Shift" }, "n", function() + awful.client.swap.byidx(1) + end, { description = "swap with next client by index", group = "client" }), + awful.key({ modkey, "Shift" }, "e", function() + awful.client.swap.byidx(-1) + end, { description = "swap with previous client by index", group = "client" }), + awful.key({ modkey, "Control" }, "n", function() + awful.screen.focus_relative(1) + end, { description = "focus the next screen", group = "screen" }), + awful.key({ modkey, "Control" }, "e", function() + awful.screen.focus_relative(-1) + end, { description = "focus the previous screen", group = "screen" }), + awful.key({ modkey }, "u", awful.client.urgent.jumpto, { description = "jump to urgent client", group = "client" }), + awful.key({ modkey }, "Tab", function() + awful.client.focus.history.previous() + if client.focus then + client.focus:raise() + end + end, { description = "go back", group = "client" }), + + -- Standard program + awful.key({ modkey }, "Return", function() + awful.spawn(terminal) + end, { description = "open a terminal", group = "launcher" }), + awful.key({ modkey, "Control" }, "r", awesome.restart, { description = "reload awesome", group = "awesome" }), + awful.key({ modkey, "Shift" }, "q", awesome.quit, { description = "quit awesome", group = "awesome" }), + + awful.key({ modkey }, "i", function() + awful.tag.incmwfact(0.05) + end, { description = "increase master width factor", group = "layout" }), + awful.key({ modkey }, "h", function() + awful.tag.incmwfact(-0.05) + end, { description = "decrease master width factor", group = "layout" }), + awful.key({ modkey, "Shift" }, "h", function() + awful.tag.incnmaster(1, nil, true) + end, { description = "increase the number of master clients", group = "layout" }), + awful.key({ modkey, "Shift" }, "i", function() + awful.tag.incnmaster(-1, nil, true) + end, { description = "decrease the number of master clients", group = "layout" }), + awful.key({ modkey, "Control" }, "h", function() + awful.tag.incncol(1, nil, true) + end, { description = "increase the number of columns", group = "layout" }), + awful.key({ modkey, "Control" }, "i", function() + awful.tag.incncol(-1, nil, true) + end, { description = "decrease the number of columns", group = "layout" }), + awful.key({ modkey }, "space", function() + awful.spawn.with_shell("albert show") + end, { description = "select next", group = "layout" }), + awful.key({ modkey, "Shift" }, "space", function() + awful.layout.inc(-1) + end, { description = "select previous", group = "layout" }), + + awful.key({ modkey, "Control" }, "k", function() + local c = awful.client.restore() + -- Focus restored client + if c then + c:emit_signal("request::activate", "key.unminimize", { raise = true }) + end + end, { description = "restore minimized", group = "client" }), + + -- Prompt + awful.key({ modkey }, "r", function() + awful.screen.focused().mypromptbox:run() + end, { description = "run prompt", group = "launcher" }), + + awful.key({ modkey }, "x", function() + awful.prompt.run({ + prompt = "Run Lua code: ", + textbox = awful.screen.focused().mypromptbox.widget, + exe_callback = awful.util.eval, + history_path = awful.util.get_cache_dir() .. "/history_eval", + }) + end, { description = "lua execute prompt", group = "awesome" }), + -- Menubar + awful.key({ modkey }, "p", function() + menubar.show() + end, { description = "show the menubar", group = "launcher" }) +) + +clientkeys = gears.table.join( + awful.key({ modkey }, "f", function(c) + c.fullscreen = not c.fullscreen + c:raise() + end, { description = "toggle fullscreen", group = "client" }), + awful.key({ modkey, "Shift" }, "c", function(c) + c:kill() + end, { description = "close", group = "client" }), + awful.key( + { modkey, "Control" }, + "space", + awful.client.floating.toggle, + { description = "toggle floating", group = "client" } + ), + awful.key({ modkey, "Control" }, "Return", function(c) + c:swap(awful.client.getmaster()) + end, { description = "move to master", group = "client" }), + awful.key({ modkey }, "o", function(c) + c:move_to_screen() + end, { description = "move to screen", group = "client" }), + awful.key({ modkey }, "t", function(c) + c.ontop = not c.ontop + end, { description = "toggle keep on top", group = "client" }), + awful.key({ modkey }, "k", function(c) + -- The client currently has the input focus, so it cannot be + -- minimized, since minimized clients can't have the focus. + c.minimized = true + end, { description = "minimize", group = "client" }), + awful.key({ modkey }, "m", function(c) + c.maximized = not c.maximized + c:raise() + end, { description = "(un)maximize", group = "client" }), + awful.key({ modkey, "Control" }, "m", function(c) + c.maximized_vertical = not c.maximized_vertical + c:raise() + end, { description = "(un)maximize vertically", group = "client" }), + awful.key({ modkey, "Shift" }, "m", function(c) + c.maximized_horizontal = not c.maximized_horizontal + c:raise() + end, { description = "(un)maximize horizontally", group = "client" }) +) + +-- Bind all key numbers to tags. +-- Be careful: we use keycodes to make it work on any keyboard layout. +-- This should map on the top row of your keyboard, usually 1 to 9. +for i = 1, 9 do + globalkeys = gears.table.join( + globalkeys, + -- View tag only. + awful.key({ modkey }, "#" .. i + 9, function() + local screen = awful.screen.focused() + local tag = screen.tags[i] + if tag then + tag:view_only() + end + end, { description = "view tag #" .. i, group = "tag" }), + -- Toggle tag display. + awful.key({ modkey, "Control" }, "#" .. i + 9, function() + local screen = awful.screen.focused() + local tag = screen.tags[i] + if tag then + awful.tag.viewtoggle(tag) + end + end, { description = "toggle tag #" .. i, group = "tag" }), + -- Move client to tag. + awful.key({ modkey, "Shift" }, "#" .. i + 9, function() + if client.focus then + local tag = client.focus.screen.tags[i] + if tag then + client.focus:move_to_tag(tag) + end + end + end, { description = "move focused client to tag #" .. i, group = "tag" }), + -- Toggle tag on focused client. + awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9, function() + if client.focus then + local tag = client.focus.screen.tags[i] + if tag then + client.focus:toggle_tag(tag) + end + end + end, { description = "toggle focused client on tag #" .. i, group = "tag" }) + ) +end + +clientbuttons = gears.table.join( + awful.button({}, 1, function(c) + c:emit_signal("request::activate", "mouse_click", { raise = true }) + end), + awful.button({ modkey }, 1, function(c) + c:emit_signal("request::activate", "mouse_click", { raise = true }) + awful.mouse.client.move(c) + end), + awful.button({ modkey }, 3, function(c) + c:emit_signal("request::activate", "mouse_click", { raise = true }) + awful.mouse.client.resize(c) + end) +) + +-- Set keys +root.keys(globalkeys) +-- }}} + +-- {{{ Rules +-- Rules to apply to new clients (through the "manage" signal). +awful.rules.rules = { + -- All clients will match this rule. + { + rule = {}, + properties = { + border_width = beautiful.border_width, + border_color = beautiful.border_normal, + focus = awful.client.focus.filter, + raise = true, + keys = clientkeys, + buttons = clientbuttons, + screen = awful.screen.preferred, + placement = awful.placement.no_overlap + awful.placement.no_offscreen, + }, + }, + + -- Floating clients. + { + rule_any = { + instance = { + "DTA", -- Firefox addon DownThemAll. + "copyq", -- Includes session name in class. + "pinentry", + }, + class = { + "Arandr", + "Blueman-manager", + "Gpick", + "Kruler", + "MessageWin", -- kalarm. + "Sxiv", + "Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size. + "Wpa_gui", + "veromix", + "xtightvncviewer", + }, + + -- Note that the name property shown in xprop might be set slightly after creation of the client + -- and the name shown there might not match defined rules here. + name = { + "Event Tester", -- xev. + }, + role = { + "AlarmWindow", -- Thunderbird's calendar. + "ConfigManager", -- Thunderbird's about:config. + "pop-up", -- e.g. Google Chrome's (detached) Developer Tools. + }, + }, + properties = { floating = true }, + }, + + -- Add titlebars to normal clients and dialogs + { rule_any = { type = { "normal", "dialog" } }, properties = { titlebars_enabled = true } }, + + -- Set Firefox to always map on the tag named "2" on screen 1. + -- { rule = { class = "Firefox" }, + -- properties = { screen = 1, tag = "2" } }, +} +-- }}} + +-- {{{ Signals +-- Signal function to execute when a new client appears. +client.connect_signal("manage", function(c) + -- Set the windows at the slave, + -- i.e. put it at the end of others instead of setting it master. + -- if not awesome.startup then awful.client.setslave(c) end + + if awesome.startup and not c.size_hints.user_position and not c.size_hints.program_position then + -- Prevent clients from being unreachable after screen count changes. + awful.placement.no_offscreen(c) + end +end) + +-- Add a titlebar if titlebars_enabled is set to true in the rules. +client.connect_signal("request::titlebars", function(c) + -- buttons for the titlebar + local buttons = gears.table.join( + awful.button({}, 1, function() + c:emit_signal("request::activate", "titlebar", { raise = true }) + awful.mouse.client.move(c) + end), + awful.button({}, 3, function() + c:emit_signal("request::activate", "titlebar", { raise = true }) + awful.mouse.client.resize(c) + end) + ) + + awful.titlebar(c):setup({ + { -- Left + awful.titlebar.widget.iconwidget(c), + buttons = buttons, + layout = wibox.layout.fixed.horizontal, + }, + { -- Middle + { -- Title + align = "center", + widget = awful.titlebar.widget.titlewidget(c), + }, + buttons = buttons, + layout = wibox.layout.flex.horizontal, + }, + { -- Right + awful.titlebar.widget.floatingbutton(c), + awful.titlebar.widget.maximizedbutton(c), + awful.titlebar.widget.stickybutton(c), + awful.titlebar.widget.ontopbutton(c), + awful.titlebar.widget.closebutton(c), + layout = wibox.layout.fixed.horizontal(), + }, + layout = wibox.layout.align.horizontal, + }) +end) + +-- Enable sloppy focus, so that focus follows mouse. +client.connect_signal("mouse::enter", function(c) + c:emit_signal("request::activate", "mouse_enter", { raise = false }) +end) + +client.connect_signal("focus", function(c) + c.border_color = beautiful.border_focus +end) +client.connect_signal("unfocus", function(c) + c.border_color = beautiful.border_normal +end) +-- }}} +-- + +autorun = true + +autorunApps = { + "fcitx5", + "albert", +} + +if autorun then + for app = 1, #autorunApps do + awful.spawn(autorunApps[app]) + end +end + +awful.spawn.with_shell("setxkbmap -option caps:escape") +awful.spawn.with_shell("feh --bg-fill ~/Pictures/Wallpaper/current.jpg") diff --git a/dot_config/fish/dot_gitignore b/dot_config/fish/dot_gitignore deleted file mode 100644 index 1784bfc..0000000 --- a/dot_config/fish/dot_gitignore +++ /dev/null @@ -1,4 +0,0 @@ -fish_variables -completions -functions/br.fish -functions/dotenv.fish diff --git a/tools/screen/+colemak.screenrc b/dot_config/screen/+colemak.screenrc similarity index 100% rename from tools/screen/+colemak.screenrc rename to dot_config/screen/+colemak.screenrc diff --git a/tools/screen/+qwerty.screenrc b/dot_config/screen/+qwerty.screenrc similarity index 100% rename from tools/screen/+qwerty.screenrc rename to dot_config/screen/+qwerty.screenrc diff --git a/tools/screen/screenrc b/dot_config/screen/screenrc similarity index 100% rename from tools/screen/screenrc rename to dot_config/screen/screenrc diff --git a/tools/wezterm/appearance.lua b/dot_config/wezterm/appearance.lua similarity index 100% rename from tools/wezterm/appearance.lua rename to dot_config/wezterm/appearance.lua diff --git a/tools/wezterm/color.lua b/dot_config/wezterm/color.lua similarity index 100% rename from tools/wezterm/color.lua rename to dot_config/wezterm/color.lua diff --git a/tools/wezterm/.gitignore b/dot_config/wezterm/dot_gitignore similarity index 100% rename from tools/wezterm/.gitignore rename to dot_config/wezterm/dot_gitignore diff --git a/tools/wezterm/keymaps/colemak.lua b/dot_config/wezterm/keymaps/colemak.lua similarity index 100% rename from tools/wezterm/keymaps/colemak.lua rename to dot_config/wezterm/keymaps/colemak.lua diff --git a/tools/wezterm/keymaps/init.lua b/dot_config/wezterm/keymaps/init.lua similarity index 100% rename from tools/wezterm/keymaps/init.lua rename to dot_config/wezterm/keymaps/init.lua diff --git a/tools/wezterm/keymaps/leaders.lua b/dot_config/wezterm/keymaps/leaders.lua similarity index 100% rename from tools/wezterm/keymaps/leaders.lua rename to dot_config/wezterm/keymaps/leaders.lua diff --git a/tools/wezterm/keymaps/qwerty.lua b/dot_config/wezterm/keymaps/qwerty.lua similarity index 100% rename from tools/wezterm/keymaps/qwerty.lua rename to dot_config/wezterm/keymaps/qwerty.lua diff --git a/tools/wezterm/launcher.lua b/dot_config/wezterm/launcher.lua similarity index 100% rename from tools/wezterm/launcher.lua rename to dot_config/wezterm/launcher.lua diff --git a/tools/wezterm/misc.lua b/dot_config/wezterm/misc.lua similarity index 100% rename from tools/wezterm/misc.lua rename to dot_config/wezterm/misc.lua diff --git a/tools/wezterm/tab.lua b/dot_config/wezterm/tab.lua similarity index 100% rename from tools/wezterm/tab.lua rename to dot_config/wezterm/tab.lua diff --git a/tools/wezterm/utils.lua b/dot_config/wezterm/utils.lua similarity index 100% rename from tools/wezterm/utils.lua rename to dot_config/wezterm/utils.lua diff --git a/tools/wezterm/wezterm.lua b/dot_config/wezterm/wezterm.lua similarity index 100% rename from tools/wezterm/wezterm.lua rename to dot_config/wezterm/wezterm.lua diff --git a/tools/yazi/dark.toml b/dot_config/yazi/dark.toml similarity index 100% rename from tools/yazi/dark.toml rename to dot_config/yazi/dark.toml diff --git a/tools/yazi/.gitignore b/dot_config/yazi/dot_gitignore similarity index 100% rename from tools/yazi/.gitignore rename to dot_config/yazi/dot_gitignore diff --git a/tools/yazi/init.lua b/dot_config/yazi/init.lua similarity index 100% rename from tools/yazi/init.lua rename to dot_config/yazi/init.lua diff --git a/tools/yazi/keymap.toml b/dot_config/yazi/keymap.toml similarity index 100% rename from tools/yazi/keymap.toml rename to dot_config/yazi/keymap.toml diff --git a/tools/yazi/light.toml b/dot_config/yazi/light.toml similarity index 100% rename from tools/yazi/light.toml rename to dot_config/yazi/light.toml diff --git a/dot_config/yazi/symlink_theme.toml b/dot_config/yazi/symlink_theme.toml new file mode 100644 index 0000000..1988c72 --- /dev/null +++ b/dot_config/yazi/symlink_theme.toml @@ -0,0 +1 @@ +light.toml diff --git a/tools/yazi/yazi.toml b/dot_config/yazi/yazi.toml similarity index 100% rename from tools/yazi/yazi.toml rename to dot_config/yazi/yazi.toml diff --git a/tools/yazi/theme.toml b/tools/yazi/theme.toml deleted file mode 120000 index 8235aba..0000000 --- a/tools/yazi/theme.toml +++ /dev/null @@ -1 +0,0 @@ -light.toml \ No newline at end of file From 81da25290678ab5188b4ece2308408baf885cf21 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 12:51:25 +0100 Subject: [PATCH 04/48] chezmoi: bash, ipython, sioyek, zed --- .chezmoiignore | 2 + {tools => dot_config}/bash/bash_aliases | 0 {tools => dot_config}/bash/bashrc | 0 {tools => dot_config}/bash/global.bashrc | 0 {tools => dot_config}/bash/profile | 0 {tools => dot_config}/bash/xdg-compat.sh | 0 .../ipython/dot_gitignore | 0 dot_config/ipython/profile_default/db/.keep | 0 .../ipython/profile_default/history.sqlite | Bin 0 -> 28672 bytes .../ipython/profile_default/ipython_config.py | 0 dot_config/ipython/profile_default/log/.keep | 0 .../ipython/profile_default/startup/README | 0 .../ipython/profile_default/startup/keymap.py | 0 .../profile_default/startup/magic_ps.py | 0 {tools => dot_config}/sioyek/keys_user.config | 0 .../sioyek/prefs_user.config | 0 dot_config/user-dirs.dirs | 15 + dot_config/user-dirs.locale | 1 + {tools => dot_config}/zed/keymap.json | 0 {tools => dot_config}/zed/keymap_backup.json | 0 {tools => dot_config}/zed/settings.json | 0 .../zed/snippets/executable_c.json | 0 {tools => dot_config}/zed/snippets/org.json | 0 platforms/linux/awesome/rc.lua | 604 ------------------ platforms/linux/etc/environment | 30 - platforms/linux/user-dirs.dirs | 9 - platforms/linux/user-dirs.locale | 1 - scripts/run_once_fish.sh | 3 + scripts/run_once_yazi.sh | 6 + scripts/run_once_zsh-install-plugins.sh | 10 + scripts/run_once_zsh-set-env.sh | 13 + symlink_dot_bashrc | 1 + 32 files changed, 51 insertions(+), 644 deletions(-) rename {tools => dot_config}/bash/bash_aliases (100%) rename {tools => dot_config}/bash/bashrc (100%) rename {tools => dot_config}/bash/global.bashrc (100%) rename {tools => dot_config}/bash/profile (100%) rename {tools => dot_config}/bash/xdg-compat.sh (100%) rename tools/ipython/.gitignore => dot_config/ipython/dot_gitignore (100%) create mode 100644 dot_config/ipython/profile_default/db/.keep create mode 100644 dot_config/ipython/profile_default/history.sqlite rename {tools => dot_config}/ipython/profile_default/ipython_config.py (100%) create mode 100644 dot_config/ipython/profile_default/log/.keep rename {tools => dot_config}/ipython/profile_default/startup/README (100%) rename {tools => dot_config}/ipython/profile_default/startup/keymap.py (100%) rename {tools => dot_config}/ipython/profile_default/startup/magic_ps.py (100%) rename {tools => dot_config}/sioyek/keys_user.config (100%) rename {tools => dot_config}/sioyek/prefs_user.config (100%) create mode 100644 dot_config/user-dirs.dirs create mode 100644 dot_config/user-dirs.locale rename {tools => dot_config}/zed/keymap.json (100%) rename {tools => dot_config}/zed/keymap_backup.json (100%) rename {tools => dot_config}/zed/settings.json (100%) rename tools/zed/snippets/c.json => dot_config/zed/snippets/executable_c.json (100%) mode change 100755 => 100644 rename {tools => dot_config}/zed/snippets/org.json (100%) delete mode 100644 platforms/linux/awesome/rc.lua delete mode 100644 platforms/linux/etc/environment delete mode 100644 platforms/linux/user-dirs.dirs delete mode 100644 platforms/linux/user-dirs.locale create mode 100644 scripts/run_once_fish.sh create mode 100644 scripts/run_once_yazi.sh create mode 100644 scripts/run_once_zsh-install-plugins.sh create mode 100644 scripts/run_once_zsh-set-env.sh create mode 100644 symlink_dot_bashrc diff --git a/.chezmoiignore b/.chezmoiignore index a0cb850..753a930 100644 --- a/.chezmoiignore +++ b/.chezmoiignore @@ -8,6 +8,8 @@ # Linux only {{ if ne .chezmoi.os "linux" -}} dot_config/awesome +dot_config/user-dirs.dirs +dot_config/user-dirs.locale {{ end -}} # Windows only diff --git a/tools/bash/bash_aliases b/dot_config/bash/bash_aliases similarity index 100% rename from tools/bash/bash_aliases rename to dot_config/bash/bash_aliases diff --git a/tools/bash/bashrc b/dot_config/bash/bashrc similarity index 100% rename from tools/bash/bashrc rename to dot_config/bash/bashrc diff --git a/tools/bash/global.bashrc b/dot_config/bash/global.bashrc similarity index 100% rename from tools/bash/global.bashrc rename to dot_config/bash/global.bashrc diff --git a/tools/bash/profile b/dot_config/bash/profile similarity index 100% rename from tools/bash/profile rename to dot_config/bash/profile diff --git a/tools/bash/xdg-compat.sh b/dot_config/bash/xdg-compat.sh similarity index 100% rename from tools/bash/xdg-compat.sh rename to dot_config/bash/xdg-compat.sh diff --git a/tools/ipython/.gitignore b/dot_config/ipython/dot_gitignore similarity index 100% rename from tools/ipython/.gitignore rename to dot_config/ipython/dot_gitignore diff --git a/dot_config/ipython/profile_default/db/.keep b/dot_config/ipython/profile_default/db/.keep new file mode 100644 index 0000000..e69de29 diff --git a/dot_config/ipython/profile_default/history.sqlite b/dot_config/ipython/profile_default/history.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..f10e87180153070004081b9c9b8a7ccd5c8053cf GIT binary patch literal 28672 zcmWFz^vNtqRY=P(%1ta$FlG>7U}R))P*7lCU|?lnU|?rJ0A>aT1{MUDff0#~i^P^5ylYor3q zP>5lgn$~P=;{KY944HW;sTIYAIhiG?@rk7+`CxuL#0r?d;tf&x?2Sgu?BdeWj7`?y zP=I;6dF*)sfDGfdC940TxJxXqe*JyCFZ8;6sHzyHij~? zi_6L~Hq}DRgv53+G}eomP)&i#!XpqCSXliJOH~C$nYoEYl?vIZl?sqpO)g5!P0cIO zQ7A4+EGkhb$;?eHE=kNSz@LIr^HPwMD&&>s#wX{d6vN!0qfnHZn^=?$juA~>1_lO3 z{(TJm`#|9~ibq3WGz3ONU^E0qLtr!nMnhmU1V%$(Gz3ONU^E0qLtr!n244s`FtRZ? z`f~6Z85o)B8d&NYnJX9?S(#W^nVRaE7?>DZS|ZCBf@Li9%q=X842`r646FDI&Gz3ONU^E0qLtr!nMnhmU1V%$(Gz3ONU^E0qLtr!nMnhl-ga8-F zjidd4P$-Pz(GVC7fzc2c4S~@R7!85Z5Eu=C(GVC7fzc2c4S~@R7`7oWI{!axqjuC| zqaiRF0;3@?8UmvsFd71*Aut*OqaiRF0;3@?8Umvs01tuD`G0s&j50<;U^E0qLtr!n eMnhmU1V%$(Gz3ONU^E0qLtr!nMnhoOh5!IGo)uF7 literal 0 HcmV?d00001 diff --git a/tools/ipython/profile_default/ipython_config.py b/dot_config/ipython/profile_default/ipython_config.py similarity index 100% rename from tools/ipython/profile_default/ipython_config.py rename to dot_config/ipython/profile_default/ipython_config.py diff --git a/dot_config/ipython/profile_default/log/.keep b/dot_config/ipython/profile_default/log/.keep new file mode 100644 index 0000000..e69de29 diff --git a/tools/ipython/profile_default/startup/README b/dot_config/ipython/profile_default/startup/README similarity index 100% rename from tools/ipython/profile_default/startup/README rename to dot_config/ipython/profile_default/startup/README diff --git a/tools/ipython/profile_default/startup/keymap.py b/dot_config/ipython/profile_default/startup/keymap.py similarity index 100% rename from tools/ipython/profile_default/startup/keymap.py rename to dot_config/ipython/profile_default/startup/keymap.py diff --git a/tools/ipython/profile_default/startup/magic_ps.py b/dot_config/ipython/profile_default/startup/magic_ps.py similarity index 100% rename from tools/ipython/profile_default/startup/magic_ps.py rename to dot_config/ipython/profile_default/startup/magic_ps.py diff --git a/tools/sioyek/keys_user.config b/dot_config/sioyek/keys_user.config similarity index 100% rename from tools/sioyek/keys_user.config rename to dot_config/sioyek/keys_user.config diff --git a/tools/sioyek/prefs_user.config b/dot_config/sioyek/prefs_user.config similarity index 100% rename from tools/sioyek/prefs_user.config rename to dot_config/sioyek/prefs_user.config diff --git a/dot_config/user-dirs.dirs b/dot_config/user-dirs.dirs new file mode 100644 index 0000000..7f9a959 --- /dev/null +++ b/dot_config/user-dirs.dirs @@ -0,0 +1,15 @@ +# This file is written by xdg-user-dirs-update +# If you want to change or add directories, just edit the line you're +# interested in. All local changes will be retained on the next run. +# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped +# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an +# absolute path. No other format is supported. +# +XDG_DESKTOP_DIR="$HOME/Desktop" +XDG_DOWNLOAD_DIR="$HOME/Downloads" +XDG_TEMPLATES_DIR="$HOME/Templates" +XDG_PUBLICSHARE_DIR="$HOME/Public" +XDG_DOCUMENTS_DIR="$HOME/Documents" +XDG_MUSIC_DIR="$HOME/Music" +XDG_PICTURES_DIR="$HOME/Pictures" +XDG_VIDEOS_DIR="$HOME/Videos" diff --git a/dot_config/user-dirs.locale b/dot_config/user-dirs.locale new file mode 100644 index 0000000..187dffb --- /dev/null +++ b/dot_config/user-dirs.locale @@ -0,0 +1 @@ +zh_CN diff --git a/tools/zed/keymap.json b/dot_config/zed/keymap.json similarity index 100% rename from tools/zed/keymap.json rename to dot_config/zed/keymap.json diff --git a/tools/zed/keymap_backup.json b/dot_config/zed/keymap_backup.json similarity index 100% rename from tools/zed/keymap_backup.json rename to dot_config/zed/keymap_backup.json diff --git a/tools/zed/settings.json b/dot_config/zed/settings.json similarity index 100% rename from tools/zed/settings.json rename to dot_config/zed/settings.json diff --git a/tools/zed/snippets/c.json b/dot_config/zed/snippets/executable_c.json old mode 100755 new mode 100644 similarity index 100% rename from tools/zed/snippets/c.json rename to dot_config/zed/snippets/executable_c.json diff --git a/tools/zed/snippets/org.json b/dot_config/zed/snippets/org.json similarity index 100% rename from tools/zed/snippets/org.json rename to dot_config/zed/snippets/org.json diff --git a/platforms/linux/awesome/rc.lua b/platforms/linux/awesome/rc.lua deleted file mode 100644 index 2633e92..0000000 --- a/platforms/linux/awesome/rc.lua +++ /dev/null @@ -1,604 +0,0 @@ --- If LuaRocks is installed, make sure that packages installed through it are --- found (e.g. lgi). If LuaRocks is not installed, do nothing. -pcall(require, "luarocks.loader") - --- Standard awesome library -local gears = require("gears") -local awful = require("awful") -require("awful.autofocus") --- Widget and layout library -local wibox = require("wibox") --- Theme handling library -local beautiful = require("beautiful") --- Notification library -local naughty = require("naughty") -local menubar = require("menubar") -local hotkeys_popup = require("awful.hotkeys_popup") --- Enable hotkeys help widget for VIM and other apps --- when client with a matching name is opened: -require("awful.hotkeys_popup.keys") - --- {{{ Error handling --- Check if awesome encountered an error during startup and fell back to --- another config (This code will only ever execute for the fallback config) -if awesome.startup_errors then - naughty.notify({ - preset = naughty.config.presets.critical, - title = "Oops, there were errors during startup!", - text = awesome.startup_errors, - }) -end - --- Handle runtime errors after startup -do - local in_error = false - awesome.connect_signal("debug::error", function(err) - -- Make sure we don't go into an endless error loop - if in_error then - return - end - in_error = true - - naughty.notify({ - preset = naughty.config.presets.critical, - title = "Oops, an error happened!", - text = tostring(err), - }) - in_error = false - end) -end --- }}} - --- {{{ Variable definitions --- Themes define colours, icons, font and wallpapers. -beautiful.init(gears.filesystem.get_themes_dir() .. "default/theme.lua") - --- This is used later as the default terminal and editor to run. -terminal = "wezterm" -editor = os.getenv("EDITOR") or "vim" -editor_cmd = terminal .. " -e " .. editor - --- Default modkey. --- Usually, Mod4 is the key with a logo between Control and Alt. --- If you do not like this or do not have such a key, --- I suggest you to remap Mod4 to another key using xmodmap or other tools. --- However, you can use another modifier like Mod1, but it may interact with others. -modkey = "Mod4" - --- Table of layouts to cover with awful.layout.inc, order matters. -awful.layout.layouts = { - awful.layout.suit.tile, -- Tile by default - awful.layout.suit.floating, - awful.layout.suit.tile.left, - awful.layout.suit.tile.bottom, - awful.layout.suit.tile.top, - awful.layout.suit.fair, - awful.layout.suit.fair.horizontal, - awful.layout.suit.spiral, - awful.layout.suit.spiral.dwindle, - awful.layout.suit.max, - awful.layout.suit.max.fullscreen, - awful.layout.suit.magnifier, - awful.layout.suit.corner.nw, - -- awful.layout.suit.corner.ne, - -- awful.layout.suit.corner.sw, - -- awful.layout.suit.corner.se, -} --- }}} - --- {{{ Menu --- Create a launcher widget and a main menu -myawesomemenu = { - { - "hotkeys", - function() - hotkeys_popup.show_help(nil, awful.screen.focused()) - end, - }, - { "manual", terminal .. " -e man awesome" }, - { "edit config", editor_cmd .. " " .. awesome.conffile }, - { "restart", awesome.restart }, - { - "quit", - function() - awesome.quit() - end, - }, -} - -mymainmenu = awful.menu({ - items = { - { "awesome", myawesomemenu, beautiful.awesome_icon }, - { "open terminal", terminal }, - }, -}) - -mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon, menu = mymainmenu }) - --- Menubar configuration -menubar.utils.terminal = terminal -- Set the terminal for applications that require it --- }}} - --- Keyboard map indicator and switcher -mykeyboardlayout = awful.widget.keyboardlayout() - --- {{{ Wibar --- Create a textclock widget -mytextclock = wibox.widget.textclock() - --- Create a wibox for each screen and add it -local taglist_buttons = gears.table.join( - awful.button({}, 1, function(t) - t:view_only() - end), - awful.button({ modkey }, 1, function(t) - if client.focus then - client.focus:move_to_tag(t) - end - end), - awful.button({}, 3, awful.tag.viewtoggle), - awful.button({ modkey }, 3, function(t) - if client.focus then - client.focus:toggle_tag(t) - end - end), - awful.button({}, 4, function(t) - awful.tag.viewnext(t.screen) - end), - awful.button({}, 5, function(t) - awful.tag.viewprev(t.screen) - end) -) - -local tasklist_buttons = gears.table.join( - awful.button({}, 1, function(c) - if c == client.focus then - c.minimized = true - else - c:emit_signal("request::activate", "tasklist", { raise = true }) - end - end), - awful.button({}, 3, function() - awful.menu.client_list({ theme = { width = 250 } }) - end), - awful.button({}, 4, function() - awful.client.focus.byidx(1) - end), - awful.button({}, 5, function() - awful.client.focus.byidx(-1) - end) -) - -local function set_wallpaper(s) - -- Wallpaper - if beautiful.wallpaper then - local wallpaper = beautiful.wallpaper - -- If wallpaper is a function, call it with the screen - if type(wallpaper) == "function" then - wallpaper = wallpaper(s) - end - gears.wallpaper.maximized(wallpaper, s, true) - end -end - --- Re-set wallpaper when a screen's geometry changes (e.g. different resolution) -screen.connect_signal("property::geometry", set_wallpaper) - -awful.screen.connect_for_each_screen(function(s) - -- Wallpaper - set_wallpaper(s) - - -- Each screen has its own tag table. - awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[1]) - - -- Create a promptbox for each screen - s.mypromptbox = awful.widget.prompt() - -- Create an imagebox widget which will contain an icon indicating which layout we're using. - -- We need one layoutbox per screen. - s.mylayoutbox = awful.widget.layoutbox(s) - s.mylayoutbox:buttons(gears.table.join( - awful.button({}, 1, function() - awful.layout.inc(1) - end), - awful.button({}, 3, function() - awful.layout.inc(-1) - end), - awful.button({}, 4, function() - awful.layout.inc(1) - end), - awful.button({}, 5, function() - awful.layout.inc(-1) - end) - )) - -- Create a taglist widget - s.mytaglist = awful.widget.taglist({ - screen = s, - filter = awful.widget.taglist.filter.all, - buttons = taglist_buttons, - }) - - -- Create a tasklist widget - s.mytasklist = awful.widget.tasklist({ - screen = s, - filter = awful.widget.tasklist.filter.currenttags, - buttons = tasklist_buttons, - }) - - -- Create the wibox - s.mywibox = awful.wibar({ position = "top", screen = s }) - - -- Add widgets to the wibox - s.mywibox:setup({ - layout = wibox.layout.align.horizontal, - { -- Left widgets - layout = wibox.layout.fixed.horizontal, - mylauncher, - s.mytaglist, - s.mypromptbox, - }, - s.mytasklist, -- Middle widget - { -- Right widgets - layout = wibox.layout.fixed.horizontal, - mykeyboardlayout, - wibox.widget.systray(), - mytextclock, - s.mylayoutbox, - }, - }) -end) --- }}} - --- {{{ Mouse bindings -root.buttons(gears.table.join( - awful.button({}, 3, function() - mymainmenu:toggle() - end), - awful.button({}, 4, awful.tag.viewnext), - awful.button({}, 5, awful.tag.viewprev) -)) --- }}} - --- {{{ Key bindings -globalkeys = gears.table.join( - awful.key({ modkey }, "s", hotkeys_popup.show_help, { description = "show help", group = "awesome" }), - awful.key({ modkey }, "Left", awful.tag.viewprev, { description = "view previous", group = "tag" }), - awful.key({ modkey }, "Right", awful.tag.viewnext, { description = "view next", group = "tag" }), - awful.key({ modkey }, "Escape", awful.tag.history.restore, { description = "go back", group = "tag" }), - - awful.key({ modkey }, "n", function() - awful.client.focus.byidx(1) - end, { description = "focus next by index", group = "client" }), - awful.key({ modkey }, "e", function() - awful.client.focus.byidx(-1) - end, { description = "focus previous by index", group = "client" }), - awful.key({ modkey }, "w", function() - mymainmenu:show() - end, { description = "show main menu", group = "awesome" }), - - -- Layout manipulation - awful.key({ modkey, "Shift" }, "n", function() - awful.client.swap.byidx(1) - end, { description = "swap with next client by index", group = "client" }), - awful.key({ modkey, "Shift" }, "e", function() - awful.client.swap.byidx(-1) - end, { description = "swap with previous client by index", group = "client" }), - awful.key({ modkey, "Control" }, "n", function() - awful.screen.focus_relative(1) - end, { description = "focus the next screen", group = "screen" }), - awful.key({ modkey, "Control" }, "e", function() - awful.screen.focus_relative(-1) - end, { description = "focus the previous screen", group = "screen" }), - awful.key({ modkey }, "u", awful.client.urgent.jumpto, { description = "jump to urgent client", group = "client" }), - awful.key({ modkey }, "Tab", function() - awful.client.focus.history.previous() - if client.focus then - client.focus:raise() - end - end, { description = "go back", group = "client" }), - - -- Standard program - awful.key({ modkey }, "Return", function() - awful.spawn(terminal) - end, { description = "open a terminal", group = "launcher" }), - awful.key({ modkey, "Control" }, "r", awesome.restart, { description = "reload awesome", group = "awesome" }), - awful.key({ modkey, "Shift" }, "q", awesome.quit, { description = "quit awesome", group = "awesome" }), - - awful.key({ modkey }, "i", function() - awful.tag.incmwfact(0.05) - end, { description = "increase master width factor", group = "layout" }), - awful.key({ modkey }, "h", function() - awful.tag.incmwfact(-0.05) - end, { description = "decrease master width factor", group = "layout" }), - awful.key({ modkey, "Shift" }, "h", function() - awful.tag.incnmaster(1, nil, true) - end, { description = "increase the number of master clients", group = "layout" }), - awful.key({ modkey, "Shift" }, "i", function() - awful.tag.incnmaster(-1, nil, true) - end, { description = "decrease the number of master clients", group = "layout" }), - awful.key({ modkey, "Control" }, "h", function() - awful.tag.incncol(1, nil, true) - end, { description = "increase the number of columns", group = "layout" }), - awful.key({ modkey, "Control" }, "i", function() - awful.tag.incncol(-1, nil, true) - end, { description = "decrease the number of columns", group = "layout" }), - awful.key({ modkey }, "space", function() - awful.spawn.with_shell("albert show") - end, { description = "select next", group = "layout" }), - awful.key({ modkey, "Shift" }, "space", function() - awful.layout.inc(-1) - end, { description = "select previous", group = "layout" }), - - awful.key({ modkey, "Control" }, "k", function() - local c = awful.client.restore() - -- Focus restored client - if c then - c:emit_signal("request::activate", "key.unminimize", { raise = true }) - end - end, { description = "restore minimized", group = "client" }), - - -- Prompt - awful.key({ modkey }, "r", function() - awful.screen.focused().mypromptbox:run() - end, { description = "run prompt", group = "launcher" }), - - awful.key({ modkey }, "x", function() - awful.prompt.run({ - prompt = "Run Lua code: ", - textbox = awful.screen.focused().mypromptbox.widget, - exe_callback = awful.util.eval, - history_path = awful.util.get_cache_dir() .. "/history_eval", - }) - end, { description = "lua execute prompt", group = "awesome" }), - -- Menubar - awful.key({ modkey }, "p", function() - menubar.show() - end, { description = "show the menubar", group = "launcher" }) -) - -clientkeys = gears.table.join( - awful.key({ modkey }, "f", function(c) - c.fullscreen = not c.fullscreen - c:raise() - end, { description = "toggle fullscreen", group = "client" }), - awful.key({ modkey, "Shift" }, "c", function(c) - c:kill() - end, { description = "close", group = "client" }), - awful.key( - { modkey, "Control" }, - "space", - awful.client.floating.toggle, - { description = "toggle floating", group = "client" } - ), - awful.key({ modkey, "Control" }, "Return", function(c) - c:swap(awful.client.getmaster()) - end, { description = "move to master", group = "client" }), - awful.key({ modkey }, "o", function(c) - c:move_to_screen() - end, { description = "move to screen", group = "client" }), - awful.key({ modkey }, "t", function(c) - c.ontop = not c.ontop - end, { description = "toggle keep on top", group = "client" }), - awful.key({ modkey }, "k", function(c) - -- The client currently has the input focus, so it cannot be - -- minimized, since minimized clients can't have the focus. - c.minimized = true - end, { description = "minimize", group = "client" }), - awful.key({ modkey }, "m", function(c) - c.maximized = not c.maximized - c:raise() - end, { description = "(un)maximize", group = "client" }), - awful.key({ modkey, "Control" }, "m", function(c) - c.maximized_vertical = not c.maximized_vertical - c:raise() - end, { description = "(un)maximize vertically", group = "client" }), - awful.key({ modkey, "Shift" }, "m", function(c) - c.maximized_horizontal = not c.maximized_horizontal - c:raise() - end, { description = "(un)maximize horizontally", group = "client" }) -) - --- Bind all key numbers to tags. --- Be careful: we use keycodes to make it work on any keyboard layout. --- This should map on the top row of your keyboard, usually 1 to 9. -for i = 1, 9 do - globalkeys = gears.table.join( - globalkeys, - -- View tag only. - awful.key({ modkey }, "#" .. i + 9, function() - local screen = awful.screen.focused() - local tag = screen.tags[i] - if tag then - tag:view_only() - end - end, { description = "view tag #" .. i, group = "tag" }), - -- Toggle tag display. - awful.key({ modkey, "Control" }, "#" .. i + 9, function() - local screen = awful.screen.focused() - local tag = screen.tags[i] - if tag then - awful.tag.viewtoggle(tag) - end - end, { description = "toggle tag #" .. i, group = "tag" }), - -- Move client to tag. - awful.key({ modkey, "Shift" }, "#" .. i + 9, function() - if client.focus then - local tag = client.focus.screen.tags[i] - if tag then - client.focus:move_to_tag(tag) - end - end - end, { description = "move focused client to tag #" .. i, group = "tag" }), - -- Toggle tag on focused client. - awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9, function() - if client.focus then - local tag = client.focus.screen.tags[i] - if tag then - client.focus:toggle_tag(tag) - end - end - end, { description = "toggle focused client on tag #" .. i, group = "tag" }) - ) -end - -clientbuttons = gears.table.join( - awful.button({}, 1, function(c) - c:emit_signal("request::activate", "mouse_click", { raise = true }) - end), - awful.button({ modkey }, 1, function(c) - c:emit_signal("request::activate", "mouse_click", { raise = true }) - awful.mouse.client.move(c) - end), - awful.button({ modkey }, 3, function(c) - c:emit_signal("request::activate", "mouse_click", { raise = true }) - awful.mouse.client.resize(c) - end) -) - --- Set keys -root.keys(globalkeys) --- }}} - --- {{{ Rules --- Rules to apply to new clients (through the "manage" signal). -awful.rules.rules = { - -- All clients will match this rule. - { - rule = {}, - properties = { - border_width = beautiful.border_width, - border_color = beautiful.border_normal, - focus = awful.client.focus.filter, - raise = true, - keys = clientkeys, - buttons = clientbuttons, - screen = awful.screen.preferred, - placement = awful.placement.no_overlap + awful.placement.no_offscreen, - }, - }, - - -- Floating clients. - { - rule_any = { - instance = { - "DTA", -- Firefox addon DownThemAll. - "copyq", -- Includes session name in class. - "pinentry", - }, - class = { - "Arandr", - "Blueman-manager", - "Gpick", - "Kruler", - "MessageWin", -- kalarm. - "Sxiv", - "Tor Browser", -- Needs a fixed window size to avoid fingerprinting by screen size. - "Wpa_gui", - "veromix", - "xtightvncviewer", - }, - - -- Note that the name property shown in xprop might be set slightly after creation of the client - -- and the name shown there might not match defined rules here. - name = { - "Event Tester", -- xev. - }, - role = { - "AlarmWindow", -- Thunderbird's calendar. - "ConfigManager", -- Thunderbird's about:config. - "pop-up", -- e.g. Google Chrome's (detached) Developer Tools. - }, - }, - properties = { floating = true }, - }, - - -- Add titlebars to normal clients and dialogs - { rule_any = { type = { "normal", "dialog" } }, properties = { titlebars_enabled = true } }, - - -- Set Firefox to always map on the tag named "2" on screen 1. - -- { rule = { class = "Firefox" }, - -- properties = { screen = 1, tag = "2" } }, -} --- }}} - --- {{{ Signals --- Signal function to execute when a new client appears. -client.connect_signal("manage", function(c) - -- Set the windows at the slave, - -- i.e. put it at the end of others instead of setting it master. - -- if not awesome.startup then awful.client.setslave(c) end - - if awesome.startup and not c.size_hints.user_position and not c.size_hints.program_position then - -- Prevent clients from being unreachable after screen count changes. - awful.placement.no_offscreen(c) - end -end) - --- Add a titlebar if titlebars_enabled is set to true in the rules. -client.connect_signal("request::titlebars", function(c) - -- buttons for the titlebar - local buttons = gears.table.join( - awful.button({}, 1, function() - c:emit_signal("request::activate", "titlebar", { raise = true }) - awful.mouse.client.move(c) - end), - awful.button({}, 3, function() - c:emit_signal("request::activate", "titlebar", { raise = true }) - awful.mouse.client.resize(c) - end) - ) - - awful.titlebar(c):setup({ - { -- Left - awful.titlebar.widget.iconwidget(c), - buttons = buttons, - layout = wibox.layout.fixed.horizontal, - }, - { -- Middle - { -- Title - align = "center", - widget = awful.titlebar.widget.titlewidget(c), - }, - buttons = buttons, - layout = wibox.layout.flex.horizontal, - }, - { -- Right - awful.titlebar.widget.floatingbutton(c), - awful.titlebar.widget.maximizedbutton(c), - awful.titlebar.widget.stickybutton(c), - awful.titlebar.widget.ontopbutton(c), - awful.titlebar.widget.closebutton(c), - layout = wibox.layout.fixed.horizontal(), - }, - layout = wibox.layout.align.horizontal, - }) -end) - --- Enable sloppy focus, so that focus follows mouse. -client.connect_signal("mouse::enter", function(c) - c:emit_signal("request::activate", "mouse_enter", { raise = false }) -end) - -client.connect_signal("focus", function(c) - c.border_color = beautiful.border_focus -end) -client.connect_signal("unfocus", function(c) - c.border_color = beautiful.border_normal -end) --- }}} --- - -autorun = true - -autorunApps = { - "fcitx5", - "albert", -} - -if autorun then - for app = 1, #autorunApps do - awful.spawn(autorunApps[app]) - end -end - -awful.spawn.with_shell("setxkbmap -option caps:escape") -awful.spawn.with_shell("feh --bg-fill ~/Pictures/Wallpaper/current.jpg") diff --git a/platforms/linux/etc/environment b/platforms/linux/etc/environment deleted file mode 100644 index 2649112..0000000 --- a/platforms/linux/etc/environment +++ /dev/null @@ -1,30 +0,0 @@ -# $DOTFILES/platforms/linux/etc/environment -# Date: 2025-01-25 -# Author: js0ny -# Description: Environment variables that defines the applications and IME -# -# Location: -# /etc/environment -# Linking: -# cp $DOTFILES/platforms/linux/etc/environment /etc/environment -# -# This file is parsed by pam_env module -# -# Syntax: simple "KEY=VAL" pairs on separate lines -# -#QT_QPA_PLATFORMTHEME=qt5ct -#QT_STYLE_OVERRIDE=kvantum -# Software -BROWSER="com.vivaldi.Vivaldi" -EDITOR=nvim -# IME -GTK_IM_MODULE=fcitx -QT_IM_MODULE=fcitx -SDL_IM_MODULE=fcitx -XMODIFIFERS="@im=fcitx" -GLFW_IM_MODULE=fcitx -# Scaling - Buggy on Plasma -# QT_SCALE_FACTOR=1.75 -# # 2 * 0.875 = 1.75 -# GDK_SCALE=2 -# GDK_DPI_SCALE=0.875 diff --git a/platforms/linux/user-dirs.dirs b/platforms/linux/user-dirs.dirs deleted file mode 100644 index cc0dcf4..0000000 --- a/platforms/linux/user-dirs.dirs +++ /dev/null @@ -1,9 +0,0 @@ -# $DOTFILES/platforms/linux/user-dirs.dirs -XDG_DESKTOP_DIR="$HOME/Desktop" -XDG_DOWNLOAD_DIR="$HOME/Downloads" -XDG_TEMPLATES_DIR="$HOME/Templates" -XDG_PUBLICSHARE_DIR="$HOME/Public" -XDG_DOCUMENTS_DIR="$HOME/Documents" -XDG_MUSIC_DIR="$HOME/Music" -XDG_PICTURES_DIR="$HOME/Pictures" -XDG_VIDEOS_DIR="$HOME/Videos" diff --git a/platforms/linux/user-dirs.locale b/platforms/linux/user-dirs.locale deleted file mode 100644 index 2c28678..0000000 --- a/platforms/linux/user-dirs.locale +++ /dev/null @@ -1 +0,0 @@ -zh_CN \ No newline at end of file diff --git a/scripts/run_once_fish.sh b/scripts/run_once_fish.sh new file mode 100644 index 0000000..7dd6b1f --- /dev/null +++ b/scripts/run_once_fish.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash + +curl https://raw.githubusercontent.com/SpaceAceMonkey/dotenv-for-fish/refs/heads/main/dotenv.fish -o "$CHEZMOI_SOURCE_DIR/dot_config/fish/functions/dotenv.fish" diff --git a/scripts/run_once_yazi.sh b/scripts/run_once_yazi.sh new file mode 100644 index 0000000..d678048 --- /dev/null +++ b/scripts/run_once_yazi.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +ya pkg add llanosrocas/yaziline +ya pkg add yazi-rs/plugins:git +ya pkg add Rolv-Apneseth/starship + diff --git a/scripts/run_once_zsh-install-plugins.sh b/scripts/run_once_zsh-install-plugins.sh new file mode 100644 index 0000000..6286776 --- /dev/null +++ b/scripts/run_once_zsh-install-plugins.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}" +XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}" + +test -d "$XDG_CONFIG_HOME/zsh/plugins/zsh-autosuggestions" || git clone --depth 1 https://github.com/zsh-users/zsh-autosuggestions.git "$XDG_CONFIG_HOME/zsh/plugins/zsh-autosuggestions" +test -d "$XDG_CONFIG_HOME/zsh/plugins/zsh-syntax-highlighting" || git clone --depth 1 https://github.com/zsh-users/zsh-syntax-highlighting.git "$XDG_CONFIG_HOME/zsh/plugins/zsh-syntax-highlighting" +test -d "$XDG_CONFIG_HOME/zsh/plugins/zsh-history-substring-search" || git clone --depth 1 https://github.com/zsh-users/zsh-history-substring-search.git "$XDG_CONFIG_HOME/zsh/plugins/zsh-history-substring-search" +test -d "$XDG_CONFIG_HOME/zsh/plugins/zsh-completions" || git clone --depth 1 https://github.com/zsh-users/zsh-completions.git "$XDG_CONFIG_HOME/zsh/plugins/zsh-completions" + diff --git a/scripts/run_once_zsh-set-env.sh b/scripts/run_once_zsh-set-env.sh new file mode 100644 index 0000000..edb4b9f --- /dev/null +++ b/scripts/run_once_zsh-set-env.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}" + +if [ -f /etc/zshenv ]; then + sudo cp "$CHEZMOI_SOURCE_DIR/dot_config/zsh/global.zshenv" /etc/zshenv +fi + +if [ -f /etc/zsh/zshenv ]; then + sudo cp "$CHEZMOI_SOURCE_DIR/dot_config/zsh/global.zshenv" /etc/zsh/zshenv +fi + +mkdir -p $XDG_STATE_HOME/zsh diff --git a/symlink_dot_bashrc b/symlink_dot_bashrc new file mode 100644 index 0000000..2ac1df5 --- /dev/null +++ b/symlink_dot_bashrc @@ -0,0 +1 @@ +/home/js0ny/.config/bash/bashrc From 298b2290a8293ecd31efeda061c1bf64c05a7f13 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 13:32:43 +0100 Subject: [PATCH 05/48] chezmoi: powershell --- _assets/windows-1.png | Bin 1856202 -> 0 bytes {tools => dot_config}/powershell/Aliases.ps1 | 82 ++--- .../powershell/Completions.ps1 | 0 .../powershell/Environment.ps1 | 0 {tools => dot_config}/powershell/Keymap.ps1 | 60 ++-- .../powershell/Keymap/Colemak.ps1 | 0 .../Microsoft.PowerShell_profile.ps1 | 23 ++ {tools => dot_config}/powershell/Modules.ps1 | 26 +- .../powershell/Navigation.ps1 | 22 +- {tools => dot_config}/powershell/Prompt.ps1 | 288 +++++++++--------- {tools => dot_config}/powershell/readme.md | 78 ++--- dot_config/powershell/xaa | 1 + scripts/run_once_powershell.ps1 | 6 + 13 files changed, 308 insertions(+), 278 deletions(-) delete mode 100644 _assets/windows-1.png rename {tools => dot_config}/powershell/Aliases.ps1 (96%) rename {tools => dot_config}/powershell/Completions.ps1 (100%) rename {tools => dot_config}/powershell/Environment.ps1 (100%) rename {tools => dot_config}/powershell/Keymap.ps1 (98%) rename {tools => dot_config}/powershell/Keymap/Colemak.ps1 (100%) create mode 100644 dot_config/powershell/Microsoft.PowerShell_profile.ps1 rename {tools => dot_config}/powershell/Modules.ps1 (97%) rename {tools => dot_config}/powershell/Navigation.ps1 (98%) rename {tools => dot_config}/powershell/Prompt.ps1 (97%) rename {tools => dot_config}/powershell/readme.md (97%) create mode 100644 dot_config/powershell/xaa create mode 100644 scripts/run_once_powershell.ps1 diff --git a/_assets/windows-1.png b/_assets/windows-1.png deleted file mode 100644 index 313ae1cd22c69ec6a563863d427fc81e374b4d55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1856202 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

&wqXG=eDre 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

@3|`RwSDRU17S4yezbRkCSk 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%0AZ)x2X? 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 qXi9X6N63bYOqp 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�mwjD-UzKmTC{*yd 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%0DKB{#+_=AE5Cp*~=jr=O;gvD3WI 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̡*f0NKd5-lebLYDqu}cM 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𝔡zMmG)`8Hl_tX^(dbLRa__dApR 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�kJWg!Nhrfp{ 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

r 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 $null && Set-Alias "gvi" "neovide" - - - -# File Creation # -function mkcd { param ( [string] $dirname) New-Item -ItemType Directory -Name $dirname && Set-Location $dirname } -function tc { param ( [string] $filename) New-Item $filename && code $filename } -function tv { param ( [string] $filename) New-Item $filename && nvim $filename } -function cdls { param( [string] $dirname) Set-Location $dirname && Get-ChildItem } -function zls { param( [string] $dirname) z $dirname && Get-ChildItem } -function zl { param( [string] $dirname) z $dirname && lsd } -function mt { param( [string] $dirname) New-Item -ItemType File -Name $dirname -Force } - - -### Dev ### - -# Python & Conda # -Set-Alias "py" "python" -Set-Alias "ipy" "ipython" - -if ($Env:WEZTERM) { - # Environment variable injected by wezterm/wezterm.lua - ${function:icat} = { wezterm imgcat $args } -} -elseif ($Env:KITTY) { - ${function:icat} = { kitty +kitten icat $args } -} +# $DOTFILES/tools\powershell\Aliases.ps1 +# Date: 2024-12-01 +# Author: js0ny +# Aliases for PowerShell + +# Unix Shell Equivalents # +Set-Alias "touch" "New-Item" +${function:l} = { Get-ChildItem -Force } +${function:tree} = { lsd --tree $args } +Set-Alias "which" "Get-Command" + +# Editors # +Set-Alias "v" "nvim" +Set-Alias "c" "code" +Get-Command neovide -ErrorAction SilentlyContinue > $null && Set-Alias "gvi" "neovide" + + + +# File Creation # +function mkcd { param ( [string] $dirname) New-Item -ItemType Directory -Name $dirname && Set-Location $dirname } +function tc { param ( [string] $filename) New-Item $filename && code $filename } +function tv { param ( [string] $filename) New-Item $filename && nvim $filename } +function cdls { param( [string] $dirname) Set-Location $dirname && Get-ChildItem } +function zls { param( [string] $dirname) z $dirname && Get-ChildItem } +function zl { param( [string] $dirname) z $dirname && lsd } +function mt { param( [string] $dirname) New-Item -ItemType File -Name $dirname -Force } + + +### Dev ### + +# Python & Conda # +Set-Alias "py" "python" +Set-Alias "ipy" "ipython" + +if ($Env:WEZTERM) { + # Environment variable injected by wezterm/wezterm.lua + ${function:icat} = { wezterm imgcat $args } +} +elseif ($Env:KITTY) { + ${function:icat} = { kitty +kitten icat $args } +} diff --git a/tools/powershell/Completions.ps1 b/dot_config/powershell/Completions.ps1 similarity index 100% rename from tools/powershell/Completions.ps1 rename to dot_config/powershell/Completions.ps1 diff --git a/tools/powershell/Environment.ps1 b/dot_config/powershell/Environment.ps1 similarity index 100% rename from tools/powershell/Environment.ps1 rename to dot_config/powershell/Environment.ps1 diff --git a/tools/powershell/Keymap.ps1 b/dot_config/powershell/Keymap.ps1 similarity index 98% rename from tools/powershell/Keymap.ps1 rename to dot_config/powershell/Keymap.ps1 index 5e67b1f..184bd44 100644 --- a/tools/powershell/Keymap.ps1 +++ b/dot_config/powershell/Keymap.ps1 @@ -1,31 +1,31 @@ -# aka PSReadLine - -# read key: [System.Console]::ReadKey() -# get current bindings: Get-PSReadLineKeyHandler - -# PSReadLineOptions -Set-PSReadLineOption -EditMode Vi # Vi Keybindings -Set-PSReadLineOption -PredictionViewStyle InlineView -Set-PSReadLineOption -PredictionSource HistoryAndPlugin -# Set-PSReadLineOption -ContinuationPrompt "`e[36m CR > " # Use Starship instead -# PSReadLineKeyHandlers -Set-PSReadLineKeyHandler -Chord "Control+Oem4" -Function ViCommandMode -ViMode Insert # ^[ to Escape -Set-PSReadLineKeyHandler -Chord "Ctrl+a" -Function BeginningOfLine -Set-PSReadLineKeyHandler -Chord "Ctrl+e" -Function EndOfLine -Set-PSReadLineKeyHandler -Chord "Ctrl+p" -Function PreviousHistory -Set-PSReadLineKeyHandler -Chord "Ctrl+f" -Function AcceptNextSuggestionWord -Set-PSReadLineKeyHandler -Chord "Alt+f" -Function AcceptSuggestion -Set-PSReadLineKeyHandler -Chord "Ctrl+n" -Function NextHistory -Set-PSReadLineKeyHandler -Chord "Ctrl+w" -Function BackwardKillWord -Set-PSReadLineKeyHandler -Chord "Ctrl+Backspace" -Function BackwardKillWord -Set-PSReadLineKeyHandler -Chord "Ctrl+Shift+Backspace" -Function BackwardKillLine -Set-PSReadLineKeyHandler -Chord "Alt+Backspace" -Function BackwardKillLine -Set-PSReadLineKeyHandler -Chord "Ctrl+Delete" -Function KillWord -Set-PSReadLineKeyHandler -Chord "Ctrl+Shift+Delete" -Function KillLine -Set-PSReadLineKeyHandler -Chord "Alt+Delete" -Function KillLine -Set-PSReadLineKeyHandler -Chord "Ctrl+c" -Function CopyOrCancelLine -ViMode Insert -Set-PSReadLineKeyHandler -Chord "Ctrl+c" -Function CopyOrCancelLine -ViMode Command -## Use to Invoke MenuComplete -Set-PSReadLineKeyHandler -Key Tab -Function MenuComplete - +# aka PSReadLine + +# read key: [System.Console]::ReadKey() +# get current bindings: Get-PSReadLineKeyHandler + +# PSReadLineOptions +Set-PSReadLineOption -EditMode Vi # Vi Keybindings +Set-PSReadLineOption -PredictionViewStyle InlineView +Set-PSReadLineOption -PredictionSource HistoryAndPlugin +# Set-PSReadLineOption -ContinuationPrompt "`e[36m CR > " # Use Starship instead +# PSReadLineKeyHandlers +Set-PSReadLineKeyHandler -Chord "Control+Oem4" -Function ViCommandMode -ViMode Insert # ^[ to Escape +Set-PSReadLineKeyHandler -Chord "Ctrl+a" -Function BeginningOfLine +Set-PSReadLineKeyHandler -Chord "Ctrl+e" -Function EndOfLine +Set-PSReadLineKeyHandler -Chord "Ctrl+p" -Function PreviousHistory +Set-PSReadLineKeyHandler -Chord "Ctrl+f" -Function AcceptNextSuggestionWord +Set-PSReadLineKeyHandler -Chord "Alt+f" -Function AcceptSuggestion +Set-PSReadLineKeyHandler -Chord "Ctrl+n" -Function NextHistory +Set-PSReadLineKeyHandler -Chord "Ctrl+w" -Function BackwardKillWord +Set-PSReadLineKeyHandler -Chord "Ctrl+Backspace" -Function BackwardKillWord +Set-PSReadLineKeyHandler -Chord "Ctrl+Shift+Backspace" -Function BackwardKillLine +Set-PSReadLineKeyHandler -Chord "Alt+Backspace" -Function BackwardKillLine +Set-PSReadLineKeyHandler -Chord "Ctrl+Delete" -Function KillWord +Set-PSReadLineKeyHandler -Chord "Ctrl+Shift+Delete" -Function KillLine +Set-PSReadLineKeyHandler -Chord "Alt+Delete" -Function KillLine +Set-PSReadLineKeyHandler -Chord "Ctrl+c" -Function CopyOrCancelLine -ViMode Insert +Set-PSReadLineKeyHandler -Chord "Ctrl+c" -Function CopyOrCancelLine -ViMode Command +## Use to Invoke MenuComplete +Set-PSReadLineKeyHandler -Key Tab -Function MenuComplete + . $(Join-Path $DOTFILES "tools" "powershell" "Keymap" "Colemak.ps1") \ No newline at end of file diff --git a/tools/powershell/Keymap/Colemak.ps1 b/dot_config/powershell/Keymap/Colemak.ps1 similarity index 100% rename from tools/powershell/Keymap/Colemak.ps1 rename to dot_config/powershell/Keymap/Colemak.ps1 diff --git a/dot_config/powershell/Microsoft.PowerShell_profile.ps1 b/dot_config/powershell/Microsoft.PowerShell_profile.ps1 new file mode 100644 index 0000000..ac0ce0d --- /dev/null +++ b/dot_config/powershell/Microsoft.PowerShell_profile.ps1 @@ -0,0 +1,23 @@ +# $XDG_CONFIG_HOME/powershell/Microsoft.PowerShell_profile.ps1 +# ln -sf $DOTFILES/mac/Microsoft.PowerShell_profile.ps1 $XDG_CONFIG_HOME/powershell/Microsoft.PowerShell_profile.ps1 +### Variables ### + +$DOTFILES = "$HOME/.dotfiles" + +### Load Configs ### + +Get-ChildItem -Path $(Join-Path $DOTFILES "tools" "powershell") -Filter *.ps1 | ForEach-Object {. $_} + +## Aliases ### + +# PowerShell Equivalents # + +# Set-Alias "curl" "Invoke-WebRequest" +# Set-Alias "man" "Get-Help" +Set-Alias "kill" "Stop-Process" +Set-Alias "open" "Invoke-Item" # Use ii instead of open + +# Dev # + +${function:zshcfg} = { nvim ~/.zshrc } +${function:bashcfg} = { nvim ~/.bashrc } diff --git a/tools/powershell/Modules.ps1 b/dot_config/powershell/Modules.ps1 similarity index 97% rename from tools/powershell/Modules.ps1 rename to dot_config/powershell/Modules.ps1 index cdc48e8..34440e4 100644 --- a/tools/powershell/Modules.ps1 +++ b/dot_config/powershell/Modules.ps1 @@ -1,13 +1,13 @@ -# Import-Module -Name Terminal-Icons -Import-Module -Name CompletionPredictor -if ($IsWindows) { - # Chocolatey - $ChocolateyProfile = "$env:ChocolateyInstall\helpers\chocolateyProfile.psm1" - if (Test-Path($ChocolateyProfile)) { Import-Module "$ChocolateyProfile" } - # WinGet - Import-Module -Name Microsoft.WinGet.CommandNotFound #f45873b3-b655-43a6-b217-97c00aa0db58 -} - -Import-Module -Name PSFzf - -Set-PSReadLineKeyHandler -Chord "Ctrl-r" -ScriptBlock { Invoke-FuzzyHistory } +# Import-Module -Name Terminal-Icons +Import-Module -Name CompletionPredictor +if ($IsWindows) { + # Chocolatey + $ChocolateyProfile = "$env:ChocolateyInstall\helpers\chocolateyProfile.psm1" + if (Test-Path($ChocolateyProfile)) { Import-Module "$ChocolateyProfile" } + # WinGet + Import-Module -Name Microsoft.WinGet.CommandNotFound #f45873b3-b655-43a6-b217-97c00aa0db58 +} + +Import-Module -Name PSFzf + +Set-PSReadLineKeyHandler -Chord "Ctrl-r" -ScriptBlock { Invoke-FuzzyHistory } diff --git a/tools/powershell/Navigation.ps1 b/dot_config/powershell/Navigation.ps1 similarity index 98% rename from tools/powershell/Navigation.ps1 rename to dot_config/powershell/Navigation.ps1 index 99a55ac..ece1c11 100644 --- a/tools/powershell/Navigation.ps1 +++ b/dot_config/powershell/Navigation.ps1 @@ -1,11 +1,11 @@ -# ${function:~} = { Set-Location -Path ~ } cd is better -${function:...} = { Set-Location -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) } -${function:....} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) } -${function:.....} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) } -${function:......} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) } - -# Absolute navigation -${function:docs} = { Set-Location -Path (Join-Path -Path $HOME -ChildPath "Documents") } -${function:down} = { Set-Location -Path (Join-Path -Path $HOME -ChildPath "Downloads") } -${function:dt} = { Set-Location -Path (Join-Path -Path $HOME -ChildPath "Desktop") } -${function:one} = { Set-Location -Path (Join-Path -Path $HOME -ChildPath "OneDrive") } +# ${function:~} = { Set-Location -Path ~ } cd is better +${function:...} = { Set-Location -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) } +${function:....} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) } +${function:.....} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) } +${function:......} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) } + +# Absolute navigation +${function:docs} = { Set-Location -Path (Join-Path -Path $HOME -ChildPath "Documents") } +${function:down} = { Set-Location -Path (Join-Path -Path $HOME -ChildPath "Downloads") } +${function:dt} = { Set-Location -Path (Join-Path -Path $HOME -ChildPath "Desktop") } +${function:one} = { Set-Location -Path (Join-Path -Path $HOME -ChildPath "OneDrive") } diff --git a/tools/powershell/Prompt.ps1 b/dot_config/powershell/Prompt.ps1 similarity index 97% rename from tools/powershell/Prompt.ps1 rename to dot_config/powershell/Prompt.ps1 index 1ae9545..5257100 100644 --- a/tools/powershell/Prompt.ps1 +++ b/dot_config/powershell/Prompt.ps1 @@ -1,144 +1,144 @@ -# $DOTFILES/tools\powershell\Prompt.ps1 -# Date: 2024-12-01 -# Author: js0ny -# Use starship to set prompt - -# Invoke-Expression (&starship init powershell) - - -function formatFG { - param( - [string]$RGB - ) - if ($RGB -eq "-1") { - return "`e[39m" - } - $R = $RGB.Substring(0, 2) - $G = $RGB.Substring(2, 2) - $B = $RGB.Substring(4, 2) - # Convert hex to RGB - $R = [int]::Parse($R, [System.Globalization.NumberStyles]::HexNumber) - $G = [int]::Parse($G, [System.Globalization.NumberStyles]::HexNumber) - $B = [int]::Parse($B, [System.Globalization.NumberStyles]::HexNumber) - return "`e[38;2;$R;$G;${B}m" -} - -function formatBG { - param( - [string]$RGB - ) - if ($RGB -eq "-1") { - return "`e[49m" - } - $R = $RGB.Substring(0, 2) - $G = $RGB.Substring(2, 2) - $B = $RGB.Substring(4, 2) - # Convert hex to RGB - $R = [int]::Parse($R, [System.Globalization.NumberStyles]::HexNumber) - $G = [int]::Parse($G, [System.Globalization.NumberStyles]::HexNumber) - $B = [int]::Parse($B, [System.Globalization.NumberStyles]::HexNumber) - return "`e[48;2;$R;$G;${B}m" -} -function formatPowerlineText { - param( - [string]$FG, - [string]$BG, - [string]$PLBG, - [string]$Text - ) - $ResumeSequece = "`e[0m" - $TextFG = formatFG -RGB $FG - $TextBG = formatBG -RGB $BG - $PLFG = formatFG -RGB $BG - $PLBG = formatBG -RGB $PLBG - return "$TextFG$TextBG $Text $PLFG$PLBG$ResumeSequece" -} - -function prompt { - if ($pwd.Path -eq $HOME) { - $cwd = "~" - } else { - $cwd = $pwd.ProviderPath - } - $time = Get-Date -Format "HH:mm" - $ResumeSequece = "`e[0m" - $FG0 = "FFFFFF" - $BG0 = "9A348E" - $BG1 = "DA627D" - $BG2 = "FCA17D" - $FG1 = "035E82" - $time = formatPowerlineText $FG0 $BG0 $BG1 $time - $cwd = formatPowerlineText $FG0 $BG1 $BG2 $cwd - $ps = formatPowerlineText $FG1 $BG2 "-1" "PS" - - "$time$cwd$ps$ResumeSequece " - -} - -function Invoke-Starship { - Invoke-Expression (&starship init powershell) -} - -Import-Module Catppuccin - -$Flavor = $Catppuccin['Mocha'] - -# The following colors are used by PowerShell's formatting -# Again PS 7.2+ only -$PSStyle.Formatting.Debug = $Flavor.Sky.Foreground() -$PSStyle.Formatting.Error = $Flavor.Red.Foreground() -$PSStyle.Formatting.ErrorAccent = $Flavor.Blue.Foreground() -$PSStyle.Formatting.FormatAccent = $Flavor.Teal.Foreground() -$PSStyle.Formatting.TableHeader = $Flavor.Rosewater.Foreground() -$PSStyle.Formatting.Verbose = $Flavor.Yellow.Foreground() -$PSStyle.Formatting.Warning = $Flavor.Peach.Foreground() - -$Colors = @{ - # Largely based on the Code Editor style guide - # Emphasis, ListPrediction and ListPredictionSelected are inspired by the Catppuccin fzf theme - - # Powershell colours - Emphasis = $Flavor.Red.Foreground() - Selection = $Flavor.Surface0.Background() - - # PSReadLine prediction colours - InlinePrediction = $Flavor.Overlay0.Foreground() - ListPrediction = $Flavor.Mauve.Foreground() - ListPredictionSelected = $Flavor.Surface0.Background() - - # Syntax highlighting - Command = $Flavor.Blue.Foreground() - Comment = $Flavor.Overlay0.Foreground() - Default = $Flavor.Text.Foreground() - Error = $Flavor.Red.Foreground() - Keyword = $Flavor.Mauve.Foreground() - Member = $Flavor.Rosewater.Foreground() - Number = $Flavor.Peach.Foreground() - Operator = $Flavor.Sky.Foreground() - Parameter = $Flavor.Pink.Foreground() - String = $Flavor.Green.Foreground() - Type = $Flavor.Yellow.Foreground() - Variable = $Flavor.Lavender.Foreground() -} - -# Set the colours -Set-PSReadLineOption -Colors $Colors - -# Smarter cd -# Init zoxide apter starship to avoid conflicts -# https://github.com/ajeetdsouza/zoxide/issues/723 -if (Get-Command zoxide -ErrorAction SilentlyContinue) { - Invoke-Expression (& { (zoxide init powershell | Out-String) }) - ${function:...} = { z -Path (Join-Path -Path .. -ChildPath ..) } - ${function:....} = { z -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) } - ${function:.....} = { z -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) } - ${function:......} = { z -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) } - ${function:z-} = { z - } -} -else { - ${function:...} = { Set-Location -Path (Join-Path -Path .. -ChildPath ..) } - ${function:....} = { Set-Location -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) } - ${function:.....} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) } - ${function:......} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) } - ${function:z-} = { Set-Location - } -} +# $DOTFILES/tools\powershell\Prompt.ps1 +# Date: 2024-12-01 +# Author: js0ny +# Use starship to set prompt + +# Invoke-Expression (&starship init powershell) + + +function formatFG { + param( + [string]$RGB + ) + if ($RGB -eq "-1") { + return "`e[39m" + } + $R = $RGB.Substring(0, 2) + $G = $RGB.Substring(2, 2) + $B = $RGB.Substring(4, 2) + # Convert hex to RGB + $R = [int]::Parse($R, [System.Globalization.NumberStyles]::HexNumber) + $G = [int]::Parse($G, [System.Globalization.NumberStyles]::HexNumber) + $B = [int]::Parse($B, [System.Globalization.NumberStyles]::HexNumber) + return "`e[38;2;$R;$G;${B}m" +} + +function formatBG { + param( + [string]$RGB + ) + if ($RGB -eq "-1") { + return "`e[49m" + } + $R = $RGB.Substring(0, 2) + $G = $RGB.Substring(2, 2) + $B = $RGB.Substring(4, 2) + # Convert hex to RGB + $R = [int]::Parse($R, [System.Globalization.NumberStyles]::HexNumber) + $G = [int]::Parse($G, [System.Globalization.NumberStyles]::HexNumber) + $B = [int]::Parse($B, [System.Globalization.NumberStyles]::HexNumber) + return "`e[48;2;$R;$G;${B}m" +} +function formatPowerlineText { + param( + [string]$FG, + [string]$BG, + [string]$PLBG, + [string]$Text + ) + $ResumeSequece = "`e[0m" + $TextFG = formatFG -RGB $FG + $TextBG = formatBG -RGB $BG + $PLFG = formatFG -RGB $BG + $PLBG = formatBG -RGB $PLBG + return "$TextFG$TextBG $Text $PLFG$PLBG$ResumeSequece" +} + +function prompt { + if ($pwd.Path -eq $HOME) { + $cwd = "~" + } else { + $cwd = $pwd.ProviderPath + } + $time = Get-Date -Format "HH:mm" + $ResumeSequece = "`e[0m" + $FG0 = "FFFFFF" + $BG0 = "9A348E" + $BG1 = "DA627D" + $BG2 = "FCA17D" + $FG1 = "035E82" + $time = formatPowerlineText $FG0 $BG0 $BG1 $time + $cwd = formatPowerlineText $FG0 $BG1 $BG2 $cwd + $ps = formatPowerlineText $FG1 $BG2 "-1" "PS" + + "$time$cwd$ps$ResumeSequece " + +} + +function Invoke-Starship { + Invoke-Expression (&starship init powershell) +} + +Import-Module Catppuccin + +$Flavor = $Catppuccin['Mocha'] + +# The following colors are used by PowerShell's formatting +# Again PS 7.2+ only +$PSStyle.Formatting.Debug = $Flavor.Sky.Foreground() +$PSStyle.Formatting.Error = $Flavor.Red.Foreground() +$PSStyle.Formatting.ErrorAccent = $Flavor.Blue.Foreground() +$PSStyle.Formatting.FormatAccent = $Flavor.Teal.Foreground() +$PSStyle.Formatting.TableHeader = $Flavor.Rosewater.Foreground() +$PSStyle.Formatting.Verbose = $Flavor.Yellow.Foreground() +$PSStyle.Formatting.Warning = $Flavor.Peach.Foreground() + +$Colors = @{ + # Largely based on the Code Editor style guide + # Emphasis, ListPrediction and ListPredictionSelected are inspired by the Catppuccin fzf theme + + # Powershell colours + Emphasis = $Flavor.Red.Foreground() + Selection = $Flavor.Surface0.Background() + + # PSReadLine prediction colours + InlinePrediction = $Flavor.Overlay0.Foreground() + ListPrediction = $Flavor.Mauve.Foreground() + ListPredictionSelected = $Flavor.Surface0.Background() + + # Syntax highlighting + Command = $Flavor.Blue.Foreground() + Comment = $Flavor.Overlay0.Foreground() + Default = $Flavor.Text.Foreground() + Error = $Flavor.Red.Foreground() + Keyword = $Flavor.Mauve.Foreground() + Member = $Flavor.Rosewater.Foreground() + Number = $Flavor.Peach.Foreground() + Operator = $Flavor.Sky.Foreground() + Parameter = $Flavor.Pink.Foreground() + String = $Flavor.Green.Foreground() + Type = $Flavor.Yellow.Foreground() + Variable = $Flavor.Lavender.Foreground() +} + +# Set the colours +Set-PSReadLineOption -Colors $Colors + +# Smarter cd +# Init zoxide apter starship to avoid conflicts +# https://github.com/ajeetdsouza/zoxide/issues/723 +if (Get-Command zoxide -ErrorAction SilentlyContinue) { + Invoke-Expression (& { (zoxide init powershell | Out-String) }) + ${function:...} = { z -Path (Join-Path -Path .. -ChildPath ..) } + ${function:....} = { z -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) } + ${function:.....} = { z -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) } + ${function:......} = { z -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) } + ${function:z-} = { z - } +} +else { + ${function:...} = { Set-Location -Path (Join-Path -Path .. -ChildPath ..) } + ${function:....} = { Set-Location -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) } + ${function:.....} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) } + ${function:......} = { Set-Location -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path (Join-Path -Path .. -ChildPath ..) -ChildPath ..) -ChildPath ..) -ChildPath ..) } + ${function:z-} = { Set-Location - } +} diff --git a/tools/powershell/readme.md b/dot_config/powershell/readme.md similarity index 97% rename from tools/powershell/readme.md rename to dot_config/powershell/readme.md index db44094..6d7b1f2 100644 --- a/tools/powershell/readme.md +++ b/dot_config/powershell/readme.md @@ -1,39 +1,39 @@ -# PowerShell Profile - -This is the cross-platform PowerShell profile for PowerShell Core - -```text -. -├── Aliases.ps1 -├── Keymap.ps1 # keymaps, optimize for Vi-Mode and Colemak -├── Modules.ps1 -├── Navigation.ps1 -├── Prompt.ps1 -├── readme.md -└── Scripts.ps1 - -1 directory, 7 files -``` - -| Keymap | Action | Mode | -| ------ | -------------------- | ------ | -| `^a` | To Beginning of Line | All | -| `^e` | To End of Line | All | -| `^[` | To Normal Mode | Insert | - -## `Get-Command` vs `which.exe` under Windows - -```powershell -PS > hyperfine "pwsh.exe -NoProfile -Command 'Get-Command which'" "pwsh.exe -NoProfile -Command 'which which'" --warmup 10 -Benchmark 1: pwsh.exe -NoProfile -Command 'Get-Command which' - Time (mean ± σ): 152.1 ms ± 1.3 ms [User: 112.2 ms, System: 89.3 ms] - Range (min … max): 150.0 ms … 155.3 ms 18 runs - -Benchmark 2: pwsh.exe -NoProfile -Command 'which which' - Time (mean ± σ): 153.7 ms ± 6.4 ms [User: 126.7 ms, System: 101.9 ms] - Range (min … max): 147.8 ms … 169.5 ms 19 runs - -Summary - pwsh.exe -NoProfile -Command 'Get-Command which' ran - 1.01 ± 0.04 times faster than pwsh.exe -NoProfile -Command 'which which' -``` +# PowerShell Profile + +This is the cross-platform PowerShell profile for PowerShell Core + +```text +. +├── Aliases.ps1 +├── Keymap.ps1 # keymaps, optimize for Vi-Mode and Colemak +├── Modules.ps1 +├── Navigation.ps1 +├── Prompt.ps1 +├── readme.md +└── Scripts.ps1 + +1 directory, 7 files +``` + +| Keymap | Action | Mode | +| ------ | -------------------- | ------ | +| `^a` | To Beginning of Line | All | +| `^e` | To End of Line | All | +| `^[` | To Normal Mode | Insert | + +## `Get-Command` vs `which.exe` under Windows + +```powershell +PS > hyperfine "pwsh.exe -NoProfile -Command 'Get-Command which'" "pwsh.exe -NoProfile -Command 'which which'" --warmup 10 +Benchmark 1: pwsh.exe -NoProfile -Command 'Get-Command which' + Time (mean ± σ): 152.1 ms ± 1.3 ms [User: 112.2 ms, System: 89.3 ms] + Range (min … max): 150.0 ms … 155.3 ms 18 runs + +Benchmark 2: pwsh.exe -NoProfile -Command 'which which' + Time (mean ± σ): 153.7 ms ± 6.4 ms [User: 126.7 ms, System: 101.9 ms] + Range (min … max): 147.8 ms … 169.5 ms 19 runs + +Summary + pwsh.exe -NoProfile -Command 'Get-Command which' ran + 1.01 ± 0.04 times faster than pwsh.exe -NoProfile -Command 'which which' +``` diff --git a/dot_config/powershell/xaa b/dot_config/powershell/xaa new file mode 100644 index 0000000..67fbfd1 --- /dev/null +++ b/dot_config/powershell/xaa @@ -0,0 +1 @@ +/home/js0ny/.local/share/powershell/Modules:/usr/local/share/powershell/Modules:/opt/microsoft/powershell/7/Modules diff --git a/scripts/run_once_powershell.ps1 b/scripts/run_once_powershell.ps1 new file mode 100644 index 0000000..acb711d --- /dev/null +++ b/scripts/run_once_powershell.ps1 @@ -0,0 +1,6 @@ +#!/usr/bin/env pwsh + +Install-Package PSFzf -Force +Install-Package CompletionPredictor -Force + +git clone --depth 1 https://github.com/catppuccin/powershell.git (Join-Path $Env:PSModulePath.Split(':')[0] Catppuccin) From f3f92431b24f466254002e6f3361be59d382c03d Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 13:46:16 +0100 Subject: [PATCH 06/48] chezmoi: bat, ideavim, lazygit, lsd, readline, vim, zellij, lesskey --- common/bat.config | 1 - common/haskeline | 4 - common/lazygit.yaml | 476 ---------- common/vimrc | 74 -- {common => dot_config/bat}/bat.config.dark | 0 {common => dot_config/bat}/bat.config.light | 0 dot_config/bat/symlink_bat.config | 1 + dot_config/ideavim/ideavimrc | 239 +++++ dot_config/lazygit/empty_config.yml | 0 {common => dot_config}/lesskey | 54 +- {common => dot_config/lsd}/lsd.yaml | 0 {common => dot_config/readline}/inputrc | 5 +- .../vim/vimrc | 0 .../zellij}/zellij.config.kdl | 814 +++++++++--------- dot_haskeline | 1 + 15 files changed, 678 insertions(+), 991 deletions(-) delete mode 120000 common/bat.config delete mode 100644 common/haskeline delete mode 100644 common/lazygit.yaml delete mode 100644 common/vimrc rename {common => dot_config/bat}/bat.config.dark (100%) rename {common => dot_config/bat}/bat.config.light (100%) create mode 100644 dot_config/bat/symlink_bat.config create mode 100644 dot_config/ideavim/ideavimrc create mode 100644 dot_config/lazygit/empty_config.yml rename {common => dot_config}/lesskey (97%) rename {common => dot_config/lsd}/lsd.yaml (100%) rename {common => dot_config/readline}/inputrc (94%) rename common/vimrc+qwerty.vimrc => dot_config/vim/vimrc (100%) rename {common => dot_config/zellij}/zellij.config.kdl (97%) create mode 100644 dot_haskeline diff --git a/common/bat.config b/common/bat.config deleted file mode 120000 index 2de399f..0000000 --- a/common/bat.config +++ /dev/null @@ -1 +0,0 @@ -/home/js0ny/.dotfiles/common/bat.config.light \ No newline at end of file diff --git a/common/haskeline b/common/haskeline deleted file mode 100644 index 8dd3b01..0000000 --- a/common/haskeline +++ /dev/null @@ -1,4 +0,0 @@ -editMode: Vi -bind: n down -bind: e up -bind: l vi-insert diff --git a/common/lazygit.yaml b/common/lazygit.yaml deleted file mode 100644 index 952549b..0000000 --- a/common/lazygit.yaml +++ /dev/null @@ -1,476 +0,0 @@ -yaml-language-server: $schema=https://raw.githubusercontent.com/jesseduffield/lazygit/master/schema/config.json -# Config relating to the Lazygit UI -gui: - # The number of lines you scroll by when scrolling the main window - scrollHeight: 2 - # If true, allow scrolling past the bottom of the content in the main window - scrollPastBottom: true - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#scroll-off-margin - scrollOffMargin: 2 - # One of: 'margin' (default) | 'jump' - scrollOffBehavior: margin - # If true, capture mouse events. - # When mouse events are captured, it's a little harder to select text: e.g. requiring you to hold the option key when on macOS. - mouseEvents: true - # If true, do not show a warning when discarding changes in the staging view. - skipDiscardChangeWarning: false - # If true, do not show warning when applying/popping the stash - skipStashWarning: false - # If true, do not show a warning when attempting to commit without any staged files; instead stage all unstaged files. - skipNoStagedFilesWarning: false - # If true, do not show a warning when rewording a commit via an external editor - skipRewordInEditorWarning: false - # Fraction of the total screen width to use for the left side section. You may want to pick a small number (e.g. 0.2) if you're using a narrow screen, so that you can see more of the main section. - # Number from 0 to 1.0. - sidePanelWidth: 0.3333 - # If true, increase the height of the focused side window; creating an accordion effect. - expandFocusedSidePanel: false - # The weight of the expanded side panel, relative to the other panels. 2 means - # twice as tall as the other panels. Only relevant if `expandFocusedSidePanel` is true. - expandedSidePanelWeight: 2 - # Sometimes the main window is split in two (e.g. when the selected file has both staged and unstaged changes). This setting controls how the two sections are split. - # Options are: - # - 'horizontal': split the window horizontally - # - 'vertical': split the window vertically - # - 'flexible': (default) split the window horizontally if the window is wide enough, otherwise split vertically - mainPanelSplitMode: flexible - # How the window is split when in half screen mode (i.e. after hitting '+' once). - # Possible values: - # - 'left': split the window horizontally (side panel on the left, main view on the right) - # - 'top': split the window vertically (side panel on top, main view below) - enlargedSideViewLocation: left - # One of 'auto' (default) | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru' - language: auto - # Format used when displaying time e.g. commit time. - # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format - timeFormat: 02 Jan 06 - # Format used when displaying time if the time is less than 24 hours ago. - # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format - shortTimeFormat: 3:04PM - # Config relating to colors and styles. - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#color-attributes - theme: - activeBorderColor: - - "#b4befe" - - bold - inactiveBorderColor: - - "#a6adc8" - optionsTextColor: - - "#89b4fa" - selectedLineBgColor: - - "#313244" - cherryPickedCommitBgColor: - - "#45475a" - cherryPickedCommitFgColor: - - "#b4befe" - unstagedChangesColor: - - "#f38ba8" - defaultFgColor: - - "#cdd6f4" - searchingActiveBorderColor: - - "#f9e2af" - authorColors: - "*": "#b4befe" - # Background color of selected line when view doesn't have focus. - inactiveViewSelectedLineBgColor: - - bold - # Foreground color of marked base commit (for rebase) - markedBaseCommitFgColor: - - blue - # Background color of marked base commit (for rebase) - markedBaseCommitBgColor: - - yellow - # Config relating to the commit length indicator - commitLength: - # If true, show an indicator of commit message length - show: true - # If true, show the '5 of 20' footer at the bottom of list views - showListFooter: true - # If true, display the files in the file views as a tree. If false, display the files as a flat list. - # This can be toggled from within Lazygit with the '~' key, but that will not change the default. - showFileTree: true - # If true, show the number of lines changed per file in the Files view - showNumstatInFilesView: false - # If true, show a random tip in the command log when Lazygit starts - showRandomTip: true - # If true, show the command log - showCommandLog: true - # If true, show the bottom line that contains keybinding info and useful buttons. If false, this line will be hidden except to display a loader for an in-progress action. - showBottomLine: true - # If true, show jump-to-window keybindings in window titles. - showPanelJumps: true - # Deprecated: use nerdFontsVersion instead - showIcons: false - # Nerd fonts version to use. - # One of: '2' | '3' | empty string (default) - # If empty, do not show icons. - nerdFontsVersion: "3" - # If true (default), file icons are shown in the file views. Only relevant if NerdFontsVersion is not empty. - showFileIcons: true - # Length of author name in (non-expanded) commits view. 2 means show initials only. - commitAuthorShortLength: 2 - # Length of author name in expanded commits view. 2 means show initials only. - commitAuthorLongLength: 17 - # Length of commit hash in commits view. 0 shows '*' if NF icons aren't on. - commitHashLength: 8 - # If true, show commit hashes alongside branch names in the branches view. - showBranchCommitHash: false - # Whether to show the divergence from the base branch in the branches view. - # One of: 'none' | 'onlyArrow' | 'arrowAndNumber' - showDivergenceFromBaseBranch: none - # Height of the command log view - commandLogSize: 8 - # Whether to split the main window when viewing file changes. - # One of: 'auto' | 'always' - # If 'auto', only split the main window when a file has both staged and unstaged changes - splitDiff: auto - # Default size for focused window. Window size can be changed from within Lazygit with '+' and '_' (but this won't change the default). - # One of: 'normal' (default) | 'half' | 'full' - screenMode: normal - # Window border style. - # One of 'rounded' (default) | 'single' | 'double' | 'hidden' - border: rounded - # If true, show a seriously epic explosion animation when nuking the working tree. - animateExplosion: true - # Whether to stack UI components on top of each other. - # One of 'auto' (default) | 'always' | 'never' - portraitMode: auto - # How things are filtered when typing '/'. - # One of 'substring' (default) | 'fuzzy' - filterMode: substring - # Config relating to the spinner. - spinner: - # The frames of the spinner animation. - frames: - - "|" - - / - - "-" - - \ - # The "speed" of the spinner in milliseconds. - rate: 50 - # Status panel view. - # One of 'dashboard' (default) | 'allBranchesLog' - statusPanelView: dashboard - # If true, jump to the Files panel after popping a stash - switchToFilesAfterStashPop: true - # If true, jump to the Files panel after applying a stash - switchToFilesAfterStashApply: true - # If true, when using the panel jump keys (default 1 through 5) and target panel is already active, go to next tab instead - switchTabsWithPanelJumpKeys: false -# Config relating to git -git: - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md - paging: - # Value of the --color arg in the git diff command. Some pagers want this to be set to 'always' and some want it set to 'never' - colorArg: always - # e.g. - # diff-so-fancy - # delta --dark --paging=never - # ydiff -p cat -s --wrap --width={{columnWidth}} - pager: "delta --dark --paging=never" - # If true, Lazygit will use whatever pager is specified in `$GIT_PAGER`, `$PAGER`, or your *git config*. If the pager ends with something like ` | less` we will strip that part out, because less doesn't play nice with our rendering approach. If the custom pager uses less under the hood, that will also break rendering (hence the `--paging=never` flag for the `delta` pager). - useConfig: false - # e.g. 'difft --color=always' - externalDiffCommand: "" - # Config relating to committing - commit: - # If true, pass '--signoff' flag when committing - signOff: false - # Automatic WYSIWYG wrapping of the commit message as you type - autoWrapCommitMessage: true - # If autoWrapCommitMessage is true, the width to wrap to - autoWrapWidth: 72 - # Config relating to merging - merging: - # If true, run merges in a subprocess so that if a commit message is required, Lazygit will not hang - # Only applicable to unix users. - manualCommit: false - # Extra args passed to `git merge`, e.g. --no-ff - args: "" - # The commit message to use for a squash merge commit. Can contain "{{selectedRef}}" and "{{currentBranch}}" placeholders. - squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}} - # list of branches that are considered 'main' branches, used when displaying commits - mainBranches: - - master - - main - # Prefix to use when skipping hooks. E.g. if set to 'WIP', then pre-commit hooks will be skipped when the commit message starts with 'WIP' - skipHookPrefix: WIP - # If true, periodically fetch from remote - autoFetch: true - # If true, periodically refresh files and submodules - autoRefresh: true - # If true, pass the --all arg to git fetch - fetchAll: true - # If true, lazygit will automatically stage files that used to have merge - # conflicts but no longer do; and it will also ask you if you want to - # continue a merge or rebase if you've resolved all conflicts. If false, it - # won't do either of these things. - autoStageResolvedConflicts: true - # Command used when displaying the current branch git log in the main window - branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} -- - # If true, do not spawn a separate process when using GPG - overrideGpg: false - # If true, do not allow force pushes - disableForcePushing: false - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-commit-message-prefix - commitPrefix: - - # pattern to match on. E.g. for 'feature/AB-123' to match on the AB-123 use "^\\w+\\/(\\w+-\\w+).*" - pattern: "" - # Replace directive. E.g. for 'feature/AB-123' to start the commit message with 'AB-123 ' use "[$1] " - replace: "" - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-branch-name-prefix - branchPrefix: "" - # If true, parse emoji strings in commit messages e.g. render :rocket: as 🚀 - # (This should really be under 'gui', not 'git') - parseEmoji: false - # Config for showing the log in the commits view - log: - # One of: 'date-order' | 'author-date-order' | 'topo-order' | 'default' - # 'topo-order' makes it easier to read the git log graph, but commits may not - # appear chronologically. See https://git-scm.com/docs/ - # - # Deprecated: Configure this with `Log menu -> Commit sort order` ( in the commits window by default). - order: topo-order - # This determines whether the git graph is rendered in the commits panel - # One of 'always' | 'never' | 'when-maximised' - # - # Deprecated: Configure this with `Log menu -> Show git graph` ( in the commits window by default). - showGraph: always - # displays the whole git graph by default in the commits view (equivalent to passing the `--all` argument to `git log`) - showWholeGraph: false - # When copying commit hashes to the clipboard, truncate them to this - # length. Set to 40 to disable truncation. - truncateCopiedCommitHashesTo: 12 - allBranchesLogCmds: - - git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium -# Periodic update checks -update: - # One of: 'prompt' (default) | 'background' | 'never' - method: prompt - # Period in days between update checks - days: 14 -# Background refreshes -refresher: - # File/submodule refresh interval in seconds. - # Auto-refresh can be disabled via option 'git.autoRefresh'. - refreshInterval: 10 - # Re-fetch interval in seconds. - # Auto-fetch can be disabled via option 'git.autoFetch'. - fetchInterval: 60 -# If true, show a confirmation popup before quitting Lazygit -confirmOnQuit: false -# If true, exit Lazygit when the user presses escape in a context where there is nothing to cancel/close -quitOnTopLevelReturn: false -# Config relating to things outside of Lazygit like how files are opened, copying to clipboard, etc -os: - # Command for editing a file. Should contain "{{filename}}". - edit: "" - # Command for editing a file at a given line number. Should contain - # "{{filename}}", and may optionally contain "{{line}}". - editAtLine: "" - # Same as EditAtLine, except that the command needs to wait until the - # window is closed. - editAtLineAndWait: "" - # For opening a directory in an editor - openDirInEditor: "" - # A built-in preset that sets all of the above settings. Supported presets - # are defined in the getPreset function in editor_presets.go. - editPreset: "nvim" - # Command for opening a file, as if the file is double-clicked. Should - # contain "{{filename}}", but doesn't support "{{line}}". - open: "" - # Command for opening a link. Should contain "{{link}}". - openLink: "" - # EditCommand is the command for editing a file. - # Deprecated: use Edit instead. Note that semantics are different: - # EditCommand is just the command itself, whereas Edit contains a - # "{{filename}}" variable. - editCommand: "" - # EditCommandTemplate is the command template for editing a file - # Deprecated: use EditAtLine instead. - editCommandTemplate: "" - # OpenCommand is the command for opening a file - # Deprecated: use Open instead. - openCommand: "" - # OpenLinkCommand is the command for opening a link - # Deprecated: use OpenLink instead. - openLinkCommand: "" - # CopyToClipboardCmd is the command for copying to clipboard. - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard - copyToClipboardCmd: "" - # ReadFromClipboardCmd is the command for reading the clipboard. - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard - readFromClipboardCmd: "" -# If true, don't display introductory popups upon opening Lazygit. -disableStartupPopups: false -# What to do when opening Lazygit outside of a git repo. -# - 'prompt': (default) ask whether to initialize a new repo or open in the most recent repo -# - 'create': initialize a new repo -# - 'skip': open most recent repo -# - 'quit': exit Lazygit -notARepository: prompt -# If true, display a confirmation when subprocess terminates. This allows you to view the output of the subprocess before returning to Lazygit. -promptToReturnFromSubprocess: true -# Keybindings -keybinding: - universal: - quit: q - quit-alt1: - return: - quitWithoutChangingDirectory: Q - togglePanel: - prevItem: - nextItem: - prevItem-alt: e - nextItem-alt: "n" - prevPage: "," - nextPage: . - scrollLeft: H - scrollRight: L - gotoTop: < - gotoBottom: ">" - toggleRangeSelect: v - rangeSelectDown: - rangeSelectUp: - prevBlock: - nextBlock: - prevBlock-alt: h - nextBlock-alt: i - nextBlock-alt2: - prevBlock-alt2: - jumpToBlock: - - "1" - - "2" - - "3" - - "4" - - "5" - nextMatch: "k" - prevMatch: "K" - startSearch: / - optionMenu: - optionMenu-alt1: "?" - select: - goInto: - confirm: - confirmInEditor: - remove: d - new: "n" - edit: l - openFile: o - scrollUpMain: - scrollDownMain: - scrollUpMain-alt1: E - scrollDownMain-alt1: "N" - scrollUpMain-alt2: - scrollDownMain-alt2: - executeShellCommand: ":" - createRebaseOptionsMenu: m - # 'Files' appended for legacy reasons - pushFiles: P - # 'Files' appended for legacy reasons - pullFiles: p - refresh: R - createPatchOptionsMenu: - nextTab: "]" - prevTab: "[" - nextScreenMode: + - prevScreenMode: _ - undo: z - redo: - filteringMenu: - diffingMenu: W - diffingMenu-alt: - copyToClipboard: - openRecentRepos: - submitEditorText: - extrasMenu: "@" - toggleWhitespaceInDiffView: - increaseContextInDiffView: "}" - decreaseContextInDiffView: "{" - increaseRenameSimilarityThreshold: ) - decreaseRenameSimilarityThreshold: ( - openDiffTool: - status: - checkForUpdate: u - recentRepos: - allBranchesLogGraph: a - files: - commitChanges: c - commitChangesWithoutHook: w - amendLastCommit: A - commitChangesWithEditor: C - findBaseCommitForFixup: - confirmDiscard: x - ignoreFile: i - refreshFiles: r - stashAllChanges: s - viewStashOptions: S - toggleStagedAll: a - viewResetOptions: D - fetch: f - toggleTreeView: "t" - openMergeTool: M - openStatusFilter: - copyFileInfoToClipboard: "y" - branches: - createPullRequest: o - viewPullRequestOptions: O - copyPullRequestURL: - checkoutBranchByName: c - forceCheckoutBranch: F - rebaseBranch: r - renameBranch: R - mergeIntoCurrentBranch: M - viewGitFlowOptions: l - fastForward: f - createTag: T - pushTag: P - setUpstream: u - fetchRemote: f - sortOrder: s - worktrees: - viewWorktreeOptions: w - commits: - squashDown: s - renameCommit: r - renameCommitWithEditor: R - viewResetOptions: g - markCommitAsFixup: f - createFixupCommit: F - squashAboveCommits: S - moveDownCommit: - moveUpCommit: - amendToCommit: A - resetCommitAuthor: a - pickCommit: p - revertCommit: t - cherryPickCopy: C - pasteCommits: V - markCommitAsBaseForRebase: B - tagCommit: T - checkoutCommit: - resetCherryPick: - copyCommitAttributeToClipboard: "y" - openLogMenu: - openInBrowser: o - viewBisectOptions: b - startInteractiveRebase: I - amendAttribute: - resetAuthor: a - setAuthor: A - addCoAuthor: c - stash: - popStash: g - renameStash: r - commitFiles: - checkoutCommitFile: c - main: - toggleSelectHunk: a - pickBothHunks: b - editSelectHunk: E - submodules: - init: I - update: u - bulkMenu: b - commitMessage: - commitMenu: diff --git a/common/vimrc b/common/vimrc deleted file mode 100644 index 8bac7e8..0000000 --- a/common/vimrc +++ /dev/null @@ -1,74 +0,0 @@ -" $XDG_CONFIG_HOME/vim/vimrc -" This is a minimal setup of vimrc -" ln -sf $DOTFILES/.config/vim/vimrc $XDG_CONFIG_HOME/vim/vimrc - -" Colemak Keys - -" Arrow remap -noremap n j -noremap e k -noremap i l -nnoremap N 5j -nnoremap E 5k -vnoremap H ^ -xnoremap H ^ -onoremap H ^ -vnoremap I $ -xnoremap I $ -onoremap I $ -noremap I L - -" Similar position to i -noremap l i -noremap L I -" ne[k]st -noremap k n -noremap K N -" [j]ump -noremap j e -noremap J E - -" Normal minimal setup - -noremap Y y$ -set expandtab -set tabstop=4 -set shiftwidth=4 -set autoindent -set smartindent -set wrap -set scrolloff=3 -set hlsearch -set incsearch -set ignorecase -set smartcase - -set number -set relativenumber - -set laststatus=2 -set showcmd -set statusline=%<%f\ %h%m%r\ %=\ [%l,%v]\ [%p%%]\ [\ %Y]\ [󱑉\ %{strftime('%H:%M:%S')}] - - -" XDG Directory Specifications -" Reference to https://jorenar.com/blog/vim-xdg - -if empty($XDG_CACHE_HOME) | let $XDG_CACHE_HOME = $HOME."/.cache" | endif -if empty($XDG_CONFIG_HOME) | let $XDG_CONFIG_HOME = $HOME."/.config" | endif -if empty($XDG_DATA_HOME) | let $XDG_DATA_HOME = $HOME."/.local/share" | endif -if empty($XDG_STATE_HOME) | let $XDG_STATE_HOME = $HOME."/.local/state" | endif - -set viminfo+=n$XDG_STATE_HOME/vim/viminfo -set packpath^=$XDG_DATA_HOME/vim -set packpath+=$XDG_DATA_HOME/vim/after -set backupdir=$XDG_STATE_HOME/vim/backup -set directory=$XDG_STATE_HOME/vim/swap -set undodir=$XDG_STATE_HOME/vim/undo -set viewdir=$XDG_STATE_HOME/vim/view -" set shada+=n$XDG_STATE_HOME/vim/shada -" Leader -let mapleader = "\" -nnoremap :FZF -" Misc -syntax on diff --git a/common/bat.config.dark b/dot_config/bat/bat.config.dark similarity index 100% rename from common/bat.config.dark rename to dot_config/bat/bat.config.dark diff --git a/common/bat.config.light b/dot_config/bat/bat.config.light similarity index 100% rename from common/bat.config.light rename to dot_config/bat/bat.config.light diff --git a/dot_config/bat/symlink_bat.config b/dot_config/bat/symlink_bat.config new file mode 100644 index 0000000..51b80b1 --- /dev/null +++ b/dot_config/bat/symlink_bat.config @@ -0,0 +1 @@ +bat.config.dark diff --git a/dot_config/ideavim/ideavimrc b/dot_config/ideavim/ideavimrc new file mode 100644 index 0000000..04fb390 --- /dev/null +++ b/dot_config/ideavim/ideavimrc @@ -0,0 +1,239 @@ +" $DOTFILES/common/ideavimrc +" Date: 2024-12-22 +" Author: js0ny + +" Location: +" $XDG_CONFIG_HOME/ideavim/ideavimrc +" Linking: +" ln -sf $DOTFILES/common/ideavimrc $XDG_CONFIG_HOME/ideavim/ideavimrc + +source ~/.local/share/intellimacs/spacemacs.vim + +source ~/.local/share/intellimacs/extra.vim +source ~/.local/share/intellimacs/major.vim +source ~/.local/share/intellimacs/hybrid.vim + +source ~/.local/share/intellimacs/which-key.vim + + +" """ Basic Configs """ +let mapleader = " " " set to + +""" Colemak """ +noremap n j +noremap e k +noremap i l + +" Similar position to i +noremap l i +noremap L I +" ne[k]st +noremap k n +noremap K N +" [j]ump +noremap j e +noremap J E + +nnoremap H :bp +nnoremap I :bn +noremap N 5j +noremap E 5k +vnoremap H ^ +xnoremap H ^ +onoremap H ^ +vnoremap I $ +xnoremap I $ +onoremap I $ + + + +" Y to yank to end of line +noremap Y y$ + +""" Options """ +" search for actions: :actionlist + +"" Vim Compat "" +set clipboard=unnamedplus,unnamed,ideaput " integrate with system clipboard +set gdefault " substitute all occurrences in line per default +set history=4096 " keep x lines of command line history +set hlsearch +set ignorecase +set incsearch +set keymodel=startsel,stopsel +set matchpairs+=<:> +set showcmd +set smartcase " no ignore case when pattern is uppercase +set wrapscan " searches wrap around the end of the file + +"" IDE Settings "" +set scrolloff=5 +set sidescrolloff=10 + +"" IDE Features "" +set relativenumber " Hybrid Line Number shown + +"" IdeaVim Only "" +set ideajoin +set ideastatusicon=enabled + +""" Plugins """ + +Plug 'justinmk/vim-sneak' +Plug 'preservim/nerdtree' +Plug 'tpope/vim-surround' +Plug 'tpope/vim-commentary' +Plug 'terryma/vim-multiple-cursors' +Plug 'machakann/vim-highlightedyank' +Plug 'easymotion/vim-easymotion' + +""" Keybindings """ + +"" don't lose selection when indenting "" +vnoremap < >gv +vnoremap = =gv + +"" edit ideavim config v + "" +nnoremap vv :e ~/.ideavimrc +nnoremap vr :source ~/.ideavimrc + +"" NERDTree "" +nnoremap e :NERDTreeToggle + +"" EasyMotion "" +nmap s (easymotion-f) +nmap S (easymotion-F) + +"" Sneak "" +nmap f (sneak-s) +nmap F (sneak-S) + +"" Language Server Protocol "" +nnoremap gd :action GotoDeclaration +nnoremap gtd :action GotoTypeDeclaration +nnoremap gtD :action QuickTypeDefinition +nnoremap gr :action ShowUsages +nnoremap gi :action GotoImplementation +nnoremap gpi :action QuickImplementations +nnoremap gs :action GotoSuperMethod +nnoremap ga :action ShowIntentionActions +nnoremap gq :action ShowIntentionActions +nnoremap ge :action GotoNextError + +"" Collapse and Expand z + "" +nnoremap zi :action ExpandCollapseToggleAction +nnoremap zc :action CollapseRegion +nnoremap zC :action CollapseRegionRecursively +nnoremap zM :action CollapseAll +nnoremap zo :action ExpandRegion +nnoremap zO :action ExpandRegionRecursively +nnoremap zR :action ExpandAll + +"" Miscs "" +nnoremap : :action GotoAction +nnoremap :action GotoFile +nnoremap h :action PrevSplitter +nnoremap i :action NextSplitter + +"" AI Related a + "" +nnoremap ac :action copilot.chat.show +nnoremap ad :action copilot.disableCopilot +nnoremap ae :action copilot.enableCopilot +nnoremap aa :action copilot.openCopilot + +" b : +buffer +nnoremap bb :action Switcher +noremap bd :bdelete +noremap bh :bprevious +noremap bi :bnext +noremap bp :bprevious +noremap bn :bnext + +" c : +code/compile +nnoremap cr :action Run +nnoremap cf :action ReformatCode +nnoremap cs :action GotoSymbol +nnoremap cS :action GotoSymbol +nnoremap cR :action RenameElement +""" Works for Rider only +nnoremap ce :action ReSharperGotoNextErrorInSolution +nnoremap cE :action ReSharperGotoPrevErrorInSolution + +" d : +debug + +" f : +file +nnoremap ff :action GotoFile +nnoremap fF :action TextSearchAction +nnoremap fc :action ShowSettings +nnoremap fC :action ShowSettings +nnoremap fe :NERDTreeToggle +nnoremap fo :OpenInAssociatedApplication +nnoremap ft :action ActivateTerminalToolWindow +nnoremap fx :action WelcomeScreen.Plugins + +" g : +git +nnoremap gp :action Git.Pull +nnoremap gP :action Vcs.Push +nnoremap gb :action Git.Branches +nnoremap gR :action Git.Rebase +nnoremap gM :action Git.Merge +nnoremap gc :action CheckinProject +nnoremap gC :action Git.Clone +nnoremap gg :action ActivateVersionControlToolWindow +nnoremap gS :action Git.Stash + +" h : +help + +" p : +project +nnoremap pr :action Run +nnoremap pd :action Debug +nnoremap pb :action Build + +" q : +quit +nnoremap qq :action Exit +nnoremap Q :action Exit + +" r : +refactor +nnoremap ri :action Inline +nnoremap rr :action RenamElement +nnoremap rev :action IntroduceVariable +vnoremap rev :action IntroduceVariable +nnoremap rem :action ExtractMethod +vnoremap rem :action ExtractMethod +nnoremap rm :action Move +nnoremap ro :action OptimizeImports +nnoremap rG :action Generate + +" t : +test +nnoremap tt :action RiderUnitTestRunSolutionAction +nnoremap tT :action Rider.UnitTesting.MainMenu + +" u : +ui +nnoremap ui :action ChangeLaf +nnoremap uw :action EditorToggleUseSoftWraps + +" w : +write/window +nnoremap ww :write +nnoremap wa :wall +nnoremap wq :wq +nnoremap W :write +nnoremap wh :action PrevSplitter +nnoremap wi :action NextSplitter +nnoremap wH :action SplitHorizontally +nnoremap wI :action SplitHorizontally +nnoremap wN :action SplitVertically +nnoremap wE :action SplitVertically +nnoremap w- :action SplitHorizontally +nnoremap w| :action SplitVertically +nnoremap w\ :action SplitVertically + +nnoremap :action ParameterInfo +inoremap :action ParameterInfo + +""" Handling Ctrls """ + +sethandler i:ide +sethandler n-v:vim i:ide +sethandler a:ide +sethandler > a:ide diff --git a/dot_config/lazygit/empty_config.yml b/dot_config/lazygit/empty_config.yml new file mode 100644 index 0000000..e69de29 diff --git a/common/lesskey b/dot_config/lesskey similarity index 97% rename from common/lesskey rename to dot_config/lesskey index 4e7233c..c30a1cc 100644 --- a/common/lesskey +++ b/dot_config/lesskey @@ -1,27 +1,27 @@ -# $DOTFILES/common/lesskey -# Date: 2024-12-22 -# Author: js0ny -# Less the pager. - -# Location: -# *nix: $XDG_CONFIG_HOME/lesskey (Or specified by the environment variable $LESSKEYIN) -# Windows: %LESSKEYIN% (environment variable, default: %UserProfile%/_lesskey) -# $Env:LESSKEYIN = $Env:AppData\less\lesskey -# Linking: -# ln -sf $DOTFILES/common/lesskey ~/.config/lesskey -# New-Item -ItemType SymbolicLink -Target $DOTFILES\common\lesskey -Path $Env:LESSKEYIN -# =========================================================== -# work for less -V > 582, for mac, use brew install less to override the system less -# In Windows (current version), the default pager is `more`, should be specifed to `less` by `$Env:Pager = less` - -# Format: key action - -# Arrow Remap (hnei -> hjkl) -n forw-line -e back-line -N forw-line-force -E back-line-force - -# search with k : ne[k]st -k repeat-search -K reverse-search +# $DOTFILES/common/lesskey +# Date: 2024-12-22 +# Author: js0ny +# Less the pager. + +# Location: +# *nix: $XDG_CONFIG_HOME/lesskey (Or specified by the environment variable $LESSKEYIN) +# Windows: %LESSKEYIN% (environment variable, default: %UserProfile%/_lesskey) +# $Env:LESSKEYIN = $Env:AppData\less\lesskey +# Linking: +# ln -sf $DOTFILES/common/lesskey ~/.config/lesskey +# New-Item -ItemType SymbolicLink -Target $DOTFILES\common\lesskey -Path $Env:LESSKEYIN +# =========================================================== +# work for less -V > 582, for mac, use brew install less to override the system less +# In Windows (current version), the default pager is `more`, should be specifed to `less` by `$Env:Pager = less` + +# Format: key action + +# Arrow Remap (hnei -> hjkl) +n forw-line +e back-line +N forw-line-force +E back-line-force + +# search with k : ne[k]st +k repeat-search +K reverse-search diff --git a/common/lsd.yaml b/dot_config/lsd/lsd.yaml similarity index 100% rename from common/lsd.yaml rename to dot_config/lsd/lsd.yaml diff --git a/common/inputrc b/dot_config/readline/inputrc similarity index 94% rename from common/inputrc rename to dot_config/readline/inputrc index 705dcdd..4d1a231 100644 --- a/common/inputrc +++ b/dot_config/readline/inputrc @@ -5,9 +5,10 @@ # e.g. Python REPL, Lua REPL, Bash on Linux # Location: -# ~/.inputrc +# $INPUTRC +# export INPUTRC="$XDG_CONFIG_HOME"/readline/inputrc # Linking: -# ln -sf $DOTFILES/common/inputrc ~/.inputrc +# ln -sf $DOTFILES/common/inputrc $INPUTRC # Use `man readline` to see all the options # Reference: https://wiki.archlinux.org/title/Readline diff --git a/common/vimrc+qwerty.vimrc b/dot_config/vim/vimrc similarity index 100% rename from common/vimrc+qwerty.vimrc rename to dot_config/vim/vimrc diff --git a/common/zellij.config.kdl b/dot_config/zellij/zellij.config.kdl similarity index 97% rename from common/zellij.config.kdl rename to dot_config/zellij/zellij.config.kdl index 9c83644..141493d 100644 --- a/common/zellij.config.kdl +++ b/dot_config/zellij/zellij.config.kdl @@ -1,407 +1,407 @@ -// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true" -keybinds { - normal { - // uncomment this and adjust key if using copy_on_select=false - // bind "Alt c" { Copy; } - } - locked { - bind "Ctrl g" { SwitchToMode "Normal"; } - } - resize { - bind "Ctrl n" { SwitchToMode "Normal"; } - bind "h" "Left" { Resize "Increase Left"; } - bind "n" "Down" { Resize "Increase Down"; } - bind "e" "Up" { Resize "Increase Up"; } - bind "i" "Right" { Resize "Increase Right"; } - bind "H" { Resize "Decrease Left"; } - bind "N" { Resize "Decrease Down"; } - bind "E" { Resize "Decrease Up"; } - bind "I" { Resize "Decrease Right"; } - bind "=" "+" { Resize "Increase"; } - bind "-" { Resize "Decrease"; } - } - pane { - bind "Ctrl p" { SwitchToMode "Normal"; } - bind "h" "Left" { MoveFocus "Left"; } - bind "i" "Right" { MoveFocus "Right"; } - bind "n" "Down" { MoveFocus "Down"; } - bind "e" "Up" { MoveFocus "Up"; } - bind "p" { SwitchFocus; } - bind "c" { NewPane; SwitchToMode "Normal"; } - bind "N" { NewPane "Down"; SwitchToMode "Normal"; } - bind "I" { NewPane "Right"; SwitchToMode "Normal"; } - bind "x" { CloseFocus; SwitchToMode "Normal"; } - bind "f" { ToggleFocusFullscreen; SwitchToMode "Normal"; } - bind "z" { TogglePaneFrames; SwitchToMode "Normal"; } - bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; } - bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; } - bind "r" { SwitchToMode "RenamePane"; PaneNameInput 0;} - } - move { - bind "Ctrl h" { SwitchToMode "Normal"; } - bind "h" "Left" { MovePane "Left"; } - bind "n" "Down" { MovePane "Down"; } - bind "e" "Up" { MovePane "Up"; } - bind "i" "Right" { MovePane "Right"; } - } - tab { - bind "Ctrl t" { SwitchToMode "Normal"; } - bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; } - bind "h" "Left" "Up" "e" { GoToPreviousTab; } - bind "i" "Right" "Down" "n" { GoToNextTab; } - bind "c" { NewTab; SwitchToMode "Normal"; } - bind "x" { CloseTab; SwitchToMode "Normal"; } - bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; } - bind "b" { BreakPane; SwitchToMode "Normal"; } - bind "]" { BreakPaneRight; SwitchToMode "Normal"; } - bind "[" { BreakPaneLeft; SwitchToMode "Normal"; } - bind "1" { GoToTab 1; SwitchToMode "Normal"; } - bind "2" { GoToTab 2; SwitchToMode "Normal"; } - bind "3" { GoToTab 3; SwitchToMode "Normal"; } - bind "4" { GoToTab 4; SwitchToMode "Normal"; } - bind "5" { GoToTab 5; SwitchToMode "Normal"; } - bind "6" { GoToTab 6; SwitchToMode "Normal"; } - bind "7" { GoToTab 7; SwitchToMode "Normal"; } - bind "8" { GoToTab 8; SwitchToMode "Normal"; } - bind "9" { GoToTab 9; SwitchToMode "Normal"; } - bind "Tab" { ToggleTab; } - } - scroll { - bind "Ctrl s" { SwitchToMode "Normal"; } - bind "r" { EditScrollback; SwitchToMode "Normal"; } - bind "s" { SwitchToMode "EnterSearch"; SearchInput 0; } - bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; } - bind "n" "Down" { ScrollDown; } - bind "e" "Up" { ScrollUp; } - bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; } - bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; } - bind "d" { HalfPageScrollDown; } - bind "u" { HalfPageScrollUp; } - // uncomment this and adjust key if using copy_on_select=false - // bind "Alt c" { Copy; } - } - search { - bind "Ctrl s" { SwitchToMode "Normal"; } - bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; } - bind "n" "Down" { ScrollDown; } - bind "e" "Up" { ScrollUp; } - bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; } - bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; } - bind "d" { HalfPageScrollDown; } - bind "u" { HalfPageScrollUp; } - bind "k" { Search "down"; } - bind "K" { Search "up"; } - bind "c" { SearchToggleOption "CaseSensitivity"; } - bind "w" { SearchToggleOption "Wrap"; } - bind "o" { SearchToggleOption "WholeWord"; } - } - entersearch { - bind "Ctrl c" "Esc" { SwitchToMode "Scroll"; } - bind "Enter" { SwitchToMode "Search"; } - } - renametab { - bind "Ctrl c" { SwitchToMode "Normal"; } - bind "Esc" { UndoRenameTab; SwitchToMode "Tab"; } - } - renamepane { - bind "Ctrl c" { SwitchToMode "Normal"; } - bind "Esc" { UndoRenamePane; SwitchToMode "Pane"; } - } - session { - bind "Ctrl o" { SwitchToMode "Normal"; } - bind "Ctrl s" { SwitchToMode "Scroll"; } - bind "d" { Detach; } - bind "w" { - LaunchOrFocusPlugin "session-manager" { - floating true - move_to_focused_tab true - }; - SwitchToMode "Normal" - } - bind "c" { - LaunchOrFocusPlugin "configuration" { - floating true - move_to_focused_tab true - }; - SwitchToMode "Normal" - } - bind "p" { - LaunchOrFocusPlugin "plugin-manager" { - floating true - move_to_focused_tab true - }; - SwitchToMode "Normal" - } - } - tmux { - bind "[" { SwitchToMode "Scroll"; } - bind "Ctrl b" { Write 2; SwitchToMode "Normal"; } - bind "\"" { NewPane "Down"; SwitchToMode "Normal"; } - bind "%" { NewPane "Right"; SwitchToMode "Normal"; } - bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; } - bind "c" { NewTab; SwitchToMode "Normal"; } - bind "," { SwitchToMode "RenameTab"; } - bind "p" { GoToPreviousTab; SwitchToMode "Normal"; } - bind "n" { GoToNextTab; SwitchToMode "Normal"; } - bind "Left" { MoveFocus "Left"; SwitchToMode "Normal"; } - bind "Right" { MoveFocus "Right"; SwitchToMode "Normal"; } - bind "Down" { MoveFocus "Down"; SwitchToMode "Normal"; } - bind "Up" { MoveFocus "Up"; SwitchToMode "Normal"; } - bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; } - bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; } - bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; } - bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; } - bind "o" { FocusNextPane; } - bind "d" { Detach; } - bind "Space" { NextSwapLayout; } - bind "x" { CloseFocus; SwitchToMode "Normal"; } - } - shared_except "locked" { - bind "Ctrl g" { SwitchToMode "Locked"; } - bind "Ctrl q" { Quit; } - bind "Alt f" { ToggleFloatingPanes; } - bind "Alt n" { NewPane; } - bind "Alt i" { MoveTab "Left"; } - bind "Alt o" { MoveTab "Right"; } - bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; } - bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; } - bind "Alt j" "Alt Down" { MoveFocus "Down"; } - bind "Alt k" "Alt Up" { MoveFocus "Up"; } - bind "Alt =" "Alt +" { Resize "Increase"; } - bind "Alt -" { Resize "Decrease"; } - bind "Alt [" { PreviousSwapLayout; } - bind "Alt ]" { NextSwapLayout; } - } - shared_except "normal" "locked" { - bind "Enter" "Esc" { SwitchToMode "Normal"; } - } - shared_except "pane" "locked" { - bind "Ctrl p" { SwitchToMode "Pane"; } - } - shared_except "resize" "locked" { - bind "Ctrl n" { SwitchToMode "Resize"; } - } - shared_except "scroll" "locked" { - bind "Ctrl s" { SwitchToMode "Scroll"; } - } - shared_except "session" "locked" { - bind "Ctrl o" { SwitchToMode "Session"; } - } - shared_except "tab" "locked" { - bind "Ctrl t" { SwitchToMode "Tab"; } - } - shared_except "move" "locked" { - bind "Ctrl h" { SwitchToMode "Move"; } - } - shared_except "tmux" "locked" { - bind "Ctrl b" { SwitchToMode "Tmux"; } - } -} - -// Plugin aliases - can be used to change the implementation of Zellij -// changing these requires a restart to take effect -plugins { - tab-bar location="zellij:tab-bar" - status-bar location="zellij:status-bar" - strider location="zellij:strider" - compact-bar location="zellij:compact-bar" - session-manager location="zellij:session-manager" - welcome-screen location="zellij:session-manager" { - welcome_screen true - } - filepicker location="zellij:strider" { - cwd "/" - } - configuration location="zellij:configuration" - plugin-manager location="zellij:plugin-manager" -} - -// Plugins to load in the background when a new session starts -load_plugins { - // "file:/path/to/my-plugin.wasm" - // "https://example.com/my-plugin.wasm" -} - -// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP -// eg. when terminal window with an active zellij session is closed -// (Requires restart) -// Options: -// - detach (Default) -// - quit -// -// on_force_close "quit" - -// Send a request for a simplified ui (without arrow fonts) to plugins -// Options: -// - true -// - false (Default) -// -// simplified_ui true - -// Choose the path to the default shell that zellij will use for opening new panes -// Default: $SHELL -// -// default_shell "fish" - -// Choose the path to override cwd that zellij will use for opening new panes -// -// default_cwd "" - -// Toggle between having pane frames around the panes -// Options: -// - true (default) -// - false -// -// pane_frames true - -// Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible -// Options: -// - true (default) -// - false -// -// auto_layout true - -// Whether sessions should be serialized to the cache folder (including their tabs/panes, cwds and running commands) so that they can later be resurrected -// (Requires restart) -// Options: -// - true (default) -// - false -// -// session_serialization false - -// Whether pane viewports are serialized along with the session, default is false -// (Requires restart) -// Options: -// - true -// - false (default) -// -// serialize_pane_viewport true - -// Scrollback lines to serialize along with the pane viewport when serializing sessions, 0 -// defaults to the scrollback size. If this number is higher than the scrollback size, it will -// also default to the scrollback size. This does nothing if `serialize_pane_viewport` is not true. -// (Requires restart) -// -// scrollback_lines_to_serialize 10000 - -// Define color themes for Zellij -// For more examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes -// Once these themes are defined, one of them should to be selected in the "theme" section of this file -// -// themes { -// dracula { -// fg 248 248 242 -// bg 40 42 54 -// red 255 85 85 -// green 80 250 123 -// yellow 241 250 140 -// blue 98 114 164 -// magenta 255 121 198 -// orange 255 184 108 -// cyan 139 233 253 -// black 0 0 0 -// white 255 255 255 -// } -// } - -// Choose the theme that is specified in the themes section. -// Default: default -// -theme "default" - -// The name of the default layout to load on startup -// Default: "default" -// (Requires restart) -// -// default_layout "compact" - -// Choose the mode that zellij uses when starting up. -// Default: normal -// -// default_mode "locked" - -// Toggle enabling the mouse mode. -// On certain configurations, or terminals this could -// potentially interfere with copying text. -// (Requires restart) -// Options: -// - true (default) -// - false -// -// mouse_mode false - -// Configure the scroll back buffer size -// This is the number of lines zellij stores for each pane in the scroll back -// buffer. Excess number of lines are discarded in a FIFO fashion. -// (Requires restart) -// Valid values: positive integers -// Default value: 10000 -// -// scroll_buffer_size 10000 - -// Provide a command to execute when copying text. The text will be piped to -// the stdin of the program to perform the copy. This can be used with -// terminal emulators which do not support the OSC 52 ANSI control sequence -// that will be used by default if this option is not set. -// Examples: -// -// copy_command "xclip -selection clipboard" // x11 -// copy_command "wl-copy" // wayland -// copy_command "pbcopy" // osx - -// Choose the destination for copied text -// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard. -// Does not apply when using copy_command. -// Options: -// - system (default) -// - primary -// -// copy_clipboard "primary" - -// Enable or disable automatic copy (and clear) of selection when releasing mouse -// Default: true -// -// copy_on_select false - -// Path to the default editor to use to edit pane scrollbuffer -// Default: $EDITOR or $VISUAL -// -// scrollback_editor "/usr/bin/vim" - -// When attaching to an existing session with other users, -// should the session be mirrored (true) -// or should each user have their own cursor (false) -// (Requires restart) -// Default: false -// -// mirror_session true - -// The folder in which Zellij will look for layouts -// (Requires restart) -// -// layout_dir "/path/to/my/layout_dir" - -// The folder in which Zellij will look for themes -// (Requires restart) -// -// theme_dir "/path/to/my/theme_dir" - -// Enable or disable the rendering of styled and colored underlines (undercurl). -// May need to be disabled for certain unsupported terminals -// (Requires restart) -// Default: true -// -// styled_underlines false - -// Enable or disable writing of session metadata to disk (if disabled, other sessions might not know -// metadata info on this session) -// (Requires restart) -// Default: false -// -// disable_session_metadata true - -// Enable or disable support for the enhanced Kitty Keyboard Protocol (the host terminal must also support it) -// (Requires restart) -// Default: true (if the host terminal supports it) -// -// support_kitty_keyboard_protocol false +// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true" +keybinds { + normal { + // uncomment this and adjust key if using copy_on_select=false + // bind "Alt c" { Copy; } + } + locked { + bind "Ctrl g" { SwitchToMode "Normal"; } + } + resize { + bind "Ctrl n" { SwitchToMode "Normal"; } + bind "h" "Left" { Resize "Increase Left"; } + bind "n" "Down" { Resize "Increase Down"; } + bind "e" "Up" { Resize "Increase Up"; } + bind "i" "Right" { Resize "Increase Right"; } + bind "H" { Resize "Decrease Left"; } + bind "N" { Resize "Decrease Down"; } + bind "E" { Resize "Decrease Up"; } + bind "I" { Resize "Decrease Right"; } + bind "=" "+" { Resize "Increase"; } + bind "-" { Resize "Decrease"; } + } + pane { + bind "Ctrl p" { SwitchToMode "Normal"; } + bind "h" "Left" { MoveFocus "Left"; } + bind "i" "Right" { MoveFocus "Right"; } + bind "n" "Down" { MoveFocus "Down"; } + bind "e" "Up" { MoveFocus "Up"; } + bind "p" { SwitchFocus; } + bind "c" { NewPane; SwitchToMode "Normal"; } + bind "N" { NewPane "Down"; SwitchToMode "Normal"; } + bind "I" { NewPane "Right"; SwitchToMode "Normal"; } + bind "x" { CloseFocus; SwitchToMode "Normal"; } + bind "f" { ToggleFocusFullscreen; SwitchToMode "Normal"; } + bind "z" { TogglePaneFrames; SwitchToMode "Normal"; } + bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; } + bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; } + bind "r" { SwitchToMode "RenamePane"; PaneNameInput 0;} + } + move { + bind "Ctrl h" { SwitchToMode "Normal"; } + bind "h" "Left" { MovePane "Left"; } + bind "n" "Down" { MovePane "Down"; } + bind "e" "Up" { MovePane "Up"; } + bind "i" "Right" { MovePane "Right"; } + } + tab { + bind "Ctrl t" { SwitchToMode "Normal"; } + bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; } + bind "h" "Left" "Up" "e" { GoToPreviousTab; } + bind "i" "Right" "Down" "n" { GoToNextTab; } + bind "c" { NewTab; SwitchToMode "Normal"; } + bind "x" { CloseTab; SwitchToMode "Normal"; } + bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; } + bind "b" { BreakPane; SwitchToMode "Normal"; } + bind "]" { BreakPaneRight; SwitchToMode "Normal"; } + bind "[" { BreakPaneLeft; SwitchToMode "Normal"; } + bind "1" { GoToTab 1; SwitchToMode "Normal"; } + bind "2" { GoToTab 2; SwitchToMode "Normal"; } + bind "3" { GoToTab 3; SwitchToMode "Normal"; } + bind "4" { GoToTab 4; SwitchToMode "Normal"; } + bind "5" { GoToTab 5; SwitchToMode "Normal"; } + bind "6" { GoToTab 6; SwitchToMode "Normal"; } + bind "7" { GoToTab 7; SwitchToMode "Normal"; } + bind "8" { GoToTab 8; SwitchToMode "Normal"; } + bind "9" { GoToTab 9; SwitchToMode "Normal"; } + bind "Tab" { ToggleTab; } + } + scroll { + bind "Ctrl s" { SwitchToMode "Normal"; } + bind "r" { EditScrollback; SwitchToMode "Normal"; } + bind "s" { SwitchToMode "EnterSearch"; SearchInput 0; } + bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; } + bind "n" "Down" { ScrollDown; } + bind "e" "Up" { ScrollUp; } + bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; } + bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; } + bind "d" { HalfPageScrollDown; } + bind "u" { HalfPageScrollUp; } + // uncomment this and adjust key if using copy_on_select=false + // bind "Alt c" { Copy; } + } + search { + bind "Ctrl s" { SwitchToMode "Normal"; } + bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; } + bind "n" "Down" { ScrollDown; } + bind "e" "Up" { ScrollUp; } + bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; } + bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; } + bind "d" { HalfPageScrollDown; } + bind "u" { HalfPageScrollUp; } + bind "k" { Search "down"; } + bind "K" { Search "up"; } + bind "c" { SearchToggleOption "CaseSensitivity"; } + bind "w" { SearchToggleOption "Wrap"; } + bind "o" { SearchToggleOption "WholeWord"; } + } + entersearch { + bind "Ctrl c" "Esc" { SwitchToMode "Scroll"; } + bind "Enter" { SwitchToMode "Search"; } + } + renametab { + bind "Ctrl c" { SwitchToMode "Normal"; } + bind "Esc" { UndoRenameTab; SwitchToMode "Tab"; } + } + renamepane { + bind "Ctrl c" { SwitchToMode "Normal"; } + bind "Esc" { UndoRenamePane; SwitchToMode "Pane"; } + } + session { + bind "Ctrl o" { SwitchToMode "Normal"; } + bind "Ctrl s" { SwitchToMode "Scroll"; } + bind "d" { Detach; } + bind "w" { + LaunchOrFocusPlugin "session-manager" { + floating true + move_to_focused_tab true + }; + SwitchToMode "Normal" + } + bind "c" { + LaunchOrFocusPlugin "configuration" { + floating true + move_to_focused_tab true + }; + SwitchToMode "Normal" + } + bind "p" { + LaunchOrFocusPlugin "plugin-manager" { + floating true + move_to_focused_tab true + }; + SwitchToMode "Normal" + } + } + tmux { + bind "[" { SwitchToMode "Scroll"; } + bind "Ctrl b" { Write 2; SwitchToMode "Normal"; } + bind "\"" { NewPane "Down"; SwitchToMode "Normal"; } + bind "%" { NewPane "Right"; SwitchToMode "Normal"; } + bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; } + bind "c" { NewTab; SwitchToMode "Normal"; } + bind "," { SwitchToMode "RenameTab"; } + bind "p" { GoToPreviousTab; SwitchToMode "Normal"; } + bind "n" { GoToNextTab; SwitchToMode "Normal"; } + bind "Left" { MoveFocus "Left"; SwitchToMode "Normal"; } + bind "Right" { MoveFocus "Right"; SwitchToMode "Normal"; } + bind "Down" { MoveFocus "Down"; SwitchToMode "Normal"; } + bind "Up" { MoveFocus "Up"; SwitchToMode "Normal"; } + bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; } + bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; } + bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; } + bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; } + bind "o" { FocusNextPane; } + bind "d" { Detach; } + bind "Space" { NextSwapLayout; } + bind "x" { CloseFocus; SwitchToMode "Normal"; } + } + shared_except "locked" { + bind "Ctrl g" { SwitchToMode "Locked"; } + bind "Ctrl q" { Quit; } + bind "Alt f" { ToggleFloatingPanes; } + bind "Alt n" { NewPane; } + bind "Alt i" { MoveTab "Left"; } + bind "Alt o" { MoveTab "Right"; } + bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; } + bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; } + bind "Alt j" "Alt Down" { MoveFocus "Down"; } + bind "Alt k" "Alt Up" { MoveFocus "Up"; } + bind "Alt =" "Alt +" { Resize "Increase"; } + bind "Alt -" { Resize "Decrease"; } + bind "Alt [" { PreviousSwapLayout; } + bind "Alt ]" { NextSwapLayout; } + } + shared_except "normal" "locked" { + bind "Enter" "Esc" { SwitchToMode "Normal"; } + } + shared_except "pane" "locked" { + bind "Ctrl p" { SwitchToMode "Pane"; } + } + shared_except "resize" "locked" { + bind "Ctrl n" { SwitchToMode "Resize"; } + } + shared_except "scroll" "locked" { + bind "Ctrl s" { SwitchToMode "Scroll"; } + } + shared_except "session" "locked" { + bind "Ctrl o" { SwitchToMode "Session"; } + } + shared_except "tab" "locked" { + bind "Ctrl t" { SwitchToMode "Tab"; } + } + shared_except "move" "locked" { + bind "Ctrl h" { SwitchToMode "Move"; } + } + shared_except "tmux" "locked" { + bind "Ctrl b" { SwitchToMode "Tmux"; } + } +} + +// Plugin aliases - can be used to change the implementation of Zellij +// changing these requires a restart to take effect +plugins { + tab-bar location="zellij:tab-bar" + status-bar location="zellij:status-bar" + strider location="zellij:strider" + compact-bar location="zellij:compact-bar" + session-manager location="zellij:session-manager" + welcome-screen location="zellij:session-manager" { + welcome_screen true + } + filepicker location="zellij:strider" { + cwd "/" + } + configuration location="zellij:configuration" + plugin-manager location="zellij:plugin-manager" +} + +// Plugins to load in the background when a new session starts +load_plugins { + // "file:/path/to/my-plugin.wasm" + // "https://example.com/my-plugin.wasm" +} + +// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP +// eg. when terminal window with an active zellij session is closed +// (Requires restart) +// Options: +// - detach (Default) +// - quit +// +// on_force_close "quit" + +// Send a request for a simplified ui (without arrow fonts) to plugins +// Options: +// - true +// - false (Default) +// +// simplified_ui true + +// Choose the path to the default shell that zellij will use for opening new panes +// Default: $SHELL +// +// default_shell "fish" + +// Choose the path to override cwd that zellij will use for opening new panes +// +// default_cwd "" + +// Toggle between having pane frames around the panes +// Options: +// - true (default) +// - false +// +// pane_frames true + +// Toggle between having Zellij lay out panes according to a predefined set of layouts whenever possible +// Options: +// - true (default) +// - false +// +// auto_layout true + +// Whether sessions should be serialized to the cache folder (including their tabs/panes, cwds and running commands) so that they can later be resurrected +// (Requires restart) +// Options: +// - true (default) +// - false +// +// session_serialization false + +// Whether pane viewports are serialized along with the session, default is false +// (Requires restart) +// Options: +// - true +// - false (default) +// +// serialize_pane_viewport true + +// Scrollback lines to serialize along with the pane viewport when serializing sessions, 0 +// defaults to the scrollback size. If this number is higher than the scrollback size, it will +// also default to the scrollback size. This does nothing if `serialize_pane_viewport` is not true. +// (Requires restart) +// +// scrollback_lines_to_serialize 10000 + +// Define color themes for Zellij +// For more examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes +// Once these themes are defined, one of them should to be selected in the "theme" section of this file +// +// themes { +// dracula { +// fg 248 248 242 +// bg 40 42 54 +// red 255 85 85 +// green 80 250 123 +// yellow 241 250 140 +// blue 98 114 164 +// magenta 255 121 198 +// orange 255 184 108 +// cyan 139 233 253 +// black 0 0 0 +// white 255 255 255 +// } +// } + +// Choose the theme that is specified in the themes section. +// Default: default +// +theme "default" + +// The name of the default layout to load on startup +// Default: "default" +// (Requires restart) +// +// default_layout "compact" + +// Choose the mode that zellij uses when starting up. +// Default: normal +// +// default_mode "locked" + +// Toggle enabling the mouse mode. +// On certain configurations, or terminals this could +// potentially interfere with copying text. +// (Requires restart) +// Options: +// - true (default) +// - false +// +// mouse_mode false + +// Configure the scroll back buffer size +// This is the number of lines zellij stores for each pane in the scroll back +// buffer. Excess number of lines are discarded in a FIFO fashion. +// (Requires restart) +// Valid values: positive integers +// Default value: 10000 +// +// scroll_buffer_size 10000 + +// Provide a command to execute when copying text. The text will be piped to +// the stdin of the program to perform the copy. This can be used with +// terminal emulators which do not support the OSC 52 ANSI control sequence +// that will be used by default if this option is not set. +// Examples: +// +// copy_command "xclip -selection clipboard" // x11 +// copy_command "wl-copy" // wayland +// copy_command "pbcopy" // osx + +// Choose the destination for copied text +// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard. +// Does not apply when using copy_command. +// Options: +// - system (default) +// - primary +// +// copy_clipboard "primary" + +// Enable or disable automatic copy (and clear) of selection when releasing mouse +// Default: true +// +// copy_on_select false + +// Path to the default editor to use to edit pane scrollbuffer +// Default: $EDITOR or $VISUAL +// +// scrollback_editor "/usr/bin/vim" + +// When attaching to an existing session with other users, +// should the session be mirrored (true) +// or should each user have their own cursor (false) +// (Requires restart) +// Default: false +// +// mirror_session true + +// The folder in which Zellij will look for layouts +// (Requires restart) +// +// layout_dir "/path/to/my/layout_dir" + +// The folder in which Zellij will look for themes +// (Requires restart) +// +// theme_dir "/path/to/my/theme_dir" + +// Enable or disable the rendering of styled and colored underlines (undercurl). +// May need to be disabled for certain unsupported terminals +// (Requires restart) +// Default: true +// +// styled_underlines false + +// Enable or disable writing of session metadata to disk (if disabled, other sessions might not know +// metadata info on this session) +// (Requires restart) +// Default: false +// +// disable_session_metadata true + +// Enable or disable support for the enhanced Kitty Keyboard Protocol (the host terminal must also support it) +// (Requires restart) +// Default: true (if the host terminal supports it) +// +// support_kitty_keyboard_protocol false diff --git a/dot_haskeline b/dot_haskeline new file mode 100644 index 0000000..bf0b6cd --- /dev/null +++ b/dot_haskeline @@ -0,0 +1 @@ +editMode: Vi From 95fbc079bad5eef70dccfce354aa7cb6bc09bf79 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 13:54:14 +0100 Subject: [PATCH 07/48] chezmoi: common --- common/gitconfig.example | 73 ------ common/ideavimrc | 239 ------------------ common/npmrc | 1 - common/remote.bashrc | 159 ------------ common/vim.noxdg.vimrc | 60 ----- common/wakatime.example.cfg | 19 -- .../NuGet/nuget.config | 10 +- .../conda/dot_condarc | 28 +- .../glow.yaml => dot_config/glow/config.yml | 0 {common => dot_config/pip}/pip.conf | 8 +- 10 files changed, 23 insertions(+), 574 deletions(-) delete mode 100644 common/gitconfig.example delete mode 100644 common/ideavimrc delete mode 100644 common/npmrc delete mode 100644 common/remote.bashrc delete mode 100644 common/vim.noxdg.vimrc delete mode 100644 common/wakatime.example.cfg rename common/NuGet.Config => dot_config/NuGet/nuget.config (78%) mode change 100755 => 100644 rename common/condarc.yaml => dot_config/conda/dot_condarc (97%) rename common/glow.yaml => dot_config/glow/config.yml (100%) rename {common => dot_config/pip}/pip.conf (98%) diff --git a/common/gitconfig.example b/common/gitconfig.example deleted file mode 100644 index 5462581..0000000 --- a/common/gitconfig.example +++ /dev/null @@ -1,73 +0,0 @@ -# $DOTFILES/common/gitconfig.example -# Date: 2024-12-22 -# Author: js0ny - -# Location: -# Windows: %USERPROFILE%\.gitconfig -# *nix: ~/.config/git/config -# Linking: (Note that this file is an example, only copy this then edit) -# cp $DOTFILES/common/gitconfig.example ~/.config/git/config -[user] # Modify the name and email - name = whoami - email = whoami@example.com -[alias] - cl = clone - clnh = clone --depth 1 # Clone with no history - cma = commit -am # Add and commit - logs = log --oneline --graph --decorate --all # Show logs - last = log -1 HEAD # Show last commit - undo = reset --hard HEAD # Undo the last commit -[core] - editor = nvim - pager = delta - # autocrlf: - # true: Keep crlf in Windows, lf in *nix - # input: Keep lf in all platforms - autocrlf = input - safecrlf = true - excludesfile = $XDG_CONFIG_HOME/git/ignore - quotePath = false # zh-CN: 解决中文路径问题 - eol = lf -[include] - path = ~/.config/git/catppuccin-delta.gitconfig -[core] - editor = nvim - pager = delta - autocrlf = input # Force End of Line in different platforms -[interactive] - diffFilter = delta --color-only -[delta] - navigate = true - dark = true - features = catppuccin-mocha # Colorscheme -[diff] - tool = nvimdiff -[difftool] - prompt = false -[difftool "nvimdiff"] - cmd = "nvim -d \"$LOCAL\" \"$REMOTE\"" -[merge] - tool = nvimdiff -[mergetool] - prompt = false -[mergetool "nvimdiff"] - cmd = "nvim -d \"$LOCAL\" \"$MERGED\" \"$REMOTE\"" -[color] - ui = auto -[pull] - ff = only -[init] - defaultBranch = master -[filter "lfs"] - clean = git-lfs clean -- %f - smudge = git-lfs smudge -- %f - process = git-lfs filter-process - required = true -# Force ssh -# Don't use ssh in GitHub since ssh-agent doesn't work in non-interactive environment -# While GitHub holds many plugins, it's better to use https -# This prevents from Neovide `publickey` error when installing plugins -# [url "git@github.com:"] -# insteadOf = https://github.com/ -[url "git@codeberg.org:"] - insteadOf = https://codeberg.org/ diff --git a/common/ideavimrc b/common/ideavimrc deleted file mode 100644 index 3e4e251..0000000 --- a/common/ideavimrc +++ /dev/null @@ -1,239 +0,0 @@ -" $DOTFILES/common/ideavimrc -" Date: 2024-12-22 -" Author: js0ny - -" Location: -" $XDG_CONFIG_HOME/ideavim/ideavimrc -" Linking: -" ln -sf $DOTFILES/common/ideavimrc $XDG_CONFIG_HOME/ideavim/ideavimrc - -source ~/.local/share/intellimacs/spacemacs.vim - -source ~/.local/share/intellimacs/extra.vim -source ~/.local/share/intellimacs/major.vim -source ~/.local/share/intellimacs/hybrid.vim - -source ~/.local/share/intellimacs/which-key.vim - - -" """ Basic Configs """ -let mapleader = " " " set to - -""" Colemak """ -noremap n j -noremap e k -noremap i l - -" Similar position to i -noremap l i -noremap L I -" ne[k]st -noremap k n -noremap K N -" [j]ump -noremap j e -noremap J E - -nnoremap H :bp -nnoremap I :bn -noremap N 5j -noremap E 5k -vnoremap H ^ -xnoremap H ^ -onoremap H ^ -vnoremap I $ -xnoremap I $ -onoremap I $ - - - -" Y to yank to end of line -noremap Y y$ - -""" Options """ -" search for actions: :actionlist - -"" Vim Compat "" -set clipboard=unnamedplus,unnamed,ideaput " integrate with system clipboard -set gdefault " substitute all occurrences in line per default -set history=4096 " keep x lines of command line history -set hlsearch -set ignorecase -set incsearch -set keymodel=startsel,stopsel -set matchpairs+=<:> -set showcmd -set smartcase " no ignore case when pattern is uppercase -set wrapscan " searches wrap around the end of the file - -"" IDE Settings "" -set scrolloff=5 -set sidescrolloff=10 - -"" IDE Features "" -set relativenumber " Hybrid Line Number shown - -"" IdeaVim Only "" -set ideajoin -set ideastatusicon=enabled - -""" Plugins """ - -Plug 'justinmk/vim-sneak' -Plug 'preservim/nerdtree' -Plug 'tpope/vim-surround' -Plug 'tpope/vim-commentary' -Plug 'terryma/vim-multiple-cursors' -Plug 'machakann/vim-highlightedyank' -Plug 'easymotion/vim-easymotion' - -""" Keybindings """ - -"" don't lose selection when indenting "" -vnoremap < >gv -vnoremap = =gv - -"" edit ideavim config v + "" -nnoremap vv :e ~/.ideavimrc -nnoremap vr :source ~/.ideavimrc - -"" NERDTree "" -nnoremap e :NERDTreeToggle - -"" EasyMotion "" -nmap s (easymotion-f) -nmap S (easymotion-F) - -"" Sneak "" -nmap f (sneak-s) -nmap F (sneak-S) - -"" Language Server Protocol "" -nnoremap gd :action GotoDeclaration -nnoremap gtd :action GotoTypeDeclaration -nnoremap gtD :action QuickTypeDefinition -nnoremap gr :action ShowUsages -nnoremap gi :action GotoImplementation -nnoremap gpi :action QuickImplementations -nnoremap gs :action GotoSuperMethod -nnoremap ga :action ShowIntentionActions -nnoremap gq :action ShowIntentionActions -nnoremap ge :action GotoNextError - -"" Collapse and Expand z + "" -nnoremap zi :action ExpandCollapseToggleAction -nnoremap zc :action CollapseRegion -nnoremap zC :action CollapseRegionRecursively -nnoremap zM :action CollapseAll -nnoremap zo :action ExpandRegion -nnoremap zO :action ExpandRegionRecursively -nnoremap zR :action ExpandAll - -"" Miscs "" -nnoremap : :action GotoAction -nnoremap :action GotoFile -nnoremap h :action PrevSplitter -nnoremap i :action NextSplitter - -"" AI Related a + "" -nnoremap ac :action copilot.chat.show -nnoremap ad :action copilot.disableCopilot -nnoremap ae :action copilot.enableCopilot -nnoremap aa :action copilot.openCopilot - -" b : +buffer -nnoremap bb :action Switcher -noremap bd :bdelete -noremap bh :bprevious -noremap bi :bnext -noremap bp :bprevious -noremap bn :bnext - -" c : +code/compile -nnoremap cr :action Run -nnoremap cf :action ReformatCode -nnoremap cs :action GotoSymbol -nnoremap cS :action GotoSymbol -nnoremap cR :action RenameElement -""" Works for Rider only -nnoremap ce :action ReSharperGotoNextErrorInSolution -nnoremap cE :action ReSharperGotoPrevErrorInSolution - -" d : +debug - -" f : +file -nnoremap ff :action GotoFile -nnoremap fF :action TextSearchAction -nnoremap fc :action ShowSettings -nnoremap fC :action ShowSettings -nnoremap fe :NERDTreeToggle -nnoremap fo :OpenInAssociatedApplication -nnoremap ft :action ActivateTerminalToolWindow -nnoremap fx :action WelcomeScreen.Plugins - -" g : +git -nnoremap gp :action Git.Pull -nnoremap gP :action Vcs.Push -nnoremap gb :action Git.Branches -nnoremap gR :action Git.Rebase -nnoremap gM :action Git.Merge -nnoremap gc :action CheckinProject -nnoremap gC :action Git.Clone -nnoremap gg :action ActivateVersionControlToolWindow -nnoremap gS :action Git.Stash - -" h : +help - -" p : +project -nnoremap pr :action Run -nnoremap pd :action Debug -nnoremap pb :action Build - -" q : +quit -nnoremap qq :action Exit -nnoremap Q :action Exit - -" r : +refactor -nnoremap ri :action Inline -nnoremap rr :action RenamElement -nnoremap rev :action IntroduceVariable -vnoremap rev :action IntroduceVariable -nnoremap rem :action ExtractMethod -vnoremap rem :action ExtractMethod -nnoremap rm :action Move -nnoremap ro :action OptimizeImports -nnoremap rG :action Generate - -" t : +test -nnoremap tt :action RiderUnitTestRunSolutionAction -nnoremap tT :action Rider.UnitTesting.MainMenu - -" u : +ui -nnoremap ui :action ChangeLaf -nnoremap uw :action EditorToggleUseSoftWraps - -" w : +write/window -nnoremap ww :write -nnoremap wa :wall -nnoremap wq :wq -nnoremap W :write -nnoremap wh :action PrevSplitter -nnoremap wi :action NextSplitter -nnoremap wH :action SplitHorizontally -nnoremap wI :action SplitHorizontally -nnoremap wN :action SplitVertically -nnoremap wE :action SplitVertically -nnoremap w- :action SplitHorizontally -nnoremap w| :action SplitVertically -nnoremap w\ :action SplitVertically - -nnoremap :action ParameterInfo -inoremap :action ParameterInfo - -""" Handling Ctrls """ - -sethandler i:ide -sethandler n-v:vim i:ide -sethandler a:ide -sethandler > a:ide diff --git a/common/npmrc b/common/npmrc deleted file mode 100644 index a49e127..0000000 --- a/common/npmrc +++ /dev/null @@ -1 +0,0 @@ -strict-ssl=false diff --git a/common/remote.bashrc b/common/remote.bashrc deleted file mode 100644 index 94147d0..0000000 --- a/common/remote.bashrc +++ /dev/null @@ -1,159 +0,0 @@ -# ~/.bashrc: executed by bash(1) for non-login shells. -# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) -# for examples - -# If not running interactively, don't do anything -case $- in - *i*) ;; - *) return;; -esac - -# don't put duplicate lines or lines starting with space in the history. -# See bash(1) for more options -HISTCONTROL=ignoreboth - -# append to the history file, don't overwrite it -shopt -s histappend - -# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) -HISTSIZE=1000 -HISTFILESIZE=2000 - -# check the window size after each command and, if necessary, -# update the values of LINES and COLUMNS. -shopt -s checkwinsize - -# If set, the pattern "**" used in a pathname expansion context will -# match all files and zero or more directories and subdirectories. -#shopt -s globstar - -# make less more friendly for non-text input files, see lesspipe(1) -#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" - -# set variable identifying the chroot you work in (used in the prompt below) -if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then - debian_chroot=$(cat /etc/debian_chroot) -fi - -# set a fancy prompt (non-color, unless we know we "want" color) -case "$TERM" in - xterm-color|*-256color) color_prompt=yes;; -esac - -# uncomment for a colored prompt, if the terminal has the capability; turned -# off by default to not distract the user: the focus in a terminal window -# should be on the output of commands, not on the prompt -#force_color_prompt=yes - -if [ -n "$force_color_prompt" ]; then - if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then - # We have color support; assume it's compliant with Ecma-48 - # (ISO/IEC-6429). (Lack of such support is extremely rare, and such - # a case would tend to support setf rather than setaf.) - color_prompt=yes - else - color_prompt= - fi -fi - -if [ "$color_prompt" = yes ]; then - PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' -else - PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' -fi -unset color_prompt force_color_prompt - -# If this is an xterm set the title to user@host:dir -case "$TERM" in -xterm*|rxvt*) - PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" - ;; -*) - ;; -esac - -# enable color support of ls and also add handy aliases -if [ -x /usr/bin/dircolors ]; then - test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" - alias ls='ls --color=auto' - #alias dir='dir --color=auto' - #alias vdir='vdir --color=auto' - - #alias grep='grep --color=auto' - #alias fgrep='fgrep --color=auto' - #alias egrep='egrep --color=auto' -fi - -# colored GCC warnings and errors -#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' - -# some more ls aliases -alias ll='ls -l' -alias la='ls -A' -alias l='ls -CF' - -# Alias definitions. -# You may want to put all your additions into a separate file like -# ~/.bash_aliases, instead of adding them here directly. -# See /usr/share/doc/bash-doc/examples in the bash-doc package. - -if [ -f ~/.bash_aliases ]; then - . ~/.bash_aliases -fi - -# enable programmable completion features (you don't need to enable -# this, if it's already enabled in /etc/bash.bashrc and /etc/profile -# sources /etc/bash.bashrc). -if ! shopt -oq posix; then - if [ -f /usr/share/bash-completion/bash_completion ]; then - . /usr/share/bash-completion/bash_completion - elif [ -f /etc/bash_completion ]; then - . /etc/bash_completion - fi -fi - -export NVM_DIR="$HOME/.nvm" -[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm -[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion -source ~/.nvm/nvm.sh - - -# Append to original bashrc for minimal setup -# echo $DOTFILES/wsl/.bashrc >> ~/.bashrc -bind 'set show-mode-in-prompt on' -set -o vi - -alias svi="sudo vim" # Prevent conflicts with svelte-cli -alias v="vim" - -alias sdocker="sudo docker" -alias scompose="sudo docker compose up -d" -alias sdockerps="sudo docker ps" -alias netl="netstat -tulnp" - -alias apt="sudo apt" -alias apts="apt search" -alias apti="sudo apt install" -alias aptr="sudo apt remove" -alias aptu="sudo apt upgrade && sudo apt update" - -alias l="ls -lah" -alias ll="ls -l" -alias la="ls -lA" - -bind 'set vi-ins-mode-string "sh"' -bind 'set vi-cmd-mode-string "vi"' - - - -PS2=" > " -update_ps1() { - local last_status=$? - if [[ $last_status -eq 0 ]]; then - PS1="\[\e[0;33m\]  \[\e[0;35m\][\A] \[\e[0;32m\]\u @ \h \[\e[0;34m\]in \w \[\e[0;32m\]✔\n \$ \[\e[0m\]" - else - PS1="\[\e[0;33m\]  \[\e[0;35m\][\A] \[\e[0;32m\]\u @ \h \[\e[0;34m\]in \w \[\e[0;31m\]✘\n \$ \[\e[0m\]" - fi -} - -PROMPT_COMMAND=update_ps1 diff --git a/common/vim.noxdg.vimrc b/common/vim.noxdg.vimrc deleted file mode 100644 index 08b99b8..0000000 --- a/common/vim.noxdg.vimrc +++ /dev/null @@ -1,60 +0,0 @@ - -" Source a global configuration file if available -if filereadable("/etc/vim/vimrc.local") - source /etc/vim/vimrc.local -endif - -" This is a minimal setup of vimrc -" ln -sf $DOTFILES/.config/vim/vimrc $XDG_CONFIG_HOME/vim/vimrc - -" Colemak Keys - -" Arrow remap -noremap n j -noremap e k -noremap i l -nnoremap N 5j -nnoremap E 5k -vnoremap H ^ -xnoremap H ^ -onoremap H ^ -vnoremap I $ -xnoremap I $ -onoremap I $ -noremap I L - -" Similar position to i -noremap l i -noremap L I -" ne[k]st -noremap k n -noremap K N -" [j]ump -noremap j e -noremap J E - -" Normal minimal setup - -noremap Y y$ -set expandtab -set tabstop=4 -set shiftwidth=4 -set autoindent -set smartindent -set wrap -set scrolloff=3 -set hlsearch -set incsearch -set ignorecase -set smartcase -set showcmd -set mouse=a " Enable mouse usage (all modes) - -set number -set relativenumber - -set laststatus=2 -set showcmd -set statusline=%<%f\ %h%m%r\ %=\ [%l,%v]\ [%p%%]\ [\ %Y]\ [󱑉\ %{strftime('%H:%M:%S')}] - -syntax on diff --git a/common/wakatime.example.cfg b/common/wakatime.example.cfg deleted file mode 100644 index 4d3410b..0000000 --- a/common/wakatime.example.cfg +++ /dev/null @@ -1,19 +0,0 @@ - -[settings] -api_key = FILL_YOUR_API_KEY_HERE -exclude = - ^COMMIT_EDITMSG$ - ^TAG_EDITMSG$ - *.md - *.org - *.txt - *.log -include = - readme.md - README.md - readme.org - README.org - readme.txt - README.txt - readme - README diff --git a/common/NuGet.Config b/dot_config/NuGet/nuget.config old mode 100755 new mode 100644 similarity index 78% rename from common/NuGet.Config rename to dot_config/NuGet/nuget.config index 4a9acec..81596d1 --- a/common/NuGet.Config +++ b/dot_config/NuGet/nuget.config @@ -1,6 +1,6 @@ - - - - - + + + + + \ No newline at end of file diff --git a/common/condarc.yaml b/dot_config/conda/dot_condarc similarity index 97% rename from common/condarc.yaml rename to dot_config/conda/dot_condarc index 5c7ef3f..4e9da9b 100644 --- a/common/condarc.yaml +++ b/dot_config/conda/dot_condarc @@ -1,14 +1,14 @@ -# $DOTFILES/common/condarc.yaml -# Date: 2024-12-22 -# Author: js0ny - -# Location: -# $XDG_CONFIG_HOME/conda/.condarc -# Linking: -# ln -s $DOTFILES/.config/conda/condarc.yaml $XDG_CONFIG_HOME/conda/.condarc -# ================================================================================ -# Reference: -# https://docs.conda.io/projects/conda/en/latest/user-guide/configuration/use-condarc.html - -# Use system python by default for better script compatibility -auto_activate_base: false +# $DOTFILES/common/condarc.yaml +# Date: 2024-12-22 +# Author: js0ny + +# Location: +# $XDG_CONFIG_HOME/conda/.condarc +# Linking: +# ln -s $DOTFILES/.config/conda/condarc.yaml $XDG_CONFIG_HOME/conda/.condarc +# ================================================================================ +# Reference: +# https://docs.conda.io/projects/conda/en/latest/user-guide/configuration/use-condarc.html + +# Use system python by default for better script compatibility +auto_activate_base: false diff --git a/common/glow.yaml b/dot_config/glow/config.yml similarity index 100% rename from common/glow.yaml rename to dot_config/glow/config.yml diff --git a/common/pip.conf b/dot_config/pip/pip.conf similarity index 98% rename from common/pip.conf rename to dot_config/pip/pip.conf index 75044dc..359fd84 100644 --- a/common/pip.conf +++ b/dot_config/pip/pip.conf @@ -1,5 +1,5 @@ -# $XDG_CONFIG_HOME/pip/pip.conf -# ln -sf $DOTFILES/.config/pip/pip.conf $XDG_CONFIG_HOME/pip/pip.conf -# New-Item -ItemType SymbolicLink -Path $Env:XDG_CONFIG_HOME/pip/pip.conp -Value $DOTFILES\.config\pip\pip.conf -[global] +# $XDG_CONFIG_HOME/pip/pip.conf +# ln -sf $DOTFILES/.config/pip/pip.conf $XDG_CONFIG_HOME/pip/pip.conf +# New-Item -ItemType SymbolicLink -Path $Env:XDG_CONFIG_HOME/pip/pip.conp -Value $DOTFILES\.config\pip\pip.conf +[global] # index-url = https://pypi.tuna.tsinghua.edu.cn/simple \ No newline at end of file From 947f290d3c1e6f588beb943cebb0c306eb048a23 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 14:15:42 +0100 Subject: [PATCH 08/48] chezmoi: dunst, fcitx5, hyprland --- {platforms/linux => dot_config/dunst}/dunstrc | 0 dot_config/fcitx5/conf/cached_layouts | 3710 +++++++++++++++++ dot_config/fcitx5/conf/notifications.conf | 3 + {platforms/linux => dot_config}/fcitx5/config | 43 +- .../linux => dot_config}/fcitx5/profile | 17 +- .../hypr/dot_gitignore | 0 .../linux => dot_config}/hypr/hypridle.conf | 0 .../linux => dot_config}/hypr/hyprland.conf | 0 .../hypr/hyprland/+colemak.conf | 0 .../hypr/hyprland/+qwerty.conf | 0 .../hypr/hyprland/dark.conf | 0 .../hypr/hyprland/keymaps.conf | 0 .../hypr/hyprland/light.conf | 0 .../hypr/hyprland/rules.conf | 0 dot_config/hypr/hyprland/symlink_current.conf | 1 + .../linux => dot_config}/hypr/hyprlock.conf | 0 .../linux => dot_config}/hypr/hyprpaper.conf | 0 {platforms/linux/kde => dot_config}/krunnerrc | 0 .../linux => dot_config}/rofi/config.rasi | 0 .../linux => dot_config}/rofi/dark.rasi | 0 .../linux => dot_config}/rofi/light.rasi | 0 dot_config/rofi/symlink_current.rasi | 1 + .../linux => dot_config/swaylock}/swaylock | 0 .../linux => dot_config}/waybar/config.jsonc | 0 .../linux => dot_config}/waybar/dark.css | 0 .../linux => dot_config}/waybar/light.css | 0 .../waybar/modules/hyprland-workspace.jsonc | 0 .../waybar/modules/misc.jsonc | 0 .../linux => dot_config}/waybar/style.css | 0 .../linux => dot_config}/wlogout/actions | 0 .../wlogout/icons/hibernate.png | Bin .../wlogout/icons/lock.png | Bin .../wlogout/icons/logout.png | Bin .../wlogout/icons/reboot.png | Bin .../wlogout/icons/shutdown.png | Bin .../wlogout/icons/suspend.png | Bin .../linux => dot_config}/wlogout/layout | 0 .../linux => dot_config}/wlogout/style.css | 0 platforms/linux/fcitx5/conf/cached_layouts | 3710 ----------------- .../linux/fcitx5/conf/notifications.conf | 3 - 40 files changed, 3750 insertions(+), 3738 deletions(-) rename {platforms/linux => dot_config/dunst}/dunstrc (100%) create mode 100644 dot_config/fcitx5/conf/cached_layouts create mode 100644 dot_config/fcitx5/conf/notifications.conf rename {platforms/linux => dot_config}/fcitx5/config (59%) rename {platforms/linux => dot_config}/fcitx5/profile (54%) rename platforms/linux/hypr/.gitignore => dot_config/hypr/dot_gitignore (100%) rename {platforms/linux => dot_config}/hypr/hypridle.conf (100%) rename {platforms/linux => dot_config}/hypr/hyprland.conf (100%) rename {platforms/linux => dot_config}/hypr/hyprland/+colemak.conf (100%) rename {platforms/linux => dot_config}/hypr/hyprland/+qwerty.conf (100%) rename {platforms/linux => dot_config}/hypr/hyprland/dark.conf (100%) rename {platforms/linux => dot_config}/hypr/hyprland/keymaps.conf (100%) rename {platforms/linux => dot_config}/hypr/hyprland/light.conf (100%) rename {platforms/linux => dot_config}/hypr/hyprland/rules.conf (100%) create mode 100644 dot_config/hypr/hyprland/symlink_current.conf rename {platforms/linux => dot_config}/hypr/hyprlock.conf (100%) rename {platforms/linux => dot_config}/hypr/hyprpaper.conf (100%) rename {platforms/linux/kde => dot_config}/krunnerrc (100%) rename {platforms/linux => dot_config}/rofi/config.rasi (100%) rename {platforms/linux => dot_config}/rofi/dark.rasi (100%) rename {platforms/linux => dot_config}/rofi/light.rasi (100%) create mode 100644 dot_config/rofi/symlink_current.rasi rename {platforms/linux => dot_config/swaylock}/swaylock (100%) rename {platforms/linux => dot_config}/waybar/config.jsonc (100%) rename {platforms/linux => dot_config}/waybar/dark.css (100%) rename {platforms/linux => dot_config}/waybar/light.css (100%) rename {platforms/linux => dot_config}/waybar/modules/hyprland-workspace.jsonc (100%) rename {platforms/linux => dot_config}/waybar/modules/misc.jsonc (100%) rename {platforms/linux => dot_config}/waybar/style.css (100%) rename {platforms/linux => dot_config}/wlogout/actions (100%) rename {platforms/linux => dot_config}/wlogout/icons/hibernate.png (100%) rename {platforms/linux => dot_config}/wlogout/icons/lock.png (100%) rename {platforms/linux => dot_config}/wlogout/icons/logout.png (100%) rename {platforms/linux => dot_config}/wlogout/icons/reboot.png (100%) rename {platforms/linux => dot_config}/wlogout/icons/shutdown.png (100%) rename {platforms/linux => dot_config}/wlogout/icons/suspend.png (100%) rename {platforms/linux => dot_config}/wlogout/layout (100%) rename {platforms/linux => dot_config}/wlogout/style.css (100%) delete mode 100644 platforms/linux/fcitx5/conf/cached_layouts delete mode 100644 platforms/linux/fcitx5/conf/notifications.conf diff --git a/platforms/linux/dunstrc b/dot_config/dunst/dunstrc similarity index 100% rename from platforms/linux/dunstrc rename to dot_config/dunst/dunstrc diff --git a/dot_config/fcitx5/conf/cached_layouts b/dot_config/fcitx5/conf/cached_layouts new file mode 100644 index 0000000..578b704 --- /dev/null +++ b/dot_config/fcitx5/conf/cached_layouts @@ -0,0 +1,3710 @@ +[keyboard-bqn] +Description="Keyboard - BQN" +Language=en +Label=bqn + +[keyboard-apl] +Description="Keyboard - APL" +Language=en +Label=apl + +[keyboard-apl-dyalog] +Description="Keyboard - APL - APL symbols (Dyalog APL)" +Language=en +Label="dlg (dyalog)" + +[keyboard-apl-sax] +Description="Keyboard - APL - APL symbols (SAX, Sharp APL for Unix)" +Language=en +Label=sax + +[keyboard-apl-unified] +Description="Keyboard - APL - APL symbols (unified)" +Language=en +Label="ufd (unified)" + +[keyboard-apl-apl2] +Description="Keyboard - APL - APL symbols (IBM APL2)" +Language=en +Label=apl2 + +[keyboard-apl-aplplusII] +Description="Keyboard - APL - APL symbols (Manugistics APL*PLUS II)" +Language=en +Label="aplII (aplplusII)" + +[keyboard-apl-aplx] +Description="Keyboard - APL - APL symbols (APLX unified)" +Language=en +Label=aplx + +[keyboard-ua] +Description="Keyboard - Ukrainian" +Language=uk +Label=uk + +[keyboard-ua-phonetic] +Description="Keyboard - Ukrainian - Ukrainian (phonetic)" +Language=uk +Label="ua (phonetic)" + +[keyboard-ua-typewriter] +Description="Keyboard - Ukrainian - Ukrainian (typewriter)" +Language=uk +Label="ua (typewriter)" + +[keyboard-ua-winkeys] +Description="Keyboard - Ukrainian - Ukrainian (Windows)" +Language=uk +Label="ua (winkeys)" + +[keyboard-ua-macOS] +Description="Keyboard - Ukrainian - Ukrainian (macOS)" +Language=uk +Label="ua (macOS)" + +[keyboard-ua-legacy] +Description="Keyboard - Ukrainian - Ukrainian (legacy)" +Language=uk +Label="ua (legacy)" + +[keyboard-ua-homophonic] +Description="Keyboard - Ukrainian - Ukrainian (homophonic)" +Language=uk +Label="ua (homophonic)" + +[keyboard-ua-crh] +Description="Keyboard - Ukrainian - Crimean Tatar (Turkish Q)" +Language=crh +Label=crh + +[keyboard-ua-crh_f] +Description="Keyboard - Ukrainian - Crimean Tatar (Turkish F)" +Language=crh +Label="crh (crh_f)" + +[keyboard-ua-crh_alt] +Description="Keyboard - Ukrainian - Crimean Tatar (Turkish Alt-Q)" +Language=crh +Label="crh (crh_alt)" + +[keyboard-ua-sun_type6] +Description="Keyboard - Ukrainian - Ukrainian (Sun Type 6/7)" +Language=uk +Label="ua (sun_type6)" + +[keyboard-th] +Description="Keyboard - Thai" +Language=th +Label=th + +[keyboard-th-tis] +Description="Keyboard - Thai - Thai (TIS-820.2538)" +Language=th +Label="th (tis)" + +[keyboard-th-pat] +Description="Keyboard - Thai - Thai (Pattachote)" +Language=th +Label="th (pat)" + +[keyboard-tz] +Description="Keyboard - Swahili (Tanzania)" +Language=sw +Label=sw + +[keyboard-latam] +Description="Keyboard - Spanish (Latin American)" +Language=es +Label=es + +[keyboard-latam-nodeadkeys] +Description="Keyboard - Spanish (Latin American) - Spanish (Latin American, no dead keys)" +Language=es +Label="latam (nodeadkeys)" + +[keyboard-latam-deadtilde] +Description="Keyboard - Spanish (Latin American) - Spanish (Latin American, dead tilde)" +Language=es +Label="latam (deadtilde)" + +[keyboard-latam-dvorak] +Description="Keyboard - Spanish (Latin American) - Spanish (Latin American, Dvorak)" +Language=es +Label="latam (dvorak)" + +[keyboard-latam-colemak] +Description="Keyboard - Spanish (Latin American) - Spanish (Latin American, Colemak)" +Language=es +Label="latam (colemak)" + +[keyboard-sk] +Description="Keyboard - Slovak" +Language=sk +Label=sk + +[keyboard-sk-bksl] +Description="Keyboard - Slovak - Slovak (extra backslash)" +Language=sk +Label="sk (bksl)" + +[keyboard-sk-qwerty] +Description="Keyboard - Slovak - Slovak (QWERTY)" +Language=sk +Label="sk (qwerty)" + +[keyboard-sk-qwerty_bksl] +Description="Keyboard - Slovak - Slovak (QWERTY, extra backslash)" +Language=sk +Label="sk (qwerty_bksl)" + +[keyboard-sk-acc] +Description="Keyboard - Slovak - Slovak (ACC layout, only accented letters)" +Language=sk +Label="sk (acc)" + +[keyboard-sk-sun_type6] +Description="Keyboard - Slovak - Slovak (Sun Type 6/7)" +Language=sk +Label="sk (sun_type6)" + +[keyboard-ru] +Description="Keyboard - Russian" +Language=ru +Label=ru + +[keyboard-ru-phonetic] +Description="Keyboard - Russian - Russian (phonetic)" +Language=ru +Label="ru (phonetic)" + +[keyboard-ru-phonetic_winkeys] +Description="Keyboard - Russian - Russian (phonetic, Windows)" +Language=ru +Label="ru (phonetic_winkeys)" + +[keyboard-ru-phonetic_YAZHERTY] +Description="Keyboard - Russian - Russian (phonetic, YAZHERTY)" +Language=ru +Label="ru (phonetic_YAZHERTY)" + +[keyboard-ru-phonetic_azerty] +Description="Keyboard - Russian - Russian (phonetic, AZERTY)" +Language=ru +Label="ru (phonetic_azerty)" + +[keyboard-ru-phonetic_dvorak] +Description="Keyboard - Russian - Russian (phonetic, Dvorak)" +Language=ru +Label="ru (phonetic_dvorak)" + +[keyboard-ru-typewriter] +Description="Keyboard - Russian - Russian (typewriter)" +Language=ru +Label="ru (typewriter)" + +[keyboard-ru-ruchey_ru] +Description="Keyboard - Russian - Russian (engineering, RU)" +Language=ru +Label="ru (ruchey_ru)" + +[keyboard-ru-ruchey_en] +Description="Keyboard - Russian - Russian (engineering, EN)" +Language=ru +Label="en (ruchey_en)" + +[keyboard-ru-legacy] +Description="Keyboard - Russian - Russian (legacy)" +Language=ru +Label="ru (legacy)" + +[keyboard-ru-typewriter-legacy] +Description="Keyboard - Russian - Russian (typewriter, legacy)" +Language=ru +Label="ru (typewriter-legacy)" + +[keyboard-ru-dos] +Description="Keyboard - Russian - Russian (DOS)" +Language=ru +Label="ru (dos)" + +[keyboard-ru-mac] +Description="Keyboard - Russian - Russian (Macintosh)" +Language=ru +Label="ru (mac)" + +[keyboard-ru-ab] +Description="Keyboard - Russian - Abkhazian (Russia)" +Language=ab +Label="ru (ab)" + +[keyboard-ru-bak] +Description="Keyboard - Russian - Bashkirian" +Language=ba +Label="ru (bak)" + +[keyboard-ru-cv] +Description="Keyboard - Russian - Chuvash" +Language=cv +Label="ru (cv)" + +[keyboard-ru-cv_latin] +Description="Keyboard - Russian - Chuvash (Latin)" +Language=cv +Label="ru (cv_latin)" + +[keyboard-ru-xal] +Description="Keyboard - Russian - Kalmyk" +Language=xal +Label="ru (xal)" + +[keyboard-ru-kom] +Description="Keyboard - Russian - Komi" +Language=kv +Label="ru (kom)" + +[keyboard-ru-chm] +Description="Keyboard - Russian - Mari" +Language=chm +Label="ru (chm)" + +[keyboard-ru-os_legacy] +Description="Keyboard - Russian - Ossetian (legacy)" +Language=os +Label="ru (os_legacy)" + +[keyboard-ru-os_winkeys] +Description="Keyboard - Russian - Ossetian (Windows)" +Language=os +Label="ru (os_winkeys)" + +[keyboard-ru-srp] +Description="Keyboard - Russian - Serbian (Russia)" +Language=ru +Label="ru (srp)" + +[keyboard-ru-tt] +Description="Keyboard - Russian - Tatar" +Language=tt +Label="ru (tt)" + +[keyboard-ru-udm] +Description="Keyboard - Russian - Udmurt" +Language=udm +Label="ru (udm)" + +[keyboard-ru-sah] +Description="Keyboard - Russian - Yakut" +Language=sah +Label="ru (sah)" + +[keyboard-ru-chu] +Description="Keyboard - Russian - Church Slavonic" +Language=cu +Label="ru (chu)" + +[keyboard-ru-ruu] +Description="Keyboard - Russian - Russian (plus Ukrainian and Belarusian letters)" +Language=ru +Label="ru (ruu)" + +[keyboard-ru-rulemak] +Description="Keyboard - Russian - Russian (Rulemak, phonetic Colemak)" +Language=ru +Label="ru (rulemak)" + +[keyboard-ru-phonetic_mac] +Description="Keyboard - Russian - Russian (phonetic, Macintosh)" +Language=ru +Label="ru (phonetic_mac)" + +[keyboard-ru-sun_type6] +Description="Keyboard - Russian - Russian (Sun Type 6/7)" +Language=ru +Label="ru (sun_type6)" + +[keyboard-ru-unipunct] +Description="Keyboard - Russian - Russian (with US punctuation)" +Language=ru +Label="ru (unipunct)" + +[keyboard-ru-gost-6431-75-48] +Description="Keyboard - Russian - Russian (GOST 6431-75)" +Language=ru +Label="ru (gost-6431-75-48)" + +[keyboard-ru-gost-14289-88] +Description="Keyboard - Russian - Russian (GOST 14289-88)" +Language=ru +Label="ru (gost-14289-88)" + +[keyboard-ru-prxn] +Description="Keyboard - Russian - Russian (Polyglot and Reactionary)" +Language=ru +Label="ru (prxn)" + +[keyboard-ru-winkeys-p] +Description="Keyboard - Russian - Russian (Programmer)" +Language=ru +Label=winkeys-p + +[keyboard-ru-typo] +Description="Keyboard - Russian - Russian (plus typographic symbols)" +Language=ru +Label="ru (typo)" + +[keyboard-ru-rtu] +Description="Keyboard - Russian - Russian (plus Tatar letters)" +Language=ru +Label="ru (rtu)" + +[keyboard-ru-diktor] +Description="Keyboard - Russian - Russian (Diktor)" +Language=ru +Label=diktor + +[keyboard-ru-ruintl_ru] +Description="Keyboard - Russian - Russian (international, RU)" +Language=ru +Label="ru (ruintl_ru)" + +[keyboard-ru-ruintl_en] +Description="Keyboard - Russian - Russian (international, EN)" +Language=en +Label="en (ruintl_en)" + +[keyboard-br] +Description="Keyboard - Portuguese (Brazil)" +Language=pt +Label=pt + +[keyboard-br-nodeadkeys] +Description="Keyboard - Portuguese (Brazil) - Portuguese (Brazil, no dead keys)" +Language=pt +Label="br (nodeadkeys)" + +[keyboard-br-dvorak] +Description="Keyboard - Portuguese (Brazil) - Portuguese (Brazil, Dvorak)" +Language=pt +Label="br (dvorak)" + +[keyboard-br-nativo] +Description="Keyboard - Portuguese (Brazil) - Portuguese (Brazil, Nativo)" +Language=pt +Label="br (nativo)" + +[keyboard-br-nativo-us] +Description="Keyboard - Portuguese (Brazil) - Portuguese (Brazil, Nativo for US keyboards)" +Language=pt +Label="br (nativo-us)" + +[keyboard-br-thinkpad] +Description="Keyboard - Portuguese (Brazil) - Portuguese (Brazil, IBM/Lenovo ThinkPad)" +Language=pt +Label="br (thinkpad)" + +[keyboard-br-nativo-epo] +Description="Keyboard - Portuguese (Brazil) - Esperanto (Brazil, Nativo)" +Language=eo +Label="br (nativo-epo)" + +[keyboard-br-rus] +Description="Keyboard - Portuguese (Brazil) - Russian (Brazil, phonetic)" +Language=ru +Label="ru (rus)" + +[keyboard-br-sun_type6] +Description="Keyboard - Portuguese (Brazil) - Portuguese (Brazil, Sun Type 6/7)" +Language=pt +Label="br (sun_type6)" + +[keyboard-ro] +Description="Keyboard - Romanian" +Language=ro +Label=ro + +[keyboard-ro-std] +Description="Keyboard - Romanian - Romanian (standard)" +Language=ro +Label="ro (std)" + +[keyboard-ro-winkeys] +Description="Keyboard - Romanian - Romanian (Windows)" +Language=ro +Label="ro (winkeys)" + +[keyboard-ro-crh_dobruja] +Description="Keyboard - Romanian - Crimean Tatar (Dobruja Q)" +Language=crh +Label="crh (crh_dobruja)" + +[keyboard-ro-ergonomic] +Description="Keyboard - Romanian - Romanian (ergonomic Touchtype)" +Language=ro +Label="ro (ergonomic)" + +[keyboard-ro-sun_type6] +Description="Keyboard - Romanian - Romanian (Sun Type 6/7)" +Language=ro +Label="ro (sun_type6)" + +[keyboard-pl] +Description="Keyboard - Polish" +Language=pl +Label=pl + +[keyboard-pl-legacy] +Description="Keyboard - Polish - Polish (legacy)" +Language=pl +Label="pl (legacy)" + +[keyboard-pl-qwertz] +Description="Keyboard - Polish - Polish (QWERTZ)" +Language=pl +Label="pl (qwertz)" + +[keyboard-pl-dvorak] +Description="Keyboard - Polish - Polish (Dvorak)" +Language=pl +Label="pl (dvorak)" + +[keyboard-pl-dvorak_quotes] +Description="Keyboard - Polish - Polish (Dvorak, with Polish quotes on quotemark key)" +Language=pl +Label="pl (dvorak_quotes)" + +[keyboard-pl-dvorak_altquotes] +Description="Keyboard - Polish - Polish (Dvorak, with Polish quotes on key 1)" +Language=pl +Label="pl (dvorak_altquotes)" + +[keyboard-pl-dvp] +Description="Keyboard - Polish - Polish (programmer Dvorak)" +Language=pl +Label="pl (dvp)" + +[keyboard-pl-csb] +Description="Keyboard - Polish - Kashubian" +Language=csb +Label="pl (csb)" + +[keyboard-pl-szl] +Description="Keyboard - Polish - Silesian" +Language=szl +Label="pl (szl)" + +[keyboard-pl-ru_phonetic_dvorak] +Description="Keyboard - Polish - Russian (Poland, phonetic Dvorak)" +Language=ru +Label="ru (ru_phonetic_dvorak)" + +[keyboard-pl-intl] +Description="Keyboard - Polish - Polish (intl., with dead keys)" +Language=pl +Label="pl (intl)" + +[keyboard-pl-colemak] +Description="Keyboard - Polish - Polish (Colemak)" +Language=pl +Label="pl (colemak)" + +[keyboard-pl-colemak_dh_ansi] +Description="Keyboard - Polish - Polish (Colemak-DH)" +Language=pl +Label="pl (colemak_dh_ansi)" + +[keyboard-pl-colemak_dh] +Description="Keyboard - Polish - Polish (Colemak-DH ISO)" +Language=pl +Label="pl (colemak_dh)" + +[keyboard-pl-sun_type6] +Description="Keyboard - Polish - Polish (Sun Type 6/7)" +Language=pl +Label="pl (sun_type6)" + +[keyboard-pl-glagolica] +Description="Keyboard - Polish - Polish (Glagolica)" +Language=pl +Label="pl (glagolica)" + +[keyboard-pl-lefty] +Description="Keyboard - Polish - Polish (lefty)" +Language=pl +Label="pl (lefty)" + +[keyboard-trans] +Description="Keyboard - International Phonetic Alphabet" +Language= +Label=ipa + +[keyboard-trans-qwerty] +Description="Keyboard - International Phonetic Alphabet - International Phonetic Alphabet (QWERTY)" +Language= +Label="trans (qwerty)" + +[keyboard-ir] +Description="Keyboard - Persian" +Language=fa +Label=fa + +[keyboard-ir-pes_keypad] +Description="Keyboard - Persian - Persian (with Persian keypad)" +Language=fa +Label="ir (pes_keypad)" + +[keyboard-ir-winkeys] +Description="Keyboard - Persian - Persian (Windows)" +Language=fa +Label="ir (winkeys)" + +[keyboard-ir-azb] +Description="Keyboard - Persian - Azerbaijani (Iran)" +Language=azb +Label=azb + +[keyboard-ir-ku] +Description="Keyboard - Persian - Kurdish (Iran, Latin Q)" +Language=ku +Label=ku + +[keyboard-ir-ku_alt] +Description="Keyboard - Persian - Kurdish (Iran, Latin Alt-Q)" +Language=ku +Label="ku (ku_alt)" + +[keyboard-ir-ku_f] +Description="Keyboard - Persian - Kurdish (Iran, F)" +Language=ku +Label="ku (ku_f)" + +[keyboard-ir-ku_ara] +Description="Keyboard - Persian - Kurdish (Iran, Arabic-Latin)" +Language=ku +Label="ku (ku_ara)" + +[keyboard-custom] +Description="Keyboard - A user-defined custom Layout" +Language=und +Label=custom + +[keyboard-no] +Description="Keyboard - Norwegian" +Language=no +Label=no + +[keyboard-no-nodeadkeys] +Description="Keyboard - Norwegian - Norwegian (no dead keys)" +Language=no +Label="no (nodeadkeys)" + +[keyboard-no-winkeys] +Description="Keyboard - Norwegian - Norwegian (Windows)" +Language=no +Label="no (winkeys)" + +[keyboard-no-mac] +Description="Keyboard - Norwegian - Norwegian (Macintosh)" +Language=no +Label="no (mac)" + +[keyboard-no-mac_nodeadkeys] +Description="Keyboard - Norwegian - Norwegian (Macintosh, no dead keys)" +Language=no +Label="no (mac_nodeadkeys)" + +[keyboard-no-colemak] +Description="Keyboard - Norwegian - Norwegian (Colemak)" +Language=no +Label="no (colemak)" + +[keyboard-no-colemak_dh] +Description="Keyboard - Norwegian - Norwegian (Colemak-DH)" +Language=no +Label="no (colemak_dh)" + +[keyboard-no-colemak_dh_wide] +Description="Keyboard - Norwegian - Norwegian (Colemak-DH Wide)" +Language=no +Label="no (colemak_dh_wide)" + +[keyboard-no-dvorak] +Description="Keyboard - Norwegian - Norwegian (Dvorak)" +Language=no +Label="no (dvorak)" + +[keyboard-no-smi] +Description="Keyboard - Norwegian - Northern Saami (Norway)" +Language=se +Label="no (smi)" + +[keyboard-no-smi_nodeadkeys] +Description="Keyboard - Norwegian - Northern Saami (Norway, no dead keys)" +Language=se +Label="no (smi_nodeadkeys)" + +[keyboard-no-sun_type6] +Description="Keyboard - Norwegian - Norwegian (Sun Type 6/7)" +Language=no +Label="no (sun_type6)" + +[keyboard-gn] +Description="Keyboard - N'Ko (AZERTY)" +Language=nqo +Label=nqo + +[keyboard-tm] +Description="Keyboard - Turkmen" +Language=tk +Label=tk + +[keyboard-tm-alt] +Description="Keyboard - Turkmen - Turkmen (Alt-Q)" +Language=tk +Label="tm (alt)" + +[keyboard-np] +Description="Keyboard - Nepali" +Language=ne +Label=ne + +[keyboard-ancient] +Description="Keyboard - Ancient" +Language=got +Label=xx + +[keyboard-ancient-got] +Description="Keyboard - Ancient - Gothic" +Language=got +Label="ancient (got)" + +[keyboard-ancient-uga] +Description="Keyboard - Ancient - Ugaritic" +Language=uga +Label="ancient (uga)" + +[keyboard-ancient-ave] +Description="Keyboard - Ancient - Avestan" +Language=ae +Label="ancient (ave)" + +[keyboard-mt] +Description="Keyboard - Maltese" +Language=mt +Label=mt + +[keyboard-mt-us] +Description="Keyboard - Maltese - Maltese (US)" +Language=mt +Label="mt (us)" + +[keyboard-mt-alt-us] +Description="Keyboard - Maltese - Maltese (US, with AltGr overrides)" +Language=mt +Label="mt (alt-us)" + +[keyboard-mt-alt-gb] +Description="Keyboard - Maltese - Maltese (UK, with AltGr overrides)" +Language=mt +Label="mt (alt-gb)" + +[keyboard-pt] +Description="Keyboard - Portuguese" +Language=pt +Label=pt + +[keyboard-pt-nodeadkeys] +Description="Keyboard - Portuguese - Portuguese (no dead keys)" +Language=pt +Label="pt (nodeadkeys)" + +[keyboard-pt-mac] +Description="Keyboard - Portuguese - Portuguese (Macintosh)" +Language=pt +Label="pt (mac)" + +[keyboard-pt-mac_nodeadkeys] +Description="Keyboard - Portuguese - Portuguese (Macintosh, no dead keys)" +Language=pt +Label="pt (mac_nodeadkeys)" + +[keyboard-pt-nativo] +Description="Keyboard - Portuguese - Portuguese (Nativo)" +Language=pt +Label="pt (nativo)" + +[keyboard-pt-nativo-us] +Description="Keyboard - Portuguese - Portuguese (Nativo for US keyboards)" +Language=pt +Label="pt (nativo-us)" + +[keyboard-pt-nativo-epo] +Description="Keyboard - Portuguese - Esperanto (Portugal, Nativo)" +Language=eo +Label="pt (nativo-epo)" + +[keyboard-pt-sun_type6] +Description="Keyboard - Portuguese - Portuguese (Sun Type 6/7)" +Language=pt +Label="pt (sun_type6)" + +[keyboard-pt-colemak] +Description="Keyboard - Portuguese - Portuguese (Colemak)" +Language=pt +Label="pt (colemak)" + +[keyboard-my] +Description="Keyboard - Malay (Jawi, Arabic Keyboard)" +Language=id +Label=ms + +[keyboard-my-phonetic] +Description="Keyboard - Malay (Jawi, Arabic Keyboard) - Malay (Jawi, phonetic)" +Language=id +Label="my (phonetic)" + +[keyboard-mk] +Description="Keyboard - Macedonian" +Language=mk +Label=mk + +[keyboard-mk-nodeadkeys] +Description="Keyboard - Macedonian - Macedonian (no dead keys)" +Language=mk +Label="mk (nodeadkeys)" + +[keyboard-kg] +Description="Keyboard - Kyrgyz" +Language=ky +Label=ki + +[keyboard-kg-phonetic] +Description="Keyboard - Kyrgyz - Kyrgyz (phonetic)" +Language=ky +Label="kg (phonetic)" + +[keyboard-tj] +Description="Keyboard - Tajik" +Language=tg +Label=tg + +[keyboard-tj-legacy] +Description="Keyboard - Tajik - Tajik (legacy)" +Language=tg +Label="tj (legacy)" + +[keyboard-mv] +Description="Keyboard - Dhivehi" +Language=dv +Label=dv + +[keyboard-lk] +Description="Keyboard - Sinhala (phonetic)" +Language=si +Label=si + +[keyboard-lk-us] +Description="Keyboard - Sinhala (phonetic) - Sinhala (US)" +Language=si +Label="si (us)" + +[keyboard-lk-tam_unicode] +Description="Keyboard - Sinhala (phonetic) - Tamil (Sri Lanka, TamilNet '99)" +Language=ta +Label="ta (tam_unicode)" + +[keyboard-lk-tam_TAB] +Description="Keyboard - Sinhala (phonetic) - Tamil (Sri Lanka, TamilNet '99, TAB encoding)" +Language=ta +Label="lk (tam_TAB)" + +[keyboard-al] +Description="Keyboard - Albanian" +Language=sq +Label=sq + +[keyboard-al-plisi] +Description="Keyboard - Albanian - Albanian (Plisi)" +Language=sq +Label="al (plisi)" + +[keyboard-al-veqilharxhi] +Description="Keyboard - Albanian - Albanian (Veqilharxhi)" +Language=sq +Label="al (veqilharxhi)" + +[keyboard-cz] +Description="Keyboard - Czech" +Language=cs +Label=cs + +[keyboard-cz-bksl] +Description="Keyboard - Czech - Czech (extra backslash)" +Language=cs +Label="cz (bksl)" + +[keyboard-cz-qwerty] +Description="Keyboard - Czech - Czech (QWERTY)" +Language=cs +Label="cz (qwerty)" + +[keyboard-cz-qwerty_bksl] +Description="Keyboard - Czech - Czech (QWERTY, extra backslash)" +Language=cs +Label="cz (qwerty_bksl)" + +[keyboard-cz-winkeys] +Description="Keyboard - Czech - Czech (QWERTZ, Windows)" +Language=cs +Label="cz (winkeys)" + +[keyboard-cz-winkeys-qwerty] +Description="Keyboard - Czech - Czech (QWERTY, Windows)" +Language=cs +Label="cz (winkeys-qwerty)" + +[keyboard-cz-qwerty-mac] +Description="Keyboard - Czech - Czech (QWERTY, Macintosh)" +Language=cs +Label="cz (qwerty-mac)" + +[keyboard-cz-ucw] +Description="Keyboard - Czech - Czech (UCW, only accented letters)" +Language=cs +Label="cz (ucw)" + +[keyboard-cz-dvorak-ucw] +Description="Keyboard - Czech - Czech (US, Dvorak, UCW support)" +Language=cs +Label="cz (dvorak-ucw)" + +[keyboard-cz-rus] +Description="Keyboard - Czech - Russian (Czechia, phonetic)" +Language=ru +Label="ru (rus)" + +[keyboard-cz-sun_type6] +Description="Keyboard - Czech - Czech (Sun Type 6/7)" +Language=cs +Label="cz (sun_type6)" + +[keyboard-cz-prog] +Description="Keyboard - Czech - Czech (programming)" +Language=cs +Label="cz (prog)" + +[keyboard-cz-prog_typo] +Description="Keyboard - Czech - Czech (programming, typographic)" +Language=cs +Label="cz (prog_typo)" + +[keyboard-cz-coder] +Description="Keyboard - Czech - Czech (coder)" +Language=cs +Label="cz (coder)" + +[keyboard-cz-colemak-ucw] +Description="Keyboard - Czech - Czech (US, Colemak, UCW support)" +Language=cs +Label="cz (colemak-ucw)" + +[keyboard-brai] +Description="Keyboard - Braille" +Language= +Label=brl + +[keyboard-brai-left_hand] +Description="Keyboard - Braille - Braille (one-handed, left)" +Language= +Label="brai (left_hand)" + +[keyboard-brai-left_hand_invert] +Description="Keyboard - Braille - Braille (one-handed, left, inverted thumb)" +Language= +Label="brai (left_hand_invert)" + +[keyboard-brai-right_hand] +Description="Keyboard - Braille - Braille (one-handed, right)" +Language= +Label="brai (right_hand)" + +[keyboard-brai-right_hand_invert] +Description="Keyboard - Braille - Braille (one-handed, right, inverted thumb)" +Language= +Label="brai (right_hand_invert)" + +[keyboard-se] +Description="Keyboard - Swedish" +Language=sv +Label=sv + +[keyboard-se-nodeadkeys] +Description="Keyboard - Swedish - Swedish (no dead keys)" +Language=sv +Label="se (nodeadkeys)" + +[keyboard-se-dvorak] +Description="Keyboard - Swedish - Swedish (Dvorak)" +Language=sv +Label="se (dvorak)" + +[keyboard-se-us_dvorak] +Description="Keyboard - Swedish - Swedish (Dvorak, intl.)" +Language=sv +Label="se (us_dvorak)" + +[keyboard-se-svdvorak] +Description="Keyboard - Swedish - Swedish (Svdvorak)" +Language=sv +Label="se (svdvorak)" + +[keyboard-se-mac] +Description="Keyboard - Swedish - Swedish (Macintosh)" +Language=sv +Label="se (mac)" + +[keyboard-se-us] +Description="Keyboard - Swedish - Swedish (US)" +Language=sv +Label="se (us)" + +[keyboard-se-swl] +Description="Keyboard - Swedish - Swedish Sign Language" +Language=swl +Label="se (swl)" + +[keyboard-se-smi] +Description="Keyboard - Swedish - Northern Saami (Sweden)" +Language=se +Label="se (smi)" + +[keyboard-se-rus] +Description="Keyboard - Swedish - Russian (Sweden, phonetic)" +Language=ru +Label="ru (rus)" + +[keyboard-se-dvorak_a5] +Description="Keyboard - Swedish - Swedish (Dvorak A5)" +Language=sv +Label="se (dvorak_a5)" + +[keyboard-se-sun_type6] +Description="Keyboard - Swedish - Swedish (Sun Type 6/7)" +Language=sv +Label="se (sun_type6)" + +[keyboard-se-ovd] +Description="Keyboard - Swedish - Elfdalian (Sweden, with combining ogonek)" +Language=ovd +Label="se (ovd)" + +[keyboard-bg] +Description="Keyboard - Bulgarian" +Language=bg +Label=bg + +[keyboard-bg-phonetic] +Description="Keyboard - Bulgarian - Bulgarian (traditional phonetic)" +Language=bg +Label="bg (phonetic)" + +[keyboard-bg-bas_phonetic] +Description="Keyboard - Bulgarian - Bulgarian (new phonetic)" +Language=bg +Label="bg (bas_phonetic)" + +[keyboard-bg-bekl] +Description="Keyboard - Bulgarian - Bulgarian (enhanced)" +Language=bg +Label="bg (bekl)" + +[keyboard-pk] +Description="Keyboard - Urdu (Pakistan)" +Language=ur +Label=ur + +[keyboard-pk-urd-crulp] +Description="Keyboard - Urdu (Pakistan) - Urdu (Pakistan, CRULP)" +Language=ur +Label="pk (urd-crulp)" + +[keyboard-pk-urd-nla] +Description="Keyboard - Urdu (Pakistan) - Urdu (Pakistan, NLA)" +Language=ur +Label="pk (urd-nla)" + +[keyboard-pk-ara] +Description="Keyboard - Urdu (Pakistan) - Arabic (Pakistan)" +Language=ar +Label="ar (ara)" + +[keyboard-pk-snd] +Description="Keyboard - Urdu (Pakistan) - Sindhi" +Language=sd +Label="sd (snd)" + +[keyboard-pk-urd-navees] +Description="Keyboard - Urdu (Pakistan) - Urdu (Pakistan, Navees)" +Language=ur +Label="pk (urd-navees)" + +[keyboard-au] +Description="Keyboard - English (Australia)" +Language=en +Label=en + +[keyboard-mn] +Description="Keyboard - Mongolian" +Language=mn +Label=mn + +[keyboard-dz] +Description="Keyboard - Berber (Algeria, Latin)" +Language=tzm +Label=kab + +[keyboard-dz-ber] +Description="Keyboard - Berber (Algeria, Latin) - Berber (Algeria, Tifinagh)" +Language=kab +Label="kab (ber)" + +[keyboard-dz-azerty-deadkeys] +Description="Keyboard - Berber (Algeria, Latin) - Kabyle (AZERTY, with dead keys)" +Language=kab +Label="kab (azerty-deadkeys)" + +[keyboard-dz-qwerty-gb-deadkeys] +Description="Keyboard - Berber (Algeria, Latin) - Kabyle (QWERTY, UK, with dead keys)" +Language=kab +Label="kab (qwerty-gb-deadkeys)" + +[keyboard-dz-qwerty-us-deadkeys] +Description="Keyboard - Berber (Algeria, Latin) - Kabyle (QWERTY, US, with dead keys)" +Language=kab +Label="kab (qwerty-us-deadkeys)" + +[keyboard-dz-ar] +Description="Keyboard - Berber (Algeria, Latin) - Arabic (Algeria)" +Language=ar +Label=ar + +[keyboard-me] +Description="Keyboard - Montenegrin" +Language=sr +Label=sr + +[keyboard-me-cyrillic] +Description="Keyboard - Montenegrin - Montenegrin (Cyrillic)" +Language=sr +Label="me (cyrillic)" + +[keyboard-me-cyrillicyz] +Description="Keyboard - Montenegrin - Montenegrin (Cyrillic, ZE and ZHE swapped)" +Language=sr +Label="me (cyrillicyz)" + +[keyboard-me-cyrillicalternatequotes] +Description="Keyboard - Montenegrin - Montenegrin (Cyrillic, with guillemets)" +Language=sr +Label="me (cyrillicalternatequotes)" + +[keyboard-me-latinunicode] +Description="Keyboard - Montenegrin - Montenegrin (Latin, Unicode)" +Language=sr +Label="me (latinunicode)" + +[keyboard-me-latinyz] +Description="Keyboard - Montenegrin - Montenegrin (Latin, QWERTY)" +Language=sr +Label="me (latinyz)" + +[keyboard-me-latinunicodeyz] +Description="Keyboard - Montenegrin - Montenegrin (Latin, Unicode, QWERTY)" +Language=sr +Label="me (latinunicodeyz)" + +[keyboard-me-latinalternatequotes] +Description="Keyboard - Montenegrin - Montenegrin (Latin, with guillemets)" +Language=sr +Label="me (latinalternatequotes)" + +[keyboard-lv] +Description="Keyboard - Latvian" +Language=lv +Label=lv + +[keyboard-lv-apostrophe] +Description="Keyboard - Latvian - Latvian (apostrophe)" +Language=lv +Label="lv (apostrophe)" + +[keyboard-lv-tilde] +Description="Keyboard - Latvian - Latvian (tilde)" +Language=lv +Label="lv (tilde)" + +[keyboard-lv-fkey] +Description="Keyboard - Latvian - Latvian (F)" +Language=lv +Label="lv (fkey)" + +[keyboard-lv-modern] +Description="Keyboard - Latvian - Latvian (Modern Latin)" +Language=lv +Label="lv (modern)" + +[keyboard-lv-modern-cyr] +Description="Keyboard - Latvian - Latvian (Modern Cyrillic)" +Language=lv +Label="lv (modern-cyr)" + +[keyboard-lv-ergonomic] +Description="Keyboard - Latvian - Latvian (ergonomic, ŪGJRMV)" +Language=lv +Label="lv (ergonomic)" + +[keyboard-lv-adapted] +Description="Keyboard - Latvian - Latvian (adapted)" +Language=lv +Label="lv (adapted)" + +[keyboard-lv-dvorak] +Description="Keyboard - Latvian - Latvian (Dvorak)" +Language=lv +Label="lv (dvorak)" + +[keyboard-lv-ykeydvorak] +Description="Keyboard - Latvian - Latvian (Dvorak, with Y)" +Language=lv +Label="lv (ykeydvorak)" + +[keyboard-lv-minuskeydvorak] +Description="Keyboard - Latvian - Latvian (Dvorak, with minus)" +Language=lv +Label="lv (minuskeydvorak)" + +[keyboard-lv-dvorakprogr] +Description="Keyboard - Latvian - Latvian (programmer Dvorak)" +Language=lv +Label="lv (dvorakprogr)" + +[keyboard-lv-ykeydvorakprogr] +Description="Keyboard - Latvian - Latvian (programmer Dvorak, with Y)" +Language=lv +Label="lv (ykeydvorakprogr)" + +[keyboard-lv-minuskeydvorakprogr] +Description="Keyboard - Latvian - Latvian (programmer Dvorak, with minus)" +Language=lv +Label="lv (minuskeydvorakprogr)" + +[keyboard-lv-colemak] +Description="Keyboard - Latvian - Latvian (Colemak)" +Language=lv +Label="lv (colemak)" + +[keyboard-lv-apostrophecolemak] +Description="Keyboard - Latvian - Latvian (Colemak, with apostrophe)" +Language=lv +Label="lv (apostrophecolemak)" + +[keyboard-lv-sun_type6] +Description="Keyboard - Latvian - Latvian (Sun Type 6/7)" +Language=lv +Label="lv (sun_type6)" + +[keyboard-lv-apostrophe-deadquotes] +Description="Keyboard - Latvian - Latvian (apostrophe, dead quotes)" +Language=lv +Label="lv (apostrophe-deadquotes)" + +[keyboard-ba] +Description="Keyboard - Bosnian" +Language=bs +Label=bs + +[keyboard-ba-alternatequotes] +Description="Keyboard - Bosnian - Bosnian (with guillemets)" +Language=bs +Label="ba (alternatequotes)" + +[keyboard-ba-unicode] +Description="Keyboard - Bosnian - Bosnian (with Bosnian digraphs)" +Language=bs +Label="ba (unicode)" + +[keyboard-ba-unicodeus] +Description="Keyboard - Bosnian - Bosnian (US, with Bosnian digraphs)" +Language=bs +Label="ba (unicodeus)" + +[keyboard-ba-us] +Description="Keyboard - Bosnian - Bosnian (US)" +Language=bs +Label="ba (us)" + +[keyboard-tw] +Description="Keyboard - Taiwanese" +Language= +Label=zh + +[keyboard-tw-indigenous] +Description="Keyboard - Taiwanese - Taiwanese (indigenous)" +Language=tay +Label="tw (indigenous)" + +[keyboard-tw-saisiyat] +Description="Keyboard - Taiwanese - Saisiyat (Taiwan)" +Language=xsy +Label="xsy (saisiyat)" + +[keyboard-rs] +Description="Keyboard - Serbian" +Language=sr +Label=sr + +[keyboard-rs-alternatequotes] +Description="Keyboard - Serbian - Serbian (Cyrillic, with guillemets)" +Language=sr +Label="rs (alternatequotes)" + +[keyboard-rs-yz] +Description="Keyboard - Serbian - Serbian (Cyrillic, ZE and ZHE swapped)" +Language=sr +Label="rs (yz)" + +[keyboard-rs-latin] +Description="Keyboard - Serbian - Serbian (Latin)" +Language=sr +Label="rs (latin)" + +[keyboard-rs-latinalternatequotes] +Description="Keyboard - Serbian - Serbian (Latin, with guillemets)" +Language=sr +Label="rs (latinalternatequotes)" + +[keyboard-rs-latinunicode] +Description="Keyboard - Serbian - Serbian (Latin, Unicode)" +Language=sr +Label="rs (latinunicode)" + +[keyboard-rs-latinyz] +Description="Keyboard - Serbian - Serbian (Latin, QWERTY)" +Language=sr +Label="rs (latinyz)" + +[keyboard-rs-latinunicodeyz] +Description="Keyboard - Serbian - Serbian (Latin, Unicode, QWERTY)" +Language=sr +Label="rs (latinunicodeyz)" + +[keyboard-rs-rue] +Description="Keyboard - Serbian - Pannonian Rusyn" +Language=rue +Label="rs (rue)" + +[keyboard-rs-combiningkeys] +Description="Keyboard - Serbian - Serbian (combining accents instead of dead keys)" +Language=sr +Label="rs (combiningkeys)" + +[keyboard-dk] +Description="Keyboard - Danish" +Language=da +Label=da + +[keyboard-dk-nodeadkeys] +Description="Keyboard - Danish - Danish (no dead keys)" +Language=da +Label="dk (nodeadkeys)" + +[keyboard-dk-winkeys] +Description="Keyboard - Danish - Danish (Windows)" +Language=da +Label="dk (winkeys)" + +[keyboard-dk-mac] +Description="Keyboard - Danish - Danish (Macintosh)" +Language=da +Label="dk (mac)" + +[keyboard-dk-mac_nodeadkeys] +Description="Keyboard - Danish - Danish (Macintosh, no dead keys)" +Language=da +Label="dk (mac_nodeadkeys)" + +[keyboard-dk-dvorak] +Description="Keyboard - Danish - Danish (Dvorak)" +Language=da +Label="dk (dvorak)" + +[keyboard-dk-sun_type6] +Description="Keyboard - Danish - Danish (Sun Type 6/7)" +Language=da +Label="dk (sun_type6)" + +[keyboard-bw] +Description="Keyboard - Tswana" +Language=tn +Label=tn + +[keyboard-kr] +Description="Keyboard - Korean" +Language=ko +Label=ko + +[keyboard-kr-kr104] +Description="Keyboard - Korean - Korean (101/104-key compatible)" +Language=ko +Label="kr (kr104)" + +[keyboard-kr-sun_type6] +Description="Keyboard - Korean - Korean (Sun Type 6/7)" +Language=ko +Label="kr (sun_type6)" + +[keyboard-nl] +Description="Keyboard - Dutch" +Language=nl +Label=nl + +[keyboard-nl-us] +Description="Keyboard - Dutch - Dutch (US)" +Language=nl +Label="nl (us)" + +[keyboard-nl-mac] +Description="Keyboard - Dutch - Dutch (Macintosh)" +Language=nl +Label="nl (mac)" + +[keyboard-nl-std] +Description="Keyboard - Dutch - Dutch (standard)" +Language=nl +Label="nl (std)" + +[keyboard-nl-sun_type6] +Description="Keyboard - Dutch - Dutch (Sun Type 6/7)" +Language=nl +Label="nl (sun_type6)" + +[keyboard-et] +Description="Keyboard - Amharic" +Language=am +Label=am + +[keyboard-be] +Description="Keyboard - Belgian" +Language=de +Label=be + +[keyboard-be-oss] +Description="Keyboard - Belgian - Belgian (alt.)" +Language=de +Label="be (oss)" + +[keyboard-be-oss_latin9] +Description="Keyboard - Belgian - Belgian (Latin-9 only, alt.)" +Language=de +Label="be (oss_latin9)" + +[keyboard-be-iso-alternate] +Description="Keyboard - Belgian - Belgian (ISO, alt.)" +Language=de +Label="be (iso-alternate)" + +[keyboard-be-nodeadkeys] +Description="Keyboard - Belgian - Belgian (no dead keys)" +Language=de +Label="be (nodeadkeys)" + +[keyboard-be-wang] +Description="Keyboard - Belgian - Belgian (Wang 724 AZERTY)" +Language=de +Label="be (wang)" + +[keyboard-be-sun_type6] +Description="Keyboard - Belgian - Belgian (Sun Type 6/7)" +Language=de +Label="be (sun_type6)" + +[keyboard-la] +Description="Keyboard - Lao" +Language=lo +Label=lo + +[keyboard-la-stea] +Description="Keyboard - Lao - Lao (STEA)" +Language=lo +Label="la (stea)" + +[keyboard-bt] +Description="Keyboard - Dzongkha" +Language=dz +Label=dz + +[keyboard-mm] +Description="Keyboard - Burmese" +Language=my +Label=my + +[keyboard-mm-zawgyi] +Description="Keyboard - Burmese - Burmese (Zawgyi)" +Language=my +Label="my-zwg (zawgyi)" + +[keyboard-mm-mnw] +Description="Keyboard - Burmese - Mon" +Language=mnw +Label=mnw + +[keyboard-mm-mnw-a1] +Description="Keyboard - Burmese - Mon (A1)" +Language=mnw +Label="mnw (mnw-a1)" + +[keyboard-mm-shn] +Description="Keyboard - Burmese - Shan" +Language=shn +Label=shn + +[keyboard-mm-zgt] +Description="Keyboard - Burmese - Shan (Zawgyi)" +Language=shn +Label="shn-zwg (zgt)" + +[keyboard-si] +Description="Keyboard - Slovenian" +Language=sl +Label=sl + +[keyboard-si-alternatequotes] +Description="Keyboard - Slovenian - Slovenian (with guillemets)" +Language=sl +Label="si (alternatequotes)" + +[keyboard-si-us] +Description="Keyboard - Slovenian - Slovenian (US)" +Language=sl +Label="si (us)" + +[keyboard-am] +Description="Keyboard - Armenian" +Language=hy +Label=hy + +[keyboard-am-phonetic] +Description="Keyboard - Armenian - Armenian (phonetic)" +Language=hy +Label="am (phonetic)" + +[keyboard-am-phonetic-alt] +Description="Keyboard - Armenian - Armenian (alt. phonetic)" +Language=hy +Label="am (phonetic-alt)" + +[keyboard-am-eastern] +Description="Keyboard - Armenian - Armenian (eastern)" +Language=hy +Label="am (eastern)" + +[keyboard-am-eastern-alt] +Description="Keyboard - Armenian - Armenian (alt. eastern)" +Language=hy +Label="am (eastern-alt)" + +[keyboard-am-western] +Description="Keyboard - Armenian - Armenian (western)" +Language=hy +Label="am (western)" + +[keyboard-am-olpc-phonetic] +Description="Keyboard - Armenian - Armenian (OLPC, phonetic)" +Language=hy +Label="am (olpc-phonetic)" + +[keyboard-by] +Description="Keyboard - Belarusian" +Language=be +Label=by + +[keyboard-by-legacy] +Description="Keyboard - Belarusian - Belarusian (legacy)" +Language=be +Label="by (legacy)" + +[keyboard-by-latin] +Description="Keyboard - Belarusian - Belarusian (Latin)" +Language=be +Label="by (latin)" + +[keyboard-by-intl] +Description="Keyboard - Belarusian - Belarusian (intl.)" +Language=be +Label="by (intl)" + +[keyboard-by-phonetic] +Description="Keyboard - Belarusian - Belarusian (phonetic)" +Language=be +Label="by (phonetic)" + +[keyboard-by-ru] +Description="Keyboard - Belarusian - Russian (Belarus)" +Language=ru +Label="by (ru)" + +[keyboard-vn] +Description="Keyboard - Vietnamese" +Language=vi +Label=vi + +[keyboard-vn-us] +Description="Keyboard - Vietnamese - Vietnamese (US)" +Language=vi +Label="vn (us)" + +[keyboard-vn-fr] +Description="Keyboard - Vietnamese - Vietnamese (France)" +Language=vi +Label="vn (fr)" + +[keyboard-vn-aderty] +Description="Keyboard - Vietnamese - Vietnamese (AÐERTY)" +Language=vi +Label="vn (aderty)" + +[keyboard-vn-qderty] +Description="Keyboard - Vietnamese - Vietnamese (QĐERTY)" +Language=vi +Label="vn (qderty)" + +[keyboard-ml] +Description="Keyboard - Bambara" +Language=bm +Label=bm + +[keyboard-ml-fr-oss] +Description="Keyboard - Bambara - French (Mali, alt.)" +Language=fr +Label="fr (fr-oss)" + +[keyboard-ml-us-mac] +Description="Keyboard - Bambara - English (Mali, US, Macintosh)" +Language=en +Label="en (us-mac)" + +[keyboard-ml-us-intl] +Description="Keyboard - Bambara - English (Mali, US, intl.)" +Language=en +Label="en (us-intl)" + +[keyboard-ara] +Description="Keyboard - Arabic" +Language=ar +Label=ar + +[keyboard-ara-digits] +Description="Keyboard - Arabic - Arabic (Eastern Arabic numerals)" +Language=ar +Label="ara (digits)" + +[keyboard-ara-azerty] +Description="Keyboard - Arabic - Arabic (AZERTY)" +Language=ar +Label="ara (azerty)" + +[keyboard-ara-azerty_digits] +Description="Keyboard - Arabic - Arabic (AZERTY, Eastern Arabic numerals)" +Language=ar +Label="ara (azerty_digits)" + +[keyboard-ara-buckwalter] +Description="Keyboard - Arabic - Arabic (Buckwalter)" +Language=ar +Label="ara (buckwalter)" + +[keyboard-ara-mac] +Description="Keyboard - Arabic - Arabic (Macintosh)" +Language=ar +Label="ara (mac)" + +[keyboard-ara-mac-phonetic] +Description="Keyboard - Arabic - Arabic (Macintosh, phonetic)" +Language=ar +Label="ara (mac-phonetic)" + +[keyboard-ara-olpc] +Description="Keyboard - Arabic - Arabic (OLPC)" +Language=ar +Label="ara (olpc)" + +[keyboard-ara-sun_type6] +Description="Keyboard - Arabic - Arabic (Sun Type 6/7)" +Language=ar +Label="ara (sun_type6)" + +[keyboard-ara-basic_ext] +Description="Keyboard - Arabic - Arabic (Arabic numerals, extensions in the 4th level)" +Language=ar +Label="ara (basic_ext)" + +[keyboard-ara-basic_ext_digits] +Description="Keyboard - Arabic - Arabic (Eastern Arabic numerals, extensions in the 4th level)" +Language=ar +Label="ara (basic_ext_digits)" + +[keyboard-ara-ergoarabic] +Description="Keyboard - Arabic - Arabic (ErgoArabic)" +Language=ar +Label="ara (ergoarabic)" + +[keyboard-ie] +Description="Keyboard - Irish" +Language=en +Label=ie + +[keyboard-ie-UnicodeExpert] +Description="Keyboard - Irish - Irish (UnicodeExpert)" +Language=en +Label="ie (UnicodeExpert)" + +[keyboard-ie-CloGaelach] +Description="Keyboard - Irish - CloGaelach" +Language=ga +Label="ie (CloGaelach)" + +[keyboard-ie-ogam] +Description="Keyboard - Irish - Ogham" +Language=sga +Label="ie (ogam)" + +[keyboard-ie-ogam_is434] +Description="Keyboard - Irish - Ogham (IS434)" +Language=sga +Label="ie (ogam_is434)" + +[keyboard-cm] +Description="Keyboard - English (Cameroon)" +Language=en +Label=cm + +[keyboard-cm-french] +Description="Keyboard - English (Cameroon) - French (Cameroon)" +Language=fr +Label="fr (french)" + +[keyboard-cm-qwerty] +Description="Keyboard - English (Cameroon) - Cameroon Multilingual (QWERTY, intl.)" +Language=en +Label="cm (qwerty)" + +[keyboard-cm-azerty] +Description="Keyboard - English (Cameroon) - Cameroon (AZERTY, intl.)" +Language=fr +Label="cm (azerty)" + +[keyboard-cm-dvorak] +Description="Keyboard - English (Cameroon) - Cameroon (Dvorak, intl.)" +Language=en +Label="cm (dvorak)" + +[keyboard-cm-mmuock] +Description="Keyboard - English (Cameroon) - Mmuock" +Language=en +Label="cm (mmuock)" + +[keyboard-iq] +Description="Keyboard - Arabic (Iraq)" +Language=ar +Label=ar + +[keyboard-iq-ku] +Description="Keyboard - Arabic (Iraq) - Kurdish (Iraq, Latin Q)" +Language=ku +Label=ku + +[keyboard-iq-ku_alt] +Description="Keyboard - Arabic (Iraq) - Kurdish (Iraq, Latin Alt-Q)" +Language=ku +Label="ku (ku_alt)" + +[keyboard-iq-ku_f] +Description="Keyboard - Arabic (Iraq) - Kurdish (Iraq, F)" +Language=ku +Label="ku (ku_f)" + +[keyboard-iq-ku_ara] +Description="Keyboard - Arabic (Iraq) - Kurdish (Iraq, Arabic-Latin)" +Language=ku +Label="ku (ku_ara)" + +[keyboard-af] +Description="Keyboard - Dari" +Language=prs +Label=fa + +[keyboard-af-ps] +Description="Keyboard - Dari - Pashto" +Language=ps +Label=ps + +[keyboard-af-uz] +Description="Keyboard - Dari - Uzbek (Afghanistan)" +Language=uz +Label=uz + +[keyboard-af-fa-olpc] +Description="Keyboard - Dari - Dari (Afghanistan, OLPC)" +Language=prs +Label="fa (fa-olpc)" + +[keyboard-af-ps-olpc] +Description="Keyboard - Dari - Pashto (Afghanistan, OLPC)" +Language=ps +Label="ps (ps-olpc)" + +[keyboard-af-uz-olpc] +Description="Keyboard - Dari - Uzbek (Afghanistan, OLPC)" +Language=uz +Label="uz (uz-olpc)" + +[keyboard-hr] +Description="Keyboard - Croatian" +Language=hr +Label=hr + +[keyboard-hr-alternatequotes] +Description="Keyboard - Croatian - Croatian (with guillemets)" +Language=hr +Label="hr (alternatequotes)" + +[keyboard-hr-unicode] +Description="Keyboard - Croatian - Croatian (with Croatian digraphs)" +Language=hr +Label="hr (unicode)" + +[keyboard-hr-unicodeus] +Description="Keyboard - Croatian - Croatian (US, with Croatian digraphs)" +Language=hr +Label="hr (unicodeus)" + +[keyboard-hr-us] +Description="Keyboard - Croatian - Croatian (US)" +Language=hr +Label="hr (us)" + +[keyboard-ma] +Description="Keyboard - Arabic (Morocco)" +Language=ary +Label=ar + +[keyboard-ma-tifinagh] +Description="Keyboard - Arabic (Morocco) - Berber (Morocco, Tifinagh)" +Language= +Label="ber (tifinagh)" + +[keyboard-ma-tifinagh-alt] +Description="Keyboard - Arabic (Morocco) - Berber (Morocco, Tifinagh alt.)" +Language= +Label="ber (tifinagh-alt)" + +[keyboard-ma-tifinagh-alt-phonetic] +Description="Keyboard - Arabic (Morocco) - Berber (Morocco, Tifinagh phonetic, alt.)" +Language= +Label="ber (tifinagh-alt-phonetic)" + +[keyboard-ma-tifinagh-extended] +Description="Keyboard - Arabic (Morocco) - Berber (Morocco, Tifinagh extended)" +Language= +Label="ber (tifinagh-extended)" + +[keyboard-ma-tifinagh-phonetic] +Description="Keyboard - Arabic (Morocco) - Berber (Morocco, Tifinagh phonetic)" +Language= +Label="ber (tifinagh-phonetic)" + +[keyboard-ma-tifinagh-extended-phonetic] +Description="Keyboard - Arabic (Morocco) - Berber (Morocco, Tifinagh extended phonetic)" +Language= +Label="ber (tifinagh-extended-phonetic)" + +[keyboard-ma-french] +Description="Keyboard - Arabic (Morocco) - French (Morocco)" +Language=fr +Label="fr (french)" + +[keyboard-ma-rif] +Description="Keyboard - Arabic (Morocco) - Tarifit" +Language=rif +Label=rif + +[keyboard-sy] +Description="Keyboard - Arabic (Syria)" +Language=syr +Label=ar + +[keyboard-sy-syc] +Description="Keyboard - Arabic (Syria) - Syriac" +Language=syr +Label=syc + +[keyboard-sy-syc_phonetic] +Description="Keyboard - Arabic (Syria) - Syriac (phonetic)" +Language=syr +Label="syc (syc_phonetic)" + +[keyboard-sy-ku] +Description="Keyboard - Arabic (Syria) - Kurdish (Syria, Latin Q)" +Language=ku +Label=ku + +[keyboard-sy-ku_alt] +Description="Keyboard - Arabic (Syria) - Kurdish (Syria, Latin Alt-Q)" +Language=ku +Label="ku (ku_alt)" + +[keyboard-sy-ku_f] +Description="Keyboard - Arabic (Syria) - Kurdish (Syria, F)" +Language=ku +Label="ku (ku_f)" + +[keyboard-at] +Description="Keyboard - German (Austria)" +Language=de +Label=de + +[keyboard-at-nodeadkeys] +Description="Keyboard - German (Austria) - German (Austria, no dead keys)" +Language=de +Label="at (nodeadkeys)" + +[keyboard-at-mac] +Description="Keyboard - German (Austria) - German (Austria, Macintosh)" +Language=de +Label="at (mac)" + +[keyboard-nz] +Description="Keyboard - English (New Zealand)" +Language=en +Label=en + +[keyboard-nz-mao] +Description="Keyboard - English (New Zealand) - Maori" +Language=mi +Label="mi (mao)" + +[keyboard-epo] +Description="Keyboard - Esperanto" +Language=eo +Label=eo + +[keyboard-epo-legacy] +Description="Keyboard - Esperanto - Esperanto (legacy)" +Language=eo +Label="epo (legacy)" + +[keyboard-eu] +Description="Keyboard - EurKEY (US)" +Language=ca +Label=eu + +[keyboard-za] +Description="Keyboard - English (South Africa)" +Language=en +Label=en + +[keyboard-fo] +Description="Keyboard - Faroese" +Language=fo +Label=fo + +[keyboard-fo-nodeadkeys] +Description="Keyboard - Faroese - Faroese (no dead keys)" +Language=fo +Label="fo (nodeadkeys)" + +[keyboard-gb] +Description="Keyboard - English (UK)" +Language=en +Label=en + +[keyboard-gb-extd] +Description="Keyboard - English (UK) - English (UK, extended, Windows)" +Language=en +Label="gb (extd)" + +[keyboard-gb-intl] +Description="Keyboard - English (UK) - English (UK, intl., with dead keys)" +Language=en +Label="gb (intl)" + +[keyboard-gb-dvorak] +Description="Keyboard - English (UK) - English (UK, Dvorak)" +Language=en +Label="gb (dvorak)" + +[keyboard-gb-dvorakukp] +Description="Keyboard - English (UK) - English (UK, Dvorak, with UK punctuation)" +Language=en +Label="gb (dvorakukp)" + +[keyboard-gb-mac] +Description="Keyboard - English (UK) - English (UK, Macintosh)" +Language=en +Label="gb (mac)" + +[keyboard-gb-mac_intl] +Description="Keyboard - English (UK) - English (UK, Macintosh, intl.)" +Language=en +Label="gb (mac_intl)" + +[keyboard-gb-colemak] +Description="Keyboard - English (UK) - English (UK, Colemak)" +Language=en +Label="gb (colemak)" + +[keyboard-gb-colemak_dh] +Description="Keyboard - English (UK) - English (UK, Colemak-DH)" +Language=en +Label="gb (colemak_dh)" + +[keyboard-gb-gla] +Description="Keyboard - English (UK) - Scottish Gaelic" +Language=en +Label="gd (gla)" + +[keyboard-gb-pl] +Description="Keyboard - English (UK) - Polish (British keyboard)" +Language=pl +Label=pl + +[keyboard-gb-sun_type6] +Description="Keyboard - English (UK) - English (UK, Sun Type 6/7)" +Language=en +Label="gb (sun_type6)" + +[keyboard-ke] +Description="Keyboard - Swahili (Kenya)" +Language=sw +Label=sw + +[keyboard-ke-kik] +Description="Keyboard - Swahili (Kenya) - Kikuyu" +Language=ki +Label="ki (kik)" + +[keyboard-md] +Description="Keyboard - Moldavian" +Language=ro +Label=ro + +[keyboard-md-gag] +Description="Keyboard - Moldavian - Gagauz (Moldova)" +Language=gag +Label=gag + +[keyboard-us] +Description="Keyboard - English (US)" +Language=en +Label=en + +[keyboard-us-euro] +Description="Keyboard - English (US) - English (US, euro on 5)" +Language=en +Label="us (euro)" + +[keyboard-us-intl] +Description="Keyboard - English (US) - English (US, intl., with dead keys)" +Language=en +Label="us (intl)" + +[keyboard-us-alt-intl] +Description="Keyboard - English (US) - English (US, alt. intl.)" +Language=en +Label="us (alt-intl)" + +[keyboard-us-altgr-intl] +Description="Keyboard - English (US) - English (intl., with AltGr dead keys)" +Language=en +Label="us (altgr-intl)" + +[keyboard-us-mac] +Description="Keyboard - English (US) - English (Macintosh)" +Language=en +Label="us (mac)" + +[keyboard-us-colemak] +Description="Keyboard - English (US) - English (Colemak)" +Language=en +Label="us (colemak)" + +[keyboard-us-colemak_dh] +Description="Keyboard - English (US) - English (Colemak-DH)" +Language=en +Label="us (colemak_dh)" + +[keyboard-us-colemak_dh_wide] +Description="Keyboard - English (US) - English (Colemak-DH Wide)" +Language=en +Label="us (colemak_dh_wide)" + +[keyboard-us-colemak_dh_ortho] +Description="Keyboard - English (US) - English (Colemak-DH Ortholinear)" +Language=en +Label="us (colemak_dh_ortho)" + +[keyboard-us-colemak_dh_iso] +Description="Keyboard - English (US) - English (Colemak-DH ISO)" +Language=en +Label="us (colemak_dh_iso)" + +[keyboard-us-colemak_dh_wide_iso] +Description="Keyboard - English (US) - English (Colemak-DH Wide ISO)" +Language=en +Label="us (colemak_dh_wide_iso)" + +[keyboard-us-dvorak] +Description="Keyboard - English (US) - English (Dvorak)" +Language=en +Label="us (dvorak)" + +[keyboard-us-dvorak-intl] +Description="Keyboard - English (US) - English (Dvorak, intl., with dead keys)" +Language=en +Label="us (dvorak-intl)" + +[keyboard-us-dvorak-alt-intl] +Description="Keyboard - English (US) - English (Dvorak, alt. intl.)" +Language=en +Label="us (dvorak-alt-intl)" + +[keyboard-us-dvorak-l] +Description="Keyboard - English (US) - English (Dvorak, one-handed, left)" +Language=en +Label="us (dvorak-l)" + +[keyboard-us-dvorak-r] +Description="Keyboard - English (US) - English (Dvorak, one-handed, right)" +Language=en +Label="us (dvorak-r)" + +[keyboard-us-dvorak-classic] +Description="Keyboard - English (US) - English (classic Dvorak)" +Language=en +Label="us (dvorak-classic)" + +[keyboard-us-dvp] +Description="Keyboard - English (US) - English (programmer Dvorak)" +Language=en +Label="us (dvp)" + +[keyboard-us-dvorak-mac] +Description="Keyboard - English (US) - English (Dvorak, Macintosh)" +Language=en +Label="us (dvorak-mac)" + +[keyboard-us-norman] +Description="Keyboard - English (US) - English (Norman)" +Language=en +Label="us (norman)" + +[keyboard-us-symbolic] +Description="Keyboard - English (US) - English (US, Symbolic)" +Language=en +Label="us (symbolic)" + +[keyboard-us-workman] +Description="Keyboard - English (US) - English (Workman)" +Language=en +Label="us (workman)" + +[keyboard-us-workman-intl] +Description="Keyboard - English (US) - English (Workman, intl., with dead keys)" +Language=en +Label="us (workman-intl)" + +[keyboard-us-olpc2] +Description="Keyboard - English (US) - English (the divide/multiply toggle the layout)" +Language=en +Label="us (olpc2)" + +[keyboard-us-chr] +Description="Keyboard - English (US) - Cherokee" +Language=chr +Label=chr + +[keyboard-us-haw] +Description="Keyboard - English (US) - Hawaiian" +Language=haw +Label=haw + +[keyboard-us-rus] +Description="Keyboard - English (US) - Russian (US, phonetic)" +Language=ru +Label="ru (rus)" + +[keyboard-us-hbs] +Description="Keyboard - English (US) - Serbo-Croatian (US)" +Language=en +Label="us (hbs)" + +[keyboard-us-intl-unicode] +Description="Keyboard - English (US) - English (US, intl., AltGr Unicode combining)" +Language=en +Label="us (intl-unicode)" + +[keyboard-us-alt-intl-unicode] +Description="Keyboard - English (US) - English (US, intl., AltGr Unicode combining, alt.)" +Language=en +Label="us (alt-intl-unicode)" + +[keyboard-us-ats] +Description="Keyboard - English (US) - Atsina" +Language=en +Label="us (ats)" + +[keyboard-us-crd] +Description="Keyboard - English (US) - Coeur d'Alene Salish" +Language=crd +Label="us (crd)" + +[keyboard-us-cz_sk_de] +Description="Keyboard - English (US) - Czech, Slovak and German (US)" +Language=en +Label="us (cz_sk_de)" + +[keyboard-us-cz_sk_pl_de_es_fi_sv] +Description="Keyboard - English (US) - Czech, Slovak, Polish, Spanish, Finnish, Swedish and German (US)" +Language=en +Label="us (cz_sk_pl_de_es_fi_sv)" + +[keyboard-us-drix] +Description="Keyboard - English (US) - English (Drix)" +Language=en +Label="us (drix)" + +[keyboard-us-de_se_fi] +Description="Keyboard - English (US) - German, Swedish and Finnish (US)" +Language=en +Label="us (de_se_fi)" + +[keyboard-us-ibm238l] +Description="Keyboard - English (US) - English (US, IBM Arabic 238_L)" +Language=en +Label="us (ibm238l)" + +[keyboard-us-sun_type6] +Description="Keyboard - English (US) - English (US, Sun Type 6/7)" +Language=en +Label="us (sun_type6)" + +[keyboard-us-carpalx] +Description="Keyboard - English (US) - English (Carpalx)" +Language=en +Label="us (carpalx)" + +[keyboard-us-carpalx-intl] +Description="Keyboard - English (US) - English (Carpalx, intl., with dead keys)" +Language=en +Label="us (carpalx-intl)" + +[keyboard-us-carpalx-altgr-intl] +Description="Keyboard - English (US) - English (Carpalx, intl., with AltGr dead keys)" +Language=en +Label="us (carpalx-altgr-intl)" + +[keyboard-us-carpalx-full] +Description="Keyboard - English (US) - English (Carpalx, full optimization)" +Language=en +Label="us (carpalx-full)" + +[keyboard-us-carpalx-full-intl] +Description="Keyboard - English (US) - English (Carpalx, full optimization, intl., with dead keys)" +Language=en +Label="us (carpalx-full-intl)" + +[keyboard-us-carpalx-full-altgr-intl] +Description="Keyboard - English (US) - English (Carpalx, full optimization, intl., with AltGr dead keys)" +Language=en +Label="us (carpalx-full-altgr-intl)" + +[keyboard-us-3l] +Description="Keyboard - English (US) - English (3l)" +Language=en +Label="us (3l)" + +[keyboard-us-3l-cros] +Description="Keyboard - English (US) - English (3l, Chromebook)" +Language=en +Label="us (3l-cros)" + +[keyboard-us-3l-emacs] +Description="Keyboard - English (US) - English (3l, emacs)" +Language=en +Label="us (3l-emacs)" + +[keyboard-us-workman-p] +Description="Keyboard - English (US) - English (Workman-P)" +Language=en +Label=workman-p + +[keyboard-us-scn] +Description="Keyboard - English (US) - Sicilian (US keyboard)" +Language=en +Label="us (scn)" + +[keyboard-us-altgr-weur] +Description="Keyboard - English (US) - English (Western European AltGr dead keys)" +Language=en +Label="us (altgr-weur)" + +[keyboard-ge] +Description="Keyboard - Georgian" +Language=ka +Label=ka + +[keyboard-ge-ergonomic] +Description="Keyboard - Georgian - Georgian (ergonomic)" +Language=ka +Label="ge (ergonomic)" + +[keyboard-ge-mess] +Description="Keyboard - Georgian - Georgian (MESS)" +Language=ka +Label="ge (mess)" + +[keyboard-ge-os] +Description="Keyboard - Georgian - Ossetian (Georgia)" +Language=os +Label="ge (os)" + +[keyboard-ge-ru] +Description="Keyboard - Georgian - Russian (Georgia)" +Language=ru +Label=ru + +[keyboard-es] +Description="Keyboard - Spanish" +Language=es +Label=es + +[keyboard-es-nodeadkeys] +Description="Keyboard - Spanish - Spanish (no dead keys)" +Language=es +Label="es (nodeadkeys)" + +[keyboard-es-deadtilde] +Description="Keyboard - Spanish - Spanish (dead tilde)" +Language=es +Label="es (deadtilde)" + +[keyboard-es-winkeys] +Description="Keyboard - Spanish - Spanish (Windows)" +Language=es +Label="es (winkeys)" + +[keyboard-es-dvorak] +Description="Keyboard - Spanish - Spanish (Dvorak)" +Language=es +Label="es (dvorak)" + +[keyboard-es-ast] +Description="Keyboard - Spanish - Asturian (Spain, with bottom-dot H and L)" +Language=ast +Label=ast + +[keyboard-es-cat] +Description="Keyboard - Spanish - Catalan (Spain, with middle-dot L)" +Language=ca +Label="ca (cat)" + +[keyboard-es-sun_type6] +Description="Keyboard - Spanish - Spanish (Sun Type 6/7)" +Language=es +Label="es (sun_type6)" + +[keyboard-ee] +Description="Keyboard - Estonian" +Language=et +Label=et + +[keyboard-ee-nodeadkeys] +Description="Keyboard - Estonian - Estonian (no dead keys)" +Language=et +Label="ee (nodeadkeys)" + +[keyboard-ee-dvorak] +Description="Keyboard - Estonian - Estonian (Dvorak)" +Language=et +Label="ee (dvorak)" + +[keyboard-ee-us] +Description="Keyboard - Estonian - Estonian (US)" +Language=et +Label="ee (us)" + +[keyboard-ee-sun_type6] +Description="Keyboard - Estonian - Estonian (Sun Type 6/7)" +Language=et +Label="ee (sun_type6)" + +[keyboard-bd] +Description="Keyboard - Bangla" +Language=bn +Label=bn + +[keyboard-bd-probhat] +Description="Keyboard - Bangla - Bangla (Probhat)" +Language=bn +Label="bd (probhat)" + +[keyboard-ph] +Description="Keyboard - Filipino" +Language=fil +Label=ph + +[keyboard-ph-qwerty-bay] +Description="Keyboard - Filipino - Filipino (QWERTY, Baybayin)" +Language=fil +Label="ph (qwerty-bay)" + +[keyboard-ph-capewell-dvorak] +Description="Keyboard - Filipino - Filipino (Capewell-Dvorak, Latin)" +Language=fil +Label="ph (capewell-dvorak)" + +[keyboard-ph-capewell-dvorak-bay] +Description="Keyboard - Filipino - Filipino (Capewell-Dvorak, Baybayin)" +Language=fil +Label="ph (capewell-dvorak-bay)" + +[keyboard-ph-capewell-qwerf2k6] +Description="Keyboard - Filipino - Filipino (Capewell-QWERF 2006, Latin)" +Language=fil +Label="ph (capewell-qwerf2k6)" + +[keyboard-ph-capewell-qwerf2k6-bay] +Description="Keyboard - Filipino - Filipino (Capewell-QWERF 2006, Baybayin)" +Language=fil +Label="ph (capewell-qwerf2k6-bay)" + +[keyboard-ph-colemak] +Description="Keyboard - Filipino - Filipino (Colemak, Latin)" +Language=fil +Label="ph (colemak)" + +[keyboard-ph-colemak-bay] +Description="Keyboard - Filipino - Filipino (Colemak, Baybayin)" +Language=fil +Label="ph (colemak-bay)" + +[keyboard-ph-dvorak] +Description="Keyboard - Filipino - Filipino (Dvorak, Latin)" +Language=fil +Label="ph (dvorak)" + +[keyboard-ph-dvorak-bay] +Description="Keyboard - Filipino - Filipino (Dvorak, Baybayin)" +Language=fil +Label="ph (dvorak-bay)" + +[keyboard-uz] +Description="Keyboard - Uzbek" +Language=uz +Label=uz + +[keyboard-uz-latin] +Description="Keyboard - Uzbek - Uzbek (Latin)" +Language=uz +Label="uz (latin)" + +[keyboard-lt] +Description="Keyboard - Lithuanian" +Language=lt +Label=lt + +[keyboard-lt-std] +Description="Keyboard - Lithuanian - Lithuanian (standard)" +Language=lt +Label="lt (std)" + +[keyboard-lt-us] +Description="Keyboard - Lithuanian - Lithuanian (US)" +Language=lt +Label="lt (us)" + +[keyboard-lt-ibm] +Description="Keyboard - Lithuanian - Lithuanian (IBM)" +Language=lt +Label="lt (ibm)" + +[keyboard-lt-lekp] +Description="Keyboard - Lithuanian - Lithuanian (LEKP)" +Language=lt +Label="lt (lekp)" + +[keyboard-lt-lekpa] +Description="Keyboard - Lithuanian - Lithuanian (LEKPa)" +Language=lt +Label="lt (lekpa)" + +[keyboard-lt-ratise] +Description="Keyboard - Lithuanian - Lithuanian (Ratise)" +Language=lt +Label="lt (ratise)" + +[keyboard-lt-sgs] +Description="Keyboard - Lithuanian - Samogitian" +Language=sgs +Label="lt (sgs)" + +[keyboard-lt-us_dvorak] +Description="Keyboard - Lithuanian - Lithuanian (Dvorak)" +Language=lt +Label="lt (us_dvorak)" + +[keyboard-lt-sun_type6] +Description="Keyboard - Lithuanian - Lithuanian (Sun Type 6/7)" +Language=lt +Label="lt (sun_type6)" + +[keyboard-fi] +Description="Keyboard - Finnish" +Language=fi +Label=fi + +[keyboard-fi-winkeys] +Description="Keyboard - Finnish - Finnish (Windows)" +Language=fi +Label="fi (winkeys)" + +[keyboard-fi-classic] +Description="Keyboard - Finnish - Finnish (classic)" +Language=fi +Label="fi (classic)" + +[keyboard-fi-nodeadkeys] +Description="Keyboard - Finnish - Finnish (classic, no dead keys)" +Language=fi +Label="fi (nodeadkeys)" + +[keyboard-fi-mac] +Description="Keyboard - Finnish - Finnish (Macintosh)" +Language=fi +Label="fi (mac)" + +[keyboard-fi-smi] +Description="Keyboard - Finnish - Northern Saami (Finland)" +Language=se +Label="fi (smi)" + +[keyboard-fi-sun_type6] +Description="Keyboard - Finnish - Finnish (Sun Type 6/7)" +Language=fi +Label="fi (sun_type6)" + +[keyboard-fi-das] +Description="Keyboard - Finnish - Finnish (DAS)" +Language=fi +Label="fi (das)" + +[keyboard-fi-fidvorak] +Description="Keyboard - Finnish - Finnish (Dvorak)" +Language=fi +Label="fi (fidvorak)" + +[keyboard-cn] +Description="Keyboard - Chinese" +Language=zh +Label=zh + +[keyboard-cn-altgr-pinyin] +Description="Keyboard - Chinese - Hanyu Pinyin Letters (with AltGr dead keys)" +Language=zh +Label="cn (altgr-pinyin)" + +[keyboard-cn-mon_trad] +Description="Keyboard - Chinese - Mongolian (Bichig)" +Language=mvf +Label="cn (mon_trad)" + +[keyboard-cn-mon_trad_todo] +Description="Keyboard - Chinese - Mongolian (Todo)" +Language=mvf +Label="cn (mon_trad_todo)" + +[keyboard-cn-mon_trad_xibe] +Description="Keyboard - Chinese - Mongolian (Xibe)" +Language=sjo +Label="cn (mon_trad_xibe)" + +[keyboard-cn-mon_trad_manchu] +Description="Keyboard - Chinese - Mongolian (Manchu)" +Language=mnc +Label="cn (mon_trad_manchu)" + +[keyboard-cn-mon_trad_galik] +Description="Keyboard - Chinese - Mongolian (Galik)" +Language=mvf +Label="cn (mon_trad_galik)" + +[keyboard-cn-mon_todo_galik] +Description="Keyboard - Chinese - Mongolian (Todo Galik)" +Language=mvf +Label="cn (mon_todo_galik)" + +[keyboard-cn-mon_manchu_galik] +Description="Keyboard - Chinese - Mongolian (Manchu Galik)" +Language=mnc +Label="cn (mon_manchu_galik)" + +[keyboard-cn-tib] +Description="Keyboard - Chinese - Tibetan" +Language=bo +Label="cn (tib)" + +[keyboard-cn-tib_asciinum] +Description="Keyboard - Chinese - Tibetan (with ASCII numerals)" +Language=bo +Label="cn (tib_asciinum)" + +[keyboard-cn-ug] +Description="Keyboard - Chinese - Uyghur" +Language=ug +Label=ug + +[keyboard-ca] +Description="Keyboard - French (Canada)" +Language=fr +Label=fr + +[keyboard-ca-fr-dvorak] +Description="Keyboard - French (Canada) - French (Canada, Dvorak)" +Language=fr +Label="fr (fr-dvorak)" + +[keyboard-ca-fr-legacy] +Description="Keyboard - French (Canada) - French (Canada, legacy)" +Language=fr +Label="fr (fr-legacy)" + +[keyboard-ca-multix] +Description="Keyboard - French (Canada) - Canadian (CSA)" +Language=fr +Label="ca (multix)" + +[keyboard-ca-eng] +Description="Keyboard - French (Canada) - English (Canada)" +Language=en +Label="en (eng)" + +[keyboard-ca-ike] +Description="Keyboard - French (Canada) - Inuktitut" +Language=iu +Label=ike + +[keyboard-ca-kut] +Description="Keyboard - French (Canada) - Kutenai" +Language=fr +Label=kut + +[keyboard-ca-shs] +Description="Keyboard - French (Canada) - Secwepemctsin" +Language=fr +Label=shs + +[keyboard-ca-sun_type6] +Description="Keyboard - French (Canada) - Multilingual (Canada, Sun Type 6/7)" +Language=fr +Label="ca (sun_type6)" + +[keyboard-gh] +Description="Keyboard - English (Ghana)" +Language=en +Label=en + +[keyboard-gh-generic] +Description="Keyboard - English (Ghana) - English (Ghana, multilingual)" +Language=en +Label="gh (generic)" + +[keyboard-gh-gillbt] +Description="Keyboard - English (Ghana) - English (Ghana, GILLBT)" +Language=en +Label="gh (gillbt)" + +[keyboard-gh-akan] +Description="Keyboard - English (Ghana) - Akan" +Language=ak +Label="ak (akan)" + +[keyboard-gh-avn] +Description="Keyboard - English (Ghana) - Avatime" +Language=avn +Label=avn + +[keyboard-gh-ewe] +Description="Keyboard - English (Ghana) - Ewe" +Language=ee +Label="ee (ewe)" + +[keyboard-gh-fula] +Description="Keyboard - English (Ghana) - Fula" +Language=ff +Label="ff (fula)" + +[keyboard-gh-ga] +Description="Keyboard - English (Ghana) - Ga" +Language=gaa +Label="gaa (ga)" + +[keyboard-gh-hausa] +Description="Keyboard - English (Ghana) - Hausa (Ghana)" +Language=ha +Label="ha (hausa)" + +[keyboard-fr] +Description="Keyboard - French" +Language=fr +Label=fr + +[keyboard-fr-nodeadkeys] +Description="Keyboard - French - French (no dead keys)" +Language=fr +Label="fr (nodeadkeys)" + +[keyboard-fr-oss] +Description="Keyboard - French - French (alt.)" +Language=fr +Label="fr (oss)" + +[keyboard-fr-oss_nodeadkeys] +Description="Keyboard - French - French (alt., no dead keys)" +Language=fr +Label="fr (oss_nodeadkeys)" + +[keyboard-fr-oss_latin9] +Description="Keyboard - French - French (alt., Latin-9 only)" +Language=fr +Label="fr (oss_latin9)" + +[keyboard-fr-latin9] +Description="Keyboard - French - French (legacy, alt.)" +Language=fr +Label="fr (latin9)" + +[keyboard-fr-latin9_nodeadkeys] +Description="Keyboard - French - French (legacy, alt., no dead keys)" +Language=fr +Label="fr (latin9_nodeadkeys)" + +[keyboard-fr-azerty] +Description="Keyboard - French - French (AZERTY)" +Language=fr +Label="fr (azerty)" + +[keyboard-fr-afnor] +Description="Keyboard - French - French (AZERTY, AFNOR)" +Language=fr +Label="fr (afnor)" + +[keyboard-fr-bepo] +Description="Keyboard - French - French (BEPO)" +Language=fr +Label="fr (bepo)" + +[keyboard-fr-bepo_latin9] +Description="Keyboard - French - French (BEPO, Latin-9 only)" +Language=fr +Label="fr (bepo_latin9)" + +[keyboard-fr-bepo_afnor] +Description="Keyboard - French - French (BEPO, AFNOR)" +Language=fr +Label="fr (bepo_afnor)" + +[keyboard-fr-dvorak] +Description="Keyboard - French - French (Dvorak)" +Language=fr +Label="fr (dvorak)" + +[keyboard-fr-ergol] +Description="Keyboard - French - French (Ergo‑L)" +Language=fr +Label="fr (ergol)" + +[keyboard-fr-ergol_iso] +Description="Keyboard - French - French (Ergo‑L, ISO variant)" +Language=fr +Label="fr (ergol_iso)" + +[keyboard-fr-mac] +Description="Keyboard - French - French (Macintosh)" +Language=fr +Label="fr (mac)" + +[keyboard-fr-us] +Description="Keyboard - French - French (US)" +Language=fr +Label="fr (us)" + +[keyboard-fr-bre] +Description="Keyboard - French - Breton (France)" +Language=br +Label="fr (bre)" + +[keyboard-fr-oci] +Description="Keyboard - French - Occitan" +Language=oc +Label="fr (oci)" + +[keyboard-fr-geo] +Description="Keyboard - French - Georgian (France, AZERTY Tskapo)" +Language=ka +Label="fr (geo)" + +[keyboard-fr-sun_type6] +Description="Keyboard - French - French (Sun Type 6/7)" +Language=fr +Label="fr (sun_type6)" + +[keyboard-fr-us-alt] +Description="Keyboard - French - French (US with dead keys, alt.)" +Language=fr +Label="fr (us-alt)" + +[keyboard-fr-us-azerty] +Description="Keyboard - French - French (US, AZERTY)" +Language=fr +Label="fr (us-azerty)" + +[keyboard-eg] +Description="Keyboard - Arabic (Egypt)" +Language=ar +Label=ar + +[keyboard-eg-cop] +Description="Keyboard - Arabic (Egypt) - Coptic" +Language=cop +Label=cop + +[keyboard-cd] +Description="Keyboard - French (Democratic Republic of the Congo)" +Language=fr +Label=fr + +[keyboard-tg] +Description="Keyboard - French (Togo)" +Language=fr +Label=fr + +[keyboard-kz] +Description="Keyboard - Kazakh" +Language=kk +Label=kk + +[keyboard-kz-kazrus] +Description="Keyboard - Kazakh - Kazakh (with Russian)" +Language=kk +Label="kz (kazrus)" + +[keyboard-kz-ext] +Description="Keyboard - Kazakh - Kazakh (extended)" +Language=kk +Label="kz (ext)" + +[keyboard-kz-latin] +Description="Keyboard - Kazakh - Kazakh (Latin)" +Language=kk +Label="kz (latin)" + +[keyboard-kz-ruskaz] +Description="Keyboard - Kazakh - Russian (Kazakhstan, with Kazakh)" +Language=ru +Label="ru (ruskaz)" + +[keyboard-ch] +Description="Keyboard - German (Switzerland)" +Language=de +Label=de + +[keyboard-ch-de_nodeadkeys] +Description="Keyboard - German (Switzerland) - German (Switzerland, no dead keys)" +Language=de +Label="de (de_nodeadkeys)" + +[keyboard-ch-de_mac] +Description="Keyboard - German (Switzerland) - German (Switzerland, Macintosh)" +Language=de +Label="de (de_mac)" + +[keyboard-ch-legacy] +Description="Keyboard - German (Switzerland) - German (Switzerland, legacy)" +Language=de +Label="ch (legacy)" + +[keyboard-ch-fr] +Description="Keyboard - German (Switzerland) - French (Switzerland)" +Language=fr +Label=fr + +[keyboard-ch-fr_nodeadkeys] +Description="Keyboard - German (Switzerland) - French (Switzerland, no dead keys)" +Language=fr +Label="fr (fr_nodeadkeys)" + +[keyboard-ch-fr_mac] +Description="Keyboard - German (Switzerland) - French (Switzerland, Macintosh)" +Language=fr +Label="fr (fr_mac)" + +[keyboard-ch-sun_type6_de] +Description="Keyboard - German (Switzerland) - German (Switzerland, Sun Type 6/7)" +Language=de +Label="ch (sun_type6_de)" + +[keyboard-ch-sun_type6_fr] +Description="Keyboard - German (Switzerland) - French (Switzerland, Sun Type 6/7)" +Language=de +Label="ch (sun_type6_fr)" + +[keyboard-gr] +Description="Keyboard - Greek" +Language=el +Label=gr + +[keyboard-gr-simple] +Description="Keyboard - Greek - Greek (simple)" +Language=el +Label="gr (simple)" + +[keyboard-gr-nodeadkeys] +Description="Keyboard - Greek - Greek (no dead keys)" +Language=el +Label="gr (nodeadkeys)" + +[keyboard-gr-polytonic] +Description="Keyboard - Greek - Greek (polytonic)" +Language=el +Label="gr (polytonic)" + +[keyboard-gr-sun_type6] +Description="Keyboard - Greek - Greek (Sun Type 6/7)" +Language=el +Label="gr (sun_type6)" + +[keyboard-gr-colemak] +Description="Keyboard - Greek - Greek (Colemak)" +Language=el +Label="gr (colemak)" + +[keyboard-tr] +Description="Keyboard - Turkish" +Language=tr +Label=tr + +[keyboard-tr-f] +Description="Keyboard - Turkish - Turkish (F)" +Language=tr +Label="tr (f)" + +[keyboard-tr-e] +Description="Keyboard - Turkish - Turkish (E)" +Language=tr +Label="tr (e)" + +[keyboard-tr-alt] +Description="Keyboard - Turkish - Turkish (Alt-Q)" +Language=tr +Label="tr (alt)" + +[keyboard-tr-intl] +Description="Keyboard - Turkish - Turkish (intl., with dead keys)" +Language=tr +Label="tr (intl)" + +[keyboard-tr-ku] +Description="Keyboard - Turkish - Kurdish (Turkey, Latin Q)" +Language=ku +Label=ku + +[keyboard-tr-ku_f] +Description="Keyboard - Turkish - Kurdish (Turkey, F)" +Language=ku +Label="ku (ku_f)" + +[keyboard-tr-ku_alt] +Description="Keyboard - Turkish - Kurdish (Turkey, Latin Alt-Q)" +Language=ku +Label="ku (ku_alt)" + +[keyboard-tr-sun_type6] +Description="Keyboard - Turkish - Turkish (Sun Type 6/7)" +Language=tr +Label="tr (sun_type6)" + +[keyboard-tr-us] +Description="Keyboard - Turkish - Turkish (i and ı swapped)" +Language=tr +Label="tr (us)" + +[keyboard-tr-otk] +Description="Keyboard - Turkish - Old Turkic" +Language=tr +Label="tr (otk)" + +[keyboard-tr-otkf] +Description="Keyboard - Turkish - Old Turkic (F)" +Language=tr +Label="tr (otkf)" + +[keyboard-tr-ot] +Description="Keyboard - Turkish - Ottoman (Q)" +Language=tr +Label="tr (ot)" + +[keyboard-tr-otf] +Description="Keyboard - Turkish - Ottoman (F)" +Language=tr +Label="tr (otf)" + +[keyboard-il] +Description="Keyboard - Hebrew" +Language=he +Label=he + +[keyboard-il-si2] +Description="Keyboard - Hebrew - Hebrew (SI-1452-2)" +Language=he +Label="il (si2)" + +[keyboard-il-lyx] +Description="Keyboard - Hebrew - Hebrew (lyx)" +Language=he +Label="il (lyx)" + +[keyboard-il-phonetic] +Description="Keyboard - Hebrew - Hebrew (phonetic)" +Language=he +Label="il (phonetic)" + +[keyboard-il-biblical] +Description="Keyboard - Hebrew - Hebrew (Biblical, Tiro)" +Language=he +Label="il (biblical)" + +[keyboard-il-biblicalSIL] +Description="Keyboard - Hebrew - Hebrew (Biblical, SIL phonetic)" +Language=he +Label="il (biblicalSIL)" + +[keyboard-de] +Description="Keyboard - German" +Language=de +Label=de + +[keyboard-de-deadacute] +Description="Keyboard - German - German (dead acute)" +Language=de +Label="de (deadacute)" + +[keyboard-de-deadgraveacute] +Description="Keyboard - German - German (dead grave acute)" +Language=de +Label="de (deadgraveacute)" + +[keyboard-de-deadtilde] +Description="Keyboard - German - German (dead tilde)" +Language=de +Label="de (deadtilde)" + +[keyboard-de-nodeadkeys] +Description="Keyboard - German - German (no dead keys)" +Language=de +Label="de (nodeadkeys)" + +[keyboard-de-e1] +Description="Keyboard - German - German (E1)" +Language=de +Label="de (e1)" + +[keyboard-de-e2] +Description="Keyboard - German - German (E2)" +Language=de +Label="de (e2)" + +[keyboard-de-T3] +Description="Keyboard - German - German (T3)" +Language=de +Label="de (T3)" + +[keyboard-de-us] +Description="Keyboard - German - German (US)" +Language=de +Label="de (us)" + +[keyboard-de-dvorak] +Description="Keyboard - German - German (Dvorak)" +Language=de +Label="de (dvorak)" + +[keyboard-de-mac] +Description="Keyboard - German - German (Macintosh)" +Language=de +Label="de (mac)" + +[keyboard-de-mac_nodeadkeys] +Description="Keyboard - German - German (Macintosh, no dead keys)" +Language=de +Label="de (mac_nodeadkeys)" + +[keyboard-de-neo] +Description="Keyboard - German - German (Neo 2)" +Language=de +Label="de (neo)" + +[keyboard-de-qwerty] +Description="Keyboard - German - German (QWERTY)" +Language=de +Label="de (qwerty)" + +[keyboard-de-dsb] +Description="Keyboard - German - Lower Sorbian" +Language=dsb +Label="de (dsb)" + +[keyboard-de-dsb_qwertz] +Description="Keyboard - German - Lower Sorbian (QWERTZ)" +Language=dsb +Label="de (dsb_qwertz)" + +[keyboard-de-ro] +Description="Keyboard - German - Romanian (Germany)" +Language=ro +Label="de (ro)" + +[keyboard-de-ro_nodeadkeys] +Description="Keyboard - German - Romanian (Germany, no dead keys)" +Language=ro +Label="de (ro_nodeadkeys)" + +[keyboard-de-ru] +Description="Keyboard - German - Russian (Germany, phonetic)" +Language=ru +Label=ru + +[keyboard-de-tr] +Description="Keyboard - German - Turkish (Germany)" +Language=tr +Label="de (tr)" + +[keyboard-de-hu] +Description="Keyboard - German - German (with Hungarian letters, no dead keys)" +Language=de +Label="de (hu)" + +[keyboard-de-pl] +Description="Keyboard - German - Polish (Germany, no dead keys)" +Language=de +Label="de (pl)" + +[keyboard-de-sun_type6] +Description="Keyboard - German - German (Sun Type 6/7)" +Language=de +Label="de (sun_type6)" + +[keyboard-de-adnw] +Description="Keyboard - German - German (Aus der Neo-Welt)" +Language=de +Label="de (adnw)" + +[keyboard-de-koy] +Description="Keyboard - German - German (KOY)" +Language=de +Label="de (koy)" + +[keyboard-de-bone] +Description="Keyboard - German - German (Bone)" +Language=de +Label="de (bone)" + +[keyboard-de-bone_eszett_home] +Description="Keyboard - German - German (Bone, eszett in the home row)" +Language=de +Label="de (bone_eszett_home)" + +[keyboard-de-neo_qwertz] +Description="Keyboard - German - German (Neo, QWERTZ)" +Language=de +Label="de (neo_qwertz)" + +[keyboard-de-neo_qwerty] +Description="Keyboard - German - German (Neo, QWERTY)" +Language=de +Label="de (neo_qwerty)" + +[keyboard-de-noted] +Description="Keyboard - German - German (Noted)" +Language=de +Label="de (noted)" + +[keyboard-de-ru-recom] +Description="Keyboard - German - Russian (Germany, recommended)" +Language=ru +Label="ru (ru-recom)" + +[keyboard-de-ru-translit] +Description="Keyboard - German - Russian (Germany, transliteration)" +Language=ru +Label="ru (ru-translit)" + +[keyboard-id] +Description="Keyboard - Indonesian (Latin)" +Language=id +Label=id + +[keyboard-id-melayu-phonetic] +Description="Keyboard - Indonesian (Latin) - Indonesian (Arab Melayu, phonetic)" +Language=id +Label="id (melayu-phonetic)" + +[keyboard-id-melayu-phoneticx] +Description="Keyboard - Indonesian (Latin) - Indonesian (Arab Melayu, extended phonetic)" +Language=id +Label="id (melayu-phoneticx)" + +[keyboard-id-pegon-phonetic] +Description="Keyboard - Indonesian (Latin) - Indonesian (Arab Pegon, phonetic)" +Language=id +Label="id (pegon-phonetic)" + +[keyboard-id-javanese] +Description="Keyboard - Indonesian (Latin) - Javanese" +Language=jax +Label="id (javanese)" + +[keyboard-sn] +Description="Keyboard - Wolof" +Language=wo +Label=wo + +[keyboard-az] +Description="Keyboard - Azerbaijani" +Language=az +Label=az + +[keyboard-az-cyrillic] +Description="Keyboard - Azerbaijani - Azerbaijani (Cyrillic)" +Language=az +Label="az (cyrillic)" + +[keyboard-kh] +Description="Keyboard - Khmer (Cambodia)" +Language=km +Label=km + +[keyboard-hu] +Description="Keyboard - Hungarian" +Language=hu +Label=hu + +[keyboard-hu-standard] +Description="Keyboard - Hungarian - Hungarian (standard)" +Language=hu +Label="hu (standard)" + +[keyboard-hu-nodeadkeys] +Description="Keyboard - Hungarian - Hungarian (no dead keys)" +Language=hu +Label="hu (nodeadkeys)" + +[keyboard-hu-qwerty] +Description="Keyboard - Hungarian - Hungarian (QWERTY)" +Language=hu +Label="hu (qwerty)" + +[keyboard-hu-101_qwertz_comma_dead] +Description="Keyboard - Hungarian - Hungarian (QWERTZ, 101-key, comma, dead keys)" +Language=hu +Label="hu (101_qwertz_comma_dead)" + +[keyboard-hu-101_qwertz_comma_nodead] +Description="Keyboard - Hungarian - Hungarian (QWERTZ, 101-key, comma, no dead keys)" +Language=hu +Label="hu (101_qwertz_comma_nodead)" + +[keyboard-hu-101_qwertz_dot_dead] +Description="Keyboard - Hungarian - Hungarian (QWERTZ, 101-key, dot, dead keys)" +Language=hu +Label="hu (101_qwertz_dot_dead)" + +[keyboard-hu-101_qwertz_dot_nodead] +Description="Keyboard - Hungarian - Hungarian (QWERTZ, 101-key, dot, no dead keys)" +Language=hu +Label="hu (101_qwertz_dot_nodead)" + +[keyboard-hu-101_qwerty_comma_dead] +Description="Keyboard - Hungarian - Hungarian (QWERTY, 101-key, comma, dead keys)" +Language=hu +Label="hu (101_qwerty_comma_dead)" + +[keyboard-hu-101_qwerty_comma_nodead] +Description="Keyboard - Hungarian - Hungarian (QWERTY, 101-key, comma, no dead keys)" +Language=hu +Label="hu (101_qwerty_comma_nodead)" + +[keyboard-hu-101_qwerty_dot_dead] +Description="Keyboard - Hungarian - Hungarian (QWERTY, 101-key, dot, dead keys)" +Language=hu +Label="hu (101_qwerty_dot_dead)" + +[keyboard-hu-101_qwerty_dot_nodead] +Description="Keyboard - Hungarian - Hungarian (QWERTY, 101-key, dot, no dead keys)" +Language=hu +Label="hu (101_qwerty_dot_nodead)" + +[keyboard-hu-102_qwertz_comma_dead] +Description="Keyboard - Hungarian - Hungarian (QWERTZ, 102-key, comma, dead keys)" +Language=hu +Label="hu (102_qwertz_comma_dead)" + +[keyboard-hu-102_qwertz_comma_nodead] +Description="Keyboard - Hungarian - Hungarian (QWERTZ, 102-key, comma, no dead keys)" +Language=hu +Label="hu (102_qwertz_comma_nodead)" + +[keyboard-hu-102_qwertz_dot_dead] +Description="Keyboard - Hungarian - Hungarian (QWERTZ, 102-key, dot, dead keys)" +Language=hu +Label="hu (102_qwertz_dot_dead)" + +[keyboard-hu-102_qwertz_dot_nodead] +Description="Keyboard - Hungarian - Hungarian (QWERTZ, 102-key, dot, no dead keys)" +Language=hu +Label="hu (102_qwertz_dot_nodead)" + +[keyboard-hu-102_qwerty_comma_dead] +Description="Keyboard - Hungarian - Hungarian (QWERTY, 102-key, comma, dead keys)" +Language=hu +Label="hu (102_qwerty_comma_dead)" + +[keyboard-hu-102_qwerty_comma_nodead] +Description="Keyboard - Hungarian - Hungarian (QWERTY, 102-key, comma, no dead keys)" +Language=hu +Label="hu (102_qwerty_comma_nodead)" + +[keyboard-hu-102_qwerty_dot_dead] +Description="Keyboard - Hungarian - Hungarian (QWERTY, 102-key, dot, dead keys)" +Language=hu +Label="hu (102_qwerty_dot_dead)" + +[keyboard-hu-102_qwerty_dot_nodead] +Description="Keyboard - Hungarian - Hungarian (QWERTY, 102-key, dot, no dead keys)" +Language=hu +Label="hu (102_qwerty_dot_nodead)" + +[keyboard-hu-oldhunlig] +Description="Keyboard - Hungarian - Old Hungarian (for ligatures)" +Language=hu +Label="oldhun(lig) (oldhunlig)" + +[keyboard-hu-oldhun_sk_sh] +Description="Keyboard - Hungarian - Old Hungarian (Carpathian Highlands, S as Sh)" +Language=hu +Label="oldhun(SK,Sh) (oldhun_sk_sh)" + +[keyboard-hu-oldhun_sk_sz] +Description="Keyboard - Hungarian - Old Hungarian (Carpathian Highlands, S as Sz)" +Language=hu +Label="oldhun(SK,Sz) (oldhun_sk_sz)" + +[keyboard-hu-us] +Description="Keyboard - Hungarian - Hungarian (US)" +Language=hu +Label=us + +[keyboard-ng] +Description="Keyboard - English (Nigeria)" +Language=en +Label=en + +[keyboard-ng-hausa] +Description="Keyboard - English (Nigeria) - Hausa (Nigeria)" +Language=ha +Label="ha (hausa)" + +[keyboard-ng-igbo] +Description="Keyboard - English (Nigeria) - Igbo" +Language=ig +Label="ig (igbo)" + +[keyboard-ng-yoruba] +Description="Keyboard - English (Nigeria) - Yoruba" +Language=yo +Label="yo (yoruba)" + +[keyboard-is] +Description="Keyboard - Icelandic" +Language=is +Label=is + +[keyboard-is-mac_legacy] +Description="Keyboard - Icelandic - Icelandic (Macintosh, legacy)" +Language=is +Label="is (mac_legacy)" + +[keyboard-is-mac] +Description="Keyboard - Icelandic - Icelandic (Macintosh)" +Language=is +Label="is (mac)" + +[keyboard-is-dvorak] +Description="Keyboard - Icelandic - Icelandic (Dvorak)" +Language=is +Label="is (dvorak)" + +[keyboard-in] +Description="Keyboard - Indian" +Language=hi +Label=in + +[keyboard-in-asm-kagapa] +Description="Keyboard - Indian - Assamese (KaGaPa, phonetic)" +Language=as +Label="as (asm-kagapa)" + +[keyboard-in-ben] +Description="Keyboard - Indian - Bangla (India)" +Language=bn +Label="bn (ben)" + +[keyboard-in-ben_probhat] +Description="Keyboard - Indian - Bangla (India, Probhat)" +Language=bn +Label="bn (ben_probhat)" + +[keyboard-in-ben_baishakhi] +Description="Keyboard - Indian - Bangla (India, Baishakhi)" +Language=bn +Label="in (ben_baishakhi)" + +[keyboard-in-ben_bornona] +Description="Keyboard - Indian - Bangla (India, Bornona)" +Language=bn +Label="in (ben_bornona)" + +[keyboard-in-ben-kagapa] +Description="Keyboard - Indian - Bangla (India, KaGaPa, phonetic)" +Language=bn +Label="in (ben-kagapa)" + +[keyboard-in-ben_gitanjali] +Description="Keyboard - Indian - Bangla (India, Gitanjali)" +Language=bn +Label="in (ben_gitanjali)" + +[keyboard-in-ben_inscript] +Description="Keyboard - Indian - Bangla (India, Baishakhi InScript)" +Language=bn +Label="in (ben_inscript)" + +[keyboard-in-eng] +Description="Keyboard - Indian - English (India, with rupee)" +Language=en +Label="en (eng)" + +[keyboard-in-guj] +Description="Keyboard - Indian - Gujarati" +Language=gu +Label="gu (guj)" + +[keyboard-in-guj-kagapa] +Description="Keyboard - Indian - Gujarati (KaGaPa, phonetic)" +Language=gu +Label="gu (guj-kagapa)" + +[keyboard-in-bolnagri] +Description="Keyboard - Indian - Hindi (Bolnagri)" +Language=hi +Label="hi (bolnagri)" + +[keyboard-in-hin-wx] +Description="Keyboard - Indian - Hindi (Wx)" +Language=hi +Label="hi (hin-wx)" + +[keyboard-in-hin-kagapa] +Description="Keyboard - Indian - Hindi (KaGaPa, phonetic)" +Language=hi +Label="hi (hin-kagapa)" + +[keyboard-in-kan] +Description="Keyboard - Indian - Kannada" +Language=kn +Label="kn (kan)" + +[keyboard-in-kan-kagapa] +Description="Keyboard - Indian - Kannada (KaGaPa, phonetic)" +Language=kn +Label="kn (kan-kagapa)" + +[keyboard-in-mal] +Description="Keyboard - Indian - Malayalam" +Language=ml +Label="ml (mal)" + +[keyboard-in-mal_lalitha] +Description="Keyboard - Indian - Malayalam (Lalitha)" +Language=ml +Label="ml (mal_lalitha)" + +[keyboard-in-mal_enhanced] +Description="Keyboard - Indian - Malayalam (enhanced InScript, with rupee)" +Language=ml +Label="ml (mal_enhanced)" + +[keyboard-in-mal_poorna] +Description="Keyboard - Indian - Malayalam (Poorna, extended InScript)" +Language=ml +Label="ml (mal_poorna)" + +[keyboard-in-mni] +Description="Keyboard - Indian - Manipuri (Meitei)" +Language=mni +Label="in (mni)" + +[keyboard-in-mar-kagapa] +Description="Keyboard - Indian - Marathi (KaGaPa, phonetic)" +Language=mr +Label="mr (mar-kagapa)" + +[keyboard-in-marathi] +Description="Keyboard - Indian - Marathi (enhanced InScript)" +Language=mr +Label="in (marathi)" + +[keyboard-in-ori] +Description="Keyboard - Indian - Oriya" +Language=or +Label="or (ori)" + +[keyboard-in-ori-bolnagri] +Description="Keyboard - Indian - Oriya (Bolnagri)" +Language=or +Label="or (ori-bolnagri)" + +[keyboard-in-ori-wx] +Description="Keyboard - Indian - Oriya (Wx)" +Language=or +Label="or (ori-wx)" + +[keyboard-in-guru] +Description="Keyboard - Indian - Punjabi (Gurmukhi)" +Language=pa +Label="pa (guru)" + +[keyboard-in-jhelum] +Description="Keyboard - Indian - Punjabi (Gurmukhi Jhelum)" +Language=pa +Label="pa (jhelum)" + +[keyboard-in-san-kagapa] +Description="Keyboard - Indian - Sanskrit (KaGaPa, phonetic)" +Language=sa +Label="sa (san-kagapa)" + +[keyboard-in-sat] +Description="Keyboard - Indian - Santali (Ol Chiki)" +Language=sat +Label=sat + +[keyboard-in-tamilnet] +Description="Keyboard - Indian - Tamil (TamilNet '99)" +Language=ta +Label="ta (tamilnet)" + +[keyboard-in-tamilnet_tamilnumbers] +Description="Keyboard - Indian - Tamil (TamilNet '99 with Tamil numerals)" +Language=ta +Label="ta (tamilnet_tamilnumbers)" + +[keyboard-in-tamilnet_TAB] +Description="Keyboard - Indian - Tamil (TamilNet '99, TAB encoding)" +Language=ta +Label="ta (tamilnet_TAB)" + +[keyboard-in-tamilnet_TSCII] +Description="Keyboard - Indian - Tamil (TamilNet '99, TSCII encoding)" +Language=ta +Label="ta (tamilnet_TSCII)" + +[keyboard-in-tam] +Description="Keyboard - Indian - Tamil (InScript, with Arabic numerals)" +Language=ta +Label="ta (tam)" + +[keyboard-in-tam_tamilnumbers] +Description="Keyboard - Indian - Tamil (InScript, with Tamil numerals)" +Language=ta +Label="ta (tam_tamilnumbers)" + +[keyboard-in-tel] +Description="Keyboard - Indian - Telugu" +Language=te +Label="te (tel)" + +[keyboard-in-tel-kagapa] +Description="Keyboard - Indian - Telugu (KaGaPa, phonetic)" +Language=te +Label="te (tel-kagapa)" + +[keyboard-in-tel-sarala] +Description="Keyboard - Indian - Telugu (Sarala)" +Language=te +Label="te (tel-sarala)" + +[keyboard-in-urd-phonetic] +Description="Keyboard - Indian - Urdu (phonetic)" +Language=ur +Label="ur (urd-phonetic)" + +[keyboard-in-urd-phonetic3] +Description="Keyboard - Indian - Urdu (alt. phonetic)" +Language=ur +Label="ur (urd-phonetic3)" + +[keyboard-in-urd-winkeys] +Description="Keyboard - Indian - Urdu (Windows)" +Language=ur +Label="ur (urd-winkeys)" + +[keyboard-in-iipa] +Description="Keyboard - Indian - Indic IPA" +Language=en +Label="in (iipa)" + +[keyboard-in-modi-kagapa] +Description="Keyboard - Indian - Modi (KaGaPa, phonetic)" +Language=mr +Label="mr (modi-kagapa)" + +[keyboard-in-san-misc] +Description="Keyboard - Indian - Sanskrit symbols" +Language=sa +Label="sas (san-misc)" + +[keyboard-in-urd-navees] +Description="Keyboard - Indian - Urdu (Navees)" +Language=ur +Label="ur (urd-navees)" + +[keyboard-it] +Description="Keyboard - Italian" +Language=it +Label=it + +[keyboard-it-nodeadkeys] +Description="Keyboard - Italian - Italian (no dead keys)" +Language=it +Label="it (nodeadkeys)" + +[keyboard-it-winkeys] +Description="Keyboard - Italian - Italian (Windows)" +Language=it +Label="it (winkeys)" + +[keyboard-it-mac] +Description="Keyboard - Italian - Italian (Macintosh)" +Language=it +Label="it (mac)" + +[keyboard-it-us] +Description="Keyboard - Italian - Italian (US)" +Language=it +Label="it (us)" + +[keyboard-it-ibm] +Description="Keyboard - Italian - Italian (IBM 142)" +Language=it +Label="it (ibm)" + +[keyboard-it-fur] +Description="Keyboard - Italian - Friulian (Italy)" +Language=fur +Label="it (fur)" + +[keyboard-it-scn] +Description="Keyboard - Italian - Sicilian" +Language=it +Label="it (scn)" + +[keyboard-it-geo] +Description="Keyboard - Italian - Georgian (Italy)" +Language=ka +Label="it (geo)" + +[keyboard-it-sun_type6] +Description="Keyboard - Italian - Italian (Sun Type 6/7)" +Language=it +Label="it (sun_type6)" + +[keyboard-it-lld] +Description="Keyboard - Italian - Ladin (Italian keyboard)" +Language=it +Label="it_lld (lld)" + +[keyboard-it-lldde] +Description="Keyboard - Italian - Ladin (German keyboard)" +Language=de +Label="de_lld (lldde)" + +[keyboard-it-dvorak] +Description="Keyboard - Italian - Italian (Dvorak)" +Language=it +Label="it (dvorak)" + +[keyboard-jp] +Description="Keyboard - Japanese" +Language=ja +Label=ja + +[keyboard-jp-kana] +Description="Keyboard - Japanese - Japanese (Kana)" +Language=ja +Label="jp (kana)" + +[keyboard-jp-kana86] +Description="Keyboard - Japanese - Japanese (Kana 86)" +Language=ja +Label="jp (kana86)" + +[keyboard-jp-OADG109A] +Description="Keyboard - Japanese - Japanese (OADG 109A)" +Language=ja +Label="jp (OADG109A)" + +[keyboard-jp-mac] +Description="Keyboard - Japanese - Japanese (Macintosh)" +Language=ja +Label="jp (mac)" + +[keyboard-jp-dvorak] +Description="Keyboard - Japanese - Japanese (Dvorak)" +Language=ja +Label="jp (dvorak)" + +[keyboard-jp-sun_type6] +Description="Keyboard - Japanese - Japanese (Sun Type 6)" +Language=ja +Label="jp (sun_type6)" + +[keyboard-jp-sun_type7] +Description="Keyboard - Japanese - Japanese (Sun Type 7, PC-compatible)" +Language=ja +Label="jp (sun_type7)" + +[keyboard-jp-sun_type7_suncompat] +Description="Keyboard - Japanese - Japanese (Sun Type 7, Sun-compatible)" +Language=ja +Label="jp (sun_type7_suncompat)" + diff --git a/dot_config/fcitx5/conf/notifications.conf b/dot_config/fcitx5/conf/notifications.conf new file mode 100644 index 0000000..6e7d1b9 --- /dev/null +++ b/dot_config/fcitx5/conf/notifications.conf @@ -0,0 +1,3 @@ +# Hidden Notifications +HiddenNotifications= + diff --git a/platforms/linux/fcitx5/config b/dot_config/fcitx5/config similarity index 59% rename from platforms/linux/fcitx5/config rename to dot_config/fcitx5/config index 2c98456..5fba3dc 100644 --- a/platforms/linux/fcitx5/config +++ b/dot_config/fcitx5/config @@ -1,15 +1,13 @@ [Hotkey] -# 反复按切换键时进行轮换 +# Enumerate when press trigger key repeatedly EnumerateWithTriggerKeys=True -# 向前切换输入法 +# Enumerate Input Method Forward EnumerateForwardKeys= -# 向后切换输入法 +# Enumerate Input Method Backward EnumerateBackwardKeys= -# 轮换输入法时跳过第一个输入法 +# Skip first input method while enumerating EnumerateSkipFirst=False -# 切换是否使用嵌入预编辑 -TogglePreedit= -# 触发修饰键快捷键的时限 (毫秒) +# Time limit in milliseconds for triggering modifier key shortcuts ModifierOnlyKeyTimeout=250 [Hotkey/TriggerKeys] @@ -44,28 +42,31 @@ ModifierOnlyKeyTimeout=250 [Hotkey/NextCandidate] 0=Tab +[Hotkey/TogglePreedit] +0=Control+Alt+P + [Behavior] -# 默认状态为激活 +# Active By Default ActiveByDefault=False -# 重新聚焦时重置状态 +# Reset state on Focus In resetStateWhenFocusIn=No -# 共享输入状态 +# Share Input State ShareInputState=No -# 在程序中显示预编辑文本 +# Show preedit in application PreeditEnabledByDefault=True -# 切换输入法时显示输入法信息 +# Show Input Method Information when switch input method ShowInputMethodInformation=True -# 在焦点更改时显示输入法信息 +# Show Input Method Information when changing focus showInputMethodInformationWhenFocusIn=False -# 显示紧凑的输入法信息 +# Show compact input method information CompactInputMethodInformation=True -# 显示第一个输入法的信息 +# Show first input method information ShowFirstInputMethodInformation=True -# 默认页大小 +# Default page size DefaultPageSize=5 -# 覆盖 Xkb 选项 +# Override Xkb Option OverrideXkbOption=False -# 自定义 Xkb 选项 +# Custom Xkb Option CustomXkbOption= # Force Enabled Addons EnabledAddons= @@ -73,10 +74,10 @@ EnabledAddons= DisabledAddons= # Preload input method to be used by default PreloadInputMethod=True -# 允许在密码框中使用输入法 +# Allow input method in the password field AllowInputMethodForPassword=False -# 输入密码时显示预编辑文本 +# Show preedit text when typing password ShowPreeditForPassword=False -# 保存用户数据的时间间隔(以分钟为单位) +# Interval of saving user data in minutes AutoSavePeriod=30 diff --git a/platforms/linux/fcitx5/profile b/dot_config/fcitx5/profile similarity index 54% rename from platforms/linux/fcitx5/profile rename to dot_config/fcitx5/profile index d264f5e..f1922f1 100644 --- a/platforms/linux/fcitx5/profile +++ b/dot_config/fcitx5/profile @@ -1,10 +1,10 @@ [Groups/0] # Group Name -Name=默认 +Name="Group 2" # Layout Default Layout=us # Default Input Method -DefaultIM=rime +DefaultIM=keyboard-us [Groups/0/Items/0] # Name @@ -12,12 +12,21 @@ Name=keyboard-us # Layout Layout= -[Groups/0/Items/1] +[Groups/1] +# Group Name +Name="Group 1" +# Layout +Default Layout=us +# Default Input Method +DefaultIM=rime + +[Groups/1/Items/0] # Name Name=rime # Layout Layout= [GroupOrder] -0=默认 +0="Group 1" +1="Group 2" diff --git a/platforms/linux/hypr/.gitignore b/dot_config/hypr/dot_gitignore similarity index 100% rename from platforms/linux/hypr/.gitignore rename to dot_config/hypr/dot_gitignore diff --git a/platforms/linux/hypr/hypridle.conf b/dot_config/hypr/hypridle.conf similarity index 100% rename from platforms/linux/hypr/hypridle.conf rename to dot_config/hypr/hypridle.conf diff --git a/platforms/linux/hypr/hyprland.conf b/dot_config/hypr/hyprland.conf similarity index 100% rename from platforms/linux/hypr/hyprland.conf rename to dot_config/hypr/hyprland.conf diff --git a/platforms/linux/hypr/hyprland/+colemak.conf b/dot_config/hypr/hyprland/+colemak.conf similarity index 100% rename from platforms/linux/hypr/hyprland/+colemak.conf rename to dot_config/hypr/hyprland/+colemak.conf diff --git a/platforms/linux/hypr/hyprland/+qwerty.conf b/dot_config/hypr/hyprland/+qwerty.conf similarity index 100% rename from platforms/linux/hypr/hyprland/+qwerty.conf rename to dot_config/hypr/hyprland/+qwerty.conf diff --git a/platforms/linux/hypr/hyprland/dark.conf b/dot_config/hypr/hyprland/dark.conf similarity index 100% rename from platforms/linux/hypr/hyprland/dark.conf rename to dot_config/hypr/hyprland/dark.conf diff --git a/platforms/linux/hypr/hyprland/keymaps.conf b/dot_config/hypr/hyprland/keymaps.conf similarity index 100% rename from platforms/linux/hypr/hyprland/keymaps.conf rename to dot_config/hypr/hyprland/keymaps.conf diff --git a/platforms/linux/hypr/hyprland/light.conf b/dot_config/hypr/hyprland/light.conf similarity index 100% rename from platforms/linux/hypr/hyprland/light.conf rename to dot_config/hypr/hyprland/light.conf diff --git a/platforms/linux/hypr/hyprland/rules.conf b/dot_config/hypr/hyprland/rules.conf similarity index 100% rename from platforms/linux/hypr/hyprland/rules.conf rename to dot_config/hypr/hyprland/rules.conf diff --git a/dot_config/hypr/hyprland/symlink_current.conf b/dot_config/hypr/hyprland/symlink_current.conf new file mode 100644 index 0000000..7d4192c --- /dev/null +++ b/dot_config/hypr/hyprland/symlink_current.conf @@ -0,0 +1 @@ +/home/js0ny/.dotfiles/platforms/linux/hypr/hyprland/dark.conf diff --git a/platforms/linux/hypr/hyprlock.conf b/dot_config/hypr/hyprlock.conf similarity index 100% rename from platforms/linux/hypr/hyprlock.conf rename to dot_config/hypr/hyprlock.conf diff --git a/platforms/linux/hypr/hyprpaper.conf b/dot_config/hypr/hyprpaper.conf similarity index 100% rename from platforms/linux/hypr/hyprpaper.conf rename to dot_config/hypr/hyprpaper.conf diff --git a/platforms/linux/kde/krunnerrc b/dot_config/krunnerrc similarity index 100% rename from platforms/linux/kde/krunnerrc rename to dot_config/krunnerrc diff --git a/platforms/linux/rofi/config.rasi b/dot_config/rofi/config.rasi similarity index 100% rename from platforms/linux/rofi/config.rasi rename to dot_config/rofi/config.rasi diff --git a/platforms/linux/rofi/dark.rasi b/dot_config/rofi/dark.rasi similarity index 100% rename from platforms/linux/rofi/dark.rasi rename to dot_config/rofi/dark.rasi diff --git a/platforms/linux/rofi/light.rasi b/dot_config/rofi/light.rasi similarity index 100% rename from platforms/linux/rofi/light.rasi rename to dot_config/rofi/light.rasi diff --git a/dot_config/rofi/symlink_current.rasi b/dot_config/rofi/symlink_current.rasi new file mode 100644 index 0000000..2f4ad1f --- /dev/null +++ b/dot_config/rofi/symlink_current.rasi @@ -0,0 +1 @@ +/home/js0ny/.config/rofi/dark.rasi diff --git a/platforms/linux/swaylock b/dot_config/swaylock/swaylock similarity index 100% rename from platforms/linux/swaylock rename to dot_config/swaylock/swaylock diff --git a/platforms/linux/waybar/config.jsonc b/dot_config/waybar/config.jsonc similarity index 100% rename from platforms/linux/waybar/config.jsonc rename to dot_config/waybar/config.jsonc diff --git a/platforms/linux/waybar/dark.css b/dot_config/waybar/dark.css similarity index 100% rename from platforms/linux/waybar/dark.css rename to dot_config/waybar/dark.css diff --git a/platforms/linux/waybar/light.css b/dot_config/waybar/light.css similarity index 100% rename from platforms/linux/waybar/light.css rename to dot_config/waybar/light.css diff --git a/platforms/linux/waybar/modules/hyprland-workspace.jsonc b/dot_config/waybar/modules/hyprland-workspace.jsonc similarity index 100% rename from platforms/linux/waybar/modules/hyprland-workspace.jsonc rename to dot_config/waybar/modules/hyprland-workspace.jsonc diff --git a/platforms/linux/waybar/modules/misc.jsonc b/dot_config/waybar/modules/misc.jsonc similarity index 100% rename from platforms/linux/waybar/modules/misc.jsonc rename to dot_config/waybar/modules/misc.jsonc diff --git a/platforms/linux/waybar/style.css b/dot_config/waybar/style.css similarity index 100% rename from platforms/linux/waybar/style.css rename to dot_config/waybar/style.css diff --git a/platforms/linux/wlogout/actions b/dot_config/wlogout/actions similarity index 100% rename from platforms/linux/wlogout/actions rename to dot_config/wlogout/actions diff --git a/platforms/linux/wlogout/icons/hibernate.png b/dot_config/wlogout/icons/hibernate.png similarity index 100% rename from platforms/linux/wlogout/icons/hibernate.png rename to dot_config/wlogout/icons/hibernate.png diff --git a/platforms/linux/wlogout/icons/lock.png b/dot_config/wlogout/icons/lock.png similarity index 100% rename from platforms/linux/wlogout/icons/lock.png rename to dot_config/wlogout/icons/lock.png diff --git a/platforms/linux/wlogout/icons/logout.png b/dot_config/wlogout/icons/logout.png similarity index 100% rename from platforms/linux/wlogout/icons/logout.png rename to dot_config/wlogout/icons/logout.png diff --git a/platforms/linux/wlogout/icons/reboot.png b/dot_config/wlogout/icons/reboot.png similarity index 100% rename from platforms/linux/wlogout/icons/reboot.png rename to dot_config/wlogout/icons/reboot.png diff --git a/platforms/linux/wlogout/icons/shutdown.png b/dot_config/wlogout/icons/shutdown.png similarity index 100% rename from platforms/linux/wlogout/icons/shutdown.png rename to dot_config/wlogout/icons/shutdown.png diff --git a/platforms/linux/wlogout/icons/suspend.png b/dot_config/wlogout/icons/suspend.png similarity index 100% rename from platforms/linux/wlogout/icons/suspend.png rename to dot_config/wlogout/icons/suspend.png diff --git a/platforms/linux/wlogout/layout b/dot_config/wlogout/layout similarity index 100% rename from platforms/linux/wlogout/layout rename to dot_config/wlogout/layout diff --git a/platforms/linux/wlogout/style.css b/dot_config/wlogout/style.css similarity index 100% rename from platforms/linux/wlogout/style.css rename to dot_config/wlogout/style.css diff --git a/platforms/linux/fcitx5/conf/cached_layouts b/platforms/linux/fcitx5/conf/cached_layouts deleted file mode 100644 index f8e46d0..0000000 --- a/platforms/linux/fcitx5/conf/cached_layouts +++ /dev/null @@ -1,3710 +0,0 @@ -[keyboard-bqn] -Description="键盘 - BQN" -Language=en -Label=bqn - -[keyboard-apl] -Description="键盘 - APL" -Language=en -Label=apl - -[keyboard-apl-dyalog] -Description="键盘 - APL - APL 符号(Dyalog APL)" -Language=en -Label="dlg (dyalog)" - -[keyboard-apl-sax] -Description="键盘 - APL - APL 符号(SAX,Sharp APL for Unix)" -Language=en -Label=sax - -[keyboard-apl-unified] -Description="键盘 - APL - APL 符号(统一)" -Language=en -Label="ufd (unified)" - -[keyboard-apl-apl2] -Description="键盘 - APL - APL 符号(IBM APL2)" -Language=en -Label=apl2 - -[keyboard-apl-aplplusII] -Description="键盘 - APL - APL 符号(Manugistics APL*PLUS II)" -Language=en -Label="aplII (aplplusII)" - -[keyboard-apl-aplx] -Description="键盘 - APL - APL 符号(APLX 统一)" -Language=en -Label=aplx - -[keyboard-ua] -Description="键盘 - 乌克兰语" -Language=uk -Label=uk - -[keyboard-ua-phonetic] -Description="键盘 - 乌克兰语 - 乌克兰语(语音助记)" -Language=uk -Label="ua (phonetic)" - -[keyboard-ua-typewriter] -Description="键盘 - 乌克兰语 - 乌克兰语(打字机)" -Language=uk -Label="ua (typewriter)" - -[keyboard-ua-winkeys] -Description="键盘 - 乌克兰语 - 乌克兰语(Windows)" -Language=uk -Label="ua (winkeys)" - -[keyboard-ua-macOS] -Description="键盘 - 乌克兰语 - 乌克兰语(macOS)" -Language=uk -Label="ua (macOS)" - -[keyboard-ua-legacy] -Description="键盘 - 乌克兰语 - 乌克兰语(传统)" -Language=uk -Label="ua (legacy)" - -[keyboard-ua-homophonic] -Description="键盘 - 乌克兰语 - 乌克兰语(同音)" -Language=uk -Label="ua (homophonic)" - -[keyboard-ua-crh] -Description="键盘 - 乌克兰语 - 克里米亚鞑靼语(土耳其 Q)" -Language=crh -Label=crh - -[keyboard-ua-crh_f] -Description="键盘 - 乌克兰语 - 克里米亚鞑靼语(土耳其 F)" -Language=crh -Label="crh (crh_f)" - -[keyboard-ua-crh_alt] -Description="键盘 - 乌克兰语 - 克里米亚鞑靼语(土耳其 Alt-Q)" -Language=crh -Label="crh (crh_alt)" - -[keyboard-ua-sun_type6] -Description="键盘 - 乌克兰语 - 乌克兰语(Sun Type 6/7)" -Language=uk -Label="ua (sun_type6)" - -[keyboard-th] -Description="键盘 - 泰语" -Language=th -Label=th - -[keyboard-th-tis] -Description="键盘 - 泰语 - 泰语(TIS-820.2538)" -Language=th -Label="th (tis)" - -[keyboard-th-pat] -Description="键盘 - 泰语 - 泰语(Pattachote)" -Language=th -Label="th (pat)" - -[keyboard-tz] -Description="键盘 - 斯瓦希里语(坦桑尼亚)" -Language=sw -Label=sw - -[keyboard-latam] -Description="键盘 - 西班牙语(拉丁美洲)" -Language=es -Label=es - -[keyboard-latam-nodeadkeys] -Description="键盘 - 西班牙语(拉丁美洲) - 西班牙语(拉丁美洲,无死键)" -Language=es -Label="latam (nodeadkeys)" - -[keyboard-latam-deadtilde] -Description="键盘 - 西班牙语(拉丁美洲) - 西班牙语(拉丁美洲,波浪号为死键)" -Language=es -Label="latam (deadtilde)" - -[keyboard-latam-dvorak] -Description="键盘 - 西班牙语(拉丁美洲) - 西班牙语(拉丁美洲,Dvorak)" -Language=es -Label="latam (dvorak)" - -[keyboard-latam-colemak] -Description="键盘 - 西班牙语(拉丁美洲) - 西班牙语(拉丁美洲,Colemak)" -Language=es -Label="latam (colemak)" - -[keyboard-sk] -Description="键盘 - 斯洛伐克语" -Language=sk -Label=sk - -[keyboard-sk-bksl] -Description="键盘 - 斯洛伐克语 - 斯洛伐克语(额外的反斜杠)" -Language=sk -Label="sk (bksl)" - -[keyboard-sk-qwerty] -Description="键盘 - 斯洛伐克语 - 斯洛伐克语(QWERTY)" -Language=sk -Label="sk (qwerty)" - -[keyboard-sk-qwerty_bksl] -Description="键盘 - 斯洛伐克语 - 斯洛伐克语(QWERTY,额外的反斜杠)" -Language=sk -Label="sk (qwerty_bksl)" - -[keyboard-sk-acc] -Description="键盘 - 斯洛伐克语 - 斯洛伐克语(ACC 布局,只有重音字母)" -Language=sk -Label="sk (acc)" - -[keyboard-sk-sun_type6] -Description="键盘 - 斯洛伐克语 - 斯洛伐克语(Sun Type 6/7)" -Language=sk -Label="sk (sun_type6)" - -[keyboard-ru] -Description="键盘 - 俄语" -Language=ru -Label=ru - -[keyboard-ru-phonetic] -Description="键盘 - 俄语 - 俄语(语音助记)" -Language=ru -Label="ru (phonetic)" - -[keyboard-ru-phonetic_winkeys] -Description="键盘 - 俄语 - 俄语(语音助记,Windows)" -Language=ru -Label="ru (phonetic_winkeys)" - -[keyboard-ru-phonetic_YAZHERTY] -Description="键盘 - 俄语 - 俄语(语音助记,YAZHERTY)" -Language=ru -Label="ru (phonetic_YAZHERTY)" - -[keyboard-ru-phonetic_azerty] -Description="键盘 - 俄语 - 俄语(语音助记,AZERTY)" -Language=ru -Label="ru (phonetic_azerty)" - -[keyboard-ru-phonetic_dvorak] -Description="键盘 - 俄语 - 俄语(语音助记,Dvorak)" -Language=ru -Label="ru (phonetic_dvorak)" - -[keyboard-ru-typewriter] -Description="键盘 - 俄语 - 俄语(打字机)" -Language=ru -Label="ru (typewriter)" - -[keyboard-ru-ruchey_ru] -Description="键盘 - 俄语 - 俄语(工程,RU)" -Language=ru -Label="ru (ruchey_ru)" - -[keyboard-ru-ruchey_en] -Description="键盘 - 俄语 - 俄语(工程,EN)" -Language=ru -Label="en (ruchey_en)" - -[keyboard-ru-legacy] -Description="键盘 - 俄语 - 俄语(传统)" -Language=ru -Label="ru (legacy)" - -[keyboard-ru-typewriter-legacy] -Description="键盘 - 俄语 - 俄语(打字机,传统)" -Language=ru -Label="ru (typewriter-legacy)" - -[keyboard-ru-dos] -Description="键盘 - 俄语 - 俄语(DOS)" -Language=ru -Label="ru (dos)" - -[keyboard-ru-mac] -Description="键盘 - 俄语 - 俄语(Macintosh)" -Language=ru -Label="ru (mac)" - -[keyboard-ru-ab] -Description="键盘 - 俄语 - 阿布哈兹语(俄罗斯)" -Language=ab -Label="ru (ab)" - -[keyboard-ru-bak] -Description="键盘 - 俄语 - 巴什基尔语" -Language=ba -Label="ru (bak)" - -[keyboard-ru-cv] -Description="键盘 - 俄语 - 楚瓦什语" -Language=cv -Label="ru (cv)" - -[keyboard-ru-cv_latin] -Description="键盘 - 俄语 - 楚瓦什语(拉丁)" -Language=cv -Label="ru (cv_latin)" - -[keyboard-ru-xal] -Description="键盘 - 俄语 - 卡尔梅克卫拉特语" -Language=xal -Label="ru (xal)" - -[keyboard-ru-kom] -Description="键盘 - 俄语 - 科米语" -Language=kv -Label="ru (kom)" - -[keyboard-ru-chm] -Description="键盘 - 俄语 - Mari" -Language=chm -Label="ru (chm)" - -[keyboard-ru-os_legacy] -Description="键盘 - 俄语 - 奥塞梯语(传统)" -Language=os -Label="ru (os_legacy)" - -[keyboard-ru-os_winkeys] -Description="键盘 - 俄语 - 奥塞梯语(Windows)" -Language=os -Label="ru (os_winkeys)" - -[keyboard-ru-srp] -Description="键盘 - 俄语 - 塞尔维亚语(俄罗斯)" -Language=ru -Label="ru (srp)" - -[keyboard-ru-tt] -Description="键盘 - 俄语 - 鞑靼语" -Language=tt -Label="ru (tt)" - -[keyboard-ru-udm] -Description="键盘 - 俄语 - 乌德穆尔特语" -Language=udm -Label="ru (udm)" - -[keyboard-ru-sah] -Description="键盘 - 俄语 - 雅库特语" -Language=sah -Label="ru (sah)" - -[keyboard-ru-chu] -Description="键盘 - 俄语 - 教会斯拉夫语" -Language=cu -Label="ru (chu)" - -[keyboard-ru-ruu] -Description="键盘 - 俄语 - 俄语(带乌克兰语和白俄罗斯语字母)" -Language=ru -Label="ru (ruu)" - -[keyboard-ru-rulemak] -Description="键盘 - 俄语 - 俄语(Rulemak,语音助记 Colemak)" -Language=ru -Label="ru (rulemak)" - -[keyboard-ru-phonetic_mac] -Description="键盘 - 俄语 - 俄语(语音助记,Macintosh)" -Language=ru -Label="ru (phonetic_mac)" - -[keyboard-ru-sun_type6] -Description="键盘 - 俄语 - 俄语(Sun Type 6/7)" -Language=ru -Label="ru (sun_type6)" - -[keyboard-ru-unipunct] -Description="键盘 - 俄语 - 俄语(带美式标点)" -Language=ru -Label="ru (unipunct)" - -[keyboard-ru-gost-6431-75-48] -Description="键盘 - 俄语 - 俄语(GOST 6431-75)" -Language=ru -Label="ru (gost-6431-75-48)" - -[keyboard-ru-gost-14289-88] -Description="键盘 - 俄语 - 俄语(GOST 14289-88)" -Language=ru -Label="ru (gost-14289-88)" - -[keyboard-ru-prxn] -Description="键盘 - 俄语 - 俄语(Polyglot and Reactionary)" -Language=ru -Label="ru (prxn)" - -[keyboard-ru-winkeys-p] -Description="键盘 - 俄语 - 俄语(适合程序员的)" -Language=ru -Label=winkeys-p - -[keyboard-ru-typo] -Description="键盘 - 俄语 - 俄语(带印刷符号)" -Language=ru -Label="ru (typo)" - -[keyboard-ru-rtu] -Description="键盘 - 俄语 - 俄语(带鞑靼字母)" -Language=ru -Label="ru (rtu)" - -[keyboard-ru-diktor] -Description="键盘 - 俄语 - 俄语(Diktor)" -Language=ru -Label=diktor - -[keyboard-ru-ruintl_ru] -Description="键盘 - 俄语 - 俄语(国际,RU)" -Language=ru -Label="ru (ruintl_ru)" - -[keyboard-ru-ruintl_en] -Description="键盘 - 俄语 - 俄语(国际,EN)" -Language=en -Label="en (ruintl_en)" - -[keyboard-br] -Description="键盘 - 葡萄牙语(巴西)" -Language=pt -Label=pt - -[keyboard-br-nodeadkeys] -Description="键盘 - 葡萄牙语(巴西) - 葡萄牙语(巴西,无死键)" -Language=pt -Label="br (nodeadkeys)" - -[keyboard-br-dvorak] -Description="键盘 - 葡萄牙语(巴西) - 葡萄牙语(巴西,Dvorak)" -Language=pt -Label="br (dvorak)" - -[keyboard-br-nativo] -Description="键盘 - 葡萄牙语(巴西) - 葡萄牙语(巴西,Nativo)" -Language=pt -Label="br (nativo)" - -[keyboard-br-nativo-us] -Description="键盘 - 葡萄牙语(巴西) - 葡萄牙语(巴西,用于美式键盘的 Nativo)" -Language=pt -Label="br (nativo-us)" - -[keyboard-br-thinkpad] -Description="键盘 - 葡萄牙语(巴西) - 葡萄牙语(巴西,IBM/联想 ThinkPad)" -Language=pt -Label="br (thinkpad)" - -[keyboard-br-nativo-epo] -Description="键盘 - 葡萄牙语(巴西) - 世界语(巴西,Nativo)" -Language=eo -Label="br (nativo-epo)" - -[keyboard-br-rus] -Description="键盘 - 葡萄牙语(巴西) - 俄语(巴西,语音助记)" -Language=ru -Label="ru (rus)" - -[keyboard-br-sun_type6] -Description="键盘 - 葡萄牙语(巴西) - 葡萄牙语(巴西,Sun Type 6/7)" -Language=pt -Label="br (sun_type6)" - -[keyboard-ro] -Description="键盘 - 罗马尼亚语" -Language=ro -Label=ro - -[keyboard-ro-std] -Description="键盘 - 罗马尼亚语 - 罗马尼亚语(标准)" -Language=ro -Label="ro (std)" - -[keyboard-ro-winkeys] -Description="键盘 - 罗马尼亚语 - 罗马尼亚语(Windows)" -Language=ro -Label="ro (winkeys)" - -[keyboard-ro-crh_dobruja] -Description="键盘 - 罗马尼亚语 - 克里米亚鞑靼语(Dobruja Q)" -Language=crh -Label="crh (crh_dobruja)" - -[keyboard-ro-ergonomic] -Description="键盘 - 罗马尼亚语 - 罗马尼亚语(人体工学盲打)" -Language=ro -Label="ro (ergonomic)" - -[keyboard-ro-sun_type6] -Description="键盘 - 罗马尼亚语 - 罗马尼亚语(Sun Type 6/7)" -Language=ro -Label="ro (sun_type6)" - -[keyboard-pl] -Description="键盘 - 波兰语" -Language=pl -Label=pl - -[keyboard-pl-legacy] -Description="键盘 - 波兰语 - 瑞士语(传统)" -Language=pl -Label="pl (legacy)" - -[keyboard-pl-qwertz] -Description="键盘 - 波兰语 - 波兰语(QWERTZ)" -Language=pl -Label="pl (qwertz)" - -[keyboard-pl-dvorak] -Description="键盘 - 波兰语 - 波兰语(Dvorak)" -Language=pl -Label="pl (dvorak)" - -[keyboard-pl-dvorak_quotes] -Description="键盘 - 波兰语 - 波兰语(Dvorak,波兰语引号在引号键上)" -Language=pl -Label="pl (dvorak_quotes)" - -[keyboard-pl-dvorak_altquotes] -Description="键盘 - 波兰语 - 波兰语(Dvorak,波兰语引号在 1 键上)" -Language=pl -Label="pl (dvorak_altquotes)" - -[keyboard-pl-dvp] -Description="键盘 - 波兰语 - 波兰语(适合程序员的 Dvorak)" -Language=pl -Label="pl (dvp)" - -[keyboard-pl-csb] -Description="键盘 - 波兰语 - 卡舒比语" -Language=csb -Label="pl (csb)" - -[keyboard-pl-szl] -Description="键盘 - 波兰语 - 西里西亚语" -Language=szl -Label="pl (szl)" - -[keyboard-pl-ru_phonetic_dvorak] -Description="键盘 - 波兰语 - 俄语(波兰,语音助记 Dvorak)" -Language=ru -Label="ru (ru_phonetic_dvorak)" - -[keyboard-pl-intl] -Description="键盘 - 波兰语 - 波兰语(国际,带死键)" -Language=pl -Label="pl (intl)" - -[keyboard-pl-colemak] -Description="键盘 - 波兰语 - 波兰语(Colemak)" -Language=pl -Label="pl (colemak)" - -[keyboard-pl-colemak_dh_ansi] -Description="键盘 - 波兰语 - 波兰语(Colemak-DH)" -Language=pl -Label="pl (colemak_dh_ansi)" - -[keyboard-pl-colemak_dh] -Description="键盘 - 波兰语 - 波兰语(Colemak-DH ISO)" -Language=pl -Label="pl (colemak_dh)" - -[keyboard-pl-sun_type6] -Description="键盘 - 波兰语 - 波兰语(Sun Type 6/7)" -Language=pl -Label="pl (sun_type6)" - -[keyboard-pl-glagolica] -Description="键盘 - 波兰语 - 波兰语(Glagolica)" -Language=pl -Label="pl (glagolica)" - -[keyboard-pl-lefty] -Description="键盘 - 波兰语 - 波兰语(Lefty)" -Language=pl -Label="pl (lefty)" - -[keyboard-trans] -Description="键盘 - 国际音标" -Language= -Label=ipa - -[keyboard-trans-qwerty] -Description="键盘 - 国际音标 - 国际音标(QWERTY)" -Language= -Label="trans (qwerty)" - -[keyboard-ir] -Description="键盘 - 波斯语" -Language=fa -Label=fa - -[keyboard-ir-pes_keypad] -Description="键盘 - 波斯语 - 波斯语(带波斯语小键盘)" -Language=fa -Label="ir (pes_keypad)" - -[keyboard-ir-winkeys] -Description="键盘 - 波斯语 - 波斯语(Windows)" -Language=fa -Label="ir (winkeys)" - -[keyboard-ir-azb] -Description="键盘 - 波斯语 - 阿塞拜疆语(伊朗)" -Language=azb -Label=azb - -[keyboard-ir-ku] -Description="键盘 - 波斯语 - 库尔德语(伊朗,拉丁 Q)" -Language=ku -Label=ku - -[keyboard-ir-ku_alt] -Description="键盘 - 波斯语 - 库尔德语(伊朗,拉丁 Alt-Q)" -Language=ku -Label="ku (ku_alt)" - -[keyboard-ir-ku_f] -Description="键盘 - 波斯语 - 库尔德语(伊朗,F)" -Language=ku -Label="ku (ku_f)" - -[keyboard-ir-ku_ara] -Description="键盘 - 波斯语 - 库尔德语(伊朗,阿拉伯-拉丁)" -Language=ku -Label="ku (ku_ara)" - -[keyboard-custom] -Description="键盘 - 用户自定义布局" -Language=und -Label=custom - -[keyboard-no] -Description="键盘 - 挪威语" -Language=no -Label=no - -[keyboard-no-nodeadkeys] -Description="键盘 - 挪威语 - 挪威语(无死键)" -Language=no -Label="no (nodeadkeys)" - -[keyboard-no-winkeys] -Description="键盘 - 挪威语 - 挪威语(Windows)" -Language=no -Label="no (winkeys)" - -[keyboard-no-mac] -Description="键盘 - 挪威语 - 挪威语(Macintosh)" -Language=no -Label="no (mac)" - -[keyboard-no-mac_nodeadkeys] -Description="键盘 - 挪威语 - 挪威语(Macintosh,无死键)" -Language=no -Label="no (mac_nodeadkeys)" - -[keyboard-no-colemak] -Description="键盘 - 挪威语 - 挪威语(Colemak)" -Language=no -Label="no (colemak)" - -[keyboard-no-colemak_dh] -Description="键盘 - 挪威语 - 挪威语(Colemak-DH)" -Language=no -Label="no (colemak_dh)" - -[keyboard-no-colemak_dh_wide] -Description="键盘 - 挪威语 - 挪威语(Colemak-DH 宽版)" -Language=no -Label="no (colemak_dh_wide)" - -[keyboard-no-dvorak] -Description="键盘 - 挪威语 - 挪威语(Dvorak)" -Language=no -Label="no (dvorak)" - -[keyboard-no-smi] -Description="键盘 - 挪威语 - 北萨米语(挪威)" -Language=se -Label="no (smi)" - -[keyboard-no-smi_nodeadkeys] -Description="键盘 - 挪威语 - 北萨米语(挪威,无死键)" -Language=se -Label="no (smi_nodeadkeys)" - -[keyboard-no-sun_type6] -Description="键盘 - 挪威语 - 挪威语(Sun Type 6/7)" -Language=no -Label="no (sun_type6)" - -[keyboard-gn] -Description="键盘 - 西非书面字母(AZERTY)" -Language=nqo -Label=nqo - -[keyboard-tm] -Description="键盘 - 土库曼语" -Language=tk -Label=tk - -[keyboard-tm-alt] -Description="键盘 - 土库曼语 - 土库曼语(Alt-Q)" -Language=tk -Label="tm (alt)" - -[keyboard-np] -Description="键盘 - 尼泊尔语" -Language=ne -Label=ne - -[keyboard-ancient] -Description="键盘 - 古代语言" -Language=got -Label=xx - -[keyboard-ancient-got] -Description="键盘 - 古代语言 - 哥特语" -Language=got -Label="ancient (got)" - -[keyboard-ancient-uga] -Description="键盘 - 古代语言 - 乌加里特语" -Language=uga -Label="ancient (uga)" - -[keyboard-ancient-ave] -Description="键盘 - 古代语言 - 阿维斯陀语" -Language=ae -Label="ancient (ave)" - -[keyboard-mt] -Description="键盘 - 马耳他语" -Language=mt -Label=mt - -[keyboard-mt-us] -Description="键盘 - 马耳他语 - 马耳他语(美国)" -Language=mt -Label="mt (us)" - -[keyboard-mt-alt-us] -Description="键盘 - 马耳他语 - 马耳他语(美国,带 AltGr 覆盖)" -Language=mt -Label="mt (alt-us)" - -[keyboard-mt-alt-gb] -Description="键盘 - 马耳他语 - 马耳他语(英国,带 AltGr 覆盖)" -Language=mt -Label="mt (alt-gb)" - -[keyboard-pt] -Description="键盘 - 葡萄牙语" -Language=pt -Label=pt - -[keyboard-pt-nodeadkeys] -Description="键盘 - 葡萄牙语 - 葡萄牙语(无死键)" -Language=pt -Label="pt (nodeadkeys)" - -[keyboard-pt-mac] -Description="键盘 - 葡萄牙语 - 葡萄牙语(Macintosh)" -Language=pt -Label="pt (mac)" - -[keyboard-pt-mac_nodeadkeys] -Description="键盘 - 葡萄牙语 - 葡萄牙语(Macintosh,无死键)" -Language=pt -Label="pt (mac_nodeadkeys)" - -[keyboard-pt-nativo] -Description="键盘 - 葡萄牙语 - 葡萄牙语(Nativo)" -Language=pt -Label="pt (nativo)" - -[keyboard-pt-nativo-us] -Description="键盘 - 葡萄牙语 - 葡萄牙语(用于美式键盘的 Nativo)" -Language=pt -Label="pt (nativo-us)" - -[keyboard-pt-nativo-epo] -Description="键盘 - 葡萄牙语 - 世界语(葡萄牙,Nativo)" -Language=eo -Label="pt (nativo-epo)" - -[keyboard-pt-sun_type6] -Description="键盘 - 葡萄牙语 - 葡萄牙语(Sun Type 6/7)" -Language=pt -Label="pt (sun_type6)" - -[keyboard-pt-colemak] -Description="键盘 - 葡萄牙语 - 葡萄牙语(Colemak)" -Language=pt -Label="pt (colemak)" - -[keyboard-my] -Description="键盘 - 马来语(爪夷,阿拉伯键盘)" -Language=id -Label=ms - -[keyboard-my-phonetic] -Description="键盘 - 马来语(爪夷,阿拉伯键盘) - 马来语(爪夷,语音助记)" -Language=id -Label="my (phonetic)" - -[keyboard-mk] -Description="键盘 - 马其顿语" -Language=mk -Label=mk - -[keyboard-mk-nodeadkeys] -Description="键盘 - 马其顿语 - 马其顿语(无死键)" -Language=mk -Label="mk (nodeadkeys)" - -[keyboard-kg] -Description="键盘 - 柯尔克孜语(吉尔吉斯语)" -Language=ky -Label=ki - -[keyboard-kg-phonetic] -Description="键盘 - 柯尔克孜语(吉尔吉斯语) - 柯尔克孜语(吉尔吉斯语,语音助记)" -Language=ky -Label="kg (phonetic)" - -[keyboard-tj] -Description="键盘 - 塔吉克语" -Language=tg -Label=tg - -[keyboard-tj-legacy] -Description="键盘 - 塔吉克语 - 塔吉克语(传统)" -Language=tg -Label="tj (legacy)" - -[keyboard-mv] -Description="键盘 - 迪维希语" -Language=dv -Label=dv - -[keyboard-lk] -Description="键盘 - 僧伽罗语(语音助记)" -Language=si -Label=si - -[keyboard-lk-us] -Description="键盘 - 僧伽罗语(语音助记) - 僧伽罗语(美国)" -Language=si -Label="si (us)" - -[keyboard-lk-tam_unicode] -Description="键盘 - 僧伽罗语(语音助记) - 泰米尔语(斯里兰卡,TamilNet '99)" -Language=ta -Label="ta (tam_unicode)" - -[keyboard-lk-tam_TAB] -Description="键盘 - 僧伽罗语(语音助记) - 泰米尔语(斯里兰卡,TamilNet '99,TAB 编码)" -Language=ta -Label="lk (tam_TAB)" - -[keyboard-al] -Description="键盘 - 阿尔巴尼亚语" -Language=sq -Label=sq - -[keyboard-al-plisi] -Description="键盘 - 阿尔巴尼亚语 - 阿尔巴尼亚语(Plisi)" -Language=sq -Label="al (plisi)" - -[keyboard-al-veqilharxhi] -Description="键盘 - 阿尔巴尼亚语 - 阿尔巴尼亚语(Veqilharxhi)" -Language=sq -Label="al (veqilharxhi)" - -[keyboard-cz] -Description="键盘 - 捷克语" -Language=cs -Label=cs - -[keyboard-cz-bksl] -Description="键盘 - 捷克语 - 捷克语(额外的反斜杠)" -Language=cs -Label="cz (bksl)" - -[keyboard-cz-qwerty] -Description="键盘 - 捷克语 - 捷克语(QWERTY)" -Language=cs -Label="cz (qwerty)" - -[keyboard-cz-qwerty_bksl] -Description="键盘 - 捷克语 - 捷克语(QWERTY,额外的反斜杠)" -Language=cs -Label="cz (qwerty_bksl)" - -[keyboard-cz-winkeys] -Description="键盘 - 捷克语 - 捷克语(QWERTZ,Windows)" -Language=cs -Label="cz (winkeys)" - -[keyboard-cz-winkeys-qwerty] -Description="键盘 - 捷克语 - 捷克语(QWERTY,Windows)" -Language=cs -Label="cz (winkeys-qwerty)" - -[keyboard-cz-qwerty-mac] -Description="键盘 - 捷克语 - 捷克语(QWERTY,Macintosh)" -Language=cs -Label="cz (qwerty-mac)" - -[keyboard-cz-ucw] -Description="键盘 - 捷克语 - 捷克语(UCW,只有重音字母)" -Language=cs -Label="cz (ucw)" - -[keyboard-cz-dvorak-ucw] -Description="键盘 - 捷克语 - 捷克语(美国,Dvorak,支持 UCW)" -Language=cs -Label="cz (dvorak-ucw)" - -[keyboard-cz-rus] -Description="键盘 - 捷克语 - 俄语(捷克语,语音助记)" -Language=ru -Label="ru (rus)" - -[keyboard-cz-sun_type6] -Description="键盘 - 捷克语 - 捷克语(Sun Type 6/7)" -Language=cs -Label="cz (sun_type6)" - -[keyboard-cz-prog] -Description="键盘 - 捷克语 - 捷克语(programming)" -Language=cs -Label="cz (prog)" - -[keyboard-cz-prog_typo] -Description="键盘 - 捷克语 - 捷克语(programming,typographic)" -Language=cs -Label="cz (prog_typo)" - -[keyboard-cz-coder] -Description="键盘 - 捷克语 - 捷克语(coder)" -Language=cs -Label="cz (coder)" - -[keyboard-cz-colemak-ucw] -Description="键盘 - 捷克语 - 捷克语(美国,Colemak,支持 UCW)" -Language=cs -Label="cz (colemak-ucw)" - -[keyboard-brai] -Description="键盘 - 盲文" -Language= -Label=brl - -[keyboard-brai-left_hand] -Description="键盘 - 盲文 - 盲文(单手,左手)" -Language= -Label="brai (left_hand)" - -[keyboard-brai-left_hand_invert] -Description="键盘 - 盲文 - 盲文(单手,左手,大拇指反转)" -Language= -Label="brai (left_hand_invert)" - -[keyboard-brai-right_hand] -Description="键盘 - 盲文 - 盲文(单手,右手)" -Language= -Label="brai (right_hand)" - -[keyboard-brai-right_hand_invert] -Description="键盘 - 盲文 - 盲文(单手,右手,大拇指反转)" -Language= -Label="brai (right_hand_invert)" - -[keyboard-se] -Description="键盘 - 瑞典语" -Language=sv -Label=sv - -[keyboard-se-nodeadkeys] -Description="键盘 - 瑞典语 - 瑞典语(无死键)" -Language=sv -Label="se (nodeadkeys)" - -[keyboard-se-dvorak] -Description="键盘 - 瑞典语 - 瑞典语(Dvorak)" -Language=sv -Label="se (dvorak)" - -[keyboard-se-us_dvorak] -Description="键盘 - 瑞典语 - 瑞典语(Dvorak,国际)" -Language=sv -Label="se (us_dvorak)" - -[keyboard-se-svdvorak] -Description="键盘 - 瑞典语 - 瑞典语(Svdvorak)" -Language=sv -Label="se (svdvorak)" - -[keyboard-se-mac] -Description="键盘 - 瑞典语 - 瑞典语(Macintosh)" -Language=sv -Label="se (mac)" - -[keyboard-se-us] -Description="键盘 - 瑞典语 - 瑞典语(美国)" -Language=sv -Label="se (us)" - -[keyboard-se-swl] -Description="键盘 - 瑞典语 - 瑞典手语" -Language=swl -Label="se (swl)" - -[keyboard-se-smi] -Description="键盘 - 瑞典语 - 北萨米语(瑞典)" -Language=se -Label="se (smi)" - -[keyboard-se-rus] -Description="键盘 - 瑞典语 - 俄语(瑞典,语音助记)" -Language=ru -Label="ru (rus)" - -[keyboard-se-dvorak_a5] -Description="键盘 - 瑞典语 - 瑞典语(Dvorak A5)" -Language=sv -Label="se (dvorak_a5)" - -[keyboard-se-sun_type6] -Description="键盘 - 瑞典语 - 瑞典语(Sun Type 6/7)" -Language=sv -Label="se (sun_type6)" - -[keyboard-se-ovd] -Description="键盘 - 瑞典语 - Elfdalian 语(瑞典,带组合 ogonek)" -Language=ovd -Label="se (ovd)" - -[keyboard-bg] -Description="键盘 - 保加利亚语" -Language=bg -Label=bg - -[keyboard-bg-phonetic] -Description="键盘 - 保加利亚语 - 保加利亚语(语音助记,传统)" -Language=bg -Label="bg (phonetic)" - -[keyboard-bg-bas_phonetic] -Description="键盘 - 保加利亚语 - 保加利亚语(语音助记,新)" -Language=bg -Label="bg (bas_phonetic)" - -[keyboard-bg-bekl] -Description="键盘 - 保加利亚语 - 保加利亚语(改进)" -Language=bg -Label="bg (bekl)" - -[keyboard-pk] -Description="键盘 - 乌尔都语(巴基斯坦)" -Language=ur -Label=ur - -[keyboard-pk-urd-crulp] -Description="键盘 - 乌尔都语(巴基斯坦) - 乌尔都语(巴基斯坦,CRULP)" -Language=ur -Label="pk (urd-crulp)" - -[keyboard-pk-urd-nla] -Description="键盘 - 乌尔都语(巴基斯坦) - 乌尔都语(巴基斯坦,NLA)" -Language=ur -Label="pk (urd-nla)" - -[keyboard-pk-ara] -Description="键盘 - 乌尔都语(巴基斯坦) - 阿拉伯语(巴基斯坦)" -Language=ar -Label="ar (ara)" - -[keyboard-pk-snd] -Description="键盘 - 乌尔都语(巴基斯坦) - 信德语" -Language=sd -Label="sd (snd)" - -[keyboard-pk-urd-navees] -Description="键盘 - 乌尔都语(巴基斯坦) - 乌尔都语(巴基斯坦,Navees)" -Language=ur -Label="pk (urd-navees)" - -[keyboard-au] -Description="键盘 - 英语(澳大利亚)" -Language=en -Label=en - -[keyboard-mn] -Description="键盘 - 蒙古语" -Language=mn -Label=mn - -[keyboard-dz] -Description="键盘 - 柏柏尔语(阿尔及利亚,拉丁)" -Language=tzm -Label=kab - -[keyboard-dz-ber] -Description="键盘 - 柏柏尔语(阿尔及利亚,拉丁) - 柏柏尔语(阿尔及利亚,提非纳)" -Language=kab -Label="kab (ber)" - -[keyboard-dz-azerty-deadkeys] -Description="键盘 - 柏柏尔语(阿尔及利亚,拉丁) - 卡拜尔语(AZERTY,带死键)" -Language=kab -Label="kab (azerty-deadkeys)" - -[keyboard-dz-qwerty-gb-deadkeys] -Description="键盘 - 柏柏尔语(阿尔及利亚,拉丁) - 卡拜尔语(QWERTY,英国,带死键)" -Language=kab -Label="kab (qwerty-gb-deadkeys)" - -[keyboard-dz-qwerty-us-deadkeys] -Description="键盘 - 柏柏尔语(阿尔及利亚,拉丁) - 卡拜尔语(QWERTY,美国,带死键)" -Language=kab -Label="kab (qwerty-us-deadkeys)" - -[keyboard-dz-ar] -Description="键盘 - 柏柏尔语(阿尔及利亚,拉丁) - 阿拉伯语(阿尔及利亚)" -Language=ar -Label=ar - -[keyboard-me] -Description="键盘 - 黑山语" -Language=sr -Label=sr - -[keyboard-me-cyrillic] -Description="键盘 - 黑山语 - 黑山语(西里尔)" -Language=sr -Label="me (cyrillic)" - -[keyboard-me-cyrillicyz] -Description="键盘 - 黑山语 - 黑山语(西里尔,交换 ZE 和 ZHE)" -Language=sr -Label="me (cyrillicyz)" - -[keyboard-me-cyrillicalternatequotes] -Description="键盘 - 黑山语 - 黑山语(西里尔,带书名号引号)" -Language=sr -Label="me (cyrillicalternatequotes)" - -[keyboard-me-latinunicode] -Description="键盘 - 黑山语 - 黑山语(拉丁,Unicode)" -Language=sr -Label="me (latinunicode)" - -[keyboard-me-latinyz] -Description="键盘 - 黑山语 - 黑山语(拉丁,QWERTY)" -Language=sr -Label="me (latinyz)" - -[keyboard-me-latinunicodeyz] -Description="键盘 - 黑山语 - 黑山语(拉丁,Unicode,QWERTY)" -Language=sr -Label="me (latinunicodeyz)" - -[keyboard-me-latinalternatequotes] -Description="键盘 - 黑山语 - 黑山语(拉丁,带书名号引号)" -Language=sr -Label="me (latinalternatequotes)" - -[keyboard-lv] -Description="键盘 - 拉脱维亚语" -Language=lv -Label=lv - -[keyboard-lv-apostrophe] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(撇号)" -Language=lv -Label="lv (apostrophe)" - -[keyboard-lv-tilde] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(波浪号)" -Language=lv -Label="lv (tilde)" - -[keyboard-lv-fkey] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(F)" -Language=lv -Label="lv (fkey)" - -[keyboard-lv-modern] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(现代拉丁)" -Language=lv -Label="lv (modern)" - -[keyboard-lv-modern-cyr] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(现代西里尔)" -Language=lv -Label="lv (modern-cyr)" - -[keyboard-lv-ergonomic] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(人体工学,ŪGJRMV)" -Language=lv -Label="lv (ergonomic)" - -[keyboard-lv-adapted] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(改良)" -Language=lv -Label="lv (adapted)" - -[keyboard-lv-dvorak] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(Dvorak)" -Language=lv -Label="lv (dvorak)" - -[keyboard-lv-ykeydvorak] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(Dvorak,带 Y)" -Language=lv -Label="lv (ykeydvorak)" - -[keyboard-lv-minuskeydvorak] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(Dvorak,带减号)" -Language=lv -Label="lv (minuskeydvorak)" - -[keyboard-lv-dvorakprogr] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(适合程序员的 Dvorak)" -Language=lv -Label="lv (dvorakprogr)" - -[keyboard-lv-ykeydvorakprogr] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(适合程序员的 Dvorak,带 Y)" -Language=lv -Label="lv (ykeydvorakprogr)" - -[keyboard-lv-minuskeydvorakprogr] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(适合程序员的 Dvorak,带减号)" -Language=lv -Label="lv (minuskeydvorakprogr)" - -[keyboard-lv-colemak] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(Colemak)" -Language=lv -Label="lv (colemak)" - -[keyboard-lv-apostrophecolemak] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(Colemak,带撇号)" -Language=lv -Label="lv (apostrophecolemak)" - -[keyboard-lv-sun_type6] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(Sun Type 6/7)" -Language=lv -Label="lv (sun_type6)" - -[keyboard-lv-apostrophe-deadquotes] -Description="键盘 - 拉脱维亚语 - 拉脱维亚语(带撇号,引号为死键)" -Language=lv -Label="lv (apostrophe-deadquotes)" - -[keyboard-ba] -Description="键盘 - 波斯尼亚语" -Language=bs -Label=bs - -[keyboard-ba-alternatequotes] -Description="键盘 - 波斯尼亚语 - 波斯尼亚语(带书名号引号)" -Language=bs -Label="ba (alternatequotes)" - -[keyboard-ba-unicode] -Description="键盘 - 波斯尼亚语 - 波斯尼亚语(带波斯尼亚二重字)" -Language=bs -Label="ba (unicode)" - -[keyboard-ba-unicodeus] -Description="键盘 - 波斯尼亚语 - 波斯尼亚语(美国,带罗马尼亚二重字)" -Language=bs -Label="ba (unicodeus)" - -[keyboard-ba-us] -Description="键盘 - 波斯尼亚语 - 波斯尼亚语(美国)" -Language=bs -Label="ba (us)" - -[keyboard-tw] -Description="键盘 - 台语" -Language= -Label=zh - -[keyboard-tw-indigenous] -Description="键盘 - 台语 - 台语(原住民)" -Language=tay -Label="tw (indigenous)" - -[keyboard-tw-saisiyat] -Description="键盘 - 台语 - 赛夏语(台湾)" -Language=xsy -Label="xsy (saisiyat)" - -[keyboard-rs] -Description="键盘 - 塞尔维亚语" -Language=sr -Label=sr - -[keyboard-rs-alternatequotes] -Description="键盘 - 塞尔维亚语 - 塞尔维亚语(西里尔,带书名号引号)" -Language=sr -Label="rs (alternatequotes)" - -[keyboard-rs-yz] -Description="键盘 - 塞尔维亚语 - 塞尔维亚语(西里尔,交换 ZE 和 ZHE)" -Language=sr -Label="rs (yz)" - -[keyboard-rs-latin] -Description="键盘 - 塞尔维亚语 - 塞尔维亚语(拉丁)" -Language=sr -Label="rs (latin)" - -[keyboard-rs-latinalternatequotes] -Description="键盘 - 塞尔维亚语 - 塞尔维亚语(拉丁,带书名号引号)" -Language=sr -Label="rs (latinalternatequotes)" - -[keyboard-rs-latinunicode] -Description="键盘 - 塞尔维亚语 - 塞尔维亚语(拉丁,Unicode)" -Language=sr -Label="rs (latinunicode)" - -[keyboard-rs-latinyz] -Description="键盘 - 塞尔维亚语 - 塞尔维亚(拉丁,QWERTY)" -Language=sr -Label="rs (latinyz)" - -[keyboard-rs-latinunicodeyz] -Description="键盘 - 塞尔维亚语 - 塞尔维亚(拉丁,Unicode,QWERTY)" -Language=sr -Label="rs (latinunicodeyz)" - -[keyboard-rs-rue] -Description="键盘 - 塞尔维亚语 - 潘诺尼亚卢森尼亚语" -Language=rue -Label="rs (rue)" - -[keyboard-rs-combiningkeys] -Description="键盘 - 塞尔维亚语 - 塞尔维亚语(组合重音而不使用死键)" -Language=sr -Label="rs (combiningkeys)" - -[keyboard-dk] -Description="键盘 - 丹麦语" -Language=da -Label=da - -[keyboard-dk-nodeadkeys] -Description="键盘 - 丹麦语 - 丹麦语(无死键)" -Language=da -Label="dk (nodeadkeys)" - -[keyboard-dk-winkeys] -Description="键盘 - 丹麦语 - 丹麦语(Windows)" -Language=da -Label="dk (winkeys)" - -[keyboard-dk-mac] -Description="键盘 - 丹麦语 - 丹麦语(Macintosh)" -Language=da -Label="dk (mac)" - -[keyboard-dk-mac_nodeadkeys] -Description="键盘 - 丹麦语 - 丹麦语(Macintosh,无死键)" -Language=da -Label="dk (mac_nodeadkeys)" - -[keyboard-dk-dvorak] -Description="键盘 - 丹麦语 - 丹麦语(Dvorak)" -Language=da -Label="dk (dvorak)" - -[keyboard-dk-sun_type6] -Description="键盘 - 丹麦语 - 丹麦语(Sun Type 6/7)" -Language=da -Label="dk (sun_type6)" - -[keyboard-bw] -Description="键盘 - 茨瓦纳语" -Language=tn -Label=tn - -[keyboard-kr] -Description="键盘 - 朝鲜语" -Language=ko -Label=ko - -[keyboard-kr-kr104] -Description="键盘 - 朝鲜语 - 朝鲜语(兼容 101/104 键)" -Language=ko -Label="kr (kr104)" - -[keyboard-kr-sun_type6] -Description="键盘 - 朝鲜语 - 朝鲜语(Sun Type 6/7)" -Language=ko -Label="kr (sun_type6)" - -[keyboard-nl] -Description="键盘 - 荷兰语" -Language=nl -Label=nl - -[keyboard-nl-us] -Description="键盘 - 荷兰语 - 荷兰语(美国)" -Language=nl -Label="nl (us)" - -[keyboard-nl-mac] -Description="键盘 - 荷兰语 - 荷兰语(Macintosh)" -Language=nl -Label="nl (mac)" - -[keyboard-nl-std] -Description="键盘 - 荷兰语 - 荷兰语(标准)" -Language=nl -Label="nl (std)" - -[keyboard-nl-sun_type6] -Description="键盘 - 荷兰语 - 荷兰语(Sun Type 6/7)" -Language=nl -Label="nl (sun_type6)" - -[keyboard-et] -Description="键盘 - 阿姆哈拉语" -Language=am -Label=am - -[keyboard-be] -Description="键盘 - 比利时语" -Language=de -Label=be - -[keyboard-be-oss] -Description="键盘 - 比利时语 - 比利时语(替代)" -Language=de -Label="be (oss)" - -[keyboard-be-oss_latin9] -Description="键盘 - 比利时语 - 比利时语(只包含拉丁-9 字符,替代)" -Language=de -Label="be (oss_latin9)" - -[keyboard-be-iso-alternate] -Description="键盘 - 比利时语 - 比利时语(ISO,替代)" -Language=de -Label="be (iso-alternate)" - -[keyboard-be-nodeadkeys] -Description="键盘 - 比利时语 - 比利时语(无死键)" -Language=de -Label="be (nodeadkeys)" - -[keyboard-be-wang] -Description="键盘 - 比利时语 - 比利时语(王安 724 型 AZERTY)" -Language=de -Label="be (wang)" - -[keyboard-be-sun_type6] -Description="键盘 - 比利时语 - 比利时语(Sun Type 6/7)" -Language=de -Label="be (sun_type6)" - -[keyboard-la] -Description="键盘 - 老挝语" -Language=lo -Label=lo - -[keyboard-la-stea] -Description="键盘 - 老挝语 - 老挝语(STEA)" -Language=lo -Label="la (stea)" - -[keyboard-bt] -Description="键盘 - 不丹语" -Language=dz -Label=dz - -[keyboard-mm] -Description="键盘 - 缅甸语" -Language=my -Label=my - -[keyboard-mm-zawgyi] -Description="键盘 - 缅甸语 - 缅甸语(Zawgyi)" -Language=my -Label="my-zwg (zawgyi)" - -[keyboard-mm-mnw] -Description="键盘 - 缅甸语 - 孟语" -Language=mnw -Label=mnw - -[keyboard-mm-mnw-a1] -Description="键盘 - 缅甸语 - 孟语(A1)" -Language=mnw -Label="mnw (mnw-a1)" - -[keyboard-mm-shn] -Description="键盘 - 缅甸语 - 掸语" -Language=shn -Label=shn - -[keyboard-mm-zgt] -Description="键盘 - 缅甸语 - 掸语(Zawgyi)" -Language=shn -Label="shn-zwg (zgt)" - -[keyboard-si] -Description="键盘 - 斯洛文尼亚语" -Language=sl -Label=sl - -[keyboard-si-alternatequotes] -Description="键盘 - 斯洛文尼亚语 - 斯洛文尼亚语(带书名号引号)" -Language=sl -Label="si (alternatequotes)" - -[keyboard-si-us] -Description="键盘 - 斯洛文尼亚语 - 斯洛文尼亚语(美国)" -Language=sl -Label="si (us)" - -[keyboard-am] -Description="键盘 - 亚美尼亚语" -Language=hy -Label=hy - -[keyboard-am-phonetic] -Description="键盘 - 亚美尼亚语 - 亚美尼亚语(语音助记)" -Language=hy -Label="am (phonetic)" - -[keyboard-am-phonetic-alt] -Description="键盘 - 亚美尼亚语 - 亚美尼亚语(替代,语音助记)" -Language=hy -Label="am (phonetic-alt)" - -[keyboard-am-eastern] -Description="键盘 - 亚美尼亚语 - 亚美尼亚语(东部)" -Language=hy -Label="am (eastern)" - -[keyboard-am-eastern-alt] -Description="键盘 - 亚美尼亚语 - 亚美尼亚语(替代,东部)" -Language=hy -Label="am (eastern-alt)" - -[keyboard-am-western] -Description="键盘 - 亚美尼亚语 - 亚美尼亚语(西部)" -Language=hy -Label="am (western)" - -[keyboard-am-olpc-phonetic] -Description="键盘 - 亚美尼亚语 - 亚美尼亚语(OLPC,语音助记)" -Language=hy -Label="am (olpc-phonetic)" - -[keyboard-by] -Description="键盘 - 白俄罗斯语" -Language=be -Label=by - -[keyboard-by-legacy] -Description="键盘 - 白俄罗斯语 - 白俄罗斯语(传统)" -Language=be -Label="by (legacy)" - -[keyboard-by-latin] -Description="键盘 - 白俄罗斯语 - 白俄罗斯语(拉丁)" -Language=be -Label="by (latin)" - -[keyboard-by-intl] -Description="键盘 - 白俄罗斯语 - 白俄罗斯语(国际)" -Language=be -Label="by (intl)" - -[keyboard-by-phonetic] -Description="键盘 - 白俄罗斯语 - 白俄罗斯语(语音助记)" -Language=be -Label="by (phonetic)" - -[keyboard-by-ru] -Description="键盘 - 白俄罗斯语 - 俄语(白俄罗斯)" -Language=ru -Label="by (ru)" - -[keyboard-vn] -Description="键盘 - 越南语" -Language=vi -Label=vi - -[keyboard-vn-us] -Description="键盘 - 越南语 - 越南语(美国)" -Language=vi -Label="vn (us)" - -[keyboard-vn-fr] -Description="键盘 - 越南语 - 越南语(法国)" -Language=vi -Label="vn (fr)" - -[keyboard-vn-aderty] -Description="键盘 - 越南语 - 越南语(AÐERTY)" -Language=vi -Label="vn (aderty)" - -[keyboard-vn-qderty] -Description="键盘 - 越南语 - 越南语(QĐERTY)" -Language=vi -Label="vn (qderty)" - -[keyboard-ml] -Description="键盘 - 班巴拉语" -Language=bm -Label=bm - -[keyboard-ml-fr-oss] -Description="键盘 - 班巴拉语 - 法语(马里,替代)" -Language=fr -Label="fr (fr-oss)" - -[keyboard-ml-us-mac] -Description="键盘 - 班巴拉语 - 英语(马里,美国,Macintosh)" -Language=en -Label="en (us-mac)" - -[keyboard-ml-us-intl] -Description="键盘 - 班巴拉语 - 英语(马里,美国,国际)" -Language=en -Label="en (us-intl)" - -[keyboard-ara] -Description="键盘 - 阿拉伯语" -Language=ar -Label=ar - -[keyboard-ara-digits] -Description="键盘 - 阿拉伯语 - 阿拉伯语(东阿拉伯语数字)" -Language=ar -Label="ara (digits)" - -[keyboard-ara-azerty] -Description="键盘 - 阿拉伯语 - 阿拉伯语(AZERTY)" -Language=ar -Label="ara (azerty)" - -[keyboard-ara-azerty_digits] -Description="键盘 - 阿拉伯语 - 阿拉伯语(AZERTY,东阿拉伯语数字)" -Language=ar -Label="ara (azerty_digits)" - -[keyboard-ara-buckwalter] -Description="键盘 - 阿拉伯语 - 阿拉伯语(Buckwalter)" -Language=ar -Label="ara (buckwalter)" - -[keyboard-ara-mac] -Description="键盘 - 阿拉伯语 - 阿拉伯语(Macintosh)" -Language=ar -Label="ara (mac)" - -[keyboard-ara-mac-phonetic] -Description="键盘 - 阿拉伯语 - 阿拉伯语(Macintosh,语音助记)" -Language=ar -Label="ara (mac-phonetic)" - -[keyboard-ara-olpc] -Description="键盘 - 阿拉伯语 - 阿拉伯语(OLPC)" -Language=ar -Label="ara (olpc)" - -[keyboard-ara-sun_type6] -Description="键盘 - 阿拉伯语 - 阿拉伯语(Sun Type 6/7)" -Language=ar -Label="ara (sun_type6)" - -[keyboard-ara-basic_ext] -Description="键盘 - 阿拉伯语 - 阿拉伯语(阿拉伯数字,第 4 层带扩展)" -Language=ar -Label="ara (basic_ext)" - -[keyboard-ara-basic_ext_digits] -Description="键盘 - 阿拉伯语 - 阿拉伯语(东阿拉伯数字,第 4 层带扩展)" -Language=ar -Label="ara (basic_ext_digits)" - -[keyboard-ara-ergoarabic] -Description="键盘 - 阿拉伯语 - 阿拉伯语(ErgoArabic)" -Language=ar -Label="ara (ergoarabic)" - -[keyboard-ie] -Description="键盘 - 爱尔兰语" -Language=en -Label=ie - -[keyboard-ie-UnicodeExpert] -Description="键盘 - 爱尔兰语 - 爱尔兰语(UnicodeExpert)" -Language=en -Label="ie (UnicodeExpert)" - -[keyboard-ie-CloGaelach] -Description="键盘 - 爱尔兰语 - CloGaelach" -Language=ga -Label="ie (CloGaelach)" - -[keyboard-ie-ogam] -Description="键盘 - 爱尔兰语 - 欧甘语" -Language=sga -Label="ie (ogam)" - -[keyboard-ie-ogam_is434] -Description="键盘 - 爱尔兰语 - 欧甘语(IS434)" -Language=sga -Label="ie (ogam_is434)" - -[keyboard-cm] -Description="键盘 - 英语(喀麦隆)" -Language=en -Label=cm - -[keyboard-cm-french] -Description="键盘 - 英语(喀麦隆) - 法语(喀麦隆)" -Language=fr -Label="fr (french)" - -[keyboard-cm-qwerty] -Description="键盘 - 英语(喀麦隆) - 喀麦隆多语言(QWERTY,国际)" -Language=en -Label="cm (qwerty)" - -[keyboard-cm-azerty] -Description="键盘 - 英语(喀麦隆) - 喀麦隆(AZERTY,国际)" -Language=fr -Label="cm (azerty)" - -[keyboard-cm-dvorak] -Description="键盘 - 英语(喀麦隆) - 喀麦隆(Dvorak,国际)" -Language=en -Label="cm (dvorak)" - -[keyboard-cm-mmuock] -Description="键盘 - 英语(喀麦隆) - 喀麦隆(Mmuock)" -Language=en -Label="cm (mmuock)" - -[keyboard-iq] -Description="键盘 - 阿拉伯语(伊拉克)" -Language=ar -Label=ar - -[keyboard-iq-ku] -Description="键盘 - 阿拉伯语(伊拉克) - 库尔德语(伊拉克,拉丁 Q)" -Language=ku -Label=ku - -[keyboard-iq-ku_alt] -Description="键盘 - 阿拉伯语(伊拉克) - 库尔德语(伊拉克,拉丁 Alt-Q)" -Language=ku -Label="ku (ku_alt)" - -[keyboard-iq-ku_f] -Description="键盘 - 阿拉伯语(伊拉克) - 库尔德语(伊拉克,F)" -Language=ku -Label="ku (ku_f)" - -[keyboard-iq-ku_ara] -Description="键盘 - 阿拉伯语(伊拉克) - 库尔德语(伊拉克,阿拉伯-拉丁)" -Language=ku -Label="ku (ku_ara)" - -[keyboard-af] -Description="键盘 - 达里语" -Language=prs -Label=fa - -[keyboard-af-ps] -Description="键盘 - 达里语 - 普什图语" -Language=ps -Label=ps - -[keyboard-af-uz] -Description="键盘 - 达里语 - 乌兹别克语(阿富汗)" -Language=uz -Label=uz - -[keyboard-af-fa-olpc] -Description="键盘 - 达里语 - 达里语(阿富汗,OLPC)" -Language=prs -Label="fa (fa-olpc)" - -[keyboard-af-ps-olpc] -Description="键盘 - 达里语 - 普什图语(阿富汗,OLPC)" -Language=ps -Label="ps (ps-olpc)" - -[keyboard-af-uz-olpc] -Description="键盘 - 达里语 - 乌兹别克语(阿富汗,OLPC)" -Language=uz -Label="uz (uz-olpc)" - -[keyboard-hr] -Description="键盘 - 克罗地亚语" -Language=hr -Label=hr - -[keyboard-hr-alternatequotes] -Description="键盘 - 克罗地亚语 - 克罗地亚语(带书名号引号)" -Language=hr -Label="hr (alternatequotes)" - -[keyboard-hr-unicode] -Description="键盘 - 克罗地亚语 - 克罗地亚语(带克罗地亚语二重字)" -Language=hr -Label="hr (unicode)" - -[keyboard-hr-unicodeus] -Description="键盘 - 克罗地亚语 - 克罗地亚语(美国,带克罗地亚语二重字)" -Language=hr -Label="hr (unicodeus)" - -[keyboard-hr-us] -Description="键盘 - 克罗地亚语 - 克罗地亚语(美国)" -Language=hr -Label="hr (us)" - -[keyboard-ma] -Description="键盘 - 阿拉伯语(摩洛哥)" -Language=ary -Label=ar - -[keyboard-ma-tifinagh] -Description="键盘 - 阿拉伯语(摩洛哥) - 柏柏尔语(摩洛哥,提非纳)" -Language= -Label="ber (tifinagh)" - -[keyboard-ma-tifinagh-alt] -Description="键盘 - 阿拉伯语(摩洛哥) - 柏柏尔语(摩洛哥,提非纳,替代)" -Language= -Label="ber (tifinagh-alt)" - -[keyboard-ma-tifinagh-alt-phonetic] -Description="键盘 - 阿拉伯语(摩洛哥) - 柏柏尔语(摩洛哥,提非纳语音助记,替代)" -Language= -Label="ber (tifinagh-alt-phonetic)" - -[keyboard-ma-tifinagh-extended] -Description="键盘 - 阿拉伯语(摩洛哥) - 柏柏尔语(摩洛哥,提非纳扩展)" -Language= -Label="ber (tifinagh-extended)" - -[keyboard-ma-tifinagh-phonetic] -Description="键盘 - 阿拉伯语(摩洛哥) - 柏柏尔语(摩洛哥,提非纳语音助记)" -Language= -Label="ber (tifinagh-phonetic)" - -[keyboard-ma-tifinagh-extended-phonetic] -Description="键盘 - 阿拉伯语(摩洛哥) - 柏柏尔语(摩洛哥,提非纳扩展语音助记)" -Language= -Label="ber (tifinagh-extended-phonetic)" - -[keyboard-ma-french] -Description="键盘 - 阿拉伯语(摩洛哥) - 法语(摩洛哥)" -Language=fr -Label="fr (french)" - -[keyboard-ma-rif] -Description="键盘 - 阿拉伯语(摩洛哥) - 里夫语" -Language=rif -Label=rif - -[keyboard-sy] -Description="键盘 - 阿拉伯语(叙利亚)" -Language=syr -Label=ar - -[keyboard-sy-syc] -Description="键盘 - 阿拉伯语(叙利亚) - 叙利亚语" -Language=syr -Label=syc - -[keyboard-sy-syc_phonetic] -Description="键盘 - 阿拉伯语(叙利亚) - 叙利亚语(语音助记)" -Language=syr -Label="syc (syc_phonetic)" - -[keyboard-sy-ku] -Description="键盘 - 阿拉伯语(叙利亚) - 库尔德语(叙利亚,拉丁 Q)" -Language=ku -Label=ku - -[keyboard-sy-ku_alt] -Description="键盘 - 阿拉伯语(叙利亚) - 库尔德语(叙利亚,拉丁 Alt-Q)" -Language=ku -Label="ku (ku_alt)" - -[keyboard-sy-ku_f] -Description="键盘 - 阿拉伯语(叙利亚) - 库尔德语(叙利亚,F)" -Language=ku -Label="ku (ku_f)" - -[keyboard-at] -Description="键盘 - 德语(奥地利)" -Language=de -Label=de - -[keyboard-at-nodeadkeys] -Description="键盘 - 德语(奥地利) - 德语(奥地利,无死键)" -Language=de -Label="at (nodeadkeys)" - -[keyboard-at-mac] -Description="键盘 - 德语(奥地利) - 德语(奥地利,Macintosh)" -Language=de -Label="at (mac)" - -[keyboard-nz] -Description="键盘 - 英语(新西兰)" -Language=en -Label=en - -[keyboard-nz-mao] -Description="键盘 - 英语(新西兰) - 毛利语" -Language=mi -Label="mi (mao)" - -[keyboard-epo] -Description="键盘 - 世界语" -Language=eo -Label=eo - -[keyboard-epo-legacy] -Description="键盘 - 世界语 - 世界语(传统)" -Language=eo -Label="epo (legacy)" - -[keyboard-eu] -Description="键盘 - EurKEY(美国)" -Language=ca -Label=eu - -[keyboard-za] -Description="键盘 - 英语(南非)" -Language=en -Label=en - -[keyboard-fo] -Description="键盘 - 法罗语" -Language=fo -Label=fo - -[keyboard-fo-nodeadkeys] -Description="键盘 - 法罗语 - 法罗语(无死键)" -Language=fo -Label="fo (nodeadkeys)" - -[keyboard-gb] -Description="键盘 - 英语(英国)" -Language=en -Label=en - -[keyboard-gb-extd] -Description="键盘 - 英语(英国) - 英语(英国,扩展,Windows)" -Language=en -Label="gb (extd)" - -[keyboard-gb-intl] -Description="键盘 - 英语(英国) - 英语(英国,国际,带死键)" -Language=en -Label="gb (intl)" - -[keyboard-gb-dvorak] -Description="键盘 - 英语(英国) - 英语(英国,Dvorak)" -Language=en -Label="gb (dvorak)" - -[keyboard-gb-dvorakukp] -Description="键盘 - 英语(英国) - 英语(英国,Dvorak,带英国标点)" -Language=en -Label="gb (dvorakukp)" - -[keyboard-gb-mac] -Description="键盘 - 英语(英国) - 英语(英国,Macintosh)" -Language=en -Label="gb (mac)" - -[keyboard-gb-mac_intl] -Description="键盘 - 英语(英国) - 英语(英国,Macintosh,国际)" -Language=en -Label="gb (mac_intl)" - -[keyboard-gb-colemak] -Description="键盘 - 英语(英国) - 英语(英国,Colemak)" -Language=en -Label="gb (colemak)" - -[keyboard-gb-colemak_dh] -Description="键盘 - 英语(英国) - 英语(英国,Colemak-DH)" -Language=en -Label="gb (colemak_dh)" - -[keyboard-gb-gla] -Description="键盘 - 英语(英国) - 苏格兰盖尔语" -Language=en -Label="gd (gla)" - -[keyboard-gb-pl] -Description="键盘 - 英语(英国) - 波兰语(英式键盘)" -Language=pl -Label=pl - -[keyboard-gb-sun_type6] -Description="键盘 - 英语(英国) - 英语(英国,Sun Type 6/7)" -Language=en -Label="gb (sun_type6)" - -[keyboard-ke] -Description="键盘 - 斯瓦希里语(肯尼亚)" -Language=sw -Label=sw - -[keyboard-ke-kik] -Description="键盘 - 斯瓦希里语(肯尼亚) - 基库尤语" -Language=ki -Label="ki (kik)" - -[keyboard-md] -Description="键盘 - 摩尔多瓦语" -Language=ro -Label=ro - -[keyboard-md-gag] -Description="键盘 - 摩尔多瓦语 - 加告兹语(摩尔多瓦)" -Language=gag -Label=gag - -[keyboard-us] -Description="键盘 - 英语(美国)" -Language=en -Label=en - -[keyboard-us-euro] -Description="键盘 - 英语(美国) - 英语(美国,5 键上是欧元符号)" -Language=en -Label="us (euro)" - -[keyboard-us-intl] -Description="键盘 - 英语(美国) - 英语(美国,国际,带死键)" -Language=en -Label="us (intl)" - -[keyboard-us-alt-intl] -Description="键盘 - 英语(美国) - 英语(美国,替代,国际)" -Language=en -Label="us (alt-intl)" - -[keyboard-us-altgr-intl] -Description="键盘 - 英语(美国) - 英语(国际,带 AltGr 死键)" -Language=en -Label="us (altgr-intl)" - -[keyboard-us-mac] -Description="键盘 - 英语(美国) - 英语(Macintosh)" -Language=en -Label="us (mac)" - -[keyboard-us-colemak] -Description="键盘 - 英语(美国) - 英语(Colemak)" -Language=en -Label="us (colemak)" - -[keyboard-us-colemak_dh] -Description="键盘 - 英语(美国) - 英语(Colemak-DH)" -Language=en -Label="us (colemak_dh)" - -[keyboard-us-colemak_dh_wide] -Description="键盘 - 英语(美国) - 英语(Colemak-DH 宽版)" -Language=en -Label="us (colemak_dh_wide)" - -[keyboard-us-colemak_dh_ortho] -Description="键盘 - 英语(美国) - 英语(Colemak-DH 正交)" -Language=en -Label="us (colemak_dh_ortho)" - -[keyboard-us-colemak_dh_iso] -Description="键盘 - 英语(美国) - 英语(Colemak-DH ISO)" -Language=en -Label="us (colemak_dh_iso)" - -[keyboard-us-colemak_dh_wide_iso] -Description="键盘 - 英语(美国) - 英语(Colemak-DH 宽版 ISO)" -Language=en -Label="us (colemak_dh_wide_iso)" - -[keyboard-us-dvorak] -Description="键盘 - 英语(美国) - 英语(Dvorak)" -Language=en -Label="us (dvorak)" - -[keyboard-us-dvorak-intl] -Description="键盘 - 英语(美国) - 英语(Dvorak,国际,带死键)" -Language=en -Label="us (dvorak-intl)" - -[keyboard-us-dvorak-alt-intl] -Description="键盘 - 英语(美国) - 英语(Dvorak,替代,国际)" -Language=en -Label="us (dvorak-alt-intl)" - -[keyboard-us-dvorak-l] -Description="键盘 - 英语(美国) - 英语(Dvorak,单手,左手)" -Language=en -Label="us (dvorak-l)" - -[keyboard-us-dvorak-r] -Description="键盘 - 英语(美国) - 英语(Dvorak,单手,右手)" -Language=en -Label="us (dvorak-r)" - -[keyboard-us-dvorak-classic] -Description="键盘 - 英语(美国) - 英语(经典 Dvorak)" -Language=en -Label="us (dvorak-classic)" - -[keyboard-us-dvp] -Description="键盘 - 英语(美国) - 英语(适合程序员的 Dvorak)" -Language=en -Label="us (dvp)" - -[keyboard-us-dvorak-mac] -Description="键盘 - 英语(美国) - 英语(Dvorak,Macintosh)" -Language=en -Label="us (dvorak-mac)" - -[keyboard-us-norman] -Description="键盘 - 英语(美国) - 英语(Norman)" -Language=en -Label="us (norman)" - -[keyboard-us-symbolic] -Description="键盘 - 英语(美国) - 英语(美国,符号)" -Language=en -Label="us (symbolic)" - -[keyboard-us-workman] -Description="键盘 - 英语(美国) - 英语(Workman)" -Language=en -Label="us (workman)" - -[keyboard-us-workman-intl] -Description="键盘 - 英语(美国) - 英语(Workman,国际,带死键)" -Language=en -Label="us (workman-intl)" - -[keyboard-us-olpc2] -Description="键盘 - 英语(美国) - 英语(除/乘键切换布局)" -Language=en -Label="us (olpc2)" - -[keyboard-us-chr] -Description="键盘 - 英语(美国) - 切罗基语" -Language=chr -Label=chr - -[keyboard-us-haw] -Description="键盘 - 英语(美国) - 夏威夷语" -Language=haw -Label=haw - -[keyboard-us-rus] -Description="键盘 - 英语(美国) - 俄语(美国,语音助记)" -Language=ru -Label="ru (rus)" - -[keyboard-us-hbs] -Description="键盘 - 英语(美国) - 塞尔维亚-克罗地亚语(美国)" -Language=en -Label="us (hbs)" - -[keyboard-us-intl-unicode] -Description="键盘 - 英语(美国) - 英语(美国,国际,AltGr Unicode 组合字符)" -Language=en -Label="us (intl-unicode)" - -[keyboard-us-alt-intl-unicode] -Description="键盘 - 英语(美国) - 英语(美国,国际,AltGr Unicode 组合字符,替代)" -Language=en -Label="us (alt-intl-unicode)" - -[keyboard-us-ats] -Description="键盘 - 英语(美国) - 阿特塞纳语" -Language=en -Label="us (ats)" - -[keyboard-us-crd] -Description="键盘 - 英语(美国) - 科达莲萨利希语" -Language=crd -Label="us (crd)" - -[keyboard-us-cz_sk_de] -Description="键盘 - 英语(美国) - 捷克语、斯洛伐克语和德语(美国)" -Language=en -Label="us (cz_sk_de)" - -[keyboard-us-cz_sk_pl_de_es_fi_sv] -Description="键盘 - 英语(美国) - 捷克语、斯洛伐克语、波兰语、西班牙语、芬兰语、瑞典语和德语(美国)" -Language=en -Label="us (cz_sk_pl_de_es_fi_sv)" - -[keyboard-us-drix] -Description="键盘 - 英语(美国) - 英语(Drix)" -Language=en -Label="us (drix)" - -[keyboard-us-de_se_fi] -Description="键盘 - 英语(美国) - 德语,瑞典语和芬兰语(美国)" -Language=en -Label="us (de_se_fi)" - -[keyboard-us-ibm238l] -Description="键盘 - 英语(美国) - 英语(美国,IBM Arabic 238_L)" -Language=en -Label="us (ibm238l)" - -[keyboard-us-sun_type6] -Description="键盘 - 英语(美国) - 英语(美国,Sun Type 6/7)" -Language=en -Label="us (sun_type6)" - -[keyboard-us-carpalx] -Description="键盘 - 英语(美国) - 英语(Carpalx)" -Language=en -Label="us (carpalx)" - -[keyboard-us-carpalx-intl] -Description="键盘 - 英语(美国) - 英语(Carpalx,国际,带死键)" -Language=en -Label="us (carpalx-intl)" - -[keyboard-us-carpalx-altgr-intl] -Description="键盘 - 英语(美国) - 英语(Carpalx,国际,带 AltGr 死键)" -Language=en -Label="us (carpalx-altgr-intl)" - -[keyboard-us-carpalx-full] -Description="键盘 - 英语(美国) - 英语(Carpalx,完全优化)" -Language=en -Label="us (carpalx-full)" - -[keyboard-us-carpalx-full-intl] -Description="键盘 - 英语(美国) - 英语(Carpalx,完全优化,国际,带死键)" -Language=en -Label="us (carpalx-full-intl)" - -[keyboard-us-carpalx-full-altgr-intl] -Description="键盘 - 英语(美国) - 英语(Carpalx,完全优化,国际,带 AltGr 死键)" -Language=en -Label="us (carpalx-full-altgr-intl)" - -[keyboard-us-3l] -Description="键盘 - 英语(美国) - 英语(3l)" -Language=en -Label="us (3l)" - -[keyboard-us-3l-cros] -Description="键盘 - 英语(美国) - 英语(3l,Chromebook)" -Language=en -Label="us (3l-cros)" - -[keyboard-us-3l-emacs] -Description="键盘 - 英语(美国) - 英语(3l,emacs)" -Language=en -Label="us (3l-emacs)" - -[keyboard-us-workman-p] -Description="键盘 - 英语(美国) - 英语(Workman-P)" -Language=en -Label=workman-p - -[keyboard-us-scn] -Description="键盘 - 英语(美国) - 西西里语(美式键盘)" -Language=en -Label="us (scn)" - -[keyboard-us-altgr-weur] -Description="键盘 - 英语(美国) - 英语(西欧 AltGr 死键)" -Language=en -Label="us (altgr-weur)" - -[keyboard-ge] -Description="键盘 - 格鲁吉亚语" -Language=ka -Label=ka - -[keyboard-ge-ergonomic] -Description="键盘 - 格鲁吉亚语 - 格鲁吉亚语(人体工学)" -Language=ka -Label="ge (ergonomic)" - -[keyboard-ge-mess] -Description="键盘 - 格鲁吉亚语 - 格鲁吉亚语(MESS)" -Language=ka -Label="ge (mess)" - -[keyboard-ge-os] -Description="键盘 - 格鲁吉亚语 - 奥塞梯语(格鲁吉亚)" -Language=os -Label="ge (os)" - -[keyboard-ge-ru] -Description="键盘 - 格鲁吉亚语 - 俄语(格鲁吉亚)" -Language=ru -Label=ru - -[keyboard-es] -Description="键盘 - 西班牙语" -Language=es -Label=es - -[keyboard-es-nodeadkeys] -Description="键盘 - 西班牙语 - 西班牙语(无死键)" -Language=es -Label="es (nodeadkeys)" - -[keyboard-es-deadtilde] -Description="键盘 - 西班牙语 - 西班牙语(波浪号为死键)" -Language=es -Label="es (deadtilde)" - -[keyboard-es-winkeys] -Description="键盘 - 西班牙语 - 西班牙语(Windows)" -Language=es -Label="es (winkeys)" - -[keyboard-es-dvorak] -Description="键盘 - 西班牙语 - 西班牙语(Dvorak)" -Language=es -Label="es (dvorak)" - -[keyboard-es-ast] -Description="键盘 - 西班牙语 - 阿斯图里亚斯语(西班牙,带底部加点的 H 和 L)" -Language=ast -Label=ast - -[keyboard-es-cat] -Description="键盘 - 西班牙语 - 加泰罗尼亚语(西班牙,带中间加点的 L)" -Language=ca -Label="ca (cat)" - -[keyboard-es-sun_type6] -Description="键盘 - 西班牙语 - 西班牙语(Sun Type 6/7)" -Language=es -Label="es (sun_type6)" - -[keyboard-ee] -Description="键盘 - 爱沙尼亚语" -Language=et -Label=et - -[keyboard-ee-nodeadkeys] -Description="键盘 - 爱沙尼亚语 - 爱沙尼亚语(无死键)" -Language=et -Label="ee (nodeadkeys)" - -[keyboard-ee-dvorak] -Description="键盘 - 爱沙尼亚语 - 爱沙尼亚语(Dvorak)" -Language=et -Label="ee (dvorak)" - -[keyboard-ee-us] -Description="键盘 - 爱沙尼亚语 - 爱沙尼亚语(美国)" -Language=et -Label="ee (us)" - -[keyboard-ee-sun_type6] -Description="键盘 - 爱沙尼亚语 - 爱沙尼亚语(Sun Type 6/7)" -Language=et -Label="ee (sun_type6)" - -[keyboard-bd] -Description="键盘 - 孟加拉语" -Language=bn -Label=bn - -[keyboard-bd-probhat] -Description="键盘 - 孟加拉语 - 孟加拉语(Probhat)" -Language=bn -Label="bd (probhat)" - -[keyboard-ph] -Description="键盘 - 菲律宾语" -Language=fil -Label=ph - -[keyboard-ph-qwerty-bay] -Description="键盘 - 菲律宾语 - 菲律宾语(QWERTY,Baybayin)" -Language=fil -Label="ph (qwerty-bay)" - -[keyboard-ph-capewell-dvorak] -Description="键盘 - 菲律宾语 - 菲律宾语(Capewell-Dvorak,拉丁)" -Language=fil -Label="ph (capewell-dvorak)" - -[keyboard-ph-capewell-dvorak-bay] -Description="键盘 - 菲律宾语 - 菲律宾语(Capewell-Dvorak,Baybayin)" -Language=fil -Label="ph (capewell-dvorak-bay)" - -[keyboard-ph-capewell-qwerf2k6] -Description="键盘 - 菲律宾语 - 菲律宾语(Capewell-QWERF 2006,拉丁)" -Language=fil -Label="ph (capewell-qwerf2k6)" - -[keyboard-ph-capewell-qwerf2k6-bay] -Description="键盘 - 菲律宾语 - 菲律宾语(Capewell-QWERF 2006,Baybayin)" -Language=fil -Label="ph (capewell-qwerf2k6-bay)" - -[keyboard-ph-colemak] -Description="键盘 - 菲律宾语 - 菲律宾语(Colemak,拉丁)" -Language=fil -Label="ph (colemak)" - -[keyboard-ph-colemak-bay] -Description="键盘 - 菲律宾语 - 菲律宾语(Colemak,Baybayin)" -Language=fil -Label="ph (colemak-bay)" - -[keyboard-ph-dvorak] -Description="键盘 - 菲律宾语 - 菲律宾语(Dvorak,拉丁)" -Language=fil -Label="ph (dvorak)" - -[keyboard-ph-dvorak-bay] -Description="键盘 - 菲律宾语 - 菲律宾语(Dvorak,Baybayin)" -Language=fil -Label="ph (dvorak-bay)" - -[keyboard-uz] -Description="键盘 - 乌兹别克语" -Language=uz -Label=uz - -[keyboard-uz-latin] -Description="键盘 - 乌兹别克语 - 乌兹别克语(拉丁)" -Language=uz -Label="uz (latin)" - -[keyboard-lt] -Description="键盘 - 立陶宛语" -Language=lt -Label=lt - -[keyboard-lt-std] -Description="键盘 - 立陶宛语 - 立陶宛语(标准)" -Language=lt -Label="lt (std)" - -[keyboard-lt-us] -Description="键盘 - 立陶宛语 - 立陶宛语(美国)" -Language=lt -Label="lt (us)" - -[keyboard-lt-ibm] -Description="键盘 - 立陶宛语 - 立陶宛语(IBM)" -Language=lt -Label="lt (ibm)" - -[keyboard-lt-lekp] -Description="键盘 - 立陶宛语 - 立陶宛语(LEKP)" -Language=lt -Label="lt (lekp)" - -[keyboard-lt-lekpa] -Description="键盘 - 立陶宛语 - 立陶宛语(LEKPa)" -Language=lt -Label="lt (lekpa)" - -[keyboard-lt-ratise] -Description="键盘 - 立陶宛语 - 立陶宛语(Ratise)" -Language=lt -Label="lt (ratise)" - -[keyboard-lt-sgs] -Description="键盘 - 立陶宛语 - 萨莫吉提亚语" -Language=sgs -Label="lt (sgs)" - -[keyboard-lt-us_dvorak] -Description="键盘 - 立陶宛语 - 立陶宛语(Dvorak)" -Language=lt -Label="lt (us_dvorak)" - -[keyboard-lt-sun_type6] -Description="键盘 - 立陶宛语 - 立陶宛语(Sun Type 6/7)" -Language=lt -Label="lt (sun_type6)" - -[keyboard-fi] -Description="键盘 - 芬兰语" -Language=fi -Label=fi - -[keyboard-fi-winkeys] -Description="键盘 - 芬兰语 - 芬兰语(Windows)" -Language=fi -Label="fi (winkeys)" - -[keyboard-fi-classic] -Description="键盘 - 芬兰语 - 芬兰语(经典)" -Language=fi -Label="fi (classic)" - -[keyboard-fi-nodeadkeys] -Description="键盘 - 芬兰语 - 芬兰语(经典,无死键)" -Language=fi -Label="fi (nodeadkeys)" - -[keyboard-fi-mac] -Description="键盘 - 芬兰语 - 芬兰语(Macintosh)" -Language=fi -Label="fi (mac)" - -[keyboard-fi-smi] -Description="键盘 - 芬兰语 - 北萨米语(芬兰)" -Language=se -Label="fi (smi)" - -[keyboard-fi-sun_type6] -Description="键盘 - 芬兰语 - 芬兰语(Sun Type 6/7)" -Language=fi -Label="fi (sun_type6)" - -[keyboard-fi-das] -Description="键盘 - 芬兰语 - 芬兰语(DAS)" -Language=fi -Label="fi (das)" - -[keyboard-fi-fidvorak] -Description="键盘 - 芬兰语 - 芬兰语(Dvorak)" -Language=fi -Label="fi (fidvorak)" - -[keyboard-cn] -Description="键盘 - 汉语" -Language=zh -Label=zh - -[keyboard-cn-altgr-pinyin] -Description="键盘 - 汉语 - 汉语拼音字母(带 AltGr 死键)" -Language=zh -Label="cn (altgr-pinyin)" - -[keyboard-cn-mon_trad] -Description="键盘 - 汉语 - 蒙古语(Bichig)" -Language=mvf -Label="cn (mon_trad)" - -[keyboard-cn-mon_trad_todo] -Description="键盘 - 汉语 - 蒙古语(Todo)" -Language=mvf -Label="cn (mon_trad_todo)" - -[keyboard-cn-mon_trad_xibe] -Description="键盘 - 汉语 - 蒙古语(Xibe)" -Language=sjo -Label="cn (mon_trad_xibe)" - -[keyboard-cn-mon_trad_manchu] -Description="键盘 - 汉语 - 蒙古语(Manchu)" -Language=mnc -Label="cn (mon_trad_manchu)" - -[keyboard-cn-mon_trad_galik] -Description="键盘 - 汉语 - 蒙古语(Galik)" -Language=mvf -Label="cn (mon_trad_galik)" - -[keyboard-cn-mon_todo_galik] -Description="键盘 - 汉语 - 蒙古语(Todo Galik)" -Language=mvf -Label="cn (mon_todo_galik)" - -[keyboard-cn-mon_manchu_galik] -Description="键盘 - 汉语 - 蒙古语(Manchu Galik)" -Language=mnc -Label="cn (mon_manchu_galik)" - -[keyboard-cn-tib] -Description="键盘 - 汉语 - 藏语" -Language=bo -Label="cn (tib)" - -[keyboard-cn-tib_asciinum] -Description="键盘 - 汉语 - 藏语(带 ASCII 数字)" -Language=bo -Label="cn (tib_asciinum)" - -[keyboard-cn-ug] -Description="键盘 - 汉语 - 维吾尔语" -Language=ug -Label=ug - -[keyboard-ca] -Description="键盘 - 法语(加拿大)" -Language=fr -Label=fr - -[keyboard-ca-fr-dvorak] -Description="键盘 - 法语(加拿大) - 法语(加拿大,Dvorak)" -Language=fr -Label="fr (fr-dvorak)" - -[keyboard-ca-fr-legacy] -Description="键盘 - 法语(加拿大) - 法语(加拿大,传统)" -Language=fr -Label="fr (fr-legacy)" - -[keyboard-ca-multix] -Description="键盘 - 法语(加拿大) - 加拿大(CSA)" -Language=fr -Label="ca (multix)" - -[keyboard-ca-eng] -Description="键盘 - 法语(加拿大) - 英语(加拿大)" -Language=en -Label="en (eng)" - -[keyboard-ca-ike] -Description="键盘 - 法语(加拿大) - 因纽特语" -Language=iu -Label=ike - -[keyboard-ca-kut] -Description="键盘 - 法语(加拿大) - Kutenai 语" -Language=fr -Label=kut - -[keyboard-ca-shs] -Description="键盘 - 法语(加拿大) - 苏斯瓦语" -Language=fr -Label=shs - -[keyboard-ca-sun_type6] -Description="键盘 - 法语(加拿大) - 多语言(加拿大,Sun Type 6/7)" -Language=fr -Label="ca (sun_type6)" - -[keyboard-gh] -Description="键盘 - 英语(加纳)" -Language=en -Label=en - -[keyboard-gh-generic] -Description="键盘 - 英语(加纳) - 英语(加纳,多语言)" -Language=en -Label="gh (generic)" - -[keyboard-gh-gillbt] -Description="键盘 - 英语(加纳) - 英语(加纳,GILLBT)" -Language=en -Label="gh (gillbt)" - -[keyboard-gh-akan] -Description="键盘 - 英语(加纳) - 阿肯语" -Language=ak -Label="ak (akan)" - -[keyboard-gh-avn] -Description="键盘 - 英语(加纳) - Avatime" -Language=avn -Label=avn - -[keyboard-gh-ewe] -Description="键盘 - 英语(加纳) - 埃维语" -Language=ee -Label="ee (ewe)" - -[keyboard-gh-fula] -Description="键盘 - 英语(加纳) - 富拉语" -Language=ff -Label="ff (fula)" - -[keyboard-gh-ga] -Description="键盘 - 英语(加纳) - Ga 语" -Language=gaa -Label="gaa (ga)" - -[keyboard-gh-hausa] -Description="键盘 - 英语(加纳) - 豪萨语(加纳)" -Language=ha -Label="ha (hausa)" - -[keyboard-fr] -Description="键盘 - 法语" -Language=fr -Label=fr - -[keyboard-fr-nodeadkeys] -Description="键盘 - 法语 - 法语(无死键)" -Language=fr -Label="fr (nodeadkeys)" - -[keyboard-fr-oss] -Description="键盘 - 法语 - 法语(替代)" -Language=fr -Label="fr (oss)" - -[keyboard-fr-oss_nodeadkeys] -Description="键盘 - 法语 - 法语(替代,无死键)" -Language=fr -Label="fr (oss_nodeadkeys)" - -[keyboard-fr-oss_latin9] -Description="键盘 - 法语 - 法语(替代,只包含拉丁-9 字符)" -Language=fr -Label="fr (oss_latin9)" - -[keyboard-fr-latin9] -Description="键盘 - 法语 - 法语(传统,替代)" -Language=fr -Label="fr (latin9)" - -[keyboard-fr-latin9_nodeadkeys] -Description="键盘 - 法语 - 法语(传统,替代,无死键)" -Language=fr -Label="fr (latin9_nodeadkeys)" - -[keyboard-fr-azerty] -Description="键盘 - 法语 - 法语(AZERTY)" -Language=fr -Label="fr (azerty)" - -[keyboard-fr-afnor] -Description="键盘 - 法语 - 法语(AZERTY,AFNOR)" -Language=fr -Label="fr (afnor)" - -[keyboard-fr-bepo] -Description="键盘 - 法语 - 法语(BEPO)" -Language=fr -Label="fr (bepo)" - -[keyboard-fr-bepo_latin9] -Description="键盘 - 法语 - 法语(BEPO,只包含拉丁-9 字符)" -Language=fr -Label="fr (bepo_latin9)" - -[keyboard-fr-bepo_afnor] -Description="键盘 - 法语 - 法语(BEPO,AFNOR)" -Language=fr -Label="fr (bepo_afnor)" - -[keyboard-fr-dvorak] -Description="键盘 - 法语 - 法语(Dvorak)" -Language=fr -Label="fr (dvorak)" - -[keyboard-fr-ergol] -Description="键盘 - 法语 - 法语(Ergo-L)" -Language=fr -Label="fr (ergol)" - -[keyboard-fr-ergol_iso] -Description="键盘 - 法语 - 法语(Ergo-L,ISO 变种)" -Language=fr -Label="fr (ergol_iso)" - -[keyboard-fr-mac] -Description="键盘 - 法语 - 法语(Macintosh)" -Language=fr -Label="fr (mac)" - -[keyboard-fr-us] -Description="键盘 - 法语 - 法语(美国)" -Language=fr -Label="fr (us)" - -[keyboard-fr-bre] -Description="键盘 - 法语 - 布列塔尼语(法国)" -Language=br -Label="fr (bre)" - -[keyboard-fr-oci] -Description="键盘 - 法语 - 奥克语" -Language=oc -Label="fr (oci)" - -[keyboard-fr-geo] -Description="键盘 - 法语 - 格鲁吉亚语(法国,AZERTY Tskapo)" -Language=ka -Label="fr (geo)" - -[keyboard-fr-sun_type6] -Description="键盘 - 法语 - 法语(Sun Type 6/7)" -Language=fr -Label="fr (sun_type6)" - -[keyboard-fr-us-alt] -Description="键盘 - 法语 - 法语(美国,带死键,替代)" -Language=fr -Label="fr (us-alt)" - -[keyboard-fr-us-azerty] -Description="键盘 - 法语 - 法语(美国,AZERTY)" -Language=fr -Label="fr (us-azerty)" - -[keyboard-eg] -Description="键盘 - 阿拉伯语(埃及)" -Language=ar -Label=ar - -[keyboard-eg-cop] -Description="键盘 - 阿拉伯语(埃及) - 科普特语" -Language=cop -Label=cop - -[keyboard-cd] -Description="键盘 - 法语(刚果民主共和国)" -Language=fr -Label=fr - -[keyboard-tg] -Description="键盘 - 法语(多哥)" -Language=fr -Label=fr - -[keyboard-kz] -Description="键盘 - 哈萨克语" -Language=kk -Label=kk - -[keyboard-kz-kazrus] -Description="键盘 - 哈萨克语 - 哈萨克语(带俄语)" -Language=kk -Label="kz (kazrus)" - -[keyboard-kz-ext] -Description="键盘 - 哈萨克语 - 哈萨克语(扩展)" -Language=kk -Label="kz (ext)" - -[keyboard-kz-latin] -Description="键盘 - 哈萨克语 - 哈萨克语(拉丁)" -Language=kk -Label="kz (latin)" - -[keyboard-kz-ruskaz] -Description="键盘 - 哈萨克语 - 俄语(哈萨克斯坦,带哈萨克语)" -Language=ru -Label="ru (ruskaz)" - -[keyboard-ch] -Description="键盘 - 德语(瑞士)" -Language=de -Label=de - -[keyboard-ch-de_nodeadkeys] -Description="键盘 - 德语(瑞士) - 德语(瑞士,无死键)" -Language=de -Label="de (de_nodeadkeys)" - -[keyboard-ch-de_mac] -Description="键盘 - 德语(瑞士) - 德语(瑞士,Macintosh)" -Language=de -Label="de (de_mac)" - -[keyboard-ch-legacy] -Description="键盘 - 德语(瑞士) - 德语(瑞士,传统)" -Language=de -Label="ch (legacy)" - -[keyboard-ch-fr] -Description="键盘 - 德语(瑞士) - 法语(瑞士)" -Language=fr -Label=fr - -[keyboard-ch-fr_nodeadkeys] -Description="键盘 - 德语(瑞士) - 法语(瑞士,无死键)" -Language=fr -Label="fr (fr_nodeadkeys)" - -[keyboard-ch-fr_mac] -Description="键盘 - 德语(瑞士) - 法语(瑞士,Macintosh)" -Language=fr -Label="fr (fr_mac)" - -[keyboard-ch-sun_type6_de] -Description="键盘 - 德语(瑞士) - 德语(瑞士,Sun Type 6/7)" -Language=de -Label="ch (sun_type6_de)" - -[keyboard-ch-sun_type6_fr] -Description="键盘 - 德语(瑞士) - 法语(瑞士,Sun Type 6/7)" -Language=de -Label="ch (sun_type6_fr)" - -[keyboard-gr] -Description="键盘 - 希腊语" -Language=el -Label=gr - -[keyboard-gr-simple] -Description="键盘 - 希腊语 - 希腊语(简易)" -Language=el -Label="gr (simple)" - -[keyboard-gr-nodeadkeys] -Description="键盘 - 希腊语 - 希腊语(无死键)" -Language=el -Label="gr (nodeadkeys)" - -[keyboard-gr-polytonic] -Description="键盘 - 希腊语 - 希腊语(变音符号)" -Language=el -Label="gr (polytonic)" - -[keyboard-gr-sun_type6] -Description="键盘 - 希腊语 - 希腊语(Sun Type 6/7)" -Language=el -Label="gr (sun_type6)" - -[keyboard-gr-colemak] -Description="键盘 - 希腊语 - 希腊语(Colemak)" -Language=el -Label="gr (colemak)" - -[keyboard-tr] -Description="键盘 - 土耳其语" -Language=tr -Label=tr - -[keyboard-tr-f] -Description="键盘 - 土耳其语 - 土耳其语(F)" -Language=tr -Label="tr (f)" - -[keyboard-tr-e] -Description="键盘 - 土耳其语 - 土耳其语(E)" -Language=tr -Label="tr (e)" - -[keyboard-tr-alt] -Description="键盘 - 土耳其语 - 土耳其语(Alt-Q)" -Language=tr -Label="tr (alt)" - -[keyboard-tr-intl] -Description="键盘 - 土耳其语 - 土耳其语(国际,带死键)" -Language=tr -Label="tr (intl)" - -[keyboard-tr-ku] -Description="键盘 - 土耳其语 - 库尔德语(土耳其,拉丁 Q)" -Language=ku -Label=ku - -[keyboard-tr-ku_f] -Description="键盘 - 土耳其语 - 库尔德语(土耳其,F)" -Language=ku -Label="ku (ku_f)" - -[keyboard-tr-ku_alt] -Description="键盘 - 土耳其语 - 库尔德语(土耳其,拉丁 Alt-Q)" -Language=ku -Label="ku (ku_alt)" - -[keyboard-tr-sun_type6] -Description="键盘 - 土耳其语 - 土耳其语(Sun Type 6/7)" -Language=tr -Label="tr (sun_type6)" - -[keyboard-tr-us] -Description="键盘 - 土耳其语 - 土耳其语(交换 i 和 ı)" -Language=tr -Label="tr (us)" - -[keyboard-tr-otk] -Description="键盘 - 土耳其语 - 古代突厥语" -Language=tr -Label="tr (otk)" - -[keyboard-tr-otkf] -Description="键盘 - 土耳其语 - 古代突厥语(F)" -Language=tr -Label="tr (otkf)" - -[keyboard-tr-ot] -Description="键盘 - 土耳其语 - 奥斯曼土耳其语(Q)" -Language=tr -Label="tr (ot)" - -[keyboard-tr-otf] -Description="键盘 - 土耳其语 - 奥斯曼土耳其语(F)" -Language=tr -Label="tr (otf)" - -[keyboard-il] -Description="键盘 - 希伯来语" -Language=he -Label=he - -[keyboard-il-si2] -Description="键盘 - 希伯来语 - 希伯来语(SI-1452-2)" -Language=he -Label="il (si2)" - -[keyboard-il-lyx] -Description="键盘 - 希伯来语 - 希伯来语(lyx)" -Language=he -Label="il (lyx)" - -[keyboard-il-phonetic] -Description="键盘 - 希伯来语 - 希伯来语(语音助记)" -Language=he -Label="il (phonetic)" - -[keyboard-il-biblical] -Description="键盘 - 希伯来语 - 希伯来语(圣经,Tiro)" -Language=he -Label="il (biblical)" - -[keyboard-il-biblicalSIL] -Description="键盘 - 希伯来语 - 希伯来语(Biblical,SIL 语音助记)" -Language=he -Label="il (biblicalSIL)" - -[keyboard-de] -Description="键盘 - 德语" -Language=de -Label=de - -[keyboard-de-deadacute] -Description="键盘 - 德语 - 德语(尖音符号为死键)" -Language=de -Label="de (deadacute)" - -[keyboard-de-deadgraveacute] -Description="键盘 - 德语 - 德语(重音符号和尖音符号为死键)" -Language=de -Label="de (deadgraveacute)" - -[keyboard-de-deadtilde] -Description="键盘 - 德语 - 德语(波浪号为死键)" -Language=de -Label="de (deadtilde)" - -[keyboard-de-nodeadkeys] -Description="键盘 - 德语 - 德语(无死键)" -Language=de -Label="de (nodeadkeys)" - -[keyboard-de-e1] -Description="键盘 - 德语 - 德语(E1)" -Language=de -Label="de (e1)" - -[keyboard-de-e2] -Description="键盘 - 德语 - 德语(E2)" -Language=de -Label="de (e2)" - -[keyboard-de-T3] -Description="键盘 - 德语 - 德语(T3)" -Language=de -Label="de (T3)" - -[keyboard-de-us] -Description="键盘 - 德语 - 德语(美国)" -Language=de -Label="de (us)" - -[keyboard-de-dvorak] -Description="键盘 - 德语 - 德语(Dvorak)" -Language=de -Label="de (dvorak)" - -[keyboard-de-mac] -Description="键盘 - 德语 - 德语(Macintosh)" -Language=de -Label="de (mac)" - -[keyboard-de-mac_nodeadkeys] -Description="键盘 - 德语 - 德语(Macintosh,无死键)" -Language=de -Label="de (mac_nodeadkeys)" - -[keyboard-de-neo] -Description="键盘 - 德语 - 德语(Neo 2)" -Language=de -Label="de (neo)" - -[keyboard-de-qwerty] -Description="键盘 - 德语 - 德语(QWERTY)" -Language=de -Label="de (qwerty)" - -[keyboard-de-dsb] -Description="键盘 - 德语 - 下索布语" -Language=dsb -Label="de (dsb)" - -[keyboard-de-dsb_qwertz] -Description="键盘 - 德语 - 下索布语(QWERTZ)" -Language=dsb -Label="de (dsb_qwertz)" - -[keyboard-de-ro] -Description="键盘 - 德语 - 罗马尼亚语(德国)" -Language=ro -Label="de (ro)" - -[keyboard-de-ro_nodeadkeys] -Description="键盘 - 德语 - 罗马尼亚语(德国,无死键)" -Language=ro -Label="de (ro_nodeadkeys)" - -[keyboard-de-ru] -Description="键盘 - 德语 - 俄语(德国,语音助记)" -Language=ru -Label=ru - -[keyboard-de-tr] -Description="键盘 - 德语 - 土耳其语(德国)" -Language=tr -Label="de (tr)" - -[keyboard-de-hu] -Description="键盘 - 德语 - 德语(带匈牙利字母,无死键)" -Language=de -Label="de (hu)" - -[keyboard-de-pl] -Description="键盘 - 德语 - 波兰语(德国,无死键)" -Language=de -Label="de (pl)" - -[keyboard-de-sun_type6] -Description="键盘 - 德语 - 德语(Sun Type 6/7)" -Language=de -Label="de (sun_type6)" - -[keyboard-de-adnw] -Description="键盘 - 德语 - 德语(Aus der Neo-Welt)" -Language=de -Label="de (adnw)" - -[keyboard-de-koy] -Description="键盘 - 德语 - 德语(KOY)" -Language=de -Label="de (koy)" - -[keyboard-de-bone] -Description="键盘 - 德语 - 德语(Bone)" -Language=de -Label="de (bone)" - -[keyboard-de-bone_eszett_home] -Description="键盘 - 德语 - 德语(Bone,eszett 在中间行)" -Language=de -Label="de (bone_eszett_home)" - -[keyboard-de-neo_qwertz] -Description="键盘 - 德语 - 德语(Neo,QWERTZ)" -Language=de -Label="de (neo_qwertz)" - -[keyboard-de-neo_qwerty] -Description="键盘 - 德语 - 德语(Neo,QWERTY)" -Language=de -Label="de (neo_qwerty)" - -[keyboard-de-noted] -Description="键盘 - 德语 - 德语(Noted)" -Language=de -Label="de (noted)" - -[keyboard-de-ru-recom] -Description="键盘 - 德语 - 俄语(德国,推荐)" -Language=ru -Label="ru (ru-recom)" - -[keyboard-de-ru-translit] -Description="键盘 - 德语 - 俄语(德国,转写)" -Language=ru -Label="ru (ru-translit)" - -[keyboard-id] -Description="键盘 - 印尼语(拉丁)" -Language=id -Label=id - -[keyboard-id-melayu-phonetic] -Description="键盘 - 印尼语(拉丁) - 印尼语(Arab Melayu,语音助记)" -Language=id -Label="id (melayu-phonetic)" - -[keyboard-id-melayu-phoneticx] -Description="键盘 - 印尼语(拉丁) - 印尼语(Arab Melayu,扩展语音助记)" -Language=id -Label="id (melayu-phoneticx)" - -[keyboard-id-pegon-phonetic] -Description="键盘 - 印尼语(拉丁) - 印尼语(Arab Pegon,语音助记)" -Language=id -Label="id (pegon-phonetic)" - -[keyboard-id-javanese] -Description="键盘 - 印尼语(拉丁) - 爪哇语" -Language=jax -Label="id (javanese)" - -[keyboard-sn] -Description="键盘 - 沃洛夫语" -Language=wo -Label=wo - -[keyboard-az] -Description="键盘 - 阿塞拜疆语" -Language=az -Label=az - -[keyboard-az-cyrillic] -Description="键盘 - 阿塞拜疆语 - 阿塞拜疆语(西里尔)" -Language=az -Label="az (cyrillic)" - -[keyboard-kh] -Description="键盘 - 高棉语(柬埔寨)" -Language=km -Label=km - -[keyboard-hu] -Description="键盘 - 匈牙利语" -Language=hu -Label=hu - -[keyboard-hu-standard] -Description="键盘 - 匈牙利语 - 匈牙利语(标准)" -Language=hu -Label="hu (standard)" - -[keyboard-hu-nodeadkeys] -Description="键盘 - 匈牙利语 - 匈牙利语(无死键)" -Language=hu -Label="hu (nodeadkeys)" - -[keyboard-hu-qwerty] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY)" -Language=hu -Label="hu (qwerty)" - -[keyboard-hu-101_qwertz_comma_dead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTZ,101 键,逗号,死键)" -Language=hu -Label="hu (101_qwertz_comma_dead)" - -[keyboard-hu-101_qwertz_comma_nodead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTZ,101 键,逗号,无死键)" -Language=hu -Label="hu (101_qwertz_comma_nodead)" - -[keyboard-hu-101_qwertz_dot_dead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTZ,101 键,点,死键)" -Language=hu -Label="hu (101_qwertz_dot_dead)" - -[keyboard-hu-101_qwertz_dot_nodead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTZ,101 键,点,无死键)" -Language=hu -Label="hu (101_qwertz_dot_nodead)" - -[keyboard-hu-101_qwerty_comma_dead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY,101 键,逗号,死键)" -Language=hu -Label="hu (101_qwerty_comma_dead)" - -[keyboard-hu-101_qwerty_comma_nodead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY,101 键,逗号,无死键)" -Language=hu -Label="hu (101_qwerty_comma_nodead)" - -[keyboard-hu-101_qwerty_dot_dead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY,101 键,点,死键)" -Language=hu -Label="hu (101_qwerty_dot_dead)" - -[keyboard-hu-101_qwerty_dot_nodead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY,101 键,点,无死键)" -Language=hu -Label="hu (101_qwerty_dot_nodead)" - -[keyboard-hu-102_qwertz_comma_dead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTZ,102 键,逗号,死键)" -Language=hu -Label="hu (102_qwertz_comma_dead)" - -[keyboard-hu-102_qwertz_comma_nodead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTZ,102 键,逗号,无死键)" -Language=hu -Label="hu (102_qwertz_comma_nodead)" - -[keyboard-hu-102_qwertz_dot_dead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTZ,102 键,点,死键)" -Language=hu -Label="hu (102_qwertz_dot_dead)" - -[keyboard-hu-102_qwertz_dot_nodead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTZ,102 键,点,无死键)" -Language=hu -Label="hu (102_qwertz_dot_nodead)" - -[keyboard-hu-102_qwerty_comma_dead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY,102 键,逗号,死键)" -Language=hu -Label="hu (102_qwerty_comma_dead)" - -[keyboard-hu-102_qwerty_comma_nodead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY,102 键,逗号,无死键)" -Language=hu -Label="hu (102_qwerty_comma_nodead)" - -[keyboard-hu-102_qwerty_dot_dead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY,102 键,点,死键)" -Language=hu -Label="hu (102_qwerty_dot_dead)" - -[keyboard-hu-102_qwerty_dot_nodead] -Description="键盘 - 匈牙利语 - 匈牙利语(QWERTY,102 键,点,无死键)" -Language=hu -Label="hu (102_qwerty_dot_nodead)" - -[keyboard-hu-oldhunlig] -Description="键盘 - 匈牙利语 - 古匈牙利语(含连字)" -Language=hu -Label="oldhun(lig) (oldhunlig)" - -[keyboard-hu-oldhun_sk_sh] -Description="键盘 - 匈牙利语 - 古匈牙利语(喀尔巴阡高地,S 作为 Sh)" -Language=hu -Label="oldhun(SK,Sh) (oldhun_sk_sh)" - -[keyboard-hu-oldhun_sk_sz] -Description="键盘 - 匈牙利语 - 古匈牙利语(喀尔巴阡高地,S 作为 Sz)" -Language=hu -Label="oldhun(SK,Sz) (oldhun_sk_sz)" - -[keyboard-hu-us] -Description="键盘 - 匈牙利语 - 匈牙利语(美国)" -Language=hu -Label=us - -[keyboard-ng] -Description="键盘 - 英语(尼日利亚)" -Language=en -Label=en - -[keyboard-ng-hausa] -Description="键盘 - 英语(尼日利亚) - 豪萨语(尼日利亚)" -Language=ha -Label="ha (hausa)" - -[keyboard-ng-igbo] -Description="键盘 - 英语(尼日利亚) - 伊博语" -Language=ig -Label="ig (igbo)" - -[keyboard-ng-yoruba] -Description="键盘 - 英语(尼日利亚) - 约鲁巴语" -Language=yo -Label="yo (yoruba)" - -[keyboard-is] -Description="键盘 - 冰岛语" -Language=is -Label=is - -[keyboard-is-mac_legacy] -Description="键盘 - 冰岛语 - 冰岛语(Macintosh,传统)" -Language=is -Label="is (mac_legacy)" - -[keyboard-is-mac] -Description="键盘 - 冰岛语 - 冰岛语(Macintosh)" -Language=is -Label="is (mac)" - -[keyboard-is-dvorak] -Description="键盘 - 冰岛语 - 冰岛语(Dvorak)" -Language=is -Label="is (dvorak)" - -[keyboard-in] -Description="键盘 - 印度语言" -Language=hi -Label=in - -[keyboard-in-asm-kagapa] -Description="键盘 - 印度语言 - 阿萨姆语(KaGaPa,语音助记)" -Language=as -Label="as (asm-kagapa)" - -[keyboard-in-ben] -Description="键盘 - 印度语言 - 孟加拉语(印度)" -Language=bn -Label="bn (ben)" - -[keyboard-in-ben_probhat] -Description="键盘 - 印度语言 - 孟加拉语(印度,Probhat)" -Language=bn -Label="bn (ben_probhat)" - -[keyboard-in-ben_baishakhi] -Description="键盘 - 印度语言 - 孟加拉语(印度,Baishakhi)" -Language=bn -Label="in (ben_baishakhi)" - -[keyboard-in-ben_bornona] -Description="键盘 - 印度语言 - 孟加拉语(印度,Bornona)" -Language=bn -Label="in (ben_bornona)" - -[keyboard-in-ben-kagapa] -Description="键盘 - 印度语言 - 孟加拉语(印度,KaGaPa,语音助记)" -Language=bn -Label="in (ben-kagapa)" - -[keyboard-in-ben_gitanjali] -Description="键盘 - 印度语言 - 孟加拉语(印度,Gitanjali)" -Language=bn -Label="in (ben_gitanjali)" - -[keyboard-in-ben_inscript] -Description="键盘 - 印度语言 - 孟加拉语(印度,Baishakhi InScript)" -Language=bn -Label="in (ben_inscript)" - -[keyboard-in-eng] -Description="键盘 - 印度语言 - 英语(印度,带卢比符号)" -Language=en -Label="en (eng)" - -[keyboard-in-guj] -Description="键盘 - 印度语言 - 古吉拉特语" -Language=gu -Label="gu (guj)" - -[keyboard-in-guj-kagapa] -Description="键盘 - 印度语言 - 古吉拉特语(KaGaPa,语音助记)" -Language=gu -Label="gu (guj-kagapa)" - -[keyboard-in-bolnagri] -Description="键盘 - 印度语言 - 印地语(Bolnagri)" -Language=hi -Label="hi (bolnagri)" - -[keyboard-in-hin-wx] -Description="键盘 - 印度语言 - 印地语(Wx)" -Language=hi -Label="hi (hin-wx)" - -[keyboard-in-hin-kagapa] -Description="键盘 - 印度语言 - 印地语(KaGaPa,语音助记)" -Language=hi -Label="hi (hin-kagapa)" - -[keyboard-in-kan] -Description="键盘 - 印度语言 - 卡纳达语" -Language=kn -Label="kn (kan)" - -[keyboard-in-kan-kagapa] -Description="键盘 - 印度语言 - 卡纳达语(KaGaPa,语音助记)" -Language=kn -Label="kn (kan-kagapa)" - -[keyboard-in-mal] -Description="键盘 - 印度语言 - 马拉雅拉姆语" -Language=ml -Label="ml (mal)" - -[keyboard-in-mal_lalitha] -Description="键盘 - 印度语言 - 马拉雅拉姆语(Lalitha)" -Language=ml -Label="ml (mal_lalitha)" - -[keyboard-in-mal_enhanced] -Description="键盘 - 印度语言 - 马拉雅拉姆语(改进的 InScript,带卢比符号)" -Language=ml -Label="ml (mal_enhanced)" - -[keyboard-in-mal_poorna] -Description="键盘 - 印度语言 - 马拉雅拉姆语(Poorna,扩展 InScript)" -Language=ml -Label="ml (mal_poorna)" - -[keyboard-in-mni] -Description="键盘 - 印度语言 - 曼尼普尔语(梅泰)" -Language=mni -Label="in (mni)" - -[keyboard-in-mar-kagapa] -Description="键盘 - 印度语言 - 马拉地语(KaGaPa,语音助记)" -Language=mr -Label="mr (mar-kagapa)" - -[keyboard-in-marathi] -Description="键盘 - 印度语言 - 马拉地语(改进的 InScript)" -Language=mr -Label="in (marathi)" - -[keyboard-in-ori] -Description="键盘 - 印度语言 - 奥里亚语" -Language=or -Label="or (ori)" - -[keyboard-in-ori-bolnagri] -Description="键盘 - 印度语言 - 奥里亚语(Bolnagri)" -Language=or -Label="or (ori-bolnagri)" - -[keyboard-in-ori-wx] -Description="键盘 - 印度语言 - 奥里亚语(Wx)" -Language=or -Label="or (ori-wx)" - -[keyboard-in-guru] -Description="键盘 - 印度语言 - 旁遮普语(Gurmukhi)" -Language=pa -Label="pa (guru)" - -[keyboard-in-jhelum] -Description="键盘 - 印度语言 - 旁遮普语(Gurmukhi Jhelum)" -Language=pa -Label="pa (jhelum)" - -[keyboard-in-san-kagapa] -Description="键盘 - 印度语言 - 梵语(KaGaPa,语音助记)" -Language=sa -Label="sa (san-kagapa)" - -[keyboard-in-sat] -Description="键盘 - 印度语言 - 桑塔利语(桑塔利文)" -Language=sat -Label=sat - -[keyboard-in-tamilnet] -Description="键盘 - 印度语言 - 泰米尔语(TamilNet '99)" -Language=ta -Label="ta (tamilnet)" - -[keyboard-in-tamilnet_tamilnumbers] -Description="键盘 - 印度语言 - 泰米尔语(TamilNet '99,带泰米尔数字)" -Language=ta -Label="ta (tamilnet_tamilnumbers)" - -[keyboard-in-tamilnet_TAB] -Description="键盘 - 印度语言 - 泰米尔语(TamilNet '99,TAB 编码)" -Language=ta -Label="ta (tamilnet_TAB)" - -[keyboard-in-tamilnet_TSCII] -Description="键盘 - 印度语言 - 泰米尔语(TamilNet '99,TSCII 编码)" -Language=ta -Label="ta (tamilnet_TSCII)" - -[keyboard-in-tam] -Description="键盘 - 印度语言 - 泰米尔语(InScript,带阿拉伯数字)" -Language=ta -Label="ta (tam)" - -[keyboard-in-tam_tamilnumbers] -Description="键盘 - 印度语言 - 泰米尔语(InScript,带泰米尔数字)" -Language=ta -Label="ta (tam_tamilnumbers)" - -[keyboard-in-tel] -Description="键盘 - 印度语言 - 泰卢固语" -Language=te -Label="te (tel)" - -[keyboard-in-tel-kagapa] -Description="键盘 - 印度语言 - 泰卢固语(KaGaPa,语音助记)" -Language=te -Label="te (tel-kagapa)" - -[keyboard-in-tel-sarala] -Description="键盘 - 印度语言 - 泰卢固语(Sarala)" -Language=te -Label="te (tel-sarala)" - -[keyboard-in-urd-phonetic] -Description="键盘 - 印度语言 - 乌尔都语(语音助记)" -Language=ur -Label="ur (urd-phonetic)" - -[keyboard-in-urd-phonetic3] -Description="键盘 - 印度语言 - 乌尔都语(替代,语音助记)" -Language=ur -Label="ur (urd-phonetic3)" - -[keyboard-in-urd-winkeys] -Description="键盘 - 印度语言 - 乌尔都语(Windows)" -Language=ur -Label="ur (urd-winkeys)" - -[keyboard-in-iipa] -Description="键盘 - 印度语言 - 印度语支 IPA" -Language=en -Label="in (iipa)" - -[keyboard-in-modi-kagapa] -Description="键盘 - 印度语言 - Modi(KaGaPa,语音助记)" -Language=mr -Label="mr (modi-kagapa)" - -[keyboard-in-san-misc] -Description="键盘 - 印度语言 - 梵文符号" -Language=sa -Label="sas (san-misc)" - -[keyboard-in-urd-navees] -Description="键盘 - 印度语言 - 乌尔都语(Navees)" -Language=ur -Label="ur (urd-navees)" - -[keyboard-it] -Description="键盘 - 意大利语" -Language=it -Label=it - -[keyboard-it-nodeadkeys] -Description="键盘 - 意大利语 - 意大利语(无死键)" -Language=it -Label="it (nodeadkeys)" - -[keyboard-it-winkeys] -Description="键盘 - 意大利语 - 意大利语(Windows)" -Language=it -Label="it (winkeys)" - -[keyboard-it-mac] -Description="键盘 - 意大利语 - 意大利语(Macintosh)" -Language=it -Label="it (mac)" - -[keyboard-it-us] -Description="键盘 - 意大利语 - 意大利语(美国)" -Language=it -Label="it (us)" - -[keyboard-it-ibm] -Description="键盘 - 意大利语 - 意大利语(IBM 142)" -Language=it -Label="it (ibm)" - -[keyboard-it-fur] -Description="键盘 - 意大利语 - 弗留利语(意大利)" -Language=fur -Label="it (fur)" - -[keyboard-it-scn] -Description="键盘 - 意大利语 - 西西里语" -Language=it -Label="it (scn)" - -[keyboard-it-geo] -Description="键盘 - 意大利语 - 格鲁吉亚语(意大利)" -Language=ka -Label="it (geo)" - -[keyboard-it-sun_type6] -Description="键盘 - 意大利语 - 意大利语(Sun Type 6/7)" -Language=it -Label="it (sun_type6)" - -[keyboard-it-lld] -Description="键盘 - 意大利语 - 拉丁语(意大利语键盘)" -Language=it -Label="it_lld (lld)" - -[keyboard-it-lldde] -Description="键盘 - 意大利语 - 拉丁语(德语键盘)" -Language=de -Label="de_lld (lldde)" - -[keyboard-it-dvorak] -Description="键盘 - 意大利语 - 意大利语(Dvorak)" -Language=it -Label="it (dvorak)" - -[keyboard-jp] -Description="键盘 - 日语" -Language=ja -Label=ja - -[keyboard-jp-kana] -Description="键盘 - 日语 - 日语(Kana)" -Language=ja -Label="jp (kana)" - -[keyboard-jp-kana86] -Description="键盘 - 日语 - 日语(Kana 86)" -Language=ja -Label="jp (kana86)" - -[keyboard-jp-OADG109A] -Description="键盘 - 日语 - 日语(OADG 109A)" -Language=ja -Label="jp (OADG109A)" - -[keyboard-jp-mac] -Description="键盘 - 日语 - 日语(Macintosh)" -Language=ja -Label="jp (mac)" - -[keyboard-jp-dvorak] -Description="键盘 - 日语 - 日语(Dvorak)" -Language=ja -Label="jp (dvorak)" - -[keyboard-jp-sun_type6] -Description="键盘 - 日语 - 日语(Sun Type 6)" -Language=ja -Label="jp (sun_type6)" - -[keyboard-jp-sun_type7] -Description="键盘 - 日语 - 日语(Sun Type 7,PC 兼容)" -Language=ja -Label="jp (sun_type7)" - -[keyboard-jp-sun_type7_suncompat] -Description="键盘 - 日语 - 日语(Sun Type 7,Sun 兼容)" -Language=ja -Label="jp (sun_type7_suncompat)" - diff --git a/platforms/linux/fcitx5/conf/notifications.conf b/platforms/linux/fcitx5/conf/notifications.conf deleted file mode 100644 index 04957ce..0000000 --- a/platforms/linux/fcitx5/conf/notifications.conf +++ /dev/null @@ -1,3 +0,0 @@ -# 隐藏通知 -HiddenNotifications= - From f9b716c07d57c91f6cc792a3e3d8f09a2f26cbcf Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 14:23:32 +0100 Subject: [PATCH 09/48] chezmoi: fastfetch, keyd, mako, neovide --- .../fastfetch/config.jsonc | 0 dot_config/keyd/app.conf | 19 + .../mako-config => dot_config/mako/config | 0 .../neovide/config.toml | 0 platforms/linux/kde/dolphinrc | 17 - platforms/linux/kde/kglobalshortcutsrc | 370 ------------------ platforms/linux/keyd/app.conf | 19 - 7 files changed, 19 insertions(+), 406 deletions(-) rename platforms/linux/fastfetch.jsonc => dot_config/fastfetch/config.jsonc (100%) create mode 100644 dot_config/keyd/app.conf rename platforms/linux/mako-config => dot_config/mako/config (100%) rename platforms/linux/neovide.toml => dot_config/neovide/config.toml (100%) delete mode 100644 platforms/linux/kde/dolphinrc delete mode 100644 platforms/linux/kde/kglobalshortcutsrc delete mode 100644 platforms/linux/keyd/app.conf diff --git a/platforms/linux/fastfetch.jsonc b/dot_config/fastfetch/config.jsonc similarity index 100% rename from platforms/linux/fastfetch.jsonc rename to dot_config/fastfetch/config.jsonc diff --git a/dot_config/keyd/app.conf b/dot_config/keyd/app.conf new file mode 100644 index 0000000..ebbba44 --- /dev/null +++ b/dot_config/keyd/app.conf @@ -0,0 +1,19 @@ +[org-telegram-desktop] + +alt.j = macro(C-tab) +alt.k = C-S-tab + +[wechat] + +alt.j = A-down +alt.k = A-up + +[qq] +alt.j = C-down +alt.k = C-up +alt.h = C-left +alt.l = enter + +[zotero] +alt.j = pagedown +alt.k = pageup diff --git a/platforms/linux/mako-config b/dot_config/mako/config similarity index 100% rename from platforms/linux/mako-config rename to dot_config/mako/config diff --git a/platforms/linux/neovide.toml b/dot_config/neovide/config.toml similarity index 100% rename from platforms/linux/neovide.toml rename to dot_config/neovide/config.toml diff --git a/platforms/linux/kde/dolphinrc b/platforms/linux/kde/dolphinrc deleted file mode 100644 index 549922b..0000000 --- a/platforms/linux/kde/dolphinrc +++ /dev/null @@ -1,17 +0,0 @@ -[General] -UseTabForSwitchingSplitView=true -Version=202 -ViewPropsTimestamp=2024,12,10,0,19,35.931 - -[IconsMode] -PreviewSize=96 - -[KFileDialog Settings] -Places Icons Auto-resize=false -Places Icons Static Size=22 - -[MainWindow] -MenuBar=Disabled - -[PreviewSettings] -Plugins=appimagethumbnail,audiothumbnail,avif,blenderthumbnail,comicbookthumbnail,cursorthumbnail,djvuthumbnail,ebookthumbnail,exrthumbnail,directorythumbnail,fontthumbnail,heif,imagethumbnail,jpegthumbnail,jxl,kraorathumbnail,windowsexethumbnail,windowsimagethumbnail,mobithumbnail,opendocumentthumbnail,gsthumbnail,rawthumbnail,svgthumbnail,textthumbnail,ffmpegthumbs,gdk-pixbuf-thumbnailer diff --git a/platforms/linux/kde/kglobalshortcutsrc b/platforms/linux/kde/kglobalshortcutsrc deleted file mode 100644 index 5b71dd4..0000000 --- a/platforms/linux/kde/kglobalshortcutsrc +++ /dev/null @@ -1,370 +0,0 @@ -[ActivityManager] -_k_friendly_name=活动管理器 -switch-to-activity-32e1f2d2-08d1-4a8b-886a-0a062f999068=none,none,Switch to activity "Default" -switch-to-activity-aaa04f56-3c39-49fa-9501-5c8259703f5d=none,none,切换到活动“Default” -switch-to-activity-e1ebfdac-0f52-47a5-9e7a-d9eb5cc26845=none,none,切换到活动“默认” - -[Clementine] -_k_friendly_name=Clementine -next_album=Shift+Media Next,none,Next album -next_track=none,none,下一个曲目 -play_pause=none,none,播放/暂停 -prev_track=none,none,上一个曲目 -stop=none,none,停止 - -[KDE Keyboard Layout Switcher] -Switch keyboard layout to English (Colemak)=none,none,Switch keyboard layout to English (Colemak) -Switch keyboard layout to English (US)=none,none,Switch keyboard layout to English (US) -Switch keyboard layout to 英语(美国)=none,none,切换键盘布局为 英语(美国) -Switch to Last-Used Keyboard Layout=none,Meta+Alt+L,切换到上次使用过的键盘布局 -Switch to Next Keyboard Layout=none,Meta+Alt+K,切换到下一个键盘布局 -_k_friendly_name=键盘布局切换器 - -[Strawberry] -_k_friendly_name=Strawberry -next_track=none,none,Next track -play_pause=none,none,Play/Pause -prev_track=none,none,Previous track -stop=none,none,Stop - -[com.cherry_ai.CherryStudio] -250B4E85839469FB2F043223FDE723A6-=none,none,Electron shortcut\s -34632A7E4E36B0F89F4896EF7E497371-Ctrl+0=none,none,Electron shortcut Ctrl+0 -F463CBEE0FC54C087663DA86F622941A-Alt+Shift+J=none,none,Electron shortcut Alt+Shift+J -_k_friendly_name=Cherry Studio - -[com.google.Chrome] -0EA0B820623139BF0D767EA8C956347E-addSite=none,none,切换当前网站 -0EA0B820623139BF0D767EA8C956347E-switchEngine=none,none,主题生成模式 -0EA0B820623139BF0D767EA8C956347E-toggle=none,none,切换扩展 -_k_friendly_name=Google Chrome - -[kaccess] -Toggle Screen Reader On and Off=Meta+Alt+S,Meta+Alt+S,切换屏幕阅读器开关 -_k_friendly_name=无障碍辅助 - -[kmix] -_k_friendly_name=音量 -decrease_microphone_volume=Microphone Volume Down,Microphone Volume Down,降低麦克风音量 -decrease_volume=Volume Down,Volume Down,降低音量 -decrease_volume_small=Shift+Volume Down,Shift+Volume Down,音量降低 1% -increase_microphone_volume=Microphone Volume Up,Microphone Volume Up,提高麦克风音量 -increase_volume=Volume Up,Volume Up,提高音量 -increase_volume_small=Shift+Volume Up,Shift+Volume Up,音量提高 1% -mic_mute=Microphone Mute\tMeta+Volume Mute,Microphone Mute\tMeta+Volume Mute,麦克风静音 -mute=Volume Mute,Volume Mute,静音 - -[krusader] -_k_friendly_name=Krusader -bring_main_window_to_top=none,Meta+K,Bring Main Window to Top - -[ksmserver] -Halt Without Confirmation=none,,关机 (无需确认) -Lock Session=Screensaver,Meta+L\tScreensaver,锁定会话 -Log Out=Ctrl+Alt+Del,Ctrl+Alt+Del,显示注销屏幕 -Log Out Without Confirmation=none,,注销 (无需确认) -LogOut=none,,注销 -Reboot=none,,重启 -Reboot Without Confirmation=none,,重启 (无需确认) -Shut Down=none,,关机 -_k_friendly_name=会话管理 - -[ktorrent] -_k_friendly_name=KTorrent -queue_suspend=Alt+Shift+P,Alt+Shift+P,暂停种子 -show_kt=Alt+Shift+T,Alt+Shift+T,显示/隐藏 KTorrent - -[kwin] -Activate Window Demanding Attention=Meta+Ctrl+A,Meta+Ctrl+A,激活请求注意的窗口 -Cycle Overview=none,none,循环显示桌面概览和网格视图 -Cycle Overview Opposite=none,none,循环显示网格视图和桌面概览 -Decrease Opacity=none,,降低活动窗口不透明度 5% -Edit Tiles=Meta+T,Meta+T,磁贴编辑器开关 -Expose=Ctrl+F9,Ctrl+F9,显示/隐藏窗口平铺 (当前桌面) -ExposeAll=Ctrl+F10\tLaunch (C),Ctrl+F10\tLaunch (C),显示/隐藏窗口平铺 (全部桌面) -ExposeClass=Ctrl+F7,Ctrl+F7,显示/隐藏窗口平铺 (窗口类) -ExposeClassCurrentDesktop=none,none,显示/隐藏窗口平铺 (当前桌面的窗口类) -Grid View=Meta+G,Meta+G,切换网格视图 -Increase Opacity=none,,提高活动窗口不透明度 5% -Kill Window=Meta+Ctrl+Esc,Meta+Ctrl+Esc,强制终止窗口 -KrohnkiteBTreeLayout=Meta+X,none,Krohnkite: BTree Layout -KrohnkiteColumnsLayout=none,none,Krohnkite: Columns Layout -KrohnkiteDecrease=none,none,Krohnkite: Decrease -KrohnkiteFloatAll=none,none,Krohnkite: Toggle Float All -KrohnkiteFloatingLayout=none,none,Krohnkite: Floating Layout -KrohnkiteFocusDown=Meta+J,none,Krohnkite: Focus Down -KrohnkiteFocusLeft=Meta+H,none,Krohnkite: Focus Left -KrohnkiteFocusNext=none,none,Krohnkite: Focus Next -KrohnkiteFocusPrev=Meta+\\,,none,Krohnkite: Focus Previous -KrohnkiteFocusRight=none,none,Krohnkite: Focus Right -KrohnkiteFocusUp=none,none,Krohnkite: Focus Up -KrohnkiteGrowHeight=none,none,Krohnkite: Grow Height -KrohnkiteIncrease=none,none,Krohnkite: Increase -KrohnkiteMonocleLayout=none,none,Krohnkite: Monocle Layout -KrohnkiteNextLayout=Meta+\\\\,none,Krohnkite: Next Layout -KrohnkitePreviousLayout=Meta+|,none,Krohnkite: Previous Layout -KrohnkiteQuarterLayout=none,none,Krohnkite: Quarter Layout -KrohnkiteRotate=Meta+Y,none,Krohnkite: Rotate -KrohnkiteRotatePart=none,none,Krohnkite: Rotate Part -KrohnkiteSetMaster=Meta+Return,none,Krohnkite: Set master -KrohnkiteShiftDown=none,none,Krohnkite: Move Down/Next -KrohnkiteShiftLeft=Meta+Shift+H,none,Krohnkite: Move Left -KrohnkiteShiftRight=Meta+Shift+L,none,Krohnkite: Move Right -KrohnkiteShiftUp=none,none,Krohnkite: Move Up/Prev -KrohnkiteShrinkHeight=Meta+Ctrl+K,none,Krohnkite: Shrink Height -KrohnkiteShrinkWidth=Meta+Ctrl+H,none,Krohnkite: Shrink Width -KrohnkiteSpiralLayout=none,none,Krohnkite: Spiral Layout -KrohnkiteSpreadLayout=none,none,Krohnkite: Spread Layout -KrohnkiteStackedLayout=none,none,Krohnkite: Stacked Layout -KrohnkiteStairLayout=none,none,Krohnkite: Stair Layout -KrohnkiteTileLayout=none,none,Krohnkite: Tile Layout -KrohnkiteToggleFloat=Meta+Shift+F,none,Krohnkite: Toggle Float -KrohnkiteTreeColumnLayout=none,none,Krohnkite: Three Column Layout -KrohnkitegrowWidth=Meta+Ctrl+J,none,Krohnkite: Grow Width -KrohnkitetoggleDock=none,none,Krohnkite: Toggle Dock -Move Tablet to Next Output=none,none,移动数位板到下一个输出设备 -MoveMouseToCenter=Meta+F6,Meta+F6,移动鼠标到中央 -MoveMouseToFocus=Meta+F5,Meta+F5,移动鼠标到焦点 -MoveZoomDown=none,none,将缩放区域向下移动 -MoveZoomLeft=none,none,将缩放区域向左移动 -MoveZoomRight=none,none,将缩放区域向右移动 -MoveZoomUp=none,none,将缩放区域向上移动 -Overview=Meta+Tab\tMeta+W,Meta+W,显示/隐藏桌面总览 -Setup Window Shortcut=none,,设置窗口快捷键 -Show Desktop=Meta+D,Meta+D,暂时显示桌面 -Switch One Desktop Down=Meta+Ctrl+Down,Meta+Ctrl+Down,切换到下方桌面 -Switch One Desktop Up=Meta+Ctrl+Up,Meta+Ctrl+Up,切换到上方桌面 -Switch One Desktop to the Left=Meta+Ctrl+Left,Meta+Ctrl+Left,切换到左侧桌面 -Switch One Desktop to the Right=Meta+Ctrl+Right,Meta+Ctrl+Right,切换到右侧桌面 -Switch Window Down=Meta+Alt+Down,Meta+Alt+Down,切换到下面的窗口 -Switch Window Left=Meta+Alt+Left,Meta+Alt+Left,切换到左侧的窗口 -Switch Window Right=Meta+Alt+Right,Meta+Alt+Right,切换到右侧的窗口 -Switch Window Up=Meta+Alt+Up,Meta+Alt+Up,切换到上面的窗口 -Switch to Desktop 1=Meta+1,Ctrl+F1,切换到桌面 1 -Switch to Desktop 10=none,,切换到桌面 10 -Switch to Desktop 11=none,,切换到桌面 11 -Switch to Desktop 12=none,,切换到桌面 12 -Switch to Desktop 13=none,,切换到桌面 13 -Switch to Desktop 14=none,,切换到桌面 14 -Switch to Desktop 15=none,,切换到桌面 15 -Switch to Desktop 16=none,,切换到桌面 16 -Switch to Desktop 17=none,,切换到桌面 17 -Switch to Desktop 18=none,,切换到桌面 18 -Switch to Desktop 19=none,,切换到桌面 19 -Switch to Desktop 2=Meta+2,Ctrl+F2,切换到桌面 2 -Switch to Desktop 20=none,,切换到桌面 20 -Switch to Desktop 3=Meta+3,Ctrl+F3,切换到桌面 3 -Switch to Desktop 4=Meta+4,Ctrl+F4,切换到桌面 4 -Switch to Desktop 5=Meta+5,,切换到桌面 5 -Switch to Desktop 6=Meta+6,,切换到桌面 6 -Switch to Desktop 7=Meta+7,,切换到桌面 7 -Switch to Desktop 8=Meta+8,,切换到桌面 8 -Switch to Desktop 9=Meta+9,,切换到桌面 9 -Switch to Next Desktop=none,,切换到下一桌面 -Switch to Next Screen=none,,切换到下一屏幕 -Switch to Previous Desktop=none,,切换到上一桌面 -Switch to Previous Screen=none,,切换到上一屏幕 -Switch to Screen 0=none,,切换到屏幕 0 -Switch to Screen 1=none,,切换到屏幕 1 -Switch to Screen 2=none,,切换到屏幕 2 -Switch to Screen 3=none,,切换到屏幕 3 -Switch to Screen 4=none,,切换到屏幕 4 -Switch to Screen 5=none,,切换到屏幕 5 -Switch to Screen 6=none,,切换到屏幕 6 -Switch to Screen 7=none,,切换到屏幕 7 -Switch to Screen Above=none,,切换到上方屏幕 -Switch to Screen Below=none,,切换到下方屏幕 -Switch to Screen to the Left=none,,切换到左侧屏幕 -Switch to Screen to the Right=none,,切换到右侧屏幕 -Toggle Night Color=none,none,暂停/继续夜间色温 -Toggle Window Raise/Lower=none,,提升/降低窗口 -Walk Through Windows=Alt+Tab,Meta+Tab\tAlt+Tab,遍历窗口 -Walk Through Windows (Reverse)=Alt+Shift+Tab,Meta+Shift+Tab\tAlt+Shift+Tab,遍历窗口 (反向) -Walk Through Windows Alternative=none,none,遍历窗口交替 -Walk Through Windows Alternative (Reverse)=none,none,遍历窗口交替 (反向) -Walk Through Windows of Current Application=Alt+`,Meta+`\tAlt+`,遍历当前应用程序窗口 -Walk Through Windows of Current Application (Reverse)=Alt+~,Meta+~\tAlt+~,遍历当前应用程序窗口 (反向) -Walk Through Windows of Current Application Alternative=none,none,遍历当前应用程序窗口交替 -Walk Through Windows of Current Application Alternative (Reverse)=none,none,遍历当前应用程序窗口交替 (反向) -Window Above Other Windows=none,,窗口置顶 -Window Below Other Windows=none,,窗口置底 -Window Close=Alt+F4\tMeta+Q,Alt+F4,关闭窗口 -Window Custom Quick Tile Bottom=none,,自定义快速铺放窗口到下方 -Window Custom Quick Tile Left=none,,自定义快速铺放窗口到左侧 -Window Custom Quick Tile Right=none,,自定义快速铺放窗口到右侧 -Window Custom Quick Tile Top=none,,自定义快速铺放窗口到上方 -Window Fullscreen=none,,全屏显示窗口 -Window Grow Horizontal=none,,水平扩展窗口 -Window Grow Vertical=none,,垂直扩展窗口 -Window Lower=none,,降低窗口 -Window Maximize=Meta+PgUp,Meta+PgUp,最大化窗口 -Window Maximize Horizontal=none,,水平最大化窗口 -Window Maximize Vertical=none,,垂直最大化窗口 -Window Minimize=Meta+PgDown,Meta+PgDown,最小化窗口 -Window Move=none,,移动窗口 -Window Move Center=none,,移动窗口到中央 -Window No Border=none,,显示/隐藏窗口标题栏和框架 -Window On All Desktops=none,,在所有桌面上显示窗口 -Window One Desktop Down=Meta+Ctrl+Shift+Down,Meta+Ctrl+Shift+Down,窗口下移一个桌面 -Window One Desktop Up=Meta+Ctrl+Shift+Up,Meta+Ctrl+Shift+Up,窗口上移一个桌面 -Window One Desktop to the Left=Meta+Ctrl+Shift+Left,Meta+Ctrl+Shift+Left,窗口左移一个桌面 -Window One Desktop to the Right=Meta+Ctrl+Shift+Right,Meta+Ctrl+Shift+Right,窗口右移一个桌面 -Window One Screen Down=none,,移动窗口到下方屏幕 -Window One Screen Up=none,,移动窗口到上方屏幕 -Window One Screen to the Left=none,,移动窗口到左侧屏幕 -Window One Screen to the Right=none,,移动窗口到右侧屏幕 -Window Operations Menu=Alt+F3,Alt+F3,窗口操作菜单 -Window Pack Down=none,,下移窗口 -Window Pack Left=none,,左移窗口 -Window Pack Right=none,,右移窗口 -Window Pack Up=none,,上移窗口 -Window Quick Tile Bottom=Meta+Down,Meta+Down,快速铺放窗口到下方 -Window Quick Tile Bottom Left=none,,快速铺放窗口到左下方 -Window Quick Tile Bottom Right=none,,快速铺放窗口到右下方 -Window Quick Tile Left=Meta+Left,Meta+Left,快速铺放窗口到左侧 -Window Quick Tile Right=Meta+Right,Meta+Right,快速铺放窗口到右侧 -Window Quick Tile Top=Meta+Up,Meta+Up,快速铺放窗口到上方 -Window Quick Tile Top Left=none,,快速铺放窗口到左上方 -Window Quick Tile Top Right=none,,快速铺放窗口到右上方 -Window Raise=none,,提升窗口 -Window Resize=none,,调整窗口大小 -Window Shade=none,,折叠窗口 -Window Shrink Horizontal=none,,水平缩小窗口 -Window Shrink Vertical=none,,垂直缩小窗口 -Window to Desktop 1=none,,窗口移动到桌面 1 -Window to Desktop 10=Meta+),,窗口移动到桌面 10 -Window to Desktop 11=none,,窗口移动到桌面 11 -Window to Desktop 12=none,,窗口移动到桌面 12 -Window to Desktop 13=none,,窗口移动到桌面 13 -Window to Desktop 14=none,,窗口移动到桌面 14 -Window to Desktop 15=none,,窗口移动到桌面 15 -Window to Desktop 16=none,,窗口移动到桌面 16 -Window to Desktop 17=none,,窗口移动到桌面 17 -Window to Desktop 18=none,,窗口移动到桌面 18 -Window to Desktop 19=none,,窗口移动到桌面 19 -Window to Desktop 2=none,,窗口移动到桌面 2 -Window to Desktop 20=none,,窗口移动到桌面 20 -Window to Desktop 3=none,,窗口移动到桌面 3 -Window to Desktop 4=none,,窗口移动到桌面 4 -Window to Desktop 5=Meta+%,,窗口移动到桌面 5 -Window to Desktop 6=Meta+^,,窗口移动到桌面 6 -Window to Desktop 7=Meta+&,,窗口移动到桌面 7 -Window to Desktop 8=Meta+*,,窗口移动到桌面 8 -Window to Desktop 9=Meta+(,,窗口移动到桌面 9 -Window to Next Desktop=none,,窗口移动到下一桌面 -Window to Next Screen=Meta+Shift+Right,Meta+Shift+Right,移动窗口到下一屏幕 -Window to Previous Desktop=none,,窗口移动到上一桌面 -Window to Previous Screen=Meta+Shift+Left,Meta+Shift+Left,移动窗口到上一屏幕 -Window to Screen 0=none,,移动窗口到屏幕 0 -Window to Screen 1=none,,移动窗口到屏幕 1 -Window to Screen 2=none,,移动窗口到屏幕 2 -Window to Screen 3=none,,移动窗口到屏幕 3 -Window to Screen 4=none,,移动窗口到屏幕 4 -Window to Screen 5=none,,移动窗口到屏幕 5 -Window to Screen 6=none,,移动窗口到屏幕 6 -Window to Screen 7=none,,移动窗口到屏幕 7 -_k_friendly_name=KWin -disableInputCapture=Meta+Shift+Esc,Meta+Shift+Esc,禁用活动输入捕获 -view_actual_size=none,Meta+0,缩放为实际大小(A) -view_zoom_in=Meta++\tMeta+=,Meta++\tMeta+=,放大(I) -view_zoom_out=Meta+-,Meta+-,缩小(O) - -[mediacontrol] -_k_friendly_name=媒体控制器 -mediavolumedown=none,,媒体音量降低 -mediavolumeup=none,,媒体音量提高 -nextmedia=Media Next,Media Next,播放下一首媒体 -pausemedia=Media Pause,Media Pause,暂停媒体播放 -playmedia=none,,播放媒体 -playpausemedia=Media Play,Media Play,播放/暂停媒体播放 -previousmedia=Media Previous,Media Previous,播放上一首媒体 -stopmedia=Media Stop,Media Stop,停止媒体播放 - -[org_kde_powerdevil] -Decrease Keyboard Brightness=Keyboard Brightness Down,Keyboard Brightness Down,降低键盘亮度 -Decrease Screen Brightness=Monitor Brightness Down,Monitor Brightness Down,降低屏幕亮度 -Decrease Screen Brightness Small=Shift+Monitor Brightness Down,Shift+Monitor Brightness Down,降低屏幕亮度 1% -Hibernate=Hibernate,Hibernate,休眠 -Increase Keyboard Brightness=Keyboard Brightness Up,Keyboard Brightness Up,提高键盘亮度 -Increase Screen Brightness=Monitor Brightness Up,Monitor Brightness Up,提高屏幕亮度 -Increase Screen Brightness Small=Shift+Monitor Brightness Up,Shift+Monitor Brightness Up,提高屏幕亮度 1% -PowerDown=Power Down,Power Down,断电 -PowerOff=Power Off,Power Off,关机 -Sleep=Sleep,Sleep,挂起 -Toggle Keyboard Backlight=Keyboard Light On/Off,Keyboard Light On/Off,开关键盘背光 -Turn Off Screen=none,none,关闭屏幕 -_k_friendly_name=电源管理 -powerProfile=Battery\tMeta+B,Battery\tMeta+B,切换电源管理方案 - -[plasmashell] -_k_friendly_name=plasmashell -activate application launcher=Meta\tAlt+F1,Meta\tAlt+F1,激活应用程序启动器 -activate task manager entry 1=none,Meta+1,激活任务管理器条目 1 -activate task manager entry 10=none,,激活任务管理器条目 10 -activate task manager entry 2=none,Meta+2,激活任务管理器条目 2 -activate task manager entry 3=none,Meta+3,激活任务管理器条目 3 -activate task manager entry 4=none,Meta+4,激活任务管理器条目 4 -activate task manager entry 5=none,Meta+5,激活任务管理器条目 5 -activate task manager entry 6=none,Meta+6,激活任务管理器条目 6 -activate task manager entry 7=none,Meta+7,激活任务管理器条目 7 -activate task manager entry 8=none,Meta+8,激活任务管理器条目 8 -activate task manager entry 9=none,Meta+9,激活任务管理器条目 9 -activate widget 115=none,none,激活 应用程序启动器 挂件 -activate widget 120=none,none,激活 数字时钟 挂件 -activate widget 3=none,none,Activate Application Launcher Widget -activate widget 31=none,none,激活 应用程序启动器 挂件 -activate widget 42=none,none,激活 图标任务管理器 挂件 -clear-history=none,,清除剪贴板历史(L) -clipboard_action=Meta+Ctrl+X,Meta+Ctrl+X,自动弹出操作菜单 -cycle-panels=Meta+Alt+P,Meta+Alt+P,在面板之间移动键盘焦点 -cycleNextAction=none,,下一条历史记录 -cyclePrevAction=none,,上一条历史记录 -edit_clipboard=none,,编辑内容(E)… -manage activities=none,Meta+Q,显示活动切换器 -next activity=Meta+A,none,遍历活动 -previous activity=Meta+Shift+A,none,遍历活动 (反向) -repeat_action=none,,在当前剪贴板上手动执行操作 -show dashboard=Ctrl+F12,Ctrl+F12,显示桌面 -show-barcode=none,,显示条形码(S)… -show-on-mouse-pos=Meta+V,Meta+V,在鼠标位置显示剪贴板项目 -stop current activity=Meta+S,Meta+S,停止当前活动 -switch to next activity=none,,切换到下一个活动 -switch to previous activity=none,,切换到上一个活动 -toggle do not disturb=none,,切换勿扰模式 - -[services][kitty.desktop] -_launch=Meta+R - -[services][org.kde.konsole.desktop] -_launch=none - -[services][org.kde.krunner.desktop] -_launch=Alt+F2\tSearch\tAlt+Space - -[services][org.kde.kscreen.desktop] -ShowOSD=Display - -[services][org.kde.plasma.emojier.desktop] -_launch=Meta+. - -[services][org.kde.spectacle.desktop] -RecordRegion=Meta+Shift+R -RectangularRegionScreenShot=Meta+C - -[services][org.kde.touchpadshortcuts.desktop] -ToggleTouchpad=Touchpad Toggle\tMeta+Ctrl+Zenkaku Hankaku - -[wacomtablet] -Map to fullscreen=Meta+Ctrl+F,Meta+Ctrl+F,Map to fullscreen -Map to screen 1=Meta+Ctrl+1,Meta+Ctrl+1,Map to screen 1 -Map to screen 2=Meta+Ctrl+2,Meta+Ctrl+2,Map to screen 2 -Next Profile=none,Meta+Ctrl+N,Next profile -Previous Profile=Meta+Ctrl+P,Meta+Ctrl+P,Previous Profile -Toggle screen map selection=Meta+Ctrl+M,Meta+Ctrl+M,Toggle between all screens -Toggle stylus mode=Meta+Ctrl+S,Meta+Ctrl+S,Toggle the Stylus Tool Relative/Absolute -Toggle touch tool=Meta+Ctrl+T,Meta+Ctrl+T,Enable/Disable the Touch Tool -_k_friendly_name=Wacom Tablet - -[yakuake] -_k_friendly_name=Yakuake 下拉式终端 -toggle-window-state=Meta+`,F12,展开/折叠 Yakuake 窗口 diff --git a/platforms/linux/keyd/app.conf b/platforms/linux/keyd/app.conf deleted file mode 100644 index 71baef2..0000000 --- a/platforms/linux/keyd/app.conf +++ /dev/null @@ -1,19 +0,0 @@ -[org-telegram-desktop] - -alt.n = macro(C-tab) -alt.e = C-S-tab - -[wechat] - -alt.n = A-down -alt.e = A-up - -[qq] -alt.n = C-down -alt.e = C-up -alt.h = C-left -alt.i = enter - -[zotero] -alt.n = pagedown -alt.e = pageup From a891f968f8deb9ea35d8826d34239f408e47afe9 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 14:33:09 +0100 Subject: [PATCH 10/48] chezmoi: arch electron flags --- .chezmoiignore | 15 +++++++++++++++ .../linux => dot_config}/chromium-flags.conf | 0 .../linux => dot_config}/electron-flags.conf | 0 {nix => dot_config/nix-config}/flake.lock | 0 {nix => dot_config/nix-config}/flake.nix | 0 .../nix-config}/hosts/macbook/brew.nix | 0 .../nix-config}/hosts/macbook/default.nix | 0 .../nix-config}/hosts/macbook/system.nix | 0 platforms/linux/chromium-flags.hypr.conf | 5 ----- platforms/linux/electron-flags.hypr.conf | 5 ----- 10 files changed, 15 insertions(+), 10 deletions(-) rename {platforms/linux => dot_config}/chromium-flags.conf (100%) rename {platforms/linux => dot_config}/electron-flags.conf (100%) rename {nix => dot_config/nix-config}/flake.lock (100%) rename {nix => dot_config/nix-config}/flake.nix (100%) rename {nix => dot_config/nix-config}/hosts/macbook/brew.nix (100%) rename {nix => dot_config/nix-config}/hosts/macbook/default.nix (100%) rename {nix => dot_config/nix-config}/hosts/macbook/system.nix (100%) delete mode 100644 platforms/linux/chromium-flags.hypr.conf delete mode 100644 platforms/linux/electron-flags.hypr.conf diff --git a/.chezmoiignore b/.chezmoiignore index 753a930..6cf6f39 100644 --- a/.chezmoiignore +++ b/.chezmoiignore @@ -8,6 +8,17 @@ # Linux only {{ if ne .chezmoi.os "linux" -}} dot_config/awesome +dot_config/dunst +dot_config/fcitx5 +dot_config/hypr +dot_config/keyd +dot_config/mako +dot_config/readline +dot_config/rofi +dot_config/swaylock +dot_config/waybar +dot_config/wlogout +dot_config/krunnerrc dot_config/user-dirs.dirs dot_config/user-dirs.locale {{ end -}} @@ -15,3 +26,7 @@ dot_config/user-dirs.locale # Windows only {{ if ne .chezmoi.os "windows" -}} {{ end -}} + +# ArchLinux only +{{ if ne .chezmoi.osRelease.id "arch" -}} +{{ end -}} diff --git a/platforms/linux/chromium-flags.conf b/dot_config/chromium-flags.conf similarity index 100% rename from platforms/linux/chromium-flags.conf rename to dot_config/chromium-flags.conf diff --git a/platforms/linux/electron-flags.conf b/dot_config/electron-flags.conf similarity index 100% rename from platforms/linux/electron-flags.conf rename to dot_config/electron-flags.conf diff --git a/nix/flake.lock b/dot_config/nix-config/flake.lock similarity index 100% rename from nix/flake.lock rename to dot_config/nix-config/flake.lock diff --git a/nix/flake.nix b/dot_config/nix-config/flake.nix similarity index 100% rename from nix/flake.nix rename to dot_config/nix-config/flake.nix diff --git a/nix/hosts/macbook/brew.nix b/dot_config/nix-config/hosts/macbook/brew.nix similarity index 100% rename from nix/hosts/macbook/brew.nix rename to dot_config/nix-config/hosts/macbook/brew.nix diff --git a/nix/hosts/macbook/default.nix b/dot_config/nix-config/hosts/macbook/default.nix similarity index 100% rename from nix/hosts/macbook/default.nix rename to dot_config/nix-config/hosts/macbook/default.nix diff --git a/nix/hosts/macbook/system.nix b/dot_config/nix-config/hosts/macbook/system.nix similarity index 100% rename from nix/hosts/macbook/system.nix rename to dot_config/nix-config/hosts/macbook/system.nix diff --git a/platforms/linux/chromium-flags.hypr.conf b/platforms/linux/chromium-flags.hypr.conf deleted file mode 100644 index 60a9ab2..0000000 --- a/platforms/linux/chromium-flags.hypr.conf +++ /dev/null @@ -1,5 +0,0 @@ ---UseOzonePlatform=wayland ---ozone-platform=wayland ---password-store=kwallet6 ---enable-wayland-ime ---force-device-scale-factor=1.75 diff --git a/platforms/linux/electron-flags.hypr.conf b/platforms/linux/electron-flags.hypr.conf deleted file mode 100644 index 312f3e6..0000000 --- a/platforms/linux/electron-flags.hypr.conf +++ /dev/null @@ -1,5 +0,0 @@ ---enable-features=WaylandWindowDecorations ---enable-features=UseOzonePlatform ---ozone-platform-hint=auto ---enable-wayland-ime ---force-device-scale-factor=1.75 From b391e03c87b13627a6bcb459e452c6b60d3184da Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 14:40:01 +0100 Subject: [PATCH 11/48] chezmoi: systemd --- .chezmoiignore | 2 ++ .../systemd/user/emacs-daemon.service | 0 .../systemd/user/keyd-app.service | 0 dot_config/systemd/user/mihomo.service | 27 +++++++++++++++++++ dot_config/zsh/dot_zshrc | 15 ++++++++--- platforms/linux/zshrc | 12 --------- platforms/mac/zshrc | 19 ------------- platforms/wsl/zshrc | 22 --------------- {platforms/linux => tools}/keyd/default.conf | 0 9 files changed, 40 insertions(+), 57 deletions(-) rename {platforms/linux => dot_config}/systemd/user/emacs-daemon.service (100%) rename {platforms/linux => dot_config}/systemd/user/keyd-app.service (100%) create mode 100644 dot_config/systemd/user/mihomo.service delete mode 100644 platforms/linux/zshrc rename {platforms/linux => tools}/keyd/default.conf (100%) diff --git a/.chezmoiignore b/.chezmoiignore index 6cf6f39..0e17f10 100644 --- a/.chezmoiignore +++ b/.chezmoiignore @@ -29,4 +29,6 @@ dot_config/user-dirs.locale # ArchLinux only {{ if ne .chezmoi.osRelease.id "arch" -}} +chromium-flags.conf +electron-flags.conf {{ end -}} diff --git a/platforms/linux/systemd/user/emacs-daemon.service b/dot_config/systemd/user/emacs-daemon.service similarity index 100% rename from platforms/linux/systemd/user/emacs-daemon.service rename to dot_config/systemd/user/emacs-daemon.service diff --git a/platforms/linux/systemd/user/keyd-app.service b/dot_config/systemd/user/keyd-app.service similarity index 100% rename from platforms/linux/systemd/user/keyd-app.service rename to dot_config/systemd/user/keyd-app.service diff --git a/dot_config/systemd/user/mihomo.service b/dot_config/systemd/user/mihomo.service new file mode 100644 index 0000000..1dc1a0e --- /dev/null +++ b/dot_config/systemd/user/mihomo.service @@ -0,0 +1,27 @@ +# ~/.config/systemd/user/mihomo.service + +[Unit] +Description=mihomo Service +# This ensures the service only starts after your network is online. +After=network-online.target +Wants=network-online.target + +[Service] +# The main process to run. +# The WorkingDirectory is set to your user's home directory. +# This assumes your mihomo configuration is located at ~/.config/mihomo/ +WorkingDirectory=%h/.config/mihomo +# It's common for user-level applications to be in a directory like ~/.local/bin +# or simply in your PATH. +ExecStart=mihomo + +# This tells systemd to restart the service if it stops unexpectedly. +Restart=on-failure +# This sets the restart interval to 5 seconds. +RestartSec=5s + +[Install] +# This unit should be active when the user's session is active, +# ensuring it starts when you log in. +WantedBy=default.target + diff --git a/dot_config/zsh/dot_zshrc b/dot_config/zsh/dot_zshrc index d3451c6..c004101 100644 --- a/dot_config/zsh/dot_zshrc +++ b/dot_config/zsh/dot_zshrc @@ -1,4 +1,5 @@ # $DOTFILES/tools/zsh/common.zshrc +# vim:ft=zsh # Date: 2024-11-30 # Author: js0ny # This is the entry point for all zsh configuration files @@ -14,15 +15,22 @@ case "$(uname)" in Linux) if grep -q Microsoft /proc/version || [[ -n "$WSL_DISTRO_NAME" ]]; then # WSL-specific configuration - source "$DOTFILES/platforms/wsl/zshrc" + export IS_WSL=true + source $DOTFILES/platforms/wsl/winterop.zsh else # Native Linux configuration - source "$DOTFILES/platforms/linux/zshrc" + if [ -n "$WAYLAND_DISPLAY" ]; then + alias clip="wl-copy" + alias paste="wl-paste" + elif [ -n "$DISPLAY" ]; then + alias clip="xclip" + fi fi ;; Darwin) # macOS-specific configuration - source "$DOTFILES/platforms/mac/zshrc" + alias clip="pbcopy" + alias paste="pbpaste" ;; # CYGWIN*|MINGW*|MSYS*) # source "$DOTFILES/platform/wsl.zsh" @@ -34,4 +42,3 @@ for file in $DOTFILES/tools/zsh/mod/*.zsh; do done [ -f "/home/js0ny/.local/share/ghcup/env" ] && . "/home/js0ny/.local/share/ghcup/env" # ghcup-env -. "/home/js0ny/.deno/env" \ No newline at end of file diff --git a/platforms/linux/zshrc b/platforms/linux/zshrc deleted file mode 100644 index 6578292..0000000 --- a/platforms/linux/zshrc +++ /dev/null @@ -1,12 +0,0 @@ -# $DOTFILES/platforms/linux/zshrc -# Date: 2024-12-22 -# Author: js0ny -# Sourced by user's zshrc if is Linux 在用户的 zshrc 中被引用 -# Entry point in $DOTFILES/tools/zsh/common.zshrc (入口点) - -if [ -n "$WAYLAND_DISPLAY" ]; then - alias clip="wl-copy" - alias paste="wl-paste" -elif [ -n "$DISPLAY" ]; then - alias clip="xclip" -fi diff --git a/platforms/mac/zshrc b/platforms/mac/zshrc index 5439ba3..7fbe8a6 100644 --- a/platforms/mac/zshrc +++ b/platforms/mac/zshrc @@ -6,22 +6,3 @@ # macOS # -alias clip="pbcopy" -alias paste="pbpaste" - -# >>> conda initialize >>> -# !! Contents within this block are managed by 'conda init' !! -__conda_setup="$('/opt/homebrew/Caskroom/miniconda/base/bin/conda' 'shell.zsh' 'hook' 2>/dev/null)" -if [ $? -eq 0 ]; then - eval "$__conda_setup" -else - if [ -f "/opt/homebrew/Caskroom/miniconda/base/etc/profile.d/conda.sh" ]; then - . "/opt/homebrew/Caskroom/miniconda/base/etc/profile.d/conda.sh" - else - export PATH="/opt/homebrew/Caskroom/miniconda/base/bin:$PATH" - fi -fi -unset __conda_setup -# <<< conda initialize <<< - -alias start-twm="source $DOTFILES/scripts/__twm_osx_start.zsh" diff --git a/platforms/wsl/zshrc b/platforms/wsl/zshrc index 107ca41..bc2ece3 100644 --- a/platforms/wsl/zshrc +++ b/platforms/wsl/zshrc @@ -6,26 +6,4 @@ ### Variables ### export IS_WSL=true -export ARCHFLAGS="-arch x86_64" source $DOTFILES/platforms/wsl/winterop.zsh - -### Misc ### - -export PATH=/opt/bin:$PATH - -# Conda # - -# >>> conda initialize >>> -# !! Contents within this block are managed by 'conda init' !! -__conda_setup="$('$HOME/miniconda3/bin/conda' 'shell.zsh' 'hook' 2>/dev/null)" -if [ $? -eq 0 ]; then - eval "$__conda_setup" -else - if [ -f "$HOME/miniconda3/etc/profile.d/conda.sh" ]; then - . "$HOME/miniconda3/etc/profile.d/conda.sh" - else - export PATH="$HOME/miniconda3/bin:$PATH" - fi -fi -unset __conda_setup -# <<< conda initialize <<< diff --git a/platforms/linux/keyd/default.conf b/tools/keyd/default.conf similarity index 100% rename from platforms/linux/keyd/default.conf rename to tools/keyd/default.conf From 67a78879dbbb10b0c1d99cfdfc9fd16a39e0d875 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 15:28:09 +0100 Subject: [PATCH 12/48] chezmoi: reorganise repo --- .chezmoiignore | 34 -------- .chezmoiroot | 1 + dot_config/fish/private_fish_variables | 39 ---------- dot_config/nvim/lazy-lock.json | 53 ------------- home/.chezmoiignore.tmpl | 27 +++++++ .../dot_config}/NuGet/nuget.config | 0 .../dot_config}/awesome/rc.lua | 0 .../dot_config}/bash/bash_aliases | 0 {dot_config => home/dot_config}/bash/bashrc | 0 .../dot_config}/bash/global.bashrc | 0 {dot_config => home/dot_config}/bash/profile | 0 .../dot_config}/bash/xdg-compat.sh | 0 .../dot_config}/bat/bat.config.dark | 0 .../dot_config}/bat/bat.config.light | 0 .../dot_config}/bat/symlink_bat.config | 0 .../dot_config}/chromium-flags.conf | 0 .../dot_config}/conda/dot_condarc | 0 .../dot_config}/doom/beancount.el | 0 .../dot_config}/doom/calendar.el | 0 .../dot_config}/doom/config.el | 0 .../dot_config}/doom/dot_custom.el | 0 .../dot_config}/doom/dot_gitignore | 0 {dot_config => home/dot_config}/doom/evil.el | 0 {dot_config => home/dot_config}/doom/init.el | 0 .../lisp/org-pomodoro-music-controller.el | 0 .../lisp/org-pomodoro-telegram-notifier.el | 0 {dot_config => home/dot_config}/doom/org.el | 0 .../dot_config}/doom/packages.el | 0 .../doom/snippets/org-mode/align-math | 0 .../doom/snippets/org-mode/display-math | 0 .../doom/snippets/org-mode/inline-math | 0 .../dot_config}/doom/snippets/org-mode/limit | 0 .../doom/snippets/org-mode/summation | 0 .../doom/snippets/org-mode/unnumbered | 0 .../dot_config}/doom/telega.el | 0 .../dot_config}/doom/treemacs.el | 0 {dot_config => home/dot_config}/dunst/dunstrc | 0 .../dot_config}/electron-flags.conf | 0 .../dot_config}/fastfetch/config.jsonc | 0 .../dot_config}/fcitx5/conf/cached_layouts | 0 .../fcitx5/conf/notifications.conf | 0 {dot_config => home/dot_config}/fcitx5/config | 0 .../dot_config}/fcitx5/profile | 0 .../dot_config}/fish/completions/.keep | 0 .../dot_config}/fish/conf.d/0init.fish | 0 .../dot_config}/fish/conf.d/alias.fish | 0 .../dot_config}/fish/conf.d/colorscheme.fish | 0 .../dot_config}/fish/conf.d/keymap.fish | 0 .../fish/conf.d/keymap/+colemak.fish | 0 .../dot_config}/fish/conf.d/navi.fish | 0 .../dot_config}/fish/conf.d/prompt.fish | 0 .../dot_config}/fish/conf.d/winterop.fish | 0 .../dot_config}/fish/config.fish | 0 .../dot_config}/fish/functions/.keep | 0 home/dot_config/fish/functions/dotenv.fish | 73 ++++++++++++++++++ .../dot_config}/fish/readme.md | 0 .../fish/themes/Catppuccin Latte.theme | 0 .../fish/themes/Catppuccin Mocha.theme | 0 .../fish/themes/Rosé Pine Dawn.theme | 0 .../dot_config}/glow/config.yml | 0 .../dot_config}/hypr/dot_gitignore | 0 .../dot_config}/hypr/hypridle.conf | 0 .../dot_config}/hypr/hyprland.conf | 0 .../dot_config}/hypr/hyprland/+colemak.conf | 0 .../dot_config}/hypr/hyprland/+qwerty.conf | 0 .../dot_config}/hypr/hyprland/dark.conf | 0 .../dot_config}/hypr/hyprland/keymaps.conf | 0 .../dot_config}/hypr/hyprland/light.conf | 0 .../dot_config}/hypr/hyprland/rules.conf | 0 .../hypr/hyprland/symlink_current.conf | 0 .../dot_config}/hypr/hyprlock.conf | 0 .../dot_config}/hypr/hyprpaper.conf | 0 .../dot_config}/ideavim/ideavimrc | 0 .../dot_config}/ipython/dot_gitignore | 0 .../ipython/profile_default/db/.keep | 0 .../ipython/profile_default/history.sqlite | Bin .../ipython/profile_default/ipython_config.py | 0 .../ipython/profile_default/log/.keep | 0 .../ipython/profile_default/startup/README | 0 .../ipython/profile_default/startup/keymap.py | 0 .../profile_default/startup/magic_ps.py | 0 {dot_config => home/dot_config}/keyd/app.conf | 0 .../dot_config}/kitty/dark-theme.auto.conf | 0 .../dot_config}/kitty/kitty.conf | 0 .../dot_config}/kitty/light-theme.auto.conf | 0 .../dot_config}/kitty/window.py | 0 {dot_config => home/dot_config}/krunnerrc | 0 .../dot_config}/lazygit/empty_config.yml | 0 {dot_config => home/dot_config}/lesskey | 0 {dot_config => home/dot_config}/lsd/lsd.yaml | 0 {dot_config => home/dot_config}/mako/config | 0 .../dot_config}/neovide/config.toml | 0 .../dot_config}/nix-config/flake.lock | 0 .../dot_config}/nix-config/flake.nix | 0 .../nix-config/hosts/macbook/brew.nix | 0 .../nix-config/hosts/macbook/default.nix | 0 .../nix-config/hosts/macbook/system.nix | 0 .../dot_config}/nvim/dot_editorconfig | 0 {dot_config => home/dot_config}/nvim/init.lua | 0 .../dot_config}/nvim/lsp/bashls.lua | 0 .../dot_config}/nvim/lsp/beancount.lua | 0 .../dot_config}/nvim/lsp/clangd.lua | 0 .../dot_config}/nvim/lsp/gopls.lua | 0 .../dot_config}/nvim/lsp/jdtls.lua | 0 .../dot_config}/nvim/lsp/jsonls.lua | 0 .../dot_config}/nvim/lsp/luals.lua | 0 .../dot_config}/nvim/lsp/markdown_oxide.lua | 0 .../dot_config}/nvim/lsp/pyright.lua | 0 .../dot_config}/nvim/lsp/rust_analyzer.lua | 0 .../dot_config}/nvim/lsp/taplo.lua | 0 .../dot_config}/nvim/lsp/vimls.lua | 0 .../dot_config}/nvim/lsp/yamlls.lua | 0 .../dot_config}/nvim/lua/config/colors.lua | 0 .../nvim/lua/config/colorscheme.lua | 0 .../nvim/lua/config/diagnostics.lua | 0 .../dot_config}/nvim/lua/config/icons.lua | 0 .../dot_config}/nvim/lua/config/keymaps.lua | 0 .../dot_config}/nvim/lua/config/migration.lua | 0 .../dot_config}/nvim/lua/config/options.lua | 0 .../dot_config}/nvim/lua/config/plugins.lua | 0 .../dot_config}/nvim/lua/config/servers.lua | 0 .../dot_config}/nvim/lua/config/vscode.lua | 0 .../dot_config}/nvim/lua/keymaps/basic.lua | 0 .../dot_config}/nvim/lua/keymaps/buffer.lua | 0 .../dot_config}/nvim/lua/keymaps/init.lua | 0 .../dot_config}/nvim/lua/keymaps/language.lua | 0 .../dot_config}/nvim/lua/keymaps/leaders.bak | 0 .../dot_config}/nvim/lua/keymaps/leaders.lua | 0 .../dot_config}/nvim/lua/keymaps/lspkeys.lua | 0 .../dot_config}/nvim/lua/keymaps/modifier.lua | 0 .../nvim/lua/keymaps/nvim-tree.lua | 0 .../nvim/lua/keymaps/user-command.lua | 0 .../dot_config}/nvim/lua/keymaps/utils.lua | 0 .../nvim/lua/keymaps/visual-multi.lua | 0 .../dot_config}/nvim/lua/keymaps/which.lua | 0 .../nvim/lua/plugins/appearance.lua | 0 .../nvim/lua/plugins/completion.lua | 0 .../dot_config}/nvim/lua/plugins/dap.lua | 0 .../dot_config}/nvim/lua/plugins/edit.lua | 0 .../nvim/lua/plugins/fileutils.lua | 0 .../dot_config}/nvim/lua/plugins/init.lua | 0 .../nvim/lua/plugins/lang/beancount.lua | 0 .../nvim/lua/plugins/lang/init.lua | 0 .../nvim/lua/plugins/lang/just.lua | 0 .../dot_config}/nvim/lua/plugins/lang/lua.lua | 0 .../nvim/lua/plugins/lang/markdown/init.lua | 0 .../plugins/lang/markdown/markview.lua.bak | 0 .../plugins/lang/markdown/obsidian-nvim.lua | 0 .../plugins/lang/markdown/render-markdown.lua | 0 .../dot_config}/nvim/lua/plugins/lang/org.lua | 0 .../dot_config}/nvim/lua/plugins/lang/tex.lua | 0 .../nvim/lua/plugins/lang/treesitter.lua | 0 .../nvim/lua/plugins/lang/typst.lua | 0 .../nvim/lua/plugins/lazy-nvim.lua | 0 .../dot_config}/nvim/lua/plugins/misc.lua | 0 .../nvim/lua/plugins/mod/alpha-nvim.lua | 0 .../nvim/lua/plugins/mod/autopairs.lua | 0 .../nvim/lua/plugins/mod/avante-nvim.lua | 0 .../nvim/lua/plugins/mod/blink-cmp.lua | 0 .../nvim/lua/plugins/mod/bufferline.lua | 0 .../nvim/lua/plugins/mod/conform-nvim.lua | 0 .../nvim/lua/plugins/mod/copilot-lua.lua | 0 .../dot_config}/nvim/lua/plugins/mod/fzf.lua | 0 .../nvim/lua/plugins/mod/hover-nvim.lua | 0 .../nvim/lua/plugins/mod/image-nvim.lua | 0 .../nvim/lua/plugins/mod/img-clip.lua | 0 .../lua/plugins/mod/lualine/components.lua | 0 .../nvim/lua/plugins/mod/lualine/init.lua | 0 .../dot_config}/nvim/lua/plugins/mod/mc.lua | 0 .../nvim/lua/plugins/mod/neo-tree.lua | 0 .../nvim/lua/plugins/mod/nvim-cmp.lua | 0 .../nvim/lua/plugins/mod/nvim-lspconfig.lua | 0 .../nvim/lua/plugins/mod/nvim-tree.lua | 0 .../nvim/lua/plugins/mod/snacks-nvim.lua | 0 .../nvim/lua/plugins/mod/telescope.lua | 0 .../nvim/lua/plugins/mod/toggleterm.lua | 0 .../nvim/lua/plugins/mod/trouble-nvim.lua | 0 .../nvim/lua/plugins/mod/which-keys-nvim.lua | 0 .../dot_config}/nvim/readme.md | 0 .../dot_config}/nvim/stylua.toml | 0 {dot_config => home/dot_config}/pip/pip.conf | 0 .../dot_config}/powershell/Aliases.ps1 | 0 .../dot_config}/powershell/Completions.ps1 | 0 .../dot_config}/powershell/Environment.ps1 | 0 .../dot_config}/powershell/Keymap.ps1 | 0 .../dot_config}/powershell/Keymap/Colemak.ps1 | 0 .../Microsoft.PowerShell_profile.ps1 | 0 .../dot_config}/powershell/Modules.ps1 | 0 .../dot_config}/powershell/Navigation.ps1 | 0 .../dot_config}/powershell/Prompt.ps1 | 0 .../dot_config}/powershell/readme.md | 0 .../dot_config}/powershell/xaa | 0 .../dot_config}/readline/inputrc | 0 .../dot_config}/rofi/config.rasi | 0 .../dot_config}/rofi/dark.rasi | 0 .../dot_config}/rofi/light.rasi | 0 .../dot_config}/rofi/symlink_current.rasi | 0 .../dot_config}/rtorrent/rtorrent.rc | 0 .../dot_config}/screen/+colemak.screenrc | 0 .../dot_config}/screen/+qwerty.screenrc | 0 .../dot_config}/screen/screenrc | 0 .../dot_config}/sioyek/keys_user.config | 0 .../dot_config}/sioyek/prefs_user.config | 0 {dot_config => home/dot_config}/starship.toml | 0 .../dot_config}/swaylock/swaylock | 0 .../systemd/user/emacs-daemon.service | 0 .../dot_config}/systemd/user/keyd-app.service | 0 .../dot_config}/systemd/user/mihomo.service | 0 .../dot_config}/tmux/+colemak.tmux | 0 .../dot_config}/tmux/+qwerty.tmux | 0 .../dot_config}/tmux/tmux.conf | 0 .../dot_config}/user-dirs.dirs | 0 .../dot_config}/user-dirs.locale | 0 {dot_config => home/dot_config}/vim/vimrc | 0 .../dot_config}/waybar/config.jsonc | 0 .../dot_config}/waybar/dark.css | 0 .../dot_config}/waybar/light.css | 0 .../waybar/modules/hyprland-workspace.jsonc | 0 .../dot_config}/waybar/modules/misc.jsonc | 0 .../dot_config}/waybar/style.css | 0 .../dot_config}/wezterm/appearance.lua | 0 .../dot_config}/wezterm/color.lua | 0 .../dot_config}/wezterm/dot_gitignore | 0 .../dot_config}/wezterm/keymaps/colemak.lua | 0 .../dot_config}/wezterm/keymaps/init.lua | 0 .../dot_config}/wezterm/keymaps/leaders.lua | 0 .../dot_config}/wezterm/keymaps/qwerty.lua | 0 .../dot_config}/wezterm/launcher.lua | 0 .../dot_config}/wezterm/misc.lua | 0 .../dot_config}/wezterm/tab.lua | 0 .../dot_config}/wezterm/utils.lua | 0 .../dot_config}/wezterm/wezterm.lua | 0 .../dot_config}/wlogout/actions | 0 .../dot_config}/wlogout/icons/hibernate.png | Bin .../dot_config}/wlogout/icons/lock.png | Bin .../dot_config}/wlogout/icons/logout.png | Bin .../dot_config}/wlogout/icons/reboot.png | Bin .../dot_config}/wlogout/icons/shutdown.png | Bin .../dot_config}/wlogout/icons/suspend.png | Bin .../dot_config}/wlogout/layout | 0 .../dot_config}/wlogout/style.css | 0 .../dot_config}/yazi/dark.toml | 0 .../dot_config}/yazi/dot_gitignore | 0 {dot_config => home/dot_config}/yazi/init.lua | 0 .../dot_config}/yazi/keymap.toml | 0 .../dot_config}/yazi/light.toml | 0 .../dot_config}/yazi/symlink_theme.toml | 0 .../dot_config}/yazi/yazi.toml | 0 .../dot_config}/zed/keymap.json | 0 .../dot_config}/zed/keymap_backup.json | 0 .../dot_config}/zed/settings.json | 0 .../zed/snippets/executable_c.json | 0 .../dot_config}/zed/snippets/org.json | 0 .../dot_config}/zellij/zellij.config.kdl | 0 .../dot_config}/zsh/dot_zshenv | 0 {dot_config => home/dot_config}/zsh/dot_zshrc | 0 .../dot_config}/zsh/empty_dot_zprofile | 0 .../dot_config}/zsh/global.zshenv | 0 .../dot_config}/zsh/mod/alias.zsh | 0 .../dot_config}/zsh/mod/config.zsh | 0 .../dot_config}/zsh/mod/env.zsh | 0 .../dot_config}/zsh/mod/keymap.zsh | 0 .../dot_config}/zsh/mod/navi.zsh | 0 .../dot_config}/zsh/mod/prompt.zsh | 0 dot_haskeline => home/dot_haskeline | 0 {scripts => home/scripts}/PSHistStat.ps1 | 0 .../scripts}/Rename-FilesWithZeroPadding.ps1 | 0 {scripts => home/scripts}/Scripts.ps1 | 0 {scripts => home/scripts}/__twm_osx_start.zsh | 0 {scripts => home/scripts}/__twm_osx_stop.zsh | 0 {scripts => home/scripts}/run_once_fish.sh | 0 .../scripts}/run_once_powershell.ps1 | 0 {scripts => home/scripts}/run_once_yazi.sh | 0 .../scripts}/run_once_zsh-install-plugins.sh | 0 .../scripts}/run_once_zsh-set-env.sh | 0 {scripts => home/scripts}/update.zsh | 0 symlink_dot_bashrc => home/symlink_dot_bashrc | 0 readme.org | 57 +------------- 278 files changed, 102 insertions(+), 182 deletions(-) delete mode 100644 .chezmoiignore create mode 100644 .chezmoiroot delete mode 100644 dot_config/fish/private_fish_variables delete mode 100644 dot_config/nvim/lazy-lock.json create mode 100644 home/.chezmoiignore.tmpl rename {dot_config => home/dot_config}/NuGet/nuget.config (100%) rename {dot_config => home/dot_config}/awesome/rc.lua (100%) rename {dot_config => home/dot_config}/bash/bash_aliases (100%) rename {dot_config => home/dot_config}/bash/bashrc (100%) rename {dot_config => home/dot_config}/bash/global.bashrc (100%) rename {dot_config => home/dot_config}/bash/profile (100%) rename {dot_config => home/dot_config}/bash/xdg-compat.sh (100%) rename {dot_config => home/dot_config}/bat/bat.config.dark (100%) rename {dot_config => home/dot_config}/bat/bat.config.light (100%) rename {dot_config => home/dot_config}/bat/symlink_bat.config (100%) rename {dot_config => home/dot_config}/chromium-flags.conf (100%) rename {dot_config => home/dot_config}/conda/dot_condarc (100%) rename {dot_config => home/dot_config}/doom/beancount.el (100%) rename {dot_config => home/dot_config}/doom/calendar.el (100%) rename {dot_config => home/dot_config}/doom/config.el (100%) rename {dot_config => home/dot_config}/doom/dot_custom.el (100%) rename {dot_config => home/dot_config}/doom/dot_gitignore (100%) rename {dot_config => home/dot_config}/doom/evil.el (100%) rename {dot_config => home/dot_config}/doom/init.el (100%) rename {dot_config => home/dot_config}/doom/lisp/org-pomodoro-music-controller.el (100%) rename {dot_config => home/dot_config}/doom/lisp/org-pomodoro-telegram-notifier.el (100%) rename {dot_config => home/dot_config}/doom/org.el (100%) rename {dot_config => home/dot_config}/doom/packages.el (100%) rename {dot_config => home/dot_config}/doom/snippets/org-mode/align-math (100%) rename {dot_config => home/dot_config}/doom/snippets/org-mode/display-math (100%) rename {dot_config => home/dot_config}/doom/snippets/org-mode/inline-math (100%) rename {dot_config => home/dot_config}/doom/snippets/org-mode/limit (100%) rename {dot_config => home/dot_config}/doom/snippets/org-mode/summation (100%) rename {dot_config => home/dot_config}/doom/snippets/org-mode/unnumbered (100%) rename {dot_config => home/dot_config}/doom/telega.el (100%) rename {dot_config => home/dot_config}/doom/treemacs.el (100%) rename {dot_config => home/dot_config}/dunst/dunstrc (100%) rename {dot_config => home/dot_config}/electron-flags.conf (100%) rename {dot_config => home/dot_config}/fastfetch/config.jsonc (100%) rename {dot_config => home/dot_config}/fcitx5/conf/cached_layouts (100%) rename {dot_config => home/dot_config}/fcitx5/conf/notifications.conf (100%) rename {dot_config => home/dot_config}/fcitx5/config (100%) rename {dot_config => home/dot_config}/fcitx5/profile (100%) rename {dot_config => home/dot_config}/fish/completions/.keep (100%) rename {dot_config => home/dot_config}/fish/conf.d/0init.fish (100%) rename {dot_config => home/dot_config}/fish/conf.d/alias.fish (100%) rename {dot_config => home/dot_config}/fish/conf.d/colorscheme.fish (100%) rename {dot_config => home/dot_config}/fish/conf.d/keymap.fish (100%) rename {dot_config => home/dot_config}/fish/conf.d/keymap/+colemak.fish (100%) rename {dot_config => home/dot_config}/fish/conf.d/navi.fish (100%) rename {dot_config => home/dot_config}/fish/conf.d/prompt.fish (100%) rename {dot_config => home/dot_config}/fish/conf.d/winterop.fish (100%) rename {dot_config => home/dot_config}/fish/config.fish (100%) rename {dot_config => home/dot_config}/fish/functions/.keep (100%) create mode 100644 home/dot_config/fish/functions/dotenv.fish rename {dot_config => home/dot_config}/fish/readme.md (100%) rename {dot_config => home/dot_config}/fish/themes/Catppuccin Latte.theme (100%) rename {dot_config => home/dot_config}/fish/themes/Catppuccin Mocha.theme (100%) rename {dot_config => home/dot_config}/fish/themes/Rosé Pine Dawn.theme (100%) rename {dot_config => home/dot_config}/glow/config.yml (100%) rename {dot_config => home/dot_config}/hypr/dot_gitignore (100%) rename {dot_config => home/dot_config}/hypr/hypridle.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprland.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprland/+colemak.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprland/+qwerty.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprland/dark.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprland/keymaps.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprland/light.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprland/rules.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprland/symlink_current.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprlock.conf (100%) rename {dot_config => home/dot_config}/hypr/hyprpaper.conf (100%) rename {dot_config => home/dot_config}/ideavim/ideavimrc (100%) rename {dot_config => home/dot_config}/ipython/dot_gitignore (100%) rename {dot_config => home/dot_config}/ipython/profile_default/db/.keep (100%) rename {dot_config => home/dot_config}/ipython/profile_default/history.sqlite (100%) rename {dot_config => home/dot_config}/ipython/profile_default/ipython_config.py (100%) rename {dot_config => home/dot_config}/ipython/profile_default/log/.keep (100%) rename {dot_config => home/dot_config}/ipython/profile_default/startup/README (100%) rename {dot_config => home/dot_config}/ipython/profile_default/startup/keymap.py (100%) rename {dot_config => home/dot_config}/ipython/profile_default/startup/magic_ps.py (100%) rename {dot_config => home/dot_config}/keyd/app.conf (100%) rename {dot_config => home/dot_config}/kitty/dark-theme.auto.conf (100%) rename {dot_config => home/dot_config}/kitty/kitty.conf (100%) rename {dot_config => home/dot_config}/kitty/light-theme.auto.conf (100%) rename {dot_config => home/dot_config}/kitty/window.py (100%) rename {dot_config => home/dot_config}/krunnerrc (100%) rename {dot_config => home/dot_config}/lazygit/empty_config.yml (100%) rename {dot_config => home/dot_config}/lesskey (100%) rename {dot_config => home/dot_config}/lsd/lsd.yaml (100%) rename {dot_config => home/dot_config}/mako/config (100%) rename {dot_config => home/dot_config}/neovide/config.toml (100%) rename {dot_config => home/dot_config}/nix-config/flake.lock (100%) rename {dot_config => home/dot_config}/nix-config/flake.nix (100%) rename {dot_config => home/dot_config}/nix-config/hosts/macbook/brew.nix (100%) rename {dot_config => home/dot_config}/nix-config/hosts/macbook/default.nix (100%) rename {dot_config => home/dot_config}/nix-config/hosts/macbook/system.nix (100%) rename {dot_config => home/dot_config}/nvim/dot_editorconfig (100%) rename {dot_config => home/dot_config}/nvim/init.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/bashls.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/beancount.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/clangd.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/gopls.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/jdtls.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/jsonls.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/luals.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/markdown_oxide.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/pyright.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/rust_analyzer.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/taplo.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/vimls.lua (100%) rename {dot_config => home/dot_config}/nvim/lsp/yamlls.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/colors.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/colorscheme.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/diagnostics.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/icons.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/keymaps.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/migration.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/options.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/plugins.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/servers.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/config/vscode.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/basic.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/buffer.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/init.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/language.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/leaders.bak (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/leaders.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/lspkeys.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/modifier.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/nvim-tree.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/user-command.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/utils.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/visual-multi.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/keymaps/which.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/appearance.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/completion.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/dap.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/edit.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/fileutils.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/init.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/beancount.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/init.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/just.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/lua.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/markdown/init.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/markdown/markview.lua.bak (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/markdown/render-markdown.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/org.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/tex.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/treesitter.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lang/typst.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/lazy-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/misc.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/alpha-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/autopairs.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/avante-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/blink-cmp.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/bufferline.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/conform-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/copilot-lua.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/fzf.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/hover-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/image-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/img-clip.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/lualine/components.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/lualine/init.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/mc.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/neo-tree.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/nvim-cmp.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/nvim-lspconfig.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/nvim-tree.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/snacks-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/telescope.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/toggleterm.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/trouble-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/lua/plugins/mod/which-keys-nvim.lua (100%) rename {dot_config => home/dot_config}/nvim/readme.md (100%) rename {dot_config => home/dot_config}/nvim/stylua.toml (100%) rename {dot_config => home/dot_config}/pip/pip.conf (100%) rename {dot_config => home/dot_config}/powershell/Aliases.ps1 (100%) rename {dot_config => home/dot_config}/powershell/Completions.ps1 (100%) rename {dot_config => home/dot_config}/powershell/Environment.ps1 (100%) rename {dot_config => home/dot_config}/powershell/Keymap.ps1 (100%) rename {dot_config => home/dot_config}/powershell/Keymap/Colemak.ps1 (100%) rename {dot_config => home/dot_config}/powershell/Microsoft.PowerShell_profile.ps1 (100%) rename {dot_config => home/dot_config}/powershell/Modules.ps1 (100%) rename {dot_config => home/dot_config}/powershell/Navigation.ps1 (100%) rename {dot_config => home/dot_config}/powershell/Prompt.ps1 (100%) rename {dot_config => home/dot_config}/powershell/readme.md (100%) rename {dot_config => home/dot_config}/powershell/xaa (100%) rename {dot_config => home/dot_config}/readline/inputrc (100%) rename {dot_config => home/dot_config}/rofi/config.rasi (100%) rename {dot_config => home/dot_config}/rofi/dark.rasi (100%) rename {dot_config => home/dot_config}/rofi/light.rasi (100%) rename {dot_config => home/dot_config}/rofi/symlink_current.rasi (100%) rename {dot_config => home/dot_config}/rtorrent/rtorrent.rc (100%) rename {dot_config => home/dot_config}/screen/+colemak.screenrc (100%) rename {dot_config => home/dot_config}/screen/+qwerty.screenrc (100%) rename {dot_config => home/dot_config}/screen/screenrc (100%) rename {dot_config => home/dot_config}/sioyek/keys_user.config (100%) rename {dot_config => home/dot_config}/sioyek/prefs_user.config (100%) rename {dot_config => home/dot_config}/starship.toml (100%) rename {dot_config => home/dot_config}/swaylock/swaylock (100%) rename {dot_config => home/dot_config}/systemd/user/emacs-daemon.service (100%) rename {dot_config => home/dot_config}/systemd/user/keyd-app.service (100%) rename {dot_config => home/dot_config}/systemd/user/mihomo.service (100%) rename {dot_config => home/dot_config}/tmux/+colemak.tmux (100%) rename {dot_config => home/dot_config}/tmux/+qwerty.tmux (100%) rename {dot_config => home/dot_config}/tmux/tmux.conf (100%) rename {dot_config => home/dot_config}/user-dirs.dirs (100%) rename {dot_config => home/dot_config}/user-dirs.locale (100%) rename {dot_config => home/dot_config}/vim/vimrc (100%) rename {dot_config => home/dot_config}/waybar/config.jsonc (100%) rename {dot_config => home/dot_config}/waybar/dark.css (100%) rename {dot_config => home/dot_config}/waybar/light.css (100%) rename {dot_config => home/dot_config}/waybar/modules/hyprland-workspace.jsonc (100%) rename {dot_config => home/dot_config}/waybar/modules/misc.jsonc (100%) rename {dot_config => home/dot_config}/waybar/style.css (100%) rename {dot_config => home/dot_config}/wezterm/appearance.lua (100%) rename {dot_config => home/dot_config}/wezterm/color.lua (100%) rename {dot_config => home/dot_config}/wezterm/dot_gitignore (100%) rename {dot_config => home/dot_config}/wezterm/keymaps/colemak.lua (100%) rename {dot_config => home/dot_config}/wezterm/keymaps/init.lua (100%) rename {dot_config => home/dot_config}/wezterm/keymaps/leaders.lua (100%) rename {dot_config => home/dot_config}/wezterm/keymaps/qwerty.lua (100%) rename {dot_config => home/dot_config}/wezterm/launcher.lua (100%) rename {dot_config => home/dot_config}/wezterm/misc.lua (100%) rename {dot_config => home/dot_config}/wezterm/tab.lua (100%) rename {dot_config => home/dot_config}/wezterm/utils.lua (100%) rename {dot_config => home/dot_config}/wezterm/wezterm.lua (100%) rename {dot_config => home/dot_config}/wlogout/actions (100%) rename {dot_config => home/dot_config}/wlogout/icons/hibernate.png (100%) rename {dot_config => home/dot_config}/wlogout/icons/lock.png (100%) rename {dot_config => home/dot_config}/wlogout/icons/logout.png (100%) rename {dot_config => home/dot_config}/wlogout/icons/reboot.png (100%) rename {dot_config => home/dot_config}/wlogout/icons/shutdown.png (100%) rename {dot_config => home/dot_config}/wlogout/icons/suspend.png (100%) rename {dot_config => home/dot_config}/wlogout/layout (100%) rename {dot_config => home/dot_config}/wlogout/style.css (100%) rename {dot_config => home/dot_config}/yazi/dark.toml (100%) rename {dot_config => home/dot_config}/yazi/dot_gitignore (100%) rename {dot_config => home/dot_config}/yazi/init.lua (100%) rename {dot_config => home/dot_config}/yazi/keymap.toml (100%) rename {dot_config => home/dot_config}/yazi/light.toml (100%) rename {dot_config => home/dot_config}/yazi/symlink_theme.toml (100%) rename {dot_config => home/dot_config}/yazi/yazi.toml (100%) rename {dot_config => home/dot_config}/zed/keymap.json (100%) rename {dot_config => home/dot_config}/zed/keymap_backup.json (100%) rename {dot_config => home/dot_config}/zed/settings.json (100%) rename {dot_config => home/dot_config}/zed/snippets/executable_c.json (100%) rename {dot_config => home/dot_config}/zed/snippets/org.json (100%) rename {dot_config => home/dot_config}/zellij/zellij.config.kdl (100%) rename {dot_config => home/dot_config}/zsh/dot_zshenv (100%) rename {dot_config => home/dot_config}/zsh/dot_zshrc (100%) rename {dot_config => home/dot_config}/zsh/empty_dot_zprofile (100%) rename {dot_config => home/dot_config}/zsh/global.zshenv (100%) rename {dot_config => home/dot_config}/zsh/mod/alias.zsh (100%) rename {dot_config => home/dot_config}/zsh/mod/config.zsh (100%) rename {dot_config => home/dot_config}/zsh/mod/env.zsh (100%) rename {dot_config => home/dot_config}/zsh/mod/keymap.zsh (100%) rename {dot_config => home/dot_config}/zsh/mod/navi.zsh (100%) rename {dot_config => home/dot_config}/zsh/mod/prompt.zsh (100%) rename dot_haskeline => home/dot_haskeline (100%) rename {scripts => home/scripts}/PSHistStat.ps1 (100%) rename {scripts => home/scripts}/Rename-FilesWithZeroPadding.ps1 (100%) rename {scripts => home/scripts}/Scripts.ps1 (100%) rename {scripts => home/scripts}/__twm_osx_start.zsh (100%) rename {scripts => home/scripts}/__twm_osx_stop.zsh (100%) rename {scripts => home/scripts}/run_once_fish.sh (100%) rename {scripts => home/scripts}/run_once_powershell.ps1 (100%) rename {scripts => home/scripts}/run_once_yazi.sh (100%) rename {scripts => home/scripts}/run_once_zsh-install-plugins.sh (100%) rename {scripts => home/scripts}/run_once_zsh-set-env.sh (100%) rename {scripts => home/scripts}/update.zsh (100%) rename symlink_dot_bashrc => home/symlink_dot_bashrc (100%) diff --git a/.chezmoiignore b/.chezmoiignore deleted file mode 100644 index 0e17f10..0000000 --- a/.chezmoiignore +++ /dev/null @@ -1,34 +0,0 @@ -# .chezmoiignore - - -# macOS only -{{ if ne .chezmoi.os "darwin" -}} -{{ end -}} - -# Linux only -{{ if ne .chezmoi.os "linux" -}} -dot_config/awesome -dot_config/dunst -dot_config/fcitx5 -dot_config/hypr -dot_config/keyd -dot_config/mako -dot_config/readline -dot_config/rofi -dot_config/swaylock -dot_config/waybar -dot_config/wlogout -dot_config/krunnerrc -dot_config/user-dirs.dirs -dot_config/user-dirs.locale -{{ end -}} - -# Windows only -{{ if ne .chezmoi.os "windows" -}} -{{ end -}} - -# ArchLinux only -{{ if ne .chezmoi.osRelease.id "arch" -}} -chromium-flags.conf -electron-flags.conf -{{ end -}} diff --git a/.chezmoiroot b/.chezmoiroot new file mode 100644 index 0000000..5e72f75 --- /dev/null +++ b/.chezmoiroot @@ -0,0 +1 @@ +home diff --git a/dot_config/fish/private_fish_variables b/dot_config/fish/private_fish_variables deleted file mode 100644 index fcdebd7..0000000 --- a/dot_config/fish/private_fish_variables +++ /dev/null @@ -1,39 +0,0 @@ -# This file contains fish universal variable definitions. -# VERSION: 3.0 -SETUVAR __fish_initialized:3800 -SETUVAR fish_color_autosuggestion:brblack -SETUVAR fish_color_cancel:\x2dr -SETUVAR fish_color_command:normal -SETUVAR fish_color_comment:red -SETUVAR fish_color_cwd:green -SETUVAR fish_color_cwd_root:red -SETUVAR fish_color_end:green -SETUVAR fish_color_error:brred -SETUVAR fish_color_escape:brcyan -SETUVAR fish_color_history_current:\x2d\x2dbold -SETUVAR fish_color_host:normal -SETUVAR fish_color_host_remote:yellow -SETUVAR fish_color_normal:normal -SETUVAR fish_color_operator:brcyan -SETUVAR fish_color_param:cyan -SETUVAR fish_color_quote:yellow -SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold -SETUVAR fish_color_search_match:white\x1e\x2d\x2dbackground\x3dbrblack\x1e\x2d\x2dbold -SETUVAR fish_color_selection:white\x1e\x2d\x2dbackground\x3dbrblack\x1e\x2d\x2dbold -SETUVAR fish_color_status:red -SETUVAR fish_color_user:brgreen -SETUVAR fish_color_valid_path:\x2d\x2dunderline -SETUVAR fish_pager_color_background:\x1d -SETUVAR fish_pager_color_completion:normal -SETUVAR fish_pager_color_description:yellow\x1e\x2di -SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline -SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan\x1e\x2d\x2dbold -SETUVAR fish_pager_color_secondary_background:\x1d -SETUVAR fish_pager_color_secondary_completion:\x1d -SETUVAR fish_pager_color_secondary_description:\x1d -SETUVAR fish_pager_color_secondary_prefix:\x1d -SETUVAR fish_pager_color_selected_background:\x2dr -SETUVAR fish_pager_color_selected_completion:\x1d -SETUVAR fish_pager_color_selected_description:\x1d -SETUVAR fish_pager_color_selected_prefix:\x1d -SETUVAR fish_user_paths:/home/js0ny/\x2elocal/bin\x1e/home/js0ny/\x2elocal/build\x1e/usr/bin\x1e/usr/local/bin diff --git a/dot_config/nvim/lazy-lock.json b/dot_config/nvim/lazy-lock.json deleted file mode 100644 index 4d74762..0000000 --- a/dot_config/nvim/lazy-lock.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "LuaSnip": { "branch": "master", "commit": "de10d8414235b0a8cabfeba60d07c24304e71f5c" }, - "auto-session": { "branch": "main", "commit": "7d37d1cae7a39ff57da9a452d21b5dbfc5636c18" }, - "avante.nvim": { "branch": "main", "commit": "2791db9984d01674c3a507cc1a522ad7234f400a" }, - "blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" }, - "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, - "bullets.vim": { "branch": "master", "commit": "1c13e510e11d08b0259e8e627f128359c5521962" }, - "catppuccin": { "branch": "main", "commit": "30fa4d122d9b22ad8b2e0ab1b533c8c26c4dde86" }, - "conform.nvim": { "branch": "master", "commit": "a0ab60ed666c56b37fd7ed1847d2ac52f2482ce0" }, - "copilot.lua": { "branch": "master", "commit": "f0c0d981de2737abc50bd7b5bb034ae440826827" }, - "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, - "flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" }, - "fzf-lua": { "branch": "main", "commit": "7d66cd81cf485fb17c22d82021cc166ce332a14c" }, - "gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" }, - "grug-far.nvim": { "branch": "main", "commit": "385d1949dc21d0c39e7a74b4f4a25da18817bc86" }, - "image.nvim": { "branch": "master", "commit": "5cbb891eb8dde53f350dde69e23106d4e85d898b" }, - "img-clip.nvim": { "branch": "main", "commit": "d8b6b030672f9f551a0e3526347699985a779d93" }, - "kanagawa.nvim": { "branch": "master", "commit": "debe91547d7fb1eef34ce26a5106f277fbfdd109" }, - "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, - "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, - "leetcode.nvim": { "branch": "master", "commit": "422b6beb4a64eca0524fbff94edd9550c156afc5" }, - "lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" }, - "luasnip-latex-snippets.nvim": { "branch": "main", "commit": "d3dd5223ef37a99c4adf3b5c7844fc760751b397" }, - "multiple-cursors.nvim": { "branch": "main", "commit": "1ac15d047a4b265cc2389957bcc56ee561b29e02" }, - "neo-tree.nvim": { "branch": "v3.x", "commit": "cea666ef965884414b1b71f6b39a537f9238bdb2" }, - "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, - "nvim-autopairs": { "branch": "master", "commit": "23320e75953ac82e559c610bec5a90d9c6dfa743" }, - "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" }, - "nvim-dap": { "branch": "master", "commit": "968f89f8aac11b6bdbfc942c71d3436658c1435f" }, - "nvim-dap-python": { "branch": "master", "commit": "bd771691da93846b0fc7e095512146a150218bfd" }, - "nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" }, - "nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" }, - "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, - "nvim-surround": { "branch": "main", "commit": "d56752df477ebd808cb82cea2fc68cf7455abb21" }, - "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, - "nvim-treesitter-context": { "branch": "master", "commit": "dca8726fea2c14e1ce6adbaa76a04816fbfaff61" }, - "nvim-web-devicons": { "branch": "master", "commit": "c2599a81ecabaae07c49ff9b45dcd032a8d90f1a" }, - "obsidian.nvim": { "branch": "main", "commit": "705cc9b4f66eca1e54040ac819102e80a32896d3" }, - "org-bullets.nvim": { "branch": "main", "commit": "21437cfa99c70f2c18977bffd423f912a7b832ea" }, - "orgmode": { "branch": "master", "commit": "b924cbb7e9c5f2c34f84d92e49dc76e01f32cad9" }, - "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, - "render-markdown.nvim": { "branch": "main", "commit": "8074a9cc9a6f737320b7a0d76b2c4c3485155688" }, - "rose-pine": { "branch": "main", "commit": "72befaffeac38db7bdd49e0549eaa2c4806dd878" }, - "snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, - "toggleterm.nvim": { "branch": "main", "commit": "9a88eae817ef395952e08650b3283726786fb5fb" }, - "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, - "typst-preview.nvim": { "branch": "master", "commit": "dea4525d5420b7c32eebda7de15a6beb9d6574fa" }, - "vim-beancount": { "branch": "master", "commit": "589a4f06f3b2fd7cd2356c2ef1dafadf6b7a97cf" }, - "vim-just": { "branch": "main", "commit": "04b0f122f14c83f55a0f8bb2a087754dc98cdccc" }, - "vim-wakatime": { "branch": "master", "commit": "3403495670f0ee08887401a28f8430dc4ac67429" }, - "vimtex": { "branch": "master", "commit": "dc90feacb86f7b85b0b791d8073eefc769a23725" }, - "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } -} diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl new file mode 100644 index 0000000..fb5ac80 --- /dev/null +++ b/home/.chezmoiignore.tmpl @@ -0,0 +1,27 @@ + +scripts + + +{{ if ne .chezmoi.os "linux" }} +.config/awesome +.config/dunst +.config/fcitx5 +.config/hypr +.config/keyd +.config/mako +.config/readline +.config/rofi +.config/swaylock +.config/waybar +.config/wlogout +.config/krunnerrc +.config/user-dirs.dirs +.config/user-dirs.locale +{{ end }} + + +{{ if ne .chezmoi.osRelease.id "arch" }} +.config/*-flags.conf +{{ end }} + + diff --git a/dot_config/NuGet/nuget.config b/home/dot_config/NuGet/nuget.config similarity index 100% rename from dot_config/NuGet/nuget.config rename to home/dot_config/NuGet/nuget.config diff --git a/dot_config/awesome/rc.lua b/home/dot_config/awesome/rc.lua similarity index 100% rename from dot_config/awesome/rc.lua rename to home/dot_config/awesome/rc.lua diff --git a/dot_config/bash/bash_aliases b/home/dot_config/bash/bash_aliases similarity index 100% rename from dot_config/bash/bash_aliases rename to home/dot_config/bash/bash_aliases diff --git a/dot_config/bash/bashrc b/home/dot_config/bash/bashrc similarity index 100% rename from dot_config/bash/bashrc rename to home/dot_config/bash/bashrc diff --git a/dot_config/bash/global.bashrc b/home/dot_config/bash/global.bashrc similarity index 100% rename from dot_config/bash/global.bashrc rename to home/dot_config/bash/global.bashrc diff --git a/dot_config/bash/profile b/home/dot_config/bash/profile similarity index 100% rename from dot_config/bash/profile rename to home/dot_config/bash/profile diff --git a/dot_config/bash/xdg-compat.sh b/home/dot_config/bash/xdg-compat.sh similarity index 100% rename from dot_config/bash/xdg-compat.sh rename to home/dot_config/bash/xdg-compat.sh diff --git a/dot_config/bat/bat.config.dark b/home/dot_config/bat/bat.config.dark similarity index 100% rename from dot_config/bat/bat.config.dark rename to home/dot_config/bat/bat.config.dark diff --git a/dot_config/bat/bat.config.light b/home/dot_config/bat/bat.config.light similarity index 100% rename from dot_config/bat/bat.config.light rename to home/dot_config/bat/bat.config.light diff --git a/dot_config/bat/symlink_bat.config b/home/dot_config/bat/symlink_bat.config similarity index 100% rename from dot_config/bat/symlink_bat.config rename to home/dot_config/bat/symlink_bat.config diff --git a/dot_config/chromium-flags.conf b/home/dot_config/chromium-flags.conf similarity index 100% rename from dot_config/chromium-flags.conf rename to home/dot_config/chromium-flags.conf diff --git a/dot_config/conda/dot_condarc b/home/dot_config/conda/dot_condarc similarity index 100% rename from dot_config/conda/dot_condarc rename to home/dot_config/conda/dot_condarc diff --git a/dot_config/doom/beancount.el b/home/dot_config/doom/beancount.el similarity index 100% rename from dot_config/doom/beancount.el rename to home/dot_config/doom/beancount.el diff --git a/dot_config/doom/calendar.el b/home/dot_config/doom/calendar.el similarity index 100% rename from dot_config/doom/calendar.el rename to home/dot_config/doom/calendar.el diff --git a/dot_config/doom/config.el b/home/dot_config/doom/config.el similarity index 100% rename from dot_config/doom/config.el rename to home/dot_config/doom/config.el diff --git a/dot_config/doom/dot_custom.el b/home/dot_config/doom/dot_custom.el similarity index 100% rename from dot_config/doom/dot_custom.el rename to home/dot_config/doom/dot_custom.el diff --git a/dot_config/doom/dot_gitignore b/home/dot_config/doom/dot_gitignore similarity index 100% rename from dot_config/doom/dot_gitignore rename to home/dot_config/doom/dot_gitignore diff --git a/dot_config/doom/evil.el b/home/dot_config/doom/evil.el similarity index 100% rename from dot_config/doom/evil.el rename to home/dot_config/doom/evil.el diff --git a/dot_config/doom/init.el b/home/dot_config/doom/init.el similarity index 100% rename from dot_config/doom/init.el rename to home/dot_config/doom/init.el diff --git a/dot_config/doom/lisp/org-pomodoro-music-controller.el b/home/dot_config/doom/lisp/org-pomodoro-music-controller.el similarity index 100% rename from dot_config/doom/lisp/org-pomodoro-music-controller.el rename to home/dot_config/doom/lisp/org-pomodoro-music-controller.el diff --git a/dot_config/doom/lisp/org-pomodoro-telegram-notifier.el b/home/dot_config/doom/lisp/org-pomodoro-telegram-notifier.el similarity index 100% rename from dot_config/doom/lisp/org-pomodoro-telegram-notifier.el rename to home/dot_config/doom/lisp/org-pomodoro-telegram-notifier.el diff --git a/dot_config/doom/org.el b/home/dot_config/doom/org.el similarity index 100% rename from dot_config/doom/org.el rename to home/dot_config/doom/org.el diff --git a/dot_config/doom/packages.el b/home/dot_config/doom/packages.el similarity index 100% rename from dot_config/doom/packages.el rename to home/dot_config/doom/packages.el diff --git a/dot_config/doom/snippets/org-mode/align-math b/home/dot_config/doom/snippets/org-mode/align-math similarity index 100% rename from dot_config/doom/snippets/org-mode/align-math rename to home/dot_config/doom/snippets/org-mode/align-math diff --git a/dot_config/doom/snippets/org-mode/display-math b/home/dot_config/doom/snippets/org-mode/display-math similarity index 100% rename from dot_config/doom/snippets/org-mode/display-math rename to home/dot_config/doom/snippets/org-mode/display-math diff --git a/dot_config/doom/snippets/org-mode/inline-math b/home/dot_config/doom/snippets/org-mode/inline-math similarity index 100% rename from dot_config/doom/snippets/org-mode/inline-math rename to home/dot_config/doom/snippets/org-mode/inline-math diff --git a/dot_config/doom/snippets/org-mode/limit b/home/dot_config/doom/snippets/org-mode/limit similarity index 100% rename from dot_config/doom/snippets/org-mode/limit rename to home/dot_config/doom/snippets/org-mode/limit diff --git a/dot_config/doom/snippets/org-mode/summation b/home/dot_config/doom/snippets/org-mode/summation similarity index 100% rename from dot_config/doom/snippets/org-mode/summation rename to home/dot_config/doom/snippets/org-mode/summation diff --git a/dot_config/doom/snippets/org-mode/unnumbered b/home/dot_config/doom/snippets/org-mode/unnumbered similarity index 100% rename from dot_config/doom/snippets/org-mode/unnumbered rename to home/dot_config/doom/snippets/org-mode/unnumbered diff --git a/dot_config/doom/telega.el b/home/dot_config/doom/telega.el similarity index 100% rename from dot_config/doom/telega.el rename to home/dot_config/doom/telega.el diff --git a/dot_config/doom/treemacs.el b/home/dot_config/doom/treemacs.el similarity index 100% rename from dot_config/doom/treemacs.el rename to home/dot_config/doom/treemacs.el diff --git a/dot_config/dunst/dunstrc b/home/dot_config/dunst/dunstrc similarity index 100% rename from dot_config/dunst/dunstrc rename to home/dot_config/dunst/dunstrc diff --git a/dot_config/electron-flags.conf b/home/dot_config/electron-flags.conf similarity index 100% rename from dot_config/electron-flags.conf rename to home/dot_config/electron-flags.conf diff --git a/dot_config/fastfetch/config.jsonc b/home/dot_config/fastfetch/config.jsonc similarity index 100% rename from dot_config/fastfetch/config.jsonc rename to home/dot_config/fastfetch/config.jsonc diff --git a/dot_config/fcitx5/conf/cached_layouts b/home/dot_config/fcitx5/conf/cached_layouts similarity index 100% rename from dot_config/fcitx5/conf/cached_layouts rename to home/dot_config/fcitx5/conf/cached_layouts diff --git a/dot_config/fcitx5/conf/notifications.conf b/home/dot_config/fcitx5/conf/notifications.conf similarity index 100% rename from dot_config/fcitx5/conf/notifications.conf rename to home/dot_config/fcitx5/conf/notifications.conf diff --git a/dot_config/fcitx5/config b/home/dot_config/fcitx5/config similarity index 100% rename from dot_config/fcitx5/config rename to home/dot_config/fcitx5/config diff --git a/dot_config/fcitx5/profile b/home/dot_config/fcitx5/profile similarity index 100% rename from dot_config/fcitx5/profile rename to home/dot_config/fcitx5/profile diff --git a/dot_config/fish/completions/.keep b/home/dot_config/fish/completions/.keep similarity index 100% rename from dot_config/fish/completions/.keep rename to home/dot_config/fish/completions/.keep diff --git a/dot_config/fish/conf.d/0init.fish b/home/dot_config/fish/conf.d/0init.fish similarity index 100% rename from dot_config/fish/conf.d/0init.fish rename to home/dot_config/fish/conf.d/0init.fish diff --git a/dot_config/fish/conf.d/alias.fish b/home/dot_config/fish/conf.d/alias.fish similarity index 100% rename from dot_config/fish/conf.d/alias.fish rename to home/dot_config/fish/conf.d/alias.fish diff --git a/dot_config/fish/conf.d/colorscheme.fish b/home/dot_config/fish/conf.d/colorscheme.fish similarity index 100% rename from dot_config/fish/conf.d/colorscheme.fish rename to home/dot_config/fish/conf.d/colorscheme.fish diff --git a/dot_config/fish/conf.d/keymap.fish b/home/dot_config/fish/conf.d/keymap.fish similarity index 100% rename from dot_config/fish/conf.d/keymap.fish rename to home/dot_config/fish/conf.d/keymap.fish diff --git a/dot_config/fish/conf.d/keymap/+colemak.fish b/home/dot_config/fish/conf.d/keymap/+colemak.fish similarity index 100% rename from dot_config/fish/conf.d/keymap/+colemak.fish rename to home/dot_config/fish/conf.d/keymap/+colemak.fish diff --git a/dot_config/fish/conf.d/navi.fish b/home/dot_config/fish/conf.d/navi.fish similarity index 100% rename from dot_config/fish/conf.d/navi.fish rename to home/dot_config/fish/conf.d/navi.fish diff --git a/dot_config/fish/conf.d/prompt.fish b/home/dot_config/fish/conf.d/prompt.fish similarity index 100% rename from dot_config/fish/conf.d/prompt.fish rename to home/dot_config/fish/conf.d/prompt.fish diff --git a/dot_config/fish/conf.d/winterop.fish b/home/dot_config/fish/conf.d/winterop.fish similarity index 100% rename from dot_config/fish/conf.d/winterop.fish rename to home/dot_config/fish/conf.d/winterop.fish diff --git a/dot_config/fish/config.fish b/home/dot_config/fish/config.fish similarity index 100% rename from dot_config/fish/config.fish rename to home/dot_config/fish/config.fish diff --git a/dot_config/fish/functions/.keep b/home/dot_config/fish/functions/.keep similarity index 100% rename from dot_config/fish/functions/.keep rename to home/dot_config/fish/functions/.keep diff --git a/home/dot_config/fish/functions/dotenv.fish b/home/dot_config/fish/functions/dotenv.fish new file mode 100644 index 0000000..eaf5c6c --- /dev/null +++ b/home/dot_config/fish/functions/dotenv.fish @@ -0,0 +1,73 @@ +function dotenv + # Parses commend-line arguments and sets _flag_[xuh] variables. Complains if the user tries to use both -x and -u. + argparse --name=dotenv -x 'u,x' 'u/unset' 'h/help' 'x/export' 'q/quiet' -- $argv + + # If the h or --help flags are set (both can be checked using _flag_h), display help, and ignore everything else. + if test $_flag_h + __help_dotenv + else + # Any non-option command-line arguments are assumed to be .env files, so we check to see if any are present. + if set -q argv; and test (count $argv) -gt 0 + set env_files $argv + # If no environment files are specified on the command-line, we default to .env + else + set env_files .env + end + # Loop through all of the specified environment variable files and set any variables found within + for env_file in $env_files + if test -r $env_file + while read -l line + # Set variables to be global, otherwise they will not be available in your shell once this script + # has finished running. + set set_args "-g" + + # Remove the "export" directive from the line if present, and set a variable indicating whether or + # not it was found. Negate the return value of "string replace" so that 1/true means we found the + # export directive. This makes its usage easier to follow in subsequent lines. + set trimmed_line (not string replace -r '^\s*export\s+' '' -- $line) + set export $status + + # If we found the export directive in the previous step, or if -x/--export was specified on the + # command-line, set the export flag for the upcoming 'set' command. + if test $export -eq 1; or begin; set -q _flag_x; and test "$_flag_x" = "-x"; end; + set set_args "$set_args"x + end + + # Check to see if the line we are processing is basically sane. The fish set command will ignore + # leading white space on the variable name, so we allow it in our check. + if string match -q --regex -- '^\s*[a-zA-Z0-9_]+=' "$trimmed_line" + # Split the current line into name and value, and store them in $kv. We use -m1 because we only + # want to split on the first "=" we encounter. Everything after that, including additional "=" + # characters, is part of the value. + set kv (string split -m 1 = -- $trimmed_line) + # If -u/--unset has been specified, erase the variable. + if set -q _flag_u; and test "$_flag_u" = "-u" + set -e $kv[1] + # Otherwise, set the shell variable. The variable $kv contains both the name and the value we + # want to set. + else + set $set_args $kv + end + end + # Combined with the `while` keyword, this reads $env_file one line at a time. + end <$env_file + else + if not set -q _flag_q; or test "$_flag_q" != '-q' + echo "Unable to locate file $env_file" + end + end + end + end + + # This function will be available to be called directly from the shell, even though it is defined inside of dotenv. + # I put it into its own function because I think it looks a little cleaner than having a big blob of echoes inside + # the "if" statement near the top of this function. + function __help_dotenv + echo "Usage: dotenv [-u] [files]" + echo "-h/--help: Display this help message." + echo "-u/--unset: Read [files] and unset the variables found therein." + echo "-x/--export: Force variables to be exported, regardless of whether or not they are preceded by 'export' in the env file." + echo "[files]: One or more files containing name=value pairs to be read into the environment. Defaults to .env." + echo "" + end +end diff --git a/dot_config/fish/readme.md b/home/dot_config/fish/readme.md similarity index 100% rename from dot_config/fish/readme.md rename to home/dot_config/fish/readme.md diff --git a/dot_config/fish/themes/Catppuccin Latte.theme b/home/dot_config/fish/themes/Catppuccin Latte.theme similarity index 100% rename from dot_config/fish/themes/Catppuccin Latte.theme rename to home/dot_config/fish/themes/Catppuccin Latte.theme diff --git a/dot_config/fish/themes/Catppuccin Mocha.theme b/home/dot_config/fish/themes/Catppuccin Mocha.theme similarity index 100% rename from dot_config/fish/themes/Catppuccin Mocha.theme rename to home/dot_config/fish/themes/Catppuccin Mocha.theme diff --git a/dot_config/fish/themes/Rosé Pine Dawn.theme b/home/dot_config/fish/themes/Rosé Pine Dawn.theme similarity index 100% rename from dot_config/fish/themes/Rosé Pine Dawn.theme rename to home/dot_config/fish/themes/Rosé Pine Dawn.theme diff --git a/dot_config/glow/config.yml b/home/dot_config/glow/config.yml similarity index 100% rename from dot_config/glow/config.yml rename to home/dot_config/glow/config.yml diff --git a/dot_config/hypr/dot_gitignore b/home/dot_config/hypr/dot_gitignore similarity index 100% rename from dot_config/hypr/dot_gitignore rename to home/dot_config/hypr/dot_gitignore diff --git a/dot_config/hypr/hypridle.conf b/home/dot_config/hypr/hypridle.conf similarity index 100% rename from dot_config/hypr/hypridle.conf rename to home/dot_config/hypr/hypridle.conf diff --git a/dot_config/hypr/hyprland.conf b/home/dot_config/hypr/hyprland.conf similarity index 100% rename from dot_config/hypr/hyprland.conf rename to home/dot_config/hypr/hyprland.conf diff --git a/dot_config/hypr/hyprland/+colemak.conf b/home/dot_config/hypr/hyprland/+colemak.conf similarity index 100% rename from dot_config/hypr/hyprland/+colemak.conf rename to home/dot_config/hypr/hyprland/+colemak.conf diff --git a/dot_config/hypr/hyprland/+qwerty.conf b/home/dot_config/hypr/hyprland/+qwerty.conf similarity index 100% rename from dot_config/hypr/hyprland/+qwerty.conf rename to home/dot_config/hypr/hyprland/+qwerty.conf diff --git a/dot_config/hypr/hyprland/dark.conf b/home/dot_config/hypr/hyprland/dark.conf similarity index 100% rename from dot_config/hypr/hyprland/dark.conf rename to home/dot_config/hypr/hyprland/dark.conf diff --git a/dot_config/hypr/hyprland/keymaps.conf b/home/dot_config/hypr/hyprland/keymaps.conf similarity index 100% rename from dot_config/hypr/hyprland/keymaps.conf rename to home/dot_config/hypr/hyprland/keymaps.conf diff --git a/dot_config/hypr/hyprland/light.conf b/home/dot_config/hypr/hyprland/light.conf similarity index 100% rename from dot_config/hypr/hyprland/light.conf rename to home/dot_config/hypr/hyprland/light.conf diff --git a/dot_config/hypr/hyprland/rules.conf b/home/dot_config/hypr/hyprland/rules.conf similarity index 100% rename from dot_config/hypr/hyprland/rules.conf rename to home/dot_config/hypr/hyprland/rules.conf diff --git a/dot_config/hypr/hyprland/symlink_current.conf b/home/dot_config/hypr/hyprland/symlink_current.conf similarity index 100% rename from dot_config/hypr/hyprland/symlink_current.conf rename to home/dot_config/hypr/hyprland/symlink_current.conf diff --git a/dot_config/hypr/hyprlock.conf b/home/dot_config/hypr/hyprlock.conf similarity index 100% rename from dot_config/hypr/hyprlock.conf rename to home/dot_config/hypr/hyprlock.conf diff --git a/dot_config/hypr/hyprpaper.conf b/home/dot_config/hypr/hyprpaper.conf similarity index 100% rename from dot_config/hypr/hyprpaper.conf rename to home/dot_config/hypr/hyprpaper.conf diff --git a/dot_config/ideavim/ideavimrc b/home/dot_config/ideavim/ideavimrc similarity index 100% rename from dot_config/ideavim/ideavimrc rename to home/dot_config/ideavim/ideavimrc diff --git a/dot_config/ipython/dot_gitignore b/home/dot_config/ipython/dot_gitignore similarity index 100% rename from dot_config/ipython/dot_gitignore rename to home/dot_config/ipython/dot_gitignore diff --git a/dot_config/ipython/profile_default/db/.keep b/home/dot_config/ipython/profile_default/db/.keep similarity index 100% rename from dot_config/ipython/profile_default/db/.keep rename to home/dot_config/ipython/profile_default/db/.keep diff --git a/dot_config/ipython/profile_default/history.sqlite b/home/dot_config/ipython/profile_default/history.sqlite similarity index 100% rename from dot_config/ipython/profile_default/history.sqlite rename to home/dot_config/ipython/profile_default/history.sqlite diff --git a/dot_config/ipython/profile_default/ipython_config.py b/home/dot_config/ipython/profile_default/ipython_config.py similarity index 100% rename from dot_config/ipython/profile_default/ipython_config.py rename to home/dot_config/ipython/profile_default/ipython_config.py diff --git a/dot_config/ipython/profile_default/log/.keep b/home/dot_config/ipython/profile_default/log/.keep similarity index 100% rename from dot_config/ipython/profile_default/log/.keep rename to home/dot_config/ipython/profile_default/log/.keep diff --git a/dot_config/ipython/profile_default/startup/README b/home/dot_config/ipython/profile_default/startup/README similarity index 100% rename from dot_config/ipython/profile_default/startup/README rename to home/dot_config/ipython/profile_default/startup/README diff --git a/dot_config/ipython/profile_default/startup/keymap.py b/home/dot_config/ipython/profile_default/startup/keymap.py similarity index 100% rename from dot_config/ipython/profile_default/startup/keymap.py rename to home/dot_config/ipython/profile_default/startup/keymap.py diff --git a/dot_config/ipython/profile_default/startup/magic_ps.py b/home/dot_config/ipython/profile_default/startup/magic_ps.py similarity index 100% rename from dot_config/ipython/profile_default/startup/magic_ps.py rename to home/dot_config/ipython/profile_default/startup/magic_ps.py diff --git a/dot_config/keyd/app.conf b/home/dot_config/keyd/app.conf similarity index 100% rename from dot_config/keyd/app.conf rename to home/dot_config/keyd/app.conf diff --git a/dot_config/kitty/dark-theme.auto.conf b/home/dot_config/kitty/dark-theme.auto.conf similarity index 100% rename from dot_config/kitty/dark-theme.auto.conf rename to home/dot_config/kitty/dark-theme.auto.conf diff --git a/dot_config/kitty/kitty.conf b/home/dot_config/kitty/kitty.conf similarity index 100% rename from dot_config/kitty/kitty.conf rename to home/dot_config/kitty/kitty.conf diff --git a/dot_config/kitty/light-theme.auto.conf b/home/dot_config/kitty/light-theme.auto.conf similarity index 100% rename from dot_config/kitty/light-theme.auto.conf rename to home/dot_config/kitty/light-theme.auto.conf diff --git a/dot_config/kitty/window.py b/home/dot_config/kitty/window.py similarity index 100% rename from dot_config/kitty/window.py rename to home/dot_config/kitty/window.py diff --git a/dot_config/krunnerrc b/home/dot_config/krunnerrc similarity index 100% rename from dot_config/krunnerrc rename to home/dot_config/krunnerrc diff --git a/dot_config/lazygit/empty_config.yml b/home/dot_config/lazygit/empty_config.yml similarity index 100% rename from dot_config/lazygit/empty_config.yml rename to home/dot_config/lazygit/empty_config.yml diff --git a/dot_config/lesskey b/home/dot_config/lesskey similarity index 100% rename from dot_config/lesskey rename to home/dot_config/lesskey diff --git a/dot_config/lsd/lsd.yaml b/home/dot_config/lsd/lsd.yaml similarity index 100% rename from dot_config/lsd/lsd.yaml rename to home/dot_config/lsd/lsd.yaml diff --git a/dot_config/mako/config b/home/dot_config/mako/config similarity index 100% rename from dot_config/mako/config rename to home/dot_config/mako/config diff --git a/dot_config/neovide/config.toml b/home/dot_config/neovide/config.toml similarity index 100% rename from dot_config/neovide/config.toml rename to home/dot_config/neovide/config.toml diff --git a/dot_config/nix-config/flake.lock b/home/dot_config/nix-config/flake.lock similarity index 100% rename from dot_config/nix-config/flake.lock rename to home/dot_config/nix-config/flake.lock diff --git a/dot_config/nix-config/flake.nix b/home/dot_config/nix-config/flake.nix similarity index 100% rename from dot_config/nix-config/flake.nix rename to home/dot_config/nix-config/flake.nix diff --git a/dot_config/nix-config/hosts/macbook/brew.nix b/home/dot_config/nix-config/hosts/macbook/brew.nix similarity index 100% rename from dot_config/nix-config/hosts/macbook/brew.nix rename to home/dot_config/nix-config/hosts/macbook/brew.nix diff --git a/dot_config/nix-config/hosts/macbook/default.nix b/home/dot_config/nix-config/hosts/macbook/default.nix similarity index 100% rename from dot_config/nix-config/hosts/macbook/default.nix rename to home/dot_config/nix-config/hosts/macbook/default.nix diff --git a/dot_config/nix-config/hosts/macbook/system.nix b/home/dot_config/nix-config/hosts/macbook/system.nix similarity index 100% rename from dot_config/nix-config/hosts/macbook/system.nix rename to home/dot_config/nix-config/hosts/macbook/system.nix diff --git a/dot_config/nvim/dot_editorconfig b/home/dot_config/nvim/dot_editorconfig similarity index 100% rename from dot_config/nvim/dot_editorconfig rename to home/dot_config/nvim/dot_editorconfig diff --git a/dot_config/nvim/init.lua b/home/dot_config/nvim/init.lua similarity index 100% rename from dot_config/nvim/init.lua rename to home/dot_config/nvim/init.lua diff --git a/dot_config/nvim/lsp/bashls.lua b/home/dot_config/nvim/lsp/bashls.lua similarity index 100% rename from dot_config/nvim/lsp/bashls.lua rename to home/dot_config/nvim/lsp/bashls.lua diff --git a/dot_config/nvim/lsp/beancount.lua b/home/dot_config/nvim/lsp/beancount.lua similarity index 100% rename from dot_config/nvim/lsp/beancount.lua rename to home/dot_config/nvim/lsp/beancount.lua diff --git a/dot_config/nvim/lsp/clangd.lua b/home/dot_config/nvim/lsp/clangd.lua similarity index 100% rename from dot_config/nvim/lsp/clangd.lua rename to home/dot_config/nvim/lsp/clangd.lua diff --git a/dot_config/nvim/lsp/gopls.lua b/home/dot_config/nvim/lsp/gopls.lua similarity index 100% rename from dot_config/nvim/lsp/gopls.lua rename to home/dot_config/nvim/lsp/gopls.lua diff --git a/dot_config/nvim/lsp/jdtls.lua b/home/dot_config/nvim/lsp/jdtls.lua similarity index 100% rename from dot_config/nvim/lsp/jdtls.lua rename to home/dot_config/nvim/lsp/jdtls.lua diff --git a/dot_config/nvim/lsp/jsonls.lua b/home/dot_config/nvim/lsp/jsonls.lua similarity index 100% rename from dot_config/nvim/lsp/jsonls.lua rename to home/dot_config/nvim/lsp/jsonls.lua diff --git a/dot_config/nvim/lsp/luals.lua b/home/dot_config/nvim/lsp/luals.lua similarity index 100% rename from dot_config/nvim/lsp/luals.lua rename to home/dot_config/nvim/lsp/luals.lua diff --git a/dot_config/nvim/lsp/markdown_oxide.lua b/home/dot_config/nvim/lsp/markdown_oxide.lua similarity index 100% rename from dot_config/nvim/lsp/markdown_oxide.lua rename to home/dot_config/nvim/lsp/markdown_oxide.lua diff --git a/dot_config/nvim/lsp/pyright.lua b/home/dot_config/nvim/lsp/pyright.lua similarity index 100% rename from dot_config/nvim/lsp/pyright.lua rename to home/dot_config/nvim/lsp/pyright.lua diff --git a/dot_config/nvim/lsp/rust_analyzer.lua b/home/dot_config/nvim/lsp/rust_analyzer.lua similarity index 100% rename from dot_config/nvim/lsp/rust_analyzer.lua rename to home/dot_config/nvim/lsp/rust_analyzer.lua diff --git a/dot_config/nvim/lsp/taplo.lua b/home/dot_config/nvim/lsp/taplo.lua similarity index 100% rename from dot_config/nvim/lsp/taplo.lua rename to home/dot_config/nvim/lsp/taplo.lua diff --git a/dot_config/nvim/lsp/vimls.lua b/home/dot_config/nvim/lsp/vimls.lua similarity index 100% rename from dot_config/nvim/lsp/vimls.lua rename to home/dot_config/nvim/lsp/vimls.lua diff --git a/dot_config/nvim/lsp/yamlls.lua b/home/dot_config/nvim/lsp/yamlls.lua similarity index 100% rename from dot_config/nvim/lsp/yamlls.lua rename to home/dot_config/nvim/lsp/yamlls.lua diff --git a/dot_config/nvim/lua/config/colors.lua b/home/dot_config/nvim/lua/config/colors.lua similarity index 100% rename from dot_config/nvim/lua/config/colors.lua rename to home/dot_config/nvim/lua/config/colors.lua diff --git a/dot_config/nvim/lua/config/colorscheme.lua b/home/dot_config/nvim/lua/config/colorscheme.lua similarity index 100% rename from dot_config/nvim/lua/config/colorscheme.lua rename to home/dot_config/nvim/lua/config/colorscheme.lua diff --git a/dot_config/nvim/lua/config/diagnostics.lua b/home/dot_config/nvim/lua/config/diagnostics.lua similarity index 100% rename from dot_config/nvim/lua/config/diagnostics.lua rename to home/dot_config/nvim/lua/config/diagnostics.lua diff --git a/dot_config/nvim/lua/config/icons.lua b/home/dot_config/nvim/lua/config/icons.lua similarity index 100% rename from dot_config/nvim/lua/config/icons.lua rename to home/dot_config/nvim/lua/config/icons.lua diff --git a/dot_config/nvim/lua/config/keymaps.lua b/home/dot_config/nvim/lua/config/keymaps.lua similarity index 100% rename from dot_config/nvim/lua/config/keymaps.lua rename to home/dot_config/nvim/lua/config/keymaps.lua diff --git a/dot_config/nvim/lua/config/migration.lua b/home/dot_config/nvim/lua/config/migration.lua similarity index 100% rename from dot_config/nvim/lua/config/migration.lua rename to home/dot_config/nvim/lua/config/migration.lua diff --git a/dot_config/nvim/lua/config/options.lua b/home/dot_config/nvim/lua/config/options.lua similarity index 100% rename from dot_config/nvim/lua/config/options.lua rename to home/dot_config/nvim/lua/config/options.lua diff --git a/dot_config/nvim/lua/config/plugins.lua b/home/dot_config/nvim/lua/config/plugins.lua similarity index 100% rename from dot_config/nvim/lua/config/plugins.lua rename to home/dot_config/nvim/lua/config/plugins.lua diff --git a/dot_config/nvim/lua/config/servers.lua b/home/dot_config/nvim/lua/config/servers.lua similarity index 100% rename from dot_config/nvim/lua/config/servers.lua rename to home/dot_config/nvim/lua/config/servers.lua diff --git a/dot_config/nvim/lua/config/vscode.lua b/home/dot_config/nvim/lua/config/vscode.lua similarity index 100% rename from dot_config/nvim/lua/config/vscode.lua rename to home/dot_config/nvim/lua/config/vscode.lua diff --git a/dot_config/nvim/lua/keymaps/basic.lua b/home/dot_config/nvim/lua/keymaps/basic.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/basic.lua rename to home/dot_config/nvim/lua/keymaps/basic.lua diff --git a/dot_config/nvim/lua/keymaps/buffer.lua b/home/dot_config/nvim/lua/keymaps/buffer.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/buffer.lua rename to home/dot_config/nvim/lua/keymaps/buffer.lua diff --git a/dot_config/nvim/lua/keymaps/init.lua b/home/dot_config/nvim/lua/keymaps/init.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/init.lua rename to home/dot_config/nvim/lua/keymaps/init.lua diff --git a/dot_config/nvim/lua/keymaps/language.lua b/home/dot_config/nvim/lua/keymaps/language.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/language.lua rename to home/dot_config/nvim/lua/keymaps/language.lua diff --git a/dot_config/nvim/lua/keymaps/leaders.bak b/home/dot_config/nvim/lua/keymaps/leaders.bak similarity index 100% rename from dot_config/nvim/lua/keymaps/leaders.bak rename to home/dot_config/nvim/lua/keymaps/leaders.bak diff --git a/dot_config/nvim/lua/keymaps/leaders.lua b/home/dot_config/nvim/lua/keymaps/leaders.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/leaders.lua rename to home/dot_config/nvim/lua/keymaps/leaders.lua diff --git a/dot_config/nvim/lua/keymaps/lspkeys.lua b/home/dot_config/nvim/lua/keymaps/lspkeys.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/lspkeys.lua rename to home/dot_config/nvim/lua/keymaps/lspkeys.lua diff --git a/dot_config/nvim/lua/keymaps/modifier.lua b/home/dot_config/nvim/lua/keymaps/modifier.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/modifier.lua rename to home/dot_config/nvim/lua/keymaps/modifier.lua diff --git a/dot_config/nvim/lua/keymaps/nvim-tree.lua b/home/dot_config/nvim/lua/keymaps/nvim-tree.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/nvim-tree.lua rename to home/dot_config/nvim/lua/keymaps/nvim-tree.lua diff --git a/dot_config/nvim/lua/keymaps/user-command.lua b/home/dot_config/nvim/lua/keymaps/user-command.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/user-command.lua rename to home/dot_config/nvim/lua/keymaps/user-command.lua diff --git a/dot_config/nvim/lua/keymaps/utils.lua b/home/dot_config/nvim/lua/keymaps/utils.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/utils.lua rename to home/dot_config/nvim/lua/keymaps/utils.lua diff --git a/dot_config/nvim/lua/keymaps/visual-multi.lua b/home/dot_config/nvim/lua/keymaps/visual-multi.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/visual-multi.lua rename to home/dot_config/nvim/lua/keymaps/visual-multi.lua diff --git a/dot_config/nvim/lua/keymaps/which.lua b/home/dot_config/nvim/lua/keymaps/which.lua similarity index 100% rename from dot_config/nvim/lua/keymaps/which.lua rename to home/dot_config/nvim/lua/keymaps/which.lua diff --git a/dot_config/nvim/lua/plugins/appearance.lua b/home/dot_config/nvim/lua/plugins/appearance.lua similarity index 100% rename from dot_config/nvim/lua/plugins/appearance.lua rename to home/dot_config/nvim/lua/plugins/appearance.lua diff --git a/dot_config/nvim/lua/plugins/completion.lua b/home/dot_config/nvim/lua/plugins/completion.lua similarity index 100% rename from dot_config/nvim/lua/plugins/completion.lua rename to home/dot_config/nvim/lua/plugins/completion.lua diff --git a/dot_config/nvim/lua/plugins/dap.lua b/home/dot_config/nvim/lua/plugins/dap.lua similarity index 100% rename from dot_config/nvim/lua/plugins/dap.lua rename to home/dot_config/nvim/lua/plugins/dap.lua diff --git a/dot_config/nvim/lua/plugins/edit.lua b/home/dot_config/nvim/lua/plugins/edit.lua similarity index 100% rename from dot_config/nvim/lua/plugins/edit.lua rename to home/dot_config/nvim/lua/plugins/edit.lua diff --git a/dot_config/nvim/lua/plugins/fileutils.lua b/home/dot_config/nvim/lua/plugins/fileutils.lua similarity index 100% rename from dot_config/nvim/lua/plugins/fileutils.lua rename to home/dot_config/nvim/lua/plugins/fileutils.lua diff --git a/dot_config/nvim/lua/plugins/init.lua b/home/dot_config/nvim/lua/plugins/init.lua similarity index 100% rename from dot_config/nvim/lua/plugins/init.lua rename to home/dot_config/nvim/lua/plugins/init.lua diff --git a/dot_config/nvim/lua/plugins/lang/beancount.lua b/home/dot_config/nvim/lua/plugins/lang/beancount.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/beancount.lua rename to home/dot_config/nvim/lua/plugins/lang/beancount.lua diff --git a/dot_config/nvim/lua/plugins/lang/init.lua b/home/dot_config/nvim/lua/plugins/lang/init.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/init.lua rename to home/dot_config/nvim/lua/plugins/lang/init.lua diff --git a/dot_config/nvim/lua/plugins/lang/just.lua b/home/dot_config/nvim/lua/plugins/lang/just.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/just.lua rename to home/dot_config/nvim/lua/plugins/lang/just.lua diff --git a/dot_config/nvim/lua/plugins/lang/lua.lua b/home/dot_config/nvim/lua/plugins/lang/lua.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/lua.lua rename to home/dot_config/nvim/lua/plugins/lang/lua.lua diff --git a/dot_config/nvim/lua/plugins/lang/markdown/init.lua b/home/dot_config/nvim/lua/plugins/lang/markdown/init.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/markdown/init.lua rename to home/dot_config/nvim/lua/plugins/lang/markdown/init.lua diff --git a/dot_config/nvim/lua/plugins/lang/markdown/markview.lua.bak b/home/dot_config/nvim/lua/plugins/lang/markdown/markview.lua.bak similarity index 100% rename from dot_config/nvim/lua/plugins/lang/markdown/markview.lua.bak rename to home/dot_config/nvim/lua/plugins/lang/markdown/markview.lua.bak diff --git a/dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua b/home/dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua rename to home/dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua diff --git a/dot_config/nvim/lua/plugins/lang/markdown/render-markdown.lua b/home/dot_config/nvim/lua/plugins/lang/markdown/render-markdown.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/markdown/render-markdown.lua rename to home/dot_config/nvim/lua/plugins/lang/markdown/render-markdown.lua diff --git a/dot_config/nvim/lua/plugins/lang/org.lua b/home/dot_config/nvim/lua/plugins/lang/org.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/org.lua rename to home/dot_config/nvim/lua/plugins/lang/org.lua diff --git a/dot_config/nvim/lua/plugins/lang/tex.lua b/home/dot_config/nvim/lua/plugins/lang/tex.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/tex.lua rename to home/dot_config/nvim/lua/plugins/lang/tex.lua diff --git a/dot_config/nvim/lua/plugins/lang/treesitter.lua b/home/dot_config/nvim/lua/plugins/lang/treesitter.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/treesitter.lua rename to home/dot_config/nvim/lua/plugins/lang/treesitter.lua diff --git a/dot_config/nvim/lua/plugins/lang/typst.lua b/home/dot_config/nvim/lua/plugins/lang/typst.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lang/typst.lua rename to home/dot_config/nvim/lua/plugins/lang/typst.lua diff --git a/dot_config/nvim/lua/plugins/lazy-nvim.lua b/home/dot_config/nvim/lua/plugins/lazy-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/lazy-nvim.lua rename to home/dot_config/nvim/lua/plugins/lazy-nvim.lua diff --git a/dot_config/nvim/lua/plugins/misc.lua b/home/dot_config/nvim/lua/plugins/misc.lua similarity index 100% rename from dot_config/nvim/lua/plugins/misc.lua rename to home/dot_config/nvim/lua/plugins/misc.lua diff --git a/dot_config/nvim/lua/plugins/mod/alpha-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/alpha-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/alpha-nvim.lua rename to home/dot_config/nvim/lua/plugins/mod/alpha-nvim.lua diff --git a/dot_config/nvim/lua/plugins/mod/autopairs.lua b/home/dot_config/nvim/lua/plugins/mod/autopairs.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/autopairs.lua rename to home/dot_config/nvim/lua/plugins/mod/autopairs.lua diff --git a/dot_config/nvim/lua/plugins/mod/avante-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/avante-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/avante-nvim.lua rename to home/dot_config/nvim/lua/plugins/mod/avante-nvim.lua diff --git a/dot_config/nvim/lua/plugins/mod/blink-cmp.lua b/home/dot_config/nvim/lua/plugins/mod/blink-cmp.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/blink-cmp.lua rename to home/dot_config/nvim/lua/plugins/mod/blink-cmp.lua diff --git a/dot_config/nvim/lua/plugins/mod/bufferline.lua b/home/dot_config/nvim/lua/plugins/mod/bufferline.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/bufferline.lua rename to home/dot_config/nvim/lua/plugins/mod/bufferline.lua diff --git a/dot_config/nvim/lua/plugins/mod/conform-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/conform-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/conform-nvim.lua rename to home/dot_config/nvim/lua/plugins/mod/conform-nvim.lua diff --git a/dot_config/nvim/lua/plugins/mod/copilot-lua.lua b/home/dot_config/nvim/lua/plugins/mod/copilot-lua.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/copilot-lua.lua rename to home/dot_config/nvim/lua/plugins/mod/copilot-lua.lua diff --git a/dot_config/nvim/lua/plugins/mod/fzf.lua b/home/dot_config/nvim/lua/plugins/mod/fzf.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/fzf.lua rename to home/dot_config/nvim/lua/plugins/mod/fzf.lua diff --git a/dot_config/nvim/lua/plugins/mod/hover-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/hover-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/hover-nvim.lua rename to home/dot_config/nvim/lua/plugins/mod/hover-nvim.lua diff --git a/dot_config/nvim/lua/plugins/mod/image-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/image-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/image-nvim.lua rename to home/dot_config/nvim/lua/plugins/mod/image-nvim.lua diff --git a/dot_config/nvim/lua/plugins/mod/img-clip.lua b/home/dot_config/nvim/lua/plugins/mod/img-clip.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/img-clip.lua rename to home/dot_config/nvim/lua/plugins/mod/img-clip.lua diff --git a/dot_config/nvim/lua/plugins/mod/lualine/components.lua b/home/dot_config/nvim/lua/plugins/mod/lualine/components.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/lualine/components.lua rename to home/dot_config/nvim/lua/plugins/mod/lualine/components.lua diff --git a/dot_config/nvim/lua/plugins/mod/lualine/init.lua b/home/dot_config/nvim/lua/plugins/mod/lualine/init.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/lualine/init.lua rename to home/dot_config/nvim/lua/plugins/mod/lualine/init.lua diff --git a/dot_config/nvim/lua/plugins/mod/mc.lua b/home/dot_config/nvim/lua/plugins/mod/mc.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/mc.lua rename to home/dot_config/nvim/lua/plugins/mod/mc.lua diff --git a/dot_config/nvim/lua/plugins/mod/neo-tree.lua b/home/dot_config/nvim/lua/plugins/mod/neo-tree.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/neo-tree.lua rename to home/dot_config/nvim/lua/plugins/mod/neo-tree.lua diff --git a/dot_config/nvim/lua/plugins/mod/nvim-cmp.lua b/home/dot_config/nvim/lua/plugins/mod/nvim-cmp.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/nvim-cmp.lua rename to home/dot_config/nvim/lua/plugins/mod/nvim-cmp.lua diff --git a/dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua b/home/dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua rename to home/dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua diff --git a/dot_config/nvim/lua/plugins/mod/nvim-tree.lua b/home/dot_config/nvim/lua/plugins/mod/nvim-tree.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/nvim-tree.lua rename to home/dot_config/nvim/lua/plugins/mod/nvim-tree.lua diff --git a/dot_config/nvim/lua/plugins/mod/snacks-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/snacks-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/snacks-nvim.lua rename to home/dot_config/nvim/lua/plugins/mod/snacks-nvim.lua diff --git a/dot_config/nvim/lua/plugins/mod/telescope.lua b/home/dot_config/nvim/lua/plugins/mod/telescope.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/telescope.lua rename to home/dot_config/nvim/lua/plugins/mod/telescope.lua diff --git a/dot_config/nvim/lua/plugins/mod/toggleterm.lua b/home/dot_config/nvim/lua/plugins/mod/toggleterm.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/toggleterm.lua rename to home/dot_config/nvim/lua/plugins/mod/toggleterm.lua diff --git a/dot_config/nvim/lua/plugins/mod/trouble-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/trouble-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/trouble-nvim.lua rename to home/dot_config/nvim/lua/plugins/mod/trouble-nvim.lua diff --git a/dot_config/nvim/lua/plugins/mod/which-keys-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/which-keys-nvim.lua similarity index 100% rename from dot_config/nvim/lua/plugins/mod/which-keys-nvim.lua rename to home/dot_config/nvim/lua/plugins/mod/which-keys-nvim.lua diff --git a/dot_config/nvim/readme.md b/home/dot_config/nvim/readme.md similarity index 100% rename from dot_config/nvim/readme.md rename to home/dot_config/nvim/readme.md diff --git a/dot_config/nvim/stylua.toml b/home/dot_config/nvim/stylua.toml similarity index 100% rename from dot_config/nvim/stylua.toml rename to home/dot_config/nvim/stylua.toml diff --git a/dot_config/pip/pip.conf b/home/dot_config/pip/pip.conf similarity index 100% rename from dot_config/pip/pip.conf rename to home/dot_config/pip/pip.conf diff --git a/dot_config/powershell/Aliases.ps1 b/home/dot_config/powershell/Aliases.ps1 similarity index 100% rename from dot_config/powershell/Aliases.ps1 rename to home/dot_config/powershell/Aliases.ps1 diff --git a/dot_config/powershell/Completions.ps1 b/home/dot_config/powershell/Completions.ps1 similarity index 100% rename from dot_config/powershell/Completions.ps1 rename to home/dot_config/powershell/Completions.ps1 diff --git a/dot_config/powershell/Environment.ps1 b/home/dot_config/powershell/Environment.ps1 similarity index 100% rename from dot_config/powershell/Environment.ps1 rename to home/dot_config/powershell/Environment.ps1 diff --git a/dot_config/powershell/Keymap.ps1 b/home/dot_config/powershell/Keymap.ps1 similarity index 100% rename from dot_config/powershell/Keymap.ps1 rename to home/dot_config/powershell/Keymap.ps1 diff --git a/dot_config/powershell/Keymap/Colemak.ps1 b/home/dot_config/powershell/Keymap/Colemak.ps1 similarity index 100% rename from dot_config/powershell/Keymap/Colemak.ps1 rename to home/dot_config/powershell/Keymap/Colemak.ps1 diff --git a/dot_config/powershell/Microsoft.PowerShell_profile.ps1 b/home/dot_config/powershell/Microsoft.PowerShell_profile.ps1 similarity index 100% rename from dot_config/powershell/Microsoft.PowerShell_profile.ps1 rename to home/dot_config/powershell/Microsoft.PowerShell_profile.ps1 diff --git a/dot_config/powershell/Modules.ps1 b/home/dot_config/powershell/Modules.ps1 similarity index 100% rename from dot_config/powershell/Modules.ps1 rename to home/dot_config/powershell/Modules.ps1 diff --git a/dot_config/powershell/Navigation.ps1 b/home/dot_config/powershell/Navigation.ps1 similarity index 100% rename from dot_config/powershell/Navigation.ps1 rename to home/dot_config/powershell/Navigation.ps1 diff --git a/dot_config/powershell/Prompt.ps1 b/home/dot_config/powershell/Prompt.ps1 similarity index 100% rename from dot_config/powershell/Prompt.ps1 rename to home/dot_config/powershell/Prompt.ps1 diff --git a/dot_config/powershell/readme.md b/home/dot_config/powershell/readme.md similarity index 100% rename from dot_config/powershell/readme.md rename to home/dot_config/powershell/readme.md diff --git a/dot_config/powershell/xaa b/home/dot_config/powershell/xaa similarity index 100% rename from dot_config/powershell/xaa rename to home/dot_config/powershell/xaa diff --git a/dot_config/readline/inputrc b/home/dot_config/readline/inputrc similarity index 100% rename from dot_config/readline/inputrc rename to home/dot_config/readline/inputrc diff --git a/dot_config/rofi/config.rasi b/home/dot_config/rofi/config.rasi similarity index 100% rename from dot_config/rofi/config.rasi rename to home/dot_config/rofi/config.rasi diff --git a/dot_config/rofi/dark.rasi b/home/dot_config/rofi/dark.rasi similarity index 100% rename from dot_config/rofi/dark.rasi rename to home/dot_config/rofi/dark.rasi diff --git a/dot_config/rofi/light.rasi b/home/dot_config/rofi/light.rasi similarity index 100% rename from dot_config/rofi/light.rasi rename to home/dot_config/rofi/light.rasi diff --git a/dot_config/rofi/symlink_current.rasi b/home/dot_config/rofi/symlink_current.rasi similarity index 100% rename from dot_config/rofi/symlink_current.rasi rename to home/dot_config/rofi/symlink_current.rasi diff --git a/dot_config/rtorrent/rtorrent.rc b/home/dot_config/rtorrent/rtorrent.rc similarity index 100% rename from dot_config/rtorrent/rtorrent.rc rename to home/dot_config/rtorrent/rtorrent.rc diff --git a/dot_config/screen/+colemak.screenrc b/home/dot_config/screen/+colemak.screenrc similarity index 100% rename from dot_config/screen/+colemak.screenrc rename to home/dot_config/screen/+colemak.screenrc diff --git a/dot_config/screen/+qwerty.screenrc b/home/dot_config/screen/+qwerty.screenrc similarity index 100% rename from dot_config/screen/+qwerty.screenrc rename to home/dot_config/screen/+qwerty.screenrc diff --git a/dot_config/screen/screenrc b/home/dot_config/screen/screenrc similarity index 100% rename from dot_config/screen/screenrc rename to home/dot_config/screen/screenrc diff --git a/dot_config/sioyek/keys_user.config b/home/dot_config/sioyek/keys_user.config similarity index 100% rename from dot_config/sioyek/keys_user.config rename to home/dot_config/sioyek/keys_user.config diff --git a/dot_config/sioyek/prefs_user.config b/home/dot_config/sioyek/prefs_user.config similarity index 100% rename from dot_config/sioyek/prefs_user.config rename to home/dot_config/sioyek/prefs_user.config diff --git a/dot_config/starship.toml b/home/dot_config/starship.toml similarity index 100% rename from dot_config/starship.toml rename to home/dot_config/starship.toml diff --git a/dot_config/swaylock/swaylock b/home/dot_config/swaylock/swaylock similarity index 100% rename from dot_config/swaylock/swaylock rename to home/dot_config/swaylock/swaylock diff --git a/dot_config/systemd/user/emacs-daemon.service b/home/dot_config/systemd/user/emacs-daemon.service similarity index 100% rename from dot_config/systemd/user/emacs-daemon.service rename to home/dot_config/systemd/user/emacs-daemon.service diff --git a/dot_config/systemd/user/keyd-app.service b/home/dot_config/systemd/user/keyd-app.service similarity index 100% rename from dot_config/systemd/user/keyd-app.service rename to home/dot_config/systemd/user/keyd-app.service diff --git a/dot_config/systemd/user/mihomo.service b/home/dot_config/systemd/user/mihomo.service similarity index 100% rename from dot_config/systemd/user/mihomo.service rename to home/dot_config/systemd/user/mihomo.service diff --git a/dot_config/tmux/+colemak.tmux b/home/dot_config/tmux/+colemak.tmux similarity index 100% rename from dot_config/tmux/+colemak.tmux rename to home/dot_config/tmux/+colemak.tmux diff --git a/dot_config/tmux/+qwerty.tmux b/home/dot_config/tmux/+qwerty.tmux similarity index 100% rename from dot_config/tmux/+qwerty.tmux rename to home/dot_config/tmux/+qwerty.tmux diff --git a/dot_config/tmux/tmux.conf b/home/dot_config/tmux/tmux.conf similarity index 100% rename from dot_config/tmux/tmux.conf rename to home/dot_config/tmux/tmux.conf diff --git a/dot_config/user-dirs.dirs b/home/dot_config/user-dirs.dirs similarity index 100% rename from dot_config/user-dirs.dirs rename to home/dot_config/user-dirs.dirs diff --git a/dot_config/user-dirs.locale b/home/dot_config/user-dirs.locale similarity index 100% rename from dot_config/user-dirs.locale rename to home/dot_config/user-dirs.locale diff --git a/dot_config/vim/vimrc b/home/dot_config/vim/vimrc similarity index 100% rename from dot_config/vim/vimrc rename to home/dot_config/vim/vimrc diff --git a/dot_config/waybar/config.jsonc b/home/dot_config/waybar/config.jsonc similarity index 100% rename from dot_config/waybar/config.jsonc rename to home/dot_config/waybar/config.jsonc diff --git a/dot_config/waybar/dark.css b/home/dot_config/waybar/dark.css similarity index 100% rename from dot_config/waybar/dark.css rename to home/dot_config/waybar/dark.css diff --git a/dot_config/waybar/light.css b/home/dot_config/waybar/light.css similarity index 100% rename from dot_config/waybar/light.css rename to home/dot_config/waybar/light.css diff --git a/dot_config/waybar/modules/hyprland-workspace.jsonc b/home/dot_config/waybar/modules/hyprland-workspace.jsonc similarity index 100% rename from dot_config/waybar/modules/hyprland-workspace.jsonc rename to home/dot_config/waybar/modules/hyprland-workspace.jsonc diff --git a/dot_config/waybar/modules/misc.jsonc b/home/dot_config/waybar/modules/misc.jsonc similarity index 100% rename from dot_config/waybar/modules/misc.jsonc rename to home/dot_config/waybar/modules/misc.jsonc diff --git a/dot_config/waybar/style.css b/home/dot_config/waybar/style.css similarity index 100% rename from dot_config/waybar/style.css rename to home/dot_config/waybar/style.css diff --git a/dot_config/wezterm/appearance.lua b/home/dot_config/wezterm/appearance.lua similarity index 100% rename from dot_config/wezterm/appearance.lua rename to home/dot_config/wezterm/appearance.lua diff --git a/dot_config/wezterm/color.lua b/home/dot_config/wezterm/color.lua similarity index 100% rename from dot_config/wezterm/color.lua rename to home/dot_config/wezterm/color.lua diff --git a/dot_config/wezterm/dot_gitignore b/home/dot_config/wezterm/dot_gitignore similarity index 100% rename from dot_config/wezterm/dot_gitignore rename to home/dot_config/wezterm/dot_gitignore diff --git a/dot_config/wezterm/keymaps/colemak.lua b/home/dot_config/wezterm/keymaps/colemak.lua similarity index 100% rename from dot_config/wezterm/keymaps/colemak.lua rename to home/dot_config/wezterm/keymaps/colemak.lua diff --git a/dot_config/wezterm/keymaps/init.lua b/home/dot_config/wezterm/keymaps/init.lua similarity index 100% rename from dot_config/wezterm/keymaps/init.lua rename to home/dot_config/wezterm/keymaps/init.lua diff --git a/dot_config/wezterm/keymaps/leaders.lua b/home/dot_config/wezterm/keymaps/leaders.lua similarity index 100% rename from dot_config/wezterm/keymaps/leaders.lua rename to home/dot_config/wezterm/keymaps/leaders.lua diff --git a/dot_config/wezterm/keymaps/qwerty.lua b/home/dot_config/wezterm/keymaps/qwerty.lua similarity index 100% rename from dot_config/wezterm/keymaps/qwerty.lua rename to home/dot_config/wezterm/keymaps/qwerty.lua diff --git a/dot_config/wezterm/launcher.lua b/home/dot_config/wezterm/launcher.lua similarity index 100% rename from dot_config/wezterm/launcher.lua rename to home/dot_config/wezterm/launcher.lua diff --git a/dot_config/wezterm/misc.lua b/home/dot_config/wezterm/misc.lua similarity index 100% rename from dot_config/wezterm/misc.lua rename to home/dot_config/wezterm/misc.lua diff --git a/dot_config/wezterm/tab.lua b/home/dot_config/wezterm/tab.lua similarity index 100% rename from dot_config/wezterm/tab.lua rename to home/dot_config/wezterm/tab.lua diff --git a/dot_config/wezterm/utils.lua b/home/dot_config/wezterm/utils.lua similarity index 100% rename from dot_config/wezterm/utils.lua rename to home/dot_config/wezterm/utils.lua diff --git a/dot_config/wezterm/wezterm.lua b/home/dot_config/wezterm/wezterm.lua similarity index 100% rename from dot_config/wezterm/wezterm.lua rename to home/dot_config/wezterm/wezterm.lua diff --git a/dot_config/wlogout/actions b/home/dot_config/wlogout/actions similarity index 100% rename from dot_config/wlogout/actions rename to home/dot_config/wlogout/actions diff --git a/dot_config/wlogout/icons/hibernate.png b/home/dot_config/wlogout/icons/hibernate.png similarity index 100% rename from dot_config/wlogout/icons/hibernate.png rename to home/dot_config/wlogout/icons/hibernate.png diff --git a/dot_config/wlogout/icons/lock.png b/home/dot_config/wlogout/icons/lock.png similarity index 100% rename from dot_config/wlogout/icons/lock.png rename to home/dot_config/wlogout/icons/lock.png diff --git a/dot_config/wlogout/icons/logout.png b/home/dot_config/wlogout/icons/logout.png similarity index 100% rename from dot_config/wlogout/icons/logout.png rename to home/dot_config/wlogout/icons/logout.png diff --git a/dot_config/wlogout/icons/reboot.png b/home/dot_config/wlogout/icons/reboot.png similarity index 100% rename from dot_config/wlogout/icons/reboot.png rename to home/dot_config/wlogout/icons/reboot.png diff --git a/dot_config/wlogout/icons/shutdown.png b/home/dot_config/wlogout/icons/shutdown.png similarity index 100% rename from dot_config/wlogout/icons/shutdown.png rename to home/dot_config/wlogout/icons/shutdown.png diff --git a/dot_config/wlogout/icons/suspend.png b/home/dot_config/wlogout/icons/suspend.png similarity index 100% rename from dot_config/wlogout/icons/suspend.png rename to home/dot_config/wlogout/icons/suspend.png diff --git a/dot_config/wlogout/layout b/home/dot_config/wlogout/layout similarity index 100% rename from dot_config/wlogout/layout rename to home/dot_config/wlogout/layout diff --git a/dot_config/wlogout/style.css b/home/dot_config/wlogout/style.css similarity index 100% rename from dot_config/wlogout/style.css rename to home/dot_config/wlogout/style.css diff --git a/dot_config/yazi/dark.toml b/home/dot_config/yazi/dark.toml similarity index 100% rename from dot_config/yazi/dark.toml rename to home/dot_config/yazi/dark.toml diff --git a/dot_config/yazi/dot_gitignore b/home/dot_config/yazi/dot_gitignore similarity index 100% rename from dot_config/yazi/dot_gitignore rename to home/dot_config/yazi/dot_gitignore diff --git a/dot_config/yazi/init.lua b/home/dot_config/yazi/init.lua similarity index 100% rename from dot_config/yazi/init.lua rename to home/dot_config/yazi/init.lua diff --git a/dot_config/yazi/keymap.toml b/home/dot_config/yazi/keymap.toml similarity index 100% rename from dot_config/yazi/keymap.toml rename to home/dot_config/yazi/keymap.toml diff --git a/dot_config/yazi/light.toml b/home/dot_config/yazi/light.toml similarity index 100% rename from dot_config/yazi/light.toml rename to home/dot_config/yazi/light.toml diff --git a/dot_config/yazi/symlink_theme.toml b/home/dot_config/yazi/symlink_theme.toml similarity index 100% rename from dot_config/yazi/symlink_theme.toml rename to home/dot_config/yazi/symlink_theme.toml diff --git a/dot_config/yazi/yazi.toml b/home/dot_config/yazi/yazi.toml similarity index 100% rename from dot_config/yazi/yazi.toml rename to home/dot_config/yazi/yazi.toml diff --git a/dot_config/zed/keymap.json b/home/dot_config/zed/keymap.json similarity index 100% rename from dot_config/zed/keymap.json rename to home/dot_config/zed/keymap.json diff --git a/dot_config/zed/keymap_backup.json b/home/dot_config/zed/keymap_backup.json similarity index 100% rename from dot_config/zed/keymap_backup.json rename to home/dot_config/zed/keymap_backup.json diff --git a/dot_config/zed/settings.json b/home/dot_config/zed/settings.json similarity index 100% rename from dot_config/zed/settings.json rename to home/dot_config/zed/settings.json diff --git a/dot_config/zed/snippets/executable_c.json b/home/dot_config/zed/snippets/executable_c.json similarity index 100% rename from dot_config/zed/snippets/executable_c.json rename to home/dot_config/zed/snippets/executable_c.json diff --git a/dot_config/zed/snippets/org.json b/home/dot_config/zed/snippets/org.json similarity index 100% rename from dot_config/zed/snippets/org.json rename to home/dot_config/zed/snippets/org.json diff --git a/dot_config/zellij/zellij.config.kdl b/home/dot_config/zellij/zellij.config.kdl similarity index 100% rename from dot_config/zellij/zellij.config.kdl rename to home/dot_config/zellij/zellij.config.kdl diff --git a/dot_config/zsh/dot_zshenv b/home/dot_config/zsh/dot_zshenv similarity index 100% rename from dot_config/zsh/dot_zshenv rename to home/dot_config/zsh/dot_zshenv diff --git a/dot_config/zsh/dot_zshrc b/home/dot_config/zsh/dot_zshrc similarity index 100% rename from dot_config/zsh/dot_zshrc rename to home/dot_config/zsh/dot_zshrc diff --git a/dot_config/zsh/empty_dot_zprofile b/home/dot_config/zsh/empty_dot_zprofile similarity index 100% rename from dot_config/zsh/empty_dot_zprofile rename to home/dot_config/zsh/empty_dot_zprofile diff --git a/dot_config/zsh/global.zshenv b/home/dot_config/zsh/global.zshenv similarity index 100% rename from dot_config/zsh/global.zshenv rename to home/dot_config/zsh/global.zshenv diff --git a/dot_config/zsh/mod/alias.zsh b/home/dot_config/zsh/mod/alias.zsh similarity index 100% rename from dot_config/zsh/mod/alias.zsh rename to home/dot_config/zsh/mod/alias.zsh diff --git a/dot_config/zsh/mod/config.zsh b/home/dot_config/zsh/mod/config.zsh similarity index 100% rename from dot_config/zsh/mod/config.zsh rename to home/dot_config/zsh/mod/config.zsh diff --git a/dot_config/zsh/mod/env.zsh b/home/dot_config/zsh/mod/env.zsh similarity index 100% rename from dot_config/zsh/mod/env.zsh rename to home/dot_config/zsh/mod/env.zsh diff --git a/dot_config/zsh/mod/keymap.zsh b/home/dot_config/zsh/mod/keymap.zsh similarity index 100% rename from dot_config/zsh/mod/keymap.zsh rename to home/dot_config/zsh/mod/keymap.zsh diff --git a/dot_config/zsh/mod/navi.zsh b/home/dot_config/zsh/mod/navi.zsh similarity index 100% rename from dot_config/zsh/mod/navi.zsh rename to home/dot_config/zsh/mod/navi.zsh diff --git a/dot_config/zsh/mod/prompt.zsh b/home/dot_config/zsh/mod/prompt.zsh similarity index 100% rename from dot_config/zsh/mod/prompt.zsh rename to home/dot_config/zsh/mod/prompt.zsh diff --git a/dot_haskeline b/home/dot_haskeline similarity index 100% rename from dot_haskeline rename to home/dot_haskeline diff --git a/scripts/PSHistStat.ps1 b/home/scripts/PSHistStat.ps1 similarity index 100% rename from scripts/PSHistStat.ps1 rename to home/scripts/PSHistStat.ps1 diff --git a/scripts/Rename-FilesWithZeroPadding.ps1 b/home/scripts/Rename-FilesWithZeroPadding.ps1 similarity index 100% rename from scripts/Rename-FilesWithZeroPadding.ps1 rename to home/scripts/Rename-FilesWithZeroPadding.ps1 diff --git a/scripts/Scripts.ps1 b/home/scripts/Scripts.ps1 similarity index 100% rename from scripts/Scripts.ps1 rename to home/scripts/Scripts.ps1 diff --git a/scripts/__twm_osx_start.zsh b/home/scripts/__twm_osx_start.zsh similarity index 100% rename from scripts/__twm_osx_start.zsh rename to home/scripts/__twm_osx_start.zsh diff --git a/scripts/__twm_osx_stop.zsh b/home/scripts/__twm_osx_stop.zsh similarity index 100% rename from scripts/__twm_osx_stop.zsh rename to home/scripts/__twm_osx_stop.zsh diff --git a/scripts/run_once_fish.sh b/home/scripts/run_once_fish.sh similarity index 100% rename from scripts/run_once_fish.sh rename to home/scripts/run_once_fish.sh diff --git a/scripts/run_once_powershell.ps1 b/home/scripts/run_once_powershell.ps1 similarity index 100% rename from scripts/run_once_powershell.ps1 rename to home/scripts/run_once_powershell.ps1 diff --git a/scripts/run_once_yazi.sh b/home/scripts/run_once_yazi.sh similarity index 100% rename from scripts/run_once_yazi.sh rename to home/scripts/run_once_yazi.sh diff --git a/scripts/run_once_zsh-install-plugins.sh b/home/scripts/run_once_zsh-install-plugins.sh similarity index 100% rename from scripts/run_once_zsh-install-plugins.sh rename to home/scripts/run_once_zsh-install-plugins.sh diff --git a/scripts/run_once_zsh-set-env.sh b/home/scripts/run_once_zsh-set-env.sh similarity index 100% rename from scripts/run_once_zsh-set-env.sh rename to home/scripts/run_once_zsh-set-env.sh diff --git a/scripts/update.zsh b/home/scripts/update.zsh similarity index 100% rename from scripts/update.zsh rename to home/scripts/update.zsh diff --git a/symlink_dot_bashrc b/home/symlink_dot_bashrc similarity index 100% rename from symlink_dot_bashrc rename to home/symlink_dot_bashrc diff --git a/readme.org b/readme.org index 66c7dea..f6bf3b9 100644 --- a/readme.org +++ b/readme.org @@ -1,58 +1,3 @@ * dotfiles -This repository contains dotfiles for multiple platforms, with /colemak/ -as the default keyboard layout. -No rice, no Unixporn/NTporn, just a simple setup that works for me. - -Works for Windows, Linux and MacOS. - -** Setup - - -*** From Scratch (Linux/MacOS) - -#+begin_src shell -curl https://raw.githubusercontent.com/js0ny/dotfiles/refs/heads/master/bootstrap/setup.sh -o setup.sh && chmod u+x setup.sh && ./setup.sh -#+end_src - -*** Via =just= script - -Make sure you have =just= installed - -#+begin_src shell -which just -#+end_src - -Then run - -#+begin_src shell -just -#+end_src - -This will list all available tasks. - -All the just scripts are in =Justfile= and under =.just.d/= directory. - -** Structure - -#+begin_src shell - . -├──  .editorconfig # Editor configuration, for LF/CRLF correction -├──  .gitattributes # Git attributes, for LF/CRLF correction -├──  bootstrap # Setup scripts for new machines -├──  common # Single-file configurations (lesskey, vimrc etc) -├──  platforms # Platform-specific configurations -├──  readme.md # This file -├──  scripts # Scripts for various tasks -└──  tools # Multi-file configurations (shell, neovim etc) -#+end_src - -** Keybindings - -#+begin_example - ^ - e - < h i > - n - v -#+end_example +Migrating to ~chezmoi~. From fff9275372e7d497d65238f30d311cdc3c0d0c33 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 15:34:19 +0100 Subject: [PATCH 13/48] chezmoi: move unrelated scripts out --- home/dot_config/yazi/init.lua | 2 +- {home/scripts => scripts}/PSHistStat.ps1 | 0 {home/scripts => scripts}/Rename-FilesWithZeroPadding.ps1 | 0 {home/scripts => scripts}/Scripts.ps1 | 0 {home/scripts => scripts}/__twm_osx_start.zsh | 0 {home/scripts => scripts}/__twm_osx_stop.zsh | 0 {home/scripts => scripts}/update.zsh | 0 7 files changed, 1 insertion(+), 1 deletion(-) rename {home/scripts => scripts}/PSHistStat.ps1 (100%) rename {home/scripts => scripts}/Rename-FilesWithZeroPadding.ps1 (100%) rename {home/scripts => scripts}/Scripts.ps1 (100%) rename {home/scripts => scripts}/__twm_osx_start.zsh (100%) rename {home/scripts => scripts}/__twm_osx_stop.zsh (100%) rename {home/scripts => scripts}/update.zsh (100%) diff --git a/home/dot_config/yazi/init.lua b/home/dot_config/yazi/init.lua index a2ef3df..4836798 100644 --- a/home/dot_config/yazi/init.lua +++ b/home/dot_config/yazi/init.lua @@ -15,4 +15,4 @@ end -- require("dual-pane"):setup({ enabled = true }) require("starship"):setup() -require("yaziline"):setup() +-- require("yaziline"):setup() diff --git a/home/scripts/PSHistStat.ps1 b/scripts/PSHistStat.ps1 similarity index 100% rename from home/scripts/PSHistStat.ps1 rename to scripts/PSHistStat.ps1 diff --git a/home/scripts/Rename-FilesWithZeroPadding.ps1 b/scripts/Rename-FilesWithZeroPadding.ps1 similarity index 100% rename from home/scripts/Rename-FilesWithZeroPadding.ps1 rename to scripts/Rename-FilesWithZeroPadding.ps1 diff --git a/home/scripts/Scripts.ps1 b/scripts/Scripts.ps1 similarity index 100% rename from home/scripts/Scripts.ps1 rename to scripts/Scripts.ps1 diff --git a/home/scripts/__twm_osx_start.zsh b/scripts/__twm_osx_start.zsh similarity index 100% rename from home/scripts/__twm_osx_start.zsh rename to scripts/__twm_osx_start.zsh diff --git a/home/scripts/__twm_osx_stop.zsh b/scripts/__twm_osx_stop.zsh similarity index 100% rename from home/scripts/__twm_osx_stop.zsh rename to scripts/__twm_osx_stop.zsh diff --git a/home/scripts/update.zsh b/scripts/update.zsh similarity index 100% rename from home/scripts/update.zsh rename to scripts/update.zsh From c1a63e465884fadd2e8ec047c37a8cdefe6fbca0 Mon Sep 17 00:00:00 2001 From: whoami Date: Sat, 27 Sep 2025 16:00:34 +0100 Subject: [PATCH 14/48] chezmoi: macOS --- .gitignore | 3 - home/.chezmoiignore.tmpl | 12 +- .../complex_modifications/1739653723.json | 0 .../complex_modifications/1741027882.json | 0 .../dot_config/karabiner/dot_gitignore | 0 .../dot_config}/karabiner/karabiner.json | 0 .../dot_config}/karabiner/readme.md | 0 .../sketchybar/executable_sketchybarrc | 0 .../sketchybar/executable_variables.sh | 0 .../sketchybar/items/executable_battery.sh | 0 .../sketchybar/items/executable_calendar.sh | 0 .../sketchybar/items/executable_clock.sh | 0 .../sketchybar/items/executable_cpu.sh | 0 .../sketchybar/items/executable_front_app.sh | 0 .../sketchybar/items/executable_memory.sh | 0 .../sketchybar/items/executable_spaces.sh | 0 .../sketchybar/items/executable_spotify.sh | 0 .../sketchybar/items/executable_volume.sh | 0 .../sketchybar/plugins/executable_calendar.sh | 0 .../sketchybar/plugins/executable_clock.sh | 0 .../sketchybar/plugins/executable_cpu.sh | 0 .../plugins/executable_front_app.sh | 0 .../sketchybar/plugins/executable_memory.sh | 0 .../sketchybar/plugins/executable_power.sh | 0 .../sketchybar/plugins/executable_sound.sh | 0 .../sketchybar/plugins/executable_space.sh | 0 .../sketchybar/plugins/executable_spotify.sh | 0 .../mac => home/dot_config/skhd}/skhdrc | 0 .../mac => home/dot_config/yabai}/yabairc | 0 .../Keybindings}/DefaultKeyBinding.dict | 0 .../mac/etc/nix-darwin/default-system.nix | 113 ------------------ platforms/mac/etc/nix-darwin/flake.nix | 52 -------- platforms/mac/fastfetch.jsonc | 54 --------- platforms/mac/neovide.toml | 25 ---- platforms/mac/pwshProfile.ps1 | 23 ---- platforms/mac/readme.md | 0 .../mac/shortcuts/finder_open.applescript | 4 - platforms/mac/zshrc | 8 -- {platforms => tools}/mac/etc/pam.d/sudo | 0 39 files changed, 10 insertions(+), 284 deletions(-) rename {platforms/mac => home/dot_config}/karabiner/assets/complex_modifications/1739653723.json (100%) rename {platforms/mac => home/dot_config}/karabiner/assets/complex_modifications/1741027882.json (100%) rename platforms/mac/karabiner/.gitignore => home/dot_config/karabiner/dot_gitignore (100%) rename {platforms/mac => home/dot_config}/karabiner/karabiner.json (100%) rename {platforms/mac => home/dot_config}/karabiner/readme.md (100%) rename platforms/mac/sketchybar/sketchybarrc => home/dot_config/sketchybar/executable_sketchybarrc (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/variables.sh => home/dot_config/sketchybar/executable_variables.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/battery.sh => home/dot_config/sketchybar/items/executable_battery.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/calendar.sh => home/dot_config/sketchybar/items/executable_calendar.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/clock.sh => home/dot_config/sketchybar/items/executable_clock.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/cpu.sh => home/dot_config/sketchybar/items/executable_cpu.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/front_app.sh => home/dot_config/sketchybar/items/executable_front_app.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/memory.sh => home/dot_config/sketchybar/items/executable_memory.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/spaces.sh => home/dot_config/sketchybar/items/executable_spaces.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/spotify.sh => home/dot_config/sketchybar/items/executable_spotify.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/items/volume.sh => home/dot_config/sketchybar/items/executable_volume.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/calendar.sh => home/dot_config/sketchybar/plugins/executable_calendar.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/clock.sh => home/dot_config/sketchybar/plugins/executable_clock.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/cpu.sh => home/dot_config/sketchybar/plugins/executable_cpu.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/front_app.sh => home/dot_config/sketchybar/plugins/executable_front_app.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/memory.sh => home/dot_config/sketchybar/plugins/executable_memory.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/power.sh => home/dot_config/sketchybar/plugins/executable_power.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/sound.sh => home/dot_config/sketchybar/plugins/executable_sound.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/space.sh => home/dot_config/sketchybar/plugins/executable_space.sh (100%) mode change 100755 => 100644 rename platforms/mac/sketchybar/plugins/spotify.sh => home/dot_config/sketchybar/plugins/executable_spotify.sh (100%) mode change 100755 => 100644 rename {platforms/mac => home/dot_config/skhd}/skhdrc (100%) rename {platforms/mac => home/dot_config/yabai}/yabairc (100%) rename {platforms/mac => home/private_Library/Keybindings}/DefaultKeyBinding.dict (100%) delete mode 100644 platforms/mac/etc/nix-darwin/default-system.nix delete mode 100644 platforms/mac/etc/nix-darwin/flake.nix delete mode 100644 platforms/mac/fastfetch.jsonc delete mode 100644 platforms/mac/neovide.toml delete mode 100644 platforms/mac/pwshProfile.ps1 delete mode 100644 platforms/mac/readme.md delete mode 100644 platforms/mac/shortcuts/finder_open.applescript delete mode 100644 platforms/mac/zshrc rename {platforms => tools}/mac/etc/pam.d/sudo (100%) diff --git a/.gitignore b/.gitignore index 7b20e54..c65c640 100644 --- a/.gitignore +++ b/.gitignore @@ -7,9 +7,6 @@ dot_config/fish/completions dot_config/fish/functions/br.fish dot_config/fish/functions/dotenv.fish -# Private Files -*private* -.private.env.* # Test files test/ diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl index fb5ac80..ff0f43f 100644 --- a/home/.chezmoiignore.tmpl +++ b/home/.chezmoiignore.tmpl @@ -15,13 +15,21 @@ scripts .config/waybar .config/wlogout .config/krunnerrc +.config/systemd .config/user-dirs.dirs .config/user-dirs.locale {{ end }} - +{{ if eq .chezmoi.os "linux" }} {{ if ne .chezmoi.osRelease.id "arch" }} .config/*-flags.conf {{ end }} +{{ end }} - +{{ if ne .chezmoi.os "darwin" }} +Library +.config/karabiner +.config/sketchybar +.config/skhd +.config/yabai +{{ end}} diff --git a/platforms/mac/karabiner/assets/complex_modifications/1739653723.json b/home/dot_config/karabiner/assets/complex_modifications/1739653723.json similarity index 100% rename from platforms/mac/karabiner/assets/complex_modifications/1739653723.json rename to home/dot_config/karabiner/assets/complex_modifications/1739653723.json diff --git a/platforms/mac/karabiner/assets/complex_modifications/1741027882.json b/home/dot_config/karabiner/assets/complex_modifications/1741027882.json similarity index 100% rename from platforms/mac/karabiner/assets/complex_modifications/1741027882.json rename to home/dot_config/karabiner/assets/complex_modifications/1741027882.json diff --git a/platforms/mac/karabiner/.gitignore b/home/dot_config/karabiner/dot_gitignore similarity index 100% rename from platforms/mac/karabiner/.gitignore rename to home/dot_config/karabiner/dot_gitignore diff --git a/platforms/mac/karabiner/karabiner.json b/home/dot_config/karabiner/karabiner.json similarity index 100% rename from platforms/mac/karabiner/karabiner.json rename to home/dot_config/karabiner/karabiner.json diff --git a/platforms/mac/karabiner/readme.md b/home/dot_config/karabiner/readme.md similarity index 100% rename from platforms/mac/karabiner/readme.md rename to home/dot_config/karabiner/readme.md diff --git a/platforms/mac/sketchybar/sketchybarrc b/home/dot_config/sketchybar/executable_sketchybarrc old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/sketchybarrc rename to home/dot_config/sketchybar/executable_sketchybarrc diff --git a/platforms/mac/sketchybar/variables.sh b/home/dot_config/sketchybar/executable_variables.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/variables.sh rename to home/dot_config/sketchybar/executable_variables.sh diff --git a/platforms/mac/sketchybar/items/battery.sh b/home/dot_config/sketchybar/items/executable_battery.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/battery.sh rename to home/dot_config/sketchybar/items/executable_battery.sh diff --git a/platforms/mac/sketchybar/items/calendar.sh b/home/dot_config/sketchybar/items/executable_calendar.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/calendar.sh rename to home/dot_config/sketchybar/items/executable_calendar.sh diff --git a/platforms/mac/sketchybar/items/clock.sh b/home/dot_config/sketchybar/items/executable_clock.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/clock.sh rename to home/dot_config/sketchybar/items/executable_clock.sh diff --git a/platforms/mac/sketchybar/items/cpu.sh b/home/dot_config/sketchybar/items/executable_cpu.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/cpu.sh rename to home/dot_config/sketchybar/items/executable_cpu.sh diff --git a/platforms/mac/sketchybar/items/front_app.sh b/home/dot_config/sketchybar/items/executable_front_app.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/front_app.sh rename to home/dot_config/sketchybar/items/executable_front_app.sh diff --git a/platforms/mac/sketchybar/items/memory.sh b/home/dot_config/sketchybar/items/executable_memory.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/memory.sh rename to home/dot_config/sketchybar/items/executable_memory.sh diff --git a/platforms/mac/sketchybar/items/spaces.sh b/home/dot_config/sketchybar/items/executable_spaces.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/spaces.sh rename to home/dot_config/sketchybar/items/executable_spaces.sh diff --git a/platforms/mac/sketchybar/items/spotify.sh b/home/dot_config/sketchybar/items/executable_spotify.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/spotify.sh rename to home/dot_config/sketchybar/items/executable_spotify.sh diff --git a/platforms/mac/sketchybar/items/volume.sh b/home/dot_config/sketchybar/items/executable_volume.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/items/volume.sh rename to home/dot_config/sketchybar/items/executable_volume.sh diff --git a/platforms/mac/sketchybar/plugins/calendar.sh b/home/dot_config/sketchybar/plugins/executable_calendar.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/calendar.sh rename to home/dot_config/sketchybar/plugins/executable_calendar.sh diff --git a/platforms/mac/sketchybar/plugins/clock.sh b/home/dot_config/sketchybar/plugins/executable_clock.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/clock.sh rename to home/dot_config/sketchybar/plugins/executable_clock.sh diff --git a/platforms/mac/sketchybar/plugins/cpu.sh b/home/dot_config/sketchybar/plugins/executable_cpu.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/cpu.sh rename to home/dot_config/sketchybar/plugins/executable_cpu.sh diff --git a/platforms/mac/sketchybar/plugins/front_app.sh b/home/dot_config/sketchybar/plugins/executable_front_app.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/front_app.sh rename to home/dot_config/sketchybar/plugins/executable_front_app.sh diff --git a/platforms/mac/sketchybar/plugins/memory.sh b/home/dot_config/sketchybar/plugins/executable_memory.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/memory.sh rename to home/dot_config/sketchybar/plugins/executable_memory.sh diff --git a/platforms/mac/sketchybar/plugins/power.sh b/home/dot_config/sketchybar/plugins/executable_power.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/power.sh rename to home/dot_config/sketchybar/plugins/executable_power.sh diff --git a/platforms/mac/sketchybar/plugins/sound.sh b/home/dot_config/sketchybar/plugins/executable_sound.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/sound.sh rename to home/dot_config/sketchybar/plugins/executable_sound.sh diff --git a/platforms/mac/sketchybar/plugins/space.sh b/home/dot_config/sketchybar/plugins/executable_space.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/space.sh rename to home/dot_config/sketchybar/plugins/executable_space.sh diff --git a/platforms/mac/sketchybar/plugins/spotify.sh b/home/dot_config/sketchybar/plugins/executable_spotify.sh old mode 100755 new mode 100644 similarity index 100% rename from platforms/mac/sketchybar/plugins/spotify.sh rename to home/dot_config/sketchybar/plugins/executable_spotify.sh diff --git a/platforms/mac/skhdrc b/home/dot_config/skhd/skhdrc similarity index 100% rename from platforms/mac/skhdrc rename to home/dot_config/skhd/skhdrc diff --git a/platforms/mac/yabairc b/home/dot_config/yabai/yabairc similarity index 100% rename from platforms/mac/yabairc rename to home/dot_config/yabai/yabairc diff --git a/platforms/mac/DefaultKeyBinding.dict b/home/private_Library/Keybindings/DefaultKeyBinding.dict similarity index 100% rename from platforms/mac/DefaultKeyBinding.dict rename to home/private_Library/Keybindings/DefaultKeyBinding.dict diff --git a/platforms/mac/etc/nix-darwin/default-system.nix b/platforms/mac/etc/nix-darwin/default-system.nix deleted file mode 100644 index 9413df1..0000000 --- a/platforms/mac/etc/nix-darwin/default-system.nix +++ /dev/null @@ -1,113 +0,0 @@ -# vim:shiftwidth=2 -# https://github.com/LnL7/nix-darwin/tree/5d6e0851b60508cffd66b4a6982440a40720338d/modules/system/defaults -{ pkgs, ... }: { - system.defaults = { - dock = { - appswitcher-all-displays = true; - autohide = true; - # Launch Animation - launchanim = false; - # Minimize Animation - mineffect = "suck"; - minimize-to-application = true; - persistent-apps = [ - { app = "/Applications/Vivaldi.app"; } - { app = "/Applications/WezTerm.app"; } - { app = "/Applications/Obsidian.app"; } - { app = "/Applications/Visual Studio Code.app"; } - { app = "/Applications/Neovide.app"; } - # { spacer = { small = false; }; } - # { spacer = { small = true; }; } - # { folder = "/System/Applications/Utilities"; } - # { folder = "/Users/js0ny/Downloads/"; } - ]; - persistent-others = [ - "/Users/js0ny/Downloads" - "/Users/js0ny/Source" - ]; - show-recents = false; - orientation = "bottom"; - # tr - Top Right - # tl - Top Left (disable this) - # br - Bottom Right - # bl - Bottom Left - # `1`: Disabled - # `2`: Mission Control - # `3`: Application Windows - # `4`: Desktop - # `5`: Start Screen Saver - # `6`: Disable Screen Saver - # `7`: Dashboard - # `10`: Put Display to Sleep - # `11`: Launchpad - # `12`: Notification Center - # `13`: Lock Screen - # `14`: Quick Note - wvous-tr-corner = 2; - wvous-bl-corner = 11; # Simulate Windows button on Windows - wvous-br-corner = 4; - }; - finder = { - AppleShowAllFiles = true; - ShowStatusBar = true; - ShowPathbar = true; - FXRemoveOldTrashItems = true; - AppleShowAllExtensions = true; - QuitMenuItem = true; - ShowExternalHardDrivesOnDesktop = false; - ShowRemovableMediaOnDesktop = false; - # This will look show full path in title bar - # For example: /Users/username/Downloads - # instead of just Downloads - _FXShowPosixPathInTitle = false; - _FXSortFoldersFirst = true; - FXEnableExtensionChangeWarning = false; - # Use `Home` instead of `PfHm` - # nix-darwin won't parse `PfHm` - NewWindowTarget = "Home"; - }; - trackpad = { - TrackpadRightClick = true; - TrackpadThreeFingerDrag = true; - }; - screencapture = { - location = "~/Pictures/Screenshots"; - type = "png"; - include-date = true; - }; - SoftwareUpdate.AutomaticallyInstallMacOSUpdates = false; - ".GlobalPreferences" = { - "com.apple.sound.beep.sound" = "/System/Library/Sounds/Blow.aiff"; - }; - NSGlobalDomain = { - AppleInterfaceStyle = "Dark"; - AppleInterfaceStyleSwitchesAutomatically = true; - AppleShowAllExtensions = true; - # Use Fn key as standard function keys instead of media keys - "com.apple.keyboard.fnState" = true; - AppleMeasurementUnits = "Centimeters"; - AppleICUForce24HourTime = true; - }; - controlcenter.BatteryShowPercentage = true; - # Fn usage: - # 0: Show Emoji & Symbols - # 1: Change Input Source - # 2: Show Emoji & Symbols - # 3: Start Dictation - hitoolbox.AppleFnUsageType = "Change Input Source"; - WindowManager = { - EnableTilingByEdgeDrag = true; - EnableTopTilingByEdgeDrag = true; - EnableTilingOptionAccelerator = true; - EnableTiledWindowMargins = true; - }; - # universalaccess = { - # mouseDriverCursorSize = 1.5; - # reduceMotion = true; - # reduceTransparency = false; - # }; - menuExtraClock = { - ShowSeconds = true; - }; - }; -} diff --git a/platforms/mac/etc/nix-darwin/flake.nix b/platforms/mac/etc/nix-darwin/flake.nix deleted file mode 100644 index 99a0d64..0000000 --- a/platforms/mac/etc/nix-darwin/flake.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ - description = "Example nix-darwin system flake"; - - inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; - nix-darwin.url = "github:LnL7/nix-darwin/master"; - nix-darwin.inputs.nixpkgs.follows = "nixpkgs"; - }; - - outputs = inputs@{ self, nix-darwin, nixpkgs }: - let - configuration = { pkgs, ... }: { - # List packages installed in system profile. To search by name, run: - # $ nix-env -qaP | grep wget - environment.systemPackages = - [ pkgs.vim - ]; - - environment.etc."zshenv".text = '' - if [ -d $HOME/.config/zsh ]; then - export ZDOTDIR=$HOME/.config/zsh - fi - ''; - - # Necessary for using flakes on this system. - nix.settings.experimental-features = "nix-command flakes"; - - # Enable alternative shell support in nix-darwin. - # programs.fish.enable = true; - - # Set Git commit hash for darwin-version. - system.configurationRevision = self.rev or self.dirtyRev or null; - - # Used for backwards compatibility, please read the changelog before changing. - # $ darwin-rebuild changelog - system.stateVersion = 6; - - # The platform the configuration will be used on. - nixpkgs.hostPlatform = "aarch64-darwin"; - }; - in - { - # Build darwin flake using: - # $ darwin-rebuild build --flake .#Zen - darwinConfigurations."Zen" = nix-darwin.lib.darwinSystem { - modules = [ - configuration - ./default-system.nix - ]; - }; - }; -} diff --git a/platforms/mac/fastfetch.jsonc b/platforms/mac/fastfetch.jsonc deleted file mode 100644 index 45adeaa..0000000 --- a/platforms/mac/fastfetch.jsonc +++ /dev/null @@ -1,54 +0,0 @@ -// %UserProfile%\.config\fastfetch\config.jsonc -{ - "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json", - "logo": { - "type": "auto", - // "source": "Windows 7", - "padding": { - "top": 2, - "left": 1, - "right": 2 - } - }, - "general": { - "multithreading": true - }, - "display": { - "separator": " ", - "key": { - "width": 10, - "paddingLeft": 2, - "type": "icon" - } - }, - "modules": [ - { - "type": "title", - "format": "{#1}───────────── {#}{user-name-colored}@{host-name-colored}" - }, - { - "type": "colors", - "symbol": "diamond", - "paddingLeft": 15 - }, - "os", - "host", - "kernel", - "uptime", - { - "type": "packages" - }, - "shell", - "display", - "cursor", - "terminal", - "terminalfont", - "cpu", - "memory", - "swap", - "disk", - "battery", - "poweradapter", - "locale" - ] -} \ No newline at end of file diff --git a/platforms/mac/neovide.toml b/platforms/mac/neovide.toml deleted file mode 100644 index 46afa64..0000000 --- a/platforms/mac/neovide.toml +++ /dev/null @@ -1,25 +0,0 @@ -# $XDG_CONFIG_HOME/neovide/config.toml -# ln -sf $DOTFILES/mac/neovide.toml $XDG_CONFIG_HOME/neovide/config.toml -# New-Item -ItemType SymbolicLink -Path $Env:XDG_CONFIG_HOME/neovide/config.toml -Value $DOTFILES\mac\neovide.toml (Mac) -# https://neovide.dev/config-file.html?highlight=toml#config-file -# 设置为 fork 默认后台运行,不会占用终端 -fork = true -# frame = "full" -idle = true -maximized = false -# neovim-bin = "/opt/homebrew/bin/nvim" -frame = "transparent" -no-multigrid = false -srgb = false -tabs = true -theme = "auto" -title-hidden = true -vsync = true -wsl = false - -[font] -normal = [ - "Iosevka Nerd Font", - "霞鹜文楷等宽", -] # Will use the bundled Fira Code Nerd Font by default -size = 14.0 diff --git a/platforms/mac/pwshProfile.ps1 b/platforms/mac/pwshProfile.ps1 deleted file mode 100644 index ac0ce0d..0000000 --- a/platforms/mac/pwshProfile.ps1 +++ /dev/null @@ -1,23 +0,0 @@ -# $XDG_CONFIG_HOME/powershell/Microsoft.PowerShell_profile.ps1 -# ln -sf $DOTFILES/mac/Microsoft.PowerShell_profile.ps1 $XDG_CONFIG_HOME/powershell/Microsoft.PowerShell_profile.ps1 -### Variables ### - -$DOTFILES = "$HOME/.dotfiles" - -### Load Configs ### - -Get-ChildItem -Path $(Join-Path $DOTFILES "tools" "powershell") -Filter *.ps1 | ForEach-Object {. $_} - -## Aliases ### - -# PowerShell Equivalents # - -# Set-Alias "curl" "Invoke-WebRequest" -# Set-Alias "man" "Get-Help" -Set-Alias "kill" "Stop-Process" -Set-Alias "open" "Invoke-Item" # Use ii instead of open - -# Dev # - -${function:zshcfg} = { nvim ~/.zshrc } -${function:bashcfg} = { nvim ~/.bashrc } diff --git a/platforms/mac/readme.md b/platforms/mac/readme.md deleted file mode 100644 index e69de29..0000000 diff --git a/platforms/mac/shortcuts/finder_open.applescript b/platforms/mac/shortcuts/finder_open.applescript deleted file mode 100644 index da3f806..0000000 --- a/platforms/mac/shortcuts/finder_open.applescript +++ /dev/null @@ -1,4 +0,0 @@ -tell application "Finder" - activate - make new Finder window -end tell diff --git a/platforms/mac/zshrc b/platforms/mac/zshrc deleted file mode 100644 index 7fbe8a6..0000000 --- a/platforms/mac/zshrc +++ /dev/null @@ -1,8 +0,0 @@ -# $DOTFILES/platforms/mac/zshrc -# Date: 2024-11-30 -# Author: js0ny -# Sourced by user's zshrc if is macOS 在用户的 zshrc 中被引用,macOS 特定配置 -# Entry point in $DOTFILES/tools/zsh/common.zshrc (入口点) - -# macOS # - diff --git a/platforms/mac/etc/pam.d/sudo b/tools/mac/etc/pam.d/sudo similarity index 100% rename from platforms/mac/etc/pam.d/sudo rename to tools/mac/etc/pam.d/sudo From eb31d815cebc15e8c4f2815e0edb1d4a7747263e Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 16:10:43 +0100 Subject: [PATCH 15/48] chezmoi: init scripts --- .gitignore | 4 ++++ home/scripts/run_once_bash.sh | 4 ++++ home/scripts/run_once_bat.sh | 8 ++++++++ home/scripts/run_once_nvim.sh | 6 ++++++ home/scripts/run_once_rtorrent.sh | 7 +++++++ home/scripts/run_once_vim.sh | 9 +++++++++ 6 files changed, 38 insertions(+) create mode 100644 home/scripts/run_once_bash.sh create mode 100644 home/scripts/run_once_bat.sh create mode 100644 home/scripts/run_once_nvim.sh create mode 100644 home/scripts/run_once_rtorrent.sh create mode 100644 home/scripts/run_once_vim.sh diff --git a/.gitignore b/.gitignore index c65c640..3924c61 100644 --- a/.gitignore +++ b/.gitignore @@ -48,3 +48,7 @@ common/**/*current* default.target.wants nvim-healthcheck.txt + +private_pid +private_security +private_fish_variables diff --git a/home/scripts/run_once_bash.sh b/home/scripts/run_once_bash.sh new file mode 100644 index 0000000..6f6af51 --- /dev/null +++ b/home/scripts/run_once_bash.sh @@ -0,0 +1,4 @@ +#!/bin/sh +# shellcheck shell=sh + +sudo cp $CHEZMOI_SOURCE_DIR/dot_config/bash/xdg-compat.sh /etc/profile.d/xdg-compat.sh diff --git a/home/scripts/run_once_bat.sh b/home/scripts/run_once_bat.sh new file mode 100644 index 0000000..3a6f690 --- /dev/null +++ b/home/scripts/run_once_bat.sh @@ -0,0 +1,8 @@ +#!/bin/sh + + +mkdir -p "$(bat --config-dir)/themes" +wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Latte.tmTheme +wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Frappe.tmTheme +wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Macchiato.tmTheme +wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Mocha.tmTheme diff --git a/home/scripts/run_once_nvim.sh b/home/scripts/run_once_nvim.sh new file mode 100644 index 0000000..02ffe19 --- /dev/null +++ b/home/scripts/run_once_nvim.sh @@ -0,0 +1,6 @@ +#!/bin/sh +# shellcheck shell=sh + +if command -v nvim > /dev/null 2>&1; then + nvim --headless +checkhealth +"w nvim-healthcheck.txt" +qall +fi diff --git a/home/scripts/run_once_rtorrent.sh b/home/scripts/run_once_rtorrent.sh new file mode 100644 index 0000000..5f93980 --- /dev/null +++ b/home/scripts/run_once_rtorrent.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env sh + +XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}" + +mkdir -p {{XDG_DATA_HOME}}/rtorrent/session +mkdir -p {{XDG_DATA_HOME}}/rtorrent/watch + diff --git a/home/scripts/run_once_vim.sh b/home/scripts/run_once_vim.sh new file mode 100644 index 0000000..5b22bb0 --- /dev/null +++ b/home/scripts/run_once_vim.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}" +XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}" + + +mkdir -p $XDG_DATA_HOME/vim/after +mkdir -p $XDG_STATE_HOME/vim/{backup,swap,undo,view} + From 8b2899ca9787da2e48438d14aa77423b59bdc74c Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 27 Sep 2025 16:13:42 +0100 Subject: [PATCH 16/48] chezmoi: use standard script dir --- home/{scripts => .chezmoiscripts}/run_once_bash.sh | 0 home/{scripts => .chezmoiscripts}/run_once_bat.sh | 0 home/{scripts => .chezmoiscripts}/run_once_fish.sh | 0 home/{scripts => .chezmoiscripts}/run_once_nvim.sh | 0 home/{scripts => .chezmoiscripts}/run_once_powershell.ps1 | 0 home/{scripts => .chezmoiscripts}/run_once_rtorrent.sh | 0 home/{scripts => .chezmoiscripts}/run_once_vim.sh | 0 home/{scripts => .chezmoiscripts}/run_once_yazi.sh | 0 home/{scripts => .chezmoiscripts}/run_once_zsh-install-plugins.sh | 0 home/{scripts => .chezmoiscripts}/run_once_zsh-set-env.sh | 0 10 files changed, 0 insertions(+), 0 deletions(-) rename home/{scripts => .chezmoiscripts}/run_once_bash.sh (100%) rename home/{scripts => .chezmoiscripts}/run_once_bat.sh (100%) rename home/{scripts => .chezmoiscripts}/run_once_fish.sh (100%) rename home/{scripts => .chezmoiscripts}/run_once_nvim.sh (100%) rename home/{scripts => .chezmoiscripts}/run_once_powershell.ps1 (100%) rename home/{scripts => .chezmoiscripts}/run_once_rtorrent.sh (100%) rename home/{scripts => .chezmoiscripts}/run_once_vim.sh (100%) rename home/{scripts => .chezmoiscripts}/run_once_yazi.sh (100%) rename home/{scripts => .chezmoiscripts}/run_once_zsh-install-plugins.sh (100%) rename home/{scripts => .chezmoiscripts}/run_once_zsh-set-env.sh (100%) diff --git a/home/scripts/run_once_bash.sh b/home/.chezmoiscripts/run_once_bash.sh similarity index 100% rename from home/scripts/run_once_bash.sh rename to home/.chezmoiscripts/run_once_bash.sh diff --git a/home/scripts/run_once_bat.sh b/home/.chezmoiscripts/run_once_bat.sh similarity index 100% rename from home/scripts/run_once_bat.sh rename to home/.chezmoiscripts/run_once_bat.sh diff --git a/home/scripts/run_once_fish.sh b/home/.chezmoiscripts/run_once_fish.sh similarity index 100% rename from home/scripts/run_once_fish.sh rename to home/.chezmoiscripts/run_once_fish.sh diff --git a/home/scripts/run_once_nvim.sh b/home/.chezmoiscripts/run_once_nvim.sh similarity index 100% rename from home/scripts/run_once_nvim.sh rename to home/.chezmoiscripts/run_once_nvim.sh diff --git a/home/scripts/run_once_powershell.ps1 b/home/.chezmoiscripts/run_once_powershell.ps1 similarity index 100% rename from home/scripts/run_once_powershell.ps1 rename to home/.chezmoiscripts/run_once_powershell.ps1 diff --git a/home/scripts/run_once_rtorrent.sh b/home/.chezmoiscripts/run_once_rtorrent.sh similarity index 100% rename from home/scripts/run_once_rtorrent.sh rename to home/.chezmoiscripts/run_once_rtorrent.sh diff --git a/home/scripts/run_once_vim.sh b/home/.chezmoiscripts/run_once_vim.sh similarity index 100% rename from home/scripts/run_once_vim.sh rename to home/.chezmoiscripts/run_once_vim.sh diff --git a/home/scripts/run_once_yazi.sh b/home/.chezmoiscripts/run_once_yazi.sh similarity index 100% rename from home/scripts/run_once_yazi.sh rename to home/.chezmoiscripts/run_once_yazi.sh diff --git a/home/scripts/run_once_zsh-install-plugins.sh b/home/.chezmoiscripts/run_once_zsh-install-plugins.sh similarity index 100% rename from home/scripts/run_once_zsh-install-plugins.sh rename to home/.chezmoiscripts/run_once_zsh-install-plugins.sh diff --git a/home/scripts/run_once_zsh-set-env.sh b/home/.chezmoiscripts/run_once_zsh-set-env.sh similarity index 100% rename from home/scripts/run_once_zsh-set-env.sh rename to home/.chezmoiscripts/run_once_zsh-set-env.sh From 872a2b4d4d26e60e4bc79dbffc007de579e0277f Mon Sep 17 00:00:00 2001 From: whoami Date: Sat, 27 Sep 2025 16:54:59 +0100 Subject: [PATCH 17/48] minor fix on nix-darwin --- home/.chezmoiignore.tmpl | 1 + home/.chezmoiscripts/run_once_powershell.ps1 | 6 ------ home/dot_config/fish/conf.d/0init.fish | 1 + home/dot_config/nix-config/flake.nix | 2 +- home/dot_config/nix-config/hosts/macbook/default.nix | 1 + home/dot_config/zsh/dot_zshenv | 3 +++ 6 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 home/.chezmoiscripts/run_once_powershell.ps1 diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl index ff0f43f..f01d11c 100644 --- a/home/.chezmoiignore.tmpl +++ b/home/.chezmoiignore.tmpl @@ -32,4 +32,5 @@ Library .config/sketchybar .config/skhd .config/yabai +.config/powershell {{ end}} diff --git a/home/.chezmoiscripts/run_once_powershell.ps1 b/home/.chezmoiscripts/run_once_powershell.ps1 deleted file mode 100644 index acb711d..0000000 --- a/home/.chezmoiscripts/run_once_powershell.ps1 +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env pwsh - -Install-Package PSFzf -Force -Install-Package CompletionPredictor -Force - -git clone --depth 1 https://github.com/catppuccin/powershell.git (Join-Path $Env:PSModulePath.Split(':')[0] Catppuccin) diff --git a/home/dot_config/fish/conf.d/0init.fish b/home/dot_config/fish/conf.d/0init.fish index e8969ed..e287cf5 100644 --- a/home/dot_config/fish/conf.d/0init.fish +++ b/home/dot_config/fish/conf.d/0init.fish @@ -19,6 +19,7 @@ set -gx XDG_CACHE_HOME (set -q XDG_CACHE_HOME; and echo $XDG_CACHE_HOME; or echo if test (uname) = "Darwin" set -gx XDG_RUNTIME_DIR $HOME/.tmp/run/ + fish_add_path /run/current-system/sw/bin else set -gx XDG_RUNTIME_DIR /run/user/(id -u) end diff --git a/home/dot_config/nix-config/flake.nix b/home/dot_config/nix-config/flake.nix index 586b4e5..8029369 100644 --- a/home/dot_config/nix-config/flake.nix +++ b/home/dot_config/nix-config/flake.nix @@ -16,6 +16,6 @@ ./hosts/macbook/system.nix ]; }; - + }; } diff --git a/home/dot_config/nix-config/hosts/macbook/default.nix b/home/dot_config/nix-config/hosts/macbook/default.nix index c5855ff..795bc1c 100644 --- a/home/dot_config/nix-config/hosts/macbook/default.nix +++ b/home/dot_config/nix-config/hosts/macbook/default.nix @@ -46,6 +46,7 @@ tlrc tmux uv + yazi zoxide ]; diff --git a/home/dot_config/zsh/dot_zshenv b/home/dot_config/zsh/dot_zshenv index eabb593..22359a2 100644 --- a/home/dot_config/zsh/dot_zshenv +++ b/home/dot_config/zsh/dot_zshenv @@ -171,3 +171,6 @@ if command -v vcpkg >/dev/null; then export VCPKG_ROOT="$XDG_DATA_HOME"/vcpkg fi +if [ -d "/nix" ]; then + export PATH="/run/current-system/sw/bin:$PATH" +fi From c7d63928494da2cfe407b378336fa015c0553e4b Mon Sep 17 00:00:00 2001 From: js0ny Date: Wed, 1 Oct 2025 23:45:18 +0100 Subject: [PATCH 18/48] fix: symlinks in chezmoi and robust scripts --- .gitignore | 3 --- home/.chezmoiscripts/run_once_bat.sh | 13 ++++++++----- home/.chezmoiscripts/run_once_fonts.sh | 12 ++++++++++++ home/.chezmoiscripts/run_once_rtorrent.sh | 4 ++-- home/.chezmoiscripts/run_once_yazi.sh | 8 +++++--- home/dot_config/hypr/hyprland/symlink_current.conf | 2 +- home/dot_config/rofi/symlink_current.rasi | 2 +- home/dot_config/waybar/current.css | 0 8 files changed, 29 insertions(+), 15 deletions(-) create mode 100644 home/.chezmoiscripts/run_once_fonts.sh create mode 100644 home/dot_config/waybar/current.css diff --git a/.gitignore b/.gitignore index 3924c61..a5e6b50 100644 --- a/.gitignore +++ b/.gitignore @@ -41,9 +41,6 @@ lazy-lock.json # Emacs *.elc -common/**/*current* - -**/current.* default.target.wants diff --git a/home/.chezmoiscripts/run_once_bat.sh b/home/.chezmoiscripts/run_once_bat.sh index 3a6f690..5fac4b6 100644 --- a/home/.chezmoiscripts/run_once_bat.sh +++ b/home/.chezmoiscripts/run_once_bat.sh @@ -1,8 +1,11 @@ #!/bin/sh -mkdir -p "$(bat --config-dir)/themes" -wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Latte.tmTheme -wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Frappe.tmTheme -wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Macchiato.tmTheme -wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Mocha.tmTheme +if command -v bat > /dev/null 2>&1; then + mkdir -p "$(bat --config-dir)/themes" + wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Latte.tmTheme + wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Frappe.tmTheme + wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Macchiato.tmTheme + wget -P "$(bat --config-dir)/themes" https://github.com/catppuccin/bat/raw/main/themes/Catppuccin%20Mocha.tmTheme +fi + diff --git a/home/.chezmoiscripts/run_once_fonts.sh b/home/.chezmoiscripts/run_once_fonts.sh new file mode 100644 index 0000000..4a38564 --- /dev/null +++ b/home/.chezmoiscripts/run_once_fonts.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +curl -L https://github.com/lxgw/LxgwWenKai/releases/download/v1.520/lxgw-wenkai-v1.520.zip -o /tmp/lxgw-wenkai.zip +unzip /tmp/lxgw-wenkai.zip -d ~/.local/share/fonts/ + +curl -L https://github.com/lxgw/LxgwNeoXiHei/releases/download/v1.223/LXGWNeoXiHeiPlus.ttf -o /tmp/lxgw-xihei.zip +unzip /tmp/lxgw-xihei.zip -d ~/.local/share/fonts/ + +curl -L https://github.com/subframe7536/maple-font/releases/download/v7.7/MapleMono-NF-CN-unhinted.zip -o /tmp/maple-mono.zip +unzip /tmp/maple-mono.zip -d ~/.local/share/fonts/ + +fc-cache -fv diff --git a/home/.chezmoiscripts/run_once_rtorrent.sh b/home/.chezmoiscripts/run_once_rtorrent.sh index 5f93980..64ed218 100644 --- a/home/.chezmoiscripts/run_once_rtorrent.sh +++ b/home/.chezmoiscripts/run_once_rtorrent.sh @@ -2,6 +2,6 @@ XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}" -mkdir -p {{XDG_DATA_HOME}}/rtorrent/session -mkdir -p {{XDG_DATA_HOME}}/rtorrent/watch +mkdir -p $XDG_DATA_HOME/rtorrent/session +mkdir -p $XDG_DATA_HOME/rtorrent/watch diff --git a/home/.chezmoiscripts/run_once_yazi.sh b/home/.chezmoiscripts/run_once_yazi.sh index d678048..d79d3fa 100644 --- a/home/.chezmoiscripts/run_once_yazi.sh +++ b/home/.chezmoiscripts/run_once_yazi.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash -ya pkg add llanosrocas/yaziline -ya pkg add yazi-rs/plugins:git -ya pkg add Rolv-Apneseth/starship +if command -v yazi > /dev/null 2>&1; then + ya pkg add llanosrocas/yaziline + ya pkg add yazi-rs/plugins:git + ya pkg add Rolv-Apneseth/starship +fi diff --git a/home/dot_config/hypr/hyprland/symlink_current.conf b/home/dot_config/hypr/hyprland/symlink_current.conf index 7d4192c..bee4ce0 100644 --- a/home/dot_config/hypr/hyprland/symlink_current.conf +++ b/home/dot_config/hypr/hyprland/symlink_current.conf @@ -1 +1 @@ -/home/js0ny/.dotfiles/platforms/linux/hypr/hyprland/dark.conf +dark.conf diff --git a/home/dot_config/rofi/symlink_current.rasi b/home/dot_config/rofi/symlink_current.rasi index 2f4ad1f..1f760c2 100644 --- a/home/dot_config/rofi/symlink_current.rasi +++ b/home/dot_config/rofi/symlink_current.rasi @@ -1 +1 @@ -/home/js0ny/.config/rofi/dark.rasi +dark.rasi diff --git a/home/dot_config/waybar/current.css b/home/dot_config/waybar/current.css new file mode 100644 index 0000000..e69de29 From 1898280c01378c6284012b8eeea81abe387db00e Mon Sep 17 00:00:00 2001 From: js0ny Date: Thu, 2 Oct 2025 01:59:00 +0100 Subject: [PATCH 19/48] fix: hyprland, swaylock --- home/.chezmoiscripts/run_once_yazi.sh | 1 + home/dot_config/hypr/hyprland.conf | 9 +++--- home/dot_config/hypr/hyprland/+colemak.conf | 2 ++ home/dot_config/hypr/hyprland/+qwerty.conf | 2 ++ home/dot_config/hypr/hyprland/keymaps.conf | 2 -- home/dot_config/swaylock/{swaylock => config} | 30 +++++++++---------- 6 files changed, 25 insertions(+), 21 deletions(-) rename home/dot_config/swaylock/{swaylock => config} (73%) diff --git a/home/.chezmoiscripts/run_once_yazi.sh b/home/.chezmoiscripts/run_once_yazi.sh index d79d3fa..4085fa1 100644 --- a/home/.chezmoiscripts/run_once_yazi.sh +++ b/home/.chezmoiscripts/run_once_yazi.sh @@ -5,4 +5,5 @@ if command -v yazi > /dev/null 2>&1; then ya pkg add yazi-rs/plugins:git ya pkg add Rolv-Apneseth/starship fi +exit 0 diff --git a/home/dot_config/hypr/hyprland.conf b/home/dot_config/hypr/hyprland.conf index 01c11e5..042e824 100644 --- a/home/dot_config/hypr/hyprland.conf +++ b/home/dot_config/hypr/hyprland.conf @@ -236,10 +236,11 @@ input { } # https://wiki.hyprland.org/Configuring/Variables/#gestures -gestures { - workspace_swipe = true - workspace_swipe_fingers = 4 -} +# gestures { +# workspace_swipe = true +# workspace_swipe_fingers = 4 +# } +gesture = 4, horizontal, workspace # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more diff --git a/home/dot_config/hypr/hyprland/+colemak.conf b/home/dot_config/hypr/hyprland/+colemak.conf index d03a30f..25549fc 100644 --- a/home/dot_config/hypr/hyprland/+colemak.conf +++ b/home/dot_config/hypr/hyprland/+colemak.conf @@ -13,6 +13,8 @@ bind = $mainMod CTRL, h, resizeactive, -10 0 bind = $mainMod CTRL, e, resizeactive, 0 -10 bind = $mainMod CTRL, n, resizeactive, 0 10 +bind = $mainMod SHIFT, l, exec, LC_ALL="en_GB.UTF-8" swaylock + submap = resize binde = , right, resizeactive, 10 0 diff --git a/home/dot_config/hypr/hyprland/+qwerty.conf b/home/dot_config/hypr/hyprland/+qwerty.conf index 0b86be7..b12dbb5 100644 --- a/home/dot_config/hypr/hyprland/+qwerty.conf +++ b/home/dot_config/hypr/hyprland/+qwerty.conf @@ -13,6 +13,8 @@ bind = $mainMod CTRL, h, resizeactive, -10 0 bind = $mainMod CTRL, k, resizeactive, 0 -10 bind = $mainMod CTRL, j, resizeactive, 0 10 +bind = $mainMod SHIFT, i, exec, LC_ALL="en_GB.UTF-8" swaylock + submap = resize binde = , right, resizeactive, 10 0 diff --git a/home/dot_config/hypr/hyprland/keymaps.conf b/home/dot_config/hypr/hyprland/keymaps.conf index 9e8ea2f..4caf009 100644 --- a/home/dot_config/hypr/hyprland/keymaps.conf +++ b/home/dot_config/hypr/hyprland/keymaps.conf @@ -34,8 +34,6 @@ bind = $mainMod, right, movefocus, r bind = $mainMod, up, movefocus, u bind = $mainMod, down, movefocus, d -bind = $mainMod SHIFT, l, exec, LC_ALL="en_GB.UTF-8" swaylock - bind = $mainMod, c, exec, grimblast copysave area $HOME/Pictures/Screenshots/"$(date +%Y%m%d-%H%M%S)" bind = $mainMod SHIFT, c, exec, notify-send "Color: $(hyprpicker)" diff --git a/home/dot_config/swaylock/swaylock b/home/dot_config/swaylock/config similarity index 73% rename from home/dot_config/swaylock/swaylock rename to home/dot_config/swaylock/config index adce2d5..72a8a50 100644 --- a/home/dot_config/swaylock/swaylock +++ b/home/dot_config/swaylock/config @@ -1,4 +1,4 @@ -image=~/Pictures/Wallpaper/lock.png +image=~/System/Customization/Wallpaper/lock.png # screenshots ignore-empty-password show-failed-attempts @@ -35,19 +35,19 @@ text-clear-color=f5e0dc text-caps-lock-color=fab387 text-ver-color=89b4fa text-wrong-color=eba0ac -# -# indicator-radius 100 -# indicator-thickness 7 -# fade-in 0.2 -# grace 2 -# -# effect-blur 7x5 -# effect-vignette 0.5:0.5 -# ring-color bb00cc -# key-hl-color 880033 -# line-color 00000000 -# inside-color 00000088 -# # separator-color 00000000 -# # --grace 2 \ +indicator-radius 100 +indicator-thickness 7 + +fade-in 0.2 +grace 2 + +# effect-blur 10x10 +# effect-vignette 0.5:0.5 +# ring-color bb00cc +# key-hl-color 880033 +# line-color 00000000 +# inside-color 00000088 +# separator-color 00000000 +# --grace 2 \ # --fade-in 0.2 From adbaf40828fa8c50545d9886d38318eaaa56d5c1 Mon Sep 17 00:00:00 2001 From: js0ny Date: Thu, 2 Oct 2025 01:59:32 +0100 Subject: [PATCH 20/48] fix: less, yazi --- home/dot_config/lesskey | 16 +++++----- home/dot_config/yazi/keymap.toml | 52 -------------------------------- 2 files changed, 8 insertions(+), 60 deletions(-) diff --git a/home/dot_config/lesskey b/home/dot_config/lesskey index c30a1cc..0edf7ae 100644 --- a/home/dot_config/lesskey +++ b/home/dot_config/lesskey @@ -17,11 +17,11 @@ # Format: key action # Arrow Remap (hnei -> hjkl) -n forw-line -e back-line -N forw-line-force -E back-line-force - -# search with k : ne[k]st -k repeat-search -K reverse-search +# n forw-line +# e back-line +# N forw-line-force +# E back-line-force +# +# # search with k : ne[k]st +# k repeat-search +# K reverse-search diff --git a/home/dot_config/yazi/keymap.toml b/home/dot_config/yazi/keymap.toml index 31fb743..31bca00 100644 --- a/home/dot_config/yazi/keymap.toml +++ b/home/dot_config/yazi/keymap.toml @@ -6,65 +6,13 @@ prepend_keymap = [ - # Hopping - { on = "e", run = "arrow -1", desc = "Move cursor up" }, - { on = "n", run = "arrow 1", desc = "Move cursor down" }, - { on = "i", run = "enter", desc = "Enter the child directory" }, - { on = "I", run = "forward", desc = "Go forward to the next directory" }, # Seeking { on = "E", run = "seek -5", desc = "Seek up 5 units in the preview" }, { on = "N", run = "seek 5", desc = "Seek down 5 units in the preview" }, # Find - { on = "k", run = "find_arrow", desc = "Go to the next found" }, - { on = "K", run = "find_arrow --previous", desc = "Go to the previous found" }, { on = ["g", "p"], run = "cd ~/Pictures", desc = "Go ~/Pictures/"} ] - -[tasks] - -prepend_keymap = [ - { on = "e", run = "arrow -1", desc = "Move cursor up" }, - { on = "n", run = "arrow 1", desc = "Move cursor down" }, -] - -[select] - -prepend_keymap = [ - { on = "e", run = "arrow -1", desc = "Move cursor up" }, - { on = "n", run = "arrow 1", desc = "Move cursor down" }, -] - -[input] - -prepend_keymap = [ - # Mode - { on = "l", run = "insert", desc = "Enter insert mode" }, - { on = "L", run = [ "move -999", "insert" ], desc = "Move to the BOL, and enter insert mode" }, - { on = "i", run = "move 1", desc = "Move forward a character" }, - { on = "j", run = "forward --end-of-word", desc = "Move forward to the end of the current or next word" }, -] - -[confirm] -prepend_keymap = [ - { on = "N", run = "close", desc = "Cancel the confirm" }, - - { on = "e", run = "arrow -1", desc = "Move cursor up" }, - { on = "n", run = "arrow 1", desc = "Move cursor down" }, -] - -[completion] - -prepend_keymap = [ -] - -[help] - -prepend_keymap = [ - # Navigation - { on = "e", run = "arrow -1", desc = "Move cursor up" }, - { on = "n", run = "arrow 1", desc = "Move cursor down" }, -] From ff096c02bde3a8e9c947f28f388a40e34747515f Mon Sep 17 00:00:00 2001 From: js0ny Date: Wed, 8 Oct 2025 10:31:05 +0100 Subject: [PATCH 21/48] feat: add kio right-click services --- home/dot_config/fastfetch/config.jsonc | 4 ++-- home/dot_config/fish/conf.d/0init.fish | 8 +++----- .../kio/servicemenus/executable_office2pdf.desktop | 12 ++++++++++++ .../kio/servicemenus/executable_pdf2zh.desktop | 13 +++++++++++++ .../executable_swww-set-wallpaper.desktop | 12 ++++++++++++ 5 files changed, 42 insertions(+), 7 deletions(-) create mode 100644 home/dot_local/share/kio/servicemenus/executable_office2pdf.desktop create mode 100644 home/dot_local/share/kio/servicemenus/executable_pdf2zh.desktop create mode 100644 home/dot_local/share/kio/servicemenus/executable_swww-set-wallpaper.desktop diff --git a/home/dot_config/fastfetch/config.jsonc b/home/dot_config/fastfetch/config.jsonc index f2df0ef..3295236 100644 --- a/home/dot_config/fastfetch/config.jsonc +++ b/home/dot_config/fastfetch/config.jsonc @@ -3,7 +3,7 @@ "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json", "logo": { // "type": "auto", - "source": "arch_small", + "source": "fedora_small", "padding": { "top": 2, "left": 1, @@ -58,4 +58,4 @@ "poweradapter", "locale" ] -} \ No newline at end of file +} diff --git a/home/dot_config/fish/conf.d/0init.fish b/home/dot_config/fish/conf.d/0init.fish index e287cf5..ff5f28c 100644 --- a/home/dot_config/fish/conf.d/0init.fish +++ b/home/dot_config/fish/conf.d/0init.fish @@ -55,10 +55,9 @@ if command -v bun > /dev/null set -gx PATH $BUN_INSTALL/bin $PATH end # Rust Cargo -if command -v cargo > /dev/null - set -gx CARGO_HOME $XDG_DATA_HOME/cargo - set -gx PATH $CARGO_HOME/bin $PATH -end +set -gx RUSTUP_HOME $XDG_DATA_HOME/rustup +set -gx CARGO_HOME $XDG_DATA_HOME/cargo +set -gx PATH $CARGO_HOME/bin $PATH # CGDB if command -v cgdb > /dev/null set -gx CGDB_DIR $XDG_CONFIG_HOME/cgdb @@ -174,4 +173,3 @@ test -f /opt/miniconda3/etc/fish/conf.d/conda.fish && source /opt/miniconda3/etc test -d $HOME/.local/scripts && fish_add_path $HOME/.local/scripts test -d $HOME/.local/build && fish_add_path $HOME/.local/build -source "/home/js0ny/.deno/env.fish" diff --git a/home/dot_local/share/kio/servicemenus/executable_office2pdf.desktop b/home/dot_local/share/kio/servicemenus/executable_office2pdf.desktop new file mode 100644 index 0000000..25b1e6a --- /dev/null +++ b/home/dot_local/share/kio/servicemenus/executable_office2pdf.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Type=Service +MimeType=application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.openxmlformats-officedocument.presentationml.presentation; +Actions=convertToPDF +Icon=application-pdf +X-KDE-Priority=TopLevel +X-KDE-StartupNotify=false + +[Desktop Action convertToPDF] +Name=转换为 PDF +Icon=application-pdf +Exec=soffice --headless --convert-to pdf "%f" --outdir . diff --git a/home/dot_local/share/kio/servicemenus/executable_pdf2zh.desktop b/home/dot_local/share/kio/servicemenus/executable_pdf2zh.desktop new file mode 100644 index 0000000..0cdf073 --- /dev/null +++ b/home/dot_local/share/kio/servicemenus/executable_pdf2zh.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Type=Service +MimeType=application/pdf; +Actions=translateToZh +Icon=translate +X-KDE-Priority=TopLevel +X-KDE-StartupNotify=false + +[Desktop Action translateToZh] +Name=翻译为中文 +Icon=translate +Exec=pdf2zh "%f" + diff --git a/home/dot_local/share/kio/servicemenus/executable_swww-set-wallpaper.desktop b/home/dot_local/share/kio/servicemenus/executable_swww-set-wallpaper.desktop new file mode 100644 index 0000000..0eb1362 --- /dev/null +++ b/home/dot_local/share/kio/servicemenus/executable_swww-set-wallpaper.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Type=Service +MimeType=image/jpeg;image/png; +Actions=setWallpaper +Icon=preferences-desktop-wallpaper +X-KDE-Priority=TopLevel +X-KDE-StartupNotify=false + +[Desktop Action setWallpaper] +Name=设置为壁纸 +Icon=preferences-desktop-wallpaper +Exec=swww img "%f" From 8db7f8a1e97492993b116505598c91f1bf4e0302 Mon Sep 17 00:00:00 2001 From: js0ny Date: Wed, 8 Oct 2025 10:33:54 +0100 Subject: [PATCH 22/48] feat: niri-waybar --- home/dot_config/waybar/config.bak | 30 ++ home/dot_config/waybar/config.jsonc | 211 +++++++++-- home/dot_config/waybar/current.css | 28 ++ .../waybar/modules/hyprland-workspace.jsonc | 6 +- home/dot_config/waybar/modules/misc.jsonc | 6 +- home/dot_config/waybar/style.css | 164 +++++---- home/dot_config/waybar/style.css.bak | 329 ++++++++++++++++++ 7 files changed, 670 insertions(+), 104 deletions(-) create mode 100644 home/dot_config/waybar/config.bak create mode 100644 home/dot_config/waybar/style.css.bak diff --git a/home/dot_config/waybar/config.bak b/home/dot_config/waybar/config.bak new file mode 100644 index 0000000..da794cb --- /dev/null +++ b/home/dot_config/waybar/config.bak @@ -0,0 +1,30 @@ +// -*- mode: jsonc -*- +{ + // "layer": "top", // Waybar at top layer + // "position": "bottom", // Waybar position (top|bottom|left|right) + "include": [ + "~/.config/waybar/modules/hyprland-workspace.jsonc", + "~/.config/waybar/modules/misc.jsonc", + "~/.config/waybar/modules/niri.jsonc" + ], + "height": 30, // Waybar height (to be removed for auto height) + // "width": 1280, // Waybar width + "spacing": 4, // Gaps between modules (4px) + // Choose the order of the modules + "modules-left": ["custom/osicon", "hyprland/workspaces", "sway/mode", "sway/scratchpad"], + "modules-center": ["hyprland/window"], + "modules-right": [ + "tray", + // "idle_inhibitor", + "pulseaudio", + "network", + // "power-profiles-daemon", + "cpu", + "memory", + "temperature", + "backlight", + // "hyprland/language", + "battery", + "clock", + ], +} diff --git a/home/dot_config/waybar/config.jsonc b/home/dot_config/waybar/config.jsonc index de9ce34..afc52ed 100644 --- a/home/dot_config/waybar/config.jsonc +++ b/home/dot_config/waybar/config.jsonc @@ -1,29 +1,194 @@ -// -*- mode: jsonc -*- { - // "layer": "top", // Waybar at top layer + "layer": "top", // Waybar at top layer // "position": "bottom", // Waybar position (top|bottom|left|right) + // "position": "right", + // "position": "left", + // "output": "eDP-1", + "height": 32, // Waybar height (to be removed for auto height) + "margin-top": 4, + "margin-left": 4, + "margin-right": 4, + // "width": 300, // Waybar width + "spacing": 0, // Gaps between modules (4px) "include": [ - "~/.config/waybar/modules/hyprland-workspace.jsonc", - "~/.config/waybar/modules/misc.jsonc", + // "~/.config/waybar/modules/hyprland-workspace.jsonc", + "~/.config/waybar/modules/misc.jsonc" + // "~/.config/waybar/modules/niri.jsonc" ], - "height": 30, // Waybar height (to be removed for auto height) - // "width": 1280, // Waybar width - "spacing": 4, // Gaps between modules (4px) // Choose the order of the modules - "modules-left": ["hyprland/workspaces", "sway/mode", "sway/scratchpad"], - "modules-center": ["hyprland/window"], - "modules-right": [ - "tray", - // "idle_inhibitor", - "pulseaudio", - "network", - // "power-profiles-daemon", - "cpu", - "memory", - "temperature", - "backlight", - // "hyprland/language", - "battery", - "clock", - ], + "modules-left": ["custom/osicon", "wlr/taskbar"], + // "modules-center": ["clock"], + "modules-right": ["tray", "pulseaudio", "cpu", "memory", "network", "battery", "clock"], + // "modules-right": ["cpu", "memory", "battery", "network", "tray"], + // Modules configuration + // "sway/workspaces": { + // "disable-scroll": true, + // "all-outputs": true, + // "warp-on-scroll": false, + // "format": "{name}: {icon}", + // "format-icons": { + // "1": "", + // "2": "", + // "3": "", + // "4": "", + // "5": "", + // "urgent": "", + // "focused": "", + // "default": "" + // } + // }, + "custom/logout": { + "format": "⏻", + "tooltip": false, + "on-click": "niri msg action quit" + }, + "wlr/taskbar": { + // "all-outputs": true, + // "format": "{icon} {title} {short_state}", + "format": "{icon}", + "tooltip-format": "{title} | {app_id}", + "on-click": "activate", + "on-click-middle": "close", + "on-click-right": "fullscreen" + }, + "keyboard-state": { + "numlock": true, + "capslock": true, + "format": "{name} {icon}", + "format-icons": { + "locked": "", + "unlocked": "" + } + }, + "sway/mode": { + "format": "{}" + }, + "sway/scratchpad": { + "format": "{icon} {count}", + "show-empty": false, + "format-icons": ["", ""], + "tooltip": true, + "tooltip-format": "{app}: {title}" + }, + "mpd": { + "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ", + "format-disconnected": "Disconnected ", + "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ", + "unknown-tag": "N/A", + "interval": 2, + "consume-icons": { + "on": " " + }, + "random-icons": { + "off": " ", + "on": " " + }, + "repeat-icons": { + "on": " " + }, + "single-icons": { + "on": "1 " + }, + "state-icons": { + "paused": "", + "playing": "" + }, + "tooltip-format": "MPD (connected)", + "tooltip-format-disconnected": "MPD (disconnected)" + }, + "idle_inhibitor": { + "format": "{icon}", + "format-icons": { + "activated": "", + "deactivated": "" + } + }, + "tray": { + // "icon-size": 21, + "spacing": 10 + }, + "clock": { + "tooltip-format": "{:%Y %B}\n{calendar}", + "format": "{:%e %B %H:%M}" + }, + "cpu": { + "format": "{usage}% ", + "tooltip": false + }, + "memory": { + "format": "{}% " + }, + "temperature": { + // "thermal-zone": 2, + // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", + "critical-threshold": 80, + // "format-critical": "{temperatureC}°C {icon}", + "format": "{temperatureC}°C {icon}", + "format-icons": ["", "", ""] + }, + "backlight": { + // "device": "acpi_video1", + "format": "{percent}% {icon}", + "format-icons": ["", "", "", "", "", "", "", "", ""] + }, + "battery": { + "states": { + // "good": 95, + "warning": 30, + "critical": 15 + }, + "format": "{capacity}% {icon}", + "format-charging": "{capacity}% ", + "format-plugged": "{capacity}% ", + "format-alt": "{time} {icon}", + // "format-good": "", // An empty format will hide the module + // "format-full": "", + "format-icons": ["", "", "", "", ""] + }, + "battery#bat2": { + "bat": "BAT2" + }, + "network": { + // "interface": "wlp2*", // (Optional) To force the use of this interface + "format-wifi": "", + "format-ethernet": "", + "tooltip-format": "{ifname} via {gwaddr} ", + "format-linked": "", + "format-disconnected": "⚠", + "format-alt": "{ifname}: {ipaddr}/{cidr}" + }, + "pulseaudio": { + "scroll-step": 5, // %, can be a float + "format": "{icon}", + "tooltip-format": "{volume}% {icon}", + "format-bluetooth": "{volume}% {icon}", + "format-bluetooth-muted": " {icon}", + "format-muted": "", + "format-source": "{volume}% ", + "format-source-muted": "", + "format-icons": { + "headphone": "", + "hands-free": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": ["", "", ""] + }, + "on-click": "pavucontrol", + "on-click-right": "pactl set-sink-mute @DEFAULT_SINK@ toggle" + }, + "custom/media": { + "format": "{icon} {}", + "return-type": "json", + "max-length": 40, + "format-icons": { + "spotify": "", + "default": "🎜" + }, + "escape": true, + "exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder + // "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name + } } + diff --git a/home/dot_config/waybar/current.css b/home/dot_config/waybar/current.css index e69de29..8cae229 100644 --- a/home/dot_config/waybar/current.css +++ b/home/dot_config/waybar/current.css @@ -0,0 +1,28 @@ +@define-color rosewater #f5e0dc; +@define-color flamingo #f2cdcd; +@define-color pink #f5c2e7; +@define-color mauve #cba6f7; +@define-color red #f38ba8; +@define-color maroon #eba0ac; +@define-color peach #fab387; +@define-color yellow #f9e2af; +@define-color green #a6e3a1; +@define-color teal #94e2d5; +@define-color sky #89dceb; +@define-color sapphire #74c7ec; +@define-color blue #89b4fa; +@define-color lavender #b4befe; +@define-color text #cdd6f4; +@define-color subtext1 #bac2de; +@define-color subtext0 #a6adc8; +@define-color overlay2 #9399b2; +@define-color overlay1 #7f849c; +@define-color overlay0 #6c7086; +@define-color surface2 #585b70; +@define-color surface1 #45475a; +@define-color surface0 #313244; +@define-color base #1e1e2e; +@define-color mantle #181825; +@define-color crust #11111b; +@define-color accent #f5c2e7; + diff --git a/home/dot_config/waybar/modules/hyprland-workspace.jsonc b/home/dot_config/waybar/modules/hyprland-workspace.jsonc index 892823f..ab20d89 100644 --- a/home/dot_config/waybar/modules/hyprland-workspace.jsonc +++ b/home/dot_config/waybar/modules/hyprland-workspace.jsonc @@ -9,9 +9,9 @@ "on-click": "activate", "on-scroll-up": "hyprctl dispatch workspace e+1", "on-scroll-down": "hyprctl dispatch workspace e-1", - "persistent-workspaces": { - "*": 5 - }, + // "persistent-workspaces": { + // "*": 5 + // }, "format-icons": { "1": "一", diff --git a/home/dot_config/waybar/modules/misc.jsonc b/home/dot_config/waybar/modules/misc.jsonc index 59c0fbf..98c03d5 100644 --- a/home/dot_config/waybar/modules/misc.jsonc +++ b/home/dot_config/waybar/modules/misc.jsonc @@ -183,5 +183,9 @@ "suspend": "systemctl suspend", "hibernate": "systemctl hibernate" } + }, + "custom/osicon": { + "format": "", + "on-click-right": "rofi -show drun" } -} \ No newline at end of file +} diff --git a/home/dot_config/waybar/style.css b/home/dot_config/waybar/style.css index 47c2fb7..100f4f8 100644 --- a/home/dot_config/waybar/style.css +++ b/home/dot_config/waybar/style.css @@ -1,17 +1,18 @@ -@import "current.css"; - * { - font-family: 'Maple Mono NF SC', 'Noto Sans Mono', 'Font Awesome 6 Free', 'Font Awesome 6 Brands', monospace; - font-size: 13px; + /* `otf-font-awesome` is required to be installed for icons */ + font-family: Cantarell, 'Font Awesome 6 Free'; + font-size: 14px; + font-feature-settings: "tnum"; } window#waybar { - /* background-color: rgba(43, 48, 59, 0.5); */ - /* border-bottom: 3px solid rgba(100, 114, 125, 0.5); */ - background-color: @base; - color: @text; - transition-property: background-color; - transition-duration: .5s; + background: transparent; + /* background-color: rgba(30, 30, 46, 0.5); */ + /* border-bottom: 2px solid rgba(147, 153, 178, 0.5); */ + /* border: 1px solid rgba(166, 173, 200, 1.0); */ + color: #ffffff; + /* transition-property: background-color; */ + /* transition-duration: .5s; */ } window#waybar.hidden { @@ -38,27 +39,27 @@ window#waybar.chromium { button { /* Use box-shadow instead of border so the text isn't offset */ - box-shadow: inset 0 -3px transparent; + box-shadow: none; /* Avoid rounded borders under each button name */ border: none; border-radius: 0; + transition-property: none; } /* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ button:hover { - background: inherit; - box-shadow: inset 0 -3px #ffffff; -} - -/* you can set a style on hover for any module like this */ -#pulseaudio:hover { - background-color: @lavender; + background: none; + box-shadow: none; + text-shadow: none; + border: none; + -gtk-icon-effect: none; + -gtk-icon-shadow: none; } #workspaces button { padding: 0 5px; background-color: transparent; - color: @text; + color: #ffffff; } #workspaces button:hover { @@ -71,12 +72,12 @@ button:hover { } #workspaces button.urgent { - background-color: @maroon; + background-color: #eb4d4b; } #mode { background-color: #64727D; - box-shadow: inset 0 -3px #ffffff; + border-bottom: 3px solid #ffffff; } #clock, @@ -94,10 +95,12 @@ button:hover { #mode, #idle_inhibitor, #scratchpad, -#power-profiles-daemon, +#custom-osicon, #mpd { padding: 0 10px; - color: #ffffff; + color: #f0f0ff; + background-color: rgba(30, 30, 46, 0.6); + border-radius: 99px; } #window, @@ -116,14 +119,19 @@ button:hover { } #clock { - background-color: #64727D; + /* background-color: #64727D; */ + font-weight: bold; + /* background-color: rgba(0, 0, 0, 0.3); */ + /* border-radius: 99px; */ } #battery { - background-color: #ffffff; - color: #000000; + /* background-color: #f9e2af; */ + /* color: #000000; */ + margin-left: 4px; } +/* #battery.charging, #battery.plugged { color: #ffffff; background-color: #26A65B; @@ -136,47 +144,34 @@ button:hover { } } -/* Using steps() instead of linear as a timing function to limit cpu usage */ #battery.critical:not(.charging) { background-color: #f53c3c; color: #ffffff; animation-name: blink; animation-duration: 0.5s; - animation-timing-function: steps(12); + animation-timing-function: linear; animation-iteration-count: infinite; animation-direction: alternate; } - -#power-profiles-daemon { - padding-right: 15px; -} - -#power-profiles-daemon.performance { - background-color: #f53c3c; - color: #ffffff; -} - -#power-profiles-daemon.balanced { - background-color: #2980b9; - color: #ffffff; -} - -#power-profiles-daemon.power-saver { - background-color: #2ecc71; - color: #000000; -} +*/ label:focus { background-color: #000000; } #cpu { - background-color: @green; - color: #000000; + /* background-color: #f38ba8; */ + /* color: #000000; */ + border-radius: 99px 0px 0px 99px; + padding: 0 0 0 10px; + margin-left: 4px; } #memory { - background-color: @mauve; + /* background-color: #fab387; */ + /* color: #000000; */ + border-radius: 0px 99px 99px 0px; + /* padding: 0 10px 0 0; */ } #disk { @@ -188,15 +183,51 @@ label:focus { } #network { - background-color: @blue; + /* background-color: #a6e3a1; */ + /* color: #000000; */ } +/* #network.disconnected { background-color: #f53c3c; } +*/ + +#taskbar { + margin-left: 4px; +} + +#taskbar button { + color: #f0f0ff; + background-color: rgba(30, 30, 46, 0.6); +} + +#taskbar button:first-child { + border-radius: 99px 0 0 99px; +} + +#taskbar button:last-child { + border-radius: 0 99px 99px 0; +} + +#taskbar button:first-child:last-child { + border-radius: 99px; +} + +#taskbar button:hover { + background-color: rgba(49, 50, 68, 0.6); +} + +#taskbar button.active { + background-color: rgba(88, 91, 112, 0.6); +} + +#taskbar button.active:hover { + background-color: rgba(108, 112, 134, 0.6); +} #pulseaudio { - background-color: @yellow; + background-color: #f1c40f; color: #000000; } @@ -229,7 +260,7 @@ label:focus { } #temperature { - background-color: @peach; + background-color: #f0932b; } #temperature.critical { @@ -237,7 +268,7 @@ label:focus { } #tray { - background-color: @blue; + /* background-color: #2980b9; */ } #tray > .passive { @@ -276,8 +307,8 @@ label:focus { } #language { - background: @green; - color: @mauve; + background: #00b093; + color: #740864; padding: 0 5px; margin: 0 5px; min-width: 16px; @@ -306,24 +337,3 @@ label:focus { #scratchpad.empty { background-color: transparent; } - -#privacy { - padding: 0; -} - -#privacy-item { - padding: 0 5px; - color: white; -} - -#privacy-item.screenshare { - background-color: #cf5700; -} - -#privacy-item.audio-in { - background-color: #1ca000; -} - -#privacy-item.audio-out { - background-color: #0069d4; -} diff --git a/home/dot_config/waybar/style.css.bak b/home/dot_config/waybar/style.css.bak new file mode 100644 index 0000000..47c2fb7 --- /dev/null +++ b/home/dot_config/waybar/style.css.bak @@ -0,0 +1,329 @@ +@import "current.css"; + +* { + font-family: 'Maple Mono NF SC', 'Noto Sans Mono', 'Font Awesome 6 Free', 'Font Awesome 6 Brands', monospace; + font-size: 13px; +} + +window#waybar { + /* background-color: rgba(43, 48, 59, 0.5); */ + /* border-bottom: 3px solid rgba(100, 114, 125, 0.5); */ + background-color: @base; + color: @text; + transition-property: background-color; + transition-duration: .5s; +} + +window#waybar.hidden { + opacity: 0.2; +} + +/* +window#waybar.empty { + background-color: transparent; +} +window#waybar.solo { + background-color: #FFFFFF; +} +*/ + +window#waybar.termite { + background-color: #3F3F3F; +} + +window#waybar.chromium { + background-color: #000000; + border: none; +} + +button { + /* Use box-shadow instead of border so the text isn't offset */ + box-shadow: inset 0 -3px transparent; + /* Avoid rounded borders under each button name */ + border: none; + border-radius: 0; +} + +/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ +button:hover { + background: inherit; + box-shadow: inset 0 -3px #ffffff; +} + +/* you can set a style on hover for any module like this */ +#pulseaudio:hover { + background-color: @lavender; +} + +#workspaces button { + padding: 0 5px; + background-color: transparent; + color: @text; +} + +#workspaces button:hover { + background: rgba(0, 0, 0, 0.2); +} + +#workspaces button.focused { + background-color: #64727D; + box-shadow: inset 0 -3px #ffffff; +} + +#workspaces button.urgent { + background-color: @maroon; +} + +#mode { + background-color: #64727D; + box-shadow: inset 0 -3px #ffffff; +} + +#clock, +#battery, +#cpu, +#memory, +#disk, +#temperature, +#backlight, +#network, +#pulseaudio, +#wireplumber, +#custom-media, +#tray, +#mode, +#idle_inhibitor, +#scratchpad, +#power-profiles-daemon, +#mpd { + padding: 0 10px; + color: #ffffff; +} + +#window, +#workspaces { + margin: 0 4px; +} + +/* If workspaces is the leftmost module, omit left margin */ +.modules-left > widget:first-child > #workspaces { + margin-left: 0; +} + +/* If workspaces is the rightmost module, omit right margin */ +.modules-right > widget:last-child > #workspaces { + margin-right: 0; +} + +#clock { + background-color: #64727D; +} + +#battery { + background-color: #ffffff; + color: #000000; +} + +#battery.charging, #battery.plugged { + color: #ffffff; + background-color: #26A65B; +} + +@keyframes blink { + to { + background-color: #ffffff; + color: #000000; + } +} + +/* Using steps() instead of linear as a timing function to limit cpu usage */ +#battery.critical:not(.charging) { + background-color: #f53c3c; + color: #ffffff; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: steps(12); + animation-iteration-count: infinite; + animation-direction: alternate; +} + +#power-profiles-daemon { + padding-right: 15px; +} + +#power-profiles-daemon.performance { + background-color: #f53c3c; + color: #ffffff; +} + +#power-profiles-daemon.balanced { + background-color: #2980b9; + color: #ffffff; +} + +#power-profiles-daemon.power-saver { + background-color: #2ecc71; + color: #000000; +} + +label:focus { + background-color: #000000; +} + +#cpu { + background-color: @green; + color: #000000; +} + +#memory { + background-color: @mauve; +} + +#disk { + background-color: #964B00; +} + +#backlight { + background-color: #90b1b1; +} + +#network { + background-color: @blue; +} + +#network.disconnected { + background-color: #f53c3c; +} + +#pulseaudio { + background-color: @yellow; + color: #000000; +} + +#pulseaudio.muted { + background-color: #90b1b1; + color: #2a5c45; +} + +#wireplumber { + background-color: #fff0f5; + color: #000000; +} + +#wireplumber.muted { + background-color: #f53c3c; +} + +#custom-media { + background-color: #66cc99; + color: #2a5c45; + min-width: 100px; +} + +#custom-media.custom-spotify { + background-color: #66cc99; +} + +#custom-media.custom-vlc { + background-color: #ffa000; +} + +#temperature { + background-color: @peach; +} + +#temperature.critical { + background-color: #eb4d4b; +} + +#tray { + background-color: @blue; +} + +#tray > .passive { + -gtk-icon-effect: dim; +} + +#tray > .needs-attention { + -gtk-icon-effect: highlight; + background-color: #eb4d4b; +} + +#idle_inhibitor { + background-color: #2d3436; +} + +#idle_inhibitor.activated { + background-color: #ecf0f1; + color: #2d3436; +} + +#mpd { + background-color: #66cc99; + color: #2a5c45; +} + +#mpd.disconnected { + background-color: #f53c3c; +} + +#mpd.stopped { + background-color: #90b1b1; +} + +#mpd.paused { + background-color: #51a37a; +} + +#language { + background: @green; + color: @mauve; + padding: 0 5px; + margin: 0 5px; + min-width: 16px; +} + +#keyboard-state { + background: #97e1ad; + color: #000000; + padding: 0 0px; + margin: 0 5px; + min-width: 16px; +} + +#keyboard-state > label { + padding: 0 5px; +} + +#keyboard-state > label.locked { + background: rgba(0, 0, 0, 0.2); +} + +#scratchpad { + background: rgba(0, 0, 0, 0.2); +} + +#scratchpad.empty { + background-color: transparent; +} + +#privacy { + padding: 0; +} + +#privacy-item { + padding: 0 5px; + color: white; +} + +#privacy-item.screenshare { + background-color: #cf5700; +} + +#privacy-item.audio-in { + background-color: #1ca000; +} + +#privacy-item.audio-out { + background-color: #0069d4; +} From ffafb4a3299b631216b17c3879ace2280690fec1 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 11 Oct 2025 11:26:21 +0100 Subject: [PATCH 23/48] feat: add nixos and hm config --- nixcfgs/.gitignore | 0 nixcfgs/flake.lock | 110 +++++++++++++++ nixcfgs/flake.nix | 66 +++++++++ nixcfgs/hosts/zephyrus/configuration.nix | 126 ++++++++++++++++++ nixcfgs/hosts/zephyrus/default.nix | 27 ++++ .../hosts/zephyrus/hardware-configuration.nix | 58 ++++++++ nixcfgs/hosts/zephyrus/keyd.nix | 23 ++++ nixcfgs/hosts/zephyrus/packages.nix | 12 ++ nixcfgs/hosts/zp.nix | 47 +++++++ nixcfgs/modules/common/default.nix | 0 nixcfgs/modules/home/dev/c.nix | 0 nixcfgs/modules/home/dev/java.nix | 11 ++ nixcfgs/modules/home/dev/nix.nix | 11 ++ nixcfgs/modules/home/dev/python.nix | 13 ++ nixcfgs/modules/home/gnome.nix | 0 nixcfgs/modules/home/programs/eza.nix | 7 + nixcfgs/modules/home/programs/fzf.nix | 8 ++ nixcfgs/modules/home/programs/lsd.nix | 11 ++ nixcfgs/modules/home/programs/nvim.nix | 6 + nixcfgs/modules/home/programs/rime.nix | 21 +++ nixcfgs/modules/home/programs/starship.nix | 8 ++ nixcfgs/modules/home/programs/vscodium.nix | 6 + nixcfgs/modules/home/programs/zed-editor.nix | 6 + nixcfgs/modules/home/programs/zoxide.nix | 8 ++ nixcfgs/modules/nixos/additional-packages.nix | 7 + nixcfgs/modules/nixos/chromium.nix | 8 ++ nixcfgs/modules/nixos/configuration.nix | 105 +++++++++++++++ nixcfgs/modules/nixos/default.nix | 7 + nixcfgs/modules/nixos/desktop/gnome.nix | 5 + nixcfgs/modules/nixos/desktop/hyprland.nix | 7 + nixcfgs/modules/nixos/desktop/kde.nix | 6 + nixcfgs/modules/nixos/disable-nvidia.nix | 26 ++++ nixcfgs/modules/nixos/display-manager/gdm.nix | 8 ++ nixcfgs/modules/nixos/display-manager/ly.nix | 3 + .../modules/nixos/display-manager/sddm.nix | 6 + nixcfgs/modules/nixos/docker.nix | 16 +++ nixcfgs/modules/nixos/firefox.nix | 33 +++++ nixcfgs/modules/nixos/fonts.nix | 55 ++++++++ nixcfgs/modules/nixos/laptop.nix | 11 ++ nixcfgs/modules/nixos/libvirt.nix | 22 +++ nixcfgs/modules/nixos/nvidia.nix | 11 ++ nixcfgs/modules/nixos/packages.nix | 18 +++ nixcfgs/modules/nixos/wine.nix | 8 ++ nixcfgs/users/js0ny/default.nix | 48 +++++++ nixcfgs/users/js0ny/packages/cli.nix | 52 ++++++++ nixcfgs/users/js0ny/packages/flatpak.nix | 26 ++++ nixcfgs/users/js0ny/packages/gui.nix | 28 ++++ nixcfgs/users/js0ny/programs/chromium.nix | 15 +++ nixcfgs/users/js0ny/programs/default.nix | 16 +++ nixcfgs/users/js0ny/programs/git.nix | 7 + nixcfgs/users/js0ny/programs/gnome.nix | 48 +++++++ nixcfgs/users/js0ny/programs/plasma.nix | 48 +++++++ nixcfgs/users/js0ny/programs/shell.nix | 30 +++++ nixcfgs/users/js0ny/programs/vscodium.nix | 17 +++ 54 files changed, 1282 insertions(+) create mode 100644 nixcfgs/.gitignore create mode 100644 nixcfgs/flake.lock create mode 100644 nixcfgs/flake.nix create mode 100644 nixcfgs/hosts/zephyrus/configuration.nix create mode 100644 nixcfgs/hosts/zephyrus/default.nix create mode 100644 nixcfgs/hosts/zephyrus/hardware-configuration.nix create mode 100644 nixcfgs/hosts/zephyrus/keyd.nix create mode 100644 nixcfgs/hosts/zephyrus/packages.nix create mode 100644 nixcfgs/hosts/zp.nix create mode 100644 nixcfgs/modules/common/default.nix create mode 100644 nixcfgs/modules/home/dev/c.nix create mode 100644 nixcfgs/modules/home/dev/java.nix create mode 100644 nixcfgs/modules/home/dev/nix.nix create mode 100644 nixcfgs/modules/home/dev/python.nix create mode 100644 nixcfgs/modules/home/gnome.nix create mode 100644 nixcfgs/modules/home/programs/eza.nix create mode 100644 nixcfgs/modules/home/programs/fzf.nix create mode 100644 nixcfgs/modules/home/programs/lsd.nix create mode 100644 nixcfgs/modules/home/programs/nvim.nix create mode 100644 nixcfgs/modules/home/programs/rime.nix create mode 100644 nixcfgs/modules/home/programs/starship.nix create mode 100644 nixcfgs/modules/home/programs/vscodium.nix create mode 100644 nixcfgs/modules/home/programs/zed-editor.nix create mode 100644 nixcfgs/modules/home/programs/zoxide.nix create mode 100644 nixcfgs/modules/nixos/additional-packages.nix create mode 100644 nixcfgs/modules/nixos/chromium.nix create mode 100644 nixcfgs/modules/nixos/configuration.nix create mode 100644 nixcfgs/modules/nixos/default.nix create mode 100644 nixcfgs/modules/nixos/desktop/gnome.nix create mode 100644 nixcfgs/modules/nixos/desktop/hyprland.nix create mode 100644 nixcfgs/modules/nixos/desktop/kde.nix create mode 100644 nixcfgs/modules/nixos/disable-nvidia.nix create mode 100644 nixcfgs/modules/nixos/display-manager/gdm.nix create mode 100644 nixcfgs/modules/nixos/display-manager/ly.nix create mode 100644 nixcfgs/modules/nixos/display-manager/sddm.nix create mode 100644 nixcfgs/modules/nixos/docker.nix create mode 100644 nixcfgs/modules/nixos/firefox.nix create mode 100644 nixcfgs/modules/nixos/fonts.nix create mode 100644 nixcfgs/modules/nixos/laptop.nix create mode 100644 nixcfgs/modules/nixos/libvirt.nix create mode 100644 nixcfgs/modules/nixos/nvidia.nix create mode 100644 nixcfgs/modules/nixos/packages.nix create mode 100644 nixcfgs/modules/nixos/wine.nix create mode 100644 nixcfgs/users/js0ny/default.nix create mode 100644 nixcfgs/users/js0ny/packages/cli.nix create mode 100644 nixcfgs/users/js0ny/packages/flatpak.nix create mode 100644 nixcfgs/users/js0ny/packages/gui.nix create mode 100644 nixcfgs/users/js0ny/programs/chromium.nix create mode 100644 nixcfgs/users/js0ny/programs/default.nix create mode 100644 nixcfgs/users/js0ny/programs/git.nix create mode 100644 nixcfgs/users/js0ny/programs/gnome.nix create mode 100644 nixcfgs/users/js0ny/programs/plasma.nix create mode 100644 nixcfgs/users/js0ny/programs/shell.nix create mode 100644 nixcfgs/users/js0ny/programs/vscodium.nix diff --git a/nixcfgs/.gitignore b/nixcfgs/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/nixcfgs/flake.lock b/nixcfgs/flake.lock new file mode 100644 index 0000000..d64fa84 --- /dev/null +++ b/nixcfgs/flake.lock @@ -0,0 +1,110 @@ +{ + "nodes": { + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1760130406, + "narHash": "sha256-GKMwBaFRw/C1p1VtjDz4DyhyzjKUWyi1K50bh8lgA2E=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "d305eece827a3fe317a2d70138f53feccaf890a1", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "nix-darwin": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1751313918, + "narHash": "sha256-HsJM3XLa43WpG+665aGEh8iS8AfEwOIQWk3Mke3e7nk=", + "owner": "nix-darwin", + "repo": "nix-darwin", + "rev": "e04a388232d9a6ba56967ce5b53a8a6f713cdfcf", + "type": "github" + }, + "original": { + "owner": "nix-darwin", + "ref": "master", + "repo": "nix-darwin", + "type": "github" + } + }, + "nix-flatpak": { + "locked": { + "lastModified": 1751276396, + "narHash": "sha256-oOYrnKStMsOXST+wKnzuSZ49h8Dr1Q3mIn2f5Kb5GAw=", + "owner": "gmodena", + "repo": "nix-flatpak", + "rev": "59adb9ad1cbd915494fc35cd0e0a9d582ca9de74", + "type": "github" + }, + "original": { + "owner": "gmodena", + "repo": "nix-flatpak", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1754182383, + "narHash": "sha256-hON5G3ENyUGUpqImXT+Ag7TWbBsfthwqxMcAw8EiKw8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e960e6e1dc689e2b5fe9e3ee824fc12860d9f27c", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "plasma-manager": { + "inputs": { + "home-manager": [ + "home-manager" + ], + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1759321049, + "narHash": "sha256-8XkU4gIrLT2DJZWQyvsP5woXGZF5eE/7AnKfwQkiwYU=", + "owner": "nix-community", + "repo": "plasma-manager", + "rev": "205dcfd4a30d4a5d1b4f28defee69daa7c7252cd", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "plasma-manager", + "type": "github" + } + }, + "root": { + "inputs": { + "home-manager": "home-manager", + "nix-darwin": "nix-darwin", + "nix-flatpak": "nix-flatpak", + "nixpkgs": "nixpkgs", + "plasma-manager": "plasma-manager" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix new file mode 100644 index 0000000..dc1a7f3 --- /dev/null +++ b/nixcfgs/flake.nix @@ -0,0 +1,66 @@ +{ + description = "A simple NixOS flake"; + + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; + nix-flatpak.url = "github:gmodena/nix-flatpak"; + nix-darwin = { + url = "github:nix-darwin/nix-darwin/master"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + home-manager = { + url = "github:nix-community/home-manager"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + plasma-manager = { + url = "github:nix-community/plasma-manager"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.home-manager.follows = "home-manager"; + }; + }; + + outputs = { + self, + nixpkgs, + nix-flatpak, + nix-darwin, + home-manager, + plasma-manager, + ... + } @ inputs: let + system = "x86_64-linux"; + pkgs = nixpkgs.legacyPackages.${system}; + in { + nixosConfigurations.zp = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + modules = [ + nix-flatpak.nixosModules.nix-flatpak + ./hosts/zp.nix + ./hardware-configuration.nix + ]; + }; + + nixosConfigurations.zephyrus = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + modules = [ + ./hosts/zephyrus + home-manager.nixosModules.home-manager + { + # nix-flatpak.homeManagerModules.nix-flatpak + home-manager.sharedModules = [plasma-manager.homeModules.plasma-manager nix-flatpak.homeManagerModules.nix-flatpak]; + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.js0ny = import ./users/js0ny; + nixpkgs.config.allowUnfree = true; + } + ]; + }; + + darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { + system = "aarch64-darwin"; + modules = [ + ./hosts/zen + ]; + }; + }; +} diff --git a/nixcfgs/hosts/zephyrus/configuration.nix b/nixcfgs/hosts/zephyrus/configuration.nix new file mode 100644 index 0000000..9ff3b0e --- /dev/null +++ b/nixcfgs/hosts/zephyrus/configuration.nix @@ -0,0 +1,126 @@ +# Edit this configuration file to define what should be installed on +# your system. Help is available in the configuration.nix(5) man page, on +# https://search.nixos.org/options and in the NixOS manual (`nixos-help`). + +{ config, lib, pkgs, ... }: + +{ + imports = + [ # Include the results of the hardware scan. + ./hardware-configuration.nix + ]; + + # Use the systemd-boot EFI boot loader. + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + # Use latest kernel. + boot.kernelPackages = pkgs.linuxPackages_latest; + + # networking.hostName = "nixos"; # Define your hostname. + # Pick only one of the below networking options. + # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. + # networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. + + # Set your time zone. + time.timeZone = "Europe/London"; + + # Configure network proxy if necessary + # networking.proxy.default = "http://user:password@proxy:port/"; + # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; + + # Select internationalisation properties. + i18n.defaultLocale = "en_US.UTF-8"; + # console = { + # font = "Lat2-Terminus16"; + # keyMap = "us"; + # useXkbConfig = true; # use xkb.options in tty. + # }; + + # Enable the X11 windowing system. + # services.xserver.enable = true; + + + + + # Configure keymap in X11 + # services.xserver.xkb.layout = "us"; + # services.xserver.xkb.options = "eurosign:e,caps:escape"; + + # Enable CUPS to print documents. + # services.printing.enable = true; + + # Enable sound. + # services.pulseaudio.enable = true; + # OR + # services.pipewire = { + # enable = true; + # pulse.enable = true; + # }; + + # Enable touchpad support (enabled default in most desktopManager). + # services.libinput.enable = true; + + # Define a user account. Don't forget to set a password with ‘passwd’. + users.users.js0ny = { + isNormalUser = true; + extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user. + packages = with pkgs; [ + tree + ]; + }; + + # programs.firefox.enable = true; + + # List packages installed in system profile. + # You can use https://search.nixos.org/ to find more packages (and options). + environment.systemPackages = with pkgs; [ + vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. + wget + ]; + + # Some programs need SUID wrappers, can be configured further or are + # started in user sessions. + # programs.mtr.enable = true; + # programs.gnupg.agent = { + # enable = true; + # enableSSHSupport = true; + # }; + + # List services that you want to enable: + + # Enable the OpenSSH daemon. + # services.openssh.enable = true; + + # Open ports in the firewall. + # networking.firewall.allowedTCPPorts = [ ... ]; + # networking.firewall.allowedUDPPorts = [ ... ]; + # Or disable the firewall altogether. + # networking.firewall.enable = false; + + # Copy the NixOS configuration file and link it from the resulting system + # (/run/current-system/configuration.nix). This is useful in case you + # accidentally delete configuration.nix. + # system.copySystemConfiguration = true; + + # This option defines the first version of NixOS you have installed on this particular machine, + # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions. + # + # Most users should NEVER change this value after the initial install, for any reason, + # even if you've upgraded your system to a new NixOS release. + # + # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, + # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how + # to actually do that. + # + # This value being lower than the current NixOS release does NOT mean your system is + # out of date, out of support, or vulnerable. + # + # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, + # and migrated your data accordingly. + # + # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . + system.stateVersion = "25.05"; # Did you read the comment? + +} + diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix new file mode 100644 index 0000000..1ab74b8 --- /dev/null +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -0,0 +1,27 @@ +# ~/.config/nixcfgs/hosts/zephyrus/default.nix +{ + config, + lib, + pkgs, + nix-flatpak, + ... +}: { + imports = [ + ../../modules/nixos + ../../modules/nixos/laptop.nix + ../../modules/nixos/disable-nvidia.nix + ../../modules/nixos/additional-packages.nix + ../../modules/nixos/libvirt.nix + ../../modules/nixos/docker.nix + ../../modules/nixos/firefox.nix + ../../modules/nixos/desktop/gnome.nix + ../../modules/nixos/desktop/kde.nix + ../../modules/nixos/display-manager/ly.nix + ./hardware-configuration.nix + ./keyd.nix + ./packages.nix + ]; + + networking.hostName = "zephyrus"; + system.stateVersion = "25.05"; +} diff --git a/nixcfgs/hosts/zephyrus/hardware-configuration.nix b/nixcfgs/hosts/zephyrus/hardware-configuration.nix new file mode 100644 index 0000000..d944f05 --- /dev/null +++ b/nixcfgs/hosts/zephyrus/hardware-configuration.nix @@ -0,0 +1,58 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/ed71c463-1cf6-449d-9aa8-ed715fe7ad74"; + fsType = "btrfs"; + options = [ "subvol=@" ]; + }; + + fileSystems."/home" = + { device = "/dev/disk/by-uuid/ed71c463-1cf6-449d-9aa8-ed715fe7ad74"; + fsType = "btrfs"; + options = [ "subvol=@home" ]; + }; + + fileSystems."/swap" = + { device = "/dev/disk/by-uuid/ed71c463-1cf6-449d-9aa8-ed715fe7ad74"; + fsType = "btrfs"; + options = [ "subvol=@swap" ]; + }; + + fileSystems."/nix" = + { device = "/dev/disk/by-uuid/ed71c463-1cf6-449d-9aa8-ed715fe7ad74"; + fsType = "btrfs"; + options = [ "subvol=@nix" ]; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/0BDA-B0A4"; + fsType = "vfat"; + options = [ "fmask=0022" "dmask=0022" ]; + }; + + + swapDevices = [ ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/nixcfgs/hosts/zephyrus/keyd.nix b/nixcfgs/hosts/zephyrus/keyd.nix new file mode 100644 index 0000000..e1a0bf7 --- /dev/null +++ b/nixcfgs/hosts/zephyrus/keyd.nix @@ -0,0 +1,23 @@ +{ pkgs, ... }: + +{ + environment.systemPackages = with pkgs; [ + keyd + ]; + + services.keyd = { + enable = true; + keyboards = { + externalKeyboard = { + ids = [ "0b05:19b6:d167885d" ]; # ASUS Keyboard + settings = { + main = { + capslock = "overload(control, esc)"; + }; + }; + }; + }; + }; +} + + diff --git a/nixcfgs/hosts/zephyrus/packages.nix b/nixcfgs/hosts/zephyrus/packages.nix new file mode 100644 index 0000000..e9a973f --- /dev/null +++ b/nixcfgs/hosts/zephyrus/packages.nix @@ -0,0 +1,12 @@ +{ pkgs, ... }: + +{ + environment.systemPackages = with pkgs; [ + asusctl + supergfxctl + ]; + + services.asusd.enable = true; + services.supergfxd.enable = true; +} + diff --git a/nixcfgs/hosts/zp.nix b/nixcfgs/hosts/zp.nix new file mode 100644 index 0000000..cbc54aa --- /dev/null +++ b/nixcfgs/hosts/zp.nix @@ -0,0 +1,47 @@ +# Edit this configuration file to define what should be installed on +# your system. Help is available in the configuration.nix(5) man page, on +# https://search.nixos.org/options and in the NixOS manual (`nixos-help`). + +{ config, lib, pkgs, ... }: + +{ + imports = + [ # Include the results of the hardware scan. + ../common/nixos.nix + ../common/desktop-linux.nix + ../common/packages-fonts.nix + ../common/packages-desktop.nix + ../common/packages-headless.nix + ../common/nvidia.nix + ../common/flatpak.nix + ../common/wine.nix + ../common/firefox.nix + ../common/gnome.nix + ../common/docker.nix + ]; + + + networking.hostName = "zp"; # Define your hostname. + + + # This option defines the first version of NixOS you have installed on this particular machine, + # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions. + # + # Most users should NEVER change this value after the initial install, for any reason, + # even if you've upgraded your system to a new NixOS release. + # + # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, + # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how + # to actually do that. + # + # This value being lower than the current NixOS release does NOT mean your system is + # out of date, out of support, or vulnerable. + # + # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, + # and migrated your data accordingly. + # + # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . + system.stateVersion = "25.05"; # Did you read the comment? + +} + diff --git a/nixcfgs/modules/common/default.nix b/nixcfgs/modules/common/default.nix new file mode 100644 index 0000000..e69de29 diff --git a/nixcfgs/modules/home/dev/c.nix b/nixcfgs/modules/home/dev/c.nix new file mode 100644 index 0000000..e69de29 diff --git a/nixcfgs/modules/home/dev/java.nix b/nixcfgs/modules/home/dev/java.nix new file mode 100644 index 0000000..3d313d5 --- /dev/null +++ b/nixcfgs/modules/home/dev/java.nix @@ -0,0 +1,11 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + jdt-language-server + jdk21 + ]; + programs.vscode.profiles.default.extensions = with pkgs.vscode-extensions; [ + redhat.java + vscjava.vscode-spring-initializr + vscjava.vscode-java-pack + ]; +} diff --git a/nixcfgs/modules/home/dev/nix.nix b/nixcfgs/modules/home/dev/nix.nix new file mode 100644 index 0000000..fc8eaf1 --- /dev/null +++ b/nixcfgs/modules/home/dev/nix.nix @@ -0,0 +1,11 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + alejandra + nil + nixd + ]; + programs.vscode.profiles.default.extensions = with pkgs.vscode-extensions; [ + kamadorueda.alejandra + jnoortheen.nix-ide + ]; +} diff --git a/nixcfgs/modules/home/dev/python.nix b/nixcfgs/modules/home/dev/python.nix new file mode 100644 index 0000000..4bccaa7 --- /dev/null +++ b/nixcfgs/modules/home/dev/python.nix @@ -0,0 +1,13 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + uv + ruff + ]; + programs.vscode.profiles.default.extensions = with pkgs.vscode-extensions; [ + ms-python.python + ms-python.debugpy + ms-python.vscode-pylance + charliermarsh.ruff + njpwerner.autodocstring + ]; +} diff --git a/nixcfgs/modules/home/gnome.nix b/nixcfgs/modules/home/gnome.nix new file mode 100644 index 0000000..e69de29 diff --git a/nixcfgs/modules/home/programs/eza.nix b/nixcfgs/modules/home/programs/eza.nix new file mode 100644 index 0000000..688be0a --- /dev/null +++ b/nixcfgs/modules/home/programs/eza.nix @@ -0,0 +1,7 @@ +{pkgs, ...}: { + programs.eza = { + enable = true; + colors = "always"; + icons = "always"; + }; +} diff --git a/nixcfgs/modules/home/programs/fzf.nix b/nixcfgs/modules/home/programs/fzf.nix new file mode 100644 index 0000000..352e28c --- /dev/null +++ b/nixcfgs/modules/home/programs/fzf.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + programs.fzf = { + enable = true; + enableBashIntegration = true; + enableZshIntegration = true; + enableFishIntegration = true; + }; +} diff --git a/nixcfgs/modules/home/programs/lsd.nix b/nixcfgs/modules/home/programs/lsd.nix new file mode 100644 index 0000000..3837132 --- /dev/null +++ b/nixcfgs/modules/home/programs/lsd.nix @@ -0,0 +1,11 @@ +{pkgs, ...}: { + programs.lsd = { + enable = true; + colors = "always"; + icons = "always"; + enableBashIntegration = true; + enableFishIntegration = true; + enableZshIntegration = true; + }; +} + diff --git a/nixcfgs/modules/home/programs/nvim.nix b/nixcfgs/modules/home/programs/nvim.nix new file mode 100644 index 0000000..043a17d --- /dev/null +++ b/nixcfgs/modules/home/programs/nvim.nix @@ -0,0 +1,6 @@ +{pkgs, ...}: { + programs.neovim = { + enable = true; + defaultEditor = true; + }; +} diff --git a/nixcfgs/modules/home/programs/rime.nix b/nixcfgs/modules/home/programs/rime.nix new file mode 100644 index 0000000..6302060 --- /dev/null +++ b/nixcfgs/modules/home/programs/rime.nix @@ -0,0 +1,21 @@ +{ pkgs, ... }: + +{ + i18n.inputMethod = { + enable = true; + # enabled = "fcitx5"; dep. + # enableGtk2 = true; + # enableGtk3 = true; + type = "fcitx5"; + fcitx5 = { + waylandFrontend = true; + addons = with pkgs; [ + fcitx5-rime + kdePackages.fcitx5-configtool + kdePackages.fcitx5-qt + fcitx5-gtk + fcitx5-chinese-addons + ]; + }; + }; +} diff --git a/nixcfgs/modules/home/programs/starship.nix b/nixcfgs/modules/home/programs/starship.nix new file mode 100644 index 0000000..1fdda19 --- /dev/null +++ b/nixcfgs/modules/home/programs/starship.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + programs.starship = { + enable = true; + enableBashIntegration = true; + enableZshIntegration = true; + enableFishIntegration = true; + }; +} diff --git a/nixcfgs/modules/home/programs/vscodium.nix b/nixcfgs/modules/home/programs/vscodium.nix new file mode 100644 index 0000000..68ed43b --- /dev/null +++ b/nixcfgs/modules/home/programs/vscodium.nix @@ -0,0 +1,6 @@ +{pkgs, ...}: { + programs.vscode = { + package = pkgs.vscodium; + enable = true; + }; +} diff --git a/nixcfgs/modules/home/programs/zed-editor.nix b/nixcfgs/modules/home/programs/zed-editor.nix new file mode 100644 index 0000000..399a77a --- /dev/null +++ b/nixcfgs/modules/home/programs/zed-editor.nix @@ -0,0 +1,6 @@ +{pkgs, ...}: { + programs.zed-editor = { + enable = true; + extensions = ["nix"]; + }; +} diff --git a/nixcfgs/modules/home/programs/zoxide.nix b/nixcfgs/modules/home/programs/zoxide.nix new file mode 100644 index 0000000..053ac16 --- /dev/null +++ b/nixcfgs/modules/home/programs/zoxide.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + programs.zoxide = { + enable = true; + enableBashIntegration = true; + enableZshIntegration = true; + enableFishIntegration = true; + }; +} diff --git a/nixcfgs/modules/nixos/additional-packages.nix b/nixcfgs/modules/nixos/additional-packages.nix new file mode 100644 index 0000000..858fa87 --- /dev/null +++ b/nixcfgs/modules/nixos/additional-packages.nix @@ -0,0 +1,7 @@ +{pkgs, ...}: { + environment.systemPackages = with pkgs; [ + chromium + nil + nixd + ]; +} diff --git a/nixcfgs/modules/nixos/chromium.nix b/nixcfgs/modules/nixos/chromium.nix new file mode 100644 index 0000000..b53d3c8 --- /dev/null +++ b/nixcfgs/modules/nixos/chromium.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + programs.chromium = { + extraOpts = { + "BrowserSignin" = 0; + "PasswordManagerEnabled" = false; + }; + }; +} diff --git a/nixcfgs/modules/nixos/configuration.nix b/nixcfgs/modules/nixos/configuration.nix new file mode 100644 index 0000000..2c0bb18 --- /dev/null +++ b/nixcfgs/modules/nixos/configuration.nix @@ -0,0 +1,105 @@ +{ + config, + pkgs, + ... +}: { + # Use the systemd-boot EFI boot loader. + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + security.pam.services.login.enableGnomeKeyring = true; + + # Use latest kernel. + boot.kernelPackages = pkgs.linuxPackages_latest; + + # Pick only one of the below networking options. + # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. + networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. + + # Set your time zone. + time.timeZone = "Europe/London"; + + # Configure network proxy if necessary + # networking.proxy.default = "http://user:password@proxy:port/"; + # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; + + # Select internationalisation properties. + i18n = { + defaultLocale = "en_GB.UTF-8"; + # extraLocales = [ + # "en_GB.UTF-8/UTF-8" + # ]; + extraLocaleSettings = { + # LC_CTYPE = "en_GB.UTF-8"; + LC_ALL = "en_GB.UTF-8"; + }; + }; + # console = { + # font = "Lat2-Terminus16"; + # keyMap = "us"; + # useXkbConfig = true; # use xkb.options in tty. + # }; + + # Configure keymap in X11 + services.xserver.xkb.layout = "us"; + # services.xserver.xkb.options = "eurosign:e,caps:escape"; + + # Enable CUPS to print documents. + services.printing.enable = true; + + # Enable sound. + # services.pulseaudio.enable = true; + # OR + services.pipewire = { + enable = true; + pulse.enable = true; + }; + + hardware.bluetooth = { + enable = true; + powerOnBoot = true; + }; + + environment.shellAliases = { + nrs = "sudo nixos-rebuild switch --flake ~/.dotfiles/nixcfgs"; + }; + + # Some programs need SUID wrappers, can be configured further or are + # started in user sessions. + # programs.mtr.enable = true; + programs.gnupg.agent = { + enable = true; + enableSSHSupport = true; + }; + + # List services that you want to enable: + + # Enable the OpenSSH daemon. + services.openssh.enable = true; + + # Open ports in the firewall. + # networking.firewall.allowedTCPPorts = [ ... ]; + # networking.firewall.allowedUDPPorts = [ ... ]; + # Or disable the firewall altogether. + # networking.firewall.enable = false; + + # Copy the NixOS configuration file and link it from the resulting system + # (/run/current-system/configuration.nix). This is useful in case you + # accidentally delete configuration.nix. + # system.copySystemConfiguration = true; + nix.settings.experimental-features = ["nix-command" "flakes"]; + + # Enable touchpad support (enabled default in most desktopManager). + services.libinput.enable = true; + + # Define a user account. Don't forget to set a password with ‘passwd’. + users.users.js0ny = { + isNormalUser = true; + extraGroups = ["wheel" "docker" "libvirtd" "dialout"]; # Enable ‘sudo’ for the user. + packages = with pkgs; [ + tree + ]; + }; + + services.flatpak.enable = true; +} diff --git a/nixcfgs/modules/nixos/default.nix b/nixcfgs/modules/nixos/default.nix new file mode 100644 index 0000000..5978329 --- /dev/null +++ b/nixcfgs/modules/nixos/default.nix @@ -0,0 +1,7 @@ +{pkgs, ...}: { + imports = [ + ./configuration.nix + ./packages.nix + ./fonts.nix + ]; +} diff --git a/nixcfgs/modules/nixos/desktop/gnome.nix b/nixcfgs/modules/nixos/desktop/gnome.nix new file mode 100644 index 0000000..12eb750 --- /dev/null +++ b/nixcfgs/modules/nixos/desktop/gnome.nix @@ -0,0 +1,5 @@ +{ pkgs, ... }: + +{ + services.desktopManager.gnome.enable = true; +} diff --git a/nixcfgs/modules/nixos/desktop/hyprland.nix b/nixcfgs/modules/nixos/desktop/hyprland.nix new file mode 100644 index 0000000..be74ef2 --- /dev/null +++ b/nixcfgs/modules/nixos/desktop/hyprland.nix @@ -0,0 +1,7 @@ +{...}: { + programs.hyprland = { + enable = true; + withUWSM = false; + xwayland.enable = true; + }; +} diff --git a/nixcfgs/modules/nixos/desktop/kde.nix b/nixcfgs/modules/nixos/desktop/kde.nix new file mode 100644 index 0000000..2fdeb09 --- /dev/null +++ b/nixcfgs/modules/nixos/desktop/kde.nix @@ -0,0 +1,6 @@ +{ config, pkgs, ... }: + +{ + services.desktopManager.plasma6.enable = true; +} + diff --git a/nixcfgs/modules/nixos/disable-nvidia.nix b/nixcfgs/modules/nixos/disable-nvidia.nix new file mode 100644 index 0000000..f8e6120 --- /dev/null +++ b/nixcfgs/modules/nixos/disable-nvidia.nix @@ -0,0 +1,26 @@ +{ pkgs, ... }: + +{ + boot.extraModprobeConfig = '' + blacklist nouveau + options nouveau modeset=0 + ''; + + services.udev.extraRules = '' + # Remove NVIDIA USB xHCI Host Controller devices, if present + ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c0330", ATTR{power/control}="auto", ATTR{remove}="1" + # Remove NVIDIA USB Type-C UCSI devices, if present + ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c8000", ATTR{power/control}="auto", ATTR{remove}="1" + # Remove NVIDIA Audio devices, if present + ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x040300", ATTR{power/control}="auto", ATTR{remove}="1" + # Remove NVIDIA VGA/3D controller devices + ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x03[0-9]*", ATTR{power/control}="auto", ATTR{remove}="1" + ''; + services.xserver.videoDrivers = [ "modesetting" ]; + boot.blacklistedKernelModules = [ "nouveau" "nvidia" "nvidia_drm" "nvidia_modeset" ]; + hardware.nvidia = { + # enable = false; + modesetting.enable = false; + powerManagement.enable = false; + }; +} diff --git a/nixcfgs/modules/nixos/display-manager/gdm.nix b/nixcfgs/modules/nixos/display-manager/gdm.nix new file mode 100644 index 0000000..a046d4b --- /dev/null +++ b/nixcfgs/modules/nixos/display-manager/gdm.nix @@ -0,0 +1,8 @@ +{ pkgs, ... }: + +{ + services.displayManager.gdm = { + enable = true; + wayland = true; + }; +} diff --git a/nixcfgs/modules/nixos/display-manager/ly.nix b/nixcfgs/modules/nixos/display-manager/ly.nix new file mode 100644 index 0000000..8a715e7 --- /dev/null +++ b/nixcfgs/modules/nixos/display-manager/ly.nix @@ -0,0 +1,3 @@ +{...}: { + services.displayManager.ly.enable = true; +} diff --git a/nixcfgs/modules/nixos/display-manager/sddm.nix b/nixcfgs/modules/nixos/display-manager/sddm.nix new file mode 100644 index 0000000..727be2e --- /dev/null +++ b/nixcfgs/modules/nixos/display-manager/sddm.nix @@ -0,0 +1,6 @@ +{...}: { + services.displayManager.sddm = { + enable = true; + wayland.enable = true; + }; +} diff --git a/nixcfgs/modules/nixos/docker.nix b/nixcfgs/modules/nixos/docker.nix new file mode 100644 index 0000000..38adcb4 --- /dev/null +++ b/nixcfgs/modules/nixos/docker.nix @@ -0,0 +1,16 @@ +{pkgs, ...}: { + virtualisation = { + docker.enable = true; + podman.enable = true; + }; + + # systemd.services.docker = { + # serviceConfig = { + # Environment = [ + # "HTTP_PROXY=127.0.0.1:7897" + # "HTTPS_PROXY=127.0.0.1:7897" + # "NO_PROXY=localhost,127.0.0.1,.example.com" + # ]; + # }; + # }; +} diff --git a/nixcfgs/modules/nixos/firefox.nix b/nixcfgs/modules/nixos/firefox.nix new file mode 100644 index 0000000..4d9f895 --- /dev/null +++ b/nixcfgs/modules/nixos/firefox.nix @@ -0,0 +1,33 @@ +{ + pkgs, + config, + ... +}: { + programs.firefox = { + enable = true; + + languagePacks = ["zh-CN"]; + + preferences = { + "widget.use-xdg-desktop-portal.file-picker" = 1; + }; + + policies = { + DisableTelemetry = true; + BlockAboutConfig = false; + DontCheckDefaultBrowser = true; + + ExtensionSettings = let + moz = short: "https://addons.mozilla.org/firefox/downloads/latest/${short}/latest.xpi"; + in { + "*".installation_mode = "blocked"; + + "uBlock0@raymondhill.net" = { + install_url = moz "ublock-origin"; + installation_mode = "force_installed"; + updates_disabled = true; + }; + }; + }; + }; +} diff --git a/nixcfgs/modules/nixos/fonts.nix b/nixcfgs/modules/nixos/fonts.nix new file mode 100644 index 0000000..b131f97 --- /dev/null +++ b/nixcfgs/modules/nixos/fonts.nix @@ -0,0 +1,55 @@ +{ + pkgs, + config, + ... +}: { + environment.systemPackages = with pkgs; [ + maple-mono.NF + sarasa-gothic + lxgw-wenkai + lxgw-neoxihei + noto-fonts-cjk-sans + noto-fonts + noto-fonts-emoji + nerd-fonts.jetbrains-mono + ]; + + fonts = { + enableDefaultPackages = true; + + fontconfig = { + enable = true; + defaultFonts = { + monospace = ["Maple Mono NF" "JetBrainsMono Nerd Font"]; + serif = ["LXGW WenKai"]; + sansSerif = ["LXGW Neo XiHei"]; + }; + }; + fontDir.enable = true; + }; + + system.fsPackages = [pkgs.bindfs]; + fileSystems = let + mkRoSymBind = path: { + device = path; + fsType = "fuse.bindfs"; + options = ["ro" "resolve-symlinks" "x-gvfs-hide"]; + }; + aggregated = pkgs.buildEnv { + name = "system-fonts-and-icons"; + paths = with pkgs; [ + libsForQt5.breeze-qt5 + + noto-fonts + noto-fonts-emoji + noto-fonts-cjk-sans + noto-fonts-cjk-serif + ]; + pathsToLink = ["/share/fonts" "/share/icons"]; + }; + in { + # Create an FHS mount to support flatpak host icons/fonts + "/usr/share/icons" = mkRoSymBind "${aggregated}/share/icons"; + "/usr/share/fonts" = mkRoSymBind "${aggregated}/share/fonts"; + }; +} diff --git a/nixcfgs/modules/nixos/laptop.nix b/nixcfgs/modules/nixos/laptop.nix new file mode 100644 index 0000000..6ffca65 --- /dev/null +++ b/nixcfgs/modules/nixos/laptop.nix @@ -0,0 +1,11 @@ +# ~/.config/nix-config/common/packages-headless.nix +{ pkgs, ... }: + +{ +# nixpkgs.config.allowUnfree = true; + environment.systemPackages = with pkgs; [ + powertop + ]; +} + + diff --git a/nixcfgs/modules/nixos/libvirt.nix b/nixcfgs/modules/nixos/libvirt.nix new file mode 100644 index 0000000..c9f5ada --- /dev/null +++ b/nixcfgs/modules/nixos/libvirt.nix @@ -0,0 +1,22 @@ +{pkgs, ...}: { + environment.systemPackages = with pkgs; [ + virt-manager + ]; + virtualisation.libvirtd = { + enable = true; + qemu = { + package = pkgs.qemu_kvm; + runAsRoot = true; + swtpm.enable = true; + ovmf = { + enable = true; + packages = [ + (pkgs.OVMF.override { + secureBoot = true; + tpmSupport = true; + }).fd + ]; + }; + }; + }; +} diff --git a/nixcfgs/modules/nixos/nvidia.nix b/nixcfgs/modules/nixos/nvidia.nix new file mode 100644 index 0000000..107192d --- /dev/null +++ b/nixcfgs/modules/nixos/nvidia.nix @@ -0,0 +1,11 @@ +{ + hardware.nvidia = { + open = false; + }; + services.xserver.videoDrivers = [ "nvidia" ]; + hardware.graphics = { + enable = true; + enable32Bit = true; + }; +} + diff --git a/nixcfgs/modules/nixos/packages.nix b/nixcfgs/modules/nixos/packages.nix new file mode 100644 index 0000000..dfb11dd --- /dev/null +++ b/nixcfgs/modules/nixos/packages.nix @@ -0,0 +1,18 @@ +# ~/.config/nix-config/common/packages-headless.nix +{pkgs, ...}: { + # nixpkgs.config.allowUnfree = true; + environment.systemPackages = with pkgs; [ + vim + wget + curl + git + tmux + pciutils + usbutils + smartmontools + wl-clipboard + noto-fonts + noto-fonts-cjk-sans + noto-fonts-emoji + ]; +} diff --git a/nixcfgs/modules/nixos/wine.nix b/nixcfgs/modules/nixos/wine.nix new file mode 100644 index 0000000..5771693 --- /dev/null +++ b/nixcfgs/modules/nixos/wine.nix @@ -0,0 +1,8 @@ +# https://nixos.wiki/wiki/Wine +{pkgs, ...}: { + environment.systemPackages = with pkgs; [ + wineWowPackages.stable + winetricks + wineWowPackages.waylandFull + ]; +} diff --git a/nixcfgs/users/js0ny/default.nix b/nixcfgs/users/js0ny/default.nix new file mode 100644 index 0000000..4850140 --- /dev/null +++ b/nixcfgs/users/js0ny/default.nix @@ -0,0 +1,48 @@ +# ~/.config/nixcfgs/users/js0ny/default.nix +{ + pkgs, + nix-flatpak, + plasma-manager, + ... +}: { + imports = [ + ./packages/cli.nix + ./packages/gui.nix + ./packages/flatpak.nix + ./programs/chromium.nix + ./programs/gnome.nix + ./programs/plasma.nix + ./programs/shell.nix + ./programs/vscodium.nix + ./programs/git.nix + ../../modules/home/dev/java.nix + ../../modules/home/dev/nix.nix + ../../modules/home/dev/python.nix + ../../modules/home/programs/eza.nix + ../../modules/home/programs/fzf.nix + ../../modules/home/programs/lsd.nix + ../../modules/home/programs/nvim.nix + ../../modules/home/programs/rime.nix + ../../modules/home/programs/starship.nix + ../../modules/home/programs/zed-editor.nix + ../../modules/home/programs/zoxide.nix + # ./flatpak.nix + ]; + home.username = "js0ny"; + home.homeDirectory = "/home/js0ny"; + + home.packages = with pkgs; [ + home-manager + gcr + ]; + + services.gnome-keyring.enable = true; + + xdg.mimeApps = { + defaultApplications = { + "application/pdf" = "org.kde.okular.desktop"; + }; + }; + + home.stateVersion = "25.05"; +} diff --git a/nixcfgs/users/js0ny/packages/cli.nix b/nixcfgs/users/js0ny/packages/cli.nix new file mode 100644 index 0000000..c5fad27 --- /dev/null +++ b/nixcfgs/users/js0ny/packages/cli.nix @@ -0,0 +1,52 @@ +# ~/.config/nix-config/common/packages-headless.nix +{pkgs, ...}: { + home.packages = with pkgs; [ + age + aichat + beancount + bat + btop + gnumake + chezmoi + cmake + curlie + duf + dust + fd + ffmpeg + delta + glow + hyperfine + just + lazygit + lsd + pandoc + dos2unix + nushell + procs + ripgrep + ripgrep-all + tlrc + zoxide + vim + wget + git + fastfetch + fzf + kitty + zsh + fish + zoxide + wakatime-cli + # Langs + # lua + luajit + lua51Packages.luarocks + ghostscript + mermaid-cli + tectonic + # Misc + ta-lib + ddgr + ]; +} diff --git a/nixcfgs/users/js0ny/packages/flatpak.nix b/nixcfgs/users/js0ny/packages/flatpak.nix new file mode 100644 index 0000000..0ff9962 --- /dev/null +++ b/nixcfgs/users/js0ny/packages/flatpak.nix @@ -0,0 +1,26 @@ +# https://github.com/gmodena/nix-flatpak +{nix-flatpak, ...}: { + services.flatpak.remotes = [ + { + name = "flathub"; + location = "https://dl.flathub.org/repo/flathub.flatpakrepo"; + } + ]; + services.flatpak.packages = [ + # { appId = "com.google.Chrome"; origin = "flathub" } + # "com.google.Chrome" + # "com.valvesoftware.Steam" + "com.qq.QQ" + "com.tencent.WeChat" + # "eu.betterbird.Betterbird" + # "com.baidu.NetDisk" + "com.discordapp.Discord" + "com.spotify.Client" + "com.google.EarthPro" + "com.wps.Office" + "md.obsidian.Obsidian" + # "app.zen_browser.zen" + # "com.vivaldi.Vivaldi" + "com.getpostman.Postman" + ]; +} diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix new file mode 100644 index 0000000..ad6bcbd --- /dev/null +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -0,0 +1,28 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + kitty + ghostty + alacritty + kdePackages.dolphin + kdePackages.okular + kdePackages.elisa + papirus-icon-theme + firefox + pcloud + telegram-desktop + steam + jetbrains.idea-ultimate + jetbrains.rider + warp-terminal + # clash-verge-rev + haruna + sioyek + vimiv-qt + imv + localsend + neovide + cherry-studio + vivaldi + kdePackages.kdeconnect-kde + ]; +} diff --git a/nixcfgs/users/js0ny/programs/chromium.nix b/nixcfgs/users/js0ny/programs/chromium.nix new file mode 100644 index 0000000..dd36b7f --- /dev/null +++ b/nixcfgs/users/js0ny/programs/chromium.nix @@ -0,0 +1,15 @@ +{pkgs, ...}: { + programs.chromium = { + enable = true; + commandLineArgs = [ + "--enable-wayland-ime" + ]; + extensions = [ + {id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";} # ublock origin + {id = "ghmbeldphafepmbegfdlkpapadhbakde";} # proton pass + {id = "eimadpbcbfnmbkopoojfekhnkhdbieeh";} # dark reader + {id = "gfbliohnnapiefjpjlpjnehglfpaknnc";} # surfingkeys + {id = "bpoadfkcbjbfhfodiogcnhhhpibjhbnh";} # immersive translate + ]; + }; +} diff --git a/nixcfgs/users/js0ny/programs/default.nix b/nixcfgs/users/js0ny/programs/default.nix new file mode 100644 index 0000000..b163de2 --- /dev/null +++ b/nixcfgs/users/js0ny/programs/default.nix @@ -0,0 +1,16 @@ +{pkgs, ...}: { + imports = [ + ./shell.nix + ./vscodium.nix + ../../../modules/home/dev/java.nix + ../../../modules/home/dev/python.nix + ../../../modules/home/programs/eza.nix + ../../../modules/home/programs/fzf.nix + ../../../modules/home/programs/lsd.nix + ../../../modules/home/programs/nvim.nix + ../../../modules/home/programs/rime.nix + ../../../modules/home/programs/starship.nix + ../../../modules/home/programs/zed-editor.nix + ../../../modules/home/programs/zoxide.nix + ]; +} diff --git a/nixcfgs/users/js0ny/programs/git.nix b/nixcfgs/users/js0ny/programs/git.nix new file mode 100644 index 0000000..b8185cc --- /dev/null +++ b/nixcfgs/users/js0ny/programs/git.nix @@ -0,0 +1,7 @@ +{pkgs, ...}: { + programs.git = { + enable = true; + userName = "js0ny"; + userEmail = "contact@js0ny.net"; + }; +} diff --git a/nixcfgs/users/js0ny/programs/gnome.nix b/nixcfgs/users/js0ny/programs/gnome.nix new file mode 100644 index 0000000..f76df5f --- /dev/null +++ b/nixcfgs/users/js0ny/programs/gnome.nix @@ -0,0 +1,48 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + gnome-tweaks + sushi + orchis-theme + gnomeExtensions.dash-to-dock + gnomeExtensions.caffeine + gnomeExtensions.logo-menu + gnomeExtensions.kimpanel + gnomeExtensions.clipboard-indicator + gnomeExtensions.advanced-alttab-window-switcher + gnomeExtensions.paperwm + gnomeExtensions.blur-my-shell + gnomeExtensions.appindicator + gnomeExtensions.gsconnect + ]; + programs.gnome-shell.enable = true; + programs.gnome-shell.extensions = [ + {package = pkgs.gnomeExtensions.dash-to-dock;} + {package = pkgs.gnomeExtensions.caffeine;} + {package = pkgs.gnomeExtensions.logo-menu;} + {package = pkgs.gnomeExtensions.kimpanel;} + {package = pkgs.gnomeExtensions.appindicator;} + {package = pkgs.gnomeExtensions.gsconnect;} + {package = pkgs.gnomeExtensions.clipboard-indicator;} + {package = pkgs.gnomeExtensions.advanced-alttab-window-switcher;} + ]; + + dconf.settings = { + "org/gnome/desktop/interface" = { + icon-theme = "Papirus"; + accent-color = "pink"; + show-battery-percentage = true; + }; + "org/gnome/epiphany" = { + ask-for-default = false; + }; + "org/gnome/epiphany/web" = { + remember-passwords = false; + enable-mouse-gestures = true; + }; + "org/gnome/shell/extensions/Logo-menu" = { + menu-button-icon-image = 23; + symbolic-icon = true; + use-custom-icon = false; + }; + }; +} diff --git a/nixcfgs/users/js0ny/programs/plasma.nix b/nixcfgs/users/js0ny/programs/plasma.nix new file mode 100644 index 0000000..89a22c3 --- /dev/null +++ b/nixcfgs/users/js0ny/programs/plasma.nix @@ -0,0 +1,48 @@ +{pkgs, ...}: { + programs.plasma = { + enable = true; + workspace.iconTheme = "Papirus"; + input.touchpads = [ + { + disableWhileTyping = true; + enable = true; + leftHanded = true; + middleButtonEmulation = true; + name = "ASUP1208:00 093A:3011 Touchpad"; + productId = "3011"; + vendorId = "093A"; + naturalScroll = true; + pointerSpeed = 0; + tapToClick = true; + accelerationProfile = "none"; + scrollSpeed = 0.15; + } + ]; + + panels = [ + # Windows-like panel at the bottom + { + location = "bottom"; + widgets = [ + "org.kde.plasma.kickoff" + "org.kde.plasma.icontasks" + "org.kde.plasma.marginsseparator" + "org.kde.plasma.systemtray" + "org.kde.plasma.digitalclock" + ]; + } + # Global menu at the top + { + location = "top"; + height = 26; + widgets = ["org.kde.plasma.pager"]; + opacity = "translucent"; + } + ]; + }; + programs.okular = { + enable = true; + accessibility.changeColors.mode = "InvertLightness"; + general.mouseMode = "TextSelect"; + }; +} diff --git a/nixcfgs/users/js0ny/programs/shell.nix b/nixcfgs/users/js0ny/programs/shell.nix new file mode 100644 index 0000000..3914109 --- /dev/null +++ b/nixcfgs/users/js0ny/programs/shell.nix @@ -0,0 +1,30 @@ +{pkgs, ...}: let + commonAliases = { + v = "nvim"; + g = "lazygit"; + ni = "touch"; + cls = "clear"; + ii = "open"; + c = "codium"; + aic = "aichat -s"; + }; +in { + programs.fish = { + enable = true; + interactiveShellInit = "set fish_greeting"; + # preferAbbrs = true; + shellAbbrs = commonAliases; + }; + programs.zsh = { + enable = true; + autocd = true; + autosuggestion.enable = true; + syntaxHighlighting.enable = true; + dotDir = "/home/js0ny/.config/zsh"; + shellAliases = commonAliases; + }; + programs.bash = { + enable = true; + shellAliases = commonAliases; + }; +} diff --git a/nixcfgs/users/js0ny/programs/vscodium.nix b/nixcfgs/users/js0ny/programs/vscodium.nix new file mode 100644 index 0000000..dd40a57 --- /dev/null +++ b/nixcfgs/users/js0ny/programs/vscodium.nix @@ -0,0 +1,17 @@ +{pkgs, ...}: { + programs.vscode = { + package = pkgs.vscodium; + enable = true; + }; + + programs.vscode.profiles.default = { + extensions = with pkgs.vscode-extensions; [ + golang.go + vscodevim.vim + pkief.material-icon-theme + catppuccin.catppuccin-vsc + vspacecode.vspacecode + vspacecode.whichkey + ]; + }; +} From fec83b860d40acc3d94078b4deeb9a8fe1efb44d Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 11 Oct 2025 11:29:03 +0100 Subject: [PATCH 24/48] Use unfree vscode in personal config --- nixcfgs/modules/home/programs/{vscodium.nix => vscode.nix} | 0 nixcfgs/users/js0ny/default.nix | 2 +- nixcfgs/users/js0ny/programs/{vscodium.nix => vscode.nix} | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename nixcfgs/modules/home/programs/{vscodium.nix => vscode.nix} (100%) rename nixcfgs/users/js0ny/programs/{vscodium.nix => vscode.nix} (91%) diff --git a/nixcfgs/modules/home/programs/vscodium.nix b/nixcfgs/modules/home/programs/vscode.nix similarity index 100% rename from nixcfgs/modules/home/programs/vscodium.nix rename to nixcfgs/modules/home/programs/vscode.nix diff --git a/nixcfgs/users/js0ny/default.nix b/nixcfgs/users/js0ny/default.nix index 4850140..05932d6 100644 --- a/nixcfgs/users/js0ny/default.nix +++ b/nixcfgs/users/js0ny/default.nix @@ -13,7 +13,7 @@ ./programs/gnome.nix ./programs/plasma.nix ./programs/shell.nix - ./programs/vscodium.nix + ./programs/vscode.nix ./programs/git.nix ../../modules/home/dev/java.nix ../../modules/home/dev/nix.nix diff --git a/nixcfgs/users/js0ny/programs/vscodium.nix b/nixcfgs/users/js0ny/programs/vscode.nix similarity index 91% rename from nixcfgs/users/js0ny/programs/vscodium.nix rename to nixcfgs/users/js0ny/programs/vscode.nix index dd40a57..6e319c9 100644 --- a/nixcfgs/users/js0ny/programs/vscodium.nix +++ b/nixcfgs/users/js0ny/programs/vscode.nix @@ -1,6 +1,6 @@ {pkgs, ...}: { programs.vscode = { - package = pkgs.vscodium; + package = pkgs.vscode; enable = true; }; From d31cb14b88e5c1f9f3d5e8cb331ffd6add274a98 Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 11 Oct 2025 18:13:54 +0100 Subject: [PATCH 25/48] minor refractor --- nixcfgs/flake.lock | 34 ++++++++++++++++++++++++ nixcfgs/flake.nix | 29 +++++++++++--------- nixcfgs/hosts/zephyrus/default.nix | 1 + nixcfgs/hosts/{zp.nix => zp/default.nix} | 0 nixcfgs/users/js0ny/default.nix | 1 + nixcfgs/users/js0ny/programs/shell.nix | 2 +- nixcfgs/users/js0ny/zephyrus/default.nix | 2 ++ 7 files changed, 55 insertions(+), 14 deletions(-) rename nixcfgs/hosts/{zp.nix => zp/default.nix} (100%) create mode 100644 nixcfgs/users/js0ny/zephyrus/default.nix diff --git a/nixcfgs/flake.lock b/nixcfgs/flake.lock index d64fa84..a4df938 100644 --- a/nixcfgs/flake.lock +++ b/nixcfgs/flake.lock @@ -1,5 +1,23 @@ { "nodes": { + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -97,12 +115,28 @@ }, "root": { "inputs": { + "flake-utils": "flake-utils", "home-manager": "home-manager", "nix-darwin": "nix-darwin", "nix-flatpak": "nix-flatpak", "nixpkgs": "nixpkgs", "plasma-manager": "plasma-manager" } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } } }, "root": "root", diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix index dc1a7f3..d8adb53 100644 --- a/nixcfgs/flake.nix +++ b/nixcfgs/flake.nix @@ -1,9 +1,11 @@ +# ~/.dotfiles/nixcfgs/flake.nix { description = "A simple NixOS flake"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; nix-flatpak.url = "github:gmodena/nix-flatpak"; + flake-utils.url = "github:numtide/flake-utils"; nix-darwin = { url = "github:nix-darwin/nix-darwin/master"; inputs.nixpkgs.follows = "nixpkgs"; @@ -28,39 +30,40 @@ plasma-manager, ... } @ inputs: let - system = "x86_64-linux"; - pkgs = nixpkgs.legacyPackages.${system}; + specialArgs = {inherit inputs;}; in { nixosConfigurations.zp = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; + inherit specialArgs; modules = [ nix-flatpak.nixosModules.nix-flatpak - ./hosts/zp.nix - ./hardware-configuration.nix + ./hosts/zp ]; }; nixosConfigurations.zephyrus = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; + inherit specialArgs; modules = [ ./hosts/zephyrus - home-manager.nixosModules.home-manager - { - # nix-flatpak.homeManagerModules.nix-flatpak - home-manager.sharedModules = [plasma-manager.homeModules.plasma-manager nix-flatpak.homeManagerModules.nix-flatpak]; - home-manager.useGlobalPkgs = true; - home-manager.useUserPackages = true; - home-manager.users.js0ny = import ./users/js0ny; - nixpkgs.config.allowUnfree = true; - } ]; }; darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { system = "aarch64-darwin"; + inherit specialArgs; modules = [ ./hosts/zen ]; }; + homeConfigurations.js0ny = home-manager.lib.homeManagerConfiguration { + pkgs = nixpkgs.legacyPackages."x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny + plasma-manager.homeModules.plasma-manager + nix-flatpak.homeManagerModules.nix-flatpak + ]; + }; }; } diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index 1ab74b8..3956cab 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -22,6 +22,7 @@ ./packages.nix ]; + nixpkgs.config.allowUnfree = true; networking.hostName = "zephyrus"; system.stateVersion = "25.05"; } diff --git a/nixcfgs/hosts/zp.nix b/nixcfgs/hosts/zp/default.nix similarity index 100% rename from nixcfgs/hosts/zp.nix rename to nixcfgs/hosts/zp/default.nix diff --git a/nixcfgs/users/js0ny/default.nix b/nixcfgs/users/js0ny/default.nix index 05932d6..b3522eb 100644 --- a/nixcfgs/users/js0ny/default.nix +++ b/nixcfgs/users/js0ny/default.nix @@ -28,6 +28,7 @@ ../../modules/home/programs/zoxide.nix # ./flatpak.nix ]; + nixpkgs.config.allowUnfree = true; home.username = "js0ny"; home.homeDirectory = "/home/js0ny"; diff --git a/nixcfgs/users/js0ny/programs/shell.nix b/nixcfgs/users/js0ny/programs/shell.nix index 3914109..608f965 100644 --- a/nixcfgs/users/js0ny/programs/shell.nix +++ b/nixcfgs/users/js0ny/programs/shell.nix @@ -5,7 +5,7 @@ ni = "touch"; cls = "clear"; ii = "open"; - c = "codium"; + c = "code"; aic = "aichat -s"; }; in { diff --git a/nixcfgs/users/js0ny/zephyrus/default.nix b/nixcfgs/users/js0ny/zephyrus/default.nix new file mode 100644 index 0000000..93bcb0b --- /dev/null +++ b/nixcfgs/users/js0ny/zephyrus/default.nix @@ -0,0 +1,2 @@ +aaa +d: \ No newline at end of file From ebb2a87ca7588f9a693f4903e19b03b307f45bb2 Mon Sep 17 00:00:00 2001 From: whoami Date: Sat, 11 Oct 2025 18:45:35 +0100 Subject: [PATCH 26/48] nix-darwin --- nixcfgs/hosts/zen/default.nix | 10 ++++ .../hosts/zen/packages.nix | 0 nixcfgs/modules/darwin/default.nix | 5 ++ .../modules/darwin/js0ny}/brew.nix | 5 +- nixcfgs/modules/darwin/js0ny/dock.nix | 47 +++++++++++++++++ .../modules/darwin/js0ny}/system.nix | 52 ++----------------- 6 files changed, 67 insertions(+), 52 deletions(-) create mode 100644 nixcfgs/hosts/zen/default.nix rename home/dot_config/nix-config/hosts/macbook/default.nix => nixcfgs/hosts/zen/packages.nix (100%) create mode 100644 nixcfgs/modules/darwin/default.nix rename {home/dot_config/nix-config/hosts/macbook => nixcfgs/modules/darwin/js0ny}/brew.nix (93%) create mode 100644 nixcfgs/modules/darwin/js0ny/dock.nix rename {home/dot_config/nix-config/hosts/macbook => nixcfgs/modules/darwin/js0ny}/system.nix (57%) diff --git a/nixcfgs/hosts/zen/default.nix b/nixcfgs/hosts/zen/default.nix new file mode 100644 index 0000000..506b2e8 --- /dev/null +++ b/nixcfgs/hosts/zen/default.nix @@ -0,0 +1,10 @@ +{pkgs, ...}: +{ + imports = [ + ./packages.nix + ../../modules/darwin/js0ny/brew.nix + ../../modules/darwin/js0ny/dock.nix + ../../modules/darwin/js0ny/system.nix + ]; + time.timeZone = "Europe/London"; +} diff --git a/home/dot_config/nix-config/hosts/macbook/default.nix b/nixcfgs/hosts/zen/packages.nix similarity index 100% rename from home/dot_config/nix-config/hosts/macbook/default.nix rename to nixcfgs/hosts/zen/packages.nix diff --git a/nixcfgs/modules/darwin/default.nix b/nixcfgs/modules/darwin/default.nix new file mode 100644 index 0000000..a8c2b51 --- /dev/null +++ b/nixcfgs/modules/darwin/default.nix @@ -0,0 +1,5 @@ +{ config, pkgs, ... }: + +{ + time.timeZone = "Europe/London"; +} diff --git a/home/dot_config/nix-config/hosts/macbook/brew.nix b/nixcfgs/modules/darwin/js0ny/brew.nix similarity index 93% rename from home/dot_config/nix-config/hosts/macbook/brew.nix rename to nixcfgs/modules/darwin/js0ny/brew.nix index 2c7063c..1e9dd7b 100644 --- a/home/dot_config/nix-config/hosts/macbook/brew.nix +++ b/nixcfgs/modules/darwin/js0ny/brew.nix @@ -25,7 +25,6 @@ "neovide" "clash-verge-rev" "obsidian" - "mullvad-vpn" "alacritty" "alt-tab" "apparency" @@ -40,7 +39,7 @@ "ltspice" "orbstack" "qlcolorcode" - # "qlimagesize" discontinued. + # "qlimagesize" discontinued. "qlmarkdown" "qlstephen" "qlvideo" @@ -60,7 +59,7 @@ "TickTick" "cherry-studio" "firefox" - "Wireshark" + "wireshark-app" "LibreWolf" "brave-browser" "font-maple-mono-nf-cn" diff --git a/nixcfgs/modules/darwin/js0ny/dock.nix b/nixcfgs/modules/darwin/js0ny/dock.nix new file mode 100644 index 0000000..e5f70ea --- /dev/null +++ b/nixcfgs/modules/darwin/js0ny/dock.nix @@ -0,0 +1,47 @@ +{ config, pkgs, ... }: +{ + system.defaults.dock = { + appswitcher-all-displays = true; + autohide = true; + # Launch Animation + launchanim = false; + # Minimize Animation + mineffect = "suck"; + minimize-to-application = true; + persistent-apps = [ + { app = "/Applications/Vivaldi.app"; } + { app = "/Applications/kitty.app"; } + { app = "/Applications/Obsidian.app"; } + { app = "Applications/Visual Studio Code.app"; } + # { app = "/Applications/LibreWolf.app"; } + # { spacer = { small = false; }; } + # { spacer = { small = true; }; } + # { folder = "/System/Applications/Utilities"; } + # { folder = "/Users/js0ny/Downloads/"; } + ]; + persistent-others = [ + "/Users/js0ny/Downloads" + # "/Users/js0ny/Source" + ]; + show-recents = false; + orientation = "bottom"; + # tr - Top Right + # tl - Top Left (disable this) + # br - Bottom Right + # bl - Bottom Left + # `1`: Disabled + # `2`: Mission Control + # `3`: Application Windows + # `4`: Desktop + # `5`: Start Screen Saver + # `6`: Disable Screen Saver + # `7`: Dashboard + # `10`: Put Display to Sleep + # `11`: Launchpad + # `12`: Notification Center + # `13`: Lock Screen + # `14`: Quick Note + wvous-tr-corner = 2; + wvous-bl-corner = 11; # Simulate Windows button on Windows + wvous-br-corner = 4; + };} diff --git a/home/dot_config/nix-config/hosts/macbook/system.nix b/nixcfgs/modules/darwin/js0ny/system.nix similarity index 57% rename from home/dot_config/nix-config/hosts/macbook/system.nix rename to nixcfgs/modules/darwin/js0ny/system.nix index d489269..0e71b57 100644 --- a/home/dot_config/nix-config/hosts/macbook/system.nix +++ b/nixcfgs/modules/darwin/js0ny/system.nix @@ -1,53 +1,6 @@ { config, pkgs, ... }: - -{ - time.timeZone = "Asia/Shanghai"; + { system.defaults = { - dock = { - appswitcher-all-displays = true; - autohide = true; - # Launch Animation - launchanim = false; - # Minimize Animation - mineffect = "suck"; - minimize-to-application = true; - persistent-apps = [ - { app = "/Applications/Vivaldi.app"; } - { app = "/Applications/kitty.app"; } - { app = "/Applications/Obsidian.app"; } - { app = "Applications/Visual Studio Code.app"; } - { app = "/Applications/LibreWolf.app"; } - # { spacer = { small = false; }; } - # { spacer = { small = true; }; } - # { folder = "/System/Applications/Utilities"; } - # { folder = "/Users/js0ny/Downloads/"; } - ]; - persistent-others = [ - "/Users/js0ny/Downloads" - "/Users/js0ny/Source" - ]; - show-recents = false; - orientation = "bottom"; - # tr - Top Right - # tl - Top Left (disable this) - # br - Bottom Right - # bl - Bottom Left - # `1`: Disabled - # `2`: Mission Control - # `3`: Application Windows - # `4`: Desktop - # `5`: Start Screen Saver - # `6`: Disable Screen Saver - # `7`: Dashboard - # `10`: Put Display to Sleep - # `11`: Launchpad - # `12`: Notification Center - # `13`: Lock Screen - # `14`: Quick Note - wvous-tr-corner = 2; - wvous-bl-corner = 11; # Simulate Windows button on Windows - wvous-br-corner = 4; - }; finder = { AppleShowAllFiles = true; ShowStatusBar = true; @@ -111,4 +64,5 @@ ShowSeconds = true; }; }; -} \ No newline at end of file + + } From e30bc681cd390845a896327aedd8acd57132e97b Mon Sep 17 00:00:00 2001 From: js0ny Date: Sat, 11 Oct 2025 19:39:42 +0100 Subject: [PATCH 27/48] gnome dock pins --- nixcfgs/hosts/zephyrus/default.nix | 6 +++-- .../modules/nixos/display-manager/sddm.nix | 6 ++++- nixcfgs/modules/nixos/guest.nix | 25 +++++++++++++++++++ nixcfgs/users/js0ny/programs/gnome.nix | 12 +++++++++ 4 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 nixcfgs/modules/nixos/guest.nix diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index 3956cab..c64b175 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -8,6 +8,8 @@ }: { imports = [ ../../modules/nixos + # ../../modules/nixos/users/js0ny.nix + # ../../modules/nixos/guest.nix ../../modules/nixos/laptop.nix ../../modules/nixos/disable-nvidia.nix ../../modules/nixos/additional-packages.nix @@ -15,8 +17,8 @@ ../../modules/nixos/docker.nix ../../modules/nixos/firefox.nix ../../modules/nixos/desktop/gnome.nix - ../../modules/nixos/desktop/kde.nix - ../../modules/nixos/display-manager/ly.nix + # ../../modules/nixos/desktop/kde.nix + ../../modules/nixos/display-manager/gdm.nix ./hardware-configuration.nix ./keyd.nix ./packages.nix diff --git a/nixcfgs/modules/nixos/display-manager/sddm.nix b/nixcfgs/modules/nixos/display-manager/sddm.nix index 727be2e..c572f22 100644 --- a/nixcfgs/modules/nixos/display-manager/sddm.nix +++ b/nixcfgs/modules/nixos/display-manager/sddm.nix @@ -1,6 +1,10 @@ -{...}: { +{pkgs, ...}: { services.displayManager.sddm = { enable = true; wayland.enable = true; + extraPackages = with pkgs; [ + sddm-astronaut + ]; + # theme = "sddm-astronaut-theme"; }; } diff --git a/nixcfgs/modules/nixos/guest.nix b/nixcfgs/modules/nixos/guest.nix new file mode 100644 index 0000000..9a95f1a --- /dev/null +++ b/nixcfgs/modules/nixos/guest.nix @@ -0,0 +1,25 @@ +{pkgs, ...}: { + users.users.guest = { + isNormalUser = true; + description = "Guest user"; + home = "/home/guest"; + extraGroups = [""]; # 可选,是否允许 sudo + shell = pkgs.bash; + # hashedPassword = ""; # 空密码,意味着需要手动设置或禁用登录 + # 或者直接禁止密码登录: + hashedPassword = null; + }; + + systemd.services."guest-reset-home" = { + description = "Reset guest home directory on boot"; + wantedBy = ["multi-user.target"]; + serviceConfig = { + Type = "oneshot"; + ExecStart = '' + rm -rf /home/guest/* + cp -r /etc/skel/. /home/guest/ + chown -R guest:guest /home/guest + ''; + }; + }; +} diff --git a/nixcfgs/users/js0ny/programs/gnome.nix b/nixcfgs/users/js0ny/programs/gnome.nix index f76df5f..63bce2e 100644 --- a/nixcfgs/users/js0ny/programs/gnome.nix +++ b/nixcfgs/users/js0ny/programs/gnome.nix @@ -3,6 +3,7 @@ gnome-tweaks sushi orchis-theme + adwaita-qt gnomeExtensions.dash-to-dock gnomeExtensions.caffeine gnomeExtensions.logo-menu @@ -44,5 +45,16 @@ symbolic-icon = true; use-custom-icon = false; }; + "org/gnome/shell" = { +favorite-apps = [ + "org.kde.dolphin.desktop" + "com.mitchellh.ghostty.desktop" + "chromium-browser.desktop" + "code.desktop" + ]; + }; + }; + + qt.style.name = "adwaita"; } From 39eabd9c5180d2ade29726b8050ed545f531116d Mon Sep 17 00:00:00 2001 From: js0ny Date: Sun, 12 Oct 2025 06:53:32 +0100 Subject: [PATCH 28/48] nix plasma-manager --- home/.chezmoiignore.tmpl | 11 +++ home/dot_config/nvim/lua/plugins/misc.lua | 4 +- nixcfgs/.gitignore | 1 + nixcfgs/hosts/zephyrus/default.nix | 6 +- nixcfgs/hosts/zephyrus/packages.nix | 5 +- nixcfgs/modules/home/dev/c.nix | 7 ++ nixcfgs/modules/nixos/chromium.nix | 9 +- nixcfgs/modules/nixos/desktop/niri.nix | 8 ++ .../modules/nixos/display-manager/sddm.nix | 34 ++++++- nixcfgs/modules/nixos/firefox.nix | 65 ++++++++++-- nixcfgs/users/js0ny/default.nix | 1 + nixcfgs/users/js0ny/packages/flatpak.nix | 9 +- nixcfgs/users/js0ny/packages/gui.nix | 1 + nixcfgs/users/js0ny/programs/chromium.nix | 4 + nixcfgs/users/js0ny/programs/firefox.nix | 5 + nixcfgs/users/js0ny/programs/gnome.nix | 18 ++-- nixcfgs/users/js0ny/programs/plasma.nix | 98 ++++++++++++++++++- 17 files changed, 247 insertions(+), 39 deletions(-) create mode 100644 nixcfgs/modules/nixos/desktop/niri.nix create mode 100644 nixcfgs/users/js0ny/programs/firefox.nix diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl index f01d11c..8d3e9e3 100644 --- a/home/.chezmoiignore.tmpl +++ b/home/.chezmoiignore.tmpl @@ -24,6 +24,17 @@ scripts {{ if ne .chezmoi.osRelease.id "arch" }} .config/*-flags.conf {{ end }} +{{ if eq .chezmoi.osRelease.id "nixos" }} +.config/bash +.config/fcitx5 +.config/bat +.config/doom +.config/fish +.config/zsh +.config/lsd +.config/keyd +.config/readline +{{ end }} {{ end }} {{ if ne .chezmoi.os "darwin" }} diff --git a/home/dot_config/nvim/lua/plugins/misc.lua b/home/dot_config/nvim/lua/plugins/misc.lua index cb9db10..061ea06 100644 --- a/home/dot_config/nvim/lua/plugins/misc.lua +++ b/home/dot_config/nvim/lua/plugins/misc.lua @@ -3,8 +3,8 @@ return { { "wakatime/vim-wakatime", lazy = false }, { import = "plugins.mod.toggleterm" }, { import = "plugins.mod.which-keys-nvim" }, - { import = "plugins.mod.copilot-lua" }, - { import = "plugins.mod.avante-nvim" }, + -- { import = "plugins.mod.copilot-lua" }, + -- { import = "plugins.mod.avante-nvim" }, { "kawre/leetcode.nvim", build = ":TSUpdate html", -- if you have `nvim-treesitter` installed diff --git a/nixcfgs/.gitignore b/nixcfgs/.gitignore index e69de29..89b3a77 100644 --- a/nixcfgs/.gitignore +++ b/nixcfgs/.gitignore @@ -0,0 +1 @@ +secrets.nix diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index c64b175..d4044d7 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -17,8 +17,9 @@ ../../modules/nixos/docker.nix ../../modules/nixos/firefox.nix ../../modules/nixos/desktop/gnome.nix - # ../../modules/nixos/desktop/kde.nix - ../../modules/nixos/display-manager/gdm.nix + # ../../modules/nixos/desktop/niri.nix + ../../modules/nixos/desktop/kde.nix + ../../modules/nixos/display-manager/sddm.nix ./hardware-configuration.nix ./keyd.nix ./packages.nix @@ -26,5 +27,6 @@ nixpkgs.config.allowUnfree = true; networking.hostName = "zephyrus"; + hardware.enableRedistributableFirmware = true; system.stateVersion = "25.05"; } diff --git a/nixcfgs/hosts/zephyrus/packages.nix b/nixcfgs/hosts/zephyrus/packages.nix index e9a973f..9cc9b5d 100644 --- a/nixcfgs/hosts/zephyrus/packages.nix +++ b/nixcfgs/hosts/zephyrus/packages.nix @@ -1,6 +1,4 @@ -{ pkgs, ... }: - -{ +{pkgs, ...}: { environment.systemPackages = with pkgs; [ asusctl supergfxctl @@ -9,4 +7,3 @@ services.asusd.enable = true; services.supergfxd.enable = true; } - diff --git a/nixcfgs/modules/home/dev/c.nix b/nixcfgs/modules/home/dev/c.nix index e69de29..f97368d 100644 --- a/nixcfgs/modules/home/dev/c.nix +++ b/nixcfgs/modules/home/dev/c.nix @@ -0,0 +1,7 @@ +{pkgs, ...}: + +{ + home.packages = with pkgs; [ + gcc + ]; +} diff --git a/nixcfgs/modules/nixos/chromium.nix b/nixcfgs/modules/nixos/chromium.nix index b53d3c8..b7c1b95 100644 --- a/nixcfgs/modules/nixos/chromium.nix +++ b/nixcfgs/modules/nixos/chromium.nix @@ -1,8 +1,15 @@ {pkgs, ...}: { programs.chromium = { + enable = true; + homepageLocation = "https://duckduckgo.com"; + defaultSearchProviderSearchURL = "https://duckduckgo.com?q={searchTerms}"; extraOpts = { - "BrowserSignin" = 0; + "BrowserSignin" = 1; "PasswordManagerEnabled" = false; + "ExtensionManifestV2Availability" = 2; }; + extensions = [ + "cjpalhdlnbpafiamejdnhcphjbkeiagm" # ublock origin + ]; }; } diff --git a/nixcfgs/modules/nixos/desktop/niri.nix b/nixcfgs/modules/nixos/desktop/niri.nix new file mode 100644 index 0000000..5916b1c --- /dev/null +++ b/nixcfgs/modules/nixos/desktop/niri.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + programs.niri.enable = true; + environment.systemPackages = with pkgs; [ + waybar + mako + rofi + ]; +} diff --git a/nixcfgs/modules/nixos/display-manager/sddm.nix b/nixcfgs/modules/nixos/display-manager/sddm.nix index c572f22..b654af2 100644 --- a/nixcfgs/modules/nixos/display-manager/sddm.nix +++ b/nixcfgs/modules/nixos/display-manager/sddm.nix @@ -1,10 +1,34 @@ -{pkgs, ...}: { +{pkgs, ...}: + +# See https://www.reddit.com/r/NixOS/comments/1kcj34p/how_to_apply_this_sddm_theme_on_nixos/ +let + custom-sddm-astronaut = pkgs.sddm-astronaut.override { + embeddedTheme = "astronaut"; + #themeConfig = { + # Background = "path/to/background.jpg"; + # Font = "M+1 Nerd Font"; + #}; + }; + +in { + # Enable the KDE Plasma Desktop Environment. services.displayManager.sddm = { enable = true; - wayland.enable = true; extraPackages = with pkgs; [ - sddm-astronaut - ]; - # theme = "sddm-astronaut-theme"; + custom-sddm-astronaut + ]; + + theme = "sddm-astronaut-theme"; + settings = { + Theme = { + Current = "sddm-astronaut-theme"; + }; + }; }; + + environment.systemPackages = with pkgs; [ + custom-sddm-astronaut + kdePackages.qtmultimedia + ]; + } diff --git a/nixcfgs/modules/nixos/firefox.nix b/nixcfgs/modules/nixos/firefox.nix index 4d9f895..c90b7b5 100644 --- a/nixcfgs/modules/nixos/firefox.nix +++ b/nixcfgs/modules/nixos/firefox.nix @@ -10,23 +10,70 @@ preferences = { "widget.use-xdg-desktop-portal.file-picker" = 1; + "widget.use-xdg-desktop-portal.mime-handler" = 1; + "screenshots.browser.component.enabled" = false; + "toolkit.telemetry.enabled" = false; + "toolkit.telemetry.archive.enabled" = false; + "browser.shell.checkDefaultBrowser" = false; + "browser.contentblocking.category" = "strict"; + "browser.formfill.enable" = false; + "extensions.formautofill.creditCards.enabled" = false; + "dom.forms.autocomplete.formautofill" = false; + "browser.urlbar.update2.engineAliasRefresh" = true; + "browser.newtabpage.activity-stream.showSponsored" = false; + "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; }; policies = { DisableTelemetry = true; BlockAboutConfig = false; + DisableFirefoxScreenshots = true; DontCheckDefaultBrowser = true; - ExtensionSettings = let - moz = short: "https://addons.mozilla.org/firefox/downloads/latest/${short}/latest.xpi"; - in { - "*".installation_mode = "blocked"; - - "uBlock0@raymondhill.net" = { - install_url = moz "ublock-origin"; - installation_mode = "force_installed"; - updates_disabled = true; + ExtensionSettings = with builtins; let + extension = short: uuid: { + name = uuid; + value = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/${short}/latest.xpi"; + installation_mode = "force_installed"; + }; }; + in + listToAttrs [ + (extension "ublock-origin" "uBlock0@raymondhill.net") + (extension "multi-account-containers" "@testpilot-containers") + (extension "side-view" "@webcompat@mozilla.org") + (extension "clearurls" "{74145f27-f039-47ce-a470-a662b129930a}") + ]; + + SearchEngines = { + Default = "DuckDuckGo"; + Add = [ + { + Alias = "@np"; + Description = "Search in NixOS Packages"; + IconURL = "https://nixos.org/favicon.ico"; + Method = "GET"; + Name = "NixOS Packages"; + URLTemplate = "https://search.nixos.org/packages?from=0&size=200&sort=relevance&type=packages&query={searchTerms}"; + } + { + Alias = "@no"; + Description = "Search in NixOS Options"; + IconURL = "https://nixos.org/favicon.ico"; + Method = "GET"; + Name = "NixOS Options"; + URLTemplate = "https://search.nixos.org/options?from=0&size=200&sort=relevance&type=packages&query={searchTerms}"; + } + { + Alias = "@hm"; + Description = "Search in Home Manager Options"; + IconURL = "https://nixos.org/favicon.ico"; + Method = "GET"; + Name = "Home Manager options"; + URLTemplate = "https://home-manager-options.extranix.com/?query={searchTerms}"; + } + ]; }; }; }; diff --git a/nixcfgs/users/js0ny/default.nix b/nixcfgs/users/js0ny/default.nix index b3522eb..6a377d9 100644 --- a/nixcfgs/users/js0ny/default.nix +++ b/nixcfgs/users/js0ny/default.nix @@ -15,6 +15,7 @@ ./programs/shell.nix ./programs/vscode.nix ./programs/git.nix + ../../modules/home/dev/c.nix ../../modules/home/dev/java.nix ../../modules/home/dev/nix.nix ../../modules/home/dev/python.nix diff --git a/nixcfgs/users/js0ny/packages/flatpak.nix b/nixcfgs/users/js0ny/packages/flatpak.nix index 0ff9962..a39ef18 100644 --- a/nixcfgs/users/js0ny/packages/flatpak.nix +++ b/nixcfgs/users/js0ny/packages/flatpak.nix @@ -1,5 +1,5 @@ # https://github.com/gmodena/nix-flatpak -{nix-flatpak, ...}: { +{...}: { services.flatpak.remotes = [ { name = "flathub"; @@ -23,4 +23,11 @@ # "com.vivaldi.Vivaldi" "com.getpostman.Postman" ]; + services.flatpak.overrides = { + "com.tencent.WeChat" = { + Environment = { + QT_IM_MODULE = "fcitx"; + }; + }; + }; } diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index ad6bcbd..3ab2ef6 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -24,5 +24,6 @@ cherry-studio vivaldi kdePackages.kdeconnect-kde + picard ]; } diff --git a/nixcfgs/users/js0ny/programs/chromium.nix b/nixcfgs/users/js0ny/programs/chromium.nix index dd36b7f..b406b83 100644 --- a/nixcfgs/users/js0ny/programs/chromium.nix +++ b/nixcfgs/users/js0ny/programs/chromium.nix @@ -3,6 +3,9 @@ enable = true; commandLineArgs = [ "--enable-wayland-ime" + "--enable-features=WaylandWindowDecorations" + "--enable-features=UseOzonePlatform" + "--ozone-platform-hint=auto" ]; extensions = [ {id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";} # ublock origin @@ -10,6 +13,7 @@ {id = "eimadpbcbfnmbkopoojfekhnkhdbieeh";} # dark reader {id = "gfbliohnnapiefjpjlpjnehglfpaknnc";} # surfingkeys {id = "bpoadfkcbjbfhfodiogcnhhhpibjhbnh";} # immersive translate + {id = "dhdgffkkebhmkfjojejmpbldmpobfkfo";} # tampermonkey ]; }; } diff --git a/nixcfgs/users/js0ny/programs/firefox.nix b/nixcfgs/users/js0ny/programs/firefox.nix new file mode 100644 index 0000000..b39c9f3 --- /dev/null +++ b/nixcfgs/users/js0ny/programs/firefox.nix @@ -0,0 +1,5 @@ +{pkgs, ...}: { + programs.firefox = { + enable = true; + }; +} diff --git a/nixcfgs/users/js0ny/programs/gnome.nix b/nixcfgs/users/js0ny/programs/gnome.nix index 63bce2e..072ef51 100644 --- a/nixcfgs/users/js0ny/programs/gnome.nix +++ b/nixcfgs/users/js0ny/programs/gnome.nix @@ -2,8 +2,6 @@ home.packages = with pkgs; [ gnome-tweaks sushi - orchis-theme - adwaita-qt gnomeExtensions.dash-to-dock gnomeExtensions.caffeine gnomeExtensions.logo-menu @@ -32,6 +30,7 @@ icon-theme = "Papirus"; accent-color = "pink"; show-battery-percentage = true; + cursor-theme = "Adwaita"; }; "org/gnome/epiphany" = { ask-for-default = false; @@ -46,15 +45,14 @@ use-custom-icon = false; }; "org/gnome/shell" = { -favorite-apps = [ - "org.kde.dolphin.desktop" - "com.mitchellh.ghostty.desktop" - "chromium-browser.desktop" - "code.desktop" - ]; + favorite-apps = [ + "org.kde.dolphin.desktop" + "com.mitchellh.ghostty.desktop" + "chromium-browser.desktop" + "code.desktop" + ]; }; - }; - qt.style.name = "adwaita"; + # qt.style.name = "adwaita"; } diff --git a/nixcfgs/users/js0ny/programs/plasma.nix b/nixcfgs/users/js0ny/programs/plasma.nix index 89a22c3..6a704d3 100644 --- a/nixcfgs/users/js0ny/programs/plasma.nix +++ b/nixcfgs/users/js0ny/programs/plasma.nix @@ -1,7 +1,33 @@ {pkgs, ...}: { + home.packages = with pkgs.kdePackages; [ + yakuake + ]; programs.plasma = { enable = true; - workspace.iconTheme = "Papirus"; + session.sessionRestore.restoreOpenApplicationsOnLogin = "startWithEmptySession"; + fonts = { + fixedWidth.family = "Maple Mono NF"; + fixedWidth.pointSize = 10; + general.family = "LXGW Neo XiHei"; + general.pointSize = 10; + }; + krunner = { + position = "center"; + }; + workspace = { + iconTheme = "Papirus"; + colorScheme = "BreezeDark"; + }; + kwin = { + virtualDesktops.number = 8; + titlebarButtons = { + left = [ + "more-window-actions" + "on-all-desktops" + "keep-above-windows" + ]; + }; + }; input.touchpads = [ { disableWhileTyping = true; @@ -24,19 +50,59 @@ { location = "bottom"; widgets = [ - "org.kde.plasma.kickoff" - "org.kde.plasma.icontasks" + # "org.kde.plasma.kickoff" + { + name = "org.kde.plasma.kickoff"; + config = { + General = { + icon = "distributor-logo-nixos"; + alphaSort = true; + }; + }; + } + { + name = "org.kde.plasma.icontasks"; + config = { + General = { + launchers = [ + "applications:org.kde.dolphin.desktop" + "applications:chromium-browser.desktop" + "applications:com.mitchellh.ghostty.desktop" + ]; + }; + }; + } "org.kde.plasma.marginsseparator" "org.kde.plasma.systemtray" + { + name = "org.kde.plasma.digitalclock"; + config = { + Appearance = { + dateFormat = "isoDate"; + enabledCalendarPlugins = "alternatecalendar,holidaysevents"; + firstDayOfWeek = 1; + selectedTimeZones = "Local,Asia/Shanghai,Europe/London"; + showSeconds = "Always"; + showWeekNumbers = true; + use24hFormat = 2; + }; + }; + } "org.kde.plasma.digitalclock" + "org.kde.plasma.showdesktop" ]; } # Global menu at the top { location = "top"; - height = 26; - widgets = ["org.kde.plasma.pager"]; + height = 20; + widgets = [ + "org.kde.plasma.pager" + "org.kde.plasma.windowlist" + "org.kde.plasma.marginsseparator" + ]; opacity = "translucent"; + hiding = "dodgewindows"; } ]; }; @@ -45,4 +111,26 @@ accessibility.changeColors.mode = "InvertLightness"; general.mouseMode = "TextSelect"; }; + programs.kate.enable = true; + programs.kate.editor = { + font = { + family = "Maple Mono NF"; + pointSize = 10; + }; + inputMode = "vi"; + }; + programs.konsole = { + enable = true; + defaultProfile = "Default"; + profiles = { + Default = { + command = "${pkgs.fish}/bin/fish"; + colorScheme = "Breeze"; + font = { + name = "Maple Mono NF"; + size = 12; + }; + }; + }; + }; } From c82f50438550d0dbf9bacc767099f764086fb9c7 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 00:34:14 +0100 Subject: [PATCH 29/48] nix: firefox --- nixcfgs/flake.lock | 57 ++++++++++ nixcfgs/flake.nix | 9 +- nixcfgs/modules/nixos/firefox.nix | 6 +- nixcfgs/users/js0ny/default.nix | 8 +- nixcfgs/users/js0ny/packages/gui.nix | 6 +- nixcfgs/users/js0ny/programs/firefox.nix | 81 +++++++++++++ nixcfgs/users/js0ny/programs/floorp.nix | 139 +++++++++++++++++++++++ nixcfgs/users/js0ny/programs/gnome.nix | 2 +- nixcfgs/users/js0ny/programs/plasma.nix | 3 +- 9 files changed, 299 insertions(+), 12 deletions(-) create mode 100644 nixcfgs/users/js0ny/programs/floorp.nix diff --git a/nixcfgs/flake.lock b/nixcfgs/flake.lock index a4df938..7ec669c 100644 --- a/nixcfgs/flake.lock +++ b/nixcfgs/flake.lock @@ -1,5 +1,26 @@ { "nodes": { + "flake-parts": { + "inputs": { + "nixpkgs-lib": [ + "nur", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1733312601, + "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -90,6 +111,41 @@ "type": "github" } }, + "nixpkgs_2": { + "locked": { + "lastModified": 1760038930, + "narHash": "sha256-Oncbh0UmHjSlxO7ErQDM3KM0A5/Znfofj2BSzlHLeVw=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "0b4defa2584313f3b781240b29d61f6f9f7e0df3", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nur": { + "inputs": { + "flake-parts": "flake-parts", + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1760244049, + "narHash": "sha256-NTF95tGxmhrBQiREvxLK928ovkzJloEsuHLhwN2GDCY=", + "owner": "nix-community", + "repo": "NUR", + "rev": "5fbc6ffa12c03d608618fc1986cf9fdab44fc5d5", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "NUR", + "type": "github" + } + }, "plasma-manager": { "inputs": { "home-manager": [ @@ -120,6 +176,7 @@ "nix-darwin": "nix-darwin", "nix-flatpak": "nix-flatpak", "nixpkgs": "nixpkgs", + "nur": "nur", "plasma-manager": "plasma-manager" } }, diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix index d8adb53..d728bd3 100644 --- a/nixcfgs/flake.nix +++ b/nixcfgs/flake.nix @@ -19,6 +19,7 @@ inputs.nixpkgs.follows = "nixpkgs"; inputs.home-manager.follows = "home-manager"; }; + nur.url = "github:nix-community/NUR"; }; outputs = { @@ -28,8 +29,14 @@ nix-darwin, home-manager, plasma-manager, + nur, ... } @ inputs: let + overlays = [ nur.overlays.default ]; + forSystem = system: import nixpkgs { + inherit system overlays; + config.allowUnfree = true; + }; specialArgs = {inherit inputs;}; in { nixosConfigurations.zp = nixpkgs.lib.nixosSystem { @@ -57,7 +64,7 @@ ]; }; homeConfigurations.js0ny = home-manager.lib.homeManagerConfiguration { - pkgs = nixpkgs.legacyPackages."x86_64-linux"; + pkgs = forSystem "x86_64-linux"; extraSpecialArgs = specialArgs; modules = [ ./users/js0ny diff --git a/nixcfgs/modules/nixos/firefox.nix b/nixcfgs/modules/nixos/firefox.nix index c90b7b5..ee55d3c 100644 --- a/nixcfgs/modules/nixos/firefox.nix +++ b/nixcfgs/modules/nixos/firefox.nix @@ -1,8 +1,4 @@ -{ - pkgs, - config, - ... -}: { +{...}: { programs.firefox = { enable = true; diff --git a/nixcfgs/users/js0ny/default.nix b/nixcfgs/users/js0ny/default.nix index 6a377d9..cfdd294 100644 --- a/nixcfgs/users/js0ny/default.nix +++ b/nixcfgs/users/js0ny/default.nix @@ -4,7 +4,8 @@ nix-flatpak, plasma-manager, ... -}: { +}: +{ imports = [ ./packages/cli.nix ./packages/gui.nix @@ -15,6 +16,9 @@ ./programs/shell.nix ./programs/vscode.nix ./programs/git.nix + ./programs/firefox.nix + ./programs/distrobox.nix + # ./programs/floorp.nix ../../modules/home/dev/c.nix ../../modules/home/dev/java.nix ../../modules/home/dev/nix.nix @@ -23,7 +27,7 @@ ../../modules/home/programs/fzf.nix ../../modules/home/programs/lsd.nix ../../modules/home/programs/nvim.nix - ../../modules/home/programs/rime.nix + # ../../modules/home/programs/rime.nix ../../modules/home/programs/starship.nix ../../modules/home/programs/zed-editor.nix ../../modules/home/programs/zoxide.nix diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index 3ab2ef6..25eb6a5 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -1,4 +1,5 @@ -{pkgs, ...}: { +{ pkgs, ... }: +{ home.packages = with pkgs; [ kitty ghostty @@ -25,5 +26,8 @@ vivaldi kdePackages.kdeconnect-kde picard + qutebrowser + ryubing + qbittorrent ]; } diff --git a/nixcfgs/users/js0ny/programs/firefox.nix b/nixcfgs/users/js0ny/programs/firefox.nix index b39c9f3..91080ca 100644 --- a/nixcfgs/users/js0ny/programs/firefox.nix +++ b/nixcfgs/users/js0ny/programs/firefox.nix @@ -1,5 +1,86 @@ {pkgs, ...}: { programs.firefox = { enable = true; + profiles.default = { + search.engines = { + archwiki = { + name = "ArchWiki"; + urls = [ + { + template = "https://wiki.archlinux.org/index.php?search={searchTerms}"; + } + ]; + icon = "https://archlinux.org/favicon.ico"; + definedAliases = ["@aw"]; + }; + aur = { + name = "Arch User Repository"; + urls = [ + { + template = "https://aur.archlinux.org/?K={searchTerms}"; + } + ]; + icon = "https://archlinux.org/favicon.ico"; + definedAliases = ["@aur"]; + }; + arch-packages = { + name = "ArchLinux Packages"; + urls = [{template = "https://archlinux.org/?q={searchTerms}";}]; + icon = "https://archlinux.org/favicon.ico"; + definedAliases = ["@pac"]; + }; + chatgpt = { + name = "ChatGPT"; + urls = [{template = "https://chatgpt.com/?q={searchTerms}";}]; + icon = "https://chatgpt.com/favicon.ico"; + definedAliases = ["@gpt"]; + }; + scoop = { + name = "scoop"; + urls = [{template = "https://scoop.sh/#/apps?q={searchTerms}";}]; + icon = "https://scoop.sh/favicon.ico"; + definedAliases = ["@sc"]; + }; + perplexity = { + name = "Perplexity"; + urls = [{template = "https://www.perplexity.ai/?q={searchTerms}";}]; + icon = "https://perplexity.ai/favicon.ico"; + definedAliases = ["@pplx"]; + }; + winget = { + name = "Windows Package Manager"; + urls = [{template = "https://winget.ragerworks.com/search/all/{searchTerms}";}]; + icon = "https://microsoft.com/favicon.ico"; + definedAliases = ["@win"]; + }; + github = { + name = "GitHub Repository"; + urls = [{template = "https://github.com/search?type=repositories&q={searchTerms}";}]; + icon = "https://github.com/favicon.ico"; + definedAliases = ["@gh"]; + }; + }; + extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [ + darkreader + rsshub-radar + proton-pass + surfingkeys + web-archives + # immersive-translate + tampermonkey + stylus + foxy-gestures + google-container + refined-github + downthemall + material-icons-for-github + single-file + return-youtube-dislikes + steam-database + bilisponsorblock + sponsorblock + buster-captcha-solver + ]; + }; }; } diff --git a/nixcfgs/users/js0ny/programs/floorp.nix b/nixcfgs/users/js0ny/programs/floorp.nix new file mode 100644 index 0000000..1d884aa --- /dev/null +++ b/nixcfgs/users/js0ny/programs/floorp.nix @@ -0,0 +1,139 @@ +{pkgs, ...}: { + programs.floorp = { + enable = true; + package = pkgs.floorp; + policies = { + DisableTelemetry = true; + BlockAboutConfig = false; + DisableFirefoxScreenshots = true; + DontCheckDefaultBrowser = true; + + ExtensionSettings = with builtins; let + extension = short: uuid: { + name = uuid; + value = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/${short}/latest.xpi"; + installation_mode = "force_installed"; + }; + }; + in + listToAttrs [ + (extension "ublock-origin" "uBlock0@raymondhill.net") + (extension "multi-account-containers" "@testpilot-containers") + (extension "side-view" "@webcompat@mozilla.org") + (extension "clearurls" "{74145f27-f039-47ce-a470-a662b129930a}") + ]; + + SearchEngines = { + Default = "DuckDuckGo"; + Add = [ + { + Alias = "@np"; + Description = "Search in NixOS Packages"; + IconURL = "https://nixos.org/favicon.ico"; + Method = "GET"; + Name = "NixOS Packages"; + URLTemplate = "https://search.nixos.org/packages?from=0&size=200&sort=relevance&type=packages&query={searchTerms}"; + } + { + Alias = "@no"; + Description = "Search in NixOS Options"; + IconURL = "https://nixos.org/favicon.ico"; + Method = "GET"; + Name = "NixOS Options"; + URLTemplate = "https://search.nixos.org/options?from=0&size=200&sort=relevance&type=packages&query={searchTerms}"; + } + { + Alias = "@hm"; + Description = "Search in Home Manager Options"; + IconURL = "https://nixos.org/favicon.ico"; + Method = "GET"; + Name = "Home Manager options"; + URLTemplate = "https://home-manager-options.extranix.com/?query={searchTerms}"; + } + ]; + }; + }; + profiles.default = { + search.engines = { + archwiki = { + name = "ArchWiki"; + urls = [ + { + template = "https://wiki.archlinux.org/index.php?search={searchTerms}"; + } + ]; + icon = "https://archlinux.org/favicon.ico"; + definedAliases = ["@aw"]; + }; + aur = { + name = "Arch User Repository"; + urls = [ + { + template = "https://aur.archlinux.org/?K={searchTerms}"; + } + ]; + icon = "https://archlinux.org/favicon.ico"; + definedAliases = ["@aur"]; + }; + arch-packages = { + name = "ArchLinux Packages"; + urls = [{template = "https://archlinux.org/?q={searchTerms}";}]; + icon = "https://archlinux.org/favicon.ico"; + definedAliases = ["@pac"]; + }; + chatgpt = { + name = "ChatGPT"; + urls = [{template = "https://chatgpt.com/?q={searchTerms}";}]; + icon = "https://chatgpt.com/favicon.ico"; + definedAliases = ["@gpt"]; + }; + scoop = { + name = "scoop"; + urls = [{template = "https://scoop.sh/#/apps?q={searchTerms}";}]; + icon = "https://scoop.sh/favicon.ico"; + definedAliases = ["@sc"]; + }; + perplexity = { + name = "Perplexity"; + urls = [{template = "https://www.perplexity.ai/?q={searchTerms}";}]; + icon = "https://perplexity.ai/favicon.ico"; + definedAliases = ["@pplx"]; + }; + winget = { + name = "Windows Package Manager"; + urls = [{template = "https://winget.ragerworks.com/search/all/{searchTerms}";}]; + icon = "https://microsoft.com/favicon.ico"; + definedAliases = ["@win"]; + }; + github = { + name = "GitHub Repository"; + urls = [{template = "https://github.com/search?type=repositories&q={searchTerms}";}]; + icon = "https://github.com/favicon.ico"; + definedAliases = ["@gh"]; + }; + }; + extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [ + darkreader + rsshub-radar + proton-pass + surfingkeys + web-archives + # immersive-translate + tampermonkey + stylus + foxy-gestures + google-container + refined-github + downthemall + material-icons-for-github + single-file + return-youtube-dislikes + steam-database + bilisponsorblock + sponsorblock + buster-captcha-solver + ]; + }; + }; +} diff --git a/nixcfgs/users/js0ny/programs/gnome.nix b/nixcfgs/users/js0ny/programs/gnome.nix index 072ef51..4630165 100644 --- a/nixcfgs/users/js0ny/programs/gnome.nix +++ b/nixcfgs/users/js0ny/programs/gnome.nix @@ -48,7 +48,7 @@ favorite-apps = [ "org.kde.dolphin.desktop" "com.mitchellh.ghostty.desktop" - "chromium-browser.desktop" + "firefox.desktop" "code.desktop" ]; }; diff --git a/nixcfgs/users/js0ny/programs/plasma.nix b/nixcfgs/users/js0ny/programs/plasma.nix index 6a704d3..414b352 100644 --- a/nixcfgs/users/js0ny/programs/plasma.nix +++ b/nixcfgs/users/js0ny/programs/plasma.nix @@ -66,7 +66,7 @@ General = { launchers = [ "applications:org.kde.dolphin.desktop" - "applications:chromium-browser.desktop" + "applications:firefox.desktop" "applications:com.mitchellh.ghostty.desktop" ]; }; @@ -88,7 +88,6 @@ }; }; } - "org.kde.plasma.digitalclock" "org.kde.plasma.showdesktop" ]; } From 3aef15679edc8b5c828388bdfa674c24797ba26e Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 00:34:40 +0100 Subject: [PATCH 30/48] nix: obs-studio --- nixcfgs/modules/nixos/obs-studio.nix | 7 +++++++ nixcfgs/modules/nixos/packages.nix | 4 +++- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 nixcfgs/modules/nixos/obs-studio.nix diff --git a/nixcfgs/modules/nixos/obs-studio.nix b/nixcfgs/modules/nixos/obs-studio.nix new file mode 100644 index 0000000..d1bef34 --- /dev/null +++ b/nixcfgs/modules/nixos/obs-studio.nix @@ -0,0 +1,7 @@ +{ pkgs, ... }: +{ + programs.obs-studio = { + enable = true; + enableVirtualCamera = true; + }; +} diff --git a/nixcfgs/modules/nixos/packages.nix b/nixcfgs/modules/nixos/packages.nix index dfb11dd..57215da 100644 --- a/nixcfgs/modules/nixos/packages.nix +++ b/nixcfgs/modules/nixos/packages.nix @@ -1,5 +1,6 @@ # ~/.config/nix-config/common/packages-headless.nix -{pkgs, ...}: { +{ pkgs, ... }: +{ # nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ vim @@ -14,5 +15,6 @@ noto-fonts noto-fonts-cjk-sans noto-fonts-emoji + v4l-utils ]; } From 55931c0167aa62f0d738612005ec1b2007ddb919 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 00:34:56 +0100 Subject: [PATCH 31/48] nix: steam --- nixcfgs/hosts/zephyrus/default.nix | 15 +++++++++++-- nixcfgs/modules/nixos/default.nix | 1 + nixcfgs/modules/nixos/rime.nix | 26 ++++++++++++++++++++++ nixcfgs/modules/nixos/steam.nix | 11 +++++++++ nixcfgs/users/js0ny/programs/distrobox.nix | 6 +++++ 5 files changed, 57 insertions(+), 2 deletions(-) create mode 100644 nixcfgs/modules/nixos/rime.nix create mode 100644 nixcfgs/modules/nixos/steam.nix create mode 100644 nixcfgs/users/js0ny/programs/distrobox.nix diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index d4044d7..21877c8 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -5,17 +5,22 @@ pkgs, nix-flatpak, ... -}: { +}: +{ imports = [ ../../modules/nixos # ../../modules/nixos/users/js0ny.nix # ../../modules/nixos/guest.nix ../../modules/nixos/laptop.nix - ../../modules/nixos/disable-nvidia.nix + ../../modules/nixos/nvidia.nix ../../modules/nixos/additional-packages.nix ../../modules/nixos/libvirt.nix ../../modules/nixos/docker.nix ../../modules/nixos/firefox.nix + ../../modules/nixos/steam.nix + ../../modules/nixos/chromium.nix + ../../modules/nixos/obs-studio.nix + ../../modules/nixos/wine.nix ../../modules/nixos/desktop/gnome.nix # ../../modules/nixos/desktop/niri.nix ../../modules/nixos/desktop/kde.nix @@ -28,5 +33,11 @@ nixpkgs.config.allowUnfree = true; networking.hostName = "zephyrus"; hardware.enableRedistributableFirmware = true; + boot.extraModulePackages = with config.boot.kernelPackages; [ + v4l2loopback + ]; + boot.extraModprobeConfig = '' + options v4l2loopback devices=1 video_nr=2 card_label="OBS Virtual Camera" exclusive_caps=1 + ''; system.stateVersion = "25.05"; } diff --git a/nixcfgs/modules/nixos/default.nix b/nixcfgs/modules/nixos/default.nix index 5978329..8914833 100644 --- a/nixcfgs/modules/nixos/default.nix +++ b/nixcfgs/modules/nixos/default.nix @@ -3,5 +3,6 @@ ./configuration.nix ./packages.nix ./fonts.nix + ./rime.nix ]; } diff --git a/nixcfgs/modules/nixos/rime.nix b/nixcfgs/modules/nixos/rime.nix new file mode 100644 index 0000000..2576f55 --- /dev/null +++ b/nixcfgs/modules/nixos/rime.nix @@ -0,0 +1,26 @@ +{pkgs, ...}: { + # environment.variables = { + # GTK_IM_MODULE = "fcitx"; + # QT_IM_MODULE = "fcitx"; + # XMODIFIERS = "@im=fcitx"; + # INPUT_METHOD = "fcitx"; + # }; + i18n.inputMethod = { + enable = true; + # enabled = "fcitx5"; dep. + enableGtk2 = true; + enableGtk3 = true; + type = "fcitx5"; + fcitx5 = { + waylandFrontend = true; + plasma6Support = true; + addons = with pkgs; [ + fcitx5-rime + kdePackages.fcitx5-configtool + kdePackages.fcitx5-qt + fcitx5-gtk + fcitx5-lua + ]; + }; + }; +} diff --git a/nixcfgs/modules/nixos/steam.nix b/nixcfgs/modules/nixos/steam.nix new file mode 100644 index 0000000..38bb1dc --- /dev/null +++ b/nixcfgs/modules/nixos/steam.nix @@ -0,0 +1,11 @@ +{pkgs, ...}: { + nixpkgs.config.allowUnfree = true; + programs.steam = { + enable = true; + remotePlay.openFirewall = true; + dedicatedServer.openFirewall = true; + fontPackages = with pkgs; [ + lxgw-neoxihei + ]; + }; +} diff --git a/nixcfgs/users/js0ny/programs/distrobox.nix b/nixcfgs/users/js0ny/programs/distrobox.nix new file mode 100644 index 0000000..a8396e4 --- /dev/null +++ b/nixcfgs/users/js0ny/programs/distrobox.nix @@ -0,0 +1,6 @@ +{ ... }: +{ + programs.distrobox = { + enable = true; + }; +} From efed8ac3de03bed9fb1d739aaa9fc01249452a1a Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 00:59:21 +0100 Subject: [PATCH 32/48] nix: libvirt --- nixcfgs/hosts/zephyrus/keyd.nix | 12 +++++------- nixcfgs/modules/nixos/libvirt.nix | 7 +++++++ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/nixcfgs/hosts/zephyrus/keyd.nix b/nixcfgs/hosts/zephyrus/keyd.nix index e1a0bf7..30c321c 100644 --- a/nixcfgs/hosts/zephyrus/keyd.nix +++ b/nixcfgs/hosts/zephyrus/keyd.nix @@ -10,14 +10,12 @@ keyboards = { externalKeyboard = { ids = [ "0b05:19b6:d167885d" ]; # ASUS Keyboard - settings = { - main = { - capslock = "overload(control, esc)"; - }; - }; + settings = { + main = { + capslock = "overload(control, esc)"; + }; + }; }; }; }; } - - diff --git a/nixcfgs/modules/nixos/libvirt.nix b/nixcfgs/modules/nixos/libvirt.nix index c9f5ada..879e91f 100644 --- a/nixcfgs/modules/nixos/libvirt.nix +++ b/nixcfgs/modules/nixos/libvirt.nix @@ -1,7 +1,10 @@ {pkgs, ...}: { environment.systemPackages = with pkgs; [ virt-manager + dnsmasq + virtiofsd ]; + programs.virt-manager.enable = true; virtualisation.libvirtd = { enable = true; qemu = { @@ -19,4 +22,8 @@ }; }; }; + users.users.js0ny = { + extraGroups = ["libvirtd"]; + }; + networking.firewall.trustedInterfaces = ["virbr0"]; } From 4e456383ba3da6e7542553ccdb1f4801d330d6a1 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 01:14:14 +0100 Subject: [PATCH 33/48] nix: multi-host home-manager --- nixcfgs/flake.nix | 110 +++++++++++++---------- nixcfgs/modules/home/gnome-keyrings.nix | 9 ++ nixcfgs/users/js0ny/default.nix | 30 ------- nixcfgs/users/js0ny/programs/default.nix | 16 ---- nixcfgs/users/js0ny/programs/mime.nix | 7 ++ nixcfgs/users/js0ny/zephyrus.nix | 40 +++++++++ nixcfgs/users/js0ny/zephyrus/default.nix | 2 - 7 files changed, 118 insertions(+), 96 deletions(-) create mode 100644 nixcfgs/modules/home/gnome-keyrings.nix delete mode 100644 nixcfgs/users/js0ny/programs/default.nix create mode 100644 nixcfgs/users/js0ny/programs/mime.nix create mode 100644 nixcfgs/users/js0ny/zephyrus.nix delete mode 100644 nixcfgs/users/js0ny/zephyrus/default.nix diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix index d728bd3..5b67f92 100644 --- a/nixcfgs/flake.nix +++ b/nixcfgs/flake.nix @@ -22,55 +22,69 @@ nur.url = "github:nix-community/NUR"; }; - outputs = { - self, - nixpkgs, - nix-flatpak, - nix-darwin, - home-manager, - plasma-manager, - nur, - ... - } @ inputs: let - overlays = [ nur.overlays.default ]; - forSystem = system: import nixpkgs { - inherit system overlays; - config.allowUnfree = true; - }; - specialArgs = {inherit inputs;}; - in { - nixosConfigurations.zp = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - inherit specialArgs; - modules = [ - nix-flatpak.nixosModules.nix-flatpak - ./hosts/zp - ]; - }; + outputs = + { + self, + nixpkgs, + nix-flatpak, + nix-darwin, + home-manager, + plasma-manager, + nur, + ... + }@inputs: + let + overlays = [ nur.overlays.default ]; + forSystem = + system: + import nixpkgs { + inherit system overlays; + config.allowUnfree = true; + }; + specialArgs = { inherit inputs; }; + in + { + nixosConfigurations.zp = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + inherit specialArgs; + modules = [ + nix-flatpak.nixosModules.nix-flatpak + ./hosts/zp + ]; + }; - nixosConfigurations.zephyrus = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - inherit specialArgs; - modules = [ - ./hosts/zephyrus - ]; - }; + nixosConfigurations.zephyrus = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + inherit specialArgs; + modules = [ + ./hosts/zephyrus + ]; + }; - darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { - system = "aarch64-darwin"; - inherit specialArgs; - modules = [ - ./hosts/zen - ]; + darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { + system = "aarch64-darwin"; + inherit specialArgs; + modules = [ + ./hosts/zen + ]; + }; + homeConfigurations.js0ny = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny + plasma-manager.homeModules.plasma-manager + nix-flatpak.homeManagerModules.nix-flatpak + ]; + }; + homeConfigurations."js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny/zephyrus.nix + plasma-manager.homeModules.plasma-manager + nix-flatpak.homeManagerModules.nix-flatpak + ]; + }; }; - homeConfigurations.js0ny = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny - plasma-manager.homeModules.plasma-manager - nix-flatpak.homeManagerModules.nix-flatpak - ]; - }; - }; } diff --git a/nixcfgs/modules/home/gnome-keyrings.nix b/nixcfgs/modules/home/gnome-keyrings.nix new file mode 100644 index 0000000..4b27102 --- /dev/null +++ b/nixcfgs/modules/home/gnome-keyrings.nix @@ -0,0 +1,9 @@ +{ pkgs, ... }: + +{ + home.packages = with pkgs; [ + gcr + ]; + + services.gnome-keyring.enable = true; +} diff --git a/nixcfgs/users/js0ny/default.nix b/nixcfgs/users/js0ny/default.nix index cfdd294..2d9127e 100644 --- a/nixcfgs/users/js0ny/default.nix +++ b/nixcfgs/users/js0ny/default.nix @@ -7,31 +7,10 @@ }: { imports = [ - ./packages/cli.nix - ./packages/gui.nix - ./packages/flatpak.nix - ./programs/chromium.nix - ./programs/gnome.nix - ./programs/plasma.nix - ./programs/shell.nix - ./programs/vscode.nix ./programs/git.nix - ./programs/firefox.nix - ./programs/distrobox.nix - # ./programs/floorp.nix - ../../modules/home/dev/c.nix - ../../modules/home/dev/java.nix - ../../modules/home/dev/nix.nix - ../../modules/home/dev/python.nix - ../../modules/home/programs/eza.nix ../../modules/home/programs/fzf.nix ../../modules/home/programs/lsd.nix - ../../modules/home/programs/nvim.nix - # ../../modules/home/programs/rime.nix - ../../modules/home/programs/starship.nix - ../../modules/home/programs/zed-editor.nix ../../modules/home/programs/zoxide.nix - # ./flatpak.nix ]; nixpkgs.config.allowUnfree = true; home.username = "js0ny"; @@ -39,16 +18,7 @@ home.packages = with pkgs; [ home-manager - gcr ]; - services.gnome-keyring.enable = true; - - xdg.mimeApps = { - defaultApplications = { - "application/pdf" = "org.kde.okular.desktop"; - }; - }; - home.stateVersion = "25.05"; } diff --git a/nixcfgs/users/js0ny/programs/default.nix b/nixcfgs/users/js0ny/programs/default.nix deleted file mode 100644 index b163de2..0000000 --- a/nixcfgs/users/js0ny/programs/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -{pkgs, ...}: { - imports = [ - ./shell.nix - ./vscodium.nix - ../../../modules/home/dev/java.nix - ../../../modules/home/dev/python.nix - ../../../modules/home/programs/eza.nix - ../../../modules/home/programs/fzf.nix - ../../../modules/home/programs/lsd.nix - ../../../modules/home/programs/nvim.nix - ../../../modules/home/programs/rime.nix - ../../../modules/home/programs/starship.nix - ../../../modules/home/programs/zed-editor.nix - ../../../modules/home/programs/zoxide.nix - ]; -} diff --git a/nixcfgs/users/js0ny/programs/mime.nix b/nixcfgs/users/js0ny/programs/mime.nix new file mode 100644 index 0000000..a8b56d6 --- /dev/null +++ b/nixcfgs/users/js0ny/programs/mime.nix @@ -0,0 +1,7 @@ +{ + xdg.mimeApps = { + defaultApplications = { + "application/pdf" = "org.kde.okular.desktop"; + }; + }; +} diff --git a/nixcfgs/users/js0ny/zephyrus.nix b/nixcfgs/users/js0ny/zephyrus.nix new file mode 100644 index 0000000..474da64 --- /dev/null +++ b/nixcfgs/users/js0ny/zephyrus.nix @@ -0,0 +1,40 @@ +# ~/.config/nixcfgs/users/js0ny/default.nix +{ + pkgs, + nix-flatpak, + plasma-manager, + ... +}: +{ + imports = [ + ./default.nix + ./packages/cli.nix + ./packages/gui.nix + ./packages/flatpak.nix + ./programs/chromium.nix + ./programs/gnome.nix + ./programs/plasma.nix + ./programs/shell.nix + ./programs/vscode.nix + ./programs/git.nix + ./programs/firefox.nix + ./programs/distrobox.nix + ./programs/mime.nix + # ./programs/floorp.nix + ../../modules/home/gnome-keyrings.nix + ../../modules/home/dev/c.nix + ../../modules/home/dev/java.nix + ../../modules/home/dev/nix.nix + ../../modules/home/dev/python.nix + ../../modules/home/programs/eza.nix + ../../modules/home/programs/fzf.nix + ../../modules/home/programs/lsd.nix + ../../modules/home/programs/nvim.nix + ../../modules/home/programs/starship.nix + ../../modules/home/programs/zoxide.nix + ../../modules/home/programs/zed-editor.nix + # ./flatpak.nix + ]; + + home.stateVersion = "25.05"; +} diff --git a/nixcfgs/users/js0ny/zephyrus/default.nix b/nixcfgs/users/js0ny/zephyrus/default.nix deleted file mode 100644 index 93bcb0b..0000000 --- a/nixcfgs/users/js0ny/zephyrus/default.nix +++ /dev/null @@ -1,2 +0,0 @@ -aaa -d: \ No newline at end of file From 6b7c6d529d9ff0e64e8b2c6fc1af17a46d8c3a3e Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 02:19:59 +0100 Subject: [PATCH 34/48] use nixOS on libvirt --- nixcfgs/flake.nix | 17 +++++++++++-- nixcfgs/hosts/nixvirt/default.nix | 32 +++++++++++++++++++++++++ nixcfgs/modules/nixos/configuration.nix | 3 --- nixcfgs/modules/nixos/host-machine.nix | 13 ++++++++++ nixcfgs/modules/nixos/packages.nix | 7 ------ nixcfgs/users/js0ny/nixvirt.nix | 29 ++++++++++++++++++++++ 6 files changed, 89 insertions(+), 12 deletions(-) create mode 100644 nixcfgs/hosts/nixvirt/default.nix create mode 100644 nixcfgs/modules/nixos/host-machine.nix create mode 100644 nixcfgs/users/js0ny/nixvirt.nix diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix index 5b67f92..d06f108 100644 --- a/nixcfgs/flake.nix +++ b/nixcfgs/flake.nix @@ -61,6 +61,14 @@ ]; }; + nixosConfigurations.nixvirt = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + inherit specialArgs; + modules = [ + ./hosts/nixvirt + ]; + }; + darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { system = "aarch64-darwin"; inherit specialArgs; @@ -73,8 +81,6 @@ extraSpecialArgs = specialArgs; modules = [ ./users/js0ny - plasma-manager.homeModules.plasma-manager - nix-flatpak.homeManagerModules.nix-flatpak ]; }; homeConfigurations."js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration { @@ -86,5 +92,12 @@ nix-flatpak.homeManagerModules.nix-flatpak ]; }; + homeConfigurations."js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny/nixvirt.nix + ]; + }; }; } diff --git a/nixcfgs/hosts/nixvirt/default.nix b/nixcfgs/hosts/nixvirt/default.nix new file mode 100644 index 0000000..5fceb21 --- /dev/null +++ b/nixcfgs/hosts/nixvirt/default.nix @@ -0,0 +1,32 @@ +# ~/.config/nixcfgs/hosts/nixvirt/default.nix +{ + config, + lib, + pkgs, + nix-flatpak, + ... +}: +{ + imports = [ + # impure build + /etc/nixos/hardware-configuration.nix + ../../modules/nixos + # ../../modules/nixos/users/js0ny.nix + # ../../modules/nixos/guest.nix + ../../modules/nixos/firefox.nix + ../../modules/nixos/desktop/gnome.nix + # ../../modules/nixos/desktop/niri.nix + ../../modules/nixos/desktop/gnome.nix + ../../modules/nixos/display-manager/gdm.nix + ]; + boot.loader.grub.enable = true; + boot.loader.grub.device = "/dev/vda"; + boot.loader.grub.useOSProber = true; + services.qemuGuest.enable = true; + services.spice-vdagentd.enable = true; + + nixpkgs.config.allowUnfree = true; + networking.hostName = "nixvirt"; + hardware.enableRedistributableFirmware = true; + system.stateVersion = "25.05"; +} diff --git a/nixcfgs/modules/nixos/configuration.nix b/nixcfgs/modules/nixos/configuration.nix index 2c0bb18..d978741 100644 --- a/nixcfgs/modules/nixos/configuration.nix +++ b/nixcfgs/modules/nixos/configuration.nix @@ -3,9 +3,6 @@ pkgs, ... }: { - # Use the systemd-boot EFI boot loader. - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; security.pam.services.login.enableGnomeKeyring = true; diff --git a/nixcfgs/modules/nixos/host-machine.nix b/nixcfgs/modules/nixos/host-machine.nix new file mode 100644 index 0000000..559c204 --- /dev/null +++ b/nixcfgs/modules/nixos/host-machine.nix @@ -0,0 +1,13 @@ +{ pkgs, ... }: +{ + # Use the systemd-boot EFI boot loader. + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + environment.systemPackages = with pkgs; [ + pciutils + usbutils + smartmontools + v4l-utils + ] +} diff --git a/nixcfgs/modules/nixos/packages.nix b/nixcfgs/modules/nixos/packages.nix index 57215da..25db074 100644 --- a/nixcfgs/modules/nixos/packages.nix +++ b/nixcfgs/modules/nixos/packages.nix @@ -8,13 +8,6 @@ curl git tmux - pciutils - usbutils - smartmontools wl-clipboard - noto-fonts - noto-fonts-cjk-sans - noto-fonts-emoji - v4l-utils ]; } diff --git a/nixcfgs/users/js0ny/nixvirt.nix b/nixcfgs/users/js0ny/nixvirt.nix new file mode 100644 index 0000000..51da47d --- /dev/null +++ b/nixcfgs/users/js0ny/nixvirt.nix @@ -0,0 +1,29 @@ +# ~/.config/nixcfgs/users/js0ny/default.nix +{ + pkgs, + nix-flatpak, + plasma-manager, + ... +}: +{ + imports = [ + ./default.nix + ./programs/gnome.nix + ./programs/shell.nix + ./programs/git.nix + ./programs/firefox.nix + # ./programs/floorp.nix + ../../modules/home/gnome-keyrings.nix + ../../modules/home/dev/nix.nix + ../../modules/home/dev/python.nix + ../../modules/home/programs/eza.nix + ../../modules/home/programs/fzf.nix + ../../modules/home/programs/lsd.nix + ../../modules/home/programs/nvim.nix + ../../modules/home/programs/starship.nix + ../../modules/home/programs/zoxide.nix + # ./flatpak.nix + ]; + + home.stateVersion = "25.05"; +} From 05d620296e5f3dd6640e887a11e54bfe2cc611d7 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 02:31:29 +0100 Subject: [PATCH 35/48] nix: optimize flake.nix for reusability --- nixcfgs/flake.nix | 85 ++++++++++++-------------- nixcfgs/hosts/zephyrus/default.nix | 1 + nixcfgs/modules/nixos/host-machine.nix | 2 +- 3 files changed, 42 insertions(+), 46 deletions(-) diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix index d06f108..21893be 100644 --- a/nixcfgs/flake.nix +++ b/nixcfgs/flake.nix @@ -42,32 +42,24 @@ config.allowUnfree = true; }; specialArgs = { inherit inputs; }; + nixosHosts = [ + "zp" + "zephyrus" + "nixvirt" + ]; + + mkNixosSystem = + hostname: + nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + inherit specialArgs; + modules = [ ./hosts/${hostname} ]; + }; + in { - nixosConfigurations.zp = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - inherit specialArgs; - modules = [ - nix-flatpak.nixosModules.nix-flatpak - ./hosts/zp - ]; - }; - nixosConfigurations.zephyrus = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - inherit specialArgs; - modules = [ - ./hosts/zephyrus - ]; - }; - - nixosConfigurations.nixvirt = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - inherit specialArgs; - modules = [ - ./hosts/nixvirt - ]; - }; + nixosConfigurations = nixpkgs.lib.genAttrs nixosHosts mkNixosSystem; darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { system = "aarch64-darwin"; @@ -76,28 +68,31 @@ ./hosts/zen ]; }; - homeConfigurations.js0ny = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny - ]; - }; - homeConfigurations."js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny/zephyrus.nix - plasma-manager.homeModules.plasma-manager - nix-flatpak.homeManagerModules.nix-flatpak - ]; - }; - homeConfigurations."js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny/nixvirt.nix - ]; + + homeConfigurations = { + js0ny = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny + ]; + }; + "js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny/zephyrus.nix + plasma-manager.homeModules.plasma-manager + nix-flatpak.homeManagerModules.nix-flatpak + ]; + }; + "js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny/nixvirt.nix + ]; + }; }; }; } diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index 21877c8..44664ca 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -9,6 +9,7 @@ { imports = [ ../../modules/nixos + ../../modules/nixos/host-machine.nix # ../../modules/nixos/users/js0ny.nix # ../../modules/nixos/guest.nix ../../modules/nixos/laptop.nix diff --git a/nixcfgs/modules/nixos/host-machine.nix b/nixcfgs/modules/nixos/host-machine.nix index 559c204..efa604b 100644 --- a/nixcfgs/modules/nixos/host-machine.nix +++ b/nixcfgs/modules/nixos/host-machine.nix @@ -9,5 +9,5 @@ usbutils smartmontools v4l-utils - ] + ]; } From 0d3b789ca2959a4bdbeb6ca3f8af92344472f0ba Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 09:33:11 +0100 Subject: [PATCH 36/48] nix: zed-editor --- home/dot_config/nvim/lua/keymaps/language.lua | 8 ++++++++ nixcfgs/flake.nix | 2 ++ nixcfgs/hosts/zephyrus/default.nix | 3 --- nixcfgs/modules/home/dev/java.nix | 1 + nixcfgs/modules/home/dev/lua.nix | 12 ++++++++++++ nixcfgs/modules/home/dev/nix.nix | 2 ++ nixcfgs/modules/home/programs/zed-editor.nix | 1 - nixcfgs/modules/nixos/libvirt.nix | 1 + nixcfgs/modules/nixos/obs-studio.nix | 3 +++ nixcfgs/users/js0ny/packages/cli.nix | 4 +++- nixcfgs/users/js0ny/packages/gui.nix | 3 +++ nixcfgs/users/js0ny/programs/shell.nix | 7 +++++-- nixcfgs/users/js0ny/programs/zed-editor.nix | 14 ++++++++++++++ nixcfgs/users/js0ny/zephyrus.nix | 3 ++- 14 files changed, 56 insertions(+), 8 deletions(-) create mode 100644 nixcfgs/modules/home/dev/lua.nix create mode 100644 nixcfgs/users/js0ny/programs/zed-editor.nix diff --git a/home/dot_config/nvim/lua/keymaps/language.lua b/home/dot_config/nvim/lua/keymaps/language.lua index a2093b1..8e4203d 100644 --- a/home/dot_config/nvim/lua/keymaps/language.lua +++ b/home/dot_config/nvim/lua/keymaps/language.lua @@ -25,4 +25,12 @@ vim.api.nvim_create_autocmd("FileType", { end, }) +vim.api.nvim_create_autocmd("FileType", { + pattern = "nix", + callback = function() + vim.opt_local.shiftwidth = 2 + vim.opt_local.tabstop = 2 + end, +}) + return M diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix index 21893be..818a002 100644 --- a/nixcfgs/flake.nix +++ b/nixcfgs/flake.nix @@ -59,6 +59,8 @@ in { + # This will automatically generate nixOS config for `nixosHosts' + # Include the module ./hosts/${hostname} by default. nixosConfigurations = nixpkgs.lib.genAttrs nixosHosts mkNixosSystem; darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index 44664ca..02b5a0e 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -37,8 +37,5 @@ boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ]; - boot.extraModprobeConfig = '' - options v4l2loopback devices=1 video_nr=2 card_label="OBS Virtual Camera" exclusive_caps=1 - ''; system.stateVersion = "25.05"; } diff --git a/nixcfgs/modules/home/dev/java.nix b/nixcfgs/modules/home/dev/java.nix index 3d313d5..052d2a1 100644 --- a/nixcfgs/modules/home/dev/java.nix +++ b/nixcfgs/modules/home/dev/java.nix @@ -8,4 +8,5 @@ vscjava.vscode-spring-initializr vscjava.vscode-java-pack ]; + programs.zed-editor.extensions = [ "java" ]; } diff --git a/nixcfgs/modules/home/dev/lua.nix b/nixcfgs/modules/home/dev/lua.nix new file mode 100644 index 0000000..87d587b --- /dev/null +++ b/nixcfgs/modules/home/dev/lua.nix @@ -0,0 +1,12 @@ +{ pkgs, ... }: +{ + home.packages = with pkgs; [ + luajit + lua-language-server + stylua + ]; + programs.vscode.profiles.default.extensions = with pkgs.vscode-extensions; [ + sumneko.lua + ]; + programs.zed-editor.extensions = [ "lua" ]; +} diff --git a/nixcfgs/modules/home/dev/nix.nix b/nixcfgs/modules/home/dev/nix.nix index fc8eaf1..579d455 100644 --- a/nixcfgs/modules/home/dev/nix.nix +++ b/nixcfgs/modules/home/dev/nix.nix @@ -8,4 +8,6 @@ kamadorueda.alejandra jnoortheen.nix-ide ]; + + programs.zed-editor.extensions = [ "nix" ]; } diff --git a/nixcfgs/modules/home/programs/zed-editor.nix b/nixcfgs/modules/home/programs/zed-editor.nix index 399a77a..b74fe9a 100644 --- a/nixcfgs/modules/home/programs/zed-editor.nix +++ b/nixcfgs/modules/home/programs/zed-editor.nix @@ -1,6 +1,5 @@ {pkgs, ...}: { programs.zed-editor = { enable = true; - extensions = ["nix"]; }; } diff --git a/nixcfgs/modules/nixos/libvirt.nix b/nixcfgs/modules/nixos/libvirt.nix index 879e91f..a2bd438 100644 --- a/nixcfgs/modules/nixos/libvirt.nix +++ b/nixcfgs/modules/nixos/libvirt.nix @@ -26,4 +26,5 @@ extraGroups = ["libvirtd"]; }; networking.firewall.trustedInterfaces = ["virbr0"]; + virtualisation.spiceUSBRedirection.enable = true; } diff --git a/nixcfgs/modules/nixos/obs-studio.nix b/nixcfgs/modules/nixos/obs-studio.nix index d1bef34..07821dd 100644 --- a/nixcfgs/modules/nixos/obs-studio.nix +++ b/nixcfgs/modules/nixos/obs-studio.nix @@ -4,4 +4,7 @@ enable = true; enableVirtualCamera = true; }; + boot.extraModprobeConfig = '' + options v4l2loopback devices=1 video_nr=2 card_label="OBS Virtual Camera" exclusive_caps=1 + ''; } diff --git a/nixcfgs/users/js0ny/packages/cli.nix b/nixcfgs/users/js0ny/packages/cli.nix index c5fad27..aa266d1 100644 --- a/nixcfgs/users/js0ny/packages/cli.nix +++ b/nixcfgs/users/js0ny/packages/cli.nix @@ -1,5 +1,6 @@ # ~/.config/nix-config/common/packages-headless.nix -{pkgs, ...}: { +{ pkgs, ... }: +{ home.packages = with pkgs; [ age aichat @@ -48,5 +49,6 @@ # Misc ta-lib ddgr + protonvpn-cli ]; } diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index 25eb6a5..023da45 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -29,5 +29,8 @@ qutebrowser ryubing qbittorrent + protonvpn-gui + proton-pass + protonmail-bridge ]; } diff --git a/nixcfgs/users/js0ny/programs/shell.nix b/nixcfgs/users/js0ny/programs/shell.nix index 608f965..ca672c5 100644 --- a/nixcfgs/users/js0ny/programs/shell.nix +++ b/nixcfgs/users/js0ny/programs/shell.nix @@ -1,4 +1,5 @@ -{pkgs, ...}: let +{ pkgs, ... }: +let commonAliases = { v = "nvim"; g = "lazygit"; @@ -8,7 +9,8 @@ c = "code"; aic = "aichat -s"; }; -in { +in +{ programs.fish = { enable = true; interactiveShellInit = "set fish_greeting"; @@ -27,4 +29,5 @@ in { enable = true; shellAliases = commonAliases; }; + programs.zed-editor.extensions = [ "fish" ]; } diff --git a/nixcfgs/users/js0ny/programs/zed-editor.nix b/nixcfgs/users/js0ny/programs/zed-editor.nix new file mode 100644 index 0000000..acf8427 --- /dev/null +++ b/nixcfgs/users/js0ny/programs/zed-editor.nix @@ -0,0 +1,14 @@ +{ pkgs, ... }: +{ + programs.zed-editor = { + enable = true; + extensions = [ + "dockerfile" + "catppuccin" + "toml" + "material-icon-theme" + "git-firefly" + "make" + ]; + }; +} diff --git a/nixcfgs/users/js0ny/zephyrus.nix b/nixcfgs/users/js0ny/zephyrus.nix index 474da64..f712faa 100644 --- a/nixcfgs/users/js0ny/zephyrus.nix +++ b/nixcfgs/users/js0ny/zephyrus.nix @@ -20,10 +20,12 @@ ./programs/firefox.nix ./programs/distrobox.nix ./programs/mime.nix + ./programs/zed-editor.nix # ./programs/floorp.nix ../../modules/home/gnome-keyrings.nix ../../modules/home/dev/c.nix ../../modules/home/dev/java.nix + ../../modules/home/dev/lua.nix ../../modules/home/dev/nix.nix ../../modules/home/dev/python.nix ../../modules/home/programs/eza.nix @@ -32,7 +34,6 @@ ../../modules/home/programs/nvim.nix ../../modules/home/programs/starship.nix ../../modules/home/programs/zoxide.nix - ../../modules/home/programs/zed-editor.nix # ./flatpak.nix ]; From 7d579743ea7eaa5bc9d7b8d5ed94e6ad3d7428eb Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 09:33:46 +0100 Subject: [PATCH 37/48] nix: xilinx udev --- nixcfgs/hosts/zephyrus/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index 02b5a0e..ef9c276 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -37,5 +37,8 @@ boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ]; + services.udev.extraRules = '' + ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE="0666", GROUP="wheel" + ''; system.stateVersion = "25.05"; } From 0e851754d7813831a34ed2791fed10fef4a0e5bb Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 10:42:57 +0100 Subject: [PATCH 38/48] zed: base config --- home/.chezmoiignore.tmpl | 1 + home/dot_config/nvim/lua/keymaps/leaders.lua | 12 +- home/dot_config/zed/keymap.json | 72 +++++++----- home/dot_config/zed/keymap_backup.json | 109 ------------------- home/dot_config/zed/settings.json | 43 ++++++-- 5 files changed, 80 insertions(+), 157 deletions(-) delete mode 100644 home/dot_config/zed/keymap_backup.json diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl index 8d3e9e3..557c772 100644 --- a/home/.chezmoiignore.tmpl +++ b/home/.chezmoiignore.tmpl @@ -34,6 +34,7 @@ scripts .config/lsd .config/keyd .config/readline +.chezmoiscripts/* {{ end }} {{ end }} diff --git a/home/dot_config/nvim/lua/keymaps/leaders.lua b/home/dot_config/nvim/lua/keymaps/leaders.lua index 4146870..27aa3a6 100644 --- a/home/dot_config/nvim/lua/keymaps/leaders.lua +++ b/home/dot_config/nvim/lua/keymaps/leaders.lua @@ -132,13 +132,13 @@ local leader_mappings = { }, w = { -- +window { keys = "h", cmd = "h", opts = { desc = "Left Window" } }, - { keys = "n", cmd = "j", opts = { desc = "Down Window" } }, - { keys = "e", cmd = "k", opts = { desc = "Up Window" } }, - { keys = "i", cmd = "l", opts = { desc = "Right Window" } }, + { keys = "j", cmd = "j", opts = { desc = "Down Window" } }, + { keys = "k", cmd = "k", opts = { desc = "Up Window" } }, + { keys = "l", cmd = "l", opts = { desc = "Right Window" } }, { keys = "H", cmd = "H", opts = { desc = "Move Window Left" } }, - { keys = "N", cmd = "J", opts = { desc = "Move Window Down" } }, - { keys = "E", cmd = "K", opts = { desc = "Move Window Up" } }, - { keys = "I", cmd = "L", opts = { desc = "Move Window Right" } }, + { keys = "J", cmd = "J", opts = { desc = "Move Window Down" } }, + { keys = "K", cmd = "K", opts = { desc = "Move Window Up" } }, + { keys = "L", cmd = "L", opts = { desc = "Move Window Right" } }, { keys = "-", cmd = ":split", opts = { desc = "Split to down" } }, { keys = "|", cmd = ":vsplit", opts = { desc = "Split to right" } }, { keys = "/", cmd = ":vsplit", opts = { desc = "Split to right" } }, diff --git a/home/dot_config/zed/keymap.json b/home/dot_config/zed/keymap.json index 041288d..6b28d81 100644 --- a/home/dot_config/zed/keymap.json +++ b/home/dot_config/zed/keymap.json @@ -8,21 +8,11 @@ // Windows: %APPDATA%\Zed\keymaps.json // Linking: (link the whole directory) // ln -sf $DOTFILES/tools/zed ~/.config/zed - // Zed keymap - -// - // For information on binding keys, see the Zed - // documentation: https://zed.dev/docs/key-bindings - -// - // To see the default key bindings run `zed: open default keymap` - // from the command palette. - // https://github.com/zed-industries/zed/tree/main/assets/keymaps // Sequence: https://zed.dev/docs/key-bindings#remapping-keys [ @@ -39,17 +29,17 @@ "bindings": { // "j k": ["workspace::SendKeystrokes", "escape"] - "alt-e": "editor::AddSelectionAbove", // Insert Cursor Above - "alt-n": "editor::AddSelectionBelow" // Insert Cursor Below + "alt-k": "editor::AddSelectionAbove", // Insert Cursor Above + "alt-j": "editor::AddSelectionBelow" // Insert Cursor Below } }, { "context": "vim_mode == normal || vim_mode == visual", "bindings": { - "N": "vim::JoinLines", - "l": "vim::InsertBefore", - "L": "vim::InsertFirstNonWhitespace" + "J": "vim::JoinLines", + "i": "vim::InsertBefore", + "I": "vim::InsertFirstNonWhitespace" } }, { @@ -57,7 +47,7 @@ "bindings": { "H": "vim::StartOfLine", - "I": "vim::EndOfLine" + "L": "vim::EndOfLine" } }, { @@ -65,35 +55,42 @@ "bindings": { "H": "pane::ActivatePreviousItem", - "I": "pane::ActivateNextItem" + "L": "pane::ActivateNextItem" } }, { - "context": "GitPanel || ProjectPanel || CollabPanel || OutlinePanel || ChatPanel || VimControl || EmptyPane || SharedScreen || MarkdownPreview || KeyContextView", + // "context": "GitPanel || ProjectPanel || CollabPanel || OutlinePanel || ChatPanel || VimControl || EmptyPane || SharedScreen || MarkdownPreview || KeyContextView", + "context": "Editor && vim_mode == normal && !VimWaiting && !menu", "bindings": { "space space": "file_finder::Toggle", "space ;": "command_palette::Toggle", + "space /": "pane::DeploySearch", "space f c": "zed::OpenSettings", "space f e c": "zed::OpenSettings", "space f t": "project_panel::ToggleFocus", + "space c f": "editor::Format", "ctrl-w h": "workspace::ActivatePaneLeft", - "ctrl-w i": "workspace::ActivatePaneRight", - "ctrl-w e": "workspace::ActivatePaneUp", - "ctrl-w n": "workspace::ActivatePaneDown" + "ctrl-w l": "workspace::ActivatePaneRight", + "ctrl-w k": "workspace::ActivatePaneUp", + "ctrl-w j": "workspace::ActivatePaneDown", + "[ d": "editor::GoToPreviousDiagnostic", + "] d": "editor::GoToDiagnostic", + "[ g": "editor::GoToPreviousHunk", + "] g": "editor::GoToHunk" } }, { "context": "vim_mode == normal || vim_mode == visual || vim_mode == operator", "bindings": { - "n": "vim::Down", - "e": "vim::Up", - "i": "vim::Right", - "k": "search::SelectNextMatch", - "K": "search::SelectPreviousMatch", - "N": ["workspace::SendKeystrokes", "n n n n n"], - "E": ["workspace::SendKeystrokes", "e e e e e"], + "j": "vim::Down", + "k": "vim::Up", + "l": "vim::Right", + "n": "search::SelectNextMatch", + "N": "search::SelectPreviousMatch", + "J": ["workspace::SendKeystrokes", "j j j j j"], + "K": ["workspace::SendKeystrokes", "k k k k k"], "Y": ["workspace::SendKeystrokes", "y $"] } }, @@ -101,12 +98,27 @@ "context": "ProjectPanel && not_editing", "bindings": { - "n": "menu::SelectNext", - "e": "menu::SelectPrevious", + "j": "menu::SelectNext", + "k": "menu::SelectPrevious", "i": "project_panel::ExpandSelectedEntry", "A": "project_panel::NewDirectory", "a": "project_panel::NewFile", "d": "project_panel::Delete" } + }, + { + "context": "Terminal", + + "bindings": { + "ctrl-p": ["terminal::SendKeystroke", "ctrl-p"], + "ctrl-n": ["terminal::SendKeystroke", "ctrl-n"], + "ctrl-T": "workspace::NewTerminal", + "ctrl-w": null, + "ctrl-w ctrl-w": ["terminal::SendKeystroke", "ctrl-w"], + "ctrl-w h": "workspace::ActivatePaneLeft", + "ctrl-w k": "workspace::ActivatePaneUp", + "ctrl-w l": "workspace::ActivatePaneRight", + "ctrl-w j": "workspace::ActivatePaneDown" + } } ] diff --git a/home/dot_config/zed/keymap_backup.json b/home/dot_config/zed/keymap_backup.json deleted file mode 100644 index 516848a..0000000 --- a/home/dot_config/zed/keymap_backup.json +++ /dev/null @@ -1,109 +0,0 @@ -// $DOTFILES/tools/zed/keymaps.json -// Date: 2025-01-25 -// Author: js0ny -// Description: Zed keymaps - -// Location: -// GNU/Linux: ~/.config/zed/keymaps.json -// Windows: %APPDATA%\Zed\keymaps.json -// Linking: (link the whole directory) -// ln -sf $DOTFILES/tools/zed ~/.config/zed - -// Zed keymap - -// - -// For information on binding keys, see the Zed - -// documentation: https://zed.dev/docs/key-bindings - -// - -// To see the default key bindings run `zed: open default keymap` - -// from the command palette. - -// https://github.com/zed-industries/zed/tree/main/assets/keymaps -// Sequence: https://zed.dev/docs/key-bindings#remapping-keys -[ - { - "context": "Workspace", - - "bindings": { - // "shift shift": "file_finder::Toggle" - } - }, - - { - "context": "Editor", - - "bindings": { - // "j k": ["workspace::SendKeystrokes", "escape"] - } - }, - { - "context": "vim_mode == normal || vim_mode == visual", - - "bindings": { - "N": "vim::JoinLines", - "l": "vim::InsertBefore", - "L": "vim::InsertFirstNonWhitespace" - } - }, - { - "context": "vim_mode == visual || vim_mode == operator", - - "bindings": { - "H": "vim::StartOfLine", - "I": "vim::EndOfLine" - } - }, - { - "context": "vim_mode == normal", - - "bindings": { - "H": "pane::ActivatePrevItem", - "I": "pane::ActivateNextItem" - } - }, - { - "context": "GitPanel || ProjectPanel || CollabPanel || OutlinePanel || ChatPanel || VimControl || EmptyPane || SharedScreen || MarkdownPreview || KeyContextView", - - "bindings": { - "space space": "file_finder::Toggle", - "space ;": "command_palette::Toggle", - "space f c": "zed::OpenSettings", - "space f e c": "zed::OpenSettings", - "space f t": "project_panel::ToggleFocus", - "ctrl-w h": "workspace::ActivatePaneLeft", - "ctrl-w i": "workspace::ActivatePaneRight", - "ctrl-w e": "workspace::ActivatePaneUp", - "ctrl-w n": "workspace::ActivatePaneDown" - } - }, - { - "context": "vim_mode == normal || vim_mode == visual || vim_mode == operator", - - "bindings": { - "n": "vim::Down", - "e": "vim::Up", - "i": "vim::Right", - "k": "search::SelectNextMatch", - "K": "search::SelectPrevMatch", - "N": ["workspace::SendKeystrokes", "n n n n n"], - "E": ["workspace::SendKeystrokes", "e e e e e"] - } - }, - { - "context": "ProjectPanel && not_editing", - - "bindings": { - "n": "menu::SelectNext", - "e": "menu::SelectPrev", - "i": "project_panel::ExpandSelectedEntry", - "A": "project_panel::NewDirectory", - "a": "project_panel::NewFile", - "d": "project_panel::Delete" - } - } -] diff --git a/home/dot_config/zed/settings.json b/home/dot_config/zed/settings.json index 259798f..867d045 100644 --- a/home/dot_config/zed/settings.json +++ b/home/dot_config/zed/settings.json @@ -18,6 +18,25 @@ // custom settings, run `zed: open default settings` from the // command palette (cmd-shift-p / ctrl-shift-p) { + // Theming + "icon_theme": "Material Icon Theme", + "theme": { + "mode": "system", + "light": "Rosé Pine Dawn", + "dark": "Catppuccin Macchiato" + }, + "tabs": { + "show_diagnostics": "errors", + "show_close_button": "hover", + "file_icons": true + }, + // Base keymaps + "base_keymap": "VSCode", + "vim_mode": true, + "vim": { + "use_system_clipboard": "on_yank", + "use_smartcase_find": true + }, "features": { "edit_prediction_provider": "zed" }, @@ -32,32 +51,32 @@ "proxy_no_verify": null } }, - "base_keymap": "VSCode", - "vim_mode": true, "ui_font_size": 16, "buffer_font_size": null, - "theme": { - "mode": "system", - "light": "Rosé Pine Dawn", - "dark": "Kanagawa Dragon" - }, "relative_line_numbers": true, - "buffer_font_family": "Maple Mono NF CN", + "buffer_font_family": "Zed Plex Mono", "remove_trailing_whitespace_on_save": true, - "assistant": { + "agent": { "default_model": { "provider": "copilot_chat", "model": "claude-3-7-sonnet" - }, - "version": "2" + } }, "inlay_hints": { "enabled": true, - "show_type_hints": true + "show_type_hints": true, + "show_parameter_hints": true }, "terminal": { "env": { "EDITOR": "zed --wait" } + }, + "file_types": { + "JSON": ["*.code-snippets"] + }, + "telemetry": { + "diagnostics": false, + "metrics": false } } From 3d12a52b4740d367c7ec9ef328b551c1701bf6c0 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 19:30:59 +0100 Subject: [PATCH 39/48] Update home/.chezmoiignore Update home/.config/nvim/lsp/luals.lua Update home/.config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua Update home/.config/nvim/lua/plugins/mod/snacks-nvim.lua Add home/.config/nvim/luarc.jsonc Update home/.config/zed/keymap.json Update nixcfgs/users/js0ny/packages/cli.nix Update nixcfgs/users/js0ny/packages/gui.nix Update nixcfgs/users/js0ny/programs/gnome.nix --- home/.chezmoiignore.tmpl | 3 +- home/dot_config/nvim/lsp/luals.lua | 52 ++++++++++++++++++- .../plugins/lang/markdown/obsidian-nvim.lua | 19 ++++--- .../nvim/lua/plugins/mod/snacks-nvim.lua | 2 +- home/dot_config/nvim/luarc.jsonc | 20 +++++++ home/dot_config/zed/keymap.json | 3 ++ nixcfgs/users/js0ny/packages/cli.nix | 1 + nixcfgs/users/js0ny/packages/gui.nix | 5 +- nixcfgs/users/js0ny/programs/gnome.nix | 26 +++++++++- 9 files changed, 116 insertions(+), 15 deletions(-) create mode 100644 home/dot_config/nvim/luarc.jsonc diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl index 557c772..130d0b3 100644 --- a/home/.chezmoiignore.tmpl +++ b/home/.chezmoiignore.tmpl @@ -35,6 +35,7 @@ scripts .config/keyd .config/readline .chezmoiscripts/* +.bashrc {{ end }} {{ end }} @@ -45,4 +46,4 @@ Library .config/skhd .config/yabai .config/powershell -{{ end}} +{{ end }} diff --git a/home/dot_config/nvim/lsp/luals.lua b/home/dot_config/nvim/lsp/luals.lua index f59f77a..6decef3 100644 --- a/home/dot_config/nvim/lsp/luals.lua +++ b/home/dot_config/nvim/lsp/luals.lua @@ -16,6 +16,7 @@ exec "$HOME/.local/build/lua-language-server/bin/lua-language-server" "$@" --]] return { cmd = { "lua-language-server" }, + filetypes = { "lua" }, root_markers = { ".luarc.json", ".luarc.jsonc", @@ -24,14 +25,63 @@ return { "stylua.toml", "selene.toml", "selene.yml", + ".git", }, - filetypes = { "lua" }, + on_init = function(client) + local path = client.workspace_folders and client.workspace_folders[1] and client.workspace_folders[1].name + if path and (vim.uv.fs_stat(path .. "/.luarc.json") or vim.uv.fs_stat(path .. "/.luarc.jsonc")) then + return + end + client.config.settings = vim.tbl_deep_extend("force", client.config.settings, { + Lua = { + runtime = { + version = "LuaJIT", + }, + workspace = { + checkThirdParty = false, + library = { + vim.env.VIMRUNTIME, + "${3rd}/luv/library", + }, + }, + }, + }) + end, settings = { Lua = { + -- Inlay hints hint = { enable = true, setType = true, + arrayIndex = "Disable", }, + codeLens = { + enable = true, + }, + completion = { + callSnippet = "Replace", + postfix = ".", + displayContext = 50, + }, + telemetry = { + enable = false, + }, + -- Lua LS offers a code formatter + -- Ref: https://github.com/LuaLS/lua-language-server/wiki/Formatter + -- format = { + -- enable = true, + -- defaultConfig = { + -- indent_size = "4", + -- max_line_length = "100", + -- continuation_indent = "8", + -- }, + -- }, + -- diagnostics = { + -- -- Code style checking offered by the Lua LS code formatter + -- neededFileStatus = { + -- ["codestyle-check"] = "Any", + -- }, + -- }, }, }, } diff --git a/home/dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua b/home/dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua index 0b1aa92..032d574 100644 --- a/home/dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua +++ b/home/dot_config/nvim/lua/plugins/lang/markdown/obsidian-nvim.lua @@ -58,6 +58,9 @@ return { "ibhagwan/fzf-lua", }, opts = { + footer = { + enabled = false, + }, workspaces = { { name = "personal", @@ -132,14 +135,14 @@ return { return string.format("%s-", os.time()) end, }, - mappings = { - [""] = { - action = function() - require("obsidian").util.smart_action() - end, - opts = { buffer = true, expr = true }, - }, - }, + -- mappings = { + -- [""] = { + -- action = function() + -- require("obsidian").util.smart_action() + -- end, + -- opts = { buffer = true, expr = true }, + -- }, + -- }, new_notes_location = "current_dir", }, } diff --git a/home/dot_config/nvim/lua/plugins/mod/snacks-nvim.lua b/home/dot_config/nvim/lua/plugins/mod/snacks-nvim.lua index 85c1a34..ee398cc 100644 --- a/home/dot_config/nvim/lua/plugins/mod/snacks-nvim.lua +++ b/home/dot_config/nvim/lua/plugins/mod/snacks-nvim.lua @@ -81,7 +81,7 @@ return { -- words = { enabled = true }, image = { enabled = true, - img_dirs = { "_Global/Assets" } + img_dirs = { "90 - System/Assets" } }, }, keys = { diff --git a/home/dot_config/nvim/luarc.jsonc b/home/dot_config/nvim/luarc.jsonc new file mode 100644 index 0000000..30c5223 --- /dev/null +++ b/home/dot_config/nvim/luarc.jsonc @@ -0,0 +1,20 @@ +{ + "$schema": "https://raw.githubusercontent.com/sumneko/vscode-lua/master/setting/schema.json", + "runtime": { + "version": "LuaJIT" + }, + "workspace": { + "checkThirdParty" : false, + "library": [ + // Runtime and builtin libraries + "$VIMRUNTIME", + "${3rd}/luv/library" + ], + "ignoreDir": [ + "luasnippets" + ] + }, + "diagnostics.disable": [ + "missing-fields" + ] +} diff --git a/home/dot_config/zed/keymap.json b/home/dot_config/zed/keymap.json index 6b28d81..1030004 100644 --- a/home/dot_config/zed/keymap.json +++ b/home/dot_config/zed/keymap.json @@ -74,6 +74,9 @@ "ctrl-w l": "workspace::ActivatePaneRight", "ctrl-w k": "workspace::ActivatePaneUp", "ctrl-w j": "workspace::ActivatePaneDown", + "ctrl-w alt-h": "workspace::ToggleLeftDock", + "ctrl-w alt-l": "workspace::ToggleRightDock", + "ctrl-w alt-j": "workspace::ToggleBottomDock", "[ d": "editor::GoToPreviousDiagnostic", "] d": "editor::GoToDiagnostic", "[ g": "editor::GoToPreviousHunk", diff --git a/nixcfgs/users/js0ny/packages/cli.nix b/nixcfgs/users/js0ny/packages/cli.nix index aa266d1..e3c8edb 100644 --- a/nixcfgs/users/js0ny/packages/cli.nix +++ b/nixcfgs/users/js0ny/packages/cli.nix @@ -50,5 +50,6 @@ ta-lib ddgr protonvpn-cli + markdown-oxide ]; } diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index 023da45..a2a99f4 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -1,5 +1,4 @@ -{ pkgs, ... }: -{ +{pkgs, ...}: { home.packages = with pkgs; [ kitty ghostty @@ -31,6 +30,6 @@ qbittorrent protonvpn-gui proton-pass - protonmail-bridge + protonmail-bridge-gui ]; } diff --git a/nixcfgs/users/js0ny/programs/gnome.nix b/nixcfgs/users/js0ny/programs/gnome.nix index 4630165..26f375a 100644 --- a/nixcfgs/users/js0ny/programs/gnome.nix +++ b/nixcfgs/users/js0ny/programs/gnome.nix @@ -2,6 +2,7 @@ home.packages = with pkgs; [ gnome-tweaks sushi + dconf-editor gnomeExtensions.dash-to-dock gnomeExtensions.caffeine gnomeExtensions.logo-menu @@ -27,6 +28,8 @@ dconf.settings = { "org/gnome/desktop/interface" = { + clock-show-seconds = true; + clock-show-weekday = true; icon-theme = "Papirus"; accent-color = "pink"; show-battery-percentage = true; @@ -46,12 +49,33 @@ }; "org/gnome/shell" = { favorite-apps = [ - "org.kde.dolphin.desktop" "com.mitchellh.ghostty.desktop" "firefox.desktop" "code.desktop" ]; }; + "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom-0" = { + name = "Open File Explorer"; + command = "dolphin"; + binding = "e"; + }; + "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom-1" = { + name = "Open Terminal via Win-R"; + command = "ghostty"; + binding = "r"; + }; + "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom-2" = { + name = "Open Terminal via Ctrl-Alt-T"; + command = "ghostty"; + binding = "t"; + }; + "org/gnome/settings-daemon/plugins/media-keys" = { + custom-keybindings = [ + "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom-0/" + "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom-1/" + "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom-2/" + ]; + }; }; # qt.style.name = "adwaita"; From c9ce831415820e040a78c6479ad5194564e66339 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 13 Oct 2025 20:27:17 +0100 Subject: [PATCH 40/48] nvim: tty setup --- home/.chezmoiignore.tmpl | 2 +- home/dot_config/nvim/init.lua | 4 ++++ home/dot_config/nvim/lua/config/tty.lua | 15 +++++++++++++++ .../nvim/lua/plugins/mod/nvim-lspconfig.lua | 2 +- 4 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 home/dot_config/nvim/lua/config/tty.lua diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl index 130d0b3..eae36a7 100644 --- a/home/.chezmoiignore.tmpl +++ b/home/.chezmoiignore.tmpl @@ -1,5 +1,6 @@ scripts +.chezmoiscripts/* {{ if ne .chezmoi.os "linux" }} @@ -34,7 +35,6 @@ scripts .config/lsd .config/keyd .config/readline -.chezmoiscripts/* .bashrc {{ end }} {{ end }} diff --git a/home/dot_config/nvim/init.lua b/home/dot_config/nvim/init.lua index 17084ea..b0cf105 100644 --- a/home/dot_config/nvim/init.lua +++ b/home/dot_config/nvim/init.lua @@ -8,8 +8,12 @@ -- Entry point of neovim configuration require("config.options") +local term = os.getenv("TERM") or "" if vim.g.vscode then -- TODO: VSCode Neovim Integration require("config.vscode") +elseif term == "linux" then -- Under tty + require("config.tty") + vim.cmd("colorscheme vim") -- Use minimal colorscheme else require("config.plugins") require("config.colorscheme") diff --git a/home/dot_config/nvim/lua/config/tty.lua b/home/dot_config/nvim/lua/config/tty.lua new file mode 100644 index 0000000..8ff9b33 --- /dev/null +++ b/home/dot_config/nvim/lua/config/tty.lua @@ -0,0 +1,15 @@ +require("plugins.lazy-nvim") + +-- Setup lazy.nvim +require("lazy").setup({ + spec = { + -- { import = "plugins.appearance" }, + { import = "plugins.completion" }, + { import = "plugins.fileutils" }, + { import = "plugins.lang" }, + { import = "plugins.dap" }, + { import = "plugins.edit" }, + { import = "plugins.misc" }, + }, + checker = { enabled = false }, +}) diff --git a/home/dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua b/home/dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua index 4a9d190..fa931e5 100644 --- a/home/dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua +++ b/home/dot_config/nvim/lua/plugins/mod/nvim-lspconfig.lua @@ -37,4 +37,4 @@ return { lspconfig[server].setup(config) end end, - +} From 0c6d0edb4292aaca428cbfb0251a751986ae4c93 Mon Sep 17 00:00:00 2001 From: js0ny Date: Tue, 14 Oct 2025 01:33:40 +0100 Subject: [PATCH 41/48] nix: waydroid --- home/dot_config/nvim/lsp/nil.lua | 32 ++++++++++ nixcfgs/hosts/zephyrus/default.nix | 5 +- nixcfgs/modules/home/dev/c.nix | 5 +- nixcfgs/modules/nixos/fonts.nix | 87 +++++++++++++++----------- nixcfgs/modules/nixos/packages.nix | 4 +- nixcfgs/modules/nixos/waydroid.nix | 22 +++++++ nixcfgs/users/js0ny/packages/cli.nix | 12 ++-- nixcfgs/users/js0ny/packages/gui.nix | 4 +- nixcfgs/users/js0ny/programs/gnome.nix | 30 ++++++--- 9 files changed, 142 insertions(+), 59 deletions(-) create mode 100644 home/dot_config/nvim/lsp/nil.lua create mode 100644 nixcfgs/modules/nixos/waydroid.nix diff --git a/home/dot_config/nvim/lsp/nil.lua b/home/dot_config/nvim/lsp/nil.lua new file mode 100644 index 0000000..7c99192 --- /dev/null +++ b/home/dot_config/nvim/lsp/nil.lua @@ -0,0 +1,32 @@ +-- /lsp/nil.lua +-- Nil LSP config + +vim.lsp.config("nil", { + cmd = { "nil" }, + root_markers = { + "flake.nix", + "flake.lock", + }, + filetypes = { + "nix", + }, + -- Global config options + settings = { + ["nil"] = { + formatting = { + command = { "alejandra" }, + }, + diagnostics = { + ignored = {}, + }, + nix = { + maxMemoryMB = 2560, + }, + flake = { + autoArchive = false, + autoEvalImputs = true, + nixpkgsInputName = "nixpkgs", + }, + }, + }, +}) diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index ef9c276..9a1b400 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -10,10 +10,9 @@ imports = [ ../../modules/nixos ../../modules/nixos/host-machine.nix - # ../../modules/nixos/users/js0ny.nix - # ../../modules/nixos/guest.nix + ../../modules/nixos/waydroid.nix ../../modules/nixos/laptop.nix - ../../modules/nixos/nvidia.nix + ../../modules/nixos/disable-nvidia.nix ../../modules/nixos/additional-packages.nix ../../modules/nixos/libvirt.nix ../../modules/nixos/docker.nix diff --git a/nixcfgs/modules/home/dev/c.nix b/nixcfgs/modules/home/dev/c.nix index f97368d..2628cf4 100644 --- a/nixcfgs/modules/home/dev/c.nix +++ b/nixcfgs/modules/home/dev/c.nix @@ -1,7 +1,6 @@ -{pkgs, ...}: - -{ +{pkgs, ...}: { home.packages = with pkgs; [ gcc + llvmPackages_21.clang-tools ]; } diff --git a/nixcfgs/modules/nixos/fonts.nix b/nixcfgs/modules/nixos/fonts.nix index b131f97..1056f3f 100644 --- a/nixcfgs/modules/nixos/fonts.nix +++ b/nixcfgs/modules/nixos/fonts.nix @@ -2,54 +2,71 @@ pkgs, config, ... -}: { - environment.systemPackages = with pkgs; [ - maple-mono.NF - sarasa-gothic - lxgw-wenkai - lxgw-neoxihei - noto-fonts-cjk-sans - noto-fonts - noto-fonts-emoji - nerd-fonts.jetbrains-mono +}: +let + fontPkgs = [ + pkgs.maple-mono.NF + pkgs.sarasa-gothic + pkgs.lxgw-wenkai + pkgs.lxgw-neoxihei + pkgs.noto-fonts-cjk-sans + pkgs.noto-fonts + pkgs.noto-fonts-emoji + pkgs.nerd-fonts.jetbrains-mono ]; +in +{ + environment.systemPackages = fontPkgs; fonts = { enableDefaultPackages = true; + packages = fontPkgs; fontconfig = { enable = true; defaultFonts = { - monospace = ["Maple Mono NF" "JetBrainsMono Nerd Font"]; - serif = ["LXGW WenKai"]; - sansSerif = ["LXGW Neo XiHei"]; + monospace = [ + "Maple Mono NF" + "JetBrainsMono Nerd Font" + ]; + serif = [ "LXGW WenKai" ]; + sansSerif = [ "LXGW Neo XiHei" ]; }; }; fontDir.enable = true; }; - system.fsPackages = [pkgs.bindfs]; - fileSystems = let - mkRoSymBind = path: { - device = path; - fsType = "fuse.bindfs"; - options = ["ro" "resolve-symlinks" "x-gvfs-hide"]; - }; - aggregated = pkgs.buildEnv { - name = "system-fonts-and-icons"; - paths = with pkgs; [ - libsForQt5.breeze-qt5 + system.fsPackages = [ pkgs.bindfs ]; + fileSystems = + let + mkRoSymBind = path: { + device = path; + fsType = "fuse.bindfs"; + options = [ + "ro" + "resolve-symlinks" + "x-gvfs-hide" + ]; + }; + aggregated = pkgs.buildEnv { + name = "system-fonts-and-icons"; + paths = fontPkgs; # with pkgs; [ + # libsForQt5.breeze-qt5 - noto-fonts - noto-fonts-emoji - noto-fonts-cjk-sans - noto-fonts-cjk-serif - ]; - pathsToLink = ["/share/fonts" "/share/icons"]; + # noto-fonts + # noto-fonts-emoji + # noto-fonts-cjk-sans + # noto-fonts-cjk-serif + # ]; + pathsToLink = [ + "/share/fonts" + "/share/icons" + ]; + }; + in + { + # Create an FHS mount to support flatpak host icons/fonts + "/usr/share/icons" = mkRoSymBind "${aggregated}/share/icons"; + "/usr/share/fonts" = mkRoSymBind "${aggregated}/share/fonts"; }; - in { - # Create an FHS mount to support flatpak host icons/fonts - "/usr/share/icons" = mkRoSymBind "${aggregated}/share/icons"; - "/usr/share/fonts" = mkRoSymBind "${aggregated}/share/fonts"; - }; } diff --git a/nixcfgs/modules/nixos/packages.nix b/nixcfgs/modules/nixos/packages.nix index 25db074..cc8f5a5 100644 --- a/nixcfgs/modules/nixos/packages.nix +++ b/nixcfgs/modules/nixos/packages.nix @@ -1,6 +1,5 @@ # ~/.config/nix-config/common/packages-headless.nix -{ pkgs, ... }: -{ +{pkgs, ...}: { # nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ vim @@ -9,5 +8,6 @@ git tmux wl-clipboard + nix-index ]; } diff --git a/nixcfgs/modules/nixos/waydroid.nix b/nixcfgs/modules/nixos/waydroid.nix new file mode 100644 index 0000000..cc42c6b --- /dev/null +++ b/nixcfgs/modules/nixos/waydroid.nix @@ -0,0 +1,22 @@ +{ pkgs, inputs, ... }: +{ + virtualisation.waydroid.enable = true; + nixpkgs.overlays = [ + inputs.nur.overlays.default + ]; + # waydroid-script: Tool to install libhoudini (arm support), magisk, ... + # usage: sudo waydroid-script + environment.systemPackages = with pkgs; [ + nur.repos.ataraxiasjel.waydroid-script + waydroid-helper + ]; + systemd = { + packages = [ pkgs.waydroid-helper ]; + services.waydroid-mount = { + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + ExecStart = "${pkgs.waydroid-helper}/bin/waydroid-helper --start-mount"; + }; + }; + }; +} diff --git a/nixcfgs/users/js0ny/packages/cli.nix b/nixcfgs/users/js0ny/packages/cli.nix index e3c8edb..f7e149e 100644 --- a/nixcfgs/users/js0ny/packages/cli.nix +++ b/nixcfgs/users/js0ny/packages/cli.nix @@ -2,6 +2,7 @@ { pkgs, ... }: { home.packages = with pkgs; [ + rclone age aichat beancount @@ -40,16 +41,15 @@ zoxide wakatime-cli # Langs - # lua - luajit + # lua luajit lua51Packages.luarocks ghostscript mermaid-cli tectonic - # Misc - ta-lib - ddgr - protonvpn-cli + # Misc ta-lib ddgr protonvpn-cli markdown-oxide + nushell + powershell + powershell-editor-services ]; } diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index a2a99f4..7ef0962 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -1,4 +1,5 @@ -{pkgs, ...}: { +{ pkgs, ... }: +{ home.packages = with pkgs; [ kitty ghostty @@ -31,5 +32,6 @@ protonvpn-gui proton-pass protonmail-bridge-gui + mpv ]; } diff --git a/nixcfgs/users/js0ny/programs/gnome.nix b/nixcfgs/users/js0ny/programs/gnome.nix index 26f375a..76160d3 100644 --- a/nixcfgs/users/js0ny/programs/gnome.nix +++ b/nixcfgs/users/js0ny/programs/gnome.nix @@ -1,4 +1,5 @@ -{pkgs, ...}: { +{ pkgs, ... }: +{ home.packages = with pkgs; [ gnome-tweaks sushi @@ -16,14 +17,15 @@ ]; programs.gnome-shell.enable = true; programs.gnome-shell.extensions = [ - {package = pkgs.gnomeExtensions.dash-to-dock;} - {package = pkgs.gnomeExtensions.caffeine;} - {package = pkgs.gnomeExtensions.logo-menu;} - {package = pkgs.gnomeExtensions.kimpanel;} - {package = pkgs.gnomeExtensions.appindicator;} - {package = pkgs.gnomeExtensions.gsconnect;} - {package = pkgs.gnomeExtensions.clipboard-indicator;} - {package = pkgs.gnomeExtensions.advanced-alttab-window-switcher;} + { package = pkgs.gnomeExtensions.dash-to-dock; } + { package = pkgs.gnomeExtensions.caffeine; } + { package = pkgs.gnomeExtensions.logo-menu; } + { package = pkgs.gnomeExtensions.kimpanel; } + { package = pkgs.gnomeExtensions.appindicator; } + { package = pkgs.gnomeExtensions.gsconnect; } + { package = pkgs.gnomeExtensions.clipboard-indicator; } + { package = pkgs.gnomeExtensions.advanced-alttab-window-switcher; } + { package = pkgs.gnomeExtensions.blur-my-shell; } ]; dconf.settings = { @@ -76,6 +78,16 @@ "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom-2/" ]; }; + "org/freedesktop/tracker/miner/files" = { + "index-recursive-directories" = [ + "&DESKTOP" + "&DOCUMENTS" + "&MUSIC" + "&PICTURES" + "&VIDEOS" + "/home/js0ny/Obsidian" + ]; + }; }; # qt.style.name = "adwaita"; From af7c7b49f2a8e15eaadb33633931b0e83da51592 Mon Sep 17 00:00:00 2001 From: js0ny Date: Wed, 15 Oct 2025 03:04:44 +0100 Subject: [PATCH 42/48] nix: flatpak fonts & icons --- nixcfgs/modules/nixos/configuration.nix | 1 - nixcfgs/modules/nixos/fonts.nix | 76 ++++++++++++------------ nixcfgs/modules/nixos/packages.nix | 3 + nixcfgs/users/js0ny/packages/flatpak.nix | 17 +++++- 4 files changed, 57 insertions(+), 40 deletions(-) diff --git a/nixcfgs/modules/nixos/configuration.nix b/nixcfgs/modules/nixos/configuration.nix index d978741..6b9112d 100644 --- a/nixcfgs/modules/nixos/configuration.nix +++ b/nixcfgs/modules/nixos/configuration.nix @@ -3,7 +3,6 @@ pkgs, ... }: { - security.pam.services.login.enableGnomeKeyring = true; # Use latest kernel. diff --git a/nixcfgs/modules/nixos/fonts.nix b/nixcfgs/modules/nixos/fonts.nix index 1056f3f..c272d0b 100644 --- a/nixcfgs/modules/nixos/fonts.nix +++ b/nixcfgs/modules/nixos/fonts.nix @@ -2,8 +2,7 @@ pkgs, config, ... -}: -let +}: let fontPkgs = [ pkgs.maple-mono.NF pkgs.sarasa-gothic @@ -14,8 +13,7 @@ let pkgs.noto-fonts-emoji pkgs.nerd-fonts.jetbrains-mono ]; -in -{ +in { environment.systemPackages = fontPkgs; fonts = { @@ -29,44 +27,46 @@ in "Maple Mono NF" "JetBrainsMono Nerd Font" ]; - serif = [ "LXGW WenKai" ]; - sansSerif = [ "LXGW Neo XiHei" ]; + serif = ["LXGW WenKai"]; + sansSerif = ["LXGW Neo XiHei"]; }; }; fontDir.enable = true; }; - system.fsPackages = [ pkgs.bindfs ]; - fileSystems = - let - mkRoSymBind = path: { - device = path; - fsType = "fuse.bindfs"; - options = [ - "ro" - "resolve-symlinks" - "x-gvfs-hide" - ]; - }; - aggregated = pkgs.buildEnv { - name = "system-fonts-and-icons"; - paths = fontPkgs; # with pkgs; [ - # libsForQt5.breeze-qt5 - - # noto-fonts - # noto-fonts-emoji - # noto-fonts-cjk-sans - # noto-fonts-cjk-serif - # ]; - pathsToLink = [ - "/share/fonts" - "/share/icons" - ]; - }; - in - { - # Create an FHS mount to support flatpak host icons/fonts - "/usr/share/icons" = mkRoSymBind "${aggregated}/share/icons"; - "/usr/share/fonts" = mkRoSymBind "${aggregated}/share/fonts"; + system.fsPackages = [pkgs.bindfs]; + fileSystems = let + mkRoSymBind = path: { + device = path; + fsType = "fuse.bindfs"; + options = [ + "ro" + "resolve-symlinks" + "x-gvfs-hide" + ]; }; + aggregated = pkgs.buildEnv { + name = "system-fonts-and-icons"; + paths = + fontPkgs + ++ [ + # Add cursor supports + pkgs.libsForQt5.breeze-qt5 + ]; # with pkgs; [ + # libsForQt5.breeze-qt5 + + # noto-fonts + # noto-fonts-emoji + # noto-fonts-cjk-sans + # noto-fonts-cjk-serif + # ]; + pathsToLink = [ + "/share/fonts" + "/share/icons" + ]; + }; + in { + "/usr/share/icons" = mkRoSymBind "${aggregated}/share/icons"; + "/usr/share/fonts" = mkRoSymBind "${aggregated}/share/fonts"; + }; } diff --git a/nixcfgs/modules/nixos/packages.nix b/nixcfgs/modules/nixos/packages.nix index cc8f5a5..846ce48 100644 --- a/nixcfgs/modules/nixos/packages.nix +++ b/nixcfgs/modules/nixos/packages.nix @@ -9,5 +9,8 @@ tmux wl-clipboard nix-index + file + unzip + zip ]; } diff --git a/nixcfgs/users/js0ny/packages/flatpak.nix b/nixcfgs/users/js0ny/packages/flatpak.nix index a39ef18..726d85a 100644 --- a/nixcfgs/users/js0ny/packages/flatpak.nix +++ b/nixcfgs/users/js0ny/packages/flatpak.nix @@ -1,5 +1,6 @@ # https://github.com/gmodena/nix-flatpak -{...}: { +{nix-flatpak, ...}: { + services.flatpak.enable = true; services.flatpak.remotes = [ { name = "flathub"; @@ -24,8 +25,22 @@ "com.getpostman.Postman" ]; services.flatpak.overrides = { + global = { + Context = { + # Force wayland by default + sockets = ["wayland" "!x11" "!fallback-x11"]; + filesystems = [ + "/run/current-system/sw/share/fonts:ro" + "xdg-config/fontconfig:ro" + # "xdg-data/fonts:ro" + ]; + }; + }; + "com.qq.QQ".Context.sockets = ["x11"]; "com.tencent.WeChat" = { + Context.sockets = ["x11"]; Environment = { + # WeChat does not support wayland & wayland-ime QT_IM_MODULE = "fcitx"; }; }; From 608cd058027411415069e5718b54f1c0b859378a Mon Sep 17 00:00:00 2001 From: js0ny Date: Thu, 16 Oct 2025 01:04:06 +0100 Subject: [PATCH 43/48] nix: dirty flatpak fonts --- home/dot_config/neovide/config.toml | 5 ++--- nixcfgs/hosts/zephyrus/default.nix | 15 +++++---------- nixcfgs/users/js0ny/packages/flatpak.nix | 10 +++++++--- nixcfgs/users/js0ny/packages/fonts.nix | 13 +++++++++++++ nixcfgs/users/js0ny/packages/gui.nix | 4 ++-- nixcfgs/users/js0ny/programs/mime.nix | 6 ++++++ nixcfgs/users/js0ny/programs/plasma.nix | 13 ++++++++++--- nixcfgs/users/js0ny/zephyrus.nix | 24 ++++++++++++++++++++++-- 8 files changed, 67 insertions(+), 23 deletions(-) create mode 100644 nixcfgs/users/js0ny/packages/fonts.nix diff --git a/home/dot_config/neovide/config.toml b/home/dot_config/neovide/config.toml index 93cf59c..d73a2f8 100644 --- a/home/dot_config/neovide/config.toml +++ b/home/dot_config/neovide/config.toml @@ -8,7 +8,7 @@ fork = true idle = true maximized = false # neovim-bin = "/opt/homebrew/bin/nvim" -frame = "transparent" +frame = "full" no-multigrid = false srgb = false tabs = true @@ -19,8 +19,7 @@ wsl = false [font] normal = [ - "Maple Mono NF CN", + "Maple Mono NF", "Iosevka Nerd Font", - "霞鹜文楷等宽", ] # Will use the bundled Fira Code Nerd Font by default size = 14.0 diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index 9a1b400..4afa9be 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -1,12 +1,5 @@ # ~/.config/nixcfgs/hosts/zephyrus/default.nix -{ - config, - lib, - pkgs, - nix-flatpak, - ... -}: -{ +{config, ...}: { imports = [ ../../modules/nixos ../../modules/nixos/host-machine.nix @@ -22,7 +15,7 @@ ../../modules/nixos/obs-studio.nix ../../modules/nixos/wine.nix ../../modules/nixos/desktop/gnome.nix - # ../../modules/nixos/desktop/niri.nix + ../../modules/nixos/desktop/niri.nix ../../modules/nixos/desktop/kde.nix ../../modules/nixos/display-manager/sddm.nix ./hardware-configuration.nix @@ -36,8 +29,10 @@ boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ]; + networking.modemmanager.enable = false; + # Xilinx Artix-7 Basys 3 services.udev.extraRules = '' - ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE="0666", GROUP="wheel" + ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE="0660", GROUP="dialout", SYMLINK+="basys3" ''; system.stateVersion = "25.05"; } diff --git a/nixcfgs/users/js0ny/packages/flatpak.nix b/nixcfgs/users/js0ny/packages/flatpak.nix index 726d85a..ca857b1 100644 --- a/nixcfgs/users/js0ny/packages/flatpak.nix +++ b/nixcfgs/users/js0ny/packages/flatpak.nix @@ -1,5 +1,5 @@ # https://github.com/gmodena/nix-flatpak -{nix-flatpak, ...}: { +{home, ...}: { services.flatpak.enable = true; services.flatpak.remotes = [ { @@ -28,11 +28,14 @@ global = { Context = { # Force wayland by default - sockets = ["wayland" "!x11" "!fallback-x11"]; filesystems = [ "/run/current-system/sw/share/fonts:ro" "xdg-config/fontconfig:ro" - # "xdg-data/fonts:ro" + # If user font is set, it is required to access /nix/store + # since flatpak apps cannot read ~/.config/fontconfig/conf.d/* + # TODO: This is a bad practice, trying to look for a better solution + "/nix/store:ro" + "xdg-data/fonts:ro" ]; }; }; @@ -44,5 +47,6 @@ QT_IM_MODULE = "fcitx"; }; }; + "md.obsidian.Obsidian".Context.sockets = ["wayland"]; }; } diff --git a/nixcfgs/users/js0ny/packages/fonts.nix b/nixcfgs/users/js0ny/packages/fonts.nix new file mode 100644 index 0000000..b2f2bc1 --- /dev/null +++ b/nixcfgs/users/js0ny/packages/fonts.nix @@ -0,0 +1,13 @@ +{pkgs, ...}: { + fonts.fontconfig.enable = true; + fonts.fontconfig = { + defaultFonts = { + monospace = [ + "Maple Mono NF" + "JetBrainsMono Nerd Font" + ]; + serif = ["LXGW WenKai"]; + sansSerif = ["LXGW Neo XiHei"]; + }; + }; +} diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index 7ef0962..5ae8b87 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -1,5 +1,4 @@ -{ pkgs, ... }: -{ +{pkgs, ...}: { home.packages = with pkgs; [ kitty ghostty @@ -33,5 +32,6 @@ proton-pass protonmail-bridge-gui mpv + neovim-qt ]; } diff --git a/nixcfgs/users/js0ny/programs/mime.nix b/nixcfgs/users/js0ny/programs/mime.nix index a8b56d6..29dae43 100644 --- a/nixcfgs/users/js0ny/programs/mime.nix +++ b/nixcfgs/users/js0ny/programs/mime.nix @@ -1,7 +1,13 @@ { + xdg.mime.enable = true; xdg.mimeApps = { + enable = true; defaultApplications = { "application/pdf" = "org.kde.okular.desktop"; + "text/plain" = "nvim-qt.desktop"; + "text/x-csrc" = "nvim-qt.desktop"; + "text/x-chdr" = "nvim-qt.desktop"; + "inode/directory" = "org.kde.dolphin.desktop"; }; }; } diff --git a/nixcfgs/users/js0ny/programs/plasma.nix b/nixcfgs/users/js0ny/programs/plasma.nix index 414b352..24267be 100644 --- a/nixcfgs/users/js0ny/programs/plasma.nix +++ b/nixcfgs/users/js0ny/programs/plasma.nix @@ -1,6 +1,8 @@ {pkgs, ...}: { - home.packages = with pkgs.kdePackages; [ - yakuake + home.packages = with pkgs; [ + kdePackages.yakuake + krunner-vscodeprojects + jetbrains-runner ]; programs.plasma = { enable = true; @@ -28,6 +30,11 @@ ]; }; }; + shortcuts = { + yakuake = { + "toggle-window-state" = "Meta+`"; + }; + }; input.touchpads = [ { disableWhileTyping = true; @@ -101,7 +108,7 @@ "org.kde.plasma.marginsseparator" ]; opacity = "translucent"; - hiding = "dodgewindows"; + hiding = "none"; } ]; }; diff --git a/nixcfgs/users/js0ny/zephyrus.nix b/nixcfgs/users/js0ny/zephyrus.nix index f712faa..144e17c 100644 --- a/nixcfgs/users/js0ny/zephyrus.nix +++ b/nixcfgs/users/js0ny/zephyrus.nix @@ -4,13 +4,26 @@ nix-flatpak, plasma-manager, ... -}: -{ +}: let + my-catppuccin-kde = pkgs.catppuccin-kde.override { + flavour = [ + "mocha" + "latte" + ]; + accents = ["pink"]; + winDecStyles = ["classic"]; + }; + my-catppuccin-gtk = pkgs.catppuccin-gtk.override { + accents = ["pink"]; + variant = "mocha"; + }; +in { imports = [ ./default.nix ./packages/cli.nix ./packages/gui.nix ./packages/flatpak.nix + ./packages/fonts.nix ./programs/chromium.nix ./programs/gnome.nix ./programs/plasma.nix @@ -37,5 +50,12 @@ # ./flatpak.nix ]; + home.packages = with pkgs; [ + catppuccin + my-catppuccin-gtk + my-catppuccin-kde + catppuccin-fcitx5 + ]; + home.stateVersion = "25.05"; } From a9d8bcb50045cae9c430bb525e7c02e8a087d28b Mon Sep 17 00:00:00 2001 From: js0ny Date: Sun, 19 Oct 2025 18:12:07 +0100 Subject: [PATCH 44/48] nix: Add sdcv --- home/dot_config/hypr/hyprland.conf | 21 +-- nixcfgs/flake.lock | 105 ++++++++++++- nixcfgs/flake.nix | 141 +++++++++--------- nixcfgs/hosts/zephyrus/default.nix | 3 +- nixcfgs/modules/nixos/additional-packages.nix | 2 + nixcfgs/modules/nixos/chromium.nix | 2 +- nixcfgs/modules/nixos/desktop/cosmic.nix | 4 + nixcfgs/modules/nixos/desktop/hyprland.nix | 17 ++- nixcfgs/modules/nixos/packages.nix | 1 + nixcfgs/modules/nixos/winboat.nix | 5 + nixcfgs/users/js0ny/packages/gui.nix | 9 +- nixcfgs/users/js0ny/programs/firefox.nix | 31 ++-- nixcfgs/users/js0ny/programs/plasma.nix | 4 +- nixcfgs/users/js0ny/programs/sdcv.nix | 9 ++ nixcfgs/users/js0ny/programs/shell.nix | 10 +- nixcfgs/users/js0ny/zephyrus.nix | 15 +- 16 files changed, 267 insertions(+), 112 deletions(-) create mode 100644 nixcfgs/modules/nixos/desktop/cosmic.nix create mode 100644 nixcfgs/modules/nixos/winboat.nix create mode 100644 nixcfgs/users/js0ny/programs/sdcv.nix diff --git a/home/dot_config/hypr/hyprland.conf b/home/dot_config/hypr/hyprland.conf index 042e824..b7f2b11 100644 --- a/home/dot_config/hypr/hyprland.conf +++ b/home/dot_config/hypr/hyprland.conf @@ -49,6 +49,7 @@ xwayland { # Format: # MONITOR_NAME,RESOLUTION@REFRESH_RATE,OFFSET_XxOFFSET_Y,SCALE monitor=DP-2,3840x2160@60,0x0,1.667 +monitor=eDP-1,disable ################### @@ -72,7 +73,7 @@ monitor=DP-2,3840x2160@60,0x0,1.667 # Top Bar exec-once = waybar & # Notifications -exec-once = dunst & +# exec-once = dunst & # exec-once = hyprpanel & # wallpapers exec-once = swww-daemon & @@ -86,8 +87,6 @@ exec-once = wl-paste --watch cliphist store # exec-once = QT_SCALE_FACTOR=1 albert & # Bluetooth Manager exec-once = blueman-applet & -# Time Tracker -exec-once = aw-qt & @@ -137,7 +136,7 @@ general { # https://wiki.hyprland.org/Configuring/Variables/#decoration decoration { - rounding = 0 + rounding = 20 # Change transparency of focused and unfocused windows # active_opacity = 1 @@ -235,12 +234,12 @@ input { } } +# gesture = 4, horizontal, workspace # https://wiki.hyprland.org/Configuring/Variables/#gestures -# gestures { -# workspace_swipe = true -# workspace_swipe_fingers = 4 -# } -gesture = 4, horizontal, workspace +gestures { + workspace_swipe = true + workspace_swipe_fingers = 4 +} # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more @@ -248,6 +247,10 @@ gesture = 4, horizontal, workspace # name = epic-mouse-v1 # sensitivity = -0.5 # } +# gesture = 3, horizontal, workspace +# gesture = 3, down, mod: ALT, close +# gesture = 3, up, mod: SUPER, scale: 1.5, fullscreen +# gesture = 3, left, scale: 1.5, float windowrulev2 = opaque, workspace:2 diff --git a/nixcfgs/flake.lock b/nixcfgs/flake.lock index 7ec669c..406fc48 100644 --- a/nixcfgs/flake.lock +++ b/nixcfgs/flake.lock @@ -1,5 +1,51 @@ { "nodes": { + "caelestia-cli": { + "inputs": { + "caelestia-shell": [ + "caelestia-shell" + ], + "nixpkgs": [ + "caelestia-shell", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1760147156, + "narHash": "sha256-ad+1gnp7Lm7jVSzqvGjMiwnA0P61dFZmp6HcRMXicWY=", + "owner": "caelestia-dots", + "repo": "cli", + "rev": "e9668d58f51e935094e50090b99301df8344f590", + "type": "github" + }, + "original": { + "owner": "caelestia-dots", + "repo": "cli", + "type": "github" + } + }, + "caelestia-shell": { + "inputs": { + "caelestia-cli": "caelestia-cli", + "nixpkgs": [ + "nixpkgs" + ], + "quickshell": "quickshell" + }, + "locked": { + "lastModified": 1760497394, + "narHash": "sha256-/4Hf/irgPh+gRQAcCNjXyXFcUGOrXMX8+OtOwbscbXk=", + "owner": "caelestia-dots", + "repo": "shell", + "rev": "4cb1048fdd6fa281baa0efa36c8c82ddd2cc43a3", + "type": "github" + }, + "original": { + "owner": "caelestia-dots", + "repo": "shell", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -127,6 +173,22 @@ "type": "github" } }, + "nixpkgs_3": { + "locked": { + "lastModified": 1758690382, + "narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "e643668fd71b949c53f8626614b21ff71a07379d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nur": { "inputs": { "flake-parts": "flake-parts", @@ -169,15 +231,38 @@ "type": "github" } }, + "quickshell": { + "inputs": { + "nixpkgs": [ + "caelestia-shell", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1760228179, + "narHash": "sha256-4Z6k7lv3Zcgk3K+4h60LpqB9wCkR+utkYERU735U068=", + "ref": "refs/heads/master", + "rev": "c9d3ffb6043c5bf3f3009202bad7e0e5132c4a25", + "revCount": 693, + "type": "git", + "url": "https://git.outfoxxed.me/outfoxxed/quickshell" + }, + "original": { + "type": "git", + "url": "https://git.outfoxxed.me/outfoxxed/quickshell" + } + }, "root": { "inputs": { + "caelestia-shell": "caelestia-shell", "flake-utils": "flake-utils", "home-manager": "home-manager", "nix-darwin": "nix-darwin", "nix-flatpak": "nix-flatpak", "nixpkgs": "nixpkgs", "nur": "nur", - "plasma-manager": "plasma-manager" + "plasma-manager": "plasma-manager", + "winboat": "winboat" } }, "systems": { @@ -194,6 +279,24 @@ "repo": "default", "type": "github" } + }, + "winboat": { + "inputs": { + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1760625716, + "narHash": "sha256-Lf8kR10j/VDlNBfLJENA7jDUPOYfAd0ZUqPwyMncO2M=", + "owner": "TibixDev", + "repo": "winboat", + "rev": "dab50fb60487f7d47d82c6857c7be9582314c481", + "type": "github" + }, + "original": { + "owner": "TibixDev", + "repo": "winboat", + "type": "github" + } } }, "root": "root", diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix index 818a002..a4bffdf 100644 --- a/nixcfgs/flake.nix +++ b/nixcfgs/flake.nix @@ -20,81 +20,86 @@ inputs.home-manager.follows = "home-manager"; }; nur.url = "github:nix-community/NUR"; + winboat.url = "github:TibixDev/winboat"; + caelestia-shell = { + url = "github:caelestia-dots/shell"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; - outputs = - { - self, - nixpkgs, - nix-flatpak, - nix-darwin, - home-manager, - plasma-manager, - nur, - ... - }@inputs: - let - overlays = [ nur.overlays.default ]; - forSystem = - system: - import nixpkgs { - inherit system overlays; - config.allowUnfree = true; - }; - specialArgs = { inherit inputs; }; - nixosHosts = [ - "zp" - "zephyrus" - "nixvirt" - ]; + outputs = { + self, + nixpkgs, + nix-flatpak, + nix-darwin, + home-manager, + plasma-manager, + nur, + winboat, + caelestia-shell, + ... + } @ inputs: let + overlays = [ + nur.overlays.default + (final: prev: { + winboat = winboat.packages.x86_64-linux.winboat; + }) + ]; + forSystem = system: + import nixpkgs { + inherit system overlays; + config.allowUnfree = true; + }; + specialArgs = {inherit inputs;}; + nixosHosts = [ + "zp" + "zephyrus" + "nixvirt" + ]; - mkNixosSystem = - hostname: - nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - inherit specialArgs; - modules = [ ./hosts/${hostname} ]; - }; - - in - { - - # This will automatically generate nixOS config for `nixosHosts' - # Include the module ./hosts/${hostname} by default. - nixosConfigurations = nixpkgs.lib.genAttrs nixosHosts mkNixosSystem; - - darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { - system = "aarch64-darwin"; + mkNixosSystem = hostname: + nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; inherit specialArgs; + modules = [./hosts/${hostname}]; + }; + in { + # This will automatically generate nixOS config for `nixosHosts' + # Include the module ./hosts/${hostname} by default. + nixosConfigurations = nixpkgs.lib.genAttrs nixosHosts mkNixosSystem; + + darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { + system = "aarch64-darwin"; + inherit specialArgs; + modules = [ + ./hosts/zen + ]; + }; + + homeConfigurations = { + js0ny = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; modules = [ - ./hosts/zen + ./users/js0ny ]; }; - - homeConfigurations = { - js0ny = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny - ]; - }; - "js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny/zephyrus.nix - plasma-manager.homeModules.plasma-manager - nix-flatpak.homeManagerModules.nix-flatpak - ]; - }; - "js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny/nixvirt.nix - ]; - }; + "js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny/zephyrus.nix + plasma-manager.homeModules.plasma-manager + nix-flatpak.homeManagerModules.nix-flatpak + ]; + }; + "js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny/nixvirt.nix + ]; }; }; + }; } diff --git a/nixcfgs/hosts/zephyrus/default.nix b/nixcfgs/hosts/zephyrus/default.nix index 4afa9be..98b750b 100644 --- a/nixcfgs/hosts/zephyrus/default.nix +++ b/nixcfgs/hosts/zephyrus/default.nix @@ -14,9 +14,8 @@ ../../modules/nixos/chromium.nix ../../modules/nixos/obs-studio.nix ../../modules/nixos/wine.nix - ../../modules/nixos/desktop/gnome.nix - ../../modules/nixos/desktop/niri.nix ../../modules/nixos/desktop/kde.nix + ../../modules/nixos/desktop/hyprland.nix ../../modules/nixos/display-manager/sddm.nix ./hardware-configuration.nix ./keyd.nix diff --git a/nixcfgs/modules/nixos/additional-packages.nix b/nixcfgs/modules/nixos/additional-packages.nix index 858fa87..53bbb3e 100644 --- a/nixcfgs/modules/nixos/additional-packages.nix +++ b/nixcfgs/modules/nixos/additional-packages.nix @@ -3,5 +3,7 @@ chromium nil nixd + libnotify + imagemagick ]; } diff --git a/nixcfgs/modules/nixos/chromium.nix b/nixcfgs/modules/nixos/chromium.nix index b7c1b95..d5f3b82 100644 --- a/nixcfgs/modules/nixos/chromium.nix +++ b/nixcfgs/modules/nixos/chromium.nix @@ -1,4 +1,4 @@ -{pkgs, ...}: { +{...}: { programs.chromium = { enable = true; homepageLocation = "https://duckduckgo.com"; diff --git a/nixcfgs/modules/nixos/desktop/cosmic.nix b/nixcfgs/modules/nixos/desktop/cosmic.nix new file mode 100644 index 0000000..ca3d945 --- /dev/null +++ b/nixcfgs/modules/nixos/desktop/cosmic.nix @@ -0,0 +1,4 @@ +{...}: { + services.displayManager.cosmic-greeter.enable = true; + services.desktopManager.cosmic.enable = true; +} diff --git a/nixcfgs/modules/nixos/desktop/hyprland.nix b/nixcfgs/modules/nixos/desktop/hyprland.nix index be74ef2..85c0f9e 100644 --- a/nixcfgs/modules/nixos/desktop/hyprland.nix +++ b/nixcfgs/modules/nixos/desktop/hyprland.nix @@ -1,7 +1,22 @@ -{...}: { +{ + pkgs, + inputs, + ... +}: { programs.hyprland = { enable = true; withUWSM = false; xwayland.enable = true; }; + + environment.systemPackages = [ + inputs.caelestia-shell.packages.x86_64-linux.default + pkgs.mako + pkgs.rofi-wayland + pkgs.xdg-desktop-portal-wlr + pkgs.xdg-desktop-portal-hyprland + pkgs.hyprpolkitagent + pkgs.cliphist + pkgs.grimblast + ]; } diff --git a/nixcfgs/modules/nixos/packages.nix b/nixcfgs/modules/nixos/packages.nix index 846ce48..43605f0 100644 --- a/nixcfgs/modules/nixos/packages.nix +++ b/nixcfgs/modules/nixos/packages.nix @@ -12,5 +12,6 @@ file unzip zip + pkg-config ]; } diff --git a/nixcfgs/modules/nixos/winboat.nix b/nixcfgs/modules/nixos/winboat.nix new file mode 100644 index 0000000..d82779f --- /dev/null +++ b/nixcfgs/modules/nixos/winboat.nix @@ -0,0 +1,5 @@ +{inputs, ...}: { + environment.systemPackages = [ + inputs.winboat + ]; +} diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index 5ae8b87..cd419f7 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -1,5 +1,6 @@ {pkgs, ...}: { - home.packages = with pkgs; [ + home.packages = with pkgs; + [ kitty ghostty alacritty @@ -11,8 +12,10 @@ pcloud telegram-desktop steam - jetbrains.idea-ultimate - jetbrains.rider + (jetbrains.idea-ultimate.override { + vmopts = ''-Dawt.toolkit.name=WLToolkit'';}) + (jetbrains.rider.override { + vmopts = ''-Dawt.toolkit.name=WLToolkit'';}) warp-terminal # clash-verge-rev haruna diff --git a/nixcfgs/users/js0ny/programs/firefox.nix b/nixcfgs/users/js0ny/programs/firefox.nix index 91080ca..25e0b4a 100644 --- a/nixcfgs/users/js0ny/programs/firefox.nix +++ b/nixcfgs/users/js0ny/programs/firefox.nix @@ -1,4 +1,5 @@ -{pkgs, ...}: { +{ pkgs, ... }: +{ programs.firefox = { enable = true; profiles.default = { @@ -11,7 +12,7 @@ } ]; icon = "https://archlinux.org/favicon.ico"; - definedAliases = ["@aw"]; + definedAliases = [ "@aw" ]; }; aur = { name = "Arch User Repository"; @@ -21,43 +22,43 @@ } ]; icon = "https://archlinux.org/favicon.ico"; - definedAliases = ["@aur"]; + definedAliases = [ "@aur" ]; }; arch-packages = { name = "ArchLinux Packages"; - urls = [{template = "https://archlinux.org/?q={searchTerms}";}]; + urls = [ { template = "https://archlinux.org/?q={searchTerms}"; } ]; icon = "https://archlinux.org/favicon.ico"; - definedAliases = ["@pac"]; + definedAliases = [ "@pac" ]; }; chatgpt = { name = "ChatGPT"; - urls = [{template = "https://chatgpt.com/?q={searchTerms}";}]; + urls = [ { template = "https://chatgpt.com/?q={searchTerms}"; } ]; icon = "https://chatgpt.com/favicon.ico"; - definedAliases = ["@gpt"]; + definedAliases = [ "@gpt" ]; }; scoop = { name = "scoop"; - urls = [{template = "https://scoop.sh/#/apps?q={searchTerms}";}]; + urls = [ { template = "https://scoop.sh/#/apps?q={searchTerms}"; } ]; icon = "https://scoop.sh/favicon.ico"; - definedAliases = ["@sc"]; + definedAliases = [ "@sc" ]; }; perplexity = { name = "Perplexity"; - urls = [{template = "https://www.perplexity.ai/?q={searchTerms}";}]; + urls = [ { template = "https://www.perplexity.ai/?q={searchTerms}"; } ]; icon = "https://perplexity.ai/favicon.ico"; - definedAliases = ["@pplx"]; + definedAliases = [ "@pplx" ]; }; winget = { name = "Windows Package Manager"; - urls = [{template = "https://winget.ragerworks.com/search/all/{searchTerms}";}]; + urls = [ { template = "https://winget.ragerworks.com/search/all/{searchTerms}"; } ]; icon = "https://microsoft.com/favicon.ico"; - definedAliases = ["@win"]; + definedAliases = [ "@win" ]; }; github = { name = "GitHub Repository"; - urls = [{template = "https://github.com/search?type=repositories&q={searchTerms}";}]; + urls = [ { template = "https://github.com/search?type=repositories&q={searchTerms}"; } ]; icon = "https://github.com/favicon.ico"; - definedAliases = ["@gh"]; + definedAliases = [ "@gh" ]; }; }; extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [ diff --git a/nixcfgs/users/js0ny/programs/plasma.nix b/nixcfgs/users/js0ny/programs/plasma.nix index 24267be..134e719 100644 --- a/nixcfgs/users/js0ny/programs/plasma.nix +++ b/nixcfgs/users/js0ny/programs/plasma.nix @@ -72,7 +72,7 @@ config = { General = { launchers = [ - "applications:org.kde.dolphin.desktop" + # "applications:org.kde.dolphin.desktop" "applications:firefox.desktop" "applications:com.mitchellh.ghostty.desktop" ]; @@ -131,7 +131,7 @@ profiles = { Default = { command = "${pkgs.fish}/bin/fish"; - colorScheme = "Breeze"; + colorScheme = "catppuccin-mocha"; font = { name = "Maple Mono NF"; size = 12; diff --git a/nixcfgs/users/js0ny/programs/sdcv.nix b/nixcfgs/users/js0ny/programs/sdcv.nix new file mode 100644 index 0000000..90cf73b --- /dev/null +++ b/nixcfgs/users/js0ny/programs/sdcv.nix @@ -0,0 +1,9 @@ +{ pkgs }: +{ + home.packages = with pkgs; [ + sdcv + ]; + home.sessionVariables = { + STARDICT_DATA_DIR = "$HOME/.local/share/stardict/dic"; + }; +} diff --git a/nixcfgs/users/js0ny/programs/shell.nix b/nixcfgs/users/js0ny/programs/shell.nix index ca672c5..ad5a33f 100644 --- a/nixcfgs/users/js0ny/programs/shell.nix +++ b/nixcfgs/users/js0ny/programs/shell.nix @@ -1,5 +1,4 @@ -{ pkgs, ... }: -let +{...}: let commonAliases = { v = "nvim"; g = "lazygit"; @@ -8,9 +7,10 @@ let ii = "open"; c = "code"; aic = "aichat -s"; + aicc = "aichat -c"; + nrs = "sudo nixos-rebuild switch --flake ~/.dotfiles/nixcfgs"; }; -in -{ +in { programs.fish = { enable = true; interactiveShellInit = "set fish_greeting"; @@ -29,5 +29,5 @@ in enable = true; shellAliases = commonAliases; }; - programs.zed-editor.extensions = [ "fish" ]; + programs.zed-editor.extensions = ["fish"]; } diff --git a/nixcfgs/users/js0ny/zephyrus.nix b/nixcfgs/users/js0ny/zephyrus.nix index 144e17c..fa92e45 100644 --- a/nixcfgs/users/js0ny/zephyrus.nix +++ b/nixcfgs/users/js0ny/zephyrus.nix @@ -4,20 +4,22 @@ nix-flatpak, plasma-manager, ... -}: let +}: +let my-catppuccin-kde = pkgs.catppuccin-kde.override { flavour = [ "mocha" "latte" ]; - accents = ["pink"]; - winDecStyles = ["classic"]; + accents = [ "pink" ]; + winDecStyles = [ "classic" ]; }; my-catppuccin-gtk = pkgs.catppuccin-gtk.override { - accents = ["pink"]; + accents = [ "pink" ]; variant = "mocha"; }; -in { +in +{ imports = [ ./default.nix ./packages/cli.nix @@ -33,6 +35,7 @@ in { ./programs/firefox.nix ./programs/distrobox.nix ./programs/mime.nix + ./programs/sdcv.nix ./programs/zed-editor.nix # ./programs/floorp.nix ../../modules/home/gnome-keyrings.nix @@ -55,6 +58,8 @@ in { my-catppuccin-gtk my-catppuccin-kde catppuccin-fcitx5 + freerdp + winboat ]; home.stateVersion = "25.05"; From 5f1729caf441402bfa0967635dfc0b61103c2161 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 20 Oct 2025 01:22:08 +0100 Subject: [PATCH 45/48] nix: Add goldendict-ng --- nixcfgs/flake.nix | 141 ++++++++++++------------ nixcfgs/modules/nixos/configuration.nix | 15 ++- nixcfgs/users/js0ny/packages/cli.nix | 2 + nixcfgs/users/js0ny/packages/gui.nix | 44 +++++++- nixcfgs/users/js0ny/programs/sdcv.nix | 9 -- nixcfgs/users/js0ny/zephyrus.nix | 1 - 6 files changed, 126 insertions(+), 86 deletions(-) delete mode 100644 nixcfgs/users/js0ny/programs/sdcv.nix diff --git a/nixcfgs/flake.nix b/nixcfgs/flake.nix index a4bffdf..8be3e55 100644 --- a/nixcfgs/flake.nix +++ b/nixcfgs/flake.nix @@ -27,79 +27,84 @@ }; }; - outputs = { - self, - nixpkgs, - nix-flatpak, - nix-darwin, - home-manager, - plasma-manager, - nur, - winboat, - caelestia-shell, - ... - } @ inputs: let - overlays = [ - nur.overlays.default - (final: prev: { - winboat = winboat.packages.x86_64-linux.winboat; - }) - ]; - forSystem = system: - import nixpkgs { - inherit system overlays; - config.allowUnfree = true; - }; - specialArgs = {inherit inputs;}; - nixosHosts = [ - "zp" - "zephyrus" - "nixvirt" - ]; - - mkNixosSystem = hostname: - nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - inherit specialArgs; - modules = [./hosts/${hostname}]; - }; - in { - # This will automatically generate nixOS config for `nixosHosts' - # Include the module ./hosts/${hostname} by default. - nixosConfigurations = nixpkgs.lib.genAttrs nixosHosts mkNixosSystem; - - darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { - system = "aarch64-darwin"; - inherit specialArgs; - modules = [ - ./hosts/zen + outputs = + { + self, + nixpkgs, + nix-flatpak, + nix-darwin, + home-manager, + plasma-manager, + nur, + winboat, + caelestia-shell, + ... + }@inputs: + let + overlays = [ + nur.overlays.default + (final: prev: { + winboat = winboat.packages.x86_64-linux.winboat; + }) + ]; + forSystem = + system: + import nixpkgs { + inherit system overlays; + config.allowUnfree = true; + }; + specialArgs = { inherit inputs; }; + nixosHosts = [ + "zp" + "zephyrus" + "nixvirt" ]; - }; - homeConfigurations = { - js0ny = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; + mkNixosSystem = + hostname: + nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + inherit specialArgs; + modules = [ ./hosts/${hostname} ]; + }; + in + { + # This will automatically generate nixOS config for `nixosHosts' + # Include the module ./hosts/${hostname} by default. + nixosConfigurations = nixpkgs.lib.genAttrs nixosHosts mkNixosSystem; + + darwinConfigurations."zen" = nix-darwin.lib.darwinSystem { + system = "aarch64-darwin"; + inherit specialArgs; modules = [ - ./users/js0ny + ./hosts/zen ]; }; - "js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny/zephyrus.nix - plasma-manager.homeModules.plasma-manager - nix-flatpak.homeManagerModules.nix-flatpak - ]; - }; - "js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration { - pkgs = forSystem "x86_64-linux"; - extraSpecialArgs = specialArgs; - modules = [ - ./users/js0ny/nixvirt.nix - ]; + + homeConfigurations = { + js0ny = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny + ]; + }; + "js0ny@zephyrus" = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny/zephyrus.nix + plasma-manager.homeModules.plasma-manager + nix-flatpak.homeManagerModules.nix-flatpak + ]; + }; + "js0ny@nixvirt" = home-manager.lib.homeManagerConfiguration { + pkgs = forSystem "x86_64-linux"; + extraSpecialArgs = specialArgs; + modules = [ + ./users/js0ny/nixvirt.nix + ]; + }; }; }; - }; } diff --git a/nixcfgs/modules/nixos/configuration.nix b/nixcfgs/modules/nixos/configuration.nix index 6b9112d..044460a 100644 --- a/nixcfgs/modules/nixos/configuration.nix +++ b/nixcfgs/modules/nixos/configuration.nix @@ -2,7 +2,8 @@ config, pkgs, ... -}: { +}: +{ security.pam.services.login.enableGnomeKeyring = true; # Use latest kernel. @@ -83,7 +84,10 @@ # (/run/current-system/configuration.nix). This is useful in case you # accidentally delete configuration.nix. # system.copySystemConfiguration = true; - nix.settings.experimental-features = ["nix-command" "flakes"]; + nix.settings.experimental-features = [ + "nix-command" + "flakes" + ]; # Enable touchpad support (enabled default in most desktopManager). services.libinput.enable = true; @@ -91,7 +95,12 @@ # Define a user account. Don't forget to set a password with ‘passwd’. users.users.js0ny = { isNormalUser = true; - extraGroups = ["wheel" "docker" "libvirtd" "dialout"]; # Enable ‘sudo’ for the user. + extraGroups = [ + "wheel" + "docker" + "libvirtd" + "dialout" + ]; # Enable ‘sudo’ for the user. packages = with pkgs; [ tree ]; diff --git a/nixcfgs/users/js0ny/packages/cli.nix b/nixcfgs/users/js0ny/packages/cli.nix index f7e149e..4520e1d 100644 --- a/nixcfgs/users/js0ny/packages/cli.nix +++ b/nixcfgs/users/js0ny/packages/cli.nix @@ -40,6 +40,7 @@ fish zoxide wakatime-cli + sdcv # Langs # lua luajit lua51Packages.luarocks @@ -51,5 +52,6 @@ nushell powershell powershell-editor-services + package-version-server ]; } diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index cd419f7..286d50b 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -1,6 +1,6 @@ -{pkgs, ...}: { - home.packages = with pkgs; - [ +{ pkgs, lib, ... }: +{ + home.packages = with pkgs; [ kitty ghostty alacritty @@ -12,10 +12,13 @@ pcloud telegram-desktop steam + # Use Wayland for Jetbrains (jetbrains.idea-ultimate.override { - vmopts = ''-Dawt.toolkit.name=WLToolkit'';}) + vmopts = ''-Dawt.toolkit.name=WLToolkit''; + }) (jetbrains.rider.override { - vmopts = ''-Dawt.toolkit.name=WLToolkit'';}) + vmopts = ''-Dawt.toolkit.name=WLToolkit''; + }) warp-terminal # clash-verge-rev haruna @@ -36,5 +39,36 @@ protonmail-bridge-gui mpv neovim-qt + goldendict-ng ]; + + xdg.desktopEntries = { + # Force wayland when running goldendict-ng + "io.github.xiaoyifang.goldendict_ng" = { + name = "GoldenDict-ng"; + genericName = "Multiformat Dictionary"; + comment = "A feature-rich dictionary lookup program"; + icon = "goldendict"; + type = "Application"; + terminal = false; + categories = [ + "Office" + "Dictionary" + "Education" + "Qt" + ]; + mimeType = [ + "x-scheme-handler/goldendict" + "x-scheme-handler/dict" + ]; + exec = "env GOLDENDICT_FORCE_WAYLAND=1 ${pkgs.goldendict-ng}/bin/goldendict %u"; + settings = { + "GenericName[zh_CN]" = "多格式字典"; + "Comment[zh_CN]" = "多功能字典查询软件"; + "Keywords" = "dict;dictionary"; + "Keywords[zh_CN]" = "dict;dictionary;字典;"; + "StartupWMClass" = "GoldenDict-ng"; + }; + }; + }; } diff --git a/nixcfgs/users/js0ny/programs/sdcv.nix b/nixcfgs/users/js0ny/programs/sdcv.nix deleted file mode 100644 index 90cf73b..0000000 --- a/nixcfgs/users/js0ny/programs/sdcv.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ pkgs }: -{ - home.packages = with pkgs; [ - sdcv - ]; - home.sessionVariables = { - STARDICT_DATA_DIR = "$HOME/.local/share/stardict/dic"; - }; -} diff --git a/nixcfgs/users/js0ny/zephyrus.nix b/nixcfgs/users/js0ny/zephyrus.nix index fa92e45..832855f 100644 --- a/nixcfgs/users/js0ny/zephyrus.nix +++ b/nixcfgs/users/js0ny/zephyrus.nix @@ -35,7 +35,6 @@ in ./programs/firefox.nix ./programs/distrobox.nix ./programs/mime.nix - ./programs/sdcv.nix ./programs/zed-editor.nix # ./programs/floorp.nix ../../modules/home/gnome-keyrings.nix From e3a02057240d2737b63bd0f6ea0d8d9580ac0129 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 20 Oct 2025 02:02:23 +0100 Subject: [PATCH 46/48] nix: rime-config --- nixcfgs/modules/home/programs/rime.nix | 21 ----------------- nixcfgs/users/js0ny/packages/gui.nix | 2 +- nixcfgs/users/js0ny/programs/rime.nix | 31 ++++++++++++++++++++++++++ nixcfgs/users/js0ny/zephyrus.nix | 1 + 4 files changed, 33 insertions(+), 22 deletions(-) delete mode 100644 nixcfgs/modules/home/programs/rime.nix create mode 100644 nixcfgs/users/js0ny/programs/rime.nix diff --git a/nixcfgs/modules/home/programs/rime.nix b/nixcfgs/modules/home/programs/rime.nix deleted file mode 100644 index 6302060..0000000 --- a/nixcfgs/modules/home/programs/rime.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ pkgs, ... }: - -{ - i18n.inputMethod = { - enable = true; - # enabled = "fcitx5"; dep. - # enableGtk2 = true; - # enableGtk3 = true; - type = "fcitx5"; - fcitx5 = { - waylandFrontend = true; - addons = with pkgs; [ - fcitx5-rime - kdePackages.fcitx5-configtool - kdePackages.fcitx5-qt - fcitx5-gtk - fcitx5-chinese-addons - ]; - }; - }; -} diff --git a/nixcfgs/users/js0ny/packages/gui.nix b/nixcfgs/users/js0ny/packages/gui.nix index 286d50b..ddf883d 100644 --- a/nixcfgs/users/js0ny/packages/gui.nix +++ b/nixcfgs/users/js0ny/packages/gui.nix @@ -1,4 +1,4 @@ -{ pkgs, lib, ... }: +{ pkgs, ... }: { home.packages = with pkgs; [ kitty diff --git a/nixcfgs/users/js0ny/programs/rime.nix b/nixcfgs/users/js0ny/programs/rime.nix new file mode 100644 index 0000000..ad8d66a --- /dev/null +++ b/nixcfgs/users/js0ny/programs/rime.nix @@ -0,0 +1,31 @@ +{ pkgs, ... }: + +let + version = "v13.1.3"; + rimeConfig = pkgs.fetchzip { + url = "https://github.com/amzxyz/rime_wanxiang/releases/download/${version}/rime-wanxiang-zrm-fuzhu.zip"; + sha256 = "sha256-UokSOfGCt7C8/F13BEyy02+rJCqyZcYBWrP/m/Me4D4="; + stripRoot = false; + }; + rimePath = if pkgs.stdenv.isDarwin then "Library/Rime" else ".local/share/fcitx5/rime"; +in +{ + i18n.inputMethod = { + enable = true; + type = "fcitx5"; + fcitx5 = { + waylandFrontend = true; + addons = with pkgs; [ + fcitx5-rime + kdePackages.fcitx5-configtool + kdePackages.fcitx5-qt + fcitx5-gtk + fcitx5-chinese-addons + ]; + }; + }; + home.file.${rimePath} = { + source = rimeConfig; + recursive = true; + }; +} diff --git a/nixcfgs/users/js0ny/zephyrus.nix b/nixcfgs/users/js0ny/zephyrus.nix index 832855f..81846c8 100644 --- a/nixcfgs/users/js0ny/zephyrus.nix +++ b/nixcfgs/users/js0ny/zephyrus.nix @@ -36,6 +36,7 @@ in ./programs/distrobox.nix ./programs/mime.nix ./programs/zed-editor.nix + ./programs/rime.nix # ./programs/floorp.nix ../../modules/home/gnome-keyrings.nix ../../modules/home/dev/c.nix From 52b70819bf68ea48565a54a8db26ea6b87189ce0 Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 20 Oct 2025 03:44:56 +0100 Subject: [PATCH 47/48] manage git with chezmoi --- .gitignore | 2 - home/.chezmoi.toml.tmpl | 17 +++++ home/.chezmoiignore.tmpl | 9 ++- home/dot_config/git/_gitconfig.shared.tmpl | 75 +++++++++++++++++++++ home/dot_config/git/config.tmpl | 1 + home/dot_config/ideavim/ideavimrc | 31 +++------ home/dot_config/mako/config | 2 + home/dot_gitconfig | 1 + nixcfgs/flake.lock | 62 ++++++++--------- nixcfgs/modules/home/dev/c.nix | 2 +- nixcfgs/modules/home/dev/go.nix | 9 +++ nixcfgs/modules/home/programs/winboat.nix | 8 +++ nixcfgs/users/js0ny/default.nix | 1 - nixcfgs/users/js0ny/nixvirt.nix | 4 +- nixcfgs/users/js0ny/packages/catppuccin.nix | 24 +++++++ nixcfgs/users/js0ny/packages/cli.nix | 2 - nixcfgs/users/js0ny/programs/distrobox.nix | 14 +++- nixcfgs/users/js0ny/programs/git.nix | 7 -- nixcfgs/users/js0ny/zephyrus.nix | 37 ++-------- 19 files changed, 204 insertions(+), 104 deletions(-) create mode 100644 home/.chezmoi.toml.tmpl create mode 100644 home/dot_config/git/_gitconfig.shared.tmpl create mode 100644 home/dot_config/git/config.tmpl create mode 100644 home/dot_gitconfig create mode 100644 nixcfgs/modules/home/dev/go.nix create mode 100644 nixcfgs/modules/home/programs/winboat.nix create mode 100644 nixcfgs/users/js0ny/packages/catppuccin.nix delete mode 100644 nixcfgs/users/js0ny/programs/git.nix diff --git a/.gitignore b/.gitignore index a5e6b50..8f2990d 100644 --- a/.gitignore +++ b/.gitignore @@ -32,8 +32,6 @@ tools/nushell/ .venv/ -gitconfig - # Lock files lazy-lock.json diff --git a/home/.chezmoi.toml.tmpl b/home/.chezmoi.toml.tmpl new file mode 100644 index 0000000..140a8b9 --- /dev/null +++ b/home/.chezmoi.toml.tmpl @@ -0,0 +1,17 @@ +{{/* https://github.com/twpayne/dotfiles/blob/master/home/.chezmoi.toml.tmpl */}} +{{- $headless := false -}} + +{{/* darwin hostname hack */}} +{{- $hostname := .chezmoi.hostname -}} +{{- if eq .chezmoi.os "darwin" -}} +{{- $hostname := output "scutil" "--get" "LocalHostName" | trim -}} +{{- end -}} + +sourceDir = "~/.dotfiles" + +{{ $email := promptStringOnce . "email" "What is your email address" -}} +{{ $username := promptStringOnce . "username" "What is your username" -}} + +[data] + email = {{ $email | quote }} + username = {{ $username | quote }} \ No newline at end of file diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl index eae36a7..18fe9a2 100644 --- a/home/.chezmoiignore.tmpl +++ b/home/.chezmoiignore.tmpl @@ -27,14 +27,17 @@ scripts {{ end }} {{ if eq .chezmoi.osRelease.id "nixos" }} .config/bash -.config/fcitx5 .config/bat .config/doom +.config/dunst +.config/fastfetch +.config/fcitx5 .config/fish .config/zsh .config/lsd .config/keyd .config/readline +.config/krunnerrc .bashrc {{ end }} {{ end }} @@ -47,3 +50,7 @@ Library .config/yabai .config/powershell {{ end }} + +{{ if ne .chezmoi.os "windows" }} +.gitconfig +{{ end }} diff --git a/home/dot_config/git/_gitconfig.shared.tmpl b/home/dot_config/git/_gitconfig.shared.tmpl new file mode 100644 index 0000000..aefb356 --- /dev/null +++ b/home/dot_config/git/_gitconfig.shared.tmpl @@ -0,0 +1,75 @@ +# $DOTFILES/common/gitconfig.example +# Date: 2024-12-22 +# Author: js0ny + +# Location: +# Windows: %USERPROFILE%\.gitconfig +# *nix: ~/.config/git/config +# Linking: (Note that this file is an example, only copy this then edit) +# cp $DOTFILES/common/gitconfig.example ~/.config/git/config +[user] + name = {{ .username }} + email = {{ .email }} +[alias] + cl = clone + clnh = clone --depth 1 # Clone with no history + cma = commit -am # Add and commit + logs = log --oneline --graph --decorate --all # Show logs + last = log -1 HEAD # Show last commit + undo = reset --hard HEAD # Undo the last commit +[core] + editor = nvim + pager = delta + # autocrlf: + # true: Keep crlf in Windows, lf in *nix + # input: Keep lf in all platforms + autocrlf = input + safecrlf = true + excludesfile = $XDG_CONFIG_HOME/git/ignore + quotePath = false # zh-CN: 解决中文路径问题 + eol = lf +[core] +{{- if eq .chezmoi.os "windows" }} + editor = vim +{{- else }} + editor = nvim +{{- end }} + pager = delta + autocrlf = input # Force End of Line in different platforms +[interactive] + diffFilter = delta --color-only +[delta] + navigate = true + dark = true + features = catppuccin-mocha # Colorscheme +[diff] + tool = nvimdiff +[difftool] + prompt = false +[difftool "nvimdiff"] + cmd = "nvim -d \"$LOCAL\" \"$REMOTE\"" +[merge] + tool = nvimdiff +[mergetool] + prompt = false +[mergetool "nvimdiff"] + cmd = "nvim -d \"$LOCAL\" \"$MERGED\" \"$REMOTE\"" +[color] + ui = auto +[pull] + ff = only +[init] + defaultBranch = master +[filter "lfs"] + clean = git-lfs clean -- %f + smudge = git-lfs smudge -- %f + process = git-lfs filter-process + required = true +# Force ssh +# Don't use ssh in GitHub since ssh-agent doesn't work in non-interactive environment +# While GitHub holds many plugins, it's better to use https +# This prevents from Neovide `publickey` error when installing plugins +# [url "git@github.com:"] +# insteadOf = https://github.com/ +[url "git@codeberg.org:"] + insteadOf = https://codeberg.org/ diff --git a/home/dot_config/git/config.tmpl b/home/dot_config/git/config.tmpl new file mode 100644 index 0000000..c26854a --- /dev/null +++ b/home/dot_config/git/config.tmpl @@ -0,0 +1 @@ +{{ includeTemplate "dot_config/git/_gitconfig.shared.tmpl" . }} diff --git a/home/dot_config/ideavim/ideavimrc b/home/dot_config/ideavim/ideavimrc index 04fb390..e011456 100644 --- a/home/dot_config/ideavim/ideavimrc +++ b/home/dot_config/ideavim/ideavimrc @@ -20,30 +20,17 @@ source ~/.local/share/intellimacs/which-key.vim let mapleader = " " " set to """ Colemak """ -noremap n j -noremap e k -noremap i l - -" Similar position to i -noremap l i -noremap L I -" ne[k]st -noremap k n -noremap K N -" [j]ump -noremap j e -noremap J E nnoremap H :bp -nnoremap I :bn -noremap N 5j -noremap E 5k +nnoremap L :bn +noremap J 5j +noremap K 5k vnoremap H ^ xnoremap H ^ onoremap H ^ -vnoremap I $ -xnoremap I $ -onoremap I $ +vnoremap L $ +xnoremap L $ +onoremap L $ @@ -221,9 +208,9 @@ nnoremap W :write nnoremap wh :action PrevSplitter nnoremap wi :action NextSplitter nnoremap wH :action SplitHorizontally -nnoremap wI :action SplitHorizontally -nnoremap wN :action SplitVertically -nnoremap wE :action SplitVertically +nnoremap wL :action SplitHorizontally +nnoremap wJ :action SplitVertically +nnoremap wK :action SplitVertically nnoremap w- :action SplitHorizontally nnoremap w| :action SplitVertically nnoremap w\ :action SplitVertically diff --git a/home/dot_config/mako/config b/home/dot_config/mako/config index 717e84a..792d35e 100644 --- a/home/dot_config/mako/config +++ b/home/dot_config/mako/config @@ -1,9 +1,11 @@ # Colors +default-timeout=5000 background-color=#1e1e2e text-color=#cdd6f4 border-color=#b4befe progress-color=over #313244 +max-visible=10 [urgency=high] border-color=#fab387 diff --git a/home/dot_gitconfig b/home/dot_gitconfig new file mode 100644 index 0000000..4729650 --- /dev/null +++ b/home/dot_gitconfig @@ -0,0 +1 @@ +{{ includeTemplate "dot_config/git/_gitconfig.shared.tmpl" . }} \ No newline at end of file diff --git a/nixcfgs/flake.lock b/nixcfgs/flake.lock index 406fc48..2a621bf 100644 --- a/nixcfgs/flake.lock +++ b/nixcfgs/flake.lock @@ -11,11 +11,11 @@ ] }, "locked": { - "lastModified": 1760147156, - "narHash": "sha256-ad+1gnp7Lm7jVSzqvGjMiwnA0P61dFZmp6HcRMXicWY=", + "lastModified": 1760637553, + "narHash": "sha256-I3fN6TsYfOtKFc1iVy/vXYR7Ck3JRTPncnQaZC6eLJ8=", "owner": "caelestia-dots", "repo": "cli", - "rev": "e9668d58f51e935094e50090b99301df8344f590", + "rev": "4593b823d730f46168d2eccd061467adb1754a57", "type": "github" }, "original": { @@ -33,11 +33,11 @@ "quickshell": "quickshell" }, "locked": { - "lastModified": 1760497394, - "narHash": "sha256-/4Hf/irgPh+gRQAcCNjXyXFcUGOrXMX8+OtOwbscbXk=", + "lastModified": 1760837100, + "narHash": "sha256-B4iL67pRKARIPnZGnlV19axKjjW+UfNP1wnlPbxUM6M=", "owner": "caelestia-dots", "repo": "shell", - "rev": "4cb1048fdd6fa281baa0efa36c8c82ddd2cc43a3", + "rev": "84343dde62f99590cd9e21694065cf70d96d9869", "type": "github" }, "original": { @@ -92,11 +92,11 @@ ] }, "locked": { - "lastModified": 1760130406, - "narHash": "sha256-GKMwBaFRw/C1p1VtjDz4DyhyzjKUWyi1K50bh8lgA2E=", + "lastModified": 1760887455, + "narHash": "sha256-/xU8iYZjolWbMUNBQF6af5zgGs73Qw21WMgz1tLs3Yw=", "owner": "nix-community", "repo": "home-manager", - "rev": "d305eece827a3fe317a2d70138f53feccaf890a1", + "rev": "aeabc1ac63e6ebb8ba4714c4abdfe0556f2de765", "type": "github" }, "original": { @@ -112,11 +112,11 @@ ] }, "locked": { - "lastModified": 1751313918, - "narHash": "sha256-HsJM3XLa43WpG+665aGEh8iS8AfEwOIQWk3Mke3e7nk=", + "lastModified": 1760721282, + "narHash": "sha256-aAHphQbU9t/b2RRy2Eb8oMv+I08isXv2KUGFAFn7nCo=", "owner": "nix-darwin", "repo": "nix-darwin", - "rev": "e04a388232d9a6ba56967ce5b53a8a6f713cdfcf", + "rev": "c3211fcd0c56c11ff110d346d4487b18f7365168", "type": "github" }, "original": { @@ -128,11 +128,11 @@ }, "nix-flatpak": { "locked": { - "lastModified": 1751276396, - "narHash": "sha256-oOYrnKStMsOXST+wKnzuSZ49h8Dr1Q3mIn2f5Kb5GAw=", + "lastModified": 1754777568, + "narHash": "sha256-0bBqT+3XncgF8F03RFAamw9vdf0VmaDoIJLTGkjfQZs=", "owner": "gmodena", "repo": "nix-flatpak", - "rev": "59adb9ad1cbd915494fc35cd0e0a9d582ca9de74", + "rev": "62f636b87ef6050760a8cb325cadb90674d1e23e", "type": "github" }, "original": { @@ -143,11 +143,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1754182383, - "narHash": "sha256-hON5G3ENyUGUpqImXT+Ag7TWbBsfthwqxMcAw8EiKw8=", + "lastModified": 1760872779, + "narHash": "sha256-c5C907Raf9eY8f1NUXYeju9aUDlm227s/V0OptEbypA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e960e6e1dc689e2b5fe9e3ee824fc12860d9f27c", + "rev": "63bdb5d90fa2fa11c42f9716ad1e23565613b07c", "type": "github" }, "original": { @@ -159,11 +159,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1760038930, - "narHash": "sha256-Oncbh0UmHjSlxO7ErQDM3KM0A5/Znfofj2BSzlHLeVw=", + "lastModified": 1760878510, + "narHash": "sha256-K5Osef2qexezUfs0alLvZ7nQFTGS9DL2oTVsIXsqLgs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0b4defa2584313f3b781240b29d61f6f9f7e0df3", + "rev": "5e2a59a5b1a82f89f2c7e598302a9cacebb72a67", "type": "github" }, "original": { @@ -195,11 +195,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1760244049, - "narHash": "sha256-NTF95tGxmhrBQiREvxLK928ovkzJloEsuHLhwN2GDCY=", + "lastModified": 1760925195, + "narHash": "sha256-IXpoYD3wXa4oOjf/01e8GT0NZa4wCZnh1GpgfByyCvY=", "owner": "nix-community", "repo": "NUR", - "rev": "5fbc6ffa12c03d608618fc1986cf9fdab44fc5d5", + "rev": "107b1714e76f67a3ae65a966c2e9937eacad5467", "type": "github" }, "original": { @@ -239,11 +239,11 @@ ] }, "locked": { - "lastModified": 1760228179, - "narHash": "sha256-4Z6k7lv3Zcgk3K+4h60LpqB9wCkR+utkYERU735U068=", + "lastModified": 1760822546, + "narHash": "sha256-cy3wJQQzQbZ/EYUfTDuMiP/haPOjkqGgWOPPl7K9oiM=", "ref": "refs/heads/master", - "rev": "c9d3ffb6043c5bf3f3009202bad7e0e5132c4a25", - "revCount": 693, + "rev": "3e2ce40b18af943f9ba370ed73565e9f487663ef", + "revCount": 697, "type": "git", "url": "https://git.outfoxxed.me/outfoxxed/quickshell" }, @@ -285,11 +285,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1760625716, - "narHash": "sha256-Lf8kR10j/VDlNBfLJENA7jDUPOYfAd0ZUqPwyMncO2M=", + "lastModified": 1760827883, + "narHash": "sha256-6Cvg9YE8wqpkdjnw0HwJH+HOWY9inO/slXf48w+84RM=", "owner": "TibixDev", "repo": "winboat", - "rev": "dab50fb60487f7d47d82c6857c7be9582314c481", + "rev": "a1b1105a30b1f5210ce29077e19f21b53083469a", "type": "github" }, "original": { diff --git a/nixcfgs/modules/home/dev/c.nix b/nixcfgs/modules/home/dev/c.nix index 2628cf4..2deac84 100644 --- a/nixcfgs/modules/home/dev/c.nix +++ b/nixcfgs/modules/home/dev/c.nix @@ -1,6 +1,6 @@ {pkgs, ...}: { home.packages = with pkgs; [ gcc - llvmPackages_21.clang-tools + llvmPackages_21.clang-tools # clangd ]; } diff --git a/nixcfgs/modules/home/dev/go.nix b/nixcfgs/modules/home/dev/go.nix new file mode 100644 index 0000000..df36afa --- /dev/null +++ b/nixcfgs/modules/home/dev/go.nix @@ -0,0 +1,9 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + go + gopls + ]; + programs.vscode.profiles.default.extensions = with pkgs.vscode-extensions; [ + golang.go + ]; +} diff --git a/nixcfgs/modules/home/programs/winboat.nix b/nixcfgs/modules/home/programs/winboat.nix new file mode 100644 index 0000000..8903db6 --- /dev/null +++ b/nixcfgs/modules/home/programs/winboat.nix @@ -0,0 +1,8 @@ +{ pkgs, ... }: +{ + + home.packages = with pkgs; [ + freerdp + winboat + ]; +} diff --git a/nixcfgs/users/js0ny/default.nix b/nixcfgs/users/js0ny/default.nix index 2d9127e..8ff6193 100644 --- a/nixcfgs/users/js0ny/default.nix +++ b/nixcfgs/users/js0ny/default.nix @@ -7,7 +7,6 @@ }: { imports = [ - ./programs/git.nix ../../modules/home/programs/fzf.nix ../../modules/home/programs/lsd.nix ../../modules/home/programs/zoxide.nix diff --git a/nixcfgs/users/js0ny/nixvirt.nix b/nixcfgs/users/js0ny/nixvirt.nix index 51da47d..d1cf93c 100644 --- a/nixcfgs/users/js0ny/nixvirt.nix +++ b/nixcfgs/users/js0ny/nixvirt.nix @@ -4,13 +4,11 @@ nix-flatpak, plasma-manager, ... -}: -{ +}: { imports = [ ./default.nix ./programs/gnome.nix ./programs/shell.nix - ./programs/git.nix ./programs/firefox.nix # ./programs/floorp.nix ../../modules/home/gnome-keyrings.nix diff --git a/nixcfgs/users/js0ny/packages/catppuccin.nix b/nixcfgs/users/js0ny/packages/catppuccin.nix new file mode 100644 index 0000000..67bee4e --- /dev/null +++ b/nixcfgs/users/js0ny/packages/catppuccin.nix @@ -0,0 +1,24 @@ +{ pkgs, ... }: +let + my-catppuccin-kde = pkgs.catppuccin-kde.override { + flavour = [ + "mocha" + "latte" + ]; + accents = [ "pink" ]; + winDecStyles = [ "classic" ]; + }; + my-catppuccin-gtk = pkgs.catppuccin-gtk.override { + accents = [ "pink" ]; + variant = "mocha"; + }; +in +{ + + home.packages = with pkgs; [ + catppuccin + my-catppuccin-gtk + my-catppuccin-kde + catppuccin-fcitx5 + ]; +} diff --git a/nixcfgs/users/js0ny/packages/cli.nix b/nixcfgs/users/js0ny/packages/cli.nix index 4520e1d..df68a1c 100644 --- a/nixcfgs/users/js0ny/packages/cli.nix +++ b/nixcfgs/users/js0ny/packages/cli.nix @@ -45,8 +45,6 @@ # lua luajit lua51Packages.luarocks ghostscript - mermaid-cli - tectonic # Misc ta-lib ddgr protonvpn-cli markdown-oxide nushell diff --git a/nixcfgs/users/js0ny/programs/distrobox.nix b/nixcfgs/users/js0ny/programs/distrobox.nix index a8396e4..a12dea2 100644 --- a/nixcfgs/users/js0ny/programs/distrobox.nix +++ b/nixcfgs/users/js0ny/programs/distrobox.nix @@ -1,6 +1,18 @@ -{ ... }: +{ config, ... }: { programs.distrobox = { enable = true; + containers = { + Xilinx = { + # Container to run Xilinx Vivado Toolchain 2022.2 + image = "ubuntu:22.04"; + additional_packages = "libncurses5-dev libtinfo5 ncurses-compat-libs lsb-release graphviz openssl xscreensaver gcc c++ xvfb xorg-dev libwebkit2gtk-4.0-37 libgtk-3-dev libgtk-4-dev libgvfsdbus gvfs libwayland-client0 libwayland-cursor0"; + home = "${config.home.homeDirectory}/.local/distrobox/Xilinx"; + init_hooks = [ + "sudo chown $USER:$USER /opt" + "sudo mkdir -p /opt/Xilinx" + ]; + }; + }; }; } diff --git a/nixcfgs/users/js0ny/programs/git.nix b/nixcfgs/users/js0ny/programs/git.nix deleted file mode 100644 index b8185cc..0000000 --- a/nixcfgs/users/js0ny/programs/git.nix +++ /dev/null @@ -1,7 +0,0 @@ -{pkgs, ...}: { - programs.git = { - enable = true; - userName = "js0ny"; - userEmail = "contact@js0ny.net"; - }; -} diff --git a/nixcfgs/users/js0ny/zephyrus.nix b/nixcfgs/users/js0ny/zephyrus.nix index 81846c8..fabb2c4 100644 --- a/nixcfgs/users/js0ny/zephyrus.nix +++ b/nixcfgs/users/js0ny/zephyrus.nix @@ -1,65 +1,36 @@ # ~/.config/nixcfgs/users/js0ny/default.nix -{ - pkgs, - nix-flatpak, - plasma-manager, - ... -}: -let - my-catppuccin-kde = pkgs.catppuccin-kde.override { - flavour = [ - "mocha" - "latte" - ]; - accents = [ "pink" ]; - winDecStyles = [ "classic" ]; - }; - my-catppuccin-gtk = pkgs.catppuccin-gtk.override { - accents = [ "pink" ]; - variant = "mocha"; - }; -in -{ +{...}: { imports = [ ./default.nix ./packages/cli.nix ./packages/gui.nix ./packages/flatpak.nix ./packages/fonts.nix + ./packages/catppuccin.nix ./programs/chromium.nix ./programs/gnome.nix ./programs/plasma.nix ./programs/shell.nix ./programs/vscode.nix - ./programs/git.nix ./programs/firefox.nix ./programs/distrobox.nix ./programs/mime.nix ./programs/zed-editor.nix ./programs/rime.nix - # ./programs/floorp.nix ../../modules/home/gnome-keyrings.nix ../../modules/home/dev/c.nix + ../../modules/home/dev/go.nix ../../modules/home/dev/java.nix ../../modules/home/dev/lua.nix ../../modules/home/dev/nix.nix ../../modules/home/dev/python.nix ../../modules/home/programs/eza.nix + ../../modules/home/programs/winboat.nix ../../modules/home/programs/fzf.nix ../../modules/home/programs/lsd.nix ../../modules/home/programs/nvim.nix ../../modules/home/programs/starship.nix ../../modules/home/programs/zoxide.nix - # ./flatpak.nix - ]; - - home.packages = with pkgs; [ - catppuccin - my-catppuccin-gtk - my-catppuccin-kde - catppuccin-fcitx5 - freerdp - winboat ]; home.stateVersion = "25.05"; From c24adf35d4bbe9320204b8d4abf53fec72e3d6cd Mon Sep 17 00:00:00 2001 From: js0ny Date: Mon, 20 Oct 2025 03:58:34 +0100 Subject: [PATCH 48/48] chezmoi: windows migration dir --- home/.chezmoiignore.tmpl | 5 + .../Appdata/Roaming}/komorebi/komorebi.ahk | 0 .../Roaming}/komorebi/komorebi.bar.json | 0 .../Appdata/Roaming}/komorebi/komorebi.json | 0 .../user/symlink-wayland-socket.service | 1 + home/dot_config/zsh/dot_zshrc | 2 +- .../wsl => home/dot_config/zsh}/winterop.zsh | 0 .../win/glzr => home/dot_glzr}/.gitignore | 0 .../dot_glzr}/glazewm/config.yaml | 0 .../win/glzr => home/dot_glzr}/readme.md | 0 .../dot_glzr}/zebar/minimal/bar.zebar.json | 0 .../dot_glzr}/zebar/minimal/index.html | 0 .../dot_glzr}/zebar/minimal/scripts.jsx | 0 .../dot_glzr}/zebar/minimal/styles.css | 0 .../dot_glzr}/zebar/normalize.css | 0 .../dot_glzr}/zebar/settings.json | 0 platforms/win/wslconfig => home/dot_wslconfig | 0 .../win/wslgconfig => home/dot_wslgconfig | 0 {tools => misc}/KMonad/linux.kbd | 0 {tools => misc}/KMonad/windows.kbd | 0 .../win/ahk => misc/autohotkey}/Caps.ahk | 0 .../win/ahk => misc/autohotkey}/Tab.ahk | 0 .../win/ahk => misc/autohotkey}/bin/Caps.exe | Bin .../ahk => misc/autohotkey}/bin/colemak.exe | Bin .../win/ahk => misc/autohotkey}/colemak.ahk | 0 .../win/ahk => misc/autohotkey}/main.ahk | 0 .../win/ahk => misc/autohotkey}/spcl.ahk | 0 {tools => misc}/browser/surfingkeys.js | 2080 ++++++++--------- {tools => misc}/mac/etc/pam.d/sudo | 0 {tools => misc}/qmk/keychron_k3_pro.c | 0 {tools => misc}/thunderbird/tbkeys.json | 0 .../vscode/extensions/vspacecode.jsonc | 0 {tools => misc}/vscode/hsnips/latex.hsnips | 2074 ++++++++-------- {tools => misc}/vscode/hsnips/markdown.hsnips | 2018 ++++++++-------- {tools => misc}/vscode/hsnips/typst.hsnips | 264 +-- .../vscode/keybindings-macos.jsonc | 0 .../vscode/keybindings-windows-linux.jsonc | 0 {tools => misc}/vscode/vscode.former.vimrc | 0 {tools => misc}/vscode/vscode.vimrc | 158 +- .../windows}/Microsoft.PowerShell_profile.ps1 | 0 .../windows}/SumatraPDF-shortcuts.txt | 0 .../win => misc/windows}/fastfetch.jsonc | 0 {platforms/win => misc/windows}/neovide.toml | 36 +- {platforms/win => misc/windows}/readme.md | 162 +- .../win => misc/windows}/start/KMonad.ps1 | 0 {platforms/win => misc/windows}/vsvimrc | 0 platforms/win/WindowsTerminal.json | 369 --- platforms/wsl/.bashrc | 16 - platforms/wsl/zshrc | 9 - {platforms/win/cmd => scripts}/dark-mode.bat | 0 tools/keyd/default.conf | 49 - 51 files changed, 3403 insertions(+), 3840 deletions(-) rename {platforms/win => home/Appdata/Roaming}/komorebi/komorebi.ahk (100%) rename {platforms/win => home/Appdata/Roaming}/komorebi/komorebi.bar.json (100%) rename {platforms/win => home/Appdata/Roaming}/komorebi/komorebi.json (100%) rename {platforms/wsl => home/dot_config}/systemd/user/symlink-wayland-socket.service (96%) rename {platforms/wsl => home/dot_config/zsh}/winterop.zsh (100%) rename {platforms/win/glzr => home/dot_glzr}/.gitignore (100%) rename {platforms/win/glzr => home/dot_glzr}/glazewm/config.yaml (100%) rename {platforms/win/glzr => home/dot_glzr}/readme.md (100%) rename {platforms/win/glzr => home/dot_glzr}/zebar/minimal/bar.zebar.json (100%) rename {platforms/win/glzr => home/dot_glzr}/zebar/minimal/index.html (100%) rename {platforms/win/glzr => home/dot_glzr}/zebar/minimal/scripts.jsx (100%) rename {platforms/win/glzr => home/dot_glzr}/zebar/minimal/styles.css (100%) rename {platforms/win/glzr => home/dot_glzr}/zebar/normalize.css (100%) rename {platforms/win/glzr => home/dot_glzr}/zebar/settings.json (100%) rename platforms/win/wslconfig => home/dot_wslconfig (100%) rename platforms/win/wslgconfig => home/dot_wslgconfig (100%) rename {tools => misc}/KMonad/linux.kbd (100%) rename {tools => misc}/KMonad/windows.kbd (100%) rename {platforms/win/ahk => misc/autohotkey}/Caps.ahk (100%) rename {platforms/win/ahk => misc/autohotkey}/Tab.ahk (100%) rename {platforms/win/ahk => misc/autohotkey}/bin/Caps.exe (100%) rename {platforms/win/ahk => misc/autohotkey}/bin/colemak.exe (100%) rename {platforms/win/ahk => misc/autohotkey}/colemak.ahk (100%) rename {platforms/win/ahk => misc/autohotkey}/main.ahk (100%) rename {platforms/win/ahk => misc/autohotkey}/spcl.ahk (100%) rename {tools => misc}/browser/surfingkeys.js (95%) rename {tools => misc}/mac/etc/pam.d/sudo (100%) rename {tools => misc}/qmk/keychron_k3_pro.c (100%) rename {tools => misc}/thunderbird/tbkeys.json (100%) rename {tools => misc}/vscode/extensions/vspacecode.jsonc (100%) rename {tools => misc}/vscode/hsnips/latex.hsnips (95%) rename {tools => misc}/vscode/hsnips/markdown.hsnips (95%) rename {tools => misc}/vscode/hsnips/typst.hsnips (96%) rename {tools => misc}/vscode/keybindings-macos.jsonc (100%) rename {tools => misc}/vscode/keybindings-windows-linux.jsonc (100%) rename {tools => misc}/vscode/vscode.former.vimrc (100%) rename {tools => misc}/vscode/vscode.vimrc (96%) rename {platforms/win => misc/windows}/Microsoft.PowerShell_profile.ps1 (100%) rename {platforms/win => misc/windows}/SumatraPDF-shortcuts.txt (100%) rename {platforms/win => misc/windows}/fastfetch.jsonc (100%) rename {platforms/win => misc/windows}/neovide.toml (94%) rename {platforms/win => misc/windows}/readme.md (97%) rename {platforms/win => misc/windows}/start/KMonad.ps1 (100%) rename {platforms/win => misc/windows}/vsvimrc (100%) delete mode 100644 platforms/win/WindowsTerminal.json delete mode 100644 platforms/wsl/.bashrc delete mode 100644 platforms/wsl/zshrc rename {platforms/win/cmd => scripts}/dark-mode.bat (100%) delete mode 100644 tools/keyd/default.conf diff --git a/home/.chezmoiignore.tmpl b/home/.chezmoiignore.tmpl index 18fe9a2..49898d6 100644 --- a/home/.chezmoiignore.tmpl +++ b/home/.chezmoiignore.tmpl @@ -19,6 +19,7 @@ scripts .config/systemd .config/user-dirs.dirs .config/user-dirs.locale +.local/share/kio/ {{ end }} {{ if eq .chezmoi.os "linux" }} @@ -53,4 +54,8 @@ Library {{ if ne .chezmoi.os "windows" }} .gitconfig +.glzr +.wslconfig +.wslgconfig +Appdata/ {{ end }} diff --git a/platforms/win/komorebi/komorebi.ahk b/home/Appdata/Roaming/komorebi/komorebi.ahk similarity index 100% rename from platforms/win/komorebi/komorebi.ahk rename to home/Appdata/Roaming/komorebi/komorebi.ahk diff --git a/platforms/win/komorebi/komorebi.bar.json b/home/Appdata/Roaming/komorebi/komorebi.bar.json similarity index 100% rename from platforms/win/komorebi/komorebi.bar.json rename to home/Appdata/Roaming/komorebi/komorebi.bar.json diff --git a/platforms/win/komorebi/komorebi.json b/home/Appdata/Roaming/komorebi/komorebi.json similarity index 100% rename from platforms/win/komorebi/komorebi.json rename to home/Appdata/Roaming/komorebi/komorebi.json diff --git a/platforms/wsl/systemd/user/symlink-wayland-socket.service b/home/dot_config/systemd/user/symlink-wayland-socket.service similarity index 96% rename from platforms/wsl/systemd/user/symlink-wayland-socket.service rename to home/dot_config/systemd/user/symlink-wayland-socket.service index fc0c8a2..03821e3 100644 --- a/platforms/wsl/systemd/user/symlink-wayland-socket.service +++ b/home/dot_config/systemd/user/symlink-wayland-socket.service @@ -1,3 +1,4 @@ +# NOTE: FOR WSL ONLY # https://github.com/microsoft/WSL/issues/11261 # ~/.config/systemd/user/symlink-wayland-socket.service # Usage: diff --git a/home/dot_config/zsh/dot_zshrc b/home/dot_config/zsh/dot_zshrc index c004101..e4996b3 100644 --- a/home/dot_config/zsh/dot_zshrc +++ b/home/dot_config/zsh/dot_zshrc @@ -16,7 +16,7 @@ case "$(uname)" in if grep -q Microsoft /proc/version || [[ -n "$WSL_DISTRO_NAME" ]]; then # WSL-specific configuration export IS_WSL=true - source $DOTFILES/platforms/wsl/winterop.zsh + source $DOTFILES/home/dot_config/zsh/winterop.zsh else # Native Linux configuration if [ -n "$WAYLAND_DISPLAY" ]; then diff --git a/platforms/wsl/winterop.zsh b/home/dot_config/zsh/winterop.zsh similarity index 100% rename from platforms/wsl/winterop.zsh rename to home/dot_config/zsh/winterop.zsh diff --git a/platforms/win/glzr/.gitignore b/home/dot_glzr/.gitignore similarity index 100% rename from platforms/win/glzr/.gitignore rename to home/dot_glzr/.gitignore diff --git a/platforms/win/glzr/glazewm/config.yaml b/home/dot_glzr/glazewm/config.yaml similarity index 100% rename from platforms/win/glzr/glazewm/config.yaml rename to home/dot_glzr/glazewm/config.yaml diff --git a/platforms/win/glzr/readme.md b/home/dot_glzr/readme.md similarity index 100% rename from platforms/win/glzr/readme.md rename to home/dot_glzr/readme.md diff --git a/platforms/win/glzr/zebar/minimal/bar.zebar.json b/home/dot_glzr/zebar/minimal/bar.zebar.json similarity index 100% rename from platforms/win/glzr/zebar/minimal/bar.zebar.json rename to home/dot_glzr/zebar/minimal/bar.zebar.json diff --git a/platforms/win/glzr/zebar/minimal/index.html b/home/dot_glzr/zebar/minimal/index.html similarity index 100% rename from platforms/win/glzr/zebar/minimal/index.html rename to home/dot_glzr/zebar/minimal/index.html diff --git a/platforms/win/glzr/zebar/minimal/scripts.jsx b/home/dot_glzr/zebar/minimal/scripts.jsx similarity index 100% rename from platforms/win/glzr/zebar/minimal/scripts.jsx rename to home/dot_glzr/zebar/minimal/scripts.jsx diff --git a/platforms/win/glzr/zebar/minimal/styles.css b/home/dot_glzr/zebar/minimal/styles.css similarity index 100% rename from platforms/win/glzr/zebar/minimal/styles.css rename to home/dot_glzr/zebar/minimal/styles.css diff --git a/platforms/win/glzr/zebar/normalize.css b/home/dot_glzr/zebar/normalize.css similarity index 100% rename from platforms/win/glzr/zebar/normalize.css rename to home/dot_glzr/zebar/normalize.css diff --git a/platforms/win/glzr/zebar/settings.json b/home/dot_glzr/zebar/settings.json similarity index 100% rename from platforms/win/glzr/zebar/settings.json rename to home/dot_glzr/zebar/settings.json diff --git a/platforms/win/wslconfig b/home/dot_wslconfig similarity index 100% rename from platforms/win/wslconfig rename to home/dot_wslconfig diff --git a/platforms/win/wslgconfig b/home/dot_wslgconfig similarity index 100% rename from platforms/win/wslgconfig rename to home/dot_wslgconfig diff --git a/tools/KMonad/linux.kbd b/misc/KMonad/linux.kbd similarity index 100% rename from tools/KMonad/linux.kbd rename to misc/KMonad/linux.kbd diff --git a/tools/KMonad/windows.kbd b/misc/KMonad/windows.kbd similarity index 100% rename from tools/KMonad/windows.kbd rename to misc/KMonad/windows.kbd diff --git a/platforms/win/ahk/Caps.ahk b/misc/autohotkey/Caps.ahk similarity index 100% rename from platforms/win/ahk/Caps.ahk rename to misc/autohotkey/Caps.ahk diff --git a/platforms/win/ahk/Tab.ahk b/misc/autohotkey/Tab.ahk similarity index 100% rename from platforms/win/ahk/Tab.ahk rename to misc/autohotkey/Tab.ahk diff --git a/platforms/win/ahk/bin/Caps.exe b/misc/autohotkey/bin/Caps.exe similarity index 100% rename from platforms/win/ahk/bin/Caps.exe rename to misc/autohotkey/bin/Caps.exe diff --git a/platforms/win/ahk/bin/colemak.exe b/misc/autohotkey/bin/colemak.exe similarity index 100% rename from platforms/win/ahk/bin/colemak.exe rename to misc/autohotkey/bin/colemak.exe diff --git a/platforms/win/ahk/colemak.ahk b/misc/autohotkey/colemak.ahk similarity index 100% rename from platforms/win/ahk/colemak.ahk rename to misc/autohotkey/colemak.ahk diff --git a/platforms/win/ahk/main.ahk b/misc/autohotkey/main.ahk similarity index 100% rename from platforms/win/ahk/main.ahk rename to misc/autohotkey/main.ahk diff --git a/platforms/win/ahk/spcl.ahk b/misc/autohotkey/spcl.ahk similarity index 100% rename from platforms/win/ahk/spcl.ahk rename to misc/autohotkey/spcl.ahk diff --git a/tools/browser/surfingkeys.js b/misc/browser/surfingkeys.js similarity index 95% rename from tools/browser/surfingkeys.js rename to misc/browser/surfingkeys.js index b10cbfa..4f72541 100644 --- a/tools/browser/surfingkeys.js +++ b/misc/browser/surfingkeys.js @@ -1,1040 +1,1040 @@ -// vim:foldmethod=marker:foldmarker=#region,#endregion:foldlevel=0 -// Paste this into surfingkeys advanced settings -// or use: -// Load settings from: https://raw.githubusercontent.com/js0ny/dotfiles/refs/heads/master/tools/browser/surfingkeys.js -// Browse to Extension > Surfingkeys > Allow access to file URLs to enable local file access -// Windows: file:///C:/Users/username/.dotfiles/tools/browser/surfingkeys.js -// Linux: file:///home/username/.dotfiles/tools/browser/surfingkeys.js -// macOS: file:///Users/username/.dotfiles/tools/browser/surfingkeys.js - -// #region Example -/** Examples - -// an example to create a new mapping `ctrl-y` -api.mapkey('', 'Show me the money', function() { - Front.showPopup('a well-known phrase uttered by characters in the 1996 film Jerry Maguire (Escape to close).'); -}); - -// an example to replace `T` with `gt`, click `Default mappings` to see how `T` works. -api.map('gt', 'T'); - - -// an example to remove mapkey `Ctrl-i` -api.unmap(''); - -*/ -// #endregion - -// #region Settings -settings.language = "zh-CN"; -settings.showModeStatus = false; -// #endregion - -// #region Helper -// import the API so that no need to use `api` prefix -const { - aceVimMap, - addVimMapKey, - mapkey, - imap, - imapkey, - getClickableElements, - vmapkey, - map, - unmap, - cmap, - addSearchAlias, - removeSearchAlias, - tabOpenLink, - readText, - Clipboard, - Front, - Hints, - Visual, - RUNTIME, -} = api; -// Keymap, reference https://github.com/texiwustion/colemak_config_for_surfingkeys/tree/main -const forward = { - add: function (key) { - // 转发即将被 unmap 的键 - return api.map(`for${key}`, key); - }, - cancel: function (key) { - // 删除转发生成的键 - api.unmap(`for${key}`); - api.unmap(key); - }, - use: function (key) { - return `for${key}`; - }, -}; - -const colemak = { - forward: function (key) { - // 转发即将被 unmap 的键 - api.map(key, `col${key}`); - api.unmap(`col${key}`); - }, - use: function (key) { - return `col${key}`; - }, - map: function (a, b) { - api.map(colemak.use(a), forward.use(b)); - }, -}; - -const vForward = { - add: function (key) { - // 转发即将被 unmap 的键 - return api.vmap(`vfor${key}`, key); - }, - cancel: function (key) { - // 删除转发生成的键 - api.vunmap(`vfor${key}`); - api.vunmap(key); - }, - use: function (key) { - return `vfor${key}`; - }, -}; - -const vColemak = { - forward: function (key) { - // 转发即将被 unmap 的键 - api.vmap(key, `vcol${key}`); - api.vunmap(`vcol${key}`); - }, - use: function (key) { - return `vcol${key}`; - }, - map: function (a, b) { - api.vmap(vColemak.use(a), vForward.use(b)); - }, -}; - -const forwardFactory = { - push: function (mapLists) { - // forward original keys - for (const key in mapLists) { - // `const` better than `let` - forward.add(mapLists[key]); - } - }, - map: function (mapLists) { - for (const key in mapLists) { - colemak.map(key, mapLists[key]); - } - }, - pull: function (mapLists) { - for (const key in mapLists) { - forward.cancel(mapLists[key]); - } - for (const key in mapLists) { - colemak.forward(key); - } - }, -}; -const vForwardFactory = { - push: function (mapLists) { - // forward original keys - for (const key in mapLists) { - vForward.add(mapLists[key]); - } - }, - map: function (mapLists) { - for (const key in mapLists) { - vColemak.map(key, mapLists[key]); - } - }, - pull: function (mapLists) { - for (const key in mapLists) { - vForward.cancel(mapLists[key]); - } - for (const key in mapLists) { - vColemak.forward(key); - } - }, -}; -// TODO: Add more search completion source (with json) -const parseSearchResponse = function (response) { - const res = JSON.parse(response.text); - return res.map((r) => r.phrase); -}; - -const _addSearchAlias = function ( - alias, - name, - searchUrl, - acUrl = "https://duckduckgo.com/ac/?q=", - searchPrefix = "s", - parseResponse = parseSearchResponse, -) { - api.addSearchAlias( - alias, - name, - searchUrl, - searchPrefix, - acUrl, - parseResponse, - ); -}; -// Shortcut for querySelector -const q = (selector) => document.querySelector(selector); -const qs = (selector) => document.querySelectorAll(selector); -// #endregion - -// #region Keymap -// Normal Mode Keymap -const mapLists = { - /// scroll page - // Arrow - n: "j", - e: "k", - i: "l", - // l <-> i - l: "gi", // Focus on first input box by default - L: "I", - // k <-> n - k: "n", - K: "N", - // j <-> e - j: "e", - // PrevTab < H - I > NextTab - H: "E", - I: "R", - // E,N -> Up/Down HalfPage - N: "d", - E: "e", - // F -> Open Link in New Tab - F: "af", - // oH -> Tab History - oH: "H", - // gh/gi -> Prev/Next History - gh: "S", - gi: "D", - gl: "i", // Use `gl` to search and focus on input box - // t -> Open Link in New Tab - t: "gf", - // 缩放 - zu: "zi", - zo: "ze", - zz: "zr", -}; -// Visual Mode Keymap -const vMapLists = { - n: "j", - N: "J", - e: "k", - E: "K", - i: "l", - I: "L", - j: "e", - J: "E", - k: "n", - K: "N", -}; - -forwardFactory.push(mapLists); -forwardFactory.map(mapLists); - -vForwardFactory.push(vMapLists); -vForwardFactory.map(vMapLists); - -// All other unmapped keys should be defined here -// TODO: Add more mouse click keymap -api.unmap("gi"); // conflict with `gi` in `mapLists` -api.unmap("C"); // Use `F` instead (Open Link in New Tab) -api.map("g/", "gU"); // Goto Root Domain -// TODO: Add SPC keymap as leader (maybe change `,` to `SPC`) -api.unmap(""); // Leader Key - -forwardFactory.pull(mapLists); -vForwardFactory.pull(vMapLists); - -api.map("gH", "g/"); -// #endregion - -// #region Omnibar NOTE: Dosn't work -// api.cmap("", ""); -// api.cmap("", ""); -// api.cmap("", ""); -// api.cmap("", ""); -// api.cmap("", ""); -// api.cmap("", ""); -// api.cmap("", ""); -// api.cmap("", ""); -// #endregion - -// #region Search Alias - -const removedSearchAlias = [ - "b", // Baidu - "d", // DuckDuckGo - "e", // Wikipedia - "g", // Google - "s", // StackOverflow - "w", // Bing - "y", // YouTube -]; - -removedSearchAlias.forEach((alias) => removeSearchAlias(alias)); - -const searchAliases = [ - ["a2", "AlternativeTo", "https://alternativeto.net/browse/search/?q="], - ["ap", "APT", "https://packages.ubuntu.com/search?keywords="], - ["au", "AUR", "https://aur.archlinux.org/packages?K="], - ["aw", "ArchWiki", "https://wiki.archlinux.org/index.php?search="], - ["bd", "Baidu", "https://www.baidu.com/s?wd="], - ["bi", "Bing", "https://www.bing.com/search?q="], - ["bl", "Bilibili", "https://search.bilibili.com/all?keyword="], - ["br", "HomeBrew", "https://duckduckgo.com/?q=!brew "], - ["cg", "ChatGPT", "https://chat.openai.com/?q="], - ["cr", "Chrome Web Store", "https://chrome.google.com/webstore/search/"], - ["dd", "DuckDuckGo", "https://duckduckgo.com/?q="], - ["de", "Thesaurus", "https://www.onelook.com/?w="], - ["eb", "ebay", "https://www.ebay.co.uk/sch/i.html?kw="], - ["fe", "Felo", "https://felo.ai/search?q="], - ["gh", "GitHub", "https://github.com/search?type=repositories&q="], - ["gg", "Google", "https://www.google.com/search?q="], - ["mc", "Metacritic", "https://www.metacritic.com/search/"], - ["nx", "NixPackages", "https://search.nixos.org/packages?query="], - ["ng", "NuGet", "https://www.nuget.org/packages?q="], - ["np", "npm", "https://www.npmjs.com/search?q="], - ["pa", "Pacman", "https://archlinux.org/packages/?q="], - ["pp", "Perplexity", "https://www.perplexity.ai/?q="], - ["py", "pypi", "https://pypi.org/search/?q="], - ["re", "Reddit", "https://www.reddit.com/search?q="], - ["sc", "Scoop", "https://scoop.sh/#/apps?q="], - ["se", "StackExchange", "https://stackexchange.com/search?q="], - ["so", "StackOverflow", "https://stackoverflow.com/search?q="], - ["st", "Steam", "https://store.steampowered.com/search/?term="], - ["tw", "X", "https://twitter.com/search?q="], - ["ud", "UrbanDictionary", "https://www.urbandictionary.com/define.php?term="], - ["wa", "WolframAlpha", "https://www.wolframalpha.com/input/?i="], - ["wg", "winget", "https://winget.ragerworks.com/search/all/"], - [ - "wk", - "Wikipedia", - "https://en.wikipedia.org/w/index.php?title=Special:Search&search=", - ], - [ - "ww", - "WantWords", - "https://www.shenyandayi.com/wantWordsResult?lang=zh&query=", - ], - ["yt", "YouTube", "https://www.youtube.com/results?search_query="], -]; - -api.unmap("on"); - -// Add all search aliases -searchAliases.forEach(([alias, name, url]) => { - _addSearchAlias(alias, name, url); -}); -// #endregion - -// #region Site-specific - -// This is a global keymap -mapkey("yY", "yank link without parameter", function () { - const url = new URL(window.location.href); - Clipboard.write(url.origin + url.pathname); -}); - -unmap("yma") -unmap("ymc") -unmap("ymv") - -mapkey("ym", "yank link as markdown", function () { - const url = new URL(window.location.href); - const title = document.title; - Clipboard.write(`[${title}](${url.origin + url.pathname})`); -}); - -// #region bilibili.com -mapkey( - ",n", - "[n]ext Video", - function () { - window.location.href = q("div.next-play").querySelector("a").href; - }, - { domain: /bilibili.com/ }, -); -// #endregion - -// #region chatgpt.com -const chatgptNewChat = function () { - var btn = q( - "div.no-draggable:nth-child(3) > span:nth-child(1) > button:nth-child(1)", - ); - btn.click(); -}; -const chatgptStartStop = function () { - var btn = q("button.h-8:nth-child(2)"); - btn.click(); -}; -mapkey(",n", "New Chat", chatgptNewChat, { domain: /chatgpt.com/ }); -mapkey(",s", "Start/Stop Generating", chatgptStartStop, { - domain: /chatgpt.com/, -}); -// #endregion - -// #region chat.deepseek.com -mapkey( - ",s", - "Toggle Sidebar", - function () { - var btn = qs("div.ds-icon-button"); - btn[0].click(); - }, - { domain: /chat.deepseek.com/ }, -); -mapkey( - ",e", - "[e]dit last input", - function () { - var btn = qs("div.ds-icon-button"); - btn[btn.length - 5].click(); - }, - { domain: /chat.deepseek.com/ }, -); -mapkey( - ",y", - "[y]ank last oupput", - function () { - var btn = qs("div.ds-icon-button"); - btn[btn.length - 4].click(); - }, - { domain: /chat.deepseek.com/ }, -); -mapkey( - ",r", - "[r]egenerate last output", - function () { - var btn = qs("div.ds-icon-button"); - btn[btn.length - 3].click(); - }, - { domain: /chat.deepseek.com/ }, -); -mapkey( - ",n", - "[n]ew Chat", - function () { - window.location.href = "https://chat.deepseek.com/"; - }, - { domain: /chat.deepseek.com/ }, -); -mapkey( - ",t", - "Toggle co[t](R1)", - function () { - var btns = qs("div.ds-button"); - btns[0].click(); - }, - { domain: /chat.deepseek.com/ }, -); -mapkey( - ",w", - "Toggle [w]eb Search", - function () { - var btns = qs("div.ds-button"); - btns[1].click(); - }, - { domain: /chat.deepseek.com/ }, -); -// #endregion - -//#region dropbox.com -//https://www.dropbox.com/scl/fi/u58c2qmqbwq672y3hwmfn/setup.sh?rlkey=d3figouv5eqk1xfwdtyzfr7ua&e=1&st=ehttmy2r&dl=0 -//https://dl.dropboxusercontent.com/scl/fi/u58c2qmqbwq672y3hwmfn/setup.sh?rlkey=d3figouv5eqk1xfwdtyzfr7ua&e=1&st=ehttmy2r -mapkey( - ",r", - "Extract [r]aw link", - function () { - const url = new URL(window.location.href); - if (url.href.endsWith("&dl=0")) { - url.searchParams.delete("dl"); - url.hostname = "dl.dropboxusercontent.com"; - Clipboard.write(url.href); - } - }, - { domain: /dropbox.com/ }, -); -mapkey( - ",d", - "Extract [d]ownload link", - function () { - const url = new URL(window.location.href); - if (url.href.endsWith("&dl=0")) { - url.searchParams.set("dl", "1"); - Clipboard.write(url.href); - } - }, - { domain: /dropbox.com/ }, -); -//#endregion - -// #region app.follow.is -mapkey( - ",t", - "Toggle ", - function () { - var btn = qs("button.no-drag-region"); - btn[btn.length - 4].click(); - }, - { domain: /app.follow.is/ }, -); - -mapkey( - ",a", - "Toggle AI Summary", - function () { - var btn = qs("button.no-drag-region"); - btn[btn.length - 3].click(); - }, - { domain: /app.follow.is/ }, -); - -mapkey( - ",o", - "Toggle Original Website", - function () { - var btn = qs("button.no-drag-region"); - btn[btn.length - 4].click(); - }, - { domain: /app.follow.is/ }, -); -// #endregion - -// #region GitHub -// utils -const gh = {}; -gh.repoLink = (owner, repo) => `https://github.com/${owner}/${repo}`; -gh.pageLink = (owner, repo) => `https://${owner}.github.io/${repo}/`; -gh.sourceLink = (owner, repo, path) => - `${gh.repoLink(owner, repo)}/tree/${path}`; -gh.rawToSource = (url) => { - const ps = url.split("/").slice(3); - return gh.sourceLink(ps[0], ps[1], ps.slice(4).join("/")); -}; -// github.com -mapkey( - ",e", - "Use Web Editor", - function () { - const url = new URL(window.location.href); - url.hostname = "github.dev"; - window.location.href = url.href; - }, - { domain: /github.com/ }, -); -mapkey( - ",E", - "Use Web Editor (New Page)", - function () { - const url = new URL(window.location.href); - url.hostname = "github.dev"; - tabOpenLink(url.href); - }, - { domain: /github.com/ }, -); -mapkey( - ",p", - "Switch to GitHub Page", - function () { - href = window.location.href; - owner = href.split("/")[3]; - repo = href.split("/")[4]; - window.location.href = gh.pageLink(owner, repo); - }, - { domain: /github.com/ }, -); -/// This might be useful for Vim plugins -mapkey( - ",y", - "[y]ank short refeference owner/repo", - function () { - const href = window.location.href; - owner = href.split("/")[3]; - repo = href.split("/")[4]; - Clipboard.write(`${owner}/${repo}`); - }, - { domain: /github.com/ }, -); -// github.dev -mapkey( - ",r", - "Switch to GitHub Repo", - function () { - const url = new URL(window.location.href); - url.hostname = "github.com"; - window.location.href = url.href; - }, - { domain: /github.dev/ }, -); -// github.io -mapkey( - ",r", - "Switch to GitHub Repo", - function () { - const href = window.location.href; - owner = href.split("/")[2].split(".")[0]; - repo = href.split("/")[3]; - tabOpenLink(gh.repoLink(owner, repo)); - }, - { domain: /github.io/ }, -); -mapkey( - ",R", - "Go to GitHub Repo (New tab)", - function () { - const href = window.location.href; - owner = href.split("/")[2].split(".")[0]; - repo = href.split("/")[3]; - tabOpenLink(gh.repoLink(owner, repo)); - }, - { domain: /github.io/ }, -); -// raw.githubusercontent.com -mapkey( - ",r", - "Switch to GitHub Repo", - function () { - const url = new URL(window.location.href); - var owner, repo; - owner, (repo = url.pathname.split("/").slice(1, 3)); - window.location.href = gh.repoLink(owner, repo); - }, - { domain: /raw.githubusercontent.com/ }, -); -mapkey( - ",R", - "Switch to GitHub Repo", - function () { - const url = new URL(window.location.href); - var owner, repo; - owner, (repo = url.pathname.split("/").slice(1, 3)); - tabOpenLink(gh.repoLink(owner, repo)); - }, - { domain: /raw.githubusercontent.com/ }, -); -mapkey( - ",s", - "Open Source in GitHub", - function () { - window.location.href = gh.rawToSource(window.location.href); - }, - { domain: /raw.githubusercontent.com/ }, -); -mapkey( - ",S", - "Open Source in GitHub (New Page)", - function () { - tabOpenLink(gh.rawToSource(window.location.href)); - }, - { domain: /raw.githubusercontent.com/ }, -); -// #endregion GitHub - -//#region app.microsoft.com -// https://apps.microsoft.com/detail/9nl6kd1h33v3?hl=en-GB&gl=GB -// This is useful in `winget` (Windows Package Manager) -mapkey( - ",y", - "[y]ank app id", - function () { - const url = new URL(window.location.href); - const id = url.pathname.split("/")[2]; - Clipboard.write(id); - }, - { domain: /apps.microsoft.com/ }, -); -//#endregion - -// #region perplexity.ai -/** - * 0 - 网络 - * 1 - 学术 - * 2 - 社交 - */ -unmap("", /perplexity.ai/); // allows to use perplexity web keybindings -mapkey( - ",b", - "Add Perplexity [b]ookmark", - function () { - // button.border:nth-child(2) - q("div.sticky.left-0").querySelectorAll("button")[2].click(); - }, - { domain: /perplexity.ai/ }, -); -mapkey( - ",M", - "Toggle [M]odel switching", - function () { - q("div.rounded-md").querySelectorAll("span")[2].click(); - //setTimeout(() => { - // // Wait for the DOM to update - // qs("div.shadow-subtle div.group\\/item")[0].click(); - //}, 100); - }, - { domain: /perplexity.ai/ }, -); -mapkey( - ",m", - "Toggle default [m]odel (Claude 3.7 Sonnet)", - function () { - q("div.rounded-md").querySelectorAll("span")[1].click(); - setTimeout(() => { - // Wait for the DOM to update - qs("div.shadow-subtle div.group\\/item")[3].click(); - }, 100); - }, - { domain: /perplexity.ai/ }, -); -mapkey( - ",w", - "Toggle [w]riting/[w]eb Search", - function () { - q("div.rounded-md").querySelectorAll("span")[2].click(); - setTimeout(() => { - // Wait for the DOM to update - qs("div.shadow-subtle div.group\\/item")[0].click(); - }, 100); - }, - { domain: /perplexity.ai/ }, -); -mapkey( - ",s", - "[s]tart Generating", - function () { - var btns = qs("span.grow button"); - btns[btns.length - 1].click(); - }, - { domain: /perplexity.ai/ }, -); -mapkey( - ",y", - "[y]ank Last Output", - function () { - var toolbars = qs("div.mt-sm"); - var last = toolbars[toolbars.length - 1]; - var btns = last.querySelectorAll("button"); - btns[5].click(); - }, - { domain: /perplexity.ai/ }, -); -mapkey( - ",R", - "Change model to [R]egenerate last output", - function () { - var toolbars = qs("div.mt-sm"); - var last = toolbars[toolbars.length - 1]; - var btns = last.querySelectorAll("button"); - btns[1].click(); - }, - { domain: /perplexity.ai/ }, -); -mapkey( - ",r", - "Toggle [r]easoning", - function () { - q("div.rounded-md").querySelectorAll("span")[0].click(); - setTimeout(() => { - // Wait for the DOM to update - qs("div.shadow-subtle div.group\\/item")[2].click(); - }, 100); - }, - { domain: /perplexity.ai/ }, -); -// #endregion - -// #region sspai.com -unmap("[[", /sspai.com/); -unmap("]]", /sspai.com/); -unmap(",", /sspai.com/); -mapkey( - "[[", - "Previous Page", - function () { - q("button.btn-prev").click(); - }, - { domain: /sspai.com/ }, -); -mapkey( - "]]", - "Next Page", - function () { - q("button.btn-next").click(); - }, - { domain: /sspai.com/ }, -); - -// #endregion - -// #region pixiv.net -// Use site-specific paging method -unmap("[[", /pixiv.net/); -unmap("]]", /pixiv.net/); -unmap(",", /pixiv.net/); -const isArtwork = (url) => /pixiv.net\/artworks/.test(url.href); - -mapkey( - "[[", - "Previous Page", - function () { - const url = new URL(window.location.href); - if (url.href === url.origin) { - return; - } - const page = url.searchParams.get("p"); - const newPage = page ? parseInt(page) - 1 : 1; - url.searchParams.set("p", newPage); - window.location.href = url.href; - }, - { domain: /pixiv.net/ }, -); - -mapkey( - "]]", - "Next Page", - function () { - const url = new URL(window.location.href); - if (url.href === url.origin) { - return; - } - const page = url.searchParams.get("p"); - const newPage = page ? parseInt(page) + 1 : 2; - url.searchParams.set("p", newPage); - window.location.href = url.href; - }, - { domain: /pixiv.net/ }, -); -mapkey( - ",b", - "Add to [b]ookmark", - function () { - const url = new URL(window.location.href); - if (!isArtwork(url)) { - return; - } - const toolbar = q('section [class$="Toolbar"]'); - toolbar.querySelectorAll("div")[2].querySelector("button").click(); - }, - { domain: /pixiv.net/ }, -); -mapkey( - ",B", - "Add to private [B]ookmark", - function () { - const url = new URL(window.location.href); - if (!isArtwork(url)) { - return; - } - const toolbar = q('section [class$="Toolbar"]'); - toolbar.querySelectorAll("div")[0].querySelector("button").click(); - setTimeout(() => { - // Wait for the DOM to update - q("div[role=menu]").querySelector("li").click(); - }, 100); - }, - { domain: /pixiv.net/ }, -); -mapkey( - ",v", - "Up[v]ote Artwork", - function () { - const url = new URL(window.location.href); - if (!isArtwork(url)) { - return; - } - const toolbar = q('section [class$="Toolbar"]'); - toolbar.querySelectorAll("div")[3].querySelector("button").click(); - }, - { domain: /pixiv.net/ }, -); -mapkey( - ",f", - "Toggle [f]ollow the author", - function () { - const url = new URL(window.location.href); - if (!isArtwork(url)) { - return; - } - q("aside").querySelector("section").querySelector("button").click(); - }, - { domain: /pixiv.net/ }, -); -// #endregion - -// #region youtube.com -mapkey( - ",n", - "[n]ext Video", - function () { - window.location.href = q("ytd-compact-video-renderer").querySelector( - "a", - ).href; - }, - { domain: /youtube.com/ }, -); - -mapkey( - ",v", - "Up[v]ote Video", - function () { - qs("like-button-view-model")[0].querySelector("button").click(); - }, - { domain: /youtube.com/ }, -); - -mapkey( - ",V", - "Down[v]ote Video", - function () { - qs("dislike-button-view-model")[0].querySelector("button").click(); - }, - { domain: /youtube.com/ }, -); -// class="ytp-subtitles-button ytp-button" -mapkey( - ",c", - "toggle [c]aptions", - function () { - q("button.ytp-subtitles-button").click(); - }, - { domain: /youtube.com/ }, -); -// #endregion - -//#region zhihu.com -mapkey( - ",d", - "Toggle [d]ark mode", - function () { - const url = new URL(window.location.href); - if (url.searchParams.get("theme") === "dark") { - url.searchParams.set("theme", "light"); - } else { - url.searchParams.set("theme", "dark"); - } - window.location.href = url.href; - }, - { domain: /zhihu.com/ }, -); -//#endregion -// #endregion - -// #region ACE Editor -addVimMapKey( - // Navigation - { - keys: "k", - type: "motion", - motion: "findNext", - motionArgs: { forward: true, toJumplist: true }, - }, - { - keys: "K", - type: "motion", - motion: "findNext", - motionArgs: { forward: false, toJumplist: true }, - }, - // Word movement - { - keys: "j", - type: "motion", - motion: "moveByWords", - motionArgs: { forward: true, wordEnd: true, inclusive: true }, - }, - { - keys: "J", - type: "motion", - motion: "moveByWords", - motionArgs: { - forward: true, - wordEnd: true, - bigWord: true, - inclusive: true, - }, - }, - // Insert mode entries - { - keys: "l", - type: "action", - action: "enterInsertMode", - isEdit: true, - actionArgs: { insertAt: "inplace" }, - context: "normal", - }, - { - keys: "gl", - type: "action", - action: "enterInsertMode", - isEdit: true, - actionArgs: { insertAt: "lastEdit" }, - context: "normal", - }, - { - keys: "L", - type: "action", - action: "enterInsertMode", - isEdit: true, - actionArgs: { insertAt: "firstNonBlank" }, - context: "normal", - }, - { - keys: "gL", - type: "action", - action: "enterInsertMode", - isEdit: true, - actionArgs: { insertAt: "bol" }, - context: "normal", - }, - { - keys: "L", - type: "action", - action: "enterInsertMode", - isEdit: true, - actionArgs: { insertAt: "startOfSelectedArea" }, - context: "visual", - }, - { - keys: "n", - type: "motion", - motion: "moveByLines", - motionArgs: { forward: true, linewise: true }, - }, - { - keys: "e", - type: "motion", - motion: "moveByLines", - motionArgs: { forward: false, linewise: true }, - }, - { - keys: "i", - type: "motion", - motion: "moveByCharacters", - motionArgs: { forward: true }, - }, - { - keys: "H", - type: "keyToKey", - toKeys: "^", - }, - { - keys: "I", - type: "keyToKey", - toKeys: "$", - }, - { - keys: "Y", - type: "keyToKey", - toKeys: "y$", - }, -); - -// #endregion - -// #region Hints -api.Hints.setCharacters("qwfpgarstdcv"); // Left-hand keys -// #endregion +// vim:foldmethod=marker:foldmarker=#region,#endregion:foldlevel=0 +// Paste this into surfingkeys advanced settings +// or use: +// Load settings from: https://raw.githubusercontent.com/js0ny/dotfiles/refs/heads/master/tools/browser/surfingkeys.js +// Browse to Extension > Surfingkeys > Allow access to file URLs to enable local file access +// Windows: file:///C:/Users/username/.dotfiles/tools/browser/surfingkeys.js +// Linux: file:///home/username/.dotfiles/tools/browser/surfingkeys.js +// macOS: file:///Users/username/.dotfiles/tools/browser/surfingkeys.js + +// #region Example +/** Examples + +// an example to create a new mapping `ctrl-y` +api.mapkey('', 'Show me the money', function() { + Front.showPopup('a well-known phrase uttered by characters in the 1996 film Jerry Maguire (Escape to close).'); +}); + +// an example to replace `T` with `gt`, click `Default mappings` to see how `T` works. +api.map('gt', 'T'); + + +// an example to remove mapkey `Ctrl-i` +api.unmap(''); + +*/ +// #endregion + +// #region Settings +settings.language = "zh-CN"; +settings.showModeStatus = false; +// #endregion + +// #region Helper +// import the API so that no need to use `api` prefix +const { + aceVimMap, + addVimMapKey, + mapkey, + imap, + imapkey, + getClickableElements, + vmapkey, + map, + unmap, + cmap, + addSearchAlias, + removeSearchAlias, + tabOpenLink, + readText, + Clipboard, + Front, + Hints, + Visual, + RUNTIME, +} = api; +// Keymap, reference https://github.com/texiwustion/colemak_config_for_surfingkeys/tree/main +const forward = { + add: function (key) { + // 转发即将被 unmap 的键 + return api.map(`for${key}`, key); + }, + cancel: function (key) { + // 删除转发生成的键 + api.unmap(`for${key}`); + api.unmap(key); + }, + use: function (key) { + return `for${key}`; + }, +}; + +const colemak = { + forward: function (key) { + // 转发即将被 unmap 的键 + api.map(key, `col${key}`); + api.unmap(`col${key}`); + }, + use: function (key) { + return `col${key}`; + }, + map: function (a, b) { + api.map(colemak.use(a), forward.use(b)); + }, +}; + +const vForward = { + add: function (key) { + // 转发即将被 unmap 的键 + return api.vmap(`vfor${key}`, key); + }, + cancel: function (key) { + // 删除转发生成的键 + api.vunmap(`vfor${key}`); + api.vunmap(key); + }, + use: function (key) { + return `vfor${key}`; + }, +}; + +const vColemak = { + forward: function (key) { + // 转发即将被 unmap 的键 + api.vmap(key, `vcol${key}`); + api.vunmap(`vcol${key}`); + }, + use: function (key) { + return `vcol${key}`; + }, + map: function (a, b) { + api.vmap(vColemak.use(a), vForward.use(b)); + }, +}; + +const forwardFactory = { + push: function (mapLists) { + // forward original keys + for (const key in mapLists) { + // `const` better than `let` + forward.add(mapLists[key]); + } + }, + map: function (mapLists) { + for (const key in mapLists) { + colemak.map(key, mapLists[key]); + } + }, + pull: function (mapLists) { + for (const key in mapLists) { + forward.cancel(mapLists[key]); + } + for (const key in mapLists) { + colemak.forward(key); + } + }, +}; +const vForwardFactory = { + push: function (mapLists) { + // forward original keys + for (const key in mapLists) { + vForward.add(mapLists[key]); + } + }, + map: function (mapLists) { + for (const key in mapLists) { + vColemak.map(key, mapLists[key]); + } + }, + pull: function (mapLists) { + for (const key in mapLists) { + vForward.cancel(mapLists[key]); + } + for (const key in mapLists) { + vColemak.forward(key); + } + }, +}; +// TODO: Add more search completion source (with json) +const parseSearchResponse = function (response) { + const res = JSON.parse(response.text); + return res.map((r) => r.phrase); +}; + +const _addSearchAlias = function ( + alias, + name, + searchUrl, + acUrl = "https://duckduckgo.com/ac/?q=", + searchPrefix = "s", + parseResponse = parseSearchResponse, +) { + api.addSearchAlias( + alias, + name, + searchUrl, + searchPrefix, + acUrl, + parseResponse, + ); +}; +// Shortcut for querySelector +const q = (selector) => document.querySelector(selector); +const qs = (selector) => document.querySelectorAll(selector); +// #endregion + +// #region Keymap +// Normal Mode Keymap +const mapLists = { + /// scroll page + // Arrow + n: "j", + e: "k", + i: "l", + // l <-> i + l: "gi", // Focus on first input box by default + L: "I", + // k <-> n + k: "n", + K: "N", + // j <-> e + j: "e", + // PrevTab < H - I > NextTab + H: "E", + I: "R", + // E,N -> Up/Down HalfPage + N: "d", + E: "e", + // F -> Open Link in New Tab + F: "af", + // oH -> Tab History + oH: "H", + // gh/gi -> Prev/Next History + gh: "S", + gi: "D", + gl: "i", // Use `gl` to search and focus on input box + // t -> Open Link in New Tab + t: "gf", + // 缩放 + zu: "zi", + zo: "ze", + zz: "zr", +}; +// Visual Mode Keymap +const vMapLists = { + n: "j", + N: "J", + e: "k", + E: "K", + i: "l", + I: "L", + j: "e", + J: "E", + k: "n", + K: "N", +}; + +forwardFactory.push(mapLists); +forwardFactory.map(mapLists); + +vForwardFactory.push(vMapLists); +vForwardFactory.map(vMapLists); + +// All other unmapped keys should be defined here +// TODO: Add more mouse click keymap +api.unmap("gi"); // conflict with `gi` in `mapLists` +api.unmap("C"); // Use `F` instead (Open Link in New Tab) +api.map("g/", "gU"); // Goto Root Domain +// TODO: Add SPC keymap as leader (maybe change `,` to `SPC`) +api.unmap(""); // Leader Key + +forwardFactory.pull(mapLists); +vForwardFactory.pull(vMapLists); + +api.map("gH", "g/"); +// #endregion + +// #region Omnibar NOTE: Dosn't work +// api.cmap("", ""); +// api.cmap("", ""); +// api.cmap("", ""); +// api.cmap("", ""); +// api.cmap("", ""); +// api.cmap("", ""); +// api.cmap("", ""); +// api.cmap("", ""); +// #endregion + +// #region Search Alias + +const removedSearchAlias = [ + "b", // Baidu + "d", // DuckDuckGo + "e", // Wikipedia + "g", // Google + "s", // StackOverflow + "w", // Bing + "y", // YouTube +]; + +removedSearchAlias.forEach((alias) => removeSearchAlias(alias)); + +const searchAliases = [ + ["a2", "AlternativeTo", "https://alternativeto.net/browse/search/?q="], + ["ap", "APT", "https://packages.ubuntu.com/search?keywords="], + ["au", "AUR", "https://aur.archlinux.org/packages?K="], + ["aw", "ArchWiki", "https://wiki.archlinux.org/index.php?search="], + ["bd", "Baidu", "https://www.baidu.com/s?wd="], + ["bi", "Bing", "https://www.bing.com/search?q="], + ["bl", "Bilibili", "https://search.bilibili.com/all?keyword="], + ["br", "HomeBrew", "https://duckduckgo.com/?q=!brew "], + ["cg", "ChatGPT", "https://chat.openai.com/?q="], + ["cr", "Chrome Web Store", "https://chrome.google.com/webstore/search/"], + ["dd", "DuckDuckGo", "https://duckduckgo.com/?q="], + ["de", "Thesaurus", "https://www.onelook.com/?w="], + ["eb", "ebay", "https://www.ebay.co.uk/sch/i.html?kw="], + ["fe", "Felo", "https://felo.ai/search?q="], + ["gh", "GitHub", "https://github.com/search?type=repositories&q="], + ["gg", "Google", "https://www.google.com/search?q="], + ["mc", "Metacritic", "https://www.metacritic.com/search/"], + ["nx", "NixPackages", "https://search.nixos.org/packages?query="], + ["ng", "NuGet", "https://www.nuget.org/packages?q="], + ["np", "npm", "https://www.npmjs.com/search?q="], + ["pa", "Pacman", "https://archlinux.org/packages/?q="], + ["pp", "Perplexity", "https://www.perplexity.ai/?q="], + ["py", "pypi", "https://pypi.org/search/?q="], + ["re", "Reddit", "https://www.reddit.com/search?q="], + ["sc", "Scoop", "https://scoop.sh/#/apps?q="], + ["se", "StackExchange", "https://stackexchange.com/search?q="], + ["so", "StackOverflow", "https://stackoverflow.com/search?q="], + ["st", "Steam", "https://store.steampowered.com/search/?term="], + ["tw", "X", "https://twitter.com/search?q="], + ["ud", "UrbanDictionary", "https://www.urbandictionary.com/define.php?term="], + ["wa", "WolframAlpha", "https://www.wolframalpha.com/input/?i="], + ["wg", "winget", "https://winget.ragerworks.com/search/all/"], + [ + "wk", + "Wikipedia", + "https://en.wikipedia.org/w/index.php?title=Special:Search&search=", + ], + [ + "ww", + "WantWords", + "https://www.shenyandayi.com/wantWordsResult?lang=zh&query=", + ], + ["yt", "YouTube", "https://www.youtube.com/results?search_query="], +]; + +api.unmap("on"); + +// Add all search aliases +searchAliases.forEach(([alias, name, url]) => { + _addSearchAlias(alias, name, url); +}); +// #endregion + +// #region Site-specific + +// This is a global keymap +mapkey("yY", "yank link without parameter", function () { + const url = new URL(window.location.href); + Clipboard.write(url.origin + url.pathname); +}); + +unmap("yma") +unmap("ymc") +unmap("ymv") + +mapkey("ym", "yank link as markdown", function () { + const url = new URL(window.location.href); + const title = document.title; + Clipboard.write(`[${title}](${url.origin + url.pathname})`); +}); + +// #region bilibili.com +mapkey( + ",n", + "[n]ext Video", + function () { + window.location.href = q("div.next-play").querySelector("a").href; + }, + { domain: /bilibili.com/ }, +); +// #endregion + +// #region chatgpt.com +const chatgptNewChat = function () { + var btn = q( + "div.no-draggable:nth-child(3) > span:nth-child(1) > button:nth-child(1)", + ); + btn.click(); +}; +const chatgptStartStop = function () { + var btn = q("button.h-8:nth-child(2)"); + btn.click(); +}; +mapkey(",n", "New Chat", chatgptNewChat, { domain: /chatgpt.com/ }); +mapkey(",s", "Start/Stop Generating", chatgptStartStop, { + domain: /chatgpt.com/, +}); +// #endregion + +// #region chat.deepseek.com +mapkey( + ",s", + "Toggle Sidebar", + function () { + var btn = qs("div.ds-icon-button"); + btn[0].click(); + }, + { domain: /chat.deepseek.com/ }, +); +mapkey( + ",e", + "[e]dit last input", + function () { + var btn = qs("div.ds-icon-button"); + btn[btn.length - 5].click(); + }, + { domain: /chat.deepseek.com/ }, +); +mapkey( + ",y", + "[y]ank last oupput", + function () { + var btn = qs("div.ds-icon-button"); + btn[btn.length - 4].click(); + }, + { domain: /chat.deepseek.com/ }, +); +mapkey( + ",r", + "[r]egenerate last output", + function () { + var btn = qs("div.ds-icon-button"); + btn[btn.length - 3].click(); + }, + { domain: /chat.deepseek.com/ }, +); +mapkey( + ",n", + "[n]ew Chat", + function () { + window.location.href = "https://chat.deepseek.com/"; + }, + { domain: /chat.deepseek.com/ }, +); +mapkey( + ",t", + "Toggle co[t](R1)", + function () { + var btns = qs("div.ds-button"); + btns[0].click(); + }, + { domain: /chat.deepseek.com/ }, +); +mapkey( + ",w", + "Toggle [w]eb Search", + function () { + var btns = qs("div.ds-button"); + btns[1].click(); + }, + { domain: /chat.deepseek.com/ }, +); +// #endregion + +//#region dropbox.com +//https://www.dropbox.com/scl/fi/u58c2qmqbwq672y3hwmfn/setup.sh?rlkey=d3figouv5eqk1xfwdtyzfr7ua&e=1&st=ehttmy2r&dl=0 +//https://dl.dropboxusercontent.com/scl/fi/u58c2qmqbwq672y3hwmfn/setup.sh?rlkey=d3figouv5eqk1xfwdtyzfr7ua&e=1&st=ehttmy2r +mapkey( + ",r", + "Extract [r]aw link", + function () { + const url = new URL(window.location.href); + if (url.href.endsWith("&dl=0")) { + url.searchParams.delete("dl"); + url.hostname = "dl.dropboxusercontent.com"; + Clipboard.write(url.href); + } + }, + { domain: /dropbox.com/ }, +); +mapkey( + ",d", + "Extract [d]ownload link", + function () { + const url = new URL(window.location.href); + if (url.href.endsWith("&dl=0")) { + url.searchParams.set("dl", "1"); + Clipboard.write(url.href); + } + }, + { domain: /dropbox.com/ }, +); +//#endregion + +// #region app.follow.is +mapkey( + ",t", + "Toggle ", + function () { + var btn = qs("button.no-drag-region"); + btn[btn.length - 4].click(); + }, + { domain: /app.follow.is/ }, +); + +mapkey( + ",a", + "Toggle AI Summary", + function () { + var btn = qs("button.no-drag-region"); + btn[btn.length - 3].click(); + }, + { domain: /app.follow.is/ }, +); + +mapkey( + ",o", + "Toggle Original Website", + function () { + var btn = qs("button.no-drag-region"); + btn[btn.length - 4].click(); + }, + { domain: /app.follow.is/ }, +); +// #endregion + +// #region GitHub +// utils +const gh = {}; +gh.repoLink = (owner, repo) => `https://github.com/${owner}/${repo}`; +gh.pageLink = (owner, repo) => `https://${owner}.github.io/${repo}/`; +gh.sourceLink = (owner, repo, path) => + `${gh.repoLink(owner, repo)}/tree/${path}`; +gh.rawToSource = (url) => { + const ps = url.split("/").slice(3); + return gh.sourceLink(ps[0], ps[1], ps.slice(4).join("/")); +}; +// github.com +mapkey( + ",e", + "Use Web Editor", + function () { + const url = new URL(window.location.href); + url.hostname = "github.dev"; + window.location.href = url.href; + }, + { domain: /github.com/ }, +); +mapkey( + ",E", + "Use Web Editor (New Page)", + function () { + const url = new URL(window.location.href); + url.hostname = "github.dev"; + tabOpenLink(url.href); + }, + { domain: /github.com/ }, +); +mapkey( + ",p", + "Switch to GitHub Page", + function () { + href = window.location.href; + owner = href.split("/")[3]; + repo = href.split("/")[4]; + window.location.href = gh.pageLink(owner, repo); + }, + { domain: /github.com/ }, +); +/// This might be useful for Vim plugins +mapkey( + ",y", + "[y]ank short refeference owner/repo", + function () { + const href = window.location.href; + owner = href.split("/")[3]; + repo = href.split("/")[4]; + Clipboard.write(`${owner}/${repo}`); + }, + { domain: /github.com/ }, +); +// github.dev +mapkey( + ",r", + "Switch to GitHub Repo", + function () { + const url = new URL(window.location.href); + url.hostname = "github.com"; + window.location.href = url.href; + }, + { domain: /github.dev/ }, +); +// github.io +mapkey( + ",r", + "Switch to GitHub Repo", + function () { + const href = window.location.href; + owner = href.split("/")[2].split(".")[0]; + repo = href.split("/")[3]; + tabOpenLink(gh.repoLink(owner, repo)); + }, + { domain: /github.io/ }, +); +mapkey( + ",R", + "Go to GitHub Repo (New tab)", + function () { + const href = window.location.href; + owner = href.split("/")[2].split(".")[0]; + repo = href.split("/")[3]; + tabOpenLink(gh.repoLink(owner, repo)); + }, + { domain: /github.io/ }, +); +// raw.githubusercontent.com +mapkey( + ",r", + "Switch to GitHub Repo", + function () { + const url = new URL(window.location.href); + var owner, repo; + owner, (repo = url.pathname.split("/").slice(1, 3)); + window.location.href = gh.repoLink(owner, repo); + }, + { domain: /raw.githubusercontent.com/ }, +); +mapkey( + ",R", + "Switch to GitHub Repo", + function () { + const url = new URL(window.location.href); + var owner, repo; + owner, (repo = url.pathname.split("/").slice(1, 3)); + tabOpenLink(gh.repoLink(owner, repo)); + }, + { domain: /raw.githubusercontent.com/ }, +); +mapkey( + ",s", + "Open Source in GitHub", + function () { + window.location.href = gh.rawToSource(window.location.href); + }, + { domain: /raw.githubusercontent.com/ }, +); +mapkey( + ",S", + "Open Source in GitHub (New Page)", + function () { + tabOpenLink(gh.rawToSource(window.location.href)); + }, + { domain: /raw.githubusercontent.com/ }, +); +// #endregion GitHub + +//#region app.microsoft.com +// https://apps.microsoft.com/detail/9nl6kd1h33v3?hl=en-GB&gl=GB +// This is useful in `winget` (Windows Package Manager) +mapkey( + ",y", + "[y]ank app id", + function () { + const url = new URL(window.location.href); + const id = url.pathname.split("/")[2]; + Clipboard.write(id); + }, + { domain: /apps.microsoft.com/ }, +); +//#endregion + +// #region perplexity.ai +/** + * 0 - 网络 + * 1 - 学术 + * 2 - 社交 + */ +unmap("", /perplexity.ai/); // allows to use perplexity web keybindings +mapkey( + ",b", + "Add Perplexity [b]ookmark", + function () { + // button.border:nth-child(2) + q("div.sticky.left-0").querySelectorAll("button")[2].click(); + }, + { domain: /perplexity.ai/ }, +); +mapkey( + ",M", + "Toggle [M]odel switching", + function () { + q("div.rounded-md").querySelectorAll("span")[2].click(); + //setTimeout(() => { + // // Wait for the DOM to update + // qs("div.shadow-subtle div.group\\/item")[0].click(); + //}, 100); + }, + { domain: /perplexity.ai/ }, +); +mapkey( + ",m", + "Toggle default [m]odel (Claude 3.7 Sonnet)", + function () { + q("div.rounded-md").querySelectorAll("span")[1].click(); + setTimeout(() => { + // Wait for the DOM to update + qs("div.shadow-subtle div.group\\/item")[3].click(); + }, 100); + }, + { domain: /perplexity.ai/ }, +); +mapkey( + ",w", + "Toggle [w]riting/[w]eb Search", + function () { + q("div.rounded-md").querySelectorAll("span")[2].click(); + setTimeout(() => { + // Wait for the DOM to update + qs("div.shadow-subtle div.group\\/item")[0].click(); + }, 100); + }, + { domain: /perplexity.ai/ }, +); +mapkey( + ",s", + "[s]tart Generating", + function () { + var btns = qs("span.grow button"); + btns[btns.length - 1].click(); + }, + { domain: /perplexity.ai/ }, +); +mapkey( + ",y", + "[y]ank Last Output", + function () { + var toolbars = qs("div.mt-sm"); + var last = toolbars[toolbars.length - 1]; + var btns = last.querySelectorAll("button"); + btns[5].click(); + }, + { domain: /perplexity.ai/ }, +); +mapkey( + ",R", + "Change model to [R]egenerate last output", + function () { + var toolbars = qs("div.mt-sm"); + var last = toolbars[toolbars.length - 1]; + var btns = last.querySelectorAll("button"); + btns[1].click(); + }, + { domain: /perplexity.ai/ }, +); +mapkey( + ",r", + "Toggle [r]easoning", + function () { + q("div.rounded-md").querySelectorAll("span")[0].click(); + setTimeout(() => { + // Wait for the DOM to update + qs("div.shadow-subtle div.group\\/item")[2].click(); + }, 100); + }, + { domain: /perplexity.ai/ }, +); +// #endregion + +// #region sspai.com +unmap("[[", /sspai.com/); +unmap("]]", /sspai.com/); +unmap(",", /sspai.com/); +mapkey( + "[[", + "Previous Page", + function () { + q("button.btn-prev").click(); + }, + { domain: /sspai.com/ }, +); +mapkey( + "]]", + "Next Page", + function () { + q("button.btn-next").click(); + }, + { domain: /sspai.com/ }, +); + +// #endregion + +// #region pixiv.net +// Use site-specific paging method +unmap("[[", /pixiv.net/); +unmap("]]", /pixiv.net/); +unmap(",", /pixiv.net/); +const isArtwork = (url) => /pixiv.net\/artworks/.test(url.href); + +mapkey( + "[[", + "Previous Page", + function () { + const url = new URL(window.location.href); + if (url.href === url.origin) { + return; + } + const page = url.searchParams.get("p"); + const newPage = page ? parseInt(page) - 1 : 1; + url.searchParams.set("p", newPage); + window.location.href = url.href; + }, + { domain: /pixiv.net/ }, +); + +mapkey( + "]]", + "Next Page", + function () { + const url = new URL(window.location.href); + if (url.href === url.origin) { + return; + } + const page = url.searchParams.get("p"); + const newPage = page ? parseInt(page) + 1 : 2; + url.searchParams.set("p", newPage); + window.location.href = url.href; + }, + { domain: /pixiv.net/ }, +); +mapkey( + ",b", + "Add to [b]ookmark", + function () { + const url = new URL(window.location.href); + if (!isArtwork(url)) { + return; + } + const toolbar = q('section [class$="Toolbar"]'); + toolbar.querySelectorAll("div")[2].querySelector("button").click(); + }, + { domain: /pixiv.net/ }, +); +mapkey( + ",B", + "Add to private [B]ookmark", + function () { + const url = new URL(window.location.href); + if (!isArtwork(url)) { + return; + } + const toolbar = q('section [class$="Toolbar"]'); + toolbar.querySelectorAll("div")[0].querySelector("button").click(); + setTimeout(() => { + // Wait for the DOM to update + q("div[role=menu]").querySelector("li").click(); + }, 100); + }, + { domain: /pixiv.net/ }, +); +mapkey( + ",v", + "Up[v]ote Artwork", + function () { + const url = new URL(window.location.href); + if (!isArtwork(url)) { + return; + } + const toolbar = q('section [class$="Toolbar"]'); + toolbar.querySelectorAll("div")[3].querySelector("button").click(); + }, + { domain: /pixiv.net/ }, +); +mapkey( + ",f", + "Toggle [f]ollow the author", + function () { + const url = new URL(window.location.href); + if (!isArtwork(url)) { + return; + } + q("aside").querySelector("section").querySelector("button").click(); + }, + { domain: /pixiv.net/ }, +); +// #endregion + +// #region youtube.com +mapkey( + ",n", + "[n]ext Video", + function () { + window.location.href = q("ytd-compact-video-renderer").querySelector( + "a", + ).href; + }, + { domain: /youtube.com/ }, +); + +mapkey( + ",v", + "Up[v]ote Video", + function () { + qs("like-button-view-model")[0].querySelector("button").click(); + }, + { domain: /youtube.com/ }, +); + +mapkey( + ",V", + "Down[v]ote Video", + function () { + qs("dislike-button-view-model")[0].querySelector("button").click(); + }, + { domain: /youtube.com/ }, +); +// class="ytp-subtitles-button ytp-button" +mapkey( + ",c", + "toggle [c]aptions", + function () { + q("button.ytp-subtitles-button").click(); + }, + { domain: /youtube.com/ }, +); +// #endregion + +//#region zhihu.com +mapkey( + ",d", + "Toggle [d]ark mode", + function () { + const url = new URL(window.location.href); + if (url.searchParams.get("theme") === "dark") { + url.searchParams.set("theme", "light"); + } else { + url.searchParams.set("theme", "dark"); + } + window.location.href = url.href; + }, + { domain: /zhihu.com/ }, +); +//#endregion +// #endregion + +// #region ACE Editor +addVimMapKey( + // Navigation + { + keys: "k", + type: "motion", + motion: "findNext", + motionArgs: { forward: true, toJumplist: true }, + }, + { + keys: "K", + type: "motion", + motion: "findNext", + motionArgs: { forward: false, toJumplist: true }, + }, + // Word movement + { + keys: "j", + type: "motion", + motion: "moveByWords", + motionArgs: { forward: true, wordEnd: true, inclusive: true }, + }, + { + keys: "J", + type: "motion", + motion: "moveByWords", + motionArgs: { + forward: true, + wordEnd: true, + bigWord: true, + inclusive: true, + }, + }, + // Insert mode entries + { + keys: "l", + type: "action", + action: "enterInsertMode", + isEdit: true, + actionArgs: { insertAt: "inplace" }, + context: "normal", + }, + { + keys: "gl", + type: "action", + action: "enterInsertMode", + isEdit: true, + actionArgs: { insertAt: "lastEdit" }, + context: "normal", + }, + { + keys: "L", + type: "action", + action: "enterInsertMode", + isEdit: true, + actionArgs: { insertAt: "firstNonBlank" }, + context: "normal", + }, + { + keys: "gL", + type: "action", + action: "enterInsertMode", + isEdit: true, + actionArgs: { insertAt: "bol" }, + context: "normal", + }, + { + keys: "L", + type: "action", + action: "enterInsertMode", + isEdit: true, + actionArgs: { insertAt: "startOfSelectedArea" }, + context: "visual", + }, + { + keys: "n", + type: "motion", + motion: "moveByLines", + motionArgs: { forward: true, linewise: true }, + }, + { + keys: "e", + type: "motion", + motion: "moveByLines", + motionArgs: { forward: false, linewise: true }, + }, + { + keys: "i", + type: "motion", + motion: "moveByCharacters", + motionArgs: { forward: true }, + }, + { + keys: "H", + type: "keyToKey", + toKeys: "^", + }, + { + keys: "I", + type: "keyToKey", + toKeys: "$", + }, + { + keys: "Y", + type: "keyToKey", + toKeys: "y$", + }, +); + +// #endregion + +// #region Hints +api.Hints.setCharacters("qwfpgarstdcv"); // Left-hand keys +// #endregion diff --git a/tools/mac/etc/pam.d/sudo b/misc/mac/etc/pam.d/sudo similarity index 100% rename from tools/mac/etc/pam.d/sudo rename to misc/mac/etc/pam.d/sudo diff --git a/tools/qmk/keychron_k3_pro.c b/misc/qmk/keychron_k3_pro.c similarity index 100% rename from tools/qmk/keychron_k3_pro.c rename to misc/qmk/keychron_k3_pro.c diff --git a/tools/thunderbird/tbkeys.json b/misc/thunderbird/tbkeys.json similarity index 100% rename from tools/thunderbird/tbkeys.json rename to misc/thunderbird/tbkeys.json diff --git a/tools/vscode/extensions/vspacecode.jsonc b/misc/vscode/extensions/vspacecode.jsonc similarity index 100% rename from tools/vscode/extensions/vspacecode.jsonc rename to misc/vscode/extensions/vspacecode.jsonc diff --git a/tools/vscode/hsnips/latex.hsnips b/misc/vscode/hsnips/latex.hsnips similarity index 95% rename from tools/vscode/hsnips/latex.hsnips rename to misc/vscode/hsnips/latex.hsnips index 7c82b39..d610c84 100644 --- a/tools/vscode/hsnips/latex.hsnips +++ b/misc/vscode/hsnips/latex.hsnips @@ -1,1038 +1,1038 @@ -global -// JavaScript code -function gen_matrix(nrow, ncol) { - let results = ""; - let order = 1; - for (var i=0; i < nrow; i++){ - results += ' '; - for(var j = 0; j < ncol - 1; j++){ - results += "$" + (order).toString() + " & "; - order ++; - } - results += "$" + (order).toString() + " \\\\" + "\\"; - order ++; - } - return results; -} - -function gen_matrix_transposed(nrow, ncol) { - let results = ""; - for (var i = 0; i < nrow; i++){ - results += ' '; - var j = 0; - for(; j < ncol - 1;j++){ - results += "$" + (i + j * ncol + 1).toString() + " & "; - } - results += "$" + (i + j * ncol + 1).toString() + " \\\\" + "\\"; - } - return results; -} - -function tes_matrix(nrow, ncol,t) { - let results = ""; - let order = 1; - for (var i=0; i 1 ){ - results += "${" +(order ).toString() + ":" + t[order-2] + "}\t & "; - } - else{ - results += "$" +(order ).toString() + " & "; - } - order ++; - } - results += "$"+(order).toString() +" \\\\" + "\\ "; - order ++; - } - return results; -} - -// 输出一个表格 -function createTable(rows, cols) { - let ret = ""; - let order = 1; - for (let i = 0; i < parseInt(rows) + 2; i++) { - for (let j = 0; j < parseInt(cols); j++) { - if (i === 1) { - ret += "|---"; - } else { - ret += "| $" + (order).toString() + " "; - order++; - } - } - ret += "|\n" - } - return ret; -} - -endglobal - -snippet example "Example" i -\documentclass{article} -\usepackage{amsmath} -\usepackage{amssymb} - -\begin{document} -\title{${1:title}} -\author{Peikun Yang} -\date{\today} -\maketitle -$0 -\end{document} -endsnippet - -# == Fraction Match == - - -snippet // "Fraction" iAm -\\frac{${1:${VISUAL}}}{$2}$0 -endsnippet - -snippet `((\d+)|(\d*)(\\)?([A-Za-z!]+)((\^|_)(\{\d+\}|\d))*)/` "Fraction no ()" iAm -\frac{``rv = m[1]``}{$1}$0 -endsnippet - -priority 200 -snippet `(?<=\s)(\\mu|\\alpha|\\sigma|\\rho|\\beta|\\gamma|\\delta|\\zeta|\\eta|\\varepsilon|\\theta|\\iota|\\kappa|\\vartheta|\\lambda|\\nu|\\pi|\\rho|\\tau|\\upsilon|\\phi|\\chi|\\psi|\\omega|\\Gamma|\\Delta|\\Theta|\\Lambda|\\Xi|\\Pi|\\Sigma|\\Upsilon|\\Phi|\\Psi|\\Omega|[A-Za-z]{1,2})?(_[A-Za-z0-9]|_\{[^}]+\})?(\^[A-Za-z0-9]|\^\{[^}]+\})?(_[A-Za-z0-9]|_\{[^}]+\})?(\([^)]+\))(_[A-Za-z0-9]|_\{[^}]+\})?(\^[A-Za-z0-9]|\^\{[^}]+\})?(_[A-Za-z0-9]|_\{[^}]+\})?\/` "Fraction with ()" iAm -``rv = "\\frac{" + m.slice(1, m.length).join('') + "}{$1}$2"`` -endsnippet - -# == Hat Operation == - -# ==== Auto Capture Hat Operation ==== -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hbar|BAR)` "Bar" iAm -\overline{``rv = m[1] + m[2] + m[3]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(htd|TD)` "tilde" iAm -\tilde{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)bar` "bar" iAm -\bar{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hat|HAT)` "hat" iAm -\hat{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hvec)` "Vector postfix" iAm -\vec{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(rta)` "Vector postfix" iAm -\overrightarrow{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(dot)` "dot" iAm -\dot{``rv = m[1]``} -endsnippet - -priority 1000 -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hdd)` "ddot" iAm -\ddot{``rv = m[1]``} -endsnippet - -# ===== Static Hat Operation ==== - -snippet hbar "bar" iAm -\overline{$1}$0 -endsnippet - -snippet hat "hat" iAm -\hat{$1}$0 -endsnippet - -snippet sq "\sqrt{}" iAm -\sqrt{${1}}$0 -endsnippet - -priority 10000 -snippet psq "\sqrt[]{}" iAm -\sqrt[${2}]{${1}} -endsnippet - -# == Superscript Operation == - -snippet invs "inverse" iAm -^{-1} -endsnippet - -snippet dig "digree" iAm -^{\circ} -endsnippet - -priority 10000 -snippet TR "inverse" iAm -^{\mathsf{T}} -endsnippet - -snippet CL "complement" iAm -^{c} -endsnippet - -snippet R+ "R0+" iAm -R_0^+ -endsnippet - -snippet pow "power" iAm -^{${1:n}} -endsnippet - -snippet tp "to the ... power" iAm -^{${1:2}}$0 -endsnippet - -snippet sr "square" iAm -^{2}$0 -endsnippet - -snippet cb "cube" iAm -^{3}$0 -endsnippet - -# == Subscript Operation == - -snippet td "subscript" iAm -_{${1}}$0 -endsnippet - -snippet sb "subscript" iAm -_{${0}} -endsnippet - -snippet `(})(\d)\2` "auto subscript" iAm -`` rv = m[1] + "_" + m[2]`` -endsnippet - -snippet `([A-Za-z])(\d)` "auto subscript" iAm -`` rv = m[1] + "_" + m[2]`` -endsnippet - -priority 100 -snippet `([A-Za-z])_(\d{2})` "auto subscript" iAm -`` rv = m[1] + "_{" + m[2] + "}$0" `` -endsnippet - -priority 100 -snippet `([A-Za-z])S(\d)` "auto subscript" iAm -`` rv = m[1] + "_{" + m[2] + "$1}$2"`` -endsnippet - -snippet `\b(? "${1:_}" + d + "${2:, }").join('');``\cdots${3:${2:, }${1:_}n} -endsnippet - -snippet `(\d\d+),` "0, 1, 2" iAm -``rv = m[1].split('').map((d) => "${1:_}" + d).join("${2:, }");`` -endsnippet - -snippet <> "hokje" iA -\diamond -endsnippet - -# +... -> , \cdots -# - ... -> , \cdots -# add a space if there already is one. -priority 101 -snippet `(?<=[-+])\s*\.\.\.` "smart cdots" imA - \cdots -endsnippet - -# It seems that \ldots is only used when , ..., -# ,... -> , \ldots -# , ... -> , \ldots -priority 101 -snippet `(?<=,)(\s*)\.\.\.` "smart ldots" imA - \ldots -endsnippet - -snippet ** "dot multiply" iAm -\cdot -endsnippet - -snippet +- "pm" iAm -\pm -endsnippet - -snippet -+ "mp" iAm -\mp -endsnippet - -snippet odot "odot" iAm -\odot -endsnippet - -priority 101 -snippet xx "cross" iAm -\times -endsnippet - -snippet eps "epsilon" iAm -\epsilon -endsnippet - -priority 100 -snippet veps "varepsilon" iAm -\varepsilon -endsnippet - -priority 100 -snippet ell "ell" iAm -\ell -endsnippet - -priority 100 -snippet log "log" iAm -\log -endsnippet - -snippet bin "binom" iAm -\binom{$1}{$2} -endsnippet - -snippet oth "otherwise" iAm -\text{otherwise} -endsnippet - -snippet star "star" iAm -^{*} -endsnippet - -snippet `(? "to" iAm -\to -endsnippet - -snippet !> "mapsto" iAm -\mapsto -endsnippet - -snippet => "implies" iAm -\implies -endsnippet - -snippet =< "implied by" iAm -\impliedby -endsnippet - -priority 200 -snippet iff "if and only if" iAm -\iff -endsnippet - -snippet EE "exist" iAm -\exists -endsnippet - -snippet AA "forall" iAm -\forall -endsnippet - -snippet bec "because" iAm -\because -endsnippet - -snippet thr "therefore" iAm -\therefore -endsnippet - - -# ==== Possibility Symbol ==== - -snippet Pr "Pr" iAm -\operatorname{Pr} -endsnippet - -snippet Var "Var" iAm -\operatorname{Var} -endsnippet - -snippet Cov "Cov" iAm -\operatorname{Cov} -endsnippet - -snippet Exp "Expected" iAm -\mathbb{E} -endsnippet - - -# ==== Compare Symbol ==== - -snippet -- "setminus" iAm -\setminus -endsnippet - -snippet >= "greater than" iAm -\ge $0 -endsnippet - -snippet dis "displaystyle" iAm -\displaystyle -endsnippet - -snippet <= "less than" iAm -\le $0 -endsnippet - -snippet != "no equals" iAm -\neq -endsnippet - -snippet == " constan equals" iAm -\equiv -endsnippet - -snippet sim "sim" iAm -\sim -endsnippet - -snippet `\\sim eq` "simeq" iAm -\simeq -endsnippet - -snippet ~~ " Amppro equals" iAm -\approx -endsnippet - -snippet ~= " Amppro equals2" iAm -\cong -endsnippet - -snippet >> ">>" iAm -\gg -endsnippet - - -snippet << "<<" iAm -\ll -endsnippet - - -# == Auto Environment == - -# ==== Auto Math Mode ==== - -snippet mk "inline Math" wA -\(${1}\)$0 -endsnippet - -snippet dm "display Math" w -\[ -${1} -\] -endsnippet - -snippet dmi "display Math" wA -\[$1\]$0 -endsnippet - -snippet eqt "equation" wA -\begin{equation} - ${1} -\end{equation} -endsnippet - -snippet eqs "equation*" wA -\begin{equation*} - ${1} -\end{equation*} -endsnippet - -# ==== Common Environment ==== - -# snippet case "cases" iAm -# \begin{cases} $1, & $2 \\\\ $3, & $4 \end{cases} -# endsnippet - -snippet ali "aligned" iAm -\begin{aligned} -$1 \\\\ -\end{aligned} -endsnippet - -# == Auto Adaptive Close == - -snippet ceil "ceil" iAm -\left\lceil $1 \right\rceil $0 -endsnippet - -snippet floor "floor" iAm -\left\lfloor $1 \right\rfloor$0 -endsnippet - -priority 100 -snippet @) "left( right)" Aim -\left( ${1} \right) $0 -endsnippet - -priority 100 -snippet @| "left| right|" Aim -\left| ${1} \right| $0 -endsnippet - -priority 100 -snippet @\ "left. right|" Aim -\left. ${1} \right|_{${2}}$0 -endsnippet - -priority 100 -snippet @} "left\{ right\}" Aim -\left\\{ ${1} \right\\} $0 -endsnippet - -priority 100 -snippet set "\{ \}" Aim -\\{ ${1} \\}$0 -endsnippet - -priority 100 -snippet @] "left[ right]" Aim -\left[ ${1} \right] $0 -endsnippet - -priority 100 -snippet @> "leftangle rightangle" iAm -\left<${1} \right>$0 -endsnippet - -priority 200 - -# == Snippet == - -# ==== General Snippet ==== - -# ====== Lite Snippet ====== - -snippet tag "tag" iAm -\tag{$1} -endsnippet - -snippet xyb "Auto (x, y)" iAm -(x, y) -endsnippet - -snippet xyzb "Auto (x, y ,z)" iAm -(x, y, z) -endsnippet - -priority 100 -snippet `\b([a-zA-Z])n(\d)` "x[n+1]" iAm -``rv = m[1]``_{${1:n}+``rv = m[2]``}$0 -endsnippet - -# Unkown -snippet rij "mrij" iAm -(${1:x}_${2:n})_{${3:$2} \\in ${4:N}}$0 -endsnippet - -priority 200 -snippet abs "absolute value" iAm -\left\vert ${1} \right\vert $0 -endsnippet - -snippet beg "begin{} / end{}" bA -\\begin{$1} - $0 -\\end{$1} -endsnippet - -# ======== N Series ======== - -priority 100 -snippet comma "comma" iAm -${1:\\alpha}_1,${1:\\alpha}_2,\\cdots,${1:\\alpha}_${2:n} -endsnippet - -priority 100 -snippet plus "plus" iAm -${1:k}_1${2:\\alpha}_1+${1:k}_2${2:\\alpha}_2+\\cdots+${1:k}_${3:n}${2:\\alpha}_${3:n} -endsnippet - -snippet `\b([ijk])=n` "i=1,2,\cdots,n" iAm -``rv = m[1]``=1,2,\cdots,n -endsnippet - -# ======== Common Operator Snippet ======== - -snippet taylor "taylor" iAm -\sum_{${1:k}=${2:0}}^{${3:\infty}} ${4:c_$1} (x-a)^$1 $0 -endsnippet - -snippet `(?= 2) || (b != 1 && !isO && isL)) ? "\\limits" : ""; -let r = (b == 3) ? "E" : (b == 1 && (isL || isO)) ? "C" : "R"; -final += ((b >= 2) || isO || (b == 1 && isL)) ? "_{${1:" + r + "}}" : "_{${1:-\\infty}}^{${2:\\infty}}"; -let x = (b == 2) ? "A" : (b == 3) ? "V" : (b == 1 && isL) ? "s" : "x"; -final += " ${3} \\mathrm{d}${4:" + x + "}$0"; -rv = final; -`` -endsnippet - -# Custom: Can add more defined operator -priority 100 -snippet `(? 0} \\\\ -\end{aligned} -endsnippet - -priority 300 -snippet Argmax "Optimization problem" iAm -\begin{aligned} -\argmax_{${1:\beta}} -&\quad ${2:f(x)} \\\\ -\text{s.t.} -&\quad ${3:g(x) > 0} \\\\ -\end{aligned} -endsnippet - -snippet deff "Definition of function" iAm -$1\colon ${2:\\mathbb{R\}} \to ${3:\\mathbb{R\}}, ${4:x} \mapsto $0 -endsnippet - - -snippet iid "independent and identical distribution" iAm -\overset{\text{i.i.d.}}{\sim} -endsnippet - -snippet defe "define equal" iAm -\overset{\underset{\mathrm{def}}{}}{=} -endsnippet - -snippet deft "define triangleq" iAm -\triangleq -endsnippet - - -# == Matrix == - -# ==== Static Matrix ==== - -snippet pmat "pmat" wm -\begin{pmatrix} - ${1: } -\end{pmatrix} $0 -endsnippet - -snippet bmat "pmat" wm -\begin{bmatrix} - $1 -\end{bmatrix} $0 -endsnippet - -snippet vecC "column vector" iAm -\begin{bmatrix} ${1:x}_1 \\\\ ${1:x}_2 \\\\ \vdots \\\\ ${1:x}_${2:n} \end{bmatrix} -endsnippet - -snippet vecR "row vector" iAm -\begin{bmatrix} ${1:x}_1, ${1:x}_2, \cdots, ${1:x}_${2:n} \end{bmatrix}$0 -endsnippet - -priority 300 -snippet omis "omission" iAm -\\begin{bmatrix}${1:1}&${2:1}&\\cdots&${4:1}\\\\${5:1}&${6:1}&\\cdots&${8:1}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\${13:1}&${14:1}&\\cdots&${16:1}\\end{bmatrix} -endsnippet - -priority 300 -snippet submat "omission" iAm -\\begin{bmatrix} - ${1:a}_{11} & ${1:a}_{12} & \\cdots & ${1:a}_{1n} \\\\ - ${1:a}_{21} & ${1:a}_{22} & \\cdots & ${1:a}_{2n} \\\\ - \\vdots & \\vdots & \\ddots & \\vdots \\\\ - ${1:a}_{n1} & ${1:a}_{n2} & \\cdots & ${1:a}_{nn} -\\end{bmatrix} -endsnippet - -priority 300 -snippet subplusmat "omission" iAm -\\begin{bmatrix} - ${1:a}_{11}+${2:b}_{11} & ${1:a}_{12}+${2:b}_{12} & \\cdots & ${1:a}_{1n}+${2:b}_{1n} \\\\ - ${1:a}_{21}+${2:b}_{21} & ${1:a}_{22}+${2:b}_{22} & \\cdots & ${1:a}_{2n}+${2:b}_{2n} \\\\ - \\vdots & \\vdots & \\ddots & \\vdots \\\\ - ${1:a}_{n1}+${2:b}_{n1} & ${1:a}_{n2}+${2:b}_{n2} & \\cdots & ${1:a}_{nn}+${2:b}_{nn} -\\end{bmatrix} -endsnippet - -snippet jacobi "jacobi" iAm -\\begin{bmatrix}\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_${3:n}}\\\\\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_${3:n}}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_${3:n}}\\end{bmatrix} -endsnippet - -# ==== Dynamic Matrix ==== - -priority 300 -snippet `(b|p|v)mata([1-9])` "bmatrix" iiAm -\\begin{``rv = m[1]``matrix}`` - let len = m[2]; - let results = ""; - for (var i=0; i 1 ){ + results += "${" +(order ).toString() + ":" + t[order-2] + "}\t & "; + } + else{ + results += "$" +(order ).toString() + " & "; + } + order ++; + } + results += "$"+(order).toString() +" \\\\" + "\\ "; + order ++; + } + return results; +} + +// 输出一个表格 +function createTable(rows, cols) { + let ret = ""; + let order = 1; + for (let i = 0; i < parseInt(rows) + 2; i++) { + for (let j = 0; j < parseInt(cols); j++) { + if (i === 1) { + ret += "|---"; + } else { + ret += "| $" + (order).toString() + " "; + order++; + } + } + ret += "|\n" + } + return ret; +} + +endglobal + +snippet example "Example" i +\documentclass{article} +\usepackage{amsmath} +\usepackage{amssymb} + +\begin{document} +\title{${1:title}} +\author{Peikun Yang} +\date{\today} +\maketitle +$0 +\end{document} +endsnippet + +# == Fraction Match == + + +snippet // "Fraction" iAm +\\frac{${1:${VISUAL}}}{$2}$0 +endsnippet + +snippet `((\d+)|(\d*)(\\)?([A-Za-z!]+)((\^|_)(\{\d+\}|\d))*)/` "Fraction no ()" iAm +\frac{``rv = m[1]``}{$1}$0 +endsnippet + +priority 200 +snippet `(?<=\s)(\\mu|\\alpha|\\sigma|\\rho|\\beta|\\gamma|\\delta|\\zeta|\\eta|\\varepsilon|\\theta|\\iota|\\kappa|\\vartheta|\\lambda|\\nu|\\pi|\\rho|\\tau|\\upsilon|\\phi|\\chi|\\psi|\\omega|\\Gamma|\\Delta|\\Theta|\\Lambda|\\Xi|\\Pi|\\Sigma|\\Upsilon|\\Phi|\\Psi|\\Omega|[A-Za-z]{1,2})?(_[A-Za-z0-9]|_\{[^}]+\})?(\^[A-Za-z0-9]|\^\{[^}]+\})?(_[A-Za-z0-9]|_\{[^}]+\})?(\([^)]+\))(_[A-Za-z0-9]|_\{[^}]+\})?(\^[A-Za-z0-9]|\^\{[^}]+\})?(_[A-Za-z0-9]|_\{[^}]+\})?\/` "Fraction with ()" iAm +``rv = "\\frac{" + m.slice(1, m.length).join('') + "}{$1}$2"`` +endsnippet + +# == Hat Operation == + +# ==== Auto Capture Hat Operation ==== +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hbar|BAR)` "Bar" iAm +\overline{``rv = m[1] + m[2] + m[3]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(htd|TD)` "tilde" iAm +\tilde{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)bar` "bar" iAm +\bar{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hat|HAT)` "hat" iAm +\hat{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hvec)` "Vector postfix" iAm +\vec{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(rta)` "Vector postfix" iAm +\overrightarrow{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(dot)` "dot" iAm +\dot{``rv = m[1]``} +endsnippet + +priority 1000 +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hdd)` "ddot" iAm +\ddot{``rv = m[1]``} +endsnippet + +# ===== Static Hat Operation ==== + +snippet hbar "bar" iAm +\overline{$1}$0 +endsnippet + +snippet hat "hat" iAm +\hat{$1}$0 +endsnippet + +snippet sq "\sqrt{}" iAm +\sqrt{${1}}$0 +endsnippet + +priority 10000 +snippet psq "\sqrt[]{}" iAm +\sqrt[${2}]{${1}} +endsnippet + +# == Superscript Operation == + +snippet invs "inverse" iAm +^{-1} +endsnippet + +snippet dig "digree" iAm +^{\circ} +endsnippet + +priority 10000 +snippet TR "inverse" iAm +^{\mathsf{T}} +endsnippet + +snippet CL "complement" iAm +^{c} +endsnippet + +snippet R+ "R0+" iAm +R_0^+ +endsnippet + +snippet pow "power" iAm +^{${1:n}} +endsnippet + +snippet tp "to the ... power" iAm +^{${1:2}}$0 +endsnippet + +snippet sr "square" iAm +^{2}$0 +endsnippet + +snippet cb "cube" iAm +^{3}$0 +endsnippet + +# == Subscript Operation == + +snippet td "subscript" iAm +_{${1}}$0 +endsnippet + +snippet sb "subscript" iAm +_{${0}} +endsnippet + +snippet `(})(\d)\2` "auto subscript" iAm +`` rv = m[1] + "_" + m[2]`` +endsnippet + +snippet `([A-Za-z])(\d)` "auto subscript" iAm +`` rv = m[1] + "_" + m[2]`` +endsnippet + +priority 100 +snippet `([A-Za-z])_(\d{2})` "auto subscript" iAm +`` rv = m[1] + "_{" + m[2] + "}$0" `` +endsnippet + +priority 100 +snippet `([A-Za-z])S(\d)` "auto subscript" iAm +`` rv = m[1] + "_{" + m[2] + "$1}$2"`` +endsnippet + +snippet `\b(? "${1:_}" + d + "${2:, }").join('');``\cdots${3:${2:, }${1:_}n} +endsnippet + +snippet `(\d\d+),` "0, 1, 2" iAm +``rv = m[1].split('').map((d) => "${1:_}" + d).join("${2:, }");`` +endsnippet + +snippet <> "hokje" iA +\diamond +endsnippet + +# +... -> , \cdots +# - ... -> , \cdots +# add a space if there already is one. +priority 101 +snippet `(?<=[-+])\s*\.\.\.` "smart cdots" imA + \cdots +endsnippet + +# It seems that \ldots is only used when , ..., +# ,... -> , \ldots +# , ... -> , \ldots +priority 101 +snippet `(?<=,)(\s*)\.\.\.` "smart ldots" imA + \ldots +endsnippet + +snippet ** "dot multiply" iAm +\cdot +endsnippet + +snippet +- "pm" iAm +\pm +endsnippet + +snippet -+ "mp" iAm +\mp +endsnippet + +snippet odot "odot" iAm +\odot +endsnippet + +priority 101 +snippet xx "cross" iAm +\times +endsnippet + +snippet eps "epsilon" iAm +\epsilon +endsnippet + +priority 100 +snippet veps "varepsilon" iAm +\varepsilon +endsnippet + +priority 100 +snippet ell "ell" iAm +\ell +endsnippet + +priority 100 +snippet log "log" iAm +\log +endsnippet + +snippet bin "binom" iAm +\binom{$1}{$2} +endsnippet + +snippet oth "otherwise" iAm +\text{otherwise} +endsnippet + +snippet star "star" iAm +^{*} +endsnippet + +snippet `(? "to" iAm +\to +endsnippet + +snippet !> "mapsto" iAm +\mapsto +endsnippet + +snippet => "implies" iAm +\implies +endsnippet + +snippet =< "implied by" iAm +\impliedby +endsnippet + +priority 200 +snippet iff "if and only if" iAm +\iff +endsnippet + +snippet EE "exist" iAm +\exists +endsnippet + +snippet AA "forall" iAm +\forall +endsnippet + +snippet bec "because" iAm +\because +endsnippet + +snippet thr "therefore" iAm +\therefore +endsnippet + + +# ==== Possibility Symbol ==== + +snippet Pr "Pr" iAm +\operatorname{Pr} +endsnippet + +snippet Var "Var" iAm +\operatorname{Var} +endsnippet + +snippet Cov "Cov" iAm +\operatorname{Cov} +endsnippet + +snippet Exp "Expected" iAm +\mathbb{E} +endsnippet + + +# ==== Compare Symbol ==== + +snippet -- "setminus" iAm +\setminus +endsnippet + +snippet >= "greater than" iAm +\ge $0 +endsnippet + +snippet dis "displaystyle" iAm +\displaystyle +endsnippet + +snippet <= "less than" iAm +\le $0 +endsnippet + +snippet != "no equals" iAm +\neq +endsnippet + +snippet == " constan equals" iAm +\equiv +endsnippet + +snippet sim "sim" iAm +\sim +endsnippet + +snippet `\\sim eq` "simeq" iAm +\simeq +endsnippet + +snippet ~~ " Amppro equals" iAm +\approx +endsnippet + +snippet ~= " Amppro equals2" iAm +\cong +endsnippet + +snippet >> ">>" iAm +\gg +endsnippet + + +snippet << "<<" iAm +\ll +endsnippet + + +# == Auto Environment == + +# ==== Auto Math Mode ==== + +snippet mk "inline Math" wA +\(${1}\)$0 +endsnippet + +snippet dm "display Math" w +\[ +${1} +\] +endsnippet + +snippet dmi "display Math" wA +\[$1\]$0 +endsnippet + +snippet eqt "equation" wA +\begin{equation} + ${1} +\end{equation} +endsnippet + +snippet eqs "equation*" wA +\begin{equation*} + ${1} +\end{equation*} +endsnippet + +# ==== Common Environment ==== + +# snippet case "cases" iAm +# \begin{cases} $1, & $2 \\\\ $3, & $4 \end{cases} +# endsnippet + +snippet ali "aligned" iAm +\begin{aligned} +$1 \\\\ +\end{aligned} +endsnippet + +# == Auto Adaptive Close == + +snippet ceil "ceil" iAm +\left\lceil $1 \right\rceil $0 +endsnippet + +snippet floor "floor" iAm +\left\lfloor $1 \right\rfloor$0 +endsnippet + +priority 100 +snippet @) "left( right)" Aim +\left( ${1} \right) $0 +endsnippet + +priority 100 +snippet @| "left| right|" Aim +\left| ${1} \right| $0 +endsnippet + +priority 100 +snippet @\ "left. right|" Aim +\left. ${1} \right|_{${2}}$0 +endsnippet + +priority 100 +snippet @} "left\{ right\}" Aim +\left\\{ ${1} \right\\} $0 +endsnippet + +priority 100 +snippet set "\{ \}" Aim +\\{ ${1} \\}$0 +endsnippet + +priority 100 +snippet @] "left[ right]" Aim +\left[ ${1} \right] $0 +endsnippet + +priority 100 +snippet @> "leftangle rightangle" iAm +\left<${1} \right>$0 +endsnippet + +priority 200 + +# == Snippet == + +# ==== General Snippet ==== + +# ====== Lite Snippet ====== + +snippet tag "tag" iAm +\tag{$1} +endsnippet + +snippet xyb "Auto (x, y)" iAm +(x, y) +endsnippet + +snippet xyzb "Auto (x, y ,z)" iAm +(x, y, z) +endsnippet + +priority 100 +snippet `\b([a-zA-Z])n(\d)` "x[n+1]" iAm +``rv = m[1]``_{${1:n}+``rv = m[2]``}$0 +endsnippet + +# Unkown +snippet rij "mrij" iAm +(${1:x}_${2:n})_{${3:$2} \\in ${4:N}}$0 +endsnippet + +priority 200 +snippet abs "absolute value" iAm +\left\vert ${1} \right\vert $0 +endsnippet + +snippet beg "begin{} / end{}" bA +\\begin{$1} + $0 +\\end{$1} +endsnippet + +# ======== N Series ======== + +priority 100 +snippet comma "comma" iAm +${1:\\alpha}_1,${1:\\alpha}_2,\\cdots,${1:\\alpha}_${2:n} +endsnippet + +priority 100 +snippet plus "plus" iAm +${1:k}_1${2:\\alpha}_1+${1:k}_2${2:\\alpha}_2+\\cdots+${1:k}_${3:n}${2:\\alpha}_${3:n} +endsnippet + +snippet `\b([ijk])=n` "i=1,2,\cdots,n" iAm +``rv = m[1]``=1,2,\cdots,n +endsnippet + +# ======== Common Operator Snippet ======== + +snippet taylor "taylor" iAm +\sum_{${1:k}=${2:0}}^{${3:\infty}} ${4:c_$1} (x-a)^$1 $0 +endsnippet + +snippet `(?= 2) || (b != 1 && !isO && isL)) ? "\\limits" : ""; +let r = (b == 3) ? "E" : (b == 1 && (isL || isO)) ? "C" : "R"; +final += ((b >= 2) || isO || (b == 1 && isL)) ? "_{${1:" + r + "}}" : "_{${1:-\\infty}}^{${2:\\infty}}"; +let x = (b == 2) ? "A" : (b == 3) ? "V" : (b == 1 && isL) ? "s" : "x"; +final += " ${3} \\mathrm{d}${4:" + x + "}$0"; +rv = final; +`` +endsnippet + +# Custom: Can add more defined operator +priority 100 +snippet `(? 0} \\\\ +\end{aligned} +endsnippet + +priority 300 +snippet Argmax "Optimization problem" iAm +\begin{aligned} +\argmax_{${1:\beta}} +&\quad ${2:f(x)} \\\\ +\text{s.t.} +&\quad ${3:g(x) > 0} \\\\ +\end{aligned} +endsnippet + +snippet deff "Definition of function" iAm +$1\colon ${2:\\mathbb{R\}} \to ${3:\\mathbb{R\}}, ${4:x} \mapsto $0 +endsnippet + + +snippet iid "independent and identical distribution" iAm +\overset{\text{i.i.d.}}{\sim} +endsnippet + +snippet defe "define equal" iAm +\overset{\underset{\mathrm{def}}{}}{=} +endsnippet + +snippet deft "define triangleq" iAm +\triangleq +endsnippet + + +# == Matrix == + +# ==== Static Matrix ==== + +snippet pmat "pmat" wm +\begin{pmatrix} + ${1: } +\end{pmatrix} $0 +endsnippet + +snippet bmat "pmat" wm +\begin{bmatrix} + $1 +\end{bmatrix} $0 +endsnippet + +snippet vecC "column vector" iAm +\begin{bmatrix} ${1:x}_1 \\\\ ${1:x}_2 \\\\ \vdots \\\\ ${1:x}_${2:n} \end{bmatrix} +endsnippet + +snippet vecR "row vector" iAm +\begin{bmatrix} ${1:x}_1, ${1:x}_2, \cdots, ${1:x}_${2:n} \end{bmatrix}$0 +endsnippet + +priority 300 +snippet omis "omission" iAm +\\begin{bmatrix}${1:1}&${2:1}&\\cdots&${4:1}\\\\${5:1}&${6:1}&\\cdots&${8:1}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\${13:1}&${14:1}&\\cdots&${16:1}\\end{bmatrix} +endsnippet + +priority 300 +snippet submat "omission" iAm +\\begin{bmatrix} + ${1:a}_{11} & ${1:a}_{12} & \\cdots & ${1:a}_{1n} \\\\ + ${1:a}_{21} & ${1:a}_{22} & \\cdots & ${1:a}_{2n} \\\\ + \\vdots & \\vdots & \\ddots & \\vdots \\\\ + ${1:a}_{n1} & ${1:a}_{n2} & \\cdots & ${1:a}_{nn} +\\end{bmatrix} +endsnippet + +priority 300 +snippet subplusmat "omission" iAm +\\begin{bmatrix} + ${1:a}_{11}+${2:b}_{11} & ${1:a}_{12}+${2:b}_{12} & \\cdots & ${1:a}_{1n}+${2:b}_{1n} \\\\ + ${1:a}_{21}+${2:b}_{21} & ${1:a}_{22}+${2:b}_{22} & \\cdots & ${1:a}_{2n}+${2:b}_{2n} \\\\ + \\vdots & \\vdots & \\ddots & \\vdots \\\\ + ${1:a}_{n1}+${2:b}_{n1} & ${1:a}_{n2}+${2:b}_{n2} & \\cdots & ${1:a}_{nn}+${2:b}_{nn} +\\end{bmatrix} +endsnippet + +snippet jacobi "jacobi" iAm +\\begin{bmatrix}\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_${3:n}}\\\\\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_${3:n}}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_${3:n}}\\end{bmatrix} +endsnippet + +# ==== Dynamic Matrix ==== + +priority 300 +snippet `(b|p|v)mata([1-9])` "bmatrix" iiAm +\\begin{``rv = m[1]``matrix}`` + let len = m[2]; + let results = ""; + for (var i=0; i 1 ){ - results += "${" +(order ).toString() + ":" + t[order-2] + "}\t & "; - } - else{ - results += "$" +(order ).toString() + " & "; - } - order ++; - } - results += "$"+(order).toString() +" \\\\" + "\\ "; - order ++; - } - return results; -} - -// 输出一个表格 -function createTable(rows, cols) { - let ret = ""; - let order = 1; - for (let i = 0; i < parseInt(rows) + 2; i++) { - for (let j = 0; j < parseInt(cols); j++) { - if (i === 1) { - ret += "|---"; - } else { - ret += "| $" + (order).toString() + " "; - order++; - } - } - ret += "|\n" - } - return ret; -} - -endglobal - - -# == Fraction Match == - -snippet // "Fraction" iAm -\\frac{${1:${VISUAL}}}{$2}$0 -endsnippet - -snippet `((\d+)|(\d*)(\\)?([A-Za-z!]+)((\^|_)(\{\d+\}|\d))*)/` "Fraction no ()" iAm -\frac{``rv = m[1]``}{$1}$0 -endsnippet - -priority 200 -snippet `(?<=\s)(\\mu|\\alpha|\\sigma|\\rho|\\beta|\\gamma|\\delta|\\zeta|\\eta|\\varepsilon|\\theta|\\iota|\\kappa|\\vartheta|\\lambda|\\nu|\\pi|\\rho|\\tau|\\upsilon|\\phi|\\chi|\\psi|\\omega|\\Gamma|\\Delta|\\Theta|\\Lambda|\\Xi|\\Pi|\\Sigma|\\Upsilon|\\Phi|\\Psi|\\Omega|[A-Za-z]{1,2})?(_[A-Za-z0-9]|_\{[^}]+\})?(\^[A-Za-z0-9]|\^\{[^}]+\})?(_[A-Za-z0-9]|_\{[^}]+\})?(\([^)]+\))(_[A-Za-z0-9]|_\{[^}]+\})?(\^[A-Za-z0-9]|\^\{[^}]+\})?(_[A-Za-z0-9]|_\{[^}]+\})?\/` "Fraction with ()" iAm -``rv = "\\frac{" + m.slice(1, m.length).join('') + "}{$1}$2"`` -endsnippet - -# == Hat Operation == - -# ==== Auto Capture Hat Operation ==== -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hbar|BAR)` "Bar" iAm -\overline{``rv = m[1] + m[2] + m[3]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(htd|TD)` "tilde" iAm -\tilde{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)bar` "bar" iAm -\bar{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hat|HAT)` "hat" iAm -\hat{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hvec)` "Vector postfix" iAm -\vec{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(rta)` "Vector postfix" iAm -\overrightarrow{``rv = m[1]``} -endsnippet - -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(dot)` "dot" iAm -\dot{``rv = m[1]``} -endsnippet - -priority 1000 -snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hdd)` "ddot" iAm -\ddot{``rv = m[1]``} -endsnippet - -# ===== Static Hat Operation ==== - -snippet hbar "bar" iAm -\overline{$1}$0 -endsnippet - -snippet hat "hat" iAm -\hat{$1}$0 -endsnippet - -snippet hsq "\sqrt{}" iAm -\sqrt{${1}}$0 -endsnippet - -# == Superscript Operation == - -snippet invs "inverse" iAm -^{-1} -endsnippet - -snippet dig "digree" iAm -^{\circ} -endsnippet - -priority 10000 -snippet TR "inverse" iAm -^{\mathsf{T}} -endsnippet - -snippet CL "complement" iAm -\complement -endsnippet - -snippet R+ "R0+" iAm -R_0^+ -endsnippet - -snippet pow "power" iAm -^{${1:2}}$0 -endsnippet - -snippet tp "to the ... power" iAm -^{${1:2}}$0 -endsnippet - -snippet sr "square" iAm -^{2}$0 -endsnippet - -# == Subscript Operation == - -snippet td "subscript" iAm -_{${1}}$0 -endsnippet - -snippet sb "subscript" iAm -_{${1:2}}$0 -endsnippet - -snippet `(})(\d)\2` "auto subscript" iAm -`` rv = m[1] + "_" + m[2]`` -endsnippet - -snippet `([A-Za-z])(\d)` "auto subscript" iAm -`` rv = m[1] + "_" + m[2]`` -endsnippet - -priority 100 -snippet `([A-Za-z])_(\d{2})` "auto subscript" iAm -`` rv = m[1] + "_{" + m[2] + "}$0" `` -endsnippet - -priority 100 -snippet `([A-Za-z])S(\d)` "auto subscript" iAm -`` rv = m[1] + "_{" + m[2] + "$1}$2"`` -endsnippet - -snippet `\b(? "${1:_}" + d + "${2:, }").join('');``\cdots${3:${2:, }${1:_}n} -endsnippet - -snippet `(\d\d+),` "0, 1, 2" iAm -``rv = m[1].split('').map((d) => "${1:_}" + d).join("${2:, }");`` -endsnippet - -snippet <> "hokje" imA -\diamond -endsnippet - -# +... -> , \cdots -# - ... -> , \cdots -# add a space if there already is one. -priority 101 -snippet `(?<=[-+])\s*\.\.\.` "smart cdots" imA - \cdots -endsnippet - -# It seems that \ldots is only used when , ..., -# ,... -> , \ldots -# , ... -> , \ldots -priority 101 -snippet `(?<=,)(\s*)\.\.\.` "smart ldots" imA - \ldots -endsnippet - -snippet ** "dot multiply" iAm -\cdot -endsnippet - -snippet +- "pm" iAm -\pm -endsnippet - -snippet -+ "mp" iAm -\mp -endsnippet - -snippet odot "odot" iAm -\odot -endsnippet - -priority 101 -snippet xx "cross" iAm -\times -endsnippet - -snippet eps "epsilon" iAm -\epsilon -endsnippet - -priority 100 -snippet veps "varepsilon" iAm -\varepsilon -endsnippet - -priority 100 -snippet ell "ell" iAm -\ell -endsnippet - -priority 100 -snippet log "log" iAm -\log -endsnippet - -snippet bin "binom" iAm -\binom{$1}{$2} -endsnippet - -snippet oth "otherwise" iAm -\text{otherwise} -endsnippet - -snippet star "star" iAm -\star -endsnippet - -priority 100 -snippet pstar "star" iAm -^{*}$1 -endsnippet - -priority 100 -snippet `(? "to" iAm -\to -endsnippet - -snippet !> "mapsto" iAm -\mapsto -endsnippet - -snippet => "implies" iAm -\implies -endsnippet - -snippet =< "implied by" iAm -\impliedby -endsnippet - -priority 200 -snippet iff "if and only if" iAm -\iff -endsnippet - -snippet EE "exist" iAm -\exists -endsnippet - -snippet AA "forall" iAm -\forall -endsnippet - -snippet bec "because" iAm -\because -endsnippet - -snippet thr "therefore" iAm -\therefore -endsnippet - - -# ==== Possibility Symbol ==== - -snippet Pr "Pr" iAm -\operatorname{Pr} -endsnippet - -snippet Var "Var" iAm -\operatorname{Var} -endsnippet - -snippet Cov "Cov" iAm -\operatorname{Cov} -endsnippet - -snippet Exp "Expected" iAm -\mathbb{E} -endsnippet - - -# ==== Compare Symbol ==== - -snippet -- "setminus" iAm -\setminus -endsnippet - -snippet >= "greater than" iAm -\ge $0 -endsnippet - -snippet dis "displaystyle" iAm -\displaystyle -endsnippet - -snippet <= "less than" iAm -\le $0 -endsnippet - -snippet != "no equals" iAm -\neq -endsnippet - -snippet == " constan equals" iAm -\equiv -endsnippet - -snippet sim "sim" iAm -\sim -endsnippet - -snippet `\\sim eq` "simeq" iAm -\simeq -endsnippet - -snippet ~~ " Amppro equals" iAm -\approx -endsnippet - -snippet ~= " Amppro equals2" iAm -\cong -endsnippet - -snippet >> ">>" iAm -\gg -endsnippet - - -snippet << "<<" iAm -\ll -endsnippet - - -# == Auto Environment == - -# ==== Auto Math Mode ==== - -snippet mk "inline Math" wA -$${1}$$0 -endsnippet - -snippet dm "display Math" wA -$$ -${1} -$$$0 -endsnippet - -snippet eqt "equation" wA -\begin{equation} - ${1} -\end{equation} -endsnippet - -snippet eqs "equation*" wA -\begin{equation*} - ${1} -\end{equation*} -endsnippet - -# ==== Common Environment ==== - -snippet case "cases" iAm -\begin{cases} $1, & $2 \\\\ $3, & $4 \end{cases} -endsnippet - -snippet ali "aligned" iAm -\begin{aligned} -$1 \\\\ -\end{aligned} -endsnippet - -# == Auto Adaptive Close == - -snippet ceil "ceil" iAm -\left\lceil $1 \right\rceil $0 -endsnippet - -snippet floor "floor" iAm -\left\lfloor $1 \right\rfloor$0 -endsnippet - -priority 100 -snippet @) "left( right)" Aim -\left( ${1} \right) $0 -endsnippet - -priority 100 -snippet @| "left| right|" Aim -\left| ${1} \right| $0 -endsnippet - -priority 100 -snippet @\ "left. right|" Aim -\left. ${1} \right|_{${2}}$0 -endsnippet - -priority 100 -snippet @} "left\{ right\}" Aim -\left\\{ ${1} \right\\} $0 -endsnippet - -priority 100 -snippet set "\{ \}" Aim -\\{ ${1} \\}$0 -endsnippet - -priority 100 -snippet @] "left[ right]" Aim -\left[ ${1} \right] $0 -endsnippet - -priority 100 -snippet @> "leftangle rightangle" iAm -\left<${1} \right>$0 -endsnippet - -priority 200 -snippet norm iAm -\left\| ${1} \right\|$2 -endsnippet - -# == Snippet == - -# ==== General Snippet ==== - -# ====== Lite Snippet ====== - -snippet tag "tag" iAm -\tag{$1} -endsnippet - -snippet xyb "Auto (x, y)" iAm -(x, y) -endsnippet - -snippet xyzb "Auto (x, y ,z)" iAm -(x, y, z) -endsnippet - -priority 100 -snippet `\b([a-zA-Z])n(\d)` "x[n+1]" iAm -``rv = m[1]``_{${1:n}+``rv = m[2]``}$0 -endsnippet - -# Unkown -snippet rij "mrij" iAm -(${1:x}_${2:n})_{${3:$2} \\in ${4:N}}$0 -endsnippet - -priority 200 -snippet abs "absolute value" iAm -\left\vert ${1} \right\vert $0 -endsnippet - -snippet beg "begin{} / end{}" bA -\\begin{$1} - $0 -\\end{$1} -endsnippet - -# ======== N Series ======== - -priority 100 -snippet comma "comma" iAm -${1:\\alpha}_1,${1:\\alpha}_2,\\cdots,${1:\\alpha}_${2:n} -endsnippet - -priority 100 -snippet plus "plus" iAm -${1:k}_1${2:\\alpha}_1+${1:k}_2${2:\\alpha}_2+\\cdots+${1:k}_${3:n}${2:\\alpha}_${3:n} -endsnippet - -snippet `\b([ijk])=n` "i=1,2,\cdots,n" iAm -``rv = m[1]``=1,2,\cdots,n -endsnippet - -# ======== Common Operator Snippet ======== - -snippet taylor "taylor" iAm -\sum_{${1:k}=${2:0}}^{${3:\infty}} ${4:c_$1} (x-a)^$1 $0 -endsnippet - -snippet `(?= 2) || (b != 1 && !isO && isL)) ? "\\limits" : ""; -let r = (b == 3) ? "E" : (b == 1 && (isL || isO)) ? "C" : "R"; -final += ((b >= 2) || isO || (b == 1 && isL)) ? "_{${1:" + r + "}}" : "_{${1:-\\infty}}^{${2:\\infty}}"; -let x = (b == 2) ? "A" : (b == 3) ? "V" : (b == 1 && isL) ? "s" : "x"; -final += " ${3} \\mathrm{d}${4:" + x + "}$0"; -rv = final; -`` -endsnippet - -# Custom: Can add more defined operator -priority 100 -snippet `(? 0} \\\\ -\end{aligned} -endsnippet - -priority 300 -snippet Argmax "Optimization problem" iAm -\begin{aligned} -\argmax_{${1:\beta}} -&\quad ${2:f(x)} \\\\ -\text{s.t.} -&\quad ${3:g(x) > 0} \\\\ -\end{aligned} -endsnippet - -snippet deff "Definition of function" iAm -$1\colon ${2:\\mathbb{R\}} \to ${3:\\mathbb{R\}}, ${4:x} \mapsto $0 -endsnippet - - -snippet iid "independent and identical distribution" iAm -\overset{\text{i.i.d.}}{\sim} -endsnippet - -snippet defe "define equal" iAm -\overset{\underset{\mathrm{def}}{}}{=} -endsnippet - -snippet deft "define triangleq" iAm -\triangleq -endsnippet - - -# == Matrix == - -# ==== Static Matrix ==== - -snippet pmat "pmat" wm -\begin{pmatrix} - ${1: } -\end{pmatrix} $0 -endsnippet - -snippet bmat "pmat" wm -\begin{bmatrix} - $1 -\end{bmatrix} $0 -endsnippet - -snippet vecC "column vector" iAm -\begin{bmatrix} ${1:x}_1 \\\\ ${1:x}_2 \\\\ \vdots \\\\ ${1:x}_${2:n} \end{bmatrix} -endsnippet - -snippet vecR "row vector" iAm -\begin{bmatrix} ${1:x}_1, ${1:x}_2, \cdots, ${1:x}_${2:n} \end{bmatrix}$0 -endsnippet - -priority 300 -snippet omis "omission" iAm -\\begin{bmatrix}${1:1}&${2:1}&\\cdots&${4:1}\\\\${5:1}&${6:1}&\\cdots&${8:1}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\${13:1}&${14:1}&\\cdots&${16:1}\\end{bmatrix} -endsnippet - -priority 300 -snippet submat "omission" iAm -\\begin{bmatrix} - ${1:a}_{11} & ${1:a}_{12} & \\cdots & ${1:a}_{1n} \\\\ - ${1:a}_{21} & ${1:a}_{22} & \\cdots & ${1:a}_{2n} \\\\ - \\vdots & \\vdots & \\ddots & \\vdots \\\\ - ${1:a}_{n1} & ${1:a}_{n2} & \\cdots & ${1:a}_{nn} -\\end{bmatrix} -endsnippet - -priority 300 -snippet subplusmat "omission" iAm -\\begin{bmatrix} - ${1:a}_{11}+${2:b}_{11} & ${1:a}_{12}+${2:b}_{12} & \\cdots & ${1:a}_{1n}+${2:b}_{1n} \\\\ - ${1:a}_{21}+${2:b}_{21} & ${1:a}_{22}+${2:b}_{22} & \\cdots & ${1:a}_{2n}+${2:b}_{2n} \\\\ - \\vdots & \\vdots & \\ddots & \\vdots \\\\ - ${1:a}_{n1}+${2:b}_{n1} & ${1:a}_{n2}+${2:b}_{n2} & \\cdots & ${1:a}_{nn}+${2:b}_{nn} -\\end{bmatrix} -endsnippet - -snippet jacobi "jacobi" iAm -\\begin{bmatrix}\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_${3:n}}\\\\\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_${3:n}}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_${3:n}}\\end{bmatrix} -endsnippet - -# ==== Dynamic Matrix ==== - -priority 300 -snippet `(b|p|v)mata([1-9])` "bmatrix" iiAm -\\begin{``rv = m[1]``matrix}`` - let len = m[2]; - let results = ""; - for (var i=0; i 1 ){ + results += "${" +(order ).toString() + ":" + t[order-2] + "}\t & "; + } + else{ + results += "$" +(order ).toString() + " & "; + } + order ++; + } + results += "$"+(order).toString() +" \\\\" + "\\ "; + order ++; + } + return results; +} + +// 输出一个表格 +function createTable(rows, cols) { + let ret = ""; + let order = 1; + for (let i = 0; i < parseInt(rows) + 2; i++) { + for (let j = 0; j < parseInt(cols); j++) { + if (i === 1) { + ret += "|---"; + } else { + ret += "| $" + (order).toString() + " "; + order++; + } + } + ret += "|\n" + } + return ret; +} + +endglobal + + +# == Fraction Match == + +snippet // "Fraction" iAm +\\frac{${1:${VISUAL}}}{$2}$0 +endsnippet + +snippet `((\d+)|(\d*)(\\)?([A-Za-z!]+)((\^|_)(\{\d+\}|\d))*)/` "Fraction no ()" iAm +\frac{``rv = m[1]``}{$1}$0 +endsnippet + +priority 200 +snippet `(?<=\s)(\\mu|\\alpha|\\sigma|\\rho|\\beta|\\gamma|\\delta|\\zeta|\\eta|\\varepsilon|\\theta|\\iota|\\kappa|\\vartheta|\\lambda|\\nu|\\pi|\\rho|\\tau|\\upsilon|\\phi|\\chi|\\psi|\\omega|\\Gamma|\\Delta|\\Theta|\\Lambda|\\Xi|\\Pi|\\Sigma|\\Upsilon|\\Phi|\\Psi|\\Omega|[A-Za-z]{1,2})?(_[A-Za-z0-9]|_\{[^}]+\})?(\^[A-Za-z0-9]|\^\{[^}]+\})?(_[A-Za-z0-9]|_\{[^}]+\})?(\([^)]+\))(_[A-Za-z0-9]|_\{[^}]+\})?(\^[A-Za-z0-9]|\^\{[^}]+\})?(_[A-Za-z0-9]|_\{[^}]+\})?\/` "Fraction with ()" iAm +``rv = "\\frac{" + m.slice(1, m.length).join('') + "}{$1}$2"`` +endsnippet + +# == Hat Operation == + +# ==== Auto Capture Hat Operation ==== +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hbar|BAR)` "Bar" iAm +\overline{``rv = m[1] + m[2] + m[3]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(htd|TD)` "tilde" iAm +\tilde{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)bar` "bar" iAm +\bar{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hat|HAT)` "hat" iAm +\hat{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hvec)` "Vector postfix" iAm +\vec{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(rta)` "Vector postfix" iAm +\overrightarrow{``rv = m[1]``} +endsnippet + +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(dot)` "dot" iAm +\dot{``rv = m[1]``} +endsnippet + +priority 1000 +snippet `(\\?[a-zA-Z]\w*({?\w*})?)(hdd)` "ddot" iAm +\ddot{``rv = m[1]``} +endsnippet + +# ===== Static Hat Operation ==== + +snippet hbar "bar" iAm +\overline{$1}$0 +endsnippet + +snippet hat "hat" iAm +\hat{$1}$0 +endsnippet + +snippet hsq "\sqrt{}" iAm +\sqrt{${1}}$0 +endsnippet + +# == Superscript Operation == + +snippet invs "inverse" iAm +^{-1} +endsnippet + +snippet dig "digree" iAm +^{\circ} +endsnippet + +priority 10000 +snippet TR "inverse" iAm +^{\mathsf{T}} +endsnippet + +snippet CL "complement" iAm +\complement +endsnippet + +snippet R+ "R0+" iAm +R_0^+ +endsnippet + +snippet pow "power" iAm +^{${1:2}}$0 +endsnippet + +snippet tp "to the ... power" iAm +^{${1:2}}$0 +endsnippet + +snippet sr "square" iAm +^{2}$0 +endsnippet + +# == Subscript Operation == + +snippet td "subscript" iAm +_{${1}}$0 +endsnippet + +snippet sb "subscript" iAm +_{${1:2}}$0 +endsnippet + +snippet `(})(\d)\2` "auto subscript" iAm +`` rv = m[1] + "_" + m[2]`` +endsnippet + +snippet `([A-Za-z])(\d)` "auto subscript" iAm +`` rv = m[1] + "_" + m[2]`` +endsnippet + +priority 100 +snippet `([A-Za-z])_(\d{2})` "auto subscript" iAm +`` rv = m[1] + "_{" + m[2] + "}$0" `` +endsnippet + +priority 100 +snippet `([A-Za-z])S(\d)` "auto subscript" iAm +`` rv = m[1] + "_{" + m[2] + "$1}$2"`` +endsnippet + +snippet `\b(? "${1:_}" + d + "${2:, }").join('');``\cdots${3:${2:, }${1:_}n} +endsnippet + +snippet `(\d\d+),` "0, 1, 2" iAm +``rv = m[1].split('').map((d) => "${1:_}" + d).join("${2:, }");`` +endsnippet + +snippet <> "hokje" imA +\diamond +endsnippet + +# +... -> , \cdots +# - ... -> , \cdots +# add a space if there already is one. +priority 101 +snippet `(?<=[-+])\s*\.\.\.` "smart cdots" imA + \cdots +endsnippet + +# It seems that \ldots is only used when , ..., +# ,... -> , \ldots +# , ... -> , \ldots +priority 101 +snippet `(?<=,)(\s*)\.\.\.` "smart ldots" imA + \ldots +endsnippet + +snippet ** "dot multiply" iAm +\cdot +endsnippet + +snippet +- "pm" iAm +\pm +endsnippet + +snippet -+ "mp" iAm +\mp +endsnippet + +snippet odot "odot" iAm +\odot +endsnippet + +priority 101 +snippet xx "cross" iAm +\times +endsnippet + +snippet eps "epsilon" iAm +\epsilon +endsnippet + +priority 100 +snippet veps "varepsilon" iAm +\varepsilon +endsnippet + +priority 100 +snippet ell "ell" iAm +\ell +endsnippet + +priority 100 +snippet log "log" iAm +\log +endsnippet + +snippet bin "binom" iAm +\binom{$1}{$2} +endsnippet + +snippet oth "otherwise" iAm +\text{otherwise} +endsnippet + +snippet star "star" iAm +\star +endsnippet + +priority 100 +snippet pstar "star" iAm +^{*}$1 +endsnippet + +priority 100 +snippet `(? "to" iAm +\to +endsnippet + +snippet !> "mapsto" iAm +\mapsto +endsnippet + +snippet => "implies" iAm +\implies +endsnippet + +snippet =< "implied by" iAm +\impliedby +endsnippet + +priority 200 +snippet iff "if and only if" iAm +\iff +endsnippet + +snippet EE "exist" iAm +\exists +endsnippet + +snippet AA "forall" iAm +\forall +endsnippet + +snippet bec "because" iAm +\because +endsnippet + +snippet thr "therefore" iAm +\therefore +endsnippet + + +# ==== Possibility Symbol ==== + +snippet Pr "Pr" iAm +\operatorname{Pr} +endsnippet + +snippet Var "Var" iAm +\operatorname{Var} +endsnippet + +snippet Cov "Cov" iAm +\operatorname{Cov} +endsnippet + +snippet Exp "Expected" iAm +\mathbb{E} +endsnippet + + +# ==== Compare Symbol ==== + +snippet -- "setminus" iAm +\setminus +endsnippet + +snippet >= "greater than" iAm +\ge $0 +endsnippet + +snippet dis "displaystyle" iAm +\displaystyle +endsnippet + +snippet <= "less than" iAm +\le $0 +endsnippet + +snippet != "no equals" iAm +\neq +endsnippet + +snippet == " constan equals" iAm +\equiv +endsnippet + +snippet sim "sim" iAm +\sim +endsnippet + +snippet `\\sim eq` "simeq" iAm +\simeq +endsnippet + +snippet ~~ " Amppro equals" iAm +\approx +endsnippet + +snippet ~= " Amppro equals2" iAm +\cong +endsnippet + +snippet >> ">>" iAm +\gg +endsnippet + + +snippet << "<<" iAm +\ll +endsnippet + + +# == Auto Environment == + +# ==== Auto Math Mode ==== + +snippet mk "inline Math" wA +$${1}$$0 +endsnippet + +snippet dm "display Math" wA +$$ +${1} +$$$0 +endsnippet + +snippet eqt "equation" wA +\begin{equation} + ${1} +\end{equation} +endsnippet + +snippet eqs "equation*" wA +\begin{equation*} + ${1} +\end{equation*} +endsnippet + +# ==== Common Environment ==== + +snippet case "cases" iAm +\begin{cases} $1, & $2 \\\\ $3, & $4 \end{cases} +endsnippet + +snippet ali "aligned" iAm +\begin{aligned} +$1 \\\\ +\end{aligned} +endsnippet + +# == Auto Adaptive Close == + +snippet ceil "ceil" iAm +\left\lceil $1 \right\rceil $0 +endsnippet + +snippet floor "floor" iAm +\left\lfloor $1 \right\rfloor$0 +endsnippet + +priority 100 +snippet @) "left( right)" Aim +\left( ${1} \right) $0 +endsnippet + +priority 100 +snippet @| "left| right|" Aim +\left| ${1} \right| $0 +endsnippet + +priority 100 +snippet @\ "left. right|" Aim +\left. ${1} \right|_{${2}}$0 +endsnippet + +priority 100 +snippet @} "left\{ right\}" Aim +\left\\{ ${1} \right\\} $0 +endsnippet + +priority 100 +snippet set "\{ \}" Aim +\\{ ${1} \\}$0 +endsnippet + +priority 100 +snippet @] "left[ right]" Aim +\left[ ${1} \right] $0 +endsnippet + +priority 100 +snippet @> "leftangle rightangle" iAm +\left<${1} \right>$0 +endsnippet + +priority 200 +snippet norm iAm +\left\| ${1} \right\|$2 +endsnippet + +# == Snippet == + +# ==== General Snippet ==== + +# ====== Lite Snippet ====== + +snippet tag "tag" iAm +\tag{$1} +endsnippet + +snippet xyb "Auto (x, y)" iAm +(x, y) +endsnippet + +snippet xyzb "Auto (x, y ,z)" iAm +(x, y, z) +endsnippet + +priority 100 +snippet `\b([a-zA-Z])n(\d)` "x[n+1]" iAm +``rv = m[1]``_{${1:n}+``rv = m[2]``}$0 +endsnippet + +# Unkown +snippet rij "mrij" iAm +(${1:x}_${2:n})_{${3:$2} \\in ${4:N}}$0 +endsnippet + +priority 200 +snippet abs "absolute value" iAm +\left\vert ${1} \right\vert $0 +endsnippet + +snippet beg "begin{} / end{}" bA +\\begin{$1} + $0 +\\end{$1} +endsnippet + +# ======== N Series ======== + +priority 100 +snippet comma "comma" iAm +${1:\\alpha}_1,${1:\\alpha}_2,\\cdots,${1:\\alpha}_${2:n} +endsnippet + +priority 100 +snippet plus "plus" iAm +${1:k}_1${2:\\alpha}_1+${1:k}_2${2:\\alpha}_2+\\cdots+${1:k}_${3:n}${2:\\alpha}_${3:n} +endsnippet + +snippet `\b([ijk])=n` "i=1,2,\cdots,n" iAm +``rv = m[1]``=1,2,\cdots,n +endsnippet + +# ======== Common Operator Snippet ======== + +snippet taylor "taylor" iAm +\sum_{${1:k}=${2:0}}^{${3:\infty}} ${4:c_$1} (x-a)^$1 $0 +endsnippet + +snippet `(?= 2) || (b != 1 && !isO && isL)) ? "\\limits" : ""; +let r = (b == 3) ? "E" : (b == 1 && (isL || isO)) ? "C" : "R"; +final += ((b >= 2) || isO || (b == 1 && isL)) ? "_{${1:" + r + "}}" : "_{${1:-\\infty}}^{${2:\\infty}}"; +let x = (b == 2) ? "A" : (b == 3) ? "V" : (b == 1 && isL) ? "s" : "x"; +final += " ${3} \\mathrm{d}${4:" + x + "}$0"; +rv = final; +`` +endsnippet + +# Custom: Can add more defined operator +priority 100 +snippet `(? 0} \\\\ +\end{aligned} +endsnippet + +priority 300 +snippet Argmax "Optimization problem" iAm +\begin{aligned} +\argmax_{${1:\beta}} +&\quad ${2:f(x)} \\\\ +\text{s.t.} +&\quad ${3:g(x) > 0} \\\\ +\end{aligned} +endsnippet + +snippet deff "Definition of function" iAm +$1\colon ${2:\\mathbb{R\}} \to ${3:\\mathbb{R\}}, ${4:x} \mapsto $0 +endsnippet + + +snippet iid "independent and identical distribution" iAm +\overset{\text{i.i.d.}}{\sim} +endsnippet + +snippet defe "define equal" iAm +\overset{\underset{\mathrm{def}}{}}{=} +endsnippet + +snippet deft "define triangleq" iAm +\triangleq +endsnippet + + +# == Matrix == + +# ==== Static Matrix ==== + +snippet pmat "pmat" wm +\begin{pmatrix} + ${1: } +\end{pmatrix} $0 +endsnippet + +snippet bmat "pmat" wm +\begin{bmatrix} + $1 +\end{bmatrix} $0 +endsnippet + +snippet vecC "column vector" iAm +\begin{bmatrix} ${1:x}_1 \\\\ ${1:x}_2 \\\\ \vdots \\\\ ${1:x}_${2:n} \end{bmatrix} +endsnippet + +snippet vecR "row vector" iAm +\begin{bmatrix} ${1:x}_1, ${1:x}_2, \cdots, ${1:x}_${2:n} \end{bmatrix}$0 +endsnippet + +priority 300 +snippet omis "omission" iAm +\\begin{bmatrix}${1:1}&${2:1}&\\cdots&${4:1}\\\\${5:1}&${6:1}&\\cdots&${8:1}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\${13:1}&${14:1}&\\cdots&${16:1}\\end{bmatrix} +endsnippet + +priority 300 +snippet submat "omission" iAm +\\begin{bmatrix} + ${1:a}_{11} & ${1:a}_{12} & \\cdots & ${1:a}_{1n} \\\\ + ${1:a}_{21} & ${1:a}_{22} & \\cdots & ${1:a}_{2n} \\\\ + \\vdots & \\vdots & \\ddots & \\vdots \\\\ + ${1:a}_{n1} & ${1:a}_{n2} & \\cdots & ${1:a}_{nn} +\\end{bmatrix} +endsnippet + +priority 300 +snippet subplusmat "omission" iAm +\\begin{bmatrix} + ${1:a}_{11}+${2:b}_{11} & ${1:a}_{12}+${2:b}_{12} & \\cdots & ${1:a}_{1n}+${2:b}_{1n} \\\\ + ${1:a}_{21}+${2:b}_{21} & ${1:a}_{22}+${2:b}_{22} & \\cdots & ${1:a}_{2n}+${2:b}_{2n} \\\\ + \\vdots & \\vdots & \\ddots & \\vdots \\\\ + ${1:a}_{n1}+${2:b}_{n1} & ${1:a}_{n2}+${2:b}_{n2} & \\cdots & ${1:a}_{nn}+${2:b}_{nn} +\\end{bmatrix} +endsnippet + +snippet jacobi "jacobi" iAm +\\begin{bmatrix}\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_1}{\\partial ${2:x}_${3:n}}\\\\\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_2}{\\partial ${2:x}_${3:n}}\\\\\\vdots&\\vdots&\\ddots&\\vdots\\\\\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_1}&\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_2}&\\cdots&\\frac{\\partial ${1:f}_${3:m}}{\\partial ${2:x}_${3:n}}\\end{bmatrix} +endsnippet + +# ==== Dynamic Matrix ==== + +priority 300 +snippet `(b|p|v)mata([1-9])` "bmatrix" iiAm +\\begin{``rv = m[1]``matrix}`` + let len = m[2]; + let results = ""; + for (var i=0; i ${2:oo}) -endsnippet - -snippet derive "derive" iAm -derive(${1:f}, ${2:x}) -endsnippet - -snippet part "partial" iAm -(diff ${1:f})/(diff ${3:x}) -endsnippet - -snippet sb "subscript" iAm -_(${1:2}) -endsnippet - -snippet sr "square" iAm -^2 -endsnippet - -snippet pow "to the ... power" iAm -^(${1:3}) -endsnippet - -snippet veps "epsilon.alt" iAm -epsilon.alt -endsnippet - -snippet ;; "\;" iAm -\; -endsnippet - -snippet ,, "\," iAm -\, -endsnippet - -snippet `([A-Za-z\)])(\d)` "auto subscript" iAm -`` rv = m[1] + "_" + m[2]`` -endsnippet - -snippet `([A-Za-z\)])_(\d{2})` "auto subscript" iAm -`` rv = m[1] + "_(" + m[2] + ")" `` -endsnippet - -snippet `(? ${2:oo}) +endsnippet + +snippet derive "derive" iAm +derive(${1:f}, ${2:x}) +endsnippet + +snippet part "partial" iAm +(diff ${1:f})/(diff ${3:x}) +endsnippet + +snippet sb "subscript" iAm +_(${1:2}) +endsnippet + +snippet sr "square" iAm +^2 +endsnippet + +snippet pow "to the ... power" iAm +^(${1:3}) +endsnippet + +snippet veps "epsilon.alt" iAm +epsilon.alt +endsnippet + +snippet ;; "\;" iAm +\; +endsnippet + +snippet ,, "\," iAm +\, +endsnippet + +snippet `([A-Za-z\)])(\d)` "auto subscript" iAm +`` rv = m[1] + "_" + m[2]`` +endsnippet + +snippet `([A-Za-z\)])_(\d{2})` "auto subscript" iAm +`` rv = m[1] + "_(" + m[2] + ")" `` +endsnippet + +snippet `(? -noremap vspacecode.space - - -" Switch between tabs -nnoremap H :bprevious -nnoremap L :bnext -vnoremap H ^ -xnoremap H ^ -onoremap H ^ -vnoremap L $ -xnoremap L $ -onoremap L $ - - -noremap J 5j -noremap K 5k - -" Similar position to i -" The `noremap` implements text-object-like behavior in VSCodeVim - -" Y to yank to end of line -noremap Y y$ - -nnoremap removeSecondaryCursors - - -" lsp -noremap gi editor.action.goToImplementation -noremap gpi editor.action.peekImplementation -noremap gd editor.action.goToDefinition -noremap gpd editor.action.peekDefinition -noremap gt editor.action.goToTypeDefinition -noremap gpt editor.action.peekTypeDefinition -noremap gh editor.action.showDefinitionPreviewHover -noremap gr editor.action.goToReferences -noremap gpr editor.action.referenceSearch.trigger -noremap ga editor.action.quickFix - -" Rename, or [c]hange [d]efinition -nnoremap cd editor.action.rename - -" Requires matchit by redguardtoo -" nnoremap % extension.matchitJumpItems - -noremap zR editor.foldAll - -" keep selection after indent -vnoremap < editor.action.outdentLines -vnoremap > editor.action.indentLines - -nnoremap [g editor.action.editor.previousChange -nnoremap ]g editor.action.editor.nextChange - -" 分词版本的w和b,支持中文,需要插件 -" 为了保证递归解析,而不是打断,使用 `nmap` 而不是 `nnoremap` -" Comment if you don't use cjk or the plugin -" This is buggy -"nmap w cjkWordHandler.cursorWordEndRight -"nmap b cjkWordHandler.cursorWordStartLeft - -" will be parsed by VSCode itself. -" noremap n j -" noremap e k -" noremap i l -" noremap x workbench.action.toggleEditorGroupLayout -" " Use C-w C-w as original C-w -" noremap workbench.action.closeActiveEditor -" noremap workbench.action.togglePanel +" ~/.config/vscode/vscode.vimrc +" New-Item -ItemType SymbolicLink -Path ~\.config\vscode\vscode.vimrc -Target ~\.dotfiles\vscode\vscode.vimrc +" ln -sf $DOTFILES/vscode/vscode.vimrc $XDG_CONFIG_HOME/vscode/vscode.vimrc +" And go to vscode vim setting: +"vim.vimrc.path": "$HOME/.config/vscode/vscode.vimrc", + +" For all available options see +" https://github.com/VSCodeVim/Vim/blob/d41e286e9238b004f02b425d082d3b4181d83368/src/configuration/vimrc.ts#L120-L407 + + +" Use VSpaceCode instead of +noremap vspacecode.space + + +" Switch between tabs +nnoremap H :bprevious +nnoremap L :bnext +vnoremap H ^ +xnoremap H ^ +onoremap H ^ +vnoremap L $ +xnoremap L $ +onoremap L $ + + +noremap J 5j +noremap K 5k + +" Similar position to i +" The `noremap` implements text-object-like behavior in VSCodeVim + +" Y to yank to end of line +noremap Y y$ + +nnoremap removeSecondaryCursors + + +" lsp +noremap gi editor.action.goToImplementation +noremap gpi editor.action.peekImplementation +noremap gd editor.action.goToDefinition +noremap gpd editor.action.peekDefinition +noremap gt editor.action.goToTypeDefinition +noremap gpt editor.action.peekTypeDefinition +noremap gh editor.action.showDefinitionPreviewHover +noremap gr editor.action.goToReferences +noremap gpr editor.action.referenceSearch.trigger +noremap ga editor.action.quickFix + +" Rename, or [c]hange [d]efinition +nnoremap cd editor.action.rename + +" Requires matchit by redguardtoo +" nnoremap % extension.matchitJumpItems + +noremap zR editor.foldAll + +" keep selection after indent +vnoremap < editor.action.outdentLines +vnoremap > editor.action.indentLines + +nnoremap [g editor.action.editor.previousChange +nnoremap ]g editor.action.editor.nextChange + +" 分词版本的w和b,支持中文,需要插件 +" 为了保证递归解析,而不是打断,使用 `nmap` 而不是 `nnoremap` +" Comment if you don't use cjk or the plugin +" This is buggy +"nmap w cjkWordHandler.cursorWordEndRight +"nmap b cjkWordHandler.cursorWordStartLeft + +" will be parsed by VSCode itself. +" noremap n j +" noremap e k +" noremap i l +" noremap x workbench.action.toggleEditorGroupLayout +" " Use C-w C-w as original C-w +" noremap workbench.action.closeActiveEditor +" noremap workbench.action.togglePanel diff --git a/platforms/win/Microsoft.PowerShell_profile.ps1 b/misc/windows/Microsoft.PowerShell_profile.ps1 similarity index 100% rename from platforms/win/Microsoft.PowerShell_profile.ps1 rename to misc/windows/Microsoft.PowerShell_profile.ps1 diff --git a/platforms/win/SumatraPDF-shortcuts.txt b/misc/windows/SumatraPDF-shortcuts.txt similarity index 100% rename from platforms/win/SumatraPDF-shortcuts.txt rename to misc/windows/SumatraPDF-shortcuts.txt diff --git a/platforms/win/fastfetch.jsonc b/misc/windows/fastfetch.jsonc similarity index 100% rename from platforms/win/fastfetch.jsonc rename to misc/windows/fastfetch.jsonc diff --git a/platforms/win/neovide.toml b/misc/windows/neovide.toml similarity index 94% rename from platforms/win/neovide.toml rename to misc/windows/neovide.toml index 1ffc2d5..755028c 100644 --- a/platforms/win/neovide.toml +++ b/misc/windows/neovide.toml @@ -1,18 +1,18 @@ -fork = false -frame = "full" -idle = true -maximized = false -no-multigrid = false -srgb = false -tabs = true -theme = "auto" -title-hidden = true -vsync = false -wsl = true - -[font] -normal = [ - "Iosevka Nerd Font", - "霞鹜文楷等宽", -] # Will use the bundled Fira Code Nerd Font by default -size = 14.0 +fork = false +frame = "full" +idle = true +maximized = false +no-multigrid = false +srgb = false +tabs = true +theme = "auto" +title-hidden = true +vsync = false +wsl = true + +[font] +normal = [ + "Iosevka Nerd Font", + "霞鹜文楷等宽", +] # Will use the bundled Fira Code Nerd Font by default +size = 14.0 diff --git a/platforms/win/readme.md b/misc/windows/readme.md similarity index 97% rename from platforms/win/readme.md rename to misc/windows/readme.md index 5280122..c7a46f3 100644 --- a/platforms/win/readme.md +++ b/misc/windows/readme.md @@ -1,82 +1,82 @@ -# Windows dotfiles - -![Windows](../../_assets/windows-1.png) - -- Terminal Emulator: [WezTerm](../../tools/wezterm/) -- Tiling Window Manager: [GlazeWM](./glzr/glazewm/config.yaml) -- Status Bar: [Zebar](./glzr/zebar/settings.json) -- Quake Terminal: [Windows Terminal](./WindowsTerminal.json) -- Shell: [PowerShell Core](../../tools/powershell/readme.md) - - WSL1: [Arch Linux](https://github.com/yuk7/ArchWSL) - - WSL2: kali-linux - -By following the Windows Directory Standard, assign the following directories corresponding to `$XDG_CONFIG` in Unix, some of the software(like `wezterm`) will use these directories as the default configuration path: - -| Windows Path | XDG-Equivalent | Default | -|------------|----------|----------| -| `%APPDATA%` | `$XDG_CONFIG_HOME` | `%USERPROFILE%\AppData\Roaming` | -| `%LOCALAPPDATA%` | `$XDG_DATA_HOME` | `%USERPROFILE%\AppData\Local` | -| `%LOCALAPPDATA%\Cache` | `$XDG_CACHE_HOME` | `%USERPROFILE%\AppData\Local\Cache` | -| `%LOCALAPPDATA%\State` | `$XDG_STATE_HOME` | `%USERPROFILE%\AppData\Local\State` | - -An example bootstrap script is provided in [bootstrap/Windows.ps1](../../bootstrap/Windows.ps1), which will create necessary directories and link the files. - -## PowerShell Profile - -This is the *[PowerShell Core](https://github.com/PowerShell/PowerShell)* profile, not the legacy *Windows PowerShell* profile, which is faster(`powershell` vs `pwsh`, `pwsh` types 6 letters less lol), cross-platform and compatible with Unix. - -By default, PowerShell profile is stored in `%UserProfile%\Documents\PowerShell\Microsoft.PowerShell_profile.ps1`. - -It is convenient to use `$PROFILE` to locate the profile file. - -```powershell -Test-Path $PROFILE -``` - -Just like Unix Shell, there are configs work for different sessions. To locate them, use `select *` followed by `$PROFILE`. - -If you want to change the `AllUsers` scoped profile, do not install `pwsh` via `winget`, use `scoop` instead, since `winget` will install `pwsh` to `%ProgramFiles%\PowerShell\7\pwsh.exe`, which is read-only even with Administrator privileges. - -```powershell -PS > $PROFILE | Select * -AllUsersAllHosts : C:\Users\jsony\scoop\apps\pwsh\current\profile.ps1 -AllUsersCurrentHost : C:\Users\jsony\scoop\apps\pwsh\current\Microsoft.PowerShell_profile.ps1 -CurrentUserAllHosts : C:\Users\jsony\Documents\PowerShell\profile.ps1 -CurrentUserCurrentHost : C:\Users\jsony\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 -Length : 68 -``` - -Note that the variable `$PROFILE.*` are constants, the only way to change it is to compile your own `pwsh` - -To link the profile file: - -```powershell -New-Item -ItemType SymbolicLink -Path $PROFILE -Target "$DOTFILES\win\Microsoft.PowerShell_profile.ps1" -Force -``` - -I use [starship](https://starship.rs/) to customize the prompt, which is located in [`tools/starship/starship_pwsh.toml`](../../tools/starship/starship_pwsh.toml). This prompt config is cross-platform for powershell core, since I use the prompt to identify the shell. - -## `.wslconfig` - WSL2 Configuration - -`.wslconfig` only supports `%UserProfile%\.wslconfig` as the configuration path - -```powershell -New-Item -ItemType SymbolicLink -Path "$Env:UserProfile\.wslconfig" -Target "$DOTFILES\win\.wslconfig" -Force -``` - - -## Neovide - -Neovide configuration is (only) stored in `%APPDATA%\neovide\config.toml` - -```powershell -New-Item -ItemType SymbolicLink -Path "$Env:AppData\neovide\config.toml" -Target "$DOTFILES\win\neovide.toml" -Force +# Windows dotfiles + +![Windows](../../_assets/windows-1.png) + +- Terminal Emulator: [WezTerm](../../tools/wezterm/) +- Tiling Window Manager: [GlazeWM](./glzr/glazewm/config.yaml) +- Status Bar: [Zebar](./glzr/zebar/settings.json) +- Quake Terminal: [Windows Terminal](./WindowsTerminal.json) +- Shell: [PowerShell Core](../../tools/powershell/readme.md) + - WSL1: [Arch Linux](https://github.com/yuk7/ArchWSL) + - WSL2: kali-linux + +By following the Windows Directory Standard, assign the following directories corresponding to `$XDG_CONFIG` in Unix, some of the software(like `wezterm`) will use these directories as the default configuration path: + +| Windows Path | XDG-Equivalent | Default | +|------------|----------|----------| +| `%APPDATA%` | `$XDG_CONFIG_HOME` | `%USERPROFILE%\AppData\Roaming` | +| `%LOCALAPPDATA%` | `$XDG_DATA_HOME` | `%USERPROFILE%\AppData\Local` | +| `%LOCALAPPDATA%\Cache` | `$XDG_CACHE_HOME` | `%USERPROFILE%\AppData\Local\Cache` | +| `%LOCALAPPDATA%\State` | `$XDG_STATE_HOME` | `%USERPROFILE%\AppData\Local\State` | + +An example bootstrap script is provided in [bootstrap/Windows.ps1](../../bootstrap/Windows.ps1), which will create necessary directories and link the files. + +## PowerShell Profile + +This is the *[PowerShell Core](https://github.com/PowerShell/PowerShell)* profile, not the legacy *Windows PowerShell* profile, which is faster(`powershell` vs `pwsh`, `pwsh` types 6 letters less lol), cross-platform and compatible with Unix. + +By default, PowerShell profile is stored in `%UserProfile%\Documents\PowerShell\Microsoft.PowerShell_profile.ps1`. + +It is convenient to use `$PROFILE` to locate the profile file. + +```powershell +Test-Path $PROFILE +``` + +Just like Unix Shell, there are configs work for different sessions. To locate them, use `select *` followed by `$PROFILE`. + +If you want to change the `AllUsers` scoped profile, do not install `pwsh` via `winget`, use `scoop` instead, since `winget` will install `pwsh` to `%ProgramFiles%\PowerShell\7\pwsh.exe`, which is read-only even with Administrator privileges. + +```powershell +PS > $PROFILE | Select * +AllUsersAllHosts : C:\Users\jsony\scoop\apps\pwsh\current\profile.ps1 +AllUsersCurrentHost : C:\Users\jsony\scoop\apps\pwsh\current\Microsoft.PowerShell_profile.ps1 +CurrentUserAllHosts : C:\Users\jsony\Documents\PowerShell\profile.ps1 +CurrentUserCurrentHost : C:\Users\jsony\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 +Length : 68 +``` + +Note that the variable `$PROFILE.*` are constants, the only way to change it is to compile your own `pwsh` + +To link the profile file: + +```powershell +New-Item -ItemType SymbolicLink -Path $PROFILE -Target "$DOTFILES\win\Microsoft.PowerShell_profile.ps1" -Force +``` + +I use [starship](https://starship.rs/) to customize the prompt, which is located in [`tools/starship/starship_pwsh.toml`](../../tools/starship/starship_pwsh.toml). This prompt config is cross-platform for powershell core, since I use the prompt to identify the shell. + +## `.wslconfig` - WSL2 Configuration + +`.wslconfig` only supports `%UserProfile%\.wslconfig` as the configuration path + +```powershell +New-Item -ItemType SymbolicLink -Path "$Env:UserProfile\.wslconfig" -Target "$DOTFILES\win\.wslconfig" -Force +``` + + +## Neovide + +Neovide configuration is (only) stored in `%APPDATA%\neovide\config.toml` + +```powershell +New-Item -ItemType SymbolicLink -Path "$Env:AppData\neovide\config.toml" -Target "$DOTFILES\win\neovide.toml" -Force ``` \ No newline at end of file diff --git a/platforms/win/start/KMonad.ps1 b/misc/windows/start/KMonad.ps1 similarity index 100% rename from platforms/win/start/KMonad.ps1 rename to misc/windows/start/KMonad.ps1 diff --git a/platforms/win/vsvimrc b/misc/windows/vsvimrc similarity index 100% rename from platforms/win/vsvimrc rename to misc/windows/vsvimrc diff --git a/platforms/win/WindowsTerminal.json b/platforms/win/WindowsTerminal.json deleted file mode 100644 index 6d2f153..0000000 --- a/platforms/win/WindowsTerminal.json +++ /dev/null @@ -1,369 +0,0 @@ -{ - "$help": "https://aka.ms/terminal-documentation", - "$schema": "https://aka.ms/terminal-profiles-schema", - "actions": - [ - { - "command": - { - "action": "copy", - "singleLine": false - }, - "id": "User.copy.644BA8F2", - "keys": "ctrl+c" - }, - { - "command": "paste", - "id": "User.paste", - "keys": "ctrl+v" - }, - { - "command": "find", - "id": "User.find", - "keys": "ctrl+shift+f" - }, - { - "command": - { - "action": "splitPane", - "split": "auto", - "splitMode": "duplicate" - }, - "id": "User.splitPane.A6751878", - "keys": "alt+shift+d" - } - ], - "alwaysShowNotificationIcon": true, - "copyFormatting": "none", - "copyOnSelect": false, - "defaultInputScope": "alphanumericHalfWidth", - "defaultProfile": "{574e775e-4f2a-5b96-ac1e-a2962a402336}", - "focusFollowMouse": false, - "language": "zh-Hans", - "minimizeToNotificationArea": false, - "newTabMenu": - [ - { - "type": "remainingProfiles" - } - ], - "profiles": - { - "defaults": - { - "adjustIndistinguishableColors": "always", - "antialiasingMode": "cleartype", - "autoMarkPrompts": true, - "backgroundImageOpacity": 0.3, - "colorScheme": "Catppuccin Mocha", - "compatibility.reloadEnvironmentVariables": false, - "experimental.retroTerminalEffect": false, - "font": - { - "colorGlyphs": true, - "face": "CaskaydiaCove Nerd Font", - "features": - { - "rlig": 1 - } - }, - "opacity": 40, - "scrollbarState": "visible", - "showMarksOnScrollbar": true, - "useAcrylic": true - }, - "list": - [ - { - "colorScheme": "Catppuccin Frappe", - "commandline": "\"C:\\Program Files\\WindowsApps\\Microsoft.PowerShell_7.4.6.0_x64__8wekyb3d8bbwe\\pwsh.exe\"", - "guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}", - "hidden": false, - "name": "PowerShell", - "opacity": 50, - "source": "Windows.Terminal.PowershellCore", - "tabTitle": "PS" - }, - { - "colorScheme": "Tokyo Night", - "commandline": "C:\\WINDOWS\\system32\\wsl.exe -d Arch", - "guid": "{a5a97cb8-8961-5535-816d-772efe0c6a3f}", - "hidden": false, - "icon": "D:\\Assets\\Icons\\arch.png", - "name": "Arch", - "source": "Windows.Terminal.Wsl" - }, - { - "colorScheme": "Catppuccin Macchiato", - "commandline": "\"C:\\Program Files\\WindowsApps\\Microsoft.PowerShell_7.4.6.0_x64__8wekyb3d8bbwe\\pwsh.exe\"", - "elevate": true, - "guid": "{ed7f021f-014d-4ca8-b3f2-811f745950db}", - "hidden": false, - "icon": "ms-appx:///ProfileIcons/pwsh.png", - "name": "Admin", - "opacity": 100, - "startingDirectory": "%USERPROFILE%", - "tabTitle": "Root" - }, - { - "colorScheme": "Ubuntu-ColorScheme", - "commandline": "C:\\WINDOWS\\system32\\wsl.exe -d Ubuntu-22.04", - "font": - { - "face": "CaskaydiaCove Nerd Font" - }, - "guid": "{c1061641-0172-4aec-b52d-dfc2b991553a}", - "hidden": false, - "icon": "D:\\Assets\\Icons\\ubuntu.png", - "name": "Ubuntu", - "startingDirectory": "~" - }, - { - "colorScheme": "Catppuccin Frappe", - "commandline": "C:\\Users\\citoy\\AppData\\Local\\Programs\\nu\\bin\\nu.exe", - "guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}", - "hidden": false, - "name": "PowerShell", - "opacity": 50, - "source": "Windows.Terminal.PowershellCore", - "tabTitle": "PS" - }, - { - "guid": "{2ece5bfe-50ed-5f3a-ab87-5cd4baafed2b}", - "hidden": false, - "name": "Git Bash", - "source": "Git" - }, - { - "colorScheme": "Solarized Light", - "commandline": "\"C:\\Program Files\\WindowsApps\\Microsoft.PowerShell_7.4.6.0_x64__8wekyb3d8bbwe\\pwsh.exe\"", - "guid": "{39030c99-17fd-4feb-913f-c149a2826247}", - "hidden": false, - "icon": "ms-appx:///ProfileIcons/pwsh.png", - "name": "Light", - "opacity": 100, - "startingDirectory": "%USERPROFILE%", - "tabTitle": "PS", - "useAcrylic": true - } - ] - }, - "schemes": - [ - { - "background": "#303446", - "black": "#51576D", - "blue": "#8CAAEE", - "brightBlack": "#626880", - "brightBlue": "#8CAAEE", - "brightCyan": "#81C8BE", - "brightGreen": "#A6D189", - "brightPurple": "#F4B8E4", - "brightRed": "#E78284", - "brightWhite": "#A5ADCE", - "brightYellow": "#E5C890", - "cursorColor": "#F2D5CF", - "cyan": "#81C8BE", - "foreground": "#C6D0F5", - "green": "#A6D189", - "name": "Catppuccin Frappe", - "purple": "#F4B8E4", - "red": "#E78284", - "selectionBackground": "#626880", - "white": "#B5BFE2", - "yellow": "#E5C890" - }, - { - "background": "#EFF1F5", - "black": "#5C5F77", - "blue": "#1E66F5", - "brightBlack": "#ACB0BE", - "brightBlue": "#1E66F5", - "brightCyan": "#179299", - "brightGreen": "#40A02B", - "brightPurple": "#EA76CB", - "brightRed": "#D20F39", - "brightWhite": "#BCC0CC", - "brightYellow": "#DF8E1D", - "cursorColor": "#DC8A78", - "cyan": "#179299", - "foreground": "#4C4F69", - "green": "#40A02B", - "name": "Catppuccin Latte", - "purple": "#EA76CB", - "red": "#D20F39", - "selectionBackground": "#ACB0BE", - "white": "#ACB0BE", - "yellow": "#DF8E1D" - }, - { - "background": "#24273A", - "black": "#494D64", - "blue": "#8AADF4", - "brightBlack": "#5B6078", - "brightBlue": "#8AADF4", - "brightCyan": "#8BD5CA", - "brightGreen": "#A6DA95", - "brightPurple": "#F5BDE6", - "brightRed": "#ED8796", - "brightWhite": "#A5ADCB", - "brightYellow": "#EED49F", - "cursorColor": "#F4DBD6", - "cyan": "#8BD5CA", - "foreground": "#CAD3F5", - "green": "#A6DA95", - "name": "Catppuccin Macchiato", - "purple": "#F5BDE6", - "red": "#ED8796", - "selectionBackground": "#5B6078", - "white": "#B8C0E0", - "yellow": "#EED49F" - }, - { - "background": "#1E1E2E", - "black": "#45475A", - "blue": "#89B4FA", - "brightBlack": "#585B70", - "brightBlue": "#89B4FA", - "brightCyan": "#94E2D5", - "brightGreen": "#A6E3A1", - "brightPurple": "#F5C2E7", - "brightRed": "#F38BA8", - "brightWhite": "#A6ADC8", - "brightYellow": "#F9E2AF", - "cursorColor": "#F5E0DC", - "cyan": "#94E2D5", - "foreground": "#CDD6F4", - "green": "#A6E3A1", - "name": "Catppuccin Mocha", - "purple": "#F5C2E7", - "red": "#F38BA8", - "selectionBackground": "#585B70", - "white": "#BAC2DE", - "yellow": "#F9E2AF" - }, - { - "background": "#1A1B2C", - "black": "#414868", - "blue": "#7AA2F7", - "brightBlack": "#414868", - "brightBlue": "#7AA2F7", - "brightCyan": "#7DCFFF", - "brightGreen": "#73DACA", - "brightPurple": "#BB9AF7", - "brightRed": "#F7768E", - "brightWhite": "#C0CAF5", - "brightYellow": "#E0AF68", - "cursorColor": "#C0CAF5", - "cyan": "#7DCFFF", - "foreground": "#A9B1DC", - "green": "#73DACA", - "name": "Tokyo Night", - "purple": "#BB9AF7", - "red": "#F7768E", - "selectionBackground": "#28344A", - "white": "#C0CAF5", - "yellow": "#E0AF68" - } - ], - "showTabsInTitlebar": true, - "startOnUserLogin": true, - "tabWidthMode": "titleLength", - "theme": "Catppuccin Macchiato", - "themes": - [ - { - "name": "Catppuccin Frappe", - "tab": - { - "background": "#303446FF", - "iconStyle": "default", - "showCloseButton": "always", - "unfocusedBackground": null - }, - "tabRow": - { - "background": "#292C3CFF", - "unfocusedBackground": "#232634FF" - }, - "window": - { - "applicationTheme": "dark", - "experimental.rainbowFrame": false, - "frame": null, - "unfocusedFrame": null, - "useMica": false - } - }, - { - "name": "Catppuccin Latte", - "tab": - { - "background": "#EFF1F5FF", - "iconStyle": "default", - "showCloseButton": "always", - "unfocusedBackground": null - }, - "tabRow": - { - "background": "#E6E9EFFF", - "unfocusedBackground": "#DCE0E8FF" - }, - "window": - { - "applicationTheme": "light", - "experimental.rainbowFrame": false, - "frame": null, - "unfocusedFrame": null, - "useMica": false - } - }, - { - "name": "Catppuccin Macchiato", - "tab": - { - "background": "#24273AFF", - "iconStyle": "default", - "showCloseButton": "always", - "unfocusedBackground": null - }, - "tabRow": - { - "background": "#1E2030FF", - "unfocusedBackground": "#181926FF" - }, - "window": - { - "applicationTheme": "dark", - "experimental.rainbowFrame": false, - "frame": null, - "unfocusedFrame": null, - "useMica": false - } - }, - { - "name": "Catppuccin Mocha", - "tab": - { - "background": "#1E1E2EFF", - "iconStyle": "default", - "showCloseButton": "always", - "unfocusedBackground": null - }, - "tabRow": - { - "background": "#181825FF", - "unfocusedBackground": "#11111BFF" - }, - "window": - { - "applicationTheme": "dark", - "experimental.rainbowFrame": false, - "frame": null, - "unfocusedFrame": null, - "useMica": false - } - } - ], - "useAcrylicInTabRow": true -} diff --git a/platforms/wsl/.bashrc b/platforms/wsl/.bashrc deleted file mode 100644 index ce32ed5..0000000 --- a/platforms/wsl/.bashrc +++ /dev/null @@ -1,16 +0,0 @@ -# Append to original bashrc for minimal setup -# echo $DOTFILES/wsl/.bashrc >> ~/.bashrc -bind 'set show-mode-in-prompt on' -set -o vi - -bind -m vi-command '"n": next-history' -bind -m vi-command '"e": previous-history' -bind -m vi-command '"l": vi-insertion-mode' -bind -m vi-command '"L": vi-insert-beg' -bind -m vi-command '"i": forward-char' - -# bind -m vi-insert '"\C-r": reverse-search-history"' -# bind -m vi-insert '"\C-l": clear-screen' - -bind -m vi-command '"j": vi-end-word' -bind -m vi-command '"J": vi-end-word' diff --git a/platforms/wsl/zshrc b/platforms/wsl/zshrc deleted file mode 100644 index bc2ece3..0000000 --- a/platforms/wsl/zshrc +++ /dev/null @@ -1,9 +0,0 @@ -# $DOTFILES/platforms/wsl/zshrc -# Date: 2024-12-01 -# Author: js0ny -# Sourced by user's zshrc if is WSL 在用户的 zshrc 中被引用,WSL 特定配置 -# Entry point in $DOTFILES/tools/zsh/common.zshrc (入口点) - -### Variables ### -export IS_WSL=true -source $DOTFILES/platforms/wsl/winterop.zsh diff --git a/platforms/win/cmd/dark-mode.bat b/scripts/dark-mode.bat similarity index 100% rename from platforms/win/cmd/dark-mode.bat rename to scripts/dark-mode.bat diff --git a/tools/keyd/default.conf b/tools/keyd/default.conf deleted file mode 100644 index 4a3be16..0000000 --- a/tools/keyd/default.conf +++ /dev/null @@ -1,49 +0,0 @@ -[ids] - -* - -[main] - -# Maps capslock to escape when pressed and control when held. tab=overload(lt1, tab) # backspace=\ -# \=backspace -# backspace=\ -# capslock=overload(ctrl,esc) -capslock = overload(control, esc) -tab = overload(lt2, tab) -space = overload(lt1, space) -insert = S-insert - -[lt1] -h = left -n = down -e = up -i = right -1 = f1 -2 = f2 -3 = f3 -4 = f4 -5 = f5 -6 = f6 -7 = f7 -8 = f8 -9 = f9 -0 = f10 -- = f11 -= = f12 -k = home -o = end -[ = pageup -] = pagedown -q = ~ -w = | -f = & -p = ^ -/ = ¿ - -[lt2] -space = playpause -h = previoussong -i = nextsong -n = volumedown -e = volumeup -k = mute