ConEmu changes log

New ConEmu builds arrives often, at least weekly. It’s recommended to enable Automatic Update to get Preview or Alpha builds as soon as they are released.

Any contributions are appreciated

ConEmu-Maximus5 was brought to life and is supported by almost single developer efforts. The most valuable resource is time actually, hundreds of hours. You can show your appreciation and support further development and maintaining by contributing with bugreporting, funding, helping with documentation, coding, voting or anything else, spreading the word for example.

Build 161203 (stable)

  • StatusBar. new column ‘Cell Info’ shows information about cell under cursor: UCS & ConAttr. CellInfo is turned on by default in ‘-basic’ mode to simplify bugreporting.
  • gh-809: Support mount root for unix-path conversion. ConEmu tries to choose mount root automatically, if user have not defined it explicitly with ‘-cur_console:m:/mnt’ switch. For example, to use ‘/cygdrive’ just run your console with switch: ‘-cur_console:m:/cygdrive’.
  • In some cases ConEmu window was closed unexpectedly during initialization. That happend if delay between consoles initialization was greater than first console run duration. So, ConEmu was closed before second console process was created.
  • gh-943: Rename option to ‘Change mouse cursor if busy’.
  • Add switch ConEmuC -IsRedirect to determine if CONOUT is redirected.
  • Force enable mouse events processing in KeyEvents.
  • gh-964: Let default {Far} task load plugins from FARPROFILE.
  • gh-927: Appropriate behavior while posting chars with AltGr pressed. Example: print("*") when Lithuanian keyboard layout is selected.
  • Support clickable links like ‘example-protocol://someurl’. Origin: http://superuser.com/q/1152465/139371

Build 161022 (stable)

  • gh-910: Fix regression: slower startup.
  • File wsl-con.cmd was created by msi in wrong folder.
  • Far Macro. Some improvements in ConEmu.CtrlNumber.lua
  • Console test (ConEmuC -checkunicode) improved.
  • gh-919: Fix misprint.
  • Some internal changes in hooking: support KernelBase for installing injects.

Build 161009a (stable)

161009a

  • gh-896: Fix regression: cygwin/msys process creation was broken.

161009

  • GuiMacro: Allow {Task} arguments in Shell function.
  • Reuse previous palette on Unfasten/Re-Attach.
  • gh-888: Allow to use ConEmu as default console in third-party applications.
  • DefTerm. Reinit some functions in SetAllHook
  • gh-830: Fix: Significant dwm.exe CPU time when renamed ConEmu tab is active.
  • gh-886: Settings / Integration: When ‘Shift’ is pressed during ‘Register’ button click, ConEmu’s ‘Here’ and ‘Inside’ items are registered as ‘extended’ menu items, and they are shown by Explorer only when ‘Shift’ is pressed.
  • Show process startup time in SysInfo and LogFiles.
  • Far macro emulating Ctrl+Number on LCtrl+Shift+Number keypress.

Build 161002

  • gh-879: Fix doubled CJK glyphs on Windows 10 build 14931. Windows 10 (since 14931) has changed behavior for double-cell glyphs. Now they are doubled (COMMON_LVB_LEADING_BYTE/COMMON_LVB_TRAILING_BYTE) even for UTF-8 codepage.
  • gh-871: Selection was not working in Alternative mode.
  • Turn on certain StatusBar columns on -basic switch.
  • Switch /OMITHOOKSWARN was passed improperly to server when /log was defined.
  • Sample file demonstrates ability to use 256 colors in Windows Subsystem for Linux started in ConEmu tab.

Build 160914 (stable)

  • gh-863: Unchecking option ‘Kill ssh-agent with ConEmu’ had no effect.
  • Suggest %UserProfile%\ConEmu\Logs as default location for ANSI logs.

Build 160913 (stable)

  • Add option to kill ssh-agent.exe processes started from ConEmu’s consoles on ConEmu termination. Read more at: https://conemu.github.io/en/SshAgent.html
  • Installer was signed without timestamp.

Build 160904

  • GuiMacro: Detach(1) didn’t disable confirmation.
  • gh-841: Support COMMON_LVB_REVERSE_VIDEO console attribute.
  • gitextensions/gitextensions#3263: Inside mode: Don’t run console ‘As Admin’ if Shift is pressed.

    Remove ambiguous option to run started elevated console (Run As Admin). If ConEmu was started by some shortcut with Shift key, user faced the unexpected UAC confirmation.

    If user want to run elevated console, they may use special Task with -cur_console:a switch. Example: {cmd (Admin)}.

    If developer want to run ConEmu console in elevated mode, they may add -cur_console:a switch after -run switch. Example: ConEmu.exe -run cmd.exe -cur_console:a /k <some command>.

Build 160828 (stable)

  • gi-821: Fixed crash on startup if Explorer is not started.
  • Support sha256 checksum in chocolatey package.
  • gh-832: Fix crash on erasing ‘Settings->Keys & Macro->Mark/Copy->Exceptions’.
  • gh-766: Prefer ‘TEMP’ env.var over GetTempPath function.
  • GuiMacro: Let Detach(1) do the work without confirmation.

Build 160710 (stable)

  • gh-766: ConEmuSetup improvements and error handling.
    • Don’t show MessageBox in auto mode (chocolatey, autoupdate);
    • Log error messages to log-file in the exe’s folder;
    • In case TEMP directory is inaccessible, just use exe’s folder.
  • gh-740: Try to convert paths to cygwin style if clipboard doesn’t contain \n while pasting to cygwin/msys shells.
  • In some cases ‘Alternative font’ was not used for first cell in a row (1536b94 regression).

Build 160707 (stable)

  • gh-752: Fn keys were not processed by Keys GuiMacro.
  • gh-742: Improve installer error reporting, don’t show error code twice.
  • gh-739: New option ‘Compress long strings to fit space’ is turned on by default. By unchecking that option you’ll get ‘old’ behavior, when ConEmu just trims text, which overruns dedicated space. Read comments in the issue for details: https://github.com/Maximus5/ConEmu/issues/739
  • In some cases old text was not cleared properly with a consequent garbage on the screen.
  • gh-741: Text compression/expansion logic changed, using ‘elasticity’ now.
  • In some cases Font changes were not applied properly.
  • gh-741, gh-722: Glyphs widths evaluation and alignment were changed. So, symbols are expected to be painted properly, uncropped. Examples: U+276F (❯), U+2794 (➔), U+27F6 (⟶).
  • gh-761: Support ‘Terminate all but shell’ for git-cmd.exe.

Build 160619

  • Command ‘ConEmuC -ConInfo’ prints current console tech info.
  • Let intercept GetWindowLong(GWL_STYLE) for console window handle (ref gh-727, gh-719). Far 3.0 since build 4698 tries to query GWL_STYLE for console window?
  • l10n. New language resources.
  • gh-735: Add all marked tasks to Jump List, use TaskBar history limit value only for History items.
  • gh-740: Conversion to linux path on paste was not working for ‘Single line’ mode.
  • Option ‘Autoupdate’ on Settings/TaskBar/Windows 7 Taskbar. If checked, Jump Lists will be updated automatically when user check the ‘Taskbar jump lists’ checkbox in Task properties.
  • Do not add new Tasks to Jump List by default, let user explicitly check ‘Taskbar jump lists’.
  • Installer (MSI): Don’t suggest Far Manager’s folder by default.

Build 160612 (stable)

  • Terminal modes were not displayed on Settings/Info page.
  • gh-716: Cygwin/msys connector output was broken after starting nano.
  • gh-722: Treat Unicode range U+2700..U+27BF as double width glyphs.
  • gh-718: Minimal cursor size option was ignored for invalid console cursor size (zero size).
  • gh-719: Write cursor information and console window rect to log file.
  • Print more console information in ConEmuC -checkunicode.
  • gh-723: Let ‘Minimize/Restore’ hotkey act in spite of ‘Always on top’ mode.
  • Don’t process (append) environment variable twice (ref gh-724). Example: PATH=%ConEmuBaseDir%\Scripts;%PATH%;C:\Tools\Arc So, do not add %ConEmuBaseDir%\Scripts; and ;C:\Tools\Arc if they already exist in PATH. Only explicit comparison is done, so, if C:\Tools\Arc is in the middle of current %PATH%, it would be processed (appended).
  • Fix: Console progress 0% was detected during tab startup (regression 69439a3).
  • Default task {Far}: don’t double plugin folders to avoid doubled lines in F11 (Far 1.x and Far 2.x /p switch problem).
  • gh-700: Show tab icon for Far editors and viewers if ‘Far windows’ option is off.

Build 160609

  • gh-712: Total consoles count was not displayed in the title properly (regression 7ed745b).
  • gh-678: Selection vanished from screen after multiple page selection.
  • System menu item ‘Debug’ -> ‘Dump screen’ saved empty png file.
  • Fix Shift-Home selection in cmd.exe prompt after Tab-completion. First Shift-Home is expected to select the typed command without prompt. Sequential Shift-Home keypresses select and unselect prompt part.
  • Let Shift-Home select multiline commands in cmd.exe prompt.
  • gh-687: Settings page ‘Integration’ -> ‘ANSI execution’ to control allowed code and macro.

    This allows ConEmu specific OSC to be executed: ^]]9;6;"*macro*"^]\ and ^]]9;7;"*cmd*"^]\.

    Since now, they allowed by default in cmd.exe only (were implemented for GitShowBranch.cmd). User may also disable or enable they for any process.

    Also, there is a list of allowed commands. Commands are case-sensitive, one line - one command. User may use * to allow bunch of commands by ‘mask’.

Build 160607 (stable)

  • Settings simplification: radio buttons were removed from ‘Settings/Mouse/Mouse button actions’. In Far Manager RBtn and MBtn clicks are bypassed to console if <No-Mod> is selected.
  • Non-unique hotkey modifier check was improved.
  • Warning fixes (from Michael Lukashov).

Build 160605 (preview)

  • User was enable to enter list of executables on AppDistinct settings page (regression).
  • Option ‘New window’ in the create new console dialog started ConEmu with wrong arguments (no xml, etc.)
  • DefTerm. Option ‘Register on OS startup’ did not use specified xml file.
  • gh-698: Fix crash on copy selected text in HTML format if raster font is used.
  • Fix conditon for <BS> key posting (ref: gh-641).
  • gh-667: Alt+GrayPlus+HexNumbers changes.
    • Alt+GrayPlus is bypassed to Far Manager by default. User still may set up explicit hotkey for ‘Start Alt+Number mode’ action.
    • Option ‘Alt+NumpadAdd - unicode hex codebase’ on the ‘Keyboard’ page (has no effect in Far Manager).
  • gh-629: Try to enable xterm keyboard emulation automatically (BashOnWindows).

Build 160529

  • gh-457: Support DefTerm feature for Idle (Pythonw.exe) and VisualStudio Code (code.exe).
  • DefTerm: ConEmu crashed if it’s closed during DefTerm initialization.
  • DefTerm: Don’t warn user if requested process is already closed.

Build 160522

  • gh-682: Multi-line paste Enter confirmation setting was not being saved.
  • gh-681: Allow NodeJSPortable.exe to run node in the same ConEmu tab.
  • gh-654: Feature ‘Drag ConEmu window by client area’ may be disabled on ‘Mouse’ Settings page.
  • gh-370: Option ‘Auto save/restore opened tabs’ saved wrong split config in some cases.
  • Maximus5/conemu-inside#23: Don’t show Min/Max/Close buttons in the ‘Inside’ mode
  • StatusBar was painted using wrong ‘fade’ status in some cases (ConEmuInside).
  • ConEmu ‘Here’ and ‘Inside’ improvements (Integration Settings page). Now the command will be registered and displayed properly if ConEmu was started with special switches like -LoadCfgFile, -LngFile and others.
  • Recommended: -reuse over -single. -reuse does not enforce ‘single’ mode in the started instance.
  • gh-573: Support ANSI sequence to set cursor style (DECSCUSR, VT520).
CSI Ps SP q - Set cursor style (DECSCUSR, VT520).
		Ps = 0  -> ConEmu's default.
		Ps = 1  -> blinking block.
		Ps = 2  -> steady block.
		Ps = 3  -> blinking underline.
		Ps = 4  -> steady underline.
		Ps = 5  -> blinking bar (xterm).
		Ps = 6  -> steady bar (xterm).
  • If ‘Multiple consoles …’ were unchecked and ConEmu window is empty (either -detached or not closed with last closed tab) than it was impossible to reuse empty window to create new console.
  • Use proper parameters for new window (e.g. started from ‘Create new console’ dialog).

Build 160515

  • ConEmuInside: In some cases (VisualStudio pane) ConEmu failed to detect ‘focused’ state.
  • Split settings page ‘Controls’ into ‘Keyboard’ and ‘Mouse’ (alignment pending).
  • Settings page ‘Quake style’ for pull-down related options.
  • Settings for ChildGui moved to separate page (Integration / Children GUI).
  • cmderdev/cmder#929: Fullscreen was not activated properly in some cases (part of ConEmu was obscured by TaskBar).
  • gh-673: GuiMacro SetWindowPosSize: fix changing size w/o changing pos (by @jcsullins).
  • Was not able to use xml file from drive root. Now it’s possible to run, for example: “ConEmu -loadcfgfile Z:\ConEmu.exe”.
  • Show version stage in the Settings and About dialog titles. E.g.: ‘About ConEmu 160506 [64] {Preview}’.
  • More Settings/Debug/Exec improvements. CD was not captured in some cases, as a consequence contents of @file was not captured too. Also, @file processing is doing synchronously now.
  • Avoid using of deprecated googlecode location for version information. If user had old build of ConEmu installed, and old version location info was stored in the xml, they would fail to receive new versions. Now, old deprecated locations are ignored and ConEmu uses the default place instead.

