我想创建一个shell脚本,它将创建一个预先格式化的文件,并使用文件名作为参数在vim中打开它

Mar*_*ler 2 vim bash

我想创建一个shell脚本,它将创建一个预先格式化的文件并在vim中打开它.

具体来说,我想创建一个名为的脚本newperl,允许我输入newperl [filename]并生成一个预先格式化的文件(使用cat,echo,>等)

#!/usr/bin/perl
use 5.014;
Run Code Online (Sandbox Code Playgroud)

等等

我知道如何进行所有格式化等.我的问题是将我输入的[filename] newperl作为参数传递给脚本的其余部分.我怎么做?

che*_*ner 5

无需编写shell脚本.Vim已经有一个钩子,允许您在打开新文件时读取预先存在的文件.

首先,将perl模板保存在方便的地方.我保持一个目录~/.vim/new_file_templates,含skeleton.pl,skeleton.py等等.

接下来,将其添加到您的.vimrc:

autocmd BufNewFile *.pl 0r ~/.vim/new_file_templates/skeleton.pl
Run Code Online (Sandbox Code Playgroud)

这表示当您打开vim名称与'*.pl'匹配的新文件时,请读skeleton.pl入新文件第一行的内容.

然后只需输入

vim newperl.pl
Run Code Online (Sandbox Code Playgroud)

将使用'skeleton.pl'作为模板打开一个名为'newperl.pl'的新文件.