GNU bug report logs - #16242
24.3; wish: set init directory (.emacs.d) by commandline flag for easy custom environments

Previous Next

Package: emacs;

Reported by: arne_bab <at> web.de

Date: Tue, 24 Dec 2013 15:48:02 UTC

Severity: wishlist

Tags: moreinfo, patch

Merged with 15539

Found in version 24.3

Fixed in version 29.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 16242 in the body.
You can then email your comments to 16242 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Tue, 24 Dec 2013 15:48:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to arne_bab <at> web.de:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 24 Dec 2013 15:48:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Arne Babenhauserheide <arne_bab <at> web.de>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.3; wish: set init directory (.emacs.d) by commandline flag for easy
 custom environments
Date: Tue, 24 Dec 2013 16:46:41 +0100
This bug report will be sent to the Bug-GNU-Emacs mailing list
and the GNU bug tracker at debbugs.gnu.org.  Please check that
the From: line contains a valid email address.  After a delay of up
to one day, you should receive an acknowledgment at that address.

Please write in English if possible, as the Emacs maintainers
usually do not have translators for other languages.

Please describe exactly what actions triggered the bug, and
the precise symptoms of the bug.  If you can, give a recipe
starting from `emacs -Q':

Dear Emacs Hackers,

There are nowadays quite a few customized Emacs environments (like
prelude, emacs-for-python, elpy, and so forth), and testing them
quickly can be quite a challenge, because they need to be intergrated
with the local customizations.

To ease that, it would be nice, if I could simply set the directory to
use for my init with a commandline flag.

This would make it possible to specialize my local emacs in several
different ways - and to quickly show not-yet-emacs-users how emacs
would work for their task: 

    emacs --init-dir ~/emacs-init/python-ide # edit python

Best wishes and Happy Hacking Holiday! ☺
Arne


If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
For information about debugging Emacs, please read the file
/usr/share/emacs/24.3/etc/DEBUG.


In GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.8.2)
 of 2013-10-14 on fluss
Windowing system distributor `The X.Org Foundation', version 11.0.11403000
System Description:	Gentoo Base System release 2.2

