From: Peter Povinec <spepo.42@gmail.com>
To: 55016@debbugs.gnu.org
Subject: bug#55016: 28.1; xref-find-references finds no matches if project dir contains a space
Date: Mon, 18 Apr 2022 21:52:49 -0700 [thread overview]
Message-ID: <CAJDw7KuHURaz5X1S7ZLiOkotA_QySKEJnR-FwxxCWt1BtfOyRA@mail.gmail.com> (raw)
I despise spaces in directory names like the next guy, but sometimes it
is unavoidable. In my case, I had some elisp files in apple
icloud shared folder, and those are mounted by the system
under a nasty path like
~/Library/Mobile\ Documents/com~apple~CloudDocs.
If I loaded one of those files and tried xref-find-references,
it would never find anything, not even references within the same file.
Here is a contrived scenario to reproduce the issue:
1. create two symlinks like
ln -s ~/Applications/Emacs.app/Contents/Resources/lisp/progmodes
~/space\ dir
ln -s ~/Applications/Emacs.app/Contents/Resources/lisp/progmodes
~/nospacedir
2. C-x C-f ~/space dir/xref.el
3. M-? on xref-location-marker, specify default project and default
directory ~/space dir
4. Observe "No references found for: xref-location-marker"
5. Close the xref.el buffer with C-x k
6. Repeat steps 2-3, but using ~/nospacedir instead
7. Observe that references are shown correctly
We should be able to handle directories with spaces. If for some reason
we couldn't do that, we'd need to inform the user explicitly.
Workaround to the original problem where the elisp files are
stored under a directory with spaces in it:
1. Create a symlink pointing to a subdir under the directory that
contains the space so you have a pathname to the files without any space.
2. Configure the mapping from the full pathname to the symlink using
directory-abbrev-alist to tell emacs to use the symlink directory name
whenever creating buffers of files under the space-containing directory.
In GNU Emacs 28.1 (build 1, aarch64-apple-darwin21.1.0, NS
appkit-2113.00 Version 12.0.1 (Build 21A559))
of 2022-04-04 built on armbob.lan
Windowing system distributor 'Apple', version 10.3.2113
System Description: macOS 12.2.1
Configured using:
'configure --with-ns '--enable-locallisppath=/Library/Application
Support/Emacs/${version}/site-lisp:/Library/Application
Support/Emacs/site-lisp' --with-modules'
Configured features:
ACL GMP GNUTLS JSON LIBXML2 MODULES NOTIFY KQUEUE NS PDUMPER THREADS
TOOLKIT_SCROLL_BARS ZLIB
Important settings:
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-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
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util rmail
rmail-loaddefs auth-source cl-seq eieio eieio-core cl-macs
eieio-loaddefs password-cache json map text-property-search time-date
subr-x seq byte-opt gv bytecomp byte-compile cconv mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs
cl-lib sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils
iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/ns-win ns-win ucs-normalize
mule-util 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 cl-generic 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 simple abbrev obarray cl-preloaded nadvice button
loaddefs faces cus-face macroexp files window text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote threads kqueue cocoa ns multi-tty
make-network-process emacs)
Memory information:
((conses 16 50996 6609)
(symbols 48 6552 1)
(strings 32 17843 2090)
(string-bytes 1 596645)
(vectors 16 13825)
(vector-slots 8 184230 11069)
(floats 8 21 39)
(intervals 56 301 0)
(buffers 992 11))
next reply other threads:[~2022-04-19 4:52 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-19 4:52 Peter Povinec [this message]
2022-04-19 7:13 ` bug#55016: 28.1; xref-find-references finds no matches if project dir contains a space Eli Zaretskii
2022-04-19 17:06 ` Peter Povinec
2022-04-19 17:32 ` Eli Zaretskii
2022-04-19 17:36 ` Eli Zaretskii
2022-04-19 17:57 ` Peter Povinec
2022-04-19 18:17 ` Eli Zaretskii
2022-04-19 18:24 ` Eli Zaretskii
2022-04-24 2:00 ` Dmitry Gutov
2022-04-24 5:31 ` Eli Zaretskii
2022-04-25 2:08 ` Dmitry Gutov
2022-04-25 11:48 ` Eli Zaretskii
2022-04-26 2:05 ` Dmitry Gutov
2022-04-26 12:00 ` Eli Zaretskii
2022-04-26 12:28 ` Dmitry Gutov
2022-04-26 12:36 ` Eli Zaretskii
2022-04-27 1:57 ` Dmitry Gutov
2022-04-27 13:53 ` Eli Zaretskii
2022-04-26 1:05 ` Peter Povinec
2022-04-26 2:07 ` Dmitry Gutov
2022-04-26 4:57 ` Peter Povinec
2022-04-26 11:18 ` Eli Zaretskii
2022-04-26 12:30 ` Dmitry Gutov
2022-04-27 3:00 ` Peter Povinec
2022-10-31 1:00 ` Dmitry Gutov
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=CAJDw7KuHURaz5X1S7ZLiOkotA_QySKEJnR-FwxxCWt1BtfOyRA@mail.gmail.com \
--to=spepo.42@gmail.com \
--cc=55016@debbugs.gnu.org \
/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).