branch: externals/vertico
commit 16f574897f743b398338758fab2d6435813a480e
Author: Daniel Mendler <m...@daniel-mendler.de>
Commit: Daniel Mendler <m...@daniel-mendler.de>

    vertico-directory-up moves up even if point not directly after /
    
    Fix #319
---
 CHANGELOG.org                   | 1 +
 extensions/vertico-directory.el | 7 +++----
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/CHANGELOG.org b/CHANGELOG.org
index 60db3e8ba0..87a0dda230 100644
--- a/CHANGELOG.org
+++ b/CHANGELOG.org
@@ -5,6 +5,7 @@
 * Development
 
 - Add =vertico-preselect= configuration option.
+- =vertico-directory-up= moves up even if point is not located directly after 
/.
 
 * Version 1.0 (2022-12-22)
 
diff --git a/extensions/vertico-directory.el b/extensions/vertico-directory.el
index 0c00a6220f..a7d25e41b2 100644
--- a/extensions/vertico-directory.el
+++ b/extensions/vertico-directory.el
@@ -66,10 +66,9 @@
 
 ;;;###autoload
 (defun vertico-directory-up (&optional n)
-  "Delete N directories before point."
+  "Delete N names before point."
   (interactive "p")
   (when (and (> (point) (minibuffer-prompt-end))
-             (eq (char-before) ?/)
              (eq 'file (vertico--metadata-get 'category)))
     (let ((path (buffer-substring (minibuffer-prompt-end) (point))) found)
       (when (string-match-p "\\`~[^/]*/\\'" path)
@@ -87,14 +86,14 @@
 (defun vertico-directory-delete-char (&optional n)
   "Delete N directories or chars before point."
   (interactive "p")
-  (unless (vertico-directory-up n)
+  (unless (and (eq (char-before) ?/) (vertico-directory-up n))
     (backward-delete-char n)))
 
 ;;;###autoload
 (defun vertico-directory-delete-word (&optional n)
   "Delete N directories or words before point."
   (interactive "p")
-  (unless (vertico-directory-up n)
+  (unless (and (eq (char-before) ?/) (vertico-directory-up n))
     (let ((pt (point)))
       (backward-word n)
       (delete-region pt (point)))))

Reply via email to