wsl2 debianにgo開発環境を構築する
今回は
以前マニアックblogに使っていたbloggerの記事をhugoへ引っ越しするために、なにかいいツールがないかと探していました。xmlをmarkdownに変換してくれるプログラムがありました。
go言語で書かれており、sourceで配布です。バイナリーはありません。
ということでまずは、go開発環境の構築です。
準備
goのページを眺めていると各種プラットホーム用のバイナリーが配布されています。
この記事を書いている時点での最新版は、go1.17.2です。
linux 64bit版もあります。wsl2のdebianは、aptでインストールできるかなと試してみると、あっという間にインストール完了です。
1
2
3
| kaji@DESKTOP-DBHI6DO:~$ go version
go version go1.7.4 linux/amd64
kaji@DESKTOP-DBHI6DO:~$
|
ちょっと古いですが、まぁ問題ないでしょう。
変換プログラムを作成する
aptで問題なく構築できたgo開発環境を使って、main.goをビルドします。
変換プログラムをgit cloneしてbuildします。
1
2
3
| kaji@DESKTOP-DBHI6DO:~/$ git clone https://github.com/natefinch/blogimport.git
kaji@DESKTOP-DBHI6DO:~/$ cd blogimport
kaji@DESKTOP-DBHI6DO:~/$ go build -o blogimport main.go
|
これでblogimport
というバイナリーが作成されます。使い方は、xmlファイルを読ませて、変換後のmarkdown fileを吐き出すdirを指定すると、指定したdirに記事毎のmarkdownファイルが作成されるようです。
1
2
3
4
5
6
| kaji@DESKTOP-DBHI6DO:~/blogimport$ ./blogimport
Usage: ./blogimport [options] <xmlfile> <targetdir>
options:
-extra string
additional metadata to set in frontmatter
kaji@DESKTOP-DBHI6DO:~/blogimport$
|
xmlをmdに変換する
bloggerから記事をback upのために吐き出すとxmlができるので、これをmarkdownに変換します。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| kaji@DESKTOP-DBHI6DO:~$ ./blogimport/blogimport blog-03-24-2021.xml ./blogger_0324
rote 106 published posts to disk.
Wrote 8 drafts to disk.
kaji@DESKTOP-DBHI6DO:~$
kaji@DESKTOP-DBHI6DO:~$ ls -l blogger_0324/
合計 644
-rw-r--r-- 1 kaji kaji 3408 10月 10 13:15 2年ぶりのラズパイ...1日目.md
-rw-r--r-- 1 kaji kaji 8039 10月 10 13:15 2年ぶりのラズパイ...2日目.md
-rw-r--r-- 1 kaji kaji 3999 10月 10 13:15 2年ぶりのラズパイ...3日目.md
-rw-r--r-- 1 kaji kaji 3499 10月 10 13:15 2年ぶりのラズパイ...4日目.md
-rw-r--r-- 1 kaji kaji 1976 10月 10 13:15 2年目のラズパイ...10日目esp-wroom-2...pythonlcd.md
-rw-r--r-- 1 kaji kaji 3311 10月 10 13:15 2年目のラズパイ...11日目...radikoでラジオ.md
-rw-r--r-- 1 kaji kaji 4011 10月 10 13:15 2年目のラズパイ...12日目...esp32始動.md
-rw-r--r-- 1 kaji kaji 2853 10月 10 13:15 2年目のラズパイ...13日目...esp32でlチカ.md
-rw-r--r-- 1 kaji kaji 6085 10月 10 13:15 2年目のラズパイ...14日目...esp32oled.md
-rw-r--r-- 1 kaji kaji 5533 10月 10 13:15 2年目のラズパイ...16日目...9軸センサー.md
|
無事markdownファイルに切り出すことができました。
markdownとhtmlが混在しているので、あとは手動で微修正しながら、hugo環境に移行したいと思います。画像は入れ直しです。記事を整理しながら移行していきたいと思います。
まとめ
go言語で書かれたxml2md変換プログラムを使って、以前のblogger記事をmarkdownファイルに変換できました。
参考リンク