[ttssh2-commit] [10039] ファイル変換スクリプトを修正

Back to archive index
scmno****@osdn***** scmno****@osdn*****
2022年 7月 6日 (水) 00:18:12 JST


Revision: 10039
          https://osdn.net/projects/ttssh2/scm/svn/commits/10039
Author:   zmatsuo
Date:     2022-07-06 00:18:12 +0900 (Wed, 06 Jul 2022)
Log Message:
-----------
ファイル変換スクリプトを修正

- 出力ファイルの時刻を入力ファイルと同じに変更しないオプションを追加
  - `-no_utime`オプション
  - オプションを付けると、出力ファイルの時刻は出力した時刻になる
- カレントディレクトリが 2sjis.pl のあるフォルダではなくても動作するようにした

Modified Paths:
--------------
    trunk/doc/2sjis.pl

-------------- next part --------------
Modified: trunk/doc/2sjis.pl
===================================================================
--- trunk/doc/2sjis.pl	2022-07-04 23:33:29 UTC (rev 10038)
+++ trunk/doc/2sjis.pl	2022-07-05 15:18:12 UTC (rev 10039)
@@ -6,6 +6,7 @@
 use Encode;
 use utf8;
 use Getopt::Long qw(:config posix_default no_ignore_case gnu_compat);
+use File::Basename;
 
 my $PERL = $^X;
 
@@ -12,7 +13,8 @@
 sub MarkdownToHTML {
 	my $buf = $_[0];
 
-	my $cmd = "$PERL Markdown_1.0.1/Markdown.pl";
+	my $script_dir = dirname(__FILE__);
+	my $cmd = "$PERL $script_dir/Markdown_1.0.1/Markdown.pl";
 #	my $cmd = 'cat';
 
 	my $out_file = "MD_TO_HTML_$$" . "_md";
@@ -50,7 +52,8 @@
 my $coding = "shiftjis";
 my $lf = "crlf";
 my $type = "text";
-my $zlib_special;
+my $zlib_special = 0;
+my $no_utime = 0;
 
 $result = GetOptions('in|i=s'       => \$in,
                      'out|o=s'      => \$out,
@@ -57,7 +60,8 @@
                      'coding|c=s'   => \$coding,
                      'lf|l=s'       => \$lf,
                      'type|t=s'     => \$type,
-                     'zlib_special' => \$zlib_special);
+                     'zlib_special' => \$zlib_special,
+                     'no_utime'     => \$no_utime);
 
 if (!(defined($in) && defined($out))) {
 	die "Usage: $0 --in file --out file [ --coding input_encoding ] [ --lf line_format ] [ --type type ]\n";
@@ -98,7 +102,11 @@
 print $OUT $buf;
 close $OUT;
 
-if ($in ne "-") {
+# 出力ファイルの時刻を入力ファイルと同一に変更する
+#  - makechm.bat では chm のコンパイルを最小にするために
+#    出力ファイルの時刻を変更する
+#  - cmakeビルドでは、出力ファイルのほうが新しい状態にする
+if (($in ne "-") && ($no_utime == 0)) {
 	my(@filestat) = stat $in;
 	utime $filestat[8], $filestat[9], $out;
 }


ttssh2-commit メーリングリストの案内
Back to archive index