Skip to content

Twilight - new dark theme #2694

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Mar 25, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
162 changes: 162 additions & 0 deletions ColorSchemes/Twilight.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
; Twilight Color Scheme
; A dark, monochrome-based color scheme for WinMerge. Nothing to do with sparkly vampires.
; License: https://mit-license.org/

[WinMerge]

;------------------------------------------------------------
; Custom Colors
Custom Colors/0=0x763858 ; selected difference - deleted
Custom Colors/1=0xeaeaea ; selected difference - background
Custom Colors/2=0x293d37 ; text color
Custom Colors/3=0x423607 ; ??????
Custom Colors/4=0x18184b ; ??????
Custom Colors/5=0x25653d ; ??????
Custom Colors/6=0xd69c56 ; ??????
Custom Colors/7=0x55996a ; ??????
Custom Colors/8=0x2c170a ; ??????
Custom Colors/9=0x110a04 ; ??????
Custom Colors/10=0x2a5a4b ; ??????
Custom Colors/11=0x6f1313 ; ??????
Custom Colors/12=0x13136f ; ??????
Custom Colors/13=0x416036 ; ??????
Custom Colors/14=0x0000cc ; ??????
Custom Colors/15=0x7891ce ; ??????

;------------------------------------------------------------
; Default Font Normal (0) or Bold (1)
DefaultSyntaxColors/Bold00=0 ; normal text
DefaultSyntaxColors/Bold01=0 ; whitepsace page background
DefaultSyntaxColors/Bold02=0 ; regular text
DefaultSyntaxColors/Bold03=0 ; text color
DefaultSyntaxColors/Bold04=0 ; line numbers background
DefaultSyntaxColors/Bold05=0 ; selected text background
DefaultSyntaxColors/Bold06=0 ; selected text color
DefaultSyntaxColors/Bold07=0 ; keywords
DefaultSyntaxColors/Bold08=0 ; fucntion names
DefaultSyntaxColors/Bold09=0 ; comments
DefaultSyntaxColors/Bold10=0 ; numbers
DefaultSyntaxColors/Bold11=0 ; operators
DefaultSyntaxColors/Bold12=0 ; strings
DefaultSyntaxColors/Bold13=0 ; preprocessor
DefaultSyntaxColors/Bold14=0 ; ??????
DefaultSyntaxColors/Bold15=0 ; ??????
DefaultSyntaxColors/Bold16=0 ; ??????
DefaultSyntaxColors/Bold17=0 ; ??????
DefaultSyntaxColors/Bold18=0 ; ??????
DefaultSyntaxColors/Bold19=0 ; ??????
DefaultSyntaxColors/Bold20=0 ; User 1
DefaultSyntaxColors/Bold21=0 ; User 2
DefaultSyntaxColors/Bold22=0 ; search marker
DefaultSyntaxColors/Bold23=0 ; user defined marker1
DefaultSyntaxColors/Bold24=0 ; user defined marker2
DefaultSyntaxColors/Bold25=0 ; user defined marker3

;------------------------------------------------------------
; Default Syntax Colors
DefaultSyntaxColors/Color00=0x82e31a ; ?????? #82e31a #1ae382
DefaultSyntaxColors/Color01=0x3c3c3c ; whitespace background
DefaultSyntaxColors/Color02=0x3c3c3c ; regular text background
DefaultSyntaxColors/Color03=0xdedede ; text color
DefaultSyntaxColors/Color04=0x2e2e2e ; margin line numbers background
DefaultSyntaxColors/Color05=0x458b8b ; selected text background
DefaultSyntaxColors/Color06=0xe9e9e9 ; selected text color
DefaultSyntaxColors/Color07=0xe4bd8d ; keywords
DefaultSyntaxColors/Color08=0xe2b6ed ; function names
DefaultSyntaxColors/Color09=0xc0c0c0 ; comments
DefaultSyntaxColors/Color10=0xe9e783 ; numbers
DefaultSyntaxColors/Color11=0x98e7e9 ; operators
DefaultSyntaxColors/Color12=0xffffff ; strings
DefaultSyntaxColors/Color13=0x96e492 ; preprocessor

