Skip to content

ozone10/7zip-Dark7zip

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dark7zip

7z Build status Latest release Total downloads License PayPal.me ko-fi.com

Dark7zip is project to experiment with dark mode via darkmodelib library for 7-Zip and its fork 7-Zip-zstd.
It is mainly for Windows 10 builds 19044+ and Windows 11. Some controls might, might not use dark/custom colors on older OS.


Gallery


Installation

Replace 7z original files (e.g. C:\Program Files\7-Zip\) with files from downloaded zip file.

  • 7zFM.exe - file manager, "main exe"
  • 7zG.exe - mainly extraction, compression dialogs
  • 7z.sfx- optional, file needed for creating self-extracting archives
  • 7zDark.ini - optional, more information below

Important

Ensure that you have downloaded the correct version. If the zip file name contains "zstd" (e.g. 7z-zstd-v25.01-v1.5.7-R1-v0.12.0-x64.zip), it is intended for the zstd fork. If you are using the wrong version, a message box titled "7‑Zip ZS" will appear when attempting to extract the archive.

Note

Currently files are released only for x64 and arm64 platforms. You can get files for x86 platform for original 7-Zip and testing artifacts from Github Actions. Ensure that you get correct version - main for original 7-Zip, 7z-zstd for 7-Zip-zstd.

Config

7zDark.ini is configuration file to allow to set custom colors and other visual features. It should be in same folder as 7zFM.exe and 7zG.exe.

Without 7zDark.ini 7-Zip still offers limited configuration via GUI interface. In Tools->Options...->Settings->Color Mode (dark, light, system). 7zDark.ini has higher priority and will disable GUI setting.

  • [main]

    • mode - determine which sections color "key=value" pairs will be used and theming of title bar, buttons, scrollbars, and tooltips
      • 0 - use light mode
      • 1 - use dark mode, default value in system with dark mode enabled
      • 2 - follow system settings, use light mode in system with light mode enabled
      • 3 - use classic style, default value in system with light mode enabled, disable almost every custom GUI styles and colors
      • 4 - follow system settings, use classic style in system with light mode enabled
  • [dark]

    • tone - set default colors for [dark.colors] sections, there are no tones for light mode
      • 0 - black, default value
      • 1 - red
      • 2 - green
      • 3 - blue
      • 4 - purple
      • 5 - cyan
      • 6 - olive
    • micaExtend - apply Mica material on all window/dialog, experimental, only for "dark" mode
      • 0 - apply Mica material only on title bar, default value
      • 1 - extend Mica material on all window/dialog

Important

micaExtend=1 is only used with [main] mode=1 and with mica with other valid values than 0. micaExtend=1 should also be used with HDR and ACM (Auto Color Management) off. Due to Windows bug using micaExtend=1 can cause visual glitches, with HDR/ACM visual glitches are more severe (e.g. invisible controls).
It is also recommended when using with mica=1 to turn off Settings -> Personalization > Colors -> "Show accent color on title bars and window borders" setting.

  • [dark]/[light]
    • roundCorner - on Windows 11 specifies rounded corners preference
      • 0 - let the system decide when to round window corners, default value
      • 1 - never round window corners
      • 2 - round the corners, if appropriate
      • 3 - round the corners if appropriate, with a small radius
    • borderColor - on Windows 11 specifies the color of the window border, color is in RGB hex format - RRGGBB
      • FFFFFF - use default system color, special value, default value
    • mica - apply Mica material on title bar, requires Windows 11 22H2 build 22621
      • 0 - let OS automatically decide the use of Mica material, default value
      • 1 - do not use Mica material
      • 2 - apply Mica material
      • 3 - apply "acrylic" effect
      • 4 - apply Mica Alt material
    • colorizeTitleBar - on Windows 11 applies same colors as dialog background and static text on title bar, with micaExtend=1 this option will be ignored
      • 0 - Use system colors (default)
      • 1 - Use custom colors (backgroundDlg and text)

Values for custom colors are in RGB hex format - RRGGBB.

  • [dark.colors]/[light.colors]

    • background - for some controls (status bar, ...)
    • backgroundCtrl - mainly for controls with some input
    • backgroundHot - for hot item
    • backgroundDlg - for dialog and some controls
    • text - for most text
    • textItem - for some controls
    • textDisabled - for disabled controls
    • edge - for border
    • edgeHot - for hot border
    • edgeDisabled - for disabled border
  • [dark.colors.view]/[light.colors.view] - for listview and treeview

    • backgroundView
    • textView
    • gridlines - color for listview grid lines, when View -> Details is used and Tools -> Options... -> Settings tab -> Show grid lines is checked
    • backgroundHeader
    • backgroundHotHeader
    • textHeader
    • edgeHeader

All options are optional. You can define only "[section]" and "key=value" you want to be applied.

Tip

Renaming section will disable all "key=value" pairs of that section and default values will be used.

Examples:

  • full config
[main]
mode = 1

[dark]
tone = 0
roundCorner = 0
borderColor = "FFFFFF"
mica = 0
micaExtend = 0
colorizeTitleBar = 0

[dark.colors]
background =            "202020"
backgroundCtrl =        "383838"
backgroundHot =         "454545"
backgroundDlg =         "202020"
text =                  "E0E0E0"
textItem =              "C0C0C0"
textDisabled =          "808080"
edge =                  "646464"
edgeHot =               "9B9B9B"
edgeDisabled =          "484848"

[dark.colors.view]
backgroundView =        "3F3F3F"
textView =              "DCDCDC"
gridlines =             "646464"
backgroundHeader =      "202020"
backgroundHotHeader =   "454545"
textHeader =            "C0C0C0"
edgeHeader =            "646464"

[light]
roundCorner = 0
borderColor = "FFFFFF"
mica = 0
colorizeTitleBar = 0

[light.colors]
background =            "F0F0F0"
backgroundCtrl =        "FFFFFF"
backgroundHot =         "C0DCF3"
backgroundDlg =         "F0F0F0"
text =                  "000000"
textItem =              "000000"
textDisabled =          "6D6D6D"
edge =                  "8D8D8D"
edgeHot =               "0078D4"
edgeDisabled =          "6D6D6D"

[light.colors.view]
backgroundView =        "FFFFFF"
textView =              "000000"
gridlines =             "F0F0F0"
backgroundHeader =      "FFFFFF"
backgroundHotHeader =   "D9EBF9"
textHeader =            "000000"
edgeHeader =            "E5E5E5"
  • only views, with defaults: [main] mode=1, and [dark] tone=0
[dark.colors.view]
backgroundView =        "112435"
textView =              "C3BE98"
gridlines =             "4F5F5F"

7-Zip-zstd

7-Zip-zstd is popular 7-Zip fork which contains additional compression algorithms such as Zstandard and Brotli. Source code for dark mode for it is in 7z-zstd branch.

For more information about 7-Zip-zstd fork check 7-Zip-zstd.

License

The license for use and distribution is the same as that of the original 7-Zip.
Additionally, code related to dark mode in DarkMode folder is licensed under the MIT License or the Mozilla Public License, version 2.0.
MPL-2.0
MIT

For details on the 7-Zip license, see the DOC folder.
License.txt
readme.txt

7-Zip on GitHub

7-Zip website: 7-zip.org

About

Dark mode for 7-Zip and 7-Zip-zstd

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

No packages published

Languages

  • C++ 79.5%
  • C 17.4%
  • Assembly 1.7%
  • Makefile 1.4%