Build 160504

  • gh-660: Fix crash on ConEmu.exe exit (32-bit).
  • Separate process creation from module/inject activities. On Settings/Info/Debug page new ‘Exec’ option shows only ShellExecute and CreateProcess activities. The ‘Shell’ options is unchanged: ‘Exec’ + injects + modules.
  • l10n: Update resources (Debug activities).

Build 160503

  • gh-661: If ConEmu started with -detached switch, option ‘Close with last tab’ couldn’t be changed.
  • Improve debug shell logging (source of @file without paths). Settings/Info/Debug has ‘Shell’ option which shows processes creation information. E.g. if you run project make, and make executes lnk @arguments, the arguments is usually temporary file, which contains actual agruments for linking. ConEmu tries to locate the file (passed to lnk without path) and shows its contents in Settings/Info/Debug.

Build 160428

  • gh-472: One more fix for custom frame width (Quake) and ‘gaps’.
  • Revert gh-621 patch. Just post KeyUp(Alt) before pasting.
  • New feature ‘Adjust lightness of indistinguishable text’ on the ‘Colors’ settings page. The idea is to make text readable if certain foreground and background colors are indistinguishable for current palette. ConEmu will try to change the lightness of the foreground text.
  • Draw triangles (‘’ and ‘’) internally if ‘Enhance progressbars and scrollbars’ is checked. This solves two problems: cleartype artifacts in statusbars (vim airline for example); and triangle color for adjusted lightness of indistinguishable text.
  • New ConEmu.exe switch -Frame <value> changes desired ‘Frame width’.
  • Many internal changes in font descriptors creation.

Build 160416

  • gh-629: Once more ‘Bash on Ubuntu on Windows’. It’s recommended now to run bash with -cur_console:p switch. Delete trailing 1 if you have {bash} task already.
-cur_console:p[N] - pty modes, N - bitmask, default is 1+4
   1 - XTermKeys, 2 - BrPaste, 4 - AppCursorKeys
  • Support underlined text attributes (fish autocompletion).
  • ConEmu.exe switches -run and -runlist are introduced to take the place of -cmd and -cmdlist.
    • Actually, -cmd and -cmdlist are supported for compatibility reasons, but -run... switches are more convenient to avoid confusion with cmd.exe.
    • As before, both /switch and -switch notations are supported.
    • Also, ConEmu internals were changed to -switch notation.
  • gh-641: Correct posting 0x7F (which is <BS> on xterm) to console. It was posted with LEFT_CTRL_PRESSED in dwControlKeyState. We are posting <BS>, but not a <Ctrl>-<BS>.

Build 160413

  • Task for ‘Bash on Ubuntu on Windows’ was not created properly in 32-bit ConEmu on 64-bit Win10. Also, it’s named now just a {Bash::bash}.
  • New StatusBar columns: ‘Terminal modes’ and ‘RealConsole modes’ (generally for troubleshooting).
    • ‘Terminal modes’ shows keyboard modes and some flags: Windows, Xterm, App cursor keys, Bracketed paste, Cygwin, msys1, msys2 or clinK. E.g. XC means Xterm keyboard mode and Cygwin active console application.
    • ‘RealConsole modes’ shows current values of GetConsoleMode for ConIn and ConOut.
  • GuiMacro: TermMode(<Mode>[,<Action>]). Ref gh-629: To ‘fix’ arrow keys in vim in bash on Ubuntu on Windows one may set hotkey for macro TermMode(2) and switch keyboard mode manually when vim (linux process) is started and exited.
TermMode(<Mode>[,<Action>])
  - changes active terminal modes
    Mode==0: Keyboard emulation (Xterm/Windows)
    Mode==1: Bracketed paste
    Mode==2: Application cursor keys (DECCKM)
    Action==0: Disable mode
    Action==1: Enable mode
    Action==2: Switch mode (default)
  • Suppress error message ‘Can’t open console data file mapping. ErrCode=0x00000002’ when started smth from Far and close ConEmu.
  • Terminal modes and performance counters were not shown properly on first open of ‘Info’ settings page.

Build 160411

  • gh-629: Support xterm keyboard emulation for ‘Bash on Ubuntu on Windows’. conhost does not do keypressed translation, if they were posted directly to console input. That’s why switch -cur_console:p1 must be used to turn on internal xterm emulation in ConEmu. So, the task {Bash-on-Ubuntu} would be:
%windir%\system32\bash.exe -cur_console:p1
  • New default task {Bash::Bash on Ubuntu} for Windows 10 (if the feature is turned on in Windows).
  • gh-637, gh-626: Access vialation on entering plugin ‘ConEmu Background’.
  • Environment variables: ConEmuArgs and ConEmuArgs2.
    • ConEmuArgs now contains only ConEmu.exe’s ‘switches’ (before -cmd or -cmdlist).
    • New variable ConEmuArgs2 contains the command only: -cmd ... or -cmdlist ....
  • Reuse ConEmuArgs when starting new ConEmu instance from cmd autorun.
  • gh-614, gh-616: Handle commas as decimal separators in the in-console progress detection. This fixes curl -# -O looping between 0 and 9%.
  • Do not apply the icon from {Task} if option ‘Show overlay icon’ is on, to avoid two similar icons, one over another.

Build 160403a

  • gh-620: ConEmu shows assertion when terminating SSH session in stermc.
  • gh-624: Defaults on Settings\Integration were lost after reactivating page.

Build 160403

  • ComSpec setting page moved under DefTerm.
  • Avoid attempt to hook DefTerm from multiple processes in Aggressive mode.
  • Improve logging of DefTerm internals.
  • gh-604: Some improvements on cmd automatic attach. The method may be registered on the ‘ComSpec’ settings page. However, it’s not a recommended option, because ConEmu has very slight control over it, and even the logic ‘when we need to attach or not’ is fuzzy.
  • gh-604: Registration buttons were not processed properly on ConSpec settings page.
  • Corrections in -new_console switch trimming procedure.
    • The space was not trimmed in /C "C:\Temp\run.cmd -cur_console:o".
    • Unexpected assertion removed in /C "C:\Temp\run_pause.cmd "-cur_console:o""
  • Don’t run the command started by Shift-Enter from Far Manager via ConEmuC.exe. If one needs the command to be started in new ConEmu tab, than install the Macro: ConEmu/Far3_lua/ConEmu.ShiftEnter.lua.
  • Don’t bypass MouseMove events to Far Menus when selection modifiers are pressed.
  • gh-621: Try to mimic standard Windows Alt+Numbers behavior.

Build 160329

  • Redesign ‘Keys & Macro’ settings page. Let Alt+F put focus into the ‘Filter’ field.
  • Hotkey Ctrl+Alt+Break was not processed properly.
  • LogFile was not created when ‘Internal LogFiles’ checkbox was on.
  • Simplify switching between Tasks on the ‘Tasks’ settings page (Up/Down keys if checkbox/button has focus).
  • gh-404, gh-322: Fix crash in the integrated applications after ConEmu update (DefTerm). The effect will be noticed on the next update.

Build 160328

  • New default hotkeys for process termination:
    • Win+Alt+Break - Terminate all but shell processes in the current console;
    • Ctrl+Alt+Break - Terminate active process in the current console.
  • gh-605: Fix regressions on ‘App distinct’ settings page (EOL).
  • gh-294: Add ‘Filter’ field to ‘Keys and Macro’ settings page.
  • gh-318: With ES_NUMBER user can’t enter negative value (X/Y).
  • gh-318: Get rid of gap in Quake mode when frame width is less than 3 pix.
  • gh-165: Allow to drag Quake consoles between monitors.
  • Show Ctrl+Break but Pause in the hotkeys list.
  • l10n. Update resources
  • gh-304: Use full monitor working area for maximized/fullscreen Quake mode.

