小编Nec*_*cto的帖子

如何在后台执行自动完成查询?

我对emacs自动完成模式非常兴奋.但是我的代码库很大,有时候,当我输入时,它会尝试ssuggest完成,它搜索所有可能的单词,然后挂起.这很烦人.

有没有办法在后台并行进程中运行搜索,因此emacs仍然会响应用户操作.并且只有当查询结束时该点位于该位置时,建议自动完成?

类似地,键盘输入是主要过程,并且永远不会被延迟,并且自动完成作为机器资源上的残差.

emacs concurrency elisp autocomplete

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

emacs贪婪的搜索 - 后退 - 正则表达式

如何在emacs中使后向正则表达式搜索变得贪婪?

例如,我有abc 163439 abc我的缓冲区,我运行 M-x search-backward-regexp 以下正则表达式:163439\|3.这个正则表达式总是会在缓冲区中找到"3",但整个长整数都会更新.因为,当它开始搜索时,它首先会遇到'3'.在第二次尝试中,它将从数字内部的"3"的位置开始,并且将省略它.

如何找到最长和最接近的匹配?

所以我的意思是,当它遇到'3'时,我希望它检查匹配的部分是否不是更大匹配的一部分.

regex emacs elisp

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

知道它们的身体相等,如何证明函数相等?

我们如何证明以下内容?:

Lemma forfun: forall (A B : nat->nat), (forall x:nat, A x = B x) ->
                                       (fun x => A x) = (fun x => B x).
Proof.
Run Code Online (Sandbox Code Playgroud)

proof coq

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

如何从emacs kill-ring中删除顶部条目(pop)?

我需要将顶部被杀死的字符串替换为另一个.我可以(猛拉)它然后(杀死区域......),但在那之后,会有两个字符串:旧字符串和新字符串.如何从杀戮戒指中完全删除旧条目?

emacs elisp

4
推荐指数
1
解决办法
564
查看次数

怎么做Ltac的"负面"匹配?

我想在一些假设存在的情况下应用规则,而另一个假设不存在.我该如何检查这种情况?

例如:

Variable X Y : Prop.
Axiom A: X -> Y.
Axiom B: X -> Z.

Ltac more_detail :=
    match goal with
     |[H1:X,<not H2:Y>|-_]  =>
      let H' := fresh "DET" in assert Y as H'
                                   by (apply A;assumption)
     |[H1:X,<not H2:Z>|-_]  =>
      let H' := fresh "DET" in assert Z as H'
                                   by (apply B;assumption)
    end.
Run Code Online (Sandbox Code Playgroud)

这样,为了这个目标:

> Goal X->True. intros.

H:X
=====
True
Run Code Online (Sandbox Code Playgroud)

more_detail. 将引入第二个假设DET:

H:X
DET:Y
DET0:Z
=====
True
Run Code Online (Sandbox Code Playgroud)

并且连续调用more_detail.将失败.

然而more_detail.应始终确保,两个YZ …

coq ltac

4
推荐指数
1
解决办法
444
查看次数

如何为给定类的子类专门化泛型函数

我如何专门化泛型函数来获取指定给定类的子类的符号.例如:

(defclass a () ())
(defclass b (a) ())
(defclass c (b) ())
(defclass d () ())

(defgeneric fun (param))
(defmethod fun ((param (<subclass of> a)))
  (format t "~a is a subclass of A~%" param))

(fun 'c) ;-> "C is a subclass of A"
(fun 'd) ;-> Error: not found method for generic function call (fun 'd)
Run Code Online (Sandbox Code Playgroud)

CLOS可以进行这样的调度吗?如果是的话,我应该写什么而不是" 子类 "?

common-lisp clos

3
推荐指数
1
解决办法
949
查看次数

bash的`which`显示错误的应用程序路径

比方说,我有以下结构:

/usr/bin/app
/home/me/bin/app
Run Code Online (Sandbox Code Playgroud)

$/usr/bin/app --version- - v1,$/home/me/bin/app --version- > v2.

所以,当我执行一些命令时,比如说$app --version,它会返回v1,但是我$which app给了我/home/me/bin/app,所以,我想,它必须执行第二个应用程序,然后返回v2.为什么不发生?

换句话说,结构是否$app等同于$$(which app),并且因此不适用?

linux bash which

3
推荐指数
1
解决办法
885
查看次数

frama-c wp插件无法验证手册中的交换功能

如何frama-c -wpwp手册验证示例- 一个简单的swap函数(swap.c):

/* @ requires \valid(a) && \valid(b);
   @ ensures A: *a == \old(*b);
   @ ensures B: *b == \old(*a);
   @ assigns *a,*b;
   @*/
void swap(int * a, int * b);

void swap(int * a, int * b) {
    int tmp = * a;
    *a = *b;
    *b = tmp;
    return ;
}
Run Code Online (Sandbox Code Playgroud)

调用

$ frama -c -wp -wp-rte swap.c

得到:

[kernel] Parsing FRAMAC_SHARE/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing swap.c (with preprocessing)
[wp] Running …
Run Code Online (Sandbox Code Playgroud)

frama-c alt-ergo

3
推荐指数
1
解决办法
215
查看次数

如何在hunchentoot中处理多个文件上传?

我知道如何使用hunchentoot处理单个文件上传hunchentoot:post-paremter,但是当我添加一个属性时multiple,即<input name="file" type="file" multiple="multiple"/>(hunchentoot:post-paraameter "file")只获得其中一个属性.是否存在(以及什么)接收用户选择的所有文件的机制?

lisp common-lisp hunchentoot web

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

如何在emacs中查看(标记)与项目仓库相比更改的行?

通过某种方式标记所有修改的行,是否有任何方法可以就地进行当前的工作副本修改.例如,NetBeans具有以下功能: 在此输入图像描述

在MSVC中,像这样的smth(不适用于VCS,但它看起来很相似): Visual Studio 2010中的绿条

我在Emacs中使用vc-mode来处理我的版本化项目.它可以计算完整的差异(vc-diff),但不方便:分别浏览差异.我希望,在文件编辑过程中知道所有更改的行.它是在某个版本控制插件中实现的吗?

emacs version-control

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

如何将(介绍)假设返回到目标公式?

证明:

Parameter A B : Prop.
Goal A->B.
intro A.
Run Code Online (Sandbox Code Playgroud)

我明白了:

 1 subgoals
A : A
______________________________________(1/1)
B
Run Code Online (Sandbox Code Playgroud)

我如何返回A目标部分?返回:

1 subgoals
______________________________________(1/1)
A -> B
Run Code Online (Sandbox Code Playgroud)

coq

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

我想知道为什么在 Clojure 中,不被评估的代码是数据的优势

我是一名初学 Clojure 程序员。在 Book 中,Clojure 的一个优点是不求值的代码是数据。但是我不理解。所以,我想要一个示例代码和一个解释,以便我能理解。

我是韩国人。因此,即使我写了一个尴尬的句子或未能保持我的礼貌,如果你能理解,我将不胜感激。

lisp clojure evaluate

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