[Terminal] vim文件的内容无法复制
Tofloor
poster avatar
neo🔥
deepin
2024-11-08 13:32
Author

dde-shell vim 文件的内容,只显示粘贴,无复制项,麻烦修复下

image.png

Reply Favorite View the author
All Replies
raspbian
deepin
2024-11-08 13:39
#1

可以换一个编辑器

Reply View the author
zccrs
deepin
2024-11-08 13:45
#2

建议你先用一个简单点的编辑器,比如 nano,或者直接用gui的

Reply View the author
sammy-621
deepin
2024-11-08 14:14
#3

vim 编辑器中,确认一下当前是命令模式还是编辑模式。

Reply View the author
观摩
deepin
2024-11-08 14:36
#4

禁用vim的可视模式(visual 模式)

也可以自定义一下 ~/.vimrc

比如

set number
syntax enable
syntax on
highlight LineNr ctermfg=220
highlight Comment ctermfg=gray
Reply View the author
aqjie
deepin
2024-11-08 14:55
#5

选中

ctrl + shift + c

ctrl + shift + v

Reply View the author
sweetyfish
deepin
2024-11-08 15:02
#6

:set mouse=

Reply View the author
乾豫恒益
deepin
2024-11-08 15:13
#7

用Vim,要先了解VIM的工作模式,尽量在i模式下编辑。。。

Reply View the author
随机数
deepin
2024-11-08 15:34
#8

没有做过特殊配置的话,默认选择即复制。

Reply View the author
chenyun
deepin
2024-11-08 20:14
#9

学习一下vim寄存器相关命令。

在vim中选中字符,然后依次按 "+y 即可把字符复制地方剪切板(寄存器)

Reply View the author
neo🔥
deepin
2024-11-08 23:29
#10
chenyun

学习一下vim寄存器相关命令。

在vim中选中字符,然后依次按 "+y 即可把字符复制地方剪切板(寄存器)

vim y 复制的内容,仅限用于vim里,如用 p 粘贴,无法粘贴到其它地方.

Reply View the author
neo🔥
deepin
2024-11-08 23:30
#11
随机数

没有做过特殊配置的话,默认选择即复制。

在vim外可以,vim 时无效。

Reply View the author
neo🔥
deepin
2024-11-08 23:33
#12
aqjie

选中

ctrl + shift + c

ctrl + shift + v

在vim外是可以,vim 时无效。

Reply View the author
neo🔥
deepin
2024-11-08 23:35
#13
sammy-621

vim 编辑器中,确认一下当前是命令模式还是编辑模式。

命令模式还是编辑模式,都不行,是把内容复制,粘贴到其它地方,非vim里面

Reply View the author
neo🔥
deepin
2024-11-08 23:37
#14
zccrs

建议你先用一个简单点的编辑器,比如 nano,或者直接用gui的

命令行操作,vim 首选,mac, ubuntu终端等等终端都支持复制内容,粘贴到其它任何地方,这儿却不行,是不是bug?

Reply View the author
neo🔥
deepin
2024-11-08 23:59
#15
观摩

禁用vim的可视模式(visual 模式)

也可以自定义一下 ~/.vimrc

比如

set number
syntax enable
syntax on
highlight LineNr ctermfg=220
highlight Comment ctermfg=gray

有帮助

Reply View the author
neo🔥
deepin
2024-11-09 00:07
#16
sweetyfish

:set mouse=

确实是这个问题,找到源头:

vim /usr/share/vim/vim91/defaults.vim 

dde-shell 可能是基于 xterm,需要按下 shift 才能让鼠标工作正常.

" In many terminal emulators the mouse works just fine.  By enabling it you
" can position the cursor, Visually select and scroll with the mouse.
" Only xterm can grab the mouse events when using the shift key, for other
" terminals use ":", select text and press Esc.
if has('mouse')
  if &term =~ 'xterm'
    set mouse=a
  else
    set mouse=nvi
  endif
endif

vim 时,选中代码,按住 shift 键,右击 复制 选项出来了

image.png

还有一个简单办法:创建一个空文件 .vimrc

 touch ~/.vimrc
Reply View the author
小小怪冲啊!
deepin
2024-11-09 00:40
#17

快捷键呢

Reply View the author
neo🔥
deepin
2024-11-09 09:30
#18
小小怪冲啊!

快捷键呢

参考5楼的快捷键,无法使用。

Reply View the author
chenyun
deepin
2024-11-14 15:39
#19
neo🔥

vim y 复制的内容,仅限用于vim里,如用 p 粘贴,无法粘贴到其它地方.

学习以下寄存器操作:

剪切板(寄存器)操作

VIM有多个剪切板(寄存器),无论是复制的,删除的文本都暂存在剪切板中。

  1. 显示剪切板::reg
    显示如右图所示。
    Type(类型):l表示行;c表示字符或词组。
    Name(名称):剪切板名称(必须以"开头,后面可以是一个英文字母或数字及一些符号。)
    Content(内容):剪切板中暂存的内容。
    image-20220917104304-zc4b0s7
  2. 特殊的剪切板:
    1. "":暂存最近复制或删除的文本,此剪切板中的内容储存或粘贴时直接操作
    2. "::暂存最近输入的命令行命令
    3. "/:暂存最近搜索的文本
    4. "-:暂存最近删除的单字符
    5. "+:与外部联系,暂存外部最近复制的文本,将VIM中的文本存入此剪切板可以在外部粘贴。
      1. 查看是否支持外部剪切板::ver
        显示如下图:clipborad前若是+则支持,若是-则不支持。
        image-20220917095558-c9a3e99
      2. 若不支持则安装vim-gtk或vim-gnome:
        sudo apt install vim-gtk3
        
    6. "*:与外部联系,暂存外部最近复制的文本,但将VIM中的文本存入此剪切板不能在外部粘贴。
  3. 使用剪切板
    1. 将文本存入特定名称的剪切板
      格式:名称+操作

      • 要将一行复制存入名称为"3的剪切板输入:"3yy
      • 要将某词组删除并存入名称为"x的剪切板:"xdw
      • 要将某字符删除并存入名称为"a的剪切板:"ax

      说明:若名称为大写英语字母则在相应小写字母为名称的剪切板尾部添加文本。且将""剪切板中的内容修改与相应剪切板一致
      操作理解:

      1. "ax:在"a剪切板中存入被删除字符。(若被删除字符是k,则无论"a剪切板中有无内容,其内容都修改为k。同时""剪切板中的内容修改为k)
      2. "Ax:在"a剪切板中内容尾部添加被删除字符。(若"a剪切板中已有内容k,此时删除字符是s,则"a剪切板中内容变为ks。同时""剪切板中的内容修改为ks
    2. 粘贴剪切板中的文本:

      1. 粘贴在光标的右侧(下面):名称+p
        要将名称为"2的剪切板中的文本粘贴在光标的右侧(下面):"2p
      2. 粘贴在光标的左侧(上面):名称+P
      3. 名称为""的剪切板中的文本直接用p或P粘贴。
Reply View the author