Skip to content
Browse files

Change inotify event flags (Closes #12).

There have been some issues with Guard in Linux, which all lead back
to the selection of the proper inotify flags. It seems that almost each
editors behaves different when it comes to save a file. @jeffutter
started to collect information about these events, which are now listed
in the Guard wiki:

https://github.com/guard/guard/wiki/Analysis-of-inotify-events-for-different-editors

If you miss your favorite editor, please add your analysis to the list.
  • Loading branch information...
1 parent 59b1ea2 commit d78ecb45fb784b08c3823984eb04f5448c5ffc1e @netzpirat netzpirat committed Jun 30, 2011
Showing with 4 additions and 1 deletion.
  1. +2 −0 CHANGELOG.md
  2. +2 −1 lib/guard/listeners/linux.rb
View
2 CHANGELOG.md
@@ -6,6 +6,7 @@
## Improvements
+- Issue [#98](https://github.com/guard/guard/issues/98): Multiple calls per watch event on linux with rb-inotify. ([@jeffutter][] & [@netzpirat][])
- Pull request [#94](https://github.com/guard/guard/pull/94): Show backtrace in terminal when a problem with a watch action occurs. ([@capotej][])
- Pull request [#88](https://github.com/guard/guard/pull/88): Write exception trace in the terminal when a supervised task fail. ([@mcmire][])
- Color in red the "ERROR:" flag when using `UI.error`. ([@rymai][])
@@ -170,6 +171,7 @@
[@gix]: https://github.com/gix
[@hashrocketeer]: https://github.com/hashrocketeer
[@indirect]: https://github.com/indirect
+[@jeffutter]: https://github.com/jeffutter
[@johnbintz]: https://github.com/johnbintz
[@jrsacks]: https://github.com/jrsacks
[@koshigoe]: https://github.com/koshigoe
View
3 lib/guard/listeners/linux.rb
@@ -47,7 +47,8 @@ def worker
end
def watch(directory)
- worker.watch(directory, :recursive, :modify, :create, :close_write) do |event|
+ # The event selection is based on https://github.com/guard/guard/wiki/Analysis-of-inotify-events-for-different-editors
+ worker.watch(directory, :recursive, :create, :move_self, :close_write) do |event|
unless event.name == "" # Event on root directory
@files << event.absolute_name
end

0 comments on commit d78ecb4

Please sign in to comment.
Something went wrong with that request. Please try again.