V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ety001
V2EX  ›  问与答

各位深度使用 vim 的同学,平时对于需要大段代码来回复制粘贴是如何处理?

  •  
  •   ety001 · 2016-11-08 22:57:54 +08:00 · 3645 次点击
    这是一个创建于 2969 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我之前也就是用 vim 写 shell 或者编写配置文件。

    后来配置了些插件,希望能用 vim 来写 php 和 html ,

    但是问题来了,那就是有时候在写 html 的时候,

    发现需要从别的地方 ( 比如网页上 ) 复制大段代码到 vim 里

    是个很纠结的事情。可能还是对于 vim 的缓冲区使用不习惯吧。

    不知道各位深度使用 vim 的同学如何处理这个问题的。

    另外,对于在写 php 的时候,还想要执行 shell 命令 ( 比如 git ),

    大家是另外开个终端的窗口吗?

    7 条回复    2016-11-09 10:04:02 +08:00
    choury
        1
    choury  
       2016-11-08 22:59:18 +08:00   ❤️ 1
    :!ls
    来执行外部命令
    qq529633582
        2
    qq529633582  
       2016-11-08 23:02:33 +08:00   ❤️ 1
    [ESC]set paste
    i
    粘贴
    [ESC]set nopaste
    debiann
        3
    debiann  
       2016-11-08 23:05:44 +08:00
    terminal 外: ctrl+c, ctrl+v
    terminal 内: ctrl+shift+c, ctrl+shift+v

    用 2L 的命令可以解决从 vim 外向内粘贴时的格式问题
    BOYPT
        4
    BOYPT  
       2016-11-08 23:11:00 +08:00
    为啥有问题?原始命令就"+p ,可以按需要绑定特定快捷键。
    introom
        5
    introom  
       2016-11-08 23:18:40 +08:00 via Android   ❤️ 2
    第一个问题,你是在用 vim-nox,还是 gvim? 粘贴这种事情,通常在终端下比较恶心,因为你可能得切换 paste 设置,换句话说, set paste! 但是呢, xterm 以及类似的,比如 iterm 2, 可以在粘贴的时候,自动在粘贴的东西两侧 prepend 和 append 一个特殊标记,表示粘贴开始和结束。你可以在 vim 里进行相应的设置,识别这个序列, vim 就不会进行额外的代码缩进,也不会以用户输入的方式一个一个字符处理。手机码字, vim 的配置就不发了。



    对于第二个问题,如果你在 gvim, 那么就用!cmd.
    如果在终端,那就乖乖 ctr-z, 记得同时在你 shell 里绑定 c-z 到 fg,平常我不告诉别人这个事半功倍的小技巧。
    或者你就用 tmux,分割窗口,在跑命令,也可以用 vimux.


    对了,我是 Emacs 用户,欢迎使用!你会发现前所未有的天空。我平常不坑人,现在更是。
    ety001
        6
    ety001  
    OP
       2016-11-08 23:23:00 +08:00
    @introom 的确有考虑转坑到 Emacs ,之前的同事曾极力推荐。
    taofuan
        7
    taofuan  
       2016-11-09 10:04:02 +08:00
    @ety001 我小手指头短,没法同时按那么多按钮..........
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5773 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 03:00 · PVG 11:00 · LAX 19:00 · JFK 22:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.