/usr/share/Modules/init
NameSizeModeActions
ksh-functions/-0755rm
zsh-functions/-0755rm
bash41340644editdlrm
bash_completion114640644editdlrm
cmake19250644editdlrm
csh38740644editdlrm
fish17330644editdlrm
fish_completion96470644editdlrm
ksh41620644editdlrm
lisp32300644editdlrm
perl.pm11180644editdlrm
profile-compat.csh1970644editdlrm
profile-compat.sh3090644editdlrm
profile.csh1050644editdlrm
profile.sh4480644editdlrm
python.py15390644editdlrm
r.R9610644editdlrm
ruby.rb13790644editdlrm
sh40040644editdlrm
tcl10710644editdlrm
tcsh38800644editdlrm
tcsh_completion55210644editdlrm
zsh41510644editdlrm
Edit: /usr/share/Modules/init/lisp (3230B)
;; ;; emacs-lisp init code for Modules ;; (setenv "MODULESHOME" "/usr/share/Modules") (defvar Modules-history '() "module cmd history list") (defun Modules-module (command) "Run the string COMMAND as a Modules cmd using the tcl version of modules. Any resulting output is placed in buffer \" *modules-cmd*\". This should consist of a single line, a filename, which is expected to contain Emacs lisp code to implement the indicated module commands. The lisp code in this file is eval'd by Emacs on successful completion of modulecmd.tcl. Standard error output is placed in buffer \" *module-log*\" which will be displayed if not empty. Return value is t on success, nil otherwise." (interactive (list (read-string "Module cmd: " nil 'Modules-history))) (let ((cmd-buffer (get-buffer-create " *modules-cmd*")) (log-buffer (get-buffer-create " *modules-log*")) (log-scratch-file (make-temp-name (expand-file-name "modules-log" (if (fboundp 'temp-directory) (temp-directory) ;; XEmacs temporary-file-directory)))) (status nil)) ;; clear cmd buffer, log buffer is replaced below (set-buffer cmd-buffer) (delete-region (point-min) (point-max)) (if (condition-case nil ;; call-process on Emacs cannot write stderr to a separate buffer ;; so it must go to a file and then get pulled into the log buffer ;; (XEmacs *can* direct stderr to buffer, but not worth special case) (progn (apply 'call-process "/usr/bin/tclsh" nil (list cmd-buffer log-scratch-file) nil ;; don't display stdout "/usr/share/Modules/libexec/modulecmd.tcl" "lisp" (split-string command)) t) (error nil)) (progn ;; pull any log info from log-scratch-file into log-buffer (set-buffer log-buffer) (insert-file-contents log-scratch-file nil nil nil t) ;; display any output written to stderr ( eg: module help|list ) (if (> (buffer-size) 0) (switch-to-buffer-other-window log-buffer)) ;; Run any setenv, etc commands produced by modulecmd.tcl ;; cmd-buffer should currently contain the pathname of file to run ;; Note: use eval-buffer instead of load-file to avoid stomping ;; any (message) output from the script itself. (set-buffer cmd-buffer) (if (> (buffer-size) 0) (progn ;; run it carefully. If an error is thrown, catch it and ;; propagate the fact upwards as a nil, but be sure to still ;; execute cleanup below (setq status (condition-case nil (progn (eval-buffer) t) (error nil))))))) ;; all done, clean up (delete-file log-scratch-file) status))