mirror of
https://github.com/AutoMaker-Org/automaker.git
synced 2026-02-04 09:13:08 +00:00
feat: increase maximum terminal session limit and improve path handling
- Updated the maximum terminal session limit from 500 to 1000 to accommodate more concurrent sessions. - Enhanced path handling in the editor and HTTP API client to normalize file paths for both Unix and Windows systems, ensuring consistent URL encoding.
This commit is contained in:
@@ -16,7 +16,7 @@ const MAX_SCROLLBACK_SIZE = 50000; // ~50KB per terminal
|
|||||||
|
|
||||||
// Session limit constants - shared with routes/settings.ts
|
// Session limit constants - shared with routes/settings.ts
|
||||||
export const MIN_MAX_SESSIONS = 1;
|
export const MIN_MAX_SESSIONS = 1;
|
||||||
export const MAX_MAX_SESSIONS = 500;
|
export const MAX_MAX_SESSIONS = 1000;
|
||||||
|
|
||||||
// Maximum number of concurrent terminal sessions
|
// Maximum number of concurrent terminal sessions
|
||||||
// Can be overridden via TERMINAL_MAX_SESSIONS environment variable
|
// Can be overridden via TERMINAL_MAX_SESSIONS environment variable
|
||||||
|
|||||||
@@ -225,10 +225,11 @@ export class HttpApiClient implements ElectronAPI {
|
|||||||
// Build VS Code URL scheme: vscode://file/path:line:column
|
// Build VS Code URL scheme: vscode://file/path:line:column
|
||||||
// This works on systems where VS Code's URL handler is registered
|
// This works on systems where VS Code's URL handler is registered
|
||||||
// URL encode the path to handle special characters (spaces, brackets, etc.)
|
// URL encode the path to handle special characters (spaces, brackets, etc.)
|
||||||
// but preserve the leading slash for absolute paths
|
// Handle both Unix (/) and Windows (\) path separators
|
||||||
const encodedPath = filePath.startsWith('/')
|
const normalizedPath = filePath.replace(/\\/g, '/');
|
||||||
? '/' + filePath.slice(1).split('/').map(encodeURIComponent).join('/')
|
const encodedPath = normalizedPath.startsWith('/')
|
||||||
: filePath.split('/').map(encodeURIComponent).join('/');
|
? '/' + normalizedPath.slice(1).split('/').map(encodeURIComponent).join('/')
|
||||||
|
: normalizedPath.split('/').map(encodeURIComponent).join('/');
|
||||||
let url = `vscode://file${encodedPath}`;
|
let url = `vscode://file${encodedPath}`;
|
||||||
if (line !== undefined && line > 0) {
|
if (line !== undefined && line > 0) {
|
||||||
url += `:${line}`;
|
url += `:${line}`;
|
||||||
|
|||||||
@@ -417,9 +417,11 @@ ipcMain.handle("shell:openInEditor", async (_, filePath: string, line?: number,
|
|||||||
// Build VS Code URL scheme: vscode://file/path:line:column
|
// Build VS Code URL scheme: vscode://file/path:line:column
|
||||||
// This works on all platforms where VS Code is installed
|
// This works on all platforms where VS Code is installed
|
||||||
// URL encode the path to handle special characters (spaces, brackets, etc.)
|
// URL encode the path to handle special characters (spaces, brackets, etc.)
|
||||||
const encodedPath = filePath.startsWith('/')
|
// Handle both Unix (/) and Windows (\) path separators
|
||||||
? '/' + filePath.slice(1).split('/').map(encodeURIComponent).join('/')
|
const normalizedPath = filePath.replace(/\\/g, '/');
|
||||||
: filePath.split('/').map(encodeURIComponent).join('/');
|
const encodedPath = normalizedPath.startsWith('/')
|
||||||
|
? '/' + normalizedPath.slice(1).split('/').map(encodeURIComponent).join('/')
|
||||||
|
: normalizedPath.split('/').map(encodeURIComponent).join('/');
|
||||||
let url = `vscode://file${encodedPath}`;
|
let url = `vscode://file${encodedPath}`;
|
||||||
if (line !== undefined && line > 0) {
|
if (line !== undefined && line > 0) {
|
||||||
url += `:${line}`;
|
url += `:${line}`;
|
||||||
|
|||||||
Reference in New Issue
Block a user