小编Pau*_*ham的帖子

Vim语法着色:如何仅突出显示长行?

我希望vim为我设置"长"线.以80列为例,我想突出显示超过该长度的行.这里大概是我认为的.vimrc文件应该包含的内容,虽然它(1)不起作用,并且(2)使用Perl的正则表达式语法来说明我的观点,因为我不太了解Vim:

...
highlight Excess ctermbg=0
au Syntax * syn match Excess /.{80,}$/
...
Run Code Online (Sandbox Code Playgroud)

这(至少在我看来)应该标记超过80列的行.我理想的是能够只为超过80列的线条部分着色,因此如果一条线是85列,那么第81列到第85列将被突出显示.

我确信Vim可以做到这一点,而不是掌握在我手中.

vim configuration syntax-highlighting

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

如何修复丢失的git远程详细信息?

一些存储库克隆我允许我这样做:

% git pull
% git push
Run Code Online (Sandbox Code Playgroud)

但是其他存储库要求我输入:

% git pull origin master
% git push origin master
Run Code Online (Sandbox Code Playgroud)

我想我在后一种情况下遗漏了什么 - 有谁知道这里发生了什么(不是)?我正在使用最新的git版本,显然不能很好地使用它.

git repository

11
推荐指数
3
解决办法
4690
查看次数

程序化的git状态

有没有人知道一个git管道(绝对不是瓷器)的方法来确定是否:

  • 自上次提交以来,repo中有编辑,以及
  • 当地HEAD是否领先于原产地/ HEAD

我希望以编程方式确定这个,因此不想用瓷器和各种sed-fu来解决这个问题.

git

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

代表40,000,000秒作为ISO-8601期间

40,000,000秒是462.962天.如果我想将其表示为ISO-8601期间,请使用以下格式:

PnYnMnDTnHnMnS
Run Code Online (Sandbox Code Playgroud)

确定月份和年份的规则是什么?两者都不是精确的术语,标准表示它取决于期间的开始日期.

这是有道理的:它使得周期模糊而没有开始日期.是否有任何可接受的使用没有开始日期的期限的方法?

iso8601

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

追溯svn导入git

这是我的问题:

  1. 我使用Subversion一段时间,直到我切换到Git.还有一段时间过去了.
  2. 从Subversion到Git没有导入历史记录.这是严格的结账,删除.svn dirs,然后是git init.不是一个聪明的举动.
  3. 现在,数以千计的git提交后,我找到了第一次git提交发生时Subversion repo的备份.啊哈!

我想将git repo回滚到第0天,正确导入svn repo,然后重新应用所有git更改,从而纠正第一次没有完成的操作.

有人试过吗?我该怎么做呢?这听起来像是所有rebase的母亲.

svn git history

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

这个Fibonacci函数有什么问题?

在博客文章中偶然发现了这个糟糕的C++代码示例,没有任何解释为什么它被认为是"坏".我有自己的想法,但我想听听有经验的C++开发人员.

unsigned int Fibonacci (unsigned int n)
{
    if (n == 0 || n == 1)
        return n;
    else
        return Fibonacci (n - 1U) + Fibonacci (n - 2U);
}
Run Code Online (Sandbox Code Playgroud)

c fibonacci

6
推荐指数
2
解决办法
375
查看次数

应该在connect()中使用哪个addrinfo结构?

我正在编写一个程序,可以连接到不同的网站,请求和下载网页.我这样做很大程度上是为了学习和正确理解网络编程.我想知道struct addrinfo返回的返回类型的链接列表的指针getaddrinfo是否按任何特定顺序排列,如果是,则选择以任何方式连接到物质的IP地址.

例如,如果我运行getaddrinfo("google.com", "http", &hints, &res),res有时最多会有七个互联网地址.如果我连接到第一个或最后一个,它会以任何方式产生影响吗?请注意,我已经研究了这个功能的手册页,据我了解,我的问题没有在那里得到解答.

c sockets getaddrinfo

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

如何使用C++ 11正确初始化'struct stat'?

多年来我一直在初衷struct stat这样:

#include <sys/stat.h>
struct stat foo = {0};
Run Code Online (Sandbox Code Playgroud)

具体来说,{0}将所有字段设置为零,相当于memset (&foo, NULL, sizeof foo);.现在使用C++ 11,这已经开始产生警告:

foo.cpp:2:19: warning: missing field 'st_mode' initializer [-Wmissing-field-initializers]
  struct stat s = {0};
                    ^
Run Code Online (Sandbox Code Playgroud)

这是因为C++ 11的新初始化器语法,警告暗示我没有初始化所有成员.struct stat在C++ 11中实例化和初始化a的首选方法是什么?

c++ c++11

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

Apple clang-703.0.29如何在C++ 1x支持方面回溯到clang发行版?

我想将Xcode附带的Apple铿锵声映射回官方的clang功能列表.

但我无法将这两者联系起来.版本模糊不清.

有办法告诉吗?

clang c++11 c++14 xcode7

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

预增量$#数组意味着什么?

我遇到了以下代码行.它有问题:

  • 它的目的与推动相同
  • 它应该使用推动
  • 它很难阅读,理解
  • 我已经将它改为使用push
  • 它做了我认为非法的事情,但显然不是

这里是:

$array [++$#array] = 'data';
Run Code Online (Sandbox Code Playgroud)

我的问题是:预增量$#数组意味着什么?我一直认为$#array是一个数组的属性,而不是可写的.

arrays syntax perl

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