mirror of
https://github.com/js0ny/dotfiles.git
synced 2025-12-21 00:33:00 +00:00
feat(emacs) rime
This commit is contained in:
parent
214f23425d
commit
da0cc1d6e8
11 changed files with 100 additions and 29 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -33,8 +33,5 @@ common/fzfrc
|
|||
|
||||
gitconfig
|
||||
|
||||
spacemacs/
|
||||
|
||||
lazy-lock.json
|
||||
tools/doom/custom.el
|
||||
tools/doom/custom.el
|
||||
|
|
|
|||
|
|
@ -36,39 +36,50 @@ linkDots=(
|
|||
["$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/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/wezterm"]="$HOME/.config/wezterm"
|
||||
["$DOTFILES/tools/yazi"]="$HOME/.config/yazi"
|
||||
["$DOTFILES/tools/zed"]="$HOME/.config/zed"
|
||||
["$DOTFILES/tools/zsh/common.zshrc"]="$ZDOTDIR/.zshrc"
|
||||
["$DOTFILES/tools/zsh/.zshenv"]="$ZDOTDIR/.zshenv"
|
||||
["$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"]="$HOME/.inputrc"
|
||||
)
|
||||
if [ -n "$WSL_DISTRO_NAME" ]; then
|
||||
if [ "$(uname -r)" = *Microsoft* ]; then
|
||||
echo "[INFO] Running on WSL1"
|
||||
: # NOP
|
||||
else
|
||||
echo "[INFO] Running on Native Linux"
|
||||
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)"
|
||||
linkDots+=["$kde"]="$HOME/.config/kde/$(basename $kde)"
|
||||
# echo "Linking $kde to $HOME/.config/kde/$(basename $kde)"
|
||||
done
|
||||
echo "[INFO] Setting up system environment variables"
|
||||
|
|
@ -79,14 +90,15 @@ fi
|
|||
|
||||
echo "[INFO] Setting up symbolic links"
|
||||
for src in "${!linkDots[@]}"; do
|
||||
echo "Linking $src to ${linkDots[$src]}"
|
||||
dest="${linkDots[$src]}"
|
||||
if [ -d "$src" ]; then
|
||||
mv $dest $dest.bak
|
||||
test -d $dest && mv $dest $dest.bak
|
||||
mkdir -p $dest
|
||||
ln -sf $src $dest
|
||||
elif [ -f "$src" ]; then
|
||||
dest_parent=$(dirname $dest)
|
||||
mkdir -p $dest_parent
|
||||
test -d $dest_parent || mkdir -p $dest_parent
|
||||
ln -sf $src $dest
|
||||
else
|
||||
echo "[ERROR] $src does not exist"
|
||||
|
|
@ -94,12 +106,36 @@ for src in "${!linkDots[@]}"; do
|
|||
done
|
||||
|
||||
echo "[INFO] Installing zsh plugins"
|
||||
git clone --depth 1 https://github.com/zsh-users/zsh-autosuggestions.git $ZDOTDIR/plugins/zsh-autosuggestions
|
||||
git clone --depth 1 https://github.com/zsh-users/zsh-syntax-highlighting.git $ZDOTDIR/plugins/zsh-syntax-highlighting
|
||||
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-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
|
||||
|
||||
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] Copying example files"
|
||||
test -d $XDG_CONFIG_HOME/git || mkdir -p $XDG_CONFIG_HOME/git
|
||||
cp $DOTFILES/common/gitconfig.example $XDG_CONFIG_HOME/git/config
|
||||
echo "[INFO] Don't forget to update your gitconfig!"
|
||||
|
||||
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 clnh https://github.com/js0ny/Rime.git ~/.config/emacs/.local/cache/rime
|
||||
|
||||
|
||||
echo "[INFO] Done!"
|
||||
|
||||
export ZDOTDIR
|
||||
export DOTFILES
|
||||
|
|
|
|||
|
|
@ -256,10 +256,10 @@ keybindings:
|
|||
bindings: ["lwin+r"]
|
||||
|
||||
# Focus the next/previous active workspace defined in `workspaces` config.
|
||||
- commands: ["focus --next-active-workspace"]
|
||||
bindings: ["alt+s"]
|
||||
- commands: ["focus --prev-active-workspace"]
|
||||
bindings: ["alt+a"]
|
||||
# - commands: ["focus --next-active-workspace"]
|
||||
# bindings: ["alt+s"]
|
||||
# - commands: ["focus --prev-active-workspace"]
|
||||
# bindings: ["alt+a"]
|
||||
|
||||
# Focus the workspace that last had focus.
|
||||
- commands: ["focus --recent-workspace"]
|
||||
|
|
|
|||
2
platforms/win/wslgconfig
Normal file
2
platforms/win/wslgconfig
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
[system-distro-env]
|
||||
WESTON_RDP_DEBUG_DESKTOP_SCALING_FACTOR=200
|
||||
|
|
@ -21,8 +21,24 @@
|
|||
;; See 'C-h v doom-font' for documentation and more examples of what they
|
||||
;; accept. For example:
|
||||
;;
|
||||
(setq doom-font (font-spec :family "Iosevka Nerd Font Propo" :size 14 :weight 'semi-light)
|
||||
doom-variable-pitch-font (font-spec :family "JetBrainsMono Nerd Font" :size 13))
|
||||
;; https://emacs-china.org/t/doom-emacs/23513/13
|
||||
(setq doom-font (font-spec :family "Iosevka Nerd Font Propo" :size 14)
|
||||
doom-serif-font doom-font
|
||||
doom-symbol-font (font-spec :family "LXGW WenKai Mono")
|
||||
doom-variable-pitch-font (font-spec :family "LXGW WenKai Mono" :weight 'extra-bold))
|
||||
|
||||
;; 如果不把这玩意设置为 nil, 会默认去用 fontset-default 来展示, 配置无效
|
||||
(setq use-default-font-for-symbols nil)
|
||||
|
||||
;; Doom 的字体加载顺序问题, 如果不设定这个 hook, 配置会被覆盖失效
|
||||
(add-hook! 'after-setting-font-hook
|
||||
(set-fontset-font t 'latin (font-spec :family "Iosevka Nerd Font Propo"))
|
||||
(set-fontset-font t 'symbol (font-spec :family "Symbola"))
|
||||
(set-fontset-font t 'mathematical (font-spec :family "Symbola"))
|
||||
(set-fontset-font t 'emoji (font-spec :family "Symbola")))
|
||||
|
||||
;; (dolist (charset '(kana han cjk-misc bopomofo))
|
||||
;; (set-fontset-font t charset (font-spec :family "LXGW WenKai Mono" :size 16)))
|
||||
;;
|
||||
;; If you or Emacs can't find your font, use 'M-x describe-font' to look them
|
||||
;; up, `M-x eval-region' to execute elisp code, and 'M-x doom/reload-font' to
|
||||
|
|
@ -94,5 +110,12 @@
|
|||
(load! "org.el")
|
||||
|
||||
(after! evil-matchit
|
||||
(global-evil-matchit-mode 1)
|
||||
)
|
||||
(global-evil-matchit-mode 1)
|
||||
)
|
||||
|
||||
|
||||
(use-package! rime
|
||||
:config
|
||||
(setq default-input-method "rime")
|
||||
(add-hook! (org-mode markdown-mode) (activate-input-method default-input-method))
|
||||
)
|
||||
|
|
|
|||
|
|
@ -12,4 +12,7 @@
|
|||
:nv "I" 'evil-next-buffer
|
||||
:nvom "N" '(lambda () (interactive) (evil-next-line 5)) ; 5n
|
||||
:nvom "E" '(lambda () (interactive) (evil-previous-line 5)) ; 5e
|
||||
:nvom "C-w n" 'evil-window-down
|
||||
:nvom "C-w e" 'evil-window-up
|
||||
:nvom "C-w i" 'evil-window-right
|
||||
)
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@
|
|||
|
||||
(doom! :input
|
||||
;;bidi ; (tfel ot) thgir etirw uoy gnipleh
|
||||
chinese
|
||||
;;; 关闭 chinese 以启用 best Chinese IME
|
||||
;; chinese
|
||||
;;japanese
|
||||
;;layout ; auie,ctsrnm is the superior home row
|
||||
|
||||
|
|
@ -75,7 +76,7 @@
|
|||
vc ; version-control and Emacs, sitting in a tree
|
||||
|
||||
:term
|
||||
;;eshell ; the elisp shell that works everywhere
|
||||
eshell ; the elisp shell that works everywhere
|
||||
;;shell ; simple shell REPL for Emacs
|
||||
;;term ; basic terminal emulator for Emacs
|
||||
;;vterm ; the best terminal emulation in Emacs
|
||||
|
|
|
|||
|
|
@ -52,3 +52,4 @@
|
|||
(package! copilot
|
||||
:recipe (:host github :repo "copilot-emacs/copilot.el" :files ("*.el")))
|
||||
(package! evil-matchit)
|
||||
(package! rime)
|
||||
|
|
|
|||
|
|
@ -31,12 +31,15 @@
|
|||
(:map global-map
|
||||
("M-0" . treemacs-select-window)
|
||||
("C-x t 1" . treemacs-delete-other-windows)
|
||||
("C-x t t" . treemacs)
|
||||
;; ("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
|
||||
(evil-leader/set-key
|
||||
"ft" 'treemacs)
|
||||
)
|
||||
|
||||
(use-package treemacs-evil
|
||||
|
|
|
|||
3
tools/wezterm/.gitignore
vendored
3
tools/wezterm/.gitignore
vendored
|
|
@ -8,5 +8,8 @@
|
|||
# ln -sf $DOTFILES/tools/wezterm $XDG_CONFIG_HOME/wezterm
|
||||
# New-Item -ItemType SymbolicLink -Target $DOTFILES\tools\wezterm -Path $Env:XDG_CONFIG_HOME\wezterm
|
||||
|
||||
# In windows, many cache & logs are stored in %APPDATA%\wezterm
|
||||
|
||||
*.json
|
||||
check_update
|
||||
plugins
|
||||
|
|
@ -23,10 +23,12 @@ return function(config)
|
|||
}
|
||||
-- Cursor
|
||||
config.animation_fps = 120
|
||||
config.cursor_blink_ease_in = "EaseOut"
|
||||
config.cursor_blink_ease_out = "EaseOut"
|
||||
config.default_cursor_style = "BlinkingBlock"
|
||||
config.cursor_blink_rate = 650
|
||||
if not os_type.is_win then -- This is sooooooo slow on Windows
|
||||
config.cursor_blink_ease_in = "EaseOut"
|
||||
config.cursor_blink_ease_out = "EaseOut"
|
||||
config.default_cursor_style = "BlinkingBlock"
|
||||
config.cursor_blink_rate = 650
|
||||
end
|
||||
-- Visual Bell
|
||||
config.visual_bell = {
|
||||
fade_in_function = "EaseIn",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue