12
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

fixpackでpackage.jsonの各項目を並び替える

Last updated at Posted at 2018-01-08

Node.js でコードを書くときに、必ず目にする package.json
その、package.json に関する知見である。

package.json の並び順

package.json の並び順であるが、私は「package.json | npm Documentation」に書かれている順番で記述することが多い。(デファクト・スタンダードか公式に沿っておくのが無難である)

しかし、毎回手動で並び替えるのは手間である。
そこで、fixpack を利用してフォーマットすると良い。

fixpack で並び替える

インストール

グローバルにインストールする。

$ npm i -g fixpack

fixpack を使う

package.json が存在するディレクトリで、以下を実行する。
デフォルトでは、name description version author の順で並び替えて、残りをアルファベット順で並び替える。

$ fixpack

並び順を設定ファイルで指定する

自分で決めた並び順にしたい場合は、設定ファイルで上書きすることができる。
$HOME ディレクトリに .fixpackrc を作成して、JSON形式で書いていく。

筆者の .fixpackrc

参考までに、自分の .fixpackrc を貼っておく。

.fixpackrc
{
  "sortToTop": [
    "name",
    "version",
    "description",
    "keywords",
    "homepage",
    "bugs",
    "license",
    "author",
    "files",
    "main",
    "bin",
    "man",
    "directories",
    "repository",
    "scripts",
    "config",
    "dependencies",
    "devDependencies",
    "peerDependencies",
    "bundledDependencies",
    "optionalDependencies",
    "engines",
    "os",
    "cpu",
    "private",
    "publishConfig"
  ],
  "required": [
    "name",
    "version"
  ],
  "warn": [
    "description",
    "keywords",
    "homepage",
    "bugs",
    "license",
    "author",
    "main",
    "repository"
  ],
  "sortedSubItems": [
    "files",
    "directories",
    "dependencies",
    "devDependencies",
    "peerDependencies",
    "bundledDependencies",
    "optionalDependencies"
  ]
}

sortToTop が並び順の指定である。
並び順以外にも、無いとエラーを吐く項目の指定や、無いと警告を出す項目の指定などを行っている。
他にも幾つかの設定項目があるので、README.md を見ると良い。

まとめ

package.json の各項目の並び替えには fixpack を利用すると良い。

12
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?