Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
0d8de0fd
Commit
0d8de0fd
authored
Jul 19, 2011
by
Paul Eggert
Browse files
Options
Browse Files
Download
Plain Diff
Merge from trunk.
parents
c2216f8e
590bd467
Changes
29
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
598 additions
and
395 deletions
+598
-395
admin/FOR-RELEASE
admin/FOR-RELEASE
+113
-109
etc/ChangeLog
etc/ChangeLog
+11
-0
etc/MH-E-NEWS
etc/MH-E-NEWS
+5
-0
etc/NEWS
etc/NEWS
+6
-1
etc/charsets/GB180302.map
etc/charsets/GB180302.map
+20
-13
etc/charsets/GB180304.map
etc/charsets/GB180304.map
+7
-3
lisp/ChangeLog
lisp/ChangeLog
+33
-0
lisp/emacs-lisp/cl-loaddefs.el
lisp/emacs-lisp/cl-loaddefs.el
+1
-1
lisp/image.el
lisp/image.el
+1
-1
lisp/mh-e/ChangeLog
lisp/mh-e/ChangeLog
+11
-0
lisp/mh-e/mh-compat.el
lisp/mh-e/mh-compat.el
+0
-12
lisp/mh-e/mh-e.el
lisp/mh-e/mh-e.el
+2
-2
lisp/mh-e/mh-folder.el
lisp/mh-e/mh-folder.el
+4
-4
lisp/progmodes/cc-engine.el
lisp/progmodes/cc-engine.el
+5
-3
lisp/progmodes/cc-fonts.el
lisp/progmodes/cc-fonts.el
+47
-0
lisp/progmodes/cc-langs.el
lisp/progmodes/cc-langs.el
+1
-1
lisp/progmodes/etags.el
lisp/progmodes/etags.el
+1
-1
lisp/view.el
lisp/view.el
+4
-3
lisp/window.el
lisp/window.el
+179
-173
src/ChangeLog
src/ChangeLog
+49
-1
src/alloc.c
src/alloc.c
+5
-5
src/fileio.c
src/fileio.c
+27
-8
src/gnutls.c
src/gnutls.c
+5
-7
src/lread.c
src/lread.c
+28
-28
src/minibuf.c
src/minibuf.c
+23
-13
src/process.h
src/process.h
+1
-1
src/s/openbsd.h
src/s/openbsd.h
+5
-1
src/unexelf.c
src/unexelf.c
+2
-2
src/xdisp.c
src/xdisp.c
+2
-2
No files found.
admin/FOR-RELEASE
View file @
0d8de0fd
...
...
@@ -123,132 +123,136 @@ names of the people who have checked it.
SECTION READERS
----------------------------------
etc/TUTORIAL rgm (but see Bug#3783)
etc/TUTORIAL.bg
etc/TUTORIAL.cn
etc/TUTORIAL.cs
etc/TUTORIAL.de Werner Lemberg
etc/TUTORIAL.eo
etc/TUTORIAL.es
etc/TUTORIAL.fr
etc/TUTORIAL.it
etc/TUTORIAL.ja
etc/TUTORIAL.ko
etc/TUTORIAL.nl
etc/TUTORIAL.pl
etc/TUTORIAL.pt_BR
etc/TUTORIAL.ro
etc/TUTORIAL.ru
etc/TUTORIAL.sk
etc/TUTORIAL.sl
etc/TUTORIAL.sv
etc/TUTORIAL.th
etc/TUTORIAL.zh
TUTORIAL
TUTORIAL.bg
TUTORIAL.cn
TUTORIAL.cs
TUTORIAL.de
TUTORIAL.eo
TUTORIAL.es
TUTORIAL.fr
TUTORIAL.he
TUTORIAL.it
TUTORIAL.ja
TUTORIAL.ko
TUTORIAL.nl
TUTORIAL.pl
TUTORIAL.pt_BR
TUTORIAL.ro
TUTORIAL.ru
TUTORIAL.sk
TUTORIAL.sl
TUTORIAL.sv
TUTORIAL.th
TUTORIAL.zh
** Check the manual.
abbrevs.texi
-- cyd
ack.texi
-- rgm
abbrevs.texi
ack.texi
anti.texi
arevert-xtra.texi
basic.texi
-- cyd
buffers.texi
-- cyd
building.texi
-- cyd
calendar.texi
-- rgm
cal-xtra.texi
-- rgm
cmdargs.texi
-- cyd
commands.texi
-- cyd
custom.texi
-- cyd
dired.texi
-- cyd
basic.texi
buffers.texi
building.texi
calendar.texi
cal-xtra.texi
cmdargs.texi
commands.texi
custom.texi
dired.texi
dired-xtra.texi
display.texi
-- cyd
emacs.texi
-- cyd
display.texi
emacs.texi
emacs-xtra.texi
emerge-xtra.texi
entering.texi
-- cyd
files.texi
-- cyd
fixit.texi
-- cyd
fortran-xtra.texi
-- rgm
frames.texi
-- cyd
entering.texi
files.texi
fixit.texi
fortran-xtra.texi
frames.texi
glossary.texi
help.texi -- cyd
indent.texi -- cyd
killing.texi -- cyd
kmacro.texi -- cyd
macos.texi -- davidswelt
maintaining.texi -- cyd
major.texi -- cyd
mark.texi -- cyd
mini.texi -- cyd
misc.texi -- cyd
msdog.texi -- eliz
msdog-xtra.texi -- eliz
mule.texi -- cyd
m-x.texi -- cyd
programs.texi -- cyd
regs.texi -- cyd
rmail.texi -- rgm
screen.texi -- cyd
search.texi -- cyd
sending.texi -- rgm (maybe needs some brief mailclient.el details in
"Mail Sending" section?)
text.texi -- cyd
trouble.texi -- cyd
windows.texi -- rudalics
xresources.texi -- cyd
help.texi
indent.texi
killing.texi
kmacro.texi
macos.texi
maintaining.texi
major.texi
mark.texi
mini.texi
misc.texi
msdog.texi
msdog-xtra.texi
mule.texi
m-x.texi
picture-xtra.texi
programs.texi
regs.texi
rmail.texi
screen.texi
search.texi
sending.texi
text.texi
trouble.texi
vc-xtra.texi
vc1-xtra.texi
windows.texi
xresources.texi
** Check the Lisp manual.
abbrevs.texi
-- cyd
advice.texi
-- cyd
anti.texi
-- cyd
abbrevs.texi
advice.texi
anti.texi
back.texi
backups.texi
-- cyd
buffers.texi
-- cyd
commands.texi
-- cyd
compile.texi
-- cyd
control.texi
-- cyd
customize.texi
-- cyd
debugging.texi
-- cyd
display.texi
-- cyd
backups.texi
buffers.texi
commands.texi
compile.texi
control.texi
customize.texi
debugging.texi
display.texi
edebug.texi
elisp.texi
errors.texi
-- cyd
eval.texi
-- cyd
files.texi
-- cyd
frames.texi
-- cyd
functions.texi
-- cyd
hash.texi
-- cyd
help.texi
-- cyd
hooks.texi
-- cyd
errors.texi
eval.texi
files.texi
frames.texi
functions.texi
hash.texi
help.texi
hooks.texi
index.texi
internals.texi -- cyd
intro.texi -- cyd
keymaps.texi -- cyd
lists.texi -- cyd
loading.texi -- cyd
locals.texi -- cyd
macros.texi -- cyd
maps.texi -- cyd
markers.texi -- cyd
minibuf.texi -- cyd
modes.texi -- cyd
nonascii.texi -- cyd
numbers.texi -- cyd
objects.texi -- cyd
os.texi -- cyd
positions.texi -- cyd
internals.texi
intro.texi
keymaps.texi
lists.texi
loading.texi
locals.texi
macros.texi
maps.texi
markers.texi
minibuf.texi
modes.texi
nonascii.texi
numbers.texi
objects.texi
os.texi
package.texi
positions.texi
processes.texi
searching.texi
-- cyd
sequences.texi
-- cyd
streams.texi
-- cyd
strings.texi
-- cyd
symbols.texi
-- cyd
syntax.texi
-- cyd
text.texi
-- cyd
tips.texi
-- cyd
variables.texi
-- cyd
windows.texi
-- rudalics
searching.texi
sequences.texi
streams.texi
strings.texi
symbols.texi
syntax.texi
text.texi
tips.texi
variables.texi
windows.texi
* PLANNED ADDITIONS
...
...
etc/ChangeLog
View file @
0d8de0fd
2011-07-18 Andreas Schwab <schwab@linux-m68k.org>
* charsets/GB180302.map: Update to 2005 edition.
* charsets/GB180304.map: Likewise.
2011-07-17 Bill Wohler <wohler@newt.com>
Release MH-E version 8.2.93.
* NEWS, MH-E-NEWS: Update for MH-E release 8.2.93.
2011-07-16 Bill Wohler <wohler@newt.com>
Release MH-E version 8.2.92.
...
...
etc/MH-E-NEWS
View file @
0d8de0fd
...
...
@@ -3,6 +3,11 @@
Copyright
(
C
)
2001
-
2011
Free
Software
Foundation
,
Inc
.
See
the
end
of
the
file
for
license
conditions
.
*
Changes
in
MH
-
E
8.2.93
Version
8.2.93
reverts
back
to
using
`
switch
-
to
-
buffer
' which the
Emacs developers decided was fine to call from programs after all.
* Changes in MH-E 8.2.92
Version 8.2.92 actually corrects the error in the modeline glyph when
...
...
etc/NEWS
View file @
0d8de0fd
...
...
@@ -488,7 +488,7 @@ $ESHELL nor variable `explicit-shell-file-name' is set.
**
MH
-
E
***
Upgraded
to
MH
-
E
version
8.2.9
2
.
See
MH
-
E
-
NEWS
for
details
.
***
Upgraded
to
MH
-
E
version
8.2.9
3
.
See
MH
-
E
-
NEWS
for
details
.
**
comint
and
modes
derived
from
it
use
the
generic
completion
code
.
...
...
@@ -1077,6 +1077,11 @@ syntactic rules.
** Syntax tables support a new "comment style c" additionally to style b.
** frame-local variables cannot be let-bound any more.
** prog-mode is a new major-mode meant to be the parent of programming mode.
The prog-mode-hook it defines can be used to enable features for
programming modes. For example:
(add-hook '
prog
-
mode
-
hook
'flyspell-prog-mode)
enables on the fly spell checking for comments and strings for
programming modes.
** define-minor-mode accepts a new keyword :variable.
** `delete-file'
and
`
delete
-
directory
' now accept optional arg TRASH.
...
...
etc/charsets/GB180302.map
View file @
0d8de0fd
...
...
@@ -2048,17 +2048,20 @@
0xA6B9-0xA6C0 0xE785
0xA6C1-0xA6D1 0x03B1
0xA6D2-0xA6D8 0x03C3
0xA6D9-0xA6DF 0xE78D
0xA6D9 0xFE10
0xA6DA 0xFE12
0xA6DB 0xFE11
0xA6DC-0xA6DF 0xFE13
0xA6E0-0xA6E1 0xFE35
0xA6E2-0xA6E3 0xFE39
0xA6E4-0xA6E5 0xFE3F
0xA6E6-0xA6E7 0xFE3D
0xA6E8-0xA6EB 0xFE41
0xA6EC-0xA6ED 0x
E794
0xA6EC-0xA6ED 0x
FE17
0xA6EE-0xA6EF 0xFE3B
0xA6F0-0xA6F1 0xFE37
0xA6F2 0xFE31
0xA6F3 0x
E796
0xA6F3 0x
FE19
0xA6F4-0xA6F5 0xFE33
0xA6F6-0xA6FE 0xE797
0xA740-0xA77E 0xE706
...
...
@@ -2124,7 +2127,7 @@
0xA8B9 0x00FC
0xA8BA 0x00EA
0xA8BB 0x0251
0xA8BC 0x
E7C7
0xA8BC 0x
1E3F
0xA8BD 0x0144
0xA8BE 0x0148
0xA8BF 0x01F9
...
...
@@ -10385,13 +10388,15 @@
0xFE4B-0xFE4C 0xFA23
0xFE4D-0xFE4F 0xFA27
0xFE50 0x2E81
0xFE51-0xFE53 0xE816
0xFE51 0x00020087
0xFE52 0x00020089
0xFE53 0x000200CC
0xFE54 0x2E84
0xFE55 0x3473
0xFE56 0x3447
0xFE57 0x2E88
0xFE58 0x2E8B
0xFE59 0x
E81E
0xFE59 0x
9FB4
0xFE5A 0x359E
0xFE5B 0x361A
0xFE5C 0x360E
...
...
@@ -10399,17 +10404,18 @@
0xFE5E 0x2E97
0xFE5F 0x396E
0xFE60 0x3918
0xFE61 0x
E826
0xFE61 0x
9FB5
0xFE62 0x39CF
0xFE63 0x39DF
0xFE64 0x3A73
0xFE65 0x39D0
0xFE66-0xFE67 0x
E82B
0xFE66-0xFE67 0x
9FB6
0xFE68 0x3B4E
0xFE69 0x3C6E
0xFE6A 0x3CE0
0xFE6B 0x2EA7
0xFE6C-0xFE6D 0xE831
0xFE6C 0x000215D7
0xFE6D 0x9FB8
0xFE6E 0x2EAA
0xFE6F 0x4056
0xFE70 0x415F
...
...
@@ -10417,7 +10423,7 @@
0xFE72 0x4337
0xFE73 0x2EB3
0xFE74-0xFE75 0x2EB6
0xFE76 0x
E83B
0xFE76 0x
0002298F
0xFE77 0x43B1
0xFE78 0x43AC
0xFE79 0x2EBB
...
...
@@ -10425,7 +10431,7 @@
0xFE7B 0x44D6
0xFE7C 0x4661
0xFE7D 0x464C
0xFE7E 0x
E843
0xFE7E 0x
9FB9
0xFE80 0x4723
0xFE81 0x4729
0xFE82 0x477C
...
...
@@ -10440,12 +10446,13 @@
0xFE8D 0x499B
0xFE8E 0x49B7
0xFE8F 0x49B6
0xFE90-0xFE91 0xE854
0xFE90 0x9FBA
0xFE91 0x000241FE
0xFE92 0x4CA3
0xFE93-0xFE95 0x4C9F
0xFE96 0x4C77
0xFE97 0x4CA2
0xFE98-0xFE9E 0x4D13
0xFE9F 0x4DAE
0xFEA0 0x
E864
0xFEA0 0x
9FBB
0xFEA1-0xFEFE 0xE468
etc/charsets/GB180304.map
View file @
0d8de0fd
...
...
@@ -40,7 +40,8 @@
0x8130CC30-0x8130D134 0x03CA
0x8130D135-0x8130D238 0x0402
0x8130D239 0x0450
0x8130D330-0x8136A531 0x0452
0x8130D330-0x8135F436 0x0452
0x8135F438-0x8136A531 0x1E40
0x8136A532-0x8136A533 0x2011
0x8136A534 0x2017
0x8136A535-0x8136A536 0x201A
...
...
@@ -171,8 +172,10 @@
0x8234EB33-0x8234F633 0x4CA4
0x8234F634-0x82358731 0x4D1A
0x82358732-0x82358F32 0x4DAF
0x82358F33-0x8336C738 0x9FA6
0x82358F33-0x82359036 0x9FA6
0x82359135-0x8336C738 0x9FBC
0x8336C739 0xE76C
0x8135F437 0xE7C7
0x8336C830 0xE7C8
0x8336C831-0x8336C933 0xE7E7
0x8336C934 0xE815
...
...
@@ -196,7 +199,8 @@
0x84309B39-0x84309C34 0xFA19
0x84309C35 0xFA22
0x84309C36-0x84309C37 0xFA25
0x84309C38-0x84318537 0xFA2A
0x84309C38-0x84318235 0xFA2A
0x84318336-0x84318537 0xFE1A
0x84318538 0xFE32
0x84318539-0x84318632 0xFE45
0x84318633 0xFE53
...
...
lisp/ChangeLog
View file @
0d8de0fd
2011-07-19 Lars Magne Ingebrigtsen <larsi@gnus.org>
* view.el (view-buffer): Allow running in `special' modes if we're
visiting a file (bug#8615).
2011-07-19 Martin Rudalics <rudalics@gmx.at>
* window.el (display-buffer-alist-of-strings-p)
(display-buffer-alist-set-1, display-buffer-alist-set-2): New
functions.
(display-buffer-alist-set): Rewrite to handle Emacs 23 options
more accurately.
2011-07-18 Alan Mackenzie <acm@muc.de>
Fontify declarators properly when, e.g., a jit-lock chunk begins
inside a declaration.
* progmodes/cc-langs.el (c-symbol-chars): Correct a typo.
* progmodes/cc-fonts.el (c-font-lock-enclosing-decls): New
function.
(c-complex-decl-matchers): Insert reference to
c-font-lock-enclosing-decls.
* progmodes/cc-engine.el (c-backward-single-comment):
(c-backward-comments): Bind open-paren-in-column-0-is-defun-start
to nil around calls to (forward-comment -1).
2011-07-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
* image.el (put-image): Doc typo fix.
* progmodes/etags.el (tags-search): Doc typo fix.
* mail/smtpmail.el (smtpmail-via-smtp): Query the user for
password if we get errors 550 to 554.
...
...
lisp/emacs-lisp/cl-loaddefs.el
View file @
0d8de0fd
...
...
@@ -282,7 +282,7 @@ Not documented
;;;;;; flet progv psetq do-all-symbols do-symbols dotimes dolist
;;;;;; do* do loop return-from return block etypecase typecase ecase
;;;;;; case load-time-value eval-when destructuring-bind function*
;;;;;; defmacro* defun* gentemp gensym) "
cl-macs
" "
cl-macs.el
" "
2261724608e3223036b863d214f7dc0c
")
;;;;;; defmacro* defun* gentemp gensym) "
cl-macs
" "
cl-macs.el
" "
9452c0e16fd960fce5c19e5c067a7160
")
;;; Generated autoloads from cl-macs.el
(autoload 'gensym "
cl-macs
" "
\
...
...
lisp/image.el
View file @
0d8de0fd
...
...
@@ -389,7 +389,7 @@ IMAGE must be an image created with `create-image' or `defimage'.
IMAGE
is
displayed
by
putting
an
overlay
into
the
current
buffer
with
a
`
before-string
'
STRING
that
has
a
`
display
'
property
whose
value
is
the
image.
STRING
is
defaulted
if
you
omit
it.
The
overlay
created
will
have
the
`
put-
overlay
'
property
set
to
t.
The
overlay
created
will
have
the
`
put-
image
'
property
set
to
t.
POS
may
be
an
integer
or
marker.
AREA
is
where
to
display
the
image.
AREA
nil
or
omitted
means
display
it
in
the
text
area,
a
value
of
`
left-margin
'
means
...
...
lisp/mh-e/ChangeLog
View file @
0d8de0fd
2011
-
07
-
17
Bill
Wohler
<
wohler
@
newt
.
com
>
Release
MH
-
E
version
8.2.93
.
*
mh
-
e
.
el
(
Version
,
mh
-
version
):
Update
for
release
8.2.93
.
*
mh
-
compat
.
el
(
mh
-
pop
-
to
-
buffer
-
same
-
window
):
Delete
.
*
mh
-
folder
.
el
(
mh
-
inc
-
folder
,
mh
-
modify
,
mh
-
scan
-
folder
)
(
mh
-
make
-
folder
):
Revert
to
switch
-
to
-
buffer
,
as
the
Emacs
folks
decided
that
it
was
fine
to
use
it
in
programs
.
2011
-
07
-
16
Bill
Wohler
<
wohler
@
newt
.
com
>
Release
MH
-
E
version
8.2.92
.
...
...
lisp/mh-e/mh-compat.el
View file @
0d8de0fd
...
...
@@ -251,18 +251,6 @@ The argument STRING is ignored."
(
buffer-substring-no-properties
(
match-beginning
num
)
(
match-end
num
)))
(
defun-mh
mh-pop-to-buffer-same-window
pop-to-buffer-same-window
(
&optional
buffer-or-name
norecord
label
)
"Pop to buffer specified by BUFFER-OR-NAME in the selected window.
Another window will be used only if the buffer can't be shown in
the selected window, usually because it is dedicated to another
buffer. Optional arguments BUFFER-OR-NAME, NORECORD and LABEL are
as for `pop-to-buffer'. This macro is used by Emacs versions that
lack the `pop-to-buffer-same-window' function, introduced in
Emacs 24. The function `switch-to-buffer' is used instead and
LABEL is ignored."
(
switch-to-buffer
buffer-or-name
norecord
))
(
defun-mh
mh-replace-regexp-in-string
replace-regexp-in-string
(
regexp
rep
string
&optional
fixedcase
literal
subexp
start
)
"Replace REGEXP with REP everywhere in STRING and return result.
...
...
lisp/mh-e/mh-e.el
View file @
0d8de0fd
...
...
@@ -5,7 +5,7 @@
;; Author: Bill Wohler <wohler@newt.com>
;; Maintainer: Bill Wohler <wohler@newt.com>
;; Version: 8.2.9
2
;; Version: 8.2.9
3
;; Keywords: mail
;; This file is part of GNU Emacs.
...
...
@@ -127,7 +127,7 @@
;; Try to keep variables local to a single file. Provide accessors if
;; variables are shared. Use this section as a last resort.
(
defconst
mh-version
"8.2.9
2
"
"Version number of MH-E."
)
(
defconst
mh-version
"8.2.9
3
"
"Version number of MH-E."
)
;; Variants
...
...
lisp/mh-e/mh-folder.el
View file @
0d8de0fd
...
...
@@ -795,7 +795,7 @@ instead."
(
setq
threading-needed-flag
mh-show-threads-flag
)
(
setq
mh-previous-window-config
config
))
((
not
(
eq
(
current-buffer
)
(
get-buffer
folder
)))
(
mh-pop
-to-buffer
-same-window
folder
)
(
switch
-to-buffer
folder
)
(
setq
mh-previous-window-config
config
))))
(
mh-get-new-mail
file
)
(
when
(
and
threading-needed-flag
...
...
@@ -855,7 +855,7 @@ From a program, edit MESSAGE; nil means edit current message."
;; Just show the edit buffer...
(
delete-other-windows
)
(
mh-pop
-to-buffer
-same-window
edit-buffer
)))
(
switch
-to-buffer
edit-buffer
)))
;;;###mh-autoload
(
defun
mh-next-button
(
&optional
backward-flag
)
...
...
@@ -1705,7 +1705,7 @@ DONT-EXEC-PENDING is non-nil."
(
unless
dont-exec-pending
(
mh-process-or-undo-commands
folder
)
(
mh-reset-threads-and-narrowing
))
(
mh-pop
-to-buffer
-same-window
folder
)))
(
switch
-to-buffer
folder
)))
(
mh-regenerate-headers
range
)
(
if
(
zerop
(
buffer-size
))
(
if
(
equal
range
"all"
)
...
...
@@ -1786,7 +1786,7 @@ Also removes all content from the folder buffer."
(
defun
mh-make-folder
(
name
)
"Create a new mail folder called NAME.
Make it the current folder."
(
mh-pop
-to-buffer
-same-window
name
)
(
switch
-to-buffer
name
)
(
setq
buffer-read-only
nil
)
(
erase-buffer
)
(
if
mh-adaptive-cmd-note-flag
...
...
lisp/progmodes/cc-engine.el
View file @
0d8de0fd
...
...
@@ -1301,12 +1301,13 @@ This function does not do any hidden buffer changes."
;; same line.
(re-search-forward "\\=\\s *[\n\r]" start t)
(if (if (forward-comment -1)
(if (if
(let (open-paren-in-column-0-is-defun-start)
(forward-comment -1)
)
(if (eolp)
;; If forward-comment above succeeded and we're at eol
;; then the newline we moved over above didn't end a
;; line comment, so we give it another go.
(forward-comment -1)
(let (open-paren-in-column-0-is-defun-start)
(forward-comment -1))
t))
;; Emacs <= 20 and XEmacs move back over the closer of a
...
...
@@ -1333,7 +1334,8 @@ comment at the start of cc-engine.el for more info."
;; return t when moving backwards at bob.
(not (bobp))
(if (forward-comment -1)
(if (let (open-paren-in-column-0-is-defun-start)
(forward-comment -1))
(if (looking-at "\\*/")
;; Emacs <= 20 and XEmacs move back over the
;; closer of a block comment that lacks an opener.
...
...
lisp/progmodes/cc-fonts.el
View file @
0d8de0fd
...
...
@@ -1346,6 +1346,50 @@ casts and declarations are fontified. Used on level 2 and higher."
(
c-font-lock-declarators
limit
t
nil
)))
nil
)
(
defun
c-font-lock-enclosing-decls
(
limit
)
;; Fontify the declarators of (nested) declarations we're in the middle of.
;; This is mainly for when a jit-lock etc. chunk starts inside the brace
;; block of a struct/union/class, etc.
;;
;; This function will be called from font-lock for a region bounded by POINT
;; and LIMIT, as though it were to identify a keyword for
;; font-lock-keyword-face. It always returns NIL to inhibit this and
;; prevent a repeat invocation. See elisp/lispref page "Search-based
;; Fontification".
(
let*
((
paren-state
(
c-parse-state
))
(
start
(
point
))
decl-context
bo-decl
in-typedef
type-type
ps-elt
)
;; First, are we actually in a "local" declaration?
(
setq
decl-context
(
c-beginning-of-decl-1
)
bo-decl
(
point
)
in-typedef
(
looking-at
c-typedef-key
))
(
if
in-typedef
(
c-forward-token-2
))
(
when
(
and
(
eq
(
car
decl-context
)
'same
)
(
<
bo-decl
start
))
;; Are we genuinely at a type?
(
setq
type-type
(
c-forward-type
t
))
(
if
(
and
type-type
(
or
(
not
(
eq
type-type
'maybe
))
(
looking-at
c-symbol-key
)))
(
c-font-lock-declarators
limit
t
in-typedef
)))
;; Secondly, are we in any nested struct/union/class/etc. braces?
(
while
paren-state