1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-09 05:01:02 -08:00
Commit graph

128 commits

Author SHA1 Message Date
Eli Zaretskii
dcd76bd48d Merge from origin/emacs-28
836be7a112 ; * etc/refcards/ru-refcard.tex: Update Copyright year.
86cbc6ee4a * lisp/net/tramp-sh.el: Adapt copyright year
ebe8772f65 ; Minor fixes related to copyright years
23c1ee6989 ; * test/manual/etags/ETAGS.good_N: Adjust to copyright ye...
8d3fc7ec89 * src/xfaces.c (face_for_font): Make 'hash' be uintptr_t.
19dcb237b5 ; Add 2022 to copyright years.

# Conflicts:
#	etc/NEWS
#	etc/refcards/ru-refcard.tex
#	lib/cdefs.h
#	lisp/erc/erc-dcc.el
#	lisp/erc/erc-imenu.el
#	lisp/erc/erc-replace.el
#	lisp/image-dired.el
#	lisp/progmodes/xref.el
#	m4/alloca.m4
#	m4/byteswap.m4
#	m4/errno_h.m4
#	m4/getopt.m4
#	m4/gnulib-common.m4
#	m4/inttypes.m4
#	m4/stddef_h.m4
#	m4/stdint.m4
#	m4/sys_socket_h.m4
2022-01-01 07:03:03 -05:00
Eli Zaretskii
19dcb237b5 ; Add 2022 to copyright years. 2022-01-01 02:45:51 -05:00
Alan Mackenzie
22b8d68132 CC Mode: Remove annoying background fontification. Should fix bug #52298
Partially revert the commits from 2021-10-24 - 2021-10-26, "CC Mode: Fontify
"found types" which are recognized after being first scanned".

This removes the background fontification which ran off of a 0.1s timer, but
leaves the facility of normal fontification causing the fontification
throughout the buffer of newly found types.

* lisp/progmodes/cc-fonts.el (c-find-types-background)
(c-type-finder-timer-func): Remove.

* lisp/progmodes/cc-mode.el (c-type-finder-timer, c-inhibit-type-finder)
(c-type-finder-pos, c-post-gc-hook): Remove.
(c-leave-cc-mode-mode): Remove the manipulations of c-type-finder-timer and
c-post-gc-hook.
(c-basic-common-init): Remove the manipulations of c-type-finder-pos,
c-type-finder-timer, and c-post-gc-hook.

* lisp/progmodes/cc-vars.el (c-type-finder-time-slot)
(c-type-finder-repeat-time, c-type-finder-chunk-size): Remove.

* doc/misc/cc-mode.texi (Found Types): Remove.  Amend some menu entries.
2021-12-19 14:29:30 +00:00
Glenn Morris
d1e4d89b32 * doc/misc/cc-mode.texi (Font Locking): Fix menu. 2021-10-25 17:33:11 +01:00
Alan Mackenzie
374f14fb99 CC Mode: Fontify "found types" which are recognized after being first scanned
This aims to fix the scenario where on jit-lock's first scan of a type, it is
not recognized as such, and only later does this happen.  The fontification of
such found types is now done by background scanning in short time slices
immediately after initialising the mode.

* lisp/progmodes/cc-engine.el (c-add-type-1): New function.
(c-add-type): Extract c-add-type-1 from it, and reformulate the mechanism for
protecting c-found-types from excessive partial identifiers.

* lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare): Remove the
code which cleared c-found-types on fontification at BOB.
(c-find-types-background): New function, based on c-font-lock-declarations).
(c-type-finder-timer-func): New function.
(c-re-redisplay-timer): New variable.
(c-force-redisplay, c-fontify-new-found-type): New functions.

* lisp/progmodes/cc-mode.el (c-type-finder-timer, c-inhibit-type-finder): New
variables.
(c-leave-cc-mode-mode): Nullify c-post-command-hook, c-post-gc-hook, and
c-type-finder-timer when the last CC Mode buffer of a session is killed.
(c-type-finder-pos): New variable.
(c-basic-common-init): Initialize/Install c-post-command, c-c-type-finder-pos,
c-type-finder-timer, and c-post-gc-hook.
(c-new-id-start, c-new-id-end, c-new-id-is-type): New variables.
(c-update-new-id): New function.
(c-post-command): New post command hook function, used for checking moving
away from partially typed identifiers, and making them full identifiers.
(c-post-gc-hook): New hook to prevent CC Mode activity immediately following
GC, thus allowing keyboard/mouse input to be registered.
(c-before-change): Add code to clear c-found-types on a buffer change at BOB.
(c-after-change): Call c-update-new-id to keep track of partially typed
identifiers.

* doc/misc/cc-mode.texi (Found Types): New @section in the @Chapter Font
Locking.

