网站首页 > 技术文章 正文
我发现很多同事的终端都没有配置主题,完全是裸的。这篇文章用来帮助大家为自己的终端配置一份炫酷的主题,让你拥有更好的用户体验。
主题设置
先上一张效果图,如下:
安装zsh
mac默认已经有zsh,直接切换即可
chsh -s /bin/zsh
安装oh-my-zsh
使用如下命令可以顺利安装,不会出现请求被拒绝的问题,
sh -c "$(wget -O- https://gitee.com/mirrors/oh-my-zsh/raw/master/tools/install.sh)"
安装powerlevel10k
使用如下命令安装
git clone --depth=1 https://gitee.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
安装完成后,修改~/.zshrc,将ZSH_THEME修改为powerlevel10k/powerlevel10k即可。
安装字体
因为powerlevel10k主题使用了Nerd Fonts字体来显示一些符号,所以在使用之前必须先安装它,安装步骤如下:
brew tap caskroom/fonts
brew install font-hack-nerd-font --cask
字体下载好之后,需要在iterm2中安装,安装路径如下,
Preferences -> Profiles -> Text -> Font
注意:字体安装好后最好重启iterm2,否则在font下拉框中可能搜索不到新字体。
配置p10k主题
重启终端或者直接运行p10k configure都可以,p10k开始通过界面与你交互,你直接回答问题即可。
注意:第一个问题需要选择no,因为我们已经安装了字体,并且它提示的字体很可能无法下载导致配置进程被打断,其他选项根据自己的喜好选择即可。
这个交互完成后会在个人目录下生成一个.p10k.zsh文件,后续可以在这个文件中修改配置,当然也可以重新运行p10k configure。
更多配置说明可以参考powerlevel10k文档https://github.com/romkatv/powerlevel10k
终端复用软件——tmux
先给大家看一下效果,如下:
安装命令如下:
brew install tmux
这里有三个概念——session(会话)、window(窗口)、pane(窗格)
- 会话可以创建很多个窗口
- 窗口又可以分割成很多窗格
这几个概念乍一看不好理解,但一用起来就清楚了,不过理不理解都不耽误使用。
session操作
创建并进入一个session
tmux new -s session-name
查看session列表
tmux ls
重新进入一个session
tmux attach -t session-name
杀掉一个session
tmux kill-session -t session-name
离开session
tmux detach
也可以使用快捷键前缀 + d
这里的前缀默认是ctrl + b,即先按一下前缀再按快捷键d才能生效。
需要指出的是几乎所有的tmux快捷键都需要配合前缀使用,但是默认前缀的两个键距离有点远,一只手按起来不是很方便,所以咱们可以重新把这个前缀设置为ctrl + a。
配置快捷键
在用户目录下,新建.tmux.conf文件,配置如下:
如上图,
- 2~4行是把前缀设置为ctrl + a
- 7~10行是配置分屏快捷键
- 前缀 + -是上下分屏,前缀 + |是左右分屏
- 14~23行是配置底bar的样式
- 最后一行是把前缀 + r设置为配置文件重新加载快捷键
常用快捷键
除了上面提到的快捷键,还有几个常用的快捷键
- 前缀 + x 删除一个窗格
- 前缀 + & 关闭一个窗口
- 前缀 + c 创建一个窗口
- 前缀 + s 查看窗口列表
- 前缀 + [ 使屏幕可以滚动(屏幕默认不能滚动)
- 前缀 + 上下左右方向键 鼠标在窗格键互相切换
tmux的快捷键实在太多,其他的大家可以自己查询。
tmux现成的配置
如果你觉得这个配置太难写,自己没有那闲工夫去研究,别担心,这里有一份现成的配置.tmux.conf——https://github.com/gpakosz/.tmux。
使用方式如下,
cd ~
git clone https://github.com/gpakosz/.tmux.git
ln -s -f .tmux/.tmux.conf
cp .tmux/.tmux.conf.local .
效果如下,
底bar的样式变的比较炫酷。
设置iterm2背景图
到目前为止我还没有见过有哪位同事为iterm2设置过背景图,基本都是黑压压的一片,也不知道是不是没意识到有这个功能,其实设置非常简单,设置路径如下,
不过需要注意的一点是背景色需要调暗一点,如果太亮可能会影响代码识别。
总结
本文主要总结了我个人的终端配置——powerlevel10k + tmux,虽然都能在网上查到,但如果你按照以上步骤操作,我相信可以为你节省很多时间。这种炫酷的配置不但让你在敲代码时有更好的体验,而且肯定会引来很多同事羡慕的目光。
喜欢我的文章就关注我吧,有问题可以发表评论,我们一起学习,共同成长!
猜你喜欢
- 2024-10-09 零成本搭建hexo个人博客(二)--修改主题
- 2024-10-09 Windows端ZLMediaKit编译与webrtc推拉流测试
- 2024-10-09 一招帮你搞定所有广告,树莓派全能广告屏蔽助手——Pi-hole
- 2024-10-09 Casdoor 开始(cas怎么打开)
- 2024-10-09 基于 Nginx + ModSecurity V3 实现对 web 流量的安全访问控制
- 2024-10-09 Sqlmap安装保姆级教程SQL注入使用指南
- 2024-10-09 完美解决Linux环境编译ffmpeg库(linux ifort 编译)
- 2024-10-09 音视频开发2. FFMPEG+Nginx实现推流服务
- 2024-10-09 WebAssembly该怎么学第二篇(webassembly c)
- 2024-10-09 FFMPEG定制化编译指南(ffmpeg documentation)
- 1509℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 525℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 492℃MySQL service启动脚本浅析(r12笔记第59天)
- 472℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 469℃启用MySQL查询缓存(mysql8.0查询缓存)
- 449℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 428℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 426℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)