Compare commits

..

15 Commits

Author SHA1 Message Date
Evan Simkowitz 6bd46f55a4 test using exec property 2024-03-12 17:55:47 -07:00
Evan Simkowitz c84dd781f5 unset desktop and compression 2024-03-12 17:31:00 -07:00
Evan Simkowitz 39cb7dfe11 move exe 2024-03-12 16:23:01 -07:00
Evan Simkowitz 1a0d6881ae try explicitly setting desktop and exe 2024-03-12 16:19:15 -07:00
Evan Simkowitz 66901735f9 try classic confinement 2024-03-12 15:46:54 -07:00
Evan Simkowitz 7d4787ad1f Test adding Snap 2024-03-12 14:51:09 -07:00
Mike Sawka d1baf504ba quick fixes -- terminal selection color and connection modal terminal styles (#440)
* fix lightmode selction color

* fix styles on remote conn view
2024-03-12 14:41:47 -07:00
Cole Lashley 36de526e8e App keybindings (#432)
* added app keybindings

* removed emain cmd-p

* removed boilerplate for emain commands
2024-03-12 12:36:52 -07:00
Knox Lively 2acb551f4b removed unecessary electron-rebuild steps (#439) 2024-03-12 13:12:40 -06:00
Knox Lively f87c7a28a6 adding new screenshot to readme (#437) 2024-03-12 11:56:47 -06:00
Evan Simkowitz fecdc5abdc Fix another acknowledgements readme typo (#431) 2024-03-11 17:46:43 -07:00
Evan Simkowitz 769f3fc43c Fix acknowledgements readme typo (#430) 2024-03-11 17:45:43 -07:00
Evan Simkowitz c73ac66ed7 Fix broken license disclaimers (#429) 2024-03-11 17:43:45 -07:00
Cole Lashley 5258a67a78 Expose config path to frontend (#404)
* added config api path

* addressed feedback

* initial change for http file server

* removed old handle config func

* added user keybind config path

* fixed logs
2024-03-11 15:07:29 -07:00
Mike Sawka 77ea45392a quick v0.7.0 fixes (#428)
* update mask color for tabswitcher to work on lightmode

* fix background color on code blocks in markdown in light mode

* update wording on disconnected modal (restart wave backend instead of restart server)

* fix tooltip (should be Ctrl-Space)

* cleanup line-height/padding for code blocks
2024-03-11 12:03:30 -07:00
28 changed files with 2511 additions and 202 deletions
+1 -1
View File
@@ -27,7 +27,7 @@ jobs:
if: matrix.platform == 'linux'
run: |
sudo apt-get update
sudo apt-get install --no-install-recommends -y libarchive-tools libopenjp2-tools rpm
sudo apt-get install --no-install-recommends -y libarchive-tools libopenjp2-tools rpm snapcraft snapd
- uses: actions/setup-go@v5
with:
go-version: ${{env.GO_VERSION}}
-6
View File
@@ -53,12 +53,6 @@ Install modules (we use yarn):
yarn
```
Electron also requires specific builds of node_modules to work (because Electron embeds a specific node.js version that might not match your development node.js version). We use a special electron command to cross-compile those modules:
```
scripthaus run electron-rebuild
```
## Running WebPack
We use webpack to build both the React and Electron App Wrapper code. They are both run together using:
+1 -1
View File
@@ -20,7 +20,7 @@ Wave isn't just another terminal emulator; it's a rethink on how terminals are b
- 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](./assets/wave-screenshot.jpeg)
![WaveTerm Screenshot](./assets/wave-screenshot.png)
## Installation
+2 -2
View File
@@ -11,9 +11,9 @@ The license disclaimers for the backend are generated using the [go-licenses](ht
The license disclaimers for the frontend are generated using the [`yarn licenses` tool](https://classic.yarnpkg.com/lang/en/docs/cli/licenses/). This outputs to the file [`frontend.md`](./disclaimers/frontend.md).
These three disclaimer files linked above will be periodically regenerated to reflect new dependencies.
These disclaimer files linked above will be periodically regenerated to reflect new dependencies.
The [`scripthaus.md` file](../scripthaus.md) contains scripts to genrate the disclaimers and package them. To manually generate the disclaimers, run the following from the repository root directory:
The [`scripthaus.md` file](../scripthaus.md) contains scripts to generate the disclaimers and package them. To manually generate the disclaimers, run the following from the repository root directory:
```bash
scripthaus run generate-license-disclaimers
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -39,6 +39,14 @@
"command": "app:openTabSearchModal",
"keys": ["Cmd:p"]
},
{
"command": "app:openConnectionsView",
"keys": []
},
{
"command": "app:openSettingsView",
"keys": []
},
{
"command": "app:newTab",
"keys": ["Cmd:t"]
Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 KiB

+20 -1
View File
@@ -56,6 +56,7 @@ const config = {
arch: "universal",
},
],
appId: "dev.commandline.waveterm",
icon: "public/waveterm.icns",
category: "public.app-category.developer-tools",
minimumSystemVersion: "10.15.0",
@@ -70,10 +71,11 @@ const config = {
.map((f) => path.resolve(f.path, f.name)),
},
linux: {
appId: "dev.commandline.waveterm",
executableName: pkg.productName,
category: "TerminalEmulator",
icon: "public/waveterm.icns",
target: ["zip", "deb", "rpm", "AppImage", "pacman"],
target: ["zip", "deb", "rpm", "AppImage", "pacman", "snap"],
synopsis: pkg.description,
description: null,
desktop: {
@@ -86,6 +88,23 @@ const config = {
appImage: {
license: "LICENSE",
},
snap: {
base: "core20",
grade: "stable",
confinement: "classic",
summary: pkg.productName,
title: pkg.productName,
description: null,
synopsis: pkg.description,
allowNativeWayland: true,
desktop: {
Name: pkg.productName,
Comment: pkg.description,
Keywords: "developer;terminal;emulator;",
category: "Development;Utility;",
exec: pkg.productName,
},
},
publish: {
provider: "generic",
url: "https://dl.waveterm.dev/releases",
+1 -2
View File
@@ -60,6 +60,7 @@
--app-panel-bg-color-dev: rgb(21, 23, 48);
--app-icon-color: rgb(139, 145, 138);
--app-icon-hover-color: #fff;
--app-selected-mask-color: rgba(255, 255, 255, 0.06);
/* icon colors */
@@ -219,6 +220,4 @@
--modal-header-bottom-border-color: rgba(241, 246, 243, 0.15);
--logo-button-hover-bg-color: #1e1e1e;
--xterm-viewport-border-color: rgba(241, 246, 243, 0.15);
}
+3 -2
View File
@@ -17,6 +17,7 @@
--app-panel-bg-color-dev: #e0e0e0;
--app-icon-color: rgb(80, 80, 80);
--app-icon-hover-color: rgb(100, 100, 100);
--app-selected-mask-color: rgba(0, 0, 0, 0.06);
--input-bg-color: #eeeeee;
@@ -50,6 +51,8 @@
--form-element-disabled-text-color: #b7b7b7;
--form-element-placeholder-color: #b7b7b7;
--markdown-bg-color: rgb(0, 0, 0, 0.1);
/* modal colors */
--modal-header-bottom-border-color: rgba(0, 0, 0, 0.3);
@@ -71,6 +74,4 @@
--toggle-thumb-color: var(--app-bg-color);
--logo-button-hover-bg-color: #f0f0f0;
--xterm-viewport-border-color: rgba(0, 0, 0, 0.3);
}
+2 -1
View File
@@ -3,7 +3,7 @@
:root {
/*
* term colors (16 + 2) form the base terminal theme
* term colors (16 + 5) form the base terminal theme
* for consistency these colors should be used by plugins/applications
*/
--term-black: #000000;
@@ -27,4 +27,5 @@
--term-cmdtext: #ffffff;
--term-foreground: #d3d7cf;
--term-background: #000000;
--term-selection-background: #ffffff40;
}
+1
View File
@@ -6,4 +6,5 @@
--term-foreground: #000000;
--term-background: #fefefe;
--term-cmdtext: #000000;
--term-selection-background: #00000018;
}
+16 -14
View File
@@ -8,19 +8,6 @@
margin-bottom: 10px;
}
code {
background-color: var(--markdown-bg-color);
color: var(--app-text-color);
font-family: var(--termfontfamily);
border-radius: 4px;
}
code.inline {
padding-top: 0;
padding-bottom: 0;
font-family: var(--termfontfamily);
}
.title {
color: var(--app-text-color);
margin-top: 16px;
@@ -62,14 +49,29 @@
pre {
background-color: var(--markdown-bg-color);
margin: 4px 10px 4px 10px;
padding: 6px 6px 6px 10px;
padding: 0.7em;
border-radius: 4px;
code {
background-color: transparent;
padding: 0;
line-height: normal;
}
}
pre.selected {
outline: 2px solid var(--markdown-outline-color);
}
code {
color: var(--app-text-color);
font-family: var(--termfontfamily);
border-radius: 4px;
background-color: var(--markdown-bg-color);
padding: 0.15em 0.5em;
line-height: 1.5;
}
.title {
font-weight: semibold;
padding-top: 6px;
+1 -1
View File
@@ -24,7 +24,7 @@ function HeaderRenderer(props: any, hnum: number): any {
}
function CodeRenderer(props: any): any {
return <code className={cn({ inline: props.inline })}>{props.children}</code>;
return <code>{props.children}</code>;
}
@mobxReact.observer
+1 -1
View File
@@ -90,7 +90,7 @@ class DisconnectedModal extends React.Component<{}, {}> {
onClick={this.restartServer}
leftIcon={<i className="fa-sharp fa-solid fa-triangle-exclamation"></i>}
>
Restart Server
Restart Wave Backend
</Button>
</div>
</Modal>
+1 -1
View File
@@ -74,7 +74,7 @@
.focused-option {
border: 1px solid rgba(241, 246, 243, 0.15);
border-radius: 4px;
background: rgba(255, 255, 255, 0.06);
background: var(--app-selected-mask-color);
}
}
}
@@ -90,25 +90,12 @@
margin-top: 5px;
overflow-x: auto;
overflow-y: hidden;
border: 1px solid var(--app-border-color);
border-radius: 6px;
padding: 6px 10px;
.terminal-connectelem {
height: 163px !important; // Needed to override plugin height
.xterm-viewport {
display: flex;
padding: 6px 10px;
gap: 8px;
align-items: flex-start;
align-self: stretch;
border-radius: 6px;
border: 1px solid var(--xterm-viewport-border-color);
background: #080a08;
height: 163px !important; // Needed to override plugin height
}
.xterm-screen {
padding: 10px;
}
}
}
}
+1 -1
View File
@@ -161,7 +161,7 @@ class CmdInput extends React.Component<{}, {}> {
</CenteredIcon>
</div>
</If>
<div key="ai" title="Wave AI (Cmd-Space)" className="cmdinput-icon" onClick={this.clickAIAction}>
<div key="ai" title="Wave AI (Ctrl-Space)" className="cmdinput-icon" onClick={this.clickAIAction}>
<i className="fa-sharp fa-regular fa-sparkles fa-fw" />
</div>
<div

Some files were not shown because too many files have changed in this diff Show More