]> code.delx.au - gnu-emacs/commitdiff
Merge from emacs-24; up to 2014-06-08T18:27:22Z!eggert@cs.ucla.edu
authorGlenn Morris <rgm@gnu.org>
Tue, 24 Jun 2014 07:15:26 +0000 (00:15 -0700)
committerGlenn Morris <rgm@gnu.org>
Tue, 24 Jun 2014 07:15:26 +0000 (00:15 -0700)
13 files changed:
doc/misc/ChangeLog
doc/misc/autotype.texi
doc/misc/dired-x.texi
lisp/ChangeLog
lisp/align.el
lisp/gnus/ChangeLog
lisp/gnus/html2text.el
lisp/indent.el
lisp/net/tramp-adb.el
lisp/net/tramp-sh.el
lisp/net/tramp-smb.el
lisp/play/landmark.el
lisp/skeleton.el

index a6b87020733620c71e6ba059c88ec52faffb2f09..d7b030fb1aa739a0c97a9704d8ab8c80bfb25792 100644 (file)
@@ -1,3 +1,12 @@
+2014-06-24  Leo Liu  <sdl.web@gmail.com>
+
+       * dired-x.texi (Omitting Files in Dired, Omitting Variables):
+       Fix key binding to dired-omit-mode.  (Bug#16354)
+
+2014-06-24  Eli Zaretskii  <eliz@gnu.org>
+
+       * autotype.texi (Skeleton Language): Document the \n feature better.
+
 2014-06-23  Glenn Morris  <rgm@gnu.org>
 
        * Makefile.in (%.texi): Disable implicit rules.
index e0fce74bd3f83bd0ba85216dcc796edd2d8a75d6..a2988795fc58ee9dde9c5e2390d9caf1349256d9 100644 (file)
@@ -234,9 +234,10 @@ Insert string or character.  Literal strings and characters are passed through
 @c ??? something seems very wrong here.
 Insert a newline and align under current line, but not if this is the
 last element of a skeleton and the newline would be inserted at end of
-line.  Use newline character @code{?\n} to prevent alignment.  Use
-@code{"\n"} as the last string element of a skeleton to insert a
-newline after the skeleton unconditionally.
+line, or this is the first element and the newline would be inserted
+at beginning of line.  Use newline character @code{?\n} to prevent
+alignment.  Use @code{"\n"} as the first or last string element of a
+skeleton to insert a newline unconditionally.
 @item @code{_}
 Interesting point.  When wrapping skeletons around successive regions, they are
 put at these places.  Point is left at first @code{_} where nothing is wrapped.
index a69d72c7d43423ac991d23bd01a2a098156fcfc1..1eb512b7372743d4422e5af071467409739cd9c9 100644 (file)
@@ -283,8 +283,8 @@ Marked files are never omitted.
 @end itemize
 
 @table @kbd
-@item M-o
-@kindex M-o
+@item C-x M-o
+@kindex C-x M-o
 @findex dired-omit-mode
 (@code{dired-omit-mode}) Toggle between displaying and omitting
 ``uninteresting'' files.
@@ -324,7 +324,7 @@ Default: @code{nil}
 If non-@code{nil}, ``uninteresting'' files are not listed.
 Uninteresting files are those whose files whose names match regexp
 @code{dired-omit-files}, plus those ending with extensions in
-@code{dired-omit-extensions}.  @kbd{M-o} (@code{dired-omit-mode})
+@code{dired-omit-extensions}.  @kbd{C-x M-o} (@code{dired-omit-mode})
 toggles its value, which is buffer-local.  Put
 
 @example
@@ -333,8 +333,8 @@ toggles its value, which is buffer-local.  Put
 
 @noindent
 inside your @code{dired-mode-hook} to have omitting initially turned on in
-@emph{every} Dired buffer (@pxref{Installation}).  You can then use @kbd{M-o} to
-unomit in that buffer.
+@emph{every} Dired buffer (@pxref{Installation}).  You can then use
+@kbd{C-x M-o} to unomit in that buffer.
 
 To enable omitting automatically only in certain directories you can add
 a directory local setting
index 3f7896fd1c584ea995f7e82a30dfc50b431b4012..3ed3d16e69fa5c1f79b80f32b5835402d9040480 100644 (file)
@@ -1,3 +1,30 @@
+2014-06-24  Leo Liu  <sdl.web@gmail.com>
+
+       * align.el (align-adjust-col-for-rule): Unbreak due to defaulting
+       tab-stop-list to nil.  (Bug#16381)
+
+       * indent.el (indent-next-tab-stop): Rename from indent--next-tab-stop.
+       (indent-rigidly-left-to-tab-stop)
+       (indent-rigidly-right-to-tab-stop, tab-to-tab-stop)
+       (move-to-tab-stop): Change callers.
+
+2014-06-24  Eli Zaretskii  <eliz@gnu.org>
+
+       * skeleton.el (skeleton-insert): Yet another fix of the doc string
+       wrt behavior of \n as the first/last element of a skeleton.
+
+2014-06-24  Michael Albinus  <michael.albinus@gmx.de>
+
+       * net/tramp-adb.el (tramp-adb-handle-process-file):
+       * net/tramp-sh.el (tramp-sh-handle-process-file):
+       * net/tramp-smb.el (tramp-smb-handle-process-file): Do not raise
+       the output buffer when DISPLAY is non-nil.  (Bug#17815)
+
+2014-06-24  Glenn Morris  <rgm@gnu.org>
+
+       * play/landmark.el (landmark-move-down, landmark-move-up):
+       Fix 2007-10-20 change - preserve horizontal position.
+
 2014-06-23  Sam Steingold  <sds@gnu.org>
 
        * simple.el (kill-append): Remove undo boundary depending on ...
index 3b54aba264f5d28a6dee5e89034c2f4d153bc40f..0e6b84d11ec0702f7c33a7bbaa0ef5479d91adf1 100644 (file)
@@ -1130,13 +1130,8 @@ TAB-STOP specifies whether SPACING refers to tab-stop boundaries."
       column
     (if (not tab-stop)
        (+ column spacing)
-      (let ((stops tab-stop-list))
-       (while stops
-         (if (and (> (car stops) column)
-                  (= (setq spacing (1- spacing)) 0))
-             (setq column (car stops)
-                   stops nil)
-           (setq stops (cdr stops)))))
+      (dotimes (_ spacing)
+       (setq column (indent-next-tab-stop column)))
       column)))
 
 (defsubst align-column (pos)
index a21e899b6e42c04c800badc3fec2008281810a0f..68cbe14ecc826daf42e30bf9d851444084b637bf 100644 (file)
@@ -1,3 +1,8 @@
+2014-06-24  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * html2text.el (html2text-get-attr): Rewrite to handle spaces in quoted
+       attribute values.  (Bug#17834)
+
 2013-06-22  Dmitry Antipov  <dmantipov@yandex.ru>
 
        * gnus-sum.el (gnus-summary-edit-article-done):
index 78cecd923561d0bdad6acc89249c37e75c1a7c8a..22ee1c3921e509d25999915a3a463ec3acc26b0e 100644 (file)
@@ -179,72 +179,20 @@ formatting, and then moved afterward.")
 
 (defun html2text-get-attr (p1 p2)
   (goto-char p1)
-  (re-search-forward " +[^ ]" p2 t)
-  (let* ((attr-string (buffer-substring-no-properties (1- (point)) (1- p2)))
-        (tmp-list (split-string attr-string))
-        (attr-list)
-        (counter 0)
-        (prev (car tmp-list))
-        (this (nth 1 tmp-list))
-        (next (nth 2 tmp-list))
-        (index 1))
-
-    (cond
-     ;; size=3
-     ((string-match "[^ ]=[^ ]" prev)
-      (let ((attr  (nth 0 (split-string prev "=")))
-           (value (substring prev (1+ (string-match "=" prev)))))
-       (setq attr-list (cons (list attr value) attr-list))))
-     ;; size= 3
-     ((string-match "[^ ]=\\'" prev)
-      (setq attr-list (cons (list (substring prev 0 -1) this) attr-list))))
-
-    (while (< index (length tmp-list))
-      (cond
-       ;; size=3
-       ((string-match "[^ ]=[^ ]" this)
-       (let ((attr  (nth 0 (split-string this "=")))
-             (value (substring this (1+ (string-match "=" this)))))
-         (setq attr-list (cons (list attr value) attr-list))))
-       ;; size =3
-       ((string-match "\\`=[^ ]" this)
-       (setq attr-list (cons (list prev (substring this 1)) attr-list)))
-       ;; size= 3
-       ((string-match "[^ ]=\\'" this)
-       (setq attr-list (cons (list (substring this 0 -1) next) attr-list)))
-       ;; size = 3
-       ((string= "=" this)
-       (setq attr-list (cons (list prev next) attr-list))))
-      (setq index (1+ index))
-      (setq prev this)
-      (setq this next)
-      (setq next (nth (1+ index) tmp-list)))
-    ;;
-    ;; Tags with no accompanying "=" i.e. value=nil
-    ;;
-    (setq prev (car tmp-list))
-    (setq this (nth 1 tmp-list))
-    (setq next (nth 2 tmp-list))
-    (setq index 1)
-
-    (when (and (not (string-match "=" prev))
-              (not (string= (substring this 0 1) "=")))
-      (setq attr-list (cons (list prev nil) attr-list)))
-    (while (< index (1- (length tmp-list)))
-      (when (and (not (string-match "=" this))
-                (not (or (string= (substring next 0 1) "=")
-                         (string= (substring prev -1) "="))))
-       (setq attr-list (cons (list this nil) attr-list)))
-      (setq index (1+ index))
-      (setq prev this)
-      (setq this next)
-      (setq next (nth (1+ index) tmp-list)))
-
-    (when (and this
-              (not (string-match "=" this))
-              (not (string= (substring prev -1) "=")))
-      (setq attr-list (cons (list this nil) attr-list)))
-    ;; return - value
+  (re-search-forward "\\s-+" p2 t)
+  (let (attr-list)
+    (while (re-search-forward "[-a-z0-9._]+" p2 t)
+      (setq attr-list
+           (cons
+            (list (match-string 0)
+                  (when (looking-at "\\s-*=")
+                    (goto-char (match-end 0))
+                    (skip-chars-forward "[:space:]")
+                    (when (or (looking-at "\"[^\"]*\"\\|'[^']*'")
+                              (looking-at "[-a-z0-9._:]+"))
+                      (goto-char (match-end 0))
+                      (match-string 0))))
+            attr-list)))
     attr-list))
 
 ;;
index ab38d50296652257c64e0616c473e074e0a926c9..7df927ff808fe7e3bf464093b047f644abc212a5 100644 (file)
@@ -249,7 +249,7 @@ indentation by specifying a large negative ARG."
   (indent-rigidly--pop-undo)
   (let* ((current (indent-rigidly--current-indentation beg end))
         (rtl (eq (current-bidi-paragraph-direction) 'right-to-left))
-        (next (indent--next-tab-stop current (if rtl nil 'prev))))
+        (next (indent-next-tab-stop current (if rtl nil 'prev))))
     (indent-rigidly beg end (- next current))))
 
 (defun indent-rigidly-right-to-tab-stop (beg end)
@@ -258,7 +258,7 @@ indentation by specifying a large negative ARG."
   (indent-rigidly--pop-undo)
   (let* ((current (indent-rigidly--current-indentation beg end))
         (rtl (eq (current-bidi-paragraph-direction) 'right-to-left))
-        (next (indent--next-tab-stop current (if rtl 'prev))))
+        (next (indent-next-tab-stop current (if rtl 'prev))))
     (indent-rigidly beg end (- next current))))
 
 (defun indent-line-to (column)
@@ -654,7 +654,7 @@ You can add or remove colons and then do \\<edit-tab-stops-map>\\[edit-tab-stops
       (setq tab-stop-list tabs))
   (message "Tab stops installed"))
 
-(defun indent--next-tab-stop (column &optional prev)
+(defun indent-next-tab-stop (column &optional prev)
   "Return the next tab stop after COLUMN.
 If PREV is non-nil, return the previous one instead."
   (let ((tabs tab-stop-list))
@@ -684,7 +684,7 @@ Use \\[edit-tab-stops] to edit them interactively."
   (interactive)
   (and abbrev-mode (= (char-syntax (preceding-char)) ?w)
        (expand-abbrev))
-  (let ((nexttab (indent--next-tab-stop (current-column))))
+  (let ((nexttab (indent-next-tab-stop (current-column))))
     (delete-horizontal-space t)
     (indent-to nexttab)))
 
@@ -693,7 +693,7 @@ Use \\[edit-tab-stops] to edit them interactively."
 The variable `tab-stop-list' is a list of columns at which there are tab stops.
 Use \\[edit-tab-stops] to edit them interactively."
   (interactive)
-  (let ((nexttab (indent--next-tab-stop (current-column))))
+  (let ((nexttab (indent-next-tab-stop (current-column))))
     (let ((before (point)))
       (move-to-column nexttab t)
       (save-excursion
index b8128407c010a81a7fa6435a53fd00afc30794e0..4f6d5807ba53c201134020dc14ffd48d480929e4 100644 (file)
@@ -801,11 +801,11 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are completely ignored."
             v (format "(cd %s; %s)"
                       (tramp-shell-quote-argument localname) command)
             "")
-           ;; We should show the output anyway.
+           ;; We should add the output anyway.
            (when outbuf
              (with-current-buffer outbuf
                (insert-buffer-substring (tramp-get-connection-buffer v)))
-             (when display (display-buffer outbuf))))
+             (when (and display (get-buffer-window outbuf t)) (redisplay))))
        ;; When the user did interrupt, we should do it also.  We use
        ;; return code -1 as marker.
        (quit
index a6771cd306f8140b0754094977cfc14a8732b817..68f1ef472f13b98696f8237098902c5bea9d178c 100644 (file)
@@ -2994,13 +2994,13 @@ the result will be a local, non-Tramp, file name."
                                   command)
                         t t)
                        0 1))
-           ;; We should show the output anyway.
+           ;; We should add the output anyway.
            (when outbuf
              (with-current-buffer outbuf
                 (insert
                  (with-current-buffer (tramp-get-connection-buffer v)
                    (buffer-string))))
-             (when display (display-buffer outbuf))))
+             (when (and display (get-buffer-window outbuf t)) (redisplay))))
        ;; When the user did interrupt, we should do it also.  We use
        ;; return code -1 as marker.
        (quit
index aa44b8dbf4b610e911633cd3d34696bef363bd71..15ae9ed6fa806d73abf90e1c596639c7a40c20ed 100644 (file)
@@ -1225,8 +1225,8 @@ target of the symlink differ."
        (error
         (setq ret 1)))
 
-      ;; We should show the output anyway.
-      (when (and outbuf display) (display-buffer outbuf))
+      ;; We should redisplay the output.
+      (when (and display outbuf (get-buffer-window outbuf t)) (redisplay))
 
       ;; Cleanup.  We remove all file cache values for the connection,
       ;; because the remote process could have changed them.
index 5c516e70f9901254d3057c1420a3eace161e142c..f1bd87ce847c46d1e38c7710287763c34e2f06d6 100644 (file)
@@ -4,13 +4,7 @@
 
 ;; Author: Terrence Brannon (was: <brannon@rana.usc.edu>)
 ;; Created: December 16, 1996 - first release to usenet
-;; Keywords: games, gomoku, neural network, adaptive search, chemotaxis
-
-;;;_* Usage
-;;; Just type
-;;;   M-x eval-buffer
-;;;   M-x landmark-test-run
-
+;; Keywords: games, neural network, adaptive search, chemotaxis
 
 ;; This file is part of GNU Emacs.
 
@@ -29,6 +23,9 @@
 
 
 ;;; Commentary:
+
+;; To try this, just type: M-x landmark-test-run
+
 ;; Landmark is a relatively non-participatory game in which a robot
 ;; attempts to maneuver towards a tree at the center of the window
 ;; based on unique olfactory cues from each of the 4 directions. If
@@ -1040,13 +1037,17 @@ mouse-1: get robot moving, mouse-2: play on this square")))
   "Move point down one row on the Landmark board."
   (interactive)
   (if (< (landmark-point-y) landmark-board-height)
-      (forward-line 1)));;; landmark-square-height)))
+      (let ((col (current-column)))
+       (forward-line 1) ;;; landmark-square-height
+       (move-to-column col))))
 
 (defun landmark-move-up ()
   "Move point up one row on the Landmark board."
   (interactive)
   (if (> (landmark-point-y) 1)
-      (forward-line (- landmark-square-height))))
+      (let ((col (current-column)))
+       (forward-line (- landmark-square-height))
+       (move-to-column col))))
 
 (defun landmark-move-ne ()
   "Move point North East on the Landmark board."
index 28792ac558eeb20be706f96189a1a45ca280d51e..bb019db502c3655398b88b04a652d513d4de9f29 100644 (file)
@@ -197,8 +197,9 @@ not needed, a prompt-string or an expression for complex read functions.
 If ELEMENT is a string or a character it gets inserted (see also
 `skeleton-transformation-function').  Other possibilities are:
 
-       \\n     if not the last element of the skeleton, or not at eol,
-                go to next line and indent according to mode
+       \\n     go to next line and indent according to mode, unless
+                this is the first/last element of a skeleton and point
+                is at bol/eol
        _       interesting point, interregion here
        -       interesting point, no interregion interaction, overrides
                interesting point set by _
@@ -215,7 +216,8 @@ or at the first occurrence of _ or at the end of the inserted text.
 
 Note that \\n as the last element of the skeleton only inserts a
 newline if not at eol.  If you want to unconditionally insert a newline
-at the end of the skeleton, use \"\\n\" instead.
+at the end of the skeleton, use \"\\n\" instead.  Likewise with \\n
+as the first element when at bol.
 
 Further elements can be defined via `skeleton-further-elements'.
 ELEMENT may itself be a SKELETON with an INTERACTOR.  The user is prompted