aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa2012-10-07 21:58:14 +0900
committerKenichi Handa2012-10-07 21:58:14 +0900
commitdade5fca51ce2ed10fdace1cfcf78287599154a1 (patch)
tree299c84e1ce2c5a95237b41781113790626d259c5
parent6aa75fb62f6cdc4164d935ef14d57feec5ed6e0a (diff)
parent78d876b90e52400b7bbb086ca1a471d3d20d0e98 (diff)
downloademacs-dade5fca51ce2ed10fdace1cfcf78287599154a1.tar.gz
emacs-dade5fca51ce2ed10fdace1cfcf78287599154a1.zip
merge trunk
-rw-r--r--ChangeLog10
-rw-r--r--admin/ChangeLog16
-rw-r--r--admin/admin.el39
-rw-r--r--admin/grammars/README4
-rwxr-xr-xautogen/configure37
-rw-r--r--configure.ac22
-rw-r--r--doc/emacs/ChangeLog9
-rw-r--r--doc/emacs/calendar.texi11
-rw-r--r--doc/emacs/mini.texi2
-rw-r--r--etc/ChangeLog4
-rw-r--r--etc/NEWS5
-rw-r--r--lisp/ChangeLog123
-rw-r--r--lisp/ChangeLog.154
-rw-r--r--lisp/avoid.el1
-rw-r--r--lisp/calc/calc.el1
-rw-r--r--lisp/calendar/cal-menu.el9
-rw-r--r--lisp/calendar/cal-tex.el81
-rw-r--r--lisp/calendar/calendar.el5
-rw-r--r--lisp/calendar/icalendar.el1
-rw-r--r--lisp/calendar/timeclock.el3
-rw-r--r--lisp/cedet/ChangeLog15
-rw-r--r--lisp/cedet/ede/linux.el2
-rw-r--r--lisp/cedet/semantic/bovine/grammar.el (renamed from admin/grammars/bovine-grammar.el)17
-rw-r--r--lisp/cedet/semantic/complete.el22
-rw-r--r--lisp/cedet/semantic/wisent/grammar.el (renamed from admin/grammars/wisent-grammar.el)14
-rw-r--r--lisp/ehelp.el4
-rw-r--r--lisp/emacs-lisp/cl-loaddefs.el7
-rw-r--r--lisp/emacs-lisp/cl-macs.el5
-rw-r--r--lisp/emulation/crisp.el6
-rw-r--r--lisp/erc/ChangeLog29
-rw-r--r--lisp/erc/erc-backend.el2
-rw-r--r--lisp/erc/erc-button.el3
-rw-r--r--lisp/erc/erc-desktop-notifications.el1
-rw-r--r--lisp/erc/erc-log.el10
-rw-r--r--lisp/erc/erc-stamp.el5
-rw-r--r--lisp/erc/erc.el1
-rw-r--r--lisp/eshell/esh-mode.el6
-rw-r--r--lisp/files.el2
-rw-r--r--lisp/gnus/ChangeLog9
-rw-r--r--lisp/gnus/gnus-msg.el2
-rw-r--r--lisp/gnus/gnus-notifications.el1
-rw-r--r--lisp/gnus/gnus-sync.el4
-rw-r--r--lisp/hi-lock.el12
-rw-r--r--lisp/mail/rmail.el2
-rw-r--r--lisp/mail/rmailmm.el13
-rw-r--r--lisp/minibuffer.el1
-rw-r--r--lisp/net/tramp.el1
-rw-r--r--lisp/proced.el1
-rw-r--r--lisp/profiler.el1
-rw-r--r--lisp/progmodes/bug-reference.el1
-rw-r--r--lisp/progmodes/flymake.el3
-rw-r--r--lisp/progmodes/python.el77
-rw-r--r--lisp/progmodes/sh-script.el4
-rw-r--r--lisp/progmodes/verilog-mode.el3
-rw-r--r--lisp/progmodes/vhdl-mode.el3
-rw-r--r--lisp/register.el2
-rw-r--r--lisp/strokes.el5
-rw-r--r--lisp/subr.el20
-rw-r--r--lisp/textmodes/reftex-vars.el10
-rw-r--r--lisp/textmodes/rst.el12
-rw-r--r--src/ChangeLog62
-rw-r--r--src/nsfns.m47
-rw-r--r--src/nsimage.m8
-rw-r--r--src/nsmenu.m5
-rw-r--r--src/nsselect.m4
-rw-r--r--src/nsterm.h16
-rw-r--r--src/nsterm.m232
-rw-r--r--src/sysdep.c18
-rw-r--r--src/syssignal.h2
69 files changed, 731 insertions, 388 deletions
diff --git a/ChangeLog b/ChangeLog
index 90b57c4c3da..1a7b9f61828 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
12012-10-07 Jan Djärv <jan.h.d@swipnet.se>
2
3 * configure.ac: Check that OSX is 10.4 or newer.
4
52012-10-07 Paul Eggert <eggert@cs.ucla.edu>
6
7 Improve sys_siglist detection.
8 * configure.ac (sys_siglist): Look for its decl in <signal.h>.
9 Otherwise, it's not found in either Fedora 17 or Solaris 11.
10
12012-10-04 Paul Eggert <eggert@cs.ucla.edu> 112012-10-04 Paul Eggert <eggert@cs.ucla.edu>
2 12
3 Merge from gnulib, incorporating: 13 Merge from gnulib, incorporating:
diff --git a/admin/ChangeLog b/admin/ChangeLog
index 2da65523116..7d4921887ce 100644
--- a/admin/ChangeLog
+++ b/admin/ChangeLog
@@ -1,3 +1,19 @@
12012-10-07 Glenn Morris <rgm@gnu.org>
2
3 * admin.el (cusver-new-version): Set default.
4 (cusver-check): Improve interactive argument reading.
5
62012-10-06 Glenn Morris <rgm@gnu.org>
7
8 * admin.el (cusver-new-version): New variable.
9 (cusver-scan): Check if containing group has a :version.
10 (cusver-check): Add VERSION argument.
11
122012-10-01 David Engster <deng@randomsample.de>
13
14 * grammars/bovine-grammar.el:
15 * grammars/wisent-grammar.el: Move to lisp directory.
16
12012-10-01 David Engster <deng@randomsample.de> 172012-10-01 David Engster <deng@randomsample.de>
2 18
3 * grammars/bovine-grammar.el (bovine--grammar-newstyle-unquote): 19 * grammars/bovine-grammar.el (bovine--grammar-newstyle-unquote):
diff --git a/admin/admin.el b/admin/admin.el
index c71e6539413..3e3fbba7202 100644
--- a/admin/admin.el
+++ b/admin/admin.el
@@ -442,8 +442,12 @@ If optional OLD is non-nil, also include defvars."
442 )) 442 ))
443 "{}" "+")) 443 "{}" "+"))
444 444
445;; TODO if a defgroup with a version tag, apply to all customs in that 445(defvar cusver-new-version (format "%s.%s" emacs-major-version
446;; group (eg for new files). 446 (1+ emacs-minor-version))
447 "Version number that new defcustoms should have.")
448
449;; TODO do something about renamed variables with aliases to the old name?
450;; Scan old cus-start.el to find variables moved from C to lisp?
447(defun cusver-scan (file &optional old) 451(defun cusver-scan (file &optional old)
448 "Scan FILE for `defcustom' calls. 452 "Scan FILE for `defcustom' calls.
449Return a list with elements of the form (VAR . VER), 453Return a list with elements of the form (VAR . VER),
@@ -452,8 +456,8 @@ a :version tag having value VER (may be nil).
452If optional argument OLD is non-nil, also scan for defvars." 456If optional argument OLD is non-nil, also scan for defvars."
453 (let ((m (format "Scanning %s..." file)) 457 (let ((m (format "Scanning %s..." file))
454 (re (format "^[ \t]*\\((def%s\\)[ \t\n]" 458 (re (format "^[ \t]*\\((def%s\\)[ \t\n]"
455 (if old "\\(?:custom\\|var\\)" "custom"))) 459 (if old "\\(custom\\|var\\)" "\\(custom\\|group\\)")))
456 alist var ver form) 460 alist var ver form glist grp)
457 (message "%s" m) 461 (message "%s" m)
458 (with-temp-buffer 462 (with-temp-buffer
459 (insert-file-contents file) 463 (insert-file-contents file)
@@ -461,11 +465,23 @@ If optional argument OLD is non-nil, also scan for defvars."
461 (while (re-search-forward re nil t) 465 (while (re-search-forward re nil t)
462 (goto-char (match-beginning 1)) 466 (goto-char (match-beginning 1))
463 (if (and (setq form (ignore-errors (read (current-buffer)))) 467 (if (and (setq form (ignore-errors (read (current-buffer))))
464 (setq var (car-safe (cdr-safe form))) 468 (setq var (car-safe (cdr-safe form)))
465 ;; Exclude macros, eg (defcustom ,varname ...). 469 ;; Exclude macros, eg (defcustom ,varname ...).
466 (symbolp var)) 470 (symbolp var))
467 (setq ver (car (cdr-safe (memq :version form))) 471 (progn
468 alist (cons (cons var ver) alist)) 472 (setq ver (car (cdr-safe (memq :version form))))
473 (if (equal "group" (match-string 2))
474 ;; Group :version could be old.
475 (if (equal ver cusver-new-version)
476 (setq glist (cons (cons var ver) glist)))
477 ;; If it specifies a group and the whole group has a
478 ;; version. use that.
479 (unless ver
480 (setq grp (car (cdr-safe (memq :group form))))
481 (and grp
482 (setq grp (car (cdr-safe grp))) ; (quote foo) -> foo
483 (setq ver (assq grp glist))))
484 (setq alist (cons (cons var ver) alist))))
469 (if form (message "Malformed defcustom: `%s'" form))))) 485 (if form (message "Malformed defcustom: `%s'" form)))))
470 (message "%sdone" m) 486 (message "%sdone" m)
471 alist)) 487 alist))
@@ -490,7 +506,7 @@ If optional argument OLD is non-nil, also scan for defvars."
490;; TODO handle renamed things with aliases to the old names. 506;; TODO handle renamed things with aliases to the old names.
491;; What to do about new files? Does everything in there need a :version, 507;; What to do about new files? Does everything in there need a :version,
492;; or eg just the defgroup? 508;; or eg just the defgroup?
493(defun cusver-check (newdir olddir) 509(defun cusver-check (newdir olddir version)
494 "Check that defcustoms have :version tags where needed. 510 "Check that defcustoms have :version tags where needed.
495NEWDIR is the current lisp/ directory, OLDDIR is that from the previous 511NEWDIR is the current lisp/ directory, OLDDIR is that from the previous
496release. A defcustom that is only in NEWDIR should have a :version 512release. A defcustom that is only in NEWDIR should have a :version
@@ -499,11 +515,16 @@ just converting a defvar to a defcustom does not require a :version bump.
499 515
500Note that a :version tag should also be added if the value of a defcustom 516Note that a :version tag should also be added if the value of a defcustom
501changes (in a non-trivial way). This function does not check for that." 517changes (in a non-trivial way). This function does not check for that."
502 (interactive "DNew Lisp directory: \nDOld Lisp directory: ") 518 (interactive (list (read-directory-name "New Lisp directory: ")
519 (read-directory-name "Old Lisp directory: ")
520 (number-to-string
521 (read-number "New version number: "
522 (string-to-number cusver-new-version)))))
503 (or (file-directory-p (setq newdir (expand-file-name newdir))) 523 (or (file-directory-p (setq newdir (expand-file-name newdir)))
504 (error "Directory `%s' not found" newdir)) 524 (error "Directory `%s' not found" newdir))
505 (or (file-directory-p (setq olddir (expand-file-name olddir))) 525 (or (file-directory-p (setq olddir (expand-file-name olddir)))
506 (error "Directory `%s' not found" olddir)) 526 (error "Directory `%s' not found" olddir))
527 (setq cusver-new-version version)
507 (let* ((newfiles (progn (message "Finding new files with defcustoms...") 528 (let* ((newfiles (progn (message "Finding new files with defcustoms...")
508 (cusver-find-files newdir))) 529 (cusver-find-files newdir)))
509 (oldfiles (progn (message "Finding old files with defcustoms...") 530 (oldfiles (progn (message "Finding old files with defcustoms...")
diff --git a/admin/grammars/README b/admin/grammars/README
index 419797e0dcb..e38260952a5 100644
--- a/admin/grammars/README
+++ b/admin/grammars/README
@@ -3,8 +3,8 @@ generate the parser data in the lisp/semantic/bovine/ and
3lisp/semantic/wisent/ directories. You can run the parser generators 3lisp/semantic/wisent/ directories. You can run the parser generators
4with 4with
5 5
6emacs -batch -Q -l bovine-grammar.el -f bovine-make-parsers 6emacs -batch -Q -l semantic/bovine/grammar -f bovine-make-parsers
7emacs -batch -Q -l wisent-grammar.el -f wisent-make-parsers 7emacs -batch -Q -l semantic/wisent/grammar -f wisent-make-parsers
8 8
9Currently, the parser files in lisp/ are not generated directly from 9Currently, the parser files in lisp/ are not generated directly from
10these grammar files when making Emacs. This state of affairs, and the 10these grammar files when making Emacs. This state of affairs, and the
diff --git a/autogen/configure b/autogen/configure
index f08dd5503a2..623d93bb39c 100755
--- a/autogen/configure
+++ b/autogen/configure
@@ -8814,7 +8814,9 @@ $as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
8814 8814
8815fi 8815fi
8816 8816
8817ac_fn_c_check_decl "$LINENO" "sys_siglist" "ac_cv_have_decl_sys_siglist" "$ac_includes_default" 8817ac_fn_c_check_decl "$LINENO" "sys_siglist" "ac_cv_have_decl_sys_siglist" "#include <signal.h>
8818
8819"
8818if test "x$ac_cv_have_decl_sys_siglist" = x""yes; then : 8820if test "x$ac_cv_have_decl_sys_siglist" = x""yes; then :
8819 ac_have_decl=1 8821 ac_have_decl=1
8820else 8822else
@@ -8827,7 +8829,9 @@ _ACEOF
8827 8829
8828if test $ac_cv_have_decl_sys_siglist != yes; then 8830if test $ac_cv_have_decl_sys_siglist != yes; then
8829 # For Tru64, at least: 8831 # For Tru64, at least:
8830 ac_fn_c_check_decl "$LINENO" "__sys_siglist" "ac_cv_have_decl___sys_siglist" "$ac_includes_default" 8832 ac_fn_c_check_decl "$LINENO" "__sys_siglist" "ac_cv_have_decl___sys_siglist" "#include <signal.h>
8833
8834"
8831if test "x$ac_cv_have_decl___sys_siglist" = x""yes; then : 8835if test "x$ac_cv_have_decl___sys_siglist" = x""yes; then :
8832 ac_have_decl=1 8836 ac_have_decl=1
8833else 8837else
@@ -9510,6 +9514,32 @@ else
9510fi 9514fi
9511 9515
9512 9516
9517
9518 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9519/* end confdefs.h. */
9520#include <AppKit/AppKit.h>
9521int
9522main ()
9523{
9524
9525#ifdef MAC_OS_X_VERSION_MAX_ALLOWED
9526#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1040
9527 ; /* OK */
9528#else
9529#error "OSX 10.4 or newer required"
9530#endif
9531#endif
9532
9533 ;
9534 return 0;
9535}
9536_ACEOF
9537if ac_fn_c_try_compile "$LINENO"; then :
9538 ns_osx_have_104=yes
9539else
9540 ns_osx_have_104=no
9541fi
9542rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
9513 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 9543 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9514/* end confdefs.h. */ 9544/* end confdefs.h. */
9515#include <Foundation/NSObjCRuntime.h> 9545#include <Foundation/NSObjCRuntime.h>
@@ -9527,6 +9557,9 @@ else
9527 ns_have_nsinteger=no 9557 ns_have_nsinteger=no
9528fi 9558fi
9529rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext 9559rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
9560 if test $ns_osx_have_104 = no; then
9561 as_fn_error "\`OSX 10.4 or newer is required'" "$LINENO" 5;
9562 fi
9530 if test $ns_have_nsinteger = yes; then 9563 if test $ns_have_nsinteger = yes; then
9531 9564
9532$as_echo "#define NS_HAVE_NSINTEGER 1" >>confdefs.h 9565$as_echo "#define NS_HAVE_NSINTEGER 1" >>confdefs.h
diff --git a/configure.ac b/configure.ac
index edbae29c59f..748f435aec2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1284,10 +1284,12 @@ dnl On Solaris 8 there's a compilation warning for term.h because
1284dnl it doesn't define `bool'. 1284dnl it doesn't define `bool'.
1285AC_CHECK_HEADERS(term.h, , , -) 1285AC_CHECK_HEADERS(term.h, , , -)
1286AC_HEADER_TIME 1286AC_HEADER_TIME
1287AC_CHECK_DECLS([sys_siglist]) 1287AC_CHECK_DECLS([sys_siglist], [], [], [[#include <signal.h>
1288 ]])
1288if test $ac_cv_have_decl_sys_siglist != yes; then 1289if test $ac_cv_have_decl_sys_siglist != yes; then
1289 # For Tru64, at least: 1290 # For Tru64, at least:
1290 AC_CHECK_DECLS([__sys_siglist]) 1291 AC_CHECK_DECLS([__sys_siglist], [], [], [[#include <signal.h>
1292 ]])
1291 if test $ac_cv_have_decl___sys_siglist = yes; then 1293 if test $ac_cv_have_decl___sys_siglist = yes; then
1292 AC_DEFINE(sys_siglist, __sys_siglist, 1294 AC_DEFINE(sys_siglist, __sys_siglist,
1293 [Define to any substitute for sys_siglist.]) 1295 [Define to any substitute for sys_siglist.])
@@ -1508,10 +1510,26 @@ fail;
1508 AC_CHECK_HEADER([AppKit/AppKit.h], [HAVE_NS=yes], 1510 AC_CHECK_HEADER([AppKit/AppKit.h], [HAVE_NS=yes],
1509 [AC_MSG_ERROR([`--with-ns' was specified, but the include 1511 [AC_MSG_ERROR([`--with-ns' was specified, but the include
1510 files are missing or cannot be compiled.])]) 1512 files are missing or cannot be compiled.])])
1513
1514 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <AppKit/AppKit.h>],
1515 [
1516#ifdef MAC_OS_X_VERSION_MAX_ALLOWED
1517#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1040
1518 ; /* OK */
1519#else
1520#error "OSX 10.4 or newer required"
1521#endif
1522#endif
1523 ])],
1524 ns_osx_have_104=yes,
1525 ns_osx_have_104=no)
1511 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <Foundation/NSObjCRuntime.h>], 1526 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <Foundation/NSObjCRuntime.h>],
1512 [NSInteger i;])], 1527 [NSInteger i;])],
1513 ns_have_nsinteger=yes, 1528 ns_have_nsinteger=yes,
1514 ns_have_nsinteger=no) 1529 ns_have_nsinteger=no)
1530 if test $ns_osx_have_104 = no; then
1531 AC_MSG_ERROR([`OSX 10.4 or newer is required']);
1532 fi
1515 if test $ns_have_nsinteger = yes; then 1533 if test $ns_have_nsinteger = yes; then
1516 AC_DEFINE(NS_HAVE_NSINTEGER, 1, [Define to 1 if `NSInteger' is defined.]) 1534 AC_DEFINE(NS_HAVE_NSINTEGER, 1, [Define to 1 if `NSInteger' is defined.])
1517 fi 1535 fi
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index 572cc4f5532..067574b9a0d 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,3 +1,12 @@
12012-10-06 Glenn Morris <rgm@gnu.org>
2
3 * calendar.texi (Writing Calendar Files): Tweak week descriptions.
4 Mention cal-tex-cursor-week2-summary.
5
62012-10-06 Chong Yidong <cyd@gnu.org>
7
8 * mini.texi (Passwords): Fix typo.
9
12012-10-02 Glenn Morris <rgm@gnu.org> 102012-10-02 Glenn Morris <rgm@gnu.org>
2 11
3 * maintaining.texi (VC Directory Commands): 12 * maintaining.texi (VC Directory Commands):
diff --git a/doc/emacs/calendar.texi b/doc/emacs/calendar.texi
index fdf1c65fcd6..d46e26cddcf 100644
--- a/doc/emacs/calendar.texi
+++ b/doc/emacs/calendar.texi
@@ -396,17 +396,20 @@ Generate a sideways-printing one-month calendar
396Generate a one-day calendar 396Generate a one-day calendar
397(@code{cal-tex-cursor-day}). 397(@code{cal-tex-cursor-day}).
398@item t w 1 398@item t w 1
399Generate a one-page calendar for one week 399Generate a one-page calendar for one week, with hours
400(@code{cal-tex-cursor-week}). 400(@code{cal-tex-cursor-week}).
401@item t w 2 401@item t w 2
402Generate a two-page calendar for one week 402Generate a two-page calendar for one week, with hours
403(@code{cal-tex-cursor-week2}). 403(@code{cal-tex-cursor-week2}).
404@item t w 3 404@item t w 3
405Generate an ISO-style calendar for one week 405Generate an ISO-style calendar for one week, without hours
406(@code{cal-tex-cursor-week-iso}). 406(@code{cal-tex-cursor-week-iso}).
407@item t w 4 407@item t w 4
408Generate a calendar for one Monday-starting week 408Generate a calendar for one Monday-starting week, with hours
409(@code{cal-tex-cursor-week-monday}). 409(@code{cal-tex-cursor-week-monday}).
410@item t w W
411Generate a two-page calendar for one week, without hours
412(@code{cal-tex-cursor-week2-summary}).
410@item t f w 413@item t f w
411Generate a Filofax-style two-weeks-at-a-glance calendar 414Generate a Filofax-style two-weeks-at-a-glance calendar
412(@code{cal-tex-cursor-filofax-2week}). 415(@code{cal-tex-cursor-filofax-2week}).
diff --git a/doc/emacs/mini.texi b/doc/emacs/mini.texi
index 5d2fc804498..cb47a966f64 100644
--- a/doc/emacs/mini.texi
+++ b/doc/emacs/mini.texi
@@ -727,7 +727,7 @@ completion, and you cannot change windows or perform any other action
727with Emacs until you have submitted the password. 727with Emacs until you have submitted the password.
728 728
729 While you are typing the password, you may press @key{DEL} to delete 729 While you are typing the password, you may press @key{DEL} to delete
730backwards, removing the last character entered. @key{C-u} deletes 730backwards, removing the last character entered. @kbd{C-u} deletes
731everything you have typed so far. @kbd{C-g} quits the password prompt 731everything you have typed so far. @kbd{C-g} quits the password prompt
732(@pxref{Quitting}). @kbd{C-y} inserts the current kill into the 732(@pxref{Quitting}). @kbd{C-y} inserts the current kill into the
733password (@pxref{Killing}). You may type either @key{RET} or 733password (@pxref{Killing}). You may type either @key{RET} or
diff --git a/etc/ChangeLog b/etc/ChangeLog
index ad6c6395e49..001bfe271af 100644
--- a/etc/ChangeLog
+++ b/etc/ChangeLog
@@ -1,3 +1,7 @@
12012-10-07 Jan Djärv <jan.h.d@swipnet.se>
2
3 * NEWS (NextStep/OSX port changes): OSX 10.4 or newer is required.
4
12012-10-05 Douglas Lewan <d_lewan2000@yahoo.com> (tiny change) 52012-10-05 Douglas Lewan <d_lewan2000@yahoo.com> (tiny change)
2 6
3 * tutorials/TUTORIAL.pt_BR: Fix typo. (Bug#12557) 7 * tutorials/TUTORIAL.pt_BR: Fix typo. (Bug#12557)
diff --git a/etc/NEWS b/etc/NEWS
index be75b665c1d..1a7eb82967d 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -191,6 +191,8 @@ The PCL-CVS commands are still available via the keyboard.
191 191
192** NextStep/OSX port changes. 192** NextStep/OSX port changes.
193--- 193---
194*** OSX 10.4 or newer is required to build Emacs.
195---
194*** Fullscreen and frame parameter fullscreen is supported. 196*** Fullscreen and frame parameter fullscreen is supported.
195--- 197---
196*** A file dialog is used when open/saved is done from the menu/toolbar. 198*** A file dialog is used when open/saved is done from the menu/toolbar.
@@ -281,6 +283,9 @@ Use `Buffer-menu-name-width' and `Buffer-menu-size-width' instead.
281*** You can customize the header text that appears above each calendar month. 283*** You can customize the header text that appears above each calendar month.
282See the variable `calendar-month-header'. 284See the variable `calendar-month-header'.
283 285
286+++
287*** New LaTeX calendar style, produced by `cal-tex-cursor-week2-summary'.
288
284*** The calendars produced by cal-html include holidays. 289*** The calendars produced by cal-html include holidays.
285Customize cal-html-holidays to change this. 290Customize cal-html-holidays to change this.
286 291
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index bc8840819a3..b2cc65a0ca3 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -3,6 +3,115 @@
3 * international/mule-conf.el (compound-text-with-extensions): Add 3 * international/mule-conf.el (compound-text-with-extensions): Add
4 :mime-charset property as x-ctext. 4 :mime-charset property as x-ctext.
5 5
62012-10-07 Stefan Merten <smerten@oekonux.de>
7
8 * textmodes/rst.el (rst-new-adornment-down, rst-indent-field)
9 (rst-indent-literal-normal, rst-indent-literal-minimized)
10 (rst-indent-comment): Correct :version tag.
11
122012-10-07 Glenn Morris <rgm@gnu.org>
13
14 * mail/rmailmm.el (rmail-mime-process-multipart):
15 Do not confuse a multipart message with an epilogue
16 with a "truncated" one; fixes 2011-06-27 change. (Bug#10101)
17
182012-10-07 Fabián Ezequiel Gallina <fgallina@cuca>
19
20 Fix shell output retrieval and comint-prompt-regexp init.
21 * progmodes/python.el (inferior-python-mode):
22 (python-shell-make-comint): Fix initialization of
23 comint-prompt-regexp from copied file local variables.
24 (python-shell-fetched-lines): Remove var.
25 (python-shell-output-filter-in-progress): Rename from
26 python-shell-fetch-lines-in-progress.
27 (python-shell-output-filter-buffer): Rename from
28 python-shell-fetch-lines-string.
29 (python-shell-fetch-lines-filter): Delete function.
30 (python-shell-output-filter): New function.
31 (python-shell-send-string-no-output): Use them.
32
332012-10-07 Glenn Morris <rgm@gnu.org>
34
35 * hi-lock.el (hi-lock-process-phrase):
36 Try to make it less fragile. (Bug#7161)
37
38 * hi-lock.el (hi-lock-face-phrase-buffer): Doc fix.
39
402012-10-06 Glenn Morris <rgm@gnu.org>
41
42 * ehelp.el (electric-help-mode): Use help-mode rather than
43 non-existent mode `help'.
44 (electric-help-map): Use button-buffer-map. (Bug#10917)
45
46 * textmodes/reftex-vars.el (reftex-create-bibtex-header)
47 (reftex-create-bibtex-footer): Fix custom types.
48
49 * progmodes/sh-script.el (sh-indent-after-continuation):
50 Add explicit :group.
51
52 * textmodes/rst.el (rst-preferred-decorations)
53 (rst-shift-basic-offset): Clarify obsolescence versions.
54
55 * profiler.el (profiler): Add missing group :version tag.
56 * avoid.el (mouse-avoidance-banish-position):
57 * proced.el (proced-renice-command):
58 * calc/calc.el (calc-ensure-consistent-units):
59 * calendar/icalendar.el (icalendar-import-format-uid):
60 * net/tramp.el (tramp-save-ad-hoc-proxies):
61 * progmodes/bug-reference.el (bug-reference-bug-regexp):
62 * progmodes/flymake.el (flymake-error-bitmap)
63 (flymake-warning-bitmap, flymake-fringe-indicator-position):
64 * progmodes/sh-script.el (sh-indent-after-continuation):
65 * progmodes/verilog-mode.el (verilog-auto-template-warn-unused)
66 (verilog-before-save-font-hook, verilog-after-save-font-hook):
67 * progmodes/vhdl-mode.el (vhdl-makefile-default-targets)
68 (vhdl-array-index-record-field-in-sensitivity-list)
69 (vhdl-indent-comment-like-next-code-line):
70 * textmodes/reftex-vars.el (reftex-ref-style-alist)
71 (reftex-ref-macro-prompt, reftex-ref-style-default-list)
72 (reftex-cite-key-separator, reftex-create-bibtex-header)
73 (reftex-create-bibtex-footer):
74 * textmodes/rst.el (rst-new-adornment-down, rst-indent-field)
75 (rst-indent-literal-normal, rst-indent-literal-minimized)
76 (rst-indent-comment): Add missing custom :version tags.
77
78 * calendar/timeclock.el (timeclock-modeline-display):
79 Add missing obsolete alias for renamed user option.
80
81 * strokes.el (strokes-modeline-string):
82 * emulation/crisp.el (crisp-mode-modeline-string):
83 * eshell/esh-mode.el (eshell-status-in-modeline):
84 Aliases to defcustoms must come before the defcustom.
85
86 * calendar/cal-tex.el (cal-tex-diary, cal-tex-cursor-week)
87 (cal-tex-cursor-week2, cal-tex-cursor-week-iso)
88 (cal-tex-cursor-week-monday): Doc fixes.
89 (cal-tex-cursor-week2-summary): Doc fix.
90 Rename from cal-tex-cursor-week-at-a-glance.
91
92 * calendar/cal-menu.el (cal-menu-context-mouse-menu):
93 Tweak week descriptions. Add cal-tex-cursor-week2-summary.
94
95 * calendar/calendar.el (calendar-mode-map):
96 Add cal-tex-cursor-week2-summary.
97
982012-10-06 Stefan Monnier <monnier@iro.umontreal.ca>
99
100 * emacs-lisp/cl-macs.el (cl-defstruct): Improve docstring.
101
102 * subr.el (read-passwd-map): New var.
103 (read-passwd): Use `read-string' again.
104 * minibuffer.el (delete-minibuffer-contents): Make it interactive.
105
1062012-10-06 Jambunathan K <kjambunathan@gmail.com>
107
108 * register.el (append-to-register, prepend-to-register):
109 Deactivate mark, as does `copy-to-register' (bug#12389).
110
1112012-10-06 Chong Yidong <cyd@gnu.org>
112
113 * files.el (auto-mode-alist): Add .by and .wy (Semantic grammars).
114
62012-10-06 Ikumi Keita <ikumi@ikumi.que.jp> (tiny change) 1152012-10-06 Ikumi Keita <ikumi@ikumi.que.jp> (tiny change)
7 116
8 * international/characters.el: Fix simple mistake ((car chars) -> 117 * international/characters.el: Fix simple mistake ((car chars) ->
@@ -69,7 +178,7 @@
69 (python-fill-decorator-function, python-fill-paren-function): 178 (python-fill-decorator-function, python-fill-paren-function):
70 Remove :safe for defcustoms. 179 Remove :safe for defcustoms.
71 (python-fill-string-style): New defcustom 180 (python-fill-string-style): New defcustom
72 (python-fill-paragraph-function): Enhanced context detection. 181 (python-fill-paragraph-function): Enhance context detection.
73 (python-fill-string): Honor python-fill-string-style settings. 182 (python-fill-string): Honor python-fill-string-style settings.
74 183
752012-10-04 Martin Rudalics <rudalics@gmx.at> 1842012-10-04 Martin Rudalics <rudalics@gmx.at>
@@ -101,8 +210,8 @@
101 210
1022012-10-02 Chong Yidong <cyd@gnu.org> 2112012-10-02 Chong Yidong <cyd@gnu.org>
103 212
104 * progmodes/hideif.el (hif-lookup, hif-defined): Handle 213 * progmodes/hideif.el (hif-lookup, hif-defined):
105 semantic-c-takeover-hideif. 214 Handle semantic-c-takeover-hideif.
106 215
1072012-10-02 Paul Eggert <eggert@cs.ucla.edu> 2162012-10-02 Paul Eggert <eggert@cs.ucla.edu>
108 217
@@ -118,8 +227,8 @@
118 227
1192012-10-02 Sergio Durigan Junior <sergiodj@riseup.net> (tiny change) 2282012-10-02 Sergio Durigan Junior <sergiodj@riseup.net> (tiny change)
120 229
121 * net/eudcb-bbdb.el (eudc-bbdb-format-record-as-result): Fix 230 * net/eudcb-bbdb.el (eudc-bbdb-format-record-as-result):
122 querying BBDB for entries without a last name (Bug#11580). 231 Fix querying BBDB for entries without a last name (Bug#11580).
123 232
1242012-10-02 Chong Yidong <cyd@gnu.org> 2332012-10-02 Chong Yidong <cyd@gnu.org>
125 234
@@ -1566,12 +1675,12 @@
15662012-09-08 Jambunathan K <kjambunathan@gmail.com> 16752012-09-08 Jambunathan K <kjambunathan@gmail.com>
1567 1676
1568 * register.el (register): New group. 1677 * register.el (register): New group.
1569 (register-separator): New user option. 1678 (separator-register): New user option.
1570 (increment-register): Route it to `append-to-register', if 1679 (increment-register): Route it to `append-to-register', if
1571 register contains text. Implication is that `C-x r +' can now be 1680 register contains text. Implication is that `C-x r +' can now be
1572 used for appending to a text register (bug#12217). 1681 used for appending to a text register (bug#12217).
1573 (append-to-register, prepend-to-register): Add separator based on 1682 (append-to-register, prepend-to-register): Add separator based on
1574 `register-separator. 1683 `separator-register'.
1575 1684
15762012-09-08 Alan Mackenzie <acm@muc.de> 16852012-09-08 Alan Mackenzie <acm@muc.de>
1577 1686
diff --git a/lisp/ChangeLog.15 b/lisp/ChangeLog.15
index 65a7baf44c4..83657a98bfd 100644
--- a/lisp/ChangeLog.15
+++ b/lisp/ChangeLog.15
@@ -10962,7 +10962,7 @@
10962 10962
10963 * Version 23.2 released. 10963 * Version 23.2 released.
10964 10964
109652010-05-07 Deniz Dogan <deniz.a.m.dogan@gmail.com> (tiny change) 109652010-05-07 Deniz Dogan <deniz.a.m.dogan@gmail.com>
10966 Stefan Monnier <monnier@iro.umontreal.ca> 10966 Stefan Monnier <monnier@iro.umontreal.ca>
10967 10967
10968 Highlight vendor specific properties. 10968 Highlight vendor specific properties.
@@ -15541,7 +15541,7 @@
15541 * window.el (move-to-window-line-last-op): Remove. 15541 * window.el (move-to-window-line-last-op): Remove.
15542 (move-to-window-line-top-bottom): Reuse recenter-last-op instead. 15542 (move-to-window-line-top-bottom): Reuse recenter-last-op instead.
15543 15543
155442009-11-23 Deniz Dogan <deniz.a.m.dogan@gmail.com> (tiny change) 155442009-11-23 Deniz Dogan <deniz.a.m.dogan@gmail.com>
15545 15545
15546 Make M-r mirror the new cycling behavior of C-l. 15546 Make M-r mirror the new cycling behavior of C-l.
15547 * window.el (move-to-window-line-last-op): New var. 15547 * window.el (move-to-window-line-last-op): New var.
diff --git a/lisp/avoid.el b/lisp/avoid.el
index 2fa6ef39e70..7f4b78bf5e0 100644
--- a/lisp/avoid.el
+++ b/lisp/avoid.el
@@ -128,6 +128,7 @@ SIDE-POS: Distance from right or left edge of frame or window.
128TOP-OR-BOTTOM: banish the mouse to top or bottom of frame or window. 128TOP-OR-BOTTOM: banish the mouse to top or bottom of frame or window.
129TOP-OR-BOTTOM-POS: Distance from top or bottom edge of frame or window." 129TOP-OR-BOTTOM-POS: Distance from top or bottom edge of frame or window."
130 :group 'avoid 130 :group 'avoid
131 :version "24.3"
131 :type '(alist :key-type symbol :value-type symbol) 132 :type '(alist :key-type symbol :value-type symbol)
132 :options '(frame-or-window side (side-pos integer) 133 :options '(frame-or-window side (side-pos integer)
133 top-or-bottom (top-or-bottom-pos integer))) 134 top-or-bottom (top-or-bottom-pos integer)))
diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el
index 25f591a3945..f1643b10a76 100644
--- a/lisp/calc/calc.el
+++ b/lisp/calc/calc.el
@@ -423,6 +423,7 @@ in normal mode."
423 "If non-nil, make sure new units are consistent with current units 423 "If non-nil, make sure new units are consistent with current units
424when converting units." 424when converting units."
425 :group 'calc 425 :group 'calc
426 :version "24.3"
426 :type 'boolean) 427 :type 'boolean)
427 428
428(defcustom calc-undo-length 429(defcustom calc-undo-length
diff --git a/lisp/calendar/cal-menu.el b/lisp/calendar/cal-menu.el
index d4546125f3e..52c82b661e8 100644
--- a/lisp/calendar/cal-menu.el
+++ b/lisp/calendar/cal-menu.el
@@ -237,10 +237,11 @@ is non-nil."
237 ;; These did not work if called without calendar window selected. 237 ;; These did not work if called without calendar window selected.
238 ("Prepare LaTeX buffer" 238 ("Prepare LaTeX buffer"
239 ["Daily (1 page)" cal-tex-cursor-day] 239 ["Daily (1 page)" cal-tex-cursor-day]
240 ["Weekly (1 page)" cal-tex-cursor-week] 240 ["Weekly (1 page, with hours)" cal-tex-cursor-week]
241 ["Weekly (2 pages)" cal-tex-cursor-week2] 241 ["Weekly (2 pages, with hours)" cal-tex-cursor-week2]
242 ["Weekly (other style; 1 page)" cal-tex-cursor-week-iso] 242 ["Weekly (1 page, no hours)" cal-tex-cursor-week-iso]
243 ["Weekly (yet another style; 1 page)" cal-tex-cursor-week-monday] 243 ["Weekly (1 page, with hours, different style)" cal-tex-cursor-week-monday]
244 ["Weekly (2 pages, no hours)" cal-tex-cursor-week2-summary]
244 ["Monthly" cal-tex-cursor-month] 245 ["Monthly" cal-tex-cursor-month]
245 ["Monthly (landscape)" cal-tex-cursor-month-landscape] 246 ["Monthly (landscape)" cal-tex-cursor-month-landscape]
246 ["Yearly" cal-tex-cursor-year] 247 ["Yearly" cal-tex-cursor-year]
diff --git a/lisp/calendar/cal-tex.el b/lisp/calendar/cal-tex.el
index 325ac3e8146..e4c2765940a 100644
--- a/lisp/calendar/cal-tex.el
+++ b/lisp/calendar/cal-tex.el
@@ -37,6 +37,7 @@
37;; cal-tex-cursor-month 37;; cal-tex-cursor-month
38;; cal-tex-cursor-week 38;; cal-tex-cursor-week
39;; cal-tex-cursor-week2 39;; cal-tex-cursor-week2
40;; cal-tex-cursor-week2-summary
40;; cal-tex-cursor-week-iso 41;; cal-tex-cursor-week-iso
41;; cal-tex-cursor-week-monday 42;; cal-tex-cursor-week-monday
42;; cal-tex-cursor-filofax-2week 43;; cal-tex-cursor-filofax-2week
@@ -82,8 +83,6 @@ Setting this to nil may speed up calendar generation."
82 83
83(defcustom cal-tex-diary nil 84(defcustom cal-tex-diary nil
84 "Non-nil means diary entries are printed in LaTeX calendars that support it. 85 "Non-nil means diary entries are printed in LaTeX calendars that support it.
85At present, this only affects the monthly, filofax, and iso-week
86calendars (i.e. not the yearly, plain weekly, or daily calendars).
87Setting this to nil may speed up calendar generation." 86Setting this to nil may speed up calendar generation."
88 :type 'boolean 87 :type 'boolean
89 :group 'calendar-tex) 88 :group 'calendar-tex)
@@ -717,11 +716,15 @@ this is only an upper bound."
717;; TODO respect cal-tex-daily-start,end (see cal-tex-week-hours). 716;; TODO respect cal-tex-daily-start,end (see cal-tex-week-hours).
718;;;###cal-autoload 717;;;###cal-autoload
719(defun cal-tex-cursor-week (&optional n event) 718(defun cal-tex-cursor-week (&optional n event)
720 "Make a LaTeX calendar buffer for a two-page one-week calendar. 719 "Make a one page LaTeX calendar for one week, showing hours of the day.
721It applies to the week that point is in. The optional prefix 720There are two columns; with 8-12am in the first and 1-5pm in the second.
722argument N specifies number of weeks (default 1). The calendar 721It shows holidays if `cal-tex-holidays' is non-nil.
723shows holidays if `cal-tex-holidays' is non-nil (note that diary 722It does not show diary entries.
724entries are not shown). The calendar shows the hours 8-12am, 1-5pm." 723
724The optional prefix argument N specifies a number of weeks (default 1).
725
726By default, the calendar is for the week at point; the optional
727argument EVENT specifies a different buffer position."
725 (interactive (list (prefix-numeric-value current-prefix-arg) 728 (interactive (list (prefix-numeric-value current-prefix-arg)
726 last-nonmenu-event)) 729 last-nonmenu-event))
727 (or n (setq n 1)) 730 (or n (setq n 1))
@@ -768,12 +771,15 @@ entries are not shown). The calendar shows the hours 8-12am, 1-5pm."
768;; TODO respect cal-tex-daily-start,end (see cal-tex-week-hours). 771;; TODO respect cal-tex-daily-start,end (see cal-tex-week-hours).
769;;;###cal-autoload 772;;;###cal-autoload
770(defun cal-tex-cursor-week2 (&optional n event) 773(defun cal-tex-cursor-week2 (&optional n event)
771 "Make a LaTeX calendar buffer for a two-page one-week calendar. 774 "Make a two page LaTeX calendar for one week, showing hours of the day.
772It applies to the week that point is in. Optional prefix 775There are two columns; with 8-12am in the first and 1-5pm in the second.
773argument N specifies number of weeks (default 1). The calendar 776It shows holidays if `cal-tex-holidays' is non-nil.
774shows holidays if `cal-tex-holidays' is non-nil (note that diary 777It does not show diary entries.
775entries are not shown). The calendar shows the hours 8-12am, 1-5pm. 778
776Optional EVENT indicates a buffer position to use instead of point." 779The optional prefix argument N specifies a number of weeks (default 1).
780
781By default, the calendar is for the week at point; the optional
782argument EVENT specifies a different buffer position."
777 (interactive (list (prefix-numeric-value current-prefix-arg) 783 (interactive (list (prefix-numeric-value current-prefix-arg)
778 last-nonmenu-event)) 784 last-nonmenu-event))
779 (or n (setq n 1)) 785 (or n (setq n 1))
@@ -848,12 +854,15 @@ Optional EVENT indicates a buffer position to use instead of point."
848 854
849;;;###cal-autoload 855;;;###cal-autoload
850(defun cal-tex-cursor-week-iso (&optional n event) 856(defun cal-tex-cursor-week-iso (&optional n event)
851 "Make a LaTeX calendar buffer for a one page ISO-style weekly calendar. 857 "Make a one page LaTeX calendar for one week, in the ISO-style.
852Optional prefix argument N specifies number of weeks (default 1). 858It does not show hours of the day.
853The calendar shows holiday and diary entries if 859It shows holidays if `cal-tex-holidays' is non-nil.
854`cal-tex-holidays' and `cal-tex-diary', respectively, are non-nil. 860It shows diary entries if `cal-tex-diary' is non-nil.
855It does not show hours of the day. Optional EVENT indicates a buffer 861
856position to use instead of point." 862The optional prefix argument N specifies a number of weeks (default 1).
863
864By default, the calendar is for the week at point; the optional
865argument EVENT specifies a different buffer position."
857 (interactive (list (prefix-numeric-value current-prefix-arg) 866 (interactive (list (prefix-numeric-value current-prefix-arg)
858 last-nonmenu-event)) 867 last-nonmenu-event))
859 (or n (setq n 1)) 868 (or n (setq n 1))
@@ -976,13 +985,16 @@ shown are hard-coded to 8-12, 13-17."
976;; TODO respect cal-tex-daily-start,end (see cal-tex-weekly4-box). 985;; TODO respect cal-tex-daily-start,end (see cal-tex-weekly4-box).
977;;;###cal-autoload 986;;;###cal-autoload
978(defun cal-tex-cursor-week-monday (&optional n event) 987(defun cal-tex-cursor-week-monday (&optional n event)
979 "Make a LaTeX calendar buffer for a two-page one-week calendar. 988 "Make a one page LaTeX calendar for one week, showing hours of the day.
980It applies to the week that point is in, and starts on Monday. 989There are two columns; with M-W in the first and T-S in the second.
981Optional prefix argument N specifies number of weeks (default 1). 990It shows the hours 8-12am and 1-5pm.
982The calendar shows holidays if `cal-tex-holidays' is 991It shows holidays if `cal-tex-holidays' is non-nil.
983non-nil (note that diary entries are not shown). The calendar shows 992It does not show diary entries.
984the hours 8-12am, 1-5pm. Optional EVENT indicates a buffer position 993
985to use instead of point." 994The optional prefix argument N specifies a number of weeks (default 1).
995
996By default, the calendar is for the week at point; the optional
997argument EVENT specifies a different buffer position."
986 (interactive (list (prefix-numeric-value current-prefix-arg) 998 (interactive (list (prefix-numeric-value current-prefix-arg)
987 last-nonmenu-event)) 999 last-nonmenu-event))
988 (or n (setq n 1)) 1000 (or n (setq n 1))
@@ -1203,13 +1215,16 @@ shown are hard-coded to 8-12, 13-17."
1203 (run-hooks 'cal-tex-hook))) 1215 (run-hooks 'cal-tex-hook)))
1204 1216
1205;;;###cal-autoload 1217;;;###cal-autoload
1206(defun cal-tex-cursor-week-at-a-glance (&optional n event) 1218(defun cal-tex-cursor-week2-summary (&optional n event)
1207 "One-week-at-a-glance full page calendar for week indicated by cursor. 1219 "Make a two page LaTeX calendar for one week, with optional diary entries.
1208Optional prefix argument N specifies number of weeks (default 1), 1220It does not show hours of the day.
1209starting on Mondays. The calendar shows holiday and diary entries 1221It shows holidays if `cal-tex-holidays' is non-nil.
1210if `cal-tex-holidays' and `cal-tex-diary', respectively, are non-nil. 1222It shows diary entries if `cal-tex-diary' is non-nil.
1211It does not show hours of the day. Optional EVENT indicates a buffer 1223
1212position to use instead of point." 1224The optional prefix argument N specifies a number of weeks (default 1).
1225
1226By default, the calendar is for the week at point; the optional
1227argument EVENT specifies a different buffer position."
1213 (interactive (list (prefix-numeric-value current-prefix-arg) 1228 (interactive (list (prefix-numeric-value current-prefix-arg)
1214 last-nonmenu-event)) 1229 last-nonmenu-event))
1215 (cal-tex-weekly-common n event)) 1230 (cal-tex-weekly-common n event))
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 6f8311f4c55..96a5725ef69 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -1683,8 +1683,9 @@ line."
1683 (define-key map "td" 'cal-tex-cursor-day) 1683 (define-key map "td" 'cal-tex-cursor-day)
1684 (define-key map "tw1" 'cal-tex-cursor-week) 1684 (define-key map "tw1" 'cal-tex-cursor-week)
1685 (define-key map "tw2" 'cal-tex-cursor-week2) 1685 (define-key map "tw2" 'cal-tex-cursor-week2)
1686 (define-key map "tw3" 'cal-tex-cursor-week-iso) 1686 (define-key map "tw3" 'cal-tex-cursor-week-iso) ; FIXME twi ?
1687 (define-key map "tw4" 'cal-tex-cursor-week-monday) 1687 (define-key map "tw4" 'cal-tex-cursor-week-monday) ; twm ?
1688 (define-key map "twW" 'cal-tex-cursor-week2-summary)
1688 (define-key map "tfd" 'cal-tex-cursor-filofax-daily) 1689 (define-key map "tfd" 'cal-tex-cursor-filofax-daily)
1689 (define-key map "tfw" 'cal-tex-cursor-filofax-2week) 1690 (define-key map "tfw" 'cal-tex-cursor-filofax-2week)
1690 (define-key map "tfW" 'cal-tex-cursor-filofax-week) 1691 (define-key map "tfW" 'cal-tex-cursor-filofax-week)
diff --git a/lisp/calendar/icalendar.el b/lisp/calendar/icalendar.el
index 39b83d4c831..27e7261263e 100644
--- a/lisp/calendar/icalendar.el
+++ b/lisp/calendar/icalendar.el
@@ -186,6 +186,7 @@ the URL."
186This applies only if the UID is not empty! `%s' is replaced by 186This applies only if the UID is not empty! `%s' is replaced by
187the UID." 187the UID."
188 :type 'string 188 :type 'string
189 :version "24.3"
189 :group 'icalendar) 190 :group 'icalendar)
190 191
191(defcustom icalendar-import-format-status 192(defcustom icalendar-import-format-status
diff --git a/lisp/calendar/timeclock.el b/lisp/calendar/timeclock.el
index 3151ce145de..7e7a737549f 100644
--- a/lisp/calendar/timeclock.el
+++ b/lisp/calendar/timeclock.el
@@ -321,6 +321,9 @@ display (non-nil means on)."
321 (force-mode-line-update) 321 (force-mode-line-update)
322 (setq timeclock-mode-line-display on-p))) 322 (setq timeclock-mode-line-display on-p)))
323 323
324(define-obsolete-variable-alias 'timeclock-modeline-display
325 'timeclock-mode-line-display "24.3")
326
324;; This has to be here so that the function definition of 327;; This has to be here so that the function definition of
325;; `timeclock-mode-line-display' is known to the "set" function. 328;; `timeclock-mode-line-display' is known to the "set" function.
326(defcustom timeclock-mode-line-display nil 329(defcustom timeclock-mode-line-display nil
diff --git a/lisp/cedet/ChangeLog b/lisp/cedet/ChangeLog
index e066368d011..ff5b603833d 100644
--- a/lisp/cedet/ChangeLog
+++ b/lisp/cedet/ChangeLog
@@ -1,3 +1,18 @@
12012-10-06 Glenn Morris <rgm@gnu.org>
2
3 * semantic/complete.el (semantic-displayor-tooltip-max-tags): Doc fix.
4
5 * semantic/complete.el (semantic-displayor-tooltip-mode)
6 (semantic-displayor-tooltip-initial-max-tags)
7 (semantic-displayor-tooltip-max-tags): Add missing custom :version tags.
8 * ede/linux.el (project-linux): Add missing group :version tag.
9
102012-10-06 Chong Yidong <cyd@gnu.org>
11
12 * semantic/bovine/grammar.el:
13 * semantic/wisent/grammar.el: Move from admin/grammars. Add
14 autoloads for bovine-grammar-mode and wisent-grammar-mode.
15
12012-10-02 Chong Yidong <cyd@gnu.org> 162012-10-02 Chong Yidong <cyd@gnu.org>
2 17
3 * srecode.el, ede.el: Restore Version header. 18 * srecode.el, ede.el: Restore Version header.
diff --git a/lisp/cedet/ede/linux.el b/lisp/cedet/ede/linux.el
index 7cd066f8b3b..5c708039ec4 100644
--- a/lisp/cedet/ede/linux.el
+++ b/lisp/cedet/ede/linux.el
@@ -44,7 +44,7 @@
44 "File and tag browser frame." 44 "File and tag browser frame."
45 :group 'tools 45 :group 'tools
46 :group 'ede 46 :group 'ede
47 ) 47 :version "24.3")
48 48
49(defcustom project-linux-compile-target-command (concat ede-make-command " -k -C %s SUBDIRS=%s") 49(defcustom project-linux-compile-target-command (concat ede-make-command " -k -C %s SUBDIRS=%s")
50 "*Default command used to compile a target." 50 "*Default command used to compile a target."
diff --git a/admin/grammars/bovine-grammar.el b/lisp/cedet/semantic/bovine/grammar.el
index a7289f6bafe..cc27c5b0646 100644
--- a/admin/grammars/bovine-grammar.el
+++ b/lisp/cedet/semantic/bovine/grammar.el
@@ -1,4 +1,4 @@
1;;; bovine-grammar.el --- Bovine's input grammar mode 1;;; semantic/bovine/grammar.el --- Bovine's input grammar mode
2;; 2;;
3;; Copyright (C) 2002-2012 Free Software Foundation, Inc. 3;; Copyright (C) 2002-2012 Free Software Foundation, Inc.
4;; 4;;
@@ -143,7 +143,7 @@ expanded from elsewhere."
143 (setq first (car form) 143 (setq first (car form)
144 form (cdr form)) 144 form (cdr form))
145 ;; Hack for dealing with new reading of unquotes outside of 145 ;; Hack for dealing with new reading of unquotes outside of
146 ;; backquote (introduced in rev. 102591 in emacs-bzr). 146 ;; backquote (introduced in 2010-12-06T16:37:26Z!monnier@iro.umontreal.ca).
147 (when (and (>= emacs-major-version 24) 147 (when (and (>= emacs-major-version 24)
148 (listp first) 148 (listp first)
149 (or (equal (car first) '\,) 149 (or (equal (car first) '\,)
@@ -413,18 +413,17 @@ manual."
413 "")))) 413 ""))))
414 414
415(defvar bovine-grammar-menu 415(defvar bovine-grammar-menu
416 '("BY Grammar" 416 '("BY Grammar")
417 )
418 "BY mode specific grammar menu. 417 "BY mode specific grammar menu.
419Menu items are appended to the common grammar menu.") 418Menu items are appended to the common grammar menu.")
420 419
420;;;###autoload
421(define-derived-mode bovine-grammar-mode semantic-grammar-mode "BY" 421(define-derived-mode bovine-grammar-mode semantic-grammar-mode "BY"
422 "Major mode for editing Bovine grammars." 422 "Major mode for editing Bovine grammars."
423 (semantic-grammar-setup-menu bovine-grammar-menu) 423 (semantic-grammar-setup-menu bovine-grammar-menu)
424 (semantic-install-function-overrides 424 (semantic-install-function-overrides
425 '((grammar-parsetable-builder . bovine-grammar-parsetable-builder) 425 '((grammar-parsetable-builder . bovine-grammar-parsetable-builder)
426 (grammar-setupcode-builder . bovine-grammar-setupcode-builder) 426 (grammar-setupcode-builder . bovine-grammar-setupcode-builder))))
427 )))
428 427
429(add-to-list 'auto-mode-alist '("\\.by\\'" . bovine-grammar-mode)) 428(add-to-list 'auto-mode-alist '("\\.by\\'" . bovine-grammar-mode))
430 429
@@ -444,8 +443,6 @@ Menu items are appended to the common grammar menu.")
444 ) 443 )
445 "Semantic grammar macros used in bovine grammars.") 444 "Semantic grammar macros used in bovine grammars.")
446 445
447(provide 'semantic/bovine/grammar)
448
449(defun bovine-make-parsers () 446(defun bovine-make-parsers ()
450 "Generate Emacs' built-in Bovine-based parser files." 447 "Generate Emacs' built-in Bovine-based parser files."
451 (interactive) 448 (interactive)
@@ -504,4 +501,6 @@ Menu items are appended to the common grammar menu.")
504 (replace-match packagename nil nil nil 1) 501 (replace-match packagename nil nil nil 1)
505 (save-buffer)))))) 502 (save-buffer))))))
506 503
507;;; bovine-grammar.el ends here 504(provide 'semantic/bovine/grammar)
505
506;;; semantic/bovine/grammar.el ends here
diff --git a/lisp/cedet/semantic/complete.el b/lisp/cedet/semantic/complete.el
index 61760dd3fe8..9c2da9faefa 100644
--- a/lisp/cedet/semantic/complete.el
+++ b/lisp/cedet/semantic/complete.el
@@ -1564,6 +1564,7 @@ Verbose: Always show all completions available.
1564The absolute maximum number of completions for all mode is 1564The absolute maximum number of completions for all mode is
1565determined through `semantic-displayor-tooltip-max-tags'." 1565determined through `semantic-displayor-tooltip-max-tags'."
1566 :group 'semantic 1566 :group 'semantic
1567 :version "24.3"
1567 :type '(choice (const :tag "Standard" standard) 1568 :type '(choice (const :tag "Standard" standard)
1568 (const :tag "Quiet" quiet) 1569 (const :tag "Quiet" quiet)
1569 (const :tag "Verbose" verbose))) 1570 (const :tag "Verbose" verbose)))
@@ -1573,24 +1574,25 @@ determined through `semantic-displayor-tooltip-max-tags'."
1573 "Maximum number of tags to be displayed initially. 1574 "Maximum number of tags to be displayed initially.
1574See doc-string of `semantic-displayor-tooltip-mode' for details." 1575See doc-string of `semantic-displayor-tooltip-mode' for details."
1575 :group 'semantic 1576 :group 'semantic
1577 :version "24.3"
1576 :type 'integer) 1578 :type 'integer)
1577 1579
1578(defcustom semantic-displayor-tooltip-max-tags 25 1580(defcustom semantic-displayor-tooltip-max-tags 25
1579 "The maximum number of tags to be displayed. 1581 "The maximum number of tags to be displayed.
1580Maximum number of completions where we have activated the 1582Maximum number of completions where we have activated the
1581extended completion list through typing TAB or SPACE multiple 1583extended completion list through typing TAB or SPACE multiple
1582times. This limit needs to fit on your screen! 1584times. This limit needs to fit on your screen!
1583 1585
1584Note: If available, customizing this variable increases 1586Note: If available, customizing this variable increases
1585'x-max-tooltip-size' to force over-sized tooltips when necessary. 1587`x-max-tooltip-size' to force over-sized tooltips when necessary.
1586This will not happen if you directly set this variable via 1588This will not happen if you directly set this variable via `setq'."
1587`setq'." 1589 :group 'semantic
1588 :group 'semantic 1590 :version "24.3"
1589 :type 'integer 1591 :type 'integer
1590 :set '(lambda (sym var) 1592 :set '(lambda (sym var)
1591 (set-default sym var) 1593 (set-default sym var)
1592 (when (boundp 'x-max-tooltip-size) 1594 (when (boundp 'x-max-tooltip-size)
1593 (setcdr x-max-tooltip-size (max (1+ var) (cdr x-max-tooltip-size)))))) 1595 (setcdr x-max-tooltip-size (max (1+ var) (cdr x-max-tooltip-size))))))
1594 1596
1595 1597
1596(defclass semantic-displayor-tooltip (semantic-displayor-traditional) 1598(defclass semantic-displayor-tooltip (semantic-displayor-traditional)
diff --git a/admin/grammars/wisent-grammar.el b/lisp/cedet/semantic/wisent/grammar.el
index 25dba5be2d8..6fa52dc2adc 100644
--- a/admin/grammars/wisent-grammar.el
+++ b/lisp/cedet/semantic/wisent/grammar.el
@@ -1,4 +1,4 @@
1;;; wisent-grammar.el --- Wisent's input grammar mode 1;;; semantic/wisent/grammar.el --- Wisent's input grammar mode
2 2
3;; Copyright (C) 2002-2012 Free Software Foundation, Inc. 3;; Copyright (C) 2002-2012 Free Software Foundation, Inc.
4;; 4;;
@@ -323,15 +323,13 @@ Return the expanded expression."
323 "WY mode specific grammar menu. 323 "WY mode specific grammar menu.
324Menu items are appended to the common grammar menu.") 324Menu items are appended to the common grammar menu.")
325 325
326;;;###autoload
326(define-derived-mode wisent-grammar-mode semantic-grammar-mode "WY" 327(define-derived-mode wisent-grammar-mode semantic-grammar-mode "WY"
327 "Major mode for editing Wisent grammars." 328 "Major mode for editing Wisent grammars."
328 (semantic-grammar-setup-menu wisent-grammar-menu) 329 (semantic-grammar-setup-menu wisent-grammar-menu)
329 (semantic-install-function-overrides 330 (semantic-install-function-overrides
330 '((grammar-parsetable-builder . wisent-grammar-parsetable-builder) 331 '((grammar-parsetable-builder . wisent-grammar-parsetable-builder)
331 (grammar-setupcode-builder . wisent-grammar-setupcode-builder) 332 (grammar-setupcode-builder . wisent-grammar-setupcode-builder))))
332 )))
333
334(add-to-list 'auto-mode-alist '("\\.wy\\'" . wisent-grammar-mode))
335 333
336(defvar-mode-local wisent-grammar-mode semantic-grammar-macros 334(defvar-mode-local wisent-grammar-mode semantic-grammar-macros
337 '( 335 '(
@@ -498,7 +496,7 @@ Menu items are appended to the common grammar menu.")
498 (insert-file-contents filename) 496 (insert-file-contents filename)
499 ;; Fix copyright header: 497 ;; Fix copyright header:
500 (goto-char (point-min)) 498 (goto-char (point-min))
501 (when additional-copyright 499 (when additional-copyright
502 (re-search-forward "Copyright (C).*$") 500 (re-search-forward "Copyright (C).*$")
503 (insert "\n;; " additional-copyright)) 501 (insert "\n;; " additional-copyright))
504 (re-search-forward "^;; Author:") 502 (re-search-forward "^;; Author:")
@@ -523,4 +521,6 @@ Menu items are appended to the common grammar menu.")
523 (delete-trailing-whitespace) 521 (delete-trailing-whitespace)
524 (write-region nil nil (expand-file-name filename)))))))) 522 (write-region nil nil (expand-file-name filename))))))))
525 523
526;;; wisent-grammar.el ends here 524(provide 'semantic/wisent/grammar)
525
526;;; semantic/wisent/grammar.el ends here
diff --git a/lisp/ehelp.el b/lisp/ehelp.el
index 281148d9cf6..a1bd4d65385 100644
--- a/lisp/ehelp.el
+++ b/lisp/ehelp.el
@@ -61,6 +61,8 @@
61 61
62(defvar electric-help-map 62(defvar electric-help-map
63 (let ((map (make-keymap))) 63 (let ((map (make-keymap)))
64 ;; FIXME fragile. Should derive from help-mode-map in a smarter way.
65 (set-keymap-parent map button-buffer-map)
64 ;; allow all non-self-inserting keys - search, scroll, etc, but 66 ;; allow all non-self-inserting keys - search, scroll, etc, but
65 ;; let M-x and C-x exit ehelp mode and retain buffer: 67 ;; let M-x and C-x exit ehelp mode and retain buffer:
66 (suppress-keymap map) 68 (suppress-keymap map)
@@ -102,7 +104,7 @@
102 (setq buffer-read-only t) 104 (setq buffer-read-only t)
103 (setq electric-help-orig-major-mode major-mode) 105 (setq electric-help-orig-major-mode major-mode)
104 (setq mode-name "Help") 106 (setq mode-name "Help")
105 (setq major-mode 'help) 107 (setq major-mode 'help-mode)
106 (setq mode-line-buffer-identification '(" Help: %b")) 108 (setq mode-line-buffer-identification '(" Help: %b"))
107 (use-local-map electric-help-map) 109 (use-local-map electric-help-map)
108 (add-hook 'mouse-leave-buffer-hook 'electric-help-retain) 110 (add-hook 'mouse-leave-buffer-hook 'electric-help-retain)
diff --git a/lisp/emacs-lisp/cl-loaddefs.el b/lisp/emacs-lisp/cl-loaddefs.el
index 922c9856208..e25ac5f9708 100644
--- a/lisp/emacs-lisp/cl-loaddefs.el
+++ b/lisp/emacs-lisp/cl-loaddefs.el
@@ -260,7 +260,7 @@ Remove from SYMBOL's plist the property PROPNAME and its value.
260;;;;;; cl-typecase cl-ecase cl-case cl-load-time-value cl-eval-when 260;;;;;; cl-typecase cl-ecase cl-case cl-load-time-value cl-eval-when
261;;;;;; cl-destructuring-bind cl-function cl-defmacro cl-defun cl-gentemp 261;;;;;; cl-destructuring-bind cl-function cl-defmacro cl-defun cl-gentemp
262;;;;;; cl-gensym cl--compiler-macro-cXXr cl--compiler-macro-list*) 262;;;;;; cl-gensym cl--compiler-macro-cXXr cl--compiler-macro-list*)
263;;;;;; "cl-macs" "cl-macs.el" "da92f58f688ff6fb4d0098eb0f3acf0b") 263;;;;;; "cl-macs" "cl-macs.el" "6951d080daefb5194b1d21fe9b2deae4")
264;;; Generated autoloads from cl-macs.el 264;;; Generated autoloads from cl-macs.el
265 265
266(autoload 'cl--compiler-macro-list* "cl-macs" "\ 266(autoload 'cl--compiler-macro-list* "cl-macs" "\
@@ -657,8 +657,9 @@ copier, a `NAME-p' predicate, and slot accessors named `NAME-SLOT'.
657You can use the accessors to set the corresponding slots, via `setf'. 657You can use the accessors to set the corresponding slots, via `setf'.
658 658
659NAME may instead take the form (NAME OPTIONS...), where each 659NAME may instead take the form (NAME OPTIONS...), where each
660OPTION is either a single keyword or (KEYWORD VALUE). 660OPTION is either a single keyword or (KEYWORD VALUE) where
661See Info node `(cl)Structures' for a list of valid keywords. 661KEYWORD can be one of :conc-name, :constructor, :copier, :predicate,
662:type, :named, :initial-offset, :print-function, or :include.
662 663
663Each SLOT may instead take the form (SLOT SLOT-OPTS...), where 664Each SLOT may instead take the form (SLOT SLOT-OPTS...), where
664SLOT-OPTS are keyword-value pairs for that slot. Currently, only 665SLOT-OPTS are keyword-value pairs for that slot. Currently, only
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 56e698bec0a..99bae1944e8 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -2154,8 +2154,9 @@ copier, a `NAME-p' predicate, and slot accessors named `NAME-SLOT'.
2154You can use the accessors to set the corresponding slots, via `setf'. 2154You can use the accessors to set the corresponding slots, via `setf'.
2155 2155
2156NAME may instead take the form (NAME OPTIONS...), where each 2156NAME may instead take the form (NAME OPTIONS...), where each
2157OPTION is either a single keyword or (KEYWORD VALUE). 2157OPTION is either a single keyword or (KEYWORD VALUE) where
2158See Info node `(cl)Structures' for a list of valid keywords. 2158KEYWORD can be one of :conc-name, :constructor, :copier, :predicate,
2159:type, :named, :initial-offset, :print-function, or :include.
2159 2160
2160Each SLOT may instead take the form (SLOT SLOT-OPTS...), where 2161Each SLOT may instead take the form (SLOT SLOT-OPTS...), where
2161SLOT-OPTS are keyword-value pairs for that slot. Currently, only 2162SLOT-OPTS are keyword-value pairs for that slot. Currently, only
diff --git a/lisp/emulation/crisp.el b/lisp/emulation/crisp.el
index c9822b7ec27..01d202f87b5 100644
--- a/lisp/emulation/crisp.el
+++ b/lisp/emulation/crisp.el
@@ -171,14 +171,14 @@
171All the bindings are done here instead of globally to try and be 171All the bindings are done here instead of globally to try and be
172nice to the world.") 172nice to the world.")
173 173
174(define-obsolete-variable-alias 'crisp-mode-modeline-string
175 'crisp-mode-mode-line-string "24.3")
176
174(defcustom crisp-mode-mode-line-string " *CRiSP*" 177(defcustom crisp-mode-mode-line-string " *CRiSP*"
175 "String to display in the mode line when CRiSP emulation mode is enabled." 178 "String to display in the mode line when CRiSP emulation mode is enabled."
176 :type 'string 179 :type 'string
177 :group 'crisp) 180 :group 'crisp)
178 181
179(define-obsolete-variable-alias 'crisp-mode-modeline-string
180 'crisp-mode-mode-line-string "24.3")
181
182;;;###autoload 182;;;###autoload
183(defcustom crisp-mode nil 183(defcustom crisp-mode nil
184 "Track status of CRiSP emulation mode. 184 "Track status of CRiSP emulation mode.
diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog
index 3558a8a90b5..8b4df6099bc 100644
--- a/lisp/erc/ChangeLog
+++ b/lisp/erc/ChangeLog
@@ -1,3 +1,27 @@
12012-10-07 Deniz Dogan <deniz@dogan.se>
2
3 * erc-log.el (erc-generate-log-file-name-function):
4 Clarify tags for various choices. (Bug#11186)
5
62012-10-07 Glenn Morris <rgm@gnu.org>
7
8 * erc-button.el (erc-button-alist): Remove "finger". (Bug#4443)
9
102012-10-07 Antoine Levitt <antoine.levitt@gmail.com>
11
12 * erc-stamp.el (erc-format-timestamp): Don't apply intangible
13 property to invisible stamps. (Bug#11706)
14
152012-10-07 Glenn Morris <rgm@gnu.org>
16
17 * erc-backend.el (NICK): Handle pre-existing buffers. (Bug#12002)
18
192012-10-06 Glenn Morris <rgm@gnu.org>
20
21 * erc.el (erc-lurker):
22 * erc-desktop-notifications.el (erc-notifications):
23 Add missing group :version tags.
24
12012-10-04 Julien Danjou <julien@danjou.info> 252012-10-04 Julien Danjou <julien@danjou.info>
2 26
3 * erc-desktop-notifications.el: Rename from erc-notifications to 27 * erc-desktop-notifications.el: Rename from erc-notifications to
@@ -9,8 +33,7 @@
9 33
102012-09-17 Chong Yidong <cyd@gnu.org> 342012-09-17 Chong Yidong <cyd@gnu.org>
11 35
12 * erc-page.el (erc-page-function): 36 * erc-page.el (erc-page-function):
13
14 * erc-stamp.el (erc-stamp): Doc fix. 37 * erc-stamp.el (erc-stamp): Doc fix.
15 38
162012-08-21 Josh Feinstein <jlf@foxtail.org> 392012-08-21 Josh Feinstein <jlf@foxtail.org>
@@ -103,7 +126,7 @@
103 (erc-autojoin-after-ident): Ditto. 126 (erc-autojoin-after-ident): Ditto.
104 (erc-autojoin-channels-alist): Mention auth-source. 127 (erc-autojoin-channels-alist): Mention auth-source.
105 128
1062012-04-10 Deniz Dogan <deniz@dogan.se> (tiny change) 1292012-04-10 Deniz Dogan <deniz@dogan.se>
107 130
108 * erc.el (erc-display-prompt): Adds the field text property to the 131 * erc.el (erc-display-prompt): Adds the field text property to the
109 ERC prompt. This allows users to use `kill-whole-line' to kill 132 ERC prompt. This allows users to use `kill-whole-line' to kill
diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el
index 75f0047bf06..20ccd071b95 100644
--- a/lisp/erc/erc-backend.el
+++ b/lisp/erc/erc-backend.el
@@ -1316,7 +1316,7 @@ add things to `%s' instead."
1316 (when (equal (erc-default-target) nick) 1316 (when (equal (erc-default-target) nick)
1317 (setq erc-default-recipients 1317 (setq erc-default-recipients
1318 (cons nn (cdr erc-default-recipients))) 1318 (cons nn (cdr erc-default-recipients)))
1319 (rename-buffer nn) 1319 (rename-buffer nn t) ; bug#12002
1320 (erc-update-mode-line) 1320 (erc-update-mode-line)
1321 (add-to-list 'bufs (current-buffer))))) 1321 (add-to-list 'bufs (current-buffer)))))
1322 (erc-update-user-nick nick nn host nil nil login) 1322 (erc-update-user-nick nick nn host nil nil login)
diff --git a/lisp/erc/erc-button.el b/lisp/erc/erc-button.el
index 687d11d144e..433ffc05340 100644
--- a/lisp/erc/erc-button.el
+++ b/lisp/erc/erc-button.el
@@ -135,7 +135,7 @@ longer than `erc-fill-column'."
135 '(('nicknames 0 erc-button-buttonize-nicks erc-nick-popup 0) 135 '(('nicknames 0 erc-button-buttonize-nicks erc-nick-popup 0)
136 (erc-button-url-regexp 0 t browse-url 0) 136 (erc-button-url-regexp 0 t browse-url 0)
137 ("<URL: *\\([^<> ]+\\) *>" 0 t browse-url 1) 137 ("<URL: *\\([^<> ]+\\) *>" 0 t browse-url 1)
138 ("(\\(\\([^~\n \t@][^\n \t@]*\\)@\\([a-zA-Z0-9.:-]+\\)\\)" 1 t finger 2 3) 138;;; ("(\\(\\([^~\n \t@][^\n \t@]*\\)@\\([a-zA-Z0-9.:-]+\\)\\)" 1 t finger 2 3)
139 ;; emacs internal 139 ;; emacs internal
140 ("[`]\\([a-zA-Z][-a-zA-Z_0-9]+\\)[']" 1 t erc-button-describe-symbol 1) 140 ("[`]\\([a-zA-Z][-a-zA-Z_0-9]+\\)[']" 1 t erc-button-describe-symbol 1)
141 ;; pseudo links 141 ;; pseudo links
@@ -183,6 +183,7 @@ PAR is a number of a regexp grouping whose text will be passed to
183 'nicknames, these are ignored, and CALLBACK will be called with 183 'nicknames, these are ignored, and CALLBACK will be called with
184 the nickname matched as the argument." 184 the nickname matched as the argument."
185 :group 'erc-button 185 :group 'erc-button
186 :version "24.3" ; remove finger (bug#4443)
186 :type '(repeat 187 :type '(repeat
187 (list :tag "Button" 188 (list :tag "Button"
188 (choice :tag "Matches" 189 (choice :tag "Matches"
diff --git a/lisp/erc/erc-desktop-notifications.el b/lisp/erc/erc-desktop-notifications.el
index 57b93f43219..2cc3c80a8ea 100644
--- a/lisp/erc/erc-desktop-notifications.el
+++ b/lisp/erc/erc-desktop-notifications.el
@@ -35,6 +35,7 @@
35 35
36(defgroup erc-notifications nil 36(defgroup erc-notifications nil
37 "Send notifications on PRIVMSG or mentions." 37 "Send notifications on PRIVMSG or mentions."
38 :version "24.3"
38 :group 'erc) 39 :group 'erc)
39 40
40(defvar erc-notifications-last-notification nil 41(defvar erc-notifications-last-notification nil
diff --git a/lisp/erc/erc-log.el b/lisp/erc/erc-log.el
index 9e6c587bd12..b3f3f5865a1 100644
--- a/lisp/erc/erc-log.el
+++ b/lisp/erc/erc-log.el
@@ -114,11 +114,13 @@ If you want to write logs into different directories, make a
114custom function which returns the directory part and set 114custom function which returns the directory part and set
115`erc-log-channels-directory' to its name." 115`erc-log-channels-directory' to its name."
116 :group 'erc-log 116 :group 'erc-log
117 :type '(choice (const :tag "Long style" erc-generate-log-file-name-long) 117 :type '(choice (const :tag "#channel!nick@server:port.txt"
118 (const :tag "Long, but with network name rather than server" 118 erc-generate-log-file-name-long)
119 (const :tag "#channel!nick@network.txt"
119 erc-generate-log-file-name-network) 120 erc-generate-log-file-name-network)
120 (const :tag "Short" erc-generate-log-file-name-short) 121 (const :tag "#channel.txt" erc-generate-log-file-name-short)
121 (const :tag "With date" erc-generate-log-file-name-with-date) 122 (const :tag "#channel@date.txt"
123 erc-generate-log-file-name-with-date)
122 (function :tag "Other function"))) 124 (function :tag "Other function")))
123 125
124(defcustom erc-truncate-buffer-on-save nil 126(defcustom erc-truncate-buffer-on-save nil
diff --git a/lisp/erc/erc-stamp.el b/lisp/erc/erc-stamp.el
index 1613d03912c..4fa3f9f5915 100644
--- a/lisp/erc/erc-stamp.el
+++ b/lisp/erc/erc-stamp.el
@@ -353,8 +353,9 @@ Return the empty string if FORMAT is nil."
353 'isearch-open-invisible 'timestamp ts) 353 'isearch-open-invisible 'timestamp ts)
354 ;; N.B. Later use categories instead of this harmless, but 354 ;; N.B. Later use categories instead of this harmless, but
355 ;; inelegant, hack. -- BPT 355 ;; inelegant, hack. -- BPT
356 (when erc-timestamp-intangible 356 (and erc-timestamp-intangible
357 (erc-put-text-property 0 (length ts) 'intangible t ts)) 357 (not erc-hide-timestamps) ; bug#11706
358 (erc-put-text-property 0 (length ts) 'intangible t ts))
358 ts) 359 ts)
359 "")) 360 ""))
360 361
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index 687e60da28a..bbd9dad4310 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -102,6 +102,7 @@
102 102
103(defgroup erc-lurker nil 103(defgroup erc-lurker nil
104 "Hide specified message types sent by lurkers" 104 "Hide specified message types sent by lurkers"
105 :version "24.3"
105 :group 'erc-ignore) 106 :group 'erc-ignore)
106 107
107(defgroup erc-query nil 108(defgroup erc-query nil
diff --git a/lisp/eshell/esh-mode.el b/lisp/eshell/esh-mode.el
index 8a9107e5470..673632400f2 100644
--- a/lisp/eshell/esh-mode.el
+++ b/lisp/eshell/esh-mode.el
@@ -193,14 +193,14 @@ This is used by `eshell-watch-for-password-prompt'."
193 :type '(choice (const nil) function) 193 :type '(choice (const nil) function)
194 :group 'eshell-mode) 194 :group 'eshell-mode)
195 195
196(define-obsolete-variable-alias 'eshell-status-in-modeline
197 'eshell-status-in-mode-line "24.3")
198
196(defcustom eshell-status-in-mode-line t 199(defcustom eshell-status-in-mode-line t
197 "If non-nil, let the user know a command is running in the mode line." 200 "If non-nil, let the user know a command is running in the mode line."
198 :type 'boolean 201 :type 'boolean
199 :group 'eshell-mode) 202 :group 'eshell-mode)
200 203
201(define-obsolete-variable-alias 'eshell-status-in-modeline
202 'eshell-status-in-mode-line "24.3")
203
204(defvar eshell-first-time-p t 204(defvar eshell-first-time-p t
205 "A variable which is non-nil the first time Eshell is loaded.") 205 "A variable which is non-nil the first time Eshell is loaded.")
206 206
diff --git a/lisp/files.el b/lisp/files.el
index c3f9e1ef1a0..e030aff0ae2 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -2326,6 +2326,8 @@ ARC\\|ZIP\\|LZH\\|LHA\\|ZOO\\|[JEW]AR\\|XPI\\|RAR\\|7Z\\)\\'" . archive-mode)
2326 ("\\.js\\'" . javascript-mode) 2326 ("\\.js\\'" . javascript-mode)
2327 ("\\.json\\'" . javascript-mode) 2327 ("\\.json\\'" . javascript-mode)
2328 ("\\.[ds]?vh?\\'" . verilog-mode) 2328 ("\\.[ds]?vh?\\'" . verilog-mode)
2329 ("\\.by\\'" . bovine-grammar-mode)
2330 ("\\.wy\\'" . wisent-grammar-mode)
2329 ;; .emacs or .gnus or .viper following a directory delimiter in 2331 ;; .emacs or .gnus or .viper following a directory delimiter in
2330 ;; Unix, MSDOG or VMS syntax. 2332 ;; Unix, MSDOG or VMS syntax.
2331 ("[]>:/\\]\\..*\\(emacs\\|gnus\\|viper\\)\\'" . emacs-lisp-mode) 2333 ("[]>:/\\]\\..*\\(emacs\\|gnus\\|viper\\)\\'" . emacs-lisp-mode)
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 983d09e2589..f79353ebfb3 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,12 @@
12012-10-06 Glenn Morris <rgm@gnu.org>
2
3 * gnus-notifications.el (gnus-notifications):
4 Add missing group :version tag.
5 * gnus-msg.el (gnus-gcc-pre-body-encode-hook)
6 (gnus-gcc-post-body-encode-hook):
7 * gnus-sync.el (gnus-sync-lesync-name)
8 (gnus-sync-lesync-install-topics): Add missing custom :version tags.
9
12012-09-25 Katsumi Yamaoka <yamaoka@jpl.org> 102012-09-25 Katsumi Yamaoka <yamaoka@jpl.org>
2 11
3 * gnus-art.el (gnus-article-browse-delete-temp-files): Never ask again 12 * gnus-art.el (gnus-article-browse-delete-temp-files): Never ask again
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el
index c2f79e70d1e..77bb6281bc4 100644
--- a/lisp/gnus/gnus-msg.el
+++ b/lisp/gnus/gnus-msg.el
@@ -319,6 +319,7 @@ The current buffer (when the hook is run) contains the message
319including the message header. Changes made to the message will 319including the message header. Changes made to the message will
320only affect the Gcc copy, but not the original message." 320only affect the Gcc copy, but not the original message."
321 :group 'gnus-message 321 :group 'gnus-message
322 :version "24.3"
322 :type 'hook) 323 :type 'hook)
323 324
324(defcustom gnus-gcc-post-body-encode-hook nil 325(defcustom gnus-gcc-post-body-encode-hook nil
@@ -327,6 +328,7 @@ The current buffer (when the hook is run) contains the message
327including the message header. Changes made to the message will 328including the message header. Changes made to the message will
328only affect the Gcc copy, but not the original message." 329only affect the Gcc copy, but not the original message."
329 :group 'gnus-message 330 :group 'gnus-message
331 :version "24.3"
330 :type 'hook) 332 :type 'hook)
331 333
332(autoload 'gnus-message-citation-mode "gnus-cite" nil t) 334(autoload 'gnus-message-citation-mode "gnus-cite" nil t)
diff --git a/lisp/gnus/gnus-notifications.el b/lisp/gnus/gnus-notifications.el
index 5104a56c6e7..3848dee8d4f 100644
--- a/lisp/gnus/gnus-notifications.el
+++ b/lisp/gnus/gnus-notifications.el
@@ -42,6 +42,7 @@
42 42
43(defgroup gnus-notifications nil 43(defgroup gnus-notifications nil
44 "Send notifications on new message in Gnus." 44 "Send notifications on new message in Gnus."
45 :version "24.3"
45 :group 'gnus) 46 :group 'gnus)
46 47
47(defcustom gnus-notifications-use-google-contacts t 48(defcustom gnus-notifications-use-google-contacts t
diff --git a/lisp/gnus/gnus-sync.el b/lisp/gnus/gnus-sync.el
index ca8662ff936..b5f8379e367 100644
--- a/lisp/gnus/gnus-sync.el
+++ b/lisp/gnus/gnus-sync.el
@@ -134,11 +134,13 @@ and `gnus-topic-alist'. Also see `gnus-variable-list'."
134(defcustom gnus-sync-lesync-name (system-name) 134(defcustom gnus-sync-lesync-name (system-name)
135 "The LeSync name for this machine." 135 "The LeSync name for this machine."
136 :group 'gnus-sync 136 :group 'gnus-sync
137 :version "24.3"
137 :type 'string) 138 :type 'string)
138 139
139(defcustom gnus-sync-lesync-install-topics 'ask 140(defcustom gnus-sync-lesync-install-topics 'ask
140 "Should LeSync install the recorded topics?" 141 "Should LeSync install the recorded topics?"
141 :group 'gnus-sync 142 :group 'gnus-sync
143 :version "24.3"
142 :type '(choice (const :tag "Never Install" nil) 144 :type '(choice (const :tag "Never Install" nil)
143 (const :tag "Always Install" t) 145 (const :tag "Always Install" t)
144 (const :tag "Ask Me Once" ask))) 146 (const :tag "Ask Me Once" ask)))
diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el
index f92e2ab0af2..59743124cc5 100644
--- a/lisp/hi-lock.el
+++ b/lisp/hi-lock.el
@@ -444,8 +444,8 @@ updated as you type."
444;;;###autoload 444;;;###autoload
445(defun hi-lock-face-phrase-buffer (regexp &optional face) 445(defun hi-lock-face-phrase-buffer (regexp &optional face)
446 "Set face of each match of phrase REGEXP to FACE. 446 "Set face of each match of phrase REGEXP to FACE.
447Whitespace in REGEXP converted to arbitrary whitespace and initial 447If called interactively, replaces whitespace in REGEXP with
448lower-case letters made case insensitive. 448arbitrary whitespace and makes initial lower-case letters case-insensitive.
449 449
450If Font Lock mode is enabled in the buffer, it is used to 450If Font Lock mode is enabled in the buffer, it is used to
451highlight REGEXP. If Font Lock mode is disabled, overlays are 451highlight REGEXP. If Font Lock mode is disabled, overlays are
@@ -544,9 +544,15 @@ be found in variable `hi-lock-interactive-patterns'."
544Blanks in PHRASE replaced by regexp that matches arbitrary whitespace 544Blanks in PHRASE replaced by regexp that matches arbitrary whitespace
545and initial lower-case letters made case insensitive." 545and initial lower-case letters made case insensitive."
546 (let ((mod-phrase nil)) 546 (let ((mod-phrase nil))
547 ;; FIXME fragile; better to just bind case-fold-search? (Bug#7161)
547 (setq mod-phrase 548 (setq mod-phrase
548 (replace-regexp-in-string 549 (replace-regexp-in-string
549 "\\<[a-z]" (lambda (m) (format "[%s%s]" (upcase m) m)) phrase)) 550 "\\(^\\|\\s-\\)\\([a-z]\\)"
551 (lambda (m) (format "%s[%s%s]"
552 (match-string 1 m)
553 (upcase (match-string 2 m))
554 (match-string 2 m))) phrase))
555 ;; FIXME fragile; better to use search-spaces-regexp?
550 (setq mod-phrase 556 (setq mod-phrase
551 (replace-regexp-in-string 557 (replace-regexp-in-string
552 "\\s-+" "[ \t\n]+" mod-phrase nil t)))) 558 "\\s-+" "[ \t\n]+" mod-phrase nil t))))
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index 828cd6e72e7..c75a1989e8e 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -4605,7 +4605,7 @@ With prefix argument N moves forward N messages with these labels.
4605 4605
4606;;;*** 4606;;;***
4607 4607
4608;;;### (autoloads (rmail-mime) "rmailmm" "rmailmm.el" "0c18b83f914803d1216e1a9df7ea5275") 4608;;;### (autoloads (rmail-mime) "rmailmm" "rmailmm.el" "f1937f85a1258de8880a089fa5ae5621")
4609;;; Generated autoloads from rmailmm.el 4609;;; Generated autoloads from rmailmm.el
4610 4610
4611(autoload 'rmail-mime "rmailmm" "\ 4611(autoload 'rmail-mime "rmailmm" "\
diff --git a/lisp/mail/rmailmm.el b/lisp/mail/rmailmm.el
index 2cc57963ef7..11bccd59765 100644
--- a/lisp/mail/rmailmm.el
+++ b/lisp/mail/rmailmm.el
@@ -832,7 +832,7 @@ The other arguments are the same as `rmail-mime-multipart-handler'."
832 (let ((boundary (cdr (assq 'boundary content-type))) 832 (let ((boundary (cdr (assq 'boundary content-type)))
833 (subtype (cadr (split-string (car content-type) "/"))) 833 (subtype (cadr (split-string (car content-type) "/")))
834 (index 0) 834 (index 0)
835 beg end next entities truncated) 835 beg end next entities truncated last)
836 (unless boundary 836 (unless boundary
837 (rmail-mm-get-boundary-error-message 837 (rmail-mm-get-boundary-error-message
838 "No boundary defined" content-type content-disposition 838 "No boundary defined" content-type content-disposition
@@ -867,7 +867,13 @@ The other arguments are the same as `rmail-mime-multipart-handler'."
867 ;; Handle the rest of the truncated message 867 ;; Handle the rest of the truncated message
868 ;; (if it isn't empty) by pretending that the boundary 868 ;; (if it isn't empty) by pretending that the boundary
869 ;; appears at the end of the message. 869 ;; appears at the end of the message.
870 (and (save-excursion 870 ;; We use `last' to distinguish this from the more
871 ;; likely situation of there being an epilogue
872 ;; after the last boundary, which should be ignored.
873 ;; See rmailmm-test-multipart-handler for an example,
874 ;; and also bug#10101.
875 (and (not last)
876 (save-excursion
871 (skip-chars-forward "\n") 877 (skip-chars-forward "\n")
872 (> (point-max) (point))) 878 (> (point-max) (point)))
873 (setq truncated t end (point-max)))) 879 (setq truncated t end (point-max))))
@@ -875,7 +881,8 @@ The other arguments are the same as `rmail-mime-multipart-handler'."
875 ;; epilogue, else hide the boundary only. Use a marker for 881 ;; epilogue, else hide the boundary only. Use a marker for
876 ;; `next' because `rmail-mime-show' may change the buffer. 882 ;; `next' because `rmail-mime-show' may change the buffer.
877 (cond ((looking-at "--[ \t]*$") 883 (cond ((looking-at "--[ \t]*$")
878 (setq next (point-max-marker))) 884 (setq next (point-max-marker)
885 last t))
879 ((looking-at "[ \t]*\n") 886 ((looking-at "[ \t]*\n")
880 (setq next (copy-marker (match-end 0) t))) 887 (setq next (copy-marker (match-end 0) t)))
881 (truncated 888 (truncated
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index cf990019abc..a9be1749423 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -632,6 +632,7 @@ That is what completion commands operate on."
632(defun delete-minibuffer-contents () 632(defun delete-minibuffer-contents ()
633 "Delete all user input in a minibuffer. 633 "Delete all user input in a minibuffer.
634If the current buffer is not a minibuffer, erase its entire contents." 634If the current buffer is not a minibuffer, erase its entire contents."
635 (interactive)
635 ;; We used to do `delete-field' here, but when file name shadowing 636 ;; We used to do `delete-field' here, but when file name shadowing
636 ;; is on, the field doesn't cover the entire minibuffer contents. 637 ;; is on, the field doesn't cover the entire minibuffer contents.
637 (delete-region (minibuffer-prompt-end) (point-max))) 638 (delete-region (minibuffer-prompt-end) (point-max)))
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 019ab1eef0f..b1532eb2ae4 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -403,6 +403,7 @@ interpreted as a regular expression which always matches."
403(defcustom tramp-save-ad-hoc-proxies nil 403(defcustom tramp-save-ad-hoc-proxies nil
404 "Whether to save ad-hoc proxies persistently." 404 "Whether to save ad-hoc proxies persistently."
405 :group 'tramp 405 :group 'tramp
406 :version "24.3"
406 :type 'boolean) 407 :type 'boolean)
407 408
408(defcustom tramp-restricted-shell-hosts-alist 409(defcustom tramp-restricted-shell-hosts-alist
diff --git a/lisp/proced.el b/lisp/proced.el
index ec41ce65ef5..e3ff9fb5c95 100644
--- a/lisp/proced.el
+++ b/lisp/proced.el
@@ -68,6 +68,7 @@ the external command (usually \"kill\")."
68(defcustom proced-renice-command "renice" 68(defcustom proced-renice-command "renice"
69 "Name of renice command." 69 "Name of renice command."
70 :group 'proced 70 :group 'proced
71 :version "24.3"
71 :type '(string :tag "command")) 72 :type '(string :tag "command"))
72 73
73(defcustom proced-signal-list 74(defcustom proced-signal-list
diff --git a/lisp/profiler.el b/lisp/profiler.el
index 5e605957833..e9261eb1af7 100644
--- a/lisp/profiler.el
+++ b/lisp/profiler.el
@@ -29,6 +29,7 @@
29(defgroup profiler nil 29(defgroup profiler nil
30 "Emacs profiler." 30 "Emacs profiler."
31 :group 'lisp 31 :group 'lisp
32 :version "24.3"
32 :prefix "profiler-") 33 :prefix "profiler-")
33 34
34(defconst profiler-version "24.3") 35(defconst profiler-version "24.3")
diff --git a/lisp/progmodes/bug-reference.el b/lisp/progmodes/bug-reference.el
index 97fcb6874dd..3561105e59d 100644
--- a/lisp/progmodes/bug-reference.el
+++ b/lisp/progmodes/bug-reference.el
@@ -74,6 +74,7 @@ so that it is considered safe, see `enable-local-variables'.")
74The second subexpression should match the bug reference (usually a number)." 74The second subexpression should match the bug reference (usually a number)."
75 :type 'string 75 :type 'string
76 :safe 'stringp 76 :safe 'stringp
77 :version "24.3" ; previously defconst
77 :group 'bug-reference) 78 :group 'bug-reference)
78 79
79(defun bug-reference-set-overlay-properties () 80(defun bug-reference-set-overlay-properties ()
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index 10d5fdf9c64..26d4a399c2d 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -768,6 +768,7 @@ line number outside the file being compiled."
768The value may also be a list of two elements where the second 768The value may also be a list of two elements where the second
769element specifies the face for the bitmap." 769element specifies the face for the bitmap."
770 :group 'flymake 770 :group 'flymake
771 :version "24.3"
771 :type 'symbol) 772 :type 'symbol)
772 773
773(defcustom flymake-warning-bitmap 'question-mark 774(defcustom flymake-warning-bitmap 'question-mark
@@ -775,6 +776,7 @@ element specifies the face for the bitmap."
775The value may also be a list of two elements where the second 776The value may also be a list of two elements where the second
776element specifies the face for the bitmap." 777element specifies the face for the bitmap."
777 :group 'flymake 778 :group 'flymake
779 :version "24.3"
778 :type 'symbol) 780 :type 'symbol)
779 781
780(defcustom flymake-fringe-indicator-position 'left-fringe 782(defcustom flymake-fringe-indicator-position 'left-fringe
@@ -782,6 +784,7 @@ element specifies the face for the bitmap."
782The value can be nil, left-fringe or right-fringe. 784The value can be nil, left-fringe or right-fringe.
783Fringe indicators are disabled if nil." 785Fringe indicators are disabled if nil."
784 :group 'flymake 786 :group 'flymake
787 :version "24.3"
785 :type '(choice (const left-fringe) 788 :type '(choice (const left-fringe)
786 (const right-fringe) 789 (const right-fringe)
787 (const :tag "No fringe indicators" nil))) 790 (const :tag "No fringe indicators" nil)))
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index b3b3b0181d7..726c0b2d542 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -1667,10 +1667,6 @@ variable.
1667\(Type \\[describe-mode] in the process buffer for a list of commands.)" 1667\(Type \\[describe-mode] in the process buffer for a list of commands.)"
1668 (set-syntax-table python-mode-syntax-table) 1668 (set-syntax-table python-mode-syntax-table)
1669 (setq mode-line-process '(":%s")) 1669 (setq mode-line-process '(":%s"))
1670 (setq comint-prompt-regexp (format "^\\(?:%s\\|%s\\|%s\\)"
1671 python-shell-prompt-regexp
1672 python-shell-prompt-block-regexp
1673 python-shell-prompt-pdb-regexp))
1674 (make-local-variable 'comint-output-filter-functions) 1670 (make-local-variable 'comint-output-filter-functions)
1675 (add-hook 'comint-output-filter-functions 1671 (add-hook 'comint-output-filter-functions
1676 'python-comint-output-filter-function) 1672 'python-comint-output-filter-function)
@@ -1720,7 +1716,11 @@ killed."
1720 (process (get-buffer-process buffer))) 1716 (process (get-buffer-process buffer)))
1721 (with-current-buffer buffer 1717 (with-current-buffer buffer
1722 (inferior-python-mode) 1718 (inferior-python-mode)
1723 (python-util-clone-local-variables current-buffer)) 1719 (python-util-clone-local-variables current-buffer)
1720 (setq comint-prompt-regexp (format "^\\(?:%s\\|%s\\|%s\\)"
1721 python-shell-prompt-regexp
1722 python-shell-prompt-block-regexp
1723 python-shell-prompt-pdb-regexp)))
1724 (accept-process-output process) 1724 (accept-process-output process)
1725 (and pop (pop-to-buffer buffer t)) 1725 (and pop (pop-to-buffer buffer t))
1726 (and internal (set-process-query-on-exit-flag process nil)))) 1726 (and internal (set-process-query-on-exit-flag process nil))))
@@ -1861,26 +1861,39 @@ When MSG is non-nil messages the first line of STRING."
1861 (string-match "\n[ \t].*\n?$" string)) 1861 (string-match "\n[ \t].*\n?$" string))
1862 (comint-send-string process "\n"))))) 1862 (comint-send-string process "\n")))))
1863 1863
1864;; Shell output catching stolen from gud-gdb 1864(defvar python-shell-output-filter-in-progress nil)
1865(defvar python-shell-fetch-lines-in-progress nil) 1865(defvar python-shell-output-filter-buffer nil)
1866(defvar python-shell-fetch-lines-string nil) 1866
1867(defvar python-shell-fetched-lines nil) 1867(defun python-shell-output-filter (string)
1868 1868 "Filter used in `python-shell-send-string-no-output' to grab output.
1869(defun python-shell-fetch-lines-filter (string) 1869STRING is the output received to this point from the process.
1870 "Filter used to read the list of lines output by a command. 1870This filter saves received output from the process in
1871STRING is the output to filter." 1871`python-shell-output-filter-buffer' and stops receiving it after
1872 (setq string (concat python-shell-fetch-lines-string string)) 1872detecting a prompt at the end of the buffer."
1873 (while (string-match "\n" string) 1873 (setq
1874 (push (substring string 0 (match-beginning 0)) 1874 string (ansi-color-filter-apply string)
1875 python-shell-fetched-lines) 1875 python-shell-output-filter-buffer
1876 (setq string (substring string (match-end 0)))) 1876 (concat python-shell-output-filter-buffer string))
1877 (if (equal (string-match comint-prompt-regexp string) 0) 1877 (when (string-match
1878 (progn 1878 (format "\n\\(?:%s\\|%s\\|%s\\)$"
1879 (setq python-shell-fetch-lines-in-progress nil) 1879 python-shell-prompt-regexp
1880 string) 1880 python-shell-prompt-block-regexp
1881 (progn 1881 python-shell-prompt-pdb-regexp)
1882 (setq python-shell-fetch-lines-string string) 1882 python-shell-output-filter-buffer)
1883 ""))) 1883 ;; Output ends when `python-shell-output-filter-buffer' contains
1884 ;; the prompt attached at the end of it.
1885 (setq python-shell-output-filter-in-progress nil
1886 python-shell-output-filter-buffer
1887 (substring python-shell-output-filter-buffer
1888 0 (match-beginning 0)))
1889 (when (and (> (length python-shell-prompt-output-regexp) 0)
1890 (string-match (concat "^" python-shell-prompt-output-regexp)
1891 python-shell-output-filter-buffer))
1892 ;; Some shells, like iPython might append a prompt before the
1893 ;; output, clean that.
1894 (setq python-shell-output-filter-buffer
1895 (substring python-shell-output-filter-buffer (match-end 0)))))
1896 "")
1884 1897
1885(defun python-shell-send-string-no-output (string &optional process msg) 1898(defun python-shell-send-string-no-output (string &optional process msg)
1886 "Send STRING to PROCESS and inhibit output. 1899 "Send STRING to PROCESS and inhibit output.
@@ -1888,18 +1901,20 @@ When MSG is non-nil messages the first line of STRING. Return
1888the output." 1901the output."
1889 (let ((process (or process (python-shell-get-or-create-process))) 1902 (let ((process (or process (python-shell-get-or-create-process)))
1890 (comint-preoutput-filter-functions 1903 (comint-preoutput-filter-functions
1891 '(python-shell-fetch-lines-filter)) 1904 '(python-shell-output-filter))
1892 (python-shell-fetch-lines-in-progress t) 1905 (python-shell-output-filter-in-progress t)
1893 (inhibit-quit t)) 1906 (inhibit-quit t))
1894 (or 1907 (or
1895 (with-local-quit 1908 (with-local-quit
1896 (python-shell-send-string string process msg) 1909 (python-shell-send-string string process msg)
1897 (while python-shell-fetch-lines-in-progress 1910 (while python-shell-output-filter-in-progress
1911 ;; `python-shell-output-filter' takes care of setting
1912 ;; `python-shell-output-filter-in-progress' to NIL after it
1913 ;; detects end of output.
1898 (accept-process-output process)) 1914 (accept-process-output process))
1899 (prog1 1915 (prog1
1900 (mapconcat #'identity 1916 python-shell-output-filter-buffer
1901 (reverse python-shell-fetched-lines) "\n") 1917 (setq python-shell-output-filter-buffer nil)))
1902 (setq python-shell-fetched-lines nil)))
1903 (with-current-buffer (process-buffer process) 1918 (with-current-buffer (process-buffer process)
1904 (comint-interrupt-subjob))))) 1919 (comint-interrupt-subjob)))))
1905 1920
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index e94919ee2a9..06ded5fb53d 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -1767,7 +1767,9 @@ Does not preserve point."
1767 1767
1768(defcustom sh-indent-after-continuation t 1768(defcustom sh-indent-after-continuation t
1769 "If non-nil, try to make sure text is indented after a line continuation." 1769 "If non-nil, try to make sure text is indented after a line continuation."
1770 :type 'boolean) 1770 :version "24.3"
1771 :type 'boolean
1772 :group 'sh-indentation)
1771 1773
1772(defun sh-smie--continuation-start-indent () 1774(defun sh-smie--continuation-start-indent ()
1773 "Return the initial indentation of a continued line. 1775 "Return the initial indentation of a continued line.
diff --git a/lisp/progmodes/verilog-mode.el b/lisp/progmodes/verilog-mode.el
index 8c4167b6724..6ffe88f721e 100644
--- a/lisp/progmodes/verilog-mode.el
+++ b/lisp/progmodes/verilog-mode.el
@@ -1159,6 +1159,7 @@ See the \\[verilog-faq] for examples on using this."
1159 "Non-nil means report warning if an AUTO_TEMPLATE line is not used. 1159 "Non-nil means report warning if an AUTO_TEMPLATE line is not used.
1160This feature is not supported before Emacs 21.1 or XEmacs 21.4." 1160This feature is not supported before Emacs 21.1 or XEmacs 21.4."
1161 :group 'verilog-mode-auto 1161 :group 'verilog-mode-auto
1162 :version "24.3"
1162 :type 'boolean) 1163 :type 'boolean)
1163(put 'verilog-auto-template-warn-unused 'safe-local-variable 'verilog-booleanp) 1164(put 'verilog-auto-template-warn-unused 'safe-local-variable 'verilog-booleanp)
1164 1165
@@ -1230,11 +1231,13 @@ For example, \"_t$\" matches typedefs named with _t, as in the C language."
1230(defcustom verilog-before-save-font-hook nil 1231(defcustom verilog-before-save-font-hook nil
1231 "Hook run before `verilog-save-font-mods' removes highlighting." 1232 "Hook run before `verilog-save-font-mods' removes highlighting."
1232 :group 'verilog-mode-auto 1233 :group 'verilog-mode-auto
1234 :version "24.3"
1233 :type 'hook) 1235 :type 'hook)
1234 1236
1235(defcustom verilog-after-save-font-hook nil 1237(defcustom verilog-after-save-font-hook nil
1236 "Hook run after `verilog-save-font-mods' restores highlighting." 1238 "Hook run after `verilog-save-font-mods' restores highlighting."
1237 :group 'verilog-mode-auto 1239 :group 'verilog-mode-auto
1240 :version "24.3"
1238 :type 'hook) 1241 :type 'hook)
1239 1242
1240(defvar verilog-imenu-generic-expression 1243(defvar verilog-imenu-generic-expression
diff --git a/lisp/progmodes/vhdl-mode.el b/lisp/progmodes/vhdl-mode.el
index 52757b9eede..6ad7d3b168a 100644
--- a/lisp/progmodes/vhdl-mode.el
+++ b/lisp/progmodes/vhdl-mode.el
@@ -483,6 +483,7 @@ with other user Makefiles."
483 :type '(list (string :tag "Compile entire design") 483 :type '(list (string :tag "Compile entire design")
484 (string :tag "Clean entire design ") 484 (string :tag "Clean entire design ")
485 (string :tag "Create design library")) 485 (string :tag "Create design library"))
486 :version "24.3"
486 :group 'vhdl-compile) 487 :group 'vhdl-compile)
487 488
488(defcustom vhdl-makefile-generation-hook nil 489(defcustom vhdl-makefile-generation-hook nil
@@ -772,6 +773,7 @@ index, the record field or array index is included with the record name in
772the sensitivity list (e.g. \"in1(0)\", \"in2.f0\"). 773the sensitivity list (e.g. \"in1(0)\", \"in2.f0\").
773Otherwise, only the record name is included (e.g. \"in1\", \"in2\")." 774Otherwise, only the record name is included (e.g. \"in1\", \"in2\")."
774 :type 'boolean 775 :type 'boolean
776 :version "24.3"
775 :group 'vhdl-style) 777 :group 'vhdl-style)
776 778
777(defgroup vhdl-naming nil 779(defgroup vhdl-naming nil
@@ -1849,6 +1851,7 @@ Otherwise, comment lines are indented like the preceding code line.
1849Indenting comment lines like the following code line gives nicer indentation 1851Indenting comment lines like the following code line gives nicer indentation
1850when comments precede the code that they refer to." 1852when comments precede the code that they refer to."
1851 :type 'boolean 1853 :type 'boolean
1854 :version "24.3"
1852 :group 'vhdl-misc) 1855 :group 'vhdl-misc)
1853 1856
1854(defcustom vhdl-word-completion-case-sensitive nil 1857(defcustom vhdl-word-completion-case-sensitive nil
diff --git a/lisp/register.el b/lisp/register.el
index fb35a26a653..7c2d9337fa2 100644
--- a/lisp/register.el
+++ b/lisp/register.el
@@ -382,6 +382,7 @@ START and END are buffer positions indicating what to append."
382 register (cond ((not reg) text) 382 register (cond ((not reg) text)
383 ((stringp reg) (concat reg separator text)) 383 ((stringp reg) (concat reg separator text))
384 (t (error "Register does not contain text"))))) 384 (t (error "Register does not contain text")))))
385 (setq deactivate-mark t)
385 (cond (delete-flag 386 (cond (delete-flag
386 (delete-region start end)) 387 (delete-region start end))
387 ((called-interactively-p 'interactive) 388 ((called-interactively-p 'interactive)
@@ -400,6 +401,7 @@ START and END are buffer positions indicating what to prepend."
400 register (cond ((not reg) text) 401 register (cond ((not reg) text)
401 ((stringp reg) (concat text separator reg)) 402 ((stringp reg) (concat text separator reg))
402 (t (error "Register does not contain text"))))) 403 (t (error "Register does not contain text")))))
404 (setq deactivate-mark t)
403 (cond (delete-flag 405 (cond (delete-flag
404 (delete-region start end)) 406 (delete-region start end))
405 ((called-interactively-p 'interactive) 407 ((called-interactively-p 'interactive)
diff --git a/lisp/strokes.el b/lisp/strokes.el
index 62a8528f25d..9a3a7608d2b 100644
--- a/lisp/strokes.el
+++ b/lisp/strokes.el
@@ -212,13 +212,14 @@ static char * stroke_xpm[] = {
212 :link '(emacs-commentary-link "strokes") 212 :link '(emacs-commentary-link "strokes")
213 :group 'mouse) 213 :group 'mouse)
214 214
215(define-obsolete-variable-alias 'strokes-modeline-string 'strokes-lighter
216 "24.3")
217
215(defcustom strokes-lighter " Strokes" 218(defcustom strokes-lighter " Strokes"
216 "Mode line identifier for Strokes mode." 219 "Mode line identifier for Strokes mode."
217 :type 'string 220 :type 'string
218 :group 'strokes) 221 :group 'strokes)
219 222
220(define-obsolete-variable-alias 'strokes-modeline-string 'strokes-lighter "24.3")
221
222(defcustom strokes-character ?@ 223(defcustom strokes-character ?@
223 "Character used when drawing strokes in the strokes buffer. 224 "Character used when drawing strokes in the strokes buffer.
224\(The default is `@', which works well.\)" 225\(The default is `@', which works well.\)"
diff --git a/lisp/subr.el b/lisp/subr.el
index 72bedc69c3c..e438a860cbc 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -2143,6 +2143,13 @@ any other non-digit terminates the character code and is then used as input."))
2143 (setq first nil)) 2143 (setq first nil))
2144 code)) 2144 code))
2145 2145
2146(defconst read-passwd-map
2147 (let ((map (make-sparse-keymap)))
2148 (set-keymap-parent map minibuffer-local-map)
2149 (define-key map "\C-u" #'delete-minibuffer-contents) ;bug#12570
2150 map)
2151 "Keymap used while reading passwords.")
2152
2146(defun read-passwd (prompt &optional confirm default) 2153(defun read-passwd (prompt &optional confirm default)
2147 "Read a password, prompting with PROMPT, and return it. 2154 "Read a password, prompting with PROMPT, and return it.
2148If optional CONFIRM is non-nil, read the password twice to make sure. 2155If optional CONFIRM is non-nil, read the password twice to make sure.
@@ -2180,18 +2187,11 @@ by doing (clear-string STRING)."
2180 (setq minibuf (current-buffer)) 2187 (setq minibuf (current-buffer))
2181 ;; Turn off electricity. 2188 ;; Turn off electricity.
2182 (set (make-local-variable 'post-self-insert-hook) nil) 2189 (set (make-local-variable 'post-self-insert-hook) nil)
2190 (use-local-map read-passwd-map)
2183 (add-hook 'after-change-functions hide-chars-fun nil 'local)) 2191 (add-hook 'after-change-functions hide-chars-fun nil 'local))
2184 (unwind-protect 2192 (unwind-protect
2185 (let ((enable-recursive-minibuffers t) 2193 (let ((enable-recursive-minibuffers t))
2186 (map minibuffer-local-map) 2194 (read-string prompt nil t default)) ; t = "no history"
2187 result)
2188 (define-key map "\C-u" ; bug#12570
2189 (lambda () (interactive) (delete-minibuffer-contents)))
2190 (setq result
2191 ;; t = no history.
2192 (read-from-minibuffer prompt nil map nil t default))
2193 (if (and (equal "" result) default) default
2194 result))
2195 (when (buffer-live-p minibuf) 2195 (when (buffer-live-p minibuf)
2196 (with-current-buffer minibuf 2196 (with-current-buffer minibuf
2197 ;; Not sure why but it seems that there might be cases where the 2197 ;; Not sure why but it seems that there might be cases where the
diff --git a/lisp/textmodes/reftex-vars.el b/lisp/textmodes/reftex-vars.el
index df3d729adca..2c1fc972057 100644
--- a/lisp/textmodes/reftex-vars.el
+++ b/lisp/textmodes/reftex-vars.el
@@ -968,6 +968,7 @@ the macro type is being prompted for. (See also
968`reftex-ref-macro-prompt'.) The keys, represented as characters, 968`reftex-ref-macro-prompt'.) The keys, represented as characters,
969have to be unique." 969have to be unique."
970 :group 'reftex-referencing-labels 970 :group 'reftex-referencing-labels
971 :version "24.3"
971 :type '(alist :key-type (string :tag "Style name") 972 :type '(alist :key-type (string :tag "Style name")
972 :value-type (group (choice :tag "Package" 973 :value-type (group (choice :tag "Package"
973 (const :tag "Any package" t) 974 (const :tag "Any package" t)
@@ -979,6 +980,7 @@ have to be unique."
979(defcustom reftex-ref-macro-prompt t 980(defcustom reftex-ref-macro-prompt t
980 "If non-nil, `reftex-reference' prompts for the reference macro." 981 "If non-nil, `reftex-reference' prompts for the reference macro."
981 :group 'reftex-referencing-labels 982 :group 'reftex-referencing-labels
983 :version "24.3"
982 :type 'boolean) 984 :type 'boolean)
983 985
984(defcustom reftex-vref-is-default nil 986(defcustom reftex-vref-is-default nil
@@ -1014,6 +1016,7 @@ can be cycled in the buffer for selecting a label. The entries
1014in the list have to match the respective reference style names 1016in the list have to match the respective reference style names
1015used in the variable `reftex-ref-style-alist'." 1017used in the variable `reftex-ref-style-alist'."
1016 :group 'reftex-referencing-labels 1018 :group 'reftex-referencing-labels
1019 :version "24.3"
1017 :type `(set ,@(mapcar (lambda (x) (list 'const (car x))) 1020 :type `(set ,@(mapcar (lambda (x) (list 'const (car x)))
1018 reftex-ref-style-alist))) 1021 reftex-ref-style-alist)))
1019 1022
@@ -1257,17 +1260,20 @@ should return the string to insert into the buffer."
1257(defcustom reftex-cite-key-separator "," 1260(defcustom reftex-cite-key-separator ","
1258 "String to be used for separating several keys in a \\cite macro." 1261 "String to be used for separating several keys in a \\cite macro."
1259 :group 'reftex-citation-support 1262 :group 'reftex-citation-support
1263 :version "24.3"
1260 :type 'string) 1264 :type 'string)
1261 1265
1262(defcustom reftex-create-bibtex-header nil 1266(defcustom reftex-create-bibtex-header nil
1263 "Header to insert in BibTeX files generated by RefTeX." 1267 "Header to insert in BibTeX files generated by RefTeX."
1264 :group 'reftex-citation-support 1268 :group 'reftex-citation-support
1265 :type 'string) 1269 :version "24.3"
1270 :type '(choice (const :tag "No header" nil) string))
1266 1271
1267(defcustom reftex-create-bibtex-footer nil 1272(defcustom reftex-create-bibtex-footer nil
1268 "Footer to insert in BibTeX files generated by RefTeX." 1273 "Footer to insert in BibTeX files generated by RefTeX."
1269 :group 'reftex-citation-support 1274 :group 'reftex-citation-support
1270 :type 'string) 1275 :version "24.3"
1276 :type '(choice (const :tag "No footer" nil) string))
1271 1277
1272;; Index Support Configuration 1278;; Index Support Configuration
1273 1279
diff --git a/lisp/textmodes/rst.el b/lisp/textmodes/rst.el
index 869da63064a..f2c74dfb941 100644
--- a/lisp/textmodes/rst.el
+++ b/lisp/textmodes/rst.el
@@ -218,7 +218,7 @@ and before TAIL-RE and DELIM-RE in VAR or DEFAULT for no match."
218;; Use CVSHeader to really get information from CVS and not other version 218;; Use CVSHeader to really get information from CVS and not other version
219;; control systems. 219;; control systems.
220(defconst rst-cvs-header 220(defconst rst-cvs-header
221 "$CVSHeader: sm/rst_el/rst.el,v 1.327.2.2 2012-09-23 14:44:25 stefan Exp $") 221 "$CVSHeader: sm/rst_el/rst.el,v 1.327.2.5 2012-10-07 12:44:34 stefan Exp $")
222(defconst rst-cvs-rev 222(defconst rst-cvs-rev
223 (rst-extract-version "\\$" "CVSHeader: \\S + " "[0-9]+\\(?:\\.[0-9]+\\)+" 223 (rst-extract-version "\\$" "CVSHeader: \\S + " "[0-9]+\\(?:\\.[0-9]+\\)+"
224 " .*" rst-cvs-header "0.0") 224 " .*" rst-cvs-header "0.0")
@@ -247,7 +247,7 @@ SVN revision is the upstream (docutils) revision.")
247 "Official version of the package.") 247 "Official version of the package.")
248(defconst rst-official-cvs-rev 248(defconst rst-official-cvs-rev
249 (rst-extract-version "[%$]" "Revision: " "[0-9]+\\(?:\\.[0-9]+\\)+" " " 249 (rst-extract-version "[%$]" "Revision: " "[0-9]+\\(?:\\.[0-9]+\\)+" " "
250 "$Revision: 1.327.2.2 $") 250 "$Revision: 1.327.2.5 $")
251 "CVS revision of this file in the official version.") 251 "CVS revision of this file in the official version.")
252 252
253(defconst rst-version 253(defconst rst-version
@@ -967,7 +967,7 @@ for modes derived from Text mode, like Mail mode."
967 :version "21.1") 967 :version "21.1")
968 968
969(define-obsolete-variable-alias 969(define-obsolete-variable-alias
970 'rst-preferred-decorations 'rst-preferred-adornments "1.0.0") 970 'rst-preferred-decorations 'rst-preferred-adornments "rst 1.0.0")
971(defcustom rst-preferred-adornments '((?= over-and-under 1) 971(defcustom rst-preferred-adornments '((?= over-and-under 1)
972 (?= simple 0) 972 (?= simple 0)
973 (?- simple 0) 973 (?- simple 0)
@@ -2835,7 +2835,7 @@ here."
2835 :package-version '(rst . "1.1.0")) 2835 :package-version '(rst . "1.1.0"))
2836 2836
2837(define-obsolete-variable-alias 2837(define-obsolete-variable-alias
2838 'rst-shift-basic-offset 'rst-indent-width "1.0.0") 2838 'rst-shift-basic-offset 'rst-indent-width "rst 1.0.0")
2839(defcustom rst-indent-width 2 2839(defcustom rst-indent-width 2
2840 "Indentation when there is no more indentation point given." 2840 "Indentation when there is no more indentation point given."
2841 :group 'rst-indent 2841 :group 'rst-indent
@@ -2845,24 +2845,28 @@ here."
2845(defcustom rst-indent-field 3 2845(defcustom rst-indent-field 3
2846 "Indentation for first line after a field or 0 to always indent for content." 2846 "Indentation for first line after a field or 0 to always indent for content."
2847 :group 'rst-indent 2847 :group 'rst-indent
2848 :package-version '(rst . "1.1.0")
2848 :type '(integer)) 2849 :type '(integer))
2849(rst-testcover-defcustom) 2850(rst-testcover-defcustom)
2850 2851
2851(defcustom rst-indent-literal-normal 3 2852(defcustom rst-indent-literal-normal 3
2852 "Default indentation for literal block after a markup on an own line." 2853 "Default indentation for literal block after a markup on an own line."
2853 :group 'rst-indent 2854 :group 'rst-indent
2855 :package-version '(rst . "1.1.0")
2854 :type '(integer)) 2856 :type '(integer))
2855(rst-testcover-defcustom) 2857(rst-testcover-defcustom)
2856 2858
2857(defcustom rst-indent-literal-minimized 2 2859(defcustom rst-indent-literal-minimized 2
2858 "Default indentation for literal block after a minimized markup." 2860 "Default indentation for literal block after a minimized markup."
2859 :group 'rst-indent 2861 :group 'rst-indent
2862 :package-version '(rst . "1.1.0")
2860 :type '(integer)) 2863 :type '(integer))
2861(rst-testcover-defcustom) 2864(rst-testcover-defcustom)
2862 2865
2863(defcustom rst-indent-comment 3 2866(defcustom rst-indent-comment 3
2864 "Default indentation for first line of a comment." 2867 "Default indentation for first line of a comment."
2865 :group 'rst-indent 2868 :group 'rst-indent
2869 :package-version '(rst . "1.1.0")
2866 :type '(integer)) 2870 :type '(integer))
2867(rst-testcover-defcustom) 2871(rst-testcover-defcustom)
2868 2872
diff --git a/src/ChangeLog b/src/ChangeLog
index 956e78e6c7e..492b966a256 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,65 @@
12012-10-07 Jan Djärv <jan.h.d@swipnet.se>
2
3 * nsterm.m (ns_dumpglyphs_image): Only draw slize of image (Bug#12506).
4
5 * nsterm.m (ns_update_auto_hide_menu_bar): Remove defintion of
6 MAC_OS_X_VERSION_10_6.
7 (syms_of_nsterm): Remove comment about Panther and above for ns-antialias-text.
8 * nsterm.h (MAC_OS_X_VERSION_10_3, onTiger): Remove.
9 (EmacsApp): Remove check for >= MAC_OS_X_VERSION_10_4.
10 (struct nsfont_info): Remove check for >= MAC_OS_X_VERSION_10_3.
11
12 * nsselect.m (ns_string_from_pasteboard): Remove check for >=
13 MAC_OS_X_VERSION_10_4.
14
15 * nsmenu.m (fillWithWidgetValue:): Remove code for < MAC_OS_X_VERSION_10_2.
16
17 * nsimage.m (setPixmapData, getPixelAtX, setAlphaAtX): Remove onTiger.
18
19 * nsfns.m (Fns_list_services): Remove comment and check for OSX < 10.4.
20 (ns_do_applescript): Remove check for >= MAC_OS_X_VERSION_10_4.
21
22 * nsterm.m (ns_in_resize): Remove (Bug#12479).
23 (ns_resize_handle_rect, mouseDown, mouseUp, mouseDragged): Remove.
24 (ns_clear_frame, sendEvent, windowDidResize, drawRect:): Remove ns_in_resize
25 check.
26 (ns_clear_frame_area): Remove resize handle code.
27
28 * nsfns.m (ns_in_resize): Remove.
29 (x_set_icon_name, ns_set_name, ns_set_name_as_filename): Remove ns_in_resize
30 check.
31
322012-10-07 Paul Eggert <eggert@cs.ucla.edu>
33
34 Improve sys_siglist detection.
35 * sysdep.c (sys_siglist, init_signals): Use _sys_siglist if it's
36 defined as a macro, as is done in Solaris.
37 (sys_siglist_entries): New macro.
38 (save_strsignal): Use it.
39 * syssignal.h (safe_strsignal): Now ATTRIBUTE_CONST, to pacify
40 GCC 4.7.2 on Fedora 17 with the fixed sys_siglist detection.
41
422012-10-06 Jan Djärv <jan.h.d@swipnet.se>
43
44 * nsfns.m (Fx_create_frame): Call x_default_parameter with
45 fullscreen/Fullscreen.
46
47 * nsterm.h (EmacsView): Rename tbar_height to tibar_height.
48 tobar_height is new.
49
50 * nsterm.m (x_make_frame_visible): Check for fullscreen.
51 (ns_fullscreen_hook): Activate old style fullscreen with a timer.
52 (ns_term_init): Set activateIgnoringOtherApps if old style fullscreen.
53 (windowDidResize:): Check for correct window if old style fullscreen.
54 Capitalize word in comment. Remove incorrect comment.
55 (initFrameFromEmacs:): tbar_height renamed tibar_height.
56 (windowDidEnterFullScreen:): Toggle toolbar for fullscreen to fix
57 error in drawing background.
58 (toggleFullScreen:): Remove comment. Rearrange calls.
59 Set toolbar values to zero, save old height in tobar_height.
60 Restore tool bar height when leaving fullscreen.
61 (canBecomeMainWindow): New function.
62
12012-10-06 Paul Eggert <eggert@cs.ucla.edu> 632012-10-06 Paul Eggert <eggert@cs.ucla.edu>
2 64
3 * keyboard.c (read_char): Remove unnecessary 'volatile's and label. 65 * keyboard.c (read_char): Remove unnecessary 'volatile's and label.
diff --git a/src/nsfns.m b/src/nsfns.m
index 1efadf0cb98..7a22ac547c3 100644
--- a/src/nsfns.m
+++ b/src/nsfns.m
@@ -93,8 +93,6 @@ EmacsTooltip *ns_tooltip;
93/* Need forward declaration here to preserve organizational integrity of file */ 93/* Need forward declaration here to preserve organizational integrity of file */
94Lisp_Object Fx_open_connection (Lisp_Object, Lisp_Object, Lisp_Object); 94Lisp_Object Fx_open_connection (Lisp_Object, Lisp_Object, Lisp_Object);
95 95
96extern BOOL ns_in_resize;
97
98/* Static variables to handle applescript execution. */ 96/* Static variables to handle applescript execution. */
99static Lisp_Object as_script, *as_result; 97static Lisp_Object as_script, *as_result;
100static int as_status; 98static int as_status;
@@ -433,9 +431,6 @@ x_set_icon_name (struct frame *f, Lisp_Object arg, Lisp_Object oldval)
433 NSView *view = FRAME_NS_VIEW (f); 431 NSView *view = FRAME_NS_VIEW (f);
434 NSTRACE (x_set_icon_name); 432 NSTRACE (x_set_icon_name);
435 433
436 if (ns_in_resize)
437 return;
438
439 /* see if it's changed */ 434 /* see if it's changed */
440 if (STRINGP (arg)) 435 if (STRINGP (arg))
441 { 436 {
@@ -511,9 +506,6 @@ ns_set_name (struct frame *f, Lisp_Object name, int explicit)
511{ 506{
512 NSTRACE (ns_set_name); 507 NSTRACE (ns_set_name);
513 508
514 if (ns_in_resize)
515 return;
516
517 /* Make sure that requests from lisp code override requests from 509 /* Make sure that requests from lisp code override requests from
518 Emacs redisplay code. */ 510 Emacs redisplay code. */
519 if (explicit) 511 if (explicit)
@@ -612,7 +604,7 @@ ns_set_name_as_filename (struct frame *f)
612 NSString *str; 604 NSString *str;
613 NSTRACE (ns_set_name_as_filename); 605 NSTRACE (ns_set_name_as_filename);
614 606
615 if (f->explicit_name || ! NILP (f->title) || ns_in_resize) 607 if (f->explicit_name || ! NILP (f->title))
616 return; 608 return;
617 609
618 block_input (); 610 block_input ();
@@ -1346,6 +1338,8 @@ This function is an internal primitive--use `make-frame' instead. */)
1346 RES_TYPE_NUMBER); 1338 RES_TYPE_NUMBER);
1347 x_default_parameter (f, parms, Qalpha, Qnil, 1339 x_default_parameter (f, parms, Qalpha, Qnil,
1348 "alpha", "Alpha", RES_TYPE_NUMBER); 1340 "alpha", "Alpha", RES_TYPE_NUMBER);
1341 x_default_parameter (f, parms, Qfullscreen, Qnil,
1342 "fullscreen", "Fullscreen", RES_TYPE_SYMBOL);
1349 1343
1350 width = FRAME_COLS (f); 1344 width = FRAME_COLS (f);
1351 height = FRAME_LINES (f); 1345 height = FRAME_LINES (f);
@@ -1955,32 +1949,29 @@ DEFUN ("ns-list-services", Fns_list_services, Sns_list_services, 0, 0, 0,
1955 1949
1956 check_ns (); 1950 check_ns ();
1957 svcs = [[NSMenu alloc] initWithTitle: @"Services"]; 1951 svcs = [[NSMenu alloc] initWithTitle: @"Services"];
1958 [NSApp setServicesMenu: svcs]; /* this and next rebuild on <10.4 */ 1952 [NSApp setServicesMenu: svcs];
1959 [NSApp registerServicesMenuSendTypes: ns_send_types 1953 [NSApp registerServicesMenuSendTypes: ns_send_types
1960 returnTypes: ns_return_types]; 1954 returnTypes: ns_return_types];
1961 1955
1962/* On Tiger, services menu updating was made lazier (waits for user to 1956/* On Tiger, services menu updating was made lazier (waits for user to
1963 actually click on the menu), so we have to force things along: */ 1957 actually click on the menu), so we have to force things along: */
1964#ifdef NS_IMPL_COCOA 1958#ifdef NS_IMPL_COCOA
1965 if (NSAppKitVersionNumber >= 744.0) 1959 delegate = [svcs delegate];
1960 if (delegate != nil)
1966 { 1961 {
1967 delegate = [svcs delegate]; 1962 if ([delegate respondsToSelector: @selector (menuNeedsUpdate:)])
1968 if (delegate != nil) 1963 [delegate menuNeedsUpdate: svcs];
1964 if ([delegate respondsToSelector:
1965 @selector (menu:updateItem:atIndex:shouldCancel:)])
1969 { 1966 {
1970 if ([delegate respondsToSelector: @selector (menuNeedsUpdate:)]) 1967 int i, len = [delegate numberOfItemsInMenu: svcs];
1971 [delegate menuNeedsUpdate: svcs]; 1968 for (i =0; i<len; i++)
1972 if ([delegate respondsToSelector: 1969 [svcs addItemWithTitle: @"" action: NULL keyEquivalent: @""];
1973 @selector (menu:updateItem:atIndex:shouldCancel:)]) 1970 for (i =0; i<len; i++)
1974 { 1971 if (![delegate menu: svcs
1975 int i, len = [delegate numberOfItemsInMenu: svcs]; 1972 updateItem: (NSMenuItem *)[svcs itemAtIndex: i]
1976 for (i =0; i<len; i++) 1973 atIndex: i shouldCancel: NO])
1977 [svcs addItemWithTitle: @"" action: NULL keyEquivalent: @""]; 1974 break;
1978 for (i =0; i<len; i++)
1979 if (![delegate menu: svcs
1980 updateItem: (NSMenuItem *)[svcs itemAtIndex: i]
1981 atIndex: i shouldCancel: NO])
1982 break;
1983 }
1984 } 1975 }
1985 } 1976 }
1986#endif 1977#endif
@@ -2081,7 +2072,7 @@ ns_do_applescript (Lisp_Object script, Lisp_Object *result)
2081 *result = Qt; 2072 *result = Qt;
2082 // script returned an AppleScript result 2073 // script returned an AppleScript result
2083 if ((typeUnicodeText == [returnDescriptor descriptorType]) || 2074 if ((typeUnicodeText == [returnDescriptor descriptorType]) ||
2084#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4 2075#if defined (NS_IMPL_COCOA)
2085 (typeUTF16ExternalRepresentation 2076 (typeUTF16ExternalRepresentation
2086 == [returnDescriptor descriptorType]) || 2077 == [returnDescriptor descriptorType]) ||
2087#endif 2078#endif
diff --git a/src/nsimage.m b/src/nsimage.m
index 370cf832c7c..884c0763fd4 100644
--- a/src/nsimage.m
+++ b/src/nsimage.m
@@ -403,7 +403,6 @@ static EmacsImage *ImageList = nil;
403 if ([rep respondsToSelector: @selector (getBitmapDataPlanes:)]) 403 if ([rep respondsToSelector: @selector (getBitmapDataPlanes:)])
404 { 404 {
405 bmRep = (NSBitmapImageRep *) rep; 405 bmRep = (NSBitmapImageRep *) rep;
406 onTiger = [bmRep respondsToSelector: @selector (colorAtX:y:)];
407 406
408 if ([bmRep numberOfPlanes] >= 3) 407 if ([bmRep numberOfPlanes] >= 3)
409 [bmRep getBitmapDataPlanes: pixmapData]; 408 [bmRep getBitmapDataPlanes: pixmapData];
@@ -435,7 +434,7 @@ static EmacsImage *ImageList = nil;
435 | (pixmapData[0][loc] << 16) | (pixmapData[1][loc] << 8) 434 | (pixmapData[0][loc] << 16) | (pixmapData[1][loc] << 8)
436 | (pixmapData[2][loc]); 435 | (pixmapData[2][loc]);
437 } 436 }
438 else if (onTiger) 437 else
439 { 438 {
440 NSColor *color = [bmRep colorAtX: x y: y]; 439 NSColor *color = [bmRep colorAtX: x y: y];
441 CGFloat r, g, b, a; 440 CGFloat r, g, b, a;
@@ -445,7 +444,6 @@ static EmacsImage *ImageList = nil;
445 | ((int)(b * 255.0)); 444 | ((int)(b * 255.0));
446 445
447 } 446 }
448 return 0;
449} 447}
450 448
451- (void) setPixelAtX: (int)x Y: (int)y toRed: (unsigned char)r 449- (void) setPixelAtX: (int)x Y: (int)y toRed: (unsigned char)r
@@ -463,7 +461,7 @@ static EmacsImage *ImageList = nil;
463 pixmapData[2][loc] = b; 461 pixmapData[2][loc] = b;
464 pixmapData[3][loc] = a; 462 pixmapData[3][loc] = a;
465 } 463 }
466 else if (onTiger) 464 else
467 { 465 {
468 [bmRep setColor: 466 [bmRep setColor:
469 [NSColor colorWithCalibratedRed: (r/255.0) green: (g/255.0) 467 [NSColor colorWithCalibratedRed: (r/255.0) green: (g/255.0)
@@ -483,7 +481,7 @@ static EmacsImage *ImageList = nil;
483 481
484 pixmapData[3][loc] = a; 482 pixmapData[3][loc] = a;
485 } 483 }
486 else if (onTiger) 484 else
487 { 485 {
488 NSColor *color = [bmRep colorAtX: x y: y]; 486 NSColor *color = [bmRep colorAtX: x y: y];
489 color = [color colorWithAlphaComponent: (a / 255.0)]; 487 color = [color colorWithAlphaComponent: (a / 255.0)];
diff --git a/src/nsmenu.m b/src/nsmenu.m
index b60cc005c5f..9af732c6c45 100644
--- a/src/nsmenu.m
+++ b/src/nsmenu.m
@@ -722,11 +722,6 @@ extern NSString *NSMenuDidBeginTrackingNotification;
722#ifdef NS_IMPL_GNUSTEP 722#ifdef NS_IMPL_GNUSTEP
723 if ([[self window] isVisible]) 723 if ([[self window] isVisible])
724 [self sizeToFit]; 724 [self sizeToFit];
725#else
726#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_2
727 if ([self supermenu] == nil)
728 [self sizeToFit];
729#endif
730#endif 725#endif
731} 726}
732 727
diff --git a/src/nsselect.m b/src/nsselect.m
index 95bc1a95957..c0c412c6fb2 100644
--- a/src/nsselect.m
+++ b/src/nsselect.m
@@ -295,7 +295,7 @@ ns_string_from_pasteboard (id pb)
295 utfStr = [mstr UTF8String]; 295 utfStr = [mstr UTF8String];
296 length = [mstr lengthOfBytesUsingEncoding: NSUTF8StringEncoding]; 296 length = [mstr lengthOfBytesUsingEncoding: NSUTF8StringEncoding];
297 297
298#if ! defined (NS_IMPL_COCOA) || MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_4 298#if ! defined (NS_IMPL_COCOA)
299 if (!utfStr) 299 if (!utfStr)
300 { 300 {
301 utfStr = [mstr cString]; 301 utfStr = [mstr cString];
@@ -306,7 +306,7 @@ ns_string_from_pasteboard (id pb)
306 NS_HANDLER 306 NS_HANDLER
307 { 307 {
308 message1 ("ns_string_from_pasteboard: UTF8String failed\n"); 308 message1 ("ns_string_from_pasteboard: UTF8String failed\n");
309#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4 309#if defined (NS_IMPL_COCOA)
310 utfStr = "Conversion failed"; 310 utfStr = "Conversion failed";
311#else 311#else
312 utfStr = [str lossyCString]; 312 utfStr = [str lossyCString];
diff --git a/src/nsterm.h b/src/nsterm.h
index f06e0cb0f7f..958d1ce7853 100644
--- a/src/nsterm.h
+++ b/src/nsterm.h
@@ -26,9 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
26#ifdef HAVE_NS 26#ifdef HAVE_NS
27 27
28#ifdef NS_IMPL_COCOA 28#ifdef NS_IMPL_COCOA
29#ifndef MAC_OS_X_VERSION_10_3
30#define MAC_OS_X_VERSION_10_3 1030
31#endif
32#ifndef MAC_OS_X_VERSION_10_4 29#ifndef MAC_OS_X_VERSION_10_4
33#define MAC_OS_X_VERSION_10_4 1040 30#define MAC_OS_X_VERSION_10_4 1040
34#endif 31#endif
@@ -86,7 +83,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
86 BOOL windowClosing; 83 BOOL windowClosing;
87 NSString *workingText; 84 NSString *workingText;
88 BOOL processingCompose; 85 BOOL processingCompose;
89 int fs_state, fs_before_fs, next_maximized, tbar_height, bwidth; 86 int fs_state, fs_before_fs, next_maximized;
87 int tibar_height, tobar_height, bwidth;
90 int maximized_width, maximized_height; 88 int maximized_width, maximized_height;
91 NSWindow *nonfs_window; 89 NSWindow *nonfs_window;
92@public 90@public
@@ -285,7 +283,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
285 int refCount; 283 int refCount;
286 NSBitmapImageRep *bmRep; /* used for accessing pixel data */ 284 NSBitmapImageRep *bmRep; /* used for accessing pixel data */
287 unsigned char *pixmapData[5]; /* shortcut to access pixel data */ 285 unsigned char *pixmapData[5]; /* shortcut to access pixel data */
288 BOOL onTiger;
289 NSColor *stippleMask; 286 NSColor *stippleMask;
290} 287}
291+ allocInitFromFile: (Lisp_Object)file; 288+ allocInitFromFile: (Lisp_Object)file;
@@ -354,7 +351,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
354 351
355/* ========================================================================== 352/* ==========================================================================
356 353
357 Rendering on Panther and above 354 Rendering
358 355
359 ========================================================================== */ 356 ========================================================================== */
360 357
@@ -379,7 +376,7 @@ extern NSString *ns_app_name;
379extern EmacsMenu *mainMenu, *svcsMenu, *dockMenu; 376extern EmacsMenu *mainMenu, *svcsMenu, *dockMenu;
380 377
381/* Apple removed the declaration, but kept the implementation */ 378/* Apple removed the declaration, but kept the implementation */
382#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4 379#if defined (NS_IMPL_COCOA)
383@interface NSApplication (EmacsApp) 380@interface NSApplication (EmacsApp)
384- (void)setAppleMenu: (NSMenu *)menu; 381- (void)setAppleMenu: (NSMenu *)menu;
385@end 382@end
@@ -482,10 +479,9 @@ struct nsfont_info
482 float size; 479 float size;
483#ifdef __OBJC__ 480#ifdef __OBJC__
484 NSFont *nsfont; 481 NSFont *nsfont;
485 /* cgfont and synthItal are used only on OS X 10.3+ */ 482#if defined (NS_IMPL_COCOA)
486#if defined (NS_IMPL_COCOA) && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3)
487 CGFontRef cgfont; 483 CGFontRef cgfont;
488#else /* GNUstep or OS X < 10.3 */ 484#else /* GNUstep */
489 void *cgfont; 485 void *cgfont;
490#endif 486#endif
491#else /* ! OBJC */ 487#else /* ! OBJC */
diff --git a/src/nsterm.m b/src/nsterm.m
index 2df0e1a1ad5..6b739befeeb 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -183,7 +183,6 @@ static int ns_window_num = 0;
183static NSRect uRect; 183static NSRect uRect;
184#endif 184#endif
185static BOOL gsaved = NO; 185static BOOL gsaved = NO;
186BOOL ns_in_resize = NO;
187static BOOL ns_fake_keydown = NO; 186static BOOL ns_fake_keydown = NO;
188int ns_tmp_flags; /* FIXME */ 187int ns_tmp_flags; /* FIXME */
189struct nsfont_info *ns_tmp_font; /* FIXME */ 188struct nsfont_info *ns_tmp_font; /* FIXME */
@@ -493,17 +492,6 @@ ns_release_autorelease_pool (void *pool)
493 492
494 ========================================================================== */ 493 ========================================================================== */
495 494
496static NSRect
497ns_resize_handle_rect (NSWindow *window)
498{
499 NSRect r = [window frame];
500 r.origin.x = r.size.width - RESIZE_HANDLE_SIZE;
501 r.origin.y = 0;
502 r.size.width = r.size.height = RESIZE_HANDLE_SIZE;
503 return r;
504}
505
506
507// 495//
508// Window constraining 496// Window constraining
509// ------------------- 497// -------------------
@@ -581,9 +569,6 @@ ns_menu_bar_should_be_hidden (void)
581static void 569static void
582ns_update_auto_hide_menu_bar (void) 570ns_update_auto_hide_menu_bar (void)
583{ 571{
584#ifndef MAC_OS_X_VERSION_10_6
585#define MAC_OS_X_VERSION_10_6 1060
586#endif
587#ifdef NS_IMPL_COCOA 572#ifdef NS_IMPL_COCOA
588#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 573#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
589 block_input (); 574 block_input ();
@@ -1068,8 +1053,23 @@ x_make_frame_visible (struct frame *f)
1068 if this ends up the case again, comment this out again. */ 1053 if this ends up the case again, comment this out again. */
1069 if (!FRAME_VISIBLE_P (f)) 1054 if (!FRAME_VISIBLE_P (f))
1070 { 1055 {
1056 EmacsView *view = (EmacsView *)FRAME_NS_VIEW (f);
1071 f->async_visible = 1; 1057 f->async_visible = 1;
1072 ns_raise_frame (f); 1058 ns_raise_frame (f);
1059
1060#ifdef NEW_STYLE_FS
1061 /* Making a new frame from a fullscreen frame will make the new frame
1062 fullscreen also. So skip handleFS as this will print an error. */
1063 if (f->want_fullscreen == FULLSCREEN_BOTH
1064 && ([[view window] styleMask] & NSFullScreenWindowMask) != 0)
1065 return;
1066#endif
1067 if (f->want_fullscreen != FULLSCREEN_NONE)
1068 {
1069 block_input ();
1070 [view handleFS];
1071 unblock_input ();
1072 }
1073 } 1073 }
1074} 1074}
1075 1075
@@ -1317,6 +1317,18 @@ ns_fullscreen_hook (FRAME_PTR f)
1317 EmacsView *view = (EmacsView *)FRAME_NS_VIEW (f); 1317 EmacsView *view = (EmacsView *)FRAME_NS_VIEW (f);
1318 1318
1319 if (! f->async_visible) return; 1319 if (! f->async_visible) return;
1320#ifndef NEW_STYLE_FS
1321 if (f->want_fullscreen == FULLSCREEN_BOTH)
1322 {
1323 /* Old style fs don't initiate correctly if created from
1324 init/default-frame alist, so use a timer (not nice...).
1325 */
1326 [NSTimer scheduledTimerWithTimeInterval: 0.5 target: view
1327 selector: @selector (handleFS)
1328 userInfo: nil repeats: NO];
1329 return;
1330 }
1331#endif
1320 1332
1321 block_input (); 1333 block_input ();
1322 [view handleFS]; 1334 [view handleFS];
@@ -1956,8 +1968,6 @@ ns_clear_frame (struct frame *f)
1956 NSRect r; 1968 NSRect r;
1957 1969
1958 NSTRACE (ns_clear_frame); 1970 NSTRACE (ns_clear_frame);
1959 if (ns_in_resize)
1960 return;
1961 1971
1962 /* comes on initial frame because we have 1972 /* comes on initial frame because we have
1963 after-make-frame-functions = select-frame */ 1973 after-make-frame-functions = select-frame */
@@ -1977,10 +1987,6 @@ ns_clear_frame (struct frame *f)
1977 NSRectFill (r); 1987 NSRectFill (r);
1978 ns_unfocus (f); 1988 ns_unfocus (f);
1979 1989
1980#ifdef NS_IMPL_COCOA
1981 [[view window] display]; /* redraw resize handle */
1982#endif
1983
1984 /* as of 2006/11 or so this is now needed */ 1990 /* as of 2006/11 or so this is now needed */
1985 ns_redraw_scroll_bars (f); 1991 ns_redraw_scroll_bars (f);
1986 unblock_input (); 1992 unblock_input ();
@@ -2006,35 +2012,8 @@ ns_clear_frame_area (struct frame *f, int x, int y, int width, int height)
2006 ns_focus (f, &r, 1); 2012 ns_focus (f, &r, 1);
2007 [ns_lookup_indexed_color (NS_FACE_BACKGROUND (face), f) set]; 2013 [ns_lookup_indexed_color (NS_FACE_BACKGROUND (face), f) set];
2008 2014
2009#ifdef NS_IMPL_COCOA
2010 {
2011 /* clip out the resize handle */
2012 NSWindow *window = [FRAME_NS_VIEW (f) window];
2013 NSRect ir
2014 = [view convertRect: ns_resize_handle_rect (window) fromView: nil];
2015
2016 ir = NSIntersectionRect (r, ir);
2017 if (NSIsEmptyRect (ir))
2018 {
2019#endif
2020
2021 NSRectFill (r); 2015 NSRectFill (r);
2022 2016
2023#ifdef NS_IMPL_COCOA
2024 }
2025 else
2026 {
2027 NSRect r1 = r, r2 = r; /* upper and lower non-intersecting */
2028 r1.size.height -= ir.size.height;
2029 r2.origin.y += r1.size.height;
2030 r2.size.width -= ir.size.width;
2031 r2.size.height = ir.size.height;
2032 NSRectFill (r1);
2033 NSRectFill (r2);
2034 }
2035 }
2036#endif
2037
2038 ns_unfocus (f); 2017 ns_unfocus (f);
2039 return; 2018 return;
2040} 2019}
@@ -2996,8 +2975,10 @@ ns_dumpglyphs_image (struct glyph_string *s, NSRect r)
2996 { 2975 {
2997#if !defined (NS_IMPL_COCOA) || MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 2976#if !defined (NS_IMPL_COCOA) || MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
2998 NSRect dr = NSMakeRect (x, y, s->slice.width, s->slice.height); 2977 NSRect dr = NSMakeRect (x, y, s->slice.width, s->slice.height);
2978 NSRect ir = NSMakeRect (s->slice.x, s->slice.y,
2979 s->slice.width, s->slice.height);
2999 [img drawInRect: dr 2980 [img drawInRect: dr
3000 fromRect: NSZeroRect 2981 fromRect: ir
3001 operation: NSCompositeSourceOver 2982 operation: NSCompositeSourceOver
3002 fraction: 1.0 2983 fraction: 1.0
3003 respectFlipped: YES 2984 respectFlipped: YES
@@ -4210,6 +4191,11 @@ ns_term_init (Lisp_Object display_name)
4210 NSColorPboardType, 4191 NSColorPboardType,
4211 NSFontPboardType, nil] retain]; 4192 NSFontPboardType, nil] retain];
4212 4193
4194#ifndef NEW_STYLE_FS
4195 /* If fullscreen is in init/default-frame-alist, focus isn't set
4196 right for fullscreen windows, so set this. */
4197 [NSApp activateIgnoringOtherApps:YES];
4198#endif
4213 4199
4214 [NSApp run]; 4200 [NSApp run];
4215 ns_do_open_file = YES; 4201 ns_do_open_file = YES;
@@ -4282,34 +4268,6 @@ ns_term_shutdown (int sig)
4282 return; 4268 return;
4283 } 4269 }
4284 4270
4285#ifdef NS_IMPL_COCOA
4286 /* pass mouse down in resize handle and subsequent drags directly to
4287 EmacsWindow so we can generate continuous redisplays */
4288 if (ns_in_resize)
4289 {
4290 if (type == NSLeftMouseDragged)
4291 {
4292 [window mouseDragged: theEvent];
4293 return;
4294 }
4295 else if (type == NSLeftMouseUp)
4296 {
4297 [window mouseUp: theEvent];
4298 return;
4299 }
4300 }
4301 else if (type == NSLeftMouseDown)
4302 {
4303 NSRect r = ns_resize_handle_rect (window);
4304 if (NSPointInRect ([theEvent locationInWindow], r))
4305 {
4306 ns_in_resize = YES;
4307 [window mouseDown: theEvent];
4308 return;
4309 }
4310 }
4311#endif
4312
4313 if (type == NSApplicationDefined) 4271 if (type == NSApplicationDefined)
4314 { 4272 {
4315 /* Events posted by ns_send_appdefined interrupt the run loop here. 4273 /* Events posted by ns_send_appdefined interrupt the run loop here.
@@ -5505,10 +5463,17 @@ not_in_argv (NSString *arg)
5505 5463
5506- (void)windowDidResize: (NSNotification *)notification 5464- (void)windowDidResize: (NSNotification *)notification
5507{ 5465{
5466
5467#if !defined (NEW_STYLE_FS) && ! defined (NS_IMPL_GNUSTEP)
5468 NSWindow *theWindow = [notification object];
5469 /* We can get notification on the non-FS window when in fullscreen mode. */
5470 if ([self window] != theWindow) return;
5471#endif
5472
5508#ifdef NS_IMPL_GNUSTEP 5473#ifdef NS_IMPL_GNUSTEP
5509 NSWindow *theWindow = [notification object]; 5474 NSWindow *theWindow = [notification object];
5510 5475
5511 /* in GNUstep, at least currently, it's possible to get a didResize 5476 /* In GNUstep, at least currently, it's possible to get a didResize
5512 without getting a willResize.. therefore we need to act as if we got 5477 without getting a willResize.. therefore we need to act as if we got
5513 the willResize now */ 5478 the willResize now */
5514 NSSize sz = [theWindow frame].size; 5479 NSSize sz = [theWindow frame].size;
@@ -5526,20 +5491,10 @@ not_in_argv (NSString *arg)
5526 } 5491 }
5527#endif /* NS_IMPL_COCOA */ 5492#endif /* NS_IMPL_COCOA */
5528 5493
5529 /* Avoid loop under GNUstep due to call at beginning of this function.
5530 (x_set_window_size causes a resize which causes
5531 a "windowDidResize" which calls x_set_window_size). */
5532#ifndef NS_IMPL_GNUSTEP
5533 if (cols > 0 && rows > 0) 5494 if (cols > 0 && rows > 0)
5534 { 5495 {
5535 if (ns_in_resize) 5496 [self updateFrameSize: YES];
5536 x_set_window_size (emacsframe, 0, cols, rows);
5537 else
5538 {
5539 [self updateFrameSize: YES];
5540 }
5541 } 5497 }
5542#endif
5543 5498
5544 ns_send_appdefined (-1); 5499 ns_send_appdefined (-1);
5545} 5500}
@@ -5661,7 +5616,7 @@ not_in_argv (NSString *arg)
5661 5616
5662 wr = [win frame]; 5617 wr = [win frame];
5663 bwidth = f->border_width = wr.size.width - r.size.width; 5618 bwidth = f->border_width = wr.size.width - r.size.width;
5664 tbar_height = FRAME_NS_TITLEBAR_HEIGHT (f) = wr.size.height - r.size.height; 5619 tibar_height = FRAME_NS_TITLEBAR_HEIGHT (f) = wr.size.height - r.size.height;
5665 5620
5666 [win setAcceptsMouseMovedEvents: YES]; 5621 [win setAcceptsMouseMovedEvents: YES];
5667 [win setDelegate: self]; 5622 [win setDelegate: self];
@@ -5870,8 +5825,16 @@ not_in_argv (NSString *arg)
5870- (void)windowDidEnterFullScreen:(NSNotification *)notification 5825- (void)windowDidEnterFullScreen:(NSNotification *)notification
5871{ 5826{
5872 [self setFSValue: FULLSCREEN_BOTH]; 5827 [self setFSValue: FULLSCREEN_BOTH];
5873#ifndef NEW_STYLE_FS 5828#ifdef NEW_STYLE_FS
5829 // Fix bad background.
5830 if ([toolbar isVisible])
5831 {
5832 [toolbar setVisible:NO];
5833 [toolbar setVisible:YES];
5834 }
5835#else
5874 [self windowDidBecomeKey:notification]; 5836 [self windowDidBecomeKey:notification];
5837 [nonfs_window orderOut:self];
5875#endif 5838#endif
5876} 5839}
5877 5840
@@ -5891,11 +5854,6 @@ not_in_argv (NSString *arg)
5891 5854
5892- (void)toggleFullScreen: (id)sender 5855- (void)toggleFullScreen: (id)sender
5893{ 5856{
5894 /* Bugs remain:
5895 1) Having fullscreen in initial/default frame alist.
5896 2) Fullscreen in default frame alist only applied to first frame.
5897 */
5898
5899#ifdef NEW_STYLE_FS 5857#ifdef NEW_STYLE_FS
5900 [[self window] toggleFullScreen:sender]; 5858 [[self window] toggleFullScreen:sender];
5901#else 5859#else
@@ -5904,7 +5862,7 @@ not_in_argv (NSString *arg)
5904 isEqual:[[NSScreen screens] objectAtIndex:0]]; 5862 isEqual:[[NSScreen screens] objectAtIndex:0]];
5905 struct frame *f = emacsframe; 5863 struct frame *f = emacsframe;
5906 NSSize sz; 5864 NSSize sz;
5907 NSRect r; 5865 NSRect r, wr = [w frame];
5908 NSColor *col = ns_lookup_indexed_color (NS_FACE_BACKGROUND 5866 NSColor *col = ns_lookup_indexed_color (NS_FACE_BACKGROUND
5909 (FRAME_DEFAULT_FACE (f)), 5867 (FRAME_DEFAULT_FACE (f)),
5910 f); 5868 f);
@@ -5930,7 +5888,7 @@ not_in_argv (NSString *arg)
5930 } 5888 }
5931 5889
5932 fw = [[EmacsFSWindow alloc] 5890 fw = [[EmacsFSWindow alloc]
5933 initWithContentRect:[w contentRectForFrameRect:[w frame]] 5891 initWithContentRect:[w contentRectForFrameRect:wr]
5934 styleMask:NSBorderlessWindowMask 5892 styleMask:NSBorderlessWindowMask
5935 backing:NSBackingStoreBuffered 5893 backing:NSBackingStoreBuffered
5936 defer:YES 5894 defer:YES
@@ -5938,9 +5896,7 @@ not_in_argv (NSString *arg)
5938 5896
5939 [fw setContentView:[w contentView]]; 5897 [fw setContentView:[w contentView]];
5940 [fw setTitle:[w title]]; 5898 [fw setTitle:[w title]];
5941 [fw makeKeyAndOrderFront:NSApp];
5942 [fw setDelegate:self]; 5899 [fw setDelegate:self];
5943 [fw makeFirstResponder:self];
5944 [fw setAcceptsMouseMovedEvents: YES]; 5900 [fw setAcceptsMouseMovedEvents: YES];
5945 [fw useOptimizedDrawing: YES]; 5901 [fw useOptimizedDrawing: YES];
5946 [fw setResizeIncrements: sz]; 5902 [fw setResizeIncrements: sz];
@@ -5950,18 +5906,26 @@ not_in_argv (NSString *arg)
5950 5906
5951 f->border_width = 0; 5907 f->border_width = 0;
5952 FRAME_NS_TITLEBAR_HEIGHT (f) = 0; 5908 FRAME_NS_TITLEBAR_HEIGHT (f) = 0;
5909 tobar_height = FRAME_TOOLBAR_HEIGHT (f);
5910 FRAME_TOOLBAR_HEIGHT (f) = 0;
5911 FRAME_EXTERNAL_TOOL_BAR (f) = 0;
5953 5912
5954 nonfs_window = w; 5913 nonfs_window = w;
5914
5955 [self windowWillEnterFullScreen:nil]; 5915 [self windowWillEnterFullScreen:nil];
5916 [fw makeKeyAndOrderFront:NSApp];
5917 [fw makeFirstResponder:self];
5956 [w orderOut:self]; 5918 [w orderOut:self];
5957 r = [fw frameRectForContentRect:[[fw screen] frame]]; 5919 r = [fw frameRectForContentRect:[[fw screen] frame]];
5958 [fw setFrame: r display:YES animate:YES]; 5920 [fw setFrame: r display:YES animate:YES];
5959 [self windowDidEnterFullScreen:nil]; 5921 [self windowDidEnterFullScreen:nil];
5922 [fw display];
5960 } 5923 }
5961 else 5924 else
5962 { 5925 {
5963 fw = w; 5926 fw = w;
5964 w = nonfs_window; 5927 w = nonfs_window;
5928 nonfs_window = nil;
5965 5929
5966 if (onFirstScreen) 5930 if (onFirstScreen)
5967 { 5931 {
@@ -5980,7 +5944,10 @@ not_in_argv (NSString *arg)
5980 [w setOpaque: NO]; 5944 [w setOpaque: NO];
5981 5945
5982 f->border_width = bwidth; 5946 f->border_width = bwidth;
5983 FRAME_NS_TITLEBAR_HEIGHT (f) = tbar_height; 5947 FRAME_NS_TITLEBAR_HEIGHT (f) = tibar_height;
5948 FRAME_TOOLBAR_HEIGHT (f) = tobar_height;
5949 if (tobar_height)
5950 FRAME_EXTERNAL_TOOL_BAR (f) = 1;
5984 5951
5985 [self windowWillExitFullScreen:nil]; 5952 [self windowWillExitFullScreen:nil];
5986 [fw setFrame: [w frame] display:YES animate:YES]; 5953 [fw setFrame: [w frame] display:YES animate:YES];
@@ -6152,7 +6119,7 @@ not_in_argv (NSString *arg)
6152 6119
6153 NSTRACE (drawRect); 6120 NSTRACE (drawRect);
6154 6121
6155 if (!emacsframe || !emacsframe->output_data.ns || ns_in_resize) 6122 if (!emacsframe || !emacsframe->output_data.ns)
6156 return; 6123 return;
6157 6124
6158 ns_clear_frame_area (emacsframe, x, y, width, height); 6125 ns_clear_frame_area (emacsframe, x, y, width, height);
@@ -6489,60 +6456,6 @@ not_in_argv (NSString *arg)
6489 return [super constrainFrameRect:frameRect toScreen:screen]; 6456 return [super constrainFrameRect:frameRect toScreen:screen];
6490} 6457}
6491 6458
6492
6493/* called only on resize clicks by special case in EmacsApp-sendEvent */
6494- (void)mouseDown: (NSEvent *)theEvent
6495{
6496 if (ns_in_resize)
6497 {
6498 NSSize size = [[theEvent window] frame].size;
6499 grabOffset = [theEvent locationInWindow];
6500 grabOffset.x = size.width - grabOffset.x;
6501 }
6502 else
6503 [super mouseDown: theEvent];
6504}
6505
6506
6507/* stop resizing */
6508- (void)mouseUp: (NSEvent *)theEvent
6509{
6510 if (ns_in_resize)
6511 {
6512 struct frame *f = ((EmacsView *)[self delegate])->emacsframe;
6513 ns_in_resize = NO;
6514 ns_set_name_as_filename (f);
6515 [self display];
6516 ns_send_appdefined (-1);
6517 }
6518 else
6519 [super mouseUp: theEvent];
6520}
6521
6522
6523/* send resize events */
6524- (void)mouseDragged: (NSEvent *)theEvent
6525{
6526 if (ns_in_resize)
6527 {
6528 NSPoint p = [theEvent locationInWindow];
6529 NSSize size, vettedSize, origSize = [self frame].size;
6530
6531 size.width = p.x + grabOffset.x;
6532 size.height = origSize.height - p.y + grabOffset.y;
6533
6534 if (size.width == origSize.width && size.height == origSize.height)
6535 return;
6536
6537 vettedSize = [[self delegate] windowWillResize: self toSize: size];
6538 [[NSNotificationCenter defaultCenter]
6539 postNotificationName: NSWindowDidResizeNotification
6540 object: self];
6541 }
6542 else
6543 [super mouseDragged: theEvent];
6544}
6545
6546@end /* EmacsWindow */ 6459@end /* EmacsWindow */
6547 6460
6548 6461
@@ -6553,6 +6466,11 @@ not_in_argv (NSString *arg)
6553 return YES; 6466 return YES;
6554} 6467}
6555 6468
6469- (BOOL)canBecomeMainWindow
6470{
6471 return YES;
6472}
6473
6556@end 6474@end
6557 6475
6558/* ========================================================================== 6476/* ==========================================================================
@@ -7168,7 +7086,7 @@ allowing it to be used at a lower level for accented character entry.");
7168 ns_function_modifier = Qnone; 7086 ns_function_modifier = Qnone;
7169 7087
7170 DEFVAR_LISP ("ns-antialias-text", ns_antialias_text, 7088 DEFVAR_LISP ("ns-antialias-text", ns_antialias_text,
7171 "Non-nil (the default) means to render text antialiased. Only has an effect on OS X Panther and above."); 7089 "Non-nil (the default) means to render text antialiased.");
7172 ns_antialias_text = Qt; 7090 ns_antialias_text = Qt;
7173 7091
7174 DEFVAR_LISP ("ns-confirm-quit", ns_confirm_quit, 7092 DEFVAR_LISP ("ns-confirm-quit", ns_confirm_quit,
diff --git a/src/sysdep.c b/src/sysdep.c
index 74617fcaf0f..35beeaa7202 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -1545,8 +1545,18 @@ deliver_thread_signal (int sig, signal_handler_t handler)
1545 1545
1546#if !HAVE_DECL_SYS_SIGLIST 1546#if !HAVE_DECL_SYS_SIGLIST
1547# undef sys_siglist 1547# undef sys_siglist
1548# define sys_siglist my_sys_siglist 1548# ifdef _sys_siglist
1549# define sys_siglist _sys_siglist
1550# else
1551# define sys_siglist my_sys_siglist
1549static char const *sys_siglist[NSIG]; 1552static char const *sys_siglist[NSIG];
1553# endif
1554#endif
1555
1556#ifdef _sys_nsig
1557# define sys_siglist_entries _sys_nsig
1558#else
1559# define sys_siglist_entries NSIG
1550#endif 1560#endif
1551 1561
1552/* Handle bus errors, invalid instruction, etc. */ 1562/* Handle bus errors, invalid instruction, etc. */
@@ -1609,7 +1619,7 @@ init_signals (bool dumping)
1609 main_thread = pthread_self (); 1619 main_thread = pthread_self ();
1610#endif 1620#endif
1611 1621
1612#if !HAVE_DECL_SYS_SIGLIST 1622#if !HAVE_DECL_SYS_SIGLIST && !defined _sys_siglist
1613 if (! initialized) 1623 if (! initialized)
1614 { 1624 {
1615 sys_siglist[SIGABRT] = "Aborted"; 1625 sys_siglist[SIGABRT] = "Aborted";
@@ -1757,7 +1767,7 @@ init_signals (bool dumping)
1757 sys_siglist[SIGXFSZ] = "File size limit exceeded"; 1767 sys_siglist[SIGXFSZ] = "File size limit exceeded";
1758# endif 1768# endif
1759 } 1769 }
1760#endif /* !HAVE_DECL_SYS_SIGLIST */ 1770#endif /* !HAVE_DECL_SYS_SIGLIST && !_sys_siglist */
1761 1771
1762 /* Don't alter signal handlers if dumping. On some machines, 1772 /* Don't alter signal handlers if dumping. On some machines,
1763 changing signal handlers sets static data that would make signals 1773 changing signal handlers sets static data that would make signals
@@ -2285,7 +2295,7 @@ safe_strsignal (int code)
2285{ 2295{
2286 char const *signame = 0; 2296 char const *signame = 0;
2287 2297
2288 if (0 <= code && code < NSIG) 2298 if (0 <= code && code < sys_siglist_entries)
2289 signame = sys_siglist[code]; 2299 signame = sys_siglist[code];
2290 if (! signame) 2300 if (! signame)
2291 signame = "Unknown signal"; 2301 signame = "Unknown signal";
diff --git a/src/syssignal.h b/src/syssignal.h
index 83ab19698dd..2bf2f046aa5 100644
--- a/src/syssignal.h
+++ b/src/syssignal.h
@@ -43,7 +43,7 @@ extern sigset_t empty_mask;
43typedef void (*signal_handler_t) (int); 43typedef void (*signal_handler_t) (int);
44 44
45extern void emacs_sigaction_init (struct sigaction *, signal_handler_t); 45extern void emacs_sigaction_init (struct sigaction *, signal_handler_t);
46char const *safe_strsignal (int); 46char const *safe_strsignal (int) ATTRIBUTE_CONST;
47 47
48#if NSIG < NSIG_MINIMUM 48#if NSIG < NSIG_MINIMUM
49# undef NSIG 49# undef NSIG