all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#68637: 30.0.50; image-dired-mark-tagged-files and ls -F
@ 2024-01-21 13:30 Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-01-21 21:44 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 6+ messages in thread
From: Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-01-21 13:30 UTC (permalink / raw)
  To: 68637; +Cc: Stefan Kangas

Severity: wishlist

0. cd "$(mktemp -d)"
1. HOME="${PWD}" XDG_CONFIG_HOME="${PWD}/.config" emacs
2. M-x set-variable RET dired-listing-switches RET
3. M-n C-e C-b F RET
4. C-x C-j
5. M-x dired-create-empty-file RET rc RET
6. M u+x RET
7. M-x load-library RET image-dired RET
   [this step needed because of bug#68636]
8. C-t t tag RET
9. C-t f tag RET

Result   : 0 files with matching tag marked
Expected : 1 files with matching tag marked

At first glance it looks like the

  (search-forward-regexp (format "\\s %s$" curr-file) nil t)

in image-dired-mark-tagged-files doesn't take into account any of the
indicators that 'ls -F' may append to file names.

The commentary suggests using dired-mark-files-regexp would be too slow.
I wonder if that's still the case, or if there are any faster
alternatives without loss of generality?

Thanks,
-- 
Basil

In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.18.0, Xaw3d scroll bars) of 2024-01-18 built on tia
Repository revision: a33f3947ea1ba429570e2ecb4c3167341dcae1a2
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101010
System Description: Debian GNU/Linux trixie/sid

Configured using:
 'configure 'CFLAGS=-Og -ggdb3' -C --prefix=/home/blc/.local
 --enable-checking=structs --without-native-compilation
 --with-file-notification=yes --with-x-toolkit=lucid --with-x'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XAW3D XDBE XIM XINPUT2 XPM
LUCID ZLIB

Important settings:
  value of $LANG: en_IE.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Dired by name

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  minibuffer-regexp-mode: t
  buffer-read-only: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message mailcap yank-media puny rfc822
mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util
text-property-search time-date subr-x mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils image-dired-dired
image-dired image-dired-tags image-dired-external image-dired-util xdg
image-mode exif find-func dired-aux cus-edit pp icons wid-edit dired
dired-loaddefs cus-start cus-load thingatpt help-fns radix-tree
help-mode cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/x-win x-win term/common-win x-dnd touch-screen 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 dbusbind inotify lcms2
dynamic-setting system-font-setting font-render-setting cairo x-toolkit
xinput2 x multi-tty move-toolbar make-network-process emacs)

Memory information:
((conses 16 68253 9240) (symbols 48 7826 0) (strings 32 20916 2086)
 (string-bytes 1 576398) (vectors 16 11867)
 (vector-slots 8 130263 8964) (floats 8 42 1) (intervals 56 418 0)
 (buffers 984 12))





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#68637: 30.0.50; image-dired-mark-tagged-files and ls -F
  2024-01-21 13:30 bug#68637: 30.0.50; image-dired-mark-tagged-files and ls -F Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-01-21 21:44 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-01-23  9:51   ` Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 6+ messages in thread
From: Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-01-21 21:44 UTC (permalink / raw)
  To: 68637; +Cc: contovob, stefankangas

"Basil L. Contovounesios" via "Bug reports for GNU Emacs, the Swiss army
knife of text editors" <bug-gnu-emacs@gnu.org> writes:

[...]

> At first glance it looks like the
>
>   (search-forward-regexp (format "\\s %s$" curr-file) nil t)
>
> in image-dired-mark-tagged-files doesn't take into account any of the
> indicators that 'ls -F' may append to file names.

Thanks for this insight.  The following patch seems to do the trick.  I
think we can limit ourselves to executable and symlink since I can't see
how directories, pipes, sockets or doors(?) could be regular image
files.

diff --git a/lisp/image/image-dired-dired.el b/lisp/image/image-dired-dired.el
index f4778d8e121..7219a106ca8 100644
--- a/lisp/image/image-dired-dired.el
+++ b/lisp/image/image-dired-dired.el
@@ -383,7 +383,7 @@ image-dired-mark-tagged-files
                       (file-name-directory curr-file)))
         (setq curr-file (file-name-nondirectory curr-file))
         (goto-char (point-min))
-        (when (search-forward-regexp (format "\\s %s$" curr-file) nil t)
+        (when (search-forward-regexp (format "\\s %s[*@]?$" curr-file) nil t)
           (setq hits (+ hits 1))
           (dired-mark 1))))
     (message "%d files with matching tag marked" hits)))

> The commentary suggests using dired-mark-files-regexp would be too slow.
> I wonder if that's still the case, or if there are any faster
> alternatives without loss of generality?

I did not try this alternative.
-- 
Manuel Giraud





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* bug#68637: 30.0.50; image-dired-mark-tagged-files and ls -F
  2024-01-21 21:44 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-01-23  9:51   ` Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-01-27 10:35     ` Eli Zaretskii
  0 siblings, 1 reply; 6+ messages in thread
