]> git.eshelyaron.com Git - emacs.git/log
emacs.git
9 years ago* lisp/emacs-lisp/tabulated-list.el: Improve printing
Artur Malabarba [Sun, 24 May 2015 21:57:24 +0000 (22:57 +0100)]
* lisp/emacs-lisp/tabulated-list.el: Improve printing

(tabulated-list--get-sorter): New function.
(tabulated-list-print): Restore window-line when remember-pos is
passed and optimize away the `nreverse'.

9 years agoSimpilify etags TEX mode scanning
Paul Eggert [Sun, 24 May 2015 21:20:10 +0000 (14:20 -0700)]
Simpilify etags TEX mode scanning

* lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
Remove static vars.
(TeX_commands): Deduce escapes here instead.
(TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
This removes the need for a reset_input call.

9 years agoImprove etags I/O error reporting
Paul Eggert [Sun, 24 May 2015 21:20:09 +0000 (14:20 -0700)]
Improve etags I/O error reporting

* lib-src/etags.c:
Don't include sys/types.h and sys/stat.h; no longer needed.
(infilename): New static var.
(process_file_name): Don't call 'stat'.  Instead, just open the
file for reading and report any errors.  Don't bother making
a copy of the file argument; it's not needed.  Be more careful to
use the failing errno when reporting an error.
Quote the real name better (though no perfectly)
when passing it to the shell.
(reset_input): New function, which reports I/O errors.
All uses of 'rewind' changed to use this function.
(perhaps_more_input): New function, which also checks for
I/O errors.  All uses of 'feof' changed to use this function.
(analyze_regex): Report an error if fclose fails.
(readline_internal): Report an error if getc fails.
(etags_mktmp): Return an error if close fails.

9 years agoetags.c: avoid side effects in 'if'
Paul Eggert [Sun, 24 May 2015 21:20:09 +0000 (14:20 -0700)]
etags.c: avoid side effects in 'if'

* lib-src/etags.c (process_file_name, Perl_functions)
(TEX_decode_env): Hoist side effects into previous statement.

9 years ago.gitignore tweaks
Paul Eggert [Sun, 24 May 2015 15:04:03 +0000 (08:04 -0700)]
.gitignore tweaks

* .gitignore: Ignore all *.stamp files.  Sort.
Ignore [0-9]*.txt (commonly used name for git patches)
and /vc-dwim-log-* (vc-dwim temporary).

9 years ago; Auto-commit of ChangeLog files.
Glenn Morris [Sun, 24 May 2015 10:25:35 +0000 (06:25 -0400)]
; Auto-commit of ChangeLog files.

9 years agoFix last change in etags.c, which failed the test suite
Eli Zaretskii [Sun, 24 May 2015 07:19:36 +0000 (10:19 +0300)]
Fix last change in etags.c, which failed the test suite

* lib-src/etags.c (intoken): Add '$' to the set, as it was there
before the last change.

9 years agoRemove charset map files from repository, generate in first bootstrap
Glenn Morris [Sat, 23 May 2015 23:38:13 +0000 (16:38 -0700)]
Remove charset map files from repository, generate in first bootstrap

* admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
(all): Create the stamp file.
(extraclean): Delete the stamp file.
* src/Makefile.in (lispintdir, charsets): New variables.
(${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
New rules.
(emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
* lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
* etc/charsets/*.map: Remove from repository.
; * admin/charsets/mapconv: Fix typo in output comment.
; * etc/charsets/README: Small update.
; * .gitignore: Update for charset changes.

9 years agoCleanup etags.c to use locale-independent code
Paul Eggert [Sat, 23 May 2015 22:18:12 +0000 (15:18 -0700)]
Cleanup etags.c to use locale-independent code

Although this doesn't alter behavior (as etags doesn't use
setlocale), the new version is more clearly locale-independent and
the executable is a bit smaller on my platform.
* lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
Include <c-ctype.h> instead of <ctype.h>.
(CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
(begtk, midtk):
Remove; no longer needed.
(iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
c_islower, c_tolower, respectively.
(notinname, begtoken, intoken, endtoken): Rewrite as functions
instead of macros, and initialize the tables at compile-time
rather than at run-time.

9 years agoPut default action first in src/Makefile
Paul Eggert [Sat, 23 May 2015 22:07:17 +0000 (15:07 -0700)]
Put default action first in src/Makefile

* src/Makefile.in (all): Put this rule before lisp.mk.
That way, plain 'make' works in the src directory again.

9 years ago* Makefile.in: Fix extraclean rule.
Glenn Morris [Sat, 23 May 2015 22:05:02 +0000 (15:05 -0700)]
* Makefile.in: Fix extraclean rule.

(extraclean_dirs): New.
(extraclean): Use it.

9 years agoAvoid compiler warning in image.c on MS-Windows
Eli Zaretskii [Sat, 23 May 2015 19:19:08 +0000 (22:19 +0300)]
Avoid compiler warning in image.c on MS-Windows

* src/w32term.h (x_query_color): Add prototype, to avoid compiler
warning in image.c.

9 years agoFix --without-toolkit-scroll-bars builds.
Glenn Morris [Sat, 23 May 2015 18:25:20 +0000 (11:25 -0700)]
Fix --without-toolkit-scroll-bars builds.

* src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
Add new argument to x_clear_area1.
(XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
Update x_clear_area arguments.

9 years ago* admin/charsets/glibc/: New directory, imported from glibc 2.21.
Glenn Morris [Sat, 23 May 2015 18:07:40 +0000 (11:07 -0700)]
* admin/charsets/glibc/: New directory, imported from glibc 2.21.

* admin/charsets/Makefile.in (GLIBC_CHARMAPS):
Change to included version.
(LOCAL, local, totalclean): Remove.
(extraclean): Delete all generated files.

9 years ago* lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
Stefan Monnier [Sat, 23 May 2015 16:06:23 +0000 (12:06 -0400)]
* lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.

9 years ago* lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
Stefan Monnier [Sat, 23 May 2015 16:05:47 +0000 (12:05 -0400)]
* lisp/progmodes/xref.el (xref-find-apropos): Use read-string.

9 years agotags-completion-at-point-function: Don't trust the find-tag function
Stefan Monnier [Sat, 23 May 2015 16:05:21 +0000 (12:05 -0400)]
tags-completion-at-point-function: Don't trust the find-tag function

* lisp/progmodes/etags.el (tags-completion-at-point-function):
Don't trust the find-tag function.

9 years agoPacify --enable-gcc-warnings
Paul Eggert [Sat, 23 May 2015 16:01:40 +0000 (09:01 -0700)]
Pacify --enable-gcc-warnings

* src/frame.h (x_query_color): Remove redundant extern decl.
* src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
(ftcrfont_match, ftcrfont_open, ftcrfont_close)
(ftcrfont_text_extents, ftcrfont_draw):
* src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
(XTframe_up_to_date, x_clear_area1, x_clear_frame)
(x_ins_del_lines, frame_highlight, frame_unhighlight)
(x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
(x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
(x_update_window_begin, x_connection_closed)
(x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
(x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
(*x_gc_get_ext_data, x_extension_initialize)
(x_cr_accumulate_data):
Remove redundant static decl.  Many of these GCC doesn't complain
about, but we might as well clean out the duplication while we're
in the neighborhood.
* src/xterm.c (x_fill_trapezoid_for_relief):
Remove decl of nonexistent function.

9 years ago; Omit entries that will appear in ChangeLog.2
Paul Eggert [Sat, 23 May 2015 15:35:49 +0000 (08:35 -0700)]
; Omit entries that will appear in ChangeLog.2

9 years agoReplace gui-method macros with cl-generic with &context
Stefan Monnier [Sat, 23 May 2015 15:32:29 +0000 (11:32 -0400)]
Replace gui-method macros with cl-generic with &context

* lisp/frame.el (gui-method--name, gui-method, gui-method-define)
(gui-method-declare, gui-call): Remove.
(frame-creation-function): Use cl-defgeneric.
(make-frame): Adjust callers.

* lisp/menu-bar.el (menu-bar-edit-menu):
Use gui-backend-selection-exists-p.

* lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
(gui-backend-get-selection): New cl-generic to replace
gui-get-selection method.
(gui-backend-set-selection): New cl-generic to replace
gui-set-selection method.
(gui-selection-owner-p): New cl-generic to replace
gui-selection-owner-p method.
(gui-backend-selection-exists-p): New cl-generic to replace
gui-selection-exists-p method.  Adjust all callers.

* lisp/server.el (server-create-window-system-frame): Don't ignore
window-system spec even when unsupported.

* lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.

* lisp/startup.el (handle-args-function, window-system-initialization):
Use cl-defgeneric.
(command-line): Adjust calls accordingly.

* lisp/term/ns-win.el (ns-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.

* lisp/term/pc-win.el (w16-get-selection-value): Turn into
a gui-backend-get-selection method.
(gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
Use cl-defmethod on the new functions instead.
(msdos-window-system-initialization): Turn into
a window-system-initialization method.
(frame-creation-function, handle-args-function): Use cl-defmethod.

* lisp/term/w32-win.el (w32-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.

* lisp/term/x-win.el (x-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.

* lisp/term/xterm.el (xterm--set-selection): Turn into
a gui-backend-set-selection method.

* src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
(Fns_selection_owner_p): Remove unused arg `terminal'.
(Fns_get_selection): Remove unused args `time_stamp' and `terminal'.

