Hello:
Let me explain why it is that the netrw buffer is (normally) hidden.
Originally netrw was written to handle file transfers over the network
via ftp, ssh, etc, and it still does. The next major feature was to
have netrw display and work with remote directories; Bram asked me to
have it do the same thing for local directories. Often enough one does
not have password-free setups to do remote work, and so one can get
pestered by the resulting need to have to enter passwords for every
remote listing/file transfer/etc. To facilitate this, netrw supports
"fastbrowse" (see :he g:netrw_fastbrowse) which keeps netrw listings
hidden rather than destroying them; subsequent requests to re-list a
directory then just bring up the appropriate hidden file instead.
See :he 'bh' and, while in a netrw listing, try :set bh; you'll find
that netrw has bh=hide. You can use :bd! to force a real deletion of a
directory as opposed to just hiding it.
Alternatively, you can put let g:netrw_fastbrowse=0 and :bd will then
truly delete the netrw buffer -- if you have v171a (or later) of netrw.
It was already supposed to be deletable when g:netrw_fastbrowse was
zero, but s:NetrwSafeSetting() needed an update to force that "safe"
setting for netrw buffers (hence v171a).
You can get v171a from my website:
http://www.drchip.org/astronaut/vim/index.html#NETRW .
Regards,
Chip Campbell