改善 MacOS Terminal 的外观以及实用性,主要贴出来一些 References ,以后还需要再配置一遍,这次配置得好乱,花了两三天,也不知道写得全不全
用 Wezterm 代替 Terminal
在 ~/.config/wezterm/wezterm.lua
里配置
配置文档:LINK
B站上搬运的教程:LINK
暂时配成这样,不太愿意加图:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 local wezterm = require ("wezterm" )config = wezterm.config_builder()config = { automatically_reload_config = true , enable_tab_bar = false , window_close_confirmation = "NeverPrompt" , window_decorations = "RESIZE" , default_cursor_style = "BlinkingBar" , color_scheme = "Nord (Gogh)" , font = wezterm.font("Fira Code" , { weight = "Bold" }), font_size = 15 , background = { { source = { Color = "#282c35" , }, width = "100%" , height = "100%" , opacity = 0.85 , }, }, window_padding = { left = 30 , right = 30 , top = 30 , bottom = 30 , }, } return config
image-20241227194724776
等寒假有时间了设计一下
添加了代码高亮和代码补全的插件,b站视频有讲,需要在 .zshrc
里配置:
1 2 3 4 5 6 7 source $(brew --prefix)/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh (( ${+ZSH_HIGHLIGHT_STYLES} )) || typeset -A ZSH_HIGHLIGHT_STYLES ZSH_HIGHLIGHT_STYLES[path]=none ZSH_HIGHLIGHT_STYLES[path_prefix]=none source $(brew --prefix)/share/zsh-autosuggestions/zsh-autosuggestions.zsh
wezterm 的上下分屏:Ctrl + Option + %
wezterm 的左右分屏:Ctrl + Option + "
光标切屏:Ctrl + Shift + 方向键
一般就使用 tmux 的分屏比较好,上面的难记
用 Neovim 搭建 PDE
费老劲学 vim
,还得练
有图形化界面,还不错,外观还需要配置
参考:LINK
上下分屏:split
左右分屏:vs
光标切屏:Ctrl + h j k l
我把 Lazyvim 的背景设成透明了
添加插件
参考:LINK
thefuck
一个可以帮你修改打错的命令的插件,一旦你打错了一个命令,你就可以接着一句 fuck
,它就会自己帮你改对
在 .zshrc
中配置(alias可以改别名):
1 2 eval $(thefuck --alias) eval $(thefuck --alias fk)
eza
更好的 ls
,在 .zshrc
文件中配置(用 eza
替换 ls
):
1 alias ls="eza --color=always --long --git --no-filesize --icons=always --no-time --no-user --no-permissions"
tldr
告诉你这个关键字有一些什么有趣有用的用法
zoxide
更好的 cd
,在 .zshrc
文件中配置:
1 eval "$(zoxide init zsh)"
会记住你进过的文件夹,再进就不用一个一个 cd
了,如果有多个满足条件,空格 + Tab 选文件夹
powerlevel10k
一个终端主题,蛮好看
用 tmux 管理多个 Terminal
参考:LINK
配置文件(~/.tmux.conf
):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 set -g default-terminal "tmux-256color" set -g prefix C-a unbind C-b bind-key C-a send-prefix unbind % bind | split-window -h unbind '"' bind - split-window -v unbind r bind r source-file ~/.tmux.conf bind -r j resize-pane -D 5 bind -r k resize-pane -U 5 bind -r l resize-pane -R 5 bind -r h resize-pane -L 5 bind -r m resize-pane -Z set -g mouse on set-window-option -g mode-keys vi bind-key -T copy-mode-vi 'v' send -X begin-selection bind-key -T copy-mode-vi 'y' send -X copy-selection unbind -T copy-mode-vi MouseDragEnd1Pane # tpm plugin set -g @plugin 'tmux-plugins/tpm' # list of tmux plugins set -g @plugin 'christoomey/vim-tmux-navigator' set -g @plugin 'jimeh/tmux-themepack' set -g @plugin 'tmux-plugins/tmux-resurrect' set -g @plugin 'tmux-plugins/tmux-continuum' set -g @themepack 'powerline/default/cyan' set -g @resurrect-capture-pane-contents 'on' set -g @continuum-restore 'on' set -g @vim_navigator_mapping_left "C-Left C-h" # use C-h and C-Left set -g @vim_navigator_mapping_right "C-Right C-l" set -g @vim_navigator_mapping_up "C-k" set -g @vim_navigator_mapping_down "C-j" set -g @vim_navigator_mapping_prev "" # removes the C-\ binding set -g @vim_navigator_prefix_mapping_clear_screen "" set -g xterm-keys on run '~/.tmux/plugins/tpm/tpm'
快捷键:
魔法前摇:Ctrl + a
上下分屏:-
左右分屏:|
光标切屏:Ctrl + h j k l
配置更新:r
改变分屏大小:h j k l
分屏窗口最大化/最小化:m
vi 风格移动光标和页面
安装插件:I
新建窗口:c
切换窗口:窗口代号
窗口重命名:,
切换到相邻窗口:p n
切换到相邻终端:( )
窗口及终端信息:w
退出复制模式:Ctrl + C
Neovim 配置 C++ 编译环境
一些理论:LINK
要装插件还是得先学习 lazyvim
的结构:LINK
之前用 VScode
装过,不用再次装
参考:LINK
我用 <c-u>
替换了 <c-i>
因为其哈希值与 <Tab>
相同,缩进就用不了了
在 init.lua
中配置:
1 2 3 vim.opt.tabstop = 4 -- 实际 Tab 字符宽度 vim.opt.shiftwidth = 4 -- 缩进宽度 vim.opt.expandtab = true -- 用空格代替 Tab
参考:LINK
另外设置了快捷键 <leader>r
普通编译以及 <leader>R
调试编译
添加了 vim-tmux-navigator
插件,让窗口切换可以横跨 tmux 和 nvim
切换了 catppuccin
主题
待添加:git 相关插件以及 AI 支持
image-20241229125239973