这在编程中用于何处 - >(')

时间:2012-08-16 00:35:47

标签: vim

我想在我的vimrc中将单引号映射到双引号,即' -> "

除了在C中声明字符外,在编程中使用'在哪里?

我应该映射吗? 我将反向映射它们以访问它们。

3 个答案:

答案 0 :(得分:4)

单引号在编程中使用遍布

  • 在Bourne shell(及其衍生词,以及csh和衍生词,以及Perl和其他语言)中,它用于禁止字符串扩展,因此您可以这样做:

    $ echo '$VARIABLE'
    $VARIABLE
    
  • C中,单引号用于表示字符常量,而不是字符串。所以你可以这样做:

    char c = 'c';
    

    但这是一个错误:

    char c = "c";
    
  • 当然,如果你用一种叫做“英语”的语言进行编程,单引号用于表示像占有欲这样的重要事物(“snihalani的问题似乎有些奇怪”)以及收缩(“我能”相信任何人都想这样做。“)。

这些只是几个例子。当然还有更多。

答案 1 :(得分:3)

我几乎只使用单引号。当你在字符串中使用双引号时它们很有用:

print 'Foo said, "Bar"'

比逃避它们更容易:

print "Foo said, \"Bar\""

此外,您将无法输入具有所有权的普通句子:

# Attaches foo's signal to a slot
self.foo.bar.connect(self.baz)
例如,当使用单引号引用字符串时,PHP不会执行变量替换:

$var = 1;
echo('I will literally print $var');

答案 2 :(得分:1)

在许多语言中(例如,C,C ++,Ada),'分隔字符文字,"分隔字符串文字。

在其他(例如Perl,Bourne shell)中,'"可用于字符串文字,但具有不同的语义;当字符串包含"个字符时,'很方便,反之亦然,而"会将对变量的引用扩展为变量的名称,而'会阻止此变量

Ada使用'来界定属性的名称。

所有语言中,您在评论和字符串文字中需要' - 例如,如果您想在评论中写“您需要'和字符串文字“。

他们是不同的角色。删除你输入其中一个的能力不是一个好主意。

您可以考虑将'映射到" ,反之亦然,如果这样可以让您更轻松地打字。但是一旦你养成使用映射的习惯,使用别人的设置或者将文本输入vim以外的东西可能会很尴尬。