* lisp/progmodes/cc-vars.el (c-type-finder-time-slot)
(c-type-finder-repeat-time, c-type-finder-chunk-size): New customizable
options.
2021-10-24 19:59:18 +00:00
Alan Mackenzie
32d8a48709 Revert "CC Mode: Fontify "found types" which are recognized after being ..."
This reverts commit 51719617eb.  The commit
caused a hang at start-up with a big desktop.
2021-10-23 09:29:26 +00:00
Alan Mackenzie
51719617eb CC Mode: Fontify "found types" which are recognized after being first scanned
This aims to fix the scenario where on jit-lock's first scan of a type, it is
not recognized as such, and only later does this happen.  The fontification of
such found types is now done by background scanning in short time slices
immediately after initialising the mode.

* lisp/progmodes/cc-engine.el (c-add-type-1): New function.
(c-add-type): Extract c-add-type-1 from it, and reformulate the mechanism for
protecting c-found-types from excessive partial identifiers.

* lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare): Remove the
code which cleared c-found-types on fontification at BOB.
(c-find-types-background): New function, based on c-font-lock-declarations).
(c-types-finder-timer-func): New function.
(c-re-redisplay-timer): New variable.
(c-force-redisplay, c-fontify-new-found-type): New functions.

* lisp/progmodes/cc-mode.el (c-type-finder-timer): New variable.
(c-leave-cc-mode-mode): Nullify c-post-command-hook and c-type-finder-timer
when the last CC Mode buffer of a session is killed.
(c-type-finder-pos): New variable.
(c-basic-common-init): Initialize c-type-finder-pos and c-type-finder-timer.
(c-new-id-start, c-new-id-end, c-new-id-is-type): New variables.
(c-update-new-id): New function.
(c-post-command): New post command hook function, used for checking moving
away from partially typed identifiers, and making them full identifiers.
(c-before-change): Add code to clear c-found-types on a buffer change at BOB.
(c-after-change): Call c-update-new-id to keep track of partially typed
identifiers.

* doc/misc/cc-mode.texi (Found Types): New @section in the @Chapter Font
Locking.

