comparison lisp/tutorial.el @ 74113:3cc044eb98b7

(tutorial--default-keys): Add newline and delete-backward-char bindings. (tutorial--detailed-help): Save excursion when finding keys. Correct warning string for M-x FOO case. (tutorial--display-changes): Print special keys in tutorial style. Tweak search regexp for changed keys.
author Chong Yidong <cyd@stupidchicken.com>
date Tue, 21 Nov 2006 16:11:30 +0000
parents 9b8e3f194cc1
children ecc3f98301f4
comparison
equal deleted inserted replaced
74112:806be7aaa61b 74113:3cc044eb98b7
253 (move-end-of-line [?\C-e]) 253 (move-end-of-line [?\C-e])
254 254
255 (backward-sentence [?\M-a]) 255 (backward-sentence [?\M-a])
256 (forward-sentence [?\M-e]) 256 (forward-sentence [?\M-e])
257 257
258 (newline "\r")
258 259
259 (beginning-of-buffer [?\M-<]) 260 (beginning-of-buffer [?\M-<])
260 (end-of-buffer [?\M->]) 261 (end-of-buffer [?\M->])
261 262
262 (universal-argument [?\C-u]) 263 (universal-argument [?\C-u])
278 279
279 ;; * INSERTING AND DELETING 280 ;; * INSERTING AND DELETING
280 ;; C-u 8 * to insert ********. 281 ;; C-u 8 * to insert ********.
281 282
282 (delete-backward-char [backspace]) 283 (delete-backward-char [backspace])
284 (delete-backward-char "\d")
283 (delete-char [?\C-d]) 285 (delete-char [?\C-d])
284 286
285 (backward-kill-word [(meta backspace)]) 287 (backward-kill-word [(meta backspace)])
286 (kill-word [?\M-d]) 288 (kill-word [?\M-d])
287 289
373 (with-current-buffer (help-buffer) 375 (with-current-buffer (help-buffer)
374 (let* ((tutorial-buffer (button-get button 'tutorial-buffer)) 376 (let* ((tutorial-buffer (button-get button 'tutorial-buffer))
375 ;;(tutorial-arg (button-get button 'tutorial-arg)) 377 ;;(tutorial-arg (button-get button 'tutorial-arg))
376 (explain-key-desc (button-get button 'explain-key-desc)) 378 (explain-key-desc (button-get button 'explain-key-desc))
377 (changed-keys (with-current-buffer tutorial-buffer 379 (changed-keys (with-current-buffer tutorial-buffer
378 (tutorial--find-changed-keys tutorial--default-keys)))) 380 (save-excursion
381 (goto-char (point-min))
382 (tutorial--find-changed-keys
383 tutorial--default-keys)))))
379 (when changed-keys 384 (when changed-keys
380 (insert 385 (insert
381 "The following key bindings used in the tutorial had been changed 386 "The following key bindings used in the tutorial had been changed
382 from Emacs default in the " (buffer-name tutorial-buffer) " buffer:\n\n" ) 387 from Emacs default in the " (buffer-name tutorial-buffer) " buffer:\n\n" )
383 (let ((frm " %-9s %-27s %-11s %s\n")) 388 (let ((frm " %-9s %-27s %-11s %s\n"))
414 (when (> 36 tot-len) 419 (when (> 36 tot-len)
415 (insert (make-string (- 36 tot-len) ? ))) 420 (insert (make-string (- 36 tot-len) ? )))
416 (when (listp where) 421 (when (listp where)
417 (setq where "list")) 422 (setq where "list"))
418 ;; Tell where the old binding is now: 423 ;; Tell where the old binding is now:
419 (insert (format " %-11s " where)) 424 (insert (format " %-11s "
425 (if (string= "" where)
426 (format "M-x %s" def-fun-txt)
427 where)))
420 ;; Insert a link with more information, for example 428 ;; Insert a link with more information, for example
421 ;; current binding and keymap or information about 429 ;; current binding and keymap or information about
422 ;; cua-mode replacements: 430 ;; cua-mode replacements:
423 (insert-button (car remark) 431 (insert-button (car remark)
424 'action 432 'action
614 ;; Mark the key in the tutorial text 622 ;; Mark the key in the tutorial text
615 (unless (string= "Same key" where) 623 (unless (string= "Same key" where)
616 (let ((here (point)) 624 (let ((here (point))
617 (case-fold-search nil) 625 (case-fold-search nil)
618 (key-desc (key-description key))) 626 (key-desc (key-description key)))
627 (cond ((string= "ESC" key-desc)
628 (setq key-desc "<ESC>"))
629 ((string= "RET" key-desc)
630 (setq key-desc "<Return>"))
631 ((string= "DEL" key-desc)
632 (setq key-desc "<Delback>")))
619 (while (re-search-forward 633 (while (re-search-forward
620 (concat (regexp-quote key-desc) 634 (concat "[[:space:]]\\("
621 "[[:space:]]") nil t) 635 (regexp-quote key-desc)
622 (put-text-property (match-beginning 0) 636 "\\)[[:space:]]") nil t)
623 (match-end 0) 637 (put-text-property (match-beginning 1)
638 (match-end 1)
624 'tutorial-remark 'only-colored) 639 'tutorial-remark 'only-colored)
625 (put-text-property (match-beginning 0) 640 (put-text-property (match-beginning 1)
626 (match-end 0) 641 (match-end 1)
627 'face 'tutorial-warning-face) 642 'face 'tutorial-warning-face)
628 (forward-line) 643 (forward-line)
629 (let ((s (get-lang-string tutorial--lang 'tut-chgdkey)) 644 (let ((s (get-lang-string tutorial--lang 'tut-chgdkey))
630 (s2 (get-lang-string tutorial--lang 'tut-chgdkey2)) 645 (s2 (get-lang-string tutorial--lang 'tut-chgdkey2))
631 (start (point)) 646 (start (point))