分页: 1 / 1

Vim 如何让新建的文件保存后自动地有执行权限

发表于 : 2010-12-28 12:05
wz520
每次建个 shell 或 python 脚本都要手动 chmod 755 xxx,能不能让它自动完成?仅限新文件保存时。

也许是个菜鸟问题,请各位不吝赐教,谢谢~ :em01

Re: Vim 如何让新建的文件保存后自动地有执行权限

发表于 : 2010-12-28 13:22
lainme
配置autocmd?

代码: 全选

autocmd BufWritePre *.sh,*.py 
    \let curfile=expand("%:p") |
    \if ! filereadable(curfile) |
    \   exec "w \n silent !chmod +x ".curfile." &\n redraw!"|
    \endif
参考:
http://vimcdoc.sourceforge.net/doc/auto ... utocmd.txt
http://vimcdoc.sourceforge.net/doc/usr_ ... usr_41.txt

Re: Vim 如何让新建的文件保存后自动地有执行权限

发表于 : 2010-12-28 14:01
lilydjwg
[vim]
" 自动加执行权限[[[2
function Lilydjwg_chmodx()
if strpart(getline(1), 0, 2) == '#!'
let f = expand("%:p")
if stridx(getfperm(f), 'x') != 2
call system("chmod +x ".shellescape(f))
" 重新载入,FIXME 不会重新检测文件类型
edit!
syntax on
endif
endif
endfunction
autocmd BufWritePost * call Lilydjwg_chmodx()
[/vim]

你们怎么就是不先看看我的vimrc呢?

Re: Vim 如何让新建的文件保存后自动地有执行权限

发表于 : 2010-12-29 18:03
wz520
参照 lilydjwg 的脚本改了一下达到目的了,感谢2位的解答。看来要好好地看一下autocmd :em01