赞
踩
公众号关注 「奇妙的 Linux 世界」
设为「星标」,每天带你玩转 Linux !
基于 GPU 的功能强大的终端仿真器(跨平台是王道)
近几年越来越多人喜欢使用 dotfiles
中进行追踪自己的服务端相关的工具配置,这样就可以跨平台使用,只需要同步一下配置,即可无痛使用机器了。
Kitty
是一个跨平台、特性丰富的基于 GPU
的终端模拟器。使用线程渲染将输入延迟最小化,以及 GPU
渲染技术,使得肉眼可见的速度提升,以及降低系统负载和平滑的滚动效果。它是一个轻量级的模拟器,可以通过脚本、shell
提示符和 SSH
进行控制。
Kitty - 官方仓库
Kitty - 官方文档
Kitty - 官方文档 - 快捷键
Kitty - 官方文档 - 集成功能
简单介绍终端的安装以及相关的配置文件
如果你系统安装(带图形化界面)之后,默认的终端是 Gnome Terminal
这个,如果我们直接使用的话,比如分屏显示、同时执行命令等高级操作多需要借助于第三方插件来完成,比如使用功能 Tmux
等。而 kitty
是一个功能完备的终端,其包含的功能做了Tmux
所做的一切,且做的更好。
跨平台 (Linux/macOS
)
纯文本的配置 (config
)
肉眼可见的速度提升 (GPU
)
- # 二进制安装
- # Linux: ~/.local/kitty.app
- # macOS: /Applications/kitty.app
- $ curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh
- # Ubuntu安装
- $ sudo apt update
- $ sudo apt install kitty -y
- $ kitty
-
- # 任务栏显示
- $ ln -s ~/.local/kitty.app/bin/kitty ~/.local/bin/
- $ cp ~/.local/kitty.app/share/applications/kitty.desktop ~/.local/share/applications/
- $ cp ~/.local/kitty.app/share/applications/kitty-open.desktop ~/.local/share/applications/
- $ sed -i "s|Icon=kitty|Icon=/home/$USER/.local/kitty.app/share/icons/hicolor/256x256/apps/kitty.png|g" ~/.local/share/applications/kitty*.desktop
- # 默认的配置文件
- # 默认不支持热加载配置(需重进)
- ~/.config/kitty/kitty.conf
-
- # 调试模式
- $ kitty --debug-config
介绍如何快速使用该终端和其对应快捷键组合!
[1] Scrolling
[2] Tabs
[3] Windows
[4] Other
Kitty 的核心部分采用 C 编写, UI 界面采用 python 展示!
Kitty
提供了极其强大的接口,如脚本控制、自定义 kittens
和 icat
看图功能,允许它无缝地与其他工具集成。
查看更多的 Kitty 扩展功能
[1] diff
显示的色彩效果是真的好
- # 对比
- $ kitty +kitten diff file1 file2
- # 集成到git配置里面
- $ vim ~/.gitconfig
- [diff]
- tool = kitty
- guitool = kitty.gui
-
- [difftool]
- prompt = false
- trustExitCode = true
-
- [difftool "kitty"]
- cmd = kitty +kitten diff $LOCAL $REMOTE
-
- [difftool "kitty.gui"]
- cmd = kitty kitty +kitten diff $LOCAL $REMOTE
[2] icat
可以直接终端里面显示图片
- # 图片
- $ kitty +kitten icat
-
- # 设置别名
- $ vim ~/.zshrc
- alias icat="kitty +kitten icat"
[3] themes
可以让你即时预览主题效果并支持一键切换
- # 主题
- $ kitty +kitten themes
- $ kitty +kitten themes --reload-in=all Dimmed Monokai
[4] Unicode input
接受字符然后输出对应码
- # 输出
- $ kitty +kitten unicode_input
[5] Hints
将终端所以的链接地址高亮起来并可以快捷打开
- # 设置快捷键绑定
- $ map ctrl+g kitten hints \
- --type=linenum \
- --linenum-action=tab nvim +{line} {path}
介绍该终端工具目前还没有实现的特性!
[1] 会话保存和加载
tmux-plugins/tmux-resurrect
自动保存
tmux-plugins/tmux-continuum
自动加载
- # kitty目前还没有直接就拿来能用的插件方案
- # https://github.com/kovidgoyal/kitty/issues/1197)
[2] 禅模式
并没有像 tmux
一样自带这个功能
但是其扩展能力极强,实现这个 非常轻松
- # vim ~/.config/kitty/zoom_toggle.py
- def main(args):
- pass
-
- from kittens.tui.handler import result_handler
- @result_handler(no_ui=True)
- def handle_result(args, answer, target_window_id, boss):
- tab = boss.active_tab
- if tab is not None:
- if tab.current_layout.name == 'stack':
- tab.last_used_layout()
- else:
- tab.goto_layout('stack')
[3] 状态栏
有 panel
貌似可以实现类似的功能
- # 可以实现类似的功能
- # https://sw.kovidgoyal.net/kitty/kittens/panel/
[4] 远程机器
如果尝试 ssh
到远程机器,可能会发生报错
- # 不能使用远程SSH命令
- # https://sw.kovidgoyal.net/kitty/faq
- $ kitty +kitten ssh myserver
-
- # 设置别名
- $ vim ~/.zshrc
- alias ssh="kitty +kitten ssh"
Kitty – 一个被严重忽视的生产力利器
本文转载自:「 Escape 的博客 」,原文:https://url.hi-linux.com/s3T9x ,版权归原作者所有。欢迎投稿,投稿邮箱: editor@hi-linux.com。
最近,我们建立了一个技术交流微信群。目前群里已加入了不少行业内的大神,有兴趣的同学可以加入和我们一起交流技术,在 「奇妙的 Linux 世界」 公众号直接回复 「加群」 邀请你入群。
你可能还喜欢
点击下方图片即可阅读
三款开源 Kubernetes 负载均衡器大比拼 (MetalLB vs PureLB vs OpenELB)
点击上方图片,『美团|饿了么』大额外卖红包天天免费领
更多有趣的互联网新鲜事,关注「奇妙的互联网」视频号全了解!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。