npm/docsで学ぶ英文法②
クリスマスですね。
私はケーキを焼いて十分に楽しみました。ブッシュドノエルใ(^▽^ )ว ใ(^▽^ )ว ♬♬ pic.twitter.com/PqoFWseUIC
— よこな / Ayana (@ihcomega) December 24, 2016
さて、頑張ったブッシュドノエルをアピール出来たのでもう十分なんですが、
ihcomega.hatenadiary.com
↑こちらの続きいってみよー!
みっつめ👀
This object will hold attributes named after the packages you'd like to use, that point to a semver expression that specifies what versions of that project are compatible with your project.
補足
- semver
npm用語で、Semantic versioningを指すようです。
詳細はSemantic versioning and npmを読めば分かりそう(まだ読んでいない)。
ポイント
- 非制限用法の関係代名詞
that
が使われている・・・?
学校では「非制限用法にthatは使えないよ(一応例外もあるけどね)」って習いますよね。
でも前半に出てくる, that
がそれにしか見えない。合っているのでしょうか。
色々調べたけど確証は持てず、かといってそれ以外にいい感じなthat
の用法も
見つかりませんでした。
ひとまずthat
は関係代名詞であるとして話を進めます。
先行詞は、pointという動詞が原型、つまり三単現のsがないことから
object
ではなく、attributes
またはpackages
です。
ではどちらか。attributes
だと思います。
なぜか。文法的に先行詞を確定させる要素がなく、意味で判断してしまいました。
point to
が、JSONの名前と値を結びつけるような表現だと思ったため、
semver形式の値と対になるものはattribute
の方だろうと…。
こちらは訳のところでも補足します。
文のつくり
複雑な箇所は、細かいところだと上に挙げたのくらいな気がするので、
全体の構造を見てみます。
SとVがたくさん〜
訳
このオブジェクトは、あなたが使いたいパッケージから名前をとった属性を持ち、その属性は、 そのプロジェクトのどのバージョンがあなたのプロジェクトと互換性を持つかを特定するsemver表現を指します。
分かりやすく直してみます。
このオブジェクトは、使いたいパッケージから名前をとった属性を持ち、その値はsemver形式を取ります。 semver形式は、依存するプロジェクトのどのバージョンが自分のプロジェクトと互換性を持つか表すものです。
こんな感じでしょうか…。
正攻法ではないけど、
説明の対象であるpackage.json
のdependencies
とdevDependencies
を
例で見てしまうと分かりやすい気がします。
{ "name": "my_package", "version": "1.0.0", "dependencies": { "my_dep": "^1.0.0" }, "devDependencies" : { "my_test_framework": "^3.1.0" } }
^1.0.0
とか^3.0.0
っていうのがsemverで、
my_dep
、my_test_framework
っていうのが各semverを指す名前。
さっきは、この名前と値の関係から、that
の先行詞を判断しちゃったわけです!
気になること
you'd like to use
普通、それなりにかっちりした書き言葉ではyou'd
みたいな省略形を使わないはず
・・・例えば大学のレポートやテストでは省略形やめましょうって言われてきたし、
会社のドキュメントとかでも避けるようにしています
が、npmのドキュメントでは普通に出てきますねー。
あまり細かいことを考えずに書かれているだけかもしれませんが、
ちょっと気になりました。
おしまいです。今回も、正解がよく分からないままw
英文を読む時、構造 -> 意味という順番で捉えないと危険だっていうのは
前回書いた通りで揺るがないのですが、
上のように意味から判断しないといけない場面ももちろんあります。
まずは文法的なジャッジが出来るよう文法をちゃんと身につけて、
その上で、意味的に考えなくてはならないケースに備えて
語彙を増やすとか言葉のニュアンスを知るとかが必要になってきますね。
大変!!!!!
Merry Christmas!!!!!