9 years agoRevert "Fix etags Bug#20629 that broke C++ support."
Eli Zaretskii [Sat, 23 May 2015 13:47:47 +0000 (16:47 +0300)]
Revert "Fix etags Bug#20629 that broke C++ support."

This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.

9 years agoFix etags Bug#20629 that broke C++ support.
Jan D [Sat, 23 May 2015 12:13:44 +0000 (14:13 +0200)]
Fix etags Bug#20629 that broke C++ support.

* etags.el (etags-xref-find-definitions-tag-order): Revert commit
from Sun May 10 (Bug#20629).

9 years agoMerge branch 'cairo'.
Jan D [Sat, 23 May 2015 10:34:45 +0000 (12:34 +0200)]
Merge branch 'cairo'.

Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.

9 years agoMerge branch 'master' into cairo
Jan D [Sat, 23 May 2015 10:28:54 +0000 (12:28 +0200)]
Merge branch 'master' into cairo

9 years agoFixes to compile cairo branch without cairo. old-branches/cairo
Jan D [Sat, 23 May 2015 10:27:56 +0000 (12:27 +0200)]
Fixes to compile cairo branch without cairo.

* src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
first argument.

* src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
USE_CAIRO.

9 years ago* lisp/emacs-lisp/package.el: Always update selected-packages
Artur Malabarba [Sat, 23 May 2015 09:13:02 +0000 (10:13 +0100)]
* lisp/emacs-lisp/package.el: Always update selected-packages

(package--update-selected-packages): New function.
(package-menu-execute): Use it before starting the transaction,
this way the list of selected packages is updated even when the
transaction fails.
(package-menu--perform-transaction): Don't edit selected-packages.

9 years agoFix etags reading of compressed files
Eli Zaretskii [Sat, 23 May 2015 08:35:45 +0000 (11:35 +0300)]
Fix etags reading of compressed files

* lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
Include fcntl.h, for O_CLOEXEC.
(process_file_name): Don't use 'popen', whose streams cannot be
rewound.  Instead, uncompress the file to a temporary file,
created by 'etags_mktmp', and read from that as usual.
(etags_mktmp): New function.

* 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: Update to be consistent with latest
changes in etags.c regarding reading compressed files.

9 years agoImprove documentation of 'set-fontset-font'
Eli Zaretskii [Sat, 23 May 2015 08:15:30 +0000 (11:15 +0300)]
Improve documentation of 'set-fontset-font'

* doc/lispref/display.texi (Fontsets): Document the value of nil
for the 3rd argument of 'set-fontset-font'.

9 years agoFix documentation of forward-line
Eli Zaretskii [Sat, 23 May 2015 08:03:30 +0000 (11:03 +0300)]
Fix documentation of forward-line

* src/cmds.c (Fforward_line): Clarify the return value if the line
at end of accessible portion of the buffer has no newline.
* doc/lispref/positions.texi (Text Lines): Document what happens
if the line at end of accessible portion of buffer has no newline.

(Bug#20587)

9 years ago* admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
Glenn Morris [Fri, 22 May 2015 23:17:51 +0000 (19:17 -0400)]
* admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.

9 years ago* admin/charsets/mapconv (LC_ALL): Set to C.
Glenn Morris [Fri, 22 May 2015 23:15:55 +0000 (19:15 -0400)]
* admin/charsets/mapconv (LC_ALL): Set to C.

9 years ago* Makefile.in: Add admin/charsets into top-level clean rules.
Glenn Morris [Fri, 22 May 2015 23:05:59 +0000 (19:05 -0400)]
* Makefile.in: Add admin/charsets into top-level clean rules.

(clean): Add admin/charsets.
(maybeclean_dirs): New variable.
(distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.

9 years ago* admin/charsets/Makefile.in (LOCAL, local): Fix members.
Glenn Morris [Fri, 22 May 2015 22:44:46 +0000 (18:44 -0400)]
* admin/charsets/Makefile.in (LOCAL, local): Fix members.

9 years ago* lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
Artur Malabarba [Fri, 22 May 2015 10:00:10 +0000 (11:00 +0100)]
* lisp/emacs-lisp/package.el (package-selected-packages): Fix doc

9 years agoGenerate admin/charsets Makefile via configure, and make more portable.
Glenn Morris [Fri, 22 May 2015 06:44:00 +0000 (23:44 -0700)]
Generate admin/charsets Makefile via configure, and make more portable.

* configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
(admin/charsets/Makefile): Generate it.
* admin/charsets/Makefile.in: Rename from Makefile.
(AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
New variables, set by configure.
(charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
(am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
(am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
(cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
(TRANS_TABLE, CHARSETS): Add directory prefix to value.
(all): Declare PHONY.
(local): New PHONY target.
(map_template): New template.  Use to define short PHONY aliases.
(*.map): Add directory prefixes to targets and prerequisites.
Respect make verbosity.
(JISC6226.map): Replace non-portable sed append without newline.
(install): Remove rule.
(clean): Only delete temporary sedscript.
(bootstrap-clean, distclean, maintainer-clean, extraclean)
(totalclean): New PHONY rules.
* admin/charsets/mapconv (BASE): Replace basename with expr.
(FILE): Add "mapfiles" subdirectory.
(AWK): New variable.  Use throughout in place of "awk".
(main): Use "gunzip -c" in place of "zcat".
Don't leave whitespace before "p", for older sed.
* admin/charsets/mapfiles/PTCP154: Add final newline,
to make older sed versions happy.
; * .gitignore: Ignore admin/charsets/Makefile.

9 years ago* lisp/autorevert.el: Use lexical-binding. Fix hook usage.
Stefan Monnier [Fri, 22 May 2015 04:03:12 +0000 (00:03 -0400)]
* lisp/autorevert.el: Use lexical-binding.  Fix hook usage.

(global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
(auto-revert-notify-watch-descriptor): Use defvar-local.
(find-file-hook, auto-revert-tail-mode, )
(auto-revert-notify-add-watch): Use setq-local.
(auto-revert-notify-add-watch): Don't call make-local-variable on
kill-buffer-hook (bug#20601).

9 years agoChange defgeneric so it doesn't completely redefine the function
Stefan Monnier [Fri, 22 May 2015 03:46:10 +0000 (23:46 -0400)]
Change defgeneric so it doesn't completely redefine the function

* lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
previously defined methods.
(cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
(cl--generic-prefill-dispatchers): Only define during compilation.
(cl-method-qualifiers): Remove redundant alias.
(help-fns-short-filename): Silence byte-compiler.
* test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.

9 years ago(package-menu-execute): Remove reference to remove-dups
Artur Malabarba [Thu, 21 May 2015 20:26:57 +0000 (21:26 +0100)]
(package-menu-execute): Remove reference to remove-dups

9 years ago* lisp/erc/erc.el: Hide network/channel messages
kwhite [Thu, 21 May 2015 19:30:18 +0000 (14:30 -0500)]
* lisp/erc/erc.el: Hide network/channel messages

(erc-network-hide-list, etc-channel-hide-list): New lists to define
message types per network/channel.
(erc-add-targets): New function to parse list of targets
(erc-hide-current-message-p): Modified to check for new targets

9 years agoDon't quote nil and t in doc strings
Paul Eggert [Thu, 21 May 2015 17:04:45 +0000 (10:04 -0700)]
Don't quote nil and t in doc strings

This is as per "Tips for Documentation Strings" in the elisp manual.
For consistency, do the same in diagnostics and comments.

9 years agoFix a minor problem with mouse-face on mode line
Eli Zaretskii [Thu, 21 May 2015 16:38:19 +0000 (19:38 +0300)]
Fix a minor problem with mouse-face on mode line

* src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
mouse face also if the mouse pointer hovers above mode-line glyphs
that don't come from any Lisp string.  (Bug#20620)

9 years ago* lisp/emacs-lisp/package.el: Fix selected-package logic
Artur Malabarba [Thu, 21 May 2015 16:10:40 +0000 (17:10 +0100)]
* lisp/emacs-lisp/package.el: Fix selected-package logic

(package-menu-execute): Mark as selected all non-upgrade packages
being installed.
(package-menu--perform-transaction): Don't mark anything.

9 years ago* lisp/emacs-lisp/package.el: Mode-line progress report
Artur Malabarba [Thu, 21 May 2015 08:58:45 +0000 (09:58 +0100)]
* lisp/emacs-lisp/package.el: Mode-line progress report

(package-menu--transaction-status): New variable.
(package-menu-mode, package-menu--perform-transaction): Use it.

9 years ago* lisp/emacs-lisp/package.el: Better transaction messages
Artur Malabarba [Thu, 21 May 2015 07:57:31 +0000 (08:57 +0100)]
* lisp/emacs-lisp/package.el: Better transaction messages

(package-menu--partition-transaction): New function.
(package-menu--prompt-transaction-p, package-menu-execute): Use
it.
(package-menu--perform-transaction): Don't do any messaging.

9 years ago* lisp/emacs-lisp/package.el: Revert async package transactions
Artur Malabarba [Wed, 20 May 2015 19:54:20 +0000 (20:54 +0100)]
* lisp/emacs-lisp/package.el: Revert async package transactions

(package-menu-async): Update doc.
(package-install-from-archive, package-download-transaction)
(package-install, package-menu--perform-transaction)
(package-menu-execute): Remove asynchronous functionality.

9 years agoRevert doc string changes to f90.el
Paul Eggert [Thu, 21 May 2015 05:16:53 +0000 (22:16 -0700)]
Revert doc string changes to f90.el

Problem reported by Glenn Morris in:
http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
* lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
Revert recent changes to doc strings, as it's intended that they
use grave accent, not quote.

9 years ago; * doc/lispref/nonascii.texi (Character Properties): Fix a typo.
Eli Zaretskii [Wed, 20 May 2015 19:07:30 +0000 (22:07 +0300)]
; * doc/lispref/nonascii.texi (Character Properties): Fix a typo.

(Bug#20618)

9 years agoImprove parameter name
Bozhidar Batsov [Wed, 20 May 2015 15:50:38 +0000 (18:50 +0300)]
Improve parameter name

9 years agoAdd new inline function `hash-table-empty-p'
Bozhidar Batsov [Wed, 20 May 2015 15:49:20 +0000 (18:49 +0300)]
Add new inline function `hash-table-empty-p'

9 years ago; * test/automated/subr-tests.el: Standardize license notice.
Glenn Morris [Wed, 20 May 2015 15:34:53 +0000 (08:34 -0700)]
; * test/automated/subr-tests.el: Standardize license notice.

9 years agoDon't require help-fns when not needed
Paul Eggert [Wed, 20 May 2015 15:23:09 +0000 (08:23 -0700)]
Don't require help-fns when not needed

* lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
* lisp/emacs-lisp/elint.el:
Don't require help-fns at the top level.
* lisp/emacs-lisp/advice.el (ad-arglist):
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
Don't require help-fns.  (Bug#17001)

9 years agoFix slash collapsing in etags on MS-Windows
Eli Zaretskii [Wed, 20 May 2015 15:18:33 +0000 (18:18 +0300)]
Fix slash collapsing in etags on MS-Windows

* lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
MS-Windows code from the Posix code, and support collapsing both
forward- and back-slashes on MS-Windows.  Fixes a regression found
by the test suite.

9 years agoImprove documentation of glyphless-char-display
Eli Zaretskii [Wed, 20 May 2015 15:14:21 +0000 (18:14 +0300)]
Improve documentation of glyphless-char-display

* doc/lispref/display.texi (Glyphless Chars): Improve
documentation of glyphless character display.

9 years agoFix "acronym" display of glyphless characters on w32
Eli Zaretskii [Wed, 20 May 2015 15:09:37 +0000 (18:09 +0300)]
Fix "acronym" display of glyphless characters on w32

* src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
ignore "acronym" substitutes of 1 character for glyphless characters.

9 years agoAdd an automated test for let-when-compile
Oleh Krehel [Wed, 20 May 2015 13:38:55 +0000 (15:38 +0200)]
Add an automated test for let-when-compile

* test/automated/subr-tests.el (let-when-compile): New test.

9 years agoAdd let-when-compile macro instead of using pcase-let
Oleh Krehel [Tue, 19 May 2015 07:49:12 +0000 (09:49 +0200)]
Add let-when-compile macro instead of using pcase-let

* lisp/subr.el (let-when-compile): New let-like macro that makes its
bindings known to macros like `eval-when-compile' in the body.

* lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
  `let-when-compile'. Also comment out the unused lexical var
  `el-kws-re'.

The change greatly improves readability, while providing almost the
same (even shorter) byte code: instead of pre-evaluating 10 variables,
tossing them into a list, and destructuring that list a full screen
page later, the variables are simply bound as they are evaluated,
wrapped individually in `eval-when-compile'.

9 years ago* lisp/emacs-lisp/package.el: "Delete" button in Help buffer
Artur Malabarba [Wed, 20 May 2015 13:13:22 +0000 (14:13 +0100)]
* lisp/emacs-lisp/package.el: "Delete" button in Help buffer

(package-delete-button-action): New function.
(describe-package-1): Add Delete button.

9 years ago* lisp/emacs-lisp/package.el: Better dependency description
Artur Malabarba [Wed, 20 May 2015 13:03:03 +0000 (14:03 +0100)]
* lisp/emacs-lisp/package.el: Better dependency description

(package--used-elsewhere-p): New optional arg, ALL, and return
package-desc objects instead of names.
(package-delete): Update accordingly.
(describe-package-1): Describe which packages require the package.

9 years agoFix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
Martin Rudalics [Wed, 20 May 2015 08:35:13 +0000 (10:35 +0200)]
Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)

* src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
Fix doc-string (Bug#20533).

9 years agoImprove `switch-to-buffer' in strongly dedicated windows (Bug#20472)
Martin Rudalics [Wed, 20 May 2015 06:49:23 +0000 (08:49 +0200)]
Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)

* lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
(switch-to-buffer): If the selected window is strongly dedicated
to its buffer, signal error before prompting for buffer name.  Handle
`switch-to-buffer-in-dedicated-window'.  (Bug#20472)
* doc/lispref/windows.texi (Switching Buffers): Document
`switch-to-buffer-in-dedicated-window'.

9 years agoPrefer "this" to “this” in doc strings
Paul Eggert [Wed, 20 May 2015 02:08:11 +0000 (19:08 -0700)]
Prefer "this" to “this” in doc strings

This mostly just straightens quotes introduced in my previous patch.
Suggested by Dmitry Gutov in:
http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
* lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
* lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
* lisp/textmodes/artist.el, lisp/textmodes/rst.el:
* lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
* lisp/vc/log-edit.el, lisp/xt-mouse.el:
Prefer straight double quotes to curved double quotes in doc strings.

9 years agoFix minor quoting problems in doc strings
Paul Eggert [Tue, 19 May 2015 21:59:15 +0000 (14:59 -0700)]
Fix minor quoting problems in doc strings

These were glitches regardless of how or whether we tackle the
problem of grave accent in doc strings.
* lisp/calc/calc-aent.el (math-restore-placeholders):
* lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
* lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
* lisp/leim/quail/hebrew.el ("hebrew-new")
("hebrew-biblical-sil"):
* lisp/leim/quail/thai.el ("thai-kesmanee"):
* lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
* lisp/calendar/calendar.el (calendar-month-abbrev-array):
* lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
* lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
* lisp/cedet/semantic/tag.el (semantic-tag-copy)
(semantic-tag-components):
* lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
* lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
* lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
* lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
* lisp/emacs-lisp/generator.el (iter-next):
* lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
(gnus-article-mode-syntax-table):
* lisp/net/rlogin.el (rlogin-directory-tracking-mode):
* lisp/net/soap-client.el (soap-wsdl-get):
* lisp/net/telnet.el (telnet-mode):
* lisp/org/org-compat.el (org-number-sequence):
* lisp/org/org.el (org-remove-highlights-with-change)
(org-structure-template-alist):
* lisp/org/ox-html.el (org-html-link-org-files-as-html):
* lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
(handwrite-12pt, handwrite-13pt):
* lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
* lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
* lisp/progmodes/verilog-mode.el (verilog-tool)
(verilog-string-replace-matches, verilog-preprocess)
(verilog-auto-insert-lisp, verilog-auto-insert-last):
* lisp/textmodes/makeinfo.el (makeinfo-options):
* src/font.c (Ffont_spec):
Fix minor quoting problems in doc strings, e.g., missing quote,
``x'' where `x' was meant, etc.
* lisp/erc/erc-backend.el (erc-process-sentinel-2):
Fix minor quoting problem in other string.
* lisp/leim/quail/ethiopic.el ("ethiopic"):
* lisp/term/tvi970.el (tvi970-set-keypad-mode):
Omit unnecessary quotes.
* lisp/faces.el (set-face-attribute, set-face-underline)
(set-face-inverse-video, x-create-frame-with-faces):
* lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
* lisp/mail/supercite.el (sc-attribs-%@-addresses)
(sc-attribs-!-addresses, sc-attribs-<>-addresses):
* lisp/net/tramp.el (tramp-methods):
* lisp/recentf.el (recentf-show-file-shortcuts-flag):
* lisp/textmodes/artist.el (artist-ellipse-right-char)
(artist-ellipse-left-char, artist-vaporize-fuzziness)
(artist-spray-chars, artist-mode, artist-replace-string)
(artist-put-pixel, artist-text-see-thru):
* lisp/vc/ediff-util.el (ediff-submit-report):
* lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
Use double-quotes rather than TeX markup in doc strings.
* lisp/skeleton.el (skeleton-pair-insert-maybe):
Reword to avoid the need for grave accent and apostrophe.
* lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
Don't use grave and acute accents to quote.

9 years ago* emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
Stefan Monnier [Tue, 19 May 2015 19:37:14 +0000 (15:37 -0400)]
* emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler

9 years agoTry to port new etags tests to MS-Windows
Paul Eggert [Tue, 19 May 2015 17:38:47 +0000 (10:38 -0700)]
Try to port new etags tests to MS-Windows

* 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:
Adjust to test-case changes below.
* test/etags/Makefile (CSRC): Remove dostorture.c.
Whatever it was trying to test, wasn't working portably.
(LC_ALL): Remove.  Apparently there wasn't an encoding problem,
just a line-ending problem.
* test/etags/c-src/dostorture.c: Remove.
* test/etags/cp-src/c.C: Remove stray CR.
* test/etags/html-src/algrthms.html: Remove trailing CRs.
State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
but if someone edits it later it should stay UTF-8-compatible.

9 years agoFix display of overlapping window-specific overlays
Eli Zaretskii [Tue, 19 May 2015 15:39:25 +0000 (18:39 +0300)]
Fix display of overlapping window-specific overlays

* src/keyboard.c (adjust_point_for_property): When adjusting point
due to display strings, ignore overlays that are specific to
windows other than the currently selected one.

* src/xdisp.c (handle_single_display_spec): If the display
property comes from an overlay, arrange for buffer iteration to
resume only after the end of that overlay.  (Bug#20607)

9 years agoNew command icomplete-force-complete-and-exit
Dmitry Gutov [Tue, 19 May 2015 12:52:27 +0000 (15:52 +0300)]
New command icomplete-force-complete-and-exit

* lisp/icomplete.el (icomplete-force-complete-and-exit):
New command
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
(icomplete-minibuffer-map): Bind C-j to it.
(icomplete-forward-completions, icomplete-backward-completions):
Mention the new command in the docstring.

* lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
the previous fix for bug#17545.

9 years agoFix last commit
Martin Rudalics [Tue, 19 May 2015 10:19:10 +0000 (12:19 +0200)]
Fix last commit

9 years agoIn Elisp manual explain how to override window manager positioning (Bug#20552)
Martin Rudalics [Tue, 19 May 2015 09:35:17 +0000 (11:35 +0200)]
In Elisp manual explain how to override window manager positioning (Bug#20552)

* doc/lispref/frames.texi (Position Parameters): Give example of
how to override a window manager positioning decision.

9 years agoClarify concept of "surrogate minibuffer frames" (Bug#20538)
Martin Rudalics [Tue, 19 May 2015 09:08:21 +0000 (11:08 +0200)]
Clarify concept of "surrogate minibuffer frames" (Bug#20538)

* src/frame.c (Fdelete_frame): In doc-string mention that frame
can't be deleted if it has a surrogate minibuffer.
* doc/lispref/frames.texi (Minibuffers and Frames)
(Deleting Frames): Explain "surrogate minibuffer frames".

9 years agoIn w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
Martin Rudalics [Tue, 19 May 2015 06:50:36 +0000 (08:50 +0200)]
In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB

* emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.

9 years ago; * CONTRIBUTE: Fix typo in previous.
Glenn Morris [Tue, 19 May 2015 01:43:01 +0000 (21:43 -0400)]
; * CONTRIBUTE: Fix typo in previous.

9 years agoAdd option to ignore commit lines matching a pattern in ChangeLog.
Glenn Morris [Tue, 19 May 2015 01:41:03 +0000 (21:41 -0400)]
Add option to ignore commit lines matching a pattern in ChangeLog.

* build-aux/gitlog-to-changelog: Add --ignore-line option.
* build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
; * CONTRIBUTE: Mention this.

9 years agoDon't skip new etags tests on non-UTF-8 hosts
Paul Eggert [Tue, 19 May 2015 01:05:26 +0000 (18:05 -0700)]
Don't skip new etags tests on non-UTF-8 hosts

Problem reported by Eli Zaretskii for MS-Windows.
* test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
(LC_ALL): Set to C if the current locale isn't UTF-8.
(.PHONY): Remove ediff_1 thru ediff_5.
(check): Always run.

9 years ago* lisp/calculator.el (calculator-funcall):
Glenn Morris [Tue, 19 May 2015 00:54:24 +0000 (20:54 -0400)]
* lisp/calculator.el (calculator-funcall):

* lisp/textmodes/artist.el (artist-spray-random-points):
Use standard degree/radian conversion utilities.

9 years ago; * lisp/mail/mailabbrev.el: Comment.
Glenn Morris [Tue, 19 May 2015 00:53:11 +0000 (20:53 -0400)]
; * lisp/mail/mailabbrev.el: Comment.

9 years agoFurther lisp-complete-symbol related cleanup.
Glenn Morris [Tue, 19 May 2015 00:51:47 +0000 (20:51 -0400)]
Further lisp-complete-symbol related cleanup.

* lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
Unadvertise non-functional argument.  Replace obsolete alias.

9 years agoAdd a test case for Maven warning ouput
Dmitry Gutov [Mon, 18 May 2015 21:02:39 +0000 (00:02 +0300)]
Add a test case for Maven warning ouput

* test/automated/compile-tests.el
(compile-tests--test-regexps-data): Add a case for Maven warning
ouput.
(compile--test-error-line): Check the compilation message type, if
it's specified in the test data.

9 years agoUpdate Maven compilation-mode entry to distinguish warnings
Paul Pogonyshev [Mon, 18 May 2015 21:00:09 +0000 (00:00 +0300)]
Update Maven compilation-mode entry to distinguish warnings

* lisp/progmodes/compile.el
(compilation-error-regexp-alist-alist): Update Maven entry to
distinguish warnings (bug#20556).

9 years ago* test/automated/sgml-mode-tests.el: New file.
Przemysław Wojnowski [Sun, 17 May 2015 19:49:05 +0000 (21:49 +0200)]
* test/automated/sgml-mode-tests.el: New file.

9 years agoImprove handling of the first Git revision
Dmitry Gutov [Mon, 18 May 2015 12:49:13 +0000 (15:49 +0300)]
Improve handling of the first Git revision

* lisp/vc/log-view.el (log-view-toggle-entry-display): When
there's no next entry, delete until the end of the buffer.
(log-view-end-of-defun-1): Stop at eob.

* lisp/vc/vc-annotate.el
(vc-annotate-show-diff-revision-at-line-internal): Don't give up
when previous-revision is nil.

* lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
with `--' to avoid ambiguity.
(vc-git-annotate-extract-revision-at-line): Exclude `^' from the
returned revision string.
(vc-git-annotate-time): Expect `^' before the first revision.

* lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
REV1 is nil, and REV2 is not.

* lisp/vc/vc.el: Update the description of the `diff' function.

9 years agoAllow checkdoc to be called in batch
Oleh Krehel [Mon, 18 May 2015 08:07:03 +0000 (10:07 +0200)]
Allow checkdoc to be called in batch

* lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
  is non-nil, echo the error with `warn'.

How it can be used in -batch:

(with-current-buffer (find-file "checkdoc.el")
  (checkdoc-current-buffer t))

9 years ago* lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
Glenn Morris [Mon, 18 May 2015 06:02:10 +0000 (23:02 -0700)]
* lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.

9 years ago* admin/notes/unicode: New section "binary files".
Paul Eggert [Mon, 18 May 2015 00:28:54 +0000 (17:28 -0700)]
* admin/notes/unicode: New section "binary files".

9 years agoChange new etags test to use UTF-8 encoding
Paul Eggert [Mon, 18 May 2015 00:21:54 +0000 (17:21 -0700)]
Change new etags test to use UTF-8 encoding

* 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/html-src/index.shtml, test/etags/html-src/software.html:
* test/etags/html-src/softwarelibero.html:
Switch to UTF-8 encoding.
* test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
Remove Makefile, as it's too incestuous to have the test input
include the build procedure.
(UTF8_LOCALE, UTF_ENCODING): New macros.
(LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
(check): Skip if not UTF-8.
(.PHONY): New rule.
(FRC): Remove, as superseded by .PHONY.  All uses removed.
(regexfile): Prefer printf to echo when outputting oddball chars.
(.PRECIOUS): Remove, as these files are not built.

9 years agoRename 'foo-gzipped' to 'foo.gz'
Paul Eggert [Mon, 18 May 2015 00:16:26 +0000 (17:16 -0700)]
Rename 'foo-gzipped' to 'foo.gz'

* test/automated/data/decompress/foo.gz:
Rename from test/automated/data/decompress/foo-gzipped,
to make it easier for other tools to tell that it's compressed.
* test/automated/zlib-tests.el (zlib--decompress):
Adjust to renamed file.

9 years agoSet up default-directory
Dmitry Gutov [Sun, 17 May 2015 23:01:04 +0000 (02:01 +0300)]
Set up default-directory

* lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
binding for `v'.
(vc-annotate-show-changeset-diff-revision-at-line): Set up an
appropriate value for default-directory.

9 years ago* lisp/eshell/em-term.el (eshell-term-sentinel):
Samer Masterson [Sun, 17 May 2015 21:55:16 +0000 (14:55 -0700)]
* lisp/eshell/em-term.el (eshell-term-sentinel):

No-op by default, only kills term buffer if
`eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
(eshell-destroy-buffer-when-process-dies): New custom to preserve
previous behavior.

9 years agoeshell: Introduce new buffer syntax
Samer Masterson [Sat, 16 May 2015 02:42:00 +0000 (19:42 -0700)]
eshell: Introduce new buffer syntax

The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
needed (Bug#19319).

* lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
(eshell-get-target): Remove shorthand-specific code.
* lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
'#<buffer-name>'.

9 years ago; Auto-commit of ChangeLog files.
Glenn Morris [Sun, 17 May 2015 18:02:52 +0000 (14:02 -0400)]
; Auto-commit of ChangeLog files.

9 years agoFix integer-valued `mouse-highlight' (Bug#20590)
Johan Bockgård [Sat, 16 May 2015 20:47:30 +0000 (22:47 +0200)]
Fix integer-valued `mouse-highlight' (Bug#20590)

* src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.

9 years agoMS-Windows followup for ASCIIfication of curved quotes
Eli Zaretskii [Sun, 17 May 2015 15:33:22 +0000 (18:33 +0300)]
MS-Windows followup for ASCIIfication of curved quotes

* lisp/term/w32console.el (terminal-init-w32console): Repeat the
test for curved quotes being displayable, after switching the
terminal encoding.  (Bug#20545)

9 years agoSpelling fixes
Paul Eggert [Sun, 17 May 2015 15:18:29 +0000 (08:18 -0700)]
Spelling fixes

9 years agoMerge branch 'master' into cairo
Jan D [Sun, 17 May 2015 14:46:34 +0000 (16:46 +0200)]
Merge branch 'master' into cairo

9 years agoAdd comment that x_shift_glyphs_for_insert is never called.
Jan D [Sun, 17 May 2015 09:30:09 +0000 (11:30 +0200)]
Add comment that x_shift_glyphs_for_insert is never called.

* xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface): Add
comment that this function is never called.

9 years ago* src/lisp.mk: Remove from repository and generate at build-time.
Glenn Morris [Sun, 17 May 2015 00:52:27 +0000 (17:52 -0700)]
* src/lisp.mk: Remove from repository and generate at build-time.

* src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
(shortlisp_filter): New variable.
(emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
(distclean): Remove lisp.mk.
* Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
* lisp/loadup.el: Tweak layout to make it easier to parse.
* make-dist: Do not distribute src/lisp.mk.

9 years agoDisplay shorter dates in Git annotate output
Dmitry Gutov [Sat, 16 May 2015 23:45:51 +0000 (02:45 +0300)]
Display shorter dates in Git annotate output

* lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
format (when not overridden with vc-git-annotate-switches).
(vc-git-annotate-time): Support the short format, as well as ISO
8601 that has been used until now (bug#5428).

9 years agoASCIIfy curved quotes on displays lacking them
Paul Eggert [Sat, 16 May 2015 20:47:36 +0000 (13:47 -0700)]
ASCIIfy curved quotes on displays lacking them

* lisp/international/mule-cmds.el (set-locale-environment):
If curved quotes don't work, display straight ASCII approximations
(Bug#20545).

9 years agoSmall src/Makefile simplification.
Glenn Morris [Sat, 16 May 2015 20:15:20 +0000 (13:15 -0700)]
Small src/Makefile simplification.

* src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
* src/Makefile.in (lisp): Derive from shortlisp.
($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.

9 years ago* lisp/help-mode.el (help-go-forward): Doc fix.
Eli Zaretskii [Sat, 16 May 2015 14:34:13 +0000 (17:34 +0300)]
* lisp/help-mode.el (help-go-forward): Doc fix.

(Bug#20577)

9 years ago* doc/lispref/debugging.texi (Profiling): Improve indexing.
Eli Zaretskii [Sat, 16 May 2015 14:30:50 +0000 (17:30 +0300)]
* doc/lispref/debugging.texi (Profiling): Improve indexing.

(Bug#20576)