emacs-async icon indicating copy to clipboard operation
emacs-async copied to clipboard

Dired async should have a progress bar for remote operations

Open monsanto opened this issue 13 years ago • 12 comments
trafficstars

See title. I think Emacs wget does a great job of this (very hard to find elisp, archived here https://github.com/monsanto/wget). A simple way to do this would be to add native commands for remote copying using scp, and associate the output of that command with a buffer.

monsanto avatar Jul 13 '12 04:07 monsanto

Did you notice that dired items get highlighted, and the highlights disappear as they are completed?

I'm afraid that the nature of Emacs makes such progress bars very hard to achieve. The subordinate Emacs is completely engaged running `copy-file', and so it can't send any feedback to the controlling Emacs.

jwiegley avatar Jul 13 '12 05:07 jwiegley

Re highlighted items: yes, but that doesn't mean much when pulling a 60mb log from a server (or something)

Right for copy-file, but do you not think the scp method has merits?

monsanto avatar Jul 13 '12 22:07 monsanto

I suppose that could be done... if we just shuttle all subprocess text from scp back to the parent Emacs, and it inserts it into some kind of status buffer, it should all be pretty transparent.

jwiegley avatar Jul 13 '12 22:07 jwiegley

We have no progress bar but a message in mode-line showing how many jobs are still running, think it is enough, closing.

thierryvolpiatto avatar Sep 29 '14 16:09 thierryvolpiatto

Yes. long time ago I also think about this. Maybe using spinner. But I don't have any clue if this doable in dired.

For now I use dired in mix with rsync.

azzamsa avatar Oct 11 '18 21:10 azzamsa

At least if it has some percentage information, that would be very nice.

Yevgnen avatar Mar 21 '19 01:03 Yevgnen

It would be nice indeed, but I don't know how to do it reliably. I have a branch that provide a progress reporter with percentage in the mode-line, but it works only for local files, I think I use a wrong approach by checking the amount transferred on destination, perhaps somebody can enlighten me on how to proceed. The best would be to get the speed transfer from kernel (/proc/?) every n seconds and deduce the percentage with this information (on other platforms ???). I can push the branch here if somebody interested.

thierryvolpiatto avatar Mar 23 '19 07:03 thierryvolpiatto

Done, pushed as progress_reporter.

Capture d’écran_2019-03-23_08-25-06 Capture d’écran_2019-03-23_08-25-23

thierryvolpiatto avatar Mar 23 '19 07:03 thierryvolpiatto

@thierryvolpiatto, you said "Done, pushed as progress_reporter.". Can you share your code? I cannot find any code about this. Thx.

fu123456 avatar Jan 31 '20 18:01 fu123456

https://github.com/jwiegley/emacs-async/tree/progress_reporter

Not sure if it is still working, was working more or less but was buggy anyway.

thierryvolpiatto avatar Jan 31 '20 18:01 thierryvolpiatto

The link you provided is dead. Is it available somewhere else ?

dinojr avatar Feb 18 '23 11:02 dinojr

Yes, I think I definitely lost this branch.

thierryvolpiatto avatar Feb 18 '23 15:02 thierryvolpiatto