Mercurial > emacs
view lisp/disp-table.el @ 2076:5140299129c3
(rmail-delete-forward): Go to summary buf to change D mark.
Always do the motion in the rmail buffer; let that handle summary.
(rmail-undelete-previous-message): Likewise.
(rmail-select-summary): New macro.
(rmail-show-message): Use rmail-select-summary.
(rmail-get-new-mail): Likewise.
(rmail-expunge): Likewise.
(rmail-bury): Record Rmail buffer to bury it later.
Major changes from Bob Weiner <weiner@pts.mot.com>
Handle some Emacs 18 function names to run in 18.
This is to facilitate working with Weiner.
(rmail-reply-prefix): New variable.
(rmail-reply): Use that variable to add to subject.
(rmail-retry-failure): Change binding to M-m.
(rmail-forward): Look for >From as well as for From.
Handle case where neither is found.
(rmail-last-regexp): New variable.
(rmail-mode): Make rmail-last-regexp local.
(rmail): Don't update rmail-mode data for old buffer
if it's not in rmail mode.
Error if in Rmail Edit mode.
(rmail-bury): New command, plus key binding.
(rmail-summary-by-topic): New key binding.
(rmail-insert-inbox-text): Check for pop case earlier.
(rmail-convert-to-babyl-format): Handle Content-Length field.
(rmail-maybe-display-summary): New function.
(rmail-redisplay-summary): New user option.
(rmail-undelete-previous-message, rmail-delete-forward):
(rmail-get-new-mail, rmail-show-message): Update summary buffer if any.
Call rmail-maybe-display-summary to put it back on screen.
(rmail-only-expunge): Renamed from rmail-expunge.
(rmail-expunge): New function.
(rmail-message-recipients-p, rmail-message-regexp-p): New functions.
(rmail-summary-exists, rmail-summary-displayed): New functions.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 09 Mar 1993 08:08:13 +0000 |
parents | 4a3438b8b92d |
children | 76685b00c607 |
line wrap: on
line source
;;; disp-table.el --- functions for dealing with char tables. ;; Copyright (C) 1987 Free Software Foundation, Inc. ;; Author: Howard Gayle ;; Maintainer: FSF ;; Keywords: i14n ;; This file is part of GNU Emacs. ;; GNU Emacs is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs; see the file COPYING. If not, write to ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. ;;; Code: (defun describe-display-table (dt) "Describe the display table DT in a help buffer." (with-output-to-temp-buffer "*Help*" (princ "\nTruncation glyph: ") (prin1 (aref dt 256)) (princ "\nWrap glyph: ") (prin1 (aref dt 257)) (princ "\nEscape glyph: ") (prin1 (aref dt 258)) (princ "\nCtrl glyph: ") (prin1 (aref dt 259)) (princ "\nSelective display rope: ") (prin1 (aref dt 260)) (princ "\nCharacter display ropes:\n") (let ((vector (make-vector 256 nil)) (i 0)) (while (< i 256) (aset vector i (aref dt i)) (setq i (1+ i))) (describe-vector vector)) (print-help-return-message))) ;;;###autoload (defun describe-current-display-table () "Describe the display table in use in the selected window and buffer." (interactive) (describe-display-table (or (window-display-table (selected-window)) buffer-display-table standard-display-table))) ;;;###autoload (defun make-display-table () "Return a new, empty display table." (make-vector 261 nil)) ;;;###autoload (defun standard-display-8bit (l h) "Display characters in the range L to H literally." (while (<= l h) (if (and (>= l ?\ ) (< l 127)) (if standard-display-table (aset standard-display-table l nil)) (or standard-display-table (setq standard-display-table (make-vector 261 nil))) (aset standard-display-table l l)) (setq l (1+ l)))) ;;;###autoload (defun standard-display-ascii (c s) "Display character C using string S." (or standard-display-table (setq standard-display-table (make-vector 261 nil))) (aset standard-display-table c (apply 'make-rope (append s nil)))) ;;;###autoload (defun standard-display-g1 (c sc) "Display character C as character SC in the g1 character set." (or standard-display-table (setq standard-display-table (make-vector 261 nil))) (aset standard-display-table c (make-rope (create-glyph (concat "\016" (char-to-string sc) "\017"))))) ;;;###autoload (defun standard-display-graphic (c gc) "Display character C as character GC in graphics character set." (or standard-display-table (setq standard-display-table (make-vector 261 nil))) (aset standard-display-table c (make-rope (create-glyph (concat "\e(0" (char-to-string gc) "\e(B"))))) ;;;###autoload (defun standard-display-underline (c uc) "Display character C as character UC plus underlining." (or standard-display-table (setq standard-display-table (make-vector 261 nil))) (aset standard-display-table c (make-rope (create-glyph (concat "\e[4m" (char-to-string uc) "\e[m"))))) ;; Allocate a glyph code to display by sending STRING to the terminal. ;;;###autoload (defun create-glyph (string) (if (= (length glyph-table) 65536) (error "No free glyph codes remain")) (setq glyph-table (vconcat glyph-table (list string))) (1- (length glyph-table))) (provide 'disp-table) ;;; disp-table.el ends here