comparison lisp/international/quail.el @ 18349:f468344dd2bd

(quail-help): Use with-output-to-temp-buffer. (quail-translation-help): Likewise. (quail-conversion-help): Likewise.
author Kenichi Handa <handa@m17n.org>
date Sat, 21 Jun 1997 01:14:06 +0000
parents 5c8e37591da5
children 8b4a66c66dd6
comparison
equal deleted inserted replaced
18348:157cdb505495 18349:f468344dd2bd
1459 (newline))))) 1459 (newline)))))
1460 1460
1461 (defun quail-help () 1461 (defun quail-help ()
1462 "Show brief description of the current Quail package." 1462 "Show brief description of the current Quail package."
1463 (interactive) 1463 (interactive)
1464 (let ((package quail-current-package) 1464 (let ((package quail-current-package))
1465 (buf (get-buffer-create "*Quail-help*"))) 1465 (with-output-to-temp-buffer "*Quail-Help*"
1466 (save-excursion 1466 (save-excursion
1467 (set-buffer buf) 1467 (set-buffer standard-output)
1468 (erase-buffer) 1468 (let ((quail-current-package package))
1469 (setq quail-current-package package) 1469 (insert "Quail input method (name:"
1470 (insert "Quail input method (name:" 1470 (quail-name)
1471 (quail-name) 1471 ", mode line indicator:["
1472 ", mode line indicator:[" 1472 (quail-title)
1473 (quail-title) 1473 "])\n---- Documentation ----\n"
1474 "])\n---- Documentation ----\n" 1474 (quail-docstring))
1475 (quail-docstring)) 1475 (newline)
1476 (newline) 1476 (if (quail-show-layout) (quail-show-kbd-layout))
1477 (if (quail-show-layout) (quail-show-kbd-layout)) 1477 (quail-help-insert-keymap-description
1478 (insert ) 1478 quail-mode-map
1479 (quail-help-insert-keymap-description 1479 "---- Key bindings (before starting translation) ----
1480 quail-mode-map
1481 "---- Key bindings (before starting translation) ----
1482 key binding 1480 key binding
1483 --- -------\n") 1481 --- -------\n")
1484 (quail-help-insert-keymap-description 1482 (quail-help-insert-keymap-description
1485 (quail-translation-keymap) 1483 (quail-translation-keymap)
1486 "--- Key bindings (while translating) --- 1484 "--- Key bindings (while translating) ---
1487 key binding 1485 key binding
1488 --- -------\n") 1486 --- -------\n")
1489 (if (quail-conversion-keymap) 1487 (if (quail-conversion-keymap)
1490 (quail-help-insert-keymap-description 1488 (quail-help-insert-keymap-description
1491 (quail-conversion-keymap) 1489 (quail-conversion-keymap)
1492 "--- Key bindings (while converting) --- 1490 "--- Key bindings (while converting) ---
1493 key binding 1491 key binding
1494 --- -------\n")) 1492 --- -------\n"))
1495 (goto-char (point-min)) 1493 (help-mode))))))
1496 (set-buffer-modified-p nil) 1494
1497 (help-mode))
1498 (display-buffer buf)))
1499 1495
1500 (defun quail-help-insert-keymap-description (keymap &optional header) 1496 (defun quail-help-insert-keymap-description (keymap &optional header)
1501 (let (from to) 1497 (let (from to)
1502 (if header 1498 (if header
1503 (insert header)) 1499 (insert header))
1541 1537
1542 (defun quail-translation-help () 1538 (defun quail-translation-help ()
1543 "Show help message while translating in Quail mode." 1539 "Show help message while translating in Quail mode."
1544 (interactive) 1540 (interactive)
1545 (let ((package quail-current-package) 1541 (let ((package quail-current-package)
1546 (current-key quail-current-key) 1542 (current-key quail-current-key))
1547 (buf (get-buffer-create "*Quail-Help*"))) 1543 (with-output-to-temp-buffer "*Quail-Help*"
1548 (save-excursion 1544 (save-excursion
1549 (set-buffer buf) 1545 (set-buffer standard-output)
1550 (erase-buffer) 1546 (let ((quail-current-package package))
1551 (setq quail-current-package package) 1547 (princ "You are translating the key sequence ")
1552 (insert 1548 (prin1 quail-current-key)
1553 (format "You are translating the key sequence \"%s\" in Quail mode.\n" 1549 (princ" in Quail mode.\n")
1554 quail-current-key)) 1550 (quail-help-insert-keymap-description
1555 (quail-help-insert-keymap-description 1551 (quail-translation-keymap)
1556 (quail-translation-keymap) 1552 "-----------------------
1553 key binding
1554 --- -------\n"))
1555 (help-mode)))))
1556
1557 (defun quail-conversion-help ()
1558 "Show help message while converting in Quail mode."
1559 (interactive)
1560 (let ((package quail-current-package)
1561 (str (buffer-substring (overlay-start quail-conv-overlay)
1562 (overlay-end quail-conv-overlay))))
1563 (with-output-to-temp-buffer "*Quail-Help*"
1564 (save-excursion
1565 (set-buffer standard-output)
1566 (let ((quail-current-package package))
1567 (princ "You are converting the string ")
1568 (prin1 str)
1569 (princ " in Quail mode.\n")
1570 (quail-help-insert-keymap-description
1571 (quail-conversion-keymap)
1557 "----------------------- 1572 "-----------------------
1558 key binding 1573 key binding
1559 --- -------\n") 1574 --- -------\n"))
1560 (goto-char (point-min)) 1575 (help-mode)))))
1561 (set-buffer-modified-p nil))
1562 (display-buffer buf)))
1563
1564 (defun quail-conversion-help ()
1565 "Show help message while converting in Quail mode."
1566 (interactive)
1567 (let ((package quail-current-package)
1568 (str (buffer-substring (overlay-start quail-conv-overlay)
1569 (overlay-end quail-conv-overlay)))
1570 (buf (get-buffer-create "*Quail-Help*")))
1571 (save-excursion
1572 (set-buffer buf)
1573 (erase-buffer)
1574 (setq quail-current-package package)
1575 (insert
1576 (format "You are converting the string \"%s\" in Quail mode.\n" str))
1577 (quail-help-insert-keymap-description
1578 (quail-conversion-keymap)
1579 "-----------------------
1580 key binding
1581 --- -------\n")
1582 (goto-char (point-min))
1583 (set-buffer-modified-p nil))
1584 (display-buffer buf)))
1585 1576
1586 1577
1587 (defvar quail-directory-name "quail" 1578 (defvar quail-directory-name "quail"
1588 "Name of Quail directory which cotains Quail packages. 1579 "Name of Quail directory which cotains Quail packages.
1589 This is a sub-directory of LEIM directory.") 1580 This is a sub-directory of LEIM directory.")