* lisp/progmodes/cc-vars.el (c-type-finder-time-slot)
(c-type-finder-repeat-time, c-type-finder-chunk-size): New customizable
options.
2021-10-22 19:55:01 +00:00
Glenn Morris
316de2a131 * doc/misc/cc-mode.texi: Remove hand-written node pointers (bug#48402). 2021-05-25 11:06:07 -07:00
Paul Eggert
ba05d005e5 Update copyright year to 2021
Run "TZ=UTC0 admin/update-copyright".
2021-01-01 01:13:56 -08:00
Alan Mackenzie
58bdfd7c54 CC Mode: increment version numbers to 5.35 due to standalone release
* doc/misc/cc-mode.texi.  Increment the mode to 5.35, twice.

* lisp/progmodes/cc-defs.el.  Increment the mode to "5.35.1".
2020-12-31 20:32:14 +00:00
Stefan Kangas
326fdb9ec0 Remove many items obsolete since Emacs 23.2 and 23.3
* lisp/allout.el (allout-init):
* lisp/emacs-lisp/shadow.el (shadows-compare-text-p):
* lisp/ffap.el (ffap-version):
* lisp/filecache.el (file-cache-choose-completion):
* lisp/help.el (print-help-return-message):
* lisp/image-mode.el (image-mode-maybe):
* lisp/imenu.el (imenu-example--name-and-position):
* lisp/international/mule-cmds.el (princ-list):
* lisp/mail/rmail.el (rmail-highlight-face):
* lisp/minibuffer.el (read-file-name-predicate):
* lisp/mouse.el (mouse-choose-completion):
* lisp/progmodes/cc-cmds.el (c-forward-into-nomenclature):
* lisp/progmodes/xscheme.el
(advertised-xscheme-send-previous-expression):
* lisp/simple.el (completion-base-size)
(choose-completion-delete-max-match, exchange-dot-and-mark):
* lisp/subr.el (eval-next-after-load):
* lisp/term.el (term-dynamic-simple-complete):
Remove items, obsolete since Emacs 23.2 and 23.3.
* doc/misc/cc-mode.texi (Movement Commands): Doc fix.
* doc/lispref/help.texi (Accessing Documentation):
* lisp/emacs-lisp/edebug.el (edebug-wrap-def-body):
* lisp/comint.el (comint-dynamic-list-completions):
* lisp/progmodes/idlwave.el (idlwave-make-modified-completion-map-xemacs)
(idlwave-make-modified-completion-map-emacs)
(idlwave-choose-completion):
* lisp/progmodes/vhdl-mode.el:
* lisp/term.el (term-dynamic-list-completions):
Remove references to 'mouse-choose-completion'.
* lisp/image-mode.el (image-mode-to-text):
Remove reference to 'image-mode-maybe'.
* lisp/mail/rmail.el (rmail-highlight-headers):
Use 'rmail-highlight' face instead of 'rmail-highlight-face'.
* lisp/progmodes/antlr-mode.el (antlr-mode-map, antlr-mode-menu):
Remove reference to 'c-forward-into-nomenclature'.
* lisp/simple.el (choose-completion, choose-completion-string)
(completion-list-mode, completion-setup-function): Don't use
'completion-base-size'.
; * etc/NEWS: List removed items.

This was discussed in
https://lists.gnu.org/archive/html/emacs-devel/2020-08/msg00400.html
2020-08-24 04:09:47 +02:00
Alan Mackenzie
1b6bd97440 Bug #41061 patch: Fix typos and amend code slightly
* lisp/progmodes/cc-align.el (c-lineup-ternary-bodies)
* doc/misc/cc-mode.texi (Operator Line-Up): Fix typos and amend code.
2020-06-01 15:21:54 +00:00
Michal Nazarewicz
fab2332851 cc-mode: add ‘c-lineup-ternary-bodies’ (bug#41061)
Introduce ‘c-lineup-ternary-bodies’ function which, when used as
a c lineup function, aligns question mark and colon of a ternary
operator.  For example:

    return arg % 2 == 0 ? arg / 2
                        : (3 * arg + 1);

* lisp/progmodes/cc-align.el (c-lineup-ternary-bodies): New function.
* doc/misc/cc-mode.texi (Operator Line-Up Functions): Document the
new function.
* test/lisp/progmodes/cc-mode-tests.el (c-lineup-ternary-bodies): New
test case.
2020-05-09 11:30:32 +01:00
Michal Nazarewicz
22bff6e87b cc-mode: document Doxygen ‘c-doc-comment-style’ (bug#40877)
* doc/misc/cc-mode.texi (Documentation Comments): mention Doxygen markup.
2020-05-03 16:14:14 +01:00
Alan Mackenzie
35a13fca32 CC Mode: allow specified directives (e.g. pragma) to be indented as statements
* lisp/progmodes/cc-cmds.el (c-align-cpp-indent-to-body)
(c-cpp-indent-to-body-flag, c-electric-pragma)
(c-add-indent-to-body-to-abbrev-table, c-clear-stale-indent-to-body-abbrevs)
(c-toggle-cpp-indent-to-body): New functions and variables.

* lisp/progmodes/cc-langs.el (c-std-abbrev-keywords): New lang const/var.

* lisp/progmodes/cc-mode.el (c-populate-abbrev-table): New function.
(c-basic-common-init): call the c-populate-abbrev-table.
(c-mode, c++-mode, objc-mode, java-mode, idl-mode, pike-mode, awk-mode):
Remove the setting of MODE-abbrev-table.

* lisp/progmodes/cc-vars.el (c-cpp-indent-to-body-directives): New defcustom.

* doc/misc/cc-mode.texi (Custom Macros): Introduce and refer to ....
(Indenting Directives): New page documenting the new mechanism.
2020-03-08 16:21:15 +00:00
Alan Mackenzie
066aad7b9d Finish the documentation for c-noise-macro-{,with-parens-}names.
The doc strings and pertinent CC Mode manual page failed to mention that these
variables could also be regular expressions.  Amend them.

* lisp/progmodes/cc-vars.el (c-noise-macro-names)
(c-noise-macro-with-parens-names): Amend the doc strings.

* doc/misc/cc-mode.texi (Noise Macros): Amend the descriptions of the two
variables.
2020-01-27 18:10:34 +00:00
Paul Eggert
365e01cc9f Update copyright year to 2020
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2020-01-01 00:59:52 +00:00
Alan Mackenzie
b293aa91bc CC Mode. Allow fontification of "wrong" style comments with warning face.
This fixes bug #4192.

* etc/NEWS: Add a new entry.

* lisp/progmodes/cc-defs.el (c-font-lock-flush): New macro.

* lisp/progmodes/cc-cmds.el (c-toggle-comment-style): On toggling the comment
style, invoke c-font-lock-flush when c-mark-wrong-style-of-comment is non-nil,
to cause that marking to be done instead on the other style of comment.

* lisp/progmodes/cc-fonts.el (c-maybe-font-lock-wrong-style-comments): New
function.
(c-cpp-matchers): Call c-maybe-font-lock-wrong-style-comments when
appropriate.

* lisp/progmodes/cc-vars.el (c-mark-wrong-style-of-comment): New customizable
option.

* doc/misc/cc-mode.texi (top level, Indentation Commands, Guessing the Style,
Custom Macros): For some opening quote marks, correct '' to ``.
(Minor Modes): Add an xref to the new page "Wrong Comment Style" in a
footnote.
(Wrong Comment Style): New page.
2019-11-09 12:09:30 +00:00
Paul Eggert
946a56a10f Update some URLs
This mostly changes http: to https: in URLs.  It also updates
some URLs that have moved, removes some URLs that no longer
work, recommends against using procmail (procmail.org no
longer works), and removes some mentions of the
no-longer-existing Gmane, LPF and VTW.
It doesn't update all URLs, just the ones I had time for.
* GNUmakefile (help):
* admin/admin.el (manual-doctype-string):
* admin/charsets/Makefile.in (${charsetdir}/ALTERNATIVNYJ.map):
* admin/charsets/mapconv:
* lisp/net/soap-client.el (soap-create-envelope):
* lisp/org/org.el (org-doi-server-url):
* lisp/textmodes/bibtex.el (bibtex-generate-url-list):
Prefer https: to http: un URLs.
2019-09-23 00:12:52 -07:00
Alan Mackenzie
598d167f40 Update CC Mode's version number to 5.34
* doc/misc/cc-mode.texi (top level, "Introduction"),
lisp/progmodes/cc-defs.el (c-version): Update version number to 5.34.
2019-06-19 19:15:26 +00:00
Alan Mackenzie
30b0c5bf42 Change default offset of CC Mode syntactic symbol inlambda to 0
It's previous default was c-lineup-inexpr-block.  This change is mainly to
prevent excessive indentation of the innards of C++ lambda functions.

* lisp/progmodes/cc-vars.el (c-offsets-alist): Amend the offset for inlambda
to 0.

* doc/misc/cc-mode.texi (FAQ): Amend the answer to the question about this
matter.
2019-06-02 14:05:33 +00:00
Glenn Morris
17a1dae4af Merge from origin/emacs-26
2168165 ; * doc/lispref/nonascii.texi (Explicit Encoding): Fix typo.
8f18d12 Improve documentation of decoding into a unibyte buffer
7681a57 Remove redundants "See" before @xref or @pxref (Bug#35793)
9bee762 ; * src/coding.c: Improve commentary.  (Bug#34765)
e61349c Fix customization type of recentf-max-saved-items

# Conflicts:
#	src/coding.c
2019-06-01 12:04:41 -07:00
Mauro Aranda
7681a57b88 Remove redundants "See" before @xref or @pxref (Bug#35793)
* doc/lispref/control.texi (Control Structures):
* doc/lispref/modes.texi (Search-based Fontification):
* doc/misc/cc-mode.texi (Filling and Line Breaking Commands)
(Auto-newline Insertion, Other Special Indentations):
* doc/misc/dbus.texi (Errors and Events):
* doc/misc/dired-x.texi (Find File At Point):
* doc/misc/eudc.texi (Display of Query Results, Inline Query Expansion):
* doc/misc/gnus-faq.texi (FAQ 3-11):
* doc/misc/gnus.texi (Group Parameters, Posting Styles)
(Spam Package Introduction):
* doc/misc/org.texi (LaTeX fragments, Previewing LaTeX fragments):
* doc/misc/reftex.texi (Commands):
Remove redundant "See" before cross references.
* doc/lispref/functions.texi (Function Safety): Redundant "see" is in
ignored text, but remove it anyway.
* doc/lispref/positions.texi (Skipping Characters): Remove redundant
"See" before cross references.  Change @xref to @pxref, which is
more suitable when at the end of a sentence.

Most of the redundants "See" found by Noam Postavsky.
2019-05-25 13:02:05 -04:00
Alan Mackenzie
a85befa4aa Fix Pike Mode's autodoc doc comments style's continued lines.
* lisp/progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Recognize
matches of c-doc-line-join-re as syntactic whitespace.
(c-find-decl-prefix-search): Recognize and move over matches of
c-doc-line-join-re as whitespace.
(c-find-decl-spots): Before moving backward a char, check (bobp).  Before
moving forward over a comment, check it isn't possibly a "bright" comment.

* lisp/progmodes/cc-fonts.el (c-get-doc-comment-style): New function,
extracted from c-compose-keywords-list.
(c-compose-keywords-list): Call the above new function.
(pike-font-lock-keywords, pike-font-lock-keywords-2)
(pike-font-lock-keywords-3): Call c-set-doc-comment-res.
(c-doc-line-join-re, c-doc-bright-comment-start-re, c-doc-line-join-end-ch):
New variables.
(c-set-doc-comment-re-element, c-set-doc-comment-char-list): New macros.
(c-set-doc-comment-res): New function.
(c-font-lock-doc-comments): For consistency and repeatability, in a sequence
of C++ style doc comments, don't fontify the region between BOL and the
comment marker.
(autodoc-line-join-re, autodoc-bright-comment-start-re)
(autodoc-line-join-end-ch): New variables.

* lisp/progmodes/cc-mode.el (c-doc-fl-decl-start, c-doc-fl-decl-end): New
functions.
(c-change-expand-fl-region, c-context-expand-fl-region): Call the above two
new functions for extra possibilities for the start and end of a construct.

* doc/misc/cc-mode.texi (Doc Comments): Add a sentence drawing attention to
the possibility of fontifying constructs within a doc comment.
2019-04-20 11:30:55 +00:00
Glenn Morris
1fc6afbdf1 Merge from origin/emacs-26
24b6e6e (origin/emacs-26) * etc/AUTHORS: Update.
2f22a17 * ; ChangeLog.3 update
0f523de Improve indexing of the user manual
bd5795e Fix url-copy-file arglist
eaa188a ; * admin/notes/bugtracker: Minor additions and updates.
5ed05fb Fix downloading updates for packages with non-ASCII descriptions
e9f2d1f * etc/NEWS: Remove temporary markers.
24fc133 * doc/misc/cc-mode.texi (Config Basics): in @itemize, @asis -...
0f325d1 Don't clobber 'comint-input-autoexpand' in 'read-shell-command'
bc75589 Document restrictions when setting window margins, fringes or...
cc4cebf More improvements for 'read-buffer's doc string
d026d9a * lisp/progmodes/cc-defs.el: Update c-version to 5.33.2 for E...
5dbf08b * src/minibuf.c (Fread_buffer): Minor doc fixes.  (Bug#34749)

# Conflicts:
#	etc/NEWS
#	lisp/url/url-handlers.el
2019-03-20 13:47:07 -07:00
Alan Mackenzie
24fc1337c1 * doc/misc/cc-mode.texi (Config Basics): in @itemize, @asis -> @w{} 2019-03-15 11:43:11 +00:00
Alan Mackenzie
aa1a4cceca Correct the indentation of CC Mode brace lists
while preserving the indentation of nested C++ uniform initialization.

* lisp/progmodes/cc-align.el (c-lineup-2nd-brace-entry-in-arglist)
(c-lineup-class-decl-init-+, c-lineup-class-decl-init-after-brace): New
indentation functions.

* lisp/progmodes/cc-engine.el (c-forward-class-decl): New function.
(c-do-declarators): New function, partially extracted from
c-font-lock-declarators, which now calls the new function.
(c-inside-bracelist-p): Amend the introductory comment.
(c-add-stmt-syntax): Add code to prevent the spurious recognition of a
'defun-block-intro when a brace pair is used as an initializer.
(c-evaluate-offset): No longer ignore vectors of length >= 2.
(c-calc-offset): Refactor clumsily nested `if'/`or' into a cond form.

* lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Replace the bulk of
this function by a call to the new c-forward-class-decl.

* lisp/progmodes/cc-langs.el (c-type-decl-prefix-key): Recognize "~" as a
type decl operator.

* lisp/progmodes/cc-mode.el (c-fl-decl-start): While searching backward for a
"}" at an EOD, deal with actually finding the end of a brace list.

* doc/misc/cc-mode.texi (List Line-Up): document
c-lineup-2nd-brace-entry-in-arglist, c-lineup-class-decl-init-+, and
c-lineup-class-decl-init-after-brace.

* lisp/progmodes/cc-styles.el (c-style-alist): In styles "gnu", "bsd",
"stroustrup", "python", and "java", change the offset for brace-list-intro
from the default value or c-lineup-arglist-intro-after-paren to a list
beginning with the symbol first, followed by two of the new alignment
functions, followed by +.

* lisp/progmodes/cc-vars.el (c-offset-alist): Change the default value of
brace-list-entry from c-lineup-under-anchor back to 0.
2019-03-12 18:33:31 +00:00
Alan Mackenzie
a38da0d4e5 cc-mode.texi: Work around makeinfo alignment bug. Fix problem with ss index
* doc/misc/cc-mode.texi (top level): Using txicommandconditionals to
differentiate between the C and perl versions of Texinfo, create an "ss
index" unless we are both using the C Texinfo and are building the .dvi output
format.
(Config Basics): Work around a perl Texinfo alignment bug by writing a
separate version of an item list structure for this version, simplifying it
considerably.
2019-03-08 18:11:21 +00:00
Basil L. Contovounesios
099ef446c2
Minor spelling and grammar fixes (bug#34756)
doc/misc/cc-mode.texi (Style Variables, Customizing Indentation):
doc/misc/ede.texi (Extending EDE, ede-project-placeholder)
(ede-target, ede-proj-target, ede-compilation-program, ede-compiler)
(ede-linker): Remove apostrophe from possessive "it's".
doc/lispintro/emacs-lisp-intro.texi (Find a File):
doc/misc/gnus-faq.texi (FAQ 2-2): Write "an other" as a single word.
doc/misc/gnus.texi (Article Buttons):
lisp/gnus/gnus-art.el (gnus-button-mid-or-mail-heuristic-alist)
(gnus-button-mid-or-mail-heuristic): Write singular number of
Message-IDs, rather than plural.
lisp/gnus/message.el (message-user-fqdn): Capitalize initialism.
2019-03-05 20:24:41 +00:00
Paul Eggert
2fcf2dff00 Fix copyright years by hand
These are dates that admin/update-copyright did not update, or
updated incorrectly.
2019-01-01 01:02:40 +00:00
Paul Eggert
f2caf08ca6 ; Spelling fixes 2018-03-04 17:10:34 -08:00
Michael Albinus
9743f48de7 Mark keys consistently in manuals
* doc/emacs/killing.texi:
* doc/lispintro/emacs-lisp-intro.texi:
* doc/misc/calc.texi:
* doc/misc/cc-mode.texi:
* doc/misc/dired-x.texi:
* doc/misc/ede.texi:
* doc/misc/edt.texi:
* doc/misc/efaq.texi:
* doc/misc/erc.texi:
* doc/misc/eshell.texi:
* doc/misc/gnus-faq.texi:
* doc/misc/gnus-news.texi:
* doc/misc/idlwave.texi:
* doc/misc/ido.texi:
* doc/misc/mairix-el.texi:
* doc/misc/message.texi:
* doc/misc/mh-e.texi:
* doc/misc/newsticker.texi:
* doc/misc/org.texi:
* doc/misc/pcl-cvs.texi:
* doc/misc/ses.texi:
* doc/misc/sieve.texi:
* doc/misc/smtpmail.texi:
* doc/misc/speedbar.texi:
* doc/misc/srecode.texi:
* doc/misc/vhdl-mode.texi:
* doc/misc/vip.texi:
* doc/misc/viper.texi: Mark keys consistently.
2018-02-26 13:53:37 +01:00
Michael Albinus
ce557a924a Remove @key{} markups from @kindex entries in manuals
* doc/emacs/basic.texi:
* doc/emacs/buffers.texi:
* doc/emacs/building.texi:
* doc/emacs/calendar.texi:
* doc/emacs/custom.texi:
* doc/emacs/dired.texi:
* doc/emacs/display.texi:
* doc/emacs/files.texi:
* doc/emacs/frames.texi:
* doc/emacs/help.texi:
* doc/emacs/indent.texi:
* doc/emacs/killing.texi:
* doc/emacs/kmacro.texi:
* doc/emacs/mark.texi:
* doc/emacs/mini.texi:
* doc/emacs/misc.texi:
* doc/emacs/modes.texi:
* doc/emacs/msdos-xtra.texi:
* doc/emacs/msdos.texi:
* doc/emacs/mule.texi:
* doc/emacs/picture-xtra.texi:
* doc/emacs/programs.texi:
* doc/emacs/regs.texi:
* doc/emacs/rmail.texi:
* doc/emacs/screen.texi:
* doc/emacs/search.texi:
* doc/emacs/sending.texi:
* doc/emacs/text.texi:
* doc/emacs/trouble.texi:
* doc/misc/calc.texi:
* doc/misc/cc-mode.texi:
* doc/misc/ediff.texi:
* doc/misc/ert.texi:
* doc/misc/eww.texi:
* doc/misc/forms.texi:
* doc/misc/gnus.texi:
* doc/misc/idlwave.texi:
* doc/misc/info.texi:
* doc/misc/message.texi:
* doc/misc/mh-e.texi:
* doc/misc/newsticker.texi:
* doc/misc/org.texi:
* doc/misc/pcl-cvs.texi:
* doc/misc/rcirc.texi:
* doc/misc/reftex.texi:
* doc/misc/sc.texi:
* doc/misc/sieve.texi:
* doc/misc/vhdl-mode.texi:
* doc/misc/vip.texi:
* doc/misc/viper.texi:
* doc/misc/woman.texi: Remove @key{} markups from @kindex entries.
2018-02-26 09:24:39 +01:00
Michael Albinus
7a069f35d4 Fix @kindex entries in manuals
* doc/emacs/basic.texi:
* doc/emacs/buffers.texi:
* doc/emacs/building.texi:
* doc/emacs/calendar.texi:
* doc/emacs/custom.texi:
* doc/emacs/dired.texi:
* doc/emacs/display.texi:
* doc/emacs/files.texi:
* doc/emacs/frames.texi:
* doc/emacs/help.texi:
* doc/emacs/indent.texi:
* doc/emacs/killing.texi:
* doc/emacs/kmacro.texi:
* doc/emacs/mark.texi:
* doc/emacs/mini.texi:
* doc/emacs/misc.texi:
* doc/emacs/modes.texi:
* doc/emacs/msdos-xtra.texi:
* doc/emacs/msdos.texi:
* doc/emacs/mule.texi:
* doc/emacs/picture-xtra.texi:
* doc/emacs/programs.texi:
* doc/emacs/regs.texi:
* doc/emacs/rmail.texi:
* doc/emacs/screen.texi:
* doc/emacs/search.texi:
* doc/emacs/sending.texi:
* doc/emacs/text.texi:
* doc/emacs/trouble.texi:
* doc/lispref/files.texi:
* doc/misc/calc.texi:
* doc/misc/cc-mode.texi:
* doc/misc/ediff.texi:
* doc/misc/epa.texi:
* doc/misc/ert.texi:
* doc/misc/eww.texi:
* doc/misc/forms.texi:
* doc/misc/gnus.texi:
* doc/misc/info.texi:
* doc/misc/mairix-el.texi:
* doc/misc/message.texi:
* doc/misc/mh-e.texi:
* doc/misc/newsticker.texi:
* doc/misc/org.texi:
* doc/misc/pcl-cvs.texi:
* doc/misc/rcirc.texi:
* doc/misc/sc.texi:
* doc/misc/sieve.texi:
* doc/misc/vhdl-mode.texi:
* doc/misc/vip.texi:
* doc/misc/viper.texi:
* doc/misc/woman.texi: Fix @kindex entries.  Mark keys consistently.
2018-02-25 16:29:39 +01:00
Michael Albinus
621893352f Fix @cindex entries in manuals
* doc/emacs/custom.texi:
* doc/emacs/dired.texi:
* doc/emacs/display.texi:
* doc/emacs/files.texi:
* doc/emacs/frames.texi:
* doc/emacs/killing.texi:
* doc/emacs/maintaining.texi:
* doc/emacs/misc.texi:
* doc/emacs/msdos-xtra.texi:
* doc/emacs/msdos.texi:
* doc/emacs/search.texi:
* doc/emacs/text.texi:
* doc/emacs/trouble.texi:
* doc/lispintro/emacs-lisp-intro.texi:
* doc/lispref/strings.texi:
* doc/lispref/text.texi:
* doc/misc/cc-mode.texi:
* doc/misc/efaq.texi:
* doc/misc/eieio.texi:
* doc/misc/emacs-mime.texi:
* doc/misc/gnus.texi:
* doc/misc/htmlfontify.texi:
* doc/misc/idlwave.texi:
* doc/misc/message.texi:
* doc/misc/mh-e.texi:
* doc/misc/sem-user.texi:
* doc/misc/ses.texi:
* doc/misc/tramp.texi:
* doc/misc/vhdl-mode.texi: Fix @cindex entries.
2018-02-24 20:52:21 +01:00
Glenn Morris
d806d69649 ; Use @minus for negative numbers in some texi files 2018-02-23 16:00:44 -05:00
Michael Albinus
2dc24d5536 Fix @findex and @vindex entries in manuals
* doc/emacs/building.texi:
* doc/emacs/calendar.texi:
* doc/emacs/cmdargs.texi:
* doc/emacs/mini.texi:
* doc/emacs/misc.texi:
* doc/emacs/trouble.texi:
* doc/emacs/windows.texi:
* doc/lispintro/emacs-lisp-intro.texi:
* doc/lispref/edebug.texi:
* doc/lispref/frames.texi:
* doc/lispref/os.texi:
* doc/lispref/windows.texi:
* doc/misc/cc-mode.texi:
* doc/misc/dired-x.texi:
* doc/misc/ediff.texi:
* doc/misc/mh-e.texi:
* doc/misc/pcl-cvs.texi:
* doc/misc/reftex.texi:
* doc/misc/sc.texi:
* doc/misc/vhdl-mode.texi:
* doc/misc/viper.texi: Fix @findex and @vindex entries.
2018-02-23 15:30:19 +01:00
Glenn Morris
35e5c57db3 ; Fix doc typos related to indefinite articles 2018-02-16 14:11:51 -05:00
Alan Mackenzie
4b5711b2b2 Fix @examples in cc-mode.info, where lines were getting glued together.
This happened because of false @c's in macro lines.

* /doc/misc/cc-mode.texi (Line-up Functions): Remove the unneeded @c from
macros sssTBasicOffset, sssTsssTBasicOffset, and hereFn.
2018-01-30 18:09:49 +00:00
Paul Eggert
63b04c11d5 Fix copyright years by hand
These are dates that admin/update-copyright did not update, or
updated incorrectly.
2018-01-01 01:02:09 -08:00
Charles A. Roelli
00fa4449cd ; Fix typo
* doc/misc/cc-mode.texi (Other Commands): Fix typo.
2017-11-05 10:18:00 +01:00
Alan Mackenzie
a0d30d6369 Introduce a function to CC Mode which displays the current function name
Remove an erroneous interactive specification from two functions.

* lisp/progmodes/cc-cmds.el (c-display-defun-name): New command.
(c-defun-name, c-cpp-define-name): Remove interactive specification.

* lisp/progmodes/cc-mode.el (c-mode-base-map): Add binding C-c C-z for the new
command.

* doc/misc/cc-mode.texi (Other Commands): Add documentation for the new
command.
2017-11-03 19:45:17 +00:00
Paul Eggert
bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
Alan Mackenzie
7a2038d7c8 Create a toggle between block and line comments in CC Mode.
Also (unrelated change) initialize the modes' keymaps at each loading.

* lisp/progmodes/cc-cmds.el (c-update-modeline): amend for the new information
on the modeline.
(c-block-comment-flag): New variable.
(c-toggle-comment-style): New function.

* lisp/progmodes/cc-langs.el (c-block-comment-starter)
(c-line-comment-starter): Make them c-lang-defvars.
(c-block-comment-is-default): New c-lang-defvar.
(comment-start, comment-end): Make the default values dependent on
c-block-comment-is-default.

* lisp/progmodes/cc-mode.el (c-mode-base-map): Define C-c C-k in this map.
(c-basic-common-init): Initialize c-block-comment-flag.
(c-mode-map, c++-mode-map, objc-mode-map, java-mode-map, idl-mode-map)
(pike-mode-map, awk-mode-map): Make entries in these key maps each time the
mode is loaded rather than just once per Emacs session.

* doc/misc/cc-mode.texi (Comment Commands): Introduce the notion of comment
style.
(Minor Modes): Define comment style.  Describe how comment style influences
the information displayed on the modeline.  Document c-toggle-comment-style.
(FAQ): Add a question about toggling the comment style.
2017-06-15 21:03:03 +00:00
Alan Mackenzie
ef7df187eb Fix C++ fontification problems 500 bytes after typing a space, and other bugs
Also implement the "asymmetric space" rule for fontifying otherwise
ambiguous
declarations/expressions.

* lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Don't set
c-new-BEG or c-new-END when there is no need.
(c-forward-decl-or-cast-1): Add "CASE 17.5" to implement the "asymmetric
space" rule.

* lisp/progmodes/cc-fonts.el (c-get-fontification-context): New function,
extracted from c-font-lock-declarations.  Add to this function processing to
make `context' 'decl for lines contained within parens when these are also
declarations.
(c-font-lock-declarations): Call the newly extracted function above in place
of inline code.

* lisp/progmodes/cc-mode.el (c-fl-decl-start): Set point before calling
c-literal-start.

* lisp/progmodes/cc-vars.el (c-asymmetry-fontification-flag): New user option.

* doc/misc/cc-mode.texi (Misc Font Locking): New node documenting the new
"asymmetric fontification" rule, including the variable
c-asymmetric-fontification-flag.
2017-03-30 20:24:39 +00:00
Alan Mackenzie
d602785139 Fix chaotic indentation of C++ lambda. Enhance documentation thereof
* lisp/progmodes/cc-engine.el (c-looking-at-inexpr-block): qualify an
invocation of c-on-identifier with a check we're not at the _end_ of an
identifier.

* doc/misc/cc-mode.texi: (Tex title page): Remove @subtitlefont because the
perl versions of texi2dvi haven't implemented it.
(Syntactic Symbols): Note that `inlambda' is also used in C++ Mode, not just
in Pike Mode.
(Statement Block Symbols): Add a section illustrating a C++ lambda function.
(FAQ): Add a question about "excessive" indentation of the contents of a C++
lambda function, and how to get rid of it.
2017-03-19 17:09:27 +00:00
Alan Mackenzie
94ad13b93c Allow C++ nested brace-list-entries to be better indented.
This fixes bug #24431.  The key change of this bug fix is correctly analyzing
nested brace lists when the opening element stands on the same line as both
its introductory brace and an enclosing parameter list parenthesis.

* list/progmodes/cc-align.el (c-lineup-under-anchor): New line-up function.

* list/progmodes/cc-engine.el (c-looking-at-or-maybe-in-bracelist): Accept the
presence of exactly an identifier between an open parenthesis and an open
brace as evidence of the brace starting a brace list.
(c-looking-at-statement-block): New function, extracted from
c-looking-at-inexpr-block.  Enhance it to analyze inner blocks recursively
when needed.
(c-looking-at-inexpr-block): Extract new function (see above) and call it.
(c-add-stmt-syntax): Enhance, with new &optional parameter, to supply the
prime syntactic symbol with a fixed anchor point.  When this is used, restrict
all added syntactic symbols to those having an anchor point on the same line.
Add, in addition to the current additional symbols, c-brace-list-entry when
needed; use c-looking-at-statement-block to determine the latter.
(c-guess-basic-syntax, CASE 9D): Use c-add-stmt-syntax rather than just
c-add-syntax, to assemble the syntactic context of a 'brace-list-entry, thus
getting, possibly, several accompanying syntactic entries.

* lisp/progmodes/cc-styles.el (c-style-alist, "gnu" style): New entry for
'brace-list-intro, namely c-lineup-arglist-intro-after-paren.

* lisp/progmodes/cc-vars.el (c-offsets-alist): Change the factory default
offset for 'brace-list-entry from 0 to c-lineup-under-anchor.

* doc/misc/cc-mode.texi (Syntactic Symbols): Amend the definition of
brace-list-intro.
(Brace List Symbols): Amend the example to show the new analysis of brace
lists when the first element comes on the same line as the opening brace.
(Misc Line-Up): Document the new line-up function c-lineup-under-anchor.
2017-02-01 20:20:09 +00:00
Paul Eggert
bcf244ef9b Merge from origin/emacs-25
2e2a806 Fix copyright years by hand
5badc81 Update copyright year to 2017
2017-01-01 01:10:47 -08:00
Paul Eggert
2e2a806803 Fix copyright years by hand
These are dates that admin/update-copyright did not update, or
updated incorrectly.
2017-01-01 04:01:41 +00:00
Paul Eggert
46b83c0f08 Merge from origin/emacs-25
4f406e9 CC Mode manual: remove reference to former Emacs variable las...
44e402e Allow to disable compaction of font caches
4ff4b66 Allow selection of font for symbols as in Emacs 24.x
c03d44b ; Fix last commit
d4be4f3 ; Fix indexing in lispref manual
ed399f2 ; Minor improvement in documentation of generators
197a6bc Fix horizontal scrolling during Isearch
3566644 Fix infloop in redisplay due to truncated lines and invisible...

# Conflicts:
#	etc/NEWS
2016-10-10 07:39:05 -07:00