独自形式で配布されている棋譜データをtsshogiのRecord型に変換するためのライブラリです.
- 詰将棋パラダイス
GitHub Package Registryを利用しているので.npmrc
またはnpm login
が必要になります
# .npmrc
registry=https://npm.pkg.github.com/tsshogi
インストールは以下のコマンドをご利用ください
# npm
npm install @tsshogi/kanna
# yarn
yarn add @tsshogi/kanna
# pnpm
pnpm install @tsshogi/kanna
# bun
bun add @tsshogi/kanna
import { importTCSV } from '@tsshogi/kanna'
import { Record } from 'tsshogi'
const text: string = "" // 詰将棋パラダイスのテキストデータ
const record: Record | Error = importTCSV(text)
if (record instanceof Error) return
exportKIF(record) // KIF形式の文字列
この結果、以下のようなレスポンスが得られます
表題:チョコマカ銀
作者:須藤大輔
発表誌:詰将棋パラダイス
発表年月:2010/07/21
レベル:6
ポイント:20
ヒント:チョコマカ銀
手数:11
作品名:詰将棋パラダイス
作品番号:99
後手の持駒:歩十八 香四 桂二 銀二 金三 角 飛二
9 8 7 6 5 4 3 2 1
+---------------------------+
| ・ ・ ・ ・ ・ ・ ・ ・ ・|一
| ・ ・ ・ ・ ・ ・ ・ ・ ・|二
| ・ ・ ・ ・ ・ ・ ・ ・ ・|三
| ・ ・ ・ ・ ・ ・ 馬 銀v玉|四
| ・ ・ ・ ・ ・ ・v金 ・v銀|五
| ・ ・ ・ ・ ・ ・ 桂 ・ ・|六
| ・ ・ ・ ・ ・ ・ ・ ・ ・|七
| ・ ・ ・ ・ ・ ・ ・ ・ ・|八
| ・ ・ ・ ・ ・ ・ ・ ・ ・|九
+---------------------------+
先手の持駒:桂
先手番
手数----指手---------消費時間--
指し手も出力されますが、ネタバレ防止のためにここでは記載していません
複数の詰み手順がある場合、それら全てを出力します。
KIF形式以外の出力をした場合、カスタムメタデータは失われてしまいます。
- 盤面情報が正しくないデータに対してパースが失敗してしまう
- 問題番号58など