8 个不稳定版本 (3 个破坏性变更)

0.4.0 2020年10月10日
0.3.1 2020年9月5日
0.3.0 2020年7月26日
0.2.3 2020年7月19日
0.1.0 2019年2月1日

#1262 in 网页编程

每月26次下载

MIT 协议

260KB
5K SLoC

Build Status Docs License: MIT

Rust-Weechat

Weechat 是一个可扩展的聊天客户端。

Rust-Weechat 是一个高级 Rust 库,提供用于构建 Weechat 插件的 API。

它将 Weechat C 插件 API 封装为安全的 Rust 绑定。

项目状态

该项目处于相当稳定的状态,Weechat 插件 API 允许的许多功能都已通过高级安全 API 公开。许多事情仍然需要解决并安全公开。可能还会引入破坏性变更。

实验性或不稳定的功能被限制在功能标志之后。

示例

示例插件可以在存储库的 示例 部分找到。

以下示例显示了最小的 Rust 插件。

use weechat::{
    buffer::Buffer,
    weechat_plugin, Args, Weechat, Plugin,
};

struct HelloWorld;

impl Plugin for HelloWorld {
    fn init(_: &Weechat, _: Args) -> Result<Self, ()> {
        Weechat::print("Hello from Rust");
        Ok(Self)
    }
}

impl Drop for HelloWorld {
    fn drop(&mut self) {
        Weechat::print("Bye from Rust");
    }
}

weechat_plugin!(
    HelloWorld,
    name: "hello",
    author: "Damir Jelić <[email protected]>",
    description: "Simple hello world Rust plugin",
    version: "1.0.0",
    license: "MIT"
);

使用 Rust-Weechat 构建的项目

我们遗漏了某个项目吗?提交一个 pull 请求,我们将为您添加!只需编辑此 README.md 文件。

选择正确的 Weechat 版本。

默认情况下,如果找到,将使用系统范围的 weechat-plugin.h 文件,此行为可以通过两个环境标志来覆盖。

要首选捆绑的包含文件,应将 WEECHAT_BUNDLED 设置为 true。捆绑的包含文件跟踪最新的 Weechat 发布。

可以通过 WEECHAT_PLUGIN_FILE 环境变量设置自定义包含文件,此环境变量接受包含文件的完整路径。

依赖关系

~1.2–3.5MB
~80K SLoC