diff options
| author | Paul Eggert | 2016-04-03 13:39:52 -0700 |
|---|---|---|
| committer | Paul Eggert | 2016-04-03 13:39:52 -0700 |
| commit | b1c7207dbbc5b35aa2fa6e69a3041299e881dbb6 (patch) | |
| tree | 823364dde3da94970a5ae79f7d131f127eb547f4 /lisp | |
| parent | f7c5f79ca565d3ef3feeb1e0af5ca261f1bcf58a (diff) | |
| parent | b787d5501bad8036016d835faa2f90bb0904c038 (diff) | |
| download | emacs-b1c7207dbbc5b35aa2fa6e69a3041299e881dbb6.tar.gz emacs-b1c7207dbbc5b35aa2fa6e69a3041299e881dbb6.zip | |
Merge from origin/emacs-25
b787d55 More format-time-string change fixups
13c8f29 make-xwidget unused arg cleanup
36e05f0 Remove unused arguments from make-xwidget
1042217 Document incompatible changes in 'format-time-string'
7228eb8 Improve documentation of byte-code objects
0020047 Adapt calls to 'format-time-string' to changes in Emacs 25
17b5152 Improve vc-diff with Git backend
c28f87a (js--continued-expression-p): Special-case unary plus and minus
2d02a5f ; * lisp/vc/vc-annotate.el (vc-annotate): Clarify commentary.
9151f16 Prevent C++ Mode wrongly fontifying some identifiers near tem...
b3b523c Avoid crashes due to insanely large columns in tabulated-list...
a3daa34 Teach M-x disassemble a default argument.
e30c3e9 Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
df441b3 Fix OS X specific settings in tramp-tests
2244331 Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
# Conflicts:
# lisp/net/tramp-sh.el
# lisp/progmodes/cc-engine.el
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/emacs-lisp/disass.el | 10 | ||||
| -rw-r--r-- | lisp/gnus/gmm-utils.el | 2 | ||||
| -rw-r--r-- | lisp/net/tramp.el | 20 | ||||
| -rw-r--r-- | lisp/org/org.el | 9 | ||||
| -rw-r--r-- | lisp/org/ox-icalendar.el | 3 | ||||
| -rw-r--r-- | lisp/progmodes/cc-cmds.el | 245 | ||||
| -rw-r--r-- | lisp/progmodes/cc-defs.el | 52 | ||||
| -rw-r--r-- | lisp/progmodes/cc-engine.el | 38 | ||||
| -rw-r--r-- | lisp/progmodes/cc-fonts.el | 13 | ||||
| -rw-r--r-- | lisp/progmodes/js.el | 24 | ||||
| -rw-r--r-- | lisp/vc/pcvs-info.el | 2 | ||||
| -rw-r--r-- | lisp/vc/vc-annotate.el | 9 | ||||
| -rw-r--r-- | lisp/vc/vc-git.el | 9 | ||||
| -rw-r--r-- | lisp/xwidget.el | 7 |
14 files changed, 257 insertions, 186 deletions
diff --git a/lisp/emacs-lisp/disass.el b/lisp/emacs-lisp/disass.el index e67b0220e14..8506ed69669 100644 --- a/lisp/emacs-lisp/disass.el +++ b/lisp/emacs-lisp/disass.el | |||
| @@ -54,9 +54,13 @@ OBJECT can be a symbol defined as a function, or a function itself | |||
| 54 | \(a lambda expression or a compiled-function object). | 54 | \(a lambda expression or a compiled-function object). |
| 55 | If OBJECT is not already compiled, we compile it, but do not | 55 | If OBJECT is not already compiled, we compile it, but do not |
| 56 | redefine OBJECT if it is a symbol." | 56 | redefine OBJECT if it is a symbol." |
| 57 | (interactive (list (intern (completing-read "Disassemble function: " | 57 | (interactive |
| 58 | obarray 'fboundp t)) | 58 | (let* ((fn (function-called-at-point)) |
| 59 | nil 0 t)) | 59 | (prompt (if fn (format "Disassemble function (default %s): " fn) |
| 60 | "Disassemble function: ")) | ||
| 61 | (def (and fn (symbol-name fn)))) | ||
| 62 | (list (intern (completing-read prompt obarray 'fboundp t nil nil def)) | ||
| 63 | nil 0 t))) | ||
| 60 | (if (and (consp object) (not (functionp object))) | 64 | (if (and (consp object) (not (functionp object))) |
| 61 | (setq object `(lambda () ,object))) | 65 | (setq object `(lambda () ,object))) |
| 62 | (or indent (setq indent 0)) ;Default indent to zero | 66 | (or indent (setq indent 0)) ;Default indent to zero |
diff --git a/lisp/gnus/gmm-utils.el b/lisp/gnus/gmm-utils.el index 785a286c915..f6455cf9f1a 100644 --- a/lisp/gnus/gmm-utils.el +++ b/lisp/gnus/gmm-utils.el | |||
| @@ -286,7 +286,7 @@ specifiers `%Z' and `%z' will be replaced with a numeric form. " | |||
| 286 | (setq st nd)) | 286 | (setq st nd)) |
| 287 | (push (substring format-string st) rest) | 287 | (push (substring format-string st) rest) |
| 288 | (format-time-string (apply 'concat (nreverse rest)) time)) | 288 | (format-time-string (apply 'concat (nreverse rest)) time)) |
| 289 | (format-time-string format-string time tz))) | 289 | (format-time-string format-string time t))) |
| 290 | 290 | ||
| 291 | (provide 'gmm-utils) | 291 | (provide 'gmm-utils) |
| 292 | 292 | ||
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 4edca5a5998..e101c42a494 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -3764,6 +3764,26 @@ This is used internally by `tramp-file-mode-from-int'." | |||
| 3764 | (when vec (tramp-message vec 7 "locale %s" (or locale "C"))) | 3764 | (when vec (tramp-message vec 7 "locale %s" (or locale "C"))) |
| 3765 | (or locale "C")))) | 3765 | (or locale "C")))) |
| 3766 | 3766 | ||
| 3767 | (defun tramp-get-local-locale (&optional vec) | ||
| 3768 | ;; We use key nil for local connection properties. | ||
| 3769 | (with-tramp-connection-property nil "locale" | ||
| 3770 | (let ((candidates '("en_US.utf8" "C.utf8" "en_US.UTF-8")) | ||
| 3771 | locale) | ||
| 3772 | (with-temp-buffer | ||
| 3773 | (unless (or (memq system-type '(windows-nt)) | ||
| 3774 | (not (zerop (tramp-call-process | ||
| 3775 | nil "locale" nil t nil "-a")))) | ||
| 3776 | (while candidates | ||
| 3777 | (goto-char (point-min)) | ||
| 3778 | (if (string-match (format "^%s\r?$" (regexp-quote (car candidates))) | ||
| 3779 | (buffer-string)) | ||
| 3780 | (setq locale (car candidates) | ||
| 3781 | candidates nil) | ||
| 3782 | (setq candidates (cdr candidates)))))) | ||
| 3783 | ;; Return value. | ||
| 3784 | (when vec (tramp-message vec 7 "locale %s" (or locale "C"))) | ||
| 3785 | (or locale "C")))) | ||
| 3786 | |||
| 3767 | ;;;###tramp-autoload | 3787 | ;;;###tramp-autoload |
| 3768 | (defun tramp-check-cached-permissions (vec access) | 3788 | (defun tramp-check-cached-permissions (vec access) |
| 3769 | "Check `file-attributes' caches for VEC. | 3789 | "Check `file-attributes' caches for VEC. |
diff --git a/lisp/org/org.el b/lisp/org/org.el index 6e7d54d39c0..d2b48a64e45 100644 --- a/lisp/org/org.el +++ b/lisp/org/org.el | |||
| @@ -22663,7 +22663,7 @@ contains commented lines. Otherwise, comment them." | |||
| 22663 | "Non-nil when TIMESTAMP has a time specified." | 22663 | "Non-nil when TIMESTAMP has a time specified." |
| 22664 | (org-element-property :hour-start timestamp)) | 22664 | (org-element-property :hour-start timestamp)) |
| 22665 | 22665 | ||
| 22666 | (defun org-timestamp-format (timestamp format &optional end utc) | 22666 | (defun org-timestamp-format (timestamp format &optional end zone) |
| 22667 | "Format a TIMESTAMP element into a string. | 22667 | "Format a TIMESTAMP element into a string. |
| 22668 | 22668 | ||
| 22669 | FORMAT is a format specifier to be passed to | 22669 | FORMAT is a format specifier to be passed to |
| @@ -22672,8 +22672,9 @@ FORMAT is a format specifier to be passed to | |||
| 22672 | When optional argument END is non-nil, use end of date-range or | 22672 | When optional argument END is non-nil, use end of date-range or |
| 22673 | time-range, if possible. | 22673 | time-range, if possible. |
| 22674 | 22674 | ||
| 22675 | When optional argument UTC is non-nil, time will be expressed as | 22675 | The optional ZONE is omitted or nil for Emacs local time, t for |
| 22676 | Universal Time." | 22676 | Universal Time, `wall' for system wall clock time, or a string as in |
| 22677 | `set-time-zone-rule' for a time zone rule." | ||
| 22677 | (format-time-string | 22678 | (format-time-string |
| 22678 | format | 22679 | format |
| 22679 | (apply 'encode-time | 22680 | (apply 'encode-time |
| @@ -22683,7 +22684,7 @@ Universal Time." | |||
| 22683 | (if end '(:minute-end :hour-end :day-end :month-end :year-end) | 22684 | (if end '(:minute-end :hour-end :day-end :month-end :year-end) |
| 22684 | '(:minute-start :hour-start :day-start :month-start | 22685 | '(:minute-start :hour-start :day-start :month-start |
| 22685 | :year-start))))) | 22686 | :year-start))))) |
| 22686 | utc)) | 22687 | zone)) |
| 22687 | 22688 | ||
| 22688 | (defun org-timestamp-split-range (timestamp &optional end) | 22689 | (defun org-timestamp-split-range (timestamp &optional end) |
| 22689 | "Extract a timestamp object from a date or time range. | 22690 | "Extract a timestamp object from a date or time range. |
diff --git a/lisp/org/ox-icalendar.el b/lisp/org/ox-icalendar.el index 0d34ba19f45..cd54d1ee8de 100644 --- a/lisp/org/ox-icalendar.el +++ b/lisp/org/ox-icalendar.el | |||
| @@ -393,7 +393,8 @@ Universal Time, ignoring `org-icalendar-date-time-format'." | |||
| 393 | ;; Convert timestamp into internal time in order to use | 393 | ;; Convert timestamp into internal time in order to use |
| 394 | ;; `format-time-string' and fix any mistake (i.e. MI >= 60). | 394 | ;; `format-time-string' and fix any mistake (i.e. MI >= 60). |
| 395 | (encode-time 0 mi h d m y) | 395 | (encode-time 0 mi h d m y) |
| 396 | (or utc (and with-time-p (org-icalendar-use-UTC-date-time-p))))))) | 396 | (not (not (or utc (and with-time-p |
| 397 | (org-icalendar-use-UTC-date-time-p))))))))) | ||
| 397 | 398 | ||
| 398 | (defun org-icalendar-dtstamp () | 399 | (defun org-icalendar-dtstamp () |
| 399 | "Return DTSTAMP property, as a string." | 400 | "Return DTSTAMP property, as a string." |
diff --git a/lisp/progmodes/cc-cmds.el b/lisp/progmodes/cc-cmds.el index 764f44a8dd8..59f2729c43d 100644 --- a/lisp/progmodes/cc-cmds.el +++ b/lisp/progmodes/cc-cmds.el | |||
| @@ -1594,70 +1594,69 @@ defun." | |||
| 1594 | (c-region-is-active-p) | 1594 | (c-region-is-active-p) |
| 1595 | (push-mark)) | 1595 | (push-mark)) |
| 1596 | 1596 | ||
| 1597 | (c-self-bind-state-cache ; We must not share with other users of c-state-cache. | 1597 | (c-save-buffer-state |
| 1598 | (c-save-buffer-state | 1598 | (beginning-of-defun-function |
| 1599 | (beginning-of-defun-function | 1599 | end-of-defun-function |
| 1600 | end-of-defun-function | 1600 | (start (point)) |
| 1601 | (start (point)) | 1601 | (paren-state (c-parse-state)) |
| 1602 | (paren-state (c-parse-state)) | 1602 | (orig-point-min (point-min)) (orig-point-max (point-max)) |
| 1603 | (orig-point-min (point-min)) (orig-point-max (point-max)) | 1603 | lim ; Position of { which has been widened to. |
| 1604 | lim ; Position of { which has been widened to. | 1604 | where pos case-fold-search) |
| 1605 | where pos case-fold-search) | 1605 | |
| 1606 | 1606 | (save-restriction | |
| 1607 | (save-restriction | 1607 | (if (eq c-defun-tactic 'go-outward) |
| 1608 | (if (eq c-defun-tactic 'go-outward) | 1608 | (setq lim (c-widen-to-enclosing-decl-scope ; e.g. class, namespace. |
| 1609 | (setq lim (c-widen-to-enclosing-decl-scope ; e.g. class, namespace. | 1609 | paren-state orig-point-min orig-point-max))) |
| 1610 | paren-state orig-point-min orig-point-max))) | 1610 | |
| 1611 | 1611 | ;; Move back out of any macro/comment/string we happen to be in. | |
| 1612 | ;; Move back out of any macro/comment/string we happen to be in. | 1612 | (c-beginning-of-macro) |
| 1613 | (c-beginning-of-macro) | 1613 | (setq pos (c-literal-limits)) |
| 1614 | (setq pos (c-literal-limits)) | 1614 | (if pos (goto-char (car pos))) |
| 1615 | (if pos (goto-char (car pos))) | 1615 | |
| 1616 | 1616 | (setq where (c-where-wrt-brace-construct)) | |
| 1617 | (setq where (c-where-wrt-brace-construct)) | 1617 | |
| 1618 | 1618 | (if (< arg 0) | |
| 1619 | (if (< arg 0) | 1619 | ;; Move forward to the closing brace of a function. |
| 1620 | ;; Move forward to the closing brace of a function. | 1620 | (progn |
| 1621 | (progn | 1621 | (if (memq where '(at-function-end outwith-function)) |
| 1622 | (if (memq where '(at-function-end outwith-function)) | 1622 | (setq arg (1+ arg))) |
| 1623 | (setq arg (1+ arg))) | 1623 | (if (< arg 0) |
| 1624 | (if (< arg 0) | 1624 | (c-while-widening-to-decl-block |
| 1625 | (c-while-widening-to-decl-block | 1625 | (< (setq arg (- (c-forward-to-nth-EOF-} (- arg) where))) 0))) |
| 1626 | (< (setq arg (- (c-forward-to-nth-EOF-} (- arg) where))) 0))) | 1626 | ;; Move forward to the next opening brace.... |
| 1627 | ;; Move forward to the next opening brace.... | 1627 | (when (and (= arg 0) |
| 1628 | (when (and (= arg 0) | 1628 | (progn |
| 1629 | (progn | 1629 | (c-while-widening-to-decl-block |
| 1630 | (c-while-widening-to-decl-block | 1630 | (not (c-syntactic-re-search-forward "{" nil 'eob))) |
| 1631 | (not (c-syntactic-re-search-forward "{" nil 'eob))) | 1631 | (eq (char-before) ?{))) |
| 1632 | (eq (char-before) ?{))) | 1632 | (backward-char) |
| 1633 | (backward-char) | 1633 | ;; ... and backward to the function header. |
| 1634 | ;; ... and backward to the function header. | 1634 | (c-beginning-of-decl-1) |
| 1635 | (c-beginning-of-decl-1) | 1635 | t)) |
| 1636 | t)) | 1636 | |
| 1637 | 1637 | ;; Move backward to the opening brace of a function, making successively | |
| 1638 | ;; Move backward to the opening brace of a function, making successively | 1638 | ;; larger portions of the buffer visible as necessary. |
| 1639 | ;; larger portions of the buffer visible as necessary. | 1639 | (when (> arg 0) |
| 1640 | (when (> arg 0) | 1640 | (c-while-widening-to-decl-block |
| 1641 | (c-while-widening-to-decl-block | 1641 | (> (setq arg (c-backward-to-nth-BOF-{ arg where)) 0))) |
| 1642 | (> (setq arg (c-backward-to-nth-BOF-{ arg where)) 0))) | 1642 | |
| 1643 | 1643 | (when (eq arg 0) | |
| 1644 | (when (eq arg 0) | 1644 | ;; Go backward to this function's header. |
| 1645 | ;; Go backward to this function's header. | 1645 | (c-beginning-of-decl-1) |
| 1646 | (c-beginning-of-decl-1) | 1646 | |
| 1647 | 1647 | (setq pos (point)) | |
| 1648 | (setq pos (point)) | 1648 | ;; We're now there, modulo comments and whitespace. |
| 1649 | ;; We're now there, modulo comments and whitespace. | 1649 | ;; Try to be line oriented; position point at the closest |
| 1650 | ;; Try to be line oriented; position point at the closest | 1650 | ;; preceding boi that isn't inside a comment, but if we hit |
| 1651 | ;; preceding boi that isn't inside a comment, but if we hit | 1651 | ;; the previous declaration then we use the current point |
| 1652 | ;; the previous declaration then we use the current point | 1652 | ;; instead. |
| 1653 | ;; instead. | 1653 | (while (and (/= (point) (c-point 'boi)) |
| 1654 | (while (and (/= (point) (c-point 'boi)) | 1654 | (c-backward-single-comment))) |
| 1655 | (c-backward-single-comment))) | 1655 | (if (/= (point) (c-point 'boi)) |
| 1656 | (if (/= (point) (c-point 'boi)) | 1656 | (goto-char pos))) |
| 1657 | (goto-char pos))) | 1657 | |
| 1658 | 1658 | (c-keep-region-active) | |
| 1659 | (c-keep-region-active) | 1659 | (= arg 0))))) |
| 1660 | (= arg 0)))))) | ||
| 1661 | 1660 | ||
| 1662 | (defun c-forward-to-nth-EOF-} (n where) | 1661 | (defun c-forward-to-nth-EOF-} (n where) |
| 1663 | ;; Skip to the closing brace of the Nth function after point. If | 1662 | ;; Skip to the closing brace of the Nth function after point. If |
| @@ -1719,68 +1718,66 @@ the open-parenthesis that starts a defun; see `beginning-of-defun'." | |||
| 1719 | (c-region-is-active-p) | 1718 | (c-region-is-active-p) |
| 1720 | (push-mark)) | 1719 | (push-mark)) |
| 1721 | 1720 | ||
| 1722 | (c-self-bind-state-cache ; c-state-cache's list structure must not be shared | 1721 | (c-save-buffer-state |
| 1723 | ; with other users. | 1722 | (beginning-of-defun-function |
| 1724 | (c-save-buffer-state | 1723 | end-of-defun-function |
| 1725 | (beginning-of-defun-function | 1724 | (start (point)) |
| 1726 | end-of-defun-function | 1725 | (paren-state (c-parse-state)) |
| 1727 | (start (point)) | 1726 | (orig-point-min (point-min)) (orig-point-max (point-max)) |
| 1728 | (paren-state (c-parse-state)) | 1727 | lim |
| 1729 | (orig-point-min (point-min)) (orig-point-max (point-max)) | 1728 | where pos case-fold-search) |
| 1730 | lim | ||
| 1731 | where pos case-fold-search) | ||
| 1732 | |||
| 1733 | (save-restriction | ||
| 1734 | (if (eq c-defun-tactic 'go-outward) | ||
| 1735 | (setq lim (c-widen-to-enclosing-decl-scope ; e.g. class, namespace | ||
| 1736 | paren-state orig-point-min orig-point-max))) | ||
| 1737 | |||
| 1738 | ;; Move back out of any macro/comment/string we happen to be in. | ||
| 1739 | (c-beginning-of-macro) | ||
| 1740 | (setq pos (c-literal-limits)) | ||
| 1741 | (if pos (goto-char (car pos))) | ||
| 1742 | |||
| 1743 | (setq where (c-where-wrt-brace-construct)) | ||
| 1744 | |||
| 1745 | (if (< arg 0) | ||
| 1746 | ;; Move backwards to the } of a function | ||
| 1747 | (progn | ||
| 1748 | (if (memq where '(at-header outwith-function)) | ||
| 1749 | (setq arg (1+ arg))) | ||
| 1750 | (if (< arg 0) | ||
| 1751 | (c-while-widening-to-decl-block | ||
| 1752 | (< (setq arg (- (c-backward-to-nth-BOF-{ (- arg) where))) 0))) | ||
| 1753 | (if (= arg 0) | ||
| 1754 | (c-while-widening-to-decl-block | ||
| 1755 | (progn (c-syntactic-skip-backward "^}") | ||
| 1756 | (not (eq (char-before) ?})))))) | ||
| 1757 | |||
| 1758 | ;; Move forward to the } of a function | ||
| 1759 | (if (> arg 0) | ||
| 1760 | (c-while-widening-to-decl-block | ||
| 1761 | (> (setq arg (c-forward-to-nth-EOF-} arg where)) 0)))) | ||
| 1762 | |||
| 1763 | ;; Do we need to move forward from the brace to the semicolon? | ||
| 1764 | (when (eq arg 0) | ||
| 1765 | (if (c-in-function-trailer-p) ; after "}" of struct/enum, etc. | ||
| 1766 | (c-syntactic-re-search-forward ";")) | ||
| 1767 | 1729 | ||
| 1768 | (setq pos (point)) | 1730 | (save-restriction |
| 1769 | ;; We're there now, modulo comments and whitespace. | 1731 | (if (eq c-defun-tactic 'go-outward) |
| 1770 | ;; Try to be line oriented; position point after the next | 1732 | (setq lim (c-widen-to-enclosing-decl-scope ; e.g. class, namespace |
| 1771 | ;; newline that isn't inside a comment, but if we hit the | 1733 | paren-state orig-point-min orig-point-max))) |
| 1772 | ;; next declaration then we use the current point instead. | ||
| 1773 | (while (and (not (bolp)) | ||
| 1774 | (not (looking-at "\\s *$")) | ||
| 1775 | (c-forward-single-comment))) | ||
| 1776 | (cond ((bolp)) | ||
| 1777 | ((looking-at "\\s *$") | ||
| 1778 | (forward-line 1)) | ||
| 1779 | (t | ||
| 1780 | (goto-char pos)))) | ||
| 1781 | 1734 | ||
| 1782 | (c-keep-region-active) | 1735 | ;; Move back out of any macro/comment/string we happen to be in. |
| 1783 | (= arg 0))))) | 1736 | (c-beginning-of-macro) |
| 1737 | (setq pos (c-literal-limits)) | ||
| 1738 | (if pos (goto-char (car pos))) | ||
| 1739 | |||
| 1740 | (setq where (c-where-wrt-brace-construct)) | ||
| 1741 | |||
| 1742 | (if (< arg 0) | ||
| 1743 | ;; Move backwards to the } of a function | ||
| 1744 | (progn | ||
| 1745 | (if (memq where '(at-header outwith-function)) | ||
| 1746 | (setq arg (1+ arg))) | ||
| 1747 | (if (< arg 0) | ||
| 1748 | (c-while-widening-to-decl-block | ||
| 1749 | (< (setq arg (- (c-backward-to-nth-BOF-{ (- arg) where))) 0))) | ||
| 1750 | (if (= arg 0) | ||
| 1751 | (c-while-widening-to-decl-block | ||
| 1752 | (progn (c-syntactic-skip-backward "^}") | ||
| 1753 | (not (eq (char-before) ?})))))) | ||
| 1754 | |||
| 1755 | ;; Move forward to the } of a function | ||
| 1756 | (if (> arg 0) | ||
| 1757 | (c-while-widening-to-decl-block | ||
| 1758 | (> (setq arg (c-forward-to-nth-EOF-} arg where)) 0)))) | ||
| 1759 | |||
| 1760 | ;; Do we need to move forward from the brace to the semicolon? | ||
| 1761 | (when (eq arg 0) | ||
| 1762 | (if (c-in-function-trailer-p) ; after "}" of struct/enum, etc. | ||
| 1763 | (c-syntactic-re-search-forward ";")) | ||
| 1764 | |||
| 1765 | (setq pos (point)) | ||
| 1766 | ;; We're there now, modulo comments and whitespace. | ||
| 1767 | ;; Try to be line oriented; position point after the next | ||
| 1768 | ;; newline that isn't inside a comment, but if we hit the | ||
| 1769 | ;; next declaration then we use the current point instead. | ||
| 1770 | (while (and (not (bolp)) | ||
| 1771 | (not (looking-at "\\s *$")) | ||
| 1772 | (c-forward-single-comment))) | ||
| 1773 | (cond ((bolp)) | ||
| 1774 | ((looking-at "\\s *$") | ||
| 1775 | (forward-line 1)) | ||
| 1776 | (t | ||
| 1777 | (goto-char pos)))) | ||
| 1778 | |||
| 1779 | (c-keep-region-active) | ||
| 1780 | (= arg 0)))) | ||
| 1784 | 1781 | ||
| 1785 | (defun c-defun-name () | 1782 | (defun c-defun-name () |
| 1786 | "Return the name of the current defun, or NIL if there isn't one. | 1783 | "Return the name of the current defun, or NIL if there isn't one. |
diff --git a/lisp/progmodes/cc-defs.el b/lisp/progmodes/cc-defs.el index ba15d7f13e0..64e57017174 100644 --- a/lisp/progmodes/cc-defs.el +++ b/lisp/progmodes/cc-defs.el | |||
| @@ -1402,25 +1402,41 @@ been put there by c-put-char-property. POINT remains unchanged." | |||
| 1402 | (c-set-cpp-delimiters ,beg ,end))))) | 1402 | (c-set-cpp-delimiters ,beg ,end))))) |
| 1403 | 1403 | ||
| 1404 | (defmacro c-self-bind-state-cache (&rest forms) | 1404 | (defmacro c-self-bind-state-cache (&rest forms) |
| 1405 | ;; Bind the state cache to itself and execute the FORMS. It is assumed that no | 1405 | ;; Bind the state cache to itself and execute the FORMS. Return the result |
| 1406 | ;; buffer changes will happen in FORMS, and no hidden buffer changes which could | 1406 | ;; of the last FORM executed. It is assumed that no buffer changes will |
| 1407 | ;; affect the parsing will be made by FORMS. | 1407 | ;; happen in FORMS, and no hidden buffer changes which could affect the |
| 1408 | `(let ((c-state-cache (copy-tree c-state-cache)) | 1408 | ;; parsing will be made by FORMS. |
| 1409 | (c-state-cache-good-pos c-state-cache-good-pos) | 1409 | `(let* ((c-state-cache (copy-tree c-state-cache)) |
| 1410 | ;(c-state-nonlit-pos-cache (copy-tree c-state-nonlit-pos-cache)) | 1410 | (c-state-cache-good-pos c-state-cache-good-pos) |
| 1411 | ;(c-state-nonlit-pos-cache-limit c-state-nonlit-pos-cache-limit) | 1411 | ;(c-state-nonlit-pos-cache (copy-tree c-state-nonlit-pos-cache)) |
| 1412 | ;(c-state-semi-nonlit-pos-cache (copy-tree c-state-semi-nonlit-pos-cache)) | 1412 | ;(c-state-nonlit-pos-cache-limit c-state-nonlit-pos-cache-limit) |
| 1413 | ;(c-state-semi-nonlit-pos-cache-limit c-state-semi-nonlit-pos-cache) | 1413 | ;(c-state-semi-nonlit-pos-cache (copy-tree c-state-semi-nonlit-pos-cache)) |
| 1414 | (c-state-brace-pair-desert (copy-tree c-state-brace-pair-desert)) | 1414 | ;(c-state-semi-nonlit-pos-cache-limit c-state-semi-nonlit-pos-cache) |
| 1415 | (c-state-point-min c-state-point-min) | 1415 | (c-state-brace-pair-desert (copy-tree c-state-brace-pair-desert)) |
| 1416 | (c-state-point-min-lit-type c-state-point-min-lit-type) | 1416 | (c-state-point-min c-state-point-min) |
| 1417 | (c-state-point-min-lit-start c-state-point-min-lit-start) | 1417 | (c-state-point-min-lit-type c-state-point-min-lit-type) |
| 1418 | (c-state-min-scan-pos c-state-min-scan-pos) | 1418 | (c-state-point-min-lit-start c-state-point-min-lit-start) |
| 1419 | (c-state-old-cpp-beg c-state-old-cpp-beg) | 1419 | (c-state-min-scan-pos c-state-min-scan-pos) |
| 1420 | (c-state-old-cpp-end c-state-old-cpp-end)) | 1420 | (c-state-old-cpp-beg-marker (if (markerp c-state-old-cpp-beg-marker) |
| 1421 | ,@forms)) | 1421 | (copy-marker c-state-old-cpp-beg-marker) |
| 1422 | c-state-old-cpp-beg-marker)) | ||
| 1423 | (c-state-old-cpp-beg (if (markerp c-state-old-cpp-beg) | ||
| 1424 | c-state-old-cpp-beg-marker | ||
| 1425 | c-state-old-cpp-beg)) | ||
| 1426 | (c-state-old-cpp-end-marker (if (markerp c-state-old-cpp-end-marker) | ||
| 1427 | (copy-marker c-state-old-cpp-end-marker) | ||
| 1428 | c-state-old-cpp-end-marker)) | ||
| 1429 | (c-state-old-cpp-end (if (markerp c-state-old-cpp-end) | ||
| 1430 | c-state-old-cpp-end-marker | ||
| 1431 | c-state-old-cpp-end)) | ||
| 1432 | (c-parse-state-state c-parse-state-state)) | ||
| 1433 | (prog1 | ||
| 1434 | (progn ,@forms) | ||
| 1435 | (if (markerp c-state-old-cpp-beg-marker) | ||
| 1436 | (move-marker c-state-old-cpp-beg-marker nil)) | ||
| 1437 | (if (markerp c-state-old-cpp-end-marker) | ||
| 1438 | (move-marker c-state-old-cpp-end-marker nil))))) | ||
| 1422 | 1439 | ||
| 1423 | |||
| 1424 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 1440 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| 1425 | ;; The following macros are to be used only in `c-parse-state' and its | 1441 | ;; The following macros are to be used only in `c-parse-state' and its |
| 1426 | ;; subroutines. Their main purpose is to simplify the handling of C++/Java | 1442 | ;; subroutines. Their main purpose is to simplify the handling of C++/Java |
diff --git a/lisp/progmodes/cc-engine.el b/lisp/progmodes/cc-engine.el index e04929a7226..4aff0dc14e0 100644 --- a/lisp/progmodes/cc-engine.el +++ b/lisp/progmodes/cc-engine.el | |||
| @@ -3501,6 +3501,9 @@ comment at the start of cc-engine.el for more info." | |||
| 3501 | (make-variable-buffer-local 'c-parse-state-state) | 3501 | (make-variable-buffer-local 'c-parse-state-state) |
| 3502 | (defun c-record-parse-state-state () | 3502 | (defun c-record-parse-state-state () |
| 3503 | (setq c-parse-state-point (point)) | 3503 | (setq c-parse-state-point (point)) |
| 3504 | (when (markerp (cdr (assq 'c-state-old-cpp-beg c-parse-state-state))) | ||
| 3505 | (move-marker (cdr (assq 'c-state-old-cpp-beg c-parse-state-state)) nil) | ||
| 3506 | (move-marker (cdr (assq 'c-state-old-cpp-end c-parse-state-state)) nil)) | ||
| 3504 | (setq c-parse-state-state | 3507 | (setq c-parse-state-state |
| 3505 | (mapcar | 3508 | (mapcar |
| 3506 | (lambda (arg) | 3509 | (lambda (arg) |
| @@ -5841,10 +5844,11 @@ comment at the start of cc-engine.el for more info." | |||
| 5841 | ((and c-opt-cpp-prefix | 5844 | ((and c-opt-cpp-prefix |
| 5842 | (looking-at c-noise-macro-with-parens-name-re)) | 5845 | (looking-at c-noise-macro-with-parens-name-re)) |
| 5843 | (c-forward-noise-clause))))) | 5846 | (c-forward-noise-clause))))) |
| 5844 | (when (memq res '(t known found prefix)) | 5847 | (when (memq res '(t known found prefix maybe)) |
| 5845 | ,(when (eq type 'ref) | 5848 | (when c-record-type-identifiers |
| 5846 | `(when c-record-type-identifiers | 5849 | ,(if (eq type 'type) |
| 5847 | (c-record-ref-id c-last-identifier-range))) | 5850 | `(c-record-type-id c-last-identifier-range) |
| 5851 | `(c-record-ref-id c-last-identifier-range))) | ||
| 5848 | t))) | 5852 | t))) |
| 5849 | 5853 | ||
| 5850 | (defmacro c-forward-id-comma-list (type update-safe-pos) | 5854 | (defmacro c-forward-id-comma-list (type update-safe-pos) |
| @@ -6411,13 +6415,15 @@ comment at the start of cc-engine.el for more info." | |||
| 6411 | (eq (char-after) ?<)) | 6415 | (eq (char-after) ?<)) |
| 6412 | ;; Maybe an angle bracket arglist. | 6416 | ;; Maybe an angle bracket arglist. |
| 6413 | (when (let ((c-record-type-identifiers t) | 6417 | (when (let ((c-record-type-identifiers t) |
| 6414 | (c-record-found-types t)) | 6418 | (c-record-found-types t) |
| 6419 | (c-last-identifier-range)) | ||
| 6415 | (c-forward-<>-arglist nil)) | 6420 | (c-forward-<>-arglist nil)) |
| 6416 | 6421 | ||
| 6417 | (c-add-type start (1+ pos)) | ||
| 6418 | (c-forward-syntactic-ws) | 6422 | (c-forward-syntactic-ws) |
| 6419 | (setq pos (point) | 6423 | (unless (eq (char-after) ?\() |
| 6420 | c-last-identifier-range nil) | 6424 | (setq c-last-identifier-range nil) |
| 6425 | (c-add-type start (1+ pos))) | ||
| 6426 | (setq pos (point)) | ||
| 6421 | 6427 | ||
| 6422 | (if (and c-opt-identifier-concat-key | 6428 | (if (and c-opt-identifier-concat-key |
| 6423 | (looking-at c-opt-identifier-concat-key)) | 6429 | (looking-at c-opt-identifier-concat-key)) |
| @@ -6431,7 +6437,8 @@ comment at the start of cc-engine.el for more info." | |||
| 6431 | (c-forward-syntactic-ws) | 6437 | (c-forward-syntactic-ws) |
| 6432 | t) | 6438 | t) |
| 6433 | 6439 | ||
| 6434 | (when (and c-record-type-identifiers id-start) | 6440 | (when (and c-record-type-identifiers id-start |
| 6441 | (not (eq (char-after) ?\())) | ||
| 6435 | (c-record-type-id (cons id-start id-end))) | 6442 | (c-record-type-id (cons id-start id-end))) |
| 6436 | (setq res 'template) | 6443 | (setq res 'template) |
| 6437 | nil))) | 6444 | nil))) |
| @@ -6613,9 +6620,18 @@ comment at the start of cc-engine.el for more info." | |||
| 6613 | ;; It's an identifier that might be a type. | 6620 | ;; It's an identifier that might be a type. |
| 6614 | 'maybe)))) | 6621 | 'maybe)))) |
| 6615 | ((eq name-res 'template) | 6622 | ((eq name-res 'template) |
| 6616 | ;; A template is a type. | 6623 | ;; A template is sometimes a type. |
| 6617 | (goto-char id-end) | 6624 | (goto-char id-end) |
| 6618 | (setq res t)) | 6625 | (c-forward-syntactic-ws) |
| 6626 | (setq res | ||
| 6627 | (if (eq (char-after) ?\() | ||
| 6628 | (if (c-check-type id-start id-end) | ||
| 6629 | ;; It's an identifier that has been used as | ||
| 6630 | ;; a type somewhere else. | ||
| 6631 | 'found | ||
| 6632 | ;; It's an identifier that might be a type. | ||
| 6633 | 'maybe) | ||
| 6634 | t))) | ||
| 6619 | (t | 6635 | (t |
| 6620 | ;; Otherwise it's an operator identifier, which is not a type. | 6636 | ;; Otherwise it's an operator identifier, which is not a type. |
| 6621 | (goto-char start) | 6637 | (goto-char start) |
diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el index 67e88a34bf9..e171b20f328 100644 --- a/lisp/progmodes/cc-fonts.el +++ b/lisp/progmodes/cc-fonts.el | |||
| @@ -914,7 +914,7 @@ casts and declarations are fontified. Used on level 2 and higher." | |||
| 914 | ;; | 914 | ;; |
| 915 | ;; Fontify types and references in names containing angle bracket | 915 | ;; Fontify types and references in names containing angle bracket |
| 916 | ;; arglists from the point to LIMIT. Note that | 916 | ;; arglists from the point to LIMIT. Note that |
| 917 | ;; `c-font-lock-declarations' already has handled many of them. | 917 | ;; `c-font-lock-declarations' has already handled many of them. |
| 918 | ;; | 918 | ;; |
| 919 | ;; This function might do hidden buffer changes. | 919 | ;; This function might do hidden buffer changes. |
| 920 | 920 | ||
| @@ -976,11 +976,12 @@ casts and declarations are fontified. Used on level 2 and higher." | |||
| 976 | (when (and c-opt-identifier-concat-key | 976 | (when (and c-opt-identifier-concat-key |
| 977 | (not (get-text-property id-start 'face))) | 977 | (not (get-text-property id-start 'face))) |
| 978 | (c-forward-syntactic-ws) | 978 | (c-forward-syntactic-ws) |
| 979 | (if (looking-at c-opt-identifier-concat-key) | 979 | (cond ((looking-at c-opt-identifier-concat-key) |
| 980 | (c-put-font-lock-face id-start id-end | 980 | (c-put-font-lock-face id-start id-end |
| 981 | c-reference-face-name) | 981 | c-reference-face-name)) |
| 982 | (c-put-font-lock-face id-start id-end | 982 | ((eq (char-after) ?\()) |
| 983 | 'font-lock-type-face))))) | 983 | (t (c-put-font-lock-face id-start id-end |
| 984 | 'font-lock-type-face)))))) | ||
| 984 | 985 | ||
| 985 | (goto-char pos))) | 986 | (goto-char pos))) |
| 986 | (goto-char pos))))) | 987 | (goto-char pos))))) |
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el index 15a52ba8cdc..8c93ffa8731 100644 --- a/lisp/progmodes/js.el +++ b/lisp/progmodes/js.el | |||
| @@ -1770,16 +1770,20 @@ This performs fontification according to `js--class-styles'." | |||
| 1770 | "Return non-nil if the current line continues an expression." | 1770 | "Return non-nil if the current line continues an expression." |
| 1771 | (save-excursion | 1771 | (save-excursion |
| 1772 | (back-to-indentation) | 1772 | (back-to-indentation) |
| 1773 | (or (js--looking-at-operator-p) | 1773 | (if (js--looking-at-operator-p) |
| 1774 | (and (js--re-search-backward "\n" nil t) | 1774 | (or (not (memq (char-after) '(?- ?+))) |
| 1775 | (progn | 1775 | (progn |
| 1776 | (skip-chars-backward " \t") | 1776 | (forward-comment (- (point))) |
| 1777 | (or (bobp) (backward-char)) | 1777 | (not (memq (char-before) '(?, ?\[ ?\())))) |
| 1778 | (and (> (point) (point-min)) | 1778 | (and (js--re-search-backward "\n" nil t) |
| 1779 | (save-excursion (backward-char) (not (looking-at "[/*]/"))) | 1779 | (progn |
| 1780 | (js--looking-at-operator-p) | 1780 | (skip-chars-backward " \t") |
| 1781 | (and (progn (backward-char) | 1781 | (or (bobp) (backward-char)) |
| 1782 | (not (looking-at "+\\+\\|--\\|/[/*]")))))))))) | 1782 | (and (> (point) (point-min)) |
| 1783 | (save-excursion (backward-char) (not (looking-at "[/*]/"))) | ||
| 1784 | (js--looking-at-operator-p) | ||
| 1785 | (and (progn (backward-char) | ||
| 1786 | (not (looking-at "+\\+\\|--\\|/[/*]")))))))))) | ||
| 1783 | 1787 | ||
| 1784 | 1788 | ||
| 1785 | (defun js--end-of-do-while-loop-p () | 1789 | (defun js--end-of-do-while-loop-p () |
diff --git a/lisp/vc/pcvs-info.el b/lisp/vc/pcvs-info.el index 1abc7729045..b9ecc892540 100644 --- a/lisp/vc/pcvs-info.el +++ b/lisp/vc/pcvs-info.el | |||
| @@ -465,7 +465,7 @@ DIR can also be a file." | |||
| 465 | ((equal date "Result of merge") (setq subtype 'MERGED)) | 465 | ((equal date "Result of merge") (setq subtype 'MERGED)) |
| 466 | ((let ((mtime (nth 5 (file-attributes (concat dir f)))) | 466 | ((let ((mtime (nth 5 (file-attributes (concat dir f)))) |
| 467 | (system-time-locale "C")) | 467 | (system-time-locale "C")) |
| 468 | (setq timestamp (format-time-string "%c" mtime 'utc)) | 468 | (setq timestamp (format-time-string "%c" mtime t)) |
| 469 | ;; Solaris sometimes uses "Wed Sep 05", not "Wed Sep 5". | 469 | ;; Solaris sometimes uses "Wed Sep 05", not "Wed Sep 5". |
| 470 | ;; See "grep '[^a-z_]ctime' cvs/src/*.c" for reference. | 470 | ;; See "grep '[^a-z_]ctime' cvs/src/*.c" for reference. |
| 471 | (if (= (aref timestamp 8) ?0) | 471 | (if (= (aref timestamp 8) ?0) |
diff --git a/lisp/vc/vc-annotate.el b/lisp/vc/vc-annotate.el index ed038f1d4e5..774453f8b54 100644 --- a/lisp/vc/vc-annotate.el +++ b/lisp/vc/vc-annotate.el | |||
| @@ -432,6 +432,15 @@ should be applied to the background or to the foreground." | |||
| 432 | (with-output-to-temp-buffer temp-buffer-name | 432 | (with-output-to-temp-buffer temp-buffer-name |
| 433 | (let ((backend (or vc-bk (vc-backend file))) | 433 | (let ((backend (or vc-bk (vc-backend file))) |
| 434 | (coding-system-for-read buffer-file-coding-system)) | 434 | (coding-system-for-read buffer-file-coding-system)) |
| 435 | ;; For a VC backend running on DOS/Windows, it's normal to | ||
| 436 | ;; produce CRLF EOLs even if the original file has Unix EOLs, | ||
| 437 | ;; which will show ^M characters in the Annotate buffer. (One | ||
| 438 | ;; known case in point is "svn annotate".) Prevent that by | ||
| 439 | ;; forcing DOS EOL decoding. | ||
| 440 | (if (memq system-type '(windows-nt ms-dos)) | ||
| 441 | (setq coding-system-for-read | ||
| 442 | (coding-system-change-eol-conversion coding-system-for-read | ||
| 443 | 'dos))) | ||
| 435 | (vc-call-backend backend 'annotate-command file | 444 | (vc-call-backend backend 'annotate-command file |
| 436 | (get-buffer temp-buffer-name) rev) | 445 | (get-buffer temp-buffer-name) rev) |
| 437 | ;; we must setup the mode first, and then set our local | 446 | ;; we must setup the mode first, and then set our local |
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 8498cc82761..f2466d86493 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el | |||
| @@ -853,7 +853,8 @@ If SHORTLOG is non-nil, use a short format based on `vc-git-root-log-format'. | |||
| 853 | \(This requires at least Git version 1.5.6, for the --graph option.) | 853 | \(This requires at least Git version 1.5.6, for the --graph option.) |
| 854 | If START-REVISION is non-nil, it is the newest revision to show. | 854 | If START-REVISION is non-nil, it is the newest revision to show. |
| 855 | If LIMIT is non-nil, show no more than this many entries." | 855 | If LIMIT is non-nil, show no more than this many entries." |
| 856 | (let ((coding-system-for-read vc-git-commits-coding-system)) | 856 | (let ((coding-system-for-read |
| 857 | (or coding-system-for-read vc-git-commits-coding-system))) | ||
| 857 | ;; `vc-do-command' creates the buffer, but we need it before running | 858 | ;; `vc-do-command' creates the buffer, but we need it before running |
| 858 | ;; the command. | 859 | ;; the command. |
| 859 | (vc-setup-buffer buffer) | 860 | (vc-setup-buffer buffer) |
| @@ -1387,8 +1388,10 @@ This command shares argument histories with \\[rgrep] and \\[grep]." | |||
| 1387 | "A wrapper around `vc-do-command' for use in vc-git.el. | 1388 | "A wrapper around `vc-do-command' for use in vc-git.el. |
| 1388 | The difference to vc-do-command is that this function always invokes | 1389 | The difference to vc-do-command is that this function always invokes |
| 1389 | `vc-git-program'." | 1390 | `vc-git-program'." |
| 1390 | (let ((coding-system-for-read vc-git-commits-coding-system) | 1391 | (let ((coding-system-for-read |
| 1391 | (coding-system-for-write vc-git-commits-coding-system)) | 1392 | (or coding-system-for-read vc-git-commits-coding-system)) |
| 1393 | (coding-system-for-write | ||
| 1394 | (or coding-system-for-write vc-git-commits-coding-system))) | ||
| 1392 | (apply 'vc-do-command (or buffer "*vc*") okstatus vc-git-program | 1395 | (apply 'vc-do-command (or buffer "*vc*") okstatus vc-git-program |
| 1393 | ;; http://debbugs.gnu.org/16897 | 1396 | ;; http://debbugs.gnu.org/16897 |
| 1394 | (unless (and (not (cdr-safe file-or-list)) | 1397 | (unless (and (not (cdr-safe file-or-list)) |
diff --git a/lisp/xwidget.el b/lisp/xwidget.el index cd8ec0ec29d..19f631f17f3 100644 --- a/lisp/xwidget.el +++ b/lisp/xwidget.el | |||
| @@ -42,7 +42,7 @@ The possible values are: `native' or `image'." | |||
| 42 | :type '(choice (const native) (const image))) | 42 | :type '(choice (const native) (const image))) |
| 43 | 43 | ||
| 44 | (declare-function make-xwidget "xwidget.c" | 44 | (declare-function make-xwidget "xwidget.c" |
| 45 | (beg end type title width height arguments &optional buffer)) | 45 | (type title width height arguments &optional buffer)) |
| 46 | (declare-function xwidget-set-adjustment "xwidget.c" | 46 | (declare-function xwidget-set-adjustment "xwidget.c" |
| 47 | (xwidget axis relative value)) | 47 | (xwidget axis relative value)) |
| 48 | (declare-function xwidget-buffer "xwidget.c" (xwidget)) | 48 | (declare-function xwidget-buffer "xwidget.c" (xwidget)) |
| @@ -66,8 +66,7 @@ See `make-xwidget' for the possible TYPE values. | |||
| 66 | The usage of optional argument ARGS depends on the xwidget. | 66 | The usage of optional argument ARGS depends on the xwidget. |
| 67 | This returns the result of `make-xwidget'." | 67 | This returns the result of `make-xwidget'." |
| 68 | (goto-char pos) | 68 | (goto-char pos) |
| 69 | (let ((id (make-xwidget (point) (point) | 69 | (let ((id (make-xwidget type title width height args))) |
| 70 | type title width height args))) | ||
| 71 | (put-text-property (point) (+ 1 (point)) | 70 | (put-text-property (point) (+ 1 (point)) |
| 72 | 'display (list 'xwidget ':xwidget id)) | 71 | 'display (list 'xwidget ':xwidget id)) |
| 73 | id)) | 72 | id)) |
| @@ -454,7 +453,7 @@ For example, use this to display an anchor." | |||
| 454 | (setq xwidget-webkit-last-session-buffer (switch-to-buffer | 453 | (setq xwidget-webkit-last-session-buffer (switch-to-buffer |
| 455 | (get-buffer-create bufname))) | 454 | (get-buffer-create bufname))) |
| 456 | (insert " 'a' adjusts the xwidget size.") | 455 | (insert " 'a' adjusts the xwidget size.") |
| 457 | (setq xw (xwidget-insert 1 'webkit-osr bufname 1000 1000)) | 456 | (setq xw (xwidget-insert 1 'webkit bufname 1000 1000)) |
| 458 | (xwidget-put xw 'callback 'xwidget-webkit-callback) | 457 | (xwidget-put xw 'callback 'xwidget-webkit-callback) |
| 459 | (xwidget-webkit-mode) | 458 | (xwidget-webkit-mode) |
| 460 | (xwidget-webkit-goto-uri (xwidget-webkit-last-session) url))) | 459 | (xwidget-webkit-goto-uri (xwidget-webkit-last-session) url))) |