モードの変更

Day.jsのAPI Referenceを翻訳した

JavaScript

日付操作の便利ライブラリの1つ、Day.js を最近よく使っているのだけど、リポジトリにある API Reference の日本語ドキュメントに気になる記述があった。

Substract の項を見るとDayjs#add と全く同じという部分がある。Add は日付を足す、Substract は日付を引く操作なのだけど、何が同じなのかが全然わからない。

そのことをツイートしたらリポジトリのオーナーからメンションがあった。ツイッターでエゴサしてて偉い。

プルリクエストをくれというので、まぁこの一文を取り除くだけだしなと思ってyes, i will!と返事をした。

が、見てみるとそんなに単純ではなかった。まず、現状(2019 年 4 月 14 日時点)のドキュメント自体の和訳が最後まで終わっていない。また、オリジナルの英語版と見出しやアウトラインが多少異なる。

そんなわけでオリジナルから翻訳を刷新する形になった。

直訳か意訳か

ライブラリの翻訳をしたのはyargs ぶりだった。その時もだし今回の Day.js でも対象となるテキストの1つ1つが短いのでなんとかなった。

訳文を作る上で難しいのは、直訳か意訳かというところだと思う。

JavaScript には型という概念があり、例えばtrue or false は「真偽値」と呼ばれるが、オリジナルではBooleanという名称である。これを「真偽値」と訳すのか「Boolean」とそのままにしたほうがいいのか、とても迷う。

さらに、文章のアウトラインによって暗黙的に紡がれた文脈を踏襲しているであろう原文を、直訳すべきか、多少の色をつけて意訳すべきかも迷う。

どちらも正解なのだとは思うが、意訳はややもすれば訳者自身が内にもつ文脈を含んでしまう。なのでやりすぎると意味がわからないし、かといってやりすぎているかを常に客観的に判断する術を持つのも難しい。

Day.js の API Reference の和訳では極力直訳するようにした上で、オリジナルで暗黙的すぎる部分には意訳を含めた。作者には自明のことでも、初めて使う人にとって(だけど JavaScript には相応に触れている人にとって)理解を深める助けになるような訳にするようにした。

僕の訳でも難解な場合、イシューを立てるなりプルリクエストを送るなりすると良い。

貢献と呼べるほどの大きなものではないけど、Day.js を使う日本語話者達に僕の翻訳が役立てれば幸いである。


記事を書いてる間にマージされた。やったぜ 🎉