小编pfd*_*ers的帖子

Vim:编辑python.vim语法文件以突出显示Textmate

我正在尝试编辑python.vim语法文件,以复制Textmate中python的语法高亮显示.附图说明了我正在努力实现的功能参数的突出显示.

imgur pic代码

self,a,b在Textmate中突出显示,但在Vim中不突出显示.我想我必须做以下事情.

  1. 匹配新区域

    syn region pythonFunction start="(" end=")" contains=pythonParameters skipwhite transparent
    
    Run Code Online (Sandbox Code Playgroud)
  2. 尝试匹配字符串后跟逗号

    syn match pythonParameters ".*" contained
    
    Run Code Online (Sandbox Code Playgroud)

所以在第2点,".*"将匹配任何字符串,并且必须进一步扩展为正确.但是我不确定我是否在正确的路径上,因为2中的匹配不限于括号()之间的区域.任何提示或输入将不胜感激.

编辑1:如果有人想知道最终结果如何.

这是我为python突出显示的vim语法.

imgur pic代码

编辑2:因此,为了最终彻底,我为它创建了一个github页面.

http://pfdevilliers.github.com/Pretty-Vim-Python/

regex vim

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

道场不适合我

我不能让我的道场工作.我已经尝试了一切.

这是代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/dojo/1.4/dojo/dojo.xd.js">


    dojo.addOnLoad(function(){
    console.log("page ready, can modify DOM anytime after this");

});
</script>

</head>
<body>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript dojo

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

预期分段错误,只要为索引1分配值?

在代码片段中,一旦尝试为其分配值,我就预料到了分段错误count[1].然而,代码继续并执行第二个for循环,仅在程序终止时指示分段错误.

#include <stdio.h>

int main()
{
        int count[1];
        int i;

        for(i = 0; i < 100; i++)
        {
                count[i] = i;
        }
        for(i = 0; i < 100; i++)
        {
                printf("%d\n", count[i]);
        }
        return 0;
}
Run Code Online (Sandbox Code Playgroud)

有人可以解释发生了什么吗?

编辑的原因: 根据用户的评论改进了示例代码 int count[0] -> int count[1],也避免了火焰战争.

c memory arrays memory-management segmentation-fault

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

在 C 中使用 drand48_r 作为随机数生成器

所以我一直在用 C 编写一些应用程序并使用 OpenMP 进行并行化。我实现了 Monte-Carlo Pi 估计,发现正常的 rand() 函数不是可重入和线程安全的。建议使用 drand48_r 选项。

现在问题来了,我的应用程序在 Linux 上编译得很好,例如。Ubuntu、Fedora 和 CentOS 但不能在 Mac OS X 上编译。 OS X 上的编译错误是。

simple.c:7: 错误:“randBuffer”的存储大小未知

用作简单示例的代码是:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char* argv[]) {

  double x;
  struct drand48_data randBuffer;

  srand48_r(time(NULL), &randBuffer);

  drand48_r(&randBuffer, &x);

  printf("Random number: %f\n", x);

  return EXIT_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)

我阅读了它,并在手册页中找到了一条说明,

这些函数是 GNU 扩展,不可移植。

这是它的链接:http : //www.kernel.org/doc/man-pages/online/pages/man3/drand48_r.3.html

所以我有很多问题;

  1. 什么是 GNU 扩展以及是什么使它不可移植?
  2. 在也是线程安全的 OS X 上生成随机数有哪些替代方法?

嗯,就是这样。

该示例使用 gcc 编译为,

gcc simple.c -o simple

c random macos gnu openmp

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