终端
终端
终端配置
参考https://zuolan.me/2023-terminal
windows, linux,mac下用alacritty终端,
zsh安装
mac下:brew install zsh
ubuntu下:apt install zsh
zsh --version
chsh -s /bin/zsh
安装oh-my-zsh(如使用starship则不用安装)
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
curl: (35) error:0A000126:SSL routines::unexpected eof while reading
添加 --tlsv1.2 或 --tlsv1.3
下载主题
brew install powerlevel10k
echo "source $(brew --prefix)/share/powerlevel10k/powerlevel10k.zsh-theme" >>~/.zshrc
source ~/.zshrc配置powerlevel10k p10k configure
安装oh-my-zsh插件
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
vim .zshrc
plugins=(git zsh-syntax-highlighting zsh-autosuggestions)windows下wsl环境command not found: ^M
git config --global core.autocrlf false
安装starship命令行主题(个人更喜欢powerlevel10k)
cargo install starship
~/.bashrc
eval "$(starship init bash)"
~/.zshrc
eval "$(starship init zsh)"
starship preset tokyo-night -o ~/.config/starship.toml分享主题
https://starship.rs/zh-CN/presets/#nerd-%E5%AD%97%E4%BD%93%E7%AC%A6%E5%8F%B7
图标字体不能显示需要安装Nerd fonts
安装 Nerd fonts 字体
Source Code Pro 是 Adobe 公司号称最佳的编程字体。而且还是开源的。 Fira 是 Mozilla 主推的字体系列,Fira Code 是基于 Fira Mono 等宽字体的一个扩展,主要特点是加入了编程连字特性
Jetbrains Mono、FiraCode、Source Code Pro、Consolas Source Code Pro和Consolas不具有连字的功能,推荐Jetbrains Mono
windows下的Terminal和alacritty需要在windows上安装字体才能正常显示
macbook下
brew tap homebrew/cask-fonts
brew install font-jetbrains-mono
brew install font-jetbrains-mono-nerd-font
brew install font-fira-code-nerd-fontlinux下
mkdir -p ~/.local/share/fonts
Wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.0/JetBrainsMono.zip
unzip JetBrainsMono.zip -d ~/.local/share/fonts
cd ~/.local/share/fonts
* 生成核心字体信息
sudo mkfontscale
* 生成字体文件夹
sudo mkfontdir
* 刷新系统字体缓存
sudo fc-cache -fv
提示mkfontscale: command not found
sudo apt install ttf-mscorefonts-installer
sudo apt install fontconfigwindows下
下载解压
Wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.0/JetBrainsMono.zip
设置->个性化->字体,安装所有字体
打开Terminal设置,Ubuntu->外观,选择相关字体vscode设置字体
"terminal.integrated.fontFamily": "JetBrainsMonoNL Nerd Font Mono"
"editor.fontFamily": "JetBrainsMonoNL Nerd Font Mono"
"editor.fontLigatures": truealacritty配置
brew install alacritty
macOS & Linux: ~/.config/alacritty/alacritty.yml
Windows: %APPDATA%\alacritty\alacritty.yml
live_config_reload = true
#tabspaces = 4
[font]
size = 12.0
[font.bold]
family = "JetBrainsMonoNL Nerd Font Mono"
style = "Regular"
[font.bold_italic]
family = "JetBrainsMonoNL Nerd Font Mono"
style = "Italic"
[font.glyph_offset]
x = 0
y = 2
[font.italic]
family = "JetBrainsMonoNL Nerd Font Mono"
style = "Italic"
[font.normal]
family = "JetBrainsMonoNL Nerd Font Mono"
style = "Regular"
[font.offset]
x = 0
y = 4
[[keyboard.bindings]]
action = "ToggleMaximized"
key = "A"
mods = "Control"
[scrolling]
#auto_scroll = true
#faux_multiplier = 100
history = 2000
multiplier = 20
[shell]
#program = "/opt/homebrew/bin/zellij"
program = "/bin/zsh"
[window]
decorations = "full"
dynamic_padding = false
opacity = 1
startup_mode = "Windowed"
[window.dimensions]
columns = 120
lines = 35
[window.padding]
x = 0
y = 0Zellij 配置 (alacritty已支持多窗口,不再需要Zellij)
安装 apt install zellij brew install zellij
bash/zsh: bash <(curl -L zellij.dev/launch) fish/xonsh: bash -c 'bash <(curl -L zellij.dev/launch)'
默认配置 mkdir ~/.config/zellij zellij setup --dump-config > ~/.config/zellij/config.kdl
~/.config/zellij/config.
// default_shell "/usr/local/bin/fish"
default_shell "/bin/zsh"
// 默认布局Default: "default"
default_layout "z1y2"
// default_layout "compact"
// 关闭动作detach (Default)
on_force_close "detach"
// 无箭头字体false (Default)
simplified_ui true
// 显示边框true (default)
pane_frames true
// 缓冲区行数
scroll_buffer_size 10000
// 鼠标选择和选择即复制, 按住 shift 使用终端原生选词Default: true
copy_on_select true
// 鼠标模式(选取)true (default)
mouse_mode true
// 镜像会话
mirror_session true
// 默认模式Default: normal
default_mode "normal"
// 主题
theme "nord"
themes {
nord {
fg "#D8DEE9"
bg "#2E3440"
black "#3B4252"
red "#BF616A"
green "#A3BE8C"
yellow "#EBCB8B"
blue "#81A1C1"
magenta "#B48EAD"
cyan "#88C0D0"
white "#E5E9F0"
orange "#D08770"
}
}zellij布局文件
~/.config/zellij/layouts/zuolan.kdl
layout {
pane split_direction="vertical" {
pane
pane split_direction="horizontal" {
pane
pane
}
}
pane size=1 borderless=true {
plugin location="zellij:compact-bar"
}
}效果 
zellij使用
功能简述:
该工具使用,可以在终端文本环境下,提供多个标签页并在多个标签页下创建一个或多个窗口进行复用,简化切换会话的复杂度.自带快捷键提示,操作简单。
使用截图:

