Mercurial > emacs
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)) |