小编gdw*_*dw2的帖子

在"运行时"编辑程序?怎么样?

这个问题是一个必然结果:"在运行时编辑程序"?为什么?

我最近才接触到Clojure的世界,并且被我见过的"实时编码" 一些 例子所吸引.上面链接的问题讨论了"为什么".

我的问题是:这种实时编码技术如何成为可能?它是clojure语言的一个特征,使它成为可能吗?或者它只是一种他们应用的模式,可以应用于任何语言?我有python和java的背景知识.是否可以使用这些语言中的"实时代码",就像在clojure中一样?

lisp python java scheme clojure

15
推荐指数
3
解决办法
2427
查看次数

POST 中的 nodejs/express 和二进制数据

我正在尝试将二进制数据发送到快速应用程序。只要我的值小于 0x80,它就可以正常工作。如果单个值是 0x80 或更大,则会弄乱整个缓冲区。

快递员:

binary = require('binary');

exports.api = function(req, res){
    var body = req.body.name;
    var buf = new Buffer(body,'binary');

    console.log('body',req.body);
    console.log('req body len', body.length);
    console.log('buf len', buf.length);

    var g = binary.parse(buf)
        .word16bu('a') // unsigned 16-bit big-endian value
        .word16bu('b').vars

    console.log('g.a', g.a);
    console.log('g.b', g.b);

  res.send("respond with a resource");
};
Run Code Online (Sandbox Code Playgroud)

Python 客户端(内容类型:application/x-www-form-urlencoded):

import requests
from struct import pack
# send two unsigned shorts (16-bits each).
requests.post('http://localhost:3000/api', data={'name':pack('!HH',1,2)})
Run Code Online (Sandbox Code Playgroud)

当数据 = 1,2 时表达输出。 这是我所期望的

body { name: '\u0000\u0001\u0000\u0002' }
req body len …
Run Code Online (Sandbox Code Playgroud)

binary node.js express

8
推荐指数
2
解决办法
2万
查看次数

如何将'git describe'输出到Jenkins构建名称中

将命令输出放在Jenkins构建名称中的最佳(或任何!)方法是什么?

我想将git describe命令的输出放入Jenkins作业的构建名称中.

我已经安装了build-name-setter插件,希望将构建名称设置为:

${ENV, var="GIT_DESCRIBE"}
Run Code Online (Sandbox Code Playgroud)

在设置$GIT_DESCRIBE名称之前我只是不知道如何设置!我尝试过使用这个EnvInject插件.动态设置环境变量的唯一方法是使用groovy脚本.这可以很好地工作,除了我的工作是在一个远程奴隶上运行,并且groovy脚本(显然)只在主服务器上运行.

jenkins

6
推荐指数
1
解决办法
2056
查看次数

来自Vim内的Gre((带管道)

我想创建一个'quickfix'列表(请参阅参考资料:help quickfix),其中包含所有包含"abc"但不包含"xyz"的行的文件.我希望我可以运行以下vim ex命令:

:grep -nHr abc * | grep -v xyz
Run Code Online (Sandbox Code Playgroud)

不幸的是,vim不喜欢"管道",命令失败.在vim中执行此操作的最佳方法是什么?

vim grep

5
推荐指数
2
解决办法
2591
查看次数

具有透明背景的Qt小部件

(我正在使用PySide,但我认为对于任何语言绑定,答案都是相同/相似的)。

我正在尝试使用位于此处的整形时钟示例,并使时钟的表面(圆圈)透明,以便我看到的只是时钟指针和分钟刻度。照原样,当示例运行时,它看起来像这样。我正在使用Windows 7。

到目前为止,我已经尝试了以下方法(在构造函数中):

  • self.setAttribute(QtCore.Qt.WA_TranslucentBackground)
    • 时钟出现(在任务栏中显示),但我在任何地方都看不到它
  • self.setAttribute(QtCore.Qt.WA_NoSystemBackground)
    • 时钟出现,但背景为纯黑色。
  • self.setWindowOpacity(0.5)
    • 时钟出现,但是整个时钟是透明的。我希望背景(面)是透明的,但我希望钟针可见。

python qt transparency pyside

5
推荐指数
2
解决办法
1万
查看次数

访问 lru_cache 的缓存

一般问题:如何访问函数闭包中的变量?

具体问题:如何cache从用 包装的 python 函数访问原始数据functools.lru_cache()

如果我记住一个函数(示例取自文档)...

@lru_cache(maxsize=None)
def fib(n):
    if n < 2:
        return n
    return fib(n-1) + fib(n-2)

>>> [fib(n) for n in range(16)]
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610]

>>> fib.cache_info()
CacheInfo(hits=28, misses=16, maxsize=None, currsize=16)
Run Code Online (Sandbox Code Playgroud)

这里是cache定义的地方:https : //github.com/python/cpython/blob/f0851910eb8e711bf8f22165cb0df33bb27b09d6/Lib/functools.py#L491

fib()被记忆时,向包装器lru_cache添加一个cache_info()cache_clear()函数。 cache_clear()可以访问cache并且我可以访问,cache_clear()所以我可以以某种方式使用它来cache直接访问吗?

python caching scope python-3.x

5
推荐指数
1
解决办法
1294
查看次数

如何多次调用Makefile目标?

在下面的简单的例子,我想做一个make dist,并在distclean目标之前执行distdebug distrelease.

.PHONY: distclean

dist: distdebug distrelease
    @echo in dist

distdebug: distclean
    @echo in distdebug

distrelease:          
    @echo in distrelease

distclean:
    @echo in distclean
Run Code Online (Sandbox Code Playgroud)

不幸的是,尽管使用.PHONY,distclean只被称为一次:

vagrant@precise32:/tmp$ make dist
in distclean
in distdebug
in distrelease
in dist
Run Code Online (Sandbox Code Playgroud)

我猜Make知道它已经运行了distclean一次,所以它不再运行它.如何让它distclean多次运行?

makefile

2
推荐指数
1
解决办法
1992
查看次数

标签 统计

python ×3

binary ×1

caching ×1

clojure ×1

express ×1

grep ×1

java ×1

jenkins ×1

lisp ×1

makefile ×1

node.js ×1

pyside ×1

python-3.x ×1

qt ×1

scheme ×1

scope ×1

transparency ×1

vim ×1