📄 onews.3
字号:
If this variable is non-`nil', then when Emacs is about to save afile, it will create the backup file by copying if that would avoidchanging the file's uid or gid.The default value of this variable is `nil', because usually it isuseful to have the uid of a file change according to who edited itlast. I recommend thet this variable be left normally `nil' andchanged with a local variables list in those particular files wherethe uid needs to be preserved.** New parameter `file-precious-flag'.If this variable is non-`nil', saving the buffer tries to avoidleaving an incomplete file due to disk full or other I/O errors.It renames the old file before saving. If saving is successful,the renamed file is deleted; if saving gets an error, the renamedfile is renamed back to the name you visited.Backups are always made by copying for such files.** New variable `buffer-offer-save'.If the value of this variable is non-`nil' in a buffer then exitingEmacs will offer to save the buffer (if it is modified and nonempty)even if the buffer is not visiting a file. This variable isautomatically made local to the current buffer whenever it is set.** `rename-file', `copy-file', `add-name-to-file' and `make-symbolic-link'.The third argument to these functions used to be `t' or `nil'; `t'meaning go ahead even if the specified new file name already has a file,and `nil' meaning to get an error.Now if the third argument is a number it means to ask the user forconfirmation in this case.** New optional argument to `copy-file'.If `copy-file' receives a non-nil fourth argument, it attemptsto give the new copy the same time-of-last-modification that theoriginal file has.** New function `file-newer-than-file-p'.(file-newer-than-file-p FILE1 FILE2) returns non-nil if FILE1 has beenmodified more recently than FILE2. If FILE1 does not exist, the valueis always nil; otherwise, if FILE2 does not exist, the value is t.This is meant for use when FILE2 depends on FILE1, to see if changesin FILE1 make it necessary to recompute FILE2 from it.** Changed function `file-exists-p'.This function is no longer the same as `file-readable-p'.`file-exists-p' can now return t for a file that exists but whichthe fascists won't allow you to read.** New function `file-locked-p'.This function receives a file name as argument and returns `nil'if the file is not locked, `t' if locked by this Emacs, or astring giving the name of the user who has locked it.** New function `file-name-sans-versions'.(file-name-sans-versions NAME) returns a substring of NAME, with anyversion numbers or other backup suffixes deleted from the end.** New functions for directory names.Although a directory is really a kind of file, specifying a directoryuses a somewhat different syntax from specifying a file.In Emacs, a directory name is used as part of a file name.On Unix, the difference is small: a directory name ends in a slash,while a file name does not: thus, `/usr/rms/' to name a directory,while `/usr/rms' names the file which holds that directory.On VMS, the difference is considerable: `du:[rms.foo]' specifies adirectory, but the name of the file that holds that directory is`du:[rms]foo.dir'.There are two new functions for converting between directory namesand file names. `directory-file-name' takes a directory name andreturns the name of the file in which that directory's data is stored.`file-name-as-directory' takes the name of a file and returnsthe corresponding directory name. These always understand Unix file namesyntax; on VMS, they understand VMS syntax as well.For example, (file-name-as-directory "/usr/rms") returns "/usr/rms/"and (directory-file-name "/usr/rms/") returns "/usr/rms".On VMS, (file-name-as-directory "du:[rms]foo.dir") returns "du:[rms.foo]"and (directory-file-name "du:[rms.foo]") returns "du:[rms]foo.dir".** Value of `file-attributes' changed.The function file-attributes returns a list containing many kinds ofinformation about a file. Now the list has eleven elements.The tenth element is `t' if deleting the file and creating anotherfile of the same name would result in a change in the file's group;`nil' if there would be no change. You can also think of this ascomparing the file's group with the default group for files created inthe same directory by you.The eleventh element is the inode number of the file.** VMS-only function `file-name-all-versions'.This function returns a list of all the completions, including versionnumber, of a specified version-number-less file name. This is like`file-name-all-completions', except that the latter returns valuesthat do not include version numbers.** VMS-only variable `vms-stmlf-recfm'.On a VMS system, if this variable is non-nil, Emacs will give newlycreated files the record format `stmlf'. This is necessary for filesthat must contain lines of arbitrary length, such as compiled EmacsLisp.When writing a new version of an existing file, Emacs always keepsthe same record format as the previous version; so this variable hasno effect.This variable has no effect on Unix systems.** `insert-file-contents' on an empty file.This no longer sets the buffer's "modified" flag.** New function (VMS only) `define-logical-name':(define-logical-name LOGICAL TRANSLATION) defines a VMS logical nameLOGICAL whose translation is TRANSLATION. The new name applies tothe current process only.** Deleted variable `ask-about-buffer-names'.If you want buffer names for files to be generated in a special way,you must redefine `create-file-buffer'.* Subprocess-related changes.** New function `process-list'.This function takes no arguments and returns a list of allof Emacs's asynchronous subprocesses.** New function `process-exit-status'.This function, given a process, process name or buffer as argument,returns the exit status code or signal number of the process.If the process has not yet exited or died, this function returns 0.** Process output ignores `buffer-read-only'.Output from a process will go into the process's buffer even if thebuffer is read only.** Switching buffers in filter functions and sentinels.Emacs no longer saves and restore the current buffer around callingthe filter and sentinel functions, so these functions can nowpermanently alter the selected buffer in a straightforward manner.** Specifying environment variables for subprocesses.When a subprocess is started with `start-process' or `call-process',the value of the variable `process-environment' is taken tospecify the environment variables to give the subprocess. Thevalue should be a list of strings, each of the form "VAR=VALUE".`process-environment' is initialized when Emacs starts upbased on Emacs's environment.** New variable `process-connection-type'.If this variable is `nil', when a subprocess is created, Emacs usesa pipe rather than a pty to communicate with it. Normally thisvariable is `t', telling Emacs to use a pty if ptys are supportedand one is available.** New function `waiting-for-user-input-p'.This function, given a subprocess as argument, returns `t' if thatsubprocess appears to be waiting for input sent from Emacs,or `nil' otherwise.** New hook `shell-set-directory-error-hook'.The value of this variable is called, with no arguments, wheneverShell mode gets an error trying to keep track of directory-settingcommands (such as `cd' and `pushd') used in the shell buffer.* New functions `user-uid' and `user-real-uid'.These functions take no arguments and return, respectively,the effective uid and the real uid of the Emacs process.The value in each case is an integer.* New variable `print-escape-newlines' controls string printing.If this variable is non-`nil', then when a Lisp string is printedby the Lisp printing function `prin1' or `print', newline charactersare printed as `\n' rather than as a literal newline.* New function `sysnetunam' on HPUX.This function takes two arguments, a network address PATH and alogin string LOGIN, and executes the system call `netunam'.It returns `t' if the call succeeds, otherwise `nil'.News regarding installation:* Many `s-...' file names changed.Many `s-...' files have been renamed. All periods in such names,except the ones just before the final `h', have been changed tohyphens. Thus, `s-bsd4.2.h' has been renamed to `s-bsd4-2.h'.This is so a Unix distribution can be moved mechanically to VMS.* `DOCSTR...' file now called `DOC-...'.The file of on-line documentation strings, that used to be`DOCSTR.mm.nn.oo' in this directory, is now called `DOC-mm.nn.oo'.This is so that it can port to VMS using the standard conventionsfor translating filenames for VMS.This file also now contains the doc strings for variables aswell as functions.* Emacs no longer uses floating point arithmetic.This may make it easier to port to some machines.* Macros `XPNTR' and `XSETPNTR'; flag `DATA_SEG_BITS'.These macros exclusively are used to unpack a pointer from a Lisp_Objectand to insert a pointer into a Lisp_Object. Redefining them may helpport Emacs to machines in which all pointers to data objects havecertain high bits set.If `DATA_SEG_BITS' is defined, it should be a number which containsthe high bits to be inclusive or'ed with pointers that are unpacked.* New flag `HAVE_X_MENU'.Define this flag in `config.h' in addition to `HAVE_X_WINDOWS'to enable use of the Emacs interface to X Menus. On some operatingsystems, the rest of the X interface works properly but X Menusdo not work; hence this separate flag. See the file `src/xmenu.c'for more information.* Macros `ARRAY_MARK_FLAG' and `DONT_COPY_FLAG'.* `HAVE_ALLOCA' prevents assembly of `alloca.s'.* `SYSTEM_MALLOC' prevents use of GNU `malloc.c'.SYSTEM_MALLOC, if defined, means use the system's own `malloc' routinesrather than those that come with Emacs.Use this only if absolutely necessary, because if it is used you donot get warnings when space is getting low.* New flags to control unexec.See the file `unexec.c' for a long comment on the compilationswitches that suffice to make it work on many machines.* `PNTR_COMPARISON_TYPE'Pointers that need to be compared for ordering are converted to this typefirst. Normally this is `unsigned int'.* `HAVE_VFORK', `HAVE_DUP2' and `HAVE_GETTIMEOFDAY'.These flags just say whether certain system calls are available.* New macros control compiler switches, linker switches and libraries.The m- and s- files can now control in a modular fashion the precisearguments passed to `cc' and `ld'.LIBS_STANDARD defines the standard C libraries. Default is `-lc'.LIBS_DEBUG defines the extra libraries to use when debugging. Default `-lg'.LIBS_SYSTEM can be defined by the s- file to specify extra libraries.LIBS_MACHINE can be defined by the m- file to specify extra libraries.LIBS_TERMCAP defines the libraries for Termcap or Terminfo. It is defined by default in a complicated fashion but the m- or s- file can override it.LD_SWITCH_SYSTEM can be defined by the s- file to specify extra `ld' switches. The default is `-X' on BSD systems except those few that use COFF object files.LD_SWITCH_MACHINE can be defined by the m- file to specify extra `ld' switches.C_DEBUG_SWITCH defines the switches to give `cc' when debugging. Default `-g'.C_OPTIMIZE_SWITCH defines the switches to give `cc' to optimize. Default `-O'.C_SWITCH_MACHINE can be defined by the m- file to specify extra `cc' switches.For older news, see the file ONEWS.2.----------------------------------------------------------------------Copyright information:Copyright (C) 1988 Free Software Foundation, Inc. Permission is granted to anyone to make or distribute verbatim copies of this document as received, in any medium, provided that the copyright notice and this permission notice are preserved, thus giving the recipient permission to redistribute in turn. Permission is granted to distribute modified versions of this document, or of portions of it, under the above conditions, provided also that they carry prominent notices stating who last changed them.Local variables:mode: textend:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -