⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 headgen.pl

📁 为源码添加头部信息
💻 PL
字号:
#! d:\p\dev\perl\bin\perl -w
use strict;
use POSIX qw(strftime);

my $delfile = "del";
my $scriptName = "HeadGenerator";

# cmtb表示注释开始,cmte表示注释结束,cmtl将添加到每行行首
# 现在为C语言设置的,想要使之适用于其它语言,如vb,只需要修改这三项就可以了
# 数组pts是头部信息的种类,想要添加信息,如emal,直接在相应的行上创建这一项就行了
# 要处理的文件可以用headgen.pl filename来指写,也可以运行脚本后输入

my $cmtb = '/* ';
my $cmte = ' */';
my $cmtd = '------------------------------------------------------------------------';
my $cmtl = ' * ';
my $titl = '               ****ROBOCON 2009 | BUPT TEAM*******';
my @pts = (
    'FileName   : ',
    'Version    : ',
    'Biref      : ',
    'Code by    : ',
    'Date       : ',
    'Note       : ',
    '             ',
    '             '
    );

my $fn;
my $tfn;
my $iscr = 0;
my $smod;
($fn, $smod) = @ARGV;
if(!defined($fn)){
    $fn = <STDIN>;
    chomp $fn;
}
print "$scriptName Openning...... $fn\n";
if(-e $fn){
    print "File Exists\n";
    $tfn = $fn.'.tmp';
    $iscr = 1;
    rename $fn, $tfn;
    open FH, '>'.$fn || die "I can not open target file";
}
else{
    $iscr = 0;
    open FH, '>'.$fn || die "I can not open target file";
}
print "$scriptName Opened!        $fn\n";

print FH $cmtb.$titl."\n";
print FH $cmtl.$cmtd."\n";
for my $pt(@pts){
    my $input;
    print $pt;
    $input = <STDIN>;
    chomp $input;
    if($input =~ m/^\s*$/ ){
	if($pt =~ m/FileName/){
	    $input = $fn;
	    $input =~ s(\\)(/)g;
	    $input =~ s(^.*/)()g;
	}
	elsif($pt =~ m/Date/){
	    $input = localtime;
	}
	elsif($pt =~ m/Ver/){
	    $input = "1.0";
	}
	elsif($pt =~ m/Code/){
	    $input = "Leaf";
	}
	else{
	    $input = "  ";
	}
	print $pt.$input." (Default)\n";
	print FH $cmtl.$pt.$input."\n";
    }
    else{
	print FH $cmtl.$pt.$input."\n";
    }
}
print FH $cmtl.$cmtd."\n";
print FH $cmte."\n";


if($iscr){
    print FH "\n\n";
    open  FTH, $tfn || die "I cant open tmp file";
    while(<FTH>){
        print FH;
    }
    close FTH;
    system($delfile, $tfn);
}
close FH;

print "$scriptName - $fn ...................OK!\n";

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -