]> code.delx.au - gnu-emacs/commitdiff
Merge from emacs-24; up to 2012-12-20T16:09:05Z!dmantipov@yandex.ru
authorGlenn Morris <rgm@gnu.org>
Tue, 19 Feb 2013 03:29:28 +0000 (19:29 -0800)
committerGlenn Morris <rgm@gnu.org>
Tue, 19 Feb 2013 03:29:28 +0000 (19:29 -0800)
doc/lispref/ChangeLog
doc/lispref/text.texi
etc/MORE.STUFF
lisp/ChangeLog
lisp/eshell/em-unix.el
lisp/info-look.el
lisp/net/tramp-sh.el
lisp/progmodes/python.el
src/ChangeLog
src/w32proc.c
src/xdisp.c

index d8a08ee5d3e03b5d795684241cabd7d2db0985b6..fe61fb4dce1993383253f6c1956e09eb020105df 100644 (file)
@@ -1,3 +1,7 @@
+2013-02-19  Glenn Morris  <rgm@gnu.org>
+
+       * text.texi (Change Hooks): Fix typo.
+
 2013-02-15  Glenn Morris  <rgm@gnu.org>
 
        * modes.texi (Basic Major Modes): 'z' no longer bound in special-mode.
index 00ec62ec49dc65874e305a3bf93ea89147ec2b0a..c6cbfa5b3f879d7745b34527fc2960b4d1dfe146 100644 (file)
@@ -4344,7 +4344,7 @@ This variable holds a list of functions to call after any buffer
 modification.  Each function receives three arguments: the beginning
 and end of the region just changed, and the length of the text that
 existed before the change.  All three arguments are integers.  The
-buffer has been changed is always the current buffer.
+buffer that has been changed is always the current buffer.
 
 The length of the old text is the difference between the buffer
 positions before and after that text as it was before the change.  As
index 19b35f8ab28110e6cb0a6550d6d36b761cc40f19..57be8a2e971568b2f182cec8cce4eef52dfb8045 100644 (file)
@@ -41,9 +41,6 @@ a web search is often the best way to find results.
   The Emacs Wiki has an area for storing elisp files
   <URL:http://www.emacswiki.org/cgi-bin/wiki/ElispArea>.
 
-* WikEmacs
-  <URL:http://wikemacs.org> is an alternative wiki for Emacs.
-
 * Emacs slides and tutorials can be found here:
    <URL:http://web.psung.name/emacs/>
 
@@ -55,16 +52,8 @@ so you will find the latest version in Emacs.
 
  * Ada-mode: <URL:http://stephe-leake.org/emacs/ada-mode/emacs-ada-mode.html>
 
- * Battery and Info Look: <URL:http://ralph-schleicher.de/emacs.html>
-
  * CC mode: <URL:http://cc-mode.sourceforge.net/>
 
- * CPerl: <URL:http://math.berkeley.edu/~ilya/software/emacs/>
-
- * Ediff and Viper: <URL:http://www.cs.sunysb.edu/~kifer/emacs.html>
-
- * ERC: <URL:http://savannah.gnu.org/projects/erc/>
-
  * Gnus: <URL:http://www.gnus.org/>
 
  * MH-E: <URL:http://mh-e.sourceforge.net/>
@@ -73,25 +62,11 @@ so you will find the latest version in Emacs.
 
  * Org mode: <URL:http://orgmode.org/>
 
- * RefTeX: <URL:http://www.gnu.org/software/auctex/reftex.html>
-
- * Remember: <URL:https://gna.org/p/remember-el>
-
  * CEDET: <URL:http://cedet.sourceforge.net/>
 
  * Tramp: Remote file access via rsh/ssh
    <URL:http://savannah.gnu.org/projects/tramp/>
 
-* Auxiliary files
-
- * (Tex)info files for use with Info-look that don't come from GNU
-   packages:
-   * Scheme: <URL:http://groups.csail.mit.edu/mac/ftpdir/scm/r5rs.info.tar.gz>
-   * LaTeX: <URL:ftp://ctan.tug.org/tex-archive/info/latex2e-help-texinfo/
-       latex2e.texi> (or CTAN mirrors)
-   * Perl: <URL:ftp://ftp.cpan.org/pub/CPAN/doc/manual/texinfo/>
-       (or CPAN mirrors)
-
 * GNU Zile: <URL:http://www.gnu.org/software/zile/>
   A lightweight Emacs clone, for when you don't have room for Emacs proper.
 
@@ -108,6 +83,7 @@ packages that you can install.
  * AUCTeX: <URL:http://www.gnu.org/software/auctex/>
    An extensible package that supports writing and formatting TeX
    files (including AMS-TeX, LaTeX, Texinfo, ConTeXt, and docTeX).
+   Includes Preview LaTeX: embed preview LaTeX images in source buffer.
    Available from GNU ELPA.
 
  * BBDB: personal Info Rolodex integrated with mail/news:
@@ -134,6 +110,7 @@ packages that you can install.
 
  * Emacs Muse: <URL:http://mwolson.org/projects/EmacsMuse.html>
    An authoring and publishing environment for Emacs.
+   Available from GNU ELPA.
 
  * Emacs speaks statistics (ESS): statistical programming within Emacs
    <URL:http://ess.r-project.org>
@@ -170,9 +147,6 @@ packages that you can install.
  * Planner Mode: <URL:http://www.wjsullivan.net/PlannerMode.html>
    Planner is an organizer and day planner for Emacs.
 
- * Preview LaTeX: embed preview LaTeX images in source buffer.
-   <URL:http://www.gnu.org/software/auctex/preview-latex.html>
-
  * Quack: <URL:http://www.neilvandyke.org/quack/>
    Quack enhances Emacs support for Scheme.
 
index d4832d9cce8cf851e5b3a7795ae59effd352db96..d430ba0908ffcee78f0d96a826341ad9f3e0e1b6 100644 (file)
@@ -1,3 +1,23 @@
+2013-02-19  Fabián Ezequiel Gallina  <fgallina@cuca>
+
+       * progmodes/python.el (python-indent-context):
+       Fix python-info-line-ends-backslash-p call.
+       (python-info-line-ends-backslash-p)
+       (python-info-beginning-of-backslash): Respect line-number argument.
+       (python-info-current-line-comment-p):
+       Fix behavior when not at beginning-of-line.
+       (python-util-position): Remove function.
+       (python-util-goto-line): New function.
+
+2013-02-19  Michael Albinus  <michael.albinus@gmx.de>
+
+       * eshell/em-unix.el (eshell/su): Require tramp.
+       (eshell/sudo): Require tramp.  Remove now unnecessary check.
+
+       * net/tramp-sh.el (tramp-sh-handle-start-file-process): Let-bind
+       `tramp-current-connection' in order to avoid an error when several
+       commands are invoked in a short time in eshell and friends.
+
 2013-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        Cleanup some of EIEIO's namespace.
index f6dd0d5e990ab00c71a1fc22f92826603beeb877..94508d71592f361970905558c58bbd02f6c4080b 100644 (file)
@@ -1040,6 +1040,7 @@ Show wall-clock time elapsed during execution of COMMAND.")
 
 (defun eshell/su (&rest args)
   "Alias \"su\" to call Tramp."
+  (require 'tramp)
   (setq args (eshell-stringify-list (eshell-flatten-list args)))
   (let ((orig-args (copy-tree args)))
     (eshell-eval-using-options
@@ -1077,6 +1078,7 @@ Become another USER during a login session.")
 
 (defun eshell/sudo (&rest args)
   "Alias \"sudo\" to call Tramp."
+  (require 'tramp)
   (setq args (eshell-stringify-list (eshell-flatten-list args)))
   (let ((orig-args (copy-tree args)))
     (eshell-eval-using-options
@@ -1111,8 +1113,6 @@ Execute a COMMAND as the superuser or another USER.")
                          (format "%s|sudo:%s@%s:%s"
                                  (substring prefix 0 -1) user host dir)
                        (format "/sudo:%s@%s:%s" user host dir))))
-               ;; Ensure, that Tramp has connected to that construct already.
-               (ignore (file-exists-p default-directory))
                (eshell-named-command (car orig-args) (cdr orig-args))))))))
 
 (put 'eshell/sudo 'eshell-no-numeric-conversions t)
index 0b33dd51faf2b736168be8cfc396c7739408bf2b..afe4301c6596f774d93e1804e6b512d719e493db 100644 (file)
 ;; Really cool code to lookup info indexes.
 ;; Try especially info-lookup-symbol (aka C-h S).
 
+;; Some additional sources of (Tex)info files for non-GNU packages:
+;;
+;; Scheme: <URL:http://groups.csail.mit.edu/mac/ftpdir/scm/r5rs.info.tar.gz>
+;; LaTeX:
+;;  <URL:ftp://ctan.tug.org/tex-archive/info/latex2e-help-texinfo/latex2e.texi>
+;;  (or CTAN mirrors)
+;; Perl: <URL:ftp://ftp.cpan.org/pub/CPAN/doc/manual/texinfo/> (or CPAN mirrors)
+
 ;;; Code:
 
 (require 'info)
index 9be22352b2323871119a8d1b9b50e3120119b4db..7388c5708746e6f41e4b81fb1eb843e1b536e01f 100644 (file)
@@ -2784,7 +2784,11 @@ the result will be a local, non-Tramp, filename."
           (or (null program) tramp-process-connection-type))
          (bmp (and (buffer-live-p buffer) (buffer-modified-p buffer)))
          (name1 name)
-         (i 0))
+         (i 0)
+         ;; We do not want to raise an error when
+         ;; `start-file-process' has been started several time in
+         ;; `eshell' and friends.
+         (tramp-current-connection nil))
 
       (unless buffer
        ;; BUFFER can be nil.  We use a temporary buffer.
index eadb06fa61eee7cf9493fabade249d4ae494a788..da56fe703292bc74da3550cbfbedaf9940849bf2 100644 (file)
@@ -708,10 +708,9 @@ START is the buffer position where the sexp starts."
         ;; After backslash
         ((setq start (when (not (or (python-syntax-context 'string ppss)
                                     (python-syntax-context 'comment ppss)))
-                       (let ((line-beg-pos (line-beginning-position)))
-                         (when (python-info-line-ends-backslash-p
-                                (1- line-beg-pos))
-                           (- line-beg-pos 2)))))
+                       (let ((line-beg-pos (line-number-at-pos)))
+                         (python-info-line-ends-backslash-p
+                          (1- line-beg-pos)))))
          'after-backslash)
         ;; After beginning of block
         ((setq start (save-excursion
@@ -3115,7 +3114,7 @@ With optional argument LINE-NUMBER, check that line instead."
     (save-restriction
       (widen)
       (when line-number
-        (goto-char line-number))
+        (python-util-goto-line line-number))
       (while (and (not (eobp))
                   (goto-char (line-end-position))
                   (python-syntax-context 'paren)
@@ -3131,7 +3130,7 @@ Optional argument LINE-NUMBER forces the line number to check against."
     (save-restriction
       (widen)
       (when line-number
-        (goto-char line-number))
+        (python-util-goto-line line-number))
       (when (python-info-line-ends-backslash-p)
         (while (save-excursion
                  (goto-char (line-beginning-position))
@@ -3210,7 +3209,9 @@ operator."
 
 (defun python-info-current-line-comment-p ()
   "Check if current line is a comment line."
-  (char-equal (or (char-after (+ (point) (current-indentation))) ?_) ?#))
+  (char-equal
+   (or (char-after (+ (line-beginning-position) (current-indentation))) ?_)
+   ?#))
 
 (defun python-info-current-line-empty-p ()
   "Check if current line is empty, ignoring whitespace."
@@ -3225,12 +3226,10 @@ operator."
 \f
 ;;; Utility functions
 
-(defun python-util-position (item seq)
-  "Find the first occurrence of ITEM in SEQ.
-Return the index of the matching item, or nil if not found."
-  (let ((member-result (member item seq)))
-    (when member-result
-      (- (length seq) (length member-result)))))
+(defun python-util-goto-line (line-number)
+  "Move point to LINE-NUMBER."
+  (goto-char (point-min))
+  (forward-line (1- line-number)))
 
 ;; Stolen from org-mode
 (defun python-util-clone-local-variables (from-buffer &optional regexp)
index e945e221593daf8229bcceb31a9f3a1348bc33ef..ff059cf1a3c6449bb4cd0ca8b12607da64e1d1a7 100644 (file)
@@ -1,3 +1,8 @@
+2013-02-19  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32proc.c (new_child): Avoid leaking handles if the subprocess
+       resources were not orderly released.
+
 2013-02-17  Eli Zaretskii  <eliz@gnu.org>
 
        * xdisp.c (x_draw_vertical_border): For a window that is neither
index 3f3e97c77a0a4f376d3d585076244c39f5750a63..961791a40ed97739637f460e32c57566863d7dfb 100644 (file)
@@ -849,6 +849,12 @@ new_child (void)
   cp = &child_procs[child_proc_count++];
 
  Initialize:
+  /* Last opportunity to avoid leaking handles before we forget them
+     for good.  */
+  if (cp->procinfo.hProcess)
+    CloseHandle (cp->procinfo.hProcess);
+  if (cp->procinfo.hThread)
+    CloseHandle (cp->procinfo.hThread);
   memset (cp, 0, sizeof (*cp));
   cp->fd = -1;
   cp->pid = -1;
index 08958f445755746acc3a0c931faaad0a21631031..f32b88f30279da7cc944e2e74e0594ca0ca6ad24 100644 (file)
@@ -28244,7 +28244,7 @@ x_draw_vertical_border (struct window *w)
   if (FRAME_HAS_VERTICAL_SCROLL_BARS (XFRAME (w->frame)))
     return;
 
-  /* Note: It is necessary to redraw bot the left and the right
+  /* Note: It is necessary to redraw both the left and the right
      borders, for when only this single window W is being
      redisplayed.  */
   if (!WINDOW_RIGHTMOST_P (w)