Mercurial > emacs
changeset 14386:4e5b28d28a5f
(command-line-normalize-file-name): New function.
(command-line-1): Call it to handle foo//bar in non-Emacs fashion.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 27 Jan 1996 00:14:59 +0000 |
parents | aa3232e9077f |
children | 9c3c642de62a |
files | lisp/startup.el |
diffstat | 1 files changed, 10 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/startup.el Fri Jan 26 23:57:39 1996 +0000 +++ b/lisp/startup.el Sat Jan 27 00:14:59 1996 +0000 @@ -841,6 +841,7 @@ (setq tem argval) (setq tem (car command-line-args-left) command-line-args-left (cdr command-line-args-left))) + (setq tem (command-line-normalize-file-name tem)) (setq extra-load-path (cons (expand-file-name tem) extra-load-path)) (setq load-path (append (nreverse extra-load-path) @@ -851,7 +852,7 @@ (setq tem argval) (setq tem (car command-line-args-left) command-line-args-left (cdr command-line-args-left))) - (let ((file tem)) + (let ((file (command-line-normalize-file-name tem))) ;; Take file from default dir if it exists there; ;; otherwise let `load' search for it. (if (file-exists-p (expand-file-name file)) @@ -864,7 +865,7 @@ command-line-args-left (cdr command-line-args-left))) (or (stringp tem) (error "File name omitted from `-insert' option")) - (insert-file-contents tem)) + (insert-file-contents (command-line-normalize-file-name tem))) ((string-equal argi "-kill") (kill-emacs t)) ((string-match "^\\+[0-9]+\\'" argi) @@ -887,6 +888,7 @@ (if (string-match "\\`-" argi) (error "Unknown option `%s'" argi)) (setq file-count (1+ file-count)) + (setq argi (command-line-normalize-file-name argi)) (cond ((= file-count 1) (setq first-file-buffer (find-file (expand-file-name argi dir)))) @@ -902,4 +904,10 @@ (progn (other-window 1) (buffer-menu))))))) +(defun command-line-normalize-file-name (file) + "Collapse multiple slashes to one, to handle non-Emacs file names." + (while (string-match "//+" file) + (setq file (replace-match "/" t t file))) + file) + ;;; startup.el ends here