* bug#15539: 24.3; setting user-emacs-directory at command line invocation @ 2013-10-06 17:08 Mike Carifio 2015-03-13 15:01 ` bug#15539: Setting " François Févotte ` (2 more replies) 0 siblings, 3 replies; 16+ messages in thread From: Mike Carifio @ 2013-10-06 17:08 UTC (permalink / raw) To: 15539 ----------------------- I'd like a switch for the emacs command line, something like --user-emacs-directory, that sets the user emacs directory on startup, rather than hardcodes ~/.emacs.d/. So, for example: emacs --user-emacs-directory ~/mine.d/ Will look for the emacs init.el in ~/mine.d/init.el. ----------------------- In GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.6.4) of 2013-10-03 on louvi, modified by Debian Windowing system distributor `The X.Org Foundation', version 11.0.11303000 System Description: Ubuntu 13.04 Configured using: `configure '--build' 'x86_64-linux-gnu' '--build' 'x86_64-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.3/site-lisp:/usr/share/emacs/site-lisp' '--with-crt-dir=/usr/lib/x86_64-linux-gnu' '--with-x=yes' '--with-x-toolkit=gtk3' '--with-toolkit-scroll-bars' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro' 'CPPFLAGS=-D_FORTIFY_SOURCE=2'' Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Lisp Interaction Minor modes in effect: global-auto-complete-mode: t auto-complete-mode: t cua-mode: t tooltip-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent input: <help-echo> C-h v c o m m a n d l <backspace> - l i n e - a r g <tab> <return> ESC x r e p o r t - e m <tab> <return> Recent messages: Loading /var/cache/dictionaries-common/emacsen-ispell-default.el (source)...done Loading debian-ispell...done Loading /var/cache/dictionaries-common/emacsen-ispell-dicts.el (source)...done Loading /etc/emacs/site-start.d/50dictionaries-common.el (source)...done Loading /etc/emacs/site-start.d/50python-docutils.el (source)...done Loading /home/mcarifio/.emacs.d/lib/libemacs.el (source)...done (lambda (a b) ...) quoted with ' rather than with #' For information about GNU Emacs and the GNU system, type C-h C-a. command-line-1: Unknown option `--user-emacs-directory' Type C-x 1 to delete the help window. Load-path shadows: /usr/share/emacs/24.3/site-lisp/debian-startup hides /usr/share/emacs/site-lisp/debian-startup /usr/share/emacs/24.3/site-lisp/cmake-data/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode /usr/share/emacs24/site-lisp/dictionaries-common/flyspell hides /usr/share/emacs/24.3/lisp/textmodes/flyspell /usr/share/emacs/site-lisp/rst hides /usr/share/emacs/24.3/lisp/textmodes/rst /usr/share/emacs24/site-lisp/dictionaries-common/ispell hides /usr/share/emacs/24.3/lisp/textmodes/ispell /home/mcarifio/.emacs.d/elpa/flymake-0.4.13/flymake hides /usr/share/emacs/24.3/lisp/progmodes/flymake /home/mcarifio/.emacs.d/elpa/sunrise-commander-20121024.2042/.dir-locals hides /usr/share/emacs/24.3/lisp/gnus/.dir-locals Features: (shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils help-mode easymenu auto-complete-config go-autocomplete auto-complete edmacro kmacro popup auto-complete-autoloads flymake-go-autoloads flymake-autoloads flymake-jshint-autoloads gist-autoloads gh-autoloads eieio byte-opt bytecomp byte-compile cconv go-mode-autoloads graphviz-dot-mode-autoloads js-comint-autoloads js2-mode-autoloads logito-autoloads multi-term-autoloads nginx-mode-autoloads nose-autoloads pcache-autoloads finder-inf popup-autoloads sunrise-commander-autoloads package uniquify advice help-fns advice-preload cl-macs gv cl cl-lib cua-base devhelp time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs) ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: Setting user-emacs-directory at command line invocation 2013-10-06 17:08 bug#15539: 24.3; setting user-emacs-directory at command line invocation Mike Carifio @ 2015-03-13 15:01 ` François Févotte 2015-03-16 0:36 ` Glenn Morris 2016-02-15 10:31 ` bug#15539: [PATCH] Setting user-emacs-directory Alexis 2016-11-03 22:32 ` bug#15539: comment Max 2 siblings, 1 reply; 16+ messages in thread From: François Févotte @ 2015-03-13 15:01 UTC (permalink / raw) To: 15539 [-- Attachment #1.1: Type: text/plain, Size: 978 bytes --] Hello, attached is a patch which tries to implement the desired feature. It should apply cleanly atop master (b91eafe31a524b391d5cec079cf8f36c2f9d5f30) With this patch, emacs accepts a new command line argument: --user-emacs-directory=DIR which has two effects: 1. it sets the `user-emacs-directory' variable to DIR (instead of the default "~/.emacs.d") 2. it looks for the init file in DIR/init.el (and only there: ~/.emacs & co are bypassed) This doesn't impact anything else in emacs' startup sequence. Implementationwise, I'm not very proud of having to define a new global variable, but I fail to see how to do otherwise, except maybe wrapping the whole `command-line' function in a let form to use a local binding. Please do not hesitate to criticize or ask me for any modification which would be desirable. This is the first patch I propose to emacs; I don't expect to have it right on the first try. Thanks in advance, François [-- Attachment #1.2: Type: text/html, Size: 1174 bytes --] [-- Attachment #2: 0001-Add-a-user-emacs-directory-command-line-option.patch --] [-- Type: text/x-patch, Size: 3807 bytes --] From cb6e52b3cd1bb6ff23a5c89b9838169ea216cf9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20F=C3=A9votte?= <fevotte@gmail.com> Date: Fri, 13 Mar 2015 15:01:02 +0100 Subject: [PATCH] Add a `--user-emacs-directory' command-line option This sets `user-emacs-directory' and looks for `init.el' in it. Fixes: bug#15539 --- doc/emacs/cmdargs.texi | 10 +++++++++- lisp/startup.el | 16 +++++++++++++--- lisp/subr.el | 4 ++++ 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi index 42c8e33..be83aaa 100644 --- a/doc/emacs/cmdargs.texi +++ b/doc/emacs/cmdargs.texi @@ -349,7 +349,15 @@ Do not reload any saved desktop. @xref{Saving Emacs Sessions}. @opindex --user @cindex load init file of another user Load @var{user}'s initialization file instead of your -own@footnote{This option has no effect on MS-Windows.}. +own@footnote{This option has no effect on MS-Windows, nor when +@samp{--user-emacs-directory} is used}. + +@item --user-emacs-directory=@var{dir} +@opindex --user-emacs-directory +Look for the initialization file in @var{dir}, instead of the default +@file{~/.emacs.d/}; @pxref{Init File}. @var{dir} will also be used as +the default directory where user-specific configuration data will be +stored; @xref{Standard File Names,,, elisp}. @item --debug-init @opindex --debug-init diff --git a/lisp/startup.el b/lisp/startup.el index 999e53e..6f25c65 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -877,7 +877,7 @@ please check its value") (while (and (not done) args) (let* ((longopts '(("--no-init-file") ("--no-site-file") ("--debug-init") ("--user") ("--iconic") ("--icon-type") ("--quick") - ("--no-blinking-cursor") ("--basic-display"))) + ("--no-blinking-cursor") ("--basic-display") ("--user-emacs-directory"))) (argi (pop args)) (orig-argi argi) argval) @@ -924,6 +924,10 @@ please check its value") (push '(visibility . icon) initial-frame-alist)) ((member argi '("-nbc" "-no-blinking-cursor")) (setq no-blinking-cursor t)) + ((equal argi "-user-emacs-directory") + (setq user-emacs-directory (file-name-as-directory (or argval (pop args))) + user-emacs-directory--set t + argval nil)) ;; Push the popped arg back on the list of arguments. (t (push argi args) @@ -1102,7 +1106,11 @@ please check its value") ;; This tells `load' to store the file name found ;; into user-init-file. (setq user-init-file t) - (load user-init-file-1 t t) + + ;; Don't try to read `~/.emacs' if the user provided a + ;; custom `user-emacs-directory' in the command-line. + (unless user-emacs-directory--set + (load user-init-file-1 t t)) (when (eq user-init-file t) ;; If we did not find ~/.emacs, try @@ -1111,7 +1119,9 @@ please check its value") (expand-file-name "init" (file-name-as-directory - (concat "~" init-file-user "/.emacs.d"))))) + (if user-emacs-directory--set + user-emacs-directory + (concat "~" init-file-user "/.emacs.d")))))) (load otherfile t t) ;; If we did not find the user's init file, diff --git a/lisp/subr.el b/lisp/subr.el index deadca6..c5c81b7 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -2545,6 +2545,10 @@ mode.") Various programs in Emacs store information in this directory. Note that this should end with a directory separator. See also `locate-user-emacs-file'.") + +(defvar user-emacs-directory--set nil + "Non-nil if the user provided a custom value for `user-emacs-directory'. +This can be done via the `--user-emacs-directory' command-line switch.") \f ;;;; Misc. useful functions. -- 1.7.2.5 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* bug#15539: Setting user-emacs-directory at command line invocation 2015-03-13 15:01 ` bug#15539: Setting " François Févotte @ 2015-03-16 0:36 ` Glenn Morris 2015-03-16 7:28 ` François Févotte 2015-03-17 10:08 ` François Févotte 0 siblings, 2 replies; 16+ messages in thread From: Glenn Morris @ 2015-03-16 0:36 UTC (permalink / raw) To: François Févotte; +Cc: 15539 François Févotte wrote: > Implementationwise, I'm not very proud of having to define a new global > variable, I'm not saying it's the right solution, but you could use an environment variable (eg EMACS_USER_DIRECTORY) rather than a command-line switch to control this. This would be consistent with eg EMACSDATA, and also I think with how other applications normally let you control where they look for their init files (?). But on the other hand, environment variables can be easier to overlook than explicit flags eg when debugging. On the other other hand, the OP could just do ln -s mine.d .emacs.d so I'm not sure what the point of this feature would be, unless eg you frequently want to swap between different .emacs.d's? ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: Setting user-emacs-directory at command line invocation 2015-03-16 0:36 ` Glenn Morris @ 2015-03-16 7:28 ` François Févotte 2015-03-17 10:08 ` François Févotte 1 sibling, 0 replies; 16+ messages in thread From: François Févotte @ 2015-03-16 7:28 UTC (permalink / raw) To: Glenn Morris; +Cc: 15539 Hi, thanks for your comment. On Mon, Mar 16, 2015 at 1:36 AM, Glenn Morris <rgm@gnu.org> wrote: > I'm not saying it's the right solution, but you could use an environment > variable (eg EMACS_USER_DIRECTORY) rather than a command-line switch to > control this. This would be consistent with eg EMACSDATA, and also I > think with how other applications normally let you control where they > look for their init files (?). But on the other hand, environment > variables can be easier to overlook than explicit flags eg when > debugging. Yes, you're right, this is a very good idea. I'll develop a new patch for this as soon as I can. > On the other other hand, the OP could just do > > ln -s mine.d .emacs.d > > so I'm not sure what the point of this feature would be, unless eg you > frequently want to swap between different .emacs.d's? I'm not sure about the OP's use case, but I can tell about mine: at work, I try to maintain a sensible set of init files for my co-workers to use (with the very outdated default version that we have installed by default on our systems: 23.2). On the other hand, on my machine, I maintain a locally-installed Emacs version that is more up-to-date. In order to maintain both sets of init files, I need to be able to run both versions of Emacs at the same time, which prevents me from symlinking ~/.emacs.d/ There are reddit and stackexchange questions hinting at the same kind of use: http://www.reddit.com/r/emacs/comments/2y1b3a/how_can_i_easily_keep_different_emacsd_folders/ http://emacs.stackexchange.com/q/4253/221 Since these questions concern a broader audience, do you think that we should add emacs-devel to this discussion? Thanks, François ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: Setting user-emacs-directory at command line invocation 2015-03-16 0:36 ` Glenn Morris 2015-03-16 7:28 ` François Févotte @ 2015-03-17 10:08 ` François Févotte 1 sibling, 0 replies; 16+ messages in thread From: François Févotte @ 2015-03-17 10:08 UTC (permalink / raw) To: Glenn Morris; +Cc: 15539 [-- Attachment #1: Type: text/plain, Size: 676 bytes --] On Mon, Mar 16, 2015 at 1:36 AM, Glenn Morris <rgm@gnu.org> wrote: > I'm not saying it's the right solution, but you could use an environment > variable (eg EMACS_USER_DIRECTORY) rather than a command-line switch to > control this. Attached is a new patch implementing this idea. The differences with respect to the first version are: 1- `user-emacs-directory' is read in the `EMACS_USER_DIRECTORY' environment variable instead of from the command-line; 2- a few custom variables are declared in `custom-delayed-init-variables' in order to account for the new value of `user-emacs-directory'. Once again, please don't hesitate to comment. François [-- Attachment #2: 0001-Look-for-an-EMACS_USER_DIRECTORY-environment-variabl.patch --] [-- Type: text/x-patch, Size: 5180 bytes --] From f98d2af08d2346121556f4fd91628dc0316cbff0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20F=C3=A9votte?= <fevotte@gmail.com> Date: Tue, 17 Mar 2015 08:50:01 +0100 Subject: [PATCH] Look for an `EMACS_USER_DIRECTORY' environment variable. This sets `user-emacs-directory' and looks for `init.el' in it. Fixes: bug#15539 --- doc/emacs/cmdargs.texi | 9 ++++++++- doc/emacs/custom.texi | 8 ++++++++ lisp/custom.el | 1 + lisp/startup.el | 21 +++++++++++++++++---- 4 files changed, 34 insertions(+), 5 deletions(-) diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi index 42c8e33..1cc8ac3 100644 --- a/doc/emacs/cmdargs.texi +++ b/doc/emacs/cmdargs.texi @@ -349,7 +349,9 @@ Do not reload any saved desktop. @xref{Saving Emacs Sessions}. @opindex --user @cindex load init file of another user Load @var{user}'s initialization file instead of your -own@footnote{This option has no effect on MS-Windows.}. +own@footnote{This option has no effect on MS-Windows, nor when the +@env{EMACS_USER_DIRECTORY} environment variable is set (@pxref{General +Variables}).}. @item --debug-init @opindex --debug-init @@ -600,6 +602,11 @@ does not use @env{TZ} at all. @item USER The user's login name. See also @env{LOGNAME}. On MS-DOS, this defaults to @samp{root}. +@item EMACS_USER_DIRECTORY +This specifies a directory in which the initialization file will be +looked for; @xref{Find Init}. This directory will also be used as the +default place where user-specific configuration data will be stored; +@xref{Standard File Names,,, elisp}. @item VERSION_CONTROL Used to initialize the @code{version-control} variable (@pxref{Backup Names}). diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi index 9fd823b..1e1d482 100644 --- a/doc/emacs/custom.texi +++ b/doc/emacs/custom.texi @@ -2516,6 +2516,14 @@ otherwise, it looks up the home directory corresponding to that user name in the system's data base of users. @c LocalWords: backtab + The whole mechanism described above is bypassed if the +@env{EMACS_USER_DIRECTORY} environment variable is specified, in which +case Emacs directly looks for @file{init.el} inside the directory +specified by @env{EMACS_USER_DIRECTORY} (@pxref{General Variables}). +This directory is also used to hold user-specific configuration +(@pxref{Standard File Names,,, elisp}). + + @node Init Non-ASCII @subsection Non-@acronym{ASCII} Characters in Init Files @cindex international characters in @file{.emacs} diff --git a/lisp/custom.el b/lisp/custom.el index e5fe0eb..36983aa 100644 --- a/lisp/custom.el +++ b/lisp/custom.el @@ -1119,6 +1119,7 @@ directory. By default, Emacs searches for custom themes in this directory first---see `custom-theme-load-path'." :type 'string :group 'customize + :initialize 'custom-initialize-delay :version "22.1") (defcustom custom-theme-load-path (list 'custom-theme-directory t) diff --git a/lisp/startup.el b/lisp/startup.el index 7fa929a..2b2c324 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -397,7 +397,8 @@ Set this to nil if you want to prevent `auto-save-list-file-name' from being initialized." :type '(choice (const :tag "Don't record a session's auto save list" nil) string) - :group 'auto-save) + :group 'auto-save + :initialize 'custom-initialize-delay) (defvar emacs-basic-display nil) @@ -814,6 +815,12 @@ Amongst another things, it parses the command-line arguments." ((member vc '("never" "simple")) (setq version-control 'never)))) + ;; Set `user-emacs-directory' early so that delayed init variables + ;; can be updated. + (let ((ued (getenv "EMACS_USER_DIRECTORY"))) + (when ued + (setq user-emacs-directory (file-name-as-directory ued)))) + ;;! This has been commented out; I currently find the behavior when ;;! split-window-keep-point is nil disturbing, but if I can get used ;;! to it, then it would be better to eliminate the option. @@ -1101,11 +1108,15 @@ please check its value") delayed-warnings-list) "~/_emacs") (t ;; But default to .emacs if _emacs does not exist. - "~/.emacs")))) + "~/.emacs"))) + (user-emacs-directory--from-env (getenv "EMACS_USER_DIRECTORY"))) ;; This tells `load' to store the file name found ;; into user-init-file. (setq user-init-file t) - (load user-init-file-1 t t) + + ;; Don't load `~/.emacs' if EMACS_USER_DIRECTORY was set + (unless user-emacs-directory--from-env + (load user-init-file-1 t t)) (when (eq user-init-file t) ;; If we did not find ~/.emacs, try @@ -1114,7 +1125,9 @@ please check its value") (expand-file-name "init" (file-name-as-directory - (concat "~" init-file-user "/.emacs.d"))))) + (if user-emacs-directory--from-env + user-emacs-directory + (concat "~" init-file-user "/.emacs.d")))))) (load otherfile t t) ;; If we did not find the user's init file, -- 1.7.2.5 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* bug#15539: [PATCH] Setting user-emacs-directory 2013-10-06 17:08 bug#15539: 24.3; setting user-emacs-directory at command line invocation Mike Carifio 2015-03-13 15:01 ` bug#15539: Setting " François Févotte @ 2016-02-15 10:31 ` Alexis 2016-02-15 14:15 ` Eli Zaretskii 2016-11-03 22:32 ` bug#15539: comment Max 2 siblings, 1 reply; 16+ messages in thread From: Alexis @ 2016-02-15 10:31 UTC (permalink / raw) To: 15539 Ping! Someone on reddit recently enquired about the status of this issue: https://www.reddit.com/r/emacs/comments/44ojpk/interpreting_the_emacs_bug_list_what_was/ Are there any particular things blocking this patch from being applied? Alexis. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: [PATCH] Setting user-emacs-directory 2016-02-15 10:31 ` bug#15539: [PATCH] Setting user-emacs-directory Alexis @ 2016-02-15 14:15 ` Eli Zaretskii 2016-02-24 4:03 ` Lars Ingebrigtsen 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2016-02-15 14:15 UTC (permalink / raw) To: Alexis; +Cc: 15539 > From: Alexis <flexibeast@gmail.com> > Date: Mon, 15 Feb 2016 21:31:23 +1100 > > > Ping! > > Someone on reddit recently enquired about the status of this > issue: > > https://www.reddit.com/r/emacs/comments/44ojpk/interpreting_the_emacs_bug_list_what_was/ > > Are there any particular things blocking this patch from being > applied? Frankly, I don't think there are important enough use cases behind this request to add yet another option that allows to change a well-established constant. But that's me. (Didn't see any enthusiastic reactions from others, either. Not sure what that means.) ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: [PATCH] Setting user-emacs-directory 2016-02-15 14:15 ` Eli Zaretskii @ 2016-02-24 4:03 ` Lars Ingebrigtsen 2016-02-24 17:15 ` Eli Zaretskii 0 siblings, 1 reply; 16+ messages in thread From: Lars Ingebrigtsen @ 2016-02-24 4:03 UTC (permalink / raw) To: Eli Zaretskii; +Cc: Alexis, 15539 Eli Zaretskii <eliz@gnu.org> writes: >> From: Alexis <flexibeast@gmail.com> >> Date: Mon, 15 Feb 2016 21:31:23 +1100 >> >> >> Ping! >> >> Someone on reddit recently enquired about the status of this >> issue: >> >> https://www.reddit.com/r/emacs/comments/44ojpk/interpreting_the_emacs_bug_list_what_was/ >> >> Are there any particular things blocking this patch from being >> applied? > > Frankly, I don't think there are important enough use cases behind > this request to add yet another option that allows to change a > well-established constant. But that's me. (Didn't see any > enthusiastic reactions from others, either. Not sure what that > means.) I think it might make sense... it might make some debugging and testing cases easier, for instance. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: [PATCH] Setting user-emacs-directory 2016-02-24 4:03 ` Lars Ingebrigtsen @ 2016-02-24 17:15 ` Eli Zaretskii 2016-02-25 5:48 ` Lars Ingebrigtsen 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2016-02-24 17:15 UTC (permalink / raw) To: Lars Ingebrigtsen; +Cc: flexibeast, 15539 > From: Lars Ingebrigtsen <larsi@gnus.org> > Cc: Alexis <flexibeast@gmail.com>, 15539@debbugs.gnu.org > Date: Wed, 24 Feb 2016 15:03:31 +1100 > > > Frankly, I don't think there are important enough use cases behind > > this request to add yet another option that allows to change a > > well-established constant. But that's me. (Didn't see any > > enthusiastic reactions from others, either. Not sure what that > > means.) > > I think it might make sense... it might make some debugging and testing > cases easier, for instance. You mean, the need to temporarily point HOME to some other place? Is that really so problematic as to require yet another knob in Emacs? ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: [PATCH] Setting user-emacs-directory 2016-02-24 17:15 ` Eli Zaretskii @ 2016-02-25 5:48 ` Lars Ingebrigtsen 0 siblings, 0 replies; 16+ messages in thread From: Lars Ingebrigtsen @ 2016-02-25 5:48 UTC (permalink / raw) To: Eli Zaretskii; +Cc: flexibeast, 15539 Eli Zaretskii <eliz@gnu.org> writes: >> I think it might make sense... it might make some debugging and testing >> cases easier, for instance. > > You mean, the need to temporarily point HOME to some other place? Is > that really so problematic as to require yet another knob in Emacs? Yeah, that's true. HOME is easy to switch around, so it doesn't make much sense to offer this extra knob. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: comment 2013-10-06 17:08 bug#15539: 24.3; setting user-emacs-directory at command line invocation Mike Carifio 2015-03-13 15:01 ` bug#15539: Setting " François Févotte 2016-02-15 10:31 ` bug#15539: [PATCH] Setting user-emacs-directory Alexis @ 2016-11-03 22:32 ` Max 2016-11-04 7:28 ` Eli Zaretskii 2 siblings, 1 reply; 16+ messages in thread From: Max @ 2016-11-03 22:32 UTC (permalink / raw) To: 15539 As an Emacs user I would like to kindly request you to reconsider this bug. I think that the added complexity (look at the patch size, and even that is more comments than code) is more than justified by the convenience it adds. Yes, there are some workarounds which are either cumbersome (like fiddling with symlinks) or break things (like adjusting $HOME). Using straightforward approach is better because it's 100% backward-compatible, easy to use and aligns well with user expectations (many other programs allow you to override default config location with environment variable). best regards, Max. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: comment 2016-11-03 22:32 ` bug#15539: comment Max @ 2016-11-04 7:28 ` Eli Zaretskii 2016-11-04 12:42 ` Evgeny Roubinchtein 0 siblings, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2016-11-04 7:28 UTC (permalink / raw) To: Max; +Cc: 15539 > From: Max <maxim.suraev@campus.tu-berlin.de> > Date: Thu, 3 Nov 2016 23:32:01 +0100 > > As an Emacs user I would like to kindly request you to reconsider this bug. > > I think that the added complexity (look at the patch size, and even that is more > comments than code) is more than justified by the convenience it adds. The "complexity" mentioned in the discussion of this bug did not allude to the size or complexity of the patch, it alluded to the complexity this would add to Emacs and its development/maintenance: where previously user-emacs-directory and the directory pointed to by HOME in the environment were one and the same, now they will not be. I think if we want to revisit this issue, we should come up with the use cases where this feature would be useful, and see if they are important enough to justify the price. AFAIR, no use cases were provided with the original request. Thanks. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: comment 2016-11-04 7:28 ` Eli Zaretskii @ 2016-11-04 12:42 ` Evgeny Roubinchtein 2016-11-04 12:55 ` Noam Postavsky 2016-11-04 13:59 ` Eli Zaretskii 0 siblings, 2 replies; 16+ messages in thread From: Evgeny Roubinchtein @ 2016-11-04 12:42 UTC (permalink / raw) To: Eli Zaretskii; +Cc: Max, 15539 [-- Attachment #1: Type: text/plain, Size: 1283 bytes --] Just out of curiosity: is being compliant with the XDG Base Directory Specification out-of-the-box ( https://standards.freedesktop.org/basedir-spec/basedir-spec-0.6.html) currently viewed as a non-goal for Emacs? (The emphasis being on "out-of-the-box"). On Fri, Nov 4, 2016 at 3:28 AM, Eli Zaretskii <eliz@gnu.org> wrote: > > From: Max <maxim.suraev@campus.tu-berlin.de> > > Date: Thu, 3 Nov 2016 23:32:01 +0100 > > > > As an Emacs user I would like to kindly request you to reconsider this > bug. > > > > I think that the added complexity (look at the patch size, and even that > is more > > comments than code) is more than justified by the convenience it adds. > > The "complexity" mentioned in the discussion of this bug did not > allude to the size or complexity of the patch, it alluded to the > complexity this would add to Emacs and its development/maintenance: > where previously user-emacs-directory and the directory pointed to by > HOME in the environment were one and the same, now they will not be. > > I think if we want to revisit this issue, we should come up with the > use cases where this feature would be useful, and see if they are > important enough to justify the price. AFAIR, no use cases were > provided with the original request. > > Thanks. > > > > [-- Attachment #2: Type: text/html, Size: 1851 bytes --] ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: comment 2016-11-04 12:42 ` Evgeny Roubinchtein @ 2016-11-04 12:55 ` Noam Postavsky 2016-11-04 13:59 ` Eli Zaretskii 1 sibling, 0 replies; 16+ messages in thread From: Noam Postavsky @ 2016-11-04 12:55 UTC (permalink / raw) To: Evgeny Roubinchtein; +Cc: 15539, Max On Fri, Nov 4, 2016 at 8:42 AM, Evgeny Roubinchtein <zhenya1007@gmail.com> wrote: > Just out of curiosity: is being compliant with the XDG Base Directory > Specification out-of-the-box > (https://standards.freedesktop.org/basedir-spec/basedir-spec-0.6.html) > currently viewed as a non-goal for Emacs? (The emphasis being on > "out-of-the-box"). See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=583 - some skepticism More recent effort: https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00167.html - seems to have stalled. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: comment 2016-11-04 12:42 ` Evgeny Roubinchtein 2016-11-04 12:55 ` Noam Postavsky @ 2016-11-04 13:59 ` Eli Zaretskii 2016-12-14 18:43 ` Glenn Morris 1 sibling, 1 reply; 16+ messages in thread From: Eli Zaretskii @ 2016-11-04 13:59 UTC (permalink / raw) To: Evgeny Roubinchtein; +Cc: maxim.suraev, 15539 > From: Evgeny Roubinchtein <zhenya1007@gmail.com> > Date: Fri, 4 Nov 2016 08:42:48 -0400 > Cc: Max <maxim.suraev@campus.tu-berlin.de>, 15539@debbugs.gnu.org > > Just out of curiosity: is being compliant with the XDG Base Directory Specification out-of-the-box > (https://standards.freedesktop.org/basedir-spec/basedir-spec-0.6.html) currently viewed as a non-goal for > Emacs? (The emphasis being on "out-of-the-box"). I don't think there's any decision about that, either way. ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#15539: comment 2016-11-04 13:59 ` Eli Zaretskii @ 2016-12-14 18:43 ` Glenn Morris 0 siblings, 0 replies; 16+ messages in thread From: Glenn Morris @ 2016-12-14 18:43 UTC (permalink / raw) To: Eli Zaretskii; +Cc: maxim.suraev, 15539, Evgeny Roubinchtein I think the case for adding this feature has been very well made in https://debbugs.gnu.org/15539#66 and others, and personally I think it seems worth adding. See also https://debbugs.gnu.org/25163, esp #47 and #50. (I'd also like to see support for an XDG-style layout as an option (the default is another matter), compared to which this is very small beer.) ^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2016-12-14 18:43 UTC | newest] Thread overview: 16+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-10-06 17:08 bug#15539: 24.3; setting user-emacs-directory at command line invocation Mike Carifio 2015-03-13 15:01 ` bug#15539: Setting " François Févotte 2015-03-16 0:36 ` Glenn Morris 2015-03-16 7:28 ` François Févotte 2015-03-17 10:08 ` François Févotte 2016-02-15 10:31 ` bug#15539: [PATCH] Setting user-emacs-directory Alexis 2016-02-15 14:15 ` Eli Zaretskii 2016-02-24 4:03 ` Lars Ingebrigtsen 2016-02-24 17:15 ` Eli Zaretskii 2016-02-25 5:48 ` Lars Ingebrigtsen 2016-11-03 22:32 ` bug#15539: comment Max 2016-11-04 7:28 ` Eli Zaretskii 2016-11-04 12:42 ` Evgeny Roubinchtein 2016-11-04 12:55 ` Noam Postavsky 2016-11-04 13:59 ` Eli Zaretskii 2016-12-14 18:43 ` Glenn Morris
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).