達而録

中国学を志す学生達の備忘録。毎週火曜日更新。

Visual Studio Codeでの旧字体・新字体変換

 Visual Studio Codeを使って論文を書くに当たって、私の分野の場合には、「旧字体新字体」の変換ができると非常に有難い。pythonで開発された「kyujipy」をVS codeに組み込むことで、これを実現することができる。

 pythonとkyujipyをセットアップすれば準備完了。以下のコードを実行すると、あるテキストファイルの文字列を旧漢字に変換し、別のファイルとして出力することができる。

from kyujipy import KyujitaiConverter
converter = KyujitaiConverter()
in_file = "(入力ファイルへのパス)"
out_file = "(出力ファイルへのパス)"
try:
    file = open(in_file, encoding='utf-8')
    text = file.read()
    text_kyu = converter.shinjitai_to_kyujitai(text)
    file2 = open(out_file, 'w', encoding='utf-8')
    file2.write(text_kyu)
except Exception as e:
    print(e)
finally:
    file.close()
    file2.close()

 なお、このコードは、pythonを学んで一日目の私が書いたへたくそなものなので、多分もっといい方法があると思う。あと、Markdown形式のファイルの「引用文」(「>」で始まる行)だけに対して旧漢字変換を掛けて、他の文はそのままにする、という処理も多分可能だと思うんだけど、まだ勉強中で書き方がよく分からない。残念。 

 「旧字体新字体」の変換サービスやソフトは色々あるが、この方法のよいところは、どの字を変換するか自分でカスタマイズできるところにある。kyujipyのdataファイルの中のコードを自分で書き換えると、どの字を変換するか調整することができる。また、熟語の組み合わせ次第で変換する、みたいな処理も可能だ。
(棋客)