; Word differences unused? https://github.com/WinMerge/winmerge/issues/2069#issuecomment-1811505519 #7e4242
DefaultSyntaxColors/Color14=0xff0000 ; ??????
DefaultSyntaxColors/Color15=0xff0020 ; ??????
DefaultSyntaxColors/Color16=0xff0040 ; ??????
DefaultSyntaxColors/Color17=0xff0060 ; ??????
DefaultSyntaxColors/Color18=0xff0080 ; ??????
DefaultSyntaxColors/Color19=0xff0099 ; ??????

DefaultSyntaxColors/Color20=0x8fbae9 ; User 1
DefaultSyntaxColors/Color21=0xc8dff2 ; User 2
DefaultSyntaxColors/Color22=0x0057ae ; search marker
DefaultSyntaxColors/Color23=0xdb8ed9 ; user defined marker1
DefaultSyntaxColors/Color24=0xc23dbf ; user defined marker2
DefaultSyntaxColors/Color25=0x8b2c89 ; user defined marker3
DefaultSyntaxColors/Values=0x00001a ; default syntax text color???

;------------------------------------------------------------
; Alphabetised Settings
Settings/DefaultTextColoring=0 ; default text coloring

Settings/DifferenceColor=0x4e4e4e ; difference background color
Settings/DifferenceDeletedColor=0x292954 ; difference deleted background color
Settings/DifferenceTextColor=0xf4f4f4 ; difference text color

Settings/DirItemDiffColor=0x808080 ; different item background color
Settings/DirItemDiffTextColor=0xeaeaea ; different item text color
Settings/DirItemEqualColor=0x363636 ; equal item background color
Settings/DirItemEqualTextColor=0xeaeaea ; equal item text color
Settings/DirItemFilteredColor=0x7d5500 ; filtered item background color
Settings/DirItemFilteredTextColor=0xeaeaea ; filtered item text color
Settings/DirItemNotExistAllColor=0x404080 ; non-existent item background color
Settings/DirItemNotExistAllTextColor=0xeaeaea ; non-existent item text color

Settings/DirMarginColor=0x282828 ; directory margin background color

Settings/MovedBlockColor=0x75481c ; moved block background color
Settings/MovedBlockDeletedColor=0x4d2f11 ; moved block deleted background color
Settings/MovedBlockTextColor=0xf4f4f4 ; moved block text color

Settings/SelectedDifferenceColor=0x747474 ; selected difference background color
Settings/SelectedDifferenceDeletedColor=0x404080 ; selected difference deleted background color
Settings/SelectedDifferenceTextColor=0xf4f4f4 ; selected difference text color

Settings/SelectedMovedBlockColor=0xa96827 ; selected moved block background color
Settings/SelectedMovedBlockDeletedColor=0x72461b ; selected moved block deleted background color
Settings/SelectedMovedBlockTextColor=0xf4f4f4 ; selected moved block text color

Settings/SelectedSNPColor=0xb15c89 ; selected similar, not same, background color
Settings/SelectedSNPDeletedColor=0x763858 ; selected similar, not same, deleted background color
Settings/SelectedSNPTextColor=0xf4f4f4 ; selected similar, not same, text color

Settings/SelectedWordDifferenceColor=0x5c5cad ; selected word difference background color
Settings/SelectedWordDifferenceDeletedColor=0x404080 ; selected word difference deleted background color
Settings/SelectedWordDifferenceTextColor=0xf4f4f4 ; selected word difference text color

Settings/SNPColor=0x763858 ; similar, not same, background color
Settings/SNPDeletedColor=0x592b43 ; similar, not same, deleted background color
Settings/SNPTextColor=0xf4f4f4 ; similar, not same, text color

Settings/TrivialDifferenceColor=0x808040 ; trivial difference background color
Settings/TrivialDifferenceDeletedColor=0x666633 ; trivial difference deleted background color
Settings/TrivialDifferenceTextColor=0xf4f4f4 ; trivial difference text color

Settings/UseDirCompareColors=1 ; use directory compare colors

Settings/WordDifferenceColor=0x404080 ; word difference background color
Settings/WordDifferenceDeletedColor=0x30305f ; word difference deleted background color
Settings/WordDifferenceTextColor=0xf4f4f4 ; word difference text color