Configured using:
 `configure '--prefix=/usr' '--build=x86_64-pc-linux-gnu'
 '--host=x86_64-pc-linux-gnu' '--mandir=/usr/share/man'
 '--infodir=/usr/share/info' '--datadir=/usr/share'
 '--sysconfdir=/etc' '--localstatedir=/var/lib' '--libdir=/usr/lib64'
 '--disable-silent-rules' '--disable-dependency-tracking'
 '--program-suffix=-emacs-24' '--infodir=/usr/share/info/emacs-24'
 '--enable-locallisppath=/etc/emacs:/usr/share/emacs/site-lisp'
 '--with-crt-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.1/../../../../lib64'
 '--with-gameuser=games' '--without-compress-info' '--without-hesiod'
 '--without-kerberos' '--without-kerberos5' '--with-gpm' '--with-dbus'
 '--with-gnutls' '--without-xml2' '--without-selinux'
 '--without-wide-int' '--with-sound' '--with-x' '--without-ns'
 '--without-gconf' '--without-gsettings' '--with-toolkit-scroll-bars'
 '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff'
 '--with-xpm' '--without-imagemagick' '--with-xft' '--with-libotf'
 '--with-m17n-flt' '--with-x-toolkit=gtk3'
 'GENTOO_PACKAGE=app-editors/emacs-24.3-r2'
 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-pc-linux-gnu'
 'CFLAGS=-march=native -O2 -pipe' 'LDFLAGS=-Wl,-O1 -Wl,--as-needed'
 'CPPFLAGS=''

Important settings:
  value of $LANG: de_DE.UTF-8
  locale-coding-system: utf-8
  default enable-multibyte-characters: t

Major mode: Folder

Minor modes in effect:
  global-auto-revert-mode: t
  global-ethan-wspace-mode: t
  real-global-auto-complete-mode: t
  nyan-mode: t
  global-rudel-minor-mode: t
  savehist-mode: t
  recentf-mode: t
  kde-default-keys-minor-mode: t
  shell-dirtrack-mode: t
  global-auto-complete-mode: t
  show-paren-mode: t
  display-time-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
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  global-visual-line-mode: t
  transient-mark-mode: t

Recent input:
l e a s e SPC o f SPC t h e SPC s o u r c e s SPC a 
l o n g s i d e SPC t h e SPC M-q p u b l i s h e d 
SPC f o r m M-q <C-left> <left> <backspace> <backspace> 
i n g <end> . <up> <up> <up> <C-right> <C-right> <C-backspace> 
b e SPC d e l i g h t e d SPC t o SPC s e e SPC i t 
M-d SPC u n d e r M-q <down> <down> <down> SPC <backspace> 
<up> <up> <up> <down> <down> <down> <up> <up> <C-right> 
<C-right> <C-right> <C-right> <C-right> <C-right> <down> 
<down> SPC <backspace> <backspace> , SPC b u t SPC 
a n y SPC l i c e n s e SPC i n f o r m a t i o n SPC 
i s SPC b e t t e r SPC t h a n SPC n o n e . M-q <down> 
<down> <up> <up> <up> <down> <down> <down> <down> <down> 
<return> b w <up> C-e SPC a n d SPC m a n y SPC t h 
a n k s SPC f o r SPC y o u r SPC A d v e n t u r e 
s ! <right> <down> <down> <up> <up> <up> <up> <up> 
<up> <up> <up> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> C-c C-c y M-x w l - t o 
g g <tab> <return> y M-x w l <return> y f i r n i a 
<kp-1> <kp-5> <kp-7> <return> <help-echo> <help-echo> 
<help-echo> <help-echo> <help-echo> <help-echo> <down-mouse-1> 
<mouse-1> <help-echo> M-x r e p o r t - e m a c s - 
b u <tab> <return>

Recent messages:
Blocking call to accept-process-output with quit inhibited!! [11 times]
Sending (1/1)...done
1 message(s) are sent.
Checking ".sent-mail"
Checking ".~/.local/share/mail/mgl_spam"
Checking ".~/.local/share/mail/to.arne_bab"
Checking "..gruppiert.directory/.inbox.directory/Freunde"
Checking ".drafts"
Checking ".outbox"
Checking "Desktop" is done

Load-path shadows:
~/.emacs.d/libs/bbdb-vcard/vcard hides ~/.emacs.d/libs/vcard
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-history hides /usr/share/emacs/site-lisp/emms/emms-history
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-browser hides /usr/share/emacs/site-lisp/emms/emms-browser
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-player-simple hides /usr/share/emacs/site-lisp/emms/emms-player-simple
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-i18n hides /usr/share/emacs/site-lisp/emms/emms-i18n
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-metaplaylist-mode hides /usr/share/emacs/site-lisp/emms/emms-metaplaylist-mode
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-player-xine hides /usr/share/emacs/site-lisp/emms/emms-player-xine
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-info-ogginfo hides /usr/share/emacs/site-lisp/emms/emms-info-ogginfo
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-score hides /usr/share/emacs/site-lisp/emms/emms-score
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-maint hides /usr/share/emacs/site-lisp/emms/emms-maint
/home/arne/.emacs.d/elpa/emms-20131016.1232/later-do hides /usr/share/emacs/site-lisp/emms/later-do
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-cache hides /usr/share/emacs/site-lisp/emms/emms-cache
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-playing-time hides /usr/share/emacs/site-lisp/emms/emms-playing-time
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-url hides /usr/share/emacs/site-lisp/emms/emms-url
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-stream-info hides /usr/share/emacs/site-lisp/emms/emms-stream-info
/home/arne/.emacs.d/elpa/emms-20131016.1232/jack hides /usr/share/emacs/site-lisp/emms/jack
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-playlist-mode hides /usr/share/emacs/site-lisp/emms/emms-playlist-mode
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-bookmarks hides /usr/share/emacs/site-lisp/emms/emms-bookmarks
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-player-mplayer hides /usr/share/emacs/site-lisp/emms/emms-player-mplayer
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-volume-amixer hides /usr/share/emacs/site-lisp/emms/emms-volume-amixer
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-mode-line-icon hides /usr/share/emacs/site-lisp/emms/emms-mode-line-icon
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-mode-line hides /usr/share/emacs/site-lisp/emms/emms-mode-line
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-player-mpg321-remote hides /usr/share/emacs/site-lisp/emms/emms-player-mpg321-remote
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-info hides /usr/share/emacs/site-lisp/emms/emms-info
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-source-file hides /usr/share/emacs/site-lisp/emms/emms-source-file
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-compat hides /usr/share/emacs/site-lisp/emms/emms-compat
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-source-playlist hides /usr/share/emacs/site-lisp/emms/emms-source-playlist
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-setup hides /usr/share/emacs/site-lisp/emms/emms-setup
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-info-libtag hides /usr/share/emacs/site-lisp/emms/emms-info-libtag
/home/arne/.emacs.d/elpa/emms-20131016.1232/tq hides /usr/share/emacs/site-lisp/emms/tq
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-tag-editor hides /usr/share/emacs/site-lisp/emms/emms-tag-editor
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-info-mp3info hides /usr/share/emacs/site-lisp/emms/emms-info-mp3info
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-last-played hides /usr/share/emacs/site-lisp/emms/emms-last-played
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-player-mpd hides /usr/share/emacs/site-lisp/emms/emms-player-mpd
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-volume hides /usr/share/emacs/site-lisp/emms/emms-volume
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-mark hides /usr/share/emacs/site-lisp/emms/emms-mark
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-playlist-sort hides /usr/share/emacs/site-lisp/emms/emms-playlist-sort
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-lyrics hides /usr/share/emacs/site-lisp/emms/emms-lyrics
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms hides /usr/share/emacs/site-lisp/emms/emms
/home/arne/.emacs.d/elpa/emms-20131016.1232/emms-streams hides /usr/share/emacs/site-lisp/emms/emms-streams
/usr/share/emacs/site-lisp/lua-mode/lua-mode hides /usr/share/emacs/site-lisp/monotone/lua-mode
/usr/share/emacs/site-lisp/mu/mu4e-actions hides /usr/share/emacs/site-lisp/mu4e/mu4e-actions
/usr/share/emacs/site-lisp/mu/mu4e-view hides /usr/share/emacs/site-lisp/mu4e/mu4e-view
/usr/share/emacs/site-lisp/mu/mu4e-proc hides /usr/share/emacs/site-lisp/mu4e/mu4e-proc
/usr/share/emacs/site-lisp/mu/mu4e hides /usr/share/emacs/site-lisp/mu4e/mu4e
/usr/share/emacs/site-lisp/mu/mu4e-vars hides /usr/share/emacs/site-lisp/mu4e/mu4e-vars
/usr/share/emacs/site-lisp/mu/mu4e-utils hides /usr/share/emacs/site-lisp/mu4e/mu4e-utils
/usr/share/emacs/site-lisp/mu/mu4e-about hides /usr/share/emacs/site-lisp/mu4e/mu4e-about
/usr/share/emacs/site-lisp/mu/org-mu4e hides /usr/share/emacs/site-lisp/mu4e/org-mu4e
/usr/share/emacs/site-lisp/mu/mu4e-compose hides /usr/share/emacs/site-lisp/mu4e/mu4e-compose
/usr/share/emacs/site-lisp/mu/mu4e-main hides /usr/share/emacs/site-lisp/mu4e/mu4e-main
/usr/share/emacs/site-lisp/mu/mu4e-headers hides /usr/share/emacs/site-lisp/mu4e/mu4e-headers
/usr/share/emacs/site-lisp/mu/mu4e-mark hides /usr/share/emacs/site-lisp/mu4e/mu4e-mark
/usr/share/emacs/site-lisp/mu/mu4e-message hides /usr/share/emacs/site-lisp/mu4e/mu4e-message
/usr/share/emacs/site-lisp/mu/mu4e-speedbar hides /usr/share/emacs/site-lisp/mu4e/mu4e-speedbar
/usr/share/emacs/site-lisp/mu/mu4e-meta hides /usr/share/emacs/site-lisp/mu4e/mu4e-meta
/usr/share/emacs/site-lisp/cedet/common/ezimage hides /usr/share/emacs/24.3/lisp/ezimage
/usr/share/emacs/site-lisp/flim/hex-util hides /usr/share/emacs/24.3/lisp/hex-util
/usr/share/emacs/site-lisp/cedet/speedbar/speedbar hides /usr/share/emacs/24.3/lisp/speedbar
/usr/share/emacs/site-lisp/cedet/speedbar/dframe hides /usr/share/emacs/24.3/lisp/dframe
/usr/share/emacs/site-lisp/cedet/speedbar/sb-image hides /usr/share/emacs/24.3/lisp/sb-image
/usr/share/emacs/site-lisp/flim/md4 hides /usr/share/emacs/24.3/lisp/md4
/usr/share/emacs/site-lisp/remember/remember hides /usr/share/emacs/24.3/lisp/textmodes/remember
/usr/share/emacs/site-lisp/org-mode/org-archive hides /usr/share/emacs/24.3/lisp/org/org-archive
/usr/share/emacs/site-lisp/org-mode/ob-clojure hides /usr/share/emacs/24.3/lisp/org/ob-clojure
/usr/share/emacs/site-lisp/org-mode/ob-awk hides /usr/share/emacs/24.3/lisp/org/ob-awk
/usr/share/emacs/site-lisp/org-mode/ob-ocaml hides /usr/share/emacs/24.3/lisp/org/ob-ocaml
/usr/share/emacs/site-lisp/org-mode/contrib/org-vm hides /usr/share/emacs/24.3/lisp/org/org-vm
/usr/share/emacs/site-lisp/org-mode/ob-matlab hides /usr/share/emacs/24.3/lisp/org/ob-matlab
/usr/share/emacs/site-lisp/org-mode/contrib/org-mew hides /usr/share/emacs/24.3/lisp/org/org-mew
/usr/share/emacs/site-lisp/org-mode/ob-screen hides /usr/share/emacs/24.3/lisp/org/ob-screen
/usr/share/emacs/site-lisp/org-mode/org-info hides /usr/share/emacs/24.3/lisp/org/org-info
/usr/share/emacs/site-lisp/org-mode/org-src hides /usr/share/emacs/24.3/lisp/org/org-src
/usr/share/emacs/site-lisp/org-mode/ob-sqlite hides /usr/share/emacs/24.3/lisp/org/ob-sqlite
/usr/share/emacs/site-lisp/org-mode/ob-lilypond hides /usr/share/emacs/24.3/lisp/org/ob-lilypond
/usr/share/emacs/site-lisp/org-mode/contrib/org-wl hides /usr/share/emacs/24.3/lisp/org/org-wl
/usr/share/emacs/site-lisp/org-mode/ob-scheme hides /usr/share/emacs/24.3/lisp/org/ob-scheme
/usr/share/emacs/site-lisp/org-mode/ob-tangle hides /usr/share/emacs/24.3/lisp/org/ob-tangle
/usr/share/emacs/site-lisp/org-mode/ob-latex hides /usr/share/emacs/24.3/lisp/org/ob-latex
/usr/share/emacs/site-lisp/org-mode/org-entities hides /usr/share/emacs/24.3/lisp/org/org-entities
/usr/share/emacs/site-lisp/org-mode/ob-C hides /usr/share/emacs/24.3/lisp/org/ob-C
/usr/share/emacs/site-lisp/org-mode/ob-fortran hides /usr/share/emacs/24.3/lisp/org/ob-fortran
/usr/share/emacs/site-lisp/org-mode/ob-shen hides /usr/share/emacs/24.3/lisp/org/ob-shen
/usr/share/emacs/site-lisp/org-mode/ob-css hides /usr/share/emacs/24.3/lisp/org/ob-css
/usr/share/emacs/site-lisp/org-mode/ob-octave hides /usr/share/emacs/24.3/lisp/org/ob-octave
/usr/share/emacs/site-lisp/org-mode/org-id hides /usr/share/emacs/24.3/lisp/org/org-id
/usr/share/emacs/site-lisp/org-mode/org-irc hides /usr/share/emacs/24.3/lisp/org/org-irc
/usr/share/emacs/site-lisp/org-mode/org-feed hides /usr/share/emacs/24.3/lisp/org/org-feed
/usr/share/emacs/site-lisp/org-mode/ob-gnuplot hides /usr/share/emacs/24.3/lisp/org/ob-gnuplot
/usr/share/emacs/site-lisp/org-mode/ob-asymptote hides /usr/share/emacs/24.3/lisp/org/ob-asymptote
/usr/share/emacs/site-lisp/org-mode/org-capture hides /usr/share/emacs/24.3/lisp/org/org-capture
/usr/share/emacs/site-lisp/org-mode/org-compat hides /usr/share/emacs/24.3/lisp/org/org-compat
/usr/share/emacs/site-lisp/org-mode/ob-emacs-lisp hides /usr/share/emacs/24.3/lisp/org/ob-emacs-lisp
/usr/share/emacs/site-lisp/org-mode/org-timer hides /usr/share/emacs/24.3/lisp/org/org-timer
/usr/share/emacs/site-lisp/org-mode/ob-plantuml hides /usr/share/emacs/24.3/lisp/org/ob-plantuml
/usr/share/emacs/site-lisp/org-mode/org-datetree hides /usr/share/emacs/24.3/lisp/org/org-datetree
/usr/share/emacs/site-lisp/org-mode/ob-ditaa hides /usr/share/emacs/24.3/lisp/org/ob-ditaa
/usr/share/emacs/site-lisp/org-mode/org-agenda hides /usr/share/emacs/24.3/lisp/org/org-agenda
/usr/share/emacs/site-lisp/org-mode/ob-comint hides /usr/share/emacs/24.3/lisp/org/ob-comint
/usr/share/emacs/site-lisp/org-mode/org-mobile hides /usr/share/emacs/24.3/lisp/org/org-mobile
/usr/share/emacs/site-lisp/org-mode/org hides /usr/share/emacs/24.3/lisp/org/org
/usr/share/emacs/site-lisp/org-mode/ob-sh hides /usr/share/emacs/24.3/lisp/org/ob-sh
/usr/share/emacs/site-lisp/org-mode/org-faces hides /usr/share/emacs/24.3/lisp/org/org-faces
/usr/share/emacs/site-lisp/org-mode/org-clock hides /usr/share/emacs/24.3/lisp/org/org-clock
/usr/share/emacs/site-lisp/org-mode/org-colview hides /usr/share/emacs/24.3/lisp/org/org-colview
/usr/share/emacs/site-lisp/org-mode/ob-io hides /usr/share/emacs/24.3/lisp/org/ob-io
/usr/share/emacs/site-lisp/org-mode/org-eshell hides /usr/share/emacs/24.3/lisp/org/org-eshell
/usr/share/emacs/site-lisp/org-mode/org-bbdb hides /usr/share/emacs/24.3/lisp/org/org-bbdb
/usr/share/emacs/site-lisp/org-mode/org-element hides /usr/share/emacs/24.3/lisp/org/org-element
/usr/share/emacs/site-lisp/org-mode/ob-perl hides /usr/share/emacs/24.3/lisp/org/ob-perl
/usr/share/emacs/site-lisp/org-mode/org-inlinetask hides /usr/share/emacs/24.3/lisp/org/org-inlinetask
/usr/share/emacs/site-lisp/org-mode/ob-haskell hides /usr/share/emacs/24.3/lisp/org/ob-haskell
/usr/share/emacs/site-lisp/org-mode/ob-eval hides /usr/share/emacs/24.3/lisp/org/ob-eval
/usr/share/emacs/site-lisp/org-mode/org-mouse hides /usr/share/emacs/24.3/lisp/org/org-mouse
/usr/share/emacs/site-lisp/org-mode/ob hides /usr/share/emacs/24.3/lisp/org/ob
/usr/share/emacs/site-lisp/org-mode/org-docview hides /usr/share/emacs/24.3/lisp/org/org-docview
/usr/share/emacs/site-lisp/org-mode/ob-dot hides /usr/share/emacs/24.3/lisp/org/ob-dot
/usr/share/emacs/site-lisp/org-mode/ob-calc hides /usr/share/emacs/24.3/lisp/org/ob-calc
/usr/share/emacs/site-lisp/org-mode/ob-python hides /usr/share/emacs/24.3/lisp/org/ob-python
/usr/share/emacs/site-lisp/org-mode/ob-java hides /usr/share/emacs/24.3/lisp/org/ob-java
/usr/share/emacs/site-lisp/org-mode/ob-lisp hides /usr/share/emacs/24.3/lisp/org/ob-lisp
/usr/share/emacs/site-lisp/org-mode/org-attach hides /usr/share/emacs/24.3/lisp/org/org-attach
/usr/share/emacs/site-lisp/org-mode/org-pcomplete hides /usr/share/emacs/24.3/lisp/org/org-pcomplete
/usr/share/emacs/site-lisp/org-mode/org-crypt hides /usr/share/emacs/24.3/lisp/org/org-crypt
/usr/share/emacs/site-lisp/org-mode/ob-org hides /usr/share/emacs/24.3/lisp/org/ob-org
/usr/share/emacs/site-lisp/org-mode/org-footnote hides /usr/share/emacs/24.3/lisp/org/org-footnote
/usr/share/emacs/site-lisp/org-mode/ob-R hides /usr/share/emacs/24.3/lisp/org/ob-R
/usr/share/emacs/site-lisp/org-mode/org-indent hides /usr/share/emacs/24.3/lisp/org/org-indent
/usr/share/emacs/site-lisp/org-mode/org-gnus hides /usr/share/emacs/24.3/lisp/org/org-gnus
/usr/share/emacs/site-lisp/org-mode/org-mhe hides /usr/share/emacs/24.3/lisp/org/org-mhe
/usr/share/emacs/site-lisp/org-mode/ob-sql hides /usr/share/emacs/24.3/lisp/org/ob-sql
/usr/share/emacs/site-lisp/org-mode/org-version hides /usr/share/emacs/24.3/lisp/org/org-version
/usr/share/emacs/site-lisp/org-mode/ob-ruby hides /usr/share/emacs/24.3/lisp/org/ob-ruby
/usr/share/emacs/site-lisp/org-mode/ob-maxima hides /usr/share/emacs/24.3/lisp/org/ob-maxima
/usr/share/emacs/site-lisp/org-mode/ob-sass hides /usr/share/emacs/24.3/lisp/org/ob-sass
/usr/share/emacs/site-lisp/org-mode/ob-exp hides /usr/share/emacs/24.3/lisp/org/ob-exp
/usr/share/emacs/site-lisp/org-mode/org-protocol hides /usr/share/emacs/24.3/lisp/org/org-protocol
/usr/share/emacs/site-lisp/org-mode/ob-picolisp hides /usr/share/emacs/24.3/lisp/org/ob-picolisp
/usr/share/emacs/site-lisp/org-mode/org-macs hides /usr/share/emacs/24.3/lisp/org/org-macs
/usr/share/emacs/site-lisp/org-mode/ob-ledger hides /usr/share/emacs/24.3/lisp/org/ob-ledger
/usr/share/emacs/site-lisp/org-mode/org-table hides /usr/share/emacs/24.3/lisp/org/org-table
/usr/share/emacs/site-lisp/org-mode/ob-keys hides /usr/share/emacs/24.3/lisp/org/ob-keys
/usr/share/emacs/site-lisp/org-mode/ob-lob hides /usr/share/emacs/24.3/lisp/org/ob-lob
/usr/share/emacs/site-lisp/org-mode/ob-table hides /usr/share/emacs/24.3/lisp/org/ob-table
/usr/share/emacs/site-lisp/org-mode/org-ctags hides /usr/share/emacs/24.3/lisp/org/org-ctags
/usr/share/emacs/site-lisp/org-mode/ob-js hides /usr/share/emacs/24.3/lisp/org/ob-js
/usr/share/emacs/site-lisp/org-mode/org-rmail hides /usr/share/emacs/24.3/lisp/org/org-rmail
/usr/share/emacs/site-lisp/org-mode/org-bibtex hides /usr/share/emacs/24.3/lisp/org/org-bibtex
/usr/share/emacs/site-lisp/org-mode/ob-scala hides /usr/share/emacs/24.3/lisp/org/ob-scala
/usr/share/emacs/site-lisp/org-mode/org-loaddefs hides /usr/share/emacs/24.3/lisp/org/org-loaddefs
/usr/share/emacs/site-lisp/org-mode/org-w3m hides /usr/share/emacs/24.3/lisp/org/org-w3m
/usr/share/emacs/site-lisp/org-mode/ob-mscgen hides /usr/share/emacs/24.3/lisp/org/ob-mscgen
/usr/share/emacs/site-lisp/org-mode/ob-ref hides /usr/share/emacs/24.3/lisp/org/ob-ref
/usr/share/emacs/site-lisp/org-mode/org-list hides /usr/share/emacs/24.3/lisp/org/org-list
/usr/share/emacs/site-lisp/org-mode/org-habit hides /usr/share/emacs/24.3/lisp/org/org-habit
/usr/share/emacs/site-lisp/org-mode/org-plot hides /usr/share/emacs/24.3/lisp/org/org-plot
/usr/share/emacs/site-lisp/org-mode/org-install hides /usr/share/emacs/24.3/lisp/org/org-install
/usr/share/emacs/site-lisp/flim/sasl-ntlm hides /usr/share/emacs/24.3/lisp/net/sasl-ntlm
/usr/share/emacs/site-lisp/flim/sasl-cram hides /usr/share/emacs/24.3/lisp/net/sasl-cram
/usr/share/emacs/site-lisp/flim/ntlm hides /usr/share/emacs/24.3/lisp/net/ntlm
/usr/share/emacs/site-lisp/flim/sasl hides /usr/share/emacs/24.3/lisp/net/sasl
/usr/share/emacs/site-lisp/flim/sasl-digest hides /usr/share/emacs/24.3/lisp/net/sasl-digest
/usr/share/emacs/site-lisp/flim/hmac-md5 hides /usr/share/emacs/24.3/lisp/net/hmac-md5
/usr/share/emacs/site-lisp/flim/hmac-def hides /usr/share/emacs/24.3/lisp/net/hmac-def
/usr/share/emacs/site-lisp/cjk-latex/thai-word hides /usr/share/emacs/24.3/lisp/language/thai-word
~/.emacs.d/private/gnus hides /usr/share/emacs/24.3/lisp/gnus/gnus
/usr/share/emacs/site-lisp/semi/smime hides /usr/share/emacs/24.3/lisp/gnus/smime
/usr/share/emacs/site-lisp/cedet/eieio/eieio-opt hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-opt
/usr/share/emacs/site-lisp/cedet/eieio/eieio-custom hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-custom
/usr/share/emacs/site-lisp/cedet/eieio/eieio-datadebug hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-datadebug
/usr/share/emacs/site-lisp/cedet/eieio/eieio hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio
/home/arne/.emacs.d/elpa/emms-20131016.1232/tq hides /usr/share/emacs/24.3/lisp/emacs-lisp/tq
/usr/share/emacs/site-lisp/cedet/eieio/eieio-speedbar hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-speedbar
/usr/share/emacs/site-lisp/cedet/eieio/eieio-base hides /usr/share/emacs/24.3/lisp/emacs-lisp/eieio-base
/usr/share/emacs/site-lisp/cedet/eieio/chart hides /usr/share/emacs/24.3/lisp/emacs-lisp/chart
/usr/share/emacs/site-lisp/cedet/common/pulse hides /usr/share/emacs/24.3/lisp/cedet/pulse
/usr/share/emacs/site-lisp/cedet/common/cedet-global hides /usr/share/emacs/24.3/lisp/cedet/cedet-global
/usr/share/emacs/site-lisp/cedet/srecode/srecode hides /usr/share/emacs/24.3/lisp/cedet/srecode
/usr/share/emacs/site-lisp/cedet/common/cedet-files hides /usr/share/emacs/24.3/lisp/cedet/cedet-files
/usr/share/emacs/site-lisp/cedet/common/data-debug hides /usr/share/emacs/24.3/lisp/cedet/data-debug
/usr/share/emacs/site-lisp/cedet/common/cedet-idutils hides /usr/share/emacs/24.3/lisp/cedet/cedet-idutils
/usr/share/emacs/site-lisp/cedet/ede/ede hides /usr/share/emacs/24.3/lisp/cedet/ede
/usr/share/emacs/site-lisp/cedet/common/mode-local hides /usr/share/emacs/24.3/lisp/cedet/mode-local
/usr/share/emacs/site-lisp/cedet/common/cedet hides /usr/share/emacs/24.3/lisp/cedet/cedet
/usr/share/emacs/site-lisp/cedet/semantic/semantic hides /usr/share/emacs/24.3/lisp/cedet/semantic
/usr/share/emacs/site-lisp/cedet/common/cedet-cscope hides /usr/share/emacs/24.3/lisp/cedet/cedet-cscope
/usr/share/emacs/site-lisp/cedet/common/inversion hides /usr/share/emacs/24.3/lisp/cedet/inversion
/usr/share/emacs/site-lisp/semi/pgg-pgp5 hides /usr/share/emacs/24.3/lisp/obsolete/pgg-pgp5
/usr/share/emacs/site-lisp/semi/pgg-parse hides /usr/share/emacs/24.3/lisp/obsolete/pgg-parse
/usr/share/emacs/site-lisp/semi/pgg-pgp hides /usr/share/emacs/24.3/lisp/obsolete/pgg-pgp
/usr/share/emacs/site-lisp/semi/pgg-gpg hides /usr/share/emacs/24.3/lisp/obsolete/pgg-gpg
/usr/share/emacs/site-lisp/semi/pgg-def hides /usr/share/emacs/24.3/lisp/obsolete/pgg-def
/usr/share/emacs/site-lisp/semi/pgg hides /usr/share/emacs/24.3/lisp/obsolete/pgg
/usr/share/emacs/24.3/lisp/gnus/utf7 hides /home/arne/.emacs.d/libs/wanderlust/elmo/utf7
/usr/share/emacs/24.3/lisp/mail/rfc2368 hides /home/arne/.emacs.d/libs/wanderlust/utils/rfc2368

Features:
(shadow emacsbug elmo-dop smtp sasl sasl-anonymous sasl-login
sasl-plain mel-q-ccl wl-mime mime-play filename mime-edit pgg-parse
pccl pccl-20 pgg-def signature modb-standard elmo-maildir elmo-map
markdown-mode tabify reftex-parse autorevert reftex-dcr reftex-auc
outline-magic org-rmail org-mhe org-irc org-info org-gnus org-docview
org-bibtex org-bbdb org-w3m org-capture cus-edit server semantic-el
semantic-bovine bovine-debug semantic-debug ispell activate-babenv
eimp font-lock-tm5rc generic activate-wanderlust bbdb-wl bbdb-hooks
mailcrypt wl-demo wl-draft eword-encode wl-template wl-news wl-address
wl-thread wl-action wl-summary wl-refile wl-message elmo-mime
mmelmo-buffer mmelmo-imap mime-view mime-conf calist mmimap mime-parse
mmbuffer mmgeneric wl-highlight elmo-multi wl-folder wl wl-e21 wl-util
elmo-flag elmo-localdir wl-vars wl-version elmo elmo-signal elmo-msgdb
modb modb-generic modb-entity mime elmo-util emu invisible inv-23 poem
poem-e20 poem-e20_3 utf7 eword-decode mel mime-def std11 mcharset
mcs-20 mcs-e20 pces pces-e20 pces-20 broken pcustom elmo-date
elmo-vars elmo-version luna activate-private-data private-basic
private-publish private-wanderlust w3m-search w3m w3m-hist w3m-fb
bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc
w3m-util apps bbdb-timed-notes bbdb-phone-book kanban fortran-tools
activate-python pydoc-info info-look sb-info info python-magic python
rx stenochords activate-kde-default-keybindings activate-darkroom wc
activate-identica identica-mode xml activate-german-spelling
activate-ethan-wspace ethan-wspace popup-kill-ring pos-tip
activate-auto-complete auto-complete-config activate-markdown
activate-latex-ide flymake compile namespace rainbow-delimiters ebib
bibtex xub-mode org-location-google-maps google-maps
google-maps-static google-maps-geocode google-maps-base json nyan-mode
semantic-m3 semantic-analyze-refs cedet-m3 semantic-mru-bookmark
semanticdb-mode semantic-idle eldoc senator which-func semantic-imenu
semantic-sb imenu ox-beamer org-latex org-export-latex org-beamer
org-exp org-exp-blocks org-agenda footnote ox-md ox-texinfo ox-rss
ox-latex ox-icalendar ox-html ox-ascii ox-publish ox org-element
activate-emms emms-cache emms-info-ogginfo emms-info-mp3info emms-info
later-do emms-playlist-mode emms-player-vlc emms-player-mplayer
emms-player-simple emms-source-playlist emms-source-file emms-setup
emms emms-compat htmlize typing rudel-mode rudel-display rudel
rudel-icons rudel-interactive rudel-compat rudel-hooks rudel-operators
rudel-overlay rudel-operations rudel-session-initiation rudel-util
rudel-errors rudel-loaddefs rudel-backend journal
org-custom-link-completion reftex reftex-vars reftex-cite
activate-quick-note remember-bbdb remember bbdb-vcard bbdb-com vcard
rainbow-text thingatpt babcore legalese savehist recentf tree-widget
epa-file fic-ext-mode key-chord control-lock goto-chg ob-sh shell
ob-scheme ob-python ob-org ob-gnuplot ob-dot ob-ditaa ob-R ob-C
cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align
cc-engine cc-vars cc-defs org org-macro org-footnote org-pcomplete
pcomplete org-list org-faces org-entities noutline outline easy-mmode
org-version ob-emacs-lisp ob ob-tangle org-src ob-ref ob-lob ob-table
ob-keys ob-exp ob-comint ob-core ob-eval org-compat org-macs
org-loaddefs cal-menu calendar cal-loaddefs allout cups printing
ps-print ps-def lpr ido auto-complete edmacro kmacro popup
flymake-cursor finder-inf melpa parse-time network-stream starttls
url-http tls url-gw url-cache url-auth url url-proxy url-privacy
url-expand url-methods url-history url-cookie url-domsuf url-util
url-parse url-vars mailcap ahg-autoloads deft-autoloads
emms-mark-ext-autoloads emms-autoloads f90-interface-browser-autoloads
legalese-autoloads melpa-autoloads rainbow-mode-autoloads
svg-clock-autoloads wisp-mode-autoloads clojure-mode-autoloads package
activate-base vc-hg bookmark pp saveplace uniquify paren time
cus-start cus-load site-gentoo mu4e mu4e-speedbar mu4e-main mu4e-view
epa epg epg-config browse-url comint ansi-color ring longlines
mu4e-headers mu4e-compose mu4e-actions rfc2368 smtpmail auth-source
gnus-util password-cache sendmail mu4e-mark mu4e-message html2text
mu4e-proc mu4e-utils doc-view jka-compr image-mode dired mu4e-about
mu4e-vars message idna format-spec rfc822 mml mml-sec mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader hl-line
mu4e-meta jde-autoload w3m-load ecb-autoloads mime-setup
mail-mime-setup alist semi-setup path-util poe pym static apel-ver
product semi-def preview-latex emms-auto cedet cedet-contrib-load
contrib-loaddefs cogre-load cogre-loaddefs speedbar-load
speedbar-loaddefs ede-load ede-loaddefs ede-speedbar ede-files ede
ede-base ede-auto eieio-speedbar semantic-ia-sb semantic-analyze
semantic-scope semantic-analyze-fcn semantic-sort semanticdb-javap
cedet-java semanticdb-el semanticdb-ref semantic-find semanticdb
semantic-ctxt semantic-format semantic-util-modes semantic-util
semantic semantic-lex semantic-tag-ls semantic-tag working fame
speedbar sb-image ezimage dframe easymenu time-date assoc eieio-custom
wid-edit ede-source eieio-base srecode-load srecode srecode-loaddefs
semantic-load semantic-fw semantic-loaddefs mode-local find-func
derived eieio-load eieio-loaddefs cedet-load cedet-compat
cedet-loaddefs eieio warnings advice help-fns advice-preload byte-opt
bytecomp byte-compile cconv cl-macs gv cl cl-lib inversion
bbdb-autoloads bbdb timezone tex-site auto-loads 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 font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 15 Aug 2019 02:14:01 GMT) Full text and rfc822 format available.

Message #8 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Arne Babenhauserheide <arne_bab <at> web.de>
Cc: 16242 <at> debbugs.gnu.org
Subject: Re: bug#16242: 24.3; wish: set init directory (.emacs.d) by
 commandline flag for easy custom environments
Date: Wed, 14 Aug 2019 19:12:57 -0700
Arne Babenhauserheide <arne_bab <at> web.de> writes:

> There are nowadays quite a few customized Emacs environments (like
> prelude, emacs-for-python, elpy, and so forth), and testing them
> quickly can be quite a challenge, because they need to be intergrated
> with the local customizations.
>
> To ease that, it would be nice, if I could simply set the directory to
> use for my init with a commandline flag.
>
> This would make it possible to specialize my local emacs in several
> different ways - and to quickly show not-yet-emacs-users how emacs
> would work for their task: 
>
>     emacs --init-dir ~/emacs-init/python-ide # edit python

(I'm going through old bug reports that have unfortunately gotten no
responses yet.)

I think this sounds like a reasonable request, and I was surprised that
this doesn't exist yet.

You can achieve something like this with, for instance,

HOME=/tmp/foo emacs ...

or with --eval, but neither seem very logical.

Does anybody object to adding an --init-dir switch?  It would just
basically set `user-emacs-directory'.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 15 Aug 2019 04:19:02 GMT) Full text and rfc822 format available.

