Summary
7-ade is an archive expander for Microsoft Windows built around 7-Zip. 7-ade provides double-click expansion of archives in the manner of the venerable StuffIt Expander for Macintosh:
- The contents of the archive are expanded upon double-click into the folder containing the archive
- If the archive contains two or more items at its root, an enclosing folder is created using the name of the archive
- Tarballs are extracted in full: the compressed archive is expanded into your temporary directory first, and the resulting tar archive is expanded back to the directory containing the tarball
7-ade examines the archive in question, decides on an appropriate course of action for expansion, and makes a request of the 7-Zip graphical expansion utility (7zG.exe) to expand the archive.
The following additional features are provided:
- Simple rule definitions to apply different expansion behaviours dependent on filename and pathname
- Replacement file type icons for the most common archive types when file types are associated with 7-ade
Tarball file extensions recognised at the time of writing are: .tar.gz and .tgz (gzip), .tar.bzip2, .tar.bz2, .tar.bz and .tar.bz2 (bzip/bzip2), and .txz and .tar.xz (xz); this is based on 7-Zip 9.20’s list of potential file associations.
7-Zip needs to be installed on the computer for 7-ade to function. If 7-Zip is already installed before installing 7-ade, then “View in 7-Zip” is added to the context menu of each archive type for convenience.
Getting started
This part is simple. Once the program is installed, simply double-click archives. Windows 8 and 10 will prompt you to switch over to 7-ade on a per-file-type basis. Windows 7 users need to associate the file types manually; it should be possible using the Set your default programs control panel, but Windows 10, 7-ade does not appear.
The program should work in Windows XP, but no provisions are made for XP’s file types system.
Configuration
Most users will simply use the program as-is: double-click archives to expand them. Chances are you can simply stop reading here. However, I have a particular use case (backup reports delivered as HTML files in zip files) where I wanted files of a particular name, found in a particular location (Outlook’s temporary directory) to be expanded into a specific directory with overwrite enabled. As such, I chose to make this facility generic in case someone else finds it useful. With time, this aspect of the program may be developed further as needs arise.
7-ade is configured using %APPDATA%\Telcontar\7-ade.ini. This file is used if it exists, and is not required. The section and parameter names are not case sensitive. If non-ASCII text is to be used in the file, then it must be in UTF-16 format (not UTF-8) due to how Windows reads INI files.
Example contents are as follows:
[7-ade] Rules=foo,bar [foo] Name begins=foo Path is=C:\Users\McFoo\Downloads Overwrite=yes [bar] Name begins=megacorp-batch- Target path=\\BAZ\megacorp\batches\
Field types
- string
- text; for non-ASCII values, the whole file must be UTF-16 format
- boolean
- “1”, “true” and “yes” are considered true, regardless of case; all other values are considered false
[7-ade] section
The [7-ade] section defines global settings for the program.
- Rules
- string: comma separated list of INI section names, in order of rule priority
Rule definitions
Rules allow the behaviour of 7-ade and 7-Zip to be made conditional upon the name and path of archives. One or more rules can be defined; 7-ade examines the applicability of rules to an archive in the order that the rules are listed in the Rules parameter of the [7-ade] section. The first rule to match is applied, and the remainder of the rules are ignored even if they would have matched. If no rules match, and a [Defaults] section exists, then any actions in this section are applied.
Filter parameters
- Name is
- string: The filename of the archive (including extension) equals this text
- Name begins
- string: The filename of the archive (including extension) begins with this text
- Name ends
- string: The filename of the archive (including extension) ends with this text
- Name contains
- string: The filename of the archive (including extension) contains this text
- Path is
- string: The path of the folder containing the archive equals this text
- Path begins
- string: The path of the folder containing the archive begins with this text
- Path contains
- string: The path of the folder containing the archive contains this text
Actions
- Overwrite
- boolean: instruct 7-Zip to overwrite automatically; also, if the enclosing folder for expansion exists, it will be re-used
- Target path
- string: target location to expand the archive; if an enclosing folder is needed, it will be placed inside this location
[Defaults] section
The [Defaults] section is used to define the behaviour of the program if no rules match. Only the action parameters from rule definitions are meaningful here. This is probably not very useful yet, and may never be, but you get it anyway.
Development
7-ade is an open source application programmed in AutoHotkey. It requires the revised ahk2exe for build directives. The installer is built using Inno Setup. The readme is in pseudo-HTML 5 format, converted to PDF for tidiness using the Microsoft PDF printer (which is why none of the links work — this needs a rethink). All graphics were created using Inkscape.
A copy of all the development files is available for download.
Licence
7-ade is copyright 2016 Daniel Beardsmore. The 7-ade application (“program”) and source code are made available under the zlib license, the terms of which are included in a separate document. The program may be used without restriction free of charge.
Name
The name of my original 7-Zip wrapper (written in Perl and supporting only zip files) was “7-Up”. The name change to “7-ade” allowed the program to have a unique identity, and to allow me to restart the version numbering from 1.0, as 7-ade is the program that 7-Up was always meant to be but never was.
“7-ade” can be thought of as either “Sevenade” (an own-brand soft drink) or as “Seven-aid” (artificial sweetener for 7-Zip).