From: "Jonas Großekathöfer via Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
To: 73728@debbugs.gnu.org
Subject: bug#73728: 29.3; Specifing an --alternate-editor for emacscleintw.exe with custom --init-directory does not work on Windows
Date: Thu, 10 Oct 2024 08:56:43 +0200 [thread overview]
Message-ID: <7272c84ccb6bc7c39cb5b5cb1af4927f@purelymail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 9090 bytes --]
Hi all,
I want emacsclientw.exe to start up an emacs daemon with a custom
--init-directory in case no server is running. For that case, I think, I
need to explicitly set the value for the "--alternate-editor"-flag to
something like:
-a "%UserProfile%\bin\emacs-29.3\bin\runemacs.exe --init-directory
%APPDATA%\Dotfiles\emacs\.emacs.d\"
However, doing so results in the following error: "file name or argument
required". This is also true when specifing a relative path (i.e.
AppData\Dotfiles\emacs\.emacs.d\).
After some more trials with single and/or double qoutes (details see
below), I got the impression that this behavior is unlikely intentional.
And I am somewhat confident, that more then one oy my many attempts
should've been successful. (Note that I raised this issue first here:
https://emacs.stackexchange.com/a/82355/30098)
For completeness, the full comand ("Target") I am trying to run is:
%UserProfile%\bin\emacs-29.3\bin\emacsclientw.exe -a
'%UserProfile%\bin\emacs-29.3\bin\runemacs.exe --init-directory
"AppData\Dotfiles\emacs\.emacs.d\"' -n -c --server-file
%APPDATA%\Dotfiles\emacs\.emacs.d\server\server
that command starts in
%UserProfile%
ATM, I have as a work around a shortcut to emacscleintw.exe without an
-a flag. Before using it, I once have to run:
%UserProfile%\bin\emacs-29.3\bin\runemacs.exe --daemon
----init-directory %APPDATA%\Dotfiles\emacs\.emacs.d\
Obviously, I would rather have to have it all in one place.
And here are the Details, regarding the use of quotes with or without
relative path for --init-directory:
For the several options using quotes, I got the following problems,
depending on whether I put single or double quoutes for the whole
argument or just the path:
Double quotes around the argmument and single quotes for the path, using
the full path:
-a "%UserProfile%\bin\emacs-29.3\bin\runemacs.exe --init-directory
'%APPDATA%\Dotfiles\emacs\.emacs.d\'"
--> Warning: "Warning (initialization): Unable to create
`user-emacs-directory'
(c:/Users/gross20/'C:/Users/gross20/AppData/Roaming/Dotfiles/emacs/.emacs.d/'/)."
Single quotes around the argmument and double quotes for the path, using
the full path:
-a '%UserProfile%\bin\emacs-29.3\bin\runemacs.exe --init-directory
"%APPDATA%\Dotfiles\emacs\.emacs.d\"'
--> Error: Try --help for more information
Double quotes around the argmument and single quotes for the path, using
a relative path:
-a "%UserProfile%\bin\emacs-29.3\bin\runemacs.exe --init-directory
'AppData\Roaming\Dotfiles\emacs\.emacs.d\'"
--> Strarts without errors or warning, but the user-emacs-directory is
"c:/Users/XXX/'AppData/Roaming/Dotfiles/emacs/.emacs.d/'/" (Note the
single quote in the folder name for AppData)
Single quotes around the argmument and single quotes for the path, using
a relative path:
-a '%UserProfile%\bin\emacs-29.3\bin\runemacs.exe --init-directory
"AppData\Dotfiles\emacs\.emacs.d\"'
--> Error: Try --help for more information
And one additional observation: From my many attempts, related or not, I
also got the impression, that I am closer to what I want ommiting the
--daemon flag within the argument for the -a flag. However, I need it
when linking to runemacs.exe directly.
This is my first bug report to this mailing list, hope it contributes a
tiny tiny bit. (:
Best
Jonas
In GNU Emacs 29.3 (build 2, x86_64-w64-mingw32) of 2024-03-24 built on
AVALON
Windowing system distributor 'Microsoft Corp.', version 10.0.19045
System Description: Microsoft Windows 10 Enterprise
(v10.0.2009.19045.4894)
Configured using:
'configure --with-modules --without-dbus --with-native-compilation=aot
--without-compress-install --with-sqlite3 --with-tree-sitter
CFLAGS=-O2'
Configured features:
ACL GIF GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY W32NOTIFY PDUMPER PNG RSVG SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XPM ZLIB
(NATIVE_COMP present but libgccjit not available)
Important settings:
value of $LANG: DEU
locale-coding-system: cp1252
Major mode: Org-Agenda Week Ddl Grid
Minor modes in effect:
hl-line-mode: t
server-mode: t
consult-notes-org-headings-mode: t
consult-notes-denote-mode: t
denote-menu-bar-mode: t
eat-eshell-mode: t
shell-dirtrack-mode: t
vertico-mode: t
savehist-mode: t
winner-mode: t
save-place-mode: t
global-auto-revert-mode: t
recentf-mode: t
windmove-mode: t
tooltip-mode: t
global-eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
blink-cursor-mode: t
buffer-read-only: t
line-number-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
Load-path shadows:
c:/Users/XXX/Dotfiles/emacs/.emacs.d/elpa/transient-0.7.4/transient
hides c:/Users/gross20/bin/emacs-29.3/share/emacs/29.3/lisp/transient
Features:
(shadow sort mail-extr emacsbug mule-util cal-move crm time-stamp tabify
org-datetree org-capture timezone misearch multi-isearch cursor-sensor
hl-line org-duration diary-lib diary-loaddefs cal-iso vc-git diff-mode
easy-mmode vc-dispatcher org-indent oc-basic ol-eww eww url-queue
thingatpt mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect
gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr
pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start
gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo
parse-time gnus-spec gnus-int gnus-range message sendmail yank-media
puny rfc822 mml mml-sec epa derived epg rfc6068 epg-config mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mailabbrev gmm-utils mailheader gnus-win gnus nnheader gnus-util
mail-utils range mm-util mail-prsvr ol-docview doc-view jka-compr
image-mode exif ol-bibtex bibtex iso8601 ol-bbdb ol-w3m ol-doi
org-link-doi cl-extra help-mode face-remap org-agenda org-element
org-persist xdg avl-tree server consult-notes-denote
consult-notes-org-headings consult-notes consult-org consult denote
dired dired-loaddefs xref project org-bookmark-heading bookmark pp
mode-local ob-shell ob-R org-attach org-id org-refile org-tempo org ob
ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint
org-pcomplete org-list org-footnote org-faces org-entities time-date
noutline outline icons ob-emacs-lisp ob-core ob-eval org-cycle org-table
ol rx org-fold org-fold-core org-keys oc org-loaddefs find-func cal-menu
calendar cal-loaddefs org-compat tempo org-version org-macs format-spec
esh-var esh-mode esh-cmd generator esh-ext esh-opt esh-proc esh-io
esh-arg esh-module esh-groups esh-util files-x eat term ehelp shell
pcomplete color orderless vertico-directory vertico wgrep grep compile
text-property-search comint ansi-osc ansi-color savehist winner ring
saveplace autorevert filenotify recentf tree-widget wid-edit windmove
modus-operandi-theme modus-themes no-littering compat compat-30
finder-inf consult-notes-autoloads consult-recoll-autoloads
consult-autoloads denote-autoloads eat-autoloads elpa-mirror-autoloads
ess-autoloads magit-autoloads pcase git-commit-autoloads
magit-section-autoloads dash-autoloads no-littering-autoloads
orderless-autoloads org-bookmark-heading-autoloads quelpa-autoloads
s-autoloads transient-autoloads vertico-autoloads wgrep-autoloads
with-editor-autoloads info compat-autoloads package browse-url url
url-proxy url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x
map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc
iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel dos-w32 ls-lisp disp-table
term/w32-win w32-win w32-vars term/common-win tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu
timer select scroll-bar mouse jit-lock font-lock syntax font-core
term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads w32notify w32 lcms2 multi-tty
make-network-process native-compile emacs)
Memory information:
((conses 16 1381967 381324)
(symbols 48 31590 3)
(strings 32 149124 80555)
(string-bytes 1 4074814)
(vectors 16 79509)
(vector-slots 8 1761299 703656)
(floats 8 492 1171)
(intervals 56 74316 5304)
(buffers 984 16))
[-- Attachment #2: Type: text/html, Size: 10424 bytes --]
next reply other threads:[~2024-10-10 6:56 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-10 6:56 Jonas Großekathöfer via Bug reports for GNU Emacs, the Swiss army knife of text editors [this message]
2024-10-10 11:39 ` bug#73728: 29.3; Specifing an --alternate-editor for emacscleintw.exe with custom --init-directory does not work on Windows Eli Zaretskii
2024-10-10 12:32 ` Jonas Großekathöfer via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-10-10 13:23 ` Eli Zaretskii
[not found] ` <9a27c88f6c98477d1a6bd2b944a93ba0@purelymail.com>
2024-10-14 14:09 ` Eli Zaretskii
[not found] ` <91f8c7d28fa5981019ae2aea0dccb3ab@purelymail.com>
2024-10-14 14:13 ` Eli Zaretskii
2024-10-10 17:58 ` Sebastián Monía
2024-10-10 18:12 ` Eli Zaretskii
2024-10-10 18:23 ` Sebastián Monía
[not found] ` <8A03740D-08EA-4AA5-A124-D1DA942A3E25@grszkth.fr>
2024-10-10 18:32 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7272c84ccb6bc7c39cb5b5cb1af4927f@purelymail.com \
--to=bug-gnu-emacs@gnu.org \
--cc=73728@debbugs.gnu.org \
--cc=jonas@grszkth.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).