comparison etc/NEWS @ 88123:375f2633d815

New directory
author Kenichi Handa <handa@m17n.org>
date Mon, 08 Sep 2003 11:56:09 +0000
parents e41d6d070429
children faa5bc8e8516
comparison
equal deleted inserted replaced
52428:27bc8b966642 88123:375f2633d815
80 --- 80 ---
81 ** A French translation of the Emacs Tutorial is available. 81 ** A French translation of the Emacs Tutorial is available.
82 82
83 83
84 * Changes in Emacs 21.4 84 * Changes in Emacs 21.4
85
86 ** Under XFree86 4, the display table is modified so that `' is
87 displayed as balanced quotes, not the ASCII glyphs whose shape has
88 been changed generally in the XFree86 fonts.
89 85
90 ** sql changes. 86 ** sql changes.
91 87
92 *** The variable `sql-product' controls the highlightng of different 88 *** The variable `sql-product' controls the highlightng of different
93 SQL dialects. This variable can be set globally via Customize, on a 89 SQL dialects. This variable can be set globally via Customize, on a
446 ** Emacs can produce an underscore-like (horizontal bar) cursor. 442 ** Emacs can produce an underscore-like (horizontal bar) cursor.
447 The underscore cursor is set by putting `(cursor-type . hbar)' in 443 The underscore cursor is set by putting `(cursor-type . hbar)' in
448 default-frame-alist. It supports variable heights, like the `bar' 444 default-frame-alist. It supports variable heights, like the `bar'
449 cursor does. 445 cursor does.
450 446
451 +++
452 ** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is
453 now controlled by the variable `blink-cursor-alist'.
454
455 ** Filesets are collections of files. You can define a fileset in 447 ** Filesets are collections of files. You can define a fileset in
456 various ways, such as based on a directory tree or based on 448 various ways, such as based on a directory tree or based on
457 program files that include other program files. 449 program files that include other program files.
458 450
459 Once you have defined a fileset, you can perform various operations on 451 Once you have defined a fileset, you can perform various operations on
468 ** The game `mpuz' is enhanced. 460 ** The game `mpuz' is enhanced.
469 461
470 `mpuz' now allows the 2nd factor not to have two identical digits. By 462 `mpuz' now allows the 2nd factor not to have two identical digits. By
471 default, all trivial operations involving whole lines are performed 463 default, all trivial operations involving whole lines are performed
472 automatically. The game uses faces for better visual feedback. 464 automatically. The game uses faces for better visual feedback.
465
466 +++
467 ** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is
468 now shown as a hollow box or a thin bar. However, you can control how
469 it blinks off by setting the variable `blink-cursor-alist'.
473 470
474 ** The new variable `x-select-request-type' controls how Emacs 471 ** The new variable `x-select-request-type' controls how Emacs
475 requests X selection. The default value is nil, which means that 472 requests X selection. The default value is nil, which means that
476 Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING, 473 Emacs requests X selection with types COMPOUND_TEXT and UTF8_STRING,
477 and use the more appropriately result. 474 and use the more appropriately result.
891 how to highlight the day in the calendar display. Specifying a 888 how to highlight the day in the calendar display. Specifying a
892 single-character string as @var{mark} places the character next to the 889 single-character string as @var{mark} places the character next to the
893 day in the calendar. Specifying a face highlights the day with that 890 day in the calendar. Specifying a face highlights the day with that
894 face. This lets you have different colors or markings for vacations, 891 face. This lets you have different colors or markings for vacations,
895 appointments, paydays or anything else using a sexp. 892 appointments, paydays or anything else using a sexp.
896
897 +++
898 ** The new function `calendar-goto-day-of-year' (g D) prompts for a
899 year and day number, and moves to that date. Negative day numbers
900 count backward from the end of the year.
901
902 ** The function `simple-diary-display' now by default sets a header line.
903 This can be controlled through the variables `diary-header-line-flag'
904 and `diary-header-line-format'.
905 893
906 ** VC Changes 894 ** VC Changes
907 895
908 *** The key C-x C-q no longer checks files in or out, it only changes 896 *** The key C-x C-q no longer checks files in or out, it only changes
909 the read-only state of the buffer (toggle-read-only). We made this 897 the read-only state of the buffer (toggle-read-only). We made this
1659 1647
1660 ** If you set `query-replace-skip-read-only' non-nil, 1648 ** If you set `query-replace-skip-read-only' non-nil,
1661 `query-replace' and related functions simply ignore 1649 `query-replace' and related functions simply ignore
1662 a match if part of it has a read-only property. 1650 a match if part of it has a read-only property.
1663 1651
1664 ** The new Lisp library fringe.el controls the apperance of fringes.
1665 1652
1666 * Lisp Changes in Emacs 21.4 1653 * Lisp Changes in Emacs 21.4
1667
1668 ** `latin1-char-displayable-p' is obsoleted by `char-displayable-p'.
1669
1670 ** New coding system property `mime-text-unsuitable' indicates that
1671 the coding system's `mime-charset' is not suitable for MIME text
1672 parts, e.g. utf-16.
1673
1674 ** The argument to forward-word, backward-word, forward-to-indentation
1675 and backward-to-indentation is now optional, and defaults to 1.
1676 1654
1677 +++ 1655 +++
1678 ** The new function `window-inside-edges' returns the edges of the 1656 ** The new function `window-inside-edges' returns the edges of the
1679 actual text portion of the window, not including the scroll bar or 1657 actual text portion of the window, not including the scroll bar or
1680 divider line, the fringes, the display margins, the header line and 1658 divider line, the fringes, the display margins, the header line and
1929 +++ 1907 +++
1930 ** The new function `minibufferp' returns non-nil if its optional buffer 1908 ** The new function `minibufferp' returns non-nil if its optional buffer
1931 argument is a minibuffer. If the argument is omitted it defaults to 1909 argument is a minibuffer. If the argument is omitted it defaults to
1932 the current buffer. 1910 the current buffer.
1933 1911
1934 +++
1935 ** There is a new Warnings facility; see the functions `warn' 1912 ** There is a new Warnings facility; see the functions `warn'
1936 and `display-warning'. 1913 and `display-warning'.
1937 1914
1938 +++ 1915 +++
1939 ** The functions all-completions and try-completion now accept lists 1916 ** The functions all-completions and try-completion now accept lists
1953 1930
1954 --- 1931 ---
1955 ** The new function `merge-coding-systems' fills in unspecified aspects 1932 ** The new function `merge-coding-systems' fills in unspecified aspects
1956 of one coding system from another coding system. 1933 of one coding system from another coding system.
1957 1934
1958 ---
1959 ** The variable `safe-local-eval-forms' specifies a list of forms that 1935 ** The variable `safe-local-eval-forms' specifies a list of forms that
1960 are ok to evaluate when they appear in an `eval' local variables 1936 are ok to evaluate when they appear in an `eval' local variables
1961 specification. Normally Emacs asks for confirmation before evaluating 1937 specification. Normally Emacs asks for confirmation before evaluating
1962 such a form, but if the form appears in this list, no confirmation is 1938 such a form, but if the form appears in this list, no confirmation is
1963 needed. 1939 needed.
1964 1940
1965 ---
1966 ** If a function has a non-nil `safe-local-eval-function' property, 1941 ** If a function has a non-nil `safe-local-eval-function' property,
1967 that means it is ok to evaluate some calls to that function when it 1942 that means it is ok to evaluate some calls to that function when it
1968 appears in an `eval' local variables specification. If the property 1943 appears in an `eval' local variables specification. If the property
1969 is t, then any form calling that function with constant arguments is 1944 is t, then any form calling that function with constant arguments is
1970 ok. If the property is a function or list of functions, they are called 1945 ok. If the property is a function or list of functions, they are called
1971 with the form as argument, and if any returns t, the form is ok to call. 1946 with the form as argument, and if any returns t, the form is ok to call.
1972 1947
1973 If the form is not "ok to call", that means Emacs asks for 1948 If the form is not "ok to call", that means Emacs asks for
1974 confirmation as before. 1949 confirmation as before.
1975 1950
1976 +++
1977 ** Controlling the default left and right fringe widths. 1951 ** Controlling the default left and right fringe widths.
1978 1952
1979 The default left and right fringe widths for all windows of a frame 1953 The default left and right fringe widths for all windows of a frame
1980 can now be controlled by setting the `left-fringe' and `right-fringe' 1954 can now be controlled by setting the `left-fringe' and `right-fringe'
1981 frame parameters to an integer value specifying the width in pixels. 1955 frame parameters to an integer value specifying the width in pixels.
1991 Setting the width to nil (the default), restores the default fringe 1965 Setting the width to nil (the default), restores the default fringe
1992 width which is the minimum number of pixels necessary to display any 1966 width which is the minimum number of pixels necessary to display any
1993 of the currently defined fringe bitmaps. The width of the built-in 1967 of the currently defined fringe bitmaps. The width of the built-in
1994 fringe bitmaps is 8 pixels. 1968 fringe bitmaps is 8 pixels.
1995 1969
1996 +++
1997 ** Per-window fringes settings 1970 ** Per-window fringes settings
1998 1971
1999 Windows can now have their own individual fringe widths and position 1972 Windows can now have their own individual fringe widths and position
2000 settings. 1973 settings.
2001 1974
2025 used to obtain the current settings. To make `scroll-bar-mode' and 1998 used to obtain the current settings. To make `scroll-bar-mode' and
2026 `scroll-bar-width' take effect, you must set them before displaying 1999 `scroll-bar-width' take effect, you must set them before displaying
2027 the buffer in a window, or use `set-window-buffer' to force an update 2000 the buffer in a window, or use `set-window-buffer' to force an update
2028 of the display margins. 2001 of the display margins.
2029 2002
2030 +++
2031 ** The function `set-window-buffer' now has an optional third argument 2003 ** The function `set-window-buffer' now has an optional third argument
2032 KEEP-MARGINS which will preserve the window's current margin, fringe, 2004 KEEP-MARGINS which will preserve the window's current margin, fringe,
2033 and scroll-bar settings if non-nil. 2005 and scroll-bar settings if non-nil.
2034 2006
2035 +++ 2007 +++
2038 find-file-not-found-hooks to find-file-not-found-functions, 2010 find-file-not-found-hooks to find-file-not-found-functions,
2039 write-file-hooks to write-file-functions, 2011 write-file-hooks to write-file-functions,
2040 write-contents-hooks to write-contents-functions. 2012 write-contents-hooks to write-contents-functions.
2041 Marked local-write-file-hooks as obsolete (use the LOCAL arg of `add-hook'). 2013 Marked local-write-file-hooks as obsolete (use the LOCAL arg of `add-hook').
2042 2014
2043 +++
2044 ** The new variable `delete-frame-functions' replaces `delete-frame-hook'. 2015 ** The new variable `delete-frame-functions' replaces `delete-frame-hook'.
2045 It was renamed to follow the naming conventions for abnormal hooks. The old 2016 It was renamed to follow the naming conventions for abnormal hooks. The old
2046 name remains available as an alias, but has been marked obsolete. 2017 name remains available as an alias, but has been marked obsolete.
2047 2018
2048 +++
2049 ** The `read-file-name' function now takes an additional argument which 2019 ** The `read-file-name' function now takes an additional argument which
2050 specifies a predicate which the file name read must satify. The 2020 specifies a predicate which the file name read must satify. The
2051 new variable `read-file-name-predicate' contains the predicate argument 2021 new variable `read-file-name-predicate' contains the predicate argument
2052 while reading the file name from the minibuffer; the predicate in this 2022 while reading the file name from the minibuffer; the predicate in this
2053 variable is used by read-file-name-internal to filter the completion list. 2023 variable is used by read-file-name-internal to filter the completion list.
2054 2024
2055 ---
2056 ** The new variable `read-file-name-function' can be used by lisp code 2025 ** The new variable `read-file-name-function' can be used by lisp code
2057 to override the internal read-file-name function. 2026 to override the internal read-file-name function.
2058 2027
2059 +++
2060 ** The new function `read-directory-name' can be used instead of 2028 ** The new function `read-directory-name' can be used instead of
2061 `read-file-name' to read a directory name; when used, completion 2029 `read-file-name' to read a directory name; when used, completion
2062 will only show directories. 2030 will only show directories.
2063 2031
2064 +++
2065 ** The new function `file-remote-p' tests a file name and returns 2032 ** The new function `file-remote-p' tests a file name and returns
2066 non-nil if it specifies a remote file (one that Emacs accesses using 2033 non-nil if it specifies a remote file (one that Emacs accesses using
2067 its own special methods and not directly through the file system). 2034 its own special methods and not directly through the file system).
2068 2035
2069 ---
2070 ** When a Lisp file uses CL functions at run-time, compiling the file 2036 ** When a Lisp file uses CL functions at run-time, compiling the file
2071 now issues warnings about these calls, unless the file performs 2037 now issues warnings about these calls, unless the file performs
2072 (require 'cl) when loaded. 2038 (require 'cl) when loaded.
2073 2039
2074 +++ 2040 ** The new Lisp library fringe.el controls the apperance of fringes.
2041
2075 ** The `defmacro' form may contain declarations specifying how to 2042 ** The `defmacro' form may contain declarations specifying how to
2076 indent the macro in Lisp mode and how to debug it with Edebug. The 2043 indent the macro in Lisp mode and how to debug it with Edebug. The
2077 syntax of defmacro has been extended to 2044 syntax of defmacro has been extended to
2078 2045
2079 (defmacro NAME LAMBDA-LIST [DOC-STRING] [DECLARATION ...] ...) 2046 (defmacro NAME LAMBDA-LIST [DOC-STRING] [DECLARATION ...] ...)
2086 2053
2087 (edebug DEBUG) 2054 (edebug DEBUG)
2088 Set NAME's `edebug-form-spec' property to DEBUG. (This is 2055 Set NAME's `edebug-form-spec' property to DEBUG. (This is
2089 equivalent to writing a `def-edebug-spec' for the macro. 2056 equivalent to writing a `def-edebug-spec' for the macro.
2090 2057
2091 +++
2092 ** Interactive commands can be remapped through keymaps. 2058 ** Interactive commands can be remapped through keymaps.
2093 2059
2094 This is an alternative to using defadvice or substitute-key-definition 2060 This is an alternative to using defadvice or substitute-key-definition
2095 to modify the behavior of a key binding using the normal keymap 2061 to modify the behavior of a key binding using the normal keymap
2096 binding and lookup functionality. 2062 binding and lookup functionality.
2143 2109
2144 - The new variable `this-original-command' contains the original 2110 - The new variable `this-original-command' contains the original
2145 command before remapping. It is equal to `this-command' when the 2111 command before remapping. It is equal to `this-command' when the
2146 command was not remapped. 2112 command was not remapped.
2147 2113
2148 +++
2149 ** New variable emulation-mode-map-alists. 2114 ** New variable emulation-mode-map-alists.
2150 2115
2151 Lisp packages using many minor mode keymaps can now maintain their own 2116 Lisp packages using many minor mode keymaps can now maintain their own
2152 keymap alist separate from minor-mode-map-alist by adding their keymap 2117 keymap alist separate from minor-mode-map-alist by adding their keymap
2153 alist to this list. 2118 alist to this list.
2215 This variable allows you to create alternative names for text 2180 This variable allows you to create alternative names for text
2216 properties. It works at the same level as `default-text-properties', 2181 properties. It works at the same level as `default-text-properties',
2217 although it applies to overlays as well. This variable was introduced 2182 although it applies to overlays as well. This variable was introduced
2218 to implement the `font-lock-face' property. 2183 to implement the `font-lock-face' property.
2219 2184
2220 +++
2221 ** New special text property `font-lock-face'. 2185 ** New special text property `font-lock-face'.
2222 2186
2223 This property acts like the `face' property, but it is controlled by 2187 This property acts like the `face' property, but it is controlled by
2224 M-x font-lock-mode. It is not, strictly speaking, a builtin text 2188 M-x font-lock-mode. It is not, strictly speaking, a builtin text
2225 property. Instead, it is implemented inside font-core.el, using the 2189 property. Instead, it is implemented inside font-core.el, using the
2226 new variable `char-property-alias-alist'. 2190 new variable `char-property-alias-alist'.
2227 2191
2228 +++
2229 ** New function remove-list-of-text-properties. 2192 ** New function remove-list-of-text-properties.
2230 2193
2231 The new function `remove-list-of-text-properties' is almost the same 2194 The new function `remove-list-of-text-properties' is almost the same
2232 as `remove-text-properties'. The only difference is that it takes 2195 as `remove-text-properties'. The only difference is that it takes
2233 a list of property names as argument rather than a property list. 2196 a list of property names as argument rather than a property list.
2234 2197
2235 +++
2236 ** New function insert-for-yank. 2198 ** New function insert-for-yank.
2237 2199
2238 This function normally works like `insert' but removes the text 2200 This function normally works like `insert' but removes the text
2239 properties in the `yank-excluded-properties' list. However, if the 2201 properties in the `yank-excluded-properties' list. However, if the
2240 inserted text has a `yank-handler' text property on the first 2202 inserted text has a `yank-handler' text property on the first
2241 character of the string, the insertion of the text may be modified in 2203 character of the string, the insertion of the text may be modified in
2242 a number of ways. See the description of `yank-handler' below. 2204 a number of ways. See the description of `yank-handler' below.
2243 2205
2244 +++
2245 ** New function insert-buffer-substring-as-yank. 2206 ** New function insert-buffer-substring-as-yank.
2246 2207
2247 This function works like `insert-buffer-substring', but removes the 2208 This function works like `insert-buffer-substring', but removes the
2248 text properties in the `yank-excluded-properties' list. 2209 text properties in the `yank-excluded-properties' list.
2249 2210
2250 +++
2251 ** New function insert-buffer-substring-no-properties. 2211 ** New function insert-buffer-substring-no-properties.
2252 2212
2253 This function is like insert-buffer-substring, but removes all 2213 This function is like insert-buffer-substring, but removes all
2254 text properties from the inserted substring. 2214 text properties from the inserted substring.
2255 2215
2256 +++
2257 ** New `yank-handler' text property may be used to control how 2216 ** New `yank-handler' text property may be used to control how
2258 previously killed text on the kill-ring is reinserted. 2217 previously killed text on the kill-ring is reinserted.
2259 2218
2260 The value of the yank-handler property must be a list with one to four 2219 The value of the yank-handler property must be a list with one to five
2261 elements with the following format: 2220 elements with the following format:
2262 (FUNCTION PARAM NOEXCLUDE UNDO). 2221 (FUNCTION PARAM NOEXCLUDE UNDO).
2263 2222
2264 The `insert-for-yank' function looks for a yank-handler property on 2223 The `insert-for-yank' function looks for a yank-handler property on
2265 the first character on its string argument (typically the first 2224 the first character on its string argument (typically the first
2279 If UNDO is present and non-nil, it is a function that will be called 2238 If UNDO is present and non-nil, it is a function that will be called
2280 by `yank-pop' to undo the insertion of the current object. It is 2239 by `yank-pop' to undo the insertion of the current object. It is
2281 called with two arguments, the start and end of the current region. 2240 called with two arguments, the start and end of the current region.
2282 FUNCTION may set `yank-undo-function' to override the UNDO value. 2241 FUNCTION may set `yank-undo-function' to override the UNDO value.
2283 2242
2284 *** The functions kill-new, kill-append, and kill-region now have an 2243 *** The functions kill-new, kill-append, and kill-region now has an
2285 optional argument to specify the yank-handler text property to put on 2244 optional third argument to specify the yank-handler text property
2286 the killed text. 2245 to put on the killed text.
2287 2246
2288 *** The function yank-pop will now use a non-nil value of the variable 2247 *** The function yank-pop will now use a non-nil value of the variable
2289 `yank-undo-function' (instead of delete-region) to undo the previous 2248 `yank-undo-function' (instead of delete-region) to undo the previous
2290 yank or yank-pop command (or a call to insert-for-yank). The function 2249 yank or yank-pop command (or a call to insert-for-yank). The function
2291 insert-for-yank automatically sets that variable according to the UNDO 2250 insert-for-yank automatically sets that variable according to the UNDO
2403 as the "key" bound by that key binding. 2362 as the "key" bound by that key binding.
2404 2363
2405 This is relevant only if Lisp code looks for 2364 This is relevant only if Lisp code looks for
2406 the bindings that were made with easymenu. 2365 the bindings that were made with easymenu.
2407 2366
2408 +++
2409 ** The function `commandp' takes an additional optional 2367 ** The function `commandp' takes an additional optional
2410 argument. If it is non-nil, then `commandp' checks 2368 argument. If it is non-nil, then `commandp' checks
2411 for a function that could be called with `call-interactively', 2369 for a function that could be called with `call-interactively',
2412 and does not return t for keyboard macros. 2370 and does not return t for keyboard macros.
2413 2371
2440 ** New function window-body-height. 2398 ** New function window-body-height.
2441 2399
2442 This is like window-height but does not count the mode line 2400 This is like window-height but does not count the mode line
2443 or the header line. 2401 or the header line.
2444 2402
2445 +++
2446 ** New function format-mode-line. 2403 ** New function format-mode-line.
2447 2404
2448 This returns the mode-line or header-line of the selected (or a 2405 This returns the mode-line or header-line of the selected (or a
2449 specified) window as a string with or without text properties. 2406 specified) window as a string with or without text properties.
2450 2407
2451 +++
2452 ** New functions `lax-plist-get' and `lax-plist-put'. 2408 ** New functions `lax-plist-get' and `lax-plist-put'.
2453 2409
2454 These functions are like `plist-get' and `plist-put' except that they 2410 These functions are like `plist-get' and `plist-put' except that they
2455 compare the property name using `equal' rather than `eq'. 2411 compare the property name using `equal' rather than `eq'.
2456 2412
2457 +++
2458 ** New function `tool-bar-local-item-from-menu' 2413 ** New function `tool-bar-local-item-from-menu'
2459 2414
2460 The `tool-bar-add-item-from-menu' must not be used (as previously 2415 The `tool-bar-add-item-from-menu' must not be used (as previously
2461 recommended) for making entries in the tool bar for local keymaps. 2416 recommended) for making entries in the tool bar for local keymaps.
2462 Instead, use the function `tool-bar-local-item-from-menu', which lets 2417 Instead, use the function `tool-bar-local-item-from-menu', which lets
12119 12074
12120 Local variables: 12075 Local variables:
12121 mode: outline 12076 mode: outline
12122 paragraph-separate: "[ ]*$" 12077 paragraph-separate: "[ ]*$"
12123 end: 12078 end:
12124
12125 arch-tag: 1aca9dfa-2ac4-4d14-bebf-0007cee12793