mirror of
https://github.com/Eugeny/tabby.git
synced 2025-09-04 07:31:51 +00:00
Compare commits
17 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
700aae3ab0 | ||
![]() |
cad6b4d1ee | ||
![]() |
2b57061949 | ||
![]() |
ca5b0a95d9 | ||
![]() |
0e3b486e22 | ||
![]() |
f3e5ad4a2a | ||
![]() |
ad2ab61927 | ||
![]() |
e2464cf3b1 | ||
![]() |
4c2959b4c4 | ||
![]() |
4718e9ff22 | ||
![]() |
14098177e4 | ||
![]() |
3c68e2bd29 | ||
![]() |
bebec4f638 | ||
![]() |
f16f00cc7e | ||
![]() |
b01b25b084 | ||
![]() |
39389f77d0 | ||
![]() |
a1dbcdbae3 |
@@ -469,6 +469,15 @@
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "composer404",
|
||||
"name": "Przemyslaw Kozik",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/58251560?v=4",
|
||||
"profile": "https://github.com/composer404",
|
||||
"contributions": [
|
||||
"design"
|
||||
]
|
||||
}
|
||||
],
|
||||
"contributorsPerLine": 7,
|
||||
|
@@ -109,6 +109,8 @@
|
||||
* [save-output](https://github.com/Eugeny/tabby-save-output) - 터미널 출력을 파일에 기록
|
||||
* [sync-config](https://github.com/starxg/terminus-sync-config) - 구성을 Gist 또는 Gitee에 동기화
|
||||
* [clippy](https://github.com/Eugeny/tabby-clippy) - 항상 당신을 귀찮게 하는 예제 플러그인
|
||||
* [workspace-manager](https://github.com/composer404/tabby-workspace-manager) - 주어진 구성을 기반으로 사용자 정의 작업 공간 프로필을 생성할 수 있습니다
|
||||
* [search-in-browser](https://github.com/composer404/tabby-search-in-browser) - Tabby의 탭에서 선택한 텍스트로 기본 시스템 브라우저를 엽니다
|
||||
|
||||
<a name="themes"></a>
|
||||
# 테마
|
||||
|
@@ -115,6 +115,8 @@ Plugins and themes can be installed directly from the Settings view inside Tabby
|
||||
* [save-output](https://github.com/Eugeny/tabby-save-output) - record terminal output into a file
|
||||
* [sync-config](https://github.com/starxg/terminus-sync-config) - sync the config to Gist or Gitee
|
||||
* [clippy](https://github.com/Eugeny/tabby-clippy) - an example plugin which annoys you all the time
|
||||
* [workspace-manager](https://github.com/composer404/tabby-workspace-manager) - allows creating custom workspace profiles based on the given config
|
||||
* [search-in-browser](https://github.com/composer404/tabby-search-in-browser) - opens default system browser with a text selected from the Tabby's tab
|
||||
|
||||
<a name="themes"></a>
|
||||
# Themes
|
||||
@@ -213,6 +215,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/Me1onRind"><img src="https://avatars.githubusercontent.com/u/19531270?v=4?s=100" width="100px;" alt=""/><br /><sub><b>zZ</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Me1onRind" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/tainoNZ"><img src="https://avatars.githubusercontent.com/u/49261322?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Aaron Davison</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=tainoNZ" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/composer404"><img src="https://avatars.githubusercontent.com/u/58251560?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Przemyslaw Kozik</b></sub></a><br /><a href="#design-composer404" title="Design">🎨</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
@@ -54,7 +54,11 @@ export class Application {
|
||||
})
|
||||
|
||||
;(promiseIpc as any).on('get-default-mac-shell', async () => {
|
||||
return (await exec(`/usr/bin/dscl . -read /Users/${process.env.LOGNAME} UserShell`))[0].toString().split(' ')[1].trim()
|
||||
try {
|
||||
return (await exec(`/usr/bin/dscl . -read /Users/${process.env.LOGNAME} UserShell`))[0].toString().split(' ')[1].trim()
|
||||
} catch {
|
||||
return '/bin/bash'
|
||||
}
|
||||
})
|
||||
|
||||
const configData = loadConfig()
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-community-color-schemes",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Community color schemes for Tabby",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-core",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Tabby core",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -13,6 +13,7 @@ button {
|
||||
line-height: 0;
|
||||
text-align: center;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
&:not(:hover):not(:active) {
|
||||
background: transparent;
|
||||
@@ -21,4 +22,9 @@ button {
|
||||
&:focus {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
svg {
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
}
|
||||
}
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-electron",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Electron-specific bindings",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -30,6 +30,8 @@ export class ElectronUpdaterService extends UpdaterService {
|
||||
}
|
||||
|
||||
this.autoUpdater = electron.remote.require('electron-updater').autoUpdater
|
||||
this.autoUpdater.autoDownload = false
|
||||
this.autoUpdater.autoInstallOnAppQuit = false
|
||||
|
||||
this.autoUpdater.on('update-available', () => {
|
||||
this.logger.info('Update available')
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-local",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Tabby's local shell plugin",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-plugin-manager",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Tabby's plugin manager",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-serial",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Serial connections for Tabby",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-settings",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Tabby terminal settings page",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -5,7 +5,6 @@ import { WindowSettingsTabComponent } from './components/windowSettingsTab.compo
|
||||
import { VaultSettingsTabComponent } from './components/vaultSettingsTab.component'
|
||||
import { ConfigSyncSettingsTabComponent } from './components/configSyncSettingsTab.component'
|
||||
import { ProfilesSettingsTabComponent } from './components/profilesSettingsTab.component'
|
||||
import { ConfigSyncService } from './services/configSync.service'
|
||||
|
||||
/** @hidden */
|
||||
@Injectable()
|
||||
@@ -66,14 +65,7 @@ export class ConfigSyncSettingsTabProvider extends SettingsTabProvider {
|
||||
icon = 'cloud'
|
||||
title = 'Config sync'
|
||||
|
||||
constructor (
|
||||
private configSync: ConfigSyncService,
|
||||
) { super() }
|
||||
|
||||
getComponentType (): any {
|
||||
if (!this.configSync.isAvailable()) {
|
||||
return null
|
||||
}
|
||||
return ConfigSyncSettingsTabComponent
|
||||
}
|
||||
}
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-ssh",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "SSH connections for Tabby",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-telnet",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Telnet/socket connections for Tabby",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-terminal",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Tabby's terminal emulation core",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -565,13 +565,27 @@ export class BaseTerminalTabComponent extends BaseTabComponent implements OnInit
|
||||
this.termContainerSubscriptions.cancelAll()
|
||||
}
|
||||
|
||||
protected async handleRightClick (event: MouseEvent): Promise<void> {
|
||||
private rightMouseDownTime = 0
|
||||
|
||||
protected async handleRightMouseDown (event: MouseEvent): Promise<void> {
|
||||
event.preventDefault()
|
||||
event.stopPropagation()
|
||||
this.rightMouseDownTime = Date.now()
|
||||
if (this.config.store.terminal.rightClick === 'menu') {
|
||||
this.platform.popupContextMenu(await this.buildContextMenu(), event)
|
||||
} else if (this.config.store.terminal.rightClick === 'paste') {
|
||||
this.paste()
|
||||
}
|
||||
}
|
||||
|
||||
protected async handleRightMouseUp (event: MouseEvent): Promise<void> {
|
||||
event.preventDefault()
|
||||
event.stopPropagation()
|
||||
if (this.config.store.terminal.rightClick === 'paste') {
|
||||
const duration = Date.now() - this.rightMouseDownTime
|
||||
if (duration < 250) {
|
||||
this.paste()
|
||||
} else {
|
||||
this.platform.popupContextMenu(await this.buildContextMenu(), event)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -611,7 +625,13 @@ export class BaseTerminalTabComponent extends BaseTabComponent implements OnInit
|
||||
return
|
||||
}
|
||||
if (event.which === 3 || event.which === 1 && event.ctrlKey) {
|
||||
this.handleRightClick(event)
|
||||
this.handleRightMouseDown(event)
|
||||
return
|
||||
}
|
||||
}
|
||||
if (event.type === 'mouseup') {
|
||||
if (event.which === 3 || event.which === 1 && event.ctrlKey) {
|
||||
this.handleRightMouseUp(event)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
@@ -49,6 +49,7 @@ h3.mb-3 Terminal
|
||||
.form-line
|
||||
.header
|
||||
.title Right click
|
||||
.description(*ngIf='config.store.terminal.rightClick == "paste"') Long-click for context menu
|
||||
.btn-group(
|
||||
[(ngModel)]='config.store.terminal.rightClick',
|
||||
(ngModelChange)='config.save()',
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-web-demo",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"main": "dist/index.js",
|
||||
"typings": "dist/index.d.ts",
|
||||
"scripts": {
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tabby-web",
|
||||
"version": "1.0.162-nightly.0",
|
||||
"version": "1.0.163",
|
||||
"description": "Web-specific bindings",
|
||||
"keywords": [
|
||||
"tabby-builtin-plugin"
|
||||
|
@@ -17,5 +17,5 @@
|
||||
"resolutions": {
|
||||
"**/util": "^0.12.0"
|
||||
},
|
||||
"version": "1.0.162-nightly.0"
|
||||
"version": "1.0.163"
|
||||
}
|
||||
|
Reference in New Issue
Block a user