今まで安定版のテーマを使っていましたが、開発版で良いことに今更気が
つきました。開発版の方がテーマの数が増えています。

以下、今回やったことです。
修正したテーマは tar で固めて、ここ に置きました。

1. http://www.tdiary.org/ から、tdiary-theme-2.3.2.tar.gz をダウンロードした。

2. 以下を行うシェルスクリプトを作成し、実行した。

  • 全ての *.css の先頭に以下の 1 行を追加。参考情報→[2009-05-24-1]
@import "/prettify/prettify.css";
  • 古いディレクトリの clfix.css を新しいディレクトリにコピーし、
    コピーしたディレクトリにある「テーマ名.css」に以下の 1 行を追加。参考情報→[2009-02-21-1]
@import "clfix.css";
  • chmod -R go-w .

3. いくつかの clfix.css には、オリジナルの「テーマ名.css」を修正したことをメモしてある。その通りに修正した。

作成したシェルスクリプトは以下になります。

#!/bin/sh

OLD_THEMEDIR=$HOME/tmp/theme.old
NEW_THEMEDIR=$HOME/tmp/tdiary-theme-2.3.2

if [ ! -d "$OLD_THEMEDIR" ]; then
	echo "$OLD_THEMEDIR isnot exist."
	exit 1
fi

if [ ! -d "$NEW_THEMEDIR" ]; then
	echo "$NEW_THEMEDIR isnot exist."
	exit 1
fi

cd $NEW_THEMEDIR

# 全てのディレクトリの *.css に 1 行追加
cat <<EOF
*** phase1 ***
The following strings are added to all *.css.
@import "/prettify/prettify.css";
EOF
for CSS_FILE in `find . -type f -name "*.css"`; do
	printf "."
	mv $CSS_FILE ${CSS_FILE}.bak
	cat <<-EOF > $CSS_FILE
	@import "/prettify/prettify.css";
	EOF
	cat ${CSS_FILE}.bak >> $CSS_FILE
	rm ${CSS_FILE}.bak
done
printf "done.\n\n"

# 古いディレクトリの clfix.css を新しいディレクトリにコピーし、
# テーマ名.css に 1 行追加する。
cat <<EOF
*** phase2 ***
Old "clfix.css" files is copied onto a new directory.
And, The following strings are added to some *.css.
@import "clfix.css";

EOF
for CLFIXCSS in `find $OLD_THEMEDIR -type f -name "clfix.css"`; do
	COPY_DST_DIR=`dirname $CLFIXCSS | sed -e "s@$OLD_THEMEDIR@$NEW_THEMEDIR@"`
	CSS_NAME=`basename $COPY_DST_DIR`
	CSS_FILE=${CSS_NAME}/${CSS_NAME}.css

	# clfix.css のコピー
	cp $CLFIXCSS $COPY_DST_DIR

	cat <<- EOF
	copied. ${COPY_DST_DIR}/clfix.css
	EOF

	# *.css に 1 行追加
	mv $CSS_FILE ${CSS_FILE}.bak
	cat <<- EOF > $CSS_FILE
	@import "clfix.css";
	EOF
	cat ${CSS_FILE}.bak >> $CSS_FILE
	rm ${CSS_FILE}.bak

	cat <<- EOF
	added to the $CSS_FILE.

	EOF
done

chmod -R go-w .

### End of file