Save in archives

Currently in DOpus 11 and older version, when DOpus is set to be the default handler of zip and other archive files, if you open a file directly in the archive without extracting it, all the changes you made to that file will lost even if you save it (the saved file is actually in the temp folder).

Can the next version of DOpus 11 give a better solution in such situation that treat the archive files like "actual folders" that support directly modify/edit the files in the archives and keep the changes.

Basically a zip-file is a compressed storage to archive or protect files from changes or to send them, and not designed for editing (except deleting and adding). Also I believe that it must be supported by the plugin itself.

But if you want to treat them like "actual folders", why archiving them?

I also support this feature request (if possible, I suspect it's tricky to implement this properly in Opus to cover all cases).

For that you could (and should) set archive to read-only. Users have their own reasons why they prefer to use archive instead of folder, such as (but not limited to); ability to set archive ("folder") password, continuous data stream when writing to slow devices (no small-file overhead when you have like 10000s of small files, think SVN stuff), smaller data size (especially on non-NTFS drives without NTFS compression support such as exFAT USB sticks, also thus reducing amount of flash writes) etc.

For storing lots of files you could also use images (iso) or, if you want password-protection, truecrypt. Also I'm not sure if that feature could requiere a recompression of the complete archive.

But I don't totally disagree, because I always miss that option when working on the xml of my DO-iconsets, which is included in the dis-file (=zip). But as said I believe that is a plugin-thing (so not GP) and Explorer doesn't support that either.

I also frequently miss the ability to edit a file (eg in notepad) opened from zip archive. I would suppose the file gets saved in the archive after it's changed. WinRAR does that as far as I can remember (but not sure if it applies to zip files).

[quote="Sasa"]Basically a zip-file is a compressed storage to archive or protect files from changes or to send them, and not designed for editing (except deleting and adding). Also I believe that it must be supported by the plugin itself.

But if you want to treat them like "actual folders", why archiving them?[/quote]

Thanks for replying.

  1. Yes, it's not designed to edit the files in the archives, but supporting it will be more user-friendly.
  2. case 1: you downloaded a 600MB zip file, and need to edit one file in that archive and copy to removable devices.
    case 2: after you archived a huge file with one hour, you find that there is still some files to update, to re-archive?

Since DOpus can treat archives as "virtual folder", why not expect their behaviors like "actual folder"?

I'm afraid that changing zip file (mentioned in case 2) might take another hour to save changes to the archive.
Specifically, I can't see any reason for it to be quicker than deleting the file you want to change from the archive and adding it back.

The only advantages in implementing ability to edit archives are:

  1. it's quicker as it need less clicks than unpacking (whole archive or just files you want to change) and adding files to the archive
  2. it does not require temporary folders (or at least not one that user is aware of) to unpack and repack again
  3. it's possible to edit files in archive using eg. notepad and save it to the archive with simple Ctrl+S

@yangcl: Again: Support may depend on the plugin, not by GP!

The zip code is all ours, not a plugin.

We do this for FTP but it has a lot of trade offs as there isn't a good, general way to know when whatever program you are using as an editor is done making changes.

We don't have any plans right now to do the same for zip files because the trade-offs make less sense there. And you cannot make changes to two files in a zip at once, which makes things like monitoring any edited file forever and adding it back when changed (as is an option for FTP) probematic.

Note that some tools can accept paths to files inside zip files (e.g. Beyond Compare for diffing), so if you have a text editor or whatever that can edit files directly inside a zip then it's easy to get Opus to pass it the path, and it can handle the rest.

If your editor can't do that (and I don't know if many can as it's never something I've looked for) then the answer is simply copying files out, editing the copy, then copying them back in. If you end up needing to do that a lot, I'd look at the process that's making you do that. e.g. In the Opus Icon Set example earlier in this thread, you can have unpacked icon sets as well, with all the files in a folder, which is much easier while developing the set; you only need to turn it into a zip file when you are finished and want to share it with other people.

Ok, I believed it was external, maybe mixed up with rar or something else.

Good to know, thanks.

My opinion is still that archives are used to store files, not for editing them each day (as the word "archive" says). And of course for a temporarily faster/easier online exchange.


same topic:
Edit files inside archive?

I support this feature request, too. Zip-archives are used today not only as a "simple" storage of files. They are often used as containers for programming languages (e. g. Java .jar, node-webkit .nw) or in apps (like Firefox add-ons .xpi and Directory Opus itself). So for the entire programming community that feature would not only simplify life :thumbsup:, it would prolong it :laughing:!

In that context usefull:
D010: Automatically creating an archive like an JAR

Many thanks and greetings

I personally sometimes use ZIP files if I don't update a set of files very frequently and don't want them to be indexed by Search Everything (which I use for searching for files locally). It would be nice to edit those archives on-the-fly.