diff --git a/docs/docs/customization.mdx b/docs/docs/customization.mdx new file mode 100644 index 000000000..e91cd7e12 --- /dev/null +++ b/docs/docs/customization.mdx @@ -0,0 +1,66 @@ +--- +sidebar_position: 1.5 +id: "customization" +title: "Customization" +--- + +## Tab Themes + + + +Right click on any tab to bring up a menu which allows you to rename the tab and select different backgrounds. + +It is also possible to create your own themes using custom colors, gradients, images and more by editing your presets.json config file. To see how Wave's built in tab themes are defined, you can check out our [default presets file](https://github.com/wavetermdev/waveterm/blob/main/pkg/wconfig/defaultconfig/presets.json). + +
+ +## Terminal Customization + + + +#### Terminal Theme + +Right click in the header area of any terminal block to bring up a menu which allows you to set a terminal +theme for that terminal. + +You can set the default theme for all terminals (which haven't had their theme manually overridden) by editing your settings.json file and adding the key `term:theme` and setting it to the appropriate key. The keys can be found +in the [default termthemes.json file](https://github.com/wavetermdev/waveterm/blob/main/pkg/wconfig/defaultconfig/termthemes.json). + +If you add your own termthemes.json file in the config directory, you can also add your own custom terminal themes (just follow the same format). + + + +#### Font Size + +From the same context menu you can also change the font-size of the terminal. To change the default font size across all of your (non-overridden) terminals, you can set the config key `term:fontsize` to the size you want. e.g. `{ "term:fontsize": 14}`. + +#### Font Family + +There is no UI to edit your default terminal font family. But, it _can_ be overridden. In your settings.json file you can add the key `term:fontfamily` and set it to a font that is _installed_ on your local system. If type a font that is not installed, or use a non-monospace font, your terminal will look terrible (don't do that 🙂), delete the key to return to using the default. + +## Widgets Sidebar + + + +See [Custom Widgets](/customwidgets) for detailed documentation around changing what appears in your right widget sidebar. + +Using widgets.json (and defaultwidgets.json) you'll be able to remove any default widgets and add widgets of your own. You can fully customize the icons, colors, text, and defaults (like directories, webpages, AI model, remote connection, commands, etc.) of your custom widgets. + +You can also suppress the help widgets in the bottom right by setting the config key `widget:showhelp` to `false`. + + diff --git a/docs/docs/faq.mdx b/docs/docs/faq.mdx index 60a516dd0..7c05d016d 100644 --- a/docs/docs/faq.mdx +++ b/docs/docs/faq.mdx @@ -1,5 +1,5 @@ --- -sidebar_position: 7 +sidebar_position: 101 id: "faq" title: "FAQ" --- @@ -10,27 +10,27 @@ title: "FAQ" You must manually edit the [config file](./config) located at `~/.config/waveterm/settings.json`. -| Key Name | Type | Function | -|----------|------|----------| -| ai:baseurl | string | Set the AI Base Url (must be OpenAI compatible) | -| ai:apitoken | string | your AI api token | -| ai:name | string | string to display in the Wave AI block header | -| ai:model | string | model name to pass to API | -| ai:maxtokens | int | max tokens to pass to API | -| ai:timeoutms | int | timeout (in milliseconds) for AI calls | - -Here's an example of pointing it to a local Ollama instance. Note that to get the text in the header of the AI block -to update, you'll need to set the "ai:name" key. For ollama, you'll also need to provide something for the +| Key Name | Type | Function | +| ------------ | ------ | ----------------------------------------------- | +| ai:baseurl | string | Set the AI Base Url (must be OpenAI compatible) | +| ai:apitoken | string | your AI api token | +| ai:name | string | string to display in the Wave AI block header | +| ai:model | string | model name to pass to API | +| ai:maxtokens | int | max tokens to pass to API | +| ai:timeoutms | int | timeout (in milliseconds) for AI calls | + +Here's an example of pointing it to a local Ollama instance. Note that to get the text in the header of the AI block +to update, you'll need to set the "ai:name" key. For ollama, you'll also need to provide something for the apitoken (even though it is ignored). Here are the ollma open AI compatibility docs: https://github.com/ollama/ollama/blob/main/docs/openai.md ```json { - "ai:baseurl": "http://localhost:11434/v1", - "ai:name": "llama3.2", - "ai:model": "llama3.2", - "ai:apitoken": "ollama" + "ai:baseurl": "http://localhost:11434/v1", + "ai:name": "llama3.2", + "ai:model": "llama3.2", + "ai:apitoken": "ollama" } ``` @@ -39,7 +39,7 @@ Here are the ollma open AI compatibility docs: https://github.com/ollama/ollama/ You must manually edit the [config file](./config) located at `~/.config/waveterm/settings.json`. You'll need to set your `ai:baseurl` to your Azure AI Base URL (do not include query parameters or `api-version`). -You'll also need to set `ai:apitype` to `azure`. You can then set the `ai:model`, and `ai:apitoken` appropriately +You'll also need to set `ai:apitype` to `azure`. You can then set the `ai:model`, and `ai:apitoken` appropriately for your setup. ### How can I see the block numbers? @@ -48,14 +48,14 @@ The block numbers will appear when you hold down Ctrl-Shift (and disappear once ### How do I make a remote connection? -There is a button in the header. Click the or +There is a button in the header. Click the or and type the `[user]@[host]` that you wish to connect to. ### On Windows, how can I use Git Bash as my default shell? In order to make Git Bash your default shell you'll need to set the configuration variable `term:localshellpath` to -the location of the Git Bash "bash.exe" binary. By default it is located at "C:\Program Files\Git\bin\bash.exe". -Just remember in JSON, backslashes need to be escaped. So add this to your [settings.json](./config) file: +the location of the Git Bash "bash.exe" binary. By default it is located at "C:\Program Files\Git\bin\bash.exe". +Just remember in JSON, backslashes need to be escaped. So add this to your [settings.json](./config) file: ```json "term:localshellpath": "C:\\Program Files\\Git\\bin\\bash.exe" diff --git a/docs/docs/releasenotes.mdx b/docs/docs/releasenotes.mdx index 157e89212..6c1c3e9df 100644 --- a/docs/docs/releasenotes.mdx +++ b/docs/docs/releasenotes.mdx @@ -1,132 +1,130 @@ --- id: "releasenotes" title: "Release Notes" -sidebar_position: 8 +sidebar_position: 200 --- # Release Notes ### v0.9.1 — Nov 1, 2024 -Minor bug fix release to follow-up on the v0.9.0 build. Lots of issues fixed (especially for Windows). - -* CLI applications that need microphone, camera, or location access will now work on MacOS. You'll see a security popup in Wave to allow/deny [#1086](https://github.com/wavetermdev/waveterm/issues/1086) -* Can now use `wsh version -v` to print out the new data/config directories -* Restores the old T1, T2, T3, ... tab naming logic -* Temporarily revert to using the "Title Bar" on windows to mitgate a bug where the window controls were overlaying on top of our tabs (working on a real fix for the next release) -* There is a new setting in the editor to enable/disable word wrapping [#1038](https://github.com/wavetermdev/waveterm/issues/1038) -* Ctrl-S will now save files in codeedit [#1081](https://github.com/wavetermdev/waveterm/issues/1081) -* [#1020](https://github.com/wavetermdev/waveterm/issues/1020) there is now a preset config option to change the active border color in tab themes -* [bugfix] Multiple fixes for [#1167](https://github.com/wavetermdev/waveterm/issues/1167) to try to address tab loss while updating -* [bugfix] Windows app crashed on opening View menu because of a bad accelerator key -* [bugfix] The auto-updater messages in the tab bar are now more consistent when switching tabs, and we don't show errors when the network is disconnected -* [bugfix] Full-screen mode now actually shows tabs in full screen -* [bugfix] [#1175](https://github.com/wavetermdev/waveterm/issues/1175) can now edit .awk files -* [bugfix] [#1066](https://github.com/wavetermdev/waveterm/issues/1066) applying a default theme now updates the background appropriately without a refresh - +Minor bug fix release to follow-up on the v0.9.0 build. Lots of issues fixed (especially for Windows). + +- CLI applications that need microphone, camera, or location access will now work on MacOS. You'll see a security popup in Wave to allow/deny [#1086](https://github.com/wavetermdev/waveterm/issues/1086) +- Can now use `wsh version -v` to print out the new data/config directories +- Restores the old T1, T2, T3, ... tab naming logic +- Temporarily revert to using the "Title Bar" on windows to mitgate a bug where the window controls were overlaying on top of our tabs (working on a real fix for the next release) +- There is a new setting in the editor to enable/disable word wrapping [#1038](https://github.com/wavetermdev/waveterm/issues/1038) +- Ctrl-S will now save files in codeedit [#1081](https://github.com/wavetermdev/waveterm/issues/1081) +- [#1020](https://github.com/wavetermdev/waveterm/issues/1020) there is now a preset config option to change the active border color in tab themes +- [bugfix] Multiple fixes for [#1167](https://github.com/wavetermdev/waveterm/issues/1167) to try to address tab loss while updating +- [bugfix] Windows app crashed on opening View menu because of a bad accelerator key +- [bugfix] The auto-updater messages in the tab bar are now more consistent when switching tabs, and we don't show errors when the network is disconnected +- [bugfix] Full-screen mode now actually shows tabs in full screen +- [bugfix] [#1175](https://github.com/wavetermdev/waveterm/issues/1175) can now edit .awk files +- [bugfix] [#1066](https://github.com/wavetermdev/waveterm/issues/1066) applying a default theme now updates the background appropriately without a refresh ### v0.9.0 — Oct 28, 2024 -New major Wave Terminal release! Wave tabs are now cached. Tab switching performance is +New major Wave Terminal release! Wave tabs are now cached. Tab switching performance is now much faster and webview state, editor state, and scroll positions are now persisted -across tab changes. We also have native WSL2 support. You can create native Wave connections +across tab changes. We also have native WSL2 support. You can create native Wave connections to your Windows WSL2 distributions using the connection button. We've also laid the groundwork for some big features that will be released over the next couple of weeks, including Workspaces, AI improvments, and custom widgets. -Lots of other smaller changes and bug fixes. See full list of PRs at https://github.com/wavetermdev/waveterm/releases/tag/v0.9.0 +Lots of other smaller changes and bug fixes. See full list of PRs at https://github.com/wavetermdev/waveterm/releases/tag/v0.9.0 ### v0.8.13 — Oct 24, 2024 -* Wave is now available as a Snap for Linux users! You can find it [in the Snap Store](https://snapcraft.io/waveterm). -* Wave is now available via the Windows Package Manager! You can install it via `winget install CommandLine.Wave` -* can now use "term:fontsize" to override an individual terminal block's font size (also in context menu) -* we now allow mixed case hostnames for connections to be compatible with ssh config -* The Linux app icon is now updated to match the Windows icon -* [bugfix] fixed a bug that sometimes caused escape sequences to be printed when switching between tabs -* [bugfix] fixed an issue where the preview block was not cleaning up temp files (Windows only) -* [bugfix] fixed chrome sandbox permissions errors in linux -* [bugfix] fixed shutdown logic on MacOS/Linux which sometimes allowed orphaned processes to survive +- Wave is now available as a Snap for Linux users! You can find it [in the Snap Store](https://snapcraft.io/waveterm). +- Wave is now available via the Windows Package Manager! You can install it via `winget install CommandLine.Wave` +- can now use "term:fontsize" to override an individual terminal block's font size (also in context menu) +- we now allow mixed case hostnames for connections to be compatible with ssh config +- The Linux app icon is now updated to match the Windows icon +- [bugfix] fixed a bug that sometimes caused escape sequences to be printed when switching between tabs +- [bugfix] fixed an issue where the preview block was not cleaning up temp files (Windows only) +- [bugfix] fixed chrome sandbox permissions errors in linux +- [bugfix] fixed shutdown logic on MacOS/Linux which sometimes allowed orphaned processes to survive ### v0.8.12 — Oct 18, 2024 -* Added support for multiple AI configurations! You can now run Open AI side-by-side with Ollama models. Can create AI presets in presets.json, and can easily switch between them using a new dropdown in the AI widget -* Fix WebSocket reconnection error. this sometimes caused the terminal to hang when waking up from sleep -* Added memory graphs, and per-CPU graphs to the sysinfo widget (and renamed it from cpuplot) -* Added a new huge red "Config Error" button when there are parse errors in the config JSON file -* Preview/CodeEdit widget now shows errors (squiggly lines) when JSON or YAML files fail to parse -* New app icon for Windows to better match Fluent UI standards -* Added copy-on-select to the terminal (on by default, can disable using "term:copyonselect") -* Added a button to mute audio in webviews -* Added a right-click "Open Clipboard URL" to easily open a webview from an URL stored in your system clipboard -* [bugfix] fixed blank "help" pages when waking from sleep or restarting the app +- Added support for multiple AI configurations! You can now run Open AI side-by-side with Ollama models. Can create AI presets in presets.json, and can easily switch between them using a new dropdown in the AI widget +- Fix WebSocket reconnection error. this sometimes caused the terminal to hang when waking up from sleep +- Added memory graphs, and per-CPU graphs to the sysinfo widget (and renamed it from cpuplot) +- Added a new huge red "Config Error" button when there are parse errors in the config JSON file +- Preview/CodeEdit widget now shows errors (squiggly lines) when JSON or YAML files fail to parse +- New app icon for Windows to better match Fluent UI standards +- Added copy-on-select to the terminal (on by default, can disable using "term:copyonselect") +- Added a button to mute audio in webviews +- Added a right-click "Open Clipboard URL" to easily open a webview from an URL stored in your system clipboard +- [bugfix] fixed blank "help" pages when waking from sleep or restarting the app ### v0.8.11 — Oct 10, 2024 Hotfix release to address a couple of bugs introduced in v0.8.10 -* Fixes a regression in v0.8.10 which caused new tabs to sometimes come up blank and broken -* Layout fixes to the AI widget spacing -* Terminal scrollbar is now semi-transparent and overlays last column -* Fixes initial window size (on first startup) for both smaller and larger screens -* Added a "Don't Ask Again" checkbox for installing `wsh` on remote machines (sets a new config flag) -* Prevent the app from downgrading when you install a beta build. Installing a beta-build will now switch you to the beta-update channel. +- Fixes a regression in v0.8.10 which caused new tabs to sometimes come up blank and broken +- Layout fixes to the AI widget spacing +- Terminal scrollbar is now semi-transparent and overlays last column +- Fixes initial window size (on first startup) for both smaller and larger screens +- Added a "Don't Ask Again" checkbox for installing `wsh` on remote machines (sets a new config flag) +- Prevent the app from downgrading when you install a beta build. Installing a beta-build will now switch you to the beta-update channel. ### v0.8.10 — Oct 9, 2024 Minor big fix release (but there are some new features). -* added support for Azure AI [See FAQ](https://docs.waveterm.dev/faq#how-can-i-connect-to-azure-ai) -* AI errors now appear in the chat -* on MacOS, hitting "Space" in directorypreview will open selected file in Quick Look -* [bugfix] fixed transparency settings -* [bugfix] fixed issue with non-standard port numbers in connection dropdown -* [bugfix] fixed issue with embedded docsite (returned 404 after refresh) +- added support for Azure AI [See FAQ](https://docs.waveterm.dev/faq#how-can-i-connect-to-azure-ai) +- AI errors now appear in the chat +- on MacOS, hitting "Space" in directorypreview will open selected file in Quick Look +- [bugfix] fixed transparency settings +- [bugfix] fixed issue with non-standard port numbers in connection dropdown +- [bugfix] fixed issue with embedded docsite (returned 404 after refresh) ### v0.8.9 — Oct 8, 2024 Lots of bug fixes and new features! -* New "help" view -- uses an embedded version of our doc site -- https://docs.waveterm.dev -* [breaking] wsh getmeta, wsh setmeta, and wsh deleteblock now take a blockid using a `-b` parameter instead of as a positional parameter -* allow metadata to override the block icon, header, and text (frame:title, frame:icon, and frame:text) -* home button on web widget to return to the homepage, option to set a homepage default for the whole app or just for the given block -* checkpoint the terminal less often to reduce frequency of output bug (still working on a full fix) -* new terminal themes -- Warm Yellow, and One Dark Pro -* we now support github flavored markdown alerts -* `wsh notify` command to send a desktop notification -* `wsh createblock` to create any block via the CLI -* right click to "Save Image" in webview -* `wsh edit` will now allow you to open new files (as long as the parent directly exists) -* added 8 new fun tab background presets (right click on any tab and select "Backgrounds" to try them out) -* [config] new config key "term:scrollback" to set the number of lines of scrollback for terminals. Use "-1" to set 0, max is 10000. -* [config] new config key "term:theme" to set the default terminal theme for all new terminals -* [config] new config key "preview:showhiddenfiles" to set the default "show hidden files" setting for preview -* [bugfix] fixed an formatting issue with `wsh getmeta` -* [bugfix] fix for startup issue on Linux when home directory is an NFS mount -* [bugfix] fix cursor color in terminal themes to work -* [bugfix] fix some double scrollbars when showing markdown content -* [bugfix] improved shutdown sequence to better capture wavesrv logs -* [bugfix] fix Alt+G keyboard accelerator for Linux/Windows -* other assorted bug fixes, cleanups, and security fixes - +- New "help" view -- uses an embedded version of our doc site -- https://docs.waveterm.dev +- [breaking] wsh getmeta, wsh setmeta, and wsh deleteblock now take a blockid using a `-b` parameter instead of as a positional parameter +- allow metadata to override the block icon, header, and text (frame:title, frame:icon, and frame:text) +- home button on web widget to return to the homepage, option to set a homepage default for the whole app or just for the given block +- checkpoint the terminal less often to reduce frequency of output bug (still working on a full fix) +- new terminal themes -- Warm Yellow, and One Dark Pro +- we now support github flavored markdown alerts +- `wsh notify` command to send a desktop notification +- `wsh createblock` to create any block via the CLI +- right click to "Save Image" in webview +- `wsh edit` will now allow you to open new files (as long as the parent directly exists) +- added 8 new fun tab background presets (right click on any tab and select "Backgrounds" to try them out) +- [config] new config key "term:scrollback" to set the number of lines of scrollback for terminals. Use "-1" to set 0, max is 10000. +- [config] new config key "term:theme" to set the default terminal theme for all new terminals +- [config] new config key "preview:showhiddenfiles" to set the default "show hidden files" setting for preview +- [bugfix] fixed an formatting issue with `wsh getmeta` +- [bugfix] fix for startup issue on Linux when home directory is an NFS mount +- [bugfix] fix cursor color in terminal themes to work +- [bugfix] fix some double scrollbars when showing markdown content +- [bugfix] improved shutdown sequence to better capture wavesrv logs +- [bugfix] fix Alt+G keyboard accelerator for Linux/Windows +- other assorted bug fixes, cleanups, and security fixes ### v0.8.8 — Oct 1, 2024 -Quick patch release to fix Windows/Linux "Alt" keybindings. Also brings a huge performance improvement to AI streaming speed. +Quick patch release to fix Windows/Linux "Alt" keybindings. Also brings a huge performance improvement to AI streaming speed. ### v0.8.7 — Sep 30, 2024 Quick patch release to fix bugs: -* Fixes windows SSH connections (invalid path while trying to install wsh tools) -* Fixes an issue resolving `~` in windows paths `~\` now works instead of just `~/` -* Tries to fix background color for webpages. Pulls meta tag for color-scheme, and sets a black background if dark detected (fixes issue rendering raw githubusercontent files) -* Fixed our useDimensions hook to fire correctly. Fixes some sizing issues including allowing error messages to show consistently when SSH connections fail. -* Allow "data:" urls in custom tab backgrounds -* All the alias "tab" for the current tab's UUID when using wsh -* [BUILD] conditional write generated files only if they are updated +- Fixes windows SSH connections (invalid path while trying to install wsh tools) +- Fixes an issue resolving `~` in windows paths `~\` now works instead of just `~/` +- Tries to fix background color for webpages. Pulls meta tag for color-scheme, and sets a black background if dark detected (fixes issue rendering raw githubusercontent files) +- Fixed our useDimensions hook to fire correctly. Fixes some sizing issues including allowing error messages to show consistently when SSH connections fail. +- Allow "data:" urls in custom tab backgrounds +- All the alias "tab" for the current tab's UUID when using wsh +- [BUILD] conditional write generated files only if they are updated ### v0.8.6 — Sep 26, 2024 @@ -136,23 +134,22 @@ Also, as a bonus, we added fish shell support! ### v0.8.5 — Sep 25, 2024 -Hot fix, dowgrade `jotai` library. Upgrading caused a major regression in codeedit which did not allow +Hot fix, dowgrade `jotai` library. Upgrading caused a major regression in codeedit which did not allow users to edit files. ### v0.8.4 — Sep 25, 2024 -* Added a setting `window:disablehardwareacceleration` to disable native hardware acceleration -* New startup model for legacy users given them the option to download the WaveLegacy -* Use WAVETERM_HOME for the home directory consistently +- Added a setting `window:disablehardwareacceleration` to disable native hardware acceleration +- New startup model for legacy users given them the option to download the WaveLegacy +- Use WAVETERM_HOME for the home directory consistently ### v0.8.3 — Sep 25, 2024 -More hotfixes for Linux users. We now link against an older version of glibc and use +More hotfixes for Linux users. We now link against an older version of glibc and use the zig compiler on linux (the newer version caused us not to run on older distros). -Also fixes a permissions issue when installing via .deb. There is also a new config value +Also fixes a permissions issue when installing via .deb. There is also a new config value `window:nativetitlebar` which restores the native titlebar on windows/linux. - ### v0.8.2 — Sep 24, 2024 Hot fix, fixes a nasty crash on startup for Linux users (dynamic linking but with netcgo DNS library) @@ -161,10 +158,10 @@ Hot fix, fixes a nasty crash on startup for Linux users (dynamic linking but wit Minor cleanup release. -* fix number parsing for certain config file values -* add link to docs site -* add new back button for directory view -* telemetry fixes +- fix number parsing for certain config file values +- add link to docs site +- add new back button for directory view +- telemetry fixes ### v0.8.0 — Sep 20, 2024 @@ -172,5 +169,4 @@ Minor cleanup release. The new build is a fresh start, and a clean break from the current version. As such, your history, settings, and configuration will not be carried over. If you'd like to continue to run the legacy version, you will need to download it separately. - Release Artificats and source code diffs can be found on (Github)[https://github.com/wavetermdev/waveterm]. diff --git a/docs/docs/telemetry.mdx b/docs/docs/telemetry.mdx index 4105e76b8..c4acca29a 100644 --- a/docs/docs/telemetry.mdx +++ b/docs/docs/telemetry.mdx @@ -1,5 +1,5 @@ --- -sidebar_position: 3 +sidebar_position: 100 id: "telemetry" title: "Telemetry" --- diff --git a/docs/sidebars.ts b/docs/sidebars.ts deleted file mode 100644 index 929ac583d..000000000 --- a/docs/sidebars.ts +++ /dev/null @@ -1,48 +0,0 @@ -import type { SidebarsConfig } from "@docusaurus/plugin-content-docs"; - -const sidebars: SidebarsConfig = { - mainSidebar: [ - { - type: "doc", - id: "index", - label: "Home", - }, - { - type: "doc", - id: "keybindings", - label: "Keybindings", - }, - { - type: "doc", - id: "config", - label: "Configuration", - }, - { - type: "doc", - id: "customwidgets", - label: "Custom Widgets", - }, - { - type: "doc", - id: "telemetry", - label: "Telemetry", - }, - { - type: "doc", - id: "wsh", - label: "Wsh", - }, - { - type: "doc", - id: "widgets", - label: "Widgets", - }, - { - type: "doc", - id: "faq", - label: "FAQ", - }, - ], -}; - -export default sidebars; diff --git a/docs/static/img/custom-widgets.png b/docs/static/img/custom-widgets.png new file mode 100644 index 000000000..ec7654511 Binary files /dev/null and b/docs/static/img/custom-widgets.png differ diff --git a/docs/static/img/tab-context-menu.png b/docs/static/img/tab-context-menu.png new file mode 100644 index 000000000..d704e2b6a Binary files /dev/null and b/docs/static/img/tab-context-menu.png differ diff --git a/docs/static/img/terminal-context-menu.png b/docs/static/img/terminal-context-menu.png new file mode 100644 index 000000000..342159548 Binary files /dev/null and b/docs/static/img/terminal-context-menu.png differ diff --git a/pkg/wconfig/settingsconfig.go b/pkg/wconfig/settingsconfig.go index 8593af40b..4a3078a50 100644 --- a/pkg/wconfig/settingsconfig.go +++ b/pkg/wconfig/settingsconfig.go @@ -91,8 +91,8 @@ type SettingsType struct { PreviewShowHiddenFiles *bool `json:"preview:showhiddenfiles,omitempty"` - WidgetClear bool `json:"widget:*,omitempty"` - WidgetShowHelp bool `json:"widget:showhelp,omitempty"` + WidgetClear bool `json:"widget:*,omitempty"` + WidgetShowHelp *bool `json:"widget:showhelp,omitempty"` WindowClear bool `json:"window:*,omitempty"` WindowTransparent bool `json:"window:transparent,omitempty"`