読者です 読者をやめる 読者になる 読者になる

SourceChord

C#とXAML好きなプログラマの備忘録。最近はWPF系の話題が中心です。

typings1.0を使ってみた

Node.js TypeScript

もうずいぶんと前ですが、
TypeScriptの型定義ファイルの取得は、tsdが非推奨になり今後はtypingsというライブラリが推奨されるようになりました。

そして、このtypingsの1.0がでました。
今までなんだかんだで、tsdを使い続けてましたが、重い腰を上げて、typingsを使うように移行してみようと思います。

コマンド体系が、npmと似た感じなので、tsdよりも馴染みやすいコマンドとなってます。
ただし、typingsでは型定義ファイルの提供元が複数リポジトリから構成されています。
自分が取得しようとしているライブラリの種類によって、インストールのコマンドを使い分ける必要があるので要注意。

参考サイト

とりあえず、↓のドキュメント読めばだいたい何とかなりそう。

typings/docs at master · typings/typings · GitHub

あと、typings 1.0からは、コマンドなどが少し変わってるので注意が必要です。

1.0からの変更点などは、以下の記事が参考になります。
Typings 1.0.x 変更点 - Qiita
typings を 0.x から 1.x にアップデートしたときにハマったこと - Qiita

基本的な使い方

インストールは以下のコマンドで。

npm install typings -g

この手のツールは、頻繁に使うからグローバルにインストールしておいた方が便利な気がします。

typings.jsonの生成

npmやtsdなんかと同じように、typingsでも依存関係を記述したjsonファイルに記録しておくことができるようになってます。

typings.jsonの生成は、以下のコマンドでOK。

typings init
tsdからのアップグレード

tsd.jsonがある階層で以下のコマンドを打つと、tsdで使用していた型定義ファイルへの依存関係を引き継いだtypings.jsonを生成できます。

typings init --upgrade

型定義の検索

typingsでは、以下のような感じで、型定義ファイルの検索ができます。

typings search [パッケージ名]
厳密な検索

以下のように--nameオプションを伴って検索をすると、ライブラリ名の部分一致ではなく、完全に名前が一致したものだけが表示されます。

typings search --name [パッケージ名]

で、こんな風に同じパッケージ名でも複数のものが出てきたりします。
f:id:minami_SC:20160522111935p:plain

typingsでは、同じライブラリでも複数の型定義ファイルのソースがあるため、このように複数のソースの情報が出てくるものもあります。

型定義のインストール/アンインストール

例えば、Definitely Typedのリポジトリから、nodeの型定義ファイルを取得するのは、↓のコマンド。

typings install dt~node --global --save

dt~などのような部分が、型定義ファイルの取得元の指定です。
dt~では、今までtsdで使ってたDefinitely Typedのリポジトリにある型定義ファイルを取得します。

アンインストールは↓で。

typings uninstall node --global  --save

typings.jsonの記述も消したい場合は、インストール時と同じように、--save, --save-devなどの指定をします。

アンインストールするときはdt~のような、取得元を指定するような記述は不要です。
また--globalでインストールしたものは、アンインストール時も同じように--global指定が必要なので注意。

バージョン指定でインストール

こんな風にライブラリのバージョン指定をして、型定義ファイルの取得をすることができます。
こうすると、node.js 0.12系の型定義ファイルを取得できます。

typings install dt~node@0.12.0 --global

これは便利!!