地址
github.com/sciter-sdk/…
说明
Sciter的Golang绑定:用于现代UI开发的可嵌入HTML / CSS / script引擎 sciter.com
去绑定Sciter
检查此页面是否有其他语言绑定(Delphi / D / Go / .NET / Python / Rust)。
注意
项目的所有权已转移到该新组织。因此,import path
for golang现在应该是github.com/sciter-sdk/go-sciter
,但包名称仍然是sciter
。
介绍
这个软件包提供的Golang绑定Sciter使用CGO。使用go sciter时,必须sciter dynamic library
从sciter-sdk下载指定的平台,该库本身很小(小于5MB,升序时小于2MB)。
支持大多数Sciter API,包括:
- HTML字符串/文件加载
- DOM操作/回调/事件处理
- DOM状态/属性处理
- 自定义资源加载
- 刺激行为
- 引子选项
- Sciter价值支持
- NativeFunctor(用于Sciter脚本)
而且API或多或少是gopher友好的方式组织的。
不支持的内容:
- Sciter节点API
- TIScript引擎API
入门
目前仅支持Go 1.10或更高版本(问题#136)。
下载sciter-sdk
将sciter运行时库从sciter-sdk提取到系统PATH
运行时库bin
bin.lnx
bin.osx
带有后缀,例如dll
so
或dylib
-
Windows系统:简单地复制
bin\64\sciter.dll
到c:\windows\system32
只够 -
Linux:
cd sciter-sdk/bin.lnx/x64
export LIBRARY_PATH=$PWD
echo $PWD >> libsciter.conf
sudo cp libsciter.conf /etc/ld.so.conf.d/
sudo ldconfig
ldconfig -p | grep sciter
应该打印libsciter-gtk.so位置
-
OSX:
cd sciter-sdk/bin.osx/
export DYLD_LIBRARY_PATH=$PWD
为CGO设置GCC envrionmnet
对于Windows用户,建议使用mingw64-gcc(已测试5.2.0和7.2.0)。
在Linux下,需要gcc(4.8或更高版本)和gtk + -3.0。
go get -x github.com/sciter-sdk/go-sciter
运行示例并享受:)
Sciter版本支持
当前支持Sciter版本4.0.0.0
及更高版本。
关于西特
Sciter是一个Embeddable HTML/CSS/script engine for modern UI development, Web designers, and developers, can reuse their experience and expertise in creating modern looking desktop applications.
在我看来,Sciter虽然不是开源的,但它是使用完整的Web技术堆栈的出色桌面UI开发环境,特别是与CEF,Node Webkit和Atom Electron相比,它很小(不到5MB)。:)
最后,根据作者和Sciter 所说的Andrew Fedoniouk的说法 END USER LICENSE AGREEMENT
,Sciter 动态库的二进制形式对于商业或非商业应用都是完全免费的。
量身定制的Sciter C标头
此绑定使用Sciter C Headers的定制版本,该版本位于目录:中include
。包含的c标头是sciter-sdk标准标头的修改版本 。
似乎Sciter是使用C ++开发的,并且Sciter SDK中包含的标头 是C和C ++的混合,不太适合简单的golang绑定。
自从我开始使用Golang以来,我就不太喜欢C ++,因此我进行了此修改,并希望作者Andrew Fedoniouk为Sciter提供纯C头文件。:)