From: Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-01-23  9:51 UTC (permalink / raw)
  To: Manuel Giraud; +Cc: 68637, Stefan Kangas

Manuel Giraud [2024-01-21 22:44 +0100] wrote:

> Thanks for this insight.  The following patch seems to do the trick.  I
> think we can limit ourselves to executable and symlink since I can't see
> how directories, pipes, sockets or doors(?) could be regular image
> files.

Fine with me, thanks,
-- 
Basil





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#68637: 30.0.50; image-dired-mark-tagged-files and ls -F
  2024-01-23  9:51   ` Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-01-27 10:35     ` Eli Zaretskii
  2024-01-27 16:25       ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 1 reply; 6+ messages in thread
From: Eli Zaretskii @ 2024-01-27 10:35 UTC (permalink / raw)
  To: manuel, Basil L. Contovounesios; +Cc: 68637, stefankangas

> Cc: 68637@debbugs.gnu.org, Stefan Kangas <stefankangas@gmail.com>
> Date: Tue, 23 Jan 2024 10:51:10 +0100
> From:  "Basil L. Contovounesios" via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
> 
> Manuel Giraud [2024-01-21 22:44 +0100] wrote:
> 
> > Thanks for this insight.  The following patch seems to do the trick.  I
> > think we can limit ourselves to executable and symlink since I can't see
> > how directories, pipes, sockets or doors(?) could be regular image
> > files.
> 
> Fine with me, thanks,

Manuel, would you please post a complete patch, with the corresponding
log message, so we could install this?

Thanks.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#68637: 30.0.50; image-dired-mark-tagged-files and ls -F
  2024-01-27 10:35     ` Eli Zaretskii
@ 2024-01-27 16:25       ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2024-01-27 18:45         ` Eli Zaretskii
  0 siblings, 1 reply; 6+ messages in thread
From: Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-01-27 16:25 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Basil L. Contovounesios, 68637, stefankangas

[-- Attachment #1: Type: text/plain, Size: 197 bytes --]

Eli Zaretskii <eliz@gnu.org> writes:

[...]

> Manuel, would you please post a complete patch, with the corresponding
> log message, so we could install this?

Sure.  Here it is.
-- 
Manuel Giraud

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-image-dired-Enable-marking-tagged-with-ls-F.patch --]
[-- Type: text/x-patch, Size: 1167 bytes --]

From 1722de2ac01376d17cedb219f82dd304cd21d11a Mon Sep 17 00:00:00 2001
From: Manuel Giraud <manuel@ledu-giraud.fr>
Date: Sat, 27 Jan 2024 17:23:06 +0100
Subject: [PATCH] [image-dired] Enable marking tagged with ls -F

Bug#68637

* lisp/image/image-dired-dired.el (image-dired-mark-tagged-files):
Enable marking tagged for executable and symlink images when
'dired-listing-switches' includes -F.
---
 lisp/image/image-dired-dired.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/image/image-dired-dired.el b/lisp/image/image-dired-dired.el
index f4778d8e121..7219a106ca8 100644
--- a/lisp/image/image-dired-dired.el
+++ b/lisp/image/image-dired-dired.el
@@ -383,7 +383,7 @@ image-dired-mark-tagged-files
                       (file-name-directory curr-file)))
         (setq curr-file (file-name-nondirectory curr-file))
         (goto-char (point-min))
-        (when (search-forward-regexp (format "\\s %s$" curr-file) nil t)
+        (when (search-forward-regexp (format "\\s %s[*@]?$" curr-file) nil t)
           (setq hits (+ hits 1))
           (dired-mark 1))))
     (message "%d files with matching tag marked" hits)))
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* bug#68637: 30.0.50; image-dired-mark-tagged-files and ls -F
  2024-01-27 16:25       ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-01-27 18:45         ` Eli Zaretskii
  0 siblings, 0 replies; 6+ messages in thread
From: Eli Zaretskii @ 2024-01-27 18:45 UTC (permalink / raw)
  To: Manuel Giraud; +Cc: contovob, 68637-done, stefankangas

> From: Manuel Giraud <manuel@ledu-giraud.fr>
> Cc: "Basil L. Contovounesios" <contovob@tcd.ie>,  68637@debbugs.gnu.org,
>   stefankangas@gmail.com
> Date: Sat, 27 Jan 2024 17:25:30 +0100
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> [...]
> 
> > Manuel, would you please post a complete patch, with the corresponding
> > log message, so we could install this?
> 
> Sure.  Here it is.

Thanks, installed on the master branch, and closing the bug.





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-01-27 18:45 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-21 13:30 bug#68637: 30.0.50; image-dired-mark-tagged-files and ls -F Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-01-21 21:44 ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-01-23  9:51   ` Basil L. Contovounesios via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-01-27 10:35     ` Eli Zaretskii
2024-01-27 16:25       ` Manuel Giraud via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-01-27 18:45         ` Eli Zaretskii

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.