comparison lisp/textmodes/remember.el @ 85861:70f347d257ec

Remember: Put on a low-cookie diet, and improve docstrings.
author Michael Olson <mwolson@gnu.org>
date Thu, 01 Nov 2007 04:37:47 +0000
parents 2a9d361b3986
children 9e1be56af44a
comparison
equal deleted inserted replaced
85860:93f95830a179 85861:70f347d257ec
243 243
244 (defvar remember-annotation nil 244 (defvar remember-annotation nil
245 "Current annotation.") 245 "Current annotation.")
246 (defvar remember-initial-contents nil 246 (defvar remember-initial-contents nil
247 "Initial contents to place into *Remember* buffer.") 247 "Initial contents to place into *Remember* buffer.")
248 (defvar remember-before-remember-hook nil 248
249 "Functions run before switching to the *Remember* buffer.") 249 (defcustom remember-before-remember-hook nil
250 "Functions run before switching to the *Remember* buffer."
251 :type 'hook
252 :group 'remember)
250 253
251 (defcustom remember-run-all-annotation-functions-flag nil 254 (defcustom remember-run-all-annotation-functions-flag nil
252 "Non-nil means use all annotations returned by 255 "Non-nil means use all annotations returned by
253 `remember-annotation-functions'." 256 `remember-annotation-functions'."
254 :type 'boolean 257 :type 'boolean
255 :group 'remember) 258 :group 'remember)
256 259
257 ;;;###autoload 260 ;;;###autoload
258 (defun remember (&optional initial) 261 (defun remember (&optional initial)
259 "Remember an arbitrary piece of data. 262 "Remember an arbitrary piece of data.
260 With a prefix, uses the region as INITIAL." 263 INITIAL is the text to initially place in the *Remember* buffer,
264 or nil to bring up a blank *Remember* buffer.
265
266 With a prefix, use the region as INITIAL."
261 (interactive 267 (interactive
262 (list (when current-prefix-arg 268 (list (when current-prefix-arg
263 (buffer-substring (point) (mark))))) 269 (buffer-substring (point) (mark)))))
264 (funcall (if remember-in-new-frame 270 (funcall (if remember-in-new-frame
265 #'frame-configuration-to-register 271 #'frame-configuration-to-register
401 (goto-char (point-max)) 407 (goto-char (point-max))
402 (insert remember-text) 408 (insert remember-text)
403 (when remember-save-after-remembering (save-buffer)))) 409 (when remember-save-after-remembering (save-buffer))))
404 (append-to-file (point-min) (point-max) remember-data-file))))) 410 (append-to-file (point-min) (point-max) remember-data-file)))))
405 411
406 ;;;###autoload
407 (defun remember-region (&optional beg end) 412 (defun remember-region (&optional beg end)
408 "Remember the data from BEG to END. 413 "Remember the data from BEG to END.
409 If called from within the remember buffer, BEG and END are ignored, 414 It is called from within the *Remember* buffer to save the text
410 and the entire buffer will be remembered. 415 that was entered,
411 416
412 This function is meant to be called from the *Remember* buffer. 417 If BEG and END are nil, the entire buffer will be remembered.
418
413 If you want to remember a region, supply a universal prefix to 419 If you want to remember a region, supply a universal prefix to
414 `remember' instead. For example: C-u M-x remember." 420 `remember' instead. For example: C-u M-x remember RET."
415 ;; Sacha: I have no idea where remember.el gets this context information, but 421 ;; Sacha: I have no idea where remember.el gets this context information, but
416 ;; you can just use remember-annotation-functions. 422 ;; you can just use remember-annotation-functions.
417 (interactive) 423 (interactive)
418 (let ((b (or beg (min (point) (or (mark) (point-min))))) 424 (let ((b (or beg (min (point) (or (mark) (point-min)))))
419 (e (or end (max (point) (or (mark) (point-max)))))) 425 (e (or end (max (point) (or (mark) (point-max))))))
430 Most useful for remembering things from Netscape or other X Windows 436 Most useful for remembering things from Netscape or other X Windows
431 application." 437 application."
432 (interactive) 438 (interactive)
433 (remember (current-kill 0))) 439 (remember (current-kill 0)))
434 440
435 ;;;###autoload 441 (defun remember-finalize ()
436 (defun remember-buffer ()
437 "Remember the contents of the current buffer." 442 "Remember the contents of the current buffer."
438 (interactive) 443 (interactive)
439 (remember-region (point-min) (point-max))) 444 (remember-region (point-min) (point-max)))
440 445
441 ;;;###autoload
442 (defun remember-destroy () 446 (defun remember-destroy ()
443 "Destroy the current *Remember* buffer." 447 "Destroy the current *Remember* buffer."
444 (interactive) 448 (interactive)
445 (when (equal remember-buffer (buffer-name)) 449 (when (equal remember-buffer (buffer-name))
446 (kill-buffer (current-buffer)) 450 (kill-buffer (current-buffer))
450 454
451 (defvar remember-mode-map () 455 (defvar remember-mode-map ()
452 "Keymap used in Remember mode.") 456 "Keymap used in Remember mode.")
453 (when (not remember-mode-map) 457 (when (not remember-mode-map)
454 (setq remember-mode-map (make-sparse-keymap)) 458 (setq remember-mode-map (make-sparse-keymap))
455 (define-key remember-mode-map "\C-x\C-s" 'remember-buffer) 459 (define-key remember-mode-map "\C-x\C-s" 'remember-finalize)
456 (define-key remember-mode-map "\C-c\C-c" 'remember-buffer) 460 (define-key remember-mode-map "\C-c\C-c" 'remember-finalize)
457 (define-key remember-mode-map "\C-c\C-k" 'remember-destroy)) 461 (define-key remember-mode-map "\C-c\C-k" 'remember-destroy))
458 462
459 (defun remember-mode () 463 (defun remember-mode ()
460 "Major mode for output from \\[remember]. 464 "Major mode for output from \\[remember].
461 \\<remember-mode-map>This buffer is used to collect data that you want 465 \\<remember-mode-map>This buffer is used to collect data that you want