ZeroOmega,从SwitchyOmega派生,兼容manifest v3
快速轻松地管理和切换多个代理。
Chromium扩展
该项目可作为Chromium扩展使用。
你可以在Chrome网上应用店尝试, 或在发布页面获取打包好的扩展文件(CRX)进行离线安装。
Firefox插件(实验性)
还有一个实验性的WebExtension移植版本,可以安装在Firefox Nightly 56及以上版本中。
由于Mozilla方面的WebExtensions API仍在大力开发中,我们强烈建议使用Nightly通道(>= 56.0)并经常更新。
开发者版和Beta通道不会经常收到修复,因此SwitchyOmega不支持这些版本。有些用户报告它在Firefox开发者版(>= 55)上也能正常工作,但我们强烈建议不要这样做。它在Firefox 54稳定版上完全无法工作。
你可以在Mozilla附加组件上尝试, 或在发布页面获取打包好的扩展文件(XPI)进行离线安装。
在报告问题之前,请确保你使用的是最新的Nightly构建版本。 问题中应该提到构建号和构建日期。
注意:由于AMO审核政策,PAC配置文件在Firefox上不起作用。我们会看看能做些什么。
开发状态
PAC生成器
本项目包含一个名为omega-pac
的PAC生成模块,用于处理配置文件模型并将配置文件编译成PAC脚本。该模块是独立的,文档准备就绪后可以发布到npm。
选项管理器
omega-target
文件夹包含与浏览器无关的逻辑,用于管理选项和应用配置文件。每个公共方法都在注释中有详细说明。与浏览器相关的功能未包含在内,应在omega-target
类的子类中实现。
omega-web
是一个基于Web的配置界面,用于管理各种选项和配置文件。该界面与omega-target
作为后端配合得很好。
omega-web
本身不完整,需要一个名为omega_target_web.js
的文件,其中包含一个名为omegaTarget
的angular模块。该模块包含与浏览器相关的代码,用于与omega-target
后端通信,以及其他检索浏览器相关状态和信息的代码。
有关此类模块的示例,请参见omega-target-chromium-extension/omega_target_web.coffee
文件。
目标
omega-target-*
文件夹应包含与环境相关的代码,如浏览器API调用。
每个目标文件夹应包含一个扩展的OmegaTarget
对象,其中包含抽象基类(如Options
)的子类。这些类包含抽象方法的实现,并可以随意覆盖其他方法。
目标可以将omega-web
中的文件复制到其构建中,以提供基于Web的配置界面。如果这样做,目标必须提供omega_target_web.js
文件,如选项管理器部分所述。
此外,每个目标可以包含该目标所需的其他文件和资源,如后台页面和扩展清单。
目前,只实现了一个目标:WebExtension目标。 该目标允许该项目作为大多数基于Chromium的浏览器中的Chromium扩展使用,也可以作为上面提到的Firefox插件使用。
翻译
翻译托管在Weblate上。如果你想帮助改进翻译或为你的语言开始翻译,请点击下方图片链接。
本项目翻译由Weblate托管。如果您希望帮助改进翻译,或将本项目翻译成一种新的语言,请点击下方图片链接进入翻译。
构建项目
SwitchyOmega已迁移到使用npm和grunt进行构建。请注意,本项目需要npm 2.x版本。
构建项目:
# 首先安装node和npm(确保npm --version > 2.0),然后:
sudo npm install -g grunt-cli@1.2.0 bower
# 在项目文件夹中:
cd omega-build
npm run deps # 这会在每个模块中运行npm install。
npm run dev # 这会运行npm link以帮助本地开发。
# 注意:在某些环境中,上一条命令可能需要sudo。
# 现在模块已经就绪。我们可以开始构建了:
grunt
# 构建完成后,会生成一个文件夹:
cd .. # 返回项目根目录。
ls omega-target-chromium-extension/build/
# 上面的文件夹现在可以作为未打包的扩展加载到Chromium中。
要启用grunt watch
,请在omega-build
目录中运行一次grunt watch
。
这将在本项目的每个模块中有效运行grunt watch
。
许可证
SwitchyOmega使用GNU通用公共许可证第3版或更高版本授权。
SwitchyOmega是自由软件:你可以根据自由软件基金会发布的GNU通用公共许可证的条款(许可证的第3版或(按你的选择)任何后来的版本)重新发布或修改它。
发布SwitchyOmega是希望它有用,但不负任何担保责任;甚至不负任何适销性或特定用途的隐含担保责任。详情请参阅GNU通用公共许可证。
你应该已经收到一份GNU通用公共许可证的副本。如果没有,请查看http://www.gnu.org/licenses/。
注意
SwitchyOmega目前没有专门的项目主页。switchyomega.com
等网站与SwitchyOmega项目没有任何关联,也不是由SwitchyOmega项目成员维护的。请参考此Github仓库和wiki获取官方信息。
SwitchyOmega目前没有与任何代理提供商、VPN提供商或ISP合作。SwitchyOmega项目或软件中不显示任何广告。欢迎代理提供商在教程中推荐SwitchyOmega作为解决方案的一部分,但必须明确说明SwitchyOmega是一个独立项目,与提供商没有关联,因此不能提供任何关于网络连接或代理技术的支持。
重要声明
SwitchyOmega 目前没有专门的项目主页。 switchyomega.com
等网站与 SwitchyOmega 项目并无任何关联,也并非由 SwitchyOmega 项目成员维护。一切信息请以 Github 上的项目和 wiki 为准。
SwitchyOmega 目前未与任何代理提供商、VPN提供商或 ISP 达成任何合作协议,项目或软件中不包含任何此类广告。欢迎代理提供商在教程或说明中推荐 SwitchyOmega ,但请明确说明此软件是独立项目,与代理提供商无关,且不提供任何关于网络连接或代理技术的支持。