|
| 1 | +homebrewでreadline7 |
| 2 | +homebrew readline:7.0.5 formula macOS |
| 3 | + |
| 4 | +[](https://twitter.com/share?text=%40tipmona%20tip%20%40Cj-bc%2039) [](https://monya-wallet.github.io/a/?address=MBdCkYyfTsCxtm1wZ1XyKWNLFLYj8zMK3V&scheme=monacoin) [](https://twitter.com/share?text=%40tipkotone%20tip%20%40Cj-bc%20{1:39}) |
| 5 | + |
| 6 | +# readlineとは |
| 7 | + |
| 8 | +readlineは、行編集用のライブラリでbashやvimなど、様々なところで使われています。 |
| 9 | + |
| 10 | +# 現在homebrewで入るreadlineはv8.0.0 |
| 11 | + |
| 12 | +現在、`homebrew`を使うとインストールできるのはバージョン`8.0.0`です。 |
| 13 | +しかしながら、 **まだversion7系統を使っているプログラムがいくつかある**のです。 |
| 14 | + |
| 15 | +例: |
| 16 | + - awk |
| 17 | + - tig |
| 18 | + |
| 19 | +これらを使うためには、**readlineは7系を使わないといけません** |
| 20 | + |
| 21 | +# readlineの7系を使う |
| 22 | + |
| 23 | +実はhomebrewではバージョン切り替えが可能なので、readlineの7系(最新だと7.0.5)を使うことができます。 |
| 24 | + |
| 25 | +## パターン1: 昔のCellarが残っている |
| 26 | + |
| 27 | +*昔readlineがまだ7系だった頃にreadlineをインストール*していて、*brew cleanupをしていなければ*以下のようにしてバージョンを切り替えることができます。 |
| 28 | + |
| 29 | +```sh |
| 30 | +# brew switch <formula名> <バージョン> |
| 31 | +$ brew switch readline 7.0.5 |
| 32 | +``` |
| 33 | + |
| 34 | +`brew info readline`をした時、以下のように使用可能なバージョンが表示されます(自分は後述の方法で7.0.5入れたので7.0.5が入っています) |
| 35 | + |
| 36 | +```sh |
| 37 | +readline: stable 8.0.0 (bottled) [keg-only] |
| 38 | +Library for command-line editing |
| 39 | +https://tiswww.case.edu/php/chet/readline/rltop.html |
| 40 | +/usr/local/Cellar/readline/7.0.5 (46 files, 1.5MB) # <-- この行 |
| 41 | + Built from source on 2019-02-02 at 18:34:08 |
| 42 | +/usr/local/Cellar/readline/8.0.0 (48 files, 1.5MB) |
| 43 | + Poured from bottle on 2019-01-13 at 23:06:35 |
| 44 | +``` |
| 45 | + |
| 46 | +## パターン2: homebrew cleanupしてしまった |
| 47 | + |
| 48 | +`Homebrew cleanup`をしてしまい、Cellarが残っていない場合はどうしようもありません...~~諦めまし~~ |
| 49 | +なんてわけはもちろんないです。 |
| 50 | +**readlineのformulaを古いのを使えばいい**んです。 |
| 51 | +ということで、古い(7.0.5用の)formulaを本体から抜き出してきてここに置いてあります: [Cj-bc/homebrew-cj-bc/readline.rb](https://github.com/Cj-bc/homebrew-cj-bc/blob/master/readline.rb) |
| 52 | + |
| 53 | + |
| 54 | +普通にtapしても良いですが、自分は他のformulaも同じレポジトリに置いているので割と混同するので以下のように直接インストールするのをお勧めします(もちろん自分で取ってきても良いと思います。) |
| 55 | + |
| 56 | +```sh |
| 57 | +$ brew unlink readline # 8.0.0 のリンクを外しておく。必要かはわからないですが自分は外しました。 |
| 58 | +$ brew install cj-bc/cj-bc/readline |
| 59 | +``` |
| 60 | + |
| 61 | +こうすることで、`7.0.5`が使えるようになります。 |
| 62 | + |
| 63 | + |
| 64 | +ちなみに私は: **homebrewに勝手にcleanupされました** |
| 65 | + |
0 commit comments