小编Tan*_*ett的帖子

vim说"没有鼠标支持",但只有当我运行git commit时

我喜欢用vim使用鼠标,所以我的鼠标支持已启用.vimrc.这在任何地方都可以正常工作,但每当我git commit在特定服务器(Appa)上运行时,我都会收到一条错误消息:

[tswett@appa git]$ git commit
Error detected while processing /home/tswett/.vimrc:
line    1:
E538: No mouse support: mouse=a
Press ENTER or type command to continue
Aborting commit due to empty commit message.
[tswett@appa git]$
Run Code Online (Sandbox Code Playgroud)

我最终得到了一个没有鼠标支持且没有语法高亮的vim会话.

如果我git commit在不同的服务器或本地计算机上运行,​​我确实有鼠标支持和语法突出显示.同样,每当我使用vim编辑Appa上的任何其他东西时,我都有鼠标支持和语法高亮显示.如果我删除set mouse=a从行.vimrc随后运行git commit在APPA,我不再得到一个错误信息,但我也没有得到语法高亮,无论是.

我怎样才能让vim,git commit和Appa彼此玩得很好?

Appa的操作系统是RHEL 6.3(Santiago); Appa的vim版本是7.2; 和Appa的git是版本1.7.1.这是我的.vimrc(所有机器都相同):https://github.com/tswett/setup/blob/c84c8908a04a1d925d90da3da4f2fc83bf56172b/.vimrc

git vim

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

什么是PowerShell"搜索"动词?

MSDN页面" Windows PowerShell命令的批准动词 "说:

查找动词用来寻找的对象.该搜索动词用于创建一个容器到资源的引用.

"创建对容器中资源的引用"是什么意思?这是否意味着为现有资源定义新名称?这是否意味着获取有关资源的一些信息并将该信息转换为参考?或者它意味着什么呢?

有关如何使用"搜索"动词的示例是什么?这个动作与搜索有什么关系?

powershell

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

在C#中编写PowerShell模块时,如何存储模块状态?

我正在用C#编写一个连接到数据库的PowerShell模块.该模块有一个Get-MyDatabaseRecordcmdlet,可用于查询数据库.如果PSCredential变量中有对象,则$MyCredentials可以像这样调用cmdlet:

PS C:\> Get-MyDatabaseRecord -Credential $MyCredentials -Id 3


MyRecordId    : 3
MyRecordValue : test_value
Run Code Online (Sandbox Code Playgroud)

问题是,Credential每次调用时必须指定参数Get-MyDatabaseRecord是繁琐且低效的.如果你只需要调用一个cmdlet连接到数据库,然后再调用另一个cmdlet来获取记录,那就更好了:

PS C:\> Connect-MyDatabase -Credential $MyCredentials
PS C:\> Get-MyDatabaseRecord -Id 3


MyRecordId    : 3
MyRecordValue : test_value
Run Code Online (Sandbox Code Playgroud)

为了实现这一点,Connect-MyDatabasecmdlet必须将数据库连接对象存储在某处,以便Get-MyDatabaseRecordcmdlet可以获取该对象.我该怎么做?

我想到的想法

使用静态变量

我可以在某处定义一个静态变量来包含数据库连接:

static class ModuleState
{
    internal static IDbConnection CurrentConnection { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

但是,全局可变状态通常是一个坏主意.这可能会以某种方式引起问题,还是这是一个很好的解决方案?

(问题的一个例子是,如果多个PowerShell会话以某种方式共享我的程序集的同一个实例.那么所有会话都会无意中共享一个CurrentConnection属性.但我不知道这是否真的可行.)

使用PowerShell模块会话状态

MSDN页面" Windows PowerShell会话状态 "讨论称为会话状态的内容.该页面说"会话状态数据"包含"会话状态变量信息",但它没有详细说明这些信息是什么或如何访问它.

该网页还表示,SessionState可用于访问会话状态数据.此类包含一个名为PSVariabletype 的属性PSVariableIntrinsics …

c# powershell

12
推荐指数
2
解决办法
1240
查看次数

告诉vim将逗号添加到数字,例如将31415926更改为31,415,926

我有一个非常大的数字(长几百个数字),我想使用vim以适当的方式为数字添加逗号,即在每组三位数后,从右向左移动.我怎样才能有效地做到这一点?

vim

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

Python 中的随机噪声函数

我正在用 Python 编写一个游戏,其中的环境是随机生成的。目前,游戏的“保存”功能通过写出玩家探索过的环境的所有部分来工作。结果是保存文件比需要的大\xe2\x80\x94为什么要在可以再次生成数据时将随机数据写入磁盘?

\n\n

我可以使用的是随机噪声函数:一个返回随机数的函数,并且每当使用相同的 值调用时总是返回noise相同的数字。现在,对于游戏环境中的每个点,我可以使用 生成随机数,然后将其丢弃,然后生成相同的数字,而不是使用 生成随机数并将结果存储在 中。noise(x)x(x,y)random()env[(x,y)]noise((x,y))

\n

python random

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

在Scala中,如何在没有语法错误的情况下调用名为`+`的对象上的方法?

我有一个名为+with的方法调用的对象B.我试着像这样调用这个方法:

object + {
    def B() = Console.println("'Sup, world?")
}

object Main extends App {
    +.B()
}
Run Code Online (Sandbox Code Playgroud)

(Ideone链接:http://ideone.com/0OyKw2 )

但这给了我一个语法错误:

Main.scala:6: error: illegal start of simple expression
    +.B()
         ^
Run Code Online (Sandbox Code Playgroud)

我试过几个调用此方法的不同方式,比如+ .B,(+).B,`+`.B,(`+`).B,和( + ).B.我还没有发现任何可行的东西.

我可以以某种方式调用此方法,或者我最好只为对象使用不同的名称?

syntax scala syntax-error

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

标签 统计

powershell ×2

vim ×2

c# ×1

git ×1

python ×1

random ×1

scala ×1

syntax ×1

syntax-error ×1