有没有办法以只读模式启动vim


19

我使用/ bin / view是因为它是查看文本文件的一种安全方法,并且一旦完成,不会有意外更改。

/ bin / view接缝缺少通常vim具有的功能。有没有办法在只读模式下启动vim,或在可视模式下启动/ bin / view。

我希望能够选择文本并将其粘贴,而不必使用鼠标。可视模式使操作变得如此容易。

我遇到的与CentOS / redhat Linux发行版有关的问题是-visual。

#vim --version | grep visual
+用户命令+垂直分割+虚拟编辑+视觉+视觉附加+ viminfo + vreplace 
#view --version | grep visual
-textobjects -title -toolbar -user_commands -vertsplit -virtualedit -visual

view是以只读模式vim运行的链接(通常是当今的象征)vim。您view似乎与vim执行“ vim”获得的链接有所不同。查看update-alternatives(8)手册页,以了解如何解决该问题。
garyjohn

Answers:


21

有关$ vim --helpVim的许多启动参数,请参见。

要以只读模式启动Vim,将是:

$ vim -R filename

编辑

$ view并且$ vim -R通过符号链接似乎是一样的。我不确定您从没有的运行$ vim -R中会获得什么功能$ view

在这里,在Ubuntu上,我可以直观地选择两者。


在centos中,vim -R是不同的。由于某种原因,视图是使用-visual编译的。
nelaaro'3

8

如果-R在启动时忘记了该选项vim,则可以使用:

:set ro

2

如果您的目标只是不覆盖原始文件,则可以从stdin功能中读取vim:

cat filename | vim -

1

正如@garyjohn所提到的,view通常在符号上链接到vivim。根据您使用的Linux发行版以及安装方式vivim安装方式的不同,它可能会有所不同。在我的RHEL 6系统的输出ls -l `which view`显示,/bin/view符号链接到vi

所以,如果你想要的功能,vim在只读模式,你要么需要别名viewvim或使用vim -R <filename>由@kev提供解决方案(假设你没有权限更改系统问题上的符号链接)。


这就是我所做的,并且效果很好(vimVim的任何版本/版本都在其中)。现在,我可以有一个只读窗口,用于查看的并排差异vim,另一个窗口也可以同时编辑实际文件。
本杰明·R
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.