Mercurial > emacs
annotate lisp/env.el @ 2318:50737ca2fd45
Decide automatically whether to use COFF or ELF.
| author | Richard M. Stallman <rms@gnu.org> |
|---|---|
| date | Mon, 22 Mar 1993 19:50:35 +0000 |
| parents | 9e7ec92a4fdf |
| children | 05d8916e4cde |
| rev | line source |
|---|---|
|
658
7cbd4fcd8b0f
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
584
diff
changeset
|
1 ;;; setenv.el --- functions to manipulate environment variables. |
|
7cbd4fcd8b0f
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
584
diff
changeset
|
2 |
| 1185 | 3 ;;; Copyright Free Software Foundation 1991 |
| 4 | |
|
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
658
diff
changeset
|
5 ;; Maintainer: FSF |
|
2315
9e7ec92a4fdf
Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1218
diff
changeset
|
6 ;; Keywords: processes, unix |
|
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
658
diff
changeset
|
7 |
| 489 | 8 ;;; This file is part of GNU Emacs. |
| 9 | |
| 10 ;;; GNU Emacs is free software; you can redistribute it and/or modify | |
| 11 ;;; it under the terms of the GNU General Public License as published by | |
|
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
658
diff
changeset
|
12 ;;; the Free Software Foundation; either version 2, or (at your option) |
| 489 | 13 ;;; any later version. |
| 14 | |
| 15 ;;; GNU Emacs is distributed in the hope that it will be useful, | |
| 16 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 17 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 18 ;;; GNU General Public License for more details. | |
| 19 | |
| 20 ;;; You should have received a copy of the GNU General Public License | |
| 21 ;;; along with GNU Emacs; see the file COPYING. If not, write to | |
| 22 ;;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
| 23 | |
|
2315
9e7ec92a4fdf
Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1218
diff
changeset
|
24 ;;; Commentary: |
|
9e7ec92a4fdf
Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1218
diff
changeset
|
25 |
|
9e7ec92a4fdf
Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1218
diff
changeset
|
26 ;; UNIX processes inherit a list of name-to-string associations from |
|
9e7ec92a4fdf
Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1218
diff
changeset
|
27 ;; their parents called their `environment'; these are commonly used |
|
9e7ec92a4fdf
Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1218
diff
changeset
|
28 ;; to control program options. This package permits you to set |
|
9e7ec92a4fdf
Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1218
diff
changeset
|
29 ;; environment variables to be passed to any sub-process run under Emacs. |
|
9e7ec92a4fdf
Added or corrected Commentary headers
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
1218
diff
changeset
|
30 |
|
807
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
658
diff
changeset
|
31 ;;; Code: |
|
4f28bd14272c
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
658
diff
changeset
|
32 |
|
1218
678ff000d9c8
(setenv): Make it autoload.
Richard M. Stallman <rms@gnu.org>
parents:
1216
diff
changeset
|
33 ;;;###autoload |
| 489 | 34 (defun setenv (variable value) |
| 35 "Set the value of the environment variable named VARIABLE to VALUE. | |
| 36 VARIABLE and VALUE should both be strings. | |
| 1216 | 37 This function works by modifying `process-environment'." |
| 1185 | 38 (interactive "sSet environment variable: \nsSet %s to value: ") |
| 489 | 39 (if (string-match "=" variable) |
| 1185 | 40 (error "Environment variable name contains `='") |
| 41 (let ((pattern (concat "\\`" (regexp-quote (concat variable "=")))) | |
| 489 | 42 (scan process-environment)) |
| 43 (while scan | |
| 44 (cond | |
| 45 ((string-match pattern (car scan)) | |
| 46 (setcar scan (concat variable "=" value)) | |
| 47 (setq scan nil)) | |
| 48 ((null (setq scan (cdr scan))) | |
| 49 (setq process-environment | |
| 50 (cons (concat variable "=" value) process-environment)))))))) | |
| 584 | 51 |
| 52 (provide 'setenv) | |
| 53 | |
|
658
7cbd4fcd8b0f
*** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents:
584
diff
changeset
|
54 ;;; setenv.el ends here |
