@c -*-texinfo-*-
@c This is part of the GNU Emacs Lisp Reference Manual.
@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001,
-@c 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+@c 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
@c See the file elisp.texi for copying conditions.
@setfilename ../../info/os
@node System Interface, Antinews, Display, Top
* System Environment:: Distinguish the name and kind of system.
* User Identification:: Finding the name and user id of the user.
* Time of Day:: Getting the current time.
-* Time Conversion:: Converting a time from numeric form
- to calendrical data, and vice versa).
+* Time Conversion:: Converting a time from numeric form to
+ calendrical data and vice versa.
* Time Parsing:: Converting a time from numeric form to text
and vice versa.
* Processor Run Time:: Getting the run time used by Emacs.
may not have a parent that can resume it again, and in any case you can
give input to some other job such as a shell merely by moving to a
different window. Therefore, suspending is not allowed when Emacs is using
-a window system (X, MS Windows, or Mac).
+a window system (X, MS Windows).
@defun suspend-emacs &optional string
This function stops Emacs and returns control to the superior process.
The value of this variable is a symbol indicating the type of operating
system Emacs is operating on. Here is a table of the possible values:
-@table @code
-@item alpha-vms
-VMS on the Alpha.
-
@item aix-v3
AIX.
@item cygwin
Cygwin.
-@item dgux
-Data General DGUX operating system.
-
@item gnu
the GNU system (using the GNU kernel, which consists of the HURD and Mach).
MS-DOS binds @code{system-type} to @code{ms-dos} even when you run it on
MS-Windows.
-@item next-mach
-NeXT Mach-based system.
-
-@item rtu
-Masscomp RTU, UCB universe.
-
-@item unisoft-unix
-UniSoft UniPlus.
-
@item usg-unix-v
AT&T System V.
-@item vax-vms
-VAX VMS.
-
@item windows-nt
Microsoft windows NT. The same executable supports Windows 9X, but the
value of @code{system-type} is @code{windows-nt} in either case.
-@item xenix
-SCO Xenix 386.
@end table
We do not wish to add new symbols to make finer distinctions unless it
The value is @code{nil} if Emacs is running under a window system.
@end defvar
-@defun setprv privilege-name &optional setp getprv
-This function sets or resets a VMS privilege. (It does not exist on
-other systems.) The first argument is the privilege name, as a string.
-The second argument, @var{setp}, is @code{t} or @code{nil}, indicating
-whether the privilege is to be turned on or off. Its default is
-@code{nil}. The function returns @code{t} if successful, @code{nil}
-otherwise.
-
-If the third argument, @var{getprv}, is non-@code{nil}, @code{setprv}
-does not change the privilege, but returns @code{t} or @code{nil}
-indicating whether the privilege is currently enabled.
-@end defun
-
@node User Identification
@section User Identification
@cindex user identification
@c Emacs 19 feature
@defun current-idle-time
-This function returns the length of time Emacs has been idle, as a
-list of three integers: @code{(@var{high} @var{low} @var{microsec})}.
-The integers @var{high} and @var{low} combine to give the number of
-seconds of idleness, which is
+If Emacs is idle, this function returns the length of time Emacs has
+been idle, as a list of three integers: @code{(@var{high} @var{low}
+@var{microsec})}. The integers @var{high} and @var{low} combine to
+give the number of seconds of idleness, which is
@ifnottex
@var{high} * 2**16 + @var{low}.
@end ifnottex
start of the current second (or 0 for systems that return time with
the resolution of only one second).
+When Emacs is not idle, @code{current-idle-time} returns @code{nil}.
+This is a convenient way to test whether Emacs is idle.
+
The main use of this function is when an idle timer function wants to
``take a break'' for a while. It can set up another idle timer to
call the same function again, after a few seconds more idleness.