Message #11 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Arne Babenhauserheide <arne_bab <at> web.de>, 16242 <at> debbugs.gnu.org
Subject: Re: bug#16242: 24.3;
 wish: set init directory (.emacs.d) by commandline flag for easy
 custom environments
Date: Thu, 15 Aug 2019 00:18:02 -0400
Lars Ingebrigtsen wrote:

> Does anybody object to adding an --init-dir switch?  It would just
> basically set `user-emacs-directory'.

See https://debbugs.gnu.org/15539




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 15 Aug 2019 04:34:02 GMT) Full text and rfc822 format available.

Message #14 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Glenn Morris <rgm <at> gnu.org>
Cc: Arne Babenhauserheide <arne_bab <at> web.de>, 16242 <at> debbugs.gnu.org
Subject: Re: bug#16242: 24.3; wish: set init directory (.emacs.d) by
 commandline flag for easy custom environments
Date: Wed, 14 Aug 2019 21:33:09 -0700
Glenn Morris <rgm <at> gnu.org> writes:

> Lars Ingebrigtsen wrote:
>
>> Does anybody object to adding an --init-dir switch?  It would just
>> basically set `user-emacs-directory'.
>
> See https://debbugs.gnu.org/15539

I see.  So the general consensus there seemed to be that this could add
some possible maintenance complexity, and that there wasn't really a use
case presented.

This report does add a use case.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 15 Aug 2019 14:30:02 GMT) Full text and rfc822 format available.

Message #17 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Glenn Morris <rgm <at> gnu.org>, Arne Babenhauserheide <arne_bab <at> web.de>,
 16242 <at> debbugs.gnu.org
Subject: Re: bug#16242: 24.3;
 wish: set init directory (.emacs.d) by commandline flag for easy
 custom environments
Date: Thu, 15 Aug 2019 10:29:26 -0400
>>> Does anybody object to adding an --init-dir switch?  It would just
>>> basically set `user-emacs-directory'.
>>
>> See https://debbugs.gnu.org/15539
>
> I see.  So the general consensus there seemed to be that this could add
> some possible maintenance complexity, and that there wasn't really a use
> case presented.
>
> This report does add a use case.

Furthermore, we're currently looking at setting user-emacs-directory
according to XDG in master ([1] or [2]), so I think we've accepted the
maintenance complexity this might bring anyway.

[1]: https://lists.gnu.org/archive/html/emacs-devel/2019-06/msg00154.html
[2]: https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00699.html






Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 15 Aug 2019 14:46:01 GMT) Full text and rfc822 format available.

Message #20 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: rgm <at> gnu.org, arne_bab <at> web.de, 16242 <at> debbugs.gnu.org
Subject: Re: bug#16242: 24.3;
 wish: set init directory (.emacs.d) by commandline flag for easy
 custom environments
Date: Thu, 15 Aug 2019 17:44:48 +0300
> From: Lars Ingebrigtsen <larsi <at> gnus.org>
> Date: Wed, 14 Aug 2019 21:33:09 -0700
> Cc: Arne Babenhauserheide <arne_bab <at> web.de>, 16242 <at> debbugs.gnu.org
> 
> > See https://debbugs.gnu.org/15539
> 
> I see.  So the general consensus there seemed to be that this could add
> some possible maintenance complexity, and that there wasn't really a use
> case presented.
> 
> This report does add a use case.

The XDG support has been added meanwhile, btw.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 15 Aug 2019 23:14:02 GMT) Full text and rfc822 format available.

Message #23 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Noam Postavsky <npostavs <at> gmail.com>
Cc: Glenn Morris <rgm <at> gnu.org>, Arne Babenhauserheide <arne_bab <at> web.de>,
 16242 <at> debbugs.gnu.org
Subject: Re: bug#16242: 24.3; wish: set init directory (.emacs.d) by
 commandline flag for easy custom environments
Date: Thu, 15 Aug 2019 16:13:42 -0700
Noam Postavsky <npostavs <at> gmail.com> writes:

> Furthermore, we're currently looking at setting user-emacs-directory
> according to XDG in master ([1] or [2]), so I think we've accepted the
> maintenance complexity this might bring anyway.
>
> [1]: https://lists.gnu.org/archive/html/emacs-devel/2019-06/msg00154.html
> [2]: https://lists.gnu.org/archive/html/emacs-devel/2019-07/msg00699.html

Ah, I see.  So I think the XDG patch should go in first, and then adding
--init-dir should be pretty trivial.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Wed, 26 Jan 2022 16:45:01 GMT) Full text and rfc822 format available.

Message #26 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Noam Postavsky <npostavs <at> gmail.com>
Cc: Glenn Morris <rgm <at> gnu.org>, Arne Babenhauserheide <arne_bab <at> web.de>,
 16242 <at> debbugs.gnu.org, Andrea Corallo <akrl <at> sdf.org>
Subject: Re: bug#16242: 24.3; wish: set init directory (.emacs.d) by
 commandline flag for easy custom environments
Date: Wed, 26 Jan 2022 17:44:17 +0100
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Ah, I see.  So I think the XDG patch should go in first, and then adding
> --init-dir should be pretty trivial.

Below is a stab at this, and it seems to work fine -- except that after
starting Emacs with --init-directory /tmp/, the async nativecomp never
fires.   I poked at it for half an hour, but was unable to determine
why.

Andrea, do you see something obvious here that would disable nativecomp
if user-emacs-directory isn't the default?

diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi
index 5c444fc648..da9947ece3 100644
--- a/doc/emacs/cmdargs.texi
+++ b/doc/emacs/cmdargs.texi
@@ -329,6 +329,10 @@ Initial Options
 Do not include the @file{site-lisp} directories in @code{load-path}
 (@pxref{Init File}).  The @samp{-Q} option does this too.
 
+@item --init-directory
+@opindex --init-directory
+Specify the directory to use when looking for the Emacs init file.
+
 @item --no-splash
 @opindex --no-splash
 @cindex splash screen
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index 3750abc4e8..25a2b9e2e4 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -363,6 +363,9 @@ Startup Summary
 @itemx -Q
 Equivalent to @samp{-q --no-site-file --no-splash}.
 @c and --no-site-lisp, but let's not mention that here.
+
+@item --init-directory
+Specify the directory to use when finding the Emacs init file.
 @end table
 
 
diff --git a/lisp/startup.el b/lisp/startup.el
index d90e7a7d26..41749848a4 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -550,26 +550,6 @@ normal-top-level
     (setq user-emacs-directory
 	  (startup--xdg-or-homedot startup--xdg-config-home-emacs nil))
 
-    (when (featurep 'native-compile)
-      ;; Form `native-comp-eln-load-path'.
-      (let ((path-env (getenv "EMACSNATIVELOADPATH")))
-        (when path-env
-          (dolist (path (split-string path-env path-separator))
-            (unless (string= "" path)
-              (push path native-comp-eln-load-path)))))
-      (push (expand-file-name "eln-cache/" user-emacs-directory)
-            native-comp-eln-load-path)
-      ;; When $HOME is set to '/nonexistent' means we are running the
-      ;; testsuite, add a temporary folder in front to produce there
-      ;; new compilations.
-      (when (and (equal (getenv "HOME") "/nonexistent")
-                 ;; We may be running in a chroot environment where we
-                 ;; can't write anything.
-                 (file-writable-p (expand-file-name
-                                   (or temporary-file-directory ""))))
-        (let ((tmp-dir (make-temp-file "emacs-testsuite-" t)))
-          (add-hook 'kill-emacs-hook (lambda () (delete-directory tmp-dir t)))
-          (push tmp-dir native-comp-eln-load-path))))
     ;; Look in each dir in load-path for a subdirs.el file.  If we
     ;; find one, load it, which will add the appropriate subdirs of
     ;; that dir into load-path.  This needs to be done before setting
