alacritty-tmux
在Windows下,复制终端窗口单行无法装下的长行时被当做多行的问题,目前没有解决方案 alacritty团队故意这么设计的,强制用户遵循“单行不能太长”的代码规范。
tip: alacritty如何展示选项卡的名字,在.bashrc的末尾添加一行:
export PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
1. alacritty的配置
在UNIX系统中,它会在以下位置寻找:
$XDG_CONFIG_HOME/alacritty/alacritty.toml
$XDG_CONFIG_HOME/alacritty.toml
$HOME/.config/alacritty/alacritty.toml
$HOME/.alacritty.toml
/etc/alacritty/alacritty.toml
在 Windows 系统中,配置文件只能在一个位置上: %APPDATA%\alacritty\alacritty.toml
alacritty.toml配置:
[general]
working_directory = "D:\\"
[font]
size = 16
[keyboard]
bindings = [
{ key = "N", mods = "Control|Shift", action = "CreateNewWindow" },
]
2. 在linux系统上安装alacritty
使用cargo安装alacritty到~/.cargo/bin目录下:
cargo install alacritty
给alacritty配置Terminfo:
- 先判断有没有配置Terminfo:
infocmp alacritty - 如果没有配置过,就执行:
wget https://github.com/alacritty/alacritty/releases/download/v0.16.1/alacritty.info sudo tic -xe alacritty,alacritty-direct alacritty.info
安装 Alacritty.desktop 文件:
wget https://github.com/alacritty/alacritty/releases/download/v0.16.1/Alacritty.desktop
wget https://github.com/alacritty/alacritty/releases/download/v0.16.1/Alacritty.svg
# 符合 XDG 标准的桌面环境
sudo cp Alacritty.svg /usr/share/pixmaps/Alacritty.svg
cp Alacritty.desktop ~/.local/share/applications/Alacritty.desktop
sed -i "s|Exec=alacritty|Exec=$HOME/.cargo/bin/alacritty|g" ~/.local/share/applications/Alacritty.desktop
配置 Manual Page
wget https://github.com/alacritty/alacritty/releases/download/v0.16.1/alacritty.1.gz
wget https://github.com/alacritty/alacritty/releases/download/v0.16.1/alacritty-msg.1.gz
wget https://github.com/alacritty/alacritty/releases/download/v0.16.1/alacritty.5.gz
wget https://github.com/alacritty/alacritty/releases/download/v0.16.1/alacritty-bindings.5.gz
sudo mkdir -p /usr/local/share/man/man1
sudo mkdir -p /usr/local/share/man/man5
sudo mv alacritty.1.gz alacritty-msg.1.gz /usr/local/share/man/man1/
sudo mv alacritty.5.gz alacritty-bindings.5.gz /usr/local/share/man/man5/
配置 Shell Bash completions
wget https://github.com/alacritty/alacritty/releases/download/v0.16.1/alacritty.bash
mkdir -p ~/.bash_completion
cp alacritty.bash ~/.bash_completion/alacritty
echo "source ~/.bash_completion/alacritty" >> ~/.bashrc
3. alacritty的快捷键
- Ctrl Shift Space : 切换vi模式和普通模式
- v : 文本选择
- Alt v : 文本语义选择
- Shift v : 文本行选择
- Ctrl v : 文本块选择
- y : copy
4. tmux的快捷键
会话管理:
- Ctrl+b d:分离当前会话(后台继续运行)
- Ctrl+b s:列出并切换会话
- Ctrl+b $:重命名当前会话
- Ctrl+b ( / ):切换到上一个/下一个会话
窗口操作
- Ctrl+b c:创建新窗口
- Ctrl+b n:切换到下一个窗口
- Ctrl+b p:切换到上一个窗口
- Ctrl+b 0-9:直接切换到指定编号窗口
- Ctrl+b w:列出所有窗口
- Ctrl+b &:关闭当前窗口
- Ctrl+b ,:重命名当前窗口
窗格(分屏)操作
- Ctrl+b %:垂直分割(左右分屏)
- Ctrl+b “:水平分割(上下分屏)
- Ctrl+b 方向键:在窗格间切换
- Ctrl+b x:关闭当前窗格
- Ctrl+b z:最大化/恢复当前窗格
- Ctrl+b o:切换到下一个窗格
- Ctrl+b { / }:与上一个/下一个窗格交换位置
其他实用功能
- Ctrl+b ?:显示所有快捷键帮助
- Ctrl+b ::进入命令模式
- Ctrl+b [:进入复制模式(按q退出)
- Ctrl+b ]:粘贴复制的内容

