diff --git a/lib/guard/listeners/linux.rb b/lib/guard/listeners/linux.rb
index <HASH>..<HASH> 100644
--- a/lib/guard/listeners/linux.rb
+++ b/lib/guard/listeners/linux.rb
@@ -47,7 +47,7 @@ module Guard
     end
 
     def watch(directory)
-      worker.watch(directory, :recursive, :modify, :create) do |event|
+      worker.watch(directory, :recursive, :modify, :create, :close_write) do |event|
         unless event.name == "" # Event on root directory
           @files << event.absolute_name
         end
diff --git a/spec/guard/listeners/linux_spec.rb b/spec/guard/listeners/linux_spec.rb
index <HASH>..<HASH> 100644
--- a/spec/guard/listeners/linux_spec.rb
+++ b/spec/guard/listeners/linux_spec.rb
@@ -50,6 +50,17 @@ describe Guard::Linux do
 
     # Fun fact: File.touch seems not to be enough on Linux to trigger a modify event
 
+    it "catches a write_close event" do
+      @listener = described_class.new
+      record_results
+      file = @fixture_path.join("folder1/file1.txt")
+      File.exists?(file).should be_true
+      start
+      File.open(file, 'r+').close
+      stop
+      results.should =~ ['spec/fixtures/folder1/file1.txt']
+    end
+
     it "doesn't process a change when it is stopped" do
       @listener = described_class.new
       record_results
Improve INotify support on linux (fixes #<I> #<I>)

Improve usage with several text editors that writes to temporal
files and then move over the original filename instead of write
files directly. Tested with GEdit, Nano, vim (with 'set backup'
and 'set nobackup') and emacs.