- Joined
- Dec 12, 2012
- Messages
- 1,007
TESH 2.0 - A new Trigger Editor Script Highlighter for Warcraft 3
by looking_for_help
1. Introduction
It's been a long time since the first Trigger Editor Script Highlighter (TESH) was released by SFilip in 2007. His outstanding work was improved several times by others like Zoxc, Van Damm and Artificial, as well as by the developers of the Horus extension. The TESH adds some very nice Syntax Highlighting and Code-Completion functionality to the Warcraft 3 Editor and made coding in JASS and vJASS much more comfortable and nicer. However, after many years of extensive use, there are still some problems or things that could be solved nicer in order to make vJASS coding even more comfortable. As the original TESH is written in Delphi which is not free anymore and the source code is hardly commented at all, it was not possbile to build up such an extension on the original TESH source. For this reason, and because some of the features I had in mind required a modification of the Scintilla Source-Code itself, I decided to rewrite everything in C++ and restart with it completely from the scratch.
TESH 2.0 now works with Warcraft 3 Version 1.32.9.
Since version 0.9.5, it is possible to load TESH in the new World Editor. The original code was ported to 64 bit for this reason. A wrapper executable now loads both the World Editor and TESH, so the new TESH does not rely anymore on other third-party tools like JNGP or SharpCraft, which are no longer working with Reforged anyway.
2. Installation and Requirements
To install TESH 2.0 for Warcraft 3 Reforged, follow these steps:
Note: The new TESH is not a virus, but some antivirus programs may think so due to a similar loading mechanism also used by JNGP or SharpCraft for example. Please make sure you read and understand the
After this setup you can start the Reforged World Editor with TESH using the
Optionally, you can set this exe as default program for Wc3 maps so that you can open them directly via double-click with TESH. In Windows 10: Click the Windows Start button->Apps->Default Apps->Choose default apps by file type. In this list, search for the .w3m file extension and set the
After this, you can directly start Wc3 maps in the Refored World Editor with TESH via double-click.
3. New Functionality
There is tons of new functionality, both compared to the first TESH and to the older versions of TESH 2.0 (before version 0.9).
Many of the features are already listed in the Version 0.9 changelog and the Version 0.9.1 changelog. Some of the most important features are listed here:
4. Screenshots
Attached are some screenshots:
Or some customized dark styling (just one example):
5. Version History
Attached is the version history of the TESH documented with links to the corresponding update which contain further information.
by looking_for_help
1. Introduction
It's been a long time since the first Trigger Editor Script Highlighter (TESH) was released by SFilip in 2007. His outstanding work was improved several times by others like Zoxc, Van Damm and Artificial, as well as by the developers of the Horus extension. The TESH adds some very nice Syntax Highlighting and Code-Completion functionality to the Warcraft 3 Editor and made coding in JASS and vJASS much more comfortable and nicer. However, after many years of extensive use, there are still some problems or things that could be solved nicer in order to make vJASS coding even more comfortable. As the original TESH is written in Delphi which is not free anymore and the source code is hardly commented at all, it was not possbile to build up such an extension on the original TESH source. For this reason, and because some of the features I had in mind required a modification of the Scintilla Source-Code itself, I decided to rewrite everything in C++ and restart with it completely from the scratch.
TESH 2.0 now works with Warcraft 3 Version 1.32.9.
Since version 0.9.5, it is possible to load TESH in the new World Editor. The original code was ported to 64 bit for this reason. A wrapper executable now loads both the World Editor and TESH, so the new TESH does not rely anymore on other third-party tools like JNGP or SharpCraft, which are no longer working with Reforged anyway.
2. Installation and Requirements
To install TESH 2.0 for Warcraft 3 Reforged, follow these steps:
- Download and extract the attached zip-file (for example with 7zip).
- Make sure the path in the
world_editor_exe_path.ini
file is the correct path to the ReforgedWorld Editor.exe
.
The default path after a standard installation,C:\Program Files\Warcraft III\_retail_\x86_64\World Editor.exe
, is already defined there,
so usually you can skip this step. - If necessary, create an exception in your antivirus for the
WorldEditorTESH.exe
.
Note: The new TESH is not a virus, but some antivirus programs may think so due to a similar loading mechanism also used by JNGP or SharpCraft for example. Please make sure you read and understand the
license.txt
before using TESH.After this setup you can start the Reforged World Editor with TESH using the
WorldEditorTESH.exe
.Optionally, you can set this exe as default program for Wc3 maps so that you can open them directly via double-click with TESH. In Windows 10: Click the Windows Start button->Apps->Default Apps->Choose default apps by file type. In this list, search for the .w3m file extension and set the
WorldEditorTESH.exe
as default application.After this, you can directly start Wc3 maps in the Refored World Editor with TESH via double-click.
3. New Functionality
There is tons of new functionality, both compared to the first TESH and to the older versions of TESH 2.0 (before version 0.9).
Many of the features are already listed in the Version 0.9 changelog and the Version 0.9.1 changelog. Some of the most important features are listed here:
- Support for Warcraft 3 Warcraft 3 Version 1.32.9 and the 64 bit World Editor.
- TESH is now a stand-alone third party tool and does not rely anymore on being loaded by other tools like JNGP or SharpCraft.
- Fixed the input latency bug in the World Editor.
- Fixed the trigger corruption bug.
- Added options dialog to allow user customization of styles and general options.
- Almost double styles configurable compared to the old TESH.
- Various options allow you to configure autocomplete behavior as well.
- Different general options allow you for example to enable/disable warnings, use reduced folding or enable/disable auto-braces, vertical line, line numbers and many more.
- Autocomplete window can now be configured to dynamically grow/shrink while typing and only listing matching items.
- Escape characters are now highlighted within strings.
- Int, Hex and Float numbers can now be styled differently.
- Nested block-comments are now highlighted correctly depending on their nesting level.
- Nesting levels can have a different style as well in block-comments (up to a nest level of 2).
- URL hyperlinks in strings and comments are now highlighted and are CTRL-Click sensitive.
- Braces have now a primary and a secondary style for highlighting matches.
- User includes (functions) can be added to the highlighter by customized text files (like in the old TESH).
- User includes can be reloaded and removed without the need to restart the editor.
- Function list also adds user includes.
- Function list now distinguishes between (normal) constants and events.
- Trigger templates can now be configured (both the button and the menu entries).
- Users can build their own structure for trigger templates which is updated on the fly in the TESH menu.
- Keywords (normal, string and character keywords) are now stored in a SQLite database and can therefore also be modified from outside (including calltips and function list descriptions).
- Search string for Trigger Editor window can now be configured by the .ini file "trigger_editor_name.ini".
- New about dialog with more than 40 did-you-know messages.
- Improved performance.
- Fixed various bugs.
4. Screenshots
Attached are some screenshots:
Or some customized dark styling (just one example):
5. Version History
Attached is the version history of the TESH documented with links to the corresponding update which contain further information.
- 28.12.2013 - Initial Release Version 0.1
- 30.12.2013 - Update to Version 0.2
- 02.01.2014 - Update to Version 0.3
- 31.01.2014 - Update to Version 0.4
- 21.02.2014 - Update to Version 0.5
- 22.02.2014 - Update to Version 0.5.5
- 07.03.2014 - Update to Version 0.6
- 19.04.2014 - Update to Version 0.7
- 07.05.2014 - Update to Version 0.7.5
- 29.06.2014 - Update to Version 0.8
- 19.07.2014 - Update to Version 0.8.5
- 26.03.2017 - Update to Version 0.9
- 06.05.2017 - Update to Version 0.9.1
- 25.06.2017 - Update to Version 0.9.2
- 08.05.2018 - Update to Version 0.9.3
- 22.12.2020 - Update to Version 0.9.5
- 29.12.2022 - Update to Version 0.9.6
Attachments
Last edited: