diff --git a/tabby-local/src/components/localProfileSettings.component.pug b/tabby-local/src/components/localProfileSettings.component.pug index 63d2692d..0911edc9 100644 --- a/tabby-local/src/components/localProfileSettings.component.pug +++ b/tabby-local/src/components/localProfileSettings.component.pug @@ -1,27 +1,39 @@ -command-line-editor([model]='profile.options') +ul.nav-tabs(ngbNav, #nav='ngbNav') + li(ngbNavItem) + a(ngbNavLink, translate) General + ng-template(ngbNavContent) + command-line-editor([model]='profile.options') -.form-line(*ngIf='uac?.isAvailable') - .header - .title(translate) Run as administrator - toggle( - [(ngModel)]='profile.options.runAsAdministrator', - ) + .form-line(*ngIf='uac?.isAvailable') + .header + .title(translate) Run as administrator + toggle( + [(ngModel)]='profile.options.runAsAdministrator', + ) -.mb-3 - label(translate) Working directory + .mb-3 + label(translate) Working directory - .input-group - input.form-control( - type='text', - placeholder='Home directory', - [(ngModel)]='profile.options.cwd' - ) - button.btn.btn-secondary((click)='pickWorkingDirectory()') - i.fas.fa-folder-open -.mb-3 - label(translate) Environment - environment-editor( - type='text', - [(model)]='profile.options.env', - ) + .input-group + input.form-control( + type='text', + placeholder='Home directory', + [(ngModel)]='profile.options.cwd' + ) + button.btn.btn-secondary((click)='pickWorkingDirectory()') + i.fas.fa-folder-open + + .mb-3 + label(translate) Environment + environment-editor( + type='text', + [(model)]='profile.options.env', + ) + + li(ngbNavItem) + a(ngbNavLink, translate) Colors + ng-template(ngbNavContent) + color-scheme-selector([(model)]='profile.terminalColorScheme') + +div([ngbNavOutlet]='nav') diff --git a/tabby-terminal/src/tabContextMenu.ts b/tabby-terminal/src/tabContextMenu.ts index 817837f0..fa4aa8e1 100644 --- a/tabby-terminal/src/tabContextMenu.ts +++ b/tabby-terminal/src/tabContextMenu.ts @@ -1,3 +1,4 @@ +import deepClone from 'clone-deep' import { Injectable, Optional, Inject } from '@angular/core' import { NgbModal } from '@ng-bootstrap/ng-bootstrap' import { BaseTabComponent, TabContextMenuItemProvider, NotificationsService, MenuItemOptions, TranslateService, SplitTabComponent, PromptModalComponent, ConfigService, PartialProfile, Profile } from 'tabby-core' @@ -180,9 +181,7 @@ export class SaveAsProfileContextMenu extends TabContextMenuItemProvider { return } - const options = { - ...tab.profile.options, - } + const options = deepClone(tab.profile.options) const cwd = await tab.session?.getWorkingDirectory() ?? tab.profile.options.cwd if (cwd) {