(command-line-normalize-file-name): New function.

(command-line-1): Call it to handle foo//bar in non-Emacs fashion.
This commit is contained in:
Richard M. Stallman 1996-01-27 00:14:59 +00:00
parent 126b6f74c1
commit 47c7adae7d

View file

@ -841,6 +841,7 @@ Type \\[describe-distribution] for information on getting the latest version."))
(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 @@ Type \\[describe-distribution] for information on getting the latest version."))
(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 @@ Type \\[describe-distribution] for information on getting the latest version."))
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 @@ Type \\[describe-distribution] for information on getting the latest version."))
(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 @@ Type \\[describe-distribution] for information on getting the latest version."))
(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