粘贴在vim(tmux)时在行的开头插入新行

时间:2016-06-09 01:32:20

标签: vim formatting command-prompt tmux

我用Tmux打开我的终端。当我在Tmux中复制并粘贴时,在行的开头附加了新行。例如,如果我复制:

Line1 to be copied.
Line2 to be copied.
Line3 to be copied. 

如果我粘贴上面的文字。它会成为

Line1 to be copied.
    Line2 to be copied.
         Line3 to be copied.

我在mac中使用它。我按下“alt”键选择要复制的文本,然后粘贴它。关于如何在开始时避开空格的任何建议?

注意:有关环境的更多详细信息。 我有一个自定义的tmux.conf文件。以下是我在tmux conf中使用的一些设置。

# more settings to make copy-mode more vim-like
unbind [
bind Escape copy-mode
unbind p
bind p paste-buffer
bind -t vi-copy 'v' begin-selection
bind -t vi-copy 'y' copy-selection
bind -t vi-copy 'z' copy-pipe "reattach-to-user-namespace pbcopy"
# Buffers to/from Mac clipboard, yay tmux book from pragprog
bind C-c run "tmux save-buffer - | reattach-to-user-namespace pbcopy"
bind C-v run "tmux set-buffer $(reattach-to-user-namespace pbpaste); tmux paste-buffer")

2 个答案:

答案 0 :(得分:3)

问题似乎已经被问过了。

Turning off auto indent when pasting text into vim

总结: 尝试输入:

    :set paste
在粘贴剪贴板然后将其返回

之前

    :set nopaste

之后,为了在输入换行符时恢复正常格式化。

答案 1 :(得分:2)

要自动执行此操作,您可以使用vim-bracketed-paste