diff options
| author | Juanma Barranquero | 2010-10-12 01:57:49 +0200 |
|---|---|---|
| committer | Juanma Barranquero | 2010-10-12 01:57:49 +0200 |
| commit | 4c14013dbec3a2f130a38e61e885f1e8cc6c325b (patch) | |
| tree | b74121c8de587c217f0d146752e8893d0874aae7 | |
| parent | f0b7f5a884806112b6a938b9c31607ea005431d3 (diff) | |
| parent | a2e35ef5d52031e0fa184d1863fe7cb7043ef637 (diff) | |
| download | emacs-4c14013dbec3a2f130a38e61e885f1e8cc6c325b.tar.gz emacs-4c14013dbec3a2f130a38e61e885f1e8cc6c325b.zip | |
Merge changes from emacs-23 branch.
| -rw-r--r-- | ChangeLog | 4 | ||||
| -rw-r--r-- | doc/man/ChangeLog | 8 | ||||
| -rw-r--r-- | doc/man/emacs.1 | 27 | ||||
| -rw-r--r-- | etc/NEWS.23 | 3 | ||||
| -rw-r--r-- | lisp/ChangeLog | 29 | ||||
| -rw-r--r-- | lisp/cus-start.el | 8 | ||||
| -rw-r--r-- | lisp/emacs-lisp/lisp.el | 86 | ||||
| -rw-r--r-- | lisp/emacs-lisp/shadow.el | 11 | ||||
| -rw-r--r-- | lisp/hi-lock.el | 25 | ||||
| -rw-r--r-- | lisp/mail/mail-utils.el | 2 | ||||
| -rw-r--r-- | lisp/term/ns-win.el | 3 | ||||
| -rwxr-xr-x | make-dist | 2 | ||||
| -rw-r--r-- | src/ChangeLog | 11 | ||||
| -rw-r--r-- | src/nsterm.m | 32 |
14 files changed, 165 insertions, 86 deletions
| @@ -1,3 +1,7 @@ | |||
| 1 | 2010-10-12 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * make-dist: Don't distribute src/buildobj.h. (Bug#7167) | ||
| 4 | |||
| 1 | 2010-10-10 Dan Nicolaescu <dann@ics.uci.edu> | 5 | 2010-10-10 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 6 | ||
| 3 | * configure.in (PROFILING_LDFLAGS): Do not define, remove all uses. | 7 | * configure.in (PROFILING_LDFLAGS): Do not define, remove all uses. |
diff --git a/doc/man/ChangeLog b/doc/man/ChangeLog index 16e61208955..f2810be7f97 100644 --- a/doc/man/ChangeLog +++ b/doc/man/ChangeLog | |||
| @@ -1,3 +1,11 @@ | |||
| 1 | 2010-10-12 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * emacs.1: Small fixes. | ||
| 4 | |||
| 5 | 2010-10-12 Ulrich Mueller <ulm@gentoo.org> | ||
| 6 | |||
| 7 | * emacs.1: Update license description. | ||
| 8 | |||
| 1 | 2010-10-09 Glenn Morris <rgm@gnu.org> | 9 | 2010-10-09 Glenn Morris <rgm@gnu.org> |
| 2 | 10 | ||
| 3 | * b2m.1: Remove file. | 11 | * b2m.1: Remove file. |
diff --git a/doc/man/emacs.1 b/doc/man/emacs.1 index 2ad9e2c543a..ae2bc82c920 100644 --- a/doc/man/emacs.1 +++ b/doc/man/emacs.1 | |||
| @@ -41,9 +41,9 @@ CTRL-h or F1 enters the Help facility. | |||
| 41 | Help Tutorial (CTRL-h t) starts an interactive tutorial to quickly | 41 | Help Tutorial (CTRL-h t) starts an interactive tutorial to quickly |
| 42 | teach beginners the fundamentals of | 42 | teach beginners the fundamentals of |
| 43 | .I Emacs. | 43 | .I Emacs. |
| 44 | Help Apropos (CTRL-h a) helps you find a command given its | 44 | Help Apropos (CTRL-h a) helps you find a command with a name matching |
| 45 | functionality, Help Key (CTRL-h k) describes a given key sequence, and | 45 | a given pattern, Help Key (CTRL-h k) describes a given key sequence, |
| 46 | Help Function (CTRL-h f) describes a given Lisp function. | 46 | and Help Function (CTRL-h f) describes a given Lisp function. |
| 47 | .PP | 47 | .PP |
| 48 | .IR "GNU Emacs" 's | 48 | .IR "GNU Emacs" 's |
| 49 | many special packages handle mail reading (RMail) and sending (Mail), | 49 | many special packages handle mail reading (RMail) and sending (Mail), |
| @@ -531,12 +531,12 @@ is the number of color planes. | |||
| 531 | .SH MANUALS | 531 | .SH MANUALS |
| 532 | You can order printed copies of the GNU Emacs Manual from the Free | 532 | You can order printed copies of the GNU Emacs Manual from the Free |
| 533 | Software Foundation, which develops GNU software. | 533 | Software Foundation, which develops GNU software. |
| 534 | See the file ORDERS for ordering information. | 534 | See the online store at <http://shop.fsf.org/>. |
| 535 | .br | 535 | .br |
| 536 | Your local Emacs maintainer might also have copies available. | 536 | Your local administrator might also have copies available. |
| 537 | As with all software and publications from FSF, everyone is permitted | 537 | As with all software and publications from FSF, everyone is permitted |
| 538 | to make and distribute copies of the Emacs manual. | 538 | to make and distribute copies of the Emacs manual. |
| 539 | The TeX source to the manual is also included in the Emacs source | 539 | The Texinfo source to the manual is also included in the Emacs source |
| 540 | distribution. | 540 | distribution. |
| 541 | . | 541 | . |
| 542 | . | 542 | . |
| @@ -545,7 +545,8 @@ distribution. | |||
| 545 | The complete text of the Emacs reference manual is included in a | 545 | The complete text of the Emacs reference manual is included in a |
| 546 | convenient tree structured form. | 546 | convenient tree structured form. |
| 547 | Also includes the Emacs Lisp Reference Manual, useful to anyone | 547 | Also includes the Emacs Lisp Reference Manual, useful to anyone |
| 548 | wishing to write programs in the Emacs Lisp extension language. | 548 | wishing to write programs in the Emacs Lisp extension language, |
| 549 | and the Introduction to Programming in Emacs Lisp. | ||
| 549 | 550 | ||
| 550 | /usr/local/share/emacs/$VERSION/lisp \(em Lisp source files and | 551 | /usr/local/share/emacs/$VERSION/lisp \(em Lisp source files and |
| 551 | compiled files that define most editing commands. | 552 | compiled files that define most editing commands. |
| @@ -572,9 +573,8 @@ There is a mailing list, bug-gnu-emacs@gnu.org, for reporting Emacs | |||
| 572 | bugs and fixes. | 573 | bugs and fixes. |
| 573 | But before reporting something as a bug, please try to be sure that | 574 | But before reporting something as a bug, please try to be sure that |
| 574 | it really is a bug, not a misunderstanding or a deliberate feature. | 575 | it really is a bug, not a misunderstanding or a deliberate feature. |
| 575 | We ask you to read the section ``Reporting Emacs Bugs'' near the | 576 | We ask you to read the section ``Reporting Bugs'' in the Emacs manual |
| 576 | end of the reference manual (or Info system) for hints on how and | 577 | for hints on how and when to report bugs. |
| 577 | when to report bugs. | ||
| 578 | Also, include the version number of the Emacs you are running in | 578 | Also, include the version number of the Emacs you are running in |
| 579 | \fIevery\fR bug report that you send in. | 579 | \fIevery\fR bug report that you send in. |
| 580 | Bugs tend actually to be fixed if they can be isolated, so it is | 580 | Bugs tend actually to be fixed if they can be isolated, so it is |
| @@ -596,10 +596,7 @@ file /usr/local/share/emacs/$VERSION/etc/MAILINGLISTS. | |||
| 596 | .I Emacs | 596 | .I Emacs |
| 597 | is free; anyone may redistribute copies of | 597 | is free; anyone may redistribute copies of |
| 598 | .I Emacs | 598 | .I Emacs |
| 599 | to | 599 | to anyone under the terms stated in the GNU General Public License, |
| 600 | anyone under the terms stated in the | ||
| 601 | .I Emacs | ||
| 602 | General Public License, | ||
| 603 | a copy of which accompanies each copy of | 600 | a copy of which accompanies each copy of |
| 604 | .I Emacs | 601 | .I Emacs |
| 605 | and which also | 602 | and which also |
| @@ -611,7 +608,7 @@ may sometimes be received packaged with distributions of Unix systems, | |||
| 611 | but it is never included in the scope of any license covering those | 608 | but it is never included in the scope of any license covering those |
| 612 | systems. | 609 | systems. |
| 613 | Such inclusion violates the terms on which distribution is permitted. | 610 | Such inclusion violates the terms on which distribution is permitted. |
| 614 | In fact, the primary purpose of the General Public License is to | 611 | In fact, the primary purpose of the GNU General Public License is to |
| 615 | prohibit anyone from attaching any other restrictions to | 612 | prohibit anyone from attaching any other restrictions to |
| 616 | redistribution of | 613 | redistribution of |
| 617 | .IR Emacs . | 614 | .IR Emacs . |
diff --git a/etc/NEWS.23 b/etc/NEWS.23 index bee89d368b5..25236d0f3d2 100644 --- a/etc/NEWS.23 +++ b/etc/NEWS.23 | |||
| @@ -21,6 +21,9 @@ with a prefix argument or by typing C-u C-h C-n. | |||
| 21 | 21 | ||
| 22 | * Changes in Emacs 23.3 | 22 | * Changes in Emacs 23.3 |
| 23 | 23 | ||
| 24 | ** The nextstep port can have different modifiers for the left and right | ||
| 25 | alt/option key by customizing the value for ns-right-alternate-modifier. | ||
| 26 | |||
| 24 | 27 | ||
| 25 | * Editing Changes in Emacs 23.3 | 28 | * Editing Changes in Emacs 23.3 |
| 26 | 29 | ||
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 6136b3ab2ea..e639ebb5bf2 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,32 @@ | |||
| 1 | 2010-10-12 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * term/ns-win.el (ns-right-alternate-modifier): New defvar. | ||
| 4 | (ns-right-option-modifier): New alias for ns-right-alternate-modifier. | ||
| 5 | (mac-right-option-modifier): New alias for ns-right-option-modifier. | ||
| 6 | |||
| 7 | * cus-start.el (all): ns-right-alternate-modifier is new. | ||
| 8 | |||
| 9 | 2010-10-12 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 10 | |||
| 11 | * emacs-lisp/lisp.el (lisp-completion-at-point): | ||
| 12 | Use emacs-lisp-mode-syntax-table for the whole function. | ||
| 13 | |||
| 14 | 2010-10-12 David Koppelman <koppel@ece.lsu.edu> | ||
| 15 | |||
| 16 | * hi-lock.el (hi-lock-font-lock-hook): Check font-lock-fontified | ||
| 17 | instead of font-lock-mode before adding keywords. | ||
| 18 | Remove hi-lock-mode off code. Remove inhibit hack. | ||
| 19 | (hi-lock-set-pattern): Only add keywords if font-lock-fontified | ||
| 20 | non-nil; removed hook inhibit hack. | ||
| 21 | |||
| 22 | 2010-10-12 Glenn Morris <rgm@gnu.org> | ||
| 23 | |||
| 24 | * emacs-lisp/shadow.el (find-emacs-lisp-shadows): Rename it... | ||
| 25 | (load-path-shadows-find): ... to this. | ||
| 26 | (list-load-path-shadows): Update for above change. | ||
| 27 | |||
| 28 | * mail/mail-utils.el (mail-mbox-from): Also try return-path. | ||
| 29 | |||
| 1 | 2010-10-11 Katsumi Yamaoka <yamaoka@jpl.org> | 30 | 2010-10-11 Katsumi Yamaoka <yamaoka@jpl.org> |
| 2 | 31 | ||
| 3 | * mail/hashcash.el, net/imap.el, pgg-parse.el, pgg.el: | 32 | * mail/hashcash.el, net/imap.el, pgg-parse.el, pgg.el: |
diff --git a/lisp/cus-start.el b/lisp/cus-start.el index 161de5e78ec..a43525f8245 100644 --- a/lisp/cus-start.el +++ b/lisp/cus-start.el | |||
| @@ -272,6 +272,14 @@ Leaving \"Default\" unchecked is equivalent with specifying a default of | |||
| 272 | (const control) (const meta) | 272 | (const control) (const meta) |
| 273 | (const alt) (const hyper) | 273 | (const alt) (const hyper) |
| 274 | (const super)) "23.1") | 274 | (const super)) "23.1") |
| 275 | (ns-right-alternate-modifier | ||
| 276 | ns | ||
| 277 | (choice (const :tag "No modifier (work as alternate/option)" none) | ||
| 278 | (const :tag "Use the value of ns-alternate-modifier" | ||
| 279 | left) | ||
| 280 | (const control) (const meta) | ||
| 281 | (const alt) (const hyper) | ||
| 282 | (const super)) "23.3") | ||
| 275 | (ns-function-modifier | 283 | (ns-function-modifier |
| 276 | ns | 284 | ns |
| 277 | (choice (const :tag "No modifier (work as function)" none) | 285 | (choice (const :tag "No modifier (work as function)" none) |
diff --git a/lisp/emacs-lisp/lisp.el b/lisp/emacs-lisp/lisp.el index cfb56eb3232..d0d1520a677 100644 --- a/lisp/emacs-lisp/lisp.el +++ b/lisp/emacs-lisp/lisp.el | |||
| @@ -646,49 +646,49 @@ considered." | |||
| 646 | (defun lisp-completion-at-point (&optional predicate) | 646 | (defun lisp-completion-at-point (&optional predicate) |
| 647 | "Function used for `completion-at-point-functions' in `emacs-lisp-mode'." | 647 | "Function used for `completion-at-point-functions' in `emacs-lisp-mode'." |
| 648 | ;; FIXME: the `end' could be after point? | 648 | ;; FIXME: the `end' could be after point? |
| 649 | (let* ((pos (point)) | 649 | (with-syntax-table emacs-lisp-mode-syntax-table |
| 650 | (beg (with-syntax-table emacs-lisp-mode-syntax-table | 650 | (let* ((pos (point)) |
| 651 | (condition-case nil | 651 | (beg (condition-case nil |
| 652 | (save-excursion | 652 | (save-excursion |
| 653 | (backward-sexp 1) | 653 | (backward-sexp 1) |
| 654 | (skip-syntax-forward "'") | 654 | (skip-syntax-forward "'") |
| 655 | (point)) | 655 | (point)) |
| 656 | (scan-error pos)))) | 656 | (scan-error pos))) |
| 657 | (predicate | 657 | (predicate |
| 658 | (or predicate | 658 | (or predicate |
| 659 | (save-excursion | 659 | (save-excursion |
| 660 | (goto-char beg) | 660 | (goto-char beg) |
| 661 | (if (not (eq (char-before) ?\()) | 661 | (if (not (eq (char-before) ?\()) |
| 662 | (lambda (sym) ;why not just nil ? -sm | 662 | (lambda (sym) ;why not just nil ? -sm |
| 663 | (or (boundp sym) (fboundp sym) | 663 | (or (boundp sym) (fboundp sym) |
| 664 | (symbol-plist sym))) | 664 | (symbol-plist sym))) |
| 665 | ;; Looks like a funcall position. Let's double check. | 665 | ;; Looks like a funcall position. Let's double check. |
| 666 | (if (condition-case nil | 666 | (if (condition-case nil |
| 667 | (progn (up-list -2) (forward-char 1) | 667 | (progn (up-list -2) (forward-char 1) |
| 668 | (eq (char-after) ?\()) | 668 | (eq (char-after) ?\()) |
| 669 | (error nil)) | 669 | (error nil)) |
| 670 | ;; If the first element of the parent list is an open | 670 | ;; If the first element of the parent list is an open |
| 671 | ;; parenthesis we are probably not in a funcall position. | 671 | ;; paren we are probably not in a funcall position. |
| 672 | ;; Maybe a `let' varlist or something. | 672 | ;; Maybe a `let' varlist or something. |
| 673 | nil | 673 | nil |
| 674 | ;; Else, we assume that a function name is expected. | 674 | ;; Else, we assume that a function name is expected. |
| 675 | 'fboundp))))) | 675 | 'fboundp))))) |
| 676 | (end | 676 | (end |
| 677 | (unless (or (eq beg (point-max)) | 677 | (unless (or (eq beg (point-max)) |
| 678 | (member (char-syntax (char-after beg)) '(?\" ?\( ?\)))) | 678 | (member (char-syntax (char-after beg)) '(?\" ?\( ?\)))) |
| 679 | (condition-case nil | 679 | (condition-case nil |
| 680 | (save-excursion | 680 | (save-excursion |
| 681 | (goto-char beg) | 681 | (goto-char beg) |
| 682 | (forward-sexp 1) | 682 | (forward-sexp 1) |
| 683 | (when (>= (point) pos) | 683 | (when (>= (point) pos) |
| 684 | (point))) | 684 | (point))) |
| 685 | (scan-error pos))))) | 685 | (scan-error pos))))) |
| 686 | (when end | 686 | (when end |
| 687 | (list beg end obarray | 687 | (list beg end obarray |
| 688 | :predicate predicate | 688 | :predicate predicate |
| 689 | :annotate-function | 689 | :annotate-function |
| 690 | (unless (eq predicate 'fboundp) | 690 | (unless (eq predicate 'fboundp) |
| 691 | (lambda (str) (if (fboundp (intern-soft str)) " <f>"))))))) | 691 | (lambda (str) (if (fboundp (intern-soft str)) " <f>")))))))) |
| 692 | 692 | ||
| 693 | ;; arch-tag: aa7fa8a4-2e6f-4e9b-9cd9-fef06340e67e | 693 | ;; arch-tag: aa7fa8a4-2e6f-4e9b-9cd9-fef06340e67e |
| 694 | ;;; lisp.el ends here | 694 | ;;; lisp.el ends here |
diff --git a/lisp/emacs-lisp/shadow.el b/lisp/emacs-lisp/shadow.el index 850c1e89682..e690cbaa1bc 100644 --- a/lisp/emacs-lisp/shadow.el +++ b/lisp/emacs-lisp/shadow.el | |||
| @@ -24,7 +24,7 @@ | |||
| 24 | 24 | ||
| 25 | ;;; Commentary: | 25 | ;;; Commentary: |
| 26 | 26 | ||
| 27 | ;; The functions in this file detect (`find-emacs-lisp-shadows') | 27 | ;; The functions in this file detect (`load-path-shadows-find') |
| 28 | ;; and display (`list-load-path-shadows') potential load-path | 28 | ;; and display (`list-load-path-shadows') potential load-path |
| 29 | ;; problems that arise when Emacs Lisp files "shadow" each other. | 29 | ;; problems that arise when Emacs Lisp files "shadow" each other. |
| 30 | ;; | 30 | ;; |
| @@ -65,7 +65,7 @@ This is slower, but filters out some innocuous shadowing." | |||
| 65 | :type 'boolean | 65 | :type 'boolean |
| 66 | :group 'lisp-shadow) | 66 | :group 'lisp-shadow) |
| 67 | 67 | ||
| 68 | (defun find-emacs-lisp-shadows (&optional path) | 68 | (defun load-path-shadows-find (&optional path) |
| 69 | "Return a list of Emacs Lisp files that create shadows. | 69 | "Return a list of Emacs Lisp files that create shadows. |
| 70 | This function does the work for `list-load-path-shadows'. | 70 | This function does the work for `list-load-path-shadows'. |
| 71 | 71 | ||
| @@ -141,6 +141,9 @@ See the documentation for `list-load-path-shadows' for further information." | |||
| 141 | ;; Return the list of shadowings. | 141 | ;; Return the list of shadowings. |
| 142 | shadows)) | 142 | shadows)) |
| 143 | 143 | ||
| 144 | (define-obsolete-function-alias 'find-emacs-lisp-shadows | ||
| 145 | 'load-path-shadows-find "23.3") | ||
| 146 | |||
| 144 | ;; Return true if neither file exists, or if both exist and have identical | 147 | ;; Return true if neither file exists, or if both exist and have identical |
| 145 | ;; contents. | 148 | ;; contents. |
| 146 | (defun load-path-shadows-same-file-or-nonexistent (f1 f2) | 149 | (defun load-path-shadows-same-file-or-nonexistent (f1 f2) |
| @@ -224,7 +227,7 @@ XXX.elc in an early directory \(that does not contain XXX.el\) is | |||
| 224 | considered to shadow a later file XXX.el, and vice-versa. | 227 | considered to shadow a later file XXX.el, and vice-versa. |
| 225 | 228 | ||
| 226 | Shadowings are located by calling the (non-interactive) companion | 229 | Shadowings are located by calling the (non-interactive) companion |
| 227 | function, `find-emacs-lisp-shadows'." | 230 | function, `load-path-shadows-find'." |
| 228 | (interactive) | 231 | (interactive) |
| 229 | (let* ((path (copy-sequence load-path)) | 232 | (let* ((path (copy-sequence load-path)) |
| 230 | (tem path) | 233 | (tem path) |
| @@ -248,7 +251,7 @@ function, `find-emacs-lisp-shadows'." | |||
| 248 | (setq tem nil))) | 251 | (setq tem nil))) |
| 249 | (setq tem (cdr tem))))) | 252 | (setq tem (cdr tem))))) |
| 250 | 253 | ||
| 251 | (let* ((shadows (find-emacs-lisp-shadows path)) | 254 | (let* ((shadows (load-path-shadows-find path)) |
| 252 | (n (/ (length shadows) 2)) | 255 | (n (/ (length shadows) 2)) |
| 253 | (msg (format "%s Emacs Lisp load-path shadowing%s found" | 256 | (msg (format "%s Emacs Lisp load-path shadowing%s found" |
| 254 | (if (zerop n) "No" (concat "\n" (number-to-string n))) | 257 | (if (zerop n) "No" (concat "\n" (number-to-string n))) |
diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el index de4e2ff0dfd..0273de14edd 100644 --- a/lisp/hi-lock.el +++ b/lisp/hi-lock.el | |||
| @@ -564,23 +564,15 @@ not suitable." | |||
| 564 | 'face-name-history | 564 | 'face-name-history |
| 565 | (cdr hi-lock-face-defaults)))) | 565 | (cdr hi-lock-face-defaults)))) |
| 566 | 566 | ||
| 567 | (defvar hi-lock--inhibit-font-lock-hook nil | ||
| 568 | "Inhibit the action of `hi-lock-font-lock-hook'. | ||
| 569 | This is used by `hi-lock-set-pattern'.") | ||
| 570 | |||
| 571 | (defun hi-lock-set-pattern (regexp face) | 567 | (defun hi-lock-set-pattern (regexp face) |
| 572 | "Highlight REGEXP with face FACE." | 568 | "Highlight REGEXP with face FACE." |
| 573 | (let ((pattern (list regexp (list 0 (list 'quote face) t))) | 569 | (let ((pattern (list regexp (list 0 (list 'quote face) t)))) |
| 574 | ;; The call to `font-lock-add-keywords' below might disable | ||
| 575 | ;; and re-enable font-lock mode. If so, we don't want | ||
| 576 | ;; `hi-lock-font-lock-hook' to run. This can be removed once | ||
| 577 | ;; Bug#635 is fixed. -- cyd | ||
| 578 | (hi-lock--inhibit-font-lock-hook t)) | ||
| 579 | (unless (member pattern hi-lock-interactive-patterns) | 570 | (unless (member pattern hi-lock-interactive-patterns) |
| 580 | (font-lock-add-keywords nil (list pattern) t) | ||
| 581 | (push pattern hi-lock-interactive-patterns) | 571 | (push pattern hi-lock-interactive-patterns) |
| 582 | (if font-lock-fontified | 572 | (if font-lock-fontified |
| 583 | (font-lock-fontify-buffer) | 573 | (progn |
| 574 | (font-lock-add-keywords nil (list pattern) t) | ||
| 575 | (font-lock-fontify-buffer)) | ||
| 584 | (let* ((serial (hi-lock-string-serialize regexp)) | 576 | (let* ((serial (hi-lock-string-serialize regexp)) |
| 585 | (range-min (- (point) (/ hi-lock-highlight-range 2))) | 577 | (range-min (- (point) (/ hi-lock-highlight-range 2))) |
| 586 | (range-max (+ (point) (/ hi-lock-highlight-range 2))) | 578 | (range-max (+ (point) (/ hi-lock-highlight-range 2))) |
| @@ -641,12 +633,9 @@ This is used by `hi-lock-set-pattern'.") | |||
| 641 | 633 | ||
| 642 | (defun hi-lock-font-lock-hook () | 634 | (defun hi-lock-font-lock-hook () |
| 643 | "Add hi-lock patterns to font-lock's." | 635 | "Add hi-lock patterns to font-lock's." |
| 644 | (unless hi-lock--inhibit-font-lock-hook | 636 | (when font-lock-fontified |
| 645 | (if font-lock-mode | 637 | (font-lock-add-keywords nil hi-lock-file-patterns t) |
| 646 | (progn | 638 | (font-lock-add-keywords nil hi-lock-interactive-patterns t))) |
| 647 | (font-lock-add-keywords nil hi-lock-file-patterns t) | ||
| 648 | (font-lock-add-keywords nil hi-lock-interactive-patterns t)) | ||
| 649 | (hi-lock-mode -1)))) | ||
| 650 | 639 | ||
| 651 | (defvar hi-lock-string-serialize-hash | 640 | (defvar hi-lock-string-serialize-hash |
| 652 | (make-hash-table :test 'equal) | 641 | (make-hash-table :test 'equal) |
diff --git a/lisp/mail/mail-utils.el b/lisp/mail/mail-utils.el index 1c527f22113..a8def04100e 100644 --- a/lisp/mail/mail-utils.el +++ b/lisp/mail/mail-utils.el | |||
| @@ -401,6 +401,7 @@ The buffer should be narrowed to just the header." | |||
| 401 | (let ((from (or (mail-fetch-field "from") | 401 | (let ((from (or (mail-fetch-field "from") |
| 402 | (mail-fetch-field "really-from") | 402 | (mail-fetch-field "really-from") |
| 403 | (mail-fetch-field "sender") | 403 | (mail-fetch-field "sender") |
| 404 | (mail-fetch-field "return-path") | ||
| 404 | "unknown")) | 405 | "unknown")) |
| 405 | (date (mail-fetch-field "date"))) | 406 | (date (mail-fetch-field "date"))) |
| 406 | (format "From %s %s\n" (mail-strip-quoted-names from) | 407 | (format "From %s %s\n" (mail-strip-quoted-names from) |
| @@ -411,5 +412,4 @@ The buffer should be narrowed to just the header." | |||
| 411 | 412 | ||
| 412 | (provide 'mail-utils) | 413 | (provide 'mail-utils) |
| 413 | 414 | ||
| 414 | ;; arch-tag: b24aec2f-fd65-4ceb-9e39-3cc2827036fd | ||
| 415 | ;;; mail-utils.el ends here | 415 | ;;; mail-utils.el ends here |
diff --git a/lisp/term/ns-win.el b/lisp/term/ns-win.el index dd386fe1338..4cc26326659 100644 --- a/lisp/term/ns-win.el +++ b/lisp/term/ns-win.el | |||
| @@ -66,6 +66,7 @@ | |||
| 66 | ;; nsterm.m | 66 | ;; nsterm.m |
| 67 | (defvar ns-version-string) | 67 | (defvar ns-version-string) |
| 68 | (defvar ns-alternate-modifier) | 68 | (defvar ns-alternate-modifier) |
| 69 | (defvar ns-right-alternate-modifier) | ||
| 69 | 70 | ||
| 70 | ;;;; Command line argument handling. | 71 | ;;;; Command line argument handling. |
| 71 | 72 | ||
| @@ -284,6 +285,7 @@ The properties returned may include `top', `left', `height', and `width'." | |||
| 284 | (defvaralias 'mac-command-modifier 'ns-command-modifier) | 285 | (defvaralias 'mac-command-modifier 'ns-command-modifier) |
| 285 | (defvaralias 'mac-control-modifier 'ns-control-modifier) | 286 | (defvaralias 'mac-control-modifier 'ns-control-modifier) |
| 286 | (defvaralias 'mac-option-modifier 'ns-option-modifier) | 287 | (defvaralias 'mac-option-modifier 'ns-option-modifier) |
| 288 | (defvaralias 'mac-right-option-modifier 'ns-right-option-modifier) | ||
| 287 | (defvaralias 'mac-function-modifier 'ns-function-modifier) | 289 | (defvaralias 'mac-function-modifier 'ns-function-modifier) |
| 288 | (declare-function ns-do-applescript "nsfns.m" (script)) | 290 | (declare-function ns-do-applescript "nsfns.m" (script)) |
| 289 | (defalias 'do-applescript 'ns-do-applescript) | 291 | (defalias 'do-applescript 'ns-do-applescript) |
| @@ -815,6 +817,7 @@ unless the current buffer is a scratch buffer." | |||
| 815 | 817 | ||
| 816 | ;; You say tomAYto, I say tomAHto.. | 818 | ;; You say tomAYto, I say tomAHto.. |
| 817 | (defvaralias 'ns-option-modifier 'ns-alternate-modifier) | 819 | (defvaralias 'ns-option-modifier 'ns-alternate-modifier) |
| 820 | (defvaralias 'ns-right-option-modifier 'ns-right-alternate-modifier) | ||
| 818 | 821 | ||
| 819 | (defun ns-do-hide-emacs () | 822 | (defun ns-do-hide-emacs () |
| 820 | (interactive) | 823 | (interactive) |
| @@ -461,7 +461,7 @@ echo "Making links to \`src'" | |||
| 461 | ln makefile.w32-in ../${tempdir}/src | 461 | ln makefile.w32-in ../${tempdir}/src |
| 462 | ln .gdbinit .dbxinit ../${tempdir}/src | 462 | ln .gdbinit .dbxinit ../${tempdir}/src |
| 463 | cd ../${tempdir}/src | 463 | cd ../${tempdir}/src |
| 464 | rm -f config.h epaths.h Makefile | 464 | rm -f config.h epaths.h Makefile buildobj.h |
| 465 | rm -f =* TAGS) | 465 | rm -f =* TAGS) |
| 466 | 466 | ||
| 467 | echo "Making links to \`src/bitmaps'" | 467 | echo "Making links to \`src/bitmaps'" |
diff --git a/src/ChangeLog b/src/ChangeLog index 1c75c758498..da1ce968b62 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,14 @@ | |||
| 1 | 2010-10-12 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * nsterm.m (Qleft): Declare. | ||
| 4 | (ns_right_alternate_modifier): New variable | ||
| 5 | (NSRightAlternateKeyMask): New define. | ||
| 6 | (EV_MODIFIERS): Parse NSRightAlternateKeyMask if | ||
| 7 | ns_right_alternate_modifier isn't Qleft. | ||
| 8 | (keyDown): If ns_right_alternate_modifier isn't Qleft, use it | ||
| 9 | as emacs modifier for NSRightAlternateKeyMask. | ||
| 10 | (syms_of_nsterm): DEFVAR_LISP ns-right-alternate-modifier. | ||
| 11 | |||
| 1 | 2010-10-10 Lars Magne Ingebrigtsen <larsi@gnus.org> | 12 | 2010-10-10 Lars Magne Ingebrigtsen <larsi@gnus.org> |
| 2 | 13 | ||
| 3 | * gnutls.c (emacs_gnutls_write): If we're trying to write before | 14 | * gnutls.c (emacs_gnutls_write): If we're trying to write before |
diff --git a/src/nsterm.m b/src/nsterm.m index f0efb948ab9..3c146c5d2a6 100644 --- a/src/nsterm.m +++ b/src/nsterm.m | |||
| @@ -142,13 +142,18 @@ Lisp_Object ns_input_spi_name, ns_input_spi_arg; | |||
| 142 | Lisp_Object Vx_toolkit_scroll_bars; | 142 | Lisp_Object Vx_toolkit_scroll_bars; |
| 143 | static Lisp_Object Qmodifier_value; | 143 | static Lisp_Object Qmodifier_value; |
| 144 | Lisp_Object Qalt, Qcontrol, Qhyper, Qmeta, Qsuper, Qnone; | 144 | Lisp_Object Qalt, Qcontrol, Qhyper, Qmeta, Qsuper, Qnone; |
| 145 | extern Lisp_Object Qcursor_color, Qcursor_type, Qns; | 145 | extern Lisp_Object Qcursor_color, Qcursor_type, Qns, Qleft; |
| 146 | 146 | ||
| 147 | /* Specifies which emacs modifier should be generated when NS receives | 147 | /* Specifies which emacs modifier should be generated when NS receives |
| 148 | the Alternate modifer. May be Qnone or any of the modifier lisp symbols. */ | 148 | the Alternate modifer. May be Qnone or any of the modifier lisp symbols. */ |
| 149 | Lisp_Object ns_alternate_modifier; | 149 | Lisp_Object ns_alternate_modifier; |
| 150 | 150 | ||
| 151 | /* Specifies which emacs modifier should be generated when NS receives | 151 | /* Specifies which emacs modifier should be generated when NS receives |
| 152 | the right Alternate modifer. Has same values as ns_alternate_modifier plus | ||
| 153 | the value Qleft which means whatever value ns_alternate_modifier has. */ | ||
| 154 | Lisp_Object ns_right_alternate_modifier; | ||
| 155 | |||
| 156 | /* Specifies which emacs modifier should be generated when NS receives | ||
| 152 | the Command modifer. May be any of the modifier lisp symbols. */ | 157 | the Command modifer. May be any of the modifier lisp symbols. */ |
| 153 | Lisp_Object ns_command_modifier; | 158 | Lisp_Object ns_command_modifier; |
| 154 | 159 | ||
| @@ -218,12 +223,17 @@ static BOOL inNsSelect = 0; | |||
| 218 | 223 | ||
| 219 | /* Convert modifiers in a NeXTSTEP event to emacs style modifiers. */ | 224 | /* Convert modifiers in a NeXTSTEP event to emacs style modifiers. */ |
| 220 | #define NS_FUNCTION_KEY_MASK 0x800000 | 225 | #define NS_FUNCTION_KEY_MASK 0x800000 |
| 226 | #define NSRightAlternateKeyMask (0x000040 | NSAlternateKeyMask) | ||
| 221 | #define EV_MODIFIERS(e) \ | 227 | #define EV_MODIFIERS(e) \ |
| 222 | ((([e modifierFlags] & NSHelpKeyMask) ? \ | 228 | ((([e modifierFlags] & NSHelpKeyMask) ? \ |
| 223 | hyper_modifier : 0) \ | 229 | hyper_modifier : 0) \ |
| 224 | | (([e modifierFlags] & NSAlternateKeyMask) ? \ | 230 | | (!EQ (ns_right_alternate_modifier, Qleft) && \ |
| 231 | (([e modifierFlags] & NSRightAlternateKeyMask) \ | ||
| 232 | == NSRightAlternateKeyMask) ? \ | ||
| 233 | parse_solitary_modifier (ns_right_alternate_modifier) : 0) \ | ||
| 234 | | (([e modifierFlags] & NSAlternateKeyMask) ? \ | ||
| 225 | parse_solitary_modifier (ns_alternate_modifier) : 0) \ | 235 | parse_solitary_modifier (ns_alternate_modifier) : 0) \ |
| 226 | | (([e modifierFlags] & NSShiftKeyMask) ? \ | 236 | | (([e modifierFlags] & NSShiftKeyMask) ? \ |
| 227 | shift_modifier : 0) \ | 237 | shift_modifier : 0) \ |
| 228 | | (([e modifierFlags] & NSControlKeyMask) ? \ | 238 | | (([e modifierFlags] & NSControlKeyMask) ? \ |
| 229 | parse_solitary_modifier (ns_control_modifier) : 0) \ | 239 | parse_solitary_modifier (ns_control_modifier) : 0) \ |
| @@ -4440,7 +4450,13 @@ ns_term_shutdown (int sig) | |||
| 4440 | emacs_event->modifiers |= | 4450 | emacs_event->modifiers |= |
| 4441 | parse_solitary_modifier (ns_function_modifier); | 4451 | parse_solitary_modifier (ns_function_modifier); |
| 4442 | 4452 | ||
| 4443 | if (flags & NSAlternateKeyMask) /* default = meta */ | 4453 | if (!EQ (ns_right_alternate_modifier, Qleft) |
| 4454 | && ((flags & NSRightAlternateKeyMask) == NSRightAlternateKeyMask)) | ||
| 4455 | { | ||
| 4456 | emacs_event->modifiers |= parse_solitary_modifier | ||
| 4457 | (ns_right_alternate_modifier); | ||
| 4458 | } | ||
| 4459 | else if (flags & NSAlternateKeyMask) /* default = meta */ | ||
| 4444 | { | 4460 | { |
| 4445 | if ((NILP (ns_alternate_modifier) || EQ (ns_alternate_modifier, Qnone)) | 4461 | if ((NILP (ns_alternate_modifier) || EQ (ns_alternate_modifier, Qnone)) |
| 4446 | && !fnKeysym) | 4462 | && !fnKeysym) |
| @@ -6203,6 +6219,14 @@ Set to none means that the alternate / option key is not interpreted by Emacs\n\ | |||
| 6203 | at all, allowing it to be used at a lower level for accented character entry."); | 6219 | at all, allowing it to be used at a lower level for accented character entry."); |
| 6204 | ns_alternate_modifier = Qmeta; | 6220 | ns_alternate_modifier = Qmeta; |
| 6205 | 6221 | ||
| 6222 | DEFVAR_LISP ("ns-right-alternate-modifier", &ns_right_alternate_modifier, | ||
| 6223 | "This variable describes the behavior of the right alternate or option key.\n\ | ||
| 6224 | Set to control, meta, alt, super, or hyper means it is taken to be that key.\n\ | ||
| 6225 | Set to left means be the same key as `ns-alternate-modifier'.\n\ | ||
| 6226 | Set to none means that the alternate / option key is not interpreted by Emacs\n\ | ||
| 6227 | at all, allowing it to be used at a lower level for accented character entry."); | ||
| 6228 | ns_right_alternate_modifier = Qleft; | ||
| 6229 | |||
| 6206 | DEFVAR_LISP ("ns-command-modifier", &ns_command_modifier, | 6230 | DEFVAR_LISP ("ns-command-modifier", &ns_command_modifier, |
| 6207 | "This variable describes the behavior of the command key.\n\ | 6231 | "This variable describes the behavior of the command key.\n\ |
| 6208 | Set to control, meta, alt, super, or hyper means it is taken to be that key."); | 6232 | Set to control, meta, alt, super, or hyper means it is taken to be that key."); |