Emacs内で環境変数に値を追加する

Emacs内で環境変数に値を追加する

私はエリスプを使っています。初期化ファイルで次のことをしたいと思います。

; Retrieve the value of LD_LIBRARY_PATH
; Append '/path/to/some/lib/:'to it
; Save the new value of LD_LIBRARY_PATH

これまで、私は次のものが利用可能であることを知っています。

(getenv "LD_LIBRARY_PATH")

値を検索し、次の操作を行います。

(setenv "LD_LIBRARY_PATH" "foo")

私は新しい値を設定しましたが、Elispの知識は非常に初歩的で、どこから始めるべきかわかりません。

背景:

この質問は、次の事実に触発されました。不可能Emacs内でこの環境を操作するためのシェルスクリプトを取得するには、Elispを使用する必要があります。

ベストアンサー1

Elispでは、文字列接続は次の方法で行われますconcat

(setenv "LD_LIBRARY_PATH"
  (let ((current (getenv "LD_LIBRARY_PATH"))
        (new "/path/to/some/lib"))
    (if current (concat new ":" current) new)))

おすすめ記事