* reftex-cite.el (reftex-extract-bib-entries): Fix
`wrong-type-argument stringp nil' error that occurs when AUCTeX
integration is enabled and there are no citations in the document
so far.
* lisp/vc/vc-git.el (vc-git-find-file-hook): Add
`vc-git-resolve-when-done' to `after-save-hook' in either case.
(vc-git-conflicted-files): Add a TODO.
(vc-git-resolve-when-done): Depending on the presence of
MERGE_HEAD, either update the resolved file in the index, or
remove it from there. (Bug#20292)
* lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer`
(basic-save-buffer): Accept called-interactively as an argument instead of
directly invoking called-interactively-p, which will always yield nil
in that context.
Fixes bug#20266.
lisp/progmodes/cc-mode.el (c-basic-common-init): Make
yank-handled-properties buffer local, and remove 'category from it.
(c-called-from-text-property-change-p): New function.
(c-before-change): Don't do anything if a call of the new function
returns non-nil.
(c-after-change): Don't do much if a call of the new function returns
non-nil.
(c-extend-after-change-region): Put changes to text property 'fontified
inside c-save-buffer-state.
(package-menu-filter): Accept a list of keywords.
(package--all-keywords): New variable to cache known keywords.
(package-all-keywords): Populate it if necessary.
(package-refresh-contents): Reset it.
(package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
as special keywords which match agains package archive and status
respectively.
* etc/NEWS: Document it.
* lisp/emacs-lisp/package.el (package--read-archive-file):
Set `coding-system-for-read' explicitly to 'utf-8 when reading the
downloaded and cached archive-contents files, so that non-ASCII
characters in package descriptions are displayed correctly in the
`list-packages' menu. (Bug#20231)
Co-authored-by: Steve Purcell <steve@sanityinc.com>
* src/print.c (PRINTDECLARE): Remove. Move its contents into
PRINTPREPARE; doable now that we assume C99. All callers changed.
(PRINTCHAR): Remove, as it adds more mystery than clarity.
All callers changed.
(strout): Assume that caller computes length. All callers changed.
(print_c_string): New function.
(write_string, write_string_1): Compute length instead of asking
the caller to compute it. All callers changed.
(write_string): Simplify by using write_string_1.
(write_string_1): Simplify by using print_c_string.
(Fterpri): Compute default val more clearly.
(Fprin1_to_string, print_object):
Assume C99 to avoid unnecessary nesting.
(print_object): Prefer print_c_string to multiple printchar, or
to calling strout with -1 length. Coalesce into sprintf when
this is easy.
Fixes: debbugs:20256
* lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
comment filling.
(css-adaptive-fill): New function.
(css-mode): Set `adaptive-fill-function'.
(scss-mode): Set `comment-continue'.
* lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
Replace U+042C with U+045D, as the former character is not used in
the modern Bulgarian language.
Fixes: Bug#20350
Copyright-paperwork-exempt: yes
* lisp/comint.el (comint-output-filter): Remove the uses of
with-silent-modifications I introduced as part of the last change.
This fixes, e.g., erratically missing highlighting when running
./configure --help; ./configure in a shell-mode buffer with
compilation-shell-minor-mode turned on.