Build 160327

  • Add palette change logging. Ref: gh-599, searching for bottle neck
  • gh-593: Background color index was cropped to 8-color palette after \e[9999;1H.
  • gh-587: Fix text selection when cursor passes the selection anchor (downright).
  • Update chinese translation.
  • Improve double-click (word) selection. For example, select daily by double-click inside brackets of ConEmu [daily]>.
  • ANSI: Sequence ESC [ 1 4 t reports terminal window size in pixels as ESC [ 4 ; height ; width t.
  • gh-605: Fix regressions on ‘App distinct’ settings page.
  • Log extended information during console shutdown. Ref: gh-604: Last conemu versions often can’t attach to started console

Build 160324

  • Unify LogFile names: ConEmu-gui-..., ConEmu-con-..., ConEmu-srv-....
  • To start console as ‘System’ use -new_console:aA switch.
  • Update {Show ANSI colors} and fit in 76 chars.
  • Show compiler version and colorize output of -Args.
  • Try to show and re-apply -new_console:XXX switches in ‘Recreate’ dialog.
  • gh-581: Restart ConEmu after automatic update in the same directory it was started before.
  • Update chinese translation.
  • Update Russian translation.
  • If ConEmu started with -detached switch, don’t close it automatically when last tab is terminated.
  • ConEmuC: Don’t fall into Press Enter or Esc to close console... if invalid arguments were specified. This is critical, especially if our process was started under non-interactive account, than ExitWaitForKey causes the infinitely running process, which user can’t kill easily
  • ConEmuC: Don’t fall into Press Enter or Esc to close console... if server was not connected to GUI. Avoid situation when ConEmuC /ROOT was started from running console (bare cmd.exe) and ConEmuC (our started server) was not connected to GUI, then we get infinite loop when ConEmuC waits for cmd termination and vice versa.
  • Avoid ‘Unknown state’ appeared in the StatusBar during console startup.
  • LogFiles may be enabled permanently via Settings -> Features -> ‘Internal LogFiles location’.
  • CmdInit.cmd: Reset colors on each prompt ($E[m).
  • gh-587: Fix text selection when cursor passes the selection anchor (changing selection direction).
  • gh-598: Improve pasting options for Shift+Ins and Ctrl+V (multi-line text). Now, Ctrl+V will insert all lines, space-separated, and Shift+Ins insert multi-line text as before. User may change actions on the ‘Paste’ settings page.
  • gh-101: Switch -UseExport may be specified before -GuiMacro to export result as env.var. Without -UseExport specified before -GuiMacro, ConEmuC.exe will not try to export GuiMacro result as environment variable ConEmuMacroResult to the parent process.
  • Variable ConEmuMacroResult was skipped during environment exporting.
  • Settings pages names localization.

Build 160313

  • On WinXP/Vista the icon in the TitleBar was unexpectedly changed to active tab icon.
  • Intelligent selection: RClick over selected region will Paste selected text, bypassing Windows’ clipboard, and Reset selection region.
  • Fix garbage displayed in VCon during console startup on WinXP.
  • gh-571: ConEmu -demote ... starts process for the wrong user.
  • Log current SessionID, improve Desktop and Title representation.

Build 160310

  • TaskBar icon fixes (Overlay icon on any OS, update icon on Restart console).
    • Option ‘Show overlay icon (Win7 and higher)’ now works on any system, and need to be renamed. So, if TaskBar uses small icons, ConEmu shows icon from active console via WM_GETICON.
    • Icon was not updated on restart console with another icon.
  • Updates on Intelligent selection.
    • Double and Triple clicks selection do not require modifiers.
    • Click outside selection region - would reset active selection.
    • Do Internal Copy & Paste if LBtn is still down and RBtn is clicked.
    • Avoid blinking on double/triple clicks.
    • Selection: In some cases Shift+DblClick slipped to console.
  • gh-328: Improve double-click word selection logic.
    • Don’t select space after word.
    • Don’t select pseudographics before/after alphabeticals.
    • Trim trailing punctuations.
    • Trim leading punctuations except dots (e.g. .bashrc).
  • Fix wrong quotation rules on Settings/Environment. Was not working properly:
echo ""
echo """C:\Program Files\Git\bin\git.exe"" fetch --progress ""--all"" "

Build 160308

  • Option ‘Retard inactive panes’ was ignored in some cases.
  • Trailing dot was not trimmed after md-style hyperlink.
  • gh-420: Do not enable by default option ‘Process start’.
  • Debugging purposes: ConEmuC.exe -struct %ConEmuPID%.
  • In prompt, Shift+Home/End selects command text first, second press expands selection to line start/end.
  • If selection was started from keyboard, than Del/Shift-Del/Backspace removes selected text. ConEmu tries to ‘map’ single Del/BS to series of keypresses to remove whole selected block. Only one-line selections are processed. Shift-Del do copying to clipboard before erasion.
  • Allow persistent mouse selection. Selection will reset on Paste or Typing.
  • When selection crosses anchor, behave same way if selection was started in that direction.
  • ANSI: Implement ESC ] 9 ; 12 ST to store end of prompt message.
  • l10n: Update chinese translation.

Build 160301

  • gh-562: Environment was not applied to elevated consoles.
  • Window icon was changed by mistake when starting task with defined icon. This must happen only for startup task.
  • StatusBar was not updated after root process termination. Especially for consoles started with -new_console:c0 or -new_console:c1.
  • gh-561: Tab macro %d was not trimmed to ‘Max tab width’.
  • For TaskBar with small icons show current console icon instead of ConEmu default (option ‘Admin shield’).
  • GuiMacro: GetInfo("Root") XML-result changes.

    Ref: Maximus5/conemu-inside#8

    State: Empty, NotStarted, Running, Exited. PID and ExitCode: unsigned integers. UpTime: milliseconds. Examples below.

    • If there are not consoles in ConEmu.
<Root State="Empty" />
  • If console initialization is in progress (ping localhost -t for example).
<Root State="NotStarted" Name="ping.exe" />
  • If root process was started and is running. Note, 259 in ExitCode is STILL_ACTIVE constant.
<Root State="Running" Name="ping.exe" PID="7136" ExitCode="259" UpTime="3183" />
  • If root process was finished (terminated by Ctrl+C as example).
<Root State="Exited" Name="ping.exe" PID="7136" ExitCode="3221225786" UpTime="10195" />
  • Another example for cmd.exe normal exit.
<Root State="Exited" Name="cmd.exe" PID="6688" ExitCode="0" UpTime="1825" />

Build 160228 (preview)

  • Fix crash when mouse wheel was scrolled over search edit box.
  • Warning fixes (from Michael Lukashov).
  • Intelligent selection mode was not working in Far userscreen (Panels turned off).
  • gh-560: Fix true-color scrolling issues in Far 3.0.4525.
  • Alt+Numbers mode improvements.
    • Hotkey (unassigned): Start Alt+Number mode to enter unicode symbol by its hex codebase.
    • Allow mode start by GuiMacro: AltNumber([Base]).
      • Base==0: Start Alt+Numbers in ANSI decimal mode (‘ANSI’ actually means UNICODE code points 32..255)
      • Base==10: Start Alt+Numbers in OEM decimal mode
      • Base==16: Start Alt+Numbers in hexadecimal mode
    • Alt+Numbers: If mode was started by Alt+Key (user-defined), do paste on Alt release.
    • Alt+Numbers: Show collected codebase and hints about mode in the StatusBar.
  • KeyEvents v4.3: Unicode characters were not printed correctly.

Build 160222

  • gh-555: Aliases support was broken (771ab79 regression).
  • Maximus5/conemu-inside#13: ConEmu-Inside position was not updated in some cases.
  • Understandable error message if bad -loadcfgfile was specified.
  • Don’t erase default MSZ setting value, if one not found in xml.
  • Let -new_console:c1 consoles stay open silently even on Esc/Enter.

    When all processes in console are finished:

    • ConEmu does not close the console automatically;
    • Confirmation message is not written to console;
    • All keypresses are ignored.

    So, user may either close console via ConEmu interface (kill hotkeys or close menu items), or parent process (when ConEmu is working in the ‘Inside’ mode) may close the console via GuiMacro Close(0,1).

Build 160219

  • Task may be executed in the running console with ConEmuC -c {TaskName}.

    Actually, first command of the named task is executed, and rest of command line is appended as arguments. For example, you may start Far editor in the current console by executing in the prompt:

    ConEmuC -c {Far} /e text.txt
    
  • Support tasks nesting.

    Simple nesting is allowed, so one may create their own task, which starts {cmd}, {powershell} and {VS 14.0 x86 tools prompt}, even in splits or with extra arguments. For example:

    {cmd} & echo Extra args
    {powershell} -new_console:sV
    
  • New predefined environment variables: ConEmuTask and ConEmuPalette.
  • TaskBar JumpList icons fix.
  • Far Macro: ConEmu.Editor.lua was broken (Far3 latest builds).
  • Far Tabs were not updated in ConEmu after plugin call Plugin.SyncCall(ConEmu,100).

Build 160218

  • GuiMacro. New function Write("Text") writes “Text” to console output (dangerous).

    Use it at you own risk! Calling this function may cause unexpected behavior of running console application! That is because function changes console contents and cursor position directly, bypassing detouring standard ConIn/ConOut processing queue.

    In most cases safe functions Paste, Print and Keys are preferable!

    However, with Write you may implement some interesting features, like printing sort of ‘hints’ in shell prompt:

    Write “\e7\e[90mEcho "Hello world!"\e[m\e8”

    Ref: Maximus5/conemu-inside#3

  • gh-550, gh-372, gh-234: Unassigned by default hotkey ‘Reset terminal’ (dangerous).

    I’m still sure that this operation is harmful and dangerous: https://conemu.github.io/en/ClearScreen.html. But since GuiMacro Write exists, anyone may create a macro for Write("\ec"), which the hotkey actualy executes.

    TabMenu item ‘Edit -> Reset terminal’ is available too.

    BTW, with Write macro anyone may push to console several colored lines, using ANSI sequences, to ‘mark’ some point in real-time logs (tail -f).

    Write “\n\n\e[91m========== ‘\e]9;8;"time"\e\’ ==========\e[m\n\n”

  • Bring here: Just move window to the upper-left corner of active monitor.
  • ANSI: Let ESC ] 9 ; 8 ; "*env*" ST supports date and time.

Build 160217

  • gh-541: Chinese translation (from @ulin).
  • Maximus5/conemu-inside#4: Don’t warn ConEmu's parent window was terminated abnormally if we have no VCon.
  • Maximus5/conemu-inside#4: Don’t show ‘Can’t create new virtual console’ error if parent was killed during initialization.
  • Maximus5/conemu-inside#12: Query GuiMacro result via callback function. ConEmuCD.dll and ConEmuCD64.dll now export GuiMacro function. https://github.com/Maximus5/ConEmu/commit/ffd3774eb037fb73828ff969464ef57a97dda1a4
  • Don’t install hooks in ConEmuC.exe.
  • ConEmuC internal -echo able to expand environment variables by -x subswitch. Example: ConEmuC -echo -x “Version: %ConEmuBuild%”
  • Maximus5/conemu-inside#3: Write user-defined text to console on startup.

    Commands echo and type are processed internally by ConEmuC now. For example, it’s possible to add into the Settings/Environment.

    echo -x “Welcome to ConEmu %ConEmuBuild% terminal^nPress Win-Alt-P to show Settings dialog”

    Alternatively, you may add echo or type before the command itself, when you create new console, or in the Task definition. Example.

    type -utf8 “%ConEmuDir%\Hello.txt” & cmd /k “%ConEmuBaseDir%\CmdInit.cmd”

  • Implement -Args to show how ConEmu’s command line parser works. Example: ConEmuC -args “Test1 & ^ “” Test2” “Test “” 3”

  • Two double-quotes are replaced with one double-quotes in NextArg.

    So, the command:

    ConEmuC -args “Test1 & ^ “” Test2” “Test “” 3”

    must produce following output:

    1: Test1 & ^ " Test2 2: Test " 3

  • Changes in ConEmuC -echo feature.

    • Arguments are processed one-by-one, strings with special characters must be framed with double-quotes, two sequential double-quotes are replaces with one double quotes, multiple spaces between arguments are treated as single space.

    • If -r subswitch is not specified, than following replacements are done.

      • ^^ -> ^
      • ^n or ^N -> (char)10 {\n : LF}
      • ^r or ^R -> (char)13 {\r : CR}
      • ^t or ^T -> (char)9 {\t : TAB}
      • ^a or ^A -> (char)7 {BELL}
      • ^b or ^B -> (char)8 {\b : BACK}
      • ^e or ^E or ^[ -> (char)27 {ESC}
    • If -x subswitch is specified, than %EnvVars% are expanded.

$ ConEmuC -echo "A1 "" A2"   "A3" A4"
A1 " A2 A3 A4

$ ConEmuC -echo "Line1^nLine2"
Line1
Line2

$ ConEmuC -echo -r "Line1^nLine2"
Line1^nLine2
  • Settings/Environment has priority over console command line.

    Commands echo, type, set and others, defined in on the ‘Environment’ settings page, are executed before commands, defined in the Task or console command line.

    So, if ‘Environment’ has following line

    echo -x “Welcome to the ConEmu %ConEmuBuild% terminal”

    And {cmd} Task is defined like following

    echo “Initializing {cmd} Task…” & cmd /k “%ConEmuBaseDir%\CmdInit.cmd”

    Than you’ll see in the terminal

    Welcome to the ConEmu 160217 terminal Initializing {cmd} Task…

  • Log system date on -log start and date change.
  • Show (StatusBar) and log PID of started console server.
  • GuiMacro: WindowMode("HERE") moves ConEmu to monitor with mouse cursor.
  • Add hotkey for ‘Move ConEmu window to the monitor with mouse cursor (Bring here)’.
  • gh-240: Create a workaround for ‘Maximum real console size was reached’.

    Looks like MS-Bug in conhost leads to abnormally large font set in real console, if tab was started As Admin in Windows 10 and Win-L pressed.

C:\ConEmu\ConEmu64.exe -basic -max -size 12 -visible -log -cmd {cmd (Admin)}
rundll32 user32.dll,LockWorkStation

Build 160211 (preview)

  • Initial steps for localization. More information in docs.
  • gh-539, gh-535: Option ‘Default task for new console’ was ignored (d93b5d9 regression).
  • gh-540: In some cases ‘Enhance preudographics’ was skipped.
  • Avoid spare RealConsole resize on HideCaption changes.
  • Fix broken Far’s Editor/Viewer close from TabMenu (7631ffd regression).

Build 160207 (preview)

  • Alt+HexNumbers: Dump collected codebase to console on ‘invalid’ input or GrayPlus.
  • gh-534: Fix wrong background drawing in Far (TrueColor).
  • gh-532: ‘Apply’ button failed to return ‘Normal’ mode in ‘Quake’ style.
  • gh-78: Rename to (modifier for ‘Highlight and goto’ and some others). Purpose of this option - process when no modifier (Ctrl, Alt, Shift, ...) is pressed.
  • gh-489: Fix TaskBar jump-list problems.
    • Default Tasks for SDK::VS * were not created by ConEmu64.exe.
    • Wrong icon was set for tasks SDK::VS * in jump-list.
  • Default extension (xml for example) was not appended if user fails to print it in the ‘Export settings’ dialog.
  • Warning fixes (from Michael Lukashov).

Build 160204

  • Support Alt-+-HexNumber input internally, including surrogate pair generation. ConEmu is able to convert entered codepoints to surrogate pairs, so you may enter uncommon symbols outside from BMP. Examples below.
    • Double-struck ‘𝔸’: press Alt-+-1D538.
    • Sushi emoticon ‘🍣’: press Alt-+-1F363
    • More information
  • Screen was not updated if shell (cmd for example) was activated back from closed Far Manager, if close has been done by cross-click and ‘Safe Far Close’ macro.
  • gh-524: Deal with entangled window list returned by Far API.

Build 150813g (stable)

  • Don’t try to inject hooks into ConEmuC processes.
  • Allow AutoUpdates to ‘Stable’ builds.
  • Renew portable and xml notes.
  • gh-491: Example Far Macro ConEmu.CtrlShiftT.lua had wrong hotkey.
  • Prevent double execution of script specified in “AutoRun” cmd’s registry key. For example, when “cmd /k CmdInit.cmd” was started (default for {cmd} task) triggering ver command caused execution of test.cmd again.
[HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
"AutoRun"="test.cmd"
  • gh-470: Double click word selection was broken.
  • gh-517: In Quake mode Maximized/Fullscreen was dropped after ConEmu restart.
  • gh-297: Fix keyboard delay (Windows 7).
  • gh-486: Use https for github links.
  • gh-524: Deal with entangled window list returned by Far API.

Build 160202

  • New TabMenu items hints (shown in StatusBar when hovering menu with mouse).
  • Show confirmation if Shift is pressed when selecting menu items:
    • Kill active process
    • Kill all bat shell
  • gh-241: Close consoles refactoring (close Far tabs with single click). If Far Manager was started from other shell (from cmd.exe, for example) than using ‘Safe Far Close’ macro leads to return to the shell prompt, instead of termination of this console. Also, unchecked option ‘Safe Far Close’ was ignored for far.exe. In progress actually. We have to simplify close/terminate calls.
  • Warn user if automatic action was called without initialized settings. The example of command: ConEmu.exe -SetDefTerm -Detached -MinTSA -Exit. If there is no settings file, user will see FastConfiguration dialog, which is unexpected for automatic action (-SetDefTerm and -Exit). If one needs to run ConEmu without settings, they may use -basic switch.
  • Double-width glyph in the col 1 was cropped in Far editor/viewer. For example, if the following text 中英文Block mode复制初步修复。 was started from the leftmost console cell, than glyph was cropped to one cell.
  • GitShowBranch.cmd: Support git branches with dots in branch name.
  • gh-515: Internal changes of OnShutdownConsole.
  • Add default task {Tools::Docker}. Docker is detected by environment variable %DOCKER_TOOLBOX_INSTALL_PATH%. Also, bash.exe (Git, Cygwin or MSys) have to be installed to run start.sh.
  • Add default task for NYAGOS (if found in %PATH%).
  • gh-517: In Quake mode Maximized/Fullscreen was dropped after ConEmu restart.
  • conemu-inside/gh-1: Mouse text selection does not work in the Inside mode.
  • conemu-inside/gh-4: Avoid crashes when parent process is terminated during startup.
  • conemu-inside/gh-4: Correct warning messages and don’t show them if parent was terminated during startup.
  • Allow to start new tab in current detached instance in one-console mode. If option ‘Multiple consoles in one ConEmu window’ is disabled, than new console is started in new ConEmu window, but this is impractical if there is no consoles in current instance. For example: “ConEmu -detached” or existing console was closed.
  • Protect from possible ‘locks’ during startup.
  • StatusBar column ‘Create new console’ was not updated in some cases.

Build 160124

  • gh#509: Fix crash when checking ‘Explicit executable’.
  • Use bare {Far} task name for first Far.exe found in our folder. To simplify portable and testing installations, if Far Manager is copied into our program folder, don’t change its task name (don’t add version/bitness suffixes).
  • gh#507: Get rid of MsgBox on attach errors, print info to Console instead.
  • gh#514: Fix broken pseudographics representation if ‘Alternative font’ was off.
  • Prefer bash.exe over sh.exe when creating default tasks.
  • gd#516: Support ‘Application Cursor Keys (DECCKM)’.
  • Update terminals module to v0.7.4
  • Let characters 0x1F300..0x1F5FF be double-width.
  • gh#517: Radio-buttons Maximized and Fullscreen were not working (Apply is required though).

Build 160111

  • Fix bad XML format for GuiMacro GetInfo Root.
  • gh#491: Example Far Macro ConEmu.CtrlShiftT.lua had wrong hotkey.
  • Add ‘Anti-aliasing’ option for alternative font.
  • Far Manager was not resized after splitting with Ctrl-Shift-O/E. Implement helper ForceFarResize and utilize it in both sync and async modes.
  • gh#502, gh#446, gh#447: The algorithm of text drawing has changed significantly.
  • Prevent double execution of script specified in “AutoRun” cmd’s registry key. For example, when “cmd /k CmdInit.cmd” was started (default for {cmd} task) triggering ver command caused execution of test.cmd again.
[HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
"AutoRun"="test.cmd"
  • gh#494: Fix clink double initialization.
  • connector#3: Let Left/Right/Up/Down/Home/End post sequences ESC[X.
  • connector#8: Fix top output lines.
  • Update terminals module to v0.7.3.
  • Updating progress was not changed during downloading (10% till 99%).
  • gh#297: Fix keyboard delay (Windows 7).
  • gh#471: Far plugin ‘ConEmu Panel Views’ was broken (da926ba regression).

Build 151224

  • All 64-bit binaries are built with VS14. 32-bit binaries are still built with VS9 (WinSDK7) to be compatible with old systems.
  • gh#486: Use https for github links.
  • gh#488: Full paths were shown in Far’s editor/viewer tabs (6ce49af regression).
  • GuiMacro: Return xml instead of json for GetInfo Root.
  • GuiMacro: In-process GuiMacro execution improvements.
Prototype: int __stdcall ConsoleMain3(int anWorkMode, LPCWSTR asCmdLine)
Example: ConsoleMain3(3, L" -GuiMacro:1234 Print \"exit\\n\"");
Note: anWorkMode==3, asCmdLine must begin with space.

Build 151222

  • gh#465: Treat Ctrl-Z as ‘EndOfStream’ in ReadConsole (Go input streams). To use, on new line press Ctrl-Z and Enter. Option (Features page) disabled by default.
  • gh#469: TabBar/ToolBar is too large.
  • gh#473: Support Ctrl+LClick on paths surrounded by brackets.
  • connector/gh#4: AltGr+Char was not working with cygwin/msys connector.
  • gh#470: Double click word selection was broken.
  • conemu-inside/gh#3: New switch -new_console:c0. It suppress writing to console confirmation messages like “Press Enter or Esc to close console…”, but let server to wait for Enter or Esc nonetheless.
  • ConEmu.Core - Nuget package for Nuget.org, for referencing the stuff from Visual Studio projects. Unlike Choco’s, this one has to carry all of the payload files inside and not on an URL. The nuget with conemu WinForms control references this nuget, so just adding a nuget to your project sets it up for using the conemu control out of the box.
  • Internal. Fix package name
  • API: ConEmuCD exports function ConsoleMain3 to enable ‘in-process’ GuiMacro calls.
Prototype: int __stdcall ConsoleMain3(int anWorkMode, LPCWSTR asCmdLine)
Example: ConsoleMain3(0, L"-GuiMacro:1234 Print \"exit\\n\"");

Build 151217

  • AnsiLog was not written properly in some cases.
  • Reuse HandleKeeper to determine console handle properties properly
    • ANSI coloring is supported while redirecting text to CON from batches. Example for cmd prompt: call cecho "Redirected output" > CON.
    • Output of msvcrt linked applications, like PING or TRACERT, may be logged (Settings\Features\Log console output).
  • gh#461: Fix AeroPeek VCon offset when frame is non-resizable.
  • gh#210: Minimizing other windows causes ConEmu to be restored (Quake).
  • First try to draw non-spacings/combinings/surrogates/double-width in ‘proper’ size. For example, combining accents/umlauts must be shown over preceding letter, CJK double-width characters must use two cells to avoid overlapping. But that raise some other problems if console application don’t care about this. For example: Far Manager frames may look corrupted after CJK file names.
  • Don’t try to pop up console menu by Shift+RClick while LBtn selection is present.
  • Make IDM_CLOSE (Tab/Console menu item) behavior more conistent.
    • If menu’s opened by RClick on console or by hotkey: do ‘Close console’.
    • If menu’s opened by TabBar’s RClick and it’s a group with several tabs: do ‘Close tab group’.
    • Otherwise: do ‘Close tab’.
  • ConEmu Inside: Terminate our process (ConEmu.exe) if parent window was killed.
  • Don’t try to hide to TSA in Inside mode.
  • gh#467: Startup crash if startup task was renamed.
  • Arbitrary shells (not a Task) were not accepted in FastConfiguration dialog.
  • Let’s save integers as user-friendly 10-based numbers (new xml configs).
  • Allow AutoUpdates to ‘Stable’ builds.
  • GuiMacro: GetInfo(“Root”) returns information of current console root process (JSON).
    • If there’s no console at all - macro returns either empty string, or somthing like “FAILED:Specified ConEmu instance is not found”.
    • On errors you may receive {"Status":"Unknown"}.
    • Normally, JSON object is expected. Example below, // for comments.
{
"Running": false,  // true or false
"Name": "cmd.exe", // name of root process executable
"PID": 1234,       // PID of root process
"ExitCode": 1,     // 259 if still running, or its exitcode
"UpTime": 12418    // milliseconds
}
  • GuiMacro: Avoid VConRequired error macro was received before RCon created.
  • GuiMacro: If ConEmuC -GuiMacro was started before ConEmu GUI finishes initialization, wait for ConEmu window appears or ConEmu.exe process terminates.
  • Option ‘Skip click on activation’ was not working on ‘touch’.
  • gh#310: Chars entered by Alt+Numpad were not working.
  • Warning fixes (from Michael Lukashov).

Build 150813f (preview)

  • gh#467: Startup crash if startup task was renamed.
  • Arbitrary shells (not a Task) were not accepted in FastConfiguration dialog.

Build 150813e (preview)

  • gh#461: Fix AeroPeek VCon offset when frame is non-resizable.
  • gh#210: Minimizing other windows causes ConEmu to be restored (Quake).
  • Don’t try to pop up console menu by Shift+RClick while LBtn selection is present.
  • Bug and warning fixes (from Michael Lukashov).

Build 151210

  • Add batch to build all binaries
  • Trim too long console titles in ‘Close confirmation’ dialog.
  • Backscroll buffer was not restored after exiting man, vim (608fe12 regression).
  • Show internal AppID in the About dialog, log AppID source. This ID is used for Win7+ TaskBar (pinned apps).
  • In some cases Win7+ pinned TaskBar icon was not reused.
  • gh#461: Fix AeroPeek VCon offset when using captionless mode.

Build 150813d (preview)

  • Don’t try to position cursor on higher line to avoid numerous beeps (bash, clink, etc.)
  • gh#297: Show option ‘Delay between consoles initialization’ on the ‘Startup’ page.
  • fix cppcheck warning: memset() called to fill 0 bytes of ‘lpConsoleSelectionInfo’
  • fix cppcheck warning: Logical conjunction always evaluates to false: asLabel && !asLabel
  • fix cppcheck warning: Logical conjunction always evaluates to false: pszNumEnd && !pszNumEnd
  • fix cppcheck warning: Invalid memcmp() argument #3. A non-boolean value is required
  • DefTerm. Improve error message, version, process name.
  • gh#322: Fix crash in hooked applications while updating DefTerm module.
  • Print handles information in ConEmuC /checkunicode.
  • Add new color schemes: <ConEmu>, <Cobalt2>.
  • Use <ConEmu> color scheme by default.
  • gh#345: ‘Run as Administrator’ was crashed in some cases.
  • Only active split was updated after choosing palette from DDCB.
  • Misprint: Looses -> Loses.
  • ANSI: Brightness (back/fore) was not reset in some cases. For example: "\e[96mA\e[36mB" - “B” and “A” had same color.
  • Fix handle leak (GetProcessBits, handle is not freed)
  • gh#368: Fix thread handles leaks.
  • Append optional switches to single-command tasks. For example, there is default task {cmd} which has single command: cmd /k "%ConEmuBaseDir%\CmdInit.cmd". Now you may to run {cmd} /git from NewConsole dialog or via -cmd switch of ConEmu.exe. So, the result will be: cmd /k "%ConEmuBaseDir%\CmdInit.cmd" /git.
  • ConEmu here: Suggest to start {cmd} task instead of bare cmd by default.
    • So the default command for ‘ConEmu Here’ will be {cmd} -cur_console:n.
      • Note. Prepend /reuse /cmd before task name, if you want to reuse running ConEmu window: /reuse /cmd {cmd} -cur_console:n.
    • Default command for ‘ConEmu Inside will be {powershell} -cur_console:n.
  • Add ‘ConEmu Underlines’ item to Far’s F11 menu (panels, editor, viewer).
  • Add ‘ConEmu Background’ item to Far’s F11 menu (panels, editor, viewer).
  • gh#94: Gray window on PuTTY when connected via local proxy command.
  • In some cases ConEmuC64 was started as server for 32-bit root process.
  • gh#415: GetLastError returned 6 after WriteFile even on success.
  • Don’t restart PC without confirmation after CUP ALL (chocolatey update). https://groups.google.com/d/topic/chocolatey/UvVVLpoBnCg/discussion
  • Write process list changes and active process name to log (ConEmu -log).
  • Write CtrlC/CtrlBreak and other console events to log (ConEmu -log).
  • Move checkbox Activate split/pane on mouse hover to the Controls settings page.
  • gh#399: Use mouse for ConEmu’s selection instead of passing to cygwin’s vim.
  • gh#398: Fix: Taskbar previews don’t match tabs order.
  • Fix: Win7 taskbar aero peeks appeared in wrong position if pad size was not null.
  • Warn if two instances of ConEmu plugin were loaded in Far Manager. If due to installation or configuration errors two dll libraries were loaded, they both will fail to work properly. So, warn user about the problem in detail, show suggestion, and stop plugin initialization.
  • Warn user if wrong version of ConEmu plugin was loaded in Far Manager.
  • gh#336: Don’t poll Far 2.x current directories while Editor/Viewer is active.
  • gh#17: Send WM_ENTERSIZEMOVE/WM_EXITSIZEMOVE to ChildGui during resize.
  • ANSI \e[K has not cleared rightmost cell.
  • Checkbox ‘Desktop mode’ was removed from settings. Most of users misunderstand its purpose, and seems like it’s broken in the past builds and windows can’t inject itself into Desktop.
  • ConEmuLn. Add separate settings for Editor and Viewer underline colors.
  • Improve XML parser error messages.
  • Don’t autoclose ConEmu window while error message box is waiting user interaction.
  • gh#344: Fix abnormal resize of maximized window if TabBar is auto-shown.
  • gh#353: Jump lists were created improperly if ConEmu was started with -single switch.
  • May specify index of an icon in the file
  • gh#378, gh#376: Support retrieving icon from *.dll and *.exe files by index or ResID. One may specify the icon either by number (decimal, 0-based), or by resource id (negative, decimal).
Example for Task parameters:
  /icon "%CommonProgramFiles(x86)%\microsoft shared\MSEnv\VSFileHandler.dll,33"
Example for `-new_console` switch (may be specified in the Task commands):
  -new_console:C:"%CommonProgramFiles(x86)%\microsoft shared\MSEnv\VSFileHandler.dll,33"
  • gh#442: In text selection pressing Ctrl+Shift+Arrow increases selection faster. Ctrl+Shift+Left/Right jumps by words if possible, or by 10 chars. Ctrl+Shift+Up/Down jumps by screen halfs.
  • gh#455: Redirected output from batch files to CON device was not working. Windows’ console API is not working on handles opened that way. test.bat
ECHO/ Test Redirect Output 1>CON
  • gh#351: Allow changing URL for retrieving version location on Settings/Update.
  • gh#351: Use https://conemu.github.io/version.ini by default.
  • In some cases ConEmu tried to set abnormally large console size.
  • Updater. Fight against wininet cache before downloading.
  • Fix wrong background from ‘ConEmu Underlines’ in some cases. If “Far /e …” was started from Panels, and only ‘Editor’ coloring was enabled in ‘ConEmu Underlines’, than wrong background was painted after exit Editor Far.exe process.
  • Add batch to build all binaries
  • gh#461: Fix AeroPeek VCon offset when using captionless mode.

Build 151208

  • gh#459: Characters disappear after readline Ctrl+R, …, Enter.
  • ConEmu Inside: Fix detection of ‘ConEmu has focus’.
  • ConEmu Inside: Don’t resize VCon or RCon if parent is minimized.
  • ConEmu Inside: Show TaskBar progress on parent window.
  • ConEmu Inside: Show flashing on parent window.
  • Updater. Fight against wininet cache before downloading.
  • In some cases ConEmu tried to set abnormally large console size.
  • GuiMacro: GetInfo("ActivePID") returns PID of active console process or 0.

Build 151207

  • gh#438: No newlines in log files after prompts (cygwin/msys). Cygwin/msys shells do not write LF to screen unless they were started from ConEmu’s cygwin/msys connector. Therefore we have to do some magic to ‘detect’ line feeds…
  • Update terminals module to v0.7
  • In some cases PID of terminal-connector was not shown in the StatusBar.
  • Xterm’s alternative screen was not cleared on activating.
  • gh#351: Allow changing URL for retrieving version location on Settings/Update.
  • gh#351: Use https://conemu.github.io/version.ini by default.
  • Changes in processing of default hotkey Win+X.
    • It runs whole task contents, but not only first ‘tab’ from task;
    • If no one task was marked as ‘Default shell’, run default COMSPEC with arguments ` /k “%ConEmuBaseDir%\CmdInit.cmd”`.

Build 151205

  • Show cygwin/msys/clink flags on Settings/Info.
  • Post Fxx keys ncurses-friendly in the xterm mode emulation.
  • gh#442: In text selection pressing Ctrl+Shift+Arrow increases selection faster. Ctrl+Shift+Left/Right jumps by words if possible, or by 10 chars. Ctrl+Shift+Up/Down jumps by screen halfs.
  • gh#455: Redirected output from batch files to CON device was not working.
  • gh#438: No newlines in log files after prompts.
  • Do logging of Far prompt (only screen copy) if ‘Log console output’ is ON.
  • Update cygwin/msys connector to v0.6.

Build 151202

  • When ConEmu was started as a child window (InsideParent) it behaves as it has no focus.
  • Ensure that all child windows are closed properly on termination (InsideParent).
  • Option ‘Activate split/pane on mouse hover’ was not working in InsideParent mode.
  • Execution of ‘-GuiMacro:PID’ was failed if ConEmu.exe was in InsideParent.
  • Don’t allow to execute ‘-GuiMacro:…’ on wrong instance.
  • Increase debugger backscroll even if it was started in ConEmu tab.
  • XTerm keys fixup (F1..F4, BackSpace, Alt+Char).
  • Disable ‘Ctrl+Backspace - delete word leftward to the text cursor’ in cygwin/msys connector. Ctrl+BS is posted as “\x1F” and it may be configured in the .inputrc as following:
# Ctrl-BS - kill word on the left
"\x1F": "\C-w"
  • ANSI: Implement ESC c - Full reset (clear screen, backscroll, move cursor to the upper-left corner).
  • ANSI: Fix errors in ESC [ *n* @ and ESC [ *n* P sequences (insert/delete characters).
  • ANSI: Support byobu status line.
  • ANSI: Fix extended attributes errors on automatic line scrolling.
  • ANSI: Implement ESC E, ESC D, ESC M sequences.
| ESC E | Same as `\r\n` |
| ESC D | Same as `\n` but preserves X coord |
| ESC M | Reverse `\n` |

Build 151129

  • ANSI: Implement (xterm) codes to save ESC 7 and restore ESC 8 cursor position.
  • ANSI: Sequences ESC ] ... ESC \ were not processed properly in some cases.
  • cygwin/msys connector v0.4.
  • Warning fixes (from Michael Lukashov).

Build 151126

  • First try to create cygwin/msys terminal connector.
  • JumpList icon was not created properly for Task in some cases. If /icon switch was not specified for Task parameters, and first line of Task commands started with specials * or >, JumpList icon was not created properly.
  • gh#431: Fix crash in EmergencyShow (Win10, closing ConEmu).
  • Show in the StatusBar cygwin/msys connector’s PID as AltServer.
  • Pass UTF-8 encoded strings to debugger (ANSI debug logging).
  • ANSI: Implement ESC [ 3 J: dispose all backscroll lines (from xterm).
  • ANSI: Implement ESC ] 9 ; 10 ST - Request xterm keyboard emulation.
  • Testing purposes: Options -a and -s in ConEmuC -type. -a writes text to console using MBCS functions. -s writes text to console byte-by-byte (streaming). Example: ConEmuC -t -a -s UTF-8-broken.txt.
  • Improve UTF-8 support. In some cases, console output was broken.
  • Internal. Reset m_Term on tab restart
  • ANSI: Support xterm bracketed paste mode. Console application should write \e[?2004h to enable and \e[?2004l to disable bracketed paste mode. When mode is enabled, ConEmu sends pasted text to console input buffer framed into \s[200~\e[201~.
  • ANSI: Long OSC sequences written splitted by writes were processed improperly.
  • Don’t treat cygwin/msys connector as ‘Incomplete operation’.
  • Warnings fixes (from Michael Lukashov).

Build 151122

  • Minhook related: Try to change our imports to ease use of trampolines.
  • Append optional switches to single-command tasks. For example, there is default task {cmd} which has single command: cmd /k "%ConEmuBaseDir%\CmdInit.cmd". Now you may to run {cmd} /git from NewConsole dialog or via -cmd switch of ConEmu.exe. So, the result will be: cmd /k "%ConEmuBaseDir%\CmdInit.cmd" /git.
  • ConEmu here: Suggest to start {cmd} task instead of bare cmd by default.
    • So the default command for ‘ConEmu Here’ will be {cmd} -cur_console:n.
      • Note. Prepend /reuse /cmd before task name, if you want to reuse running ConEmu window: /reuse /cmd {cmd} -cur_console:n.
    • Default command for ‘ConEmu Inside will be {powershell} -cur_console:n.
  • DefTerm. Workaround for some weird command lines (CodeBlocks). For example, in CodeBlocks: C:\Program Files\CodeBlocks/cb_console_runner.exe "C:\sources\app.exe" MSDN recommends to quotate paths containing spaces and specials, but CB ignores this guideline.
  • Try to bypass start if -new_console:z specified (in cmd.exe prompt).

Build 151119

  • gh#412: Failed to restore window position on secondary monitor (d3da351 regression).
  • Far Manager plugins ‘ConEmu Background’ and ‘ConEmu Underlines’ were not working on Windows 7.
  • First user palette was multiplied on sequental TabMenu calls ‘View (palettes)’.
  • On ‘Debug active process…’ always show ‘New console’ dialog. So user may run debugger in a split or even change debugger comand line.
  • Allow to set hotkeys for debugging menu items.
    • Debug active process (default is Win+Shift+D);
    • Active process memory dump;
    • Active process tree memory dump.
  • For debugger NewConsole dialog suggest ‘30%’ for split and don’t autoselect command.
  • Debugger. Switch /AUTOMINI will create sequential mini-dumps.
    • So, it may be useful for creating ‘mini snapshots’ of running application with specified time intervals. After /AUTOMINI switch user may specify interval. Milliseconds: /AUTOMINI 500 or /AUTOMINI 500ms; seconds: /AUTOMINI 5s; and minutes: /AUTOMINI 1m.
    • Create sequental dumps of 64bit PID=1234 with 500ms interval: ConEmuC64.exe /DEBUGPID=1234 /AUTOMINI 500
    • Note. Press Win+Shift+D (default hotkey) to open NewConsole dialog with prefilled command to start debugger on the active process in the active console.
  • GuiMacro: Debug(<Action>) allows to create debugger console or memory dumps.
Action=0: Debug active process (confirmation dialog with options)
Action=1: Active process memory dump...
Action=2: Active process tree memory dump...

Build 151115

  • gh#415: GetLastError returned 6 after WriteFile even on success.
  • Shift+Debug active process allows to run debugger in a split. If menu item Debug active process is called with Shift key pressed, NewConsole dialog is opened (allowing to run debugger in a split).
  • ConEmuC Debugger. Don’t suggest to create MiniDump on MS_VC_THREADNAME_EXCEPTION.
  • In some cases ConEmuC64 was started as server for 32-bit root process.
  • gh#94: Gray window on PuTTY when connected via local proxy command.
  • Correct condition for attaching console app started from ChildGui (from gh#94).
  • gh#419: Cygwin-friendly paths were pasted into Clink’s prompt.
  • Option ‘Suppress bells’ added to ‘Features’ settings page. It suppresses annoying bells produced by echoing char(7), Beep and MessageBeep functions. ‘Inject ConEmuHk’ is required. Instead, ConEmu window (Frame/Title and TaskBar button) will flash one time if ‘Disable all flashing’ is not checked.
  • Let palettes list (TabMenu) will not be too long. There are 25 predefined palettes now, and if user creates user-defined palettes, the menu had unhandy scrolling.
  • Detection of ‘Active process’ is almost rewritten.
    • Since now, ‘Active process’ is the last process started in console (same as before);
    • But process used to select AppDistinct options must be interactive. For example, you have defined AppDistinct settings, with palette <PowerShell> for powershell.exe and palette <ConEmu> for bash.exe and git-bash.exe. Than, palette will not be changed anymore when you just run git status from powershell’s prompt, it will be changed if only bash.exe is started directly from powershell’s prompt. That was impelemented to suppress colors flashing during non-interactive command.
  • StatusBar column ‘Active process’ shows ‘Interactive’ and ‘Plugin is loaded’.
    • Asterisk * after process name: process is reading keyboard input.
    • Sharp # after process name: ConEmu plugin is loaded in Far Manager.
  • Add ‘ConEmu Underlines’ and ‘ConEmu Background’ items to Far’s F11 menu (panels, editor, viewer).

Build 151109

  • Move checkbox Activate split/pane on mouse hover to the Controls settings page.
  • Write process list changes and active process name to log (ConEmu -log).
  • Write CtrlC/CtrlBreak and other console events to log (ConEmu -log).
  • Don’t restart PC without confirmation after CUP ALL (chocolatey update). https://groups.google.com/d/topic/chocolatey/UvVVLpoBnCg/discussion
  • Improve ConEmuC debugger output.

  • A lot of ANSI fixes generally for plink fork.
  • ANSI. Primary buffer was not restored properly if there was no backscroll.
  • ANSI. Support tmux status line.
  • ANSI. Fix some scrolling issues.
  • ANSI. Sequence ESC [ *a* ; *b* r addresses working area coordinates. ANSI aware applications don’t know about backscroll (upper invisible area) buffer, they intend to work within ‘working area’ instead.
  • ANSI. New sequences are supported.
Sequence Description
ESC [ n @ Insert n (default 1) blank characters.
ESC [ n P Delete n (default 1) characters.
ESC [ row d Moves the cursor to line row (absolute, 1-based).
ESC [ 7 m Use inverse colors
ESC [ 27 m Use normal colors
ESC [ ? 47 h Same as ‘ESC [ ? 1047 h’
ESC [ ? 47 l Same as ‘ESC [ ? 1047 l’
ESC [ ? 1047 h Activate xterm alternative buffer (no backscroll)
ESC [ ? 1047 l Restore xterm working buffer (with backscroll)
ESC [ ? 1048 h Save cursor position
ESC [ ? 1048 l Restore cursor position
ESC [ ? 1049 h Save cursor position and activate xterm alternative buffer (no backscroll)
ESC [ ? 1049 l Restore cursor position and restore xterm working buffer (with backscroll)
  • ANSI. Report ‘xterm version 136’ on request to avoid problems in Vim, accessed by ssh on Unix machines, just let it think it’s an xterm terminal.
Sequence Description
ESC [ > c Reports ESC > 0 ; 136 ; 0 c

Build 151101

  • gh#401: Fix: Ctrl+~ doesn’t work on build 151029.
  • gh#399: Use mouse for ConEmu’s selection instead of passing to cygwin’s vim.
  • gh#398: Fix: Taskbar previews don’t match tabs order.
  • Fix: Win7 taskbar aero peeks appeared in wrong position if pad size was not null.

Build 151029

  • Add vertical block marker to clipboard while copying rectangular selection. Borland and Microsoft IDE-s are supported.
  • Warn if two instances of ConEmu plugin were loaded in Far Manager. If due to installation or configuration errors two dll libraries were loaded, they both will fail to work properly. So, warn user about the problem in detail, show suggestion, and stop plugin initialization.
  • Warn user if wrong version of ConEmu plugin was loaded in Far Manager.
  • gh#364: Ignore Minimize/Restore hotkeys pressed while Quake animation is not finished.
  • Don’t try to inject hooks into ConEmuC processes.
  • Menu item ‘Active process memory dump’ did not suggested to create dump automatically.
  • Add note about maximum length of backscroll buffer (32766 lines).
  • Improve configuration detection while reusing running ConEmu instance. For example, running ConEmu -quake must not create new tab in the existing ConEmu ‘non-quake’ instance.
  • Some corrections in Single-instance logic.
  • Source file codepage was ignored in ConEmuC -t switch. NB. ConEmuC /TYPE ... or its alias ConEmuC -t ... may be used to type any text file with ANSI sequences. Check out full syntax and examples in docs: ConEmuC.html#EchoAndType.

Build 151025

  • gh#373: Don’t decrease window height with AutoTabs (show/hide/show/hide/…)
  • gh#388 (gh#295?): Don’t change buffer height for cygwin/msys versions of vim.
  • gh#359, gh#84: Fix vim color issues on scrolling.
  • Don’t change buffer height when starting vim with --help or --version.
  • Vim terminal mode was not finished properly on exit.
  • ANSI \e[K has not cleared rightmost cell.
  • Checkbox ‘Desktop mode’ was removed from settings.
  • gh#336: Don’t poll Far 2.x current directories while Editor/Viewer is active.
  • gh#17: Send WM_ENTERSIZEMOVE/WM_EXITSIZEMOVE to ChildGui during resize.

Build 151015

  • gh#21: Multi-monitor support improvements.
    • ConEmu takes into account monitor working coordinates when using same xml between different PCs.
    • ConEmu tries to guess the monitor where user want to open the window.
    • New ConEmu.exe switch -Monitor <1 | x10001 | "\\.\DISPLAY1">. Where may be specified either monitor 1-based index, or HMONITOR (hex descriptor), or monitor name. User may check these values in the ‘ConEmu About dialog’ on then ‘SysInfo’ tab (Win+Alt+A).
  • gh#368: Fix thread handles leaks.
  • gh#353: Jump lists were created improperly if ConEmu was started with -single switch.
  • gh#337: Convert pasted paths to cygwin’s style if dropping files/folders from Explorer and others.
  • On paste filepath by Ctrl+V (Paste first line of clipboard) convert path to cygwin style, if active application is cygwin/msys.
  • Add <ConEmu> color scheme and use it by default (for new configs).
  • gh#357: Fix ConEmuHk conflict with python’s TKinter dropdown control.
  • ANSI: Brightness (back/fore) was not reset in some cases. For example: \e[96mA\e[36mB - B and A had same color.
  • Implement copying colored text using ANSI sequences. The feature works like ‘Copy as HTML’ implemented before. Option on the ‘Mark/Copy’ settings page, menu item ‘Edit’ -> ‘ANSI sequences’, and GuiMacro(3). ConEmu puts to clipboard real ESC codes, so only certain editors (or shells) are able to paste these sequences. Far Manager is working nice.
  • Only active split was updated after choosing palette from DDCB.
  • Improve bCurrentThreadIsMain detection in ConEmuHk (especially for cygwin/msys forks).
  • Support ‘Drag&Drop’ from Settings/Colors page onto any place on screen (drag colored square).
  • Use v140 toolset for ConEmuHk in ConEmuHk14.vcxproj.
  • GuiMacro: TaskAdd("Name","Commands"[,"GuiArgs"[,Flags]]). Create new task and save it to settings. Example command for PowerShell:
  ConEmuC --% -GuiMacro TaskAdd "Far" @"set ""FARHOME="" & ""%ConEmuDir%\Far\far.exe"" /w /p""%ConEmuDir%\Plugins\ConEmu;%FARHOME%\Plugins"""

Build 151006

  • Disable old workaround for gh#272 (revert eaaf96b). There were reports of broken redirections: gh#341, gh#323.
  • Add <Cobalt2> default color scheme.
  • gh#345: ‘Run as Administrator’ was crashed in some cases.
  • gh#350: Fix slowdowns when running commands in ConEmu.
  • gh#322: Fix crash in hooked applications while updating DefTerm module.
  • gh#344: Fix abnormal resize of maximized window if TabBar is auto-shown.
  • DefTerm. Improve error message, version, process name.
  • Temp fix for GetEnvironmentVariable stack overflow.
  • Print handles information in ConEmuC /checkunicode.
  • Fix wrong background from ‘ConEmu Underlines’ in some cases. If “Far /e …” was started from Panels, and only ‘Editor’ coloring was enabled in ‘ConEmu Underlines’, than wrong background was painted after exit Editor Far.exe process.
  • Don’t autoclose ConEmu window while error message box is waiting user interaction.
  • ConEmuHk termination refactoring.

Build 150913

  • ConEmuLn. Add separate settings for Editor and Viewer underline colors.
  • gh#321: Temp fix for Vim display issues.
  • gh#297: Show option ‘Delay between consoles initialization’ on the ‘Startup’ page.
  • Internal bugfixes from Michael Lukashov.

Build 150910

  • gh#272: Fix crash on exit when NVIDIA CoProcManager dlls are loaded (workaround). Thanks to @kraml for testing.
  • gh#290: Far Manager Background plugins were broken (minhook regression).
  • Feature ‘Change prompt position with LClick’ was not working with clink.
  • Don’t try to position cursor on higher line to avoid numerous beeps (bash, clink, etc.)
  • Don’t hook Kernelbase.dll in Windows 7 (MultiRunX64 was printed unprocessed ANSI).

Build 150908

  • ConEmuHk. Some internal changes (store function index, fix init/deinit steps).
  • gh#279: ConEmu window grew in size after relaunch if size was defined in pixels or percents.
  • gh#279: Unchecked ‘Align ConEmu window size to cells’ was ignored on startup.
  • Fix unexpected resize to integral size on startup.
  • Don’t create two default tasks {Bash::Git bash} for git-cmd.exe and bin/sh.exe.
  • Win2k: Remove static link to GetConsoleSelectionInfo.
  • Win2k: Adapt ‘Pause’ feature to lack of GetConsoleSelectionInfo.
  • gh#216: Mouse wheel only works on first console in split window.
  • Don’t count git-cmd.exe and git-bash.exe while checking for ‘Incomplete operations’ during tab/window close.
  • Correct close tab/window confirmation message (‘incomplete operations’ was not shown).
  • DefTerm. The switch -new_console:z was ignored by host application in some cases.
  • Print Hex and Dec ExitCode on shell exit errors larger than 255.
  • Fix handle leak (GetProcessBits, handle is not freed).

Build 150813c (preview)

  • gh#279: Unchecked ‘Align ConEmu window size to cells’ was ignored on startup.
  • Win2k: Restore compatibility with Windows 2000.
  • Win2k: Adapt ‘Pause’ feature to lack of GetConsoleSelectionInfo.
  • gh#216: Mouse wheel only works on first console in split window.
  • Fix unexpected resize to integral size on startup.
  • Don’t create two default tasks {Bash::Git bash} for git-cmd.exe and bin/sh.exe.
  • Don’t count git-cmd.exe and git-bash.exe while checking for ‘Incomplete operations’ during tab/window close.
  • Correct close tab/window confirmation message (‘incomplete operations’ was not shown).
  • DefTerm. The switch -new_console:z was ignored by host application in some cases.

Build 150813b

  • gh#279: ConEmu window grew in size after relaunch if size was defined in pixels or percents.

Build 150813a

  • This preview build includes patches from alpha branch, because alpha has some problems with NVIDIA CoProcManager.
  • Article in wikipedia was proposed for deletion.
  • gh#287: Fix crashes while starting threads.
  • Task parameter /dir was ignored if task was started by Win+X hotkey (‘Default shell’ checkbox).
  • GuiMacro: Use ConEmuC -Silent -GuiMacro .. to suppress GuiMacro result printing.
  • Support /dir %CD% in Task parameters.
  • gh#268: Support DefTerm for CodeBlocks. User have to add codeblocks.exe|gdb.exe to hooked executables.
  • In some circumstances ConEmu ‘drawing’ almost hangs during mouse text selection.

Build 150821

  • Article in wikipedia was proposed for deletion.
  • Support /dir %CD% in Task parameters. Than task will be started in the active console working directory. Configure your shell properly Launch task in specific directory
  • Task parameter /dir was ignored if task was started by Win+X hotkey (‘Default shell’ checkbox).
  • GuiMacro: Use ConEmuC -Silent -GuiMacro .. to suppress GuiMacro result printing.
  • gh#287: Fix crashes while starting threads.
  • Some internal changes in ConEmuHk.
  • Set gcc debug make destination to ‘Debug’ dir.

Build 150816

  • gh#268: Support DefTerm for CodeBlocks. User have to add codeblocks.exe|gdb.exe to hooked executables.
  • gh#255, old#1065: Add option ‘Restore to active monitor’ to the ‘Size & Pos’ settings page. It moves window to active monitor from inactive by Min/Restore hotkey even if window is visible. Option is implied by -quake ConEmu.exe switch.

Build 150814

  • Use minhook for hooking. Absolutely different method may eliminate a lot of weird problems (import pointers are not changed anymore).
  • In some circumstances ConEmu ‘drawing’ almost hangs during mouse text selection.

Build 150813

  • Default task {Shells:cmd-32} to run 32-bit cmd.exe on 64-bit OS.
  • Updater. Show in the confirmation message URL of downloaded version.ini.
  • Up to date supplied documentation files (About, License, etc.)
  • GitShowBranch.cmd: Fix unexpected apparance: (. Force to use english.
  • Mark ConEmuC.exe as dpiAware (manifest).
  • Some internal fix of TabBar activation during startup.
  • Add more logging of RealConsole window size and used font.
  • Rename settings page to ‘Tab bar’.
  • Let -new_console:w0 force ‘Insert’ mode and -new_console:w1 force ‘Overwrite’ mode.
  • Don’t load/save ConInMode option from settings. There is -new_console:w[0] instead.
  • Add ZoneId check and unblock for ConEmu’s binaries. Under some circumstances ConEmu binaries may be marked as ‘Downloaded from internet’. That, in turn, may cause blocking by SmartScreen or antiviral software. ConEmu will do checking of Zone.Identifier NTFS stream and warn user if it’s found. User may let ConEmu try to unblock files automatically or do this themselves. More info here: http://conemu.github.io/en/ZoneId.html
  • Let default task {cmd} be used for Win+X ConEmu hotkey. That is the configurable hotkey for ‘Create new ‘cmd.exe’ console’ action.
  • gh#224: Try to fix ‘Maximum real console size was reached’ error.
  • DefTerm. Add ‘Apply’ button to settings page.
  • DefTerm. Add option to log all ‘exec’ activities of hooked processes (debug purposes).
  • Update PortableApps icons.
  • A LOT of internal fixes.

Build 150728

  • Updater. Show user-friendly information download fails, add ‘Retry’ button in the error dialog.
  • Issue 1899: Java 7 has been crashed with java.lang.InternalError. If Java.exe was executed from symlinked location, the exception was occurred in some circumstances: Exception in thread “main” java.lang.InternalError: Should not get here at sun.nio.fs.WindowsNativeDispatcher.GetFinalPathNameByHandle(Native Method)

Build 150727

  • DefTerm. Support Lazarus’ console applications debugging. User must add lazarus.exe|gdb.exe to the hooked executable list.
  • Downloader. Switch -debug may be used to show console and print progress even if output is redirected.
  • Downloader. Improve logging of self-update activities.
  • Updater. Empty proxy server field is used for proxy-autoconfiguration.

Build 150722

  • gh#129: ‘Restore’ button didn’t restore width if TaskBar was auto-hidden.
  • GuiMacro: Tab(11,”Name”): activates tab by name, title or process name
  • Describe some switches in the About dialog.
  • Some additional logging while resizing window.
  • Write to Log information about used storage location (xml-file/reg + config).
  • For debugging purposes SEH is disabled in this release.

Build 150716

  • Now user may use any external downloader tool if ConEmu’s internal does not suite.
  • Implement new switch -update to force automatic update procedure.
  • Describe switch -LoadRegistry in ConEmu’s About dialog.
  • Force Win7 TaskBar to use different taskbar buttons for different configs selected by one of the following switches: -config <name>, -loadcfgfile <file>, -loadregistry, -basic.
  • Allow to delete several tasks at once, just select them with Shift or Ctrl pressed.
  • Button ‘Add default tasks’ behavior was changed. Confirmation dialog suggests to either to add absent tasks or add and recreate all default tasks. Recreation will affect tasks’ commands and parameters.
  • gh#213: Improve update error reporting, more logging.
  • Switch processor refactoring (code moved to CConEmuStart class).
  • Internal changes in threads creating/killing.
  • Some more logging for toolbar buttons and window resizing.

Build 150707

  • This build changes the download procedure used within automatic updates. ConEmu.exe (GUI) do not call WinInet functions anymore, instead it calls the downloader tool (ConEmuC.exe is an only option at the moment). This will eliminate accidental crashes of GUI after resume from sleep.
  • The downloader itself has new options. If user omit dst file name - try to get it from Url. If - was specified as dst file name or output is redirected - just write contents to stdout. New switch -agent <name> was implemented.

Build 150705

  • Script ConEmu/GitShowBranch.cmd was improved.
  • Highlight & goto was broken at least for powershell scripts (c8c386a regression). Only file name (path) was highlighted without following line number.
  • Highlight & goto detector was failed if mouse was before first backslash of the path.
  • gh#205: TabBar was not shown on startup in some monitor configurations (bacc66d regression).

Build 150701

  • Add optional ‘/Silent’ switch to suppress environment exporting messages. <pre>ConEmuC [/SILENT] /EXPORT[=CON|GUI|ALL] [Var1 [Var2 […]]]</pre>
  • gh#193: Fix wrong condition: ‘Warn if MacType hookers are loaded’.
  • Omit ConEmuC export variables message in GitShowBranch.cmd.
  • gh#174: Let paste to all ‘grouped input’ consoles at once.
  • Show actual hotkey instead of default Ctrl+BackSpace in Settings.
  • Vert/Horz text cursor was displayed in wrong position especially on DBCS systems.
  • Ctrl+BackSpace feature was not working on DBCS systems.
  • Redirect chocolatey downloads to github.
  • gh#204: ConEmu hung on startup in some cases while initializing default tasks.

Build 150629

  • Attach (Win+G) was not succeeded if ConEmu has different bitness.
  • Grab palette from Win+G attached consoles (Vista+) and create new if matching one was not found. These palettes ‘#Attached:XX’ are not saved automatically, but will be when user presses ‘Save settings’ button in the settings dialog.
  • gh#193: Show hookers warning once per day.
  • Show real names for ‘Win+Number’ and ‘Win+Arrows’ on the Controls page.
  • Search for static text control in the Settings dialog was failed.
  • Issue 1977: Don’t change RealConsole height on tabs auto-show/hide, resize ConEmu window height instead.
  • Add some urls to ConEmu.nuspec (chocolatey).
  • When tabs are auto shown icon was not loaded for the first tab.
  • Environment variables export was improved (some internal fixes).

Build 150707

  • This build changes the download procedure used within automatic updates. ConEmu.exe (GUI) do not call WinInet functions anymore, instead it calls the downloader tool (ConEmuC.exe is an only option at the moment). This will eliminate accidental crashes of GUI after resume from sleep.
  • The downloader itself has new options.
    • If user omit dst file name - try to get it from Url.
    • If “-“ was specified as dst file name or output is redirected - just write contents to stdout.
    • New switch -agent <name> was implemented.

Build 150705

  • Script ConEmu/GitShowBranch.cmd was improved.
  • Highlight & goto was broken at least for powershell scripts (c8c386a regression). Only file name (path) was highlighted without following line number.
  • Highlight & goto detector was failed if mouse was before first backslash of the path.
  • gh#205: TabBar was not shown on startup in some monitor configurations (bacc66d regression).

Build 150701

  • Add optional ‘/Silent’ switch to suppress environment exporting messages.

        ConEmuC [/SILENT] /EXPORT[=CON|GUI|ALL] [Var1 [Var2 [...]]]
    
  • gh#193: Fix wrong condition: ‘Warn if MacType hookers are loaded’.
  • Omit ConEmuC export variables message in GitShowBranch.cmd.
  • gh#174: Let paste to all ‘grouped input’ consoles at once.
  • Show actual hotkey instead of default Ctrl+BackSpace in Settings.
  • Vert/Horz text cursor was displayed in wrong position especially on DBCS systems.
  • Ctrl+BackSpace feature was not working on DBCS systems.
  • Redirect chocolatey downloads to github.
  • gh#204: ConEmu hung on startup in some cases while initializing default tasks.

Build 150629

  • Attach (Win+G) was not succeeded if ConEmu has different bitness.
  • Grab palette from Win+G attached consoles (Vista+) and create new if matching one was not found. These palettes ‘#Attached:XX’ are not saved automatically, but will be when user presses ‘Save settings’ button in the settings dialog.
  • gh#193: Show hookers warning once per day.
  • Show real names for ‘Win+Number’ and ‘Win+Arrows’ on the Controls page.
  • Search for static text control in the Settings dialog was failed.
  • Issue 1977: Don’t change RealConsole height on tabs auto-show/hide, resize ConEmu window height instead.
  • Add some urls to ConEmu.nuspec (chocolatey).
  • When tabs are auto shown icon was not loaded for the first tab.
  • Environment variables export was improved (some internal fixes).

Build 150621

  • Use recommended launcher for Git-For-Windows bash (default tasks).
  • Try to create default task for GitSDK bash.
  • Let Settings\Environment page use one line for one command. This will make concrete set commands with quotation marks. Following two commands are equal.

      set "PATH=C:\Program Files\ConEmu;%PATH%"
      set PATH=C:\Program Files\ConEmu;%PATH%
    

    But you still have to use quotations to keep trailing spaces

      set "VarName=This is my value   "
    
  • Support empty lines and comments on the Settings\Environment page. You may comment lines with #, //, -- or REM .
  • gh187: Highlight and goto did not work when filename not finished by :[space] or :[number].
  • Improve default task names unification and sorting.
  • The arrow char was inserted into Far Manager prompt after selecting text with Alt+Mouse.
  • Fix xml search path for Git-For-Windows package. Correct one is /opt/share/conemu/ConEmu.xml while ConEmu.exe is placed in /opt/bin folder.
  • Error code was not shown properly if DefTerm inject fails.

Build 150610

  • Simplify set usage in Settings\Environment.
  • gh#179: Fix broken environment inheritance (ca9e31a regression).
  • Ensure that set commands in the task/command line will override ConEmu’s default environment (settings page).
  • GuiMacro: Make Task and Shell functions synchronous to be able to use Context function after it.
  • GuiMacro: Return more information about wrong macro.
  • GuiMacro: Easify calling functions with int arguments. “Sleep 500;” was not working.
  • GuiMacro: Sleep function have not returned “OK” on success.
  • Allow using -new_console and -cur_console switches to set DosKey aliases.
  • Support aliases set up on the ConEmu Settings/Environment page.
    Note! These console aliases are processed by cmd.exe and far.exe only. If you need to set up aliases for other shells (PowerShell, bash, etc.) please refer to their manuals.
    Defining aliases are similar to doskey.exe. Actually, you may define:

      alias alias=doskey $*
    

    After that you can use alias in the cmd.exe prompt started in ConEmu:

      alias sudo=ConEmuC -c $* -new_console:an
    

    That is just an example. It’s more handy to add sudo definition into ConEmu Settings/Environment page. And when sudo is defined you may run from cmd.exe prompt, for example:

      sudo diskpart
    
  • gh#176: Avoid creating two tabs while starting:

      git-bash.exe --command=usr/bin/bash.exe -l -i
    

    However, preferred way to start Git-For-Windows in ConEmu tab is:

      git-cmd.exe --command=usr/bin/bash.exe -l -i
    
  • Update ConEmuPortable.ini with Environment information.

Build 150608

  • Quake mode enabled by -quake command line switch was not shown in Fast Configuration dialog.
  • Suggest the task user specified by ConEmu.exe -cmd {cmd} in Fast Configuration dialog.
  • Don’t set default task in Fast Configuration dialog, use exact -cmd ... command specified by user.
  • gh#151: Do (quake) animation after starting RealConsole creation.
  • Add -here switch description in the About dialog.
  • Ensure all default bash tasks names will be unique.
  • Always reset FARHOME env.var when creating default Far tasks.
  • Move checkboxes ‘Add ConEmu??? to PATH’ to separate page ‘Environment’.
  • gh#171, Issue 1655: Add option to skip ‘… brought ConEmu OnTop. Revert?’ confirmation.
  • gh#173: Attach of detached console ignored new ConEmu instance.
  • gh#173: Implement Unfasten of console tabs (ChildGui not yet). Tab menu item, hotkey and GuiMacro.
  • Implement ‘Settings\Environment’ page. User may define here multiple “set varname=varvalue” commands or set default console code page with “chcp utf-8”, “chcp 866” and so on. Environment %variables% in ‘varvalue’ are allowed and would be expanded before do set. One line - one command (set or chcp).
  • Create folder “ConEmu\Scripts” by installer. May be useful for storing user scripts (bat-files and so on). It would/may be added to PATH in the Settings\Environment page.
  • Git-For-Windows: Search for xml in /share/conemu while ConEmu.exe is intended to be in /opt/bin.
  • Log and warn (debug assertion) long alternative buffer loading.
  • Many MINGW-build related fixes from @Alexpux.

Build 150513

  • Don’t show [reg] or [xml] in Fast Configuration dialog because there is the storage location field.
  • gh#142: Win+Left/Right didn’t snap window if it was maximized.
  • gh#139: If Quake was hidden when user presses Win key (Start menu), ConEmu was unexpectedly slided down after second Win press (after menu was hidden).
  • Garbage was shown sometimes while searching in Settings dialog.
  • gh#143: Add CygWin bash default tasks by checking registry (for new config).
  • RealConsole pause refactoring.
  • Execute RedrawWindow in the server process to avoid access violation.

Build 150504

  • Jump list command was built erroneously if there was ‘-FontDir …’ or some other switch.
  • The field ‘Startup task’ was not filled in the ConEmu Fast Configuration dialog.
  • Fix ChocolateyAbout.cmd script, correct PATH suggestion and powershell command.
  • Check if Chocolatey is already installed and show the path (ChocolateyAbout.cmd).
  • gh#127: ConEmu did not stay minimized if a new console tab was opened in background.
  • gh#106: ChildGui turned black after ConEmu was restored.

Build 150428

  • Reset FARHOME env.var when creating default {Far} task without full path to far.exe.
  • Default/startup task may be not initialized properly if saved config was partial.
  • Show proper error code in StatusBar if restart console was failed.
  • gh#121: Selecting ‘No’ when restarting console as admin produced error state.

Build 150427

  • gh#112: Python with Tk: rightclick menu window not showing.
  • Set FARHOME env.var in default created Far tasks. That is because otherwise FARHOME may hold wrong value and plugins may be loaded from wrong place. So, the example task {Far Manager::Far 3.0 x64} will be:

      set "FARHOME=C:\Program Files\Far Manager" & "%FARHOME%\far.exe" /w /p"%ConEmuDir%\Plugins\ConEmu;%FARHOME%\Plugins"
    
  • Show link to ConEmuArgs.html on bad switch using.
  • If tab is renamed manually or via -new_console:t:??? new name will be shown in ConEmu window title. Now it’s possible to create some AHK scripts checking ConEmu title.
  • xterm keys: Ctrl+Home, Ctrl+End, Ctrl+Ins, Ctrl+Del, Ctrl+PgUp, Ctrl+PgDn.

Build 150420

  • Warn if MacType hookers are loaded in ConEmuC/ConEmuC64. User have to exclude these processes in the MacType configuration.
  • Allow to quit ConEmu by cross-clicking in the ‘Fast configuration’ dialog.
  • Startup task field was not filled properly in the Fast configuration dialog sometimes.
  • User had to press Enter to start find text from SearchBox if the match was above visible area.
  • Clean up ConEmu_Tilde.xml from default settings.

Build 150419

  • DefTerm. First VisualStudio debugging session was not processed by DefTerm.
  • Default settings were not applied on first start (suggested startup task).
  • gh#104: Add default task for Git-for-Windows-v2.
  • gh#107: Quoted Task names were not working after ConEmu.exe -cmd argument.
  • Warning ‘Maximum real console size was reached’ was appeared sometimes during several splits tab closing.

Build 150416

  • gh#96: DefTerm was failed to hook VS Debugging console applications. Avoid deadlocks.
  • Issue 1965: Correct 3rd state condition for ‘Change prompt text cursor position with LClick’.
  • gh#99: Make Update confirmation dialog a child of main ConEmu window.
  • Show in the update confirmation dialog the type of action: x86/x64 for installer or (7-Zip).
  • Allow using tasks in ‘Recreate’ dialog.
  • Let’s create default tasks {Bash::Msys2-64} and {Bash::Msys2-32} in new configs.
  • Add tab icon to default tasks: {Bash::MinGW bash}, {Bash::CygWin bash}, {SDK::WinSDK x.x}.
  • Use “CmdInit.cmd” instead of direct “set PROMPT=…” in default cmd’s tasks.

Build 150409

  • gh#63: Option ‘Auto save/restore tabs’ was conflicted with unchecked ‘Quit on close’.
  • Some of GuiMacro functions must be executed in the main thread only.

Build 150408

  • Far plugins folder can’t be configured in MSI-installer anymore. They are installed in %ConEmuDir%\Plugins. If you need separate Far installations - use Far.exe /p... switch.
  • Issue 1590: Speed up cygwin commands execution.
  • Show process information in the ‘Injecting remove failed’ message.
  • Don’t add spare default Far tasks, UnExpand paths if possible.

Build 150405

  • Redesign ‘Fast configuration’ dialog. Add ‘Start command’, ‘Palette’, ‘Quake style with HotKey’.
  • Choose preferred startup Task for new configs (Far -> TCC -> NYAOS -> cmd).
  • Fix wrong position of duplicate hotkey warning balloon.
  • Detect console buffer corruption and log it.Sometimes during kmk build script execution something very bad happens with console buffer and lines like following were written to log

      RefrThread CurSize={-18544x31} :ReadConsoleInfo (skipped=1)
    

    After that an assertion appears like

      nNewWidth>0 && nNewHeight>0 at RealBuffer.cpp:1784
    

Build 150331

  • gh#88: Allow ‘Apps’ key to use as single hotkey.
  • GuiMacro. Bugfixes and new function.
    • Function delimiter ‘;’ was ignored without brackets.
    • Support escapes in C-strings with “ConEmu -GuiMacro …”.
    • ‘Shell’ function without args must create new console.
    • Some functions will be postponed when RCon initialization finishes. To force postponing add ‘@’ prefix.
    • Add ‘Recreate’ function (‘Create’ is an alias). It can open ‘New console’ dialog, create default shell without confirmation, restart current tab (pane), optionally as Administrator. Following example shows ‘New console’ dialog, and inserts into started command prompt: ‘echo “Hello world”’.

      ConEmu.exe -Detached -GuiMacro "Create(0,1); Context; print(\"echo \\\"Hello world\\\"\");"
      

Build 150327

  • All links were updated to ‘http://conemu.github.io’.
  • Default StatusBar columns were changed.
  • In some cases font size (StatusBar, TabBar) was smaller than expected in new configs.
  • Allow to stop buzzing when started with ‘-basic’ switch.
  • Сhocolatey packets are released officially now.

Build 150319

  • Some required switches were not used while creating jump lists (/FontDir, /FontFile, etc.)
  • PostPromptCmd was not working with Far 3.
  • Added hotkey to activate ConEmu window and do ‘CD’ to the last (top in Z-order) Explorer window path. GuiMacro is available:

      PasteExplorerPath (<DoCd>,<SetFocus>)
      DoCd: 1 - ‘CD’, 0 - paste path only
      SetFocus: 1 - bring ConEmu to the top, 0 - don't change active window
    

Build 150316

  • Issue 1931: Fix crash and broken Far frames after resize (regression).
  • Inform user about some project events using TaskBar status area notification. Click on the icon or information balloon will show extended information dialog where user may stop showing this notification.
  • Translate mouse wheel into escape sequences when ConEmu emulates xterm (vim especially). If you want to use mouse wheel in Vim (official version was tested), just add to vimrc:

      """"""""""""""""""""""""""""""""""""""
      " let mouse wheel scroll file contents
      """"""""""""""""""""""""""""""""""""""
      if !has("gui_running")
          set term=xterm
          set mouse=a
          set nocompatible
          inoremap <Esc>[62~ <C-X><C-E>
          inoremap <Esc>[63~ <C-X><C-Y>
          nnoremap <Esc>[62~ <C-E>
          nnoremap <Esc>[63~ <C-Y>
      endif
    
  • Let user set up hotkey for ‘Detach’ action. Add GuiMacro ‘Detach’.
  • All HotKeys are stored now in the “HotKeys” settings subkey.
  • If anyone like to hide cursor in the inactive consoles just have to set inactive ‘Fixed cursor size’ to ‘0%’.

Build 150311

  • Try to fix full-width hieroglyphs drawing.
  • Hangul syllables were not defined in CJK range.
  • We need real width of CJK hieroglyphs, they might not be double as large.
  • Don’t try to use invalid fonts from registry (TrueTypeFont) on DBCS systems.
  • Current unicode range was doubled in drop-down.
  • Apply changes in unicode ranges immediately if was selected from drop-down.
  • Do not uncheck ‘Monospace’ on DBCS systems by default.

Build 150310

  • Mouse events were sometimes unexpectedly sent to the console during selection.
  • 150309 regression. “ConEmu.ico” was looked in wrong folder.
  • Overlay icon on Win7 TaskBar was not shown in some cases.
  • Name checkbox ‘Alternative font …’ instead of ‘… pseudographics font’.
  • TaskBar aero thumbnail of active console was not live-updated if ConEmu was minimized.
  • Don’t use ‘Enhance progressbars and scrollbars’ for cells with bg==gf unless it is 100% filled block.
  • Search panel was too small in some cases.
  • Issue 1939: Tab bar height too big since version 150307.

Build 150309

  • Issue 1937: ‘Admin shield’ in TabBar was broken.
  • Only use “ConEmu.ico” name as possible external icon.
  • Logging. Log ConEmu icon loading, created startup consoles, overlay icon actions.

Build 150307a

  • Issue 1931, gh#67: ConEmu’s output was blocked after maximizing window.

Build 150307

  • gh#65: Min size for active cursor changes were not saved.
  • Create toolbar buttons as large as the size of the tabbar.
  • Take current dpi into account while creating tab icons.
  • Issue 1929: Quake position was changed unexpectedly after Win+D / restore.
  • Issue 1792: Unexpected console resize happens after Win+D Win+D.
  • gh#66: New tab template ‘%f’ shows shell’s current folder name. Check wiki ShellWorkDir.

Build 150305

  • Wrong tab was activated sometimes by mouse click if there was a scroll buttons on the TabBar.
  • Do not do tab flickering while switching them by mouse clicks.
  • White background flickering was occured sometimes during ConEmu startup.
  • Default tasks were created sometimes not properly quoted.
  • Add ‘Ranges’ drop-down list to pseudographics font settings with some predefines.
  • Issue 1927: Key-Up event for ‘Space’ and ‘Enter’ in ReadConsoleInputA.
  • gh#63: Switch -cur_console:d:... was not stripped from Task while running shell sometimes.
  • While creating ‘Auto save/restore’ task add all -cur_console switches before the shell itself.

Build 150303

  • Issue 1925: Single character between two gray blocks was obscured (ex. OEM ‘B1 C1 B1’).

Build 150302b

  • Far Tasks. Show bitness x86/x64 in the task name.
  • Far Tasks. If only one Far installation found - just use {Far} as task name.
  • Far Tasks. Sort default Far tasks by version.
  • When dropping files in the Far Manager prompt, show ‘+ Enter’ menu items first.
  • TCC tasks were not created by default.
  • Issue 1923: ‘ConEmu here’ was forced to “%USERPROFILE%” from certain folders. If user starts ‘ConEmu here’ from “%ConEmuDir%”, “%windir%” or “%windir%\system32” ConEmu was switched to “%USERPROFILE%”. That’s because these folders may be used if user starts ConEmu (or just cmd as DefTerm) from bare Win+R. So, the switch “/here” was implemented, it’s not shown in the Settings dialog. User needs to re-register ‘ConEmu here’ existing commands.
  • Process ‘ConEmu[64].exe’ returns exit code of last terminated shell.
  • Switch “/QuitOnClose” forces ConEmu window closing with last tab.

Build 150302a

  • Issue 1921 : Regression: Fix a crash on last tab close (WinXP).

Build 150302

  • Show current tab icon as Windows 7 taskbar overlay icon.
  • Visible region lock (scrolling) was unexpectedly dropped sometimes.
  • Add all installed (and found) Far Manager installations while creating default tasks.
  • Issue 1920 : Fix visual defect in window padding area during Quake style slide down animation.
  • Allow Quake window resizing and moving.
  • Fixed resize issues after Quake slide up/down.
  • Add to the TabMenu items ‘Split to right’ and ‘Split to bottom’.
  • Untick ‘Auto minimize to TSA’ when turning Quake mode off.
  • ToolBar buttons min/max/close were not properly shown/hidden on some options changing.
  • gh#57: Cannot restore prevoisly opened tabs if there was a task marked as ‘Default for new console’.
  • Consoles were not resized sometimes after Win+Left/Right (snap window to left/right monitor edge).
  • After restoring snapped window the snapped state was dropped (window was put to ‘Normal’ position).

Build 150224

  • One more correction of keyboard input processing.
  • Option ‘Treat font height as device units’ was not saved in new config.
  • Pseudographics font was incorrectly sized on some dpi-s.
  • HotKeys. Implemented ‘Kill all but shell’ function. Default hotkey Win+Shift+Delete for new configs. Also it is accessible from TabMenu or SystemMenu and GuiMacro: terminate all but shell process Close(10), no confirm Close(10,1). Note. If there is a shell only - confirm user to kill the shell.
  • Don’t do “ConEmuCpCvt” conversion if some chars were failed.
  • Ability to change ‘processor affinity’ and ‘process priority’ for all running processes. The function affects all running processes in the current console (tab/pane). Available from TabMenu and SystemMenu item ‘Affinity/priority…’, HotKey and GuiMacro AffinityPriority([Affinity,Priority]). Unless you specify ‘Affinity’ or ‘Priority’ in GuiMacro function ConEmu will show dialog with affinity/priority options.
  • Issue 1911 : Do not scroll out of found position after clicking in the console to allow select text there.
  • Option ‘Skip click on activation’ was not working sometimes.
  • Allow physical scroll down of the console until the cursor remains visible.
  • Internal. Fix wrong logging message for WA_ACTIVE
  • During excessing keyboard activity console contents was updated slowly.
  • Switch “/bypass” creates processes with normal priority.
  • gh#59: Message ‘Failed to start task in user mode, timeout’ was appeared after updating.
  • gh#56: Do not use RVAL_REF with GCC
  • LogFiles were not created for far.exe sometimes.
  • Do not flush logs after each line to avoid lags.

Build 150224a

  • Issue 1917 : Avoid ‘Win+Shift+Delete is not unique’ error.

Build 150218

  • Issue 1817 : Fix dropped or garbled keypresses sent from AHK.
  • Don’t suggest by default xml storage on Windows 2000.

Build 150216

  • GuiMacro. Issue 1411 , gh#58. WindowPosSize("<X>","<Y>","<W>","<H>"). It changes window pos and size, same as ‘Apply’ button in the ‘Size & Pos’ page of the Settings dialog.
  • GuiMacro. Simplify passing string arguments. For example, the following commands will be equal now:

      ConEmuC -GuiMacro WindowPosSize "0" "0" "800px" "600px"
      ConEmuC -GuiMacro WindowPosSize 0 0 800px 600px
    

Build 150215

  • Add menu item ‘Online &Help’ to the SystemMenu.
  • After AppDistinct settings change console was not redrawn properly sometimes.
  • Sometimes true colors were not used while executing smth like “edit:<git log”.
  • Outscreen regions were not cleared by “cls” executed in “Far /w” prompt.
  • Issue 1881 : Newly catched admin consoles were unexpectedly scrolled to the bottom (DefTerm).
  • Catched RealConsole (DefTerm) was hidden even if ‘Show real console’ was ticked.
  • Use bitmap resource for ‘Search’ icon.

Build 150209

  • Issue 1897: Tear off started “ConEmu.exe” from “taskeng.exe” (switch /demote). Let process created from task sheduler runs indefinitely.
  • Auto save window size & pos is turned on by default.
  • Add test batch “utf-8-test.cmd” (check console unicode capabilities).
  • Suggest ConEmuXml storage for new configurations by default.
  • Issue 1870 : Rename dialog was shown out of screen if tabs were on bottom.

Build 150206

  • CP hack: Use ConEmuCpCvt to force output CP conversion. If some command uses wrong CP while converting ANSI to Unicode (the example may be perl.exe from “git add -p”) set variable to correct its output. Use asterisk for all apps. This hack affects ONLY WriteConsoleW function calls.

      Format:
        <exename>:<badcp>:<goodcp>[;<exename>:<badcp>:<goodcp>[...]]
      Example:
        set ConEmuCpCvt=perl.exe:1252:1251;*:850:866;
    
  • CP hack: Use ConEmuDefaultCp to change output CP if you don’t want to use chcp. If you can’t use “chcp <codepage>” to change whole console CP output, you may change it using environment variable ConEmuDefaultCp. It will affect only WriteFile and WriteConsoleA functions. So, if you need to run several apps in one console simultaneously…

      set ConEmuDefaultCp=1251
      ConEmuC -fork -c App1.exe
      set ConEmuDefaultCp=866
      ConEmuC -fork -c App2.exe
      set ConEmuDefaultCp=
    
  • Add information about “-Async”, “-Fork”, “-Download” switches.
  • Switch “-noquake” implies “-nosingle”.
  • TaskBar jump list was created without directly specified xml configuration file.
  • Button ‘Save’ instead of ‘Start’ was shown if bad startup Task was detected.
  • The menu item ‘Clear history…’ was not working (the one in the [+] drop-down menu).
  • Sometimes ‘Console script are not supported here’ error appeared after running a task from NewConsole dialog.
  • Tasks may be organized with folders. Delimit task name from folder name with “::”. For example, type “Shells::PowerShell” instead of “PowerShell”, and so on. Only one level of folders is allowed. No need to reorder tasks of one folder continuously, folders are filled by name. Generally this was implemented for drop-down [+] menu.
  • Create default tasks with folders (Shells, Bash, SDK, and so on).
  • Find task by name with or without folder part (Startup page).
  • Button ‘Add default tasks’ will not create task duplicates (checking by task name).
  • Use self-implemented UnExpandEnvStrings while creating default tasks.
  • Allow switch ‘/reuse’ in task parameters (alias for ‘/single’ yet).

Build 150203

  • Issue 1886 : Change text cursor position with ‘LeftClick’ was not working when PSReadLine was loaded in your $profile. Look at RevokeMouseInput.ps1.
  • github#20: ‘Ctrl-Left’ and ‘Ctrl-Right’ was not working in Vim/xterm.
  • Create new console confirmation now if disabled by default. So ‘Win+W’ or ‘LClick’ on the [+] button creates new default task. The default task may be choosed in the ‘Tasks’ settings page. New console dialog (command, directory, as admin, and so on) may be shown with:
    • ‘Win+Shift+W’;
    • ‘Shift+LClick’, ‘RClick’ or ‘LongTap’ on the [+];
    • ‘New console dialog…’ menu item (down arrow about [+]).
  • Window and tab closing confirmations now are disabled by default. But if there are more than a two user processes running in the console - close confirmation may be shown. So, there are thee checkboxes now:
    • Confirm window closing (unchecked);
    • Confirm tab closing (unchecked);
    • When running process was detected (checked).

Build 150128

  • Add missed GuiMacro GetOption description.
  • Debug. Show ConEmu build number in the _ASSERT dialog
  • Issue 1878 : GuiMacro. Add ability to get some environment from ConEmu.

      GetInfo("PID"[,"HWND"[,...]])
      - Returns values of some ConEmu environment variables
        GetInfo("PID") returns %ConEmuPID% and so on
        It's processed in GUI so the result may differs from RealConsole
    
  • Search field sometimes disappeared after playing with toolbar visibility.
  • Add small gap between search field and right window frame edge if toolbar is hidden.
  • HighlightAndGoto: Add examples with ‘cmd.exe /c …’.

      cmd.exe /c "echo Executing "%3" & "%3""
        
      After Ctrl+Click on highlighted (underlined) file
      ConEmu will start cmd.exe in new tab and highlighted file will be executed.
      Documents will be opened using associated application.
      Add "-new_console:n" suffix to suppress "Press Enter or Esc to close console".
    
  • Issue 1883 : Search field activation hotkey was not working if toolbar buttons were hidden.
  • AnsiEscapeCodes: Change behavior on wrong ST terminator of OSC detected (allowed ‘ESC ' or ‘BEL’).
  • Issue 1865: Deadlocks were happened sometimes, PipeServer termination sequence was changed.

Build 150119a

Build 150119

  • Issue 1864 : ExportEnvVar. Drop variable instead of setting it to empty string.
  • Don’t show both small and large icons in the confirmation/about dialogs.
  • Internal. GuiMacro “Context” was not returned result as expected. Esage example:

      print("abc"); Split(2); Context(); print("def")
    
  • Minor change in 16x16 icon, add 256x256 icon, update icons in setupper.
  • Allow ‘Debug active process’ while ChildGui is stopped by ConEmuReportExe on loading.
  • Remove GetVersionEx warnings (internal).
  • Debug purposes switch: ConEmuC -OsVerInfo. Sets errorlevel to OsVer. Ex.: Win7 -> 1537 (0x601)
  • Link ConEmuHk64.dll and ConEmuCD64.dll statically with msvcrt.dll.
  • Issue 1865: Fix weird hungs in LdrpAcquireLoaderLock (cmd.exe).
  • Emulate AnsiCon environment variables.

      "ANSICON" = "WxH (wxh)", where W,H size of the buffer, w,h - window.
      "ANSICON_DEF" = "BF", (B)ackground and (F)oreground color indexes (hex).
      "ANSICON_VER" = "170", does not exist in the environment block.
    
  • Support some more ANSI SGR codes (22, 23, 24).

      "ESC [ 22 m" - Unset BrightOrBold
      "ESC [ 23 m" - Unset ItalicOrInverse
      "ESC [ 24 m" - Unset BackOrUnderline
    
  • Issue 1865: Allow ANSI escape sequences when redirecting to device CON.

Build 150111

  • New ConEmu icon.
  • HighDpi fixes (if primary mon is 192dpi and secondary is 96dpi).
    • Search icon size on secondary monitor was huge.
    • Settings dialog controls were sized too large.
  • DefTerm. Aggressive mode was not be able to disabled actually.
  • GuiMacro. Allow to execute some GuiMacro after ConEmu window creation. Example:

      ConEmu -Detached -GuiMacro "Task(""{cmd}""); Settings"
    
  • Issue 1861: GuiMacro. Context([<Tab>[,<Split>]]).
  • Don’t try to start clink if cmd is started just for single command execution.
  • Fix incorrect buffer address passed when getting AutoRun reg key value.
  • Small improvements for build settings in VS12 project.

Older entries