ubuntu系统常用插件安装.md

终端

wezterm终端

wezterm终端自带terminal multiplexer功能

wezterm相关地址:

Github:https://github.com/wez/wezterm

官网:https://wezfurlong.org/wezterm/

安装

https://wezfurlong.org/wezterm/install/linux.html

wezterm主题美化

https://github.com/KevinSilvester/wezterm-config

wezterm配置文件推荐位置为:

单配置文件:The recommendation is to place your configuration file at $HOME/.wezterm.lua (%HOME%/.wezterm.lua on Windows) to get started.

多配置文件:More complex configurations that need to span multiple files can be placed in $XDG_CONFIG_HOME/wezterm/wezterm.lua (for X11/Wayland) or $HOME/.config/wezterm/wezterm.lua (for all other systems).

由于这个项目使用的是多配置文集,因此进入~/config,将项目克隆到wezterm目录中

1
$ git clone git@github.com:KevinSilvester/wezterm-config.git wezterm

重启wezterm

  • 提示未安装字体JetBrains Mono Nerd Font:

https://www.nerdfonts.com/font-downloads

下载Jetbrains Mono Nerd Font,解压到/usr/share/fonts目录下

执行命令刷新缓存:

1
$ fc-cache -f -v

查看是否安装成功:

1
2
3
4
$ fc-list | grep 'JetBrainsMono Nerd'                                                                            
/usr/share/fonts/JetBrainsMono Nerd Font/JetBrainsMonoNLNerdFontPropo-Thin.ttf: JetBrainsMonoNL Nerd Font Propo,JetBrainsMonoNL NFP,JetBrainsMonoNL NFP Thin:style=Thin,Regular
/usr/share/fonts/JetBrainsMono Nerd Font/JetBrainsMonoNerdFont-MediumItalic.ttf: JetBrainsMono Nerd Font,JetBrainsMono NF,JetBrainsMono NF Medium:style=Medium Italic,Italic
...........# 省略

主题修改

常见问题

alacritty终端

alacritty速度也很快,就是不支持terminal multiplexer

用于代替ubuntu默认的终端,默认的终端经常卡顿、闪烁,由于有一些软件默认使用bash配置,在fish中配置很麻烦,因此alacritty不使用fish,使用bash。

相关地址:

GitHub:https://github.com/alacritty/alacritty

安装

https://github.com/alacritty/alacritty/blob/master/INSTALL.md#debianubuntu

注意:

apt install cmake pkg-config libfreetype6-dev libfontconfig1-dev libxcb-xfixes0-dev libxkbcommon-dev python3

由于安装了conda,python3可以不用安装

添加桌面入口:

1
2
3
4
sudo cp target/release/alacritty /usr/local/bin # or anywhere else in $PATH
sudo cp extra/logo/alacritty-term.svg /usr/share/pixmaps/Alacritty.svg
sudo desktop-file-install extra/linux/Alacritty.desktop
sudo update-desktop-database

颜色主题:

https://github.com/catppuccin/alacritty

fish配置

fish有默认的主题美化web界面

1
$ fish_config

进入web界面挑选

tide主题

Github:https://github.com/IlanCosman/tide

使用fisher安装tide,不要使用手动安装,有bug

安装完成后,输入tide configure即可配置

插件

thefuck

Github:https://github.com/nvbn/thefuck

输错命令时输入fuck可以自动修改,例如thefuck README中的例子:

1
2
3
4
5
6
7
8
9
➜ apt-get install vim
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

➜ fuck
sudo apt-get install vim [enter/↑/↓/ctrl+c]
[sudo] password for nvbn:
Reading package lists... Done
...

On Ubuntu / Mint, install The Fuck with the following commands:

1
2
3
sudo apt update
sudo apt install python3-dev python3-pip python3-setuptools # 有conda环境可以省略
pip3 install thefuck --user

fish中配置fuck命令,参考:https://github.com/nvbn/thefuck/wiki/Shell-aliases

Create a file ~/.config/fish/functions/fuck.fish instead and paste the output of thefuck --alias into that file. Fish should start as fast as before.

fish中运行该命令:

1
2
3
4
5
6
7
8
9
10
❯ thefuck --alias                                                                                               
function fuck -d "Correct your previous console command"
set -l fucked_up_command $history[1]
env TF_SHELL=fish TF_ALIAS=fuck PYTHONIOENCODING=utf-8 thefuck $fucked_up_command THEFUCK_ARGUMENT_PLACEHOLDER $argv | read -l unfucked_command
if [ "$unfucked_command" != "" ]
eval $unfucked_command
builtin history delete --exact --case-sensitive -- $fucked_up_command
builtin history merge
end
end
1
$ touch ~/.config/fish/functions/fuck.fish

将上面的function fuck粘贴到fuck.fish中即可。

lf

终端文件阅读器

Github:https://github.com/gokcehan/lf,https://github.com/gokcehan/lf/wiki/Tutorial

下载:https://github.com/gokcehan/lf/releases,[lf-linux-amd64.tar.gz](https://github.com/gokcehan/lf/releases/download/r32/lf-linux-amd64.tar.gz)

解压到~/.local/bin

然后在fish中将该目录添加到PATH环境变量:

1
$ fish_add_path ~/.local/bin

trash-cli

用于代替rm命令,将文件删除后会进入回收站

Github:https://github.com/andreafrancia/trash-cli

trash-cli 用于移动文件到回收站,同时会记录文件的原地址、删除日期和权限。trash-cli 和 KDE、GNOME、XFCE 使用同一个回收站,你可以在命令行或脚本运行 trash-cli。trash-cli 提供以下命令:

1
2
3
4
5
trash-put           把文件或目录移动到回收站
trash-empty 清空回收站
trash-list 列出回收站文件
trash-restore 恢复回收站文件
trash-rm 删除回收站文件

从 home 分区移动到回收站的文件在这:

1
~/.local/share/Trash/

安装:

1
sudo apt install trash-cli