@@ -781,6 +761,30 @@ normal-top-level
 	    (font-menu-add-default))
 	(unless inhibit-startup-hooks
 	  (run-hooks 'window-setup-hook))))
+
+    ;; Do this after `command-line', since it may alter
+    ;; `user-emacs-directory'.
+    (when (featurep 'native-compile)
+      ;; Form `native-comp-eln-load-path'.
+      (let ((path-env (getenv "EMACSNATIVELOADPATH")))
+        (when path-env
+          (dolist (path (split-string path-env path-separator))
+            (unless (string= "" path)
+              (push path native-comp-eln-load-path)))))
+      (push (expand-file-name "eln-cache/" user-emacs-directory)
+            native-comp-eln-load-path)
+      ;; When $HOME is set to '/nonexistent' means we are running the
+      ;; testsuite, add a temporary folder in front to produce there
+      ;; new compilations.
+      (when (and (equal (getenv "HOME") "/nonexistent")
+                 ;; We may be running in a chroot environment where we
+                 ;; can't write anything.
+                 (file-writable-p (expand-file-name
+                                   (or temporary-file-directory ""))))
+        (let ((tmp-dir (make-temp-file "emacs-testsuite-" t)))
+          (add-hook 'kill-emacs-hook (lambda () (delete-directory tmp-dir t)))
+          (push tmp-dir native-comp-eln-load-path))))
+
     ;; Subprocesses of Emacs do not have direct access to the terminal, so
     ;; unless told otherwise they should only assume a dumb terminal.
     ;; We are careful to do it late (after term-setup-hook), although the
@@ -1145,7 +1149,8 @@ command-line
                          ("--no-x-resources") ("--debug-init")
                          ("--user") ("--iconic") ("--icon-type") ("--quick")
 			 ("--no-blinking-cursor") ("--basic-display")
-                         ("--dump-file") ("--temacs") ("--seccomp")))
+                         ("--dump-file") ("--temacs") ("--seccomp")
+                         ("--init-directory")))
              (argi (pop args))
              (orig-argi argi)
              argval)
@@ -1185,6 +1190,9 @@ command-line
 	  (push '(vertical-scroll-bars . nil) initial-frame-alist))
 	 ((member argi '("-q" "-no-init-file"))
 	  (setq init-file-user nil))
+	 ((member argi '("-init-directory"))
+	  (setq user-emacs-directory (or argval (pop args))
+                argval nil))
 	 ((member argi '("-u" "-user"))
 	  (setq init-file-user (or argval (pop args))
 		argval nil))
@@ -1261,7 +1269,8 @@ command-line
 		(and (eq xdg-dir user-emacs-directory)
 		     (not (eq xdg-dir startup--xdg-config-default))))
 	    user-emacs-directory
-	  ;; The name is not obvious, so access more directories to calculate it.
+	  ;; The name is not obvious, so access more directories
+	  ;; to calculate it.
 	  (setq xdg-dir (concat "~" init-file-user "/.config/emacs/"))
 	  (startup--xdg-or-homedot xdg-dir init-file-user)))
 
diff --git a/src/emacs.c b/src/emacs.c
index f6e2c01ee7..2014e97fbf 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -2472,6 +2472,7 @@ main (int argc, char **argv)
   { "-quick", 0, 55, 0 },
   { "-q", "--no-init-file", 50, 0 },
   { "-no-init-file", 0, 50, 0 },
+  { "-init-directory", "--init-directory", 30, 1 },
   { "-no-x-resources", "--no-x-resources", 40, 0 },
   { "-no-site-file", "--no-site-file", 40, 0 },
   { "-u", "--user", 30, 1 },


-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Wed, 26 Jan 2022 16:45:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 27 Jan 2022 10:21:01 GMT) Full text and rfc822 format available.

Message #31 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Andrea Corallo <akrl <at> sdf.org>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Glenn Morris <rgm <at> gnu.org>, Arne Babenhauserheide <arne_bab <at> web.de>,
 16242 <at> debbugs.gnu.org, Noam Postavsky <npostavs <at> gmail.com>
Subject: Re: bug#16242: 24.3; wish: set init directory (.emacs.d) by
 commandline flag for easy custom environments
Date: Thu, 27 Jan 2022 10:20:28 +0000
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> Lars Ingebrigtsen <larsi <at> gnus.org> writes:
>
>> Ah, I see.  So I think the XDG patch should go in first, and then adding
>> --init-dir should be pretty trivial.
>
> Below is a stab at this, and it seems to work fine -- except that after
> starting Emacs with --init-directory /tmp/, the async nativecomp never
> fires.   I poked at it for half an hour, but was unable to determine
> why.
>
> Andrea, do you see something obvious here that would disable nativecomp
> if user-emacs-directory isn't the default?

Hi Lars,

I don't see anything any obvious here.  Well to be honest I don't find
many obvious things in our startup in general :)

I can only imagine that Emacs is not finding the source to compile from,
in that case we should get warnings, do you find trace of these?

BR

  Andrea




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 27 Jan 2022 15:59:01 GMT) Full text and rfc822 format available.

Message #34 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Andrea Corallo <akrl <at> sdf.org>
Cc: Glenn Morris <rgm <at> gnu.org>, Arne Babenhauserheide <arne_bab <at> web.de>,
 16242 <at> debbugs.gnu.org, Noam Postavsky <npostavs <at> gmail.com>
Subject: Re: bug#16242: 24.3; wish: set init directory (.emacs.d) by
 commandline flag for easy custom environments
Date: Thu, 27 Jan 2022 16:58:21 +0100
Andrea Corallo <akrl <at> sdf.org> writes:

> I don't see anything any obvious here.  Well to be honest I don't find
> many obvious things in our startup in general :)
>
> I can only imagine that Emacs is not finding the source to compile from,
> in that case we should get warnings, do you find trace of these?

I think I may have found what I did wrong in setting up the eln
directory, but currently the build doesn't work well with nativecomp
even without my changes -- require complaints about require loading
itself recursively, or something.  (I think there's a separate bug
report about that...)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 27 Jan 2022 22:37:02 GMT) Full text and rfc822 format available.

Message #37 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Andrea Corallo <akrl <at> sdf.org>
Cc: Glenn Morris <rgm <at> gnu.org>, Arne Babenhauserheide <arne_bab <at> web.de>,
 16242 <at> debbugs.gnu.org, Noam Postavsky <npostavs <at> gmail.com>
Subject: Re: bug#16242: 24.3; wish: set init directory (.emacs.d) by
 commandline flag for easy custom environments
Date: Thu, 27 Jan 2022 23:36:14 +0100
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> I think I may have found what I did wrong in setting up the eln
> directory, but currently the build doesn't work well with nativecomp
> even without my changes -- require complaints about require loading
> itself recursively, or something.  (I think there's a separate bug
> report about that...)

Yup, with your recent changes everything works fine, and nativecomp
works find with the new --init-dir switch.  So I'm pushing this to Emacs
29.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




bug marked as fixed in version 29.1, send any further explanations to 16242 <at> debbugs.gnu.org and arne_bab <at> web.de Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Thu, 27 Jan 2022 22:39:02 GMT) Full text and rfc822 format available.

Forcibly Merged 15539 16242. Request was from Glenn Morris <rgm <at> fencepost.gnu.org> to control <at> debbugs.gnu.org. (Thu, 27 Jan 2022 23:26:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16242; Package emacs. (Thu, 27 Jan 2022 23:31:02 GMT) Full text and rfc822 format available.

Message #44 received at 16242 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: 16242 <at> debbugs.gnu.org
Subject: Re: bug#16242: 24.3;
 wish: set init directory (.emacs.d) by commandline flag for easy
 custom environments
Date: Thu, 27 Jan 2022 18:30:05 -0500
Strange how the same request (with patch) was closed wontfix in #15539,
but now it sails through...




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 25 Feb 2022 12:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 263 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.