We have worked all this summer on the preparation of our new alpha release. We have greatly improved some features and introduced new ones.
Macros
One of our goals for this summer was to finally integrate macros (see #19).
You will now be able to create a new macro in the config file like so:
{
"macros": [
{
"content": "my custom macro",
"uuid": "22f898a3-b988-4f5e-bab9-1e119e676a8e"
}
],
...
}
This macro can be later executed to paste its content into the shell with a shortcut.
Shortcut support
During the past two months, we've also worked on some other important features, including shortcuts.
Rework
We have vastly improved how shortcuts are handled compared to the previous integration in the electron version, resulting in a faster and lighter shortcut manager.
These are the default shortcuts
CTRL + W
Close focused tabCTRL + MAJ + W
Close focused windowCTRL + T
Open a new tab with the default profileCTRL + C
Copy selected contentCTRL + V
Paste clipboard content into the terminalCTRL + TAB
Focus next tabCTRL + MAJ + TAB
Focus previous tab
There are other shortcuts available, but they are not defined by default.
OpenProfile(UUID)
: Open the profile corresponding to the UUID specifiedExecuteMacro(UUID)
: Execute the macro corresponding to the UUID specified
Example
Take a look at this configuration file:
{
"profiles": [
{
"name": "default profile",
"command": "sh"
},
{
"name": "second profile",
"command": "bash",
"uuid": "6ecd1d97-cd83-4a70-8472-2ac157240603"
}
],
"macros": [
{
"content": "my custom macro",
"uuid": "22f898a3-b988-4f5e-bab9-1e119e676a8e"
}
],
"shortcuts": [
{
"shortcut": "CTRL+T",
"action": "OpenDefaultProfile"
},
{
"shortcut": "CTRL+N",
"action": "OpenDefaultProfile"
},
{
"shortcut": "CTRL+M",
"action": {
"ExecuteMacro": "22f898a3-b988-4f5e-bab9-1e119e676a8e"
}
},
{
"shortcut": "CTRL+B",
"action": {
"OpenProfile": "22f898a3-b988-4f5e-bab9-1e119e676a8e"
}
}
]
}
In this example, we define multiple shortcuts, two profiles and one macro. Notice that this will remove the default value for these keys.
If you copy this configuration into your config file (~/.config/tess/config.json
on Linux or %APPDATA%/Tess/config.json
on Windows), you will be able to execute these shortcuts:
CTRL + T
orCTRL + N
to open a new tab with the default profileCTRL + B
to openbash
in a new tabCTRL + M
to paste our macro content into the focused shell
Revamped popup
With this new alpha release, our goal was to make it as usable as possible. Therefore, we have re-implemented popups and close confirmation.
This feature is one of the final steps to making the rewrite usable for almost all users. We have improved the design of the popup and your experience by making it navigable with your keyboard.
More recently, the close confirmation has improved. It should now be smarter.
If you want to customize how close confirmations are handled, we have introduced new option keys in the config file:
{
"close_confirmation": {
"tab": true,
"window": true,
"app": true,
"excluded_process": [
"sh",
"bash",
"fish",
"zsh"
]
}
}
More, if you only want close confirmation when closing the entire window if there is more than one tab opened, you can do something like that:
{
"close_confirmation": {
"tab": false,
"window": true,
"app": false,
"excluded_process": [
"sh",
"bash",
"fish",
"zsh"
]
}
}
There is also a shorthand to enable or disable all properties:
{
"close_confirmation": true || false
}
Concerning the support for the new theme system introduced earlier, we have added some variables to control the style of the popup, and you can still use custom CSS rules to modify it completely.
Others
Documentation
In the last devblog, we announced that we were working on documentation. We have made significant progress on it, but we still need to develop important features before releasing it.
Config page
We are aware that manually configuring text by editing the file may be time-consuming. We want to re-implement as soon as possible the configuration interface into Tess, but we still need to redesign all the elements and develop some necessary parts in the codebase first.
Linux rendering issue
On Linux, you may experience rendering issues with green artifacts. This is directly related to the webview used by Tess, and it seems complicated to fix it ourselves. One possibility is to switch to webGL2 to render the terminal, but this is not available on Linux yet.
Rewrite Progress
Features | Electron | Tauri |
---|---|---|
Translation | ❌ | ⌛ |
Tabs | ✔️ | ✔️ |
Move tabs between windows | ❌ | ⌛ |
Administrator tabs | ❌ | ⌛ |
Tabs split | ❌ | ⌛ |
Command line interface | ✔️ | ⌛ |
Notifications | ❌ | 🟠 |
Macros | ❌ | ✔️ |
Plugins | 🟠 | ⌛ |
Themes | 🟠 | 🟠 |
Config page | ✔️ | ⌛ |
Config watching | 🟠 | ⌛ |
Image display | ❌ | ⌛ |
Font ligature | 🟠 | ⌛ |
Animated background | ❌ | ✔️ |
URI scheme API | ❌ | ⌛ |
Search in a shell | ❌ | ⌛ |
Marketplace | ❌ | ⌛ |