]> git.eshelyaron.com Git - emacs.git/log
emacs.git
9 years agoMake prettier unique file names in eww
Lars Ingebrigtsen [Thu, 24 Dec 2015 21:47:58 +0000 (22:47 +0100)]
Make prettier unique file names in eww

(eww-make-unique-file-name): Make unique file names by making
files like foo(2).jpg instead of foo(1)(2).jpg.

9 years agoDecode hex-encoded URLs before using them as file names
Lars Ingebrigtsen [Thu, 24 Dec 2015 21:21:24 +0000 (22:21 +0100)]
Decode hex-encoded URLs before using them as file names

* eww.el (eww-decode-url-file-name): New function.
(eww-download-callback): Use it to decode file names before
saving them.

9 years agoAdd FreeBSD cert bundle
Ashish SHUKLA [Thu, 24 Dec 2015 17:54:41 +0000 (18:54 +0100)]
Add FreeBSD cert bundle

* doc/misc/emacs-gnutls.texi (Help For Users): Document
FreeBSD bundle.

* lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.

9 years agoAllow overriding shr functions from eww
Lars Ingebrigtsen [Thu, 24 Dec 2015 16:34:31 +0000 (17:34 +0100)]
Allow overriding shr functions from eww

* eww.el (eww-display-html): Allow overriding elements in
`shr-external-rendering-functions'.

9 years agoIgnore invalid SVG images
Lars Ingebrigtsen [Thu, 24 Dec 2015 13:40:16 +0000 (14:40 +0100)]
Ignore invalid SVG images

* shr.el (shr-tag-svg): Ignore SVG images that have no width
or height, because these can't be displayed by ImageMagick,
anyway.

9 years agoshr table rendering fix
Lars Ingebrigtsen [Thu, 24 Dec 2015 13:00:38 +0000 (14:00 +0100)]
shr table rendering fix

* shr.el (shr-tag-table): Allow rendering body-less tables
that have headers.

9 years agoclipboard should still work even if interprogram-* is disabled
Sam Steingold [Tue, 22 Dec 2015 17:02:30 +0000 (12:02 -0500)]
clipboard should still work even if interprogram-* is disabled

(clipboard-yank): When `interprogram-cut-function' is nil,
bind it to `gui-selection-value' - the default value.
(clipboard-kill-region, clipboard-kill-ring-save): When
`interprogram-paste-function' is nil, bind it to `gui-select-text' -
the default value.

9 years ago; Auto-commit of ChangeLog files.
Glenn Morris [Sun, 20 Dec 2015 11:24:07 +0000 (06:24 -0500)]
; Auto-commit of ChangeLog files.

9 years agoFix bootstrap issue with dired-loaddefs
Phillip Lord [Fri, 18 Dec 2015 21:19:35 +0000 (21:19 +0000)]
Fix bootstrap issue with dired-loaddefs

* lisp/dired.el: Autoloads for secondary files loaded optionally.

9 years agodired generate autoloads to non-versioned file.
Phillip Lord [Thu, 17 Dec 2015 20:37:51 +0000 (20:37 +0000)]
dired generate autoloads to non-versioned file.

* lisp/dired.el: Remove autoloads.
* lisp/Makefile.in: Add dired to autogenel.
* lisp/dired-aux.el,lisp/dired-x.el: Update file local.
* test/lisp/dired-tests.el: Add new test.

9 years agoeieio generate autoloads to non-versioned file.
Phillip Lord [Thu, 17 Dec 2015 20:01:16 +0000 (20:01 +0000)]
eieio generate autoloads to non-versioned file.

* lisp/Makefile.in: eieio-loaddefs add to autogenel.
* lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
  Remove autoloads.
* lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
  lisp/emacs-lisp/eieio-opt.el: Update file local.
* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.

9 years agohtmlfontify generate autoload to non-versioned file.
Phillip Lord [Wed, 16 Dec 2015 23:15:44 +0000 (23:15 +0000)]
htmlfontify generate autoload to non-versioned file.

* lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
* lisp/hfy-cmap.el: Update file local.
* lisp/htmlfontify.el: Remove autoloads, add require.
* test/lisp/htmlfontify-tests.el: Test autoload functionality.

9 years agoibuffer generate autoloads to non-versioned file.
Phillip Lord [Wed, 16 Dec 2015 23:08:17 +0000 (23:08 +0000)]
ibuffer generate autoloads to non-versioned file.

* lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
* lisp/ibuf-ext.el: Update file local.
* lisp/ibuffer.el: Remove autoloads and add a require.
* test/lisp/ibuffer-tests.el: Test that autoload is working.

9 years agormail generate autoloads to non-versioned file.
Phillip Lord [Wed, 16 Dec 2015 22:35:47 +0000 (22:35 +0000)]
rmail generate autoloads to non-versioned file.

* lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
* lisp/mail/rmail.el: Remove autoloads, add require.
* lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
  lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
  lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
  lisp/mail/undigest.el: Update file-local.
* test/lisp/mail/rmail-tests.el:

9 years agoAdd autoload-force target.
Phillip Lord [Wed, 16 Dec 2015 22:20:26 +0000 (22:20 +0000)]
Add autoload-force target.

* lisp/Makefile.in (autoload-force): New target.

9 years agops-print generate autoloads to non versioned file.
Phillip Lord [Tue, 15 Dec 2015 23:08:48 +0000 (23:08 +0000)]
ps-print generate autoloads to non versioned file.

* lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
* lisp/ps-print.el: Remove autoloads.
* lisp/ps-mule.el: Update file-local.
* test/lisp/ps-print-tests.el: Test autoload functionality.

9 years agoreftex generate autoloads to non versioned file.
Phillip Lord [Tue, 15 Dec 2015 21:51:12 +0000 (21:51 +0000)]
reftex generate autoloads to non versioned file.

* lisp/Makefile.in: Add reftex-loaddefs to autogen files
* lisp/textmodes/reftex.el: Remove autoloads.
* lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
  lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
  lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
  lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
  lisp/textmodes/reftex-toc.el: Update autoload file-local.
* test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
  function.

9 years ago; Auto-commit of ChangeLog files.
Glenn Morris [Sun, 13 Dec 2015 11:25:35 +0000 (06:25 -0500)]
; Auto-commit of ChangeLog files.

9 years ago* lisp/calculator.el (calculator-define-key): Undo last change
Stefan Monnier [Mon, 7 Dec 2015 14:09:13 +0000 (09:09 -0500)]
* lisp/calculator.el (calculator-define-key): Undo last change

