view GETTING.GNU.SOFTWARE @ 23977:abc9bc6aef59

Can use linear algorithm for indentation if Emacs supports it. (cperl-after-expr-p): It is BLOCK if we reach lim when backup sexp. (cperl-after-block-p): Likewise. (cperl-after-block-and-statement-beg): Likewise. (cperl-after-block-p): After END/BEGIN we are a block. (cperl-after-expr-p): Skip labels when checking (cperl-indent-region): Make a marker for END - text added/removed. Disable hooks during the call (how to call them later?). Now indents 820-line-long function in 6.5 sec (including syntaxification) the first time (when buffer has few properties), 7.1 sec the second time. (cperl-indent-region): Do not indent whitespace lines (cperl-style-alist) Include `cperl-merge-trailing-else' where the value is clear. (cperl-styles-entries): Likewise. (cperl-problems): Improvements to docs. (cperl-tips): Likewise. (cperl-non-problems): Likewise. (cperl-mode): Make lazy syntaxification possible. Loads pseudo-faces for the sake of `cperl-find-pods-heres' (for 19.30). `font-lock-unfontify-region-function' was set to a wrong function. (cperl-find-pods-heres): Safe a position in buffer where it is safe to restart syntaxification. Changed so that -d ?foo? is a RE. Do not warn on `=cut' if doing a chunk only. 1 << 6 was OK, but 1<<6 was considered as HERE-doc. <file/glob> made into a string. Postpone addition of faces after syntactic step. Recognition of <FH> was wrong. Highlight `gem' in s///gem as a keyword. `qr' recognized. Knows that split// is null-RE. Highlights separators in 3-parts expressions as labels. <> was considered as a glob. Would err if the last line is `=head1'. $a-1 ? foo : bar; was a considered a regexp. `<< (' was considered a start of HERE-doc. mark qq[]-etc sections as syntax-type=string Was not processing sub protos after a comment ine. Was treating $a++ <= 5 as a glob. Tolerate unfinished REx at end-of-buffer. `unwind-protect' was left commented. / and ? after : start a REx. (cperl-syntaxify-by-font-lock): Set to t, should be safe now. Better default, customizes to `message' too, off in text-mode. (cperl-array-face): Renamed from `font-lock-emphasized-face', `defface'd. (cperl-hash-face): Renamed from `font-lock-other-emphasized-face'. `defface'd. (cperl-emacs-can-parse): New state variable. (cperl-indent-line): Corrected to use global state. (cperl-calculate-indent): Likewise. (cperl-fix-line-spacing): Likewise (not used yet). (cperl-calculate-indent): Did not consider `,' as continuation mark for statements. (cperl-calculate-indent): Avoid parse-data optimization at toplevel. Remove another parse-data optimization at toplevel: would indent correctly. Correct for labels when calculating indentation of continuations. Docstring updated. (cperl-choose-color): Converted to a function (to be compilable in text-mode). (cperl-dark-background): Disable without window-system. Do `defface' only if window-system. (cperl-fix-line-spacing): sped up to bail out early. (x-color-defined-p): was not compiling on XEmacs Was defmacro'ed with a tick. Remove another def. (cperl-clobber-lisp-bindings): if set, C-c variants are the old ones (cperl-unwind-to-safe): New function. (cperl-fontify-syntaxically): Use `cperl-unwind-to-safe' to start at reasonable position. (cperl-fontify-syntaxically): Unwinds start and end to go out of long strings (not very successful). (cperl-forward-re): Highlight the trailing / in s/foo// as string. Highlight the starting // in s//foo/ as function-name. Emit a meaningful error instead of a cryptic one for an uncomplete REx near end-of-buffer. (cperl-electric-keyword): `qr' recognized. (cperl-electric-else): Likewise (cperl-to-comment-or-eol): Likewise (cperl-make-regexp-x): Likewise (cperl-init-faces): Likewise, and `lock' (as overridable?). Corrected to use new macros; `if' for copying `reference-face' to `constant-face' was backward. remove init `font-lock-other-emphasized-face', `font-lock-emphasized-face', `font-lock-keyword-face'. Interpolate `cperl-invalid-face'. (cperl-make-regexp-x): Misprint in a message. (cperl-syntaxify-unwind): New configuration variable (cperl-fontify-m-as-s): New configuration variable (cperl-electric-pod): check for after-expr was performed inside of POD too. (cperl-backward-to-noncomment): better treatment of PODs and HEREs. (cperl-clobber-mode-lists): New configuration variable. (cperl-not-bad-style-regexp): Updated. Init: `cperl-is-face' was busted. (cperl-make-face): New macros. (cperl-force-face): New macros. (font-lock-other-type-face): Done via `defface' too. (cperl-nonoverridable-face): New face. Renamed from `font-lock-other-type-face'. (cperl-init-faces-weak): use `cperl-force-face'. (cperl-comment-indent): Commenting __END__ was not working. (cperl-indent-for-comment): Likewise. (cperl-write-tags): Correct for XEmacs's `visit-tags-table-buffer'. When removing old TAGS info was not relativizing filename. (cperl-tags-hier-init): Gross hack to pretend we work (are we?). Another try to work around XEmacs problems. Better progress messages. (toplevel): require custom unprotected => failure on 19.28. (cperl-xemacs-p): defined when compile too (cperl-find-tags): Was writing line/pos in a wrong order, pos off by 1 and not at beg-of-line. (cperl-etags-snarf-tag): New macro (cperl-etags-goto-tag-location): New macro (cperl-version): New variable. New menu entry random docstrings: References to "future" 20.3 removed. Menu was described as `CPerl' instead of `Perl' (perl-font-lock-keywords): Would not highlight `sub foo($$);'. (cperl-toggle-construct-fix): Was toggling to t instead of 1. (cperl-ps-print-init): Associate `cperl-array-face', `cperl-hash-face' Remove `font-lock-emphasized-face', `font-lock-other-emphasized-face', `font-lock-reference-face', `font-lock-keyword-face'. Use `eval-after-load'. Remove not-CPerl-related faces. (cperl-tips-faces): New variable and an entry into Mini-docs. (cperl-indent-exp): Was not processing else-blocks. (cperl-get-state): NOP line removed. (cperl-ps-print): New function and menu entry. (cperl-ps-print-face-properties): New configuration variable. (cperl-invalid-face): New configuration variable. (perl-font-lock-keywords): Highlight trailing whitespace (cperl-contract-levels): Documentation corrected. (cperl-contract-level): Likewise. (cperl-ps-extend-face-list): New macro. (cperl-invalid-face): Change to ''underline.
author Richard M. Stallman <rms@gnu.org>
date Sat, 02 Jan 1999 00:16:05 +0000
parents 6fcc2c9a1857
children
line wrap: on
line source

