如何使用GVIM编辑远程分布式文件系统hdfs

Vim编辑远程文件 - 为程序员服务
Vim编辑远程文件
Vi/Vim作为我最值得炫耀的编辑器(没有之一),与它的对手Emacs相比,经常被提到的一个优点就是:这个世界上几乎所有的*nix服务器,都会自带Vi/Vim。这个优点带来的方便之处在于,只要会用Vi/Vim,你就可以在任何一台*nix服务器上使用神乎奇技的手法来编辑文件,而不用额外安装软件(Emacs去哭吧)。这个优点几乎在我所有的服务器操作中都用到过,但在今天,似乎略有不便。
我有一台VPS,这基本上是众所周知的事情了。但中美网速的差别与两国国民生活水平一样大,导致我娴熟的指头在服务器上用Vim直接修改文件时,遇到了十分强烈停顿感。这深深地挫伤了我文思如泉涌的灵感。便想把远程文件下载到本地,修改后再上传,就像Emacs一直以来无奈的做法一样。当然这事必须不能手工去做,不然不仅不能给Vimer长脸,还会被认为是其它阵营派来给Vim抹黑的。
本文的主角是
,它可以让Vim直接编辑网络上的文件(当然是netrw已经把该文件下载到临时文件里了),并且还支持保存到网络上(如果有写权限的话)。不知道从什么开始,它便成为Vim默认自带的插件了。在大多数现代GNU/Linux发行版里,安装Vim时都会顺便把它给装上了。
netrw使用起来也很简单。在终端里可以直接:
$ vim ftp://user@some_url/path/filename
这样便可以编辑一个远程文件,其它操作,便与编辑本地文件无异,该’:w’或’:q’时都悉听尊便。
但并不是所有的远程文件都能这么方便的访问,像我今天修改的那个文件,只有通过ssh才能访问到,并且ssh还是有key认证的。但是呢,对于我而言丝毫不影响,因为我还可以这样:
$ vim scp://t@tigerlee.me/path/target_file
也许你这样做,并不会成功,当然不成功的原因是多样的,最主要原因可能是你不能顺利地(不用输入密码,没有任何交互的提示)使用
$ scp://t@tigerlee.me/path/target_file .
来将target_file拷贝到本地。如果能做到顺利,那么你也会成功的。要实现顺利地使用scp,无外乎就是去掉一些不必要的认证过程,使用不带密码的key是最方便的了。详细使用参见netrw的文档:
,有Vim的哥们呢,就直接使用’:h netrw-ssh-hack’来看好了。
当远程文件拥有一个冗长的路径时,直接输入全部路径可能比较麻烦,因为它又不能使用Tab补全。这时可以先输入:
$ vim scp://t@tigerlee.me/
然后再在稍后出现的路径列表里慢慢选了。
netrw共支持三种使用模式:远程编辑,远程浏览(包括浏览目录内容),远程写入。不同的模式,支持的协议也不同。这是理所当然了,不然对于HTTP地址的文件,怎么写入啊?以下是不同模式支持的协议:
:e dav://machine[:port]/path
uses cadaver
:e fetch://[user@]machine/path
uses fetch
:e ftp://[user@]machine[[:#]port]/path
autodetects &.netrc&
:e http://[user@]machine/path
:e rcp://[user@]machine/path
:e rsync://[user@]machine[:port]/path
uses rsync
:e scp://[user@]machine[[:#]port]/path
:e sftp://[user@]machine/path
:Nread "machine:path"
:Nread "machine path"
with &.netrc&
:Nread "machine id password path"
:Nread "dav://machine[:port]/path"
uses cadaver
:Nread "fetch://[user@]machine/path"
uses fetch
:Nread "ftp://[user@]machine[[:#]port]/path"
autodetects &.netrc&
:Nread "http://[user@]machine/path"
:Nread "rcp://[user@]machine/path"
:Nread "rsync://[user@]machine[:port]/path"
uses rsync
:Nread "scp://[user@]machine[[:#]port]/path"
:Nread "sftp://[user@]machine/path"
:Nwrite "machine:path"
:Nwrite "machine path"
with &.netrc&
:Nwrite "machine id password path"
:Nwrite "dav://machine[:port]/path"
uses cadaver
:Nwrite "ftp://[user@]machine[[:#]port]/path"
autodetects &.netrc&
:Nwrite "rcp://[user@]machine/path"
:Nwrite "rsync://[user@]machine[:port]/path"
uses rsync
:Nwrite "scp://[user@]machine[[:#]port]/path"
:Nwrite "sftp://[user@]machine/path"
http: not supported!
小总结一下:
网速慢,文件小的情况下,可以使用此法编辑远程文件。
网速快,文件大的情况下,那就远程编辑文件吧。
网速慢,文件大或网速快,文件小的情况下,你应该明白怎样做吧?
记录生活, 分享收获 | record life, share harvests
原文地址:, 感谢原作者分享。
您可能感兴趣的代码Windows使用gVim 配置_vimrc文件,用vim打开此文件为只读,不让修改
<a data-traceid="question_detail_above_text_l&&
Windows使用gVim 配置_vimrc文件,用vim打开此文件为只读,不让修改,该怎么办?
用 :w! 保存
Windows 7 使用管理员模式,或者不要把gvim装在系统盘下面
--- 共有 2 条评论 ---
更改权限解决了问题
没有装到系统盘,w!同样无法保存
晕 我搜到这里来了。。。 换了windows下我也正好遇到这个问题
:W!是不行的 先把_vimrc copy出来 比如放到桌面,修改好后再黏贴回去
我自己的解决办法:右键单击_vimrc 在下拉菜单中选择&属性&,再单击&安全&,再单击组合用户中的“Everyone”,在单击&编辑&,然后再在“Everyone”权限中把&完全控制&选上确定后便可[转载]vim&编辑器里&打开远程文件
:e ftp://192.168.10.76/abc.txt
保存(如果不存在则创建):
:w ftp://192.168.10.76/abc.txt
:r ftp://192.168.10.76/abc.txt
以上操作第一次打开时需要输入用户名和密码,
以后就不用了,vim 会记住的。
总之,大多数针对文件的操作都可以直接用来操作 ftp 文件,
vim 通过解析文件名中的 URL 标记来区别。
其实打开文件还有一个比较方便的办法,
那就是当你编辑的文件中包含有类似于 ftp://192.168.10.76/abc.txt 这样的文件 URL 时,
你直接把光标挪到上面,再用 gf 命令就可以打开了。
需要注意的一点是,
vim 本身并不携带 ftp 客户端,vim 只是调用操作系统提供的 ftp 客户端并捕获它的输出。不过大多数操作系统都是有 ftp
客户端的,所以这一点不用担心。
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。vim编辑远程文件
vim scp://root@hostname.my/../../xxx.txt
没有更多推荐了,gvim文本编辑器配置及相关插件安装图文教程
& 发布时间: 16:21:42 & 作者:佚名 &
Vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
Vim是从vi发展出来的一个。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
gVim文本编辑器下载地址:1.安装gvim7.2。运行gvim72.exe,选择完全安装(Full),我的安装目录是默认的C:\Program Files\Vim。安装完成后,包括了文件夹vim72和文件夹vimfiles,以及脚本_vimrc。
2.安装中文帮助手册。运行vimcdoc-1.7.0-setup.exe,它会自动找到gvim的安装位置。安装完毕后重新打开gvim,:help&时帮助手册已经是中文的了。进行到这一步时,我的gvim菜单处的中文出现了乱码。在网上寻找解决方案,将C:\Program Files\Vim\vim72下名为&lang&的文件夹删去,使菜单语言变为英语。
3.语法高亮。首先,编辑_vimrc文件加入以下内容:set nu!colorscheme desertsyntax enablesyntax on这些设置使得gvim可以显示行号,并使用了desert配色方案,而且打开了语法高亮功能(用不同颜色显示注释、关键字、字符串等)。我们还可以让函数名也高亮起来,在C:\Program Files\Vim\vim72\syntax下找到&c.vim&和&cpp.vim,分别添加以下内容:syn match cFunction &\&[a-zA-Z_][a-zA-Z_0-9]*\&[^()]*)(&me=e-2syn match cFunction &\&[a-zA-Z_][a-zA-Z_0-9]*\&\s*(&me=e-1hi cFunction gui=NONE guifg=#B5A1FF重新打开gvim,效果如下:
4.程序中跳转。将ec57w32.zip解压,在解压后文件夹中找到ctags.exe,将其复制到C:\ProgramFiles\Vim\vim72下,并编辑_vimrc文件,添加以下内容:set tags=set autochdir打开cmd命令行,切换到你要查看的源代码的根目录处,运行ctags -R将会在此目录处生成一个tags文件。用gvim打开一个代码文件,将光标放到某一函数名上,如下图的UpdateViewByPosNo(),按下&ctrl+]&,光标会自动跳转到定义处。
按下&ctrl+T&会跳回到原来的位置。变量、结构体、宏等等,都可以这样做。当你的源文件有更新时,只能重新运行ctags -R命令,来更新tags文件。
5.窗口管理。将taglist_45.zip解压,解压后包含一个doc文件夹和一个plugin文件夹,将其中内容分别复制到C:\Program Files\Vim\vim72下的doc及plugin中。在_vimrc文件中加入以下内容:let Tlist_Show_One_File=1let Tlist_Exit_OnlyWindow=1用gvim打开代码文件(已生成过tags文件),:Tlist,TagList窗口即出现在左侧。用相同的方法将winmanager.zip解压和拷贝,在_vimrc文件中加入以下内容:let g:winManagerWindowLayout='FileExplorer|TagList'nmap wm :WMToggle用gvim打开代码文件,normal状态下输入命令&wm&,窗口如下
其中左上是netrw窗口(浏览文件),左下是TagList窗口,再次输入&wm&时这两个窗口会关闭。
6.多文件编辑。将minibufexpl.vim复制到C:\Program Files\Vim\vim72\plugin,在_vimrc中添加:let g:miniBufExplMapCTabSwitchBufs=1let g:miniBufExplMapWindowsNavVim=1let g:miniBufExplMapWindowNavArrows=1当用gvim打开两个或两个以上的文件时,会自动弹出MiniBufExplorer窗口,如下图
ctrl+Tab,切换到前一个buffer,并在当前窗口打开文件;ctrl+shift+Tab,切换到后一个buffer,并在当前窗口打开文件;ctrl+箭头键,可以切换到上下左右窗口中;ctrl+h,j,k,l,切换到上下左右的窗口中。
7.快速切换头文件/源文件。将a.vim复制到C:\Program Files\Vim\vim72\plugin,在_vimrc中添加:nnoremap :A用gvim打开源码文件后,按F12即可以在c/h文件中切换,也可以通过输入:A实现。
8.在工程中快速查找。将grep.vim复制到C:\Program Files\Vim\vim72\plugin,在_vimrc中添加:nnoremap :Grep用gvim打开源码文件,并将光标定位到要查找的内容上,按下F3,确定要查找的内容和搜索范围,gvim会在弹出的QuickFix窗口中列出所有符合条件的搜索结果。如下图
确定查找内容时,支持正则表达式。
9.高亮的书签。将visualmark.vim复制到C:\Program Files\Vim\vim72\plugin。用gvim打开源码文件,将光标定位在需要添加书签的地方,按下ctrl+F2,即添加了书签。
使用F2在书签之间正向切换,shift+F2反向切换。
大家感兴趣的内容
12345678910
最近更新的内容}

我要回帖

更多关于 如何使用文本编辑器编辑文件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信