- Fix formatter in single line hotkey fall-through scenario (#440, #442)
- Fix outline showing invalid labels (#438)
- Add "PixelSearch" to V1 snippets (PR #427)
- Fix two minor formatting issues (Issue #432, #429)
- Update internal dependencies for security (PR #435)
- Fix extension crash when switching to a nullish editor (Issue #398)
- Fix language mode resetting when VS Code restarts (Issue #392)
ahk++.file.interpreterPathV2
now defaults toC:/Program Files/AutoHotkey/v2/AutoHotkey64.exe
(Issue #387)- Add breakpoint support for AHK v2 files (Issue #384)
AutoHotkey v2 support now in preview! Please test it out and report any issues, you'll help the community of 120,000+ users of this extension!
Be sure to go to the settings and update the new V2
settings in case the defaults aren't correct 😊
- Rename some settings. Users will have to manually adjust these new settings from the defaults to match their old settings:
ahk++.compiler.compileBaseFile
is nowahk++.compiler.compileBaseFileV1
ahk++.file.compilePath
is nowahk++.file.compilerPath
ahk++.file.executePath
is nowahk++.file.interpreterPathV1
ahk++.file.helpPath
is nowahk++.file.helpPathV1
ahk++.file.templateSnippetName
is nowahk++.file.templateSnippetNameV1
with default valueAhkTemplateV1
- Allow
.ahk1
and.ah1
extensions for v1 scripts,.ahk2
and.ah2
for v2 scripts..ahk
and.ext
can be used for either version, but default to AHK v2 (Issue #396)- The original changelog entry mentioned that the shared file extensions defaulted to AHK v1--this was incorrect
- You can add a
#Requires AutoHotkey v1
directive to the top of an of.ahk
file to have it automatically load in AHK v1 independent of VS Code settings (Issue #392) - The same can be done with
#Requires AutoHotkey v2
- Alternatively, you can follow the below steps to associate all
.ahk
files with AHK v1:
- Open a
.ahk
file F1
-> "Change language mode"- "Configure file association for
.ahk
files" - "AutoHotkey v1"
- Automatically change AHK version to match the
#Requires
directive near the top of any script the first time that script is opened - Allow running and debugging v1 or v2 scripts without changing settings
- "Open help" (Ctrl + F1) now opens version-specific help
- Add full syntax highlighting for v2 scripts thanks to AutoHotkey v2 Language Support by thqby
- Update icons (found next to a script's name in the explorer)
- v2 scripts will have official green icons, while v1 scripts now have modified blue icons
- Icons are a bit smaller to align with existing VS Code icons
Some features are not added to this initial preview release, but will be coming soon!
- Missing features for AHK v2:
- Formatting (Issue #381)
- Snippets (Issue #382)
This update relies heavily on open-source code from thqby and Steve Gray (Lexikos). Thank you for your awesome work!
- Add quick help, adapted from thqby's AutoHotkey v2 Language Support
- Selected text (or word at cursor) is now searched within the help documentation
- Known limitation: if selected text would cause a syntax error when injected into a script, help is activated but no search is made. Issue #376
- Update file icon to match official AHK repository
Minimal changes here, just following semantic versioning since there are breaking changes.
Breaking changes:
- Rename some settings. Users will have to manually adjust these new settings from the defaults to match their old settings:
ahk++.formatter.indentCodeAfterSharpDirective
is nowahk++.formatter.indentCodeAfterIfDirective
ahk++.language.enableIntellisense
is nowahk++.intellisense.enableIntellisense
ahk++.file.maximumParseLength
is nowahk++.intellisense.maximumParseLength
Other changes:
- IntelliSense no longer suggests words when a user presses space (Issue #110)
- IntelliSense now suggests
foo(p1, p2)
instead offoo (p1,p2)
- Improved descriptions of settings
- Restore changes from 3.3.1. This release is the same as 3.3.1, except the debugger works.
- Revert changes in 3.3.1. This release is the same as 3.3.0. Ref Issue #369
This release has been yanked, meaning it's not supported. Use v3.3.3 instead.
- Various syntax highlighting improvements (PR #354, PR #358)
- Running
Open help
whiletutorial
text is selected now opens the Tutorial page (PR #348) - Unexpected change: Break debugger.
- Add
ahk++.file.maximumParseLength
setting to support unlimited file size (Issue #117)
Fixes:
- Fix several syntax highlighting issues (#85, #318)
- Fix minor debugger issues introduced in 3.1.0 (#279)
- Fix debugging a file with a space in its name (#134)
- Fix formatting for some bad labels (two colons) (PR #325)
- Debug keyboard shortcut is now
Ctrl + Alt + F9
(wasF9
) to avoid conflicts with VS Code default shortcuts. - New setting: Snippet template name. Create your own template for new AHK files, including no template at all.
- Moving lines of code via commands now (almost) correctly indents (PR #306, issue #319)
- Snippets and keywords updated to AutoHotkey v1.1.36.0 (PR #288, PR #298)
Fixes:
-
Fix syntax highlighting for:
-
Fix formatting for:
-
Fix hover message for doc comments to always be trimmed (PR #308)
Compiler:
- New compiler options in settings: Choose base file, file icon, and "use MPRESS"
- Add "Compiler GUI" command in context menu to use the AHK GUI when compiling
Snippets: Update snippets for AHK 1.1.35.00 and fix broken InStr()
snippet (#263)
Grammar: Fix #Requires
not being recognized (#268)
Editor: New AHK file icon (green square with white H)
Debugger: Minor debugger improvements
Formatter: Close the following bugs:
- Formatter incorrectly indents object literals (#184, #222)
- Nested one command code flow control (#255)
Miscellaneous: Extension should start up faster
This is "The Kyklish Release" because Kyklish wrote most of this code. Thank you!
Breaking changes:
- Update file template: Add
#NoEnv
andSetBatchLines, -1
(PR #202)
Formatter bugfixes may be considered breaking if you wanted the old behaviors. If you want the old behavior, please open an issue.
Features:
- Add formatter directive for "Format Block Comment" (PR #164)
- Add "allowed number of empty lines" setting to preserve any number of lines. Defaults to
1
,-1
means "preserve all empty lines" (PR #194) - Add "preserve indent" setting to preserve spaces before a comment. Defaults to
false
. (PR #192) - Add "trim extra spaces" to trim spaces between words. Defaults to
true
. (PR #191) - Trim end of line when formatting (PR #190)
Fixes:
- Fix some snippets (PR #138, PR #201, PR #210)
- Fix formatting bugs with semi-colon as part of a string (PR #159)
- Fix some formatting bugs with
if
,else
, etc. without braces (PR #181) - Fix formatter issue with non-label colon at end of line (PR #162)
- Even more formatter fixes (PR #164)
- Use default debug icon (was yanked in 2.8.3, now it returns!) (PR #149)
- Revert to v2.8.2 due to unexpected breaking change in v2.8.3
This release has been yanked, meaning it's not supported. Use v2.8.4 instead.
-
Change to use default debug icon (#100)
-
Unexpected change: Break "step into" function of debugger.
- No user-facing changes
- Security fixes in dependencies
- Update internal dependencies: Node v16, npm v8
- Close #126
- Fix indentation with
(::
(#72)
- Add setting to toggle debug button in editor title menu (#10)
- Fix indentation with parentheses again (sorry!) (#58)
- Fix indentation with parentheses (#25)
- Respect user choice to indent with either tabs or spaces (#49)
- Fix IntelliSense (#48)
- Move
Run Selection
command to same category as all other commands (Thanks @fade2gray!)
- Fix formatting after ternary operator (#18)
- Fix formatting after multiple close braces on one line (#26)
- Fix hover provider (#16)
- Add
Open Help
command - Add
Run Selection
command - Add foldable region comments
- Improve formatting for using
ExitApp
to end subroutines - Fix function coloring for functions whose names were also keywords (#11)
- Fix function coloring for calls with a space before the parentheses (e.g.
foo ()
) - Fix detection of labels indented with a tab
- Remove confusing deprecation warning from
StrSplit
function - Remove variables from outline
- Improve settings readability
- Fix bogus snippets
- Improve Marketplace presence
- Update icon
- Change marketplace banner color
- Add development documentation
- Change ownership (from
cweijan
tomark-wiemer
) - Change configuration title to 'AutoHotkey Plus Plus'
- Update readme
- Increase icon resolution
- Fix syntax error.
- Fix variable detect error.
- Fix rename bug.
- Bind key to context menu command.
- Enable IntelliSense as default.
- Fix switch format error.
- fix variable detech fail.
- Fix rename fail when unsave.
- Simple support variable detect.
- Simple implement intellisence.
- Adaptation zeroplus debuger extension.
- Support rename method name.
- Just fix bugs.
- Support find method references.
- Fix syntax bug.
- Add command|method hover feature.
- Add labels to outline.
- More syntax support.
- Support restart current programe.
- Support go to label.
- Fix bugs.
- Support config compiler path.
- Show variable detail in debug evalute
- Support get and modify variable in debug evalute
- Support pause and continue run script.
- Support OutputDebug command.
- Support run unsave ahk script.
- Suport change variable value when debug, contribute by @zero-plusplus.
- Support view variable when change call stack.
- Variable view support complex variable value, contribute by @zero-plusplus.
- Enhance method detecher.
- Fix path with space error.
- Support change defualt ahk execute path.
- Support simple debug.
- Find definition in whole workspace.
- Try go to include script in workspce.
- Update snippets.
- Support Run Script.
- Fix detecher if and while block as methods.
- Support go to method definition in same file.
- Enhance method symbol detection.