小编Juv*_*uve的帖子

Vim:如何更改搜索命中和quickfix选择的突出显示颜色

我正在使用沙漠colorscheme,它使用橙色背景上的白色文字突出搜索命中.相同的模式用于quickfix窗口中的所选条目.

橙色的白色不是很可读.如何在.vimrc中更改?

编辑:感谢快速回复,对于沙漠计划,我现在使用以下搜索突出显示修改:

highlight Search guibg='Purple' guifg='NONE'
Run Code Online (Sandbox Code Playgroud)

紫色很容易在视觉上检测到,它是恕我直言,不用于沙漠计划中的语法着色.

vim colors

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

如何在没有服务器的情况下在本地测试我的ssh-key

我想测试我的钥匙~/.ssh.我没有sshd运行(Git-Bash @Windows不提供它).我想测试我是否还记得我的密钥的密码.

我找到了这些答案[1],[2],但它们对我不起作用.

有没有ssh服务器验证我的ssh密钥的简单方法?

windows ssh local

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

coffeescript try/catch的简短表示法

我有时写代码如下:

try doSomething()
catch e
  handleError e
Run Code Online (Sandbox Code Playgroud)

这不是什么好看和干净的coffeescript代码应该是什么样子.

有没有办法写:

try doSomething()
catch e handleError e   #<-- will not compile
Run Code Online (Sandbox Code Playgroud)

这将在我的try/catch语句中节省大约33%的代码行;)

syntax shortcut try-catch coffeescript

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

在gnuplot函数中使用awk或其他shell命令

我想要这样的东西:

file1='logs/last/mydata1.log'
file2='logs/last/mydata2.log'

# declare function that uses awk to reshape the data - does not work :(
sum1(fname)=("<awk '{sum=0; for(i=8;i<=NF;i+=2) sum+=$i; print $1,sum/2}' $fname")
sum2(fname)=("<awk '{sum=0; for(i=9;i<=NF;i+=2) sum+=$i; print $1,sum/2}' $fname")

# plot different columns of my file and awk processed file
plot file1 u 1:2 title "thing A measure 1" w l, \
     file1 u 3:4 title "thing A measure 2" w l, \
     file2 u 1:2 title "thing B measure 1" w l, \
     file2 u 3:4 …
Run Code Online (Sandbox Code Playgroud)

awk gnuplot

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

如何删除所有换行符?

我有这样的事情:

<node TEXT="   txt A   "/>
<node TEXT="

       txt X

"/>
<node>
   <html>
      <p>
        txt Y
      </p>
   </html>
</node>
<node TEXT="txt B"/>
Run Code Online (Sandbox Code Playgroud)

我想用XSLT来实现这个目的:

txt A
txt X
txt Y
txt B
Run Code Online (Sandbox Code Playgroud)

我想删除@ TEXT和CDATA的所有无用的空格和换行符.给输出结构的唯一XML输入是<node>-tags.

xslt newline line-breaks

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

使用Eclipse CDT/RSE/RDT远程调试C++应用程序

我正在与Eclipse(在Windows中)进行斗争,以使其连接到我的Linux机箱并远程编译和调试C++代码.

我的工作:

  • 安装CDT/RSE/RDT(Eclipse Juno,CDT 8.1.2,PTP(RDT)6.0.4,RSE 3.4)
  • rdt-server在Linux机器上运行(perl ./daemon.pl 4075)
  • 创建本地C++项目(基于Makefile)
  • 编译和调试本地C++项目
  • 创建远程项目(使用与rdt-server的"Linux"连接)
  • 编译远程项目(基于Makefile)

我可以做的一些手动的事情(没有Eclipse):

  • "远程"调试我编译的项目: ssh mybox 'cd /path/to/project; gdb main'
  • 启动一个gdbserver: ssh mybox 'cd /path/to/project; gdbserver fqdn:10000 main'

什么不起作用:在Eclipse中调试

  • 通过"C++应用程序"调试错误:未指定程序(因为我没有本地代码)
  • 通过"C++远程"调试错误:未指定程序(我需要本地代码吗?)
  • 通过"C++ attach"调试(调试器:"gdbserver")
    • 在linuxbox上运行的gdbserver
    • gdb无法与gdbserver交谈(cygwin gdb 7.5,linux gdb/gdbserver 7.3); 警告:架构拒绝了目标提供的描述.
  • 通过"C++ attach"调试(调试器:"gdb")将尝试附加到我的Windows进程.

其他可能导致问题的事情:

  • 我正在使用sshMSYS/Git提供的二进制文件(不是PATH)
  • Cygwin没有开启 PATH

我真的想在Eclipse中为我的C++项目进行远程调试.您有什么建议从这里开始吗?

c++ eclipse gdb remote-debugging eclipse-cdt

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

你如何构建你的SVN存储库?

什么是更好的?

A:

server:1080/repo/projectA/trunk/...
                          branches/branch1
                          branches/branch2
                          branches/branch3
                          tags/tag1/...
                          tags/tag2/...
server:1080/repo/projectB/trunk/...
                          branches/branch1
                          branches/branch2
                          branches/branch3
                          tags/tag1/...
                          tags/tag2/...
Run Code Online (Sandbox Code Playgroud)

B:

server:1080/repo/trunk/projectA/...
                 branches/projectA/branch1
                 branches/projectA/branch2
                 branches/projectA/branch3
                 tags/projectA/tag1/...
                 tags/projectA/tag2/...
server:1080/repo/trunk/projectB/trunk/...
                 branches/projectB/branch1
                 branches/projectB/branch2
                 branches/projectB/branch3
                 tags/projectB/tag1/...
                 tags/projectB/tag2/...
Run Code Online (Sandbox Code Playgroud)

您使用什么存储库结构?为什么?

svn project-management repository

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

如何让我的同事不要鄙视SVN?

我的许多同事在1-5人的小组中使用SVN,部分工作在特定项目上.其中一半是没有经验的学生.事实上,我们不是真正的软件开发人员,具有一年的经验.他们中的大多数使用Eclipse和subclipse来读取和写入他们对SVN存储库的贡献.

他们中的一些人有以下不同的问题:

  • 签出(与更新和合并混淆)
  • 提交(与更新混淆)
  • 更新(与提交和签出混淆)
  • 合并(是最难的.什么是合并?我必须将我的代码合并到SVN中吗?)

如果他们按错了按钮,他们担心SVN可能会杀死他们的工作(他们不称之为工作分支).

在将一些任意库依赖项添加到其java项目之后,他们将eclipse .project文件提交到存储库.其他同事从这些comitts得到编译错误,并发现很难解决这些问题.

一般来说,他们说:我想在没有SVN的情况下工作,我不喜欢它.这太复杂了.

有没有像"SVN for kids"这样的电子学习项目?我怎样才能让它们像版本控制一样?

svn version-control

12
推荐指数
4
解决办法
3198
查看次数

如何在不更改tomcat-users.xml的情况下为静态tomcat webapps提供基本的http身份验证?

我可以访问tomcat管理器并可以上传war文件.其中一场战争是静态网络项目(压缩的html +媒体文件,重命名为*.war).我想在此战争中添加一个Web-INF/web.xml文件,以使用基本的http auth来保护内容.

我知道如何通过添加全局用户和分配角色来实现这一点tomcat-users.xml,但我希望在我的war文件中定义所有用户名和密码.

  1. 这可以在不触及tomcat的情况下完成tomcat-users.xml吗?
  2. 如果是,我如何在我的静态项目中指定它web.xml

Thx,尤文

tomcat web.xml http-authentication

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

Java:将(long)Object转换为double的许多方法

Object obj知道其实是一个long.在某些数学代码中我需要它double.

直接将其加倍可以安全吗?

double x = (double)obj;
Run Code Online (Sandbox Code Playgroud)

或者我应该先把它转换成长,然后再加倍.

double x = (double)(long)obj;
Run Code Online (Sandbox Code Playgroud)

我还发现了另一个(不太可读)替代方案:

double x = new Long((long)obj).doubleValue();
Run Code Online (Sandbox Code Playgroud)

这样做有什么危险/含义?

解决方案摘要:

  • obj是一个Number而不是一个long.
  • Java 6需要显式转换,例如: double x = ((Number)obj).doubleValue()
  • Java 7具有工作魔法: double x = (long)obj

有关Java6/7问题的更多详细信息,请阅读有关TJ答案的讨论.

编辑:我做了一些快速测试.两种投射方式(显式/魔术)具有相同的性能.

java double casting numbers long-integer

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