2991 |
"Perform completion on file name preceding point." |
"Perform completion on file name preceding point." |
2992 |
(interactive) |
(interactive) |
2993 |
(let* ((end (point)) |
(let* ((end (point)) |
2994 |
(beg (save-excursion |
(beg (widget-field-start widget)) |
|
(skip-chars-backward "^ ") |
|
|
(point))) |
|
2995 |
(pattern (buffer-substring beg end)) |
(pattern (buffer-substring beg end)) |
2996 |
(name-part (file-name-nondirectory pattern)) |
(name-part (file-name-nondirectory pattern)) |
2997 |
(directory (file-name-directory pattern)) |
;; I think defaulting to root is right |
2998 |
|
;; because these really should be absolute file names. |
2999 |
|
(directory (or (file-name-directory pattern) "/")) |
3000 |
(completion (file-name-completion name-part directory))) |
(completion (file-name-completion name-part directory))) |
3001 |
(cond ((eq completion t)) |
(cond ((eq completion t)) |
3002 |
((null completion) |
((null completion) |