gpt4 book ai didi

scripting - GIMP 方案脚本中的数字-> 字符串和相关过程

转载 作者:行者123 更新时间:2023-12-04 00:48:50 25 4
gpt4 key购买 nike

我对 GIMP 脚本中的字符串到数字和数字到字符串的转换感到沮丧。我在 Windows Vista 中运行 GIMP 2.6.8。

我知道 GIMP 的内部 Scheme 实现随版本而变化,我似乎无法确定文档。据我所知,GIMP 的 Scheme 是 TinyScheme 的一个子集和/或支持 R5RS 标准程序。无论如何,当我想尝试一些新东西时,我通常只是在打包的脚本目录中查看示例,因为那应该肯定有效,对吧?

例如,grid-system.scm 随附最新的 GIMP 版本并具有表达式,

(string-append (number->string obj) " ")

这正是我想要的。但是,如果我在我自己的脚本中使用 number->string,或者甚至将它输入 GIMP 的脚本控制台(这是我通常测试我想做的新东西的方式),它会告诉我 number->string 是一个未绑定(bind)的变量:

> (number->string 3)

错误:eval:未绑定(bind)变量:number->string

其他标准程序,比如 R5RS,工作得很好:

>(字符串追加“frust”“rated”)

“沮丧”

所以,

1) 除了像搜索 GIMP 的源代码这样的激烈的事情之外,是否有一些针对当前 GIMP Scheme 脚本的隐藏文档?

2) 我可以使用 GIMP 控制台吐出所有已定义过程的列表来找到我需要的东西吗?

3) 还有人确认 number->string 没有为当前的 Windows 版本定义,即使它出现在打包的脚本中?我的网络搜索没有发现任何相关问题,并且完全卸载所有 GIMP 版本,回到最新版本让我陷入同样的​​困境。

最佳答案

你可以在 Scheme 中重新绑定(bind)变量和 monkeypatch 顶级标准库函数,但我认为你不能解除绑定(bind)顶级变量。可能有一些库文件没有正确加载。

我在 OS X 上的 GIMP 2.6.8 中的 TinyScheme 可以很好地执行 number->string。

number->string 在share/gimp/2.0/scripts/script-fu.init 中定义为

(define (number->string n) (anyatom->string n number?))

因此您只需运行该代码即可重新绑定(bind)变量。或者你可以重新加载 script-fu.init

关于scripting - GIMP 方案脚本中的数字-> 字符串和相关过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2485575/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com