R

How to copy yanked text to VI command prompt

Q:

I want to know if there is any way by which I can paste yanked text to the command window. For instance if I have yanked a word and I want to grep it in some location I can’t simply paste the word using ‘p’. However if I copy it to clipboard, Shift-Insert will paste the same thing. Is there any tweak available which would allow me to paste yanked text to the vim command prompt? I am using gvim on Windows.

yank可以认为是vi/vim中对copy的一个比较有其文化特色的用法,从技术上说,它大概是把相应的内容放进一个寄存器,然后才有了后面

这哥们儿的问题是它知道怎么yank——其实有很多种操作,一般离不了y这个键,但这里不是重点,重点是他要把yanked的东西放到另一个地方,他知道如果在文档里面的某个位置,可以用p(put,理解成paste也是可以),但是他想的是放在vim的命令行(就是打冒号之后,屏幕最底下那行)

我搜到这个问题,是因为自己又忘了,怎么全文替换时候不自己敲被替换的部分,而是从文章里面copy

A1:

try to use

  1. <ctrl+r>"

where “ stands for default register.

这是我目前看到的被采纳的答案,很简短但是解释不知道是不是不太准确,因为”(或者应该是叫””)似乎在vim的文档里面叫做未命名寄存器(unamed register)如图image.png
哦,果然应该看官方文档,这样我就知道我的场景其实在ctrl+r之后,应该敲/就把搜索的东西直接粘上去了,除此之外,九类寄存器,nbnb

A1 comments

这里提到插入模式也可以用这个方式来paste,因为这时候比如敲p就是字母p么,很好用,但是也许…看习惯了,我觉得切换一下模式出来也不失为一个更顺畅的操作

比较感兴趣的是ctrl+r是啥(已经补作业),因为他是在插入模式和命令模式中进入寄存器操作的触发组合键,可以用:help i_CTRL_R 或:help c_CTRL_R来看相关文档

然后就是 * 这个寄存器,我目前用的putty,似乎不得要领

A2

“ Will paste default buffer. Alternately, you can use q: to open a buffer for the next command. try :help q:

这个很直接,指出ctrl-r然后敲 “就是那个东西,不过default buffer从技术角度讲可能还是不准确

另外说了个不相干的就是q:,可以认为是vim command mode的history吧,下面comment捧臭脚的就不贴了,这个答案有趣的地方还是…让人去看官方文档

从这个文档可知,在命令行模式的时候,可以通过CTRL-F来打开这个历史命令窗口,乍一看又是很罗嗦,但其实仔细一想脊背发凉,就是为了减少不必要的点击的设计吧,其他的如q/ q?什么的,还没试,太烧脑…

再往后看,比如Ex都出来了,离一开始的问题已经渐行渐远…就此打住

T

GNU Screen 打开的窗口ls颜色配置不起作用?

结论?

  • GNU Screen 作为终端和putty打开的没有进入GNU Screen session中的终端?还不一样
  • 好奇怪的说法
  • 主要是不知道怎么描述
  • 另外这个是不是可以算是个tip
  • 估计可以算是个楔子

    缘起

    一直以来小困扰的一个事情,打开screen和没有打开screen的时候ls -l 颜色不一样…恩,截图

  • 没打开screen的image.png

  • 打开screen的image.png
  • 其实配了一个所谓desert风格的,如图中那个dir_colors文件,我当然是不懂里面写的具体是什么了,copy的别人的,就是觉得比缺省的对比度要强烈一点

    分析

  • 推测是打开screen时候,.dir_colors没起作用

  • 而且在打开screen之后,再执行eval dircolors -b是能让zip文件变成红色的
    • 所以推测正常screen和dircolors一般使用应该是也没什么冲突
  • 对比了一下所谓缺省的配置,与我自己在用的这个.dir_colors的不同

    • 缺省的用dircolors -p 来打印

      根据对比推测

      如图image.pngimage.png
      上面的是我自己在用的.dir_colors文件的,会发现比下面那个少很多,事实上底下那个还有好多一屏都显示不完
      所以,尝试把人家缺省的TERM打头这段都copy进去自己那里面,再新打开screen窗口,发现目录是带下划线的亮蓝色了

      后续

      估计后面还是得好好改改,之前用的这个desert设置的项目比缺省的文件类型的差了好多,如图image.png

      S

      vim/vi的技巧不形成肌肉反射就相当于没用

      背景

  • 一个vim的ctrl-r,至少骗了两期的review,但相关的link的触及则很有感慨

    触动点

  • 探到了所谓的vi的ex模式

    • vi的命令模式很多都是来自于ex这个程式
    • 目前本质上ex和vi就是一个东西image.png
  • 由此才进一步了解下ex以及vi的ex模式

    • vi里面敲Q就进入ex模式,在ex模式敲visual就回到vi

      一系列接触之后

  • 又有点回归接触前

  • 虽然有章可循,但是依然记忆量偏大
  • 所以如果不形成肌肉反射,每次还要用脑,那就失去了这两个命令的优势了