diff options
44 files changed, 1273 insertions, 746 deletions
| @@ -1,3 +1,20 @@ | |||
| 1 | 2013-04-29 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | Merge from gnulib, incorporating: | ||
| 4 | 2013-04-28 extern-inline: work around bug in Sun c99 | ||
| 5 | |||
| 6 | 2013-04-27 Paul Eggert <eggert@cs.ucla.edu> | ||
| 7 | |||
| 8 | Merge from gnulib, incorporating: | ||
| 9 | 2013-04-27 alignof, intprops, malloca: port better to IBM's C compiler | ||
| 10 | |||
| 11 | 2013-04-26 Paul Eggert <eggert@cs.ucla.edu> | ||
| 12 | |||
| 13 | Port better to AIX (Bug#14258). | ||
| 14 | * configure.ac (CFLAGS): Append -O if the user did not specify CFLAGS, | ||
| 15 | we did not already infer an optimization option, and -O works. | ||
| 16 | AIX xlc needs -O, otherwise garbage collection doesn't work. | ||
| 17 | |||
| 1 | 2013-04-22 Paul Eggert <eggert@cs.ucla.edu> | 18 | 2013-04-22 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 19 | ||
| 3 | * make-dist: Do not distribute admin/unidata/Makefile. | 20 | * make-dist: Do not distribute admin/unidata/Makefile. |
diff --git a/autogen/config.in b/autogen/config.in index 25f060b9bb9..f1b3abd94dd 100644 --- a/autogen/config.in +++ b/autogen/config.in | |||
| @@ -1579,13 +1579,21 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 1579 | Suppress extern inline with HP-UX cc, as it appears to be broken; see | 1579 | Suppress extern inline with HP-UX cc, as it appears to be broken; see |
| 1580 | <http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>. | 1580 | <http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>. |
| 1581 | 1581 | ||
| 1582 | Suppress the use of extern inline on Apple's platforms, | 1582 | Suppress extern inline with Sun C in standards-conformance mode, as it |
| 1583 | as Libc-825.25 (2012-09-19) is incompatible with it; see | 1583 | mishandles inline functions that call each other. E.g., for 'inline void f |
| 1584 | (void) { } inline void g (void) { f (); }', c99 incorrectly complains | ||
| 1585 | 'reference to static identifier "f" in extern inline function'. | ||
| 1586 | This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16. | ||
| 1587 | |||
| 1588 | Suppress the use of extern inline on Apple's platforms, as Libc at least | ||
| 1589 | through Libc-825.26 (2013-04-09) is incompatible with it; see, e.g., | ||
| 1584 | <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>. | 1590 | <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>. |
| 1585 | Perhaps Apple will fix this some day. */ | 1591 | Perhaps Apple will fix this some day. */ |
| 1586 | #if ((__GNUC__ \ | 1592 | #if ((__GNUC__ \ |
| 1587 | ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ | 1593 | ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ |
| 1588 | : 199901L <= __STDC_VERSION__ && !defined __HP_cc) \ | 1594 | : (199901L <= __STDC_VERSION__ \ |
| 1595 | && !defined __HP_cc \ | ||
| 1596 | && !(defined __SUNPRO_C && __STDC__))) \ | ||
| 1589 | && !defined __APPLE__) | 1597 | && !defined __APPLE__) |
| 1590 | # define _GL_INLINE inline | 1598 | # define _GL_INLINE inline |
| 1591 | # define _GL_EXTERN_INLINE extern inline | 1599 | # define _GL_EXTERN_INLINE extern inline |
diff --git a/autogen/configure b/autogen/configure index 7ddac01fb10..bd900b5afef 100755 --- a/autogen/configure +++ b/autogen/configure | |||
| @@ -7271,10 +7271,10 @@ esac | |||
| 7271 | # Code from module xalloc-oversized: | 7271 | # Code from module xalloc-oversized: |
| 7272 | 7272 | ||
| 7273 | 7273 | ||
| 7274 | # It's helpful to have C macros available to GDB, so prefer -g3 to -g | ||
| 7275 | # if -g3 works and the user does not specify CFLAGS. | ||
| 7276 | # This test must follow gl_EARLY; otherwise AC_LINK_IFELSE complains. | ||
| 7277 | if test "$ac_test_CFLAGS" != set; then | 7274 | if test "$ac_test_CFLAGS" != set; then |
| 7275 | # It's helpful to have C macros available to GDB, so prefer -g3 to -g | ||
| 7276 | # if -g3 works and the user does not specify CFLAGS. | ||
| 7277 | # This test must follow gl_EARLY; otherwise AC_LINK_IFELSE complains. | ||
| 7278 | case $CFLAGS in | 7278 | case $CFLAGS in |
| 7279 | '-g') | 7279 | '-g') |
| 7280 | emacs_g3_CFLAGS='-g3';; | 7280 | emacs_g3_CFLAGS='-g3';; |
| @@ -7312,12 +7312,49 @@ rm -f core conftest.err conftest.$ac_objext \ | |||
| 7312 | fi | 7312 | fi |
| 7313 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $emacs_cv_prog_cc_g3" >&5 | 7313 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $emacs_cv_prog_cc_g3" >&5 |
| 7314 | $as_echo "$emacs_cv_prog_cc_g3" >&6; } | 7314 | $as_echo "$emacs_cv_prog_cc_g3" >&6; } |
| 7315 | if test $emacs_cv_prog_cc_g3 = yes; then | 7315 | if test $emacs_cv_prog_cc_g3 != yes; then |
| 7316 | CFLAGS=$emacs_g3_CFLAGS | ||
| 7317 | else | ||
| 7318 | CFLAGS=$emacs_save_CFLAGS | 7316 | CFLAGS=$emacs_save_CFLAGS |
| 7319 | fi | 7317 | fi |
| 7320 | fi | 7318 | fi |
| 7319 | |||
| 7320 | case $CFLAGS in | ||
| 7321 | *-O*) ;; | ||
| 7322 | *) | ||
| 7323 | # No optimization flag was inferred for this non-GCC compiler. | ||
| 7324 | # Try -O. This is needed for xlc on AIX; see Bug#14258. | ||
| 7325 | emacs_save_CFLAGS=$CFLAGS | ||
| 7326 | test -z "$CFLAGS" || CFLAGS="$CFLAGS " | ||
| 7327 | CFLAGS=${CFLAGS}-O | ||
| 7328 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -O" >&5 | ||
| 7329 | $as_echo_n "checking whether $CC accepts -O... " >&6; } | ||
| 7330 | if test "${emacs_cv_prog_cc_o+set}" = set; then : | ||
| 7331 | $as_echo_n "(cached) " >&6 | ||
| 7332 | else | ||
| 7333 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
| 7334 | /* end confdefs.h. */ | ||
| 7335 | |||
| 7336 | int | ||
| 7337 | main () | ||
| 7338 | { | ||
| 7339 | |||
| 7340 | ; | ||
| 7341 | return 0; | ||
| 7342 | } | ||
| 7343 | _ACEOF | ||
| 7344 | if ac_fn_c_try_link "$LINENO"; then : | ||
| 7345 | emacs_cv_prog_cc_o=yes | ||
| 7346 | else | ||
| 7347 | emacs_cv_prog_cc_o=no | ||
| 7348 | fi | ||
| 7349 | rm -f core conftest.err conftest.$ac_objext \ | ||
| 7350 | conftest$ac_exeext conftest.$ac_ext | ||
| 7351 | fi | ||
| 7352 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $emacs_cv_prog_cc_o" >&5 | ||
| 7353 | $as_echo "$emacs_cv_prog_cc_o" >&6; } | ||
| 7354 | if test $emacs_cv_prog_cc_o != yes; then | ||
| 7355 | CFLAGS=$emacs_save_CFLAGS | ||
| 7356 | fi ;; | ||
| 7357 | esac | ||
| 7321 | fi | 7358 | fi |
| 7322 | 7359 | ||
| 7323 | # Check whether --enable-gcc-warnings was given. | 7360 | # Check whether --enable-gcc-warnings was given. |
diff --git a/configure.ac b/configure.ac index 4130662e8e7..ce99f086a42 100644 --- a/configure.ac +++ b/configure.ac | |||
| @@ -623,10 +623,10 @@ AC_DEFUN([gl_THREADLIB]) | |||
| 623 | dnl Amongst other things, this sets AR and ARFLAGS. | 623 | dnl Amongst other things, this sets AR and ARFLAGS. |
| 624 | gl_EARLY | 624 | gl_EARLY |
| 625 | 625 | ||
| 626 | # It's helpful to have C macros available to GDB, so prefer -g3 to -g | ||
| 627 | # if -g3 works and the user does not specify CFLAGS. | ||
| 628 | # This test must follow gl_EARLY; otherwise AC_LINK_IFELSE complains. | ||
| 629 | if test "$ac_test_CFLAGS" != set; then | 626 | if test "$ac_test_CFLAGS" != set; then |
| 627 | # It's helpful to have C macros available to GDB, so prefer -g3 to -g | ||
| 628 | # if -g3 works and the user does not specify CFLAGS. | ||
| 629 | # This test must follow gl_EARLY; otherwise AC_LINK_IFELSE complains. | ||
| 630 | case $CFLAGS in | 630 | case $CFLAGS in |
| 631 | '-g') | 631 | '-g') |
| 632 | emacs_g3_CFLAGS='-g3';; | 632 | emacs_g3_CFLAGS='-g3';; |
| @@ -642,16 +642,32 @@ if test "$ac_test_CFLAGS" != set; then | |||
| 642 | [emacs_cv_prog_cc_g3], | 642 | [emacs_cv_prog_cc_g3], |
| 643 | [AC_LINK_IFELSE([AC_LANG_PROGRAM()], | 643 | [AC_LINK_IFELSE([AC_LANG_PROGRAM()], |
| 644 | [emacs_cv_prog_cc_g3=yes], | 644 | [emacs_cv_prog_cc_g3=yes], |
| 645 | [emacs_cv_prog_cc_g3=no])]) | 645 | [emacs_cv_prog_cc_g3=no])]) |
| 646 | if test $emacs_cv_prog_cc_g3 = yes; then | 646 | if test $emacs_cv_prog_cc_g3 != yes; then |
| 647 | CFLAGS=$emacs_g3_CFLAGS | ||
| 648 | else | ||
| 649 | CFLAGS=$emacs_save_CFLAGS | 647 | CFLAGS=$emacs_save_CFLAGS |
| 650 | fi | 648 | fi |
| 651 | if test $opsys = mingw32; then | 649 | if test $opsys = mingw32; then |
| 652 | CFLAGS="$CFLAGS -gdwarf-2" | 650 | CFLAGS="$CFLAGS -gdwarf-2" |
| 653 | fi | 651 | fi |
| 654 | fi | 652 | fi |
| 653 | |||
| 654 | case $CFLAGS in | ||
| 655 | *-O*) ;; | ||
| 656 | *) | ||
| 657 | # No optimization flag was inferred for this non-GCC compiler. | ||
| 658 | # Try -O. This is needed for xlc on AIX; see Bug#14258. | ||
| 659 | emacs_save_CFLAGS=$CFLAGS | ||
| 660 | test -z "$CFLAGS" || CFLAGS="$CFLAGS " | ||
| 661 | CFLAGS=${CFLAGS}-O | ||
| 662 | AC_CACHE_CHECK([whether $CC accepts -O], | ||
| 663 | [emacs_cv_prog_cc_o], | ||
| 664 | [AC_LINK_IFELSE([AC_LANG_PROGRAM()], | ||
| 665 | [emacs_cv_prog_cc_o=yes], | ||
| 666 | [emacs_cv_prog_cc_o=no])]) | ||
| 667 | if test $emacs_cv_prog_cc_o != yes; then | ||
| 668 | CFLAGS=$emacs_save_CFLAGS | ||
| 669 | fi ;; | ||
| 670 | esac | ||
| 655 | fi | 671 | fi |
| 656 | 672 | ||
| 657 | AC_ARG_ENABLE([gcc-warnings], | 673 | AC_ARG_ENABLE([gcc-warnings], |
| @@ -101,6 +101,12 @@ You can pick the name of the function and the variables with `C-x 4 a'. | |||
| 101 | 101 | ||
| 102 | * Changes in Specialized Modes and Packages in Emacs 24.4 | 102 | * Changes in Specialized Modes and Packages in Emacs 24.4 |
| 103 | 103 | ||
| 104 | ** `remember' can now store notes in separates files | ||
| 105 | You can use the new function `remember-store-in-files' within the | ||
| 106 | `remember-handler-functions' option. | ||
| 107 | |||
| 108 | See `remember-data-directory' and `remember-directory-file-name-format' | ||
| 109 | for new options related to this function. | ||
| 104 | ** `ido-decorations' has been slightly extended to give a bit more control. | 110 | ** `ido-decorations' has been slightly extended to give a bit more control. |
| 105 | 111 | ||
| 106 | ** More packages look for ~/.emacs.d/<foo> additionally to ~/.<foo>. | 112 | ** More packages look for ~/.emacs.d/<foo> additionally to ~/.<foo>. |
| @@ -163,6 +169,11 @@ on the given date. | |||
| 163 | 169 | ||
| 164 | *** Support for ISO 8601 dates. | 170 | *** Support for ISO 8601 dates. |
| 165 | 171 | ||
| 172 | ** Desktop | ||
| 173 | |||
| 174 | *** `desktop-auto-save-timeout' defines the number of seconds between | ||
| 175 | auto-saves of the desktop. | ||
| 176 | |||
| 166 | ** Dired | 177 | ** Dired |
| 167 | 178 | ||
| 168 | *** New minor mode `dired-hide-details-mode' hides details. | 179 | *** New minor mode `dired-hide-details-mode' hides details. |
diff --git a/lib/intprops.h b/lib/intprops.h index b473052d114..f57f9b4ddab 100644 --- a/lib/intprops.h +++ b/lib/intprops.h | |||
| @@ -89,7 +89,7 @@ | |||
| 89 | 89 | ||
| 90 | /* Return 1 if the __typeof__ keyword works. This could be done by | 90 | /* Return 1 if the __typeof__ keyword works. This could be done by |
| 91 | 'configure', but for now it's easier to do it by hand. */ | 91 | 'configure', but for now it's easier to do it by hand. */ |
| 92 | #if 2 <= __GNUC__ || 0x5110 <= __SUNPRO_C | 92 | #if 2 <= __GNUC__ || defined __IBM__TYPEOF__ || 0x5110 <= __SUNPRO_C |
| 93 | # define _GL_HAVE___TYPEOF__ 1 | 93 | # define _GL_HAVE___TYPEOF__ 1 |
| 94 | #else | 94 | #else |
| 95 | # define _GL_HAVE___TYPEOF__ 0 | 95 | # define _GL_HAVE___TYPEOF__ 0 |
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 62424265d96..be8329a856c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,7 +1,205 @@ | |||
| 1 | 2013-05-01 Leo Liu <sdl.web@gmail.com> | ||
| 2 | |||
| 3 | * progmodes/octave.el: Compatible with older emacs-24 releases. | ||
| 4 | (inferior-octave-has-built-in-variables): Remove. Buil-in | ||
| 5 | variables were removed from Octave in 2007. | ||
| 6 | (inferior-octave-startup): Fix uses. | ||
| 7 | (comint-line-beginning-position): Remove compatibility code for | ||
| 8 | emacs 21. | ||
| 9 | |||
| 10 | 2013-05-01 Juri Linkov <juri@jurta.org> | ||
| 11 | |||
| 12 | * isearch.el (isearch-forward, isearch-mode): Doc fix. (Bug#13923) | ||
| 13 | |||
| 14 | 2013-05-01 Juri Linkov <juri@jurta.org> | ||
| 15 | |||
| 16 | * comint.el (comint-previous-matching-input): Don't print message | ||
| 17 | "History item: %d" when `isearch-mode' is active. | ||
| 18 | (comint-history-isearch-message): Print message "History item: %d" | ||
| 19 | when `comint-input-ring-index' is not empty and this function is | ||
| 20 | called from `isearch-update' with a nil `ellipsis'. (Bug#13223) | ||
| 21 | |||
| 22 | 2013-05-01 Leo Liu <sdl.web@gmail.com> | ||
| 23 | |||
| 24 | * progmodes/octave.el (octave-abbrev-table): Remove abbrev | ||
| 25 | definitions. Use completion-at-point to insert keywords. | ||
| 26 | (octave-abbrev-start): Remove. | ||
| 27 | (inferior-octave-mode, octave-mode): Use :abbrev-table instead. | ||
| 28 | |||
| 29 | 2013-04-30 Leo Liu <sdl.web@gmail.com> | ||
| 30 | |||
| 31 | * progmodes/octave.el (inferior-octave-prompt-read-only): Fix last | ||
| 32 | change. | ||
| 33 | |||
| 34 | 2013-04-30 Alan Mackenzie <acm@muc.de> | ||
| 35 | |||
| 36 | Handle arbitrarily long C++ member initialisation lists. | ||
| 37 | * progmodes/cc-engine.el (c-back-over-member-initializers): new | ||
| 38 | function. | ||
| 39 | (c-guess-basic-syntax): New CASE 5R (extracted from 5B) to handle | ||
| 40 | (most) member init lists. | ||
| 41 | |||
| 42 | 2013-04-30 Rüdiger Sonderfeld <ruediger@c-plusplus.de> | ||
| 43 | |||
| 44 | * progmodes/octave.el (inferior-octave-prompt-read-only): New user | ||
| 45 | variable. | ||
| 46 | |||
| 47 | 2013-04-30 Leo Liu <sdl.web@gmail.com> | ||
| 48 | |||
| 49 | * progmodes/octave.el (octave-variables): Remove. No builtin | ||
| 50 | variables any more. All converted to functions. | ||
| 51 | (octave-font-lock-keywords, octave-completion-at-point-function): | ||
| 52 | Fix uses. | ||
| 53 | (octave-font-lock-texinfo-comment): New user variable. | ||
| 54 | (octave-texinfo-font-lock-keywords): New variable for texinfo | ||
| 55 | comment block. | ||
| 56 | (octave-function-comment-block): New face. | ||
| 57 | (octave-font-lock-texinfo-comment): New function. | ||
| 58 | (octave-mode): Font lock texinfo comment block. | ||
| 59 | |||
| 60 | 2013-04-29 Leo Liu <sdl.web@gmail.com> | ||
| 61 | |||
| 62 | * progmodes/octave.el (octave-font-lock-keywords): Handle 'end' in | ||
| 63 | indexing expression. | ||
| 64 | (octave-continuation-string): Do not use \. | ||
| 65 | (inferior-octave-complete-impossible): Remove. | ||
| 66 | (inferior-octave-completion-table) | ||
| 67 | (inferior-octave-completion-at-point): Remove its uses. | ||
| 68 | (inferior-octave-startup): completion_matches was introduced to | ||
| 69 | Octave in 1996 so safe to assume it. | ||
| 70 | (octave-function-file-comment): Improve to follow how Octave does it. | ||
| 71 | (octave-update-function-file-comment): Tweak. | ||
| 72 | |||
| 73 | 2013-04-29 Leo Liu <sdl.web@gmail.com> | ||
| 74 | |||
| 75 | * progmodes/octave.el (inferior-octave-startup-hook): Obsolete. | ||
| 76 | (inferior-octave-startup): Remove inferior-octave-startup-hook. | ||
| 77 | (octave-function-file-comment): Fix typo. | ||
| 78 | (octave-sync-function-file-names): Use read-char-choice. | ||
| 79 | |||
| 80 | 2013-04-28 Jay Belanger <jay.p.belanger@gmail.com> | ||
| 81 | |||
| 82 | * calc/calc.el (math-normalize): Don't set `math-normalize-error' | ||
| 83 | to t for the less important warnings. | ||
| 84 | |||
| 85 | 2013-04-27 Darren Hoo <darren.hoo@gmail.com> (tiny change) | ||
| 86 | |||
| 87 | * isearch.el (isearch-fail-pos): Check for empty `cmds'. (Bug#14268) | ||
| 88 | |||
| 89 | 2013-04-27 Glenn Morris <rgm@gnu.org> | ||
| 90 | |||
| 91 | * vc/log-view.el (log-view-current-entry): | ||
| 92 | Treat "---" separator lines as part of the following rev. (Bug#14169) | ||
| 93 | |||
| 94 | 2013-04-27 Juri Linkov <juri@jurta.org> | ||
| 95 | |||
| 96 | * subr.el (read-number): Doc fix about using it by interactive | ||
| 97 | code letter `n'. (Bug#14254) | ||
| 98 | |||
| 99 | 2013-04-27 Juri Linkov <juri@jurta.org> | ||
| 100 | |||
| 101 | * desktop.el (desktop-auto-save-timeout): New option. | ||
| 102 | (desktop-file-checksum): New variable. | ||
| 103 | (desktop-save): Add optional arg `auto-save' and don't auto-save | ||
| 104 | if nothing changed. | ||
| 105 | (desktop-auto-save-timer): New variable. | ||
| 106 | (desktop-auto-save, desktop-auto-save-set-timer): New functions. | ||
| 107 | (after-init-hook): Call `desktop-auto-save-set-timer'. | ||
| 108 | Suggested by Reuben Thomas <rrt@sc3d.org> in | ||
| 109 | <http://lists.gnu.org/archive/html/emacs-devel/2013-04/msg00327.html>. | ||
| 110 | |||
| 111 | 2013-04-27 Leo Liu <sdl.web@gmail.com> | ||
| 112 | |||
| 113 | * progmodes/octave.el (octave-function-file-p) | ||
| 114 | (octave-skip-comment-forward, octave-function-file-comment) | ||
| 115 | (octave-update-function-file-comment): New functions. | ||
| 116 | (octave-mode-map): Bind C-c ; to | ||
| 117 | octave-update-function-file-comment. | ||
| 118 | (octave-mode-menu): Add octave-update-function-file-comment. | ||
| 119 | (octave-mode, inferior-octave-mode): Fix doc-string. | ||
| 120 | (octave-insert-defun): Conform to Octave's coding convention. | ||
| 121 | (Bug#14285) | ||
| 122 | |||
| 123 | * files.el (basic-save-buffer): Don't let errors in | ||
| 124 | before-save-hook prevent saving buffer. | ||
| 125 | |||
| 126 | 2013-04-20 Roland Winkler <winkler@gnu.org> | ||
| 127 | |||
| 128 | * faces.el (read-face-name): Use completing-read if arg multiple | ||
| 129 | is nil. | ||
| 130 | |||
| 131 | 2013-04-27 Ingo Lohmar <i.lohmar@gmail.com> (tiny change) | ||
| 132 | |||
| 133 | * ls-lisp.el (ls-lisp-insert-directory): If no files are | ||
| 134 | displayed, move point to after the totals line. See | ||
| 135 | http://lists.gnu.org/archive/html/emacs-devel/2013-04/msg00677.html | ||
| 136 | for the details. | ||
| 137 | |||
| 138 | 2013-04-27 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 139 | |||
| 140 | * emacs-lisp/package.el (package-autoload-ensure-default-file): | ||
| 141 | Add current dir to the load-path. | ||
| 142 | (package-generate-autoloads): Don't rely on | ||
| 143 | autoload-ensure-default-file. | ||
| 144 | |||
| 145 | 2013-04-26 Reuben Thomas <rrt@sc3d.org> | ||
| 146 | |||
| 147 | * textmodes/remember.el (remember-store-in-files): Document that | ||
| 148 | the file name format is passed to `format-time-string'. | ||
| 149 | |||
| 150 | 2013-04-26 Leo Liu <sdl.web@gmail.com> | ||
| 151 | |||
| 152 | * progmodes/octave.el (octave-sync-function-file-names): New function. | ||
| 153 | (octave-mode): Use it in before-save-hook. | ||
| 154 | |||
| 155 | 2013-04-26 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 156 | |||
| 157 | * emacs-lisp/tabulated-list.el (tabulated-list-mode): Disable undo | ||
| 158 | (bug#14274). | ||
| 159 | |||
| 160 | * progmodes/octave.el (octave-smie-forward-token): Properly skip | ||
| 161 | \n and comment, even if it's not an implicit ; (bug#14218). | ||
| 162 | |||
| 163 | 2013-04-26 Glenn Morris <rgm@gnu.org> | ||
| 164 | |||
| 165 | * subr.el (read-number): Once more use `read' rather than | ||
| 166 | `string-to-number', to trap non-numeric input. (Bug#14254) | ||
| 167 | |||
| 168 | 2013-04-26 Erik Charlebois <erikcharlebois@gmail.com> | ||
| 169 | |||
| 170 | * emacs-lisp/syntax.el (syntax-propertize-multiline): | ||
| 171 | Use `syntax-multiline' text property consistently instead of | ||
| 172 | `font-lock-multiline'. (bug#14237). | ||
| 173 | |||
| 174 | 2013-04-26 Glenn Morris <rgm@gnu.org> | ||
| 175 | |||
| 176 | * emacs-lisp/shadow.el (list-load-path-shadows): | ||
| 177 | No longer necessary to check for duplicate simple.el, since | ||
| 178 | 2012-07-07 change to init_lread to not include installation lisp | ||
| 179 | directories in load-path when running uninstalled. (Bug#14270) | ||
| 180 | |||
| 181 | 2013-04-26 Leo Liu <sdl.web@gmail.com> | ||
| 182 | |||
| 183 | * progmodes/octave.el (octave-submit-bug-report): Obsolete. | ||
| 184 | (octave-mode, inferior-octave-mode): Use setq-local. | ||
| 185 | (octave-not-in-string-or-comment-p): Rename to | ||
| 186 | octave-in-string-or-comment-p. | ||
| 187 | (octave-in-comment-p, octave-in-string-p) | ||
| 188 | (octave-in-string-or-comment-p): Replace defsubst with defun. | ||
| 189 | |||
| 190 | 2013-04-25 Paul Eggert <eggert@cs.ucla.edu> | ||
| 191 | |||
| 192 | * Makefile.in (distclean): Remove $(lisp)/loaddefs.el~. | ||
| 193 | |||
| 194 | 2013-04-25 Bastien Guerry <bzg@gnu.org> | ||
| 195 | |||
| 196 | * textmodes/remember.el (remember-data-directory) | ||
| 197 | (remember-directory-file-name-format): Fix custom types. | ||
| 198 | |||
| 1 | 2013-04-25 Leo Liu <sdl.web@gmail.com> | 199 | 2013-04-25 Leo Liu <sdl.web@gmail.com> |
| 2 | 200 | ||
| 3 | * progmodes/octave.el (octave-completion-at-point-function): Make | 201 | * progmodes/octave.el (octave-completion-at-point-function): |
| 4 | use of inferior octave process. | 202 | Make use of inferior octave process. |
| 5 | (octave-initialize-completions): Remove. | 203 | (octave-initialize-completions): Remove. |
| 6 | (inferior-octave-completion-table): New function. | 204 | (inferior-octave-completion-table): New function. |
| 7 | (inferior-octave-completion-at-point): Use it. | 205 | (inferior-octave-completion-at-point): Use it. |
| @@ -72,7 +270,7 @@ | |||
| 72 | (opascal-parse-next-literal, opascal-debug-unparse-buffer): | 270 | (opascal-parse-next-literal, opascal-debug-unparse-buffer): |
| 73 | Adjust callers. | 271 | Adjust callers. |
| 74 | 272 | ||
| 75 | 2013-04-24 Reuben Thomas <rrt@sc3d.org> | 273 | 2013-04-24 Reuben Thomas <rrt@sc3d.org> |
| 76 | 274 | ||
| 77 | * textmodes/remember.el (remember-handler-functions): Add an | 275 | * textmodes/remember.el (remember-handler-functions): Add an |
| 78 | option for a new handler `remember-store-in-files'. | 276 | option for a new handler `remember-store-in-files'. |
diff --git a/lisp/Makefile.in b/lisp/Makefile.in index 9e56d835b6d..138ad5abfa6 100644 --- a/lisp/Makefile.in +++ b/lisp/Makefile.in | |||
| @@ -437,7 +437,7 @@ bootstrap-clean: | |||
| 437 | cd $(lisp); rm -f *.elc */*.elc */*/*.elc */*/*/*.elc $(AUTOGENEL) | 437 | cd $(lisp); rm -f *.elc */*.elc */*/*.elc */*/*/*.elc $(AUTOGENEL) |
| 438 | 438 | ||
| 439 | distclean: | 439 | distclean: |
| 440 | -rm -f ./Makefile | 440 | -rm -f ./Makefile $(lisp)/loaddefs.el~ |
| 441 | 441 | ||
| 442 | maintainer-clean: distclean bootstrap-clean | 442 | maintainer-clean: distclean bootstrap-clean |
| 443 | 443 | ||
diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el index c35e7650254..bd5c9089bcc 100644 --- a/lisp/calc/calc.el +++ b/lisp/calc/calc.el | |||
| @@ -2701,7 +2701,6 @@ largest Emacs integer.") | |||
| 2701 | (cons (car math-normalize-a) args)) | 2701 | (cons (car math-normalize-a) args)) |
| 2702 | nil) | 2702 | nil) |
| 2703 | (wrong-type-argument | 2703 | (wrong-type-argument |
| 2704 | (setq math-normalize-error t) | ||
| 2705 | (or calc-next-why | 2704 | (or calc-next-why |
| 2706 | (calc-record-why "Wrong type of argument" | 2705 | (calc-record-why "Wrong type of argument" |
| 2707 | (cons (car math-normalize-a) args))) | 2706 | (cons (car math-normalize-a) args))) |
| @@ -2712,7 +2711,6 @@ largest Emacs integer.") | |||
| 2712 | (cons (car math-normalize-a) args)) | 2711 | (cons (car math-normalize-a) args)) |
| 2713 | nil) | 2712 | nil) |
| 2714 | (inexact-result | 2713 | (inexact-result |
| 2715 | (setq math-normalize-error t) | ||
| 2716 | (calc-record-why "No exact representation for result" | 2714 | (calc-record-why "No exact representation for result" |
| 2717 | (cons (car math-normalize-a) args)) | 2715 | (cons (car math-normalize-a) args)) |
| 2718 | nil) | 2716 | nil) |
diff --git a/lisp/cedet/ChangeLog b/lisp/cedet/ChangeLog index 8b914e8843e..944a9e1a02a 100644 --- a/lisp/cedet/ChangeLog +++ b/lisp/cedet/ChangeLog | |||
| @@ -1,3 +1,11 @@ | |||
| 1 | 2013-04-27 David Engster <deng@randomsample.de> | ||
| 2 | |||
| 3 | * semantic/complete.el | ||
| 4 | (semantic-collector-calculate-completions-raw): If | ||
| 5 | `completionslist' is not set, refresh the cache if necessary and | ||
| 6 | use it for completions. This fixes the | ||
| 7 | `semantic-collector-buffer-deep' collector (bug#14265). | ||
| 8 | |||
| 1 | 2013-03-26 Leo Liu <sdl.web@gmail.com> | 9 | 2013-03-26 Leo Liu <sdl.web@gmail.com> |
| 2 | 10 | ||
| 3 | * semantic/senator.el (senator-copy-tag-to-register): Move | 11 | * semantic/senator.el (senator-copy-tag-to-register): Move |
diff --git a/lisp/cedet/semantic/complete.el b/lisp/cedet/semantic/complete.el index 1c2ddf45c9d..6c2b97a677a 100644 --- a/lisp/cedet/semantic/complete.el +++ b/lisp/cedet/semantic/complete.el | |||
| @@ -988,14 +988,17 @@ Calculate the cache if there isn't one." | |||
| 988 | "Calculate the completions for prefix from completionlist. | 988 | "Calculate the completions for prefix from completionlist. |
| 989 | Output must be in semanticdb Find result format." | 989 | Output must be in semanticdb Find result format." |
| 990 | ;; Must output in semanticdb format | 990 | ;; Must output in semanticdb format |
| 991 | (unless completionlist | ||
| 992 | (setq completionlist | ||
| 993 | (or (oref obj cache) | ||
| 994 | (semantic-collector-calculate-cache obj)))) | ||
| 991 | (let ((table (with-current-buffer (oref obj buffer) | 995 | (let ((table (with-current-buffer (oref obj buffer) |
| 992 | semanticdb-current-table)) | 996 | semanticdb-current-table)) |
| 993 | (result (semantic-find-tags-for-completion | 997 | (result (semantic-find-tags-for-completion |
| 994 | prefix | 998 | prefix |
| 995 | ;; To do this kind of search with a pre-built completion | 999 | ;; To do this kind of search with a pre-built completion |
| 996 | ;; list, we need to strip it first. | 1000 | ;; list, we need to strip it first. |
| 997 | (semanticdb-strip-find-results completionlist))) | 1001 | (semanticdb-strip-find-results completionlist)))) |
| 998 | ) | ||
| 999 | (if result | 1002 | (if result |
| 1000 | (list (cons table result))))) | 1003 | (list (cons table result))))) |
| 1001 | 1004 | ||
diff --git a/lisp/comint.el b/lisp/comint.el index d5d95f8cbc0..d0c2e477d5a 100644 --- a/lisp/comint.el +++ b/lisp/comint.el | |||
| @@ -1191,7 +1191,8 @@ If N is negative, find the next or Nth next match." | |||
| 1191 | (setq comint-stored-incomplete-input | 1191 | (setq comint-stored-incomplete-input |
| 1192 | (funcall comint-get-old-input))) | 1192 | (funcall comint-get-old-input))) |
| 1193 | (setq comint-input-ring-index pos) | 1193 | (setq comint-input-ring-index pos) |
| 1194 | (message "History item: %d" (1+ pos)) | 1194 | (unless isearch-mode |
| 1195 | (message "History item: %d" (1+ pos))) | ||
| 1195 | (comint-delete-input) | 1196 | (comint-delete-input) |
| 1196 | (insert (ring-ref comint-input-ring pos))))) | 1197 | (insert (ring-ref comint-input-ring pos))))) |
| 1197 | 1198 | ||
| @@ -1540,8 +1541,11 @@ the function `isearch-message'." | |||
| 1540 | (overlay-put comint-history-isearch-message-overlay 'evaporate t)) | 1541 | (overlay-put comint-history-isearch-message-overlay 'evaporate t)) |
| 1541 | (overlay-put comint-history-isearch-message-overlay | 1542 | (overlay-put comint-history-isearch-message-overlay |
| 1542 | 'display (isearch-message-prefix c-q-hack ellipsis)) | 1543 | 'display (isearch-message-prefix c-q-hack ellipsis)) |
| 1543 | ;; And clear any previous isearch message. | 1544 | (if (and comint-input-ring-index (not ellipsis)) |
| 1544 | (message ""))) | 1545 | ;; Display the current history index. |
| 1546 | (message "History item: %d" (1+ comint-input-ring-index)) | ||
| 1547 | ;; Or clear a previous isearch message. | ||
| 1548 | (message "")))) | ||
| 1545 | 1549 | ||
| 1546 | (defun comint-history-isearch-wrap () | 1550 | (defun comint-history-isearch-wrap () |
| 1547 | "Wrap the input history search when search fails. | 1551 | "Wrap the input history search when search fails. |
diff --git a/lisp/desktop.el b/lisp/desktop.el index 9c95f597fff..e9a839c4cf7 100644 --- a/lisp/desktop.el +++ b/lisp/desktop.el | |||
| @@ -189,6 +189,19 @@ determine where the desktop is saved." | |||
| 189 | :group 'desktop | 189 | :group 'desktop |
| 190 | :version "22.1") | 190 | :version "22.1") |
| 191 | 191 | ||
| 192 | (defcustom desktop-auto-save-timeout nil | ||
| 193 | "Number of seconds between auto-saves of the desktop. | ||
| 194 | Zero or nil means disable timer-based auto-saving." | ||
| 195 | :type '(choice (const :tag "Off" nil) | ||
| 196 | (integer :tag "Seconds")) | ||
| 197 | :set (lambda (symbol value) | ||
| 198 | (set-default symbol value) | ||
| 199 | (condition-case nil | ||
| 200 | (desktop-auto-save-set-timer) | ||
| 201 | (error nil))) | ||
| 202 | :group 'desktop | ||
| 203 | :version "24.4") | ||
| 204 | |||
| 192 | (defcustom desktop-load-locked-desktop 'ask | 205 | (defcustom desktop-load-locked-desktop 'ask |
| 193 | "Specifies whether the desktop should be loaded if locked. | 206 | "Specifies whether the desktop should be loaded if locked. |
| 194 | Possible values are: | 207 | Possible values are: |
| @@ -539,6 +552,10 @@ DIRNAME omitted or nil means use `desktop-dirname'." | |||
| 539 | (defvar desktop-delay-hook nil | 552 | (defvar desktop-delay-hook nil |
| 540 | "Hooks run after all buffers are loaded; intended for internal use.") | 553 | "Hooks run after all buffers are loaded; intended for internal use.") |
| 541 | 554 | ||
| 555 | (defvar desktop-file-checksum nil | ||
| 556 | "Checksum of the last auto-saved contents of the desktop file. | ||
| 557 | Used to avoid writing contents unchanged between auto-saves.") | ||
| 558 | |||
| 542 | ;; ---------------------------------------------------------------------------- | 559 | ;; ---------------------------------------------------------------------------- |
| 543 | ;; Desktop file conflict detection | 560 | ;; Desktop file conflict detection |
| 544 | (defvar desktop-file-modtime nil | 561 | (defvar desktop-file-modtime nil |
| @@ -842,11 +859,12 @@ DIRNAME must be the directory in which the desktop file will be saved." | |||
| 842 | 859 | ||
| 843 | ;; ---------------------------------------------------------------------------- | 860 | ;; ---------------------------------------------------------------------------- |
| 844 | ;;;###autoload | 861 | ;;;###autoload |
| 845 | (defun desktop-save (dirname &optional release) | 862 | (defun desktop-save (dirname &optional release auto-save) |
| 846 | "Save the desktop in a desktop file. | 863 | "Save the desktop in a desktop file. |
| 847 | Parameter DIRNAME specifies where to save the desktop file. | 864 | Parameter DIRNAME specifies where to save the desktop file. |
| 848 | Optional parameter RELEASE says whether we're done with this desktop. | 865 | Optional parameter RELEASE says whether we're done with this desktop. |
| 849 | See also `desktop-base-file-name'." | 866 | If AUTO-SAVE is non-nil, compare the saved contents to the one last saved, |
| 867 | and don't save the buffer if they are the same." | ||
| 850 | (interactive "DDirectory to save desktop file in: ") | 868 | (interactive "DDirectory to save desktop file in: ") |
| 851 | (setq desktop-dirname (file-name-as-directory (expand-file-name dirname))) | 869 | (setq desktop-dirname (file-name-as-directory (expand-file-name dirname))) |
| 852 | (save-excursion | 870 | (save-excursion |
| @@ -906,10 +924,17 @@ See also `desktop-base-file-name'." | |||
| 906 | (insert ")\n\n")))) | 924 | (insert ")\n\n")))) |
| 907 | 925 | ||
| 908 | (setq default-directory desktop-dirname) | 926 | (setq default-directory desktop-dirname) |
| 909 | (let ((coding-system-for-write 'emacs-mule)) | 927 | ;; If auto-saving, avoid writing if nothing has changed since the last write. |
| 910 | (write-region (point-min) (point-max) (desktop-full-file-name) nil 'nomessage)) | 928 | ;; Don't check 300 characters of the header that contains the timestamp. |
| 911 | ;; We remember when it was modified (which is presumably just now). | 929 | (let ((checksum (and auto-save (md5 (current-buffer) |
| 912 | (setq desktop-file-modtime (nth 5 (file-attributes (desktop-full-file-name))))))))) | 930 | (+ (point-min) 300) (point-max) |
| 931 | 'emacs-mule)))) | ||
| 932 | (unless (and auto-save (equal checksum desktop-file-checksum)) | ||
| 933 | (let ((coding-system-for-write 'emacs-mule)) | ||
| 934 | (write-region (point-min) (point-max) (desktop-full-file-name) nil 'nomessage)) | ||
| 935 | (setq desktop-file-checksum checksum) | ||
| 936 | ;; We remember when it was modified (which is presumably just now). | ||
| 937 | (setq desktop-file-modtime (nth 5 (file-attributes (desktop-full-file-name))))))))))) | ||
| 913 | 938 | ||
| 914 | ;; ---------------------------------------------------------------------------- | 939 | ;; ---------------------------------------------------------------------------- |
| 915 | ;;;###autoload | 940 | ;;;###autoload |
| @@ -1063,6 +1088,37 @@ directory DIRNAME." | |||
| 1063 | (message "Desktop saved in %s" (abbreviate-file-name desktop-dirname))) | 1088 | (message "Desktop saved in %s" (abbreviate-file-name desktop-dirname))) |
| 1064 | 1089 | ||
| 1065 | ;; ---------------------------------------------------------------------------- | 1090 | ;; ---------------------------------------------------------------------------- |
| 1091 | ;; Auto-Saving. | ||
| 1092 | (defvar desktop-auto-save-timer nil) | ||
| 1093 | |||
| 1094 | (defun desktop-auto-save () | ||
| 1095 | "Save the desktop periodically. | ||
| 1096 | Called by the timer created in `desktop-auto-save-set-timer'." | ||
| 1097 | (when (and desktop-save-mode | ||
| 1098 | (integerp desktop-auto-save-timeout) | ||
| 1099 | (> desktop-auto-save-timeout 0) | ||
| 1100 | ;; Avoid desktop saving during lazy loading. | ||
| 1101 | (not desktop-lazy-timer) | ||
| 1102 | ;; Save only to own desktop file. | ||
| 1103 | (eq (emacs-pid) (desktop-owner)) | ||
| 1104 | desktop-dirname) | ||
| 1105 | (desktop-save desktop-dirname nil t)) | ||
| 1106 | (desktop-auto-save-set-timer)) | ||
| 1107 | |||
| 1108 | (defun desktop-auto-save-set-timer () | ||
| 1109 | "Reset the auto-save timer. | ||
| 1110 | Cancel any previous timer. When `desktop-auto-save-timeout' is a positive | ||
| 1111 | integer, start a new timer to call `desktop-auto-save' in that many seconds." | ||
| 1112 | (when desktop-auto-save-timer | ||
| 1113 | (cancel-timer desktop-auto-save-timer) | ||
| 1114 | (setq desktop-auto-save-timer nil)) | ||
| 1115 | (when (and (integerp desktop-auto-save-timeout) | ||
| 1116 | (> desktop-auto-save-timeout 0)) | ||
| 1117 | (setq desktop-auto-save-timer | ||
| 1118 | (run-with-timer desktop-auto-save-timeout nil | ||
| 1119 | 'desktop-auto-save)))) | ||
| 1120 | |||
| 1121 | ;; ---------------------------------------------------------------------------- | ||
| 1066 | ;;;###autoload | 1122 | ;;;###autoload |
| 1067 | (defun desktop-revert () | 1123 | (defun desktop-revert () |
| 1068 | "Revert to the last loaded desktop." | 1124 | "Revert to the last loaded desktop." |
| @@ -1315,6 +1371,7 @@ If there are no buffers left to create, kill the timer." | |||
| 1315 | (setq desktop-save-mode nil))) | 1371 | (setq desktop-save-mode nil))) |
| 1316 | (when desktop-save-mode | 1372 | (when desktop-save-mode |
| 1317 | (desktop-read) | 1373 | (desktop-read) |
| 1374 | (desktop-auto-save-set-timer) | ||
| 1318 | (setq inhibit-startup-screen t)))) | 1375 | (setq inhibit-startup-screen t)))) |
| 1319 | 1376 | ||
| 1320 | (provide 'desktop) | 1377 | (provide 'desktop) |
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index 605d1cf375c..c80b8d970dc 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el | |||
| @@ -588,7 +588,8 @@ EXTRA-PROPERTIES is currently unused." | |||
| 588 | (concat ";;; " (file-name-nondirectory file) | 588 | (concat ";;; " (file-name-nondirectory file) |
| 589 | " --- automatically extracted autoloads\n" | 589 | " --- automatically extracted autoloads\n" |
| 590 | ";;\n" | 590 | ";;\n" |
| 591 | ";;; Code:\n\n" | 591 | ";;; Code:\n" |
| 592 | "(add-to-list 'load-path (or (file-name-directory #$) (car load-path)))\n" | ||
| 592 | "\n;; Local Variables:\n" | 593 | "\n;; Local Variables:\n" |
| 593 | ";; version-control: never\n" | 594 | ";; version-control: never\n" |
| 594 | ";; no-byte-compile: t\n" | 595 | ";; no-byte-compile: t\n" |
| @@ -605,8 +606,7 @@ EXTRA-PROPERTIES is currently unused." | |||
| 605 | ;;(ignore-name (concat name "-pkg.el")) | 606 | ;;(ignore-name (concat name "-pkg.el")) |
| 606 | (generated-autoload-file (expand-file-name auto-name pkg-dir)) | 607 | (generated-autoload-file (expand-file-name auto-name pkg-dir)) |
| 607 | (version-control 'never)) | 608 | (version-control 'never)) |
| 608 | (unless (fboundp 'autoload-ensure-default-file) | 609 | (package-autoload-ensure-default-file generated-autoload-file) |
| 609 | (package-autoload-ensure-default-file generated-autoload-file)) | ||
| 610 | (update-directory-autoloads pkg-dir) | 610 | (update-directory-autoloads pkg-dir) |
| 611 | (let ((buf (find-buffer-visiting generated-autoload-file))) | 611 | (let ((buf (find-buffer-visiting generated-autoload-file))) |
| 612 | (when buf (kill-buffer buf))))) | 612 | (when buf (kill-buffer buf))))) |
diff --git a/lisp/emacs-lisp/shadow.el b/lisp/emacs-lisp/shadow.el index b12fba17027..d0e3c5763b5 100644 --- a/lisp/emacs-lisp/shadow.el +++ b/lisp/emacs-lisp/shadow.el | |||
| @@ -207,101 +207,79 @@ the earlier. | |||
| 207 | 207 | ||
| 208 | For example, suppose `load-path' is set to | 208 | For example, suppose `load-path' is set to |
| 209 | 209 | ||
| 210 | \(\"/usr/gnu/emacs/site-lisp\" \"/usr/gnu/emacs/share/emacs/19.30/lisp\"\) | 210 | \(\"/usr/share/emacs/site-lisp\" \"/usr/share/emacs/24.3/lisp\") |
| 211 | 211 | ||
| 212 | and that each of these directories contains a file called XXX.el. Then | 212 | and that each of these directories contains a file called XXX.el. Then |
| 213 | XXX.el in the site-lisp directory is referred to by all of: | 213 | XXX.el in the site-lisp directory is referred to by all of: |
| 214 | \(require 'XXX\), \(autoload .... \"XXX\"\), \(load-library \"XXX\"\) etc. | 214 | \(require 'XXX), (autoload .... \"XXX\"), (load-library \"XXX\") etc. |
| 215 | 215 | ||
| 216 | The first XXX.el file prevents Emacs from seeing the second \(unless | 216 | The first XXX.el file prevents Emacs from seeing the second (unless |
| 217 | the second is loaded explicitly via `load-file'\). | 217 | the second is loaded explicitly via `load-file'). |
| 218 | 218 | ||
| 219 | When not intended, such shadowings can be the source of subtle | 219 | When not intended, such shadowings can be the source of subtle |
| 220 | problems. For example, the above situation may have arisen because the | 220 | problems. For example, the above situation may have arisen because the |
| 221 | XXX package was not distributed with versions of Emacs prior to | 221 | XXX package was not distributed with versions of Emacs prior to |
| 222 | 19.30. An Emacs maintainer downloaded XXX from elsewhere and installed | 222 | 24.3. A system administrator downloaded XXX from elsewhere and installed |
| 223 | it. Later, XXX was updated and included in the Emacs distribution. | 223 | it. Later, XXX was updated and included in the Emacs distribution. |
| 224 | Unless the Emacs maintainer checks for this, the new version of XXX | 224 | Unless the system administrator checks for this, the new version of XXX |
| 225 | will be hidden behind the old \(which may no longer work with the new | 225 | will be hidden behind the old (which may no longer work with the new |
| 226 | Emacs version\). | 226 | Emacs version). |
| 227 | 227 | ||
| 228 | This function performs these checks and flags all possible | 228 | This function performs these checks and flags all possible |
| 229 | shadowings. Because a .el file may exist without a corresponding .elc | 229 | shadowings. Because a .el file may exist without a corresponding .elc |
| 230 | \(or vice-versa\), these suffixes are essentially ignored. A file | 230 | \(or vice-versa), these suffixes are essentially ignored. A file |
| 231 | XXX.elc in an early directory \(that does not contain XXX.el\) is | 231 | XXX.elc in an early directory (that does not contain XXX.el) is |
| 232 | considered to shadow a later file XXX.el, and vice-versa. | 232 | considered to shadow a later file XXX.el, and vice-versa. |
| 233 | 233 | ||
| 234 | Shadowings are located by calling the (non-interactive) companion | 234 | Shadowings are located by calling the (non-interactive) companion |
| 235 | function, `load-path-shadows-find'." | 235 | function, `load-path-shadows-find'." |
| 236 | (interactive) | 236 | (interactive) |
| 237 | (let* ((path (copy-sequence load-path)) | 237 | (let* ((shadows (load-path-shadows-find load-path)) |
| 238 | (tem path) | 238 | (n (/ (length shadows) 2)) |
| 239 | toplevs) | 239 | (msg (format "%s Emacs Lisp load-path shadowing%s found" |
| 240 | ;; If we can find simple.el in two places, | 240 | (if (zerop n) "No" (concat "\n" (number-to-string n))) |
| 241 | (dolist (tt tem) | 241 | (if (= n 1) " was" "s were")))) |
| 242 | (if (or (file-exists-p (expand-file-name "simple.el" tt)) | 242 | (with-temp-buffer |
| 243 | (file-exists-p (expand-file-name "simple.el.gz" tt))) | 243 | (while shadows |
| 244 | (setq toplevs (cons tt toplevs)))) | 244 | (insert (format "%s hides %s\n" (car shadows) |
| 245 | (if (> (length toplevs) 1) | 245 | (car (cdr shadows)))) |
| 246 | ;; Cut off our copy of load-path right before | 246 | (setq shadows (cdr (cdr shadows)))) |
| 247 | ;; the last directory which has simple.el in it. | 247 | (if stringp |
| 248 | ;; This avoids loads of duplications between the source dir | 248 | (buffer-string) |
| 249 | ;; and the dir where these files were copied by installation. | 249 | (if (called-interactively-p 'interactive) |
| 250 | (let ((break (car toplevs))) | 250 | ;; We are interactive. |
| 251 | (setq tem path) | 251 | ;; Create the *Shadows* buffer and display shadowings there. |
| 252 | (while tem | 252 | (let ((string (buffer-string))) |
| 253 | (if (eq (nth 1 tem) break) | 253 | (with-current-buffer (get-buffer-create "*Shadows*") |
| 254 | (progn | 254 | (display-buffer (current-buffer)) |
| 255 | (setcdr tem nil) | 255 | (load-path-shadows-mode) ; run after-change-major-mode-hook |
| 256 | (setq tem nil))) | 256 | (let ((inhibit-read-only t)) |
| 257 | (setq tem (cdr tem))))) | 257 | (erase-buffer) |
| 258 | 258 | (insert string) | |
| 259 | (let* ((shadows (load-path-shadows-find path)) | 259 | (insert msg "\n") |
| 260 | (n (/ (length shadows) 2)) | 260 | (while (re-search-backward "\\(^.*\\) hides \\(.*$\\)" |
| 261 | (msg (format "%s Emacs Lisp load-path shadowing%s found" | 261 | nil t) |
| 262 | (if (zerop n) "No" (concat "\n" (number-to-string n))) | 262 | (dotimes (i 2) |
| 263 | (if (= n 1) " was" "s were")))) | 263 | (make-button (match-beginning (1+ i)) |
| 264 | (with-temp-buffer | 264 | (match-end (1+ i)) |
| 265 | (while shadows | 265 | 'type 'load-path-shadows-find-file |
| 266 | (insert (format "%s hides %s\n" (car shadows) | 266 | 'shadow-file |
| 267 | (car (cdr shadows)))) | 267 | (match-string (1+ i))))) |
| 268 | (setq shadows (cdr (cdr shadows)))) | 268 | (goto-char (point-max))))) |
| 269 | (if stringp | 269 | ;; We are non-interactive, print shadows via message. |
| 270 | (buffer-string) | 270 | (unless (zerop n) |
| 271 | (if (called-interactively-p 'interactive) | 271 | (message "This site has duplicate Lisp libraries with the same name. |
| 272 | ;; We are interactive. | ||
| 273 | ;; Create the *Shadows* buffer and display shadowings there. | ||
| 274 | (let ((string (buffer-string))) | ||
| 275 | (with-current-buffer (get-buffer-create "*Shadows*") | ||
| 276 | (display-buffer (current-buffer)) | ||
| 277 | (load-path-shadows-mode) ; run after-change-major-mode-hook | ||
| 278 | (let ((inhibit-read-only t)) | ||
| 279 | (erase-buffer) | ||
| 280 | (insert string) | ||
| 281 | (insert msg "\n") | ||
| 282 | (while (re-search-backward "\\(^.*\\) hides \\(.*$\\)" | ||
| 283 | nil t) | ||
| 284 | (dotimes (i 2) | ||
| 285 | (make-button (match-beginning (1+ i)) | ||
| 286 | (match-end (1+ i)) | ||
| 287 | 'type 'load-path-shadows-find-file | ||
| 288 | 'shadow-file | ||
| 289 | (match-string (1+ i))))) | ||
| 290 | (goto-char (point-max))))) | ||
| 291 | ;; We are non-interactive, print shadows via message. | ||
| 292 | (unless (zerop n) | ||
| 293 | (message "This site has duplicate Lisp libraries with the same name. | ||
| 294 | If a locally-installed Lisp library overrides a library in the Emacs release, | 272 | If a locally-installed Lisp library overrides a library in the Emacs release, |
| 295 | that can cause trouble, and you should probably remove the locally-installed | 273 | that can cause trouble, and you should probably remove the locally-installed |
| 296 | version unless you know what you are doing.\n") | 274 | version unless you know what you are doing.\n") |
| 297 | (goto-char (point-min)) | 275 | (goto-char (point-min)) |
| 298 | ;; Mimic the previous behavior of using lots of messages. | 276 | ;; Mimic the previous behavior of using lots of messages. |
| 299 | ;; I think one single message would look better... | 277 | ;; I think one single message would look better... |
| 300 | (while (not (eobp)) | 278 | (while (not (eobp)) |
| 301 | (message "%s" (buffer-substring (line-beginning-position) | 279 | (message "%s" (buffer-substring (line-beginning-position) |
| 302 | (line-end-position))) | 280 | (line-end-position))) |
| 303 | (forward-line 1)) | 281 | (forward-line 1)) |
| 304 | (message "%s" msg)))))))) | 282 | (message "%s" msg))))))) |
| 305 | 283 | ||
| 306 | (provide 'shadow) | 284 | (provide 'shadow) |
| 307 | 285 | ||
diff --git a/lisp/emacs-lisp/syntax.el b/lisp/emacs-lisp/syntax.el index bf2c8308bb5..0a4758a9ccd 100644 --- a/lisp/emacs-lisp/syntax.el +++ b/lisp/emacs-lisp/syntax.el | |||
| @@ -99,7 +99,7 @@ Put first the functions more likely to cause a change and cheaper to compute.") | |||
| 99 | (setq beg (or (previous-single-property-change beg 'syntax-multiline) | 99 | (setq beg (or (previous-single-property-change beg 'syntax-multiline) |
| 100 | (point-min)))) | 100 | (point-min)))) |
| 101 | ;; | 101 | ;; |
| 102 | (when (get-text-property end 'font-lock-multiline) | 102 | (when (get-text-property end 'syntax-multiline) |
| 103 | (setq end (or (text-property-any end (point-max) | 103 | (setq end (or (text-property-any end (point-max) |
| 104 | 'syntax-multiline nil) | 104 | 'syntax-multiline nil) |
| 105 | (point-max)))) | 105 | (point-max)))) |
diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el index da487e463e2..6dba423010f 100644 --- a/lisp/emacs-lisp/tabulated-list.el +++ b/lisp/emacs-lisp/tabulated-list.el | |||
| @@ -519,12 +519,11 @@ printer is `tabulated-list-print-entry', but a mode that keeps | |||
| 519 | data in an ewoc may instead specify a printer function (e.g., one | 519 | data in an ewoc may instead specify a printer function (e.g., one |
| 520 | that calls `ewoc-enter-last'), with `tabulated-list-print-entry' | 520 | that calls `ewoc-enter-last'), with `tabulated-list-print-entry' |
| 521 | as the ewoc pretty-printer." | 521 | as the ewoc pretty-printer." |
| 522 | (setq truncate-lines t) | 522 | (setq-local truncate-lines t) |
| 523 | (setq buffer-read-only t) | 523 | (setq-local buffer-read-only t) |
| 524 | (set (make-local-variable 'revert-buffer-function) | 524 | (setq-local buffer-undo-list t) |
| 525 | 'tabulated-list-revert) | 525 | (setq-local revert-buffer-function #'tabulated-list-revert) |
| 526 | (set (make-local-variable 'glyphless-char-display) | 526 | (setq-local glyphless-char-display tabulated-list-glyphless-char-display)) |
| 527 | tabulated-list-glyphless-char-display)) | ||
| 528 | 527 | ||
| 529 | (put 'tabulated-list-mode 'mode-class 'special) | 528 | (put 'tabulated-list-mode 'mode-class 'special) |
| 530 | 529 | ||
diff --git a/lisp/faces.el b/lisp/faces.el index 6179ed7dfa7..80f34d4569a 100644 --- a/lisp/faces.el +++ b/lisp/faces.el | |||
| @@ -938,19 +938,14 @@ of the default face. Value is FACE." | |||
| 938 | PROMPT should not end in a space or a colon. | 938 | PROMPT should not end in a space or a colon. |
| 939 | 939 | ||
| 940 | Return DEFAULT if the user enters the empty string. | 940 | Return DEFAULT if the user enters the empty string. |
| 941 | If DEFAULT is non-nil, it should be a list of face names (symbols or strings). | 941 | If DEFAULT is non-nil, it should be a single face or a list of face names |
| 942 | In that case, return the `car' of DEFAULT (if MULTIPLE is non-nil), | 942 | \(symbols or strings). In the latter case, return the `car' of DEFAULT |
| 943 | or DEFAULT (if MULTIPLE is nil). See below for the meaning of MULTIPLE. | 943 | \(if MULTIPLE is nil, see below), or DEFAULT (if MULTIPLE is non-nil). |
| 944 | DEFAULT can also be a single face. | 944 | |
| 945 | 945 | If MULTIPLE is non-nil, this function uses `completing-read-multiple' | |
| 946 | This function uses `completing-read-multiple' with \"[ \\t]*,[ \\t]*\" | 946 | to read multiple faces with \"[ \\t]*,[ \\t]*\" as the separator regexp |
| 947 | as the separator regexp. Thus, the user may enter multiple face names, | 947 | and it returns a list of face names. Otherwise, it reads and returns |
| 948 | separated by commas. | 948 | a single face name." |
| 949 | |||
| 950 | MULTIPLE specifies the form of the return value. If MULTIPLE is non-nil, | ||
| 951 | return a list of face names; if the user entered just one face name, | ||
| 952 | return a list of one face name. Otherwise, return a single face name; | ||
| 953 | if the user entered more than one face name, return only the first one." | ||
| 954 | (if (and default (not (stringp default))) | 949 | (if (and default (not (stringp default))) |
| 955 | (setq default | 950 | (setq default |
| 956 | (cond ((symbolp default) | 951 | (cond ((symbolp default) |
| @@ -961,26 +956,36 @@ if the user entered more than one face name, return only the first one." | |||
| 961 | ;; If we only want one, and the default is more than one, | 956 | ;; If we only want one, and the default is more than one, |
| 962 | ;; discard the unwanted ones. | 957 | ;; discard the unwanted ones. |
| 963 | (t (symbol-name (car default)))))) | 958 | (t (symbol-name (car default)))))) |
| 964 | 959 | (if (and default (not multiple)) | |
| 965 | (let (aliasfaces nonaliasfaces faces) | 960 | ;; For compatibility with `completing-read-multiple' use `crm-separator' |
| 961 | ;; to define DEFAULT if MULTIPLE is nil. | ||
| 962 | (setq default (car (split-string default crm-separator t)))) | ||
| 963 | |||
| 964 | (let ((prompt (if default | ||
| 965 | (format "%s (default `%s'): " prompt default) | ||
| 966 | (format "%s: " prompt))) | ||
| 967 | aliasfaces nonaliasfaces faces) | ||
| 966 | ;; Build up the completion tables. | 968 | ;; Build up the completion tables. |
| 967 | (mapatoms (lambda (s) | 969 | (mapatoms (lambda (s) |
| 968 | (if (facep s) | 970 | (if (facep s) |
| 969 | (if (get s 'face-alias) | 971 | (if (get s 'face-alias) |
| 970 | (push (symbol-name s) aliasfaces) | 972 | (push (symbol-name s) aliasfaces) |
| 971 | (push (symbol-name s) nonaliasfaces))))) | 973 | (push (symbol-name s) nonaliasfaces))))) |
| 972 | (dolist (face (completing-read-multiple | 974 | (if multiple |
| 973 | (if default | 975 | (progn |
| 974 | (format "%s (default `%s'): " prompt default) | 976 | (dolist (face (completing-read-multiple |
| 975 | (format "%s: " prompt)) | 977 | prompt |
| 978 | (completion-table-in-turn nonaliasfaces aliasfaces) | ||
| 979 | nil t nil 'face-name-history default)) | ||
| 980 | ;; Ignore elements that are not faces | ||
| 981 | ;; (for example, because DEFAULT was "all faces") | ||
| 982 | (if (facep face) (push (intern face) faces))) | ||
| 983 | (nreverse faces)) | ||
| 984 | (let ((face (completing-read | ||
| 985 | prompt | ||
| 976 | (completion-table-in-turn nonaliasfaces aliasfaces) | 986 | (completion-table-in-turn nonaliasfaces aliasfaces) |
| 977 | nil t nil 'face-name-history default)) | 987 | nil t nil 'face-name-history default))) |
| 978 | ;; Ignore elements that are not faces | 988 | (if (facep face) (intern face)))))) |
| 979 | ;; (for example, because DEFAULT was "all faces") | ||
| 980 | (if (facep face) (push (intern face) faces))) | ||
| 981 | ;; Return either a list of faces or just one face. | ||
| 982 | (setq faces (nreverse faces)) | ||
| 983 | (if multiple faces (car faces)))) | ||
| 984 | 989 | ||
| 985 | ;; Not defined without X, but behind window-system test. | 990 | ;; Not defined without X, but behind window-system test. |
| 986 | (defvar x-bitmap-file-path) | 991 | (defvar x-bitmap-file-path) |
diff --git a/lisp/files.el b/lisp/files.el index ae5e5a23161..eebbf15e02e 100644 --- a/lisp/files.el +++ b/lisp/files.el | |||
| @@ -4617,7 +4617,8 @@ Before and after saving the buffer, this function runs | |||
| 4617 | (insert ?\n)))) | 4617 | (insert ?\n)))) |
| 4618 | ;; Support VC version backups. | 4618 | ;; Support VC version backups. |
| 4619 | (vc-before-save) | 4619 | (vc-before-save) |
| 4620 | (run-hooks 'before-save-hook) | 4620 | ;; Don't let errors prevent saving the buffer. |
| 4621 | (with-demoted-errors (run-hooks 'before-save-hook)) | ||
| 4621 | (or (run-hook-with-args-until-success 'write-contents-functions) | 4622 | (or (run-hook-with-args-until-success 'write-contents-functions) |
| 4622 | (run-hook-with-args-until-success 'local-write-file-hooks) | 4623 | (run-hook-with-args-until-success 'local-write-file-hooks) |
| 4623 | (run-hook-with-args-until-success 'write-file-functions) | 4624 | (run-hook-with-args-until-success 'write-file-functions) |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 4cdc8a103bd..1221f163cba 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,32 @@ | |||
| 1 | 2013-05-01 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 2 | |||
| 3 | * gnus-util.el (gnus-emacs-completing-read): Fix a filter for XEmacs. | ||
| 4 | (Bug#14304) | ||
| 5 | |||
| 6 | 2013-04-27 Glenn Morris <rgm@gnu.org> | ||
| 7 | |||
| 8 | * gnus.el (gnus-list-debbugs): | ||
| 9 | Use require rather than autoload. (Bug#14262) | ||
| 10 | |||
| 11 | 2013-04-27 Julien Danjou <julien@danjou.info> | ||
| 12 | |||
| 13 | * sieve-manage.el (sieve-manage-authenticator-alist): Update the sieve | ||
| 14 | port to "sieve" now that it has an official IANA port assigned. | ||
| 15 | |||
| 16 | 2013-04-26 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 17 | |||
| 18 | * mail-source.el (mail-source-fetch-pop, mail-source-check-pop): | ||
| 19 | Don't set the MAILHOST environment variable permanently (Bug#14271). | ||
| 20 | |||
| 21 | 2013-04-26 Glenn Morris <rgm@gnu.org> | ||
| 22 | |||
| 23 | * message.el (message-bury): Revert 2013-03-18 change. (Bug#14117) | ||
| 24 | |||
| 25 | 2013-04-25 Andrew Cohen <cohen@bu.edu> | ||
| 26 | |||
| 27 | * gnus-msg.el (gnus-inews-insert-gcc): Re-order conditional to work for | ||
| 28 | string values of 'gcc-self. Thanks to Saroj Thirumalai. | ||
| 29 | |||
| 1 | 2013-04-24 Andrew Cohen <cohen@bu.edu> | 30 | 2013-04-24 Andrew Cohen <cohen@bu.edu> |
| 2 | 31 | ||
| 3 | * nnir.el (nnir-close-group): Make sure we are in the right group. | 32 | * nnir.el (nnir-close-group): Make sure we are in the right group. |
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el index 362dd3ea7f0..fce9a3633c2 100644 --- a/lisp/gnus/gnus-msg.el +++ b/lisp/gnus/gnus-msg.el | |||
| @@ -1719,8 +1719,8 @@ this is a reply." | |||
| 1719 | (group (when group (gnus-group-decoded-name group))) | 1719 | (group (when group (gnus-group-decoded-name group))) |
| 1720 | (var (or gnus-outgoing-message-group gnus-message-archive-group)) | 1720 | (var (or gnus-outgoing-message-group gnus-message-archive-group)) |
| 1721 | (gcc-self-val | 1721 | (gcc-self-val |
| 1722 | (and group (gnus-group-find-parameter group 'gcc-self) | 1722 | (and group (not (gnus-virtual-group-p group)) |
| 1723 | (not (gnus-virtual-group-p group)))) | 1723 | (gnus-group-find-parameter group 'gcc-self))) |
| 1724 | result | 1724 | result |
| 1725 | (groups | 1725 | (groups |
| 1726 | (cond | 1726 | (cond |
diff --git a/lisp/gnus/gnus-util.el b/lisp/gnus/gnus-util.el index 331f9556710..a121c27b547 100644 --- a/lisp/gnus/gnus-util.el +++ b/lisp/gnus/gnus-util.el | |||
| @@ -1549,9 +1549,12 @@ SPEC is a predicate specifier that contains stuff like `or', `and', | |||
| 1549 | "Call standard `completing-read-function'." | 1549 | "Call standard `completing-read-function'." |
| 1550 | (let ((completion-styles gnus-completion-styles)) | 1550 | (let ((completion-styles gnus-completion-styles)) |
| 1551 | (completing-read prompt | 1551 | (completing-read prompt |
| 1552 | ;; Old XEmacs (at least 21.4) expect an alist for | 1552 | ;; Old XEmacs (at least 21.4) expect an alist, |
| 1553 | ;; collection. | 1553 | ;; in which the car of each element is a string, |
| 1554 | (mapcar 'list collection) | 1554 | ;; for collection. |
| 1555 | (mapcar (lambda (elem) | ||
| 1556 | (list (format "%s" (or (car-safe elem) elem)))) | ||
| 1557 | collection) | ||
| 1555 | nil require-match initial-input history def))) | 1558 | nil require-match initial-input history def))) |
| 1556 | 1559 | ||
| 1557 | (autoload 'ido-completing-read "ido") | 1560 | (autoload 'ido-completing-read "ido") |
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index ffb4694f4a8..f6c1327c78c 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el | |||
| @@ -4433,12 +4433,13 @@ prompt the user for the name of an NNTP server to use." | |||
| 4433 | (gnus-1 arg dont-connect slave) | 4433 | (gnus-1 arg dont-connect slave) |
| 4434 | (gnus-final-warning))) | 4434 | (gnus-final-warning))) |
| 4435 | 4435 | ||
| 4436 | (eval-and-compile | 4436 | (declare-function debbugs-gnu "ext:debbugs-gnu" |
| 4437 | (unless (fboundp 'debbugs-gnu) | 4437 | (severities &optional packages archivedp suppress tags)) |
| 4438 | (autoload 'debbugs-gnu "debbugs-gnu" "List all outstanding Emacs bugs." t))) | 4438 | |
| 4439 | (defun gnus-list-debbugs () | 4439 | (defun gnus-list-debbugs () |
| 4440 | "List all open Gnus bug reports." | 4440 | "List all open Gnus bug reports." |
| 4441 | (interactive) | 4441 | (interactive) |
| 4442 | (require 'debbugs-gnu) | ||
| 4442 | (debbugs-gnu nil "gnus")) | 4443 | (debbugs-gnu nil "gnus")) |
| 4443 | 4444 | ||
| 4444 | ;; Allow redefinition of Gnus functions. | 4445 | ;; Allow redefinition of Gnus functions. |
diff --git a/lisp/gnus/mail-source.el b/lisp/gnus/mail-source.el index 9cc2e6ac09c..7da2a0a441d 100644 --- a/lisp/gnus/mail-source.el +++ b/lisp/gnus/mail-source.el | |||
| @@ -809,6 +809,10 @@ Deleting old (> %s day(s)) incoming mail file `%s'." diff bfile) | |||
| 809 | prescript-delay) | 809 | prescript-delay) |
| 810 | (let ((from (format "%s:%s:%s" server user port)) | 810 | (let ((from (format "%s:%s:%s" server user port)) |
| 811 | (mail-source-string (format "pop:%s@%s" user server)) | 811 | (mail-source-string (format "pop:%s@%s" user server)) |
| 812 | (process-environment (if server | ||
| 813 | (cons (concat "MAILHOST=" server) | ||
| 814 | process-environment) | ||
| 815 | process-environment)) | ||
| 812 | result) | 816 | result) |
| 813 | (when (eq authentication 'password) | 817 | (when (eq authentication 'password) |
| 814 | (setq password | 818 | (setq password |
| @@ -816,8 +820,6 @@ Deleting old (> %s day(s)) incoming mail file `%s'." diff bfile) | |||
| 816 | (cdr (assoc from mail-source-password-cache)) | 820 | (cdr (assoc from mail-source-password-cache)) |
| 817 | (read-passwd | 821 | (read-passwd |
| 818 | (format "Password for %s at %s: " user server))))) | 822 | (format "Password for %s at %s: " user server))))) |
| 819 | (when server | ||
| 820 | (setenv "MAILHOST" server)) | ||
| 821 | (setq result | 823 | (setq result |
| 822 | (cond | 824 | (cond |
| 823 | (program | 825 | (program |
| @@ -877,6 +879,10 @@ Deleting old (> %s day(s)) incoming mail file `%s'." diff bfile) | |||
| 877 | (mail-source-bind (pop source) | 879 | (mail-source-bind (pop source) |
| 878 | (let ((from (format "%s:%s:%s" server user port)) | 880 | (let ((from (format "%s:%s:%s" server user port)) |
| 879 | (mail-source-string (format "pop:%s@%s" user server)) | 881 | (mail-source-string (format "pop:%s@%s" user server)) |
| 882 | (process-environment (if server | ||
| 883 | (cons (concat "MAILHOST=" server) | ||
| 884 | process-environment) | ||
| 885 | process-environment)) | ||
| 880 | result) | 886 | result) |
| 881 | (when (eq authentication 'password) | 887 | (when (eq authentication 'password) |
| 882 | (setq password | 888 | (setq password |
| @@ -886,8 +892,6 @@ Deleting old (> %s day(s)) incoming mail file `%s'." diff bfile) | |||
| 886 | (format "Password for %s at %s: " user server)))) | 892 | (format "Password for %s at %s: " user server)))) |
| 887 | (unless (assoc from mail-source-password-cache) | 893 | (unless (assoc from mail-source-password-cache) |
| 888 | (push (cons from password) mail-source-password-cache))) | 894 | (push (cons from password) mail-source-password-cache))) |
| 889 | (when server | ||
| 890 | (setenv "MAILHOST" server)) | ||
| 891 | (setq result | 895 | (setq result |
| 892 | (cond | 896 | (cond |
| 893 | ;; No easy way to check whether mail is waiting for these. | 897 | ;; No easy way to check whether mail is waiting for these. |
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index 2b2a0a94413..a6638097b47 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el | |||
| @@ -4097,9 +4097,11 @@ Instead, just auto-save the buffer and then bury it." | |||
| 4097 | 4097 | ||
| 4098 | (defun message-bury (buffer) | 4098 | (defun message-bury (buffer) |
| 4099 | "Bury this mail BUFFER." | 4099 | "Bury this mail BUFFER." |
| 4100 | (bury-buffer buffer) | 4100 | (if message-return-action |
| 4101 | (when message-return-action | 4101 | (progn |
| 4102 | (apply (car message-return-action) (cdr message-return-action)))) | 4102 | (bury-buffer buffer) |
| 4103 | (apply (car message-return-action) (cdr message-return-action))) | ||
| 4104 | (with-current-buffer buffer (bury-buffer)))) | ||
| 4103 | 4105 | ||
| 4104 | (defun message-send (&optional arg) | 4106 | (defun message-send (&optional arg) |
| 4105 | "Send the message in the current buffer. | 4107 | "Send the message in the current buffer. |
diff --git a/lisp/gnus/sieve-manage.el b/lisp/gnus/sieve-manage.el index 22c1f7036bf..b96261764e5 100644 --- a/lisp/gnus/sieve-manage.el +++ b/lisp/gnus/sieve-manage.el | |||
| @@ -149,9 +149,10 @@ the server support the authenticator and AUTHENTICATE is a function | |||
| 149 | for doing the actual authentication." | 149 | for doing the actual authentication." |
| 150 | :group 'sieve-manage) | 150 | :group 'sieve-manage) |
| 151 | 151 | ||
| 152 | (defcustom sieve-manage-default-port 2000 | 152 | (defcustom sieve-manage-default-port "sieve" |
| 153 | "Default port number or service name for managesieve protocol." | 153 | "Default port number or service name for managesieve protocol." |
| 154 | :type 'integer | 154 | :type '(choice integer string) |
| 155 | :version "24.4" | ||
| 155 | :group 'sieve-manage) | 156 | :group 'sieve-manage) |
| 156 | 157 | ||
| 157 | (defcustom sieve-manage-default-stream 'network | 158 | (defcustom sieve-manage-default-stream 'network |
diff --git a/lisp/isearch.el b/lisp/isearch.el index b36b250738a..72a125fcecb 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el | |||
| @@ -735,8 +735,9 @@ Other control and meta characters terminate the search | |||
| 735 | and are then executed normally (depending on `search-exit-option'). | 735 | and are then executed normally (depending on `search-exit-option'). |
| 736 | Likewise for function keys and mouse button events. | 736 | Likewise for function keys and mouse button events. |
| 737 | 737 | ||
| 738 | If this function is called non-interactively, it does not return to | 738 | If this function is called non-interactively with a nil NO-RECURSIVE-EDIT, |
| 739 | the calling function until the search is done." | 739 | it does not return to the calling function until the search is done. |
| 740 | See the function `isearch-mode' for more information." | ||
| 740 | 741 | ||
| 741 | (interactive "P\np") | 742 | (interactive "P\np") |
| 742 | (isearch-mode t (not (null regexp-p)) nil (not no-recursive-edit))) | 743 | (isearch-mode t (not (null regexp-p)) nil (not no-recursive-edit))) |
| @@ -799,7 +800,23 @@ as a regexp. See the command `isearch-forward' for more information." | |||
| 799 | 800 | ||
| 800 | (defun isearch-mode (forward &optional regexp op-fun recursive-edit word) | 801 | (defun isearch-mode (forward &optional regexp op-fun recursive-edit word) |
| 801 | "Start Isearch minor mode. | 802 | "Start Isearch minor mode. |
| 802 | It is called by the function `isearch-forward' and other related functions." | 803 | It is called by the function `isearch-forward' and other related functions. |
| 804 | |||
| 805 | The non-nil arg FORWARD means searching in the forward direction. | ||
| 806 | |||
| 807 | The non-nil arg REGEXP does an incremental regular expression search. | ||
| 808 | |||
| 809 | The arg OP-FUN is a function to be called after each input character | ||
| 810 | is processed. (It is not called after characters that exit the search.) | ||
| 811 | |||
| 812 | When the arg RECURSIVE-EDIT is non-nil, this function behaves modally and | ||
| 813 | does not return to the calling function until the search is completed. | ||
| 814 | To behave this way it enters a recursive-edit and exits it when done | ||
| 815 | isearching. | ||
| 816 | |||
| 817 | The arg WORD, if t, does incremental search for a sequence of words, | ||
| 818 | ignoring punctuation. If the value is a function, it is called to | ||
| 819 | convert the search string to a regexp used by regexp search functions." | ||
| 803 | 820 | ||
| 804 | ;; Initialize global vars. | 821 | ;; Initialize global vars. |
| 805 | (setq isearch-forward forward | 822 | (setq isearch-forward forward |
| @@ -1106,8 +1123,9 @@ If MSG is non-nil, use variable `isearch-message', otherwise `isearch-string'." | |||
| 1106 | (curr-msg (if msg isearch-message isearch-string)) | 1123 | (curr-msg (if msg isearch-message isearch-string)) |
| 1107 | succ-msg) | 1124 | succ-msg) |
| 1108 | (when (or (not isearch-success) isearch-error) | 1125 | (when (or (not isearch-success) isearch-error) |
| 1109 | (while (or (not (isearch--state-success (car cmds))) | 1126 | (while (and cmds |
| 1110 | (isearch--state-error (car cmds))) | 1127 | (or (not (isearch--state-success (car cmds))) |
| 1128 | (isearch--state-error (car cmds)))) | ||
| 1111 | (pop cmds)) | 1129 | (pop cmds)) |
| 1112 | (setq succ-msg (and cmds (if msg (isearch--state-message (car cmds)) | 1130 | (setq succ-msg (and cmds (if msg (isearch--state-message (car cmds)) |
| 1113 | (isearch--state-string (car cmds))))) | 1131 | (isearch--state-string (car cmds))))) |
diff --git a/lisp/ldefs-boot.el b/lisp/ldefs-boot.el index 2e05d6b02fb..d2b97986581 100644 --- a/lisp/ldefs-boot.el +++ b/lisp/ldefs-boot.el | |||
| @@ -895,7 +895,7 @@ outline hot-spot navigation (see `allout-mode'). | |||
| 895 | ;;;*** | 895 | ;;;*** |
| 896 | 896 | ||
| 897 | ;;;### (autoloads (ange-ftp-hook-function ange-ftp-reread-dir) "ange-ftp" | 897 | ;;;### (autoloads (ange-ftp-hook-function ange-ftp-reread-dir) "ange-ftp" |
| 898 | ;;;;;; "net/ange-ftp.el" (20763 30266 231060 0)) | 898 | ;;;;;; "net/ange-ftp.el" (20843 54187 671468 0)) |
| 899 | ;;; Generated autoloads from net/ange-ftp.el | 899 | ;;; Generated autoloads from net/ange-ftp.el |
| 900 | 900 | ||
| 901 | (defalias 'ange-ftp-re-read-dir 'ange-ftp-reread-dir) | 901 | (defalias 'ange-ftp-re-read-dir 'ange-ftp-reread-dir) |
| @@ -1656,7 +1656,7 @@ should be non-nil). | |||
| 1656 | 1656 | ||
| 1657 | ;;;### (autoloads (global-auto-revert-mode turn-on-auto-revert-tail-mode | 1657 | ;;;### (autoloads (global-auto-revert-mode turn-on-auto-revert-tail-mode |
| 1658 | ;;;;;; auto-revert-tail-mode turn-on-auto-revert-mode auto-revert-mode) | 1658 | ;;;;;; auto-revert-tail-mode turn-on-auto-revert-mode auto-revert-mode) |
| 1659 | ;;;;;; "autorevert" "autorevert.el" (20767 27320 533690 0)) | 1659 | ;;;;;; "autorevert" "autorevert.el" (20831 63016 738579 0)) |
| 1660 | ;;; Generated autoloads from autorevert.el | 1660 | ;;; Generated autoloads from autorevert.el |
| 1661 | 1661 | ||
| 1662 | (autoload 'auto-revert-mode "autorevert" "\ | 1662 | (autoload 'auto-revert-mode "autorevert" "\ |
| @@ -1860,7 +1860,7 @@ For non-interactive use see also `benchmark-run' and | |||
| 1860 | ;;;*** | 1860 | ;;;*** |
| 1861 | 1861 | ||
| 1862 | ;;;### (autoloads (bibtex-search-entry bibtex-mode bibtex-initialize) | 1862 | ;;;### (autoloads (bibtex-search-entry bibtex-mode bibtex-initialize) |
| 1863 | ;;;;;; "bibtex" "textmodes/bibtex.el" (20709 26818 907104 0)) | 1863 | ;;;;;; "bibtex" "textmodes/bibtex.el" (20842 33318 816618 0)) |
| 1864 | ;;; Generated autoloads from textmodes/bibtex.el | 1864 | ;;; Generated autoloads from textmodes/bibtex.el |
| 1865 | 1865 | ||
| 1866 | (autoload 'bibtex-initialize "bibtex" "\ | 1866 | (autoload 'bibtex-initialize "bibtex" "\ |
| @@ -1868,11 +1868,14 @@ For non-interactive use see also `benchmark-run' and | |||
| 1868 | Visit the BibTeX files defined by `bibtex-files' and return a list | 1868 | Visit the BibTeX files defined by `bibtex-files' and return a list |
| 1869 | of corresponding buffers. | 1869 | of corresponding buffers. |
| 1870 | Initialize in these buffers `bibtex-reference-keys' if not yet set. | 1870 | Initialize in these buffers `bibtex-reference-keys' if not yet set. |
| 1871 | List of BibTeX buffers includes current buffer if CURRENT is non-nil. | 1871 | List of BibTeX buffers includes current buffer if CURRENT is non-nil |
| 1872 | and the current buffer visits a file using `bibtex-mode'. | ||
| 1872 | If FORCE is non-nil, (re)initialize `bibtex-reference-keys' even if | 1873 | If FORCE is non-nil, (re)initialize `bibtex-reference-keys' even if |
| 1873 | already set. If SELECT is non-nil interactively select a BibTeX buffer. | 1874 | already set. If SELECT is non-nil interactively select a BibTeX buffer. |
| 1874 | When called interactively, FORCE is t, CURRENT is t if current buffer uses | 1875 | |
| 1875 | `bibtex-mode', and SELECT is t if current buffer does not use `bibtex-mode', | 1876 | When called interactively, FORCE is t, CURRENT is t if current buffer |
| 1877 | visits a file using `bibtex-mode', and SELECT is t if current buffer | ||
| 1878 | does not use `bibtex-mode', | ||
| 1876 | 1879 | ||
| 1877 | \(fn &optional CURRENT FORCE SELECT)" t nil) | 1880 | \(fn &optional CURRENT FORCE SELECT)" t nil) |
| 1878 | 1881 | ||
| @@ -2109,7 +2112,7 @@ a reflection. | |||
| 2109 | ;;;;;; bookmark-save bookmark-write bookmark-delete bookmark-insert | 2112 | ;;;;;; bookmark-save bookmark-write bookmark-delete bookmark-insert |
| 2110 | ;;;;;; bookmark-rename bookmark-insert-location bookmark-relocate | 2113 | ;;;;;; bookmark-rename bookmark-insert-location bookmark-relocate |
| 2111 | ;;;;;; bookmark-jump-other-window bookmark-jump bookmark-set) "bookmark" | 2114 | ;;;;;; bookmark-jump-other-window bookmark-jump bookmark-set) "bookmark" |
| 2112 | ;;;;;; "bookmark.el" (20793 51383 764318 0)) | 2115 | ;;;;;; "bookmark.el" (20849 6570 598687 0)) |
| 2113 | ;;; Generated autoloads from bookmark.el | 2116 | ;;; Generated autoloads from bookmark.el |
| 2114 | (define-key ctl-x-r-map "b" 'bookmark-jump) | 2117 | (define-key ctl-x-r-map "b" 'bookmark-jump) |
| 2115 | (define-key ctl-x-r-map "m" 'bookmark-set) | 2118 | (define-key ctl-x-r-map "m" 'bookmark-set) |
| @@ -2713,7 +2716,7 @@ Like `bug-reference-mode', but only buttonize in comments and strings. | |||
| 2713 | ;;;;;; batch-byte-compile-if-not-done display-call-tree byte-compile | 2716 | ;;;;;; batch-byte-compile-if-not-done display-call-tree byte-compile |
| 2714 | ;;;;;; compile-defun byte-compile-file byte-recompile-directory | 2717 | ;;;;;; compile-defun byte-compile-file byte-recompile-directory |
| 2715 | ;;;;;; byte-force-recompile byte-compile-enable-warning byte-compile-disable-warning) | 2718 | ;;;;;; byte-force-recompile byte-compile-enable-warning byte-compile-disable-warning) |
| 2716 | ;;;;;; "bytecomp" "emacs-lisp/bytecomp.el" (20780 39352 990623 0)) | 2719 | ;;;;;; "bytecomp" "emacs-lisp/bytecomp.el" (20851 48294 960738 0)) |
| 2717 | ;;; Generated autoloads from emacs-lisp/bytecomp.el | 2720 | ;;; Generated autoloads from emacs-lisp/bytecomp.el |
| 2718 | (put 'byte-compile-dynamic 'safe-local-variable 'booleanp) | 2721 | (put 'byte-compile-dynamic 'safe-local-variable 'booleanp) |
| 2719 | (put 'byte-compile-disable-print-circle 'safe-local-variable 'booleanp) | 2722 | (put 'byte-compile-disable-print-circle 'safe-local-variable 'booleanp) |
| @@ -2872,8 +2875,8 @@ from the cursor position. | |||
| 2872 | 2875 | ||
| 2873 | ;;;### (autoloads (defmath calc-embedded-activate calc-embedded calc-grab-rectangle | 2876 | ;;;### (autoloads (defmath calc-embedded-activate calc-embedded calc-grab-rectangle |
| 2874 | ;;;;;; calc-grab-region full-calc-keypad calc-keypad calc-eval quick-calc | 2877 | ;;;;;; calc-grab-region full-calc-keypad calc-keypad calc-eval quick-calc |
| 2875 | ;;;;;; full-calc calc calc-dispatch) "calc" "calc/calc.el" (20759 | 2878 | ;;;;;; full-calc calc calc-dispatch) "calc" "calc/calc.el" (20863 |
| 2876 | ;;;;;; 33211 414988 0)) | 2879 | ;;;;;; 39461 835648 0)) |
| 2877 | ;;; Generated autoloads from calc/calc.el | 2880 | ;;; Generated autoloads from calc/calc.el |
| 2878 | (define-key ctl-x-map "*" 'calc-dispatch) | 2881 | (define-key ctl-x-map "*" 'calc-dispatch) |
| 2879 | 2882 | ||
| @@ -3090,7 +3093,7 @@ Obsoletes `c-forward-into-nomenclature'. | |||
| 3090 | ;;;*** | 3093 | ;;;*** |
| 3091 | 3094 | ||
| 3092 | ;;;### (autoloads (c-guess-basic-syntax) "cc-engine" "progmodes/cc-engine.el" | 3095 | ;;;### (autoloads (c-guess-basic-syntax) "cc-engine" "progmodes/cc-engine.el" |
| 3093 | ;;;;;; (20791 9657 561026 0)) | 3096 | ;;;;;; (20864 28934 62335 0)) |
| 3094 | ;;; Generated autoloads from progmodes/cc-engine.el | 3097 | ;;; Generated autoloads from progmodes/cc-engine.el |
| 3095 | 3098 | ||
| 3096 | (autoload 'c-guess-basic-syntax "cc-engine" "\ | 3099 | (autoload 'c-guess-basic-syntax "cc-engine" "\ |
| @@ -3203,7 +3206,7 @@ the absolute file name of the file if STYLE-NAME is nil. | |||
| 3203 | 3206 | ||
| 3204 | ;;;### (autoloads (awk-mode pike-mode idl-mode java-mode objc-mode | 3207 | ;;;### (autoloads (awk-mode pike-mode idl-mode java-mode objc-mode |
| 3205 | ;;;;;; c++-mode c-mode c-initialize-cc-mode) "cc-mode" "progmodes/cc-mode.el" | 3208 | ;;;;;; c++-mode c-mode c-initialize-cc-mode) "cc-mode" "progmodes/cc-mode.el" |
| 3206 | ;;;;;; (20709 26818 907104 0)) | 3209 | ;;;;;; (20845 9511 656701 0)) |
| 3207 | ;;; Generated autoloads from progmodes/cc-mode.el | 3210 | ;;; Generated autoloads from progmodes/cc-mode.el |
| 3208 | 3211 | ||
| 3209 | (autoload 'c-initialize-cc-mode "cc-mode" "\ | 3212 | (autoload 'c-initialize-cc-mode "cc-mode" "\ |
| @@ -4218,7 +4221,7 @@ If FRAME cannot display COLOR, return nil. | |||
| 4218 | ;;;### (autoloads (comint-redirect-results-list-from-process comint-redirect-results-list | 4221 | ;;;### (autoloads (comint-redirect-results-list-from-process comint-redirect-results-list |
| 4219 | ;;;;;; comint-redirect-send-command-to-process comint-redirect-send-command | 4222 | ;;;;;; comint-redirect-send-command-to-process comint-redirect-send-command |
| 4220 | ;;;;;; comint-run make-comint make-comint-in-buffer) "comint" "comint.el" | 4223 | ;;;;;; comint-run make-comint make-comint-in-buffer) "comint" "comint.el" |
| 4221 | ;;;;;; (20797 44848 327754 0)) | 4224 | ;;;;;; (20864 60326 774861 0)) |
| 4222 | ;;; Generated autoloads from comint.el | 4225 | ;;; Generated autoloads from comint.el |
| 4223 | 4226 | ||
| 4224 | (defvar comint-output-filter-functions '(ansi-color-process-output comint-postoutput-scroll-to-bottom comint-watch-for-password-prompt) "\ | 4227 | (defvar comint-output-filter-functions '(ansi-color-process-output comint-postoutput-scroll-to-bottom comint-watch-for-password-prompt) "\ |
| @@ -4355,8 +4358,8 @@ on third call it again advances points to the next difference and so on. | |||
| 4355 | ;;;;;; compilation-shell-minor-mode compilation-mode compilation-start | 4358 | ;;;;;; compilation-shell-minor-mode compilation-mode compilation-start |
| 4356 | ;;;;;; compile compilation-disable-input compile-command compilation-search-path | 4359 | ;;;;;; compile compilation-disable-input compile-command compilation-search-path |
| 4357 | ;;;;;; compilation-ask-about-save compilation-window-height compilation-start-hook | 4360 | ;;;;;; compilation-ask-about-save compilation-window-height compilation-start-hook |
| 4358 | ;;;;;; compilation-mode-hook) "compile" "progmodes/compile.el" (20808 | 4361 | ;;;;;; compilation-mode-hook) "compile" "progmodes/compile.el" (20856 |
| 4359 | ;;;;;; 15152 87827 0)) | 4362 | ;;;;;; 32301 830403 0)) |
| 4360 | ;;; Generated autoloads from progmodes/compile.el | 4363 | ;;; Generated autoloads from progmodes/compile.el |
| 4361 | 4364 | ||
| 4362 | (defvar compilation-mode-hook nil "\ | 4365 | (defvar compilation-mode-hook nil "\ |
| @@ -5142,7 +5145,7 @@ Enable CUA selection mode without the C-z/C-x/C-c/C-v bindings. | |||
| 5142 | ;;;;;; customize-mode customize customize-push-and-save customize-save-variable | 5145 | ;;;;;; customize-mode customize customize-push-and-save customize-save-variable |
| 5143 | ;;;;;; customize-set-variable customize-set-value custom-menu-sort-alphabetically | 5146 | ;;;;;; customize-set-variable customize-set-value custom-menu-sort-alphabetically |
| 5144 | ;;;;;; custom-buffer-sort-alphabetically custom-browse-sort-alphabetically) | 5147 | ;;;;;; custom-buffer-sort-alphabetically custom-browse-sort-alphabetically) |
| 5145 | ;;;;;; "cus-edit" "cus-edit.el" (20762 9398 526093 0)) | 5148 | ;;;;;; "cus-edit" "cus-edit.el" (20841 12463 538770 0)) |
| 5146 | ;;; Generated autoloads from cus-edit.el | 5149 | ;;; Generated autoloads from cus-edit.el |
| 5147 | 5150 | ||
| 5148 | (defvar custom-browse-sort-alphabetically nil "\ | 5151 | (defvar custom-browse-sort-alphabetically nil "\ |
| @@ -5454,8 +5457,8 @@ The format is suitable for use with `easy-menu-define'. | |||
| 5454 | ;;;*** | 5457 | ;;;*** |
| 5455 | 5458 | ||
| 5456 | ;;;### (autoloads (customize-themes describe-theme custom-theme-visit-theme | 5459 | ;;;### (autoloads (customize-themes describe-theme custom-theme-visit-theme |
| 5457 | ;;;;;; customize-create-theme) "cus-theme" "cus-theme.el" (20709 | 5460 | ;;;;;; customize-create-theme) "cus-theme" "cus-theme.el" (20841 |
| 5458 | ;;;;;; 26818 907104 0)) | 5461 | ;;;;;; 12463 538770 0)) |
| 5459 | ;;; Generated autoloads from cus-theme.el | 5462 | ;;; Generated autoloads from cus-theme.el |
| 5460 | 5463 | ||
| 5461 | (autoload 'customize-create-theme "cus-theme" "\ | 5464 | (autoload 'customize-create-theme "cus-theme" "\ |
| @@ -5545,7 +5548,7 @@ See `cwarn-mode' for more information on Cwarn mode. | |||
| 5545 | 5548 | ||
| 5546 | ;;;### (autoloads (standard-display-cyrillic-translit cyrillic-encode-alternativnyj-char | 5549 | ;;;### (autoloads (standard-display-cyrillic-translit cyrillic-encode-alternativnyj-char |
| 5547 | ;;;;;; cyrillic-encode-koi8-r-char) "cyril-util" "language/cyril-util.el" | 5550 | ;;;;;; cyrillic-encode-koi8-r-char) "cyril-util" "language/cyril-util.el" |
| 5548 | ;;;;;; (20709 26818 907104 0)) | 5551 | ;;;;;; (20826 45095 436233 0)) |
| 5549 | ;;; Generated autoloads from language/cyril-util.el | 5552 | ;;; Generated autoloads from language/cyril-util.el |
| 5550 | 5553 | ||
| 5551 | (autoload 'cyrillic-encode-koi8-r-char "cyril-util" "\ | 5554 | (autoload 'cyrillic-encode-koi8-r-char "cyril-util" "\ |
| @@ -6006,7 +6009,7 @@ relevant to POS. | |||
| 6006 | ;;;### (autoloads (desktop-revert desktop-save-in-desktop-dir desktop-change-dir | 6009 | ;;;### (autoloads (desktop-revert desktop-save-in-desktop-dir desktop-change-dir |
| 6007 | ;;;;;; desktop-load-default desktop-read desktop-remove desktop-save | 6010 | ;;;;;; desktop-load-default desktop-read desktop-remove desktop-save |
| 6008 | ;;;;;; desktop-clear desktop-locals-to-save desktop-save-mode) "desktop" | 6011 | ;;;;;; desktop-clear desktop-locals-to-save desktop-save-mode) "desktop" |
| 6009 | ;;;;;; "desktop.el" (20817 30120 173418 0)) | 6012 | ;;;;;; "desktop.el" (20860 63270 684173 0)) |
| 6010 | ;;; Generated autoloads from desktop.el | 6013 | ;;; Generated autoloads from desktop.el |
| 6011 | 6014 | ||
| 6012 | (defvar desktop-save-mode nil "\ | 6015 | (defvar desktop-save-mode nil "\ |
| @@ -6144,9 +6147,10 @@ Furthermore, it clears the variables listed in `desktop-globals-to-clear'. | |||
| 6144 | Save the desktop in a desktop file. | 6147 | Save the desktop in a desktop file. |
| 6145 | Parameter DIRNAME specifies where to save the desktop file. | 6148 | Parameter DIRNAME specifies where to save the desktop file. |
| 6146 | Optional parameter RELEASE says whether we're done with this desktop. | 6149 | Optional parameter RELEASE says whether we're done with this desktop. |
| 6147 | See also `desktop-base-file-name'. | 6150 | If AUTO-SAVE is non-nil, compare the saved contents to the one last saved, |
| 6151 | and don't save the buffer if they are the same. | ||
| 6148 | 6152 | ||
| 6149 | \(fn DIRNAME &optional RELEASE)" t nil) | 6153 | \(fn DIRNAME &optional RELEASE AUTO-SAVE)" t nil) |
| 6150 | 6154 | ||
| 6151 | (autoload 'desktop-remove "desktop" "\ | 6155 | (autoload 'desktop-remove "desktop" "\ |
| 6152 | Delete desktop file in `desktop-dirname'. | 6156 | Delete desktop file in `desktop-dirname'. |
| @@ -6726,8 +6730,8 @@ Locate SOA record and increment the serial field. | |||
| 6726 | ;;;*** | 6730 | ;;;*** |
| 6727 | 6731 | ||
| 6728 | ;;;### (autoloads (doc-view-bookmark-jump doc-view-minor-mode doc-view-mode-maybe | 6732 | ;;;### (autoloads (doc-view-bookmark-jump doc-view-minor-mode doc-view-mode-maybe |
| 6729 | ;;;;;; doc-view-mode doc-view-mode-p) "doc-view" "doc-view.el" (20806 | 6733 | ;;;;;; doc-view-mode doc-view-mode-p) "doc-view" "doc-view.el" (20845 |
| 6730 | ;;;;;; 59818 347907 0)) | 6734 | ;;;;;; 9511 656701 0)) |
| 6731 | ;;; Generated autoloads from doc-view.el | 6735 | ;;; Generated autoloads from doc-view.el |
| 6732 | 6736 | ||
| 6733 | (autoload 'doc-view-mode-p "doc-view" "\ | 6737 | (autoload 'doc-view-mode-p "doc-view" "\ |
| @@ -7607,7 +7611,7 @@ an EDE controlled project. | |||
| 7607 | 7611 | ||
| 7608 | ;;;### (autoloads (edebug-all-forms edebug-all-defs edebug-eval-top-level-form | 7612 | ;;;### (autoloads (edebug-all-forms edebug-all-defs edebug-eval-top-level-form |
| 7609 | ;;;;;; edebug-basic-spec edebug-all-forms edebug-all-defs) "edebug" | 7613 | ;;;;;; edebug-basic-spec edebug-all-forms edebug-all-defs) "edebug" |
| 7610 | ;;;;;; "emacs-lisp/edebug.el" (20825 24233 991089 0)) | 7614 | ;;;;;; "emacs-lisp/edebug.el" (20834 39208 838628 0)) |
| 7611 | ;;; Generated autoloads from emacs-lisp/edebug.el | 7615 | ;;; Generated autoloads from emacs-lisp/edebug.el |
| 7612 | 7616 | ||
| 7613 | (defvar edebug-all-defs nil "\ | 7617 | (defvar edebug-all-defs nil "\ |
| @@ -8166,7 +8170,7 @@ Emacs Lisp mode) that support ElDoc.") | |||
| 8166 | ;;;*** | 8170 | ;;;*** |
| 8167 | 8171 | ||
| 8168 | ;;;### (autoloads (electric-layout-mode electric-pair-mode electric-indent-mode) | 8172 | ;;;### (autoloads (electric-layout-mode electric-pair-mode electric-indent-mode) |
| 8169 | ;;;;;; "electric" "electric.el" (20709 26818 907104 0)) | 8173 | ;;;;;; "electric" "electric.el" (20829 21286 719109 0)) |
| 8170 | ;;; Generated autoloads from electric.el | 8174 | ;;; Generated autoloads from electric.el |
| 8171 | 8175 | ||
| 8172 | (defvar electric-indent-chars '(10) "\ | 8176 | (defvar electric-indent-chars '(10) "\ |
| @@ -8768,7 +8772,7 @@ if ARG is omitted or nil. | |||
| 8768 | 8772 | ||
| 8769 | ;;;*** | 8773 | ;;;*** |
| 8770 | 8774 | ||
| 8771 | ;;;### (autoloads (epg-make-context) "epg" "epg.el" (20712 3008 596088 | 8775 | ;;;### (autoloads (epg-make-context) "epg" "epg.el" (20853 3623 384273 |
| 8772 | ;;;;;; 0)) | 8776 | ;;;;;; 0)) |
| 8773 | ;;; Generated autoloads from epg.el | 8777 | ;;; Generated autoloads from epg.el |
| 8774 | 8778 | ||
| @@ -9316,7 +9320,7 @@ Add a file to `erc-xdcc-files'. | |||
| 9316 | 9320 | ||
| 9317 | ;;;### (autoloads (ert-describe-test ert-run-tests-interactively | 9321 | ;;;### (autoloads (ert-describe-test ert-run-tests-interactively |
| 9318 | ;;;;;; ert-run-tests-batch-and-exit ert-run-tests-batch ert-deftest) | 9322 | ;;;;;; ert-run-tests-batch-and-exit ert-run-tests-batch ert-deftest) |
| 9319 | ;;;;;; "ert" "emacs-lisp/ert.el" (20751 39094 700824 0)) | 9323 | ;;;;;; "ert" "emacs-lisp/ert.el" (20834 39208 838628 0)) |
| 9320 | ;;; Generated autoloads from emacs-lisp/ert.el | 9324 | ;;; Generated autoloads from emacs-lisp/ert.el |
| 9321 | 9325 | ||
| 9322 | (autoload 'ert-deftest "ert" "\ | 9326 | (autoload 'ert-deftest "ert" "\ |
| @@ -10246,8 +10250,8 @@ with no args, if that value is non-nil. | |||
| 10246 | ;;;### (autoloads (variable-pitch-mode buffer-face-toggle buffer-face-set | 10250 | ;;;### (autoloads (variable-pitch-mode buffer-face-toggle buffer-face-set |
| 10247 | ;;;;;; buffer-face-mode text-scale-adjust text-scale-decrease text-scale-increase | 10251 | ;;;;;; buffer-face-mode text-scale-adjust text-scale-decrease text-scale-increase |
| 10248 | ;;;;;; text-scale-set face-remap-set-base face-remap-reset-base | 10252 | ;;;;;; text-scale-set face-remap-set-base face-remap-reset-base |
| 10249 | ;;;;;; face-remap-add-relative) "face-remap" "face-remap.el" (20709 | 10253 | ;;;;;; face-remap-add-relative) "face-remap" "face-remap.el" (20841 |
| 10250 | ;;;;;; 26818 907104 0)) | 10254 | ;;;;;; 12463 538770 0)) |
| 10251 | ;;; Generated autoloads from face-remap.el | 10255 | ;;; Generated autoloads from face-remap.el |
| 10252 | 10256 | ||
| 10253 | (autoload 'face-remap-add-relative "face-remap" "\ | 10257 | (autoload 'face-remap-add-relative "face-remap" "\ |
| @@ -11100,7 +11104,7 @@ Turn flymake mode off. | |||
| 11100 | 11104 | ||
| 11101 | ;;;### (autoloads (flyspell-buffer flyspell-region flyspell-mode-off | 11105 | ;;;### (autoloads (flyspell-buffer flyspell-region flyspell-mode-off |
| 11102 | ;;;;;; turn-off-flyspell turn-on-flyspell flyspell-mode flyspell-prog-mode) | 11106 | ;;;;;; turn-off-flyspell turn-on-flyspell flyspell-mode flyspell-prog-mode) |
| 11103 | ;;;;;; "flyspell" "textmodes/flyspell.el" (20721 17977 14204 0)) | 11107 | ;;;;;; "flyspell" "textmodes/flyspell.el" (20847 51240 240216 0)) |
| 11104 | ;;; Generated autoloads from textmodes/flyspell.el | 11108 | ;;; Generated autoloads from textmodes/flyspell.el |
| 11105 | 11109 | ||
| 11106 | (autoload 'flyspell-prog-mode "flyspell" "\ | 11110 | (autoload 'flyspell-prog-mode "flyspell" "\ |
| @@ -11425,7 +11429,7 @@ and choose the directory as the fortune-file. | |||
| 11425 | ;;;*** | 11429 | ;;;*** |
| 11426 | 11430 | ||
| 11427 | ;;;### (autoloads (gdb gdb-enable-debug) "gdb-mi" "progmodes/gdb-mi.el" | 11431 | ;;;### (autoloads (gdb gdb-enable-debug) "gdb-mi" "progmodes/gdb-mi.el" |
| 11428 | ;;;;;; (20799 169 640767 0)) | 11432 | ;;;;;; (20851 48294 960738 0)) |
| 11429 | ;;; Generated autoloads from progmodes/gdb-mi.el | 11433 | ;;; Generated autoloads from progmodes/gdb-mi.el |
| 11430 | 11434 | ||
| 11431 | (defvar gdb-enable-debug nil "\ | 11435 | (defvar gdb-enable-debug nil "\ |
| @@ -11654,8 +11658,8 @@ DEFAULT-MAP specifies the default key map for ICON-LIST. | |||
| 11654 | ;;;*** | 11658 | ;;;*** |
| 11655 | 11659 | ||
| 11656 | ;;;### (autoloads (gnus gnus-other-frame gnus-slave gnus-no-server | 11660 | ;;;### (autoloads (gnus gnus-other-frame gnus-slave gnus-no-server |
| 11657 | ;;;;;; gnus-slave-no-server) "gnus" "gnus/gnus.el" (20709 26818 | 11661 | ;;;;;; gnus-slave-no-server) "gnus" "gnus/gnus.el" (20860 63270 |
| 11658 | ;;;;;; 907104 0)) | 11662 | ;;;;;; 684173 0)) |
| 11659 | ;;; Generated autoloads from gnus/gnus.el | 11663 | ;;; Generated autoloads from gnus/gnus.el |
| 11660 | (when (fboundp 'custom-autoload) | 11664 | (when (fboundp 'custom-autoload) |
| 11661 | (custom-autoload 'gnus-select-method "gnus")) | 11665 | (custom-autoload 'gnus-select-method "gnus")) |
| @@ -12195,7 +12199,7 @@ Calling (gnus-group-split-fancy nil nil \"mail.others\") returns: | |||
| 12195 | ;;;*** | 12199 | ;;;*** |
| 12196 | 12200 | ||
| 12197 | ;;;### (autoloads (gnus-button-reply gnus-button-mailto gnus-msg-mail) | 12201 | ;;;### (autoloads (gnus-button-reply gnus-button-mailto gnus-msg-mail) |
| 12198 | ;;;;;; "gnus-msg" "gnus/gnus-msg.el" (20820 6311 856169 0)) | 12202 | ;;;;;; "gnus-msg" "gnus/gnus-msg.el" (20858 21542 723007 0)) |
| 12199 | ;;; Generated autoloads from gnus/gnus-msg.el | 12203 | ;;; Generated autoloads from gnus/gnus-msg.el |
| 12200 | 12204 | ||
| 12201 | (autoload 'gnus-msg-mail "gnus-msg" "\ | 12205 | (autoload 'gnus-msg-mail "gnus-msg" "\ |
| @@ -12403,7 +12407,7 @@ Declare back end NAME with ABILITIES as a Gnus back end. | |||
| 12403 | ;;;*** | 12407 | ;;;*** |
| 12404 | 12408 | ||
| 12405 | ;;;### (autoloads (gnus-summary-bookmark-jump) "gnus-sum" "gnus/gnus-sum.el" | 12409 | ;;;### (autoloads (gnus-summary-bookmark-jump) "gnus-sum" "gnus/gnus-sum.el" |
| 12406 | ;;;;;; (20791 9657 561026 0)) | 12410 | ;;;;;; (20856 32301 830403 0)) |
| 12407 | ;;; Generated autoloads from gnus/gnus-sum.el | 12411 | ;;; Generated autoloads from gnus/gnus-sum.el |
| 12408 | 12412 | ||
| 12409 | (autoload 'gnus-summary-bookmark-jump "gnus-sum" "\ | 12413 | (autoload 'gnus-summary-bookmark-jump "gnus-sum" "\ |
| @@ -12726,8 +12730,8 @@ the form \"WINDOW-ID PIXMAP-ID\". Value is non-nil if successful. | |||
| 12726 | ;;;*** | 12730 | ;;;*** |
| 12727 | 12731 | ||
| 12728 | ;;;### (autoloads (gud-tooltip-mode gdb-script-mode jdb pdb perldb | 12732 | ;;;### (autoloads (gud-tooltip-mode gdb-script-mode jdb pdb perldb |
| 12729 | ;;;;;; xdb dbx sdb gud-gdb) "gud" "progmodes/gud.el" (20709 26818 | 12733 | ;;;;;; xdb dbx sdb gud-gdb) "gud" "progmodes/gud.el" (20851 48294 |
| 12730 | ;;;;;; 907104 0)) | 12734 | ;;;;;; 960738 0)) |
| 12731 | ;;; Generated autoloads from progmodes/gud.el | 12735 | ;;; Generated autoloads from progmodes/gud.el |
| 12732 | 12736 | ||
| 12733 | (autoload 'gud-gdb "gud" "\ | 12737 | (autoload 'gud-gdb "gud" "\ |
| @@ -14532,8 +14536,8 @@ The main features of this mode are | |||
| 14532 | ;;;;;; ido-find-alternate-file ido-find-file-other-window ido-find-file | 14536 | ;;;;;; ido-find-alternate-file ido-find-file-other-window ido-find-file |
| 14533 | ;;;;;; ido-find-file-in-dir ido-switch-buffer-other-frame ido-insert-buffer | 14537 | ;;;;;; ido-find-file-in-dir ido-switch-buffer-other-frame ido-insert-buffer |
| 14534 | ;;;;;; ido-kill-buffer ido-display-buffer ido-switch-buffer-other-window | 14538 | ;;;;;; ido-kill-buffer ido-display-buffer ido-switch-buffer-other-window |
| 14535 | ;;;;;; ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (20809 | 14539 | ;;;;;; ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (20831 |
| 14536 | ;;;;;; 36008 682209 0)) | 14540 | ;;;;;; 63016 738579 0)) |
| 14537 | ;;; Generated autoloads from ido.el | 14541 | ;;; Generated autoloads from ido.el |
| 14538 | 14542 | ||
| 14539 | (defvar ido-mode nil "\ | 14543 | (defvar ido-mode nil "\ |
| @@ -15413,7 +15417,7 @@ for more information. | |||
| 15413 | 15417 | ||
| 15414 | ;;;### (autoloads (indian-2-column-to-ucs-region in-is13194-pre-write-conversion | 15418 | ;;;### (autoloads (indian-2-column-to-ucs-region in-is13194-pre-write-conversion |
| 15415 | ;;;;;; in-is13194-post-read-conversion indian-compose-string indian-compose-region) | 15419 | ;;;;;; in-is13194-post-read-conversion indian-compose-string indian-compose-region) |
| 15416 | ;;;;;; "ind-util" "language/ind-util.el" (20709 26818 907104 0)) | 15420 | ;;;;;; "ind-util" "language/ind-util.el" (20826 45095 436233 0)) |
| 15417 | ;;; Generated autoloads from language/ind-util.el | 15421 | ;;; Generated autoloads from language/ind-util.el |
| 15418 | 15422 | ||
| 15419 | (autoload 'indian-compose-region "ind-util" "\ | 15423 | (autoload 'indian-compose-region "ind-util" "\ |
| @@ -15466,7 +15470,7 @@ of `inferior-lisp-program'). Runs the hooks from | |||
| 15466 | ;;;;;; Info-goto-emacs-key-command-node Info-goto-emacs-command-node | 15470 | ;;;;;; Info-goto-emacs-key-command-node Info-goto-emacs-command-node |
| 15467 | ;;;;;; Info-mode info-finder info-apropos Info-index Info-directory | 15471 | ;;;;;; Info-mode info-finder info-apropos Info-index Info-directory |
| 15468 | ;;;;;; Info-on-current-buffer info-standalone info-emacs-bug info-emacs-manual | 15472 | ;;;;;; Info-on-current-buffer info-standalone info-emacs-bug info-emacs-manual |
| 15469 | ;;;;;; info info-other-window) "info" "info.el" (20813 33065 721081 | 15473 | ;;;;;; info info-other-window) "info" "info.el" (20841 12463 538770 |
| 15470 | ;;;;;; 0)) | 15474 | ;;;;;; 0)) |
| 15471 | ;;; Generated autoloads from info.el | 15475 | ;;; Generated autoloads from info.el |
| 15472 | 15476 | ||
| @@ -15680,7 +15684,7 @@ Otherwise, visit the manual in a new Info buffer. | |||
| 15680 | 15684 | ||
| 15681 | ;;;### (autoloads (info-complete-file info-complete-symbol info-lookup-file | 15685 | ;;;### (autoloads (info-complete-file info-complete-symbol info-lookup-file |
| 15682 | ;;;;;; info-lookup-symbol info-lookup-reset) "info-look" "info-look.el" | 15686 | ;;;;;; info-lookup-symbol info-lookup-reset) "info-look" "info-look.el" |
| 15683 | ;;;;;; (20771 24374 643644 0)) | 15687 | ;;;;;; (20854 24486 190633 0)) |
| 15684 | ;;; Generated autoloads from info-look.el | 15688 | ;;; Generated autoloads from info-look.el |
| 15685 | 15689 | ||
| 15686 | (autoload 'info-lookup-reset "info-look" "\ | 15690 | (autoload 'info-lookup-reset "info-look" "\ |
| @@ -16011,7 +16015,7 @@ Add submenus to the File menu, to convert to and from various formats. | |||
| 16011 | ;;;;;; ispell-buffer ispell-comments-and-strings ispell-region ispell-change-dictionary | 16015 | ;;;;;; ispell-buffer ispell-comments-and-strings ispell-region ispell-change-dictionary |
| 16012 | ;;;;;; ispell-kill-ispell ispell-help ispell-pdict-save ispell-word | 16016 | ;;;;;; ispell-kill-ispell ispell-help ispell-pdict-save ispell-word |
| 16013 | ;;;;;; ispell-personal-dictionary) "ispell" "textmodes/ispell.el" | 16017 | ;;;;;; ispell-personal-dictionary) "ispell" "textmodes/ispell.el" |
| 16014 | ;;;;;; (20787 12616 976036 0)) | 16018 | ;;;;;; (20847 51240 240216 0)) |
| 16015 | ;;; Generated autoloads from textmodes/ispell.el | 16019 | ;;; Generated autoloads from textmodes/ispell.el |
| 16016 | 16020 | ||
| 16017 | (put 'ispell-check-comments 'safe-local-variable (lambda (a) (memq a '(nil t exclusive)))) | 16021 | (put 'ispell-check-comments 'safe-local-variable (lambda (a) (memq a '(nil t exclusive)))) |
| @@ -16492,7 +16496,7 @@ and the return value is the length of the conversion. | |||
| 16492 | ;;;### (autoloads (kmacro-end-call-mouse kmacro-end-and-call-macro | 16496 | ;;;### (autoloads (kmacro-end-call-mouse kmacro-end-and-call-macro |
| 16493 | ;;;;;; kmacro-end-or-call-macro kmacro-start-macro-or-insert-counter | 16497 | ;;;;;; kmacro-end-or-call-macro kmacro-start-macro-or-insert-counter |
| 16494 | ;;;;;; kmacro-call-macro kmacro-end-macro kmacro-start-macro kmacro-exec-ring-item) | 16498 | ;;;;;; kmacro-call-macro kmacro-end-macro kmacro-start-macro kmacro-exec-ring-item) |
| 16495 | ;;;;;; "kmacro" "kmacro.el" (20824 3367 300658 0)) | 16499 | ;;;;;; "kmacro" "kmacro.el" (20830 42150 757296 0)) |
| 16496 | ;;; Generated autoloads from kmacro.el | 16500 | ;;; Generated autoloads from kmacro.el |
| 16497 | (global-set-key "\C-x(" 'kmacro-start-macro) | 16501 | (global-set-key "\C-x(" 'kmacro-start-macro) |
| 16498 | (global-set-key "\C-x)" 'kmacro-end-macro) | 16502 | (global-set-key "\C-x)" 'kmacro-end-macro) |
| @@ -16651,7 +16655,7 @@ Use \\[describe-mode] for more info. | |||
| 16651 | 16655 | ||
| 16652 | ;;;### (autoloads (lao-compose-region lao-composition-function lao-transcribe-roman-to-lao-string | 16656 | ;;;### (autoloads (lao-compose-region lao-composition-function lao-transcribe-roman-to-lao-string |
| 16653 | ;;;;;; lao-transcribe-single-roman-syllable-to-lao lao-compose-string) | 16657 | ;;;;;; lao-transcribe-single-roman-syllable-to-lao lao-compose-string) |
| 16654 | ;;;;;; "lao-util" "language/lao-util.el" (20709 26818 907104 0)) | 16658 | ;;;;;; "lao-util" "language/lao-util.el" (20826 45095 436233 0)) |
| 16655 | ;;; Generated autoloads from language/lao-util.el | 16659 | ;;; Generated autoloads from language/lao-util.el |
| 16656 | 16660 | ||
| 16657 | (autoload 'lao-compose-string "lao-util" "\ | 16661 | (autoload 'lao-compose-string "lao-util" "\ |
| @@ -16723,8 +16727,8 @@ coding system names is determined from `latex-inputenc-coding-alist'. | |||
| 16723 | ;;;*** | 16727 | ;;;*** |
| 16724 | 16728 | ||
| 16725 | ;;;### (autoloads (latin1-display-ucs-per-lynx latin1-display latin1-display) | 16729 | ;;;### (autoloads (latin1-display-ucs-per-lynx latin1-display latin1-display) |
| 16726 | ;;;;;; "latin1-disp" "international/latin1-disp.el" (20709 26818 | 16730 | ;;;;;; "latin1-disp" "international/latin1-disp.el" (20826 45095 |
| 16727 | ;;;;;; 907104 0)) | 16731 | ;;;;;; 436233 0)) |
| 16728 | ;;; Generated autoloads from international/latin1-disp.el | 16732 | ;;; Generated autoloads from international/latin1-disp.el |
| 16729 | 16733 | ||
| 16730 | (defvar latin1-display nil "\ | 16734 | (defvar latin1-display nil "\ |
| @@ -16944,8 +16948,8 @@ done. Otherwise, it uses the current buffer. | |||
| 16944 | 16948 | ||
| 16945 | ;;;*** | 16949 | ;;;*** |
| 16946 | 16950 | ||
| 16947 | ;;;### (autoloads (log-view-mode) "log-view" "vc/log-view.el" (20709 | 16951 | ;;;### (autoloads (log-view-mode) "log-view" "vc/log-view.el" (20860 |
| 16948 | ;;;;;; 26818 907104 0)) | 16952 | ;;;;;; 63270 684173 0)) |
| 16949 | ;;; Generated autoloads from vc/log-view.el | 16953 | ;;; Generated autoloads from vc/log-view.el |
| 16950 | 16954 | ||
| 16951 | (autoload 'log-view-mode "log-view" "\ | 16955 | (autoload 'log-view-mode "log-view" "\ |
| @@ -17053,7 +17057,7 @@ for further customization of the printer command. | |||
| 17053 | ;;;*** | 17057 | ;;;*** |
| 17054 | 17058 | ||
| 17055 | ;;;### (autoloads (ls-lisp-support-shell-wildcards) "ls-lisp" "ls-lisp.el" | 17059 | ;;;### (autoloads (ls-lisp-support-shell-wildcards) "ls-lisp" "ls-lisp.el" |
| 17056 | ;;;;;; (20709 26818 907104 0)) | 17060 | ;;;;;; (20860 63270 684173 0)) |
| 17057 | ;;; Generated autoloads from ls-lisp.el | 17061 | ;;; Generated autoloads from ls-lisp.el |
| 17058 | 17062 | ||
| 17059 | (defvar ls-lisp-support-shell-wildcards t "\ | 17063 | (defvar ls-lisp-support-shell-wildcards t "\ |
| @@ -17320,8 +17324,8 @@ matches may be returned from the message body. | |||
| 17320 | ;;;*** | 17324 | ;;;*** |
| 17321 | 17325 | ||
| 17322 | ;;;### (autoloads (define-mail-abbrev build-mail-abbrevs mail-abbrevs-setup | 17326 | ;;;### (autoloads (define-mail-abbrev build-mail-abbrevs mail-abbrevs-setup |
| 17323 | ;;;;;; mail-abbrevs-mode) "mailabbrev" "mail/mailabbrev.el" (20709 | 17327 | ;;;;;; mail-abbrevs-mode) "mailabbrev" "mail/mailabbrev.el" (20847 |
| 17324 | ;;;;;; 26818 907104 0)) | 17328 | ;;;;;; 51240 240216 0)) |
| 17325 | ;;; Generated autoloads from mail/mailabbrev.el | 17329 | ;;; Generated autoloads from mail/mailabbrev.el |
| 17326 | 17330 | ||
| 17327 | (defvar mail-abbrevs-mode nil "\ | 17331 | (defvar mail-abbrevs-mode nil "\ |
| @@ -17682,7 +17686,7 @@ recursion depth in the minibuffer prompt. This is only useful if | |||
| 17682 | ;;;;;; message-forward-make-body message-forward message-recover | 17686 | ;;;;;; message-forward-make-body message-forward message-recover |
| 17683 | ;;;;;; message-supersede message-cancel-news message-followup message-wide-reply | 17687 | ;;;;;; message-supersede message-cancel-news message-followup message-wide-reply |
| 17684 | ;;;;;; message-reply message-news message-mail message-mode) "message" | 17688 | ;;;;;; message-reply message-news message-mail message-mode) "message" |
| 17685 | ;;;;;; "gnus/message.el" (20808 15152 87827 0)) | 17689 | ;;;;;; "gnus/message.el" (20858 21542 723007 0)) |
| 17686 | ;;; Generated autoloads from gnus/message.el | 17690 | ;;; Generated autoloads from gnus/message.el |
| 17687 | 17691 | ||
| 17688 | (define-mail-user-agent 'message-user-agent 'message-mail 'message-send-and-exit 'message-kill-buffer 'message-send-hook) | 17692 | (define-mail-user-agent 'message-user-agent 'message-mail 'message-send-and-exit 'message-kill-buffer 'message-send-hook) |
| @@ -18361,7 +18365,7 @@ Assume text has been decoded if DECODED is non-nil. | |||
| 18361 | ;;;*** | 18365 | ;;;*** |
| 18362 | 18366 | ||
| 18363 | ;;;### (autoloads (mml-attach-file mml-to-mime) "mml" "gnus/mml.el" | 18367 | ;;;### (autoloads (mml-attach-file mml-to-mime) "mml" "gnus/mml.el" |
| 18364 | ;;;;;; (20745 310 425822 0)) | 18368 | ;;;;;; (20829 21286 719109 0)) |
| 18365 | ;;; Generated autoloads from gnus/mml.el | 18369 | ;;; Generated autoloads from gnus/mml.el |
| 18366 | 18370 | ||
| 18367 | (autoload 'mml-to-mime "mml" "\ | 18371 | (autoload 'mml-to-mime "mml" "\ |
| @@ -18560,7 +18564,7 @@ To test this function, evaluate: | |||
| 18560 | 18564 | ||
| 18561 | ;;;*** | 18565 | ;;;*** |
| 18562 | 18566 | ||
| 18563 | ;;;### (autoloads (mpc) "mpc" "mpc.el" (20822 48073 524485 0)) | 18567 | ;;;### (autoloads (mpc) "mpc" "mpc.el" (20838 36262 626321 0)) |
| 18564 | ;;; Generated autoloads from mpc.el | 18568 | ;;; Generated autoloads from mpc.el |
| 18565 | 18569 | ||
| 18566 | (autoload 'mpc "mpc" "\ | 18570 | (autoload 'mpc "mpc" "\ |
| @@ -18748,7 +18752,7 @@ The default is 20. If LIMIT is negative, do not limit the listing. | |||
| 18748 | ;;;;;; coding-system-translation-table-for-decode coding-system-pre-write-conversion | 18752 | ;;;;;; coding-system-translation-table-for-decode coding-system-pre-write-conversion |
| 18749 | ;;;;;; coding-system-post-read-conversion lookup-nested-alist set-nested-alist | 18753 | ;;;;;; coding-system-post-read-conversion lookup-nested-alist set-nested-alist |
| 18750 | ;;;;;; truncate-string-to-width store-substring) "mule-util" "international/mule-util.el" | 18754 | ;;;;;; truncate-string-to-width store-substring) "mule-util" "international/mule-util.el" |
| 18751 | ;;;;;; (20709 26818 907104 0)) | 18755 | ;;;;;; (20826 45095 436233 0)) |
| 18752 | ;;; Generated autoloads from international/mule-util.el | 18756 | ;;; Generated autoloads from international/mule-util.el |
| 18753 | 18757 | ||
| 18754 | (defsubst string-to-list (string) "\ | 18758 | (defsubst string-to-list (string) "\ |
| @@ -18879,9 +18883,9 @@ per-character basis, this may not be accurate. | |||
| 18879 | 18883 | ||
| 18880 | ;;;*** | 18884 | ;;;*** |
| 18881 | 18885 | ||
| 18882 | ;;;### (autoloads (advice-member-p advice-remove advice-add advice--add-function | 18886 | ;;;### (autoloads (advice-member-p advice-remove advice-add remove-function |
| 18883 | ;;;;;; add-function advice--buffer-local advice--remove-function) | 18887 | ;;;;;; advice--add-function add-function advice--buffer-local advice--remove-function) |
| 18884 | ;;;;;; "nadvice" "emacs-lisp/nadvice.el" (20785 57270 519804 0)) | 18888 | ;;;;;; "nadvice" "emacs-lisp/nadvice.el" (20851 48294 960738 0)) |
| 18885 | ;;; Generated autoloads from emacs-lisp/nadvice.el | 18889 | ;;; Generated autoloads from emacs-lisp/nadvice.el |
| 18886 | 18890 | ||
| 18887 | (autoload 'advice--remove-function "nadvice" "\ | 18891 | (autoload 'advice--remove-function "nadvice" "\ |
| @@ -18903,18 +18907,20 @@ call OLDFUN here: | |||
| 18903 | `:before' (lambda (&rest r) (apply FUNCTION r) (apply OLDFUN r)) | 18907 | `:before' (lambda (&rest r) (apply FUNCTION r) (apply OLDFUN r)) |
| 18904 | `:after' (lambda (&rest r) (prog1 (apply OLDFUN r) (apply FUNCTION r))) | 18908 | `:after' (lambda (&rest r) (prog1 (apply OLDFUN r) (apply FUNCTION r))) |
| 18905 | `:around' (lambda (&rest r) (apply FUNCTION OLDFUN r)) | 18909 | `:around' (lambda (&rest r) (apply FUNCTION OLDFUN r)) |
| 18910 | `:override' (lambda (&rest r) (apply FUNCTION r)) | ||
| 18906 | `:before-while' (lambda (&rest r) (and (apply FUNCTION r) (apply OLDFUN r))) | 18911 | `:before-while' (lambda (&rest r) (and (apply FUNCTION r) (apply OLDFUN r))) |
| 18907 | `:before-until' (lambda (&rest r) (or (apply FUNCTION r) (apply OLDFUN r))) | 18912 | `:before-until' (lambda (&rest r) (or (apply FUNCTION r) (apply OLDFUN r))) |
| 18908 | `:after-while' (lambda (&rest r) (and (apply OLDFUN r) (apply FUNCTION r))) | 18913 | `:after-while' (lambda (&rest r) (and (apply OLDFUN r) (apply FUNCTION r))) |
| 18909 | `:after-until' (lambda (&rest r) (or (apply OLDFUN r) (apply FUNCTION r))) | 18914 | `:after-until' (lambda (&rest r) (or (apply OLDFUN r) (apply FUNCTION r))) |
| 18915 | `:filter-args' (lambda (&rest r) (apply OLDFUN (funcall FUNCTION r))) | ||
| 18916 | `:filter-return'(lambda (&rest r) (funcall FUNCTION (apply OLDFUN r))) | ||
| 18910 | If FUNCTION was already added, do nothing. | 18917 | If FUNCTION was already added, do nothing. |
| 18911 | PROPS is an alist of additional properties, among which the following have | 18918 | PROPS is an alist of additional properties, among which the following have |
| 18912 | a special meaning: | 18919 | a special meaning: |
| 18913 | - `name': a string or symbol. It can be used to refer to this piece of advice. | 18920 | - `name': a string or symbol. It can be used to refer to this piece of advice. |
| 18914 | 18921 | ||
| 18915 | PLACE cannot be a simple variable. Instead it should either be | 18922 | If PLACE is a simple variable, only its global value will be affected. |
| 18916 | \(default-value 'VAR) or (local 'VAR) depending on whether FUNCTION | 18923 | Use (local 'VAR) if you want to apply FUNCTION to VAR buffer-locally. |
| 18917 | should be applied to VAR buffer-locally or globally. | ||
| 18918 | 18924 | ||
| 18919 | If one of FUNCTION or OLDFUN is interactive, then the resulting function | 18925 | If one of FUNCTION or OLDFUN is interactive, then the resulting function |
| 18920 | is also interactive. There are 3 cases: | 18926 | is also interactive. There are 3 cases: |
| @@ -18931,6 +18937,14 @@ is also interactive. There are 3 cases: | |||
| 18931 | 18937 | ||
| 18932 | \(fn WHERE REF FUNCTION PROPS)" nil nil) | 18938 | \(fn WHERE REF FUNCTION PROPS)" nil nil) |
| 18933 | 18939 | ||
| 18940 | (autoload 'remove-function "nadvice" "\ | ||
| 18941 | Remove the FUNCTION piece of advice from PLACE. | ||
| 18942 | If FUNCTION was not added to PLACE, do nothing. | ||
| 18943 | Instead of FUNCTION being the actual function, it can also be the `name' | ||
| 18944 | of the piece of advice. | ||
| 18945 | |||
| 18946 | \(fn PLACE FUNCTION)" nil t) | ||
| 18947 | |||
| 18934 | (autoload 'advice-add "nadvice" "\ | 18948 | (autoload 'advice-add "nadvice" "\ |
| 18935 | Like `add-function' but for the function named SYMBOL. | 18949 | Like `add-function' but for the function named SYMBOL. |
| 18936 | Contrary to `add-function', this will properly handle the cases where SYMBOL | 18950 | Contrary to `add-function', this will properly handle the cases where SYMBOL |
| @@ -19420,11 +19434,21 @@ the variable `nxml-enabled-unicode-blocks'. | |||
| 19420 | 19434 | ||
| 19421 | ;;;*** | 19435 | ;;;*** |
| 19422 | 19436 | ||
| 19423 | ;;;### (autoloads (inferior-octave) "octave-inf" "progmodes/octave-inf.el" | 19437 | ;;;### (autoloads (inferior-octave octave-mode) "octave" "progmodes/octave.el" |
| 19424 | ;;;;;; (20709 26818 907104 0)) | 19438 | ;;;;;; (20864 60326 774861 0)) |
| 19425 | ;;; Generated autoloads from progmodes/octave-inf.el | 19439 | ;;; Generated autoloads from progmodes/octave.el |
| 19440 | |||
| 19441 | (autoload 'octave-mode "octave" "\ | ||
| 19442 | Major mode for editing Octave code. | ||
| 19426 | 19443 | ||
| 19427 | (autoload 'inferior-octave "octave-inf" "\ | 19444 | Octave is a high-level language, primarily intended for numerical |
| 19445 | computations. It provides a convenient command line interface | ||
| 19446 | for solving linear and nonlinear problems numerically. Function | ||
| 19447 | definitions can also be stored in files and used in batch mode. | ||
| 19448 | |||
| 19449 | \(fn)" t nil) | ||
| 19450 | |||
| 19451 | (autoload 'inferior-octave "octave" "\ | ||
| 19428 | Run an inferior Octave process, I/O via `inferior-octave-buffer'. | 19452 | Run an inferior Octave process, I/O via `inferior-octave-buffer'. |
| 19429 | This buffer is put in Inferior Octave mode. See `inferior-octave-mode'. | 19453 | This buffer is put in Inferior Octave mode. See `inferior-octave-mode'. |
| 19430 | 19454 | ||
| @@ -19443,91 +19467,8 @@ startup file, `~/.emacs-octave'. | |||
| 19443 | 19467 | ||
| 19444 | ;;;*** | 19468 | ;;;*** |
| 19445 | 19469 | ||
| 19446 | ;;;### (autoloads (octave-mode) "octave-mod" "progmodes/octave-mod.el" | ||
| 19447 | ;;;;;; (20709 26818 907104 0)) | ||
| 19448 | ;;; Generated autoloads from progmodes/octave-mod.el | ||
| 19449 | |||
| 19450 | (autoload 'octave-mode "octave-mod" "\ | ||
| 19451 | Major mode for editing Octave code. | ||
| 19452 | |||
| 19453 | This mode makes it easier to write Octave code by helping with | ||
| 19454 | indentation, doing some of the typing for you (with Abbrev mode) and by | ||
| 19455 | showing keywords, comments, strings, etc. in different faces (with | ||
| 19456 | Font Lock mode on terminals that support it). | ||
| 19457 | |||
| 19458 | Octave itself is a high-level language, primarily intended for numerical | ||
| 19459 | computations. It provides a convenient command line interface for | ||
| 19460 | solving linear and nonlinear problems numerically. Function definitions | ||
| 19461 | can also be stored in files, and it can be used in a batch mode (which | ||
| 19462 | is why you need this mode!). | ||
| 19463 | |||
| 19464 | The latest released version of Octave is always available via anonymous | ||
| 19465 | ftp from ftp.octave.org in the directory `/pub/octave'. Complete | ||
| 19466 | source and binaries for several popular systems are available. | ||
| 19467 | |||
| 19468 | Type \\[list-abbrevs] to display the built-in abbrevs for Octave keywords. | ||
| 19469 | |||
| 19470 | Keybindings | ||
| 19471 | =========== | ||
| 19472 | |||
| 19473 | \\{octave-mode-map} | ||
| 19474 | |||
| 19475 | Variables you can use to customize Octave mode | ||
| 19476 | ============================================== | ||
| 19477 | |||
| 19478 | `octave-blink-matching-block' | ||
| 19479 | Non-nil means show matching begin of block when inserting a space, | ||
| 19480 | newline or semicolon after an else or end keyword. Default is t. | ||
| 19481 | |||
| 19482 | `octave-block-offset' | ||
| 19483 | Extra indentation applied to statements in block structures. | ||
| 19484 | Default is 2. | ||
| 19485 | |||
| 19486 | `octave-continuation-offset' | ||
| 19487 | Extra indentation applied to Octave continuation lines. | ||
| 19488 | Default is 4. | ||
| 19489 | |||
| 19490 | `octave-continuation-string' | ||
| 19491 | String used for Octave continuation lines. | ||
| 19492 | Default is a backslash. | ||
| 19493 | |||
| 19494 | `octave-send-echo-input' | ||
| 19495 | Non-nil means always display `inferior-octave-buffer' after sending a | ||
| 19496 | command to the inferior Octave process. | ||
| 19497 | |||
| 19498 | `octave-send-line-auto-forward' | ||
| 19499 | Non-nil means always go to the next unsent line of Octave code after | ||
| 19500 | sending a line to the inferior Octave process. | ||
| 19501 | |||
| 19502 | `octave-send-echo-input' | ||
| 19503 | Non-nil means echo input sent to the inferior Octave process. | ||
| 19504 | |||
| 19505 | Turning on Octave mode runs the hook `octave-mode-hook'. | ||
| 19506 | |||
| 19507 | To begin using this mode for all `.m' files that you edit, add the | ||
| 19508 | following lines to your init file: | ||
| 19509 | |||
| 19510 | (add-to-list 'auto-mode-alist '(\"\\\\.m\\\\'\" . octave-mode)) | ||
| 19511 | |||
| 19512 | To automatically turn on the abbrev and auto-fill features, | ||
| 19513 | add the following lines to your init file as well: | ||
| 19514 | |||
| 19515 | (add-hook 'octave-mode-hook | ||
| 19516 | (lambda () | ||
| 19517 | (abbrev-mode 1) | ||
| 19518 | (auto-fill-mode 1))) | ||
| 19519 | |||
| 19520 | To submit a problem report, enter \\[octave-submit-bug-report] from an Octave mode buffer. | ||
| 19521 | This automatically sets up a mail buffer with version information | ||
| 19522 | already added. You just need to add a description of the problem, | ||
| 19523 | including a reproducible test case and send the message. | ||
| 19524 | |||
| 19525 | \(fn)" t nil) | ||
| 19526 | |||
| 19527 | ;;;*** | ||
| 19528 | |||
| 19529 | ;;;### (autoloads (opascal-mode) "opascal" "progmodes/opascal.el" | 19470 | ;;;### (autoloads (opascal-mode) "opascal" "progmodes/opascal.el" |
| 19530 | ;;;;;; (20746 21181 635406 0)) | 19471 | ;;;;;; (20858 21542 723007 0)) |
| 19531 | ;;; Generated autoloads from progmodes/opascal.el | 19472 | ;;; Generated autoloads from progmodes/opascal.el |
| 19532 | 19473 | ||
| 19533 | (define-obsolete-function-alias 'delphi-mode 'opascal-mode "24.4") | 19474 | (define-obsolete-function-alias 'delphi-mode 'opascal-mode "24.4") |
| @@ -19558,14 +19499,8 @@ Customization: | |||
| 19558 | 19499 | ||
| 19559 | Coloring: | 19500 | Coloring: |
| 19560 | 19501 | ||
| 19561 | `opascal-comment-face' (default font-lock-comment-face) | ||
| 19562 | Face used to color OPascal comments. | ||
| 19563 | `opascal-string-face' (default font-lock-string-face) | ||
| 19564 | Face used to color OPascal strings. | ||
| 19565 | `opascal-keyword-face' (default font-lock-keyword-face) | 19502 | `opascal-keyword-face' (default font-lock-keyword-face) |
| 19566 | Face used to color OPascal keywords. | 19503 | Face used to color OPascal keywords. |
| 19567 | `opascal-other-face' (default nil) | ||
| 19568 | Face used to color everything else. | ||
| 19569 | 19504 | ||
| 19570 | Turning on OPascal mode calls the value of the variable `opascal-mode-hook' | 19505 | Turning on OPascal mode calls the value of the variable `opascal-mode-hook' |
| 19571 | with no args, if that value is non-nil. | 19506 | with no args, if that value is non-nil. |
| @@ -19806,7 +19741,7 @@ Call the customize function with org as argument. | |||
| 19806 | ;;;;;; org-search-view org-agenda-list org-batch-store-agenda-views | 19741 | ;;;;;; org-search-view org-agenda-list org-batch-store-agenda-views |
| 19807 | ;;;;;; org-store-agenda-views org-batch-agenda-csv org-batch-agenda | 19742 | ;;;;;; org-store-agenda-views org-batch-agenda-csv org-batch-agenda |
| 19808 | ;;;;;; org-agenda org-toggle-sticky-agenda) "org-agenda" "org/org-agenda.el" | 19743 | ;;;;;; org-agenda org-toggle-sticky-agenda) "org-agenda" "org/org-agenda.el" |
| 19809 | ;;;;;; (20783 15545 430927 0)) | 19744 | ;;;;;; (20847 51240 240216 0)) |
| 19810 | ;;; Generated autoloads from org/org-agenda.el | 19745 | ;;; Generated autoloads from org/org-agenda.el |
| 19811 | 19746 | ||
| 19812 | (autoload 'org-toggle-sticky-agenda "org-agenda" "\ | 19747 | (autoload 'org-toggle-sticky-agenda "org-agenda" "\ |
| @@ -20268,7 +20203,7 @@ See the command `outline-mode' for more information on this mode. | |||
| 20268 | ;;;### (autoloads (list-packages describe-package package-initialize | 20203 | ;;;### (autoloads (list-packages describe-package package-initialize |
| 20269 | ;;;;;; package-refresh-contents package-install-file package-install-from-buffer | 20204 | ;;;;;; package-refresh-contents package-install-file package-install-from-buffer |
| 20270 | ;;;;;; package-install package-enable-at-startup) "package" "emacs-lisp/package.el" | 20205 | ;;;;;; package-install package-enable-at-startup) "package" "emacs-lisp/package.el" |
| 20271 | ;;;;;; (20764 51137 83502 0)) | 20206 | ;;;;;; (20860 63270 684173 0)) |
| 20272 | ;;; Generated autoloads from emacs-lisp/package.el | 20207 | ;;; Generated autoloads from emacs-lisp/package.el |
| 20273 | 20208 | ||
| 20274 | (defvar package-enable-at-startup t "\ | 20209 | (defvar package-enable-at-startup t "\ |
| @@ -20646,6 +20581,26 @@ Includes files as well as host names followed by a colon. | |||
| 20646 | 20581 | ||
| 20647 | ;;;*** | 20582 | ;;;*** |
| 20648 | 20583 | ||
| 20584 | ;;;### (autoloads (pcomplete/ack pcomplete/tlmgr) "pcmpl-x" "pcmpl-x.el" | ||
| 20585 | ;;;;;; (20837 15398 184639 0)) | ||
| 20586 | ;;; Generated autoloads from pcmpl-x.el | ||
| 20587 | |||
| 20588 | (autoload 'pcomplete/tlmgr "pcmpl-x" "\ | ||
| 20589 | Completion for the `tlmgr' command. | ||
| 20590 | |||
| 20591 | \(fn)" nil nil) | ||
| 20592 | |||
| 20593 | (autoload 'pcomplete/ack "pcmpl-x" "\ | ||
| 20594 | Completion for the `ack' command. | ||
| 20595 | Start an argument with '-' to complete short options and '--' for | ||
| 20596 | long options. | ||
| 20597 | |||
| 20598 | \(fn)" nil nil) | ||
| 20599 | |||
| 20600 | (defalias 'pcomplete/ack-grep 'pcomplete/ack) | ||
| 20601 | |||
| 20602 | ;;;*** | ||
| 20603 | |||
| 20649 | ;;;### (autoloads (pcomplete-shell-setup pcomplete-comint-setup pcomplete-list | 20604 | ;;;### (autoloads (pcomplete-shell-setup pcomplete-comint-setup pcomplete-list |
| 20650 | ;;;;;; pcomplete-help pcomplete-expand pcomplete-continue pcomplete-expand-and-complete | 20605 | ;;;;;; pcomplete-help pcomplete-expand pcomplete-continue pcomplete-expand-and-complete |
| 20651 | ;;;;;; pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (20709 | 20606 | ;;;;;; pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (20709 |
| @@ -21699,7 +21654,7 @@ Open profile FILENAME. | |||
| 21699 | ;;;*** | 21654 | ;;;*** |
| 21700 | 21655 | ||
| 21701 | ;;;### (autoloads (run-prolog mercury-mode prolog-mode) "prolog" | 21656 | ;;;### (autoloads (run-prolog mercury-mode prolog-mode) "prolog" |
| 21702 | ;;;;;; "progmodes/prolog.el" (20791 9657 561026 0)) | 21657 | ;;;;;; "progmodes/prolog.el" (20851 48294 960738 0)) |
| 21703 | ;;; Generated autoloads from progmodes/prolog.el | 21658 | ;;; Generated autoloads from progmodes/prolog.el |
| 21704 | 21659 | ||
| 21705 | (autoload 'prolog-mode "prolog" "\ | 21660 | (autoload 'prolog-mode "prolog" "\ |
| @@ -21996,7 +21951,7 @@ If EXTENSION is any other symbol, it is ignored. | |||
| 21996 | ;;;*** | 21951 | ;;;*** |
| 21997 | 21952 | ||
| 21998 | ;;;### (autoloads (python-mode run-python) "python" "progmodes/python.el" | 21953 | ;;;### (autoloads (python-mode run-python) "python" "progmodes/python.el" |
| 21999 | ;;;;;; (20824 3367 300658 0)) | 21954 | ;;;;;; (20850 27430 515630 0)) |
| 22000 | ;;; Generated autoloads from progmodes/python.el | 21955 | ;;; Generated autoloads from progmodes/python.el |
| 22001 | 21956 | ||
| 22002 | (add-to-list 'auto-mode-alist (cons (purecopy "\\.py\\'") 'python-mode)) | 21957 | (add-to-list 'auto-mode-alist (cons (purecopy "\\.py\\'") 'python-mode)) |
| @@ -22615,8 +22570,8 @@ For true \"word wrap\" behavior, use `visual-line-mode' instead. | |||
| 22615 | ;;;*** | 22570 | ;;;*** |
| 22616 | 22571 | ||
| 22617 | ;;;### (autoloads (reftex-reset-scanning-information reftex-mode | 22572 | ;;;### (autoloads (reftex-reset-scanning-information reftex-mode |
| 22618 | ;;;;;; turn-on-reftex) "reftex" "textmodes/reftex.el" (20777 63161 | 22573 | ;;;;;; turn-on-reftex) "reftex" "textmodes/reftex.el" (20843 54187 |
| 22619 | ;;;;;; 848428 0)) | 22574 | ;;;;;; 671468 0)) |
| 22620 | ;;; Generated autoloads from textmodes/reftex.el | 22575 | ;;; Generated autoloads from textmodes/reftex.el |
| 22621 | 22576 | ||
| 22622 | (autoload 'turn-on-reftex "reftex" "\ | 22577 | (autoload 'turn-on-reftex "reftex" "\ |
| @@ -22666,7 +22621,7 @@ This enforces rescanning the buffer on next use. | |||
| 22666 | ;;;*** | 22621 | ;;;*** |
| 22667 | 22622 | ||
| 22668 | ;;;### (autoloads (reftex-citation) "reftex-cite" "textmodes/reftex-cite.el" | 22623 | ;;;### (autoloads (reftex-citation) "reftex-cite" "textmodes/reftex-cite.el" |
| 22669 | ;;;;;; (20734 30007 218637 0)) | 22624 | ;;;;;; (20838 36262 626321 0)) |
| 22670 | ;;; Generated autoloads from textmodes/reftex-cite.el | 22625 | ;;; Generated autoloads from textmodes/reftex-cite.el |
| 22671 | 22626 | ||
| 22672 | (autoload 'reftex-citation "reftex-cite" "\ | 22627 | (autoload 'reftex-citation "reftex-cite" "\ |
| @@ -22746,7 +22701,7 @@ Here are all local bindings. | |||
| 22746 | ;;;*** | 22701 | ;;;*** |
| 22747 | 22702 | ||
| 22748 | ;;;### (autoloads (reftex-all-document-files) "reftex-parse" "textmodes/reftex-parse.el" | 22703 | ;;;### (autoloads (reftex-all-document-files) "reftex-parse" "textmodes/reftex-parse.el" |
| 22749 | ;;;;;; (20709 26818 907104 0)) | 22704 | ;;;;;; (20858 21542 723007 0)) |
| 22750 | ;;; Generated autoloads from textmodes/reftex-parse.el | 22705 | ;;; Generated autoloads from textmodes/reftex-parse.el |
| 22751 | 22706 | ||
| 22752 | (autoload 'reftex-all-document-files "reftex-parse" "\ | 22707 | (autoload 'reftex-all-document-files "reftex-parse" "\ |
| @@ -22758,8 +22713,8 @@ of master file. | |||
| 22758 | 22713 | ||
| 22759 | ;;;*** | 22714 | ;;;*** |
| 22760 | 22715 | ||
| 22761 | ;;;### (autoloads nil "reftex-vars" "textmodes/reftex-vars.el" (20734 | 22716 | ;;;### (autoloads nil "reftex-vars" "textmodes/reftex-vars.el" (20858 |
| 22762 | ;;;;;; 30007 218637 0)) | 22717 | ;;;;;; 21542 723007 0)) |
| 22763 | ;;; Generated autoloads from textmodes/reftex-vars.el | 22718 | ;;; Generated autoloads from textmodes/reftex-vars.el |
| 22764 | (put 'reftex-vref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x)))) | 22719 | (put 'reftex-vref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x)))) |
| 22765 | (put 'reftex-fref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x)))) | 22720 | (put 'reftex-fref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x)))) |
| @@ -22800,7 +22755,7 @@ This means the number of non-shy regexp grouping constructs | |||
| 22800 | 22755 | ||
| 22801 | ;;;### (autoloads (remember-diary-extract-entries remember-clipboard | 22756 | ;;;### (autoloads (remember-diary-extract-entries remember-clipboard |
| 22802 | ;;;;;; remember-other-frame remember) "remember" "textmodes/remember.el" | 22757 | ;;;;;; remember-other-frame remember) "remember" "textmodes/remember.el" |
| 22803 | ;;;;;; (20799 169 640767 0)) | 22758 | ;;;;;; (20859 42406 744769 0)) |
| 22804 | ;;; Generated autoloads from textmodes/remember.el | 22759 | ;;; Generated autoloads from textmodes/remember.el |
| 22805 | 22760 | ||
| 22806 | (autoload 'remember "remember" "\ | 22761 | (autoload 'remember "remember" "\ |
| @@ -23466,7 +23421,7 @@ for modes derived from Text mode, like Mail mode. | |||
| 23466 | ;;;*** | 23421 | ;;;*** |
| 23467 | 23422 | ||
| 23468 | ;;;### (autoloads (ruby-mode) "ruby-mode" "progmodes/ruby-mode.el" | 23423 | ;;;### (autoloads (ruby-mode) "ruby-mode" "progmodes/ruby-mode.el" |
| 23469 | ;;;;;; (20792 30519 8548 0)) | 23424 | ;;;;;; (20845 9511 656701 0)) |
| 23470 | ;;; Generated autoloads from progmodes/ruby-mode.el | 23425 | ;;; Generated autoloads from progmodes/ruby-mode.el |
| 23471 | 23426 | ||
| 23472 | (autoload 'ruby-mode "ruby-mode" "\ | 23427 | (autoload 'ruby-mode "ruby-mode" "\ |
| @@ -24482,7 +24437,7 @@ To work around that, do: | |||
| 24482 | ;;;*** | 24437 | ;;;*** |
| 24483 | 24438 | ||
| 24484 | ;;;### (autoloads (sh-mode) "sh-script" "progmodes/sh-script.el" | 24439 | ;;;### (autoloads (sh-mode) "sh-script" "progmodes/sh-script.el" |
| 24485 | ;;;;;; (20791 9657 561026 0)) | 24440 | ;;;;;; (20850 27430 515630 0)) |
| 24486 | ;;; Generated autoloads from progmodes/sh-script.el | 24441 | ;;; Generated autoloads from progmodes/sh-script.el |
| 24487 | (put 'sh-shell 'safe-local-variable 'symbolp) | 24442 | (put 'sh-shell 'safe-local-variable 'symbolp) |
| 24488 | 24443 | ||
| @@ -24546,7 +24501,7 @@ with your script for an edit-interpret-debug cycle. | |||
| 24546 | ;;;*** | 24501 | ;;;*** |
| 24547 | 24502 | ||
| 24548 | ;;;### (autoloads (list-load-path-shadows) "shadow" "emacs-lisp/shadow.el" | 24503 | ;;;### (autoloads (list-load-path-shadows) "shadow" "emacs-lisp/shadow.el" |
| 24549 | ;;;;;; (20709 26818 907104 0)) | 24504 | ;;;;;; (20858 21542 723007 0)) |
| 24550 | ;;; Generated autoloads from emacs-lisp/shadow.el | 24505 | ;;; Generated autoloads from emacs-lisp/shadow.el |
| 24551 | 24506 | ||
| 24552 | (autoload 'list-load-path-shadows "shadow" "\ | 24507 | (autoload 'list-load-path-shadows "shadow" "\ |
| @@ -24564,7 +24519,7 @@ the earlier. | |||
| 24564 | 24519 | ||
| 24565 | For example, suppose `load-path' is set to | 24520 | For example, suppose `load-path' is set to |
| 24566 | 24521 | ||
| 24567 | \(\"/usr/gnu/emacs/site-lisp\" \"/usr/gnu/emacs/share/emacs/19.30/lisp\") | 24522 | \(\"/usr/share/emacs/site-lisp\" \"/usr/share/emacs/24.3/lisp\") |
| 24568 | 24523 | ||
| 24569 | and that each of these directories contains a file called XXX.el. Then | 24524 | and that each of these directories contains a file called XXX.el. Then |
| 24570 | XXX.el in the site-lisp directory is referred to by all of: | 24525 | XXX.el in the site-lisp directory is referred to by all of: |
| @@ -24576,9 +24531,9 @@ the second is loaded explicitly via `load-file'). | |||
| 24576 | When not intended, such shadowings can be the source of subtle | 24531 | When not intended, such shadowings can be the source of subtle |
| 24577 | problems. For example, the above situation may have arisen because the | 24532 | problems. For example, the above situation may have arisen because the |
| 24578 | XXX package was not distributed with versions of Emacs prior to | 24533 | XXX package was not distributed with versions of Emacs prior to |
| 24579 | 19.30. An Emacs maintainer downloaded XXX from elsewhere and installed | 24534 | 24.3. A system administrator downloaded XXX from elsewhere and installed |
| 24580 | it. Later, XXX was updated and included in the Emacs distribution. | 24535 | it. Later, XXX was updated and included in the Emacs distribution. |
| 24581 | Unless the Emacs maintainer checks for this, the new version of XXX | 24536 | Unless the system administrator checks for this, the new version of XXX |
| 24582 | will be hidden behind the old (which may no longer work with the new | 24537 | will be hidden behind the old (which may no longer work with the new |
| 24583 | Emacs version). | 24538 | Emacs version). |
| 24584 | 24539 | ||
| @@ -24684,8 +24639,8 @@ Otherwise, one argument `-i' is passed to the shell. | |||
| 24684 | 24639 | ||
| 24685 | ;;;*** | 24640 | ;;;*** |
| 24686 | 24641 | ||
| 24687 | ;;;### (autoloads (shr-insert-document) "shr" "gnus/shr.el" (20791 | 24642 | ;;;### (autoloads (shr-insert-document) "shr" "gnus/shr.el" (20845 |
| 24688 | ;;;;;; 9657 561026 0)) | 24643 | ;;;;;; 9511 656701 0)) |
| 24689 | ;;; Generated autoloads from gnus/shr.el | 24644 | ;;; Generated autoloads from gnus/shr.el |
| 24690 | 24645 | ||
| 24691 | (autoload 'shr-insert-document "shr" "\ | 24646 | (autoload 'shr-insert-document "shr" "\ |
| @@ -27574,8 +27529,8 @@ In dired, call the setroot program on the image at point. | |||
| 27574 | ;;;;;; tibetan-post-read-conversion tibetan-compose-buffer tibetan-decompose-buffer | 27529 | ;;;;;; tibetan-post-read-conversion tibetan-compose-buffer tibetan-decompose-buffer |
| 27575 | ;;;;;; tibetan-decompose-string tibetan-decompose-region tibetan-compose-region | 27530 | ;;;;;; tibetan-decompose-string tibetan-decompose-region tibetan-compose-region |
| 27576 | ;;;;;; tibetan-compose-string tibetan-transcription-to-tibetan tibetan-tibetan-to-transcription | 27531 | ;;;;;; tibetan-compose-string tibetan-transcription-to-tibetan tibetan-tibetan-to-transcription |
| 27577 | ;;;;;; tibetan-char-p) "tibet-util" "language/tibet-util.el" (20709 | 27532 | ;;;;;; tibetan-char-p) "tibet-util" "language/tibet-util.el" (20826 |
| 27578 | ;;;;;; 26818 907104 0)) | 27533 | ;;;;;; 45095 436233 0)) |
| 27579 | ;;; Generated autoloads from language/tibet-util.el | 27534 | ;;; Generated autoloads from language/tibet-util.el |
| 27580 | 27535 | ||
| 27581 | (autoload 'tibetan-char-p "tibet-util" "\ | 27536 | (autoload 'tibetan-char-p "tibet-util" "\ |
| @@ -28269,8 +28224,8 @@ to a tcp server on another machine. | |||
| 28269 | ;;;*** | 28224 | ;;;*** |
| 28270 | 28225 | ||
| 28271 | ;;;### (autoloads (trace-function-background trace-function-foreground | 28226 | ;;;### (autoloads (trace-function-background trace-function-foreground |
| 28272 | ;;;;;; trace-buffer) "trace" "emacs-lisp/trace.el" (20727 56759 | 28227 | ;;;;;; trace-values trace-buffer) "trace" "emacs-lisp/trace.el" |
| 28273 | ;;;;;; 628211 0)) | 28228 | ;;;;;; (20842 33318 816618 0)) |
| 28274 | ;;; Generated autoloads from emacs-lisp/trace.el | 28229 | ;;; Generated autoloads from emacs-lisp/trace.el |
| 28275 | 28230 | ||
| 28276 | (defvar trace-buffer "*trace-output*" "\ | 28231 | (defvar trace-buffer "*trace-output*" "\ |
| @@ -28278,6 +28233,12 @@ Trace output will by default go to that buffer.") | |||
| 28278 | 28233 | ||
| 28279 | (custom-autoload 'trace-buffer "trace" t) | 28234 | (custom-autoload 'trace-buffer "trace" t) |
| 28280 | 28235 | ||
| 28236 | (autoload 'trace-values "trace" "\ | ||
| 28237 | Helper function to get internal values. | ||
| 28238 | You can call this function to add internal values in the trace buffer. | ||
| 28239 | |||
| 28240 | \(fn &rest VALUES)" nil nil) | ||
| 28241 | |||
| 28281 | (autoload 'trace-function-foreground "trace" "\ | 28242 | (autoload 'trace-function-foreground "trace" "\ |
| 28282 | Traces FUNCTION with trace output going to BUFFER. | 28243 | Traces FUNCTION with trace output going to BUFFER. |
| 28283 | For every call of FUNCTION Lisp-style trace messages that display argument | 28244 | For every call of FUNCTION Lisp-style trace messages that display argument |
| @@ -28305,7 +28266,7 @@ changing the window configuration. | |||
| 28305 | ;;;### (autoloads (tramp-unload-tramp tramp-completion-handle-file-name-completion | 28266 | ;;;### (autoloads (tramp-unload-tramp tramp-completion-handle-file-name-completion |
| 28306 | ;;;;;; tramp-completion-handle-file-name-all-completions tramp-unload-file-name-handlers | 28267 | ;;;;;; tramp-completion-handle-file-name-all-completions tramp-unload-file-name-handlers |
| 28307 | ;;;;;; tramp-file-name-handler tramp-syntax tramp-mode) "tramp" | 28268 | ;;;;;; tramp-file-name-handler tramp-syntax tramp-mode) "tramp" |
| 28308 | ;;;;;; "net/tramp.el" (20824 3367 300658 0)) | 28269 | ;;;;;; "net/tramp.el" (20854 24486 190633 0)) |
| 28309 | ;;; Generated autoloads from net/tramp.el | 28270 | ;;; Generated autoloads from net/tramp.el |
| 28310 | 28271 | ||
| 28311 | (defvar tramp-mode t "\ | 28272 | (defvar tramp-mode t "\ |
| @@ -29551,8 +29512,8 @@ If FILE-NAME is non-nil, save the result to FILE-NAME. | |||
| 29551 | ;;;;;; vc-print-log vc-retrieve-tag vc-create-tag vc-merge vc-insert-headers | 29512 | ;;;;;; vc-print-log vc-retrieve-tag vc-create-tag vc-merge vc-insert-headers |
| 29552 | ;;;;;; vc-revision-other-window vc-root-diff vc-ediff vc-version-ediff | 29513 | ;;;;;; vc-revision-other-window vc-root-diff vc-ediff vc-version-ediff |
| 29553 | ;;;;;; vc-diff vc-version-diff vc-register vc-next-action vc-before-checkin-hook | 29514 | ;;;;;; vc-diff vc-version-diff vc-register vc-next-action vc-before-checkin-hook |
| 29554 | ;;;;;; vc-checkin-hook vc-checkout-hook) "vc" "vc/vc.el" (20752 | 29515 | ;;;;;; vc-checkin-hook vc-checkout-hook) "vc" "vc/vc.el" (20855 |
| 29555 | ;;;;;; 26669 524456 0)) | 29516 | ;;;;;; 45357 683214 0)) |
| 29556 | ;;; Generated autoloads from vc/vc.el | 29517 | ;;; Generated autoloads from vc/vc.el |
| 29557 | 29518 | ||
| 29558 | (defvar vc-checkout-hook nil "\ | 29519 | (defvar vc-checkout-hook nil "\ |
| @@ -29882,8 +29843,8 @@ mode-specific menu. `vc-annotate-color-map' and | |||
| 29882 | 29843 | ||
| 29883 | ;;;*** | 29844 | ;;;*** |
| 29884 | 29845 | ||
| 29885 | ;;;### (autoloads nil "vc-bzr" "vc/vc-bzr.el" (20820 6311 856169 | 29846 | ;;;### (autoloads nil "vc-bzr" "vc/vc-bzr.el" (20856 32310 242920 |
| 29886 | ;;;;;; 0)) | 29847 | ;;;;;; 705000)) |
| 29887 | ;;; Generated autoloads from vc/vc-bzr.el | 29848 | ;;; Generated autoloads from vc/vc-bzr.el |
| 29888 | 29849 | ||
| 29889 | (defconst vc-bzr-admin-dirname ".bzr" "\ | 29850 | (defconst vc-bzr-admin-dirname ".bzr" "\ |
| @@ -29899,7 +29860,7 @@ Name of the format file in a .bzr directory.") | |||
| 29899 | 29860 | ||
| 29900 | ;;;*** | 29861 | ;;;*** |
| 29901 | 29862 | ||
| 29902 | ;;;### (autoloads nil "vc-cvs" "vc/vc-cvs.el" (20748 62911 684442 | 29863 | ;;;### (autoloads nil "vc-cvs" "vc/vc-cvs.el" (20855 45357 683214 |
| 29903 | ;;;;;; 0)) | 29864 | ;;;;;; 0)) |
| 29904 | ;;; Generated autoloads from vc/vc-cvs.el | 29865 | ;;; Generated autoloads from vc/vc-cvs.el |
| 29905 | (defun vc-cvs-registered (f) | 29866 | (defun vc-cvs-registered (f) |
| @@ -29976,7 +29937,7 @@ These are the commands available for use in the file status buffer: | |||
| 29976 | ;;;*** | 29937 | ;;;*** |
| 29977 | 29938 | ||
| 29978 | ;;;### (autoloads (vc-do-command) "vc-dispatcher" "vc/vc-dispatcher.el" | 29939 | ;;;### (autoloads (vc-do-command) "vc-dispatcher" "vc/vc-dispatcher.el" |
| 29979 | ;;;;;; (20709 26818 907104 0)) | 29940 | ;;;;;; (20851 48294 960738 0)) |
| 29980 | ;;; Generated autoloads from vc/vc-dispatcher.el | 29941 | ;;; Generated autoloads from vc/vc-dispatcher.el |
| 29981 | 29942 | ||
| 29982 | (autoload 'vc-do-command "vc-dispatcher" "\ | 29943 | (autoload 'vc-do-command "vc-dispatcher" "\ |
| @@ -29999,7 +29960,7 @@ case, and the process object in the asynchronous case. | |||
| 29999 | 29960 | ||
| 30000 | ;;;*** | 29961 | ;;;*** |
| 30001 | 29962 | ||
| 30002 | ;;;### (autoloads nil "vc-git" "vc/vc-git.el" (20748 62911 684442 | 29963 | ;;;### (autoloads nil "vc-git" "vc/vc-git.el" (20855 45357 683214 |
| 30003 | ;;;;;; 0)) | 29964 | ;;;;;; 0)) |
| 30004 | ;;; Generated autoloads from vc/vc-git.el | 29965 | ;;; Generated autoloads from vc/vc-git.el |
| 30005 | (defun vc-git-registered (file) | 29966 | (defun vc-git-registered (file) |
| @@ -30011,7 +29972,7 @@ case, and the process object in the asynchronous case. | |||
| 30011 | 29972 | ||
| 30012 | ;;;*** | 29973 | ;;;*** |
| 30013 | 29974 | ||
| 30014 | ;;;### (autoloads nil "vc-hg" "vc/vc-hg.el" (20748 62911 684442 0)) | 29975 | ;;;### (autoloads nil "vc-hg" "vc/vc-hg.el" (20855 45357 683214 0)) |
| 30015 | ;;; Generated autoloads from vc/vc-hg.el | 29976 | ;;; Generated autoloads from vc/vc-hg.el |
| 30016 | (defun vc-hg-registered (file) | 29977 | (defun vc-hg-registered (file) |
| 30017 | "Return non-nil if FILE is registered with hg." | 29978 | "Return non-nil if FILE is registered with hg." |
| @@ -30022,7 +29983,7 @@ case, and the process object in the asynchronous case. | |||
| 30022 | 29983 | ||
| 30023 | ;;;*** | 29984 | ;;;*** |
| 30024 | 29985 | ||
| 30025 | ;;;### (autoloads nil "vc-mtn" "vc/vc-mtn.el" (20748 62911 684442 | 29986 | ;;;### (autoloads nil "vc-mtn" "vc/vc-mtn.el" (20855 45357 683214 |
| 30026 | ;;;;;; 0)) | 29987 | ;;;;;; 0)) |
| 30027 | ;;; Generated autoloads from vc/vc-mtn.el | 29988 | ;;; Generated autoloads from vc/vc-mtn.el |
| 30028 | 29989 | ||
| @@ -30040,7 +30001,7 @@ Name of the monotone directory's format file.") | |||
| 30040 | ;;;*** | 30001 | ;;;*** |
| 30041 | 30002 | ||
| 30042 | ;;;### (autoloads (vc-rcs-master-templates) "vc-rcs" "vc/vc-rcs.el" | 30003 | ;;;### (autoloads (vc-rcs-master-templates) "vc-rcs" "vc/vc-rcs.el" |
| 30043 | ;;;;;; (20709 26818 907104 0)) | 30004 | ;;;;;; (20855 45357 683214 0)) |
| 30044 | ;;; Generated autoloads from vc/vc-rcs.el | 30005 | ;;; Generated autoloads from vc/vc-rcs.el |
| 30045 | 30006 | ||
| 30046 | (defvar vc-rcs-master-templates (purecopy '("%sRCS/%s,v" "%s%s,v" "%sRCS/%s")) "\ | 30007 | (defvar vc-rcs-master-templates (purecopy '("%sRCS/%s,v" "%s%s,v" "%sRCS/%s")) "\ |
| @@ -30054,7 +30015,7 @@ For a description of possible values, see `vc-check-master-templates'.") | |||
| 30054 | ;;;*** | 30015 | ;;;*** |
| 30055 | 30016 | ||
| 30056 | ;;;### (autoloads (vc-sccs-master-templates) "vc-sccs" "vc/vc-sccs.el" | 30017 | ;;;### (autoloads (vc-sccs-master-templates) "vc-sccs" "vc/vc-sccs.el" |
| 30057 | ;;;;;; (20709 26818 907104 0)) | 30018 | ;;;;;; (20855 45357 683214 0)) |
| 30058 | ;;; Generated autoloads from vc/vc-sccs.el | 30019 | ;;; Generated autoloads from vc/vc-sccs.el |
| 30059 | 30020 | ||
| 30060 | (defvar vc-sccs-master-templates (purecopy '("%sSCCS/s.%s" "%ss.%s" vc-sccs-search-project-dir)) "\ | 30021 | (defvar vc-sccs-master-templates (purecopy '("%sSCCS/s.%s" "%ss.%s" vc-sccs-search-project-dir)) "\ |
| @@ -30072,7 +30033,7 @@ find any project directory." (let ((project-dir (getenv "PROJECTDIR")) dirs dir) | |||
| 30072 | 30033 | ||
| 30073 | ;;;*** | 30034 | ;;;*** |
| 30074 | 30035 | ||
| 30075 | ;;;### (autoloads nil "vc-svn" "vc/vc-svn.el" (20760 54070 584283 | 30036 | ;;;### (autoloads nil "vc-svn" "vc/vc-svn.el" (20855 45357 683214 |
| 30076 | ;;;;;; 0)) | 30037 | ;;;;;; 0)) |
| 30077 | ;;; Generated autoloads from vc/vc-svn.el | 30038 | ;;; Generated autoloads from vc/vc-svn.el |
| 30078 | (defun vc-svn-registered (f) | 30039 | (defun vc-svn-registered (f) |
| @@ -30894,7 +30855,7 @@ Syntax table and abbrevs while in vi mode remain as they were in Emacs. | |||
| 30894 | ;;;### (autoloads (viqr-pre-write-conversion viqr-post-read-conversion | 30855 | ;;;### (autoloads (viqr-pre-write-conversion viqr-post-read-conversion |
| 30895 | ;;;;;; viet-encode-viqr-buffer viet-encode-viqr-region viet-decode-viqr-buffer | 30856 | ;;;;;; viet-encode-viqr-buffer viet-encode-viqr-region viet-decode-viqr-buffer |
| 30896 | ;;;;;; viet-decode-viqr-region viet-encode-viscii-char) "viet-util" | 30857 | ;;;;;; viet-decode-viqr-region viet-encode-viscii-char) "viet-util" |
| 30897 | ;;;;;; "language/viet-util.el" (20709 26818 907104 0)) | 30858 | ;;;;;; "language/viet-util.el" (20826 45095 436233 0)) |
| 30898 | ;;; Generated autoloads from language/viet-util.el | 30859 | ;;; Generated autoloads from language/viet-util.el |
| 30899 | 30860 | ||
| 30900 | (autoload 'viet-encode-viscii-char "viet-util" "\ | 30861 | (autoload 'viet-encode-viscii-char "viet-util" "\ |
| @@ -31390,8 +31351,8 @@ in certain major modes. | |||
| 31390 | ;;;### (autoloads (whitespace-report-region whitespace-report whitespace-cleanup-region | 31351 | ;;;### (autoloads (whitespace-report-region whitespace-report whitespace-cleanup-region |
| 31391 | ;;;;;; whitespace-cleanup global-whitespace-toggle-options whitespace-toggle-options | 31352 | ;;;;;; whitespace-cleanup global-whitespace-toggle-options whitespace-toggle-options |
| 31392 | ;;;;;; global-whitespace-newline-mode global-whitespace-mode whitespace-newline-mode | 31353 | ;;;;;; global-whitespace-newline-mode global-whitespace-mode whitespace-newline-mode |
| 31393 | ;;;;;; whitespace-mode) "whitespace" "whitespace.el" (20809 36008 | 31354 | ;;;;;; whitespace-mode) "whitespace" "whitespace.el" (20831 63016 |
| 31394 | ;;;;;; 682209 0)) | 31355 | ;;;;;; 738579 0)) |
| 31395 | ;;; Generated autoloads from whitespace.el | 31356 | ;;; Generated autoloads from whitespace.el |
| 31396 | 31357 | ||
| 31397 | (autoload 'whitespace-mode "whitespace" "\ | 31358 | (autoload 'whitespace-mode "whitespace" "\ |
| @@ -31917,8 +31878,8 @@ Default MODIFIER is 'shift. | |||
| 31917 | 31878 | ||
| 31918 | ;;;*** | 31879 | ;;;*** |
| 31919 | 31880 | ||
| 31920 | ;;;### (autoloads (winner-mode) "winner" "winner.el" (20709 26818 | 31881 | ;;;### (autoloads (winner-mode) "winner" "winner.el" (20849 6570 |
| 31921 | ;;;;;; 907104 0)) | 31882 | ;;;;;; 598687 0)) |
| 31922 | ;;; Generated autoloads from winner.el | 31883 | ;;; Generated autoloads from winner.el |
| 31923 | 31884 | ||
| 31924 | (defvar winner-mode nil "\ | 31885 | (defvar winner-mode nil "\ |
| @@ -32466,8 +32427,8 @@ Zone out, completely. | |||
| 32466 | ;;;;;; "vc/ediff-ptch.el" "vc/ediff-vers.el" "vc/ediff-wind.el" | 32427 | ;;;;;; "vc/ediff-ptch.el" "vc/ediff-vers.el" "vc/ediff-wind.el" |
| 32467 | ;;;;;; "vc/pcvs-info.el" "vc/pcvs-parse.el" "vc/pcvs-util.el" "vc/vc-dav.el" | 32428 | ;;;;;; "vc/pcvs-info.el" "vc/pcvs-parse.el" "vc/pcvs-util.el" "vc/vc-dav.el" |
| 32468 | ;;;;;; "vcursor.el" "vt-control.el" "vt100-led.el" "w32-common-fns.el" | 32429 | ;;;;;; "vcursor.el" "vt-control.el" "vt100-led.el" "w32-common-fns.el" |
| 32469 | ;;;;;; "w32-fns.el" "w32-vars.el" "x-dnd.el") (20825 24458 310780 | 32430 | ;;;;;; "w32-fns.el" "w32-vars.el" "x-dnd.el") (20864 60345 274595 |
| 32470 | ;;;;;; 797000)) | 32431 | ;;;;;; 113000)) |
| 32471 | 32432 | ||
| 32472 | ;;;*** | 32433 | ;;;*** |
| 32473 | 32434 | ||
diff --git a/lisp/ls-lisp.el b/lisp/ls-lisp.el index 70ee4394b88..60d6b7b7ba5 100644 --- a/lisp/ls-lisp.el +++ b/lisp/ls-lisp.el | |||
| @@ -404,6 +404,13 @@ not contain `d', so that a full listing is expected." | |||
| 404 | ;; the wildcard; let's say something similar. | 404 | ;; the wildcard; let's say something similar. |
| 405 | (insert "(No match)\n")) | 405 | (insert "(No match)\n")) |
| 406 | (insert (format "total %.0f\n" (fceiling (/ sum 1024.0)))))) | 406 | (insert (format "total %.0f\n" (fceiling (/ sum 1024.0)))))) |
| 407 | ;; dired-insert-directory exprects to find point after the | ||
| 408 | ;; text. But if the listinmg is empty, as e.g. in empty | ||
| 409 | ;; directories with -a removed from switches, point will be | ||
| 410 | ;; before the inserted text, and dired-insert-directory will | ||
| 411 | ;; not indent the listing correctly. Going to the end of the | ||
| 412 | ;; buffer fixes that. | ||
| 413 | (unless files (goto-char (point-max))) | ||
| 407 | (if (memq ?R switches) | 414 | (if (memq ?R switches) |
| 408 | ;; List the contents of all directories recursively. | 415 | ;; List the contents of all directories recursively. |
| 409 | ;; cadr of each element of `file-alist' is t for | 416 | ;; cadr of each element of `file-alist' is t for |
diff --git a/lisp/progmodes/cc-engine.el b/lisp/progmodes/cc-engine.el index 4fc270792fc..6a23da1f2cd 100644 --- a/lisp/progmodes/cc-engine.el +++ b/lisp/progmodes/cc-engine.el | |||
| @@ -6475,6 +6475,52 @@ comment at the start of cc-engine.el for more info." | |||
| 6475 | (c-go-list-forward) | 6475 | (c-go-list-forward) |
| 6476 | t))) | 6476 | t))) |
| 6477 | 6477 | ||
| 6478 | (defun c-back-over-member-initializers () | ||
| 6479 | ;; Test whether we are in a C++ member initializer list, and if so, go back | ||
| 6480 | ;; to the introducing ":", returning the position of the opening paren of | ||
| 6481 | ;; the function's arglist. Otherwise return nil, leaving point unchanged. | ||
| 6482 | (let ((here (point)) | ||
| 6483 | (paren-state (c-parse-state)) | ||
| 6484 | res) | ||
| 6485 | |||
| 6486 | (setq res | ||
| 6487 | (catch 'done | ||
| 6488 | (if (not (c-at-toplevel-p)) | ||
| 6489 | (progn | ||
| 6490 | (while (not (c-at-toplevel-p)) | ||
| 6491 | (goto-char (c-pull-open-brace paren-state))) | ||
| 6492 | (c-backward-syntactic-ws) | ||
| 6493 | (when (not (c-simple-skip-symbol-backward)) | ||
| 6494 | (throw 'done nil)) | ||
| 6495 | (c-backward-syntactic-ws)) | ||
| 6496 | (c-backward-syntactic-ws) | ||
| 6497 | (when (memq (char-before) '(?\) ?})) | ||
| 6498 | (when (not (c-go-list-backward)) | ||
| 6499 | (throw 'done nil)) | ||
| 6500 | (c-backward-syntactic-ws)) | ||
| 6501 | (when (c-simple-skip-symbol-backward) | ||
| 6502 | (c-backward-syntactic-ws))) | ||
| 6503 | |||
| 6504 | (while (eq (char-before) ?,) | ||
| 6505 | (backward-char) | ||
| 6506 | (c-backward-syntactic-ws) | ||
| 6507 | |||
| 6508 | (when (not (memq (char-before) '(?\) ?}))) | ||
| 6509 | (throw 'done nil)) | ||
| 6510 | (when (not (c-go-list-backward)) | ||
| 6511 | (throw 'done nil)) | ||
| 6512 | (c-backward-syntactic-ws) | ||
| 6513 | (when (not (c-simple-skip-symbol-backward)) | ||
| 6514 | (throw 'done nil)) | ||
| 6515 | (c-backward-syntactic-ws)) | ||
| 6516 | |||
| 6517 | (and | ||
| 6518 | (eq (char-before) ?:) | ||
| 6519 | (c-just-after-func-arglist-p)))) | ||
| 6520 | |||
| 6521 | (or res (goto-char here)) | ||
| 6522 | res)) | ||
| 6523 | |||
| 6478 | 6524 | ||
| 6479 | ;; Handling of large scale constructs like statements and declarations. | 6525 | ;; Handling of large scale constructs like statements and declarations. |
| 6480 | 6526 | ||
| @@ -9677,18 +9723,13 @@ comment at the start of cc-engine.el for more info." | |||
| 9677 | ;; 2007-11-09) | 9723 | ;; 2007-11-09) |
| 9678 | )))) | 9724 | )))) |
| 9679 | 9725 | ||
| 9680 | ;; CASE 5B: After a function header but before the body (or | 9726 | ;; CASE 5R: Member init list. (Used to be part of CASE 5B.1) |
| 9681 | ;; the ending semicolon if there's no body). | 9727 | ;; Note there is no limit on the backward search here, since member |
| 9728 | ;; init lists can, in practice, be very large. | ||
| 9682 | ((save-excursion | 9729 | ((save-excursion |
| 9683 | (when (setq placeholder (c-just-after-func-arglist-p | 9730 | (when (setq placeholder (c-back-over-member-initializers)) |
| 9684 | (max lim (c-determine-limit 500)))) | ||
| 9685 | (setq tmp-pos (point)))) | 9731 | (setq tmp-pos (point)))) |
| 9686 | (cond | 9732 | (if (= (c-point 'bosws) (1+ tmp-pos)) |
| 9687 | |||
| 9688 | ;; CASE 5B.1: Member init list. | ||
| 9689 | ((eq (char-after tmp-pos) ?:) | ||
| 9690 | (if (or (>= tmp-pos indent-point) | ||
| 9691 | (= (c-point 'bosws) (1+ tmp-pos))) | ||
| 9692 | (progn | 9733 | (progn |
| 9693 | ;; There is no preceding member init clause. | 9734 | ;; There is no preceding member init clause. |
| 9694 | ;; Indent relative to the beginning of indentation | 9735 | ;; Indent relative to the beginning of indentation |
| @@ -9701,6 +9742,23 @@ comment at the start of cc-engine.el for more info." | |||
| 9701 | (c-forward-syntactic-ws) | 9742 | (c-forward-syntactic-ws) |
| 9702 | (c-add-syntax 'member-init-cont (point)))) | 9743 | (c-add-syntax 'member-init-cont (point)))) |
| 9703 | 9744 | ||
| 9745 | ;; CASE 5B: After a function header but before the body (or | ||
| 9746 | ;; the ending semicolon if there's no body). | ||
| 9747 | ((save-excursion | ||
| 9748 | (when (setq placeholder (c-just-after-func-arglist-p | ||
| 9749 | (max lim (c-determine-limit 500)))) | ||
| 9750 | (setq tmp-pos (point)))) | ||
| 9751 | (cond | ||
| 9752 | |||
| 9753 | ;; CASE 5B.1: Member init list. | ||
| 9754 | ((eq (char-after tmp-pos) ?:) | ||
| 9755 | ;; There is no preceding member init clause. | ||
| 9756 | ;; Indent relative to the beginning of indentation | ||
| 9757 | ;; for the topmost-intro line that contains the | ||
| 9758 | ;; prototype's open paren. | ||
| 9759 | (goto-char placeholder) | ||
| 9760 | (c-add-syntax 'member-init-intro (c-point 'boi))) | ||
| 9761 | |||
| 9704 | ;; CASE 5B.2: K&R arg decl intro | 9762 | ;; CASE 5B.2: K&R arg decl intro |
| 9705 | ((and c-recognize-knr-p | 9763 | ((and c-recognize-knr-p |
| 9706 | (c-in-knr-argdecl lim)) | 9764 | (c-in-knr-argdecl lim)) |
diff --git a/lisp/progmodes/octave.el b/lisp/progmodes/octave.el index 0e540ea348a..4b02645e463 100644 --- a/lisp/progmodes/octave.el +++ b/lisp/progmodes/octave.el | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | ;;; octave.el --- editing octave source files under emacs | 1 | ;;; octave.el --- editing octave source files under emacs -*- lexical-binding: t; -*- |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1997, 2001-2013 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 1997, 2001-2013 Free Software Foundation, Inc. |
| 4 | 4 | ||
| @@ -34,63 +34,42 @@ | |||
| 34 | ;;; Code: | 34 | ;;; Code: |
| 35 | (require 'comint) | 35 | (require 'comint) |
| 36 | 36 | ||
| 37 | ;;; For emacs < 24.3. | ||
| 38 | (require 'newcomment) | ||
| 39 | (eval-when-compile | ||
| 40 | (unless (fboundp 'setq-local) | ||
| 41 | (defmacro setq-local (var val) | ||
| 42 | "Set variable VAR to value VAL in current buffer." | ||
| 43 | (list 'set (list 'make-local-variable (list 'quote var)) val)))) | ||
| 44 | |||
| 37 | (defgroup octave nil | 45 | (defgroup octave nil |
| 38 | "Editing Octave code." | 46 | "Editing Octave code." |
| 39 | :link '(custom-group-link :tag "Font Lock Faces group" font-lock-faces) | 47 | :link '(custom-group-link :tag "Font Lock Faces group" font-lock-faces) |
| 40 | :group 'languages) | 48 | :group 'languages) |
| 41 | 49 | ||
| 42 | (defconst octave-maintainer-address | 50 | (define-obsolete-function-alias 'octave-submit-bug-report |
| 43 | "Kurt Hornik <Kurt.Hornik@wu-wien.ac.at>, bug-gnu-emacs@gnu.org" | 51 | 'report-emacs-bug "24.4") |
| 44 | "Current maintainer of the Emacs Octave package.") | 52 | |
| 45 | 53 | (define-abbrev-table 'octave-abbrev-table nil | |
| 46 | (define-abbrev-table 'octave-abbrev-table | ||
| 47 | (mapcar (lambda (e) (append e '(nil 0 t))) | ||
| 48 | '(("`a" "all_va_args") | ||
| 49 | ("`b" "break") | ||
| 50 | ("`cs" "case") | ||
| 51 | ("`ca" "catch") | ||
| 52 | ("`c" "continue") | ||
| 53 | ("`el" "else") | ||
| 54 | ("`eli" "elseif") | ||
| 55 | ("`et" "end_try_catch") | ||
| 56 | ("`eu" "end_unwind_protect") | ||
| 57 | ("`ef" "endfor") | ||
| 58 | ("`efu" "endfunction") | ||
| 59 | ("`ei" "endif") | ||
| 60 | ("`es" "endswitch") | ||
| 61 | ("`ew" "endwhile") | ||
| 62 | ("`f" "for") | ||
| 63 | ("`fu" "function") | ||
| 64 | ("`gl" "global") | ||
| 65 | ("`gp" "gplot") | ||
| 66 | ("`gs" "gsplot") | ||
| 67 | ("`if" "if ()") | ||
| 68 | ("`o" "otherwise") | ||
| 69 | ("`rp" "replot") | ||
| 70 | ("`r" "return") | ||
| 71 | ("`s" "switch") | ||
| 72 | ("`t" "try") | ||
| 73 | ("`u" "until ()") | ||
| 74 | ("`up" "unwind_protect") | ||
| 75 | ("`upc" "unwind_protect_cleanup") | ||
| 76 | ("`w" "while ()"))) | ||
| 77 | "Abbrev table for Octave's reserved words. | 54 | "Abbrev table for Octave's reserved words. |
| 78 | Used in `octave-mode' and `inferior-octave-mode' buffers. | 55 | Used in `octave-mode' and `inferior-octave-mode' buffers.") |
| 79 | All Octave abbrevs start with a grave accent (`)." | ||
| 80 | :regexp "\\(?:[^`]\\|^\\)\\(\\(?:\\<\\|`\\)\\w+\\)\\W*") | ||
| 81 | 56 | ||
| 82 | (defvar octave-comment-char ?# | 57 | (defvar octave-comment-char ?# |
| 83 | "Character to start an Octave comment.") | 58 | "Character to start an Octave comment.") |
| 59 | |||
| 84 | (defvar octave-comment-start | 60 | (defvar octave-comment-start |
| 85 | (string octave-comment-char ?\s) | 61 | (string octave-comment-char ?\s) |
| 86 | "String to insert to start a new Octave in-line comment.") | 62 | "String to insert to start a new Octave in-line comment.") |
| 63 | |||
| 87 | (defvar octave-comment-start-skip "\\s<+\\s-*" | 64 | (defvar octave-comment-start-skip "\\s<+\\s-*" |
| 88 | "Regexp to match the start of an Octave comment up to its body.") | 65 | "Regexp to match the start of an Octave comment up to its body.") |
| 89 | 66 | ||
| 90 | (defvar octave-begin-keywords | 67 | (defvar octave-begin-keywords |
| 91 | '("do" "for" "function" "if" "switch" "try" "unwind_protect" "while")) | 68 | '("do" "for" "function" "if" "switch" "try" "unwind_protect" "while")) |
| 69 | |||
| 92 | (defvar octave-else-keywords | 70 | (defvar octave-else-keywords |
| 93 | '("case" "catch" "else" "elseif" "otherwise" "unwind_protect_cleanup")) | 71 | '("case" "catch" "else" "elseif" "otherwise" "unwind_protect_cleanup")) |
| 72 | |||
| 94 | (defvar octave-end-keywords | 73 | (defvar octave-end-keywords |
| 95 | '("endfor" "endfunction" "endif" "endswitch" "end_try_catch" | 74 | '("endfor" "endfunction" "endif" "endswitch" "end_try_catch" |
| 96 | "end_unwind_protect" "endwhile" "until" "end")) | 75 | "end_unwind_protect" "endwhile" "until" "end")) |
| @@ -109,37 +88,6 @@ All Octave abbrevs start with a grave accent (`)." | |||
| 109 | "which" "who" "whos") | 88 | "which" "who" "whos") |
| 110 | "Text functions in Octave.") | 89 | "Text functions in Octave.") |
| 111 | 90 | ||
| 112 | (defvar octave-variables | ||
| 113 | '("DEFAULT_EXEC_PATH" "DEFAULT_LOADPATH" | ||
| 114 | "EDITOR" "EXEC_PATH" "F_DUPFD" "F_GETFD" "F_GETFL" "F_SETFD" | ||
| 115 | "F_SETFL" "I" "IMAGE_PATH" "Inf" "J" | ||
| 116 | "NaN" "OCTAVE_VERSION" "O_APPEND" "O_CREAT" "O_EXCL" | ||
| 117 | "O_NONBLOCK" "O_RDONLY" "O_RDWR" "O_TRUNC" "O_WRONLY" "PAGER" "PS1" | ||
| 118 | "PS2" "PS4" "PWD" "SEEK_CUR" "SEEK_END" "SEEK_SET" "__F_DUPFD__" | ||
| 119 | "__F_GETFD__" "__F_GETFL__" "__F_SETFD__" "__F_SETFL__" "__I__" | ||
| 120 | "__Inf__" "__J__" "__NaN__" "__OCTAVE_VERSION__" "__O_APPEND__" | ||
| 121 | "__O_CREAT__" "__O_EXCL__" "__O_NONBLOCK__" "__O_RDONLY__" | ||
| 122 | "__O_RDWR__" "__O_TRUNC__" "__O_WRONLY__" "__PWD__" "__SEEK_CUR__" | ||
| 123 | "__SEEK_END__" "__SEEK_SET__" "__argv__" "__e__" "__eps__" | ||
| 124 | "__i__" "__inf__" "__j__" "__nan__" "__pi__" | ||
| 125 | "__program_invocation_name__" "__program_name__" "__realmax__" | ||
| 126 | "__realmin__" "__stderr__" "__stdin__" "__stdout__" "ans" "argv" | ||
| 127 | "beep_on_error" "completion_append_char" | ||
| 128 | "crash_dumps_octave_core" "default_save_format" | ||
| 129 | "e" "echo_executing_commands" "eps" | ||
| 130 | "error_text" "gnuplot_binary" "history_file" | ||
| 131 | "history_size" "ignore_function_time_stamp" | ||
| 132 | "inf" "nan" "nargin" "output_max_field_width" "output_precision" | ||
| 133 | "page_output_immediately" "page_screen_output" "pi" | ||
| 134 | "print_answer_id_name" "print_empty_dimensions" | ||
| 135 | "program_invocation_name" "program_name" | ||
| 136 | "realmax" "realmin" "return_last_computed_value" "save_precision" | ||
| 137 | "saving_history" "sighup_dumps_octave_core" "sigterm_dumps_octave_core" | ||
| 138 | "silent_functions" "split_long_rows" "stderr" "stdin" "stdout" | ||
| 139 | "string_fill_char" "struct_levels_to_print" | ||
| 140 | "suppress_verbose_help_message") | ||
| 141 | "Builtin variables in Octave.") | ||
| 142 | |||
| 143 | (defvar octave-function-header-regexp | 91 | (defvar octave-function-header-regexp |
| 144 | (concat "^\\s-*\\_<\\(function\\)\\_>" | 92 | (concat "^\\s-*\\_<\\(function\\)\\_>" |
| 145 | "\\([^=;\n]*=[ \t]*\\|[ \t]*\\)\\(\\(?:\\w\\|\\s_\\)+\\)\\_>") | 93 | "\\([^=;\n]*=[ \t]*\\|[ \t]*\\)\\(\\(?:\\w\\|\\s_\\)+\\)\\_>") |
| @@ -156,14 +104,22 @@ parenthetical grouping.") | |||
| 156 | octave-text-functions)) | 104 | octave-text-functions)) |
| 157 | "\\)\\_>") | 105 | "\\)\\_>") |
| 158 | 'font-lock-keyword-face) | 106 | 'font-lock-keyword-face) |
| 107 | ;; Note: 'end' also serves as the last index in an indexing expression. | ||
| 108 | ;; Ref: http://www.mathworks.com/help/matlab/ref/end.html | ||
| 109 | '("\\_<end\\_>" (0 (save-excursion | ||
| 110 | (condition-case nil | ||
| 111 | (progn | ||
| 112 | (goto-char (match-beginning 0)) | ||
| 113 | (backward-up-list) | ||
| 114 | (unless (eq (char-after) ?\() | ||
| 115 | font-lock-keyword-face)) | ||
| 116 | (error font-lock-keyword-face))) | ||
| 117 | t)) | ||
| 159 | ;; Fontify all builtin operators. | 118 | ;; Fontify all builtin operators. |
| 160 | (cons "\\(&\\||\\|<=\\|>=\\|==\\|<\\|>\\|!=\\|!\\)" | 119 | (cons "\\(&\\||\\|<=\\|>=\\|==\\|<\\|>\\|!=\\|!\\)" |
| 161 | (if (boundp 'font-lock-builtin-face) | 120 | (if (boundp 'font-lock-builtin-face) |
| 162 | 'font-lock-builtin-face | 121 | 'font-lock-builtin-face |
| 163 | 'font-lock-preprocessor-face)) | 122 | 'font-lock-preprocessor-face)) |
| 164 | ;; Fontify all builtin variables. | ||
| 165 | (cons (concat "\\_<" (regexp-opt octave-variables) "\\_>") | ||
| 166 | 'font-lock-variable-name-face) | ||
| 167 | ;; Fontify all function declarations. | 123 | ;; Fontify all function declarations. |
| 168 | (list octave-function-header-regexp | 124 | (list octave-function-header-regexp |
| 169 | '(1 font-lock-keyword-face) | 125 | '(1 font-lock-keyword-face) |
| @@ -196,10 +152,8 @@ parenthetical grouping.") | |||
| 196 | 152 | ||
| 197 | (defvar octave-mode-map | 153 | (defvar octave-mode-map |
| 198 | (let ((map (make-sparse-keymap))) | 154 | (let ((map (make-sparse-keymap))) |
| 199 | (define-key map "`" 'octave-abbrev-start) | ||
| 200 | (define-key map "\e\n" 'octave-indent-new-comment-line) | 155 | (define-key map "\e\n" 'octave-indent-new-comment-line) |
| 201 | (define-key map "\M-\C-q" 'octave-indent-defun) | 156 | (define-key map "\M-\C-q" 'octave-indent-defun) |
| 202 | (define-key map "\C-c\C-b" 'octave-submit-bug-report) | ||
| 203 | (define-key map "\C-c\C-p" 'octave-previous-code-line) | 157 | (define-key map "\C-c\C-p" 'octave-previous-code-line) |
| 204 | (define-key map "\C-c\C-n" 'octave-next-code-line) | 158 | (define-key map "\C-c\C-n" 'octave-next-code-line) |
| 205 | (define-key map "\C-c\C-a" 'octave-beginning-of-line) | 159 | (define-key map "\C-c\C-a" 'octave-beginning-of-line) |
| @@ -208,6 +162,7 @@ parenthetical grouping.") | |||
| 208 | (define-key map "\C-c\M-\C-h" 'octave-mark-block) | 162 | (define-key map "\C-c\M-\C-h" 'octave-mark-block) |
| 209 | (define-key map "\C-c]" 'smie-close-block) | 163 | (define-key map "\C-c]" 'smie-close-block) |
| 210 | (define-key map "\C-c/" 'smie-close-block) | 164 | (define-key map "\C-c/" 'smie-close-block) |
| 165 | (define-key map "\C-c;" 'octave-update-function-file-comment) | ||
| 211 | (define-key map "\C-c\C-f" 'octave-insert-defun) | 166 | (define-key map "\C-c\C-f" 'octave-insert-defun) |
| 212 | (define-key map "\C-c\C-il" 'octave-send-line) | 167 | (define-key map "\C-c\C-il" 'octave-send-line) |
| 213 | (define-key map "\C-c\C-ib" 'octave-send-block) | 168 | (define-key map "\C-c\C-ib" 'octave-send-block) |
| @@ -242,7 +197,8 @@ parenthetical grouping.") | |||
| 242 | ["Close Block" smie-close-block t]) | 197 | ["Close Block" smie-close-block t]) |
| 243 | ("Functions" | 198 | ("Functions" |
| 244 | ["Indent Function" octave-indent-defun t] | 199 | ["Indent Function" octave-indent-defun t] |
| 245 | ["Insert Function" octave-insert-defun t]) | 200 | ["Insert Function" octave-insert-defun t] |
| 201 | ["Update function file comment" octave-update-function-file-comment t]) | ||
| 246 | "-" | 202 | "-" |
| 247 | ("Debug" | 203 | ("Debug" |
| 248 | ["Send Current Line" octave-send-line t] | 204 | ["Send Current Line" octave-send-line t] |
| @@ -255,16 +211,14 @@ parenthetical grouping.") | |||
| 255 | "-" | 211 | "-" |
| 256 | ["Indent Line" indent-according-to-mode t] | 212 | ["Indent Line" indent-according-to-mode t] |
| 257 | ["Complete Symbol" completion-at-point t] | 213 | ["Complete Symbol" completion-at-point t] |
| 258 | "-" | ||
| 259 | ["Toggle Abbrev Mode" abbrev-mode | ||
| 260 | :style toggle :selected abbrev-mode] | ||
| 261 | ["Toggle Auto-Fill Mode" auto-fill-mode | 214 | ["Toggle Auto-Fill Mode" auto-fill-mode |
| 262 | :style toggle :selected auto-fill-function] | 215 | :style toggle :selected auto-fill-function] |
| 263 | "-" | 216 | "-" |
| 264 | ["Submit Bug Report" octave-submit-bug-report t] | ||
| 265 | "-" | ||
| 266 | ["Describe Octave Mode" describe-mode t] | 217 | ["Describe Octave Mode" describe-mode t] |
| 267 | ["Lookup Octave Index" info-lookup-symbol t])) | 218 | ["Lookup Octave Index" info-lookup-symbol t] |
| 219 | ["Customize Octave" (customize-group 'octave) t] | ||
| 220 | "-" | ||
| 221 | ["Submit Bug Report" report-emacs-bug t])) | ||
| 268 | 222 | ||
| 269 | (defvar octave-mode-syntax-table | 223 | (defvar octave-mode-syntax-table |
| 270 | (let ((table (make-syntax-table))) | 224 | (let ((table (make-syntax-table))) |
| @@ -300,6 +254,12 @@ parenthetical grouping.") | |||
| 300 | table) | 254 | table) |
| 301 | "Syntax table in use in `octave-mode' buffers.") | 255 | "Syntax table in use in `octave-mode' buffers.") |
| 302 | 256 | ||
| 257 | (defcustom octave-font-lock-texinfo-comment t | ||
| 258 | "Control whether to highlight the texinfo comment block." | ||
| 259 | :type 'boolean | ||
| 260 | :group 'octave | ||
| 261 | :version "24.4") | ||
| 262 | |||
| 303 | (defcustom octave-blink-matching-block t | 263 | (defcustom octave-blink-matching-block t |
| 304 | "Control the blinking of matching Octave block keywords. | 264 | "Control the blinking of matching Octave block keywords. |
| 305 | Non-nil means show matching begin of block when inserting a space, | 265 | Non-nil means show matching begin of block when inserting a space, |
| @@ -320,15 +280,17 @@ newline or semicolon after an else or end keyword." | |||
| 320 | "Extra indentation applied to Octave continuation lines." | 280 | "Extra indentation applied to Octave continuation lines." |
| 321 | :type 'integer | 281 | :type 'integer |
| 322 | :group 'octave) | 282 | :group 'octave) |
| 283 | |||
| 323 | (eval-and-compile | 284 | (eval-and-compile |
| 324 | (defconst octave-continuation-marker-regexp "\\\\\\|\\.\\.\\.")) | 285 | (defconst octave-continuation-marker-regexp "\\\\\\|\\.\\.\\.")) |
| 286 | |||
| 325 | (defvar octave-continuation-regexp | 287 | (defvar octave-continuation-regexp |
| 326 | (concat "[^#%\n]*\\(" octave-continuation-marker-regexp | 288 | (concat "[^#%\n]*\\(" octave-continuation-marker-regexp |
| 327 | "\\)\\s-*\\(\\s<.*\\)?$")) | 289 | "\\)\\s-*\\(\\s<.*\\)?$")) |
| 328 | (defcustom octave-continuation-string "\\" | 290 | |
| 329 | "Character string used for Octave continuation lines. Normally \\." | 291 | ;; Char \ is considered a bad decision for continuing a line. |
| 330 | :type 'string | 292 | (defconst octave-continuation-string "..." |
| 331 | :group 'octave) | 293 | "Character string used for Octave continuation lines.") |
| 332 | 294 | ||
| 333 | (defvar octave-mode-imenu-generic-expression | 295 | (defvar octave-mode-imenu-generic-expression |
| 334 | (list | 296 | (list |
| @@ -345,11 +307,13 @@ newline or semicolon after an else or end keyword." | |||
| 345 | "Non-nil means display `inferior-octave-buffer' after sending to it." | 307 | "Non-nil means display `inferior-octave-buffer' after sending to it." |
| 346 | :type 'boolean | 308 | :type 'boolean |
| 347 | :group 'octave) | 309 | :group 'octave) |
| 310 | |||
| 348 | (defcustom octave-send-line-auto-forward t | 311 | (defcustom octave-send-line-auto-forward t |
| 349 | "Control auto-forward after sending to the inferior Octave process. | 312 | "Control auto-forward after sending to the inferior Octave process. |
| 350 | Non-nil means always go to the next Octave code line after sending." | 313 | Non-nil means always go to the next Octave code line after sending." |
| 351 | :type 'boolean | 314 | :type 'boolean |
| 352 | :group 'octave) | 315 | :group 'octave) |
| 316 | |||
| 353 | (defcustom octave-send-echo-input t | 317 | (defcustom octave-send-echo-input t |
| 354 | "Non-nil means echo input sent to the inferior Octave process." | 318 | "Non-nil means echo input sent to the inferior Octave process." |
| 355 | :type 'boolean | 319 | :type 'boolean |
| @@ -462,11 +426,12 @@ Non-nil means always go to the next Octave code line after sending." | |||
| 462 | (forward-comment 1)) | 426 | (forward-comment 1)) |
| 463 | (cond | 427 | (cond |
| 464 | ((and (looking-at "$\\|[%#]") | 428 | ((and (looking-at "$\\|[%#]") |
| 465 | (not (smie-rule-bolp)) | 429 | ;; Ignore it if it's within parentheses or if the newline does not end |
| 466 | ;; Ignore it if it's within parentheses. | 430 | ;; some preceding text. |
| 467 | (prog1 (let ((ppss (syntax-ppss))) | 431 | (prog1 (and (not (smie-rule-bolp)) |
| 468 | (not (and (nth 1 ppss) | 432 | (let ((ppss (syntax-ppss))) |
| 469 | (eq ?\( (char-after (nth 1 ppss)))))) | 433 | (not (and (nth 1 ppss) |
| 434 | (eq ?\( (char-after (nth 1 ppss))))))) | ||
| 470 | (forward-comment (point-max)))) | 435 | (forward-comment (point-max)))) |
| 471 | ;; Why bother distinguishing \n and ;? | 436 | ;; Why bother distinguishing \n and ;? |
| 472 | ";") ;;"\n" | 437 | ";") ;;"\n" |
| @@ -508,130 +473,59 @@ Non-nil means always go to the next Octave code line after sending." | |||
| 508 | (define-derived-mode octave-mode prog-mode "Octave" | 473 | (define-derived-mode octave-mode prog-mode "Octave" |
| 509 | "Major mode for editing Octave code. | 474 | "Major mode for editing Octave code. |
| 510 | 475 | ||
| 511 | This mode makes it easier to write Octave code by helping with | 476 | Octave is a high-level language, primarily intended for numerical |
| 512 | indentation, doing some of the typing for you (with Abbrev mode) and by | 477 | computations. It provides a convenient command line interface |
| 513 | showing keywords, comments, strings, etc. in different faces (with | 478 | for solving linear and nonlinear problems numerically. Function |
| 514 | Font Lock mode on terminals that support it). | 479 | definitions can also be stored in files and used in batch mode." |
| 515 | 480 | :abbrev-table octave-abbrev-table | |
| 516 | Octave itself is a high-level language, primarily intended for numerical | ||
| 517 | computations. It provides a convenient command line interface for | ||
| 518 | solving linear and nonlinear problems numerically. Function definitions | ||
| 519 | can also be stored in files, and it can be used in a batch mode (which | ||
| 520 | is why you need this mode!). | ||
| 521 | |||
| 522 | The latest released version of Octave is always available via anonymous | ||
| 523 | ftp from ftp.octave.org in the directory `/pub/octave'. Complete | ||
| 524 | source and binaries for several popular systems are available. | ||
| 525 | |||
| 526 | Type \\[list-abbrevs] to display the built-in abbrevs for Octave keywords. | ||
| 527 | |||
| 528 | Keybindings | ||
| 529 | =========== | ||
| 530 | |||
| 531 | \\{octave-mode-map} | ||
| 532 | |||
| 533 | Variables you can use to customize Octave mode | ||
| 534 | ============================================== | ||
| 535 | |||
| 536 | `octave-blink-matching-block' | ||
| 537 | Non-nil means show matching begin of block when inserting a space, | ||
| 538 | newline or semicolon after an else or end keyword. Default is t. | ||
| 539 | |||
| 540 | `octave-block-offset' | ||
| 541 | Extra indentation applied to statements in block structures. | ||
| 542 | Default is 2. | ||
| 543 | |||
| 544 | `octave-continuation-offset' | ||
| 545 | Extra indentation applied to Octave continuation lines. | ||
| 546 | Default is 4. | ||
| 547 | |||
| 548 | `octave-continuation-string' | ||
| 549 | String used for Octave continuation lines. | ||
| 550 | Default is a backslash. | ||
| 551 | |||
| 552 | `octave-send-echo-input' | ||
| 553 | Non-nil means always display `inferior-octave-buffer' after sending a | ||
| 554 | command to the inferior Octave process. | ||
| 555 | |||
| 556 | `octave-send-line-auto-forward' | ||
| 557 | Non-nil means always go to the next unsent line of Octave code after | ||
| 558 | sending a line to the inferior Octave process. | ||
| 559 | |||
| 560 | `octave-send-echo-input' | ||
| 561 | Non-nil means echo input sent to the inferior Octave process. | ||
| 562 | |||
| 563 | Turning on Octave mode runs the hook `octave-mode-hook'. | ||
| 564 | |||
| 565 | To begin using this mode for all `.m' files that you edit, add the | ||
| 566 | following lines to your init file: | ||
| 567 | |||
| 568 | (add-to-list 'auto-mode-alist '(\"\\\\.m\\\\'\" . octave-mode)) | ||
| 569 | |||
| 570 | To automatically turn on the abbrev and auto-fill features, | ||
| 571 | add the following lines to your init file as well: | ||
| 572 | |||
| 573 | (add-hook 'octave-mode-hook | ||
| 574 | (lambda () | ||
| 575 | (abbrev-mode 1) | ||
| 576 | (auto-fill-mode 1))) | ||
| 577 | |||
| 578 | To submit a problem report, enter \\[octave-submit-bug-report] from \ | ||
| 579 | an Octave mode buffer. | ||
| 580 | This automatically sets up a mail buffer with version information | ||
| 581 | already added. You just need to add a description of the problem, | ||
| 582 | including a reproducible test case and send the message." | ||
| 583 | (setq local-abbrev-table octave-abbrev-table) | ||
| 584 | 481 | ||
| 585 | (smie-setup octave-smie-grammar #'octave-smie-rules | 482 | (smie-setup octave-smie-grammar #'octave-smie-rules |
| 586 | :forward-token #'octave-smie-forward-token | 483 | :forward-token #'octave-smie-forward-token |
| 587 | :backward-token #'octave-smie-backward-token) | 484 | :backward-token #'octave-smie-backward-token) |
| 588 | (set (make-local-variable 'smie-indent-basic) 'octave-block-offset) | 485 | (setq-local smie-indent-basic 'octave-block-offset) |
| 589 | 486 | ||
| 590 | (set (make-local-variable 'smie-blink-matching-triggers) | 487 | (setq-local smie-blink-matching-triggers |
| 591 | (cons ?\; smie-blink-matching-triggers)) | 488 | (cons ?\; smie-blink-matching-triggers)) |
| 592 | (unless octave-blink-matching-block | 489 | (unless octave-blink-matching-block |
| 593 | (remove-hook 'post-self-insert-hook #'smie-blink-matching-open 'local)) | 490 | (remove-hook 'post-self-insert-hook #'smie-blink-matching-open 'local)) |
| 594 | 491 | ||
| 595 | (set (make-local-variable 'electric-indent-chars) | 492 | (setq-local electric-indent-chars |
| 596 | (cons ?\; electric-indent-chars)) | 493 | (cons ?\; electric-indent-chars)) |
| 597 | ;; IIUC matlab-mode takes the opposite approach: it makes RET insert | 494 | ;; IIUC matlab-mode takes the opposite approach: it makes RET insert |
| 598 | ;; a ";" at those places where it's correct (i.e. outside of parens). | 495 | ;; a ";" at those places where it's correct (i.e. outside of parens). |
| 599 | (set (make-local-variable 'electric-layout-rules) '((?\; . after))) | 496 | (setq-local electric-layout-rules '((?\; . after))) |
| 600 | 497 | ||
| 601 | (set (make-local-variable 'comment-start) octave-comment-start) | 498 | (setq-local comment-start octave-comment-start) |
| 602 | (set (make-local-variable 'comment-end) "") | 499 | (setq-local comment-end "") |
| 603 | ;; Don't set it here: it's not really a property of the language, | 500 | ;; Don't set it here: it's not really a property of the language, |
| 604 | ;; just a personal preference of the author. | 501 | ;; just a personal preference of the author. |
| 605 | ;; (set (make-local-variable 'comment-column) 32) | 502 | ;; (setq-local comment-column 32) |
| 606 | (set (make-local-variable 'comment-start-skip) "\\s<+\\s-*") | 503 | (setq-local comment-start-skip "\\s<+\\s-*") |
| 607 | (set (make-local-variable 'comment-add) 1) | 504 | (setq-local comment-add 1) |
| 608 | 505 | ||
| 609 | (set (make-local-variable 'parse-sexp-ignore-comments) t) | 506 | (setq-local parse-sexp-ignore-comments t) |
| 610 | (set (make-local-variable 'paragraph-start) | 507 | (setq-local paragraph-start (concat "\\s-*$\\|" page-delimiter)) |
| 611 | (concat "\\s-*$\\|" page-delimiter)) | 508 | (setq-local paragraph-separate paragraph-start) |
| 612 | (set (make-local-variable 'paragraph-separate) paragraph-start) | 509 | (setq-local paragraph-ignore-fill-prefix t) |
| 613 | (set (make-local-variable 'paragraph-ignore-fill-prefix) t) | 510 | (setq-local fill-paragraph-function 'octave-fill-paragraph) |
| 614 | (set (make-local-variable 'fill-paragraph-function) 'octave-fill-paragraph) | ||
| 615 | ;; FIXME: Why disable it? | 511 | ;; FIXME: Why disable it? |
| 616 | ;; (set (make-local-variable 'adaptive-fill-regexp) nil) | 512 | ;; (setq-local adaptive-fill-regexp nil) |
| 617 | ;; Again, this is not a property of the language, don't set it here. | 513 | ;; Again, this is not a property of the language, don't set it here. |
| 618 | ;; (set (make-local-variable 'fill-column) 72) | 514 | ;; (setq fill-column 72) |
| 619 | (set (make-local-variable 'normal-auto-fill-function) 'octave-auto-fill) | 515 | (setq-local normal-auto-fill-function 'octave-auto-fill) |
| 620 | 516 | ||
| 621 | (set (make-local-variable 'font-lock-defaults) | 517 | (setq font-lock-defaults '(octave-font-lock-keywords)) |
| 622 | '(octave-font-lock-keywords)) | ||
| 623 | 518 | ||
| 624 | (set (make-local-variable 'syntax-propertize-function) | 519 | (setq-local syntax-propertize-function #'octave-syntax-propertize-function) |
| 625 | #'octave-syntax-propertize-function) | ||
| 626 | 520 | ||
| 627 | (set (make-local-variable 'imenu-generic-expression) | 521 | (setq imenu-generic-expression octave-mode-imenu-generic-expression) |
| 628 | octave-mode-imenu-generic-expression) | 522 | (setq imenu-case-fold-search nil) |
| 629 | (set (make-local-variable 'imenu-case-fold-search) nil) | ||
| 630 | 523 | ||
| 631 | (add-hook 'completion-at-point-functions | 524 | (add-hook 'completion-at-point-functions |
| 632 | 'octave-completion-at-point-function nil t) | 525 | 'octave-completion-at-point-function nil t) |
| 633 | (set (make-local-variable 'beginning-of-defun-function) | 526 | (add-hook 'before-save-hook 'octave-sync-function-file-names nil t) |
| 634 | 'octave-beginning-of-defun) | 527 | (setq-local beginning-of-defun-function 'octave-beginning-of-defun) |
| 528 | (and octave-font-lock-texinfo-comment (octave-font-lock-texinfo-comment)) | ||
| 635 | 529 | ||
| 636 | (easy-menu-add octave-mode-menu)) | 530 | (easy-menu-add octave-mode-menu)) |
| 637 | 531 | ||
| @@ -652,6 +546,13 @@ including a reproducible test case and send the message." | |||
| 652 | :type 'regexp | 546 | :type 'regexp |
| 653 | :group 'octave) | 547 | :group 'octave) |
| 654 | 548 | ||
| 549 | (defcustom inferior-octave-prompt-read-only comint-prompt-read-only | ||
| 550 | "If non-nil, the Octave prompt is read only. | ||
| 551 | See `comint-prompt-read-only' for details." | ||
| 552 | :type 'boolean | ||
| 553 | :group 'octave | ||
| 554 | :version "24.4") | ||
| 555 | |||
| 655 | (defcustom inferior-octave-startup-file nil | 556 | (defcustom inferior-octave-startup-file nil |
| 656 | "Name of the inferior Octave startup file. | 557 | "Name of the inferior Octave startup file. |
| 657 | The contents of this file are sent to the inferior Octave process on | 558 | The contents of this file are sent to the inferior Octave process on |
| @@ -696,28 +597,12 @@ mode, set this to (\"-q\" \"--traditional\")." | |||
| 696 | ;; Could certainly do more font locking in inferior Octave ... | 597 | ;; Could certainly do more font locking in inferior Octave ... |
| 697 | "Additional expressions to highlight in Inferior Octave mode.") | 598 | "Additional expressions to highlight in Inferior Octave mode.") |
| 698 | 599 | ||
| 699 | |||
| 700 | ;;; Compatibility functions | ||
| 701 | (if (not (fboundp 'comint-line-beginning-position)) | ||
| 702 | ;; comint-line-beginning-position is defined in Emacs 21 | ||
| 703 | (defun comint-line-beginning-position () | ||
| 704 | "Returns the buffer position of the beginning of the line, after any prompt. | ||
| 705 | The prompt is assumed to be any text at the beginning of the line matching | ||
| 706 | the regular expression `comint-prompt-regexp', a buffer local variable." | ||
| 707 | (save-excursion (comint-bol nil) (point)))) | ||
| 708 | |||
| 709 | |||
| 710 | (defvar inferior-octave-output-list nil) | 600 | (defvar inferior-octave-output-list nil) |
| 711 | (defvar inferior-octave-output-string nil) | 601 | (defvar inferior-octave-output-string nil) |
| 712 | (defvar inferior-octave-receive-in-progress nil) | 602 | (defvar inferior-octave-receive-in-progress nil) |
| 713 | 603 | ||
| 714 | (defvar inferior-octave-startup-hook nil) | 604 | (define-obsolete-variable-alias 'inferior-octave-startup-hook |
| 715 | 605 | 'inferior-octave-mode-hook "24.4") | |
| 716 | (defvar inferior-octave-complete-impossible nil | ||
| 717 | "Non-nil means that `inferior-octave-complete' is impossible.") | ||
| 718 | |||
| 719 | (defvar inferior-octave-has-built-in-variables nil | ||
| 720 | "Non-nil means that Octave has built-in variables.") | ||
| 721 | 606 | ||
| 722 | (defvar inferior-octave-dynamic-complete-functions | 607 | (defvar inferior-octave-dynamic-complete-functions |
| 723 | '(inferior-octave-completion-at-point comint-filename-completion) | 608 | '(inferior-octave-completion-at-point comint-filename-completion) |
| @@ -728,31 +613,25 @@ in the Inferior Octave buffer.") | |||
| 728 | (defvar info-lookup-mode) | 613 | (defvar info-lookup-mode) |
| 729 | 614 | ||
| 730 | (define-derived-mode inferior-octave-mode comint-mode "Inferior Octave" | 615 | (define-derived-mode inferior-octave-mode comint-mode "Inferior Octave" |
| 731 | "Major mode for interacting with an inferior Octave process. | 616 | "Major mode for interacting with an inferior Octave process." |
| 732 | Runs Octave as a subprocess of Emacs, with Octave I/O through an Emacs | 617 | :abbrev-table octave-abbrev-table |
| 733 | buffer. | 618 | (setq comint-prompt-regexp inferior-octave-prompt) |
| 734 | 619 | ||
| 735 | Entry to this mode successively runs the hooks `comint-mode-hook' and | 620 | (setq-local comment-start octave-comment-start) |
| 736 | `inferior-octave-mode-hook'." | 621 | (setq-local comment-end "") |
| 737 | (setq comint-prompt-regexp inferior-octave-prompt | 622 | (setq comment-column 32) |
| 738 | mode-line-process '(":%s") | 623 | (setq-local comment-start-skip octave-comment-start-skip) |
| 739 | local-abbrev-table octave-abbrev-table) | ||
| 740 | 624 | ||
| 741 | (set (make-local-variable 'comment-start) octave-comment-start) | 625 | (setq font-lock-defaults '(inferior-octave-font-lock-keywords nil nil)) |
| 742 | (set (make-local-variable 'comment-end) "") | ||
| 743 | (set (make-local-variable 'comment-column) 32) | ||
| 744 | (set (make-local-variable 'comment-start-skip) octave-comment-start-skip) | ||
| 745 | 626 | ||
| 746 | (set (make-local-variable 'font-lock-defaults) | 627 | (setq info-lookup-mode 'octave-mode) |
| 747 | '(inferior-octave-font-lock-keywords nil nil)) | ||
| 748 | |||
| 749 | (set (make-local-variable 'info-lookup-mode) 'octave-mode) | ||
| 750 | 628 | ||
| 751 | (setq comint-input-ring-file-name | 629 | (setq comint-input-ring-file-name |
| 752 | (or (getenv "OCTAVE_HISTFILE") "~/.octave_hist") | 630 | (or (getenv "OCTAVE_HISTFILE") "~/.octave_hist") |
| 753 | comint-input-ring-size (or (getenv "OCTAVE_HISTSIZE") 1024)) | 631 | comint-input-ring-size (or (getenv "OCTAVE_HISTSIZE") 1024)) |
| 754 | (set (make-local-variable 'comint-dynamic-complete-functions) | 632 | (setq-local comint-dynamic-complete-functions |
| 755 | inferior-octave-dynamic-complete-functions) | 633 | inferior-octave-dynamic-complete-functions) |
| 634 | (setq-local comint-prompt-read-only inferior-octave-prompt-read-only) | ||
| 756 | (add-hook 'comint-input-filter-functions | 635 | (add-hook 'comint-input-filter-functions |
| 757 | 'inferior-octave-directory-tracker nil t) | 636 | 'inferior-octave-directory-tracker nil t) |
| 758 | (comint-read-input-ring t)) | 637 | (comint-read-input-ring t)) |
| @@ -816,20 +695,11 @@ startup file, `~/.emacs-octave'." | |||
| 816 | 'identity inferior-octave-output-list "\n") | 695 | 'identity inferior-octave-output-list "\n") |
| 817 | "\n")))) | 696 | "\n")))) |
| 818 | 697 | ||
| 819 | ;; Find out whether Octave has built-in variables. | ||
| 820 | (inferior-octave-send-list-and-digest | ||
| 821 | (list "exist \"LOADPATH\"\n")) | ||
| 822 | (setq inferior-octave-has-built-in-variables | ||
| 823 | (string-match "101$" (car inferior-octave-output-list))) | ||
| 824 | |||
| 825 | ;; An empty secondary prompt, as e.g. obtained by '--braindead', | 698 | ;; An empty secondary prompt, as e.g. obtained by '--braindead', |
| 826 | ;; means trouble. | 699 | ;; means trouble. |
| 827 | (inferior-octave-send-list-and-digest (list "PS2\n")) | 700 | (inferior-octave-send-list-and-digest (list "PS2\n")) |
| 828 | (if (string-match "\\(PS2\\|ans\\) = *$" (car inferior-octave-output-list)) | 701 | (if (string-match "\\(PS2\\|ans\\) = *$" (car inferior-octave-output-list)) |
| 829 | (inferior-octave-send-list-and-digest | 702 | (inferior-octave-send-list-and-digest (list "PS2 (\"> \");\n"))) |
| 830 | (list (if inferior-octave-has-built-in-variables | ||
| 831 | "PS2 = \"> \"\n" | ||
| 832 | "PS2 (\"> \");\n")))) | ||
| 833 | 703 | ||
| 834 | ;; O.k., now we are ready for the Inferior Octave startup commands. | 704 | ;; O.k., now we are ready for the Inferior Octave startup commands. |
| 835 | (let* (commands | 705 | (let* (commands |
| @@ -840,9 +710,7 @@ startup file, `~/.emacs-octave'." | |||
| 840 | (list "more off;\n" | 710 | (list "more off;\n" |
| 841 | (if (not (string-equal | 711 | (if (not (string-equal |
| 842 | inferior-octave-output-string ">> ")) | 712 | inferior-octave-output-string ">> ")) |
| 843 | (if inferior-octave-has-built-in-variables | 713 | "PS1 (\"\\\\s> \");\n") |
| 844 | "PS1=\"\\\\s> \";\n" | ||
| 845 | "PS1 (\"\\\\s> \");\n")) | ||
| 846 | (if (file-exists-p file) | 714 | (if (file-exists-p file) |
| 847 | (format "source (\"%s\");\n" file)))) | 715 | (format "source (\"%s\");\n" file)))) |
| 848 | (inferior-octave-send-list-and-digest commands)) | 716 | (inferior-octave-send-list-and-digest commands)) |
| @@ -853,28 +721,20 @@ startup file, `~/.emacs-octave'." | |||
| 853 | 'identity inferior-octave-output-list "\n") | 721 | 'identity inferior-octave-output-list "\n") |
| 854 | "\n")) | 722 | "\n")) |
| 855 | inferior-octave-output-string)) | 723 | inferior-octave-output-string)) |
| 856 | ;; Next, we check whether Octave supports `completion_matches' ... | ||
| 857 | (inferior-octave-send-list-and-digest | ||
| 858 | (list "exist \"completion_matches\"\n")) | ||
| 859 | (setq inferior-octave-complete-impossible | ||
| 860 | (not (string-match "5$" (car inferior-octave-output-list)))) | ||
| 861 | 724 | ||
| 862 | ;; And finally, everything is back to normal. | 725 | ;; And finally, everything is back to normal. |
| 863 | (set-process-filter proc 'inferior-octave-output-filter) | 726 | (set-process-filter proc 'inferior-octave-output-filter) |
| 864 | (run-hooks 'inferior-octave-startup-hook) | ||
| 865 | (run-hooks 'inferior-octave-startup-hook) | ||
| 866 | ;; Just in case, to be sure a cd in the startup file | 727 | ;; Just in case, to be sure a cd in the startup file |
| 867 | ;; won't have detrimental effects. | 728 | ;; won't have detrimental effects. |
| 868 | (inferior-octave-resync-dirs))) | 729 | (inferior-octave-resync-dirs))) |
| 869 | 730 | ||
| 870 | (defun inferior-octave-completion-table () | 731 | (defun inferior-octave-completion-table () |
| 871 | (unless inferior-octave-complete-impossible | 732 | (completion-table-dynamic |
| 872 | (completion-table-dynamic | 733 | (lambda (command) |
| 873 | (lambda (command) | 734 | (inferior-octave-send-list-and-digest |
| 874 | (inferior-octave-send-list-and-digest | 735 | (list (concat "completion_matches (\"" command "\");\n"))) |
| 875 | (list (concat "completion_matches (\"" command "\");\n"))) | 736 | (sort (delete-dups inferior-octave-output-list) |
| 876 | (sort (delete-dups inferior-octave-output-list) | 737 | 'string-lessp)))) |
| 877 | 'string-lessp))))) | ||
| 878 | 738 | ||
| 879 | (defun inferior-octave-completion-at-point () | 739 | (defun inferior-octave-completion-at-point () |
| 880 | "Return the data to complete the Octave symbol at point." | 740 | "Return the data to complete the Octave symbol at point." |
| @@ -883,13 +743,8 @@ startup file, `~/.emacs-octave'." | |||
| 883 | (save-excursion | 743 | (save-excursion |
| 884 | (skip-syntax-backward "w_" (comint-line-beginning-position)) | 744 | (skip-syntax-backward "w_" (comint-line-beginning-position)) |
| 885 | (point)))) | 745 | (point)))) |
| 886 | (cond ((eq start end) nil) | 746 | (when (> end start) |
| 887 | (inferior-octave-complete-impossible | 747 | (list start end (inferior-octave-completion-table))))) |
| 888 | (message (concat | ||
| 889 | "Your Octave does not have `completion_matches'. " | ||
| 890 | "Please upgrade to version 2.X.")) | ||
| 891 | nil) | ||
| 892 | (t (list start end (inferior-octave-completion-table)))))) | ||
| 893 | 748 | ||
| 894 | (define-obsolete-function-alias 'inferior-octave-complete | 749 | (define-obsolete-function-alias 'inferior-octave-complete |
| 895 | 'completion-at-point "24.1") | 750 | 'completion-at-point "24.1") |
| @@ -989,19 +844,17 @@ directory and makes this the current buffer's default directory." | |||
| 989 | 844 | ||
| 990 | ;;; Miscellaneous useful functions | 845 | ;;; Miscellaneous useful functions |
| 991 | 846 | ||
| 992 | (defsubst octave-in-comment-p () | 847 | (defun octave-in-comment-p () |
| 993 | "Return t if point is inside an Octave comment." | 848 | "Return non-nil if point is inside an Octave comment." |
| 994 | (nth 4 (syntax-ppss))) | 849 | (nth 4 (syntax-ppss))) |
| 995 | 850 | ||
| 996 | (defsubst octave-in-string-p () | 851 | (defun octave-in-string-p () |
| 997 | "Return t if point is inside an Octave string." | 852 | "Return non-nil if point is inside an Octave string." |
| 998 | (nth 3 (syntax-ppss))) | 853 | (nth 3 (syntax-ppss))) |
| 999 | 854 | ||
| 1000 | (defsubst octave-not-in-string-or-comment-p () | 855 | (defun octave-in-string-or-comment-p () |
| 1001 | "Return t if point is not inside an Octave string or comment." | 856 | "Return non-nil if point is inside an Octave string or comment." |
| 1002 | (let ((pps (syntax-ppss))) | 857 | (nth 8 (syntax-ppss))) |
| 1003 | (not (or (nth 3 pps) (nth 4 pps))))) | ||
| 1004 | |||
| 1005 | 858 | ||
| 1006 | (defun octave-looking-at-kw (regexp) | 859 | (defun octave-looking-at-kw (regexp) |
| 1007 | "Like `looking-at', but sets `case-fold-search' nil." | 860 | "Like `looking-at', but sets `case-fold-search' nil." |
| @@ -1016,6 +869,163 @@ directory and makes this the current buffer's default directory." | |||
| 1016 | nil | 869 | nil |
| 1017 | (delete-horizontal-space) | 870 | (delete-horizontal-space) |
| 1018 | (insert (concat " " octave-continuation-string)))) | 871 | (insert (concat " " octave-continuation-string)))) |
| 872 | |||
| 873 | (defun octave-function-file-p () | ||
| 874 | "Return non-nil if the first token is \"function\". | ||
| 875 | The value is (START END NAME-START NAME-END) of the function." | ||
| 876 | (save-excursion | ||
| 877 | (goto-char (point-min)) | ||
| 878 | (when (equal (funcall smie-forward-token-function) "function") | ||
| 879 | (forward-word -1) | ||
| 880 | (let* ((start (point)) | ||
| 881 | (end (progn (forward-sexp 1) (point))) | ||
| 882 | (name (when (progn | ||
| 883 | (goto-char start) | ||
| 884 | (re-search-forward octave-function-header-regexp | ||
| 885 | end t)) | ||
| 886 | (list (match-beginning 3) (match-end 3))))) | ||
| 887 | (cons start (cons end name)))))) | ||
| 888 | |||
| 889 | ;; Like forward-comment but stop at non-comment blank | ||
| 890 | (defun octave-skip-comment-forward (limit) | ||
| 891 | (let ((ppss (syntax-ppss))) | ||
| 892 | (if (nth 4 ppss) | ||
| 893 | (goto-char (nth 8 ppss)) | ||
| 894 | (goto-char (or (comment-search-forward limit t) (point))))) | ||
| 895 | (while (and (< (point) limit) (looking-at-p "\\s<")) | ||
| 896 | (forward-comment 1))) | ||
| 897 | |||
| 898 | ;;; First non-copyright comment block | ||
| 899 | (defun octave-function-file-comment () | ||
| 900 | "Beginning and end positions of the function file comment." | ||
| 901 | (save-excursion | ||
| 902 | (goto-char (point-min)) | ||
| 903 | ;; Copyright block: octave/libinterp/parse-tree/lex.ll around line 1634 | ||
| 904 | (while (save-excursion | ||
| 905 | (when (comment-search-forward (point-max) t) | ||
| 906 | (when (eq (char-after) ?\{) ; case of block comment | ||
| 907 | (forward-char 1)) | ||
| 908 | (skip-syntax-forward "-") | ||
| 909 | (let ((case-fold-search t)) | ||
| 910 | (looking-at-p "\\(?:copyright\\|author\\)\\_>")))) | ||
| 911 | (octave-skip-comment-forward (point-max))) | ||
| 912 | (let ((beg (comment-search-forward (point-max) t))) | ||
| 913 | (when beg | ||
| 914 | (goto-char beg) | ||
| 915 | (octave-skip-comment-forward (point-max)) | ||
| 916 | (list beg (point)))))) | ||
| 917 | |||
| 918 | (defun octave-sync-function-file-names () | ||
| 919 | "Ensure function name agree with function file name. | ||
| 920 | See Info node `(octave)Function Files'." | ||
| 921 | (interactive) | ||
| 922 | (when buffer-file-name | ||
| 923 | (pcase-let ((`(,start ,_end ,name-start ,name-end) | ||
| 924 | (octave-function-file-p))) | ||
| 925 | (when (and start name-start) | ||
| 926 | (let* ((func (buffer-substring name-start name-end)) | ||
| 927 | (file (file-name-sans-extension | ||
| 928 | (file-name-nondirectory buffer-file-name))) | ||
| 929 | (help-form (format "\ | ||
| 930 | a: Use function name `%s' | ||
| 931 | b: Use file name `%s' | ||
| 932 | q: Don't fix\n" func file)) | ||
| 933 | (c (unless (equal file func) | ||
| 934 | (save-window-excursion | ||
| 935 | (help-form-show) | ||
| 936 | (read-char-choice | ||
| 937 | "Which name to use? (a/b/q) " '(?a ?b ?q)))))) | ||
| 938 | (pcase c | ||
| 939 | (`?a (let ((newname (expand-file-name | ||
| 940 | (concat func (file-name-extension | ||
| 941 | buffer-file-name t))))) | ||
| 942 | (when (or (not (file-exists-p newname)) | ||
| 943 | (yes-or-no-p | ||
| 944 | (format "Target file %s exists; proceed? " newname))) | ||
| 945 | (when (file-exists-p buffer-file-name) | ||
| 946 | (rename-file buffer-file-name newname t)) | ||
| 947 | (set-visited-file-name newname)))) | ||
| 948 | (`?b (save-excursion | ||
| 949 | (goto-char name-start) | ||
| 950 | (delete-region name-start name-end) | ||
| 951 | (insert file))))))))) | ||
| 952 | |||
| 953 | (defun octave-update-function-file-comment (beg end) | ||
| 954 | "Query replace function names in function file comment." | ||
| 955 | (interactive | ||
| 956 | (progn | ||
| 957 | (barf-if-buffer-read-only) | ||
| 958 | (if (use-region-p) | ||
| 959 | (list (region-beginning) (region-end)) | ||
| 960 | (or (octave-function-file-comment) | ||
| 961 | (error "No function file comment found"))))) | ||
| 962 | (save-excursion | ||
| 963 | (let* ((bounds (or (octave-function-file-p) | ||
| 964 | (error "Not in a function file buffer"))) | ||
| 965 | (func (if (cddr bounds) | ||
| 966 | (apply #'buffer-substring (cddr bounds)) | ||
| 967 | (error "Function name not found"))) | ||
| 968 | (old-func (progn | ||
| 969 | (goto-char beg) | ||
| 970 | (when (re-search-forward | ||
| 971 | "[=}]\\s-*\\(\\(?:\\sw\\|\\s_\\)+\\)\\_>" | ||
| 972 | (min (line-end-position 4) end) | ||
| 973 | t) | ||
| 974 | (match-string 1)))) | ||
| 975 | (old-func (read-string (format (if old-func | ||
| 976 | "Name to replace (default %s): " | ||
| 977 | "Name to replace: ") | ||
| 978 | old-func) | ||
| 979 | nil nil old-func))) | ||
| 980 | (if (and func old-func (not (equal func old-func))) | ||
| 981 | (perform-replace old-func func 'query | ||
| 982 | nil 'delimited nil nil beg end) | ||
| 983 | (message "Function names match"))))) | ||
| 984 | |||
| 985 | ;; Adapted from texinfo-font-lock-keywords | ||
| 986 | (defvar octave-texinfo-font-lock-keywords | ||
| 987 | `(("@\\([a-zA-Z]+\\|[^ \t\n]\\)" 1 font-lock-keyword-face prepend) ;commands | ||
| 988 | ("^\\*\\([^\n:]*\\)" 1 font-lock-function-name-face prepend) ;menu items | ||
| 989 | ("@\\(emph\\|i\\|sc\\){\\([^}]+\\)" 2 'italic prepend) | ||
| 990 | ("@\\(strong\\|b\\){\\([^}]+\\)" 2 'bold prepend) | ||
| 991 | ("@\\(kbd\\|key\\|url\\|uref\\){\\([^}]+\\)" | ||
| 992 | 2 font-lock-string-face prepend) | ||
| 993 | ("@\\(file\\|email\\){\\([^}]+\\)" 2 font-lock-string-face prepend) | ||
| 994 | ("@\\(samp\\|code\\|var\\|math\\|env\\|command\\|option\\){\\([^}]+\\)" | ||
| 995 | 2 font-lock-variable-name-face prepend) | ||
| 996 | ("@\\(cite\\|x?ref\\|pxref\\|dfn\\|inforef\\){\\([^}]+\\)" | ||
| 997 | 2 font-lock-constant-face prepend) | ||
| 998 | ("@\\(anchor\\){\\([^}]+\\)" 2 font-lock-type-face prepend) | ||
| 999 | ("@\\(dmn\\|acronym\\|value\\){\\([^}]+\\)" | ||
| 1000 | 2 font-lock-builtin-face prepend) | ||
| 1001 | ("@\\(end\\|itemx?\\) +\\(.+\\)" 2 font-lock-keyword-face prepend)) | ||
| 1002 | "Additional keywords to highlight in texinfo comment block.") | ||
| 1003 | |||
| 1004 | (defface octave-function-comment-block | ||
| 1005 | '((t (:inherit font-lock-doc-face))) | ||
| 1006 | "Face used to highlight function comment block." | ||
| 1007 | :group 'octave) | ||
| 1008 | |||
| 1009 | (defun octave-font-lock-texinfo-comment () | ||
| 1010 | (font-lock-add-keywords | ||
| 1011 | nil | ||
| 1012 | '(((lambda (limit) | ||
| 1013 | (while (and (search-forward "-*- texinfo -*-" limit t) | ||
| 1014 | (octave-in-comment-p)) | ||
| 1015 | (let ((beg (nth 8 (syntax-ppss))) | ||
| 1016 | (end (progn | ||
| 1017 | (octave-skip-comment-forward (point-max)) | ||
| 1018 | (point)))) | ||
| 1019 | (put-text-property beg end 'font-lock-multiline t) | ||
| 1020 | (font-lock-prepend-text-property | ||
| 1021 | beg end 'face 'octave-function-comment-block) | ||
| 1022 | (dolist (kw octave-texinfo-font-lock-keywords) | ||
| 1023 | (goto-char beg) | ||
| 1024 | (while (re-search-forward (car kw) end 'move) | ||
| 1025 | (font-lock-apply-highlight (cdr kw)))))) | ||
| 1026 | nil))) | ||
| 1027 | 'append)) | ||
| 1028 | |||
| 1019 | 1029 | ||
| 1020 | ;;; Indentation | 1030 | ;;; Indentation |
| 1021 | 1031 | ||
| @@ -1149,8 +1159,8 @@ Returns t unless search stops at the beginning or end of the buffer." | |||
| 1149 | (while (and (/= arg 0) | 1159 | (while (and (/= arg 0) |
| 1150 | (setq found | 1160 | (setq found |
| 1151 | (re-search-backward "\\_<function\\_>" inc))) | 1161 | (re-search-backward "\\_<function\\_>" inc))) |
| 1152 | (if (octave-not-in-string-or-comment-p) | 1162 | (unless (octave-in-string-or-comment-p) |
| 1153 | (setq arg (- arg inc)))) | 1163 | (setq arg (- arg inc)))) |
| 1154 | (if found | 1164 | (if found |
| 1155 | (progn | 1165 | (progn |
| 1156 | (and (< inc 0) (goto-char (match-beginning 0))) | 1166 | (and (< inc 0) (goto-char (match-beginning 0))) |
| @@ -1303,34 +1313,17 @@ otherwise." | |||
| 1303 | (process-live-p inferior-octave-process) | 1313 | (process-live-p inferior-octave-process) |
| 1304 | (inferior-octave-completion-table)) | 1314 | (inferior-octave-completion-table)) |
| 1305 | (append octave-reserved-words | 1315 | (append octave-reserved-words |
| 1306 | octave-text-functions | 1316 | octave-text-functions))))) |
| 1307 | octave-variables))))) | ||
| 1308 | 1317 | ||
| 1309 | (define-obsolete-function-alias 'octave-complete-symbol | 1318 | (define-obsolete-function-alias 'octave-complete-symbol |
| 1310 | 'completion-at-point "24.1") | 1319 | 'completion-at-point "24.1") |
| 1311 | 1320 | ||
| 1312 | ;;; Electric characters && friends | 1321 | ;;; Electric characters && friends |
| 1313 | |||
| 1314 | (defun octave-abbrev-start () | ||
| 1315 | "Start entering an Octave abbreviation. | ||
| 1316 | If Abbrev mode is turned on, typing ` (grave accent) followed by ? or | ||
| 1317 | \\[help-command] lists all Octave abbrevs. Any other key combination is | ||
| 1318 | executed normally. | ||
| 1319 | Note that all Octave mode abbrevs start with a grave accent." | ||
| 1320 | (interactive) | ||
| 1321 | (self-insert-command 1) | ||
| 1322 | (when abbrev-mode | ||
| 1323 | (set-temporary-overlay-map | ||
| 1324 | (let ((map (make-sparse-keymap))) | ||
| 1325 | (define-key map [??] 'list-abbrevs) | ||
| 1326 | (define-key map (vector help-char) 'list-abbrevs) | ||
| 1327 | map)))) | ||
| 1328 | |||
| 1329 | (define-skeleton octave-insert-defun | 1322 | (define-skeleton octave-insert-defun |
| 1330 | "Insert an Octave function skeleton. | 1323 | "Insert an Octave function skeleton. |
| 1331 | Prompt for the function's name, arguments and return values (to be | 1324 | Prompt for the function's name, arguments and return values (to be |
| 1332 | entered without parens)." | 1325 | entered without parens)." |
| 1333 | (let* ((defname (substring (buffer-name) 0 -2)) | 1326 | (let* ((defname (file-name-sans-extension (buffer-name))) |
| 1334 | (name (read-string (format "Function name (default %s): " defname) | 1327 | (name (read-string (format "Function name (default %s): " defname) |
| 1335 | nil nil defname)) | 1328 | nil nil defname)) |
| 1336 | (args (read-string "Arguments: ")) | 1329 | (args (read-string "Arguments: ")) |
| @@ -1342,10 +1335,11 @@ entered without parens)." | |||
| 1342 | (t (concat vals " = "))) | 1335 | (t (concat vals " = "))) |
| 1343 | name | 1336 | name |
| 1344 | args)) | 1337 | args)) |
| 1345 | \n "function " > str \n \n | 1338 | \n octave-block-comment-start "usage: " str \n |
| 1346 | octave-block-comment-start "usage: " str \n | 1339 | octave-block-comment-start '(delete-horizontal-space) \n |
| 1347 | octave-block-comment-start \n octave-block-comment-start | 1340 | octave-block-comment-start '(delete-horizontal-space) \n |
| 1348 | \n _ \n | 1341 | "function " > str \n |
| 1342 | _ \n | ||
| 1349 | "endfunction" > \n) | 1343 | "endfunction" > \n) |
| 1350 | 1344 | ||
| 1351 | ;;; Communication with the inferior Octave process | 1345 | ;;; Communication with the inferior Octave process |
| @@ -1450,26 +1444,7 @@ code line." | |||
| 1450 | "\n"))) | 1444 | "\n"))) |
| 1451 | (mapconcat 'identity inferior-octave-output-list "\n"))) | 1445 | (mapconcat 'identity inferior-octave-output-list "\n"))) |
| 1452 | (terpri))) | 1446 | (terpri))) |
| 1453 | 1447 | ||
| 1454 | ;;; Bug reporting | ||
| 1455 | (defun octave-submit-bug-report () | ||
| 1456 | "Submit a bug report on the Emacs Octave package via mail." | ||
| 1457 | (interactive) | ||
| 1458 | (require 'reporter) | ||
| 1459 | (and | ||
| 1460 | (y-or-n-p "Do you want to submit a bug report? ") | ||
| 1461 | (reporter-submit-bug-report | ||
| 1462 | octave-maintainer-address | ||
| 1463 | (concat "Emacs version " emacs-version) | ||
| 1464 | (list | ||
| 1465 | 'octave-blink-matching-block | ||
| 1466 | 'octave-block-offset | ||
| 1467 | 'octave-comment-char | ||
| 1468 | 'octave-continuation-offset | ||
| 1469 | 'octave-continuation-string | ||
| 1470 | 'octave-send-echo-input | ||
| 1471 | 'octave-send-line-auto-forward | ||
| 1472 | 'octave-send-show-buffer)))) | ||
| 1473 | 1448 | ||
| 1474 | (provide 'octave) | 1449 | (provide 'octave) |
| 1475 | ;;; octave.el ends here | 1450 | ;;; octave.el ends here |
diff --git a/lisp/subr.el b/lisp/subr.el index dc968542cd0..802fee4ee65 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -2200,11 +2200,11 @@ by doing (clear-string STRING)." | |||
| 2200 | ;; And of course, don't keep the sensitive data around. | 2200 | ;; And of course, don't keep the sensitive data around. |
| 2201 | (erase-buffer)))))))) | 2201 | (erase-buffer)))))))) |
| 2202 | 2202 | ||
| 2203 | ;; This should be used by `call-interactively' for `n' specs. | ||
| 2204 | (defun read-number (prompt &optional default) | 2203 | (defun read-number (prompt &optional default) |
| 2205 | "Read a numeric value in the minibuffer, prompting with PROMPT. | 2204 | "Read a numeric value in the minibuffer, prompting with PROMPT. |
| 2206 | DEFAULT specifies a default value to return if the user just types RET. | 2205 | DEFAULT specifies a default value to return if the user just types RET. |
| 2207 | The value of DEFAULT is inserted into PROMPT." | 2206 | The value of DEFAULT is inserted into PROMPT. |
| 2207 | This function is used by the `interactive' code letter `n'." | ||
| 2208 | (let ((n nil) | 2208 | (let ((n nil) |
| 2209 | (default1 (if (consp default) (car default) default))) | 2209 | (default1 (if (consp default) (car default) default))) |
| 2210 | (when default1 | 2210 | (when default1 |
| @@ -2225,7 +2225,7 @@ The value of DEFAULT is inserted into PROMPT." | |||
| 2225 | (condition-case nil | 2225 | (condition-case nil |
| 2226 | (setq n (cond | 2226 | (setq n (cond |
| 2227 | ((zerop (length str)) default1) | 2227 | ((zerop (length str)) default1) |
| 2228 | ((stringp str) (string-to-number str)))) | 2228 | ((stringp str) (read str)))) |
| 2229 | (error nil))) | 2229 | (error nil))) |
| 2230 | (unless (numberp n) | 2230 | (unless (numberp n) |
| 2231 | (message "Please enter a number.") | 2231 | (message "Please enter a number.") |
diff --git a/lisp/textmodes/reftex-vars.el b/lisp/textmodes/reftex-vars.el index ab085a3085a..a68a27bb07e 100644 --- a/lisp/textmodes/reftex-vars.el +++ b/lisp/textmodes/reftex-vars.el | |||
| @@ -901,6 +901,7 @@ and the functions `TeX-current-macro' and | |||
| 901 | `LaTeX-current-environment' are bound. Also note that this | 901 | `LaTeX-current-environment' are bound. Also note that this |
| 902 | feature might slow down the reftex parsing process for large TeX | 902 | feature might slow down the reftex parsing process for large TeX |
| 903 | files." | 903 | files." |
| 904 | :version "24.4" | ||
| 904 | :group 'reftex-defining-label-environments | 905 | :group 'reftex-defining-label-environments |
| 905 | :type '(repeat string)) | 906 | :type '(repeat string)) |
| 906 | 907 | ||
diff --git a/lisp/textmodes/remember.el b/lisp/textmodes/remember.el index 1286e5d803e..c8bafd8176a 100644 --- a/lisp/textmodes/remember.el +++ b/lisp/textmodes/remember.el | |||
| @@ -432,17 +432,20 @@ If you want to remember a region, supply a universal prefix to | |||
| 432 | 432 | ||
| 433 | (defcustom remember-data-directory "~/remember" | 433 | (defcustom remember-data-directory "~/remember" |
| 434 | "The directory in which to store remember data as files." | 434 | "The directory in which to store remember data as files." |
| 435 | :type 'file | 435 | :type 'directory |
| 436 | :version "24.4" | ||
| 436 | :group 'remember) | 437 | :group 'remember) |
| 437 | 438 | ||
| 438 | (defcustom remember-directory-file-name-format "%Y-%m-%d_%T-%z" | 439 | (defcustom remember-directory-file-name-format "%Y-%m-%d_%T-%z" |
| 439 | "Format string for the file name in which to store unprocessed data." | 440 | "Format string for the file name in which to store unprocessed data." |
| 440 | :type 'file | 441 | :type 'string |
| 442 | :version "24.4" | ||
| 441 | :group 'remember) | 443 | :group 'remember) |
| 442 | 444 | ||
| 443 | (defun remember-store-in-files () | 445 | (defun remember-store-in-files () |
| 444 | "Store remember data in a file in `remember-data-directory'. | 446 | "Store remember data in a file in `remember-data-directory'. |
| 445 | The file is named after `remember-directory-file-name-format'." | 447 | The file is named after `remember-directory-file-name-format' fed through |
| 448 | `format-time-string'." | ||
| 446 | (let ((name (format-time-string | 449 | (let ((name (format-time-string |
| 447 | remember-directory-file-name-format (current-time))) | 450 | remember-directory-file-name-format (current-time))) |
| 448 | (text (buffer-string))) | 451 | (text (buffer-string))) |
diff --git a/lisp/vc/log-view.el b/lisp/vc/log-view.el index b74ff77bc41..b633b7be403 100644 --- a/lisp/vc/log-view.el +++ b/lisp/vc/log-view.el | |||
| @@ -317,7 +317,9 @@ Otherwise, don't move point." | |||
| 317 | result) | 317 | result) |
| 318 | (save-excursion | 318 | (save-excursion |
| 319 | (when pos (goto-char pos)) | 319 | (when pos (goto-char pos)) |
| 320 | (forward-line 1) | 320 | (forward-line 0) |
| 321 | ;; Treat "---" separator lines as part of the following revision. | ||
| 322 | (forward-line (if (looking-at "-\\{20,\\}$") 2 1)) | ||
| 321 | (while looping | 323 | (while looping |
| 322 | (setq pos (re-search-backward log-view-message-re nil 'move) | 324 | (setq pos (re-search-backward log-view-message-re nil 'move) |
| 323 | looping (and pos (log-view-inside-comment-p (point))))) | 325 | looping (and pos (log-view-inside-comment-p (point))))) |
diff --git a/m4/extern-inline.m4 b/m4/extern-inline.m4 index 0152f29326b..94b46dde07d 100644 --- a/m4/extern-inline.m4 +++ b/m4/extern-inline.m4 | |||
| @@ -21,13 +21,21 @@ AC_DEFUN([gl_EXTERN_INLINE], | |||
| 21 | Suppress extern inline with HP-UX cc, as it appears to be broken; see | 21 | Suppress extern inline with HP-UX cc, as it appears to be broken; see |
| 22 | <http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>. | 22 | <http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>. |
| 23 | 23 | ||
| 24 | Suppress the use of extern inline on Apple's platforms, | 24 | Suppress extern inline with Sun C in standards-conformance mode, as it |
| 25 | as Libc-825.25 (2012-09-19) is incompatible with it; see | 25 | mishandles inline functions that call each other. E.g., for 'inline void f |
| 26 | (void) { } inline void g (void) { f (); }', c99 incorrectly complains | ||
| 27 | 'reference to static identifier "f" in extern inline function'. | ||
| 28 | This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16. | ||
| 29 | |||
| 30 | Suppress the use of extern inline on Apple's platforms, as Libc at least | ||
| 31 | through Libc-825.26 (2013-04-09) is incompatible with it; see, e.g., | ||
| 26 | <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>. | 32 | <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>. |
| 27 | Perhaps Apple will fix this some day. */ | 33 | Perhaps Apple will fix this some day. */ |
| 28 | #if ((__GNUC__ \ | 34 | #if ((__GNUC__ \ |
| 29 | ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ | 35 | ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ |
| 30 | : 199901L <= __STDC_VERSION__ && !defined __HP_cc) \ | 36 | : (199901L <= __STDC_VERSION__ \ |
| 37 | && !defined __HP_cc \ | ||
| 38 | && !(defined __SUNPRO_C && __STDC__))) \ | ||
| 31 | && !defined __APPLE__) | 39 | && !defined __APPLE__) |
| 32 | # define _GL_INLINE inline | 40 | # define _GL_INLINE inline |
| 33 | # define _GL_EXTERN_INLINE extern inline | 41 | # define _GL_EXTERN_INLINE extern inline |
diff --git a/src/ChangeLog b/src/ChangeLog index 99e2c3d9a84..4245a1f0256 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,44 @@ | |||
| 1 | 2013-05-01 David Reitter <david.reitter@gmail.com> | ||
| 2 | |||
| 3 | * nsfns.m (ns_tooltip): Initialize. | ||
| 4 | |||
| 5 | 2013-04-28 Eli Zaretskii <eliz@gnu.org> | ||
| 6 | |||
| 7 | * coding.c (decode_coding_gap): Don't remove the character before | ||
| 8 | a newline unless it's a CR character. (Bug#14287) | ||
| 9 | |||
| 10 | 2013-04-28 Dan Nicolaescu <dann@gnu.org> | ||
| 11 | |||
| 12 | * dispextern.h (struct face): Move enum face_underline_type | ||
| 13 | earlier so that bitfields can be in the same word. | ||
| 14 | |||
| 15 | 2013-04-28 Jan Djärv <jan.h.d@swipnet.se> | ||
| 16 | |||
| 17 | * nsfns.m (handlePanelKeys): New function. | ||
| 18 | (EmacsOpenPanel:performKeyEquivalent:) | ||
| 19 | (EmacsSavePanel:performKeyEquivalent:): Call handlePanelKeys to handle | ||
| 20 | arrows/function/control and copy/paste keys (Bug#14296). | ||
| 21 | |||
| 22 | 2013-04-27 Juri Linkov <juri@jurta.org> | ||
| 23 | |||
| 24 | * callint.c (Fcall_interactively): Call `Qread_number' for | ||
| 25 | interactive code letter `n' instead of using duplicate code. | ||
| 26 | (Bug#14254) | ||
| 27 | |||
| 28 | 2013-04-27 Paul Eggert <eggert@cs.ucla.edu> | ||
| 29 | |||
| 30 | * systime.h (make_timeval): Declare as 'const'. | ||
| 31 | |||
| 32 | 2013-04-27 Kenichi Handa <handa@gnu.org> | ||
| 33 | |||
| 34 | * font.c (font_open_entity): Always open a font of manageable | ||
| 35 | size. | ||
| 36 | |||
| 37 | 2013-04-26 Paul Eggert <eggert@cs.ucla.edu> | ||
| 38 | Port better to AIX (Bug#14258). | ||
| 39 | * lisp.h (ENUM_BF) [__IBMC__]: Make it 'unsigned int' here, too, | ||
| 40 | to pacify AIX xlc. | ||
| 41 | |||
| 1 | 2013-04-24 Kenichi Handa <handa@gnu.org> | 42 | 2013-04-24 Kenichi Handa <handa@gnu.org> |
| 2 | 43 | ||
| 3 | * coding.c (decode_coding_iso_2022): When an invalid escape | 44 | * coding.c (decode_coding_iso_2022): When an invalid escape |
diff --git a/src/callint.c b/src/callint.c index 212dd2e3d62..940ff3ed249 100644 --- a/src/callint.c +++ b/src/callint.c | |||
| @@ -34,6 +34,7 @@ static Lisp_Object Qcommand_debug_status; | |||
| 34 | static Lisp_Object Qenable_recursive_minibuffers; | 34 | static Lisp_Object Qenable_recursive_minibuffers; |
| 35 | 35 | ||
| 36 | static Lisp_Object Qhandle_shift_selection; | 36 | static Lisp_Object Qhandle_shift_selection; |
| 37 | static Lisp_Object Qread_number; | ||
| 37 | 38 | ||
| 38 | Lisp_Object Qmouse_leave_buffer_hook; | 39 | Lisp_Object Qmouse_leave_buffer_hook; |
| 39 | 40 | ||
| @@ -683,29 +684,7 @@ invoke it. If KEYS is omitted or nil, the return value of | |||
| 683 | if (!NILP (prefix_arg)) | 684 | if (!NILP (prefix_arg)) |
| 684 | goto have_prefix_arg; | 685 | goto have_prefix_arg; |
| 685 | case 'n': /* Read number from minibuffer. */ | 686 | case 'n': /* Read number from minibuffer. */ |
| 686 | { | 687 | args[i] = call1 (Qread_number, callint_message); |
| 687 | bool first = 1; | ||
| 688 | do | ||
| 689 | { | ||
| 690 | Lisp_Object str; | ||
| 691 | if (! first) | ||
| 692 | { | ||
| 693 | message1 ("Please enter a number."); | ||
| 694 | sit_for (make_number (1), 0, 0); | ||
| 695 | } | ||
| 696 | first = 0; | ||
| 697 | |||
| 698 | str = Fread_from_minibuffer (callint_message, | ||
| 699 | Qnil, Qnil, Qnil, Qnil, Qnil, | ||
| 700 | Qnil); | ||
| 701 | if (! STRINGP (str) || SCHARS (str) == 0) | ||
| 702 | args[i] = Qnil; | ||
| 703 | else | ||
| 704 | args[i] = Fread (str); | ||
| 705 | } | ||
| 706 | while (! NUMBERP (args[i])); | ||
| 707 | } | ||
| 708 | visargs[i] = args[i]; | ||
| 709 | break; | 688 | break; |
| 710 | 689 | ||
| 711 | case 'P': /* Prefix arg in raw form. Does no I/O. */ | 690 | case 'P': /* Prefix arg in raw form. Does no I/O. */ |
| @@ -903,6 +882,7 @@ syms_of_callint (void) | |||
| 903 | DEFSYM (Qminus, "-"); | 882 | DEFSYM (Qminus, "-"); |
| 904 | DEFSYM (Qplus, "+"); | 883 | DEFSYM (Qplus, "+"); |
| 905 | DEFSYM (Qhandle_shift_selection, "handle-shift-selection"); | 884 | DEFSYM (Qhandle_shift_selection, "handle-shift-selection"); |
| 885 | DEFSYM (Qread_number, "read-number"); | ||
| 906 | DEFSYM (Qcall_interactively, "call-interactively"); | 886 | DEFSYM (Qcall_interactively, "call-interactively"); |
| 907 | DEFSYM (Qcommand_debug_status, "command-debug-status"); | 887 | DEFSYM (Qcommand_debug_status, "command-debug-status"); |
| 908 | DEFSYM (Qenable_recursive_minibuffers, "enable-recursive-minibuffers"); | 888 | DEFSYM (Qenable_recursive_minibuffers, "enable-recursive-minibuffers"); |
diff --git a/src/coding.c b/src/coding.c index b9fb92c481b..f6664e179b7 100644 --- a/src/coding.c +++ b/src/coding.c | |||
| @@ -7774,7 +7774,7 @@ decode_coding_gap (struct coding_system *coding, | |||
| 7774 | while (src_beg < src) | 7774 | while (src_beg < src) |
| 7775 | { | 7775 | { |
| 7776 | *--dst = *--src; | 7776 | *--dst = *--src; |
| 7777 | if (*src == '\n') | 7777 | if (*src == '\n' && src > src_beg && src[-1] == '\r') |
| 7778 | src--; | 7778 | src--; |
| 7779 | } | 7779 | } |
| 7780 | diff = dst - src; | 7780 | diff = dst - src; |
diff --git a/src/dispextern.h b/src/dispextern.h index 9dc3a57c284..5ce7b19f173 100644 --- a/src/dispextern.h +++ b/src/dispextern.h | |||
| @@ -1591,13 +1591,13 @@ struct face | |||
| 1591 | shadow colors derived from the background color of the face. */ | 1591 | shadow colors derived from the background color of the face. */ |
| 1592 | enum face_box_type box; | 1592 | enum face_box_type box; |
| 1593 | 1593 | ||
| 1594 | /* Style of underlining. */ | ||
| 1595 | enum face_underline_type underline_type; | ||
| 1596 | |||
| 1594 | /* If `box' above specifies a 3D type, 1 means use box_color for | 1597 | /* If `box' above specifies a 3D type, 1 means use box_color for |
| 1595 | drawing shadows. */ | 1598 | drawing shadows. */ |
| 1596 | unsigned use_box_color_for_shadows_p : 1; | 1599 | unsigned use_box_color_for_shadows_p : 1; |
| 1597 | 1600 | ||
| 1598 | /* Style of underlining. */ | ||
| 1599 | enum face_underline_type underline_type; | ||
| 1600 | |||
| 1601 | /* Non-zero if text in this face should be underlined, overlined, | 1601 | /* Non-zero if text in this face should be underlined, overlined, |
| 1602 | strike-through or have a box drawn around it. */ | 1602 | strike-through or have a box drawn around it. */ |
| 1603 | unsigned underline_p : 1; | 1603 | unsigned underline_p : 1; |
diff --git a/src/font.c b/src/font.c index 6247eeca948..ad601177b50 100644 --- a/src/font.c +++ b/src/font.c | |||
| @@ -2819,7 +2819,7 @@ font_open_entity (FRAME_PTR f, Lisp_Object entity, int pixel_size) | |||
| 2819 | struct font_driver_list *driver_list; | 2819 | struct font_driver_list *driver_list; |
| 2820 | Lisp_Object objlist, size, val, font_object; | 2820 | Lisp_Object objlist, size, val, font_object; |
| 2821 | struct font *font; | 2821 | struct font *font; |
| 2822 | int min_width, height; | 2822 | int min_width, height, psize; |
| 2823 | 2823 | ||
| 2824 | eassert (FONT_ENTITY_P (entity)); | 2824 | eassert (FONT_ENTITY_P (entity)); |
| 2825 | size = AREF (entity, FONT_SIZE_INDEX); | 2825 | size = AREF (entity, FONT_SIZE_INDEX); |
| @@ -2846,12 +2846,19 @@ font_open_entity (FRAME_PTR f, Lisp_Object entity, int pixel_size) | |||
| 2846 | } | 2846 | } |
| 2847 | } | 2847 | } |
| 2848 | 2848 | ||
| 2849 | font_object = driver_list->driver->open (f, entity, pixel_size); | 2849 | /* We always open a font of manageable size; i.e non-zero average |
| 2850 | if (!NILP (font_object)) | 2850 | width and height. */ |
| 2851 | ASET (font_object, FONT_SIZE_INDEX, make_number (pixel_size)); | 2851 | for (psize = pixel_size; ; psize++) |
| 2852 | { | ||
| 2853 | font_object = driver_list->driver->open (f, entity, psize); | ||
| 2854 | if (NILP (font_object)) | ||
| 2855 | return Qnil; | ||
| 2856 | font = XFONT_OBJECT (font_object); | ||
| 2857 | if (font->average_width > 0 && font->height > 0) | ||
| 2858 | break; | ||
| 2859 | } | ||
| 2860 | ASET (font_object, FONT_SIZE_INDEX, make_number (pixel_size)); | ||
| 2852 | FONT_ADD_LOG ("open", entity, font_object); | 2861 | FONT_ADD_LOG ("open", entity, font_object); |
| 2853 | if (NILP (font_object)) | ||
| 2854 | return Qnil; | ||
| 2855 | ASET (entity, FONT_OBJLIST_INDEX, | 2862 | ASET (entity, FONT_OBJLIST_INDEX, |
| 2856 | Fcons (font_object, AREF (entity, FONT_OBJLIST_INDEX))); | 2863 | Fcons (font_object, AREF (entity, FONT_OBJLIST_INDEX))); |
| 2857 | 2864 | ||
| @@ -3118,6 +3125,8 @@ font_find_for_lface (FRAME_PTR f, Lisp_Object *attrs, Lisp_Object spec, int c) | |||
| 3118 | double pt = XINT (attrs[LFACE_HEIGHT_INDEX]); | 3125 | double pt = XINT (attrs[LFACE_HEIGHT_INDEX]); |
| 3119 | 3126 | ||
| 3120 | pixel_size = POINT_TO_PIXEL (pt / 10, FRAME_RES_Y (f)); | 3127 | pixel_size = POINT_TO_PIXEL (pt / 10, FRAME_RES_Y (f)); |
| 3128 | if (pixel_size < 1) | ||
| 3129 | pixel_size = 1; | ||
| 3121 | } | 3130 | } |
| 3122 | ASET (work, FONT_SIZE_INDEX, Qnil); | 3131 | ASET (work, FONT_SIZE_INDEX, Qnil); |
| 3123 | foundry[0] = AREF (work, FONT_FOUNDRY_INDEX); | 3132 | foundry[0] = AREF (work, FONT_FOUNDRY_INDEX); |
diff --git a/src/lisp.h b/src/lisp.h index bcb866b4cc4..e2c24eed352 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -231,9 +231,9 @@ enum enum_USE_LSB_TAG { USE_LSB_TAG = 0 }; | |||
| 231 | #define case_Lisp_Int case Lisp_Int0: case Lisp_Int1 | 231 | #define case_Lisp_Int case Lisp_Int0: case Lisp_Int1 |
| 232 | #define LISP_INT_TAG_P(x) (((x) & ~Lisp_Int1) == 0) | 232 | #define LISP_INT_TAG_P(x) (((x) & ~Lisp_Int1) == 0) |
| 233 | 233 | ||
| 234 | /* Stolen from GDB. The only known compiler that doesn't support | 234 | /* Idea stolen from GDB. MSVC doesn't support enums in bitfields, |
| 235 | enums in bitfields is MSVC. */ | 235 | and xlc complains vociferously about them. */ |
| 236 | #ifdef _MSC_VER | 236 | #if defined _MSC_VER || defined __IBMC__ |
| 237 | #define ENUM_BF(TYPE) unsigned int | 237 | #define ENUM_BF(TYPE) unsigned int |
| 238 | #else | 238 | #else |
| 239 | #define ENUM_BF(TYPE) enum TYPE | 239 | #define ENUM_BF(TYPE) enum TYPE |
diff --git a/src/nsfns.m b/src/nsfns.m index a483f847dec..0d9ebe0ef50 100644 --- a/src/nsfns.m +++ b/src/nsfns.m | |||
| @@ -88,7 +88,7 @@ Lisp_Object Qfontsize; | |||
| 88 | /* hack for OS X file panels */ | 88 | /* hack for OS X file panels */ |
| 89 | char panelOK = 0; | 89 | char panelOK = 0; |
| 90 | 90 | ||
| 91 | EmacsTooltip *ns_tooltip; | 91 | EmacsTooltip *ns_tooltip = nil; |
| 92 | 92 | ||
| 93 | /* Need forward declaration here to preserve organizational integrity of file */ | 93 | /* Need forward declaration here to preserve organizational integrity of file */ |
| 94 | Lisp_Object Fx_open_connection (Lisp_Object, Lisp_Object, Lisp_Object); | 94 | Lisp_Object Fx_open_connection (Lisp_Object, Lisp_Object, Lisp_Object); |
| @@ -1477,7 +1477,7 @@ Optional arg DIR_ONLY_P, if non-nil, means choose only directories. */) | |||
| 1477 | [panel setCanChooseFiles: YES]; | 1477 | [panel setCanChooseFiles: YES]; |
| 1478 | } | 1478 | } |
| 1479 | 1479 | ||
| 1480 | block_input (); | 1480 | block_input (); |
| 1481 | #if defined (NS_IMPL_COCOA) && \ | 1481 | #if defined (NS_IMPL_COCOA) && \ |
| 1482 | MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 | 1482 | MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 |
| 1483 | if (! NILP (mustmatch) || ! NILP (dir_only_p)) | 1483 | if (! NILP (mustmatch) || ! NILP (dir_only_p)) |
| @@ -2544,6 +2544,75 @@ Value is t if tooltip was open, nil otherwise. */) | |||
| 2544 | 2544 | ||
| 2545 | ========================================================================== */ | 2545 | ========================================================================== */ |
| 2546 | 2546 | ||
| 2547 | /* | ||
| 2548 | Handle arrow/function/control keys and copy/paste/cut in file dialogs. | ||
| 2549 | Return YES if handeled, NO if not. | ||
| 2550 | */ | ||
| 2551 | static BOOL | ||
| 2552 | handlePanelKeys (NSSavePanel *panel, NSEvent *theEvent) | ||
| 2553 | { | ||
| 2554 | NSString *s; | ||
| 2555 | int i; | ||
| 2556 | BOOL ret = NO; | ||
| 2557 | |||
| 2558 | if ([theEvent type] != NSKeyDown) return NO; | ||
| 2559 | s = [theEvent characters]; | ||
| 2560 | |||
| 2561 | for (i = 0; i < [s length]; ++i) | ||
| 2562 | { | ||
| 2563 | int ch = (int) [s characterAtIndex: i]; | ||
| 2564 | switch (ch) | ||
| 2565 | { | ||
| 2566 | case NSHomeFunctionKey: | ||
| 2567 | case NSDownArrowFunctionKey: | ||
| 2568 | case NSUpArrowFunctionKey: | ||
| 2569 | case NSLeftArrowFunctionKey: | ||
| 2570 | case NSRightArrowFunctionKey: | ||
| 2571 | case NSPageUpFunctionKey: | ||
| 2572 | case NSPageDownFunctionKey: | ||
| 2573 | case NSEndFunctionKey: | ||
| 2574 | [panel sendEvent: theEvent]; | ||
| 2575 | ret = YES; | ||
| 2576 | break; | ||
| 2577 | /* As we don't have the standard key commands for | ||
| 2578 | copy/paste/cut/select-all in our edit menu, we must handle | ||
| 2579 | them here. TODO: handle Emacs key bindings for copy/cut/select-all | ||
| 2580 | here, paste works, because we have that in our Edit menu. | ||
| 2581 | I.e. refactor out code in nsterm.m, keyDown: to figure out the | ||
| 2582 | correct modifier. | ||
| 2583 | */ | ||
| 2584 | case 'x': // Cut | ||
| 2585 | case 'c': // Copy | ||
| 2586 | case 'v': // Paste | ||
| 2587 | case 'a': // Select all | ||
| 2588 | if ([theEvent modifierFlags] & NSCommandKeyMask) | ||
| 2589 | { | ||
| 2590 | [NSApp sendAction: | ||
| 2591 | (ch == 'x' | ||
| 2592 | ? @selector(cut:) | ||
| 2593 | : (ch == 'c' | ||
| 2594 | ? @selector(copy:) | ||
| 2595 | : (ch == 'v' | ||
| 2596 | ? @selector(paste:) | ||
| 2597 | : @selector(selectAll:)))) | ||
| 2598 | to:nil from:panel]; | ||
| 2599 | ret = YES; | ||
| 2600 | } | ||
| 2601 | default: | ||
| 2602 | // Send all control keys, as the text field supports C-a, C-f, C-e | ||
| 2603 | // C-b and more. | ||
| 2604 | if ([theEvent modifierFlags] & NSControlKeyMask) | ||
| 2605 | { | ||
| 2606 | [panel sendEvent: theEvent]; | ||
| 2607 | ret = YES; | ||
| 2608 | } | ||
| 2609 | break; | ||
| 2610 | } | ||
| 2611 | } | ||
| 2612 | |||
| 2613 | |||
| 2614 | return ret; | ||
| 2615 | } | ||
| 2547 | 2616 | ||
| 2548 | @implementation EmacsSavePanel | 2617 | @implementation EmacsSavePanel |
| 2549 | #ifdef NS_IMPL_COCOA | 2618 | #ifdef NS_IMPL_COCOA |
| @@ -2572,6 +2641,14 @@ Value is t if tooltip was open, nil otherwise. */) | |||
| 2572 | { | 2641 | { |
| 2573 | return ns_directory_from_panel (self); | 2642 | return ns_directory_from_panel (self); |
| 2574 | } | 2643 | } |
| 2644 | |||
| 2645 | - (BOOL)performKeyEquivalent:(NSEvent *)theEvent | ||
| 2646 | { | ||
| 2647 | BOOL ret = handlePanelKeys (self, theEvent); | ||
| 2648 | if (! ret) | ||
| 2649 | ret = [super performKeyEquivalent:theEvent]; | ||
| 2650 | return ret; | ||
| 2651 | } | ||
| 2575 | @end | 2652 | @end |
| 2576 | 2653 | ||
| 2577 | 2654 | ||
| @@ -2609,7 +2686,14 @@ Value is t if tooltip was open, nil otherwise. */) | |||
| 2609 | { | 2686 | { |
| 2610 | return ns_directory_from_panel (self); | 2687 | return ns_directory_from_panel (self); |
| 2611 | } | 2688 | } |
| 2612 | 2689 | - (BOOL)performKeyEquivalent:(NSEvent *)theEvent | |
| 2690 | { | ||
| 2691 | // NSOpenPanel inherits NSSavePanel, so passing self is OK. | ||
| 2692 | BOOL ret = handlePanelKeys (self, theEvent); | ||
| 2693 | if (! ret) | ||
| 2694 | ret = [super performKeyEquivalent:theEvent]; | ||
| 2695 | return ret; | ||
| 2696 | } | ||
| 2613 | @end | 2697 | @end |
| 2614 | 2698 | ||
| 2615 | 2699 | ||
diff --git a/src/systime.h b/src/systime.h index da495b9064b..c3bc00c1479 100644 --- a/src/systime.h +++ b/src/systime.h | |||
| @@ -143,7 +143,7 @@ EMACS_TIME_TO_DOUBLE (EMACS_TIME t) | |||
| 143 | 143 | ||
| 144 | /* defined in sysdep.c */ | 144 | /* defined in sysdep.c */ |
| 145 | extern int set_file_times (int, const char *, EMACS_TIME, EMACS_TIME); | 145 | extern int set_file_times (int, const char *, EMACS_TIME, EMACS_TIME); |
| 146 | extern struct timeval make_timeval (EMACS_TIME); | 146 | extern struct timeval make_timeval (EMACS_TIME) ATTRIBUTE_CONST; |
| 147 | 147 | ||
| 148 | /* defined in keyboard.c */ | 148 | /* defined in keyboard.c */ |
| 149 | extern void set_waiting_for_input (EMACS_TIME *); | 149 | extern void set_waiting_for_input (EMACS_TIME *); |