小编Oli*_*ons的帖子

Vim最有效的捷径是什么?

我听过很多关于Vim的消息,包括优点和缺点.看起来你应该(作为开发人员)使用Vim比使用任何其他编辑器更快.我正在使用Vim来做一些基本的东西,而且我最好用Vim的效率低 10倍.

当你谈论速度时你应该关心的两件事(你可能不太关心它们,但你应该这么做)是:

  1. 使用左手和右手交替使用键盘是最快捷的方式.
  2. 永远不要触摸鼠标是第二种尽可能快的方法.移动手,抓住鼠标,移动鼠标并将其带回键盘需要很长时间(而且您经常需要查看键盘才能确保将手正确地移到正确的位置)

这里有两个例子,说明为什么我对Vim的效率低得多.

复制/剪切和粘贴.我一直这样做.使用所有当代编辑器,您可以Shift 用左手按下,然后用右手移动光标以选择文本.然后Ctrl+ C副本,你移动光标和Ctrl+ V贴.

有了Vim,它太可怕了:

  • yy 复制一行(你几乎不想要整行!)
  • [number xx]yyxx行复制到缓冲区中.但你永远不知道你是否选择了你想要的东西.我经常做的[number xx]dd,然后u撤消!

另一个例子?搜索和替换.

  • PSPad中:Ctrl+ f然后键入您要搜索的内容,然后按Enter.
  • 在Vim:中/,然后键入要搜索的内容,然后如果\每个特殊字符前放置了一些特殊字符,则按Enter.

与Vim的一切都是这样的:似乎我不知道如何以正确的方式处理它.

NB:我已经阅读过Vim 备忘 单了 :)

我的问题是:

你使用Vim的方式是什么让你比现代编辑更有效率?

vi vim

1127
推荐指数
43
解决办法
76万
查看次数

为什么有时用{}替换set()?

在PyCharm中,当我写道:

return set([(sy + ady, sx + adx)])
Run Code Online (Sandbox Code Playgroud)

它说"函数调用可以用set literal替换",所以它替换为:

return {(sy + ady, sx + adx)}
Run Code Online (Sandbox Code Playgroud)

这是为什么?set()Python中的A 与字典不一样{}

如果它想要优化它,为什么这更有效?

python set

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

如何在任何操作系统上启用mod_rewrite?

如果我理解正确,我需要放入一些东西httpd.config来启用mod_rewrite.如果这是真的,我需要什么就摆在httpd.confapache.conf?请具体操作系统.

php mod-rewrite

46
推荐指数
3
解决办法
19万
查看次数

为什么float.Epsilon而不是零?

在下面的代码中,为什么与float.Epsilon进行比较而不是0?

// Coroutine to move elements
protected IEnumerator SmoothMovement (Vector3 end)
{
    // Distance computation
    float sqrRemainingDistance = (transform.position - end).sqrMagnitude;

    while(sqrRemainingDistance > float.Epsilon)
    {
        Vector3 newPostion = Vector3.MoveTowards(
            rb2D.position, end, inverseMoveTime * Time.deltaTime
        );
        rb2D.MovePosition (newPostion);
        sqrRemainingDistance = (transform.position - end).sqrMagnitude;
        yield return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

c# floating-accuracy unity-game-engine

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

vim:如何搜索/替换特殊字符?

从维基百科复制粘贴到vim之后,我得到了这个:

  1 A
  2 
  3 [+] Métier agricole<200e> – 44 P • 2 C
  4 [×] Métier de l'ameublement<200e> – 10 P
  5 [×] Métier de l'animation<200e> – 5 P
  6 [+] Métier en rapport avec l'art<200e> – 11 P • 4 C
  7 [×] Métier en rapport avec l'automobile<200e> – 10 P
  8 [×] Métier de l'aéronautique<200e> – 15 P
Run Code Online (Sandbox Code Playgroud)

问题是,这<200e>只是一个字符.

我想知道如何将它放入搜索/替换(通过/:).

vim replace

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

在vim中映射功能键

我想F2用以下条目映射我的nerdtree:

map <F2> :NERDTreeToggle<CR>
Run Code Online (Sandbox Code Playgroud)

但即使在此之前,并且在保存vimrc之后,每当我按下时F2,它只会切换光标所在字母的大小写.后来发现任何功能键都能做到.F5切换5个字符的大小写等.这是因为其他一些插件吗?我目前使用c.vim,snippetsEmu,surround,nerdtree和minibufexpl

我的vimrc中的任何功能键都没有键映射.

vim keymapping

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

Raw_Input()未定义

我是七年级的程序员,所以我可能在这个程序中遗漏了很多东西,但是对于我的编码俱乐部,我的导师让我们猜猜数字游戏.我对这个课程的知识非常有限,因为我只上过四节课.无论如何,当我在Python IDLE 3.5中运行这个程序时,它就是这样说的:

Traceback (most recent call last):
File "C:\Users\morrris\AppData\Local\Programs\Python\Python35-32\guess_that_number.py", line 7, in <module>
name= raw_input()
NameError: name 'raw_input' is not defined
Run Code Online (Sandbox Code Playgroud)

我尝试更改代码,但似乎不喜欢raw_input().

python undefined raw-input

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

Php:$ var和&$ var之间有什么区别?

有什么区别

foreach ($my_array as $my_value) {
}
Run Code Online (Sandbox Code Playgroud)

和:

foreach ($my_array as &$my_value) {
}
Run Code Online (Sandbox Code Playgroud)

我可以请你给我两个真实世界的例子,说明何时使用另一个以及何时使用另一个?

php var

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

Php:DateTime:如何设置仅秒(不是几小时都不是分钟)

我有一个代码,我必须"舍入"到最低分钟.

  • 16:05:00 应该成为 16:05:00
  • 16:05:01 应该成为 16:05:00
  • 16:05:29 应该成为 16:05:00
  • 16:05:30 应该成为 16:05:00
  • 16:05:31 应该成为 16:05:00
  • 16:05:59 应该成为 16:05:00

我想使用DateTime对象.没有诸如以下的功能:

  • setHours()
  • setMinutes()
  • setSeconds()

这是我的代码的开头:

$my_date=DateTime::createFromFormat(
    'Y-m-d H:i:s',
    $bd_date
);  
$my_date->setTimezone(self::$TimeZone);
Run Code Online (Sandbox Code Playgroud)

现在我想将"秒"部分设置为零.

你有一种优雅的方式,只按照我想要的方式设置分钟吗?

Nota:我不是在寻找像"除以getTime()60,转换为整数,然后乘以60"的解决方案.我正在寻找一种通用的解决方案来设置秒数,而不仅仅是"0".

php datetime

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

event.preventDefault()总是在函数结束之前

在我能找到的几乎所有示例/模板脚本中,我event.preventDefault();在函数的末尾看到,如下所示:

$('.navbar-nav li a').bind('click', function(event) {
    var $anchor = $(this);
    $('html, body').stop().animate({
        scrollTop: $($anchor.attr('href')).offset().top
    }, 1500, 'easeInOutExpo');
    event.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)

从我的观点来看,这个想法是"立即停止默认行为然后做我们必须做的事情",如下所示:

$('.navbar-nav li a').bind('click', function(event) {
    event.preventDefault();

    var $anchor = $(this);
    $('html, body').stop().animate({
        scrollTop: $($anchor.attr('href')).offset().top
    }, 1500, 'easeInOutExpo');
});
Run Code Online (Sandbox Code Playgroud)

那我错过了什么?

jquery preventdefault

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