Fuco1 / dired-hacks

Collection of useful dired additions
GNU General Public License v3.0
873 stars 77 forks source link

dired-subtree buffer does not refresh after executing an action #176

Open mtreca opened 3 years ago

mtreca commented 3 years ago

The title pretty much says it all. When executing an action on a subtree in a dired buffer (such as moving or deleting files), these files are still displayed because the buffer is not refreshed. This does not happen on non-subtreed dired buffers. I tried to investigate things a little and I would guess this would have something to do with the dired-after-readin-hook not activating.

Fuco1 commented 3 years ago

I think this is actually configurable in regular dired. My suspicion is that we do not respect this setting somewhere, as you say.

If you hit g, does it reload properly? If so that might be a simple solution. We could also try to detect where the operation happened (ie in a subtree) but that seems very unlikely to work reliably.

mtreca commented 3 years ago

@Fuco1 Thanks for the reply! Yes regular dired refreshes buffers by default.

Hitting g does reload the buffer properly, so the fix should be simple indeed (maybe adding a missing hook?)

mtreca commented 3 years ago

Additionally, I am noticing that refreshing a dired-subtree buffer using g overrides dired-omit-mode and shows normally hidden files (they are not shown when the subtree buffer is opened for the first time). I am guessing these two issues are probably linked.