-*
-!*.pm
-!*.pl
-!*.xs
-!*.t
-!*.h
-!*/t/*
-!*/lib/*
+# ignore generated .c files, and other module build traces
+*.c
+*.bs
+blib
+pm_to_blib
+Makefile
+ppport.h
+!/Devel-PPPort/module2.c
+!/Devel-PPPort/module3.c
+!/File-Glob/bsd_glob.c
+!/XS-APItest/core.c
+!/XS-APItest/exception.c
+!/XS-APItest/notcore.c
+!/XS-Typemap/stdio.c
+/Archive-Extract/Makefile.PL
+/Attribute-Handlers/Makefile.PL
+/attributes/Makefile.PL
+/autodie/Makefile.PL
+/AutoLoader/Makefile.PL
+/autouse/Makefile.PL
+/base/Makefile.PL
+/bignum/Makefile.PL
+/B-Debug/Makefile.PL
+/B-Deparse/Makefile.PL
+/B-Lint/Makefile.PL
+/CGI/Makefile.PL
+/constant/Makefile.PL
+/Class-ISA/Makefile.PL
+/CPANPLUS-Dist-Build/Makefile.PL
+/Data-Dumper/Makefile.PL
+/Digest/Makefile.PL
+/Devel-SelfStubber/Makefile.PL
+/encoding-warnings/Makefile.PL
+/ExtUtils-CBuilder/Makefile.PL
+/ExtUtils-Command/Makefile.PL
+/ExtUtils-Constant/Makefile.PL
+/ExtUtils-Install/Makefile.PL
+/ExtUtils-Manifest/Makefile.PL
+/ExtUtils-MakeMaker/Makefile.PL
+/ExtUtils-ParseXS/Makefile.PL
+/FileCache/Makefile.PL
+/File-Fetch/Makefile.PL
+/File-Path/Makefile.PL
+/File-Temp/Makefile.PL
+/Filter-Simple/Makefile.PL
+/Filter-Util-Call/Makefile.PL
+/Hash-Util-FieldHash/Makefile.PL
+/I18N-LangTags/Makefile.PL
+/if/Makefile.PL
+/IO-Zlib/Makefile.PL
+/IPC-Cmd/Makefile.PL
+/IPC-Open2/Makefile.PL
+/IPC-Open3/Makefile.PL
+/Locale-Maketext/Makefile.PL
+/Locale-Maketext-Simple/Makefile.PL
+/Log-Message/Makefile.PL
+/Log-Message-Simple/Makefile.PL
+/Math-BigInt/Makefile.PL
+/Math-BigInt-FastCalc/Makefile.PL
+/Math-BigRat/Makefile.PL
+/Math-Complex/Makefile.PL
+/Memoize/Makefile.PL
+/Module-Build/Makefile.PL
+/Module-Load/Makefile.PL
+/Module-Load-Conditional/Makefile.PL
+/Module-Loaded/Makefile.PL
+/mro/Makefile.PL
+/Net-Ping/Makefile.PL
+/NEXT/Makefile.PL
+/Object-Accessor/Makefile.PL
+/Opcode/Makefile.PL
+/Package-Constants/Makefile.PL
+/Params-Check/Makefile.PL
+/parent/Makefile.PL
+/Parse-CPAN-Meta/Makefile.PL
+/PerlIO-encoding/Makefile.PL
+/PerlIO-scalar/Makefile.PL
+/PerlIO-via/Makefile.PL
+/PerlIO-via-QuotedPrint/Makefile.PL
+/Pod-Escapes/Makefile.PL
+/Pod-LaTeX/Makefile.PL
+/Pod-Parser/Makefile.PL
+/Pod-Perldoc/Makefile.PL
+/Pod-Plainer/Makefile.PL
+/Pod-Simple/Makefile.PL
+/SelfLoader/Makefile.PL
+/Shell/Makefile.PL
+/Switch/Makefile.PL
+/Sys-Hostname/Makefile.PL
+/Term-ANSIColor/Makefile.PL
+/Term-Cap/Makefile.PL
+/Term-UI/Makefile.PL
+/Test-Harness/Makefile.PL
+/Test/Makefile.PL
+/Text-Balanced/Makefile.PL
+/Text-ParseWords/Makefile.PL
+/Text-Soundex/Makefile.PL
+/Text-Tabs/Makefile.PL
+/Thread-Queue/Makefile.PL
+/Thread-Semaphore/Makefile.PL
+/Tie-File/Makefile.PL
+/Tie-Memoize/Makefile.PL
+/Tie-RefHash/Makefile.PL
+/Time-Local/Makefile.PL
+/Unicode-Collate/Makefile.PL
+# ignore all vim swap files but the one bundled in Module::Pluggable for testing
+*.swp
+!/Module-Pluggable/t/lib/EditorJunk/Plugin/Bar.pm.swp