Make map argument mandatory instead (bug#22106).
(calculator-add-operators): Pass the argument that's not optional any more.

9 years ago; Auto-commit of ChangeLog files.
Glenn Morris [Sun, 6 Dec 2015 11:32:23 +0000 (06:32 -0500)]
; Auto-commit of ChangeLog files.

9 years ago* Makefile.in: Avoid duplication.
Glenn Morris [Fri, 4 Dec 2015 00:57:11 +0000 (19:57 -0500)]
* Makefile.in: Avoid duplication.

(have-tests): New rule.
(check, check-maybe): Use it.

9 years agomake check unconditional, check-maybe top-level.
Phillip Lord [Wed, 2 Dec 2015 21:28:56 +0000 (21:28 +0000)]
make check unconditional, check-maybe top-level.

 * Makefile.in: Add check-maybe target.
 * test/Makefile.in: Restore unconditional behaviour to make check.

9 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Phillip Lord [Wed, 2 Dec 2015 12:05:09 +0000 (12:05 +0000)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

9 years agoTests now support out-of-source-build.
Phillip Lord [Tue, 1 Dec 2015 23:23:12 +0000 (23:23 +0000)]
Tests now support out-of-source-build.

 * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
   about current working directory.

9 years ago; * test/make-test-deps.emacs-lisp: Standardize license notice.
Glenn Morris [Tue, 1 Dec 2015 20:55:51 +0000 (15:55 -0500)]
; * test/make-test-deps.emacs-lisp: Standardize license notice.

9 years ago* lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
Artur Malabarba [Tue, 1 Dec 2015 13:56:30 +0000 (13:56 +0000)]
* lisp/emacs-lisp/let-alist.el: Now an Elpa :core package

9 years ago; Auto-commit of loaddefs files.
Glenn Morris [Tue, 1 Dec 2015 11:18:24 +0000 (06:18 -0500)]
; Auto-commit of loaddefs files.

9 years agoImprove documentation and clean up.
Phillip Lord [Mon, 30 Nov 2015 21:22:49 +0000 (21:22 +0000)]
Improve documentation and clean up.

 * test/Makefile.in: Improve documentation, use EMACS variable
   correctly, and clean up makefile rules.

9 years agoUpdate file headers for name change.
Phillip Lord [Sun, 29 Nov 2015 10:05:07 +0000 (10:05 +0000)]
Update file headers for name change.

 * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.

9 years agoTest files renamed to new scheme.
Phillip Lord [Sun, 29 Nov 2015 10:02:33 +0000 (10:02 +0000)]
Test files renamed to new scheme.

 * (finalizer-tests.el): Now renamed alloc-tests.el
 * (zlib-tests.el): Now renamed decompress-tests.el.

9 years agoTests now depend on source files
Phillip Lord [Sat, 28 Nov 2015 23:13:24 +0000 (23:13 +0000)]
Tests now depend on source files

 * test/Makefile.in: Include dependences from tests to source files.
 * test/make-test-deps.emacs-lisp: New file
 * .gitignore: Ignore generated make include file

9 years ago* lisp/progmodes/which-func.el: Improve disabling the mode
Stefan Monnier [Mon, 30 Nov 2015 15:52:12 +0000 (10:52 -0500)]
* lisp/progmodes/which-func.el: Improve disabling the mode

Use lexical-binding.
(which-func-modes, which-func-non-auto-modes, which-func-maxout)
(which-func, which-func-format): Remove redundant :group arg.
(which-func-try-to-enable): New function.
(which-func-ff-hook, which-function-mode): Use it.
(mode-line-misc-info): Add ourselves here instead of in bindings.el.
* lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.

9 years ago* lisp/calculator.el (calculator-define-key): Silence warning
Stefan Monnier [Mon, 30 Nov 2015 13:02:55 +0000 (08:02 -0500)]
* lisp/calculator.el (calculator-define-key): Silence warning

...about unknown calculator-mode-map.

9 years ago* lisp/calculator.el: more improvements and bugfixes.
Eli Barzilay [Sun, 29 Nov 2015 20:24:27 +0000 (15:24 -0500)]
* lisp/calculator.el: more improvements and bugfixes.

- Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
  effect anyway.)

- Simplify `calculator-number-to-string' by throwing most of the work
  onto `number-to-string', leaving just some tweaks for decimal inputs.
  This leads to some minor changes, for example, pasting "1x1" in hex
  mode would warn that "x" is ignored and result in "11" (and it wasn't
  done in decimal mode), whereas now it just ignores everything from the
  "x" and on and result in a "1" just like in decimal input mode.  Also,
  overflows are left for `number-to-string' to deal with.

- `calculator-paste' is very simple as a result.

- Extend the simplified `calculator-paste': with a prefix argument it
  pastes a string as if the characters were entered.  This can be used
  to reduce expressions, but note that it's a simple literal operation,
  so precedence can be messed, a number can be paster while entering a
  number, spaces and newlines matter, etc.

- Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
  operator.

- Fix a bug in `calculator-put-value': avoid grouping in the display
  that is used to construct `calculator-curnum'.  This would trigger
  when pasting or getting a value from a register in some radix mode
  with a large enough value.  Another fix: make the output radix equal
  the input one, otherwise numbers could be converted twice.

9 years ago* lisp/calculator.el: Re-do key bindings.
Eli Barzilay [Fri, 27 Nov 2015 15:21:30 +0000 (10:21 -0500)]
* lisp/calculator.el: Re-do key bindings.

Use a helper function that arranges a parent keymap that binds alternate
case keys so if some letter key is unbound and it's un/shifted version
is, it will get used.  This makes the global-map trickery unnecessary.

Also switch to passing strings that name keys through `kbd'.

9 years ago* lisp/calculator.el: improve radix modes
Eli Barzilay [Tue, 24 Nov 2015 18:39:17 +0000 (13:39 -0500)]
* lisp/calculator.el: improve radix modes

Fix prompt for some input radix with decimal output (eg, "BD" instead of
the incorrect "B="); also, some minor docstring tweaks for these.

9 years ago* lisp/calculator.el: better reading of register names
Eli Barzilay [Mon, 23 Nov 2015 03:37:11 +0000 (22:37 -0500)]
* lisp/calculator.el: better reading of register names

Use `register-read-with-preview' with a dynamically bound
`register-alist' and a proper preview function to read register names.

9 years ago* lisp/calculator.el: General improvements
Eli Barzilay [Mon, 23 Nov 2015 03:11:15 +0000 (22:11 -0500)]
* lisp/calculator.el: General improvements

Use things like `when', `unless', and `push'.

Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
non-electric mode.

9 years ago; Manual Cleanup of ChangeLog.2
Michael Albinus [Sun, 29 Nov 2015 13:22:28 +0000 (14:22 +0100)]
; Manual Cleanup of ChangeLog.2

9 years ago; Manual Cleanup of ChangeLog.2
Michael Albinus [Sun, 29 Nov 2015 13:10:54 +0000 (14:10 +0100)]
; Manual Cleanup of ChangeLog.2

9 years ago; Auto-commit of ChangeLog files.
Glenn Morris [Sun, 29 Nov 2015 11:24:12 +0000 (06:24 -0500)]
; Auto-commit of ChangeLog files.

9 years ago; Pacify byte-compiler in filenotify-tests.el
Michael Albinus [Sat, 28 Nov 2015 13:20:28 +0000 (14:20 +0100)]
; Pacify byte-compiler in filenotify-tests.el

9 years agoFix a problem with gfilenotify in filenotify-tests.el
Michael Albinus [Sat, 28 Nov 2015 12:56:28 +0000 (13:56 +0100)]
Fix a problem with gfilenotify in filenotify-tests.el

* test/lisp/filenotify-tests.el
(file-notify--test-expected-events): Remove.
(file-notify--test-cleanup): Do not set that variable.
(file-notify--test-with-events): EVENTS can also be a list of lists.
(file-notify-test02-events, file-notify-test04-file-validity):
Adapt expected result.

9 years ago* .gitignore: Adjust to changes in 'test' directory structure.
Eli Zaretskii [Sat, 28 Nov 2015 11:00:24 +0000 (13:00 +0200)]
* .gitignore: Adjust to changes in 'test' directory structure.

9 years agoFix test/manual/etags/Makefile
Eli Zaretskii [Sat, 28 Nov 2015 10:58:15 +0000 (12:58 +0200)]
Fix test/manual/etags/Makefile

* test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
changes in 'test' directory structure.

9 years agoExclude resource dirs from search for tests.
Phillip Lord [Fri, 27 Nov 2015 21:41:14 +0000 (21:41 +0000)]
Exclude resource dirs from search for tests.

* test/Makefile.in: Test file locations are now found with find
  rather than using finds native functions.

9 years agoAdd test targets without directory names.
Phillip Lord [Fri, 27 Nov 2015 11:56:18 +0000 (11:56 +0000)]
Add test targets without directory names.

 * (test/Makefile.in): Extend test_template to add two targets for each
   file.

9 years ago* lisp/emacs-lisp/package.el: Require url-handlers
Artur Malabarba [Fri, 27 Nov 2015 10:59:52 +0000 (10:59 +0000)]
* lisp/emacs-lisp/package.el: Require url-handlers

9 years agoMove elisp-mode-tests to new function names.
Phillip Lord [Fri, 27 Nov 2015 10:27:36 +0000 (10:27 +0000)]
Move elisp-mode-tests to new function names.

 * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
 find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.

9 years ago* lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
Juanma Barranquero [Fri, 27 Nov 2015 09:22:03 +0000 (10:22 +0100)]
* lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'

9 years agoMerge branch 'feature/standard-test-location'
Phillip Lord [Thu, 26 Nov 2015 21:11:29 +0000 (21:11 +0000)]
Merge branch 'feature/standard-test-location'

9 years ago* lisp/emacs-lisp/eieio.el: Add some default implementations
Stefan Monnier [Wed, 25 Nov 2015 22:03:27 +0000 (17:03 -0500)]
* lisp/emacs-lisp/eieio.el: Add some default implementations

(standard-class): Mark it obsolete.
(slot-missing): Give it a default implementation.
(destructor): Simplify and mark it obsolete.
(object-print): Give it a default implementation.
(eieio-change-class): Rename from change-class.
(change-class): Redefine as obsolete alias.

9 years agoMention kqueue in NEWS
Michael Albinus [Wed, 25 Nov 2015 14:44:20 +0000 (15:44 +0100)]
Mention kqueue in NEWS

9 years ago; Merge from scratch/kqueue
Michael Albinus [Wed, 25 Nov 2015 14:24:27 +0000 (15:24 +0100)]
; Merge from scratch/kqueue

The following commit was skipped:

e604e6a Merge branch 'scratch/kqueue' of git.sv.gnu.org:/srv/git/emacs into scratch/kqueue

9 years agoMerge from scratch/kqueue
Michael Albinus [Wed, 25 Nov 2015 14:24:27 +0000 (15:24 +0100)]
Merge from scratch/kqueue

bec57a4 Some final fixes in file notification before merging with master
0247489 Rework file notifications, kqueue has problems with directory monitors
5154781 Continie with pending events
6b490c0 Improve loops in file-notify-test06-many-events
c8e266f Handle more complex rename operation in kqueue
5044bdf New test with a larger number of events.
65ba5a9 Further fixes for kqueue.
13f3508 Code cleanup of kqueue.c
99aa855 Doc changes for kqueue
8deebe1 Finish implementation in kqueue.c
90d6c69 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
e95b309 More work on kqueue
41d9bd0 Implement directory events
c571fc1 Build fixes for kqueue support.
e0a68f2 Continue kqueue implementation
7543d1c Work on kqueue
e3354e2 Add kqueue support
c6457ce Minor fix to comment indentation and typo in last commit
b92307f linum-mode plays more nicely with other margin-setting extensions
58e6235 * lisp/image-mode.el: Support encrypted file
9375652 * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
47f83b6 ; ChangeLog.2 fixes
7cc233e * lisp/emacs-lisp/package.el: Fix a decoding issue
5f9153f * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
353f5e7 * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
70f1fda ; Auto-commit of ChangeLog files.
ae0653b * CONTRIBUTE: Remove information about feature freeze.
9459456 Merge branch 'release-process-lowercase'
9a4aa0f Document the release process
f8cc14b * admin/release-process: Rename from admin/FOR-RELEASE.
dcd5877 gitmerge: Fix git log command
2ac79ae gitmerge: Try to detect cherry-picks
5f7a2a9 Increment Emacs version on master branch
ed2e7e2 Mention CONTRIBUTE in README
9e00a02 Update verilog-mode.el to 2015-11-09-b121d60-vpo.
138ad3d ; Fix warnings
7126e9a ; Update xref-etags-mode for the latest change
246d660 Use generic dispatch for xref backends
31f6e93 Support rectangular regions for more commands
f103a27 Handle multiple matches on the same line; add highlighting
fe973fc Replace xref-match-bounds with xref-match-length
92a5010 Merge from gnulib
04ac097 Spruce up ftfont.c memory allocation
4c4b520 Port recent XCB changes to 64-bit ‘long int’
4f0ce9c * src/undo.c (run_undoable_change): Now static.
695a6f9 Remove support for ':timeout' from w32 tray notifications
a731c2f * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
2b4c0c0 * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
66b9f7b * src/undo.c: Small fixes for previous change
2fac30e Add a few more variables to redisplay--variables
04f69f1 * lisp/loadup.el: Enlarge the size of the hash table to 80000.
e221d32 Fix point positioning after transposing with negative arg
35f5afb Fix last change in shr.el
508e77b Fix last change
d60ed3f Another fix for MinGW64 and Cygwin builds due to notifications
805a39b Remove intern calls and XXX comments from Fx_export_frames
9463abf shr: don't invoke unbound function (Bug#21895)
6e5186e * test/automated/keymaps-test.el: Fix test to make it repeatable
0c92826 * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
39dbd1c : Tests for undo-auto functionality.
20aa42e ; Merge branch 'fix/no-undo-boundary-on-secondary-buffer-change'
44dfa86 The heuristic that Emacs uses to add an `undo-boundary' has been reworked, as it interacts poorly with functions on `post-command-hook' or `after-change-functions'.
d2f73db Bind [?\S-\ ] to previous line command in Dired-like modes.
c1bc6e5 Fix the MinGW64 and Cygwin-w32 builds
1e363a8 Enable sorting of JSON object keys when encoding
9dd7da9 * test/automated/keymap-tests.el: New test file
aa17de9 Speed up x_real_pos_and_offsets using XCB
a838c83 Enable use of XCB for checking window manager state
c7f2b6a Detect XCB and save a connection handle
e1c27db Reduce some data dependencies between X calls
25e32bd Use color cache for creating bitmap
851be0f Add "^" to the interactive specs of `dired-next/previous-line'
055ca3a Sync with soap-client repository, version 3.0.2
e0f64e7 CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
952395d * lisp/obarray.el: Fix shadowed variables
436d330 Avoid error in submitting a form with EWW
e887f6e ; * doc/lispref/os.texi: Fix indentation of sample code.
51d840a Rename seq-p and map-p to seqp and mapp
23036ba Rename obarray-p to obarrayp
20aea42 Rename obarray-foreach to obarray-map
a3b2101 New file with obarray functions.
9d43941 Implement tray notifications for MS-Windows

9 years agoMerge branch 'scratch/kqueue' of git.sv.gnu.org:/srv/git/emacs into scratch/kqueue scratch/kqueue
Michael Albinus [Wed, 25 Nov 2015 14:08:05 +0000 (15:08 +0100)]
Merge branch 'scratch/kqueue' of git.sv.gnu.org:/srv/git/emacs into scratch/kqueue

9 years agoSome final fixes in file notification before merging with master
Michael Albinus [Wed, 25 Nov 2015 14:00:06 +0000 (15:00 +0100)]
Some final fixes in file notification before merging with master

* lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
(file-notify-callback): Improve check for `stopped' event.  Call
`file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
(file-notify-add-watch): In case FILE is not a directory, call the
file monitor for the kqueue backend.  Otherwise, call the
directory monitor for the upper directory.

* src/inotify.c (inotifyevent_to_event): Extract file name from
watch_object if the event doesn't provide it.
(Finotify_add_watch): Add file name to watch_object.

* test/automated/file-notify-tests.el (file-notify--test-timeout):
Use different timeouts for different libraries.
(file-notify--test-with-events): Suppress lock files.  Flush
outstanding events before running the body.
(file-notify-test02-events, file-notify-test04-file-validity): Do
not skip cygwin tests.  Add additional test for file creation.
Adapt expected result for different backends.
(file-notify-test03-autorevert): Some of the tests don't work for
w32notify.
(file-notify-test06-many-events): Rename into both directions.

9 years agoRework file notifications, kqueue has problems with directory monitors
Michael Albinus [Fri, 20 Nov 2015 18:06:42 +0000 (18:06 +0000)]
Rework file notifications, kqueue has problems with directory monitors

* lisp/filenotify.el (file-notify-add-watch): Call the native
add-watch function on the file, not on the dir.

* src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
about already deleted entries.

* test/automated/auto-revert-tests.el
(auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
since this deletes the target file first.

* test/automated/file-notify-tests.el (file-notify--test-event-test):
Make stronger checks.
(file-notify-test01-add-watch, file-notify-test02-events)
(file-notify-test04-file-validity, file-notify-test05-dir-validity):
Rewrite in order to call file monitors but directory monitors.
(file-notify-test06-many-events): Ler rename work in both directions.

9 years agoContinie with pending events
Michael Albinus [Thu, 19 Nov 2015 18:49:33 +0000 (18:49 +0000)]
Continie with pending events

* src/kqueue.c (pending_events): Remove global variable.
(kqueue_compare_dir_list): Create `write' event for not used
pending events.
(globals_of_kqueue): Remove initialization of pending_events.

9 years agoImprove loops in file-notify-test06-many-events
Michael Albinus [Thu, 19 Nov 2015 15:56:28 +0000 (16:56 +0100)]
Improve loops in file-notify-test06-many-events

* test/automated/file-notify-tests.el (file-notify-test06-many-events):
Use `read-event' pauses for the `write-file' loops; otherwise
events are lost in inotify and gfilenotify cases.

9 years agoHandle more complex rename operation in kqueue
Michael Albinus [Thu, 19 Nov 2015 09:58:08 +0000 (09:58 +0000)]
Handle more complex rename operation in kqueue

* src/kqueue.c (pending_events): New variable.
(kqueue_compare_dir_list): Handle more complex rename operation.
(globals_of_kqueue): Initialize pending_events.

* test/automated/file-notify-tests.el (file-notify-test06-many-events):
Adapt expected events in the `rename-file' case.
(file-notify-test06-many-events-remote): Declare.

9 years agoNew test with a larger number of events.
Wolfgang Jenkner [Wed, 18 Nov 2015 18:24:27 +0000 (19:24 +0100)]
New test with a larger number of events.

* test/automated/file-notify-tests.el (file-notify--test-with-events):
Make timeout heuristically depend on the number of events.

(file-notify-test06-many-events): Use it for new test.

9 years agoFurther fixes for kqueue.
Michael Albinus [Wed, 18 Nov 2015 13:47:25 +0000 (13:47 +0000)]
Further fixes for kqueue.

* lisp/filenotify.el (file-notify-callback): Raise also event if
directory name matches.
(file-notify-add-watch): Add `create' to the flags for `kqueue'.

* src/kqueue.c (kqueue_generate_event): Use watch_object as
argument instead of ident.  Remove callback argument.  Adapt
callees.  Check actions whether they are monitored flags.

* test/automated/file-notify-tests.el (file-notify--test-library):
New defun.
(file-notify-test00-availability, file-notify-test02-events)
(file-notify-test04-file-validity)
(file-notify-test05-dir-validity): Use it.
(file-notify-test02-events, file-notify-test04-file-validity): Add
`read-event' calls between different file actions, in order to
give the backends a chance to rais an event.  Needed especially
for kqueue.  In case of deleting a directory, there are two
`deleted' events.

9 years agoCode cleanup of kqueue.c
Michael Albinus [Tue, 17 Nov 2015 15:46:29 +0000 (15:46 +0000)]
Code cleanup of kqueue.c

* src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
(kqueue_compare_dir_list): Do not loop when calling
directory_files_internal.  Remove checks for "." and "..", this is
done in kqueue_directory_listing now.
(Fkqueue_add_watch): Check for proper emacs_open flags.

9 years agoDoc changes for kqueue
Michael Albinus [Mon, 16 Nov 2015 13:43:14 +0000 (14:43 +0100)]
Doc changes for kqueue

* doc/lispref/os.texi (File Notifications): Add kqueue as backend.
Fix some glitches in the example.

9 years agoFinish implementation in kqueue.c
Michael Albinus [Mon, 16 Nov 2015 09:47:26 +0000 (09:47 +0000)]
Finish implementation in kqueue.c

* src/kqueue.c (kqueue_directory_listing, kqueue_callback):
Simplify access to list.
(kqueue_compare_dir_list): Simplify access to list.  Raise
`delete' event if directory does not exist any longer.  Otherwise,
wait until directory contents has changed.  Fix error in check.

9 years ago* lisp/filenotify.el (file-notify-add-watch): Fix thinko.
Michael Albinus [Mon, 16 Nov 2015 07:20:22 +0000 (08:20 +0100)]
* lisp/filenotify.el (file-notify-add-watch): Fix thinko.

9 years agoMore work on kqueue
Michael Albinus [Sun, 15 Nov 2015 17:45:32 +0000 (17:45 +0000)]
More work on kqueue

* lisp/filenotify.el (file-notify-callback): Handle also the
`rename' event from kqueue.
(file-notify-add-watch): Do not register an entry twice.

* src/kqueue.c (kqueue_directory_listing): New function.
(kqueue_generate_event): New argument FILE1.  Adapt callees.
(kqueue_compare_dir_list): Rewrite in order to make it more robust.

9 years agoImplement directory events
Michael Albinus [Sat, 14 Nov 2015 11:51:28 +0000 (11:51 +0000)]
Implement directory events

* lisp/filenotify.el (file-notify-handle-event)
(file-notify-callback): Remove traces.

* src/kqueue.c: Include <sys/time.h>.
(kqueue_generate_event, kqueue_compare_dir_list): New functions.
(kqueue_callback): Use them.  Call kevent() with a zero timeout.
(Fkqueue_add_watch): Adapt docstring.  Support directory events.
Compute initial directory listing.  Close file descriptor in case
of errors.
(syms_of_kqueue): Declare Qcreate.

9 years agoBuild fixes for kqueue support.
Wolfgang Jenkner [Wed, 11 Nov 2015 15:07:50 +0000 (16:07 +0100)]
Build fixes for kqueue support.

* src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
flag.

* configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
kqueue on *BSD.

9 years agoContinue kqueue implementation
Michael Albinus [Wed, 11 Nov 2015 08:22:06 +0000 (09:22 +0100)]
Continue kqueue implementation

* lisp/filenotify.el (file-notify-handle-event)
(file-notify-callback): Enable trace messages.

* src/kqueue.c: Include also <sys/types.h>.
(kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
(Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
(syms_of_kqueue): Add them.

9 years agoWork on kqueue
Michael Albinus [Mon, 9 Nov 2015 19:26:10 +0000 (20:26 +0100)]
Work on kqueue

* lisp/filenotify.el (file-notify--library)
(file-notify-descriptors, file-notify-callback)
(file-notify-add-watch, file-notify-rm-watch)
(file-notify-valid-p): Add kqueue support.

* src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.

9 years agoAdd kqueue support
Michael Albinus [Mon, 9 Nov 2015 09:00:56 +0000 (10:00 +0100)]
Add kqueue support

* configure.ac (--with-file-notification): Add kqueue.
(top): Remove special test for "${HAVE_NS}" and
${with_file_notification}, this is handled inside gfilenotify
tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
instead of library specific variables.

* src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.

* src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.

* src/kqueue.c: New file.

* src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.

9 years agoSome final fixes in file notification before merging with master
Michael Albinus [Wed, 25 Nov 2015 14:00:06 +0000 (15:00 +0100)]
Some final fixes in file notification before merging with master

* lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
(file-notify-callback): Improve check for `stopped' event.  Call
`file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
(file-notify-add-watch): In case FILE is not a directory, call the
file monitor for the kqueue backend.  Otherwise, call the
directory monitor for the upper directory.

* src/inotify.c (inotifyevent_to_event): Extract file name from
watch_object if the event doesn't provide it.
(Finotify_add_watch): Add file name to watch_object.

* test/automated/file-notify-tests.el (file-notify--test-timeout):
Use different timeouts for different libraries.
(file-notify--test-with-events): Suppress lock files.  Flush
outstanding events before running the body.
(file-notify-test02-events, file-notify-test04-file-validity): Do
not skip cygwin tests.  Add additional test for file creation.
Adapt expected result for different backends.
(file-notify-test03-autorevert): Some of the tests don't work for
w32notify.
(file-notify-test06-many-events): Rename into both directions.

9 years agoUpdate elisp-mode-tests for changed file location.
Phillip Lord [Tue, 24 Nov 2015 22:35:23 +0000 (22:35 +0000)]
Update elisp-mode-tests for changed file location.

 * test/lisp/progmodes/elisp-mode-tests.el:

9 years agoExclude manual tests from Makefile
Phillip Lord [Tue, 24 Nov 2015 22:25:11 +0000 (22:25 +0000)]
Exclude manual tests from Makefile

 * test/Makefile.in:

9 years agoMove package test files to new directory.
Phillip Lord [Tue, 24 Nov 2015 22:21:20 +0000 (22:21 +0000)]
Move package test files to new directory.

 * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
 * test/data/package: Moved to test/lisp/emacs-lisp/package-resources

9 years agoRestore delete Makefiles and fix .gitignore.
Phillip Lord [Tue, 24 Nov 2015 21:48:58 +0000 (21:48 +0000)]
Restore delete Makefiles and fix .gitignore.

 * .gitignore: Update Makefiles to changed locations
 * test/lisp/progmodes/flymake-resources/Makefile,
   test/manual/etags/Makefile,
   test/manual/etags/make-src/Makefile,
   test/manual/indent/Makefile: Restored and moved to new location.

9 years agoTest infrastructure: updates after directory move
Phillip Lord [Mon, 23 Nov 2015 22:08:52 +0000 (22:08 +0000)]
Test infrastructure: updates after directory move

 * (test/Makefile.in): Support directories several levels deep.
 * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
 * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.

9 years agoRename all test files to reflect source layout.
Phillip Lord [Mon, 23 Nov 2015 22:02:42 +0000 (22:02 +0000)]
Rename all test files to reflect source layout.

 * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
   test directory moves.
 * test/file-organisation.org: New file.
 * test/automated/Makefile.in
   test/automated/data/decompress/foo.gz
   test/automated/data/epg/pubkey.asc
   test/automated/data/epg/seckey.asc
   test/automated/data/files-bug18141.el.gz
   test/automated/data/flymake/test.c
   test/automated/data/flymake/test.pl
   test/automated/data/package/archive-contents
   test/automated/data/package/key.pub
   test/automated/data/package/key.sec
   test/automated/data/package/multi-file-0.2.3.tar
   test/automated/data/package/multi-file-readme.txt
   test/automated/data/package/newer-versions/archive-contents
   test/automated/data/package/newer-versions/new-pkg-1.0.el
   test/automated/data/package/newer-versions/simple-single-1.4.el
   test/automated/data/package/package-test-server.py
   test/automated/data/package/signed/archive-contents
   test/automated/data/package/signed/archive-contents.sig
   test/automated/data/package/signed/signed-bad-1.0.el
   test/automated/data/package/signed/signed-bad-1.0.el.sig
   test/automated/data/package/signed/signed-good-1.0.el
   test/automated/data/package/signed/signed-good-1.0.el.sig
   test/automated/data/package/simple-depend-1.0.el
   test/automated/data/package/simple-single-1.3.el
   test/automated/data/package/simple-single-readme.txt
   test/automated/data/package/simple-two-depend-1.1.el
   test/automated/abbrev-tests.el
   test/automated/auto-revert-tests.el
   test/automated/calc-tests.el
   test/automated/icalendar-tests.el
   test/automated/character-fold-tests.el
   test/automated/comint-testsuite.el
   test/automated/descr-text-test.el
   test/automated/electric-tests.el
   test/automated/cl-generic-tests.el
   test/automated/cl-lib-tests.el
   test/automated/eieio-test-methodinvoke.el
   test/automated/eieio-test-persist.el
   test/automated/eieio-tests.el
   test/automated/ert-tests.el
   test/automated/ert-x-tests.el
   test/automated/generator-tests.el
   test/automated/let-alist.el
   test/automated/map-tests.el
   test/automated/advice-tests.el
   test/automated/package-test.el
   test/automated/pcase-tests.el
   test/automated/regexp-tests.el
   test/automated/seq-tests.el
   test/automated/subr-x-tests.el
   test/automated/tabulated-list-test.el
   test/automated/thunk-tests.el
   test/automated/timer-tests.el
   test/automated/epg-tests.el
   test/automated/eshell.el
   test/automated/faces-tests.el
   test/automated/file-notify-tests.el
   test/automated/auth-source-tests.el
   test/automated/gnus-tests.el
   test/automated/message-mode-tests.el
   test/automated/help-fns.el
   test/automated/imenu-test.el
   test/automated/info-xref.el
   test/automated/mule-util.el
   test/automated/isearch-tests.el
   test/automated/json-tests.el
   test/automated/bytecomp-tests.el
   test/automated/coding-tests.el
   test/automated/core-elisp-tests.el
   test/automated/decoder-tests.el
   test/automated/files.el
   test/automated/font-parse-tests.el
   test/automated/lexbind-tests.el
   test/automated/occur-tests.el
   test/automated/process-tests.el
   test/automated/syntax-tests.el
   test/automated/textprop-tests.el
   test/automated/undo-tests.el
   test/automated/man-tests.el
   test/automated/completion-tests.el
   test/automated/dbus-tests.el
   test/automated/newsticker-tests.el
   test/automated/sasl-scram-rfc-tests.el
   test/automated/tramp-tests.el
   test/automated/obarray-tests.el
   test/automated/compile-tests.el
   test/automated/elisp-mode-tests.el
   test/automated/f90.el
   test/automated/flymake-tests.el
   test/automated/python-tests.el
   test/automated/ruby-mode-tests.el
   test/automated/subword-tests.el
   test/automated/replace-tests.el
   test/automated/simple-test.el
   test/automated/sort-tests.el
   test/automated/subr-tests.el
   test/automated/reftex-tests.el
   test/automated/sgml-mode-tests.el
   test/automated/tildify-tests.el
   test/automated/thingatpt.el
   test/automated/url-future-tests.el
   test/automated/url-util-tests.el
   test/automated/add-log-tests.el
   test/automated/vc-bzr.el
   test/automated/vc-tests.el
   test/automated/xml-parse-tests.el
   test/BidiCharacterTest.txt
   test/biditest.el
   test/cedet/cedet-utests.el
   test/cedet/ede-tests.el
   test/cedet/semantic-ia-utest.el
   test/cedet/semantic-tests.el
   test/cedet/semantic-utest-c.el
   test/cedet/semantic-utest.el
   test/cedet/srecode-tests.el
   test/cedet/tests/test.c
   test/cedet/tests/test.el
   test/cedet/tests/test.make
   test/cedet/tests/testdoublens.cpp
   test/cedet/tests/testdoublens.hpp
   test/cedet/tests/testfriends.cpp
   test/cedet/tests/testjavacomp.java
   test/cedet/tests/testnsp.cpp
   test/cedet/tests/testpolymorph.cpp
   test/cedet/tests/testspp.c
   test/cedet/tests/testsppcomplete.c
   test/cedet/tests/testsppreplace.c
   test/cedet/tests/testsppreplaced.c
   test/cedet/tests/testsubclass.cpp
   test/cedet/tests/testsubclass.hh
   test/cedet/tests/testtypedefs.cpp
   test/cedet/tests/testvarnames.c
   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
   test/etags/a-src/empty.zz
   test/etags/a-src/empty.zz.gz
   test/etags/ada-src/2ataspri.adb
   test/etags/ada-src/2ataspri.ads
   test/etags/ada-src/etags-test-for.ada
   test/etags/ada-src/waroquiers.ada
   test/etags/c-src/a/b/b.c
   test/etags/c-src/abbrev.c
   test/etags/c-src/c.c
   test/etags/c-src/dostorture.c
   test/etags/c-src/emacs/src/gmalloc.c
   test/etags/c-src/emacs/src/keyboard.c
   test/etags/c-src/emacs/src/lisp.h
   test/etags/c-src/emacs/src/regex.h
   test/etags/c-src/etags.c
   test/etags/c-src/exit.c
   test/etags/c-src/exit.strange_suffix
   test/etags/c-src/fail.c
   test/etags/c-src/getopt.h
   test/etags/c-src/h.h
   test/etags/c-src/machsyscalls.c
   test/etags/c-src/machsyscalls.h
   test/etags/c-src/sysdep.h
   test/etags/c-src/tab.c
   test/etags/c-src/torture.c
   test/etags/cp-src/MDiagArray2.h
   test/etags/cp-src/Range.h
   test/etags/cp-src/burton.cpp
   test/etags/cp-src/c.C
   test/etags/cp-src/clheir.cpp.gz
   test/etags/cp-src/clheir.hpp
   test/etags/cp-src/conway.cpp
   test/etags/cp-src/conway.hpp
   test/etags/cp-src/fail.C
   test/etags/cp-src/functions.cpp
   test/etags/cp-src/screen.cpp
   test/etags/cp-src/screen.hpp
   test/etags/cp-src/x.cc
   test/etags/el-src/TAGTEST.EL
   test/etags/el-src/emacs/lisp/progmodes/etags.el
   test/etags/erl-src/gs_dialog.erl
   test/etags/f-src/entry.for
   test/etags/f-src/entry.strange.gz
   test/etags/f-src/entry.strange_suffix
   test/etags/forth-src/test-forth.fth
   test/etags/html-src/algrthms.html
   test/etags/html-src/index.shtml
   test/etags/html-src/software.html
   test/etags/html-src/softwarelibero.html
   test/etags/lua-src/allegro.lua
   test/etags/objc-src/PackInsp.h
   test/etags/objc-src/PackInsp.m
   test/etags/objc-src/Subprocess.h
   test/etags/objc-src/Subprocess.m
   test/etags/objcpp-src/SimpleCalc.H
   test/etags/objcpp-src/SimpleCalc.M
   test/etags/pas-src/common.pas
   test/etags/perl-src/htlmify-cystic
   test/etags/perl-src/kai-test.pl
   test/etags/perl-src/yagrip.pl
   test/etags/php-src/lce_functions.php
   test/etags/php-src/ptest.php
   test/etags/php-src/sendmail.php
   test/etags/prol-src/natded.prolog
   test/etags/prol-src/ordsets.prolog
   test/etags/ps-src/rfc1245.ps
   test/etags/pyt-src/server.py
   test/etags/tex-src/gzip.texi
   test/etags/tex-src/nonewline.tex
   test/etags/tex-src/testenv.tex
   test/etags/tex-src/texinfo.tex
   test/etags/y-src/atest.y
   test/etags/y-src/cccp.c
   test/etags/y-src/cccp.y
   test/etags/y-src/parse.c
   test/etags/y-src/parse.y
   test/indent/css-mode.css
   test/indent/js-indent-init-dynamic.js
   test/indent/js-indent-init-t.js
   test/indent/js-jsx.js
   test/indent/js.js
   test/indent/latex-mode.tex
   test/indent/modula2.mod
   test/indent/nxml.xml
   test/indent/octave.m
   test/indent/pascal.pas
   test/indent/perl.perl
   test/indent/prolog.prolog
   test/indent/ps-mode.ps
   test/indent/ruby.rb
   test/indent/scheme.scm
   test/indent/scss-mode.scss
   test/indent/sgml-mode-attribute.html
   test/indent/shell.rc
   test/indent/shell.sh
   test/redisplay-testsuite.el
   test/rmailmm.el
   test/automated/buffer-tests.el
   test/automated/cmds-tests.el
   test/automated/data-tests.el
   test/automated/finalizer-tests.el
   test/automated/fns-tests.el
   test/automated/inotify-test.el
   test/automated/keymap-tests.el
   test/automated/print-tests.el
   test/automated/libxml-tests.el
   test/automated/zlib-tests.el: Files Moved.

9 years ago; Auto-commit of ChangeLog files.
Glenn Morris [Mon, 23 Nov 2015 19:47:19 +0000 (14:47 -0500)]
; Auto-commit of ChangeLog files.

9 years agoverilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
Wilson Snyder [Sat, 21 Nov 2015 19:29:38 +0000 (14:29 -0500)]
verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.

* verilog-mode.el (verilog-save-font-no-change-functions):
Commentary and fix pre-Emacs 21 behavior.

9 years ago; * admin/release-process: Mention the tracking bug for release of 25.2.
Xue Fuqiao [Fri, 20 Nov 2015 22:40:43 +0000 (06:40 +0800)]
; * admin/release-process: Mention the tracking bug for release of 25.2.

9 years agoRework file notifications, kqueue has problems with directory monitors
Michael Albinus [Fri, 20 Nov 2015 18:06:42 +0000 (18:06 +0000)]
Rework file notifications, kqueue has problems with directory monitors

* lisp/filenotify.el (file-notify-add-watch): Call the native
add-watch function on the file, not on the dir.

* src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
about already deleted entries.

* test/automated/auto-revert-tests.el
(auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
since this deletes the target file first.

* test/automated/file-notify-tests.el (file-notify--test-event-test):
Make stronger checks.
(file-notify-test01-add-watch, file-notify-test02-events)
(file-notify-test04-file-validity, file-notify-test05-dir-validity):
Rewrite in order to call file monitors but directory monitors.
(file-notify-test06-many-events): Ler rename work in both directions.

9 years agoUse obarray functions from obarray.
Przemysław Wojnowski [Sun, 8 Nov 2015 18:19:15 +0000 (19:19 +0100)]
Use obarray functions from obarray.

* lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
  abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
  clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
  delegate to obarray.el functions.
* lisp/loadup.el: load obarray before abbrev
* test/automated/abbrev-tests.el: new tests

9 years agoContinie with pending events
Michael Albinus [Thu, 19 Nov 2015 18:49:33 +0000 (18:49 +0000)]
Continie with pending events

* src/kqueue.c (pending_events): Remove global variable.
(kqueue_compare_dir_list): Create `write' event for not used
pending events.
(globals_of_kqueue): Remove initialization of pending_events.

9 years agoImprove loops in file-notify-test06-many-events
Michael Albinus [Thu, 19 Nov 2015 15:56:28 +0000 (16:56 +0100)]
Improve loops in file-notify-test06-many-events

* test/automated/file-notify-tests.el (file-notify-test06-many-events):
Use `read-event' pauses for the `write-file' loops; otherwise
events are lost in inotify and gfilenotify cases.

9 years agoHandle more complex rename operation in kqueue
Michael Albinus [Thu, 19 Nov 2015 09:58:08 +0000 (09:58 +0000)]
Handle more complex rename operation in kqueue

* src/kqueue.c (pending_events): New variable.
(kqueue_compare_dir_list): Handle more complex rename operation.
(globals_of_kqueue): Initialize pending_events.

* test/automated/file-notify-tests.el (file-notify-test06-many-events):
Adapt expected events in the `rename-file' case.
(file-notify-test06-many-events-remote): Declare.

9 years agoepa.el: Add option to replace original text
Christian Schwarzgruber [Sun, 15 Nov 2015 21:31:41 +0000 (22:31 +0100)]
epa.el: Add option to replace original text

* lisp/epa.el (epa-replace-original-text): New user option.
(Bug#21947)

Copyright-paperwork-exempt: yes

9 years agoAdd interactive seek command.
Mark Oteiza [Wed, 18 Nov 2015 18:46:24 +0000 (13:46 -0500)]
Add interactive seek command.

* lisp/mpc.el (mpc-cmd-seekcur): New function.
(mpc-seek-current): New command.
(mpc-mode-menu): Add entry for mpc-seek-current
(mpc-mode-map): Bind mpc-seek-current to "g"

9 years agoFix issue where a new tempfile was created every refresh
Mark Oteiza [Wed, 18 Nov 2015 18:42:40 +0000 (13:42 -0500)]
Fix issue where a new tempfile was created every refresh

* lisp/mpc.el (mpc-format): Leave dir as relative path

9 years agoNew test with a larger number of events.
Wolfgang Jenkner [Wed, 18 Nov 2015 18:24:27 +0000 (19:24 +0100)]
New test with a larger number of events.

* test/automated/file-notify-tests.el (file-notify--test-with-events):
Make timeout heuristically depend on the number of events.

(file-notify-test06-many-events): Use it for new test.

9 years ago* lisp/progmodes/cc-defs.el: Use with-silent-modifications
Stefan Monnier [Wed, 18 Nov 2015 16:51:11 +0000 (11:51 -0500)]
* lisp/progmodes/cc-defs.el: Use with-silent-modifications

(c-save-buffer-state): Use with-silent-modifications when available.
(c--macroexpand-all): Check macroexpand-all directly rather than
c--mapcan-status.

9 years ago* lisp/loadup.el: Set max-lisp-eval-depth here
Stefan Monnier [Wed, 18 Nov 2015 16:42:29 +0000 (11:42 -0500)]
* lisp/loadup.el: Set max-lisp-eval-depth here

* lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
(BYTE_COMPILE_FLAGS): Adjust accordingly.

9 years agoFurther fixes for kqueue.
Michael Albinus [Wed, 18 Nov 2015 13:47:25 +0000 (13:47 +0000)]
Further fixes for kqueue.

* lisp/filenotify.el (file-notify-callback): Raise also event if
directory name matches.
(file-notify-add-watch): Add `create' to the flags for `kqueue'.

* src/kqueue.c (kqueue_generate_event): Use watch_object as
argument instead of ident.  Remove callback argument.  Adapt
callees.  Check actions whether they are monitored flags.

* test/automated/file-notify-tests.el (file-notify--test-library):
New defun.
(file-notify-test00-availability, file-notify-test02-events)
(file-notify-test04-file-validity)
(file-notify-test05-dir-validity): Use it.
(file-notify-test02-events, file-notify-test04-file-validity): Add
`read-event' calls between different file actions, in order to
give the backends a chance to rais an event.  Needed especially
for kqueue.  In case of deleting a directory, there are two
`deleted' events.

9 years agoMinor fix to comment indentation and typo in last commit
João Távora [Tue, 17 Nov 2015 22:28:50 +0000 (22:28 +0000)]
Minor fix to comment indentation and typo in last commit

* linum.el (linum-update-window): Fix comment indentation and a
typo.

9 years agolinum-mode plays more nicely with other margin-setting extensions
João Távora [Tue, 17 Nov 2015 22:23:59 +0000 (22:23 +0000)]
linum-mode plays more nicely with other margin-setting extensions

linum.el will only modify the left margin if it needs to, and will
only reset the it back to 0 if it guesses that no-one has touched that
margin in the meantime.

As such, this is a more of a workaround than an actual fix, but fixes
the problems described in bug#20674 regarding the interaction with
modes such as darkroom-mode and olivetti-mode.

A similar fix was commited to nlinum.el in ELPA.git's
e7f5f549fbfb740b911fb7f33b42381ecece56d8

* linum.el (linum-delete-overlays): Restore margins more
criteriously.
(linum-update-window): Set margins more criteriously.

9 years agoCode cleanup of kqueue.c
Michael Albinus [Tue, 17 Nov 2015 15:46:29 +0000 (15:46 +0000)]
Code cleanup of kqueue.c

* src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
(kqueue_compare_dir_list): Do not loop when calling
directory_files_internal.  Remove checks for "." and "..", this is
done in kqueue_directory_listing now.
(Fkqueue_add_watch): Check for proper emacs_open flags.

9 years ago* lisp/image-mode.el: Support encrypted file
Daiki Ueno [Tue, 17 Nov 2015 02:27:51 +0000 (11:27 +0900)]
* lisp/image-mode.el: Support encrypted file

(image-toggle-display-image): Read content from the buffer instead
of the file, if the buffer holds a decrypted data.  (Bug#21870)

9 years agoDoc changes for kqueue
Michael Albinus [Mon, 16 Nov 2015 13:43:14 +0000 (14:43 +0100)]
Doc changes for kqueue

* doc/lispref/os.texi (File Notifications): Add kqueue as backend.
Fix some glitches in the example.