1. arikawa-i3
Changes in body
Source | HTML | Preview
@@ -1,97 +1,98 @@
# YAMLをソートするには
以下のgemを使う。
[redealumni/i18n_yaml_sorter](https://github.com/redealumni/i18n_yaml_sorter)
- アルファベット順でソート
- キーが重複していても動く
+ - [キー重複の調べ方](https://qiita.com/arikawa-i3/items/63f71613ac805da6fcf9)
## 使い方
ここではテキトーな作業フォルダを作ってそこでソートしてみる。
### Install
bundlerを使う方法(単にgem installでも可)
```shell
$ bundle init
---
Gemfileに以下を追加
gem "i18n_yaml_sorter"
---
$ bundle install --path vendor/bundle
```
### 実行
bundle install出来たら、`sort_yaml`というコマンドが使えるようになっているので、
以下のコマンドでYAMLファイルをソートする。
```shell
$ bundle exec sort_yaml < #{入力YAMLファイル} > #{出力先ファイル}
example:
$ bundle exec sort_yaml < ja.yml > ja_out.yml
```
### 実行結果
**before**
```yaml
en-US:
# Note that our comments are important:
# Don't let your yaml sorter delete them!
bananas: |
Bananas are "nice":
- They are <b> sweet </b>.
this: not a key
That is why everyone like bananas!
grapes: We eat them.
apples: >
Apples are fine,
just don't eat your
iPods!
grapes: We dont' eat them.
```
**after**
```yaml
en-US:
# Note that our comments are important:
# Don't let your yaml sorter delete them!
apples: >
Apples are fine,
just don't eat your
iPods!
bananas: |
Bananas are "nice":
- They are <b> sweet </b>.
this: not a key
That is why everyone like bananas!
grapes: We dont' eat them.
grapes: We eat them.
```
- コメントはそのままの場所に残るっぽい。
- キーが重複していると、値でソートするっぽい。
## 環境情報
意図せずこのバージョンだった。これじゃないと動かないとかではない。
```shell
$ rbenv -v
rbenv 1.1.1
$ ruby -v
ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-darwin18]
$ bundle -v
Bundler version 1.17.1
```