1个不稳定版本

使用旧的Rust 2015

0.1.0 2016年11月15日

#32 in #key-bindings

BSD-2-Clause

165KB
2K SLoC

Rust 1.5K SLoC Lua 661 SLoC // 0.0% comments

webkitten

Webkitten是一个受luakit和Vim启发的命令驱动型网络浏览器工具包。

Webkitten允许您

  • 无鼠标操作(几乎)浏览网页
  • 按需或由事件触发运行浏览器交互的定制脚本
  • 编辑可读的配置文件
  • 将键盘快捷键分配给您的定制脚本
  • 使用自定义CSS和JavaScript修改网页
  • 根据您访问的网站创建自定义浏览模式
  • 自定义您的内容拦截器

运行参考实现

除了工具之外,Webkitten还包括两个浏览器界面的参考实现

使用make run来运行您平台的默认实现,并查看用户指南以及contrib目录中的启动配置的命令。使用make install将二进制文件安装到您的PATH.

构建您自己的浏览器

使用webkitten工具包需要实现ui模块,并使用ui::ApplicationUI的实现启动应用程序

// Create runtime configuration
let run_config = RunConfiguration {
  path: path_to_config_toml,
  start_pages: vec!["https://example.com"]
};

// Create engine
let engine = Engine::new(run_config);

// Create UI
let mut ui = MyCustomUI::new(engine);

// Go go go
ui.run();

然后UI应该通知事件处理器当发生事件时,例如在命令栏中按下Return键或网页加载失败。只要满足此合同,脚本引擎就可以自动化与UI的交互,使其易于自定义。

虽然名为"webkitten",但新的UI绑定不一定是WebKit-based,尽管绑定是在考虑WebKit的情况下设计的。

开发

Webkitten主要用Rust编写,并使用Cargo进行依赖项管理。欢迎提问、建议和补丁 - 请参阅贡献指南获取更多信息。

构建

要构建,请运行make。要运行参考实现,请使用make run

对于所有其他命令,请尝试make help

依赖项

~3MB
~80K SLoC