When I eval 

(file-notify-add-watch
 "/tmp/foo" '(change attribute-change) 'my-notify-callback)

I see something like

38390812 (#o222346034, #x249cc1c)

in the *Messages* buffer and even the `file-notify-descriptors` hash is updated.

But the callback fn is never executed.

On Wed, Apr 29, 2015 at 3:47 PM Kaushal <kaushal.modi@gmail.com> wrote:
Thanks for the pointer Michael.

I am puzzled. Of course filenotify does not work for me (it used to work; I wrote this elisp snippet that used this feature: http://emacs.stackexchange.com/a/2566/115).

The value of `file-notify--library` is `'gfilenotify` but the feature doesn't work for me. Any pointers?

The test code evalling did not trigger the `my-notify-callback` function and so no "Event .." messages in my *Messages* buffer.

On Wed, Apr 29, 2015 at 3:26 PM Michael Albinus <michael.albinus@gmx.de> wrote:
Hi,

first of all, it might be interesting to know whether file notifications
do work at all on your system. What is the value of `file-notify--library'?
I suppose it is 'gfilenotify.

Could you, please, perform the following forms then:

(require 'filenotify)
(defun my-notify-callback (event)
  (message "Event %S" event))
(file-notify-add-watch
  "/tmp" '(change attribute-change) 'my-notify-callback)
(write-region "foo" nil "/tmp/foo")
(write-region "bla" nil "/tmp/foo")
(set-file-modes "/tmp/foo" (default-file-modes))

Tell, whether you see related messages in the *Messages* buffer.

Best regards, Michael.