emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] switch to file buffer from command line args regardless of `init


From: Samer Masterson
Subject: [PATCH] switch to file buffer from command line args regardless of `initial-buffer-choice'
Date: Mon, 02 Mar 2015 00:07:56 -0800

When `initial-buffer-choice' is set and emacs is called with a file as
a command line argument, the file is opened as a background buffer and
`initial-buffer-choice' is the initial buffer. This reduces the
utility of calling emacs from the command line when
`initial-buffer-choice' is set, and is inconsistent with the behavior
of the startup screen, which is not displayed when emacs is given a
file as a command line argument.

This patch always opens `initial-buffer-choice', but displays the file
buffer if emacs is given a file as a command line argument.

Best,
Samer

Patch below:

diff --git a/etc/NEWS b/etc/NEWS
index d5cb947..f0a0541 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -63,6 +63,9 @@ so if you want to use it, you can always take a copy from an older Emacs.
 
 * Startup Changes in Emacs 25.1
 
+** If Emacs is given a file as a command line argument, `initial-buffer-choice'
+is opened but not switched to.
+
 
 * Changes in Emacs 25.1
 
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index b9681d3..9df8e84 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
+2015-02-27  Samer Masterson  <address@hidden>
+
+ * startup.el (command-line-1): If Emacs is given a file as a
+ command line argument, open initial-buffer-choice but do not
+ switch to it.
+
 2015-02-27  Mark Laws  <address@hidden>
 
  Support daemon mode on MS-Windows (bug#19688)
diff --git a/lisp/startup.el b/lisp/startup.el
index 999e53e..34a03ec 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -2389,9 +2389,10 @@ A fancy display is used on graphic displays, normal otherwise."
     (find-file-noselect initial-buffer-choice))
    ((functionp initial-buffer-choice)
     (funcall initial-buffer-choice)))))
- (switch-to-buffer
- (if (buffer-live-p buf) buf (get-buffer-create "*scratch*"))
- 'norecord)))
+        (unless (> file-count 0)
+          (switch-to-buffer
+           (if (buffer-live-p buf) buf (get-buffer-create "*scratch*"))
+           'norecord))))
 
     (if (or inhibit-startup-screen
     initial-buffer-choice


reply via email to

[Prev in Thread] Current Thread [Next in Thread]