An open-source, cross-platform terminal for seamless workflows
Go to file
Red J Adaya ca5117cda0
Terminal theming (#485)
* init

* use setStyleVar

* backend implementation. scrope level terminal theming.

* only invoke this.applyTermTheme for keys that are updated. command runner for global term theme

* invoke applyTermTheme for global terminal themes as well

* fix nil error

* fix issue were theme can't be found

* fix issue where selected termtheme is not set as default value

* term theme switcher for session

* do not force reload after setting css vars

* fix issues. screenview terminal theme switcher

* remove debugging code

* move getTermThemes to util

* fix global theme reset

* fix workspace theme reset

* fix screenview terminal theme reset issue

* cleanup

* do not apply theme if theme hasn't changed

* do not apply theme if theme hasn't changed in workspace view

* cleanup

* cleanup

* force reload terminal

* fix inconsistency

* fix reset issue

* add a mobx reaction so that theming working when switching sessions

* workig reset

* simplify and cleanup

* refactor

* working global and session terminal theming

* add check

* perf improvement

* more perf improvements

* put reaction componentDidUpdate to make sure ref is already associated to the element

* cleanup

* fix issue where session theme is overriden by global theme on reload

* reduce flickering on reload

* more on reducing flickering on reload

* cleanup

* more cleanup

* fix file not found when no global theme is set

* screen level terminal theming

* update comment

* re-render terminal in history view. cleanup.

* cleanup

* merge main
2024-04-01 23:41:24 -07:00
.github Add scripthaus to path for Build Helper workflow (#458) 2024-03-14 12:23:35 -07:00
.testdriver test pr branch (#376) 2024-03-04 21:06:10 -08:00
.vscode only run prettier on js/ts/css/less files 2024-01-29 13:35:09 -08:00
acknowledgements Fix another acknowledgements readme typo (#431) 2024-03-11 17:46:43 -07:00
assets Keybind UI utils (#487) 2024-03-22 17:58:06 -07:00
buildres output dl links (#414) 2024-03-08 15:16:55 -08:00
housekeeping Create MacOS Universal Build (#62) 2023-11-05 00:00:47 -07:00
public restore delete screen button (#522) 2024-03-27 22:42:37 -07:00
src Terminal theming (#485) 2024-04-01 23:41:24 -07:00
waveshell update statediff algorithm for wavesrv / remote instances (#530) 2024-03-28 16:56:39 -07:00
wavesrv Terminal theming (#485) 2024-04-01 23:41:24 -07:00
webpack import aliass and configuration updates (#291) 2024-02-12 22:47:51 -08:00
.gitignore Support Linux packaging via electron-builder (#371) 2024-03-04 22:03:53 -08:00
.prettierignore add prettier to package.json 2023-08-21 21:33:47 -07:00
.prettierrc.json add prettier to package.json 2023-08-21 21:33:47 -07:00
build-linux.md fix directory names in build-linux.md. also fix reload accelerator for Linux (keybindings) 2024-02-15 10:01:18 -08:00
BUILD.md removed unecessary electron-rebuild steps (#439) 2024-03-12 13:12:40 -06:00
CODE_OF_CONDUCT.md PE 178 Add OSS files (#50) 2023-10-28 13:16:50 -07:00
CONTRIBUTING.md Tidy up contribution guide 2023-11-08 14:10:31 -05:00
electron-builder.config.js Add pacman artifact and update product tagline (#412) 2024-03-08 14:05:21 -08:00
go.work Update dependencies (#383) 2024-03-05 16:12:52 -08:00
go.work.sum update go.sum files (#391) 2024-03-06 14:47:41 -08:00
LICENSE Add Apache 2.0 License 2023-10-16 15:22:41 -07:00
NOTICE add notice and license in package.json 2023-10-16 15:21:21 -07:00
package.json fix xterm.js versions and addon versions (#534) 2024-03-29 10:52:18 -07:00
README.md adding new screenshot to readme (#437) 2024-03-12 11:56:47 -06:00
scripthaus.md bump version to v0.7.2, bump waveshell version to 0.6 (#512) 2024-03-27 14:27:55 -07:00
SECURITY.md PE 178 Add OSS files (#50) 2023-10-28 13:16:50 -07:00
tsconfig.json global shortcut for wave (#287) 2024-02-13 17:43:02 -08:00
version.js Get version for build-universal from the build-helper output, use package.json for all versioning (#321) 2024-02-23 17:44:00 -08:00
webpack.config.js big update for webpack configs. use --env to select environment. now dev/prod will combine both web and electron webpack environments 2023-10-25 13:32:15 -07:00
yarn.lock fix xterm.js versions and addon versions (#534) 2024-03-29 10:52:18 -07:00

Wave Terminal Logo

Wave Terminal

Wave is an open-source AI-native terminal built for seamless workflows.

Wave isn't just another terminal emulator; it's a rethink on how terminals are built. Wave combines command line with the power of the open web to help veteran CLI users and new developers alike.

  • Inline renderers to cut down on context switching. Render code, images, markdown, and CSV files without ever leaving the terminal.
  • Persistent sessions that can restore state across network disconnections and reboots
  • Searchable contextual command history across all remote sessions (saved locally)
  • Workspaces, tabs, and command blocks to keep you organized
  • CodeEdit, to edit local and remote files with a VSCode-like inline editor
  • AI Integration with ChatGPT (or ChatGPT compatible APIs) to help write commands and get answers inline

WaveTerm Screenshot

Installation

Wave Terminal works with MacOS and Linux.

Install Wave Terminal from: www.waveterm.dev/download

Also available as a homebrew cask for MacOS:

brew install --cask wave

Building from Source

Contributing

Wave uses Github Issues for issue tracking.

Find more information in our Contributions Guide, which includes: