Spotlight
Rainbow Brackets
Rainbow Brackets
supports assigning a unique color to each pair of opening and closing brackets to make it very easy to identify them and their scope.
Highlight Text
Highlight Text
supports marking text with specified font color
, background color
, line type
, and line color
, which makes it very convenient to highlight the output text that needs attention.
Manage sessions
With the newly added features of drag and drop
and move to
, session management has become more convenient and easy.
OneKey
OneKey
enables automatic login by using the preset login settings. When a large number of servers share the same login settings, this feature can greatly facilitate their management. Especially when login settings change, it is easy to make all servers switch to the new login settings by simply modifying the corresponding OneKey
.
OneKey
supports:
Trigger
A trigger
is an action that is automatically executed when the output received from a server matches specified text or regular expressions. Triggers help automate and streamline workflows in the terminal, increasing efficiency and reducing the need for manual intervention.
Trigger
types:
- Trigger / Custom Link
- Trigger / Custom Menu
- Trigger / Event: Connection And Disconnection
- Trigger / Highlight Text
- Trigger / Play Sound
- Trigger / Run Command
- Trigger / Send Text
- Trigger / Show Tooltip
Build-in Triggers
:
- Trigger / Hyperlink
- Trigger / Ip Address
- Trigger / Hexadecimal Converter
- Trigger / Timestamp Converter
- Trigger / Unarchiver
Sync Terminal Folder
Sync Terminal Folder
supports syncing the current working directory between filer and terminal. When you change directories in the terminal, filer should follow automatically and optionally, vice versa, the working directory of the filer can be quickly copied to the terminal.
Sync Terminal Folder
supports:
- Copy directory path from filer to terminal.
- Manually sync terminal folder.
- Automatically sync terminal folder.
Note that not all local or remote systems support Sync Terminal Folder.
Sysmon
Sysmon
allows you to monitor the usage of system resources such as the time, uptime, CPU, memory, network, etc. of the local machine or remote server.
Sysmon
supports:
- Linux (SSH, Shell)
- macOS (SSH, Shell)
- Cmd
- PowerShell
- Windows Subsystem for Linux
Performance
Terminal
The redesigned Log
module, combined with further code optimization, allows WindTerm
to run several times faster than other terminals, regardless of whether logging is enabled or not.
Sftp Transfer
The redesigned Sftp Transfer
module enables the fastest possible transfer speeds for both large files and a large number of small files. In some cases, the speed can even be up to ten times faster than professional tools.
Local Transfer
The redesigned Local Transfer
module allows for file copying and deletion at speeds that can rival or even surpass those of the system itself.
Usage:
Systems
Version | Architecture | Operating Systems |
---|---|---|
WindTerm_2.6.0_Windows_Portable_x86_32 | x86_32 | Windows 7, Windows 8, Windows 10, Windows 11 |
WindTerm_2.6.0_Windows_Portable_x86_64 | x86_64 | Windows 7, Windows 8, Windows 10, Windows 11 |
WindTerm_2.6.0_Mac_Portable_x86_64 | x86_64 | macOS 10.13, macOS 10.14, macOS 10.15, macOS 11, macOS 12 |
WindTerm_2.6.0_Linux_Portable_x86_64 | x86_64 | Generic Linux (glibc 2.17 and later) |
Upgrade
Versions before Version 2.4.0
- Start
WindTerm
and select theprofiles directory
and quit. - Replace the new
.wind/profiles
folder with the oldprofiles
folder. - Restart
WindTerm
and all the sessions and configuration will be restored.
Versions after Version 2.4.0
- Start
WindTerm
and select theprofiles directory
containing the old.wind
folder. - It is recommended to choose the
Home Directory
to facilitate subsequent upgrades.
If the .wind
folder needs to be moved to another system:
- Quit
WindTerm
. - Replace the new
.wind
folder with the old.wind
folder. - Restart
WindTerm
and all the sessions and configuration will be restored.
The .wind folder is cross-platform.
Known Issues:
- [ZMODEM] Only support file names contains ASCII characters in Windows, otherwise the file name of the transfered file will be garbled after transmission, but it does not affect the correctness of the file content. Linux and MacOS version does not have this problem.
Translation:
- [CHINESE] Update the language file, contributed by @shileiye, @hityb, @springsunx. #1951 #2062
- [GERMAN] Update the language file, contributed by @kvnklk. #1031
Features:
- [EXPLORER] When the state of the session changes, the session nodes in the
Explorer Pane
also adjust the color and style of the text, such as displaying a strikethrough when a session is deleted. - [FILER] Supports
Sync Terminal Folder
. #132 #193 #304 #331 #450 #814 #823 #856 #937 #1047 - [FILER] Supports specifying default editors for systems
Windows
,macOS
andLinux
respectively. - [FILER] Support the display, execution, and transmission of macOS bundles.
- [FILER] Supports
Preserve original file modification time
, selected by default, andPreserve original folder modification time
, not selected by default. - [GUI] Enables bracket pair colorization, enhancing text readability by visually highlighting paired brackets.
- [GUI] Strictly differentiate between the left and right
Alt
keys, reserving the rightAlt
key for use as theAltgr
key. - [GUI] Record and automatically use the previously activated tab in the login wizard dialog.
- [GUI] The
Session
tree in theSession Pane
supports moving nodes through drag and drop. - [GUI] Added
Move To...
to the context menu of theSession
tree in theSession Pane
to support moving selected nodes. - [GUI] Supports duplicating the selected
group
nodes and their child session nodes in theSession Pane
. - [GUI] Supports
Copy text if selected, otherwise paste text
when right-clicking the mouse. - [GUI] Change
Select Fold
toSelect Command
in the right-click menu and add the shortcut keyCtrl+Shift+/
. - [GUI] Change
Goto Folder Header
andGoto Next Folder Header
toGoto Previous Command
andGoto Next Command
in the right-click menu and enhance the reliability of jumping to commands. - [GUI] Display the scanning progress of files and folders during the transfer preparation phase.
- [GUI] Supports highlighting text manually.
- [GUI] Supports instant highlighting of all instances of the current selection.
- [GUI] Added
Duplicate SSH channel
to the custom mouse actions of the tab. - [GUI] Use
Paste Selected Text
instead ofCopy And Paste
to avoid overriding the system clipboard. - [GUI] The
Sync Input
dialog box supports deleting an item in the synchronization list by double-clicking it. - [GUI] The tab uses a font with strikethrough enabled to draw a nonexistent session name.
- [GUI] Hides the
?
button on Windows. - [GUI] Supports clicking on
hyperlinks
, such ashttp
,https
,mail
,ftp
,ftps
,file
,scp
,sftp
, etc. - [LOG] Change the default maximum size of the log file from
10MB
to0MB
, meaning the log file size is no longer limited by default. - [OUTLINE] Add the option
Enable symbol preview
to allow the preview window not to be displayed when hovering with the mouse. - [SCHEME] Supports
syntax pairing
on the alt screen. - [SCHEME] Unless the server-side specifies attributes such as
foreground color
,background color
,italics
, orinverse color
for the font, semantic coloring is used for text rendering to display more diverse content. - [SCHEME] Supports syntax highlighting on the alt screen.
- [SCHEME] Highlight words such as
don't
,doesn't
,can't
,couldn't
,true
,false
etc. - [SCHEME] Highlights command options connected by multiple hyphens, such as
-fno-access-control
. - [SESSION] Support
SSH OneKey
andExpect OneKey
. - [SESSION] Support the recognition of scenarios requiring username and password input, and use the usernames and passwords from
OneKeys
as the autocomplete list. - [SESSION] Supports multiple types of triggers.
- [SESSION] Built-in with multiple useful triggers.
- [SESSION] When no node is selected, the right-click menu adds the menu item
New Session
. #2083 - [SESSION] Supports
Sysmon
for easy monitoring of system resources usage, such asCPU
,memory
,network
, etc. By default,Sysmon
is no longer enabled. Continuous execution of commands required bySysmon
can cause immediate disconnection of some devices, such as routers and switches. #65 #163 #488 #671 #803 #1077 - [SESSION] Supports specifying the identity files for sessions in systems
Windows
,macOS
andLinux
respectively. - [SESSION] In
Free Type
mode, pressing theCtrl
key allows the copying of the dragged text. - [SFTP] The new congestion algorithm can utilize the network's transmission capacity as much as possible for file transfer.
- [SFTP] Add logging of transmission parameters in
debug mode
. - [SFTP] Removed the use of the
SCP
protocol because it is no longer secure. - [SFTP] Removed
Use high speed transfer
because it is no longer needed. - [SFTP] Try to delete the partially transferred files when file transfer fails.
- [SSH] Support for viewing automatically logged-in information recorded for sessions, including usernames, passwords, interactive questions, etc.
- [TERM] Supports
CSI ?0c
,CSI ?1c
,CSI ?8c
to set the visibility of the cursor. - [TERM] Supports
CSI 4:0m
,CSI 4:1m
, ...,CSI 4:5m
to set the underline style. - [TERM] Supports
CSI 58;2;INDEXm
,CSI 58;5;R;G;Bm
,CSI 59m
to set the underline color. - [TERM] Supports
OSC 697
, which is the private control sequences ofFig
. - [TERM] Supports
OSC 1337
, which is the private control sequences ofiTerm2
. - [TERM] According to the
ECMA-48 3rd edition
, considerCSI 21m
as drawing underline instead of removing bold font style. - [TERM] According to the
ECMA-48 3rd edition
, considerCSI 22m
as removing bold and faint font styles instead of removing faint font style. - [TERM] According to the
ECMA-48 5th edition
, support usingCSI 38:2:INDEXm
,CSI 38:2::R:G:Bm
,CSI 48:2:INDEXm
,CSI 48:2::R:G:Bm
,CSI 58:2:INDEXm
,CSI 58:2::R:G:Bm
to set the foreground and background colors. - [TERM] The alt screen prohibits clearing the current screen.
Improvement:
- [FILER] Hide the unnecessary
Permissions
column inWindows
and the unnecessaryOwner
andGroup
columns inmacOS
to improve speed. - [FILER] In
Windows
, the tooltips for files or folders no longer displayPermissions
to improve speed. - [FILER] Cached
file type
,modification time
,file size
, and other data to avoid repeated real-time retrieval during display. - [FILER] Optimize the drawing of the file list by caching icons and recalculating layout only when necessary.
- [FILER] Improve the speed of obtaining file icons.
- [FILER] Display file sizes in
GB
,MB
, orKB
, and when the file size is less than1 KB
, display the byte count directly. - [FILER] Use the icon of the file being transferred as the task icon when transferring a single file.
- [FILER] Move the
Link to
line to display below theType
line. - [FILER] The input boxes in the dialog for creating new
files
,folders
, andfile links
no longer allow the input of illegal characters, such as\
,/
,:
,*
,?
,"
,<
,>
,|
. - [FILER] Remove the unused
...
button from the input boxes in the dialog for creating newfiles
,folders
, andfile links
. - [FILER] When displaying the local file system, add a
...
button to the input box in theMove To
dialog to facilitate the selection of the target folder. - [FILER] When displaying the local file system, add a
...
button to the input box in theNew Link
dialog to facilitate the selection of the target file. - [FILER] Significantly improve the speed of copying and deleting
local
files, as well as the speed of opening folders. - [FILER] In Windows, use
\
as the separators that are appropriate for the underlying operating system in the address input box. - [FILER] Change
Refresh...
toRefresh
in the right-click menu, as this operation does not require further interaction. - [GUI] Add tooltip
Requires server support
to slip buttonsSftp
andSysmon
in thesession settings
dialog. - [GUI] Disable autocomplete in the
alt screen
. - [GUI] Change the shortcut keys for
Find...
fromAlt+F
toCtrl+Shift+F
to avoid being unable to useAlt+F
in specific systems, applications, or keyboard layouts. - [GUI] When clearing the screen, if the last line is a command prompt line, it should be retained.
- [GUI] Render text aligned by column, including CJK characters.
- [GUI] Improved the performance of generating timestamp text in the text margin.
- [GUI] Use
GiB
,MiB
andKiB
instead ofGB
,MB
andKB
as the unit for transfer speed. - [GUI] Swap the images in icons
Visible
andInvisible
in the safe input box to better match their literal meanings. - [GUI] Transfer time of files displayed in milliseconds precision.
- [GUI] When creating a new session in the
Session Pane
, the new session's group should default to the currently selected node's group, rather than being blank. - [GUI] Reduce the margin for drawing control characters such as
ESC
to make it more compact. - [GUI] Improve the
Master Password
dialog box to display more rich information. - [GUI] Improve the
Explore Pane
to avoid drawing defects caused by resolution issues. - [GUI] Reduce the right-side margin of the
Session Settings
andTerminal Settings
dialog boxes. - [GUI] Reduce the margins and size of the
slip
button. - [GUI] Improve the drawing performance of markers in the scrollbar.
- [GUI] Improve the display size of the dialog to better fit the monitor. #942
- [GUI] The
autocomplete list
better supports for high DPI displays. #1021 - [GUI] When near the bottom of the screen, the
autocomplete list
is displayed above the line of text to show more items. - [GUI] Whether or not to beep is customizable when a message is received.
- [LOG] Improved the generation of log text and the writing of log files, resulting in a performance improvement of several times and reduced memory consumption.
- [OUTLINE] The text in the preview window has not been adapted for high DPI.
- [SCHEME] Improve the performance of text highlighting by using a faster regular expression engine.
- [SCHEME] Identify command prompt lines with greater accuracy.
- [SCHEME] The
command options
are rendered in regular font instead of italics. - [SESSION] Increase the session
connection timeout
to20
seconds to better accommodate poor network conditions. #2076 - [SESSION] Improve the responsiveness of command input during file transfer processes.
- [SESSION] Optimized the read and write operations of the internal socket, resulting in a 3% speed increase.
- [SESSION] Improved the performance of network packet transmission and parsing by using a memory pool.
- [SFTP] Significantly improve the speed of downloading, uploading and deleting
sftp
files, as well as the speed of opening folders. - [SFTP] Use larger packet sizes for receiving and sending data to improve file transfer speed.
- [SFTP] Support setting the buffer size for options
SO_RCVBUF
andSO_SNDBUF
to improve transfer performance, with the default size forSO_RCVBUF
being1048576
and forSO_SNDBUF
being262144
. - [SSH] When authentication fails, the number of attempts to re-authenticate has been reduced from
6
to2
, and the interval between attempts has been decreased from500
milliseconds to200
milliseconds to prevent prolonged unresponsiveness in the interface. - [SSH] Adjusted the order of ciphers, giving higher priority to
aes256-gcm@openssh.com
andaes128-gcm@openssh.com
thanchacha20-poly1305@openssh.com
. - [TERM] Deprecate the control sequences
CSI 10m
,CSI 11m
, ...,CSI 19m
for settingalternative fonts
, asalternative fonts
are rarely used anymore. - [TRANSFER] When transferring files, ensure that the progress is updated at least once per second to prevent the progress bar from not being updated for a long time when transferring a large number of files.
Bugs:
- [APP] Unable to automatically create the folder when writing the configuration file if it does not exist.
- [APP] The application sometimes crashes when closing session tabs quickly. #922
- [FILER] Unable to open a folder with the
\
character in the name. - [FILER] In the
macOS
system, the file list does not support making non-contiguous selections. - [FILER] When dragging and dropping a large number of files into the
Filer Pane
, the interface responds very slowly. - [FILER] In Windows, entering the root directory, such as
c:
, and then clicking on the disk nodes in the autocomplete list or pressing enter, does not correctly display the contents of the root directory. - [FILER] Unable to open network path, such as
\\10.0.0.2\sample
. - [FILER] Browsing empty folders may lead to memory leaks.
- [FILER] The
Upload file
dialog cannot correctly display file names containing<
and>
characters. - [GUI] When filtering the list of
Sessions
, the matching items are not being highlighted. - [GUI] When filtering the lists of the
Session
pane and theOutline
pane, the matching items are not being highlighted. - [GUI] When performing the
open
operation on a group node in theSession Pane
, it is not possible to open session nodes that are not direct children, and theNew Session
dialog is erroneously popped up. - [GUI] When deleting nested child nodes of a group node in the
Session Pane
, the group node should be deleted if it no longer has any session nodes after the deletion. - [GUI] In
Free Type
mode,Alt+Double-click
andAlt+Shift+Click
are unable to select the correct text invim
. - [GUI] When setting the session configuration
SFTP / Default file creation permissions
, the displayed permissions may not match the actual permissions. For example, when deleting the last two digits of the permissions, the displayed value is600
, but the actual stored value is6
. - [GUI] The calculation for paired brackets is not strictly limited to the range of the current command prompt line.
- [GUI] After decreasing the font size and restarting, when increasing the font size again, some of the text does not zoom in correctly.
- [GUI] If the right-click action is set to
Copy text if selected, otherwise paste text
, then after completing the copy operation by right-clicking, thefree type
mode is not exited, and the cursor remains invisible. - [GUI] When dragging and dropping files onto session
Cmd
orPowershell
, the generated path should use the system's default separator\
. #2021 - [GUI] When only one session is left after filtering in the
Session
pane, deleting that session may cause the interface to freeze. #2029 - [GUI] When filtering in the
Session
pane results in only one session remaining in a certain group, deleting that session may cause all sessions in that group to be deleted. - [GUI] When the
character spacing
is set to one character width, the actual spacing displayed is too large. - [GUI] When the
Highlight the current fold
option is not set, the display of thefold margin
is abnormal. - [GUI] When the DPI scaling in
Windows
is set to 125%, the icons are not displayed properly. - [GUI] When managing thousands of servers, the session combobox loads too slowly.
- [GUI] When opening a new window, the
quickbar
does not load correctly in the new window. - [GUI] When opening a new window, the layout of the new window is inconsistent with the currently active window.
- [GUI] When drawing text with non-monospaced fonts, the highlighted word's background color width is smaller than its actual width.
- [GUI] Word boundaries were not correctly recognized in a string of consecutive punctuation marks based on
word separators
. - [GUI] Hyperlinks that include percent-encoded characters (e.g. %20) are not automatically converted to their corresponding characters.
- [GUI] Cannot correctly use the regular expression
\w+
to match UTF-8 strings. - [GUI] When selecting by lines, the selection area will erroneously expand to both ends at the same time.
- [GUI] After searching, pressing "Esc" to cancel the search does not clear the search information in the status bar.
- [LOG] When
Log all session output
is set, the timestamps of someSSH
log entries are incorrect, such as[-- ::00]
or[2023-12-05 11:51:-1701748260]
. - [LOG] When the specified log file path is an absolute path, the log is still being created in the
.wind
configuration directory. - [MACOS] The autocomplete list in full-screen mode pops up in a new screen instead of the current screen.
- [MACOS] When floating a pane in full-screen mode, the floating pane pops up in a new screen instead of the current screen.
- [MACOS] On a French keyboard, It is not possible to use the
Shift+Option+L
key to input the pipe character|
. #587 - [MACOS]
~
cannot be resolved correctly as thehome
path. #872 #1871 - [SCHEME] The
command options
are not rendered in the preset font, resulting in a narrower width. - [SCHEME] When clicking on the email address, the
mailto
URL does not use the correct schememailto
. - [SCHEME] When highlighting the URL, it does not include the trailing
/
at the end of the URL. - [SCHEME]
admin:cmd
cannot recognize the command prompt symbol#
correctly, and functions such as syntax highlighting, folding, and auto-completion fail to work properly. - [SCHEME] when an email username contains punctuation marks, only the text following the punctuation mark is highlighted.
- [SCHEME] Repeatedly pressing
Ctrl+C
may cause failure to correctly recognize the command prompt. - [SESSION] The session cannot be reconnected using the
Enter key
orReconnect button
after it has timed out and been disconnected. - [SESSION] Even when setting the
Alt
key to sendCharacters preceded by ESC
, it is not possible to use theAlt+B
orAlt+F
shortcut keys to jump to the previous or next word. - [SESSION] The
Send Line By Line
button in thePaste
dialog box failed to pass the text to theSend
pane for line-by-line sending, instead it sent directly to the server. - [SESSION] When multiple lines of text are selected, the
Paste Selected Text
operation failed to pass the text to thePaste
dialog, but instead sent it directly to the server. - [SFTP] Unable to download files due to insufficient permissions, and may even cause the application to crash.
- [SFTP] Closing the application during file transfer may cause the application to crash.
- [SFTP] Unable to correctly retrieve the attributes of symlink files in
/ect/alternatives
. - [SFTP] During file transfer, it is possible to miscalculate the number of file errors and progress.
- [SSH] When the
x11
fails to open, the connection will be terminated instead of just displaying the error message. - [SSH] When the
OpenSSH
server does not have theKeyboard Interactive
authentication method enabled, the connection will enter into a loop and result in connection failure. - [SSH] Unable to connect to certain devices such as routers, switches, etc. These devices usually use
DropBear
as an SSH server. - [SSH] After updating the password, automatic login repeatedly requests the new password and does not update the old password.
- [TERM] After executing a command to view binary, such as
echo -n 'CjoO9aI4UWo' | base64 -d
, all subsequent text displays as garbled. - [TERM] When drawing faint font (
CSI 2m
), the font color is incorrect. - [TERM]
Ctrl+L
cannot clear the screen properly. - [TEXT] Not using
\G
correctly caused the regex engine to match too much text, significantly reducing the scanning performance ofNumber Convertor
trigger, etc. - [ZMODEM] When canceling the
ZModem
transmission by clicking thecancel
button, it is not possible to input any commands afterward.
Security Bugs:
- [LOCK SCREEN] In
Windows
systems, by pressing theAlt
key on thelock screen
to activate the menu bar, one can bypass the locked screen and execute commands.
Intro Videos
- Rainbow Brackets
- Highlight Text / Highlight Text Bar
- Highlight Text / Highlight Text Dialog
- Manage Sessions
- Sync Terminal Folder
- Sysmon
- OneKey / Autofill
- OneKey / SSH OneKey
- OneKey / Expect OneKey
- OneKey / Session Manager
- Trigger
- Trigger / Custom Link
- Trigger / Custom Menu
- Trigger / Connection And Disconnection
- Trigger / Highlight Text
- Trigger / Play Sound
- Trigger / Run Command
- Trigger / Send Text
- Trigger / Show Tooltip
- Trigger / Session Manager
- Trigger / Session Triggers Dialog
- Trigger / Built-in / Hyperlink
- Trigger / Built-in / Ip Address
- Trigger / Built-in / Hexadecimal Converter
- Trigger / Built-in / Timestamp Converter
- Trigger / Built-in / Unarchiver
Bug Fixes in Version 2.6.1 (2024-4-2):
- [FILER] Downloading a file larger than
2MB
may result in file corruption.
Version 2.7.0 Prerelease 1 (2024-4-2)
If you want, you can try WindTerm 2.7.0 Prerelease 1 now. Currently only the Windows x86_64 version is available.