]> code.delx.au - gnu-emacs/blobdiff - lisp/term.el
Remove could-register from the set of public VC backend methods,
[gnu-emacs] / lisp / term.el
index 6647e3e32ea498031603df97af3a4116754bded1..282dfe2ea80392bb2d881162401fb7821660c21e 100644 (file)
 ;;  full advantage of this package
 ;;
 ;;  (add-hook 'term-mode-hook
-;;               (function
-;;                (lambda ()
-;;                      (setq term-prompt-regexp "^[^#$%>\n]*[#$%>] *")
-;;                      (make-local-variable 'mouse-yank-at-point)
-;;                      (make-local-variable 'transient-mark-mode)
-;;                      (setq mouse-yank-at-point t)
-;;                      (setq transient-mark-mode nil)
-;;                      (auto-fill-mode -1)
-;;                      (setq tab-width 8 ))))
+;;           (function
+;;            (lambda ()
+;;                  (setq term-prompt-regexp "^[^#$%>\n]*[#$%>] *")
+;;                  (setq-local mouse-yank-at-point t)
+;;                  (setq-local transient-mark-mode nil)
+;;                  (auto-fill-mode -1)
+;;                  (setq tab-width 8 ))))
 ;;
 ;;
 ;;             ----------------------------------------
@@ -974,10 +972,12 @@ is buffer-local."
   (if (and (not (featurep 'xemacs))
           (display-graphic-p)
           overflow-newline-into-fringe
+          ;; Subtract 1 from the width when any fringe has zero width,
+          ;; not just the right fringe.  Bug#18601.
+          (/= (frame-parameter nil 'left-fringe) 0)
           (/= (frame-parameter nil 'right-fringe) 0))
-      ;; Call window-text-width instead of window-width (Bug#16470).
-      (window-text-width)
-    (1- (window-width))))
+      (window-body-width)
+    (1- (window-body-width))))
 
 \f
 (put 'term-mode 'mode-class 'special)
@@ -1252,16 +1252,7 @@ without any interpretation."
     (run-hooks 'mouse-leave-buffer-hook)
     (setq this-command 'yank)
     (mouse-set-point click)
-    (term-send-raw-string
-     ;; From `mouse-yank-primary':
-     (or (if (fboundp 'x-get-selection-value)
-             (if (eq system-type 'windows-nt)
-                 (or (x-get-selection 'PRIMARY)
-                     (x-get-selection-value))
-               (or (x-get-selection-value)
-                   (x-get-selection 'PRIMARY)))
-          (x-get-selection 'PRIMARY))
-        (error "No selection is available")))))
+    (term-send-raw-string (gui-get-primary-selection))))
 
 (defun term-paste ()
   "Insert the last stretch of killed text at point."
@@ -3633,7 +3624,7 @@ all pending output has been dealt with."))
            (if (< down 0) term-scroll-start term-scroll-end))))
     (when (or (and (< down 0) (< scroll-needed 0))
              (and (> down 0) (> scroll-needed 0)))
-      (let ((save-point (copy-marker (point))) (save-top))
+      (let ((save-point (point-marker)) (save-top))
        (goto-char term-home-marker)
        (cond (term-scroll-with-delete
               (if (< down 0)
@@ -4138,8 +4129,9 @@ Typing SPC flushes the help buffer."
            (and (consp first)
                 (eq (window-buffer (posn-window (event-start first)))
                     (get-buffer "*Completions*"))
-                (eq (key-binding key) 'mouse-choose-completion)))
-         ;; If the user does mouse-choose-completion with the mouse,
+                (memq (key-binding key)
+                       '(mouse-choose-completion choose-completion))))
+         ;; If the user does choose-completion with the mouse,
          ;; execute the command, then delete the completion window.
          (progn
            (choose-completion first)