使用vim的妙招

使用F1执行文件

Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器。

我们Linux运维经常在Linux中使用到Vim编辑器,当使用Vim写shell脚本或者python脚本的时候,想要运行测试时候怎么办?Esc➡:➡wq,到shell终端执行脚本。

上述情况很复杂,有木有!!

下面咱设置vim配置文件,让Vim编辑器在不退出就能执行脚本:

创建并编辑当前用户的vim配置文件

#vim ~/.vimrc

添加如下代码:

"""""""""""""""""""""""""""""""""""""""""""""""""""
"Programming makes the world better
"""""""""""""""""""""""""""""""""""""""""""""""""""
map <F1> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
if &filetype == 'c'
exec '!g++ % -o %<'
exec '!time ./%<'
elseif &filetype == 'cpp'
exec '!g++ % -o %<'
exec '!time ./%<'
elseif &filetype == 'python'
exec '!time python %'
elseif &filetype == 'sh'
:!time bash %
endif
endfunc

再尝试一下编写脚本

Vim进阶(一):使用F1执行文件

ESC退出输入模式,直接按F1

Vim进阶(一):使用F1执行文件

至此,我们就可以不退出Vim编辑器,直接执行文件了!!

同理:shell脚本也可以哦!!

自动添加脚本头

当做运维的时候,难免会写一些脚本。有没有感到Vim编辑文件的时候,一定要写脚本头,很复杂很繁琐,每写一个脚本就要写一次。

Vim进阶(二):自动添加脚本头

太麻烦了。有木有!!(可能是我太懒了吧)

下面咱定义一下,当写脚本的时候,自动添加脚本头,咱直接去写脚本代码就好了。

编辑当前用户vim配置文件

#vim ~/.vimrc

或者定义全局也行

#vim /etc/vimrc

在最下方添加如下代码:

function HappyPython()
call setline(1, "#!/usr/bin/env python")
call append(1, "#-*- coding:utf8 -*-")
normal G
normal o
endf
autocmd bufnewfile *.py call HappyPython()
function HappyShell()
call setline(1, "#!/bin/bash")
normal G
normal o
endf
autocmd bufnewfile *.sh call HappyShell()

 

保存退出后,我们试试开始使用vim编辑.py文件和.sh文件

就会发现py文件会自动添加了python脚本头!

sh文件自动添加了shell脚本头!

vim编辑python脚本时Tab补全

Pydiction 可以是我们使用Tab键自动补全Python代码在Vim,是一款非常不错的插件。

安装git软件包,这里就简单的yum安装了

下载Pydiction

mkdir ~/.vim
mkidr ~/.vim/bundle
cd ~/.vim/bundle
#这里我们也可以自己下载好上传到linux系统中
git clone https://github.com/rkulla/pydiction.git

 

配置pydiction

#- UNIX/LINUX/OSX: Put python_pydiction.vim in ~/.vim/after/ftplugin/
#- WINDOWS: Put python_pydiction.vim in C:\vim\vimfiles\ftplugin\
# Assuming you installed Vim to C:\vim\
cp -r ~/.vim/bundle/pydiction/after/ ~/.vim

 

 

编辑vim配置文件,并配置如下代码

# cat .vimrc
filetype plugin on
let g:pydiction_location = '/root/.vim/bundle/pydiction/complete-dict'     
let g:pydiction_menu_height = 3

 

此处有坑请注意!!

代码第二行,使用find命令查找一下自己的complete-dict文件路径,一定要写对哦!

最终效果:

 

 

转:

https://www.cnblogs.com/rampb/p/6183076.html

https://birdteam.net/124482

posted @ 2019-07-19 22:48  abm  阅读(220)  评论(0编辑  收藏  举报