-*- text -*-
		  Getting GNU Software, 14 May 94
Copyright (C) 1986, 1987, 1988, 1989, 1990, 1992, 1993, 1994 Free Software Foundation, Inc.


	Permission is granted to anyone to make or distribute verbatim
	copies of this document provided that the copyright notice and
	this permission notice are preserved, and that the distributor
	grants the recipient permission for further redistribution as
	permitted by this notice.


* GNU and the Free Software Foundation

Project GNU is organized as part of the Free Software Foundation, Inc.
The Free Software Foundation has the following goals: 1) to create GNU
as a full development/operating system.  2) to distribute GNU and
other useful software with source code and permission to copy and
redistribute.

Further information on the rationale for GNU is in file
`/pub/gnu/GNUinfo/GNU' (all files referred to are on the Internet host
prep.ai.mit.edu).

Information on GNU Internet mailing lists and gnUSENET newsgroups can
be found in `/pub/gnu/GNUinfo/MAILINGLISTS'.

* How To Get The Software

The easiest way to get a copy of the distribution is from someone else
who has it.  You need not ask for permission to do so, or tell any one
else; just copy it.  The second easiest is to ftp it over the
Internet.  The third easiest way is to uucp it.  Ftp and uucp
information is in `/pub/gnu/GNUinfo/FTP'.

If you cannot get a copy any of these ways, or if you would feel more
confident getting copies straight from us, or if you would like to get
some funds to us to help in our efforts, you can order one from the
Free Software Foundation.  See `/pub/gnu/GNUinfo/DISTRIB' and
`/pub/gnu/GNUinfo/ORDERS'.

* What format are the *.gz files in?

Because the unix `compress' utility is patented (by two separate
patents, in fact), we cannot use it; it's not free software.

Therefore, the GNU Project has chosen a new compression utility,
`gzip', which is free of any known software patents and which tends to
compress better anyway.  As of March 1993, all compressed files in the
GNU anonymous FTP area, `prep.ai.mit.edu:/pub/gnu', have been
converted to the new format.  Files compressed with this new
compression program end in `.gz' (as opposed to `compress'-compressed
files, which end in `.Z').

Gzip can uncompress `compress'-compressed files and `pack'-compressed
files (which end in `.z').  This is possible because the various
decompression algorithms are not patented---only compression is.

The gzip program is available from any GNU mirror site (see
`/pub/gnu/GNUinfo/FTP' for a list of mirror sites) in shar, tar, or
gzipped tar format (for those who already have a prior version of gzip
and want faster data transmission).  It works on virtually every unix
system, MSDOS, OS/2, and VMS.

* Available Software

** GNU Emacs

The GNU Emacs distribution includes: 	
	- manual source in TeX format.
	- an enhanced regex (regular expression) library.

See files `/pub/gnu/GNUinfo/MACHINES*' for the status of porting Emacs
to various machines and operating systems.

** C Scheme - a block structured dialect of LISP.

The Free Software Foundation distributes C Scheme for the MIT Scheme
Project on its Scheme tapes.  The full ftp distribution can be gotten
via anonymous FTP from altdorf.ai.mit.edu in directory /archive.

Problems with the C Scheme distribution and its ftp distribution
should be referred to: <bug-cscheme@martigny.ai.mit.edu>.  There are
two general mailing lists: <info-cscheme@martigny.ai.mit.edu>and
<scheme@mc.lcs.mit.edu>.  Send requests to join either list to:
<info-cscheme-request@martigny.ai.mit.edu> or
<scheme-request@mc.lcs.mit.edu>.

** Other GNU Software

A full list of available software are in `/pub/gnu/GNUinfo/ORDERS' and
`/pub/gnu/DESCRIPTIONS'.

* No Warranties

We distribute software in the hope that it will be useful, but without
any warranty.  No author or distributor of this software accepts
responsibility to anyone for the consequences of using it or for
whether it serves any particular purpose or works at all, unless he
says so in writing.

* If You Like The Software

If you like the software developed and distributed by the Free
Software Foundation, please express your satisfaction with a donation.
Your donations will help to support the foundation and make our future
efforts successful, including a complete development and operating
system, called GNU (Gnu's Not Un*x), which will run Un*x user
programs.  Please note that donations and funds raised by selling
tapes, CD-ROMs, and floppy diskettes are the major source of funding
for our work.

For more information on GNU and the Foundation, contact us at Internet
address <gnu@prep.ai.mit.edu> or the foundation's US Mail address
found in file `/pub/gnu/GNUinfo/ORDERS'.