view src/m/symmetry.h @ 68953:0ddd5b380ffb

Use allout invisible-text overlays instead of selective display for concealed text. Also, lots of general cleanup, and improved compatibility code. (allout-version) Incremented, corrected, revised, and refined module commentary. (provide 'allout): Moved to the bottom, added a require of overlay. (allout-encrypt-unencrypted-on-saves): Defaults to t instead of `except-current'. (allout-write-file-hook-handler): Minimize delay. (count-trailing-whitespace-region): New function so auto-encryption of current topic can resituate cursor exactly. PGP/GPG encryption trims trailing whitespace from lines, which must be accounted for across encryption then decryption. (allout-command-prefix): Now defaults to "\C-c<space>" rather than just plain "\C-c", to avoid intruding on user's keybinding space. (allout-toggle-current-subtree-encryption): Pass along fetch-pass parameter, so user request to provide a new password is done. (allout-outside-normal-auto-fill-function, allout-auto-fill): Refined mechanism for auto-filling behavior while in allout mode. (allout-mode): Explicitly specify the mode map in the docstring. Clarify provision for various write-file hook var names. Adjusted for invisible-text overlays instead of selective-display. (allout-depth): Really return 0 if not within any topic. This rectifies `allout-beginning-of-level' and sequence numbering errors that occur when cutting and pasting numbered topics. Changed from a in-line subst to a regular function, as well. (allout-pre-next-prefix): Renamed from allout-pre-next-preface. (allout-end-of-subtree, allout-end-of-subtree) (allout-end-of-entry, allout-end-of-current-heading) (allout-next-visible-heading, allout-open-topic, allout-show-entry) (allout-show-children, allout-show-to-offshoot) (allout-hide-current-entry, allout-show-current-entry): Rectified handling of trailing blank lines between items. (allout-line-boundary-regexp, set-allout-regexp, allout-depth) (allout-current-depth, allout-unprotected, allout-hidden-p) (allout-on-current-heading-p, allout-listify-exposed) (allout-chart-subtree, allout-goto-prefix) (allout-back-to-current-heading, allout-get-body-text) (allout-snug-back, allout-flag-current-subtree, allout-show-all) (allout-hide-region-body, allout-toggle-subtree-encryption) (allout-encrypt-string, allout-encrypted-key-info) (allout-next-topic-pending-encryption, allout-encrypt-decrypted) (allout-file-vars-section-data): Adjusted for use with invisible-text overlays instead of selective-display. (allout-kill-line, allout-kill-topic, allout-yank-processing): Reworked for use with invisible text overlays. (allout-current-topic-collapsed-p): New function. (allout-hide-current-subtree): Use allout-current-topic-collapsed-p to know when to close the containing topic. (allout-pre-command-business, allout-post-command-business): Simplify undo-batching and dynamic isearch exposure. (allout-set-overlay-category): New for invisible-text overlays. Sets properties of allout-overlay-category, used by allout-flag-region to set invisible-text overlay properties. (allout-get-invisibility-overlay): Get the first qualifying invisibility overlay, so we can find the extent of it. (allout-back-to-visible-text): Get to just before the beginnining of the current invisibility overlay, if any. (allout-overlay-insert-in-front-handler) (allout-overlay-interior-modification-handler) (allout-before-change-handler, allout-isearch-end-handler): New functions to handle extraordinary actions affecting concealed text. (allout-flag-region): Use overlays instead of selective-display for invisible text - by inheritence from the properties of allout-overlay-category in mainline emacs, and applied property-by-property in xemacs, some recent versions of which don't inherit the properties from the category. Provisions to respond to concealed-text edits simplified drastically. (allout-isearch-rectification, allout-isearch-was-font-lock) (allout-isearch-expose, allout-enwrap-isearch) (allout-isearch-abort, allout-pre-was-isearching) (allout-isearch-prior-pos, allout-isearch-did-quit) (allout-isearch-dynamic-expose) (allout-hide-current-entry-completely): Functions deleted. (allout-undo-aggregation): Explicit undo aggregation no longer necessary due to transition away from selective-display. (set-allout-regexp, allout-up-current-level) (allout-next-visible-heading, allout-forward-current-level) (allout-open-topic, allout-reindent-body, allout-rebullet-topic) (allout-kill-line, allout-yank-processing, allout-show-children) (allout-expose-topic, allout-old-expose-topic) (allout-listify-exposed, allout-insert-latex-header) (allout-toggle-subtree-encryption, allout-encrypt-string) (remove-from-invisibility-spec, allout-hide-current-subtree): Ditched unused variables.
author Eli Zaretskii <eliz@gnu.org>
date Fri, 17 Feb 2006 10:52:30 +0000
parents 3bd95f4f2941
children e90d04cd455a c5406394f567
line wrap: on
line source

/* machine description file for SEQUENT SYMMETRY machines
   Copyright (C) 1985, 1986, 2002, 2003, 2004,
                 2005, 2006 Free Software Foundation, Inc.

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, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.  */

/* CHANGE: [Eric H. Herrin II; eric@ms.uky.edu - 15 Sept 1988]
 * Modified the sequent.h file for the Sequent Symmetry machine.
 * Biggest change was to align the sections in the a.out to 4K
 * boundaries (this is the page size).
 */


/* NOTICE: this file works for DYNIX release 3.0.12 on Sequent Symmetry
 * (Intel 80386) machines.  Hasn't been tested on anything else.
 */

/* The following line tells the configuration script what sort of
   operating system this machine is likely to run.
   USUAL-OPSYS="bsd4-3"  */

#include "intel386.h"

/* Data type of load average, as read out of kmem.  */

#define LOAD_AVE_TYPE unsigned long

/* Convert that into an integer that is 100 for a load average of 1.0  */

#define	FSCALE	1000.0
#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)

/* Name of file the to look in
   for the kernel symbol table (for load average) */

#undef KERNEL_FILE
#define KERNEL_FILE "/dynix"

/* Avoids a compiler bug */

#define TAHOE_REGISTER_BUG

/* Say that the text segment of a.out includes the header;
   the header actually occupies the first few bytes of the text segment
   and is counted in hdr.a_text.  Furthermore, the value written
   in the a_text in the file must have N_ADDRADJ added to it.  */

#define A_TEXT_OFFSET(HDR) (sizeof (HDR) + N_ADDRADJ (HDR))

/* This is the offset of the executable's text, from the start of the file.  */

#define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr))

/* The file sections in the Symmetry a.out must be on 4K boundaries.
 */
#define SEGSIZ 4096
#define SECTION_ALIGNMENT	(SEGSIZ-1)

/* (short) negative-int doesn't sign-extend correctly */
#define SHORT_CAST_BUG

/* Cause compilations to be done in parallel in ymakefile.  */
#define MAKE_PARALLEL &

/* Define how to search all pty names.
   This is for Dynix 3.0; delete next 5 definitions for older systems.  */

#define PTY_MAJOR "pqrstuvwPQRSTUVW"
#define PTY_MINOR "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
#define PTY_ITERATION					\
  register int ma, mi;					\
  for (ma = 0; ma < sizeof(PTY_MAJOR) - 1; ma++)	\
    for (mi = 0; mi < sizeof(PTY_MINOR) - 1; mi++)
#define PTY_NAME_SPRINTF \
  sprintf (pty_name, "/dev/pty%c%c", PTY_MAJOR[ma], PTY_MINOR[mi]);
#define PTY_TTY_NAME_SPRINTF \
  sprintf (pty_name, "/dev/tty%c%c", PTY_MAJOR[ma], PTY_MINOR[mi]);

/* arch-tag: 4169a89e-3764-4147-98df-1ba3bdd45a5b
   (do not change this comment) */