emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master 9c8f8de 2/2: Put cpp config file to ~/.emacs.d/cpp.


From: Noam Postavsky
Subject: [Emacs-diffs] master 9c8f8de 2/2: Put cpp config file to ~/.emacs.d/cpp.el if possible (Bug#28685)
Date: Sun, 22 Oct 2017 12:40:19 -0400 (EDT)

branch: master
commit 9c8f8de0f3e00d4f862fa5c17e3b46fcd23e5f7f
Author: Masatake YAMATO <address@hidden>
Commit: Noam Postavsky <address@hidden>

    Put cpp config file to ~/.emacs.d/cpp.el if possible (Bug#28685)
    
    If `cpp-config-file` starts with '.', remove the '.'
    when putting the file to ~/.emacs.d.
    Suggested by Noam Postavsky <address@hidden>
    
    * lisp/progmodes/cpp.el (cpp-locate-user-emacs-file): New
    function wrapping `locate-user-emacs-file`.
    (cpp-edit-load, cpp-edit-save): Use it.
---
 lisp/progmodes/cpp.el | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/lisp/progmodes/cpp.el b/lisp/progmodes/cpp.el
index 186312f..f49c8e9 100644
--- a/lisp/progmodes/cpp.el
+++ b/lisp/progmodes/cpp.el
@@ -568,6 +568,14 @@ You can also use the keyboard accelerators indicated like 
this: [K]ey."
     (set-window-start nil start)
     (goto-char pos)))
 
+(defun cpp-locate-user-emacs-file (file)
+  (locate-user-emacs-file
+   ;; Remove initial '.' from file.
+   (if (eq (aref file 0) ?.)
+       (substring file 1)
+     file)
+   file))
+
 (defun cpp-edit-load ()
   "Load cpp configuration."
   (interactive)
@@ -576,8 +584,8 @@ You can also use the keyboard accelerators indicated like 
this: [K]ey."
         nil)
        ((file-readable-p cpp-config-file)
         (load-file cpp-config-file))
-       ((file-readable-p (concat "~/" cpp-config-file))
-        (load-file (concat "~/" cpp-config-file))))
+       ((file-readable-p (cpp-locate-user-emacs-file cpp-config-file))
+        (load-file (cpp-locate-user-emacs-file cpp-config-file))))
   (if (derived-mode-p 'cpp-edit-mode)
       (cpp-edit-reset)))
 
@@ -588,7 +596,7 @@ You can also use the keyboard accelerators indicated like 
this: [K]ey."
   (with-current-buffer cpp-edit-buffer
     (let* ((config-file (if (file-writable-p cpp-config-file)
                             cpp-config-file
-                          (concat "~/" cpp-config-file)))
+                          (cpp-locate-user-emacs-file cpp-config-file)))
            (buffer (find-file-noselect config-file)))
       (set-buffer buffer)
       (erase-buffer)



reply via email to

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