アフィリエイト広告を利用しています

広告

posted by fanblog

2017年02月10日

gnupackのcygwinでscheme処理系のGaucheを使用する

この記事ではgnupackのcygwin上でScheme処理系Gaucheを使用する方法を紹介します。

schemeもといlispプログラムはemacsで開発するのが一番なので。

gnupackの導入と初期設定についてはWindowsでLinuxライクなターミナル環境とemacsを気軽に利用するをご覧ください。

gnupack_scheme.png




Gaucheをダウンロードする


Gauche - A Scheme Implementation - Practical Schemeにアクセスし、「ダウンロード」の「Windows用バイナリインストーラ」から32bitか64bit環境にあったファイルをダウンロードします。拡張子がmsiとなっているファイルです。


Gaucheをインストールする


先ほどダウンロードしたファイルをダブルクリックし、Windowsにインストールします。このときインストール先を覚えておきます。通常は
C:\Program Files\Gauche
となっていると思います。

また「Associate 'scm' extension to Gauche」のチェックは外しておきます。

gnupackでGaucheを使えるようにする


インストールが完了したらGaucheのインストール先のGaucheという名前のフォルダをgnupackのappフォルダに移動します。

gnupackのstartup_config.iniをエディタで開き[Process Variable]の
PATH = %PATH%;%WINDIR%\System32\WindowsPowerShell\v1.0
のすぐ下に
PATH = %PATH%;%ROOT_DIR%\app\Gauche\bin
を追加します。

保存して終了後、cygwinターミナルを開きます。

gosh -i -I "."
と入力して画面上に
gosh>
と表示されれば成功です。


goshの起動コマンドを短くする


Gaucheを起動するのに
gosh -i -I "."
だと面倒なので
gosh
だけで起動するように変更します。

homeディレクトリにある.bashrcをemacsで開き一番最後に
alias gosh='gosh -i -I "."'
を追加します。

cygwinターミナルを起動しなおして
gosh
と打ち込み
gosh>
と表示されれば成功です。


Gaucheに入力履歴機能を追加する


以上でGaucheはgnupackのcygwinでGaucheが使用できるようになりましたがこのままでは入力履歴機能がなくGaucheが起動した状態で↑や↓キーを押しても過去の入力が表示されません。

これは不便なので入力履歴機能を追加して↑や↓キーを押したときに過去の入力を一行単位で呼び出せるようにします。

cygwinターミナルを起動して
apt-cyg install rlwrap
と入力します。いろいろ表示されますがターミナルが戻るまで待ちます。

ターミナルが戻ったら
which rlwrap
と入力して
/usr/bin/rlwrap
と表示されたらインストール成功です。失敗した時は
which: no rlwrap in ...
と表示されます。

インストールに成功したら、
rlwrap gosh -i -I "."
と入力してGaucheを起動し、適当に打ち込んでみます。その後↑や↓キーを押して入力履歴が表示されれば成功です。

次に、
gosh
だけでrlwrapが使えるようにします。再びhomeディレクトリにある.bachrcを開いて
alias gosh='gosh -i -I "."'
alias gosh='rlwrap gosh -i -I "."'
に書き換えます。

cygwinターミナルを再起動して、
gosh
と入力してGaucheを起動し、先ほどと同じように入力履歴機能が使えれば成功です。


楽しいSchemeライフを!

この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/5924370
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック
検索
最新記事
最新コメント
カテゴリーアーカイブ
タグクラウド
<< 2018年05月 >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
プロフィール
さんの画像

情報系を専攻する学生。 しばらく使わなかったりした知識は忘れていくのでこのブログにまとめてみたり。
プロフィール
×

この広告は30日以上新しい記事の更新がないブログに表示されております。