1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-30 19:53:09 +00:00

(dired-mode-map): Bind C-x C-q to dired-toggle-read-only.

Filter out menu item "Edit File Names" `wdired-change-to-wdired-mode'
when major-mode is not dired-mode.
(dired-toggle-read-only): New function.
(dired-recursive-deletes): Remove obsolete comments about old
default value.
(dired-do-flagged-delete, dired-do-delete): Refill docstring.
This commit is contained in:
Juri Linkov 2007-07-29 09:18:15 +00:00
parent f8f67141f1
commit 40aa8257e0
3 changed files with 34 additions and 8 deletions

View File

@ -155,7 +155,9 @@ file copy is checked via the file's checksum.
If `default-directory' is a remote file name, subprocesses are started
on the corresponding remote system.
** C-x C-q in dired-mode now runs the command wdired-change-to-wdired-mode.
** C-x C-q in dired-mode now runs the command wdired-change-to-wdired-mode,
and C-x C-q in wdired-mode exits it with asking a question about
saving changes.
* Changes in Emacs 23.1 on non-free operating systems

View File

@ -1,3 +1,16 @@
2007-07-29 Juri Linkov <juri@jurta.org>
* dired.el (dired-mode-map): Bind C-x C-q to dired-toggle-read-only.
Filter out menu item "Edit File Names" `wdired-change-to-wdired-mode'
when major-mode is not dired-mode.
(dired-toggle-read-only): New function.
(dired-recursive-deletes): Remove obsolete comments about old
default value.
(dired-do-flagged-delete, dired-do-delete): Refill docstring.
* wdired.el (wdired-exit): New function.
(wdired-mode-map): Bind C-x C-q to wdired-exit.
2007-07-28 Stefan Monnier <monnier@iro.umontreal.ca>
* cus-edit.el (customize-read-group): New fun.

View File

@ -1247,7 +1247,7 @@ Do so according to the former subdir alist OLD-SUBDIR-ALIST."
(define-key map "$" 'dired-hide-subdir)
(define-key map "\M-$" 'dired-hide-all)
;; misc
(define-key map "\C-x\C-q" 'wdired-change-to-wdired-mode)
(define-key map "\C-x\C-q" 'dired-toggle-read-only)
(define-key map "?" 'dired-summary)
(define-key map "\177" 'dired-unmark-backward)
(define-key map [remap undo] 'dired-undo)
@ -1353,7 +1353,8 @@ Do so according to the former subdir alist OLD-SUBDIR-ALIST."
(define-key map [menu-bar immediate create-directory]
'(menu-item "Create Directory..." dired-create-directory))
(define-key map [menu-bar immediate wdired-mode]
'(menu-item "Edit File Names" wdired-change-to-wdired-mode))
'(menu-item "Edit File Names" wdired-change-to-wdired-mode
:filter (lambda (x) (if (eq major-mode 'dired-mode) x))))
(define-key map [menu-bar regexp]
(cons "Regexp" (make-sparse-keymap "Regexp")))
@ -1656,6 +1657,16 @@ You can use it to recover marks, killed lines or subdirs."
(message "Change in dired buffer undone.
Actual changes in files cannot be undone by Emacs."))
(defun dired-toggle-read-only ()
"Edit dired buffer with Wdired, or set it read-only.
Call `wdired-change-to-wdired-mode' in dired buffers whose editing is
supported by Wdired (the major mode of the dired buffer is `dired-mode').
Otherwise, for buffers inheriting from dired-mode, call `toggle-read-only'."
(interactive)
(if (eq major-mode 'dired-mode)
(wdired-change-to-wdired-mode)
(toggle-read-only)))
(defun dired-next-line (arg)
"Move down lines then position at filename.
Optional prefix ARG says how many lines to move; default is one line."
@ -2360,7 +2371,7 @@ Optional argument means return a file name relative to `default-directory'."
;; Deleting files
(defcustom dired-recursive-deletes 'top ; Default only delete empty directories.
(defcustom dired-recursive-deletes 'top
"*Decide whether recursive deletes are allowed.
A value of nil means no recursive deletes.
`always' means delete recursively without asking. This is DANGEROUS!
@ -2409,8 +2420,8 @@ Anything else, ask for each sub-directory."
"In Dired, delete the files flagged for deletion.
If NOMESSAGE is non-nil, we don't display any message
if there are no flagged files.
`dired-recursive-deletes' controls whether
deletion of non-empty directories is allowed."
`dired-recursive-deletes' controls whether deletion of
non-empty directories is allowed."
(interactive)
(let* ((dired-marker-char dired-del-marker)
(regexp (dired-marker-regexp))
@ -2427,8 +2438,8 @@ deletion of non-empty directories is allowed."
(defun dired-do-delete (&optional arg)
"Delete all marked (or next ARG) files.
`dired-recursive-deletes' controls whether
deletion of non-empty directories is allowed."
`dired-recursive-deletes' controls whether deletion of
non-empty directories is allowed."
;; This is more consistent with the file marking feature than
;; dired-do-flagged-delete.
(interactive "P")