ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

WezTerm 插件安装与开发指南:3 步给 GPU 加速终端装上状态栏

WezTerm 插件安装与开发指南:3 步给 GPU 加速终端装上状态栏 WezTerm 插件安装与开发指南3 步给 GPU 加速终端装上状态栏【免费下载链接】weztermA GPU-accelerated cross-platform terminal emulator and multiplexer written by wez and implemented in Rust项目地址: https://gitcode.com/GitHub_Trending/we/weztermWezTerm 是用 Rust 写的 GPU 加速跨平台终端模拟器和多路复用器。本文面向零基础读者讲清远程插件怎么装、apply_to_config到底改了什么再带你从零写一个能跑的状态栏小插件。手动切换主题太麻烦用插件把重复操作沉淀下来你大概干过这事换个配色要翻文档改一行想看时间还得自己记快捷键。WezTerm 的插件系统本质就是允许别人写好的 Lua 代码在你终端启动时替你改好配置。你不用懂它内部只要会复制粘贴几行字就行。如何安装并加载第一个 WezTerm 远程插件最短路径就是改你主目录里的配置文件~/.wezterm.luaWindows 是%USERPROFILE%/.wezterm.lua。整个过程三步装用wezterm.plugin.require指向一个插件的 Git 仓库地址。用拿到返回的插件对象调用它的apply_to_config(config)。看重启 WezTerm效果直接生效。三步合起来就是下面这段把它整个贴进配置文件local wezterm require wezterm -- 换成任意你信任的插件仓库地址 local mybar wezterm.plugin.require https://example.com/owner/wezterm-clock local config wezterm.config_builder() mybar.apply_to_config(config) return configWezTerm 首次看到这条require时会自动把仓库克隆到运行时目录的plugins/下之后每次都直接用本地副本不会重复下载。重启后如果右下角出现了时间说明插件已经在改你的配置了。大多数插件还支持传一个选项表比如mybar.apply_to_config(config, { location right })具体字段去它仓库的 README 里看。用大白话讲清插件为什么真的有效插件就是一个放 Lua 文件的 Git 仓库约定有一个入口plugin/init.lua它return一个表表里必须带一个apply_to_config函数。这个函数在启动时被调用一次参数config是 WezTerm 正在拼装的那份配置对象。插件在里面直接改字段设color_scheme、往keys里塞快捷键、注册wezterm.on事件……改完这份被改过的配置就是你最终看到的终端。换句话说apply_to_config干的活是在配置生效前替你把该设的设好没有魔法就是改对象再交还。这也解释了为什么改插件后要手动同步——配置只在启动和显式更新时重建它不会盯着你的文件热加载。从零写一个显示时间的状态栏插件这是全文唯一一段长代码也是你以后写任何插件的骨架。新建一个本地目录放一个plugin/init.lualocal plugin {} function plugin.apply_to_config(config) config.status_update_interval 1000 -- 每秒触发一次 wezterm.on(update-status, function(window, pane) window:set_right_status(os.date(%H:%M)) end) end return plugin原理拆开看就三句status_update_interval定刷新间隔update-status事件到点就回调你你在回调里调window:set_right_status把右侧状态栏内容写掉。想显示 CPU、内存就在这个回调里多算几个值再拼字符串套路一样。开发阶段用本地路径引用它比远程快得多local p wezterm.plugin.require file:///home/you/projects/my-plugin local config wezterm.config_builder() p.apply_to_config(config) return config注意改了本地init.lua后不会自动生效要在 DebugOverlay 的 Lua REPL 里跑一次wezterm.plugin.update_all()把改动同步进运行时目录再测。日常维护更新、列出、移除插件都在 DebugOverlay 的 Lua REPL 里敲命令。更新全部插件用wezterm.plugin.update_all()想看每个插件的 URL、名字和落地路径用wezterm.plugin.list()想彻底删掉某个就按list()给出的plugin_dir删掉对应目录即可。没有单独的卸载命令删目录就是卸载。去哪找现成插件和权威文档社区维护着一份 awesome-wezterm 插件清单覆盖了主题、状态栏、工作区管理这些常见方向直接照着抄配置就行。机制和 API 以官方文档为准插件开发与安装文档 讲了克隆、更新、多模块组织wezterm.plugin每个函数的细节见 Lua API 参考。装一个、跑起来再照着骨架改一行改成你自己的显示内容——第一个插件就这么成了。【免费下载链接】weztermA GPU-accelerated cross-platform terminal emulator and multiplexer written by wez and implemented in Rust项目地址: https://gitcode.com/GitHub_Trending/we/wezterm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表