;------------------------------------------------------------
; System Colors
; input rgb(80, 88, 88) = output rgb(88, 88, 88) output or similar monochrome - for some!!!!
Settings/SysColorHookEnabled=1 ; enable system color hook
;2 COLOR_ACTIVECAPTION - G & B +8
;3 COLOR_INACTIVECAPTION - G & B +8
;5 COLOR_WINDOW
;8 COLOR_WINDOWTEXT
;9 COLOR_CAPTIONTEXT
;12 COLOR_APPWORKSPACE
;13 COLOR_HIGHLIGHT
;14 COLOR_HIGHLIGHTTEXT
;15 COLOR_3DFACE - G & B +8 Windows app bar
;16 COLOR_3DSHADOW
;17 COLOR_GRAYTEXT
;18 COLOR_BTNTEXT
;19 COLOR_INACTIVECAPTIONTEXT
;20 COLOR_3DHIGHLIGHT
;21 COLOR_3DDKSHADOW
;27 COLOR_GRADIENTACTIVECAPTION
;28 COLOR_GRADIENTINACTIVECAPTION
Settings/SysColorHookColors=2:0x00606058,3:0x0044443c,5:0x00acacac,8:0x00e2e2e2,9:0x00ececec,12:0x00808080,13:0x0040ff00,14:0x00ffffff,15:0x0015151d,16:0x001f1f17,17:0x00555555,18:0x00f4f4f4,19:0x00ececec,20:0x00404040,21:0x001e1e1e,27:0x00535353,28:0x00515151
130 changes: 75 additions & 55 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,69 +1,48 @@
[![logo](Docs/Logos/WinMerge_logo_24bit.png)](https://github.com/WinMerge/winmerge)


# WinMerge

[WinMerge](https://winmerge.org/) is an open source differencing and merging tool for Windows. It can compare files and folders, presenting differences in a visual format that is easy to understand and manipulate.

[![Build status](https://ci.appveyor.com/api/projects/status/h3v3ap1kswi1tyyt?svg=true)](https://ci.appveyor.com/project/sdottaka/winmerge/build/artifacts)
[![CI](https://github.com/WinMerge/winmerge/workflows/CI/badge.svg)](https://github.com/WinMerge/winmerge/actions)
[![sourceforge.net downloads](https://img.shields.io/sourceforge/dt/winmerge)](https://sourceforge.net/projects/winmerge/files/)
[![Github Releases All](https://img.shields.io/github/downloads/winmerge/winmerge/total.svg)](https://github.com/WinMerge/winmerge/releases/latest)
[![Translation status](https://img.shields.io/badge/translations-38-green)](https://github.com/WinMerge/winmerge/blob/master/Translations/TranslationsStatus.md)

[WinMerge](https://winmerge.org/) is an open source differencing and merging tool
for Windows. WinMerge can compare files and folders, presenting differences
in a visual format that is easy to understand and manipulate.

## Build Requirements

### Visual Studio 2017

* *Community*, *Professional* or *Enterprise* Edition
* VC++ 2017 latest v141 tools
* Visual C++ compilers and libraries for (ARM, ARM64)
* Windows XP support for C++
* Visual C++ MFC for (x86 and x64, ARM, ARM64)
* Visual C++ ATL for (x86 and x64, ARM, ARM64)
* Windows 10 SDK
---

### Visual Studio 2019
## How to Contribute

* *Community*, *Professional* or *Enterprise* Edition
* MSVC v142 - VS 2019 C++ (x64/x86, ARM, ARM64) build tools (Latest)
* C++ MFC for latest v142 build tools (x86 & x64, ARM, ARM64)
* C++ ATL for latest v142 build tools (x86 & x64, ARM, ARM64)
* Windows 10 SDK
You will need to [fork the main WinMerge repository](https://github.com/WinMerge/winmerge/fork) and create a branch on that fork.

Format your code using [Eric Allman indentation](https://en.wikipedia.org/wiki/Indentation_style#Allman_style).

When your code is ready for review/merge, create a Pull Request, explaining the changes made.

---

### Visual Studio 2022
## Themes

* *Community*, *Professional* or *Enterprise* Edition
* MSVC v143 Buildtools (x64/x86, ARM, ARM64)
* C++ MFC for latest v143 build tools (x64/x86, ARM, ARM64)
* C++ ATL for latest v143 build tools (x64/x86, ARM, ARM64)
* Windows 10 SDK

### Other utilities/programs
WinMerge allows you to choose from several pre-made themes and create your own.

* git
* Inno Setup 5.x and 6.x
* 7-Zip
* Python
* Pandoc
* MSYS2 and MSYS2 packages (po4a and diffutils)
### Quick theming instructions

## How to Build
1. open `Options` and navigate to the `Colors` section
2. adjust colors to your liking in each subsection
3. the `Export...` option will give you an `ini` file with all settings
4. copy `your install folder\WinMerge\ColorSchemes\Twilight.ini` to `YourNewTheme.ini`
5. copy the corresponding color settings from the exported `ini` file to `YourNewTheme.ini`
6. you can then place your theme file in to the `ColorSchemes` folder and select it in `Options`

~~~
git clone --recurse-submodules https://github.com/WinMerge/winmerge
cd winmerge
DownloadDeps.cmd
BuildAll.vs2022.cmd [x86|x64|ARM|ARM64] or BuildAll.vs2019.cmd [x86|x64|ARM|ARM64] or BuildAll.vs2017.cmd [x86|x64|ARM|ARM64]
~~~
---

## Folder Structure

Source code for the WinMerge program, its plugins, filters, setup program,
and various utilities are all kept in the subfolders listed below.

The changelog file is in `Docs/Users/ChangeLog.md` and it documents
The changelog file is in `Docs/Users/ChangeLog.md` - it documents
both user-visible and significant changes.

Subfolders include:
Expand Down Expand Up @@ -117,21 +96,62 @@ Subfolders include:
It contains temporary files created during the compilation and can be
safely deleted.


## How to CONTRIBUTE

You will need to fork the main Winmerge repository and create a branch on that fork

Your new code needs to follow [Eric Allman indentation](https://en.wikipedia.org/wiki/Indentation_style#Allman_style)

When your code is ready for a review/merge create a pull request explaining the changes that you made

---

## How to RUN and DEBUG

The winmerge folder has different Visual Studio solution files (.sln) that you can use to build, debug and run while you test your changes
The WinMerge folder has different Visual Studio solution files (.sln) that you can use to build, debug and run while you test your changes.

If you have run any of the BuildAll scripts you can run WinMerge from path `\Build\X64\Release\WinMergeU.exe`
if your architecture is not `X64` look for any of the other folders generated after the build has finished

If your architecture is not `X64` look for any of the other folders generated after the build has finished.

Another way to Debug, run the exe from previous step, then from VS attach to the running process.

---

## Build WinMerge

### Visual Studio 2017

* *Community*, *Professional* or *Enterprise* Edition
* VC++ 2017 latest v141 tools
* Visual C++ compilers and libraries for (ARM, ARM64)
* Windows XP support for C++
* Visual C++ MFC for (x86 and x64, ARM, ARM64)
* Visual C++ ATL for (x86 and x64, ARM, ARM64)
* Windows 10 SDK

### Visual Studio 2019

* *Community*, *Professional* or *Enterprise* Edition
* MSVC v142 - VS 2019 C++ (x64/x86, ARM, ARM64) build tools (Latest)
* C++ MFC for latest v142 build tools (x86 & x64, ARM, ARM64)
* C++ ATL for latest v142 build tools (x86 & x64, ARM, ARM64)
* Windows 10 SDK

### Visual Studio 2022

* *Community*, *Professional* or *Enterprise* Edition
* MSVC v143 Buildtools (x64/x86, ARM, ARM64)
* C++ MFC for latest v143 build tools (x64/x86, ARM, ARM64)
* C++ ATL for latest v143 build tools (x64/x86, ARM, ARM64)
* Windows 10 SDK

### Other utilities/programs

* git
* Inno Setup 5.x and 6.x
* 7-Zip
* Python
* Pandoc
* MSYS2 and MSYS2 packages (po4a and diffutils)

## How to Build

~~~
git clone --recurse-submodules https://github.com/WinMerge/winmerge
cd winmerge
DownloadDeps.cmd
BuildAll.vs2022.cmd [x86|x64|ARM|ARM64] or BuildAll.vs2019.cmd [x86|x64|ARM|ARM64] or BuildAll.vs2017.cmd [x86|x64|ARM|ARM64]
~~~
Loading