Alan Mackenzie [Thu, 4 Feb 2016 19:01:50 +0000 (19:01 +0000)]
Correctly fontify C++ initializations which "look like" functions.
Fixes bug#7579.
lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
parameter to enable handling of "anonymous" declarators in declarations.
lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
whether a "(" opens a parameter list of a function, or an initialization of a
variable.
Dima Kogan [Thu, 4 Feb 2016 03:24:18 +0000 (14:24 +1100)]
Make erc work when subword-mode is switched on
* lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
(erc-bounds-of-word-at-point): New functions to do word-based
things when subword-mode is switched on.
* lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
(bug#17558).
Eli Zaretskii [Tue, 2 Feb 2016 18:01:33 +0000 (20:01 +0200)]
Fix file-name recognition in 'etags'
* lib-src/etags.c (get_language_from_filename): If FILE includes a
leading directory, compare only its basename to the known file
names in lang_names[].
* test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
renaming.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/ETAGS.good_6:
* test/etags/CTAGS.good: Adapt to changes in Ruby file names and
to the results in Makefile due to the above etags.c fix.
Eli Zaretskii [Tue, 2 Feb 2016 17:50:08 +0000 (19:50 +0200)]
Change Ruby file names and extensions recognized by 'etags'
* lib-src/etags.c <Ruby_filenames>: New variable, holds names
of Ruby files.
<Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
<lang_names>: Add Ruby_filenames to the Ruby entry.
* test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
(Bug#22241)
Eli Zaretskii [Tue, 2 Feb 2016 17:16:22 +0000 (19:16 +0200)]
More improvements for Ruby support in 'etags'
* lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
alias_method. Identify constants even if the assignment is not
followed by whitespace. (Bug#22241)
* test/etags/ruby-src/test1.ruby: Add tests for constants,
accessors, and alias_method.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/ETAGS.good_6:
* test/etags/CTAGS.good: Adapt to changes in Ruby tests.
* eww.el (eww-tag-form): Don't overwrite initial form data in text
fields.
(eww-process-text-input): Make `M-t' at the end of text fields work
better (bug#19085).
Make eww-browse-url with new-window parameter work again
* eww.el (eww-browse-url): Stay in the same buffer if we're
already in a eww mode buffer so that eww-browse-url with a
new-window parameter works (bug#22244).
* lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
identifiers on the form !foo.
(scss-bang-ids): New defconst holding SCSS identifiers on the form
!foo.
(css--font-lock-keywords): Highlight the new SCSS bang identifiers in
`font-lock-builtin-face'.
* test/indent/css-mode.css: Add bang rule test case.
* test/indent/scss-mode.css: Add test cases for the introduced bang
rules.
This is related to the autogen.sh changes made by Paul Eggert in
commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
to emacswiki.org/emacs/GitQuickStartForEmacsDevs. See also the thread
"Recommend these .gitconfig settings for git integrity." at
https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
Martin Rudalics [Mon, 1 Feb 2016 18:01:34 +0000 (19:01 +0100)]
Some corrections in Elisp manual
* doc/lispref/buffers.texi (Read Only Buffers): Describe optional
argument POSITION.
* doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
is an option.
* doc/lispref/display.texi (Refresh Screen): Describe optional
argument FRAME of `redraw-frame'.
(Attribute Functions): Describe optional argument CHARACTER of
`face-font'.
(Defining Images): `image-load-path' is an option.
(Beeping): `ring-bell-function' is an option.
* doc/lispref/frames.texi (Size and Position): The PIXELWISE
argument of `set-frame-size' is optional.
(Raising and Lowering): The TERMINAL argument of `tty-top-frame'
is optional.
* doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
`set-transient-map'.
* doc/lispref/minibuf.texi (Text from Minibuffer):
`read-regexp-defaults-function' is an option.
(Minibuffer Contents): `delete-minibuffer-contents' is a command.
* doc/lispref/modes.texi (Mode Line Variables):
`mode-line-position' and `mode-line-modes' are variables, not
options.
* doc/lispref/strings.texi (Creating Strings): The START argument
of `substring' is optional.
* doc/lispref/text.texi (Buffer Contents): Describe optional
argument NO-PROPERTIES of `thing-at-point'.
(User-Level Deletion): Both arguments of
`delete-trailing-whitespace' are optional.
(Margins): Use @key{RET} instead of @kbd{RET}.
* doc/lispref/windows.texi (Display Action Functions): Write
non-@code{nil} instead of non-nil.
(Choosing Window Options): The WINDOW arg of
`split-window-sensibly' is optional.
(Choosing Window Options): Write non-@code{nil} instead of
non-nil.
(Window Start and End): Both args of `window-group-end' are
optional.
* src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
to POSITION to keep consisteny with doc-string.
Paul Eggert [Mon, 1 Feb 2016 01:31:23 +0000 (17:31 -0800)]
Omit unnecessary history from Lisp intro
* doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
(Conclusion): Reword so as not to talk about earlier versions
of Emacs in what should be an intro.
Paul Eggert [Sun, 31 Jan 2016 21:43:13 +0000 (13:43 -0800)]
autogen.sh now arranges for git to check hashes
Suggested by Karl Fogel in:
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
* autogen.sh: Do "git config transfer.fsckObjects true".
Paul Eggert [Sun, 31 Jan 2016 18:38:41 +0000 (10:38 -0800)]
Fix (c & 040) typo in emergency escapes
* src/keyboard.c (handle_interrupt): Fix recently-introduced
typo (040 should have been ~040) that silently suppressed
auto-saves after emergency escapes. Redo comparison to avoid
similar problems.
Paul Eggert [Sun, 31 Jan 2016 02:38:51 +0000 (18:38 -0800)]
Pacify GCC on C library without glibc API
Without this change, with --enable-gcc-warnings GCC would complain
“error: redundant redeclaration of ‘aligned_alloc’”.
* configure.ac: Simplify aligned_alloc testing.
* src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
since the simplified configure.ac no longer checks for that.
Don’t declare if HAVE_ALIGNED_ALLOC.
Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
Eli Zaretskii [Sat, 30 Jan 2016 15:27:45 +0000 (17:27 +0200)]
Fix typos in Introduction to Emacs Lisp manual
* doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
(kill-new function, Digression into C)
(Complete forward-sentence, Divide and Conquer, Find a File)
(lengths-list-many-files, Columns of a graph, defcustom)
(recursive-count-words): Fix typos. Reported by Daniel Bastos
<dbastos@toledo.com>.
lu4nx [Sat, 30 Jan 2016 12:56:43 +0000 (14:56 +0200)]
Support Go language in 'etags'
* lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
<Go_help>: New help.
<Go_suffixes>: New variable.
(Go_functions): New function.
<lang_names>: Add entry for Go. (Bug#22370)
* doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
* doc/man/etags.1: Mention Go support.
* etc/NEWS: Mention Go support.
* test/etags/go-src/test.go:
* test/etags/go-src/test1.go: New test files.
* test/etags/Makefile (GOSRC): New variable.
(SRCS): Add $(GOSRC).
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/ETAGS.good_6:
* test/etags/CTAGS.good: Adapt to addition of Go tests.
Eli Zaretskii [Sat, 30 Jan 2016 12:16:36 +0000 (14:16 +0200)]
Improve Ruby support in 'etags'
* lib-src/etags.c (Ruby_functions): Tag constants. Don't tag
singleton classes. Remove class qualifiers from tags generated
for method and constant names. (Bug#22241)
* doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
are tagged by etags in Ruby.
* etc/NEWS: Mention that constants are tagged by etags in Ruby.
* test/etags/ruby-src/test1.ruby: Add more tests.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/ETAGS.good_6:
* test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
tests.
Eli Zaretskii [Sat, 30 Jan 2016 10:18:43 +0000 (12:18 +0200)]
Adjust etags test results to changes in copyright years
* test/etags/CTAGS.good:
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/ETAGS.good_6: Adjust to shift in characters and
in line numbers.
Eli Zaretskii [Sat, 30 Jan 2016 08:04:13 +0000 (10:04 +0200)]
Document xwidget commands and functions
* doc/lispref/display.texi (Xwidgets): New section, describes some
of the xwidget primitives.
* doc/lispref/display.texi (Display): Update the chapter menu.
* doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
* doc/emacs/emacs.texi (Top): Update the master menu to include
the xwidget node.
Dmitry Gutov [Sat, 30 Jan 2016 04:21:31 +0000 (07:21 +0300)]
Improve project-find-file yet again!
* lisp/progmodes/project.el (project--completing-read-strict):
New function.
(project-find-file-in): Use it.
(project-file-completion-table): Move the default
implementation inside the cl-defgeneric form.
(http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
Stephen Leake [Fri, 29 Jan 2016 23:43:26 +0000 (17:43 -0600)]
Improve project-find-file
* lisp/progmodes/project.el (project-file-completion-table): New.
(project-find-file, project-or-external-find-file): Default to filename
at point.
(project-file-completion-table): New, split out from
project--find-file-in.
(project-find-file-in): Renamed from project--find-file-in, use
project-file-completion-table.
* lisp/progmodes/xref.el (ede-minor-mode): New declaration.
(xref--find-ignores-arguments): Add doc string.