快捷键介绍
允许使用 tmux 的部分快捷键
快捷键中 ctrl -> C 替换 alt -> M 替换 后续一直有效
首先zellij 保留了部分tmux的快捷键 方便tmux快速接受 默认开启可关闭
使用前置快捷建(先按下部分键放手,按下子功能键) -> C-b
移动焦点,切换窗口 -> <方向键>
左右分割 -> %
上下分割 -> "
当前窗口全屏 -> z
创建新标签页 -> c
重命名当前标签页 -> ,
切换上一个标签页 -> p
切换下一个标签页 -> n软件本身快捷键
#软件除了本身支持部分直接快捷键(组合键按一次就好),大部分通过前置快捷键进行功能方向的选择,再次通过子功能快捷键确定
大的功能类分为:
锁定窗口(lock) -> C-g
窗口操作(pane) -> C-p
标签操作(tab) -> C-t
窗口大小(resize) -> C-n
窗口移动(move) -> C-h
窗口内容(scrool) -> C-s
会话操作(session) -> C-o
退出(quit) -> C-q锁定窗口
快捷键 -> C-g
#锁定窗口没有子功能键,设计目的为,避免zellij本身快捷键与会话内应用快捷键冲突
#使用此功能后,会自动屏蔽zellij的其他快捷快捷键,包括退出窗口操作
前置快捷键 -> C-p
#内置多个对窗口管理的快捷键
移动焦点,切换到其他窗口 -> <方向键>
新建窗口 -> n
直接快捷键 --> M-n
当前窗口下方新建窗口 -> d
当前窗口右方新建窗口 -> r
关闭当前窗口 -> x
全屏显示(字符界面内) -> f
窗口边框开关 -> z
窗口重命名 -> c
新建浮动窗口 -> w
将浮动窗口嵌入 -> e
下一个窗口 -> p标签操作
前置快捷键 -> C-t
#对标签页进行管理,标签页概念类似chrome浏览器标签页
移动至其他标签页 -> <方向键>
新建标签页 -> n
关闭标签页 -> x
重命名标签页 -> r
同步操作(多个会话输入同样内容) -> s
选中窗口 -> <回车>窗口大小
前置快捷键 -> C-n
#对当前焦点所在窗口进行大小设置
各个方向的扩展(只能变大) -> <方向键>
整体窗口大小 -> <-/+>
确定修改 -> <回车>窗口移动
前置快捷键 -> C-h
移动或者切换当前焦点所在窗口位置(浮动窗口有效) -> <方向键>
交换位置 -> n
确定修改 -> <回车>窗口内容
前置快捷键 -> C-s
上下行滚动内容 -> <方向键上下>
窗口内翻页滚动 -> <pgUp/pgDown>
窗口内最首行 -> u
窗口内最尾行 -> d会话操作
前置快捷键 -> C-o
分离当前会话 -> d
选中当前窗口 -> <回车>退出
会话管理
#以下内容属于工作模式的一些操作
#为终端环境的操作命令
zeelij -s <名称>
#创建一个会话设定名称
zellij attach <名称>
#加入指定名称会话,可以同步操作
zellij list-sessions
#查看当前环境所有zellij会话
zellij kill-all-sessions
#杀死全部zellij会话
zellij kill-session <>
#杀死指定会话