mirror of
https://github.com/wavetermdev/waveterm.git
synced 2025-02-07 00:12:21 +01:00
An open-source, cross-platform terminal for seamless workflows
e1e5b67ff6
* remove byte sanitization for user commands When serializing jsonBytes in packet.go::MarshalPacket, a step existed that attempted to manually sanitize the bytes before sending them. This was initially done to avoid invalid characters in json; however, go should handle this for us. But this sanitization broke internationalization because it excluded characters required for unicode in other languages. Because of that, it has been removed. * properly decode non-ascii on frontend The functions atob and btoa do not convert base 64 to strings in the expected way. The base64ToArray function handles it properly but other cases do not. These other cases have been replaced with a helper function that makes use of the base64-js package. This package has already been included as a dependency of another package we use, but it was added to the package.json file to make the inclusion explicit. * automatically set/share LANG var with waveshell Waveterm previously did not set the LANG environment variable which caused problems for international users. On Linux, this is done automatically, but it needs to be done manually on macos. Even on linux, the wavesrv LANG variable is shared with waveshell to ensure the same one is used on remotes. * only set the lang var if not previously set In order to prevent waveterm from overriding the lang var entirely, this ensures that it is only manually determined if it hasn't previously been set. * use envMap instead of os to determine var This is slightly more performant and relies more directly on our code instead of external code. |
||
---|---|---|
.github | ||
acknowledgements | ||
buildres | ||
housekeeping | ||
public | ||
src | ||
waveshell | ||
wavesrv | ||
webpack | ||
.gitignore | ||
.prettierignore | ||
.prettierrc.json | ||
build-linux.md | ||
BUILD.md | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
forge.config.js | ||
go.work | ||
go.work.sum | ||
LICENSE | ||
NOTICE | ||
package.json | ||
README.md | ||
scripthaus.md | ||
SECURITY.md | ||
tsconfig.json | ||
version.js | ||
versionmeta.json | ||
webpack.config.js | ||
yarn.lock |
Wave Terminal
A open-source, cross-platform, modern terminal 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
Installation
Wave Terminal works with MacOS and Linux (preliminary).
Install Wave Terminal from: www.waveterm.dev/download
Also available as a homebrew cask for MacOS:
brew install --cask wave
Links
- Homepage — https://www.waveterm.dev
- Download Page — https://www.waveterm.dev/download
- Documentation — https://docs.waveterm.dev/
- Quick Start Guide — https://docs.waveterm.dev/quickstart/
- Discord Community — https://discord.gg/XfvZ334gwU
Building from Source
Contributing
Wave uses Github Project for tracking issues.
Find more information in our Contributions Guide, which includes: