Compare commits

...

1153 Commits

Author SHA1 Message Date
Eugene Pankov
b3df681753 fixed event listener order 2022-05-28 13:56:49 +02:00
Eugene Pankov
524ccd06f3 autofocus window 2022-05-28 13:15:13 +02:00
Eugene Pankov
8c4c07c39b synchronize config saves between windows 2022-05-28 12:35:32 +02:00
Eugene Pankov
296188c45e cli: allow directly opening script and .command files - fixes #6406, fixes #6018 2022-05-27 20:05:40 +02:00
Eugene Pankov
509ae8d32e fixed spinner handling - fixes #6489, fixes #6476, fixes #3383 2022-05-27 14:44:49 +02:00
Eugene Pankov
f160353abe sixel graphics support - fixes #6032 2022-05-27 13:34:18 +02:00
Eugeny
02fb0db9de Merge pull request #6493 from bdr99/patch-1
Hide description in selector modal if it's the same as the title
2022-05-26 03:43:18 -07:00
Brandon Rothweiler
0a0ec35b84 Hide description in selector model if it's the same as the title 2022-05-24 22:58:02 -04:00
Eugene Pankov
fbcb165708 bumped xterm 2022-05-22 20:39:36 -07:00
Eugene Pankov
643efb13a7 bumped xterm 2022-05-21 22:25:00 -07:00
Eugene Pankov
5a2f14746f fixed #6428 2022-05-21 21:33:08 -07:00
Eugene Pankov
fdf9004323 fixed #6430 2022-05-21 21:22:26 -07:00
Eugene Pankov
12aa28e766 allow customizing selection foreground color 2022-05-21 20:34:19 -07:00
Eugene Pankov
1fb67e1730 serial: fixed unnecessary spinner - fixes #6449 2022-05-21 20:03:32 -07:00
Eugene Pankov
5f0520def9 macOS: accept first mouse click - fixes #6464 2022-05-21 19:51:11 -07:00
Eugene Pankov
1aa45ddcdf use npms.io API to load plugins 2022-05-21 19:48:27 -07:00
Eugene Pankov
cfa6c104cd ui tweak 2022-05-21 19:42:57 -07:00
Eugene Pankov
3bb9acfb98 more prominent active search result highlighting 2022-05-21 19:32:10 -07:00
Eugene Pankov
50c585e14c Merge branch 'master' of github.com:Eugeny/tabby 2022-05-21 19:29:35 -07:00
Eugene Pankov
de8afc1e7a fixed overview ruler alignment 2022-05-21 19:29:31 -07:00
Eugeny
eea02eed2a Merge pull request #6302 from Eugeny/dependabot/npm_and_yarn/axios-0.27.2 2022-05-22 04:26:07 +02:00
Eugene Pankov
40f57a9709 bumped xterm 2022-05-21 19:25:21 -07:00
Eugene Pankov
f2809927c2 lint 2022-05-21 19:25:17 -07:00
Eugeny
f27afebd82 Merge pull request #6131 from Eugeny/dependabot/npm_and_yarn/typedoc-0.22.15 2022-05-22 04:24:03 +02:00
Eugeny
78b4b28480 Merge pull request #6459 from Eugeny/dependabot/npm_and_yarn/tabby-terminal/xterm-addon-webgl-0.12.0-beta.36 2022-05-22 04:23:17 +02:00
Eugeny
76562a23ae Merge pull request #6451 from Eugeny/dependabot/npm_and_yarn/tabby-terminal/xterm-addon-search-0.9.0-beta.37 2022-05-22 04:23:13 +02:00
Eugeny
37a88ea3c4 Merge pull request #6458 from Eugeny/dependabot/npm_and_yarn/webpack-5.72.1 2022-05-22 04:23:08 +02:00
Eugeny
4d89b1853f Merge pull request #6433 from Eugeny/dependabot/github_actions/actions/setup-node-3.2.0 2022-05-22 04:22:47 +02:00
Eugeny
67a05dfb39 Merge pull request #6423 from Eugeny/dependabot/npm_and_yarn/tabby-terminal/xterm-addon-fit-0.6.0-beta.9 2022-05-22 04:22:28 +02:00
Eugeny
3e207f7ed2 Merge pull request #6092 from Eugeny/dependabot/npm_and_yarn/tabby-electron/winston-3.7.2 2022-05-22 04:20:00 +02:00
Eugeny
d3bc36d9a1 Merge pull request #6091 from Eugeny/dependabot/npm_and_yarn/graceful-fs-4.2.10 2022-05-22 04:19:46 +02:00
Eugeny
0a69f54851 Merge pull request #6225 from Eugeny/dependabot/npm_and_yarn/npmlog-6.0.2 2022-05-22 04:19:36 +02:00
Eugeny
8b3448c72d Merge pull request #6209 from Eugeny/dependabot/npm_and_yarn/node-abi-3.15.0 2022-05-22 04:19:20 +02:00
Eugeny
66b84418b4 Merge pull request #6472 from Jai-JAP/patch-2 2022-05-22 04:18:39 +02:00
Eugene Pankov
1834ba25e0 bumped electron-builder 2022-05-21 19:18:26 -07:00
Eugene Pankov
740c77374e improved flow control for more speed - fixes #6394 2022-05-21 19:08:23 -07:00
Eugeny
50e9399ee1 Merge pull request #6473 from Eugeny/all-contributors/add-attet 2022-05-21 02:40:14 +02:00
allcontributors[bot]
30d38e530e docs: update .all-contributorsrc [skip ci] 2022-05-21 00:32:25 +00:00
allcontributors[bot]
6e5504c96c docs: update README.de-DE.md [skip ci] 2022-05-21 00:32:24 +00:00
allcontributors[bot]
85e0eabc76 docs: update README.it-IT.md [skip ci] 2022-05-21 00:32:23 +00:00
allcontributors[bot]
f83c1fddb4 docs: update README.ko-KR.md [skip ci] 2022-05-21 00:32:22 +00:00
allcontributors[bot]
f35a9b594f docs: update README.ru-RU.md [skip ci] 2022-05-21 00:32:21 +00:00
allcontributors[bot]
e8769b2e9e docs: update README.zh-CN.md [skip ci] 2022-05-21 00:32:20 +00:00
allcontributors[bot]
24f81ba070 docs: update README.md [skip ci] 2022-05-21 00:32:19 +00:00
Eugeny
a96a9ea5e5 Merge pull request #6465 from attet/panenav 2022-05-21 02:32:07 +02:00
Atte Timonen
a98050b1cd Implement 'focus follows mouse' for pane navigation 2022-05-20 09:01:23 +02:00
Atte Timonen
8ee1d0076b Implement hotkeys for navigating to a specific pane 2022-05-20 09:01:10 +02:00
Jai A P
f47931e763 Delete builder-util+23.0.8.patch
As this is merged upstream in 23.0.9
2022-05-20 10:55:04 +05:30
dependabot[bot]
8539663056 Bump xterm-addon-webgl in /tabby-terminal
Bumps [xterm-addon-webgl](https://github.com/xtermjs/xterm.js) from 0.12.0-beta.29 to 0.12.0-beta.36.
- [Release notes](https://github.com/xtermjs/xterm.js/releases)
- [Commits](https://github.com/xtermjs/xterm.js/commits)

---
updated-dependencies:
- dependency-name: xterm-addon-webgl
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-19 04:14:10 +00:00
dependabot[bot]
33fca7c176 Bump webpack from 5.72.0 to 5.72.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.72.0 to 5.72.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.72.0...v5.72.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-19 04:03:16 +00:00
Eugeny
c80ad41521 Merge pull request #6310 from Eugeny/dependabot/npm_and_yarn/ejs-3.1.7
Bump ejs from 3.1.6 to 3.1.7
2022-05-19 04:04:50 +02:00
Eugeny
9ef4fc3195 Merge pull request #6282 from Eugeny/dependabot/github_actions/github/codeql-action-2 2022-05-19 04:01:41 +02:00
Eugene Pankov
a37f2f0eee Merge branch 'master' of github.com:Eugeny/tabby 2022-05-18 12:42:10 -07:00
Eugene Pankov
ff0c2a72df bumped electron - fixes #6454 2022-05-18 12:41:34 -07:00
Eugeny
ef920c4bac Merge pull request #6414 from LiangchengJ/fetch 2022-05-18 21:00:08 +02:00
dependabot[bot]
224f83a283 Bump xterm-addon-search in /tabby-terminal
Bumps [xterm-addon-search](https://github.com/xtermjs/xterm.js) from 0.9.0-beta.25 to 0.9.0-beta.37.
- [Release notes](https://github.com/xtermjs/xterm.js/releases)
- [Commits](https://github.com/xtermjs/xterm.js/commits)

---
updated-dependencies:
- dependency-name: xterm-addon-search
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-18 04:14:07 +00:00
Eugene Pankov
f1d91162c3 set --no-sandbox when relaunching on Linux 2022-05-17 00:05:10 -07:00
Eugene Pankov
63fd01ae26 locale: removed unused string 2022-05-16 23:48:20 -07:00
Eugene Pankov
d6bdccf66e locale updates, added Ukrainian 2022-05-16 23:45:36 -07:00
dependabot[bot]
ead2414c48 Bump actions/setup-node from 3.0.0 to 3.2.0
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3.0.0 to 3.2.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3.0.0...v3.2.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-17 04:12:32 +00:00
dependabot[bot]
ef18541531 Bump xterm-addon-fit in /tabby-terminal
Bumps [xterm-addon-fit](https://github.com/xtermjs/xterm.js) from 0.6.0-beta.8 to 0.6.0-beta.9.
- [Release notes](https://github.com/xtermjs/xterm.js/releases)
- [Commits](https://github.com/xtermjs/xterm.js/commits)

---
updated-dependencies:
- dependency-name: xterm-addon-fit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-16 04:18:25 +00:00
Liangcheng Juves
7e0b9ecb56 Update official icon for kali profile
Icon from https://www.kali.org/images/kali-logo.svg
2022-05-15 15:13:13 +08:00
Liangcheng Juves
e537b61edd Add icon for oracle wsl profiles 2022-05-15 15:03:17 +08:00
Liangcheng Juves
175016bb1a Add icon for openEuler profile 2022-05-15 15:02:55 +08:00
Liangcheng Juves
9f4c12ba96 Add icon for AlmaLinux-8 profile 2022-05-15 15:02:12 +08:00
Liangcheng Juves
6dc14e0fd5 Add icon for Ubuntu-22.04 profile 2022-05-15 15:01:29 +08:00
Liangcheng Juves
b154d87865 Update official icon for powershell profiles
Icon from https://docs.microsoft.com/zh-CN/powershell/
2022-05-15 14:56:51 +08:00
Liangcheng Juves
0aa7e53a78 Update official icon for git bash profile
Icon from https://github.com/git-for-windows/git-for-windows.github.io/blob/main/img/gwindows_logo.svg
2022-05-15 14:54:23 +08:00
Liangcheng Juves
272918bff6 Change name Git-Bash to Git Bash 2022-05-15 14:51:23 +08:00
Liangcheng Juves
7cddcee951 Fix the problem that the Developer Prompt for VS 2022 profile could not be loaded 2022-05-15 14:49:23 +08:00
Liangcheng Juves
fa2bbe39c4 Different versions of vs profile use different icon to differentiate 2022-05-15 14:48:58 +08:00
Liangcheng Juves
a5fb726206 Use linux icon by default when no WSL profile icon is found 2022-05-15 14:41:13 +08:00
Liangcheng Juves
ec22c00ba5 Switch to more classic linux icon
Icon from https://upload.wikimedia.org/wikipedia/commons/archive/3/35/20120923174402!Tux.svg
2022-05-15 02:00:11 +08:00
Eugene Pankov
052d771748 lint 2022-05-09 22:05:47 -07:00
Eugene Pankov
c1bd2a720d fixed #6349 - enable xterm flow control 2022-05-09 21:50:06 -07:00
Eugene Pankov
5f4a7c4d39 fixed #6373 - allow disabling dynamic title on saved layouts 2022-05-09 20:54:23 -07:00
Eugene Pankov
96cd676109 fixed #5922 - the combine-tabs hotkey on Windows 2022-05-09 20:49:17 -07:00
Eugene Pankov
19a73264be fixed SFTP directory detection - fixes #6360, fixes #6260 2022-05-09 20:48:58 -07:00
Eugene Pankov
8e7f69cb58 fixed scrollbar dragging - fixes #6359 2022-05-09 20:41:11 -07:00
Eugeny
563cc49c3c Merge pull request #6345 from calvinweb/patch-1 2022-05-04 02:23:30 +02:00
calvinweb
3851353e80 Fix a translate mistake 2022-05-03 15:08:53 +08:00
Eugene Pankov
7032bff827 Update profiles.ts 2022-04-30 12:02:57 -07:00
Eugene Pankov
271955e9d4 added missing strings 2022-04-30 11:36:50 -07:00
Eugene Pankov
a29539af69 Update docs.yml 2022-04-30 11:35:07 -07:00
Eugene Pankov
4c242fdca4 fixed serial port name encoding - fixes #6200 2022-04-30 20:16:51 +02:00
Eugene Pankov
80b44500c4 settings: fixed font autocomplete - fixes #6298, fixes #6298 2022-04-30 10:50:41 -07:00
Eugene Pankov
5433cc6136 bump xterm search addon 2022-04-30 10:28:18 -07:00
Eugene Pankov
9d88ed6371 limit search panel width 2022-04-30 10:28:12 -07:00
Eugene Pankov
12362231cf ssh: show CWD detection tip more prominently 2022-04-30 10:10:10 -07:00
Eugene Pankov
a31cacf4ee focus the next tab after closing a tab - fixes #6325 2022-04-30 09:58:20 -07:00
Eugene Pankov
3e2f93c226 autorebuild native modules 2022-04-30 09:49:40 -07:00
Eugeny
a434220ff0 Merge pull request #6309 from Eugeny/all-contributors/add-LiangchengJ 2022-04-28 22:13:37 +02:00
dependabot[bot]
9be970614a Bump ejs from 3.1.6 to 3.1.7
Bumps [ejs](https://github.com/mde/ejs) from 3.1.6 to 3.1.7.
- [Release notes](https://github.com/mde/ejs/releases)
- [Changelog](https://github.com/mde/ejs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mde/ejs/compare/v3.1.6...v3.1.7)

---
updated-dependencies:
- dependency-name: ejs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-28 20:12:32 +00:00
Eugeny
a629092985 Merge pull request #6299 from Eugeny/dependabot/npm_and_yarn/ssh2-1.10.0 2022-04-28 22:11:14 +02:00
allcontributors[bot]
8808593b00 docs: update .all-contributorsrc [skip ci] 2022-04-28 20:10:55 +00:00
allcontributors[bot]
a78fe7a9a8 docs: update README.de-DE.md [skip ci] 2022-04-28 20:10:55 +00:00
allcontributors[bot]
9faf3ccd1d docs: update README.it-IT.md [skip ci] 2022-04-28 20:10:53 +00:00
allcontributors[bot]
75a7707965 docs: update README.ko-KR.md [skip ci] 2022-04-28 20:10:52 +00:00
allcontributors[bot]
5714fc85d3 docs: update README.ru-RU.md [skip ci] 2022-04-28 20:10:52 +00:00
allcontributors[bot]
7668f4beea docs: update README.zh-CN.md [skip ci] 2022-04-28 20:10:51 +00:00
Eugeny
7b41cb0936 Merge pull request #6308 from LiangchengJ/fetch 2022-04-28 22:10:50 +02:00
allcontributors[bot]
fee18c4f8b docs: update README.md [skip ci] 2022-04-28 20:10:49 +00:00
Liangcheng Juves
716ce018fb Add icon for docker profiles 2022-04-28 22:49:25 +08:00
dependabot[bot]
8107b96563 Bump axios from 0.26.1 to 0.27.2
Bumps [axios](https://github.com/axios/axios) from 0.26.1 to 0.27.2.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.26.1...v0.27.2)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-28 04:06:26 +00:00
dependabot[bot]
d7146eb523 Bump ssh2 from 1.9.0 to 1.10.0
Bumps [ssh2](https://github.com/mscdex/ssh2) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/mscdex/ssh2/releases)
- [Commits](https://github.com/mscdex/ssh2/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: ssh2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-28 04:05:10 +00:00
dependabot[bot]
62b94bff2f Bump github/codeql-action from 1 to 2
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-26 04:17:53 +00:00
Eugeny
f653fe9c85 Merge pull request #6276 from Jai-JAP/master
Fix armv7l builds
2022-04-25 13:51:54 +02:00
Jai A P
ae82e568dd Merge branch 'Eugeny:master' into master 2022-04-25 16:00:42 +05:30
Jai A P
2ba4036275 Rename builder-util+23.0.3.patch to builder-util+23.0.8.patch 2022-04-25 15:58:58 +05:30
Jai A P
43d389a1ef Merge pull request #1 from Jai-JAP/176-fix
176 fix
2022-04-25 15:58:31 +05:30
Jai A P
c7a72da0ab Add files via upload 2022-04-25 15:07:49 +05:30
Jai A P
66fad228fc Update build-native.js 2022-04-25 11:20:35 +05:30
Jai A P
5e217cf654 Update build-linux.js 2022-04-25 11:19:30 +05:30
Eugeny
28b227bca4 Merge pull request #6226 from Eugeny/dependabot/npm_and_yarn/electron-18.1.0 2022-04-24 10:34:48 +02:00
Eugene Pankov
d2b0fae9ed added @hisamafahri 2022-04-24 10:33:17 +02:00
Eugeny
4299236c4d Merge pull request #6262 from hisamafahri/master 2022-04-24 10:31:55 +02:00
Jai A P
2af4714d66 Update build-linux.js 2022-04-24 11:49:46 +05:30
Hisam Fahri
389e05c832 feat(hotkey): add the delete entire line hotkey 2022-04-24 11:57:59 +07:00
Eugeny
500a42c1f7 Merge pull request #6258 from MagicLike/master
A bit more polishing
2022-04-23 22:38:24 +02:00
MagicLike
fceb1da62f A bit more polishing
Added dots between the language links, inspired by anuraghazra/github-readme-stats
2022-04-23 21:32:08 +02:00
Jai A P
8dba1bf5cd Update build-linux.js 2022-04-23 14:06:29 +05:30
Jai A P
7c5e136c31 Update build-native.js 2022-04-23 14:05:44 +05:30
Eugene Pankov
4c9fb9a3d4 added @magiclike for doc 2022-04-23 10:00:22 +02:00
Eugeny
a6e5f004a8 Merge pull request #6251 from MagicLike/master 2022-04-22 23:08:29 +02:00
MagicLike
5b845dae45 Added README.de-DE.md 2022-04-22 23:06:47 +02:00
MagicLike
dc037bc918 Merge branch 'Eugeny:master' into master 2022-04-22 22:41:54 +02:00
MagicLike
13fe3ef1ec Translated, linked & polished
- README translated into german
- Added some spaces in the README
- Linked the READMEs together, except ko-KR
- Changed "Inglese" to "English" in it-IT
- Removed link to zh-CN in zh-CN
- Added flags in the READMEs, except for ko-KR
2022-04-22 22:39:40 +02:00
Eugeny
c4544256e1 Merge pull request #6244 from Eugeny/all-contributors/add-woodmeal
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
2022-04-22 09:50:47 +02:00
woodmeal
25f5cf04ea Adding env handlement for ssh profile sessions (#6242) 2022-04-22 09:50:35 +02:00
allcontributors[bot]
36a63e771f docs: update .all-contributorsrc [skip ci] 2022-04-22 07:50:32 +00:00
allcontributors[bot]
fd809d7d85 docs: update README.it-IT.md [skip ci] 2022-04-22 07:50:31 +00:00
allcontributors[bot]
81fe06a9f6 docs: update README.ko-KR.md [skip ci] 2022-04-22 07:50:30 +00:00
allcontributors[bot]
e3d6b5f3d7 docs: update README.ru-RU.md [skip ci] 2022-04-22 07:50:29 +00:00
allcontributors[bot]
4e3caa7409 docs: update README.zh-CN.md [skip ci] 2022-04-22 07:50:28 +00:00
allcontributors[bot]
7b6ce3aeba docs: update README.md [skip ci] 2022-04-22 07:50:27 +00:00
dependabot[bot]
fdf66b7b22 Bump electron from 18.0.4 to 18.1.0
Bumps [electron](https://github.com/electron/electron) from 18.0.4 to 18.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v18.0.4...v18.1.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-21 04:05:23 +00:00
dependabot[bot]
42867818da Bump npmlog from 6.0.0 to 6.0.2
Bumps [npmlog](https://github.com/npm/npmlog) from 6.0.0 to 6.0.2.
- [Release notes](https://github.com/npm/npmlog/releases)
- [Changelog](https://github.com/npm/npmlog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/npmlog/compare/v6.0.0...v6.0.2)

---
updated-dependencies:
- dependency-name: npmlog
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-21 04:04:55 +00:00
Eugeny
58f2c3d081 Merge pull request #6220 from Eugeny/all-contributors/add-Ox0400 2022-04-20 14:20:47 +02:00
allcontributors[bot]
1c011b6fe3 docs: update .all-contributorsrc [skip ci] 2022-04-20 12:20:39 +00:00
allcontributors[bot]
88c2a9996b docs: update README.it-IT.md [skip ci] 2022-04-20 12:20:39 +00:00
allcontributors[bot]
b68213e278 docs: update README.ko-KR.md [skip ci] 2022-04-20 12:20:37 +00:00
allcontributors[bot]
6bb8deacb7 docs: update README.ru-RU.md [skip ci] 2022-04-20 12:20:36 +00:00
allcontributors[bot]
5dc3eecb74 docs: update README.zh-CN.md [skip ci] 2022-04-20 12:20:36 +00:00
allcontributors[bot]
531b658405 docs: update README.md [skip ci] 2022-04-20 12:20:35 +00:00
Eugeny
a710819615 Merge pull request #6218 from Ox0400/master 2022-04-20 14:20:34 +02:00
zhipeng
ca441b6f83 fix import lowcase host from ssh/config 2022-04-20 19:34:06 +08:00
Eugene Pankov
b6d0bd2d43 fixed search - fixes #6197 2022-04-20 09:37:43 +02:00
Eugeny
3cce468bf3 Merge pull request #6117 from Eugeny/dependabot/npm_and_yarn/webpack-5.72.0 2022-04-20 09:02:49 +02:00
Eugeny
22d1119c33 Merge pull request #6213 from Eugeny/dependabot/npm_and_yarn/tabby-terminal/xterm-addon-webgl-0.12.0-beta.28 2022-04-20 09:02:18 +02:00
Eugeny
ddbfc700e5 Merge pull request #6212 from Eugeny/dependabot/npm_and_yarn/tabby-terminal/xterm-addon-search-0.9.0-beta.21 2022-04-20 09:02:10 +02:00
dependabot[bot]
93081162fe Bump xterm-addon-webgl in /tabby-terminal
Bumps [xterm-addon-webgl](https://github.com/xtermjs/xterm.js) from 0.12.0-beta.27 to 0.12.0-beta.28.
- [Release notes](https://github.com/xtermjs/xterm.js/releases)
- [Commits](https://github.com/xtermjs/xterm.js/commits)

---
updated-dependencies:
- dependency-name: xterm-addon-webgl
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-20 04:19:56 +00:00
dependabot[bot]
4fb158d2a1 Bump xterm-addon-search in /tabby-terminal
Bumps [xterm-addon-search](https://github.com/xtermjs/xterm.js) from 0.9.0-beta.18 to 0.9.0-beta.21.
- [Release notes](https://github.com/xtermjs/xterm.js/releases)
- [Commits](https://github.com/xtermjs/xterm.js/commits)

---
updated-dependencies:
- dependency-name: xterm-addon-search
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-20 04:19:47 +00:00
dependabot[bot]
0bbb11131d Bump node-abi from 3.8.0 to 3.15.0
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 3.8.0 to 3.15.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/main/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v3.8.0...v3.15.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-20 04:03:55 +00:00
Eugene Pankov
4a82294741 fixed ARM macOS builds - fixes #6201 2022-04-19 13:31:50 +02:00
Eugene Pankov
9a08bf8782 Update updater.service.ts 2022-04-19 12:30:24 +02:00
Eugene Pankov
2e83b450a9 Update updater.service.ts 2022-04-19 11:28:32 +02:00
dependabot[bot]
c540f1a813 Bump typedoc from 0.22.13 to 0.22.15
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.22.13 to 0.22.15.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.22.13...v0.22.15)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-19 08:55:09 +00:00
dependabot[bot]
450a0f3980 Bump graceful-fs from 4.2.9 to 4.2.10
Bumps [graceful-fs](https://github.com/isaacs/node-graceful-fs) from 4.2.9 to 4.2.10.
- [Release notes](https://github.com/isaacs/node-graceful-fs/releases)
- [Commits](https://github.com/isaacs/node-graceful-fs/compare/v4.2.9...v4.2.10)

---
updated-dependencies:
- dependency-name: graceful-fs
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-19 08:54:59 +00:00
dependabot[bot]
b97d3e30fb Bump webpack from 5.70.0 to 5.72.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.70.0 to 5.72.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.70.0...v5.72.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-19 08:54:28 +00:00
Eugene Pankov
12486584f0 use s3 for updates 2022-04-19 10:50:31 +02:00
Eugeny
90168323c8 Merge pull request #6083 from Eugeny/dependabot/npm_and_yarn/ssh2-1.9.0 2022-04-19 01:07:12 +02:00
Eugeny
e1d86810e3 Merge pull request #6101 from Eugeny/dependabot/npm_and_yarn/app/macos-native-processlist-2.1.0 2022-04-19 01:07:01 +02:00
Eugeny
7be713495e Merge pull request #6129 from Eugeny/dependabot/npm_and_yarn/app/electron-updater-5.0.1 2022-04-19 01:05:57 +02:00
Eugeny
27ed3b0444 Merge pull request #6171 from Eugeny/dependabot/npm_and_yarn/electron-18.0.4 2022-04-19 01:03:07 +02:00
Eugene Pankov
5d2db6d85c fixed windows release arm64 builds 2022-04-18 23:24:48 +02:00
Eugene Pankov
ba7571248c Update app.ts 2022-04-15 21:30:03 +02:00
Eugene Pankov
763bb2c7aa macOS: open a new window if none are open when called from CLI - fixes #6031 2022-04-15 20:04:30 +02:00
Eugene Pankov
3d841eb97c added "new window" to macOS dock menu - fixes #6037 2022-04-15 19:52:07 +02:00
Eugene Pankov
7016688170 allow directly editing items from the profile selector - fixes #6039 2022-04-15 19:45:30 +02:00
Eugene Pankov
358a7563f6 ssh: use correct profile's login scripts - fixes #6064 2022-04-15 19:15:27 +02:00
Eugene Pankov
9c6acf99d0 ssh: allow SOCKS proxy-side DNS resolving - fixes #6100 2022-04-15 19:03:21 +02:00
Eugene Pankov
eaf4ed9855 expose the drawBoldTextInBrightColors option - fixes #3149 2022-04-15 18:55:00 +02:00
Eugene Pankov
4a33936e7d Merge branch 'master' of github.com:Eugeny/tabby 2022-04-15 18:54:59 +02:00
Eugene Pankov
903b7d70f9 alllow changing font weight for normal and bold text - fixes #3129, fixes #3400, fixes #5444, fixes #3045, fixes #6099 2022-04-15 18:47:55 +02:00
Eugeny
143f5edcb3 Merge pull request #6175 from 2ykwang/fix-small-typo
Fix small typo
2022-04-15 16:27:57 +02:00
Youngkwang Yang
0ee0f98462 Fix typo 2022-04-15 22:59:24 +09:00
Eugene Pankov
b330c428e6 updated locales, added Korean 2022-04-15 12:43:07 +02:00
Eugeny
61810da810 Merge pull request #6106 from Jai-JAP/master 2022-04-15 12:32:55 +02:00
Eugene Pankov
1e85acb99e fixed tab header animations, allow disabling animations globally #6147 2022-04-15 12:27:48 +02:00
Eugene Pankov
38c1fafeee Update theme.scss 2022-04-15 12:25:36 +02:00
Eugene Pankov
5e75d88f1d better color scheme preview examples - fixes #6090 2022-04-15 11:37:41 +02:00
Eugene Pankov
4fe4ae8b9b fixed color scheme editing - fixes #5742 2022-04-15 11:23:55 +02:00
dependabot[bot]
23040aa217 Bump electron from 18.0.1 to 18.0.4
Bumps [electron](https://github.com/electron/electron) from 18.0.1 to 18.0.4.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v18.0.1...v18.0.4)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-15 04:04:40 +00:00
Eugene Pankov
14cf0a574e Merge branch 'master' of github.com:Eugeny/tabby 2022-04-12 18:47:08 +02:00
Eugene Pankov
50887af27f updated locales 2022-04-12 18:46:47 +02:00
Eugeny
3dca21394f Merge pull request #6146 from Eugeny/all-contributors/add-ChristianBingman 2022-04-12 18:38:29 +02:00
allcontributors[bot]
109f38b7cc docs: update .all-contributorsrc [skip ci] 2022-04-12 16:37:07 +00:00
allcontributors[bot]
ecc5f6d1de docs: update README.it-IT.md [skip ci] 2022-04-12 16:37:06 +00:00
allcontributors[bot]
ead3a30cf0 docs: update README.ko-KR.md [skip ci] 2022-04-12 16:37:05 +00:00
allcontributors[bot]
facc1f1dff docs: update README.ru-RU.md [skip ci] 2022-04-12 16:37:04 +00:00
allcontributors[bot]
74dc6002d1 docs: update README.zh-CN.md [skip ci] 2022-04-12 16:37:03 +00:00
allcontributors[bot]
cc67774108 docs: update README.md [skip ci] 2022-04-12 16:37:02 +00:00
Eugeny
5c04c11132 Merge pull request #6140 from ChristianBingman/pane-resizing-with-hotkeys 2022-04-12 18:36:04 +02:00
Eugene Pankov
be72cd59cc renamed setting, cleanup 2022-04-12 18:35:44 +02:00
christianbingman
4cf9eda55f Allows the user to resize panes using hotkeys
Changes:
- Adds 4 hotkeys for resizing panes horizontally and vertically
- Updates the config files (default not set)
- Updates the window settings to allow the user to modify the pane
  resize increments
2022-04-11 19:44:24 -05:00
dependabot[bot]
db866fbacf Bump electron-updater from 4.6.5 to 5.0.1 in /app
Bumps [electron-updater](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater) from 4.6.5 to 5.0.1.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-updater/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/electron-updater@5.0.1/packages/electron-updater)

---
updated-dependencies:
- dependency-name: electron-updater
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 04:01:43 +00:00
Jai A P
086c4e68e6 Update build-linux.js 2022-04-10 17:32:08 +05:30
Jai A P
e303621fc5 Update build-native.js 2022-04-10 17:30:29 +05:30
Jai A P
579b60236b Update build-native.js 2022-04-09 23:08:56 +05:30
Jai A P
31f549f5bb Update build.yml 2022-04-09 22:38:39 +05:30
Jai A P
f18c58360d Update build-native.js 2022-04-06 17:01:13 +05:30
Jai A P
3287f410b7 Update build.yml 2022-04-06 17:00:35 +05:30
Jai A P
1a37ba224d Update build-native.js 2022-04-06 16:35:38 +05:30
Jai A P
49934aea5d Update build.yml 2022-04-06 16:34:28 +05:30
dependabot[bot]
da3143fab8 Bump macos-native-processlist from 2.0.0 to 2.1.0 in /app
Bumps [macos-native-processlist](https://github.com/Eugeny/macos-native-processlist) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/Eugeny/macos-native-processlist/releases)
- [Commits](https://github.com/Eugeny/macos-native-processlist/compare/v2.0.0...v2.1.0)

---
updated-dependencies:
- dependency-name: macos-native-processlist
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-06 04:01:35 +00:00
Eugene Pankov
95ae4b84a6 fixed windows x64 build 2022-04-05 09:39:52 +02:00
Eugene Pankov
f85294e603 fixed disableVibrancyWhileDragging check 2022-04-05 09:21:04 +02:00
dependabot[bot]
7807c5e1c8 Bump winston from 3.6.0 to 3.7.2 in /tabby-electron
Bumps [winston](https://github.com/winstonjs/winston) from 3.6.0 to 3.7.2.
- [Release notes](https://github.com/winstonjs/winston/releases)
- [Changelog](https://github.com/winstonjs/winston/blob/master/CHANGELOG.md)
- [Commits](https://github.com/winstonjs/winston/commits)

---
updated-dependencies:
- dependency-name: winston
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-05 04:17:20 +00:00
Eugene Pankov
a2975f5234 added @TimaGribanov for translations 2022-04-04 13:22:41 +02:00
Eugeny
e049d38cef Merge pull request #6087 from Eugeny/all-contributors/add-TimaGribanov 2022-04-04 12:41:34 +02:00
allcontributors[bot]
84a58de57f docs: update .all-contributorsrc [skip ci] 2022-04-04 10:41:27 +00:00
allcontributors[bot]
b519afc42c docs: update README.it-IT.md [skip ci] 2022-04-04 10:41:26 +00:00
allcontributors[bot]
49aade155b docs: update README.ko-KR.md [skip ci] 2022-04-04 10:41:25 +00:00
allcontributors[bot]
240fc57435 docs: update README.ru-RU.md [skip ci] 2022-04-04 10:41:24 +00:00
allcontributors[bot]
cf7b344fb1 docs: update README.zh-CN.md [skip ci] 2022-04-04 10:41:23 +00:00
allcontributors[bot]
c6e5a951f8 docs: update README.md [skip ci] 2022-04-04 10:41:22 +00:00
Eugeny
de861ad98e Merge pull request #6086 from TimaGribanov/patch-1 2022-04-04 12:41:15 +02:00
Timofey Gribanov
068abec8d8 Update README.ru-RU.md
Added Italian button. Changed language links' texts to the own name in a target language.
2022-04-04 13:38:54 +03:00
dependabot[bot]
5abe2e6376 Bump ssh2 from 1.8.0 to 1.9.0
Bumps [ssh2](https://github.com/mscdex/ssh2) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/mscdex/ssh2/releases)
- [Commits](https://github.com/mscdex/ssh2/compare/v1.8.0...v1.9.0)

---
updated-dependencies:
- dependency-name: ssh2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-04 04:05:05 +00:00
Eugene Pankov
98d3b824c4 fixed macOS alt-n and alt-shift-letter handling - fixes #4815, fixes #6029 2022-04-03 17:58:15 +02:00
Eugeny
f3cd986f2b Merge pull request #6060 from Eugeny/dependabot/npm_and_yarn/sentry/cli-1.74.3 2022-04-03 16:13:24 +02:00
Eugene Pankov
6d734ab7c6 Update xtermFrontend.ts 2022-04-03 16:12:23 +02:00
Eugene Pankov
4aa824d725 search improvements, added highlighting - fixes #5940, fixes #5032, fixes #5152 2022-04-03 15:19:22 +02:00
Eugene Pankov
cfa29acb5a search improvements, added decorators 2022-04-03 14:31:36 +02:00
Eugene Pankov
cfa1fd38de bumped xterm 2022-04-03 14:31:07 +02:00
Eugene Pankov
595b92366b rename ssh2 patch 2022-04-03 14:30:44 +02:00
dependabot[bot]
bb59f3a2ef Bump @sentry/cli from 1.73.0 to 1.74.3
Bumps [@sentry/cli](https://github.com/getsentry/sentry-cli) from 1.73.0 to 1.74.3.
- [Release notes](https://github.com/getsentry/sentry-cli/releases)
- [Changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-cli/compare/1.73.0...1.74.3)

---
updated-dependencies:
- dependency-name: "@sentry/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-03 12:10:25 +00:00
Eugene Pankov
a9a0ea3a42 Update icons.json 2022-04-03 14:07:50 +02:00
Eugene Pankov
79cb1f1d9c Merge branch 'master' of github.com:Eugeny/tabby 2022-04-03 14:06:22 +02:00
Eugeny
3a16a118e7 Merge pull request #6015 from Eugeny/dependabot/npm_and_yarn/ssh2-1.8.0 2022-04-03 14:05:52 +02:00
Eugeny
b16210f561 Merge pull request #5993 from Eugeny/dependabot/npm_and_yarn/fortawesome/fontawesome-free-6.1.1 2022-04-03 14:05:45 +02:00
Eugeny
6aafbfc288 Merge pull request #6058 from Eugeny/dependabot/npm_and_yarn/app/windows-process-tree-0.3.3 2022-04-03 14:05:38 +02:00
Eugeny
41aaac6a23 Merge pull request #6059 from Eugeny/dependabot/npm_and_yarn/electron-18.0.1 2022-04-03 14:04:43 +02:00
Eugene Pankov
911e72c398 option to force plain-text copying - fixes #5050 2022-04-03 13:57:40 +02:00
Eugene Pankov
8e00761b0c don't filter out non-monospace fonts - fixes #5544 2022-04-02 18:12:56 +02:00
Eugene Pankov
4dadba7f80 fixed fallback font embedding (powerline icons) - fixes #6071, fixes #3346, fixes #5189 2022-04-02 18:06:35 +02:00
Eugene Pankov
94b3212afb msys2: set correct starting directory - fixes #6079 2022-04-02 17:46:34 +02:00
Eugene Pankov
3a012878d0 Merge branch 'master' of github.com:Eugeny/tabby 2022-04-01 12:51:59 +02:00
Eugene Pankov
bc89774fbc added missing strings 2022-04-01 12:51:53 +02:00
dependabot[bot]
40c3a5427a Bump electron from 17.3.0 to 18.0.1
Bumps [electron](https://github.com/electron/electron) from 17.3.0 to 18.0.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v17.3.0...v18.0.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-31 04:05:38 +00:00
dependabot[bot]
79b518e17e Bump windows-process-tree from 0.3.2 to 0.3.3 in /app
Bumps [windows-process-tree](https://github.com/Microsoft/vscode-windows-process-tree) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/Microsoft/vscode-windows-process-tree/releases)
- [Commits](https://github.com/Microsoft/vscode-windows-process-tree/compare/0.3.2...0.3.3)

---
updated-dependencies:
- dependency-name: windows-process-tree
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-31 04:01:48 +00:00
Eugeny
89bbd6669b Merge pull request #6049 from boonkerz/sftp 2022-03-30 19:18:17 +02:00
Thomas Peterson
d1532f64a0 Merge remote-tracking branch 'origin' into sftp 2022-03-30 19:00:42 +02:00
Eugene Pankov
f7e51c298d Merge branch 'master' of github.com:Eugeny/tabby 2022-03-30 14:20:10 +02:00
Eugene Pankov
a9bcc0b206 sftp: fixed folder refresh after uploading 2022-03-30 14:20:06 +02:00
Thomas Peterson
45eebf47f3 Fixing Lang Typo 2022-03-30 14:01:01 +02:00
Thomas Peterson
a4600890c3 Fixing Lang Typo 2022-03-30 13:59:56 +02:00
Thomas Peterson
54aa027764 Fixing the modal dialog and some architecture issues :) 2022-03-30 13:57:54 +02:00
boonkerz
8904209bb5 Update tabby-ssh/src/components/sftpCreateDirectoryModal.component.pug
Co-authored-by: Eugeny <x@null.page>
2022-03-30 09:10:22 +02:00
boonkerz
d710c5d3fa Update tabby-ssh/src/sftpContextMenu.ts
Co-authored-by: Eugeny <x@null.page>
2022-03-30 09:10:16 +02:00
Thomas Peterson
e2a74a2f6e Fix Typings 2022-03-29 18:43:32 +02:00
Thomas Peterson
e223effe98 SFTP Feature: implement Create Folder 2022-03-29 18:26:57 +02:00
Eugeny
4b02d61f3f Merge pull request #6048 from Eugeny/all-contributors/add-artu-ole 2022-03-29 16:35:50 +02:00
allcontributors[bot]
9b8ae6d6be docs: update .all-contributorsrc [skip ci] 2022-03-29 14:35:43 +00:00
allcontributors[bot]
c9e8e54fe3 docs: update README.it-IT.md [skip ci] 2022-03-29 14:35:42 +00:00
allcontributors[bot]
004a04640d docs: update README.ko-KR.md [skip ci] 2022-03-29 14:35:41 +00:00
allcontributors[bot]
e71ac85ec3 docs: update README.ru-RU.md [skip ci] 2022-03-29 14:35:40 +00:00
allcontributors[bot]
ed2d1a1606 docs: update README.zh-CN.md [skip ci] 2022-03-29 14:35:39 +00:00
allcontributors[bot]
edc9656fd2 docs: update README.md [skip ci] 2022-03-29 14:35:38 +00:00
Eugeny
65ef8cde5a Merge pull request #6046 from artu-ole/master 2022-03-29 16:35:18 +02:00
Artur
6e09931952 Preserve profile groups collapse state.
use local storage rather than config store
Remove config save and toggleGroupCollapse not to be async
2022-03-29 15:24:58 +03:00
dependabot[bot]
4e8cb70fe0 Bump ssh2 from 1.7.0 to 1.8.0
Bumps [ssh2](https://github.com/mscdex/ssh2) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/mscdex/ssh2/releases)
- [Commits](https://github.com/mscdex/ssh2/compare/v1.7.0...v1.8.0)

---
updated-dependencies:
- dependency-name: ssh2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-29 12:11:04 +00:00
Eugeny
40cf2bde9b Merge pull request #6047 from Eugeny/dependabot/npm_and_yarn/app/minimist-1.2.6 2022-03-29 14:07:26 +02:00
Eugeny
21b70b3ee5 Merge pull request #6043 from Eugeny/dependabot/npm_and_yarn/tabby-ssh/types/ssh2-0.5.52 2022-03-29 14:07:17 +02:00
Eugeny
2f4318e1f4 Merge pull request #6041 from Eugeny/dependabot/npm_and_yarn/electron-17.3.0 2022-03-29 14:07:09 +02:00
Eugeny
c75c5aae14 Merge pull request #6025 from Eugeny/dependabot/npm_and_yarn/plist-3.0.5 2022-03-29 14:06:42 +02:00
Eugeny
c39d79c1c6 Merge pull request #5969 from Eugeny/dependabot/npm_and_yarn/sortablejs-1.15.0 2022-03-29 14:06:30 +02:00
dependabot[bot]
418df22da4 Bump minimist from 1.2.5 to 1.2.6 in /app
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-29 12:00:13 +00:00
Eugeny
2f66dc3bb0 Merge pull request #6020 from Eugeny/dependabot/npm_and_yarn/tabby-web-demo/minimist-1.2.6 2022-03-29 13:59:46 +02:00
Eugeny
2a192af169 Merge pull request #6021 from Eugeny/dependabot/npm_and_yarn/web/minimist-1.2.6 2022-03-29 13:59:37 +02:00
Eugeny
a1f269f8ac Merge pull request #6022 from Eugeny/dependabot/npm_and_yarn/tabby-core/minimist-1.2.6 2022-03-29 13:59:32 +02:00
Eugeny
c1386349ea Merge pull request #6023 from Eugeny/dependabot/npm_and_yarn/tabby-terminal/minimist-1.2.6 2022-03-29 13:59:27 +02:00
Eugeny
80443b073c Merge pull request #6024 from Eugeny/dependabot/npm_and_yarn/minimist-1.2.6 2022-03-29 13:59:20 +02:00
dependabot[bot]
591f0eb445 Bump @types/ssh2 from 0.5.51 to 0.5.52 in /tabby-ssh
Bumps [@types/ssh2](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ssh2) from 0.5.51 to 0.5.52.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ssh2)

---
updated-dependencies:
- dependency-name: "@types/ssh2"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-29 04:18:53 +00:00
dependabot[bot]
b2333d5c7c Bump electron from 17.2.0 to 17.3.0
Bumps [electron](https://github.com/electron/electron) from 17.2.0 to 17.3.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v17.2.0...v17.3.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-29 04:04:11 +00:00
Eugeny
a5282eaf8c Merge pull request #6006 from Eugeny/dependabot/npm_and_yarn/electron-17.2.0 2022-03-26 23:09:40 +01:00
Eugeny
5a5b73a636 Merge pull request #6014 from Eugeny/dependabot/npm_and_yarn/electron-notarize-1.2.1 2022-03-26 23:08:25 +01:00
Eugeny
f406de1873 Merge pull request #6028 from Eugeny/all-contributors/add-ysc3839 2022-03-26 23:08:16 +01:00
allcontributors[bot]
7744b28561 docs: update .all-contributorsrc [skip ci] 2022-03-26 22:07:56 +00:00
allcontributors[bot]
a32ec15d30 docs: update README.it-IT.md [skip ci] 2022-03-26 22:07:55 +00:00
allcontributors[bot]
88c8a4667a docs: update README.ko-KR.md [skip ci] 2022-03-26 22:07:54 +00:00
allcontributors[bot]
a9d6a968d5 docs: update README.ru-RU.md [skip ci] 2022-03-26 22:07:53 +00:00
Eugeny
018355ce44 Merge pull request #6027 from ysc3839/fix-win7-crash 2022-03-26 23:07:52 +01:00
allcontributors[bot]
47a837b109 docs: update README.zh-CN.md [skip ci] 2022-03-26 22:07:52 +00:00
allcontributors[bot]
116c144576 docs: update README.md [skip ci] 2022-03-26 22:07:51 +00:00
Richard Yu
aedad13f48 fix crash on Windows 7 2022-03-27 04:19:22 +08:00
dependabot[bot]
b9abe4f2ca Bump plist from 3.0.4 to 3.0.5
Bumps [plist](https://github.com/TooTallNate/node-plist) from 3.0.4 to 3.0.5.
- [Release notes](https://github.com/TooTallNate/node-plist/releases)
- [Changelog](https://github.com/TooTallNate/plist.js/blob/master/History.md)
- [Commits](https://github.com/TooTallNate/node-plist/commits)

---
updated-dependencies:
- dependency-name: plist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-26 10:48:12 +00:00
dependabot[bot]
d1e85dc870 Bump minimist from 1.2.5 to 1.2.6
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-26 10:48:09 +00:00
dependabot[bot]
2f0ebf9a61 Bump minimist from 1.2.5 to 1.2.6 in /tabby-terminal
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-26 10:48:04 +00:00
dependabot[bot]
ac36627392 Bump minimist from 1.2.5 to 1.2.6 in /tabby-core
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-26 10:48:03 +00:00
dependabot[bot]
fab5feb29d Bump minimist from 1.2.5 to 1.2.6 in /web
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-26 10:48:01 +00:00
Eugeny
69ddd2fc9f Merge pull request #6019 from Eugeny/all-contributors/add-Jai-JAP 2022-03-26 11:48:01 +01:00
dependabot[bot]
3e7f4dd6dc Bump minimist from 1.2.5 to 1.2.6 in /tabby-web-demo
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-26 10:48:00 +00:00
allcontributors[bot]
296be13b40 docs: update .all-contributorsrc [skip ci] 2022-03-26 10:47:52 +00:00
allcontributors[bot]
2d7398c623 docs: update README.it-IT.md [skip ci] 2022-03-26 10:47:51 +00:00
allcontributors[bot]
add55d014e docs: update README.ko-KR.md [skip ci] 2022-03-26 10:47:50 +00:00
allcontributors[bot]
0c8c2d3e95 docs: update README.ru-RU.md [skip ci] 2022-03-26 10:47:49 +00:00
allcontributors[bot]
9b07ab053a docs: update README.zh-CN.md [skip ci] 2022-03-26 10:47:48 +00:00
allcontributors[bot]
f447658c62 docs: update README.md [skip ci] 2022-03-26 10:47:47 +00:00
Eugeny
40e0bcce17 Merge pull request #5907 from Jai-JAP/master 2022-03-26 11:47:30 +01:00
Jai A P
48c06fc26e Update build-linux.js 2022-03-25 19:28:02 +05:30
Jai A P
360b75693b Update build-native.js 2022-03-25 19:27:36 +05:30
Jai A P
579c0e9aa5 Update HACKING.md 2022-03-25 17:05:54 +05:30
Jai A P
5a66a64f87 Update build-native.js 2022-03-25 16:26:37 +05:30
Jai A P
ead2dbc208 Update build-native.js 2022-03-25 16:25:39 +05:30
Jai A P
37ba06b65c Update build-linux.js 2022-03-25 16:25:06 +05:30
Jai A P
b2c611f9a6 Update build-native.js 2022-03-25 16:21:58 +05:30
Jai A P
eb6bf288cc Update build.yml 2022-03-25 16:19:20 +05:30
Jai A P
0f35b3bcfa Update build.yml 2022-03-25 16:16:57 +05:30
Jai A P
86effd748f Merge branch 'Eugeny:master' into master 2022-03-25 16:11:53 +05:30
dependabot[bot]
98f19e1ada Bump electron-notarize from 1.1.1 to 1.2.1
Bumps [electron-notarize](https://github.com/electron/electron-notarize) from 1.1.1 to 1.2.1.
- [Release notes](https://github.com/electron/electron-notarize/releases)
- [Changelog](https://github.com/electron/electron-notarize/blob/master/.releaserc.json)
- [Commits](https://github.com/electron/electron-notarize/compare/v1.1.1...v1.2.1)

---
updated-dependencies:
- dependency-name: electron-notarize
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-25 04:05:49 +00:00
dependabot[bot]
9ac7a67d74 Bump electron from 17.1.2 to 17.2.0
Bumps [electron](https://github.com/electron/electron) from 17.1.2 to 17.2.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v17.1.2...v17.2.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-24 04:11:22 +00:00
dependabot[bot]
adac51c71d Bump @fortawesome/fontawesome-free from 6.0.0 to 6.1.1
Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 6.0.0 to 6.1.1.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/6.x/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/compare/6.0.0...6.1.1)

---
updated-dependencies:
- dependency-name: "@fortawesome/fontawesome-free"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-23 04:03:55 +00:00
Eugene Pankov
aee6ae907d added missing strings to .pot 2022-03-22 15:28:55 +01:00
Eugene Pankov
75c911b5e4 locale update, added Portuguese (Brazil) and missing strings 2022-03-22 15:25:41 +01:00
Eugene Pankov
8ec419f8e5 fixed duplicate default hotkeys 2022-03-22 11:28:17 +01:00
jai-jap
2229d54b33 Revert "Delete build.yml"
This reverts commit 332c5c0b5e.
2022-03-21 15:50:26 +05:30
jai-jap
8c0d681345 Revert "Delete docs.yml"
This reverts commit f18c1f6d3a.
2022-03-21 15:50:14 +05:30
Jai A P
541c264384 Merge branch 'Eugeny:master' into master 2022-03-21 15:39:01 +05:30
Jai A P
f18c1f6d3a Delete docs.yml 2022-03-21 15:33:23 +05:30
Jai A P
332c5c0b5e Delete build.yml 2022-03-21 15:33:13 +05:30
Jai A P
4aca0fdf09 Update build-native.js 2022-03-21 12:09:24 +05:30
Jai A P
26f93f7ac5 Update build-linux.js 2022-03-21 12:08:52 +05:30
dependabot[bot]
237cb5b26c Bump sortablejs from 1.14.0 to 1.15.0
Bumps [sortablejs](https://github.com/SortableJS/Sortable) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/SortableJS/Sortable/releases)
- [Commits](https://github.com/SortableJS/Sortable/compare/1.14.0...1.15.0)

---
updated-dependencies:
- dependency-name: sortablejs
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-21 04:04:56 +00:00
Eugene Pankov
780691413d fixed incorrect passthrough handling in zmodem 2022-03-19 13:42:27 +01:00
Eugene Pankov
45b6e21dbc relax OSC52 processing rules to support tmux - fixes #5961 2022-03-19 11:53:44 +01:00
Eugeny
3bfdb95bf0 Merge pull request #5879 from Eugeny/dependabot/npm_and_yarn/zone.js-0.11.5 2022-03-16 23:18:55 +01:00
Eugeny
9fab7af85a Merge pull request #5898 from Eugeny/dependabot/npm_and_yarn/typedoc-0.22.13 2022-03-16 23:18:40 +01:00
Eugeny
ae7bc8daa2 Merge pull request #5910 from Eugeny/dependabot/npm_and_yarn/app/rxjs-7.5.5 2022-03-16 23:18:17 +01:00
Eugeny
1a83664b2c Merge pull request #5919 from Eugeny/dependabot/npm_and_yarn/axios-0.26.1 2022-03-16 23:17:38 +01:00
Eugeny
0c27546ca4 Merge pull request #5924 from Eugeny/dependabot/npm_and_yarn/ts-loader-9.2.8 2022-03-16 23:17:31 +01:00
Eugeny
a09a50cd33 Merge pull request #5943 from Eugeny/dependabot/npm_and_yarn/app/electron/remote-2.0.8 2022-03-16 23:16:47 +01:00
Eugene Pankov
9bc6831f40 sort hosts in the jump hosts list 2022-03-16 10:34:40 +01:00
Eugene Pankov
7e876afb3b Update platform.service.ts 2022-03-16 10:26:38 +01:00
Eugene Pankov
515ddbf64b new color picker 2022-03-16 10:26:34 +01:00
Eugene Pankov
0560196546 filter out unsupported SSH algos - fixes #5942 2022-03-16 10:10:30 +01:00
Eugene Pankov
1f73cd11b2 fixed admin tabs requiring debug VC libs - fixes #5933, fixes #4793, fixes #5633, fixes #4743 2022-03-16 10:04:49 +01:00
dependabot[bot]
2958dc3353 Bump @electron/remote from 2.0.5 to 2.0.8 in /app
Bumps [@electron/remote](https://github.com/electron/remote) from 2.0.5 to 2.0.8.
- [Release notes](https://github.com/electron/remote/releases)
- [Changelog](https://github.com/electron/remote/blob/main/.releaserc.json)
- [Commits](https://github.com/electron/remote/compare/v2.0.5...v2.0.8)

---
updated-dependencies:
- dependency-name: "@electron/remote"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-16 04:01:30 +00:00
Eugene Pankov
a76654a7b6 Update xtermFrontend.ts 2022-03-14 16:24:36 +01:00
Eugene Pankov
7508c371df ensure xterm's own _keyUp is getting called 2022-03-14 15:31:06 +01:00
Eugene Pankov
a5d84a490f fixed SVG icons 2022-03-13 10:03:32 +01:00
Eugene Pankov
1029884ef7 set COLORTERM 2022-03-12 21:18:27 +01:00
Eugene Pankov
8d11a91201 merged the xterm sogou/win fix 2022-03-12 21:14:15 +01:00
Eugene Pankov
f6c0dd6ad3 potentially fix Zmodem corruption issues 2022-03-12 19:02:03 +01:00
Eugene Pankov
2c00b9a4bc fixed profile order in the selector dialog - fixes #5537 2022-03-12 18:31:59 +01:00
Eugene Pankov
fc4bbfcd5d bumped electron 2022-03-12 18:31:31 +01:00
Eugene Pankov
90becada86 fixed SVG icons in tab headers - fixes #5926 2022-03-12 18:31:21 +01:00
dependabot[bot]
b6957b25d2 Bump ts-loader from 9.2.7 to 9.2.8
Bumps [ts-loader](https://github.com/TypeStrong/ts-loader) from 9.2.7 to 9.2.8.
- [Release notes](https://github.com/TypeStrong/ts-loader/releases)
- [Changelog](https://github.com/TypeStrong/ts-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/ts-loader/compare/v9.2.7...v9.2.8)

---
updated-dependencies:
- dependency-name: ts-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-11 04:02:57 +00:00
dependabot[bot]
7771f5708b Bump axios from 0.26.0 to 0.26.1
Bumps [axios](https://github.com/axios/axios) from 0.26.0 to 0.26.1.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.26.0...v0.26.1)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-10 04:07:11 +00:00
Jai A P
f2f0953b24 Fix windows 2022-03-09 22:04:29 +05:30
Jai A P
39fbf467de Update build.yml 2022-03-09 21:32:28 +05:30
Jai A P
d6bcdbde78 Fixes 2022-03-09 21:27:29 +05:30
Jai A P
38f8a7cfef Update build.yml 2022-03-09 17:18:07 +05:30
Jai A P
b27f5c2145 Revert last change 2022-03-09 12:37:16 +05:30
Jai A P
c3e4031aab Update build-linux.js 2022-03-09 12:36:10 +05:30
Jai A P
8c96788b00 Merge branch 'Eugeny:master' into master 2022-03-09 11:52:59 +05:30
Jai A P
725edd53cb Update build-windows.js 2022-03-09 11:19:04 +05:30
Jai A P
1b31187201 Update build.yml 2022-03-09 11:17:02 +05:30
Jai A P
b5506cff61 Update build-linux.js 2022-03-09 10:35:37 +05:30
dependabot[bot]
2aa95f5e25 Bump rxjs from 7.5.1 to 7.5.5 in /app
Bumps [rxjs](https://github.com/reactivex/rxjs) from 7.5.1 to 7.5.5.
- [Release notes](https://github.com/reactivex/rxjs/releases)
- [Changelog](https://github.com/ReactiveX/rxjs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reactivex/rxjs/compare/7.5.1...7.5.5)

---
updated-dependencies:
- dependency-name: rxjs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-09 04:02:04 +00:00
dependabot[bot]
cd7440052c Bump typedoc from 0.22.12 to 0.22.13
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.22.12 to 0.22.13.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.22.12...v0.22.13)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-08 22:11:16 +00:00
Eugene Pankov
d4fb56b30b lint 2022-03-08 23:05:50 +01:00
Eugeny
6a96637932 Merge pull request #5909 from Eugeny/all-contributors/add-microhobby 2022-03-08 22:34:42 +01:00
allcontributors[bot]
2e29d13412 docs: update .all-contributorsrc [skip ci] 2022-03-08 21:34:29 +00:00
allcontributors[bot]
f4c54657eb docs: update README.it-IT.md [skip ci] 2022-03-08 21:34:28 +00:00
allcontributors[bot]
17dc43d5eb docs: update README.ko-KR.md [skip ci] 2022-03-08 21:34:27 +00:00
allcontributors[bot]
25aa2051e9 docs: update README.ru-RU.md [skip ci] 2022-03-08 21:34:26 +00:00
allcontributors[bot]
8d6264019b docs: update README.zh-CN.md [skip ci] 2022-03-08 21:34:25 +00:00
allcontributors[bot]
a069ec606b docs: update README.md [skip ci] 2022-03-08 21:34:24 +00:00
Eugeny
c7639c03f9 Merge pull request #5902 from microhobby/glasstron-b 2022-03-08 22:34:13 +01:00
Eugene Pankov
f073a691fc ssh: fixed newlines in banners/MOTD - fixes #5905 2022-03-08 21:12:12 +01:00
Eugene Pankov
b31b500727 fixed .ssh/config port binding parsing - fixes #5906 2022-03-08 20:47:21 +01:00
Eugene Pankov
df77cc99d9 make vibrancy disabling optional 2022-03-08 20:05:58 +01:00
Eugene Pankov
32170ec640 renamed ssh2 patch 2022-03-08 19:57:56 +01:00
Eugene Pankov
3336b64d9d Merge branch 'master' of github.com:Eugeny/tabby 2022-03-08 19:42:48 +01:00
Eugeny
cc554de4da Merge pull request #5895 from Eugeny/dependabot/npm_and_yarn/ssh2-1.7.0 2022-03-08 19:42:39 +01:00
Eugeny
35b115ae9f Merge pull request #5892 from Eugeny/dependabot/npm_and_yarn/app/serialport-10.4.0 2022-03-08 19:42:03 +01:00
Eugeny
a8e79820a4 Merge pull request #5901 from Eugeny/dependabot/npm_and_yarn/electron-17.1.1 2022-03-08 19:36:52 +01:00
Jai A P
5c325a347c Update build.yml 2022-03-08 23:15:58 +05:30
Jai A P
b70a193dbd Update build.yml 2022-03-08 22:58:11 +05:30
Jai A P
e2d4ef58c4 Update build.yml 2022-03-08 22:45:46 +05:30
Jai A P
d35c03d083 Update build.yml 2022-03-08 22:35:56 +05:30
Jai A P
c533e6c8fd Update electron-builder.yml 2022-03-08 22:31:13 +05:30
Jai-JAP
690a632f96 Add windows arm64 2022-03-08 21:53:59 +05:30
Jai-JAP
d8bec496ee Fix Linux pacman uploads 2022-03-08 21:43:09 +05:30
Jai-JAP
ea38943905 Fixes 2022-03-08 21:14:19 +05:30
Jai-JAP
90bd8b424f Manual run 2022-03-08 21:11:08 +05:30
Jai-JAP
a874a5e4d5 Add Linux armv7l and arm64 support 2022-03-08 20:59:59 +05:30
Matheus Castello
502f72ec35 Does not disable acrylic while dragging when using fluent
It doesn't seem necessary to disable acrylic while dragging when using
fluent with glasstron 0.1.1

Signed-off-by: Matheus Castello <matheus@castello.eng.br>
2022-03-08 02:48:56 -03:00
Matheus Castello
1bb5128729 Fix fluent acrylic bumping glasstron to 0.1.1
Signed-off-by: Matheus Castello <matheus@castello.eng.br>
2022-03-08 02:47:35 -03:00
dependabot[bot]
56ef0c356b Bump electron from 17.1.0 to 17.1.1
Bumps [electron](https://github.com/electron/electron) from 17.1.0 to 17.1.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v17.1.0...v17.1.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-08 04:06:05 +00:00
dependabot[bot]
4de572770e Bump ssh2 from 1.6.0 to 1.7.0
Bumps [ssh2](https://github.com/mscdex/ssh2) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/mscdex/ssh2/releases)
- [Commits](https://github.com/mscdex/ssh2/compare/v1.6.0...v1.7.0)

---
updated-dependencies:
- dependency-name: ssh2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-07 04:05:33 +00:00
dependabot[bot]
824b5aab93 Bump serialport from 10.2.2 to 10.4.0 in /app
Bumps [serialport](https://github.com/serialport/node-serialport) from 10.2.2 to 10.4.0.
- [Release notes](https://github.com/serialport/node-serialport/releases)
- [Changelog](https://github.com/serialport/node-serialport/blob/master/CHANGELOG.md)
- [Commits](https://github.com/serialport/node-serialport/compare/v10.2.2...v10.4.0)

---
updated-dependencies:
- dependency-name: serialport
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-07 04:02:20 +00:00
Eugene Pankov
1a834af663 locale update, added Portuguese 2022-03-06 14:38:31 +01:00
dependabot[bot]
418907936e Bump zone.js from 0.11.4 to 0.11.5
Bumps [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) from 0.11.4 to 0.11.5.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/packages/zone.js/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/zone.js-0.11.5/packages/zone.js)

---
updated-dependencies:
- dependency-name: zone.js
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-04 04:06:10 +00:00
Eugeny
f5f063a511 Update .all-contributorsrc 2022-03-03 17:05:47 +01:00
Eugeny
5fee1ec1ed Merge pull request #5876 from piersandro/master 2022-03-03 17:05:27 +01:00
Piersandro Guerrera
5e75db92eb Add @piersandro as doc contributor 2022-03-03 17:03:28 +01:00
Piersandro Guerrera
b2325c29df Update Italian README 2022-03-03 16:19:04 +01:00
Eugeny
0ba8db43bf Merge pull request #5859 from Eugeny/dependabot/github_actions/actions/checkout-3 2022-03-03 10:05:28 +01:00
Eugeny
3e931e452b Merge pull request #5858 from Eugeny/dependabot/npm_and_yarn/ts-loader-9.2.7 2022-03-03 10:05:20 +01:00
Eugeny
07f8c0cc08 Merge pull request #5874 from Eugeny/all-contributors/add-Allenator 2022-03-03 10:04:53 +01:00
Eugeny
e48ec7ed67 Merge pull request #5856 from Eugeny/dependabot/npm_and_yarn/plist-3.0.4 2022-03-03 10:04:35 +01:00
allcontributors[bot]
779d4f2fea docs: update .all-contributorsrc [skip ci] 2022-03-03 09:04:11 +00:00
allcontributors[bot]
66da3bc907 docs: update README.ko-KR.md [skip ci] 2022-03-03 09:04:10 +00:00
allcontributors[bot]
d438207dc5 docs: update README.ru-RU.md [skip ci] 2022-03-03 09:04:09 +00:00
allcontributors[bot]
56e1523226 docs: update README.zh-CN.md [skip ci] 2022-03-03 09:04:08 +00:00
allcontributors[bot]
09da979ab5 docs: update README.md [skip ci] 2022-03-03 09:04:07 +00:00
dependabot[bot]
af39b342bd Bump actions/checkout from 2.3.4 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.3.4 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2.3.4...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-02 04:18:24 +00:00
dependabot[bot]
2df94fd62a Bump ts-loader from 9.2.3 to 9.2.7
Bumps [ts-loader](https://github.com/TypeStrong/ts-loader) from 9.2.3 to 9.2.7.
- [Release notes](https://github.com/TypeStrong/ts-loader/releases)
- [Changelog](https://github.com/TypeStrong/ts-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/ts-loader/compare/v9.2.3...v9.2.7)

---
updated-dependencies:
- dependency-name: ts-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-02 04:04:32 +00:00
dependabot[bot]
d2d698b288 Bump plist from 3.0.1 to 3.0.4
Bumps [plist](https://github.com/TooTallNate/node-plist) from 3.0.1 to 3.0.4.
- [Release notes](https://github.com/TooTallNate/node-plist/releases)
- [Changelog](https://github.com/TooTallNate/plist.js/blob/master/History.md)
- [Commits](https://github.com/TooTallNate/node-plist/commits)

---
updated-dependencies:
- dependency-name: plist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-01 23:44:56 +00:00
Eugeny
79c7d55c05 Merge pull request #5829 from Eugeny/dependabot/npm_and_yarn/sentry/cli-1.73.0 2022-02-28 10:11:09 +01:00
Eugeny
b351cda35a Merge pull request #5745 from Eugeny/dependabot/npm_and_yarn/app/windows-native-registry-3.2.1 2022-02-28 10:10:48 +01:00
Eugeny
025c747e54 Merge pull request #5846 from Eugeny/all-contributors/add-X-0x01 2022-02-28 09:07:40 +01:00
allcontributors[bot]
27ced5b9bc docs: update .all-contributorsrc [skip ci] 2022-02-28 08:06:00 +00:00
allcontributors[bot]
7d64da1667 docs: update README.ko-KR.md [skip ci] 2022-02-28 08:05:59 +00:00
allcontributors[bot]
c25134d96c docs: update README.ru-RU.md [skip ci] 2022-02-28 08:05:58 +00:00
allcontributors[bot]
cf464f5bb8 docs: update README.zh-CN.md [skip ci] 2022-02-28 08:05:57 +00:00
allcontributors[bot]
a6845069bd docs: update README.md [skip ci] 2022-02-28 08:05:56 +00:00
Eugeny
c09babd326 Merge pull request #5844 from X-0x01/patch-1 2022-02-28 09:05:40 +01:00
X-0x01
89226d66a8 change to the correct category for mac. 2022-02-28 12:04:43 +08:00
Eugeny
77c0b3ea23 Merge pull request #5833 from Eugeny/dependabot/github_actions/actions/setup-node-3.0.0 2022-02-26 21:34:46 +01:00
dependabot[bot]
8cef14da8f Bump actions/setup-node from 2.5.1 to 3.0.0
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.5.1 to 3.0.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.5.1...v3.0.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-25 04:13:28 +00:00
Eugeny
eb30bb2d9d Merge pull request #5812 from Eugeny/dependabot/npm_and_yarn/app/electron/remote-2.0.5 2022-02-24 17:39:31 +01:00
Eugeny
c85d6e63c6 Merge pull request #5747 from Eugeny/dependabot/npm_and_yarn/axios-0.26.0 2022-02-24 17:39:16 +01:00
Eugeny
7801c7569a Merge pull request #5828 from Eugeny/dependabot/npm_and_yarn/electron-17.1.0 2022-02-24 17:38:59 +01:00
dependabot[bot]
75ed66079a Bump @sentry/cli from 1.72.1 to 1.73.0
Bumps [@sentry/cli](https://github.com/getsentry/sentry-cli) from 1.72.1 to 1.73.0.
- [Release notes](https://github.com/getsentry/sentry-cli/releases)
- [Changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-cli/compare/1.72.1...1.73.0)

---
updated-dependencies:
- dependency-name: "@sentry/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-24 04:07:00 +00:00
dependabot[bot]
e6aefc8cb8 Bump electron from 17.0.1 to 17.1.0
Bumps [electron](https://github.com/electron/electron) from 17.0.1 to 17.1.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v17.0.1...v17.1.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-24 04:06:41 +00:00
Eugene Pankov
76892c4f5c increase yarn network-timeout 2022-02-23 22:15:15 +01:00
Eugene Pankov
d1ac265d79 xterm: passthrough arrows with modifiers when in alternate mode - fixes #2328 2022-02-23 21:47:46 +01:00
Eugene Pankov
030ddc721d sftp: show navigation errors 2022-02-23 21:47:27 +01:00
Eugene Pankov
645531acc0 ssh: fixed missing service messages - fixes #5798 2022-02-23 20:51:17 +01:00
Eugene Pankov
555c8c18ee show recent profiles in jump lists & dock menu - fixes #2587 2022-02-23 20:36:24 +01:00
Eugene Pankov
5caa4d14f5 fixed docked window overlapping the Windows taskbar - fixes #5799, fixes #3522, fixes #4839, fixes #2900 2022-02-23 20:23:25 +01:00
Eugene Pankov
2b12f89f31 lint 2022-02-23 20:16:12 +01:00
dependabot[bot]
82f646cff5 Bump axios from 0.25.0 to 0.26.0
Bumps [axios](https://github.com/axios/axios) from 0.25.0 to 0.26.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.25.0...v0.26.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-23 09:09:57 +00:00
Eugene Pankov
e63c87df72 Merge branch 'master' of github.com:Eugeny/tabby 2022-02-23 10:06:06 +01:00
Eugene Pankov
a5c94707d4 Delete gettext-extractor+3.5.3.patch 2022-02-23 10:06:00 +01:00
Eugeny
25c20e834c Merge pull request #5801 from Eugeny/dependabot/npm_and_yarn/typedoc-0.22.12 2022-02-23 10:05:52 +01:00
Eugeny
b08604a5df Merge pull request #5792 from Eugeny/dependabot/npm_and_yarn/webpack-5.69.1 2022-02-23 10:05:36 +01:00
Eugeny
d6860d75c2 Merge pull request #5791 from Eugeny/dependabot/npm_and_yarn/app/keytar-7.9.0 2022-02-23 10:05:18 +01:00
Eugeny
a02ce88925 Merge pull request #5752 from Eugeny/dependabot/npm_and_yarn/follow-redirects-1.14.8 2022-02-23 10:03:57 +01:00
Eugeny
e18b84afed Merge pull request #5748 from Eugeny/dependabot/npm_and_yarn/gettext-extractor-3.5.4 2022-02-23 10:02:52 +01:00
Eugeny
57feb1f3cc Merge pull request #5749 from Eugeny/dependabot/npm_and_yarn/tabby-electron/winston-3.6.0 2022-02-23 10:02:26 +01:00
Eugene Pankov
907ee4ccb5 locale update 2022-02-22 23:28:53 +01:00
Eugene Pankov
e6b210dad5 bundle a powerline-enabled fallback font - fixes #5774, fixes #5191 2022-02-22 23:17:21 +01:00
Eugene Pankov
177a988292 added tab explore/combine hotkeys - fixes #5703 2022-02-22 22:46:06 +01:00
Eugene Pankov
fdca83ff27 ssh: try other OpenSSH key types besides rsa 2022-02-22 22:03:52 +01:00
Eugene Pankov
1598dab025 layout fix 2022-02-22 21:57:32 +01:00
dependabot[bot]
8c06de5c9e Bump @electron/remote from 2.0.1 to 2.0.5 in /app
Bumps [@electron/remote](https://github.com/electron/remote) from 2.0.1 to 2.0.5.
- [Release notes](https://github.com/electron/remote/releases)
- [Changelog](https://github.com/electron/remote/blob/main/.releaserc.json)
- [Commits](https://github.com/electron/remote/compare/v2.0.1...v2.0.5)

---
updated-dependencies:
- dependency-name: "@electron/remote"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 04:01:38 +00:00
Eugene Pankov
9e3d952d90 locale update 2022-02-21 17:31:17 +01:00
Eugene Pankov
50304d151a fixed #5797 - verified host keys not saving 2022-02-21 09:01:55 +01:00
dependabot[bot]
589da576a0 Bump typedoc from 0.22.11 to 0.22.12
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.22.11 to 0.22.12.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.22.11...v0.22.12)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-21 04:07:00 +00:00
dependabot[bot]
b934a34be5 Bump webpack from 5.68.0 to 5.69.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.68.0 to 5.69.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.68.0...v5.69.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-18 04:07:18 +00:00
dependabot[bot]
4fa6bb398b Bump keytar from 7.8.0 to 7.9.0 in /app
Bumps [keytar](https://github.com/atom/node-keytar) from 7.8.0 to 7.9.0.
- [Release notes](https://github.com/atom/node-keytar/releases)
- [Commits](https://github.com/atom/node-keytar/compare/v7.8.0...v7.9.0)

---
updated-dependencies:
- dependency-name: keytar
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-18 04:02:24 +00:00
Eugene Pankov
a2929309d9 lint 2022-02-17 10:04:01 +01:00
Eugene Pankov
a78fec0a6f wider profile list - fixes #5779 2022-02-17 09:37:28 +01:00
Eugene Pankov
81e1757ae9 SSH proxy support, unified proxy streams interface - fixed #5698 2022-02-16 22:14:06 +01:00
Eugene Pankov
3eb4bd53a9 ensure config saves don't overwrite each other 2022-02-16 21:26:57 +01:00
Eugene Pankov
bf893551c8 added @piersandro 2022-02-16 21:26:44 +01:00
Eugeny
303c59cecc Merge pull request #5762 from Eugeny/dependabot/npm_and_yarn/electron-17.0.1 2022-02-16 00:24:15 +01:00
Eugene Pankov
6c5c670315 locale updates, added Bulgarian 2022-02-15 23:17:59 +01:00
Eugene Pankov
2bea7f3881 Merge branch 'master' of github.com:Eugeny/tabby 2022-02-15 23:16:14 +01:00
Eugeny
27a162c903 Merge pull request #5772 from Eugeny/all-contributors/add-mgrulich 2022-02-15 23:11:09 +01:00
Eugene Pankov
c5ee39e4a1 settings tab text alignment 2022-02-15 23:10:21 +01:00
Eugene Pankov
ea2251532b missing string 2022-02-15 23:09:09 +01:00
allcontributors[bot]
077c3ced39 docs: update .all-contributorsrc [skip ci] 2022-02-15 22:09:03 +00:00
allcontributors[bot]
65ee7b755a docs: update README.ko-KR.md [skip ci] 2022-02-15 22:09:02 +00:00
allcontributors[bot]
a43ca24ba6 docs: update README.ru-RU.md [skip ci] 2022-02-15 22:09:01 +00:00
allcontributors[bot]
a1199da883 docs: update README.zh-CN.md [skip ci] 2022-02-15 22:09:00 +00:00
allcontributors[bot]
c845412fdf docs: update README.md [skip ci] 2022-02-15 22:08:59 +00:00
Eugene Pankov
0ba3de45a4 locale update 2022-02-15 23:08:21 +01:00
Eugene Pankov
9e0808fca3 Merge branch 'pr/5767' 2022-02-15 23:06:37 +01:00
Eugene Pankov
45b7391e89 cleanup 2022-02-15 23:06:17 +01:00
Martin Grulich
0eb1e8117c optional profile icon added to tabHeader 2022-02-15 13:42:20 +01:00
dependabot[bot]
be951cc9ce Bump electron from 17.0.0 to 17.0.1
Bumps [electron](https://github.com/electron/electron) from 17.0.0 to 17.0.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v17.0.0...v17.0.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-15 04:06:41 +00:00
Eugene Pankov
c88b02fa91 Merge branch 'master' of github.com:Eugeny/tabby 2022-02-14 21:17:49 +01:00
Eugene Pankov
f9bf1e5644 added missing strings 2022-02-14 21:17:41 +01:00
dependabot[bot]
6c61f12584 Bump follow-redirects from 1.14.7 to 1.14.8
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.7 to 1.14.8.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.7...v1.14.8)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-14 11:24:09 +00:00
dependabot[bot]
1efae39d9a Bump winston from 3.5.0 to 3.6.0 in /tabby-electron
Bumps [winston](https://github.com/winstonjs/winston) from 3.5.0 to 3.6.0.
- [Release notes](https://github.com/winstonjs/winston/releases)
- [Changelog](https://github.com/winstonjs/winston/blob/master/CHANGELOG.md)
- [Commits](https://github.com/winstonjs/winston/compare/v3.5.0...v3.6.0)

---
updated-dependencies:
- dependency-name: winston
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-14 04:18:18 +00:00
dependabot[bot]
6d76874045 Bump gettext-extractor from 3.5.3 to 3.5.4
Bumps [gettext-extractor](https://github.com/lukasgeiter/gettext-extractor) from 3.5.3 to 3.5.4.
- [Release notes](https://github.com/lukasgeiter/gettext-extractor/releases)
- [Commits](https://github.com/lukasgeiter/gettext-extractor/compare/v3.5.3...v3.5.4)

---
updated-dependencies:
- dependency-name: gettext-extractor
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-14 04:08:02 +00:00
dependabot[bot]
dd864f5077 Bump windows-native-registry from 3.1.0 to 3.2.1 in /app
Bumps [windows-native-registry](https://github.com/Eugeny/windows-native-registry) from 3.1.0 to 3.2.1.
- [Release notes](https://github.com/Eugeny/windows-native-registry/releases)
- [Commits](https://github.com/Eugeny/windows-native-registry/commits)

---
updated-dependencies:
- dependency-name: windows-native-registry
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-14 04:01:45 +00:00
Eugeny
0180fb0134 Merge pull request #5743 from mwz/quit-app-cmd-q-mac-take2 2022-02-13 19:51:33 +01:00
Michael Wizner
90f97d6669 Fix app not quitting completely on Cmd+Q (Mac) 2022-02-13 16:37:56 +00:00
Eugene Pankov
f27f52dd72 locale update 2022-02-12 10:10:54 +01:00
Eugene Pankov
60a48ec2a5 Revert "Fix app not quitting completely on Cmd+Q (Mac)"
This reverts commit 9c53503c0f.
2022-02-12 10:03:49 +01:00
Eugene Pankov
c64654991b fixed serial opening ports 2022-02-11 11:02:29 +01:00
Eugene Pankov
1fc531ecf4 locale update 2022-02-10 22:54:37 +01:00
Eugene Pankov
4c7e7f5fae new translation extractor 2022-02-10 22:33:14 +01:00
Eugene Pankov
7b07a67947 sorted messages, cleaned up translateParams attributes 2022-02-10 19:10:38 +01:00
Eugene Pankov
fe5193d9f1 use languages' native names 2022-02-10 18:03:26 +01:00
Eugene Pankov
b6a3af80fa lint 2022-02-10 16:31:03 +01:00
Eugene Pankov
46a9b655fc locale updates, added Italian 2022-02-10 16:24:24 +01:00
Eugene Pankov
762ee85773 lint 2022-02-10 09:48:31 +01:00
Eugene Pankov
650e362c42 lint 2022-02-09 22:27:19 +01:00
Eugene Pankov
136ec1035b fixed #5702 - added hotkeys to jump to settings tabs 2022-02-09 21:56:44 +01:00
Eugene Pankov
f27e1ec62d fixed tab rearranging conditions 2022-02-09 20:30:40 +01:00
Eugene Pankov
c736a84835 avoid duplicate title in split tab's title 2022-02-09 20:21:20 +01:00
Eugene Pankov
b3a07e5f99 fixed #5712 - SSH import from a separate config file 2022-02-09 20:19:07 +01:00
Eugene Pankov
c408154137 Merge branch 'master' of github.com:Eugeny/tabby 2022-02-09 20:18:55 +01:00
Eugene Pankov
c0988e58b4 Revert "prevent dropping a tab on itself - fixes #5580"
This reverts commit ceb1b59409.
2022-02-09 19:20:45 +01:00
Eugeny
d6e906c107 Merge pull request #5654 from Eugeny/dependabot/npm_and_yarn/node-abi-3.8.0 2022-02-08 09:01:37 +01:00
Eugeny
d77a91b3e1 Merge pull request #5693 from Eugeny/dependabot/npm_and_yarn/fortawesome/fontawesome-free-6.0.0 2022-02-08 09:01:14 +01:00
dependabot[bot]
80f82296a0 Bump @fortawesome/fontawesome-free from 6.0.0-beta3 to 6.0.0
Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 6.0.0-beta3 to 6.0.0.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/commits/6.0.0)

---
updated-dependencies:
- dependency-name: "@fortawesome/fontawesome-free"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-08 04:03:22 +00:00
Eugene Pankov
6e9f497d22 lint 2022-02-07 17:54:44 +01:00
Eugene Pankov
50f01b6794 bumped serialport 2022-02-07 16:56:06 +01:00
dependabot[bot]
b068070825 Bump node-abi from 3.7.0 to 3.8.0
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 3.7.0 to 3.8.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/main/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v3.7.0...v3.8.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 15:38:25 +00:00
Eugene Pankov
194342d6fa bumped plugins, added serialport mocks 2022-02-07 16:36:20 +01:00
Eugene Pankov
d7eeac6af7 patch rename 2022-02-07 16:36:09 +01:00
Eugene Pankov
98a08b92a2 Merge branch 'master' of github.com:Eugeny/tabby 2022-02-07 16:35:11 +01:00
Eugeny
fef8638ade Merge pull request #5679 from Eugeny/dependabot/npm_and_yarn/electron-builder-22.14.13 2022-02-07 16:35:03 +01:00
Eugeny
34ff0c45cb Merge pull request #5653 from Eugeny/dependabot/npm_and_yarn/app/keytar-7.8.0 2022-02-07 16:34:35 +01:00
Eugeny
1896155ad9 Merge pull request #5676 from Eugeny/dependabot/npm_and_yarn/app/electron-updater-4.6.5 2022-02-07 16:32:46 +01:00
Eugeny
bbcbad0e77 Merge pull request #5684 from Eugeny/all-contributors/add-mwz 2022-02-07 16:32:05 +01:00
Eugeny
ce435056a2 Merge pull request #5670 from mwz/quit-app-cmd-q-mac 2022-02-07 16:31:35 +01:00
allcontributors[bot]
fe9b14ad9c docs: update .all-contributorsrc [skip ci] 2022-02-07 15:31:08 +00:00
allcontributors[bot]
fc72e5005c docs: update README.ko-KR.md [skip ci] 2022-02-07 15:31:07 +00:00
allcontributors[bot]
f5c428d73b docs: update README.ru-RU.md [skip ci] 2022-02-07 15:31:06 +00:00
allcontributors[bot]
b396060965 docs: update README.zh-CN.md [skip ci] 2022-02-07 15:31:05 +00:00
allcontributors[bot]
c752a18f3c docs: update README.md [skip ci] 2022-02-07 15:31:04 +00:00
Eugene Pankov
805ee0af09 v1.0.171-nightly.2 2022-02-07 15:59:48 +01:00
Eugene Pankov
ad9ad4d418 v1.0.171-nightly.2 2022-02-07 15:58:55 +01:00
Eugene Pankov
d5c4088cc1 v1.0.171-nightly.2 2022-02-07 15:57:59 +01:00
Eugene Pankov
483a0472b9 v1.0.171-nightly.2 2022-02-07 15:57:47 +01:00
Eugene Pankov
1bbf9d4294 bumped plugins 2022-02-07 15:33:34 +01:00
Eugene Pankov
10c8502fbd locale updates, added Danish 2022-02-07 15:30:05 +01:00
dependabot[bot]
8f3f6f591d Bump electron-builder from 22.14.5 to 22.14.13
Bumps [electron-builder](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-builder) from 22.14.5 to 22.14.13.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-builder/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/v22.14.13/packages/electron-builder)

---
updated-dependencies:
- dependency-name: electron-builder
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 04:06:53 +00:00
dependabot[bot]
656d275801 Bump electron-updater from 4.6.1 to 4.6.5 in /app
Bumps [electron-updater](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater) from 4.6.1 to 4.6.5.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-updater/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/electron-updater@4.6.5/packages/electron-updater)

---
updated-dependencies:
- dependency-name: electron-updater
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-07 04:01:59 +00:00
Michael Wizner
9c53503c0f Fix app not quitting completely on Cmd+Q (Mac) 2022-02-05 23:07:53 +00:00
Eugene Pankov
9ea99f1ace locale update 2022-02-05 17:21:41 +01:00
Eugene Pankov
126d14dfb7 added Japanese translation 2022-02-05 17:20:23 +01:00
Eugene Pankov
68803b5f14 locale update 2022-02-05 17:20:10 +01:00
Eugene Pankov
e0273126de bumped xterm-addon-webgl 2022-02-03 18:33:09 +01:00
Eugene Pankov
0ced498b6e fixed screen not clearing properly - fixes #28, fixes #5401 2022-02-03 17:54:26 +01:00
Eugene Pankov
510682438e bumped xterm 2022-02-03 17:12:52 +01:00
dependabot[bot]
762874c400 Bump keytar from 7.7.0 to 7.8.0 in /app
Bumps [keytar](https://github.com/atom/node-keytar) from 7.7.0 to 7.8.0.
- [Release notes](https://github.com/atom/node-keytar/releases)
- [Commits](https://github.com/atom/node-keytar/compare/v7.7.0...v7.8.0)

---
updated-dependencies:
- dependency-name: keytar
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-03 04:02:03 +00:00
Eugene Pankov
b7e2e0875e electron 17 fixes 2022-02-01 22:47:07 +01:00
Eugene Pankov
9cfd02bff6 Update appRoot.component.ts 2022-02-01 22:11:39 +01:00
Eugeny
9082fe5c06 Merge pull request #5638 from Eugeny/dependabot/npm_and_yarn/electron-17.0.0 2022-02-01 12:12:04 +01:00
dependabot[bot]
43786fda83 Bump electron from 16.0.8 to 17.0.0
Bumps [electron](https://github.com/electron/electron) from 16.0.8 to 17.0.0.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v16.0.8...v17.0.0)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 10:33:18 +00:00
Eugene Pankov
1677285ea9 patch rename 2022-02-01 11:24:12 +01:00
Eugeny
aaa0a0f69a Merge pull request #5639 from Eugeny/dependabot/npm_and_yarn/ssh2-1.6.0 2022-02-01 11:23:35 +01:00
Eugeny
cb8832fbad Merge pull request #5637 from Eugeny/dependabot/npm_and_yarn/node-abi-3.7.0 2022-02-01 11:22:09 +01:00
Eugeny
e39321c8cb Merge pull request #5640 from Eugeny/dependabot/npm_and_yarn/webpack-5.68.0 2022-02-01 11:21:52 +01:00
Eugeny
3ef7697be8 Merge pull request #5642 from Eugeny/dependabot/npm_and_yarn/tabby-settings/marked-4.0.12 2022-02-01 11:21:37 +01:00
dependabot[bot]
8927717654 Bump marked from 4.0.10 to 4.0.12 in /tabby-settings
Bumps [marked](https://github.com/markedjs/marked) from 4.0.10 to 4.0.12.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v4.0.10...v4.0.12)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 04:16:28 +00:00
dependabot[bot]
3a8168917a Bump webpack from 5.67.0 to 5.68.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.67.0 to 5.68.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.67.0...v5.68.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 04:08:23 +00:00
dependabot[bot]
9249c48ecc Bump ssh2 from 1.5.0 to 1.6.0
Bumps [ssh2](https://github.com/mscdex/ssh2) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/mscdex/ssh2/releases)
- [Commits](https://github.com/mscdex/ssh2/compare/v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: ssh2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 04:05:50 +00:00
dependabot[bot]
6d1150d08a Bump node-abi from 3.5.0 to 3.7.0
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 3.5.0 to 3.7.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/main/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v3.5.0...v3.7.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 04:04:21 +00:00
Eugene Pankov
b234300bd8 gpg4win support maybe? 2022-01-31 22:19:39 +01:00
Eugene Pankov
be3bae3a6f fixed #4457 2022-01-31 22:16:05 +01:00
Eugene Pankov
767f9f3215 support Solus Linux - fixes #4881 2022-01-31 22:03:12 +01:00
Eugene Pankov
d6e69f5bf5 fixed UI for oversized profile names - fixes #5506 2022-01-31 21:54:33 +01:00
Eugene Pankov
5c644e5e23 Merge branch 'master' of github.com:Eugeny/tabby 2022-01-31 21:50:19 +01:00
Eugene Pankov
5b905af5d3 auto-fix excessive font sizes - fixes #5542 2022-01-31 21:50:16 +01:00
Eugeny
28f4a052d7 Merge pull request #5626 from Eugeny/dependabot/npm_and_yarn/tabby-electron/winston-3.5.0 2022-01-31 17:20:28 +01:00
Eugeny
948251e326 Merge pull request #5607 from Eugeny/dependabot/npm_and_yarn/tabby-settings/marked-4.0.12 2022-01-31 17:17:53 +01:00
dependabot[bot]
2203661f19 Bump marked from 4.0.8 to 4.0.12 in /tabby-settings
Bumps [marked](https://github.com/markedjs/marked) from 4.0.8 to 4.0.12.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v4.0.8...v4.0.12)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-31 15:38:34 +00:00
Eugene Pankov
8f4e28fba4 bumped plugins 2022-01-31 16:37:43 +01:00
Eugeny
a413bbaf07 Merge pull request #4632 from Eugeny/dependabot/npm_and_yarn/types/fs-extra-9.0.13 2022-01-31 12:44:29 +01:00
Eugeny
4e05adeb66 Merge pull request #5595 from Eugeny/dependabot/npm_and_yarn/sentry/cli-1.72.1 2022-01-31 12:43:51 +01:00
Eugeny
59ac4a858e Merge pull request #5539 from Eugeny/dependabot/npm_and_yarn/axios-0.25.0 2022-01-31 12:32:23 +01:00
Eugeny
55ae5b27b9 Merge pull request #5500 from Eugeny/dependabot/npm_and_yarn/core-js-3.20.3 2022-01-31 12:32:11 +01:00
Eugeny
b0aa20b387 Merge pull request #5521 from Eugeny/dependabot/npm_and_yarn/typedoc-0.22.11 2022-01-31 12:31:32 +01:00
Eugene Pankov
0f01aaf44d Merge commit '8b3f4826' into tmp 2022-01-31 10:50:45 +01:00
Eugene Pankov
54531e234e Merge commit '9515245' into tmp 2022-01-31 10:25:56 +01:00
Eugene Pankov
3bda4a9871 . 2022-01-31 09:33:50 +01:00
Eugene Pankov
c7e3ab42d9 ssh: added DSA host key support - fixes #5120, fixes #3430 2022-01-31 09:22:55 +01:00
Eugene Pankov
5d2956568e .ssh: added DSA host key support - fixes #5120, fixes #3430 2022-01-31 09:00:23 +01:00
Eugene Pankov
8b3f482682 Merge branch 'master' of https://github.com/Eugeny/tabby 2022-01-30 22:08:48 +01:00
Eugene Pankov
f38f9882f8 Update ssh2+1.5.0.patch 2022-01-30 22:08:40 +01:00
Eugene Pankov
54d71adb26 debounce terminal resize events 2022-01-30 21:08:50 +01:00
Eugene Pankov
13eebd8957 locale updates 2022-01-30 21:04:49 +01:00
Eugene Pankov
6c4f8d2611 blacklisted clickable-ips 2022-01-30 21:01:49 +01:00
Eugene Pankov
897bc77d05 Update tabHeader.component.scss 2022-01-30 21:00:17 +01:00
Eugene Pankov
8b5b53ab26 added drag handles to toolbars 2022-01-30 20:58:43 +01:00
Eugene Pankov
448fe29f50 Update electron-builder.yml 2022-01-30 20:54:18 +01:00
Eugene Pankov
70ae9f875f Merge branch 'master' of github.com:Eugeny/tabby 2022-01-30 20:44:10 +01:00
Eugene Pankov
75764cd725 macOS vibrancy fixes 2022-01-30 20:43:59 +01:00
dependabot[bot]
bb00f2f033 Bump @sentry/cli from 1.71.0 to 1.72.1
Bumps [@sentry/cli](https://github.com/getsentry/sentry-cli) from 1.71.0 to 1.72.1.
- [Release notes](https://github.com/getsentry/sentry-cli/releases)
- [Changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-cli/compare/1.71.0...1.72.1)

---
updated-dependencies:
- dependency-name: "@sentry/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-30 19:34:00 +00:00
Eugeny
5ae2d17cc8 Merge pull request #5603 from Eugeny/dependabot/npm_and_yarn/node-fetch-2.6.7 2022-01-30 20:28:57 +01:00
Eugeny
109a83db5b Merge pull request #5624 from Eugeny/dependabot/npm_and_yarn/electron-16.0.8 2022-01-30 20:27:47 +01:00
Eugene Pankov
9fe8d2a7df Create ssh2+1.5.0.patch 2022-01-30 20:22:39 +01:00
Eugene Pankov
d3bbd045dc Delete ssh2+1.5.0.patch 2022-01-30 20:22:32 +01:00
Eugene Pankov
eb0fa29fad fixed the color and title settings not getting inherited from profile defaults - fixes #5395 2022-01-30 20:03:57 +01:00
Eugene Pankov
6289229bf2 fixed the --hidden option - fixes #5396 2022-01-30 19:40:29 +01:00
Eugene Pankov
b664b9eed9 fixed repeated hotkeys canceling themselves - fixes #5406, fixes #4566 2022-01-30 17:51:21 +01:00
dependabot[bot]
e80c3ce693 Bump core-js from 3.18.2 to 3.20.3
Bumps [core-js](https://github.com/zloirock/core-js) from 3.18.2 to 3.20.3.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/compare/v3.18.2...v3.20.3)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-30 10:02:30 +00:00
dependabot[bot]
2569f9e322 Bump electron from 16.0.7 to 16.0.8
Bumps [electron](https://github.com/electron/electron) from 16.0.7 to 16.0.8.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v16.0.7...v16.0.8)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-30 10:02:24 +00:00
dependabot[bot]
b9b6c63d57 Bump axios from 0.21.2 to 0.25.0
Bumps [axios](https://github.com/axios/axios) from 0.21.2 to 0.25.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.21.2...v0.25.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-30 10:02:01 +00:00
Eugene Pankov
95152456ce ssh: added DSA host key support - fixes #5120, fixes #3430 2022-01-30 10:57:59 +01:00
Eugene Pankov
918761bbdc ssh: remember and verify host keys - fixes #2419 2022-01-30 00:24:58 +01:00
Eugene Pankov
ceb1b59409 prevent dropping a tab on itself - fixes #5580 2022-01-29 19:28:19 +01:00
Eugene Pankov
63374f532c cleaned up terminal toolbar implementation 2022-01-29 17:20:23 +01:00
Eugene Pankov
c57fe48e73 added the issue translator bot - fixes #5631 2022-01-29 15:53:42 +01:00
Eugene Pankov
02a3a8200b ssh: fixed socks proxy connection race condition - fixes #5093, fixes #5060, fixes #5632 2022-01-29 15:26:26 +01:00
Eugene Pankov
3e8e3f7ccd enable vibrancy on macOS by default 2022-01-29 15:09:58 +01:00
Eugene Pankov
1ec218775e linkifier: re-added port support 2022-01-29 00:02:10 +01:00
Eugene Pankov
cc8c200da0 updated linkifier regex - fixes #5611 2022-01-28 23:49:38 +01:00
Eugene Pankov
0a20716efd locale updates, added Spanish 2022-01-28 23:43:46 +01:00
Eugene Pankov
9893fb51a7 linkifier: fixed "no modifier", removed ctrl on macOS 2022-01-28 23:23:40 +01:00
Eugene Pankov
3466d42cb1 openssh: make option parsing case insensitive - #5559 2022-01-28 22:57:14 +01:00
Eugene Pankov
9e9066d3cd split openssh-importer into tabby-electron, support tilde in private key paths - fixes #5627 2022-01-28 22:49:52 +01:00
dependabot[bot]
bee62f3001 Bump winston from 3.3.3 to 3.5.0 in /tabby-electron
Bumps [winston](https://github.com/winstonjs/winston) from 3.3.3 to 3.5.0.
- [Release notes](https://github.com/winstonjs/winston/releases)
- [Changelog](https://github.com/winstonjs/winston/blob/master/CHANGELOG.md)
- [Commits](https://github.com/winstonjs/winston/compare/v3.3.3...v3.5.0)

---
updated-dependencies:
- dependency-name: winston
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-28 04:18:34 +00:00
Eugene Pankov
b469dd603b ssh: allow empty keyb-interactive responses - fixes #5619 2022-01-27 21:00:25 +01:00
Eugeny
f6eaff355b Merge pull request #5608 from justjavac/patch-1 2022-01-27 10:47:48 +01:00
迷渡
7ff2b31a9f docs: fix typo 2022-01-27 12:17:26 +08:00
Eugene Pankov
dbf67e77e0 Merge branch 'master' of github.com:Eugeny/tabby 2022-01-26 21:19:34 +01:00
Eugene Pankov
b45769d379 locale updates 2022-01-26 20:17:35 +01:00
Eugene Pankov
1695c0b522 fixed hotkey name localization 2022-01-26 20:17:16 +01:00
Eugeny
15d7be05f1 Merge pull request #5548 from Eugeny/dependabot/npm_and_yarn/tabby-ssh/types/ssh2-0.5.51 2022-01-26 20:11:13 +01:00
dependabot[bot]
a759c40ec8 Bump node-fetch from 2.6.1 to 2.6.7
Bumps [node-fetch](https://github.com/node-fetch/node-fetch) from 2.6.1 to 2.6.7.
- [Release notes](https://github.com/node-fetch/node-fetch/releases)
- [Commits](https://github.com/node-fetch/node-fetch/compare/v2.6.1...v2.6.7)

---
updated-dependencies:
- dependency-name: node-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-26 19:11:07 +00:00
Eugeny
a8e977d34c Merge pull request #5565 from Eugeny/dependabot/npm_and_yarn/nanoid-3.2.0 2022-01-26 20:10:55 +01:00
Eugeny
527a951b1e Merge pull request #5576 from Eugeny/dependabot/npm_and_yarn/webpack-5.67.0 2022-01-26 20:10:46 +01:00
Eugeny
afe9c9a84c Merge pull request #5585 from Eugeny/dependabot/npm_and_yarn/webpack-cli-4.9.2 2022-01-26 20:10:17 +01:00
Eugene Pankov
372662c787 docs: added MaxWaldorf as contributor 2022-01-26 19:26:11 +01:00
Eugeny
ca9e6a118e Update .all-contributorsrc 2022-01-26 10:12:31 +01:00
Eugeny
b412bce37d Merge pull request #5591 from Qiming-Liu/patch-1 2022-01-26 10:11:46 +01:00
Alan
6622cbc550 docs: update README.zh-CN.md [skip ci]
add JasonCubic
2022-01-25 22:03:50 +10:30
dependabot[bot]
d3361b6f34 Bump webpack-cli from 4.9.1 to 4.9.2
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 4.9.1 to 4.9.2.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@4.9.1...webpack-cli@4.9.2)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-25 04:04:36 +00:00
Eugene Pankov
13f715ddfd Merge branch 'master' of github.com:Eugeny/tabby 2022-01-24 15:08:28 +01:00
Eugene Pankov
ccea3572a7 locale updates 2022-01-24 15:08:21 +01:00
Eugeny
c24c752b76 Merge pull request #5578 from Eugeny/all-contributors/add-JasonCubic 2022-01-24 10:15:54 +01:00
allcontributors[bot]
8751b9831f docs: update .all-contributorsrc [skip ci] 2022-01-24 09:15:41 +00:00
Eugeny
d4d93cf236 Merge pull request #5574 from JasonCubic/master 2022-01-24 10:15:40 +01:00
allcontributors[bot]
9b305026f7 docs: update README.md [skip ci] 2022-01-24 09:15:40 +00:00
dependabot[bot]
91fcdbf9b5 Bump webpack from 5.66.0 to 5.67.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.66.0 to 5.67.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.66.0...v5.67.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-24 04:03:36 +00:00
Jason
b17e23a69e added sdras night owl themes 2022-01-23 17:10:59 -08:00
Eugene Pankov
88bbdd0da1 debounce tab progress updates 2022-01-22 14:16:59 +01:00
Eugene Pankov
53cbb8a7e3 avoid rechecking window status on every loop 2022-01-22 14:16:46 +01:00
Eugene Pankov
9df8a1b904 bumped opentype.js 2022-01-22 14:16:17 +01:00
dependabot[bot]
0a0e451e97 Bump nanoid from 3.1.23 to 3.2.0
Bumps [nanoid](https://github.com/ai/nanoid) from 3.1.23 to 3.2.0.
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/3.1.23...3.2.0)

---
updated-dependencies:
- dependency-name: nanoid
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-22 02:21:37 +00:00
Eugene Pankov
5376ac0f07 updated XDG app category - fixes #5549 2022-01-20 09:13:05 +01:00
dependabot[bot]
238482932e Bump @types/ssh2 from 0.5.50 to 0.5.51 in /tabby-ssh
Bumps [@types/ssh2](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ssh2) from 0.5.50 to 0.5.51.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ssh2)

---
updated-dependencies:
- dependency-name: "@types/ssh2"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-20 04:19:24 +00:00
Eugene Pankov
d4332ea361 Update de-DE.po 2022-01-18 23:38:44 +01:00
Eugene Pankov
eb49499f09 locale updates 2022-01-18 22:35:55 +01:00
Eugene Pankov
445a3d02da lint 2022-01-18 22:13:38 +01:00
Eugene Pankov
06e5571812 Merge branch 'master' of github.com:Eugeny/tabby 2022-01-18 22:13:15 +01:00
Eugene Pankov
510edaabb5 Update streamProcessing.ts 2022-01-18 22:12:24 +01:00
Eugene Pankov
5ef36896c5 show language selector in welcome tab 2022-01-18 22:12:19 +01:00
Eugene Pankov
5d22c15a78 locale update 2022-01-18 22:12:09 +01:00
Eugeny
a33e11502b Update feature_request.md 2022-01-18 15:10:18 +01:00
Eugeny
4c9456d98d Update issue-report.md 2022-01-18 15:09:50 +01:00
Eugene Pankov
e1ee818932 locale updates 2022-01-18 14:05:16 +01:00
Eugeny
e83210f0e6 Merge pull request #5529 from Qiming-Liu/patch-2 2022-01-18 12:26:42 +01:00
Alan
1d176047c4 Update README.zh-CN.md
A few small improves.
Correct `选项卡` to `标签页`
2022-01-18 21:49:46 +10:30
Eugeny
bd3ac21fb3 Merge pull request #5527 from Qiming-Liu/patch-1 2022-01-18 11:55:52 +01:00
Alan
559dd3955c README fix for Chinese translation
Follow the latest English README.md, update README.zh-CN.md.
2022-01-18 21:08:43 +10:30
Eugene Pankov
0ed05cb783 Merge branch 'master' of github.com:Eugeny/tabby 2022-01-18 10:46:28 +01:00
Eugene Pankov
87e8eefd49 lint 2022-01-18 10:46:25 +01:00
Eugeny
609b527a7c Merge pull request #5387 from Eugeny/dependabot/npm_and_yarn/graceful-fs-4.2.9 2022-01-18 10:37:22 +01:00
Eugene Pankov
fee163835f fixed install-deps.js 2022-01-18 10:31:07 +01:00
Eugene Pankov
c8b25cf911 locale updates 2022-01-18 10:26:49 +01:00
Eugene Pankov
eb9698fa66 locale updates 2022-01-18 10:25:32 +01:00
Eugene Pankov
eb60c3c3c6 locale fixes 2022-01-18 10:10:25 +01:00
Eugene Pankov
f2a48fc0c0 readme fix 2022-01-18 10:10:04 +01:00
Eugene Pankov
8d01a9ad8d Merge branches 'master' and 'master' of github.com:Eugeny/tabby 2022-01-18 10:07:44 +01:00
Eugeny
4d8ddba8ea Merge pull request #5526 from TimaGribanov/patch-1 2022-01-18 10:07:38 +01:00
Timofey Gribanov
91a7dd8b1d Create REAMDE.ru_RU.md
Russian README
2022-01-18 11:54:12 +03:00
dependabot[bot]
2f35ae203d Bump typedoc from 0.22.10 to 0.22.11
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.22.10 to 0.22.11.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.22.10...v0.22.11)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-18 04:09:10 +00:00
Eugene Pankov
38423eb139 ssh: enable multiplexing by default 2022-01-17 09:10:00 +01:00
Eugene Pankov
bde6fd6231 name fix 2022-01-16 20:56:10 +01:00
Eugeny
14200f848f Merge pull request #5494 from Eugeny/all-contributors/add-milotype 2022-01-16 19:44:47 +01:00
Eugene Pankov
f6895d7696 locale updates 2022-01-16 19:44:30 +01:00
Eugene Pankov
64410a9302 make script errors fatal 2022-01-16 19:41:01 +01:00
allcontributors[bot]
45274f9691 docs: update .all-contributorsrc [skip ci] 2022-01-16 18:38:23 +00:00
allcontributors[bot]
54ab2a1f03 docs: update README.md [skip ci] 2022-01-16 18:38:22 +00:00
Eugene Pankov
782128308c build fix 2022-01-16 19:36:55 +01:00
Eugeny
f2b6cdf97c Merge pull request #5492 from Eugeny/all-contributors/add-boonkerz 2022-01-16 17:30:46 +01:00
Eugeny
c025c44258 Merge pull request #5488 from boonkerz/patch-1 2022-01-16 17:28:49 +01:00
allcontributors[bot]
9483d20994 docs: update .all-contributorsrc [skip ci] 2022-01-16 16:28:48 +00:00
allcontributors[bot]
ff25e7fe2e docs: update README.md [skip ci] 2022-01-16 16:28:47 +00:00
Eugene Pankov
d12a48f3fc lint 2022-01-16 17:27:54 +01:00
boonkerz
1796ce4f1c Update tabContextMenu.ts
Translate the selected Color
2022-01-16 15:35:42 +01:00
Eugene Pankov
d404067e77 Merge branch 'master' of github.com:Eugeny/tabby 2022-01-15 19:39:11 +01:00
dependabot[bot]
f7544d0a2e Bump graceful-fs from 4.2.8 to 4.2.9
Bumps [graceful-fs](https://github.com/isaacs/node-graceful-fs) from 4.2.8 to 4.2.9.
- [Release notes](https://github.com/isaacs/node-graceful-fs/releases)
- [Commits](https://github.com/isaacs/node-graceful-fs/compare/v4.2.8...v4.2.9)

---
updated-dependencies:
- dependency-name: graceful-fs
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-15 17:51:39 +00:00
Eugeny
cbdce5c30e Merge pull request #5448 from Eugeny/dependabot/npm_and_yarn/electron-16.0.7
Bump electron from 16.0.6 to 16.0.7
2022-01-15 18:46:43 +01:00
Eugeny
d7ab8a00dc Merge pull request #5428 from Eugeny/dependabot/npm_and_yarn/app/serialport-10.0.2
Bump serialport from 10.0.1 to 10.0.2 in /app
2022-01-15 18:45:56 +01:00
Eugeny
6e0ded9a5e Merge pull request #5430 from Eugeny/dependabot/npm_and_yarn/shelljs-0.8.5
Bump shelljs from 0.8.4 to 0.8.5
2022-01-15 18:45:47 +01:00
Eugeny
f660ece383 Merge pull request #5462 from Eugeny/dependabot/npm_and_yarn/webpack-5.66.0
Bump webpack from 5.65.0 to 5.66.0
2022-01-15 18:45:08 +01:00
Eugeny
b692347c4e Merge pull request #5450 from Eugeny/dependabot/npm_and_yarn/electron-rebuild-3.2.7
Bump electron-rebuild from 3.2.5 to 3.2.7
2022-01-15 18:44:41 +01:00
Eugeny
9520d31f12 Merge pull request #5471 from Eugeny/dependabot/npm_and_yarn/follow-redirects-1.14.7
Bump follow-redirects from 1.14.5 to 1.14.7
2022-01-15 18:44:17 +01:00
Eugene Pankov
f2afac6ead locale update 2022-01-15 15:14:22 +01:00
Eugene Pankov
0dd460a6d7 bumped plugins 2022-01-14 13:04:57 +01:00
dependabot[bot]
7c0aacf0ad Bump follow-redirects from 1.14.5 to 1.14.7
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.5 to 1.14.7.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.5...v1.14.7)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-13 23:53:29 +00:00
Eugene Pankov
57bf79ec56 locale updates 2022-01-14 00:52:42 +01:00
Eugene Pankov
8cfdd43ee1 locale updates 2022-01-14 00:43:14 +01:00
Eugene Pankov
21f245ddaf fixed ligature related freezes - fixes #5188, fixes #2493 2022-01-14 00:43:09 +01:00
Eugene Pankov
00a19769e1 snappier tab animations 2022-01-14 00:37:43 +01:00
Eugene Pankov
d2a22763de better wording for docking settings 2022-01-14 00:36:39 +01:00
Eugene Pankov
da75e34b95 Update xtermFrontend.ts 2022-01-14 00:25:48 +01:00
Eugene Pankov
08a564588c allow disabling GPU on other platforms 2022-01-14 00:25:40 +01:00
Eugene Pankov
a639d65ed6 show checkmarks on completed transfers - fixes #5460 2022-01-13 23:54:35 +01:00
Eugene Pankov
b42314b29e limit depth of tab de-closer history 2022-01-13 23:47:18 +01:00
Eugene Pankov
17c93aa3fc plug some leaks 2022-01-13 23:45:11 +01:00
Eugene Pankov
5b4a1a5581 fixed missing locale modules - fixes #5466 2022-01-13 14:25:16 +01:00
Eugene Pankov
d82f78a026 updated translations 2022-01-13 14:24:56 +01:00
dependabot[bot]
9414be9ce0 Bump webpack from 5.65.0 to 5.66.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.65.0 to 5.66.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.65.0...v5.66.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-13 04:05:42 +00:00
dependabot[bot]
f2ed1b3df3 Bump electron-rebuild from 3.2.5 to 3.2.7
Bumps [electron-rebuild](https://github.com/electron/electron-rebuild) from 3.2.5 to 3.2.7.
- [Release notes](https://github.com/electron/electron-rebuild/releases)
- [Changelog](https://github.com/electron/electron-rebuild/blob/master/.releaserc.json)
- [Commits](https://github.com/electron/electron-rebuild/compare/v3.2.5...v3.2.7)

---
updated-dependencies:
- dependency-name: electron-rebuild
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-12 04:05:46 +00:00
dependabot[bot]
f41abea747 Bump electron from 16.0.6 to 16.0.7
Bumps [electron](https://github.com/electron/electron) from 16.0.6 to 16.0.7.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v16.0.6...v16.0.7)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-12 04:03:03 +00:00
Eugene Pankov
21e5d68994 support syncing fully encrypted config - fixes #5400 2022-01-10 21:15:03 +01:00
Eugene Pankov
a6a9c149dc fixed incorrect await 2022-01-10 20:45:54 +01:00
Eugene Pankov
61c11abda2 don't include tab state in saved layouts 2022-01-10 20:39:29 +01:00
Eugene Pankov
3a11b51729 windows/linux: expand window content into the border area - fixes #5423 2022-01-10 19:45:44 +01:00
dependabot[bot]
00ffa24e7d Bump shelljs from 0.8.4 to 0.8.5
Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5.
- [Release notes](https://github.com/shelljs/shelljs/releases)
- [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5)

---
updated-dependencies:
- dependency-name: shelljs
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-10 04:04:15 +00:00
dependabot[bot]
b156752106 Bump serialport from 10.0.1 to 10.0.2 in /app
Bumps [serialport](https://github.com/serialport/node-serialport) from 10.0.1 to 10.0.2.
- [Release notes](https://github.com/serialport/node-serialport/releases)
- [Changelog](https://github.com/serialport/node-serialport/blob/master/CHANGELOG.md)
- [Commits](https://github.com/serialport/node-serialport/compare/@serialport/bindings@10.0.1...v10.0.2)

---
updated-dependencies:
- dependency-name: serialport
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-10 04:01:48 +00:00
Eugene Pankov
6159d0ba9a added financial contributors 2022-01-09 12:46:03 +01:00
Eugene Pankov
bf2ab87c44 replaced timestamp server 2022-01-09 12:20:38 +01:00
Eugene Pankov
ff1e2871d4 more localization fixes 2022-01-09 11:28:14 +01:00
Eugene Pankov
2d9f3d8216 more strings 2022-01-09 10:32:55 +01:00
Eugene Pankov
e7a9b2317d added a "scroll to bottom" hotkey - fixes #1566 2022-01-08 19:20:51 +01:00
Eugene Pankov
0ab02d032a fixed dragging splits back out into the tab bar - fixes #5410, fixes #5406, fixes #4563 2022-01-08 19:16:08 +01:00
Eugene Pankov
ab8622c9fd more localization fixes 2022-01-08 19:13:07 +01:00
Eugeny
70a12e36e1 Merge pull request #5365 from Eugeny/dependabot/npm_and_yarn/tabby-ssh/types/ssh2-0.5.50 2022-01-08 18:27:05 +01:00
Eugeny
9706108185 Merge pull request #5379 from Eugeny/dependabot/npm_and_yarn/slugify-1.6.5 2022-01-08 18:26:57 +01:00
Eugeny
5138873f43 Merge pull request #5380 from Eugeny/dependabot/npm_and_yarn/source-map-loader-3.0.1 2022-01-08 18:26:49 +01:00
Eugene Pankov
d8625d6b9f start page translation fix 2022-01-08 17:35:49 +01:00
Eugene Pankov
ec4f200435 fixed settings with linkifier disabled - fixes #5263, fixes #5276 2022-01-08 17:05:41 +01:00
Eugene Pankov
91f3b78b80 build fix 2022-01-08 16:48:18 +01:00
Eugene Pankov
3b321858d2 crowdin link 2022-01-08 16:07:07 +01:00
Eugene Pankov
0814d44207 Translation infrastructure 2022-01-08 16:03:01 +01:00
Eugeny
04010b58bb Merge pull request #5416 from Eugeny/all-contributors/add-TENX-S 2022-01-07 16:42:53 +01:00
Eugeny
a68dc35a23 Merge pull request #5378 from Eugeny/dependabot/npm_and_yarn/electron-16.0.6 2022-01-07 16:42:30 +01:00
allcontributors[bot]
40c4f57b37 docs: update .all-contributorsrc [skip ci] 2022-01-07 15:42:17 +00:00
allcontributors[bot]
652084a140 docs: update README.md [skip ci] 2022-01-07 15:42:16 +00:00
Eugeny
c29d5bc98a Merge pull request #5353 from TENX-S/Chinese_translation 2022-01-07 16:42:02 +01:00
dependabot[bot]
42b5d0824a Bump source-map-loader from 3.0.0 to 3.0.1
Bumps [source-map-loader](https://github.com/webpack-contrib/source-map-loader) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/webpack-contrib/source-map-loader/releases)
- [Changelog](https://github.com/webpack-contrib/source-map-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/source-map-loader/compare/v3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: source-map-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-04 04:07:50 +00:00
dependabot[bot]
7226b09214 Bump slugify from 1.6.4 to 1.6.5
Bumps [slugify](https://github.com/simov/slugify) from 1.6.4 to 1.6.5.
- [Release notes](https://github.com/simov/slugify/releases)
- [Commits](https://github.com/simov/slugify/compare/v1.6.4...v1.6.5)

---
updated-dependencies:
- dependency-name: slugify
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-04 04:06:48 +00:00
dependabot[bot]
b97053daee Bump electron from 16.0.5 to 16.0.6
Bumps [electron](https://github.com/electron/electron) from 16.0.5 to 16.0.6.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v16.0.5...v16.0.6)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-04 04:05:52 +00:00
dependabot[bot]
d5d6a486d2 Bump @types/ssh2 from 0.5.49 to 0.5.50 in /tabby-ssh
Bumps [@types/ssh2](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ssh2) from 0.5.49 to 0.5.50.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ssh2)

---
updated-dependencies:
- dependency-name: "@types/ssh2"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-03 04:19:29 +00:00
Ares Andrew
889ab0f147 doc: add Chinese translation for README 2021-12-31 21:58:35 +08:00
dependabot[bot]
604e5e37a8 Bump @types/fs-extra from 9.0.12 to 9.0.13
Bumps [@types/fs-extra](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fs-extra) from 9.0.12 to 9.0.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fs-extra)

---
updated-dependencies:
- dependency-name: "@types/fs-extra"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-30 19:26:33 +00:00
Eugeny
e6a1f98cf1 Merge pull request #4835 from Eugeny/dependabot/npm_and_yarn/axios-0.24.0 2021-12-30 20:19:39 +01:00
Eugeny
5f81a47db9 Merge pull request #5325 from Eugeny/dependabot/github_actions/actions/setup-node-2.5.1 2021-12-30 20:17:00 +01:00
Eugeny
5d16bb99c7 Merge pull request #4885 from Eugeny/dependabot/npm_and_yarn/types/webpack-env-1.16.3 2021-12-30 20:15:54 +01:00
Eugeny
f24439d580 Merge pull request #4968 from Eugeny/dependabot/npm_and_yarn/types/js-yaml-4.0.5 2021-12-30 20:15:49 +01:00
Eugeny
6d3334543e Merge pull request #4979 from Eugeny/dependabot/npm_and_yarn/fortawesome/fontawesome-free-6.0.0-beta3 2021-12-30 20:15:43 +01:00
Eugeny
62019e3ac1 Merge pull request #5065 from Eugeny/dependabot/npm_and_yarn/sass-loader-12.4.0 2021-12-30 20:15:39 +01:00
Eugeny
adc9bce844 Merge pull request #4942 from Eugeny/dependabot/npm_and_yarn/npmlog-6.0.0 2021-12-30 20:15:28 +01:00
Eugeny
26b70447da Merge pull request #5199 from Eugeny/dependabot/npm_and_yarn/slugify-1.6.4 2021-12-30 20:15:10 +01:00
dependabot[bot]
832e408952 Bump npmlog from 5.0.1 to 6.0.0
Bumps [npmlog](https://github.com/npm/npmlog) from 5.0.1 to 6.0.0.
- [Release notes](https://github.com/npm/npmlog/releases)
- [Changelog](https://github.com/npm/npmlog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/npmlog/compare/v5.0.1...v6.0.0)

---
updated-dependencies:
- dependency-name: npmlog
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-30 19:15:04 +00:00
Eugene Pankov
b64c2ae14e correct marked usage 2021-12-30 20:14:56 +01:00
dependabot[bot]
e63d296457 Bump sass-loader from 12.3.0 to 12.4.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 12.3.0 to 12.4.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v12.3.0...v12.4.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-30 19:14:47 +00:00
Eugeny
909c99d1c0 Merge pull request #5226 from Eugeny/dependabot/npm_and_yarn/tabby-settings/marked-4.0.8 2021-12-30 20:14:42 +01:00
Eugeny
cbd8609c97 Merge pull request #5053 from Eugeny/dependabot/npm_and_yarn/webpack-5.65.0 2021-12-30 20:12:21 +01:00
Eugeny
b8c1b5e428 Merge pull request #5283 from Eugeny/dependabot/npm_and_yarn/app/yargs-17.3.1 2021-12-30 20:11:30 +01:00
Eugeny
cb1b0ac669 Merge pull request #5313 from Eugeny/dependabot/npm_and_yarn/app/rxjs-7.5.1 2021-12-30 20:10:40 +01:00
Eugeny
bbe7d2186e Merge pull request #5314 from Eugeny/dependabot/npm_and_yarn/node-sass-7.0.1 2021-12-30 20:10:17 +01:00
Eugene Pankov
d0469685d9 automatically import and show OpenSSH connections - fixes #1528 2021-12-30 20:09:02 +01:00
Eugene Pankov
32ecd48375 upload to other ubuntu version repos - fixes #5333 2021-12-30 10:01:30 +01:00
Eugene Pankov
33a715c8c3 Merge branch 'master' of github.com:Eugeny/tabby 2021-12-30 10:01:19 +01:00
Eugeny
eba3d2709e Merge pull request #5320 from SunJary/fix_paper_sftp_color 2021-12-29 11:26:45 +01:00
dependabot[bot]
b3af7184e7 Bump actions/setup-node from 2.5.0 to 2.5.1
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.5.0...v2.5.1)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-29 04:14:39 +00:00
jary
54411e59ad fix: paper theme sftp color 2021-12-28 17:22:02 +08:00
dependabot[bot]
f9da76f07e Bump node-sass from 7.0.0 to 7.0.1
Bumps [node-sass](https://github.com/sass/node-sass) from 7.0.0 to 7.0.1.
- [Release notes](https://github.com/sass/node-sass/releases)
- [Changelog](https://github.com/sass/node-sass/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sass/node-sass/compare/v7.0.0...v7.0.1)

---
updated-dependencies:
- dependency-name: node-sass
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-28 04:04:28 +00:00
dependabot[bot]
af0ecd2400 Bump rxjs from 7.4.0 to 7.5.1 in /app
Bumps [rxjs](https://github.com/reactivex/rxjs) from 7.4.0 to 7.5.1.
- [Release notes](https://github.com/reactivex/rxjs/releases)
- [Changelog](https://github.com/ReactiveX/rxjs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reactivex/rxjs/compare/7.4.0...7.5.1)

---
updated-dependencies:
- dependency-name: rxjs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-28 04:01:58 +00:00
Eugene Pankov
f3f730b32e lint 2021-12-27 20:58:17 +01:00
Eugene Pankov
076b1c7129 group various stream processors into middleware 2021-12-27 20:08:22 +01:00
dependabot[bot]
3298840454 Bump yargs from 17.2.1 to 17.3.1 in /app
Bumps [yargs](https://github.com/yargs/yargs) from 17.2.1 to 17.3.1.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v17.2.1...v17.3.1)

---
updated-dependencies:
- dependency-name: yargs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-27 18:48:45 +00:00
Eugene Pankov
b0c300be43 bumped serialport for real 2021-12-27 19:46:54 +01:00
Eugene Pankov
e86b3cde6f bumped serialport 2021-12-27 10:43:53 +01:00
Eugene Pankov
ff55d3d1ef disable multiplexing by default 2021-12-26 16:49:46 +01:00
Eugeny
e024390028 Merge pull request #5298 from Eugeny/all-contributors/add-jaimeadf 2021-12-26 10:44:21 +01:00
allcontributors[bot]
c314e4638d docs: update .all-contributorsrc [skip ci] 2021-12-26 09:26:57 +00:00
allcontributors[bot]
bcd2cc50ec docs: update README.md [skip ci] 2021-12-26 09:26:56 +00:00
Eugeny
8e1f6f894f Merge pull request #5297 from jaimeadf/color-schemes/RosePine 2021-12-26 10:26:33 +01:00
Marmota
eab8841cca add rose pine color scheme 2021-12-25 19:47:59 -03:00
Eugene Pankov
a78f3399fd SSH session multiplexing - fixes #4795 2021-12-24 18:34:48 +01:00
Eugene Pankov
44cbc9298f separated ssh session and shell session classes 2021-12-24 15:18:02 +01:00
Eugene Pankov
0c601592e3 detect store-installed powershell - fixes #5212 2021-12-23 14:15:48 +01:00
dependabot[bot]
87ad435a13 Bump webpack from 5.64.4 to 5.65.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.64.4 to 5.65.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.64.4...v5.65.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-23 10:34:21 +00:00
Eugene Pankov
d644c299ae serial: fixed parity settings on Windows - fixes #5267 2021-12-23 11:29:50 +01:00
Eugene Pankov
6119c2b73d Merge branch 'master' of github.com:Eugeny/tabby 2021-12-22 22:36:10 +01:00
Eugene Pankov
ccf4f05437 disallow disabling the plugin manager - #5257 2021-12-22 22:36:06 +01:00
Eugeny
5110808069 Update issue-report.md 2021-12-22 22:33:08 +01:00
Eugene Pankov
ba61a7f359 Revert "electron-remote fixes"
This reverts commit 8587cd31dd.
2021-12-22 22:23:02 +01:00
Eugene Pankov
f2aef8d6d5 Merge branch 'master' of github.com:Eugeny/tabby 2021-12-22 21:16:53 +01:00
Eugene Pankov
8587cd31dd electron-remote fixes 2021-12-22 21:16:50 +01:00
Eugene Pankov
8a8e7cd99f upgraded xterm 2021-12-22 21:16:45 +01:00
Eugeny
ddb01b3722 Merge pull request #5198 from Eugeny/dependabot/npm_and_yarn/electron-16.0.5 2021-12-22 21:01:01 +01:00
dependabot[bot]
66bb03a463 Bump electron from 13.5.1 to 16.0.5
Bumps [electron](https://github.com/electron/electron) from 13.5.1 to 16.0.5.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v13.5.1...v16.0.5)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-22 09:10:20 +00:00
Eugene Pankov
5f88a02647 Merge branch 'electron-upgrade' 2021-12-22 10:06:51 +01:00
Eugene Pankov
538df37f5e support for unencrypted PuTTY v3 keys - #5145 2021-12-22 00:28:14 +01:00
Eugene Pankov
aba5e9dcfa show font name autocompletion hint 2021-12-22 00:04:11 +01:00
Eugene Pankov
c7589acc87 prevent window controls flickering 2021-12-22 00:04:01 +01:00
Eugene Pankov
39786e023e expose the terminal.scrollbackLines setting 2021-12-21 23:37:22 +01:00
Eugene Pankov
7900134f67 expose the terminal.linePadding setting 2021-12-21 23:37:09 +01:00
dependabot[bot]
9e3961b83d Bump marked from 3.0.2 to 4.0.8 in /tabby-settings
Bumps [marked](https://github.com/markedjs/marked) from 3.0.2 to 4.0.8.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v3.0.2...v4.0.8)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-20 04:21:29 +00:00
Eugene Pankov
d080adc19d fixed terminal toolbar padding when on top on macOS - fixes #5220 2021-12-19 18:44:12 +01:00
Eugene Pankov
4f189f6839 fixed #5219 2021-12-19 18:40:19 +01:00
Eugene Pankov
87ed979588 lint 2021-12-19 18:11:46 +01:00
Eugene Pankov
e90db7f07f UI switch for --disable-gpu - #5131, #3499 2021-12-19 18:11:43 +01:00
Eugene Pankov
5249a9076a config defaults tweaks 2021-12-19 17:56:50 +01:00
Eugene Pankov
cfc9333c02 use real file modes for zmodem uploads - fixes #4141 2021-12-19 17:56:42 +01:00
dependabot[bot]
5a7b5346ae Bump slugify from 1.6.1 to 1.6.4
Bumps [slugify](https://github.com/simov/slugify) from 1.6.1 to 1.6.4.
- [Release notes](https://github.com/simov/slugify/releases)
- [Commits](https://github.com/simov/slugify/compare/v1.6.1...v1.6.4)

---
updated-dependencies:
- dependency-name: slugify
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-17 04:05:28 +00:00
Eugene Pankov
81aa747d83 lint 2021-12-15 23:30:33 +01:00
Eugene Pankov
0e9723cb3b updated window docking logic 2021-12-15 23:21:56 +01:00
Eugene Pankov
899484a5d9 fixed config sync - fixes #5146, fixes #3164 2021-12-15 21:48:54 +01:00
Eugeny
4c2feb1b35 Update issue-report.md 2021-12-14 10:08:52 +01:00
Eugeny
d6d75b8c53 Update issue templates 2021-12-14 10:07:39 +01:00
Eugene Pankov
6eff3902ca don't disable vibrancy while dragging if it's not fluent 2021-12-12 14:24:55 +01:00
Eugene Pankov
8f71f29007 electron 16 2021-12-12 14:15:04 +01:00
Eugene Pankov
b6fd909d67 electron 14 2021-12-12 14:05:55 +01:00
Eugene Pankov
9500fa8770 dep fix 2021-12-12 13:18:20 +01:00
Eugene Pankov
f92d9c85cb allowRendererProcessReuse 2021-12-12 13:14:24 +01:00
Eugene Pankov
04533a683b upgraded node-serialport 2021-12-12 12:23:24 +01:00
Eugene Pankov
08a38bbf61 serial: slow feed mode - fixes #4901 2021-12-12 12:23:15 +01:00
Eugene Pankov
5f94e84542 theme tweaks, fixed #5068 2021-12-12 12:18:02 +01:00
Eugene Pankov
bdcd2720c4 properly disable yargs warning 2021-12-12 12:10:48 +01:00
Eugene Pankov
4784a076fa disable vibrancy on Windows by default 2021-12-12 12:03:18 +01:00
Eugene Pankov
07c522385f fixed yargs deprecation warnings 2021-12-12 12:03:10 +01:00
Eugene Pankov
d039d76cff fixed restored local tabs being unresponsive - fixes #5122, fixes #5124, fixes #5101 2021-12-12 12:03:01 +01:00
Eugene Pankov
f91754ce7c build fix 2021-12-09 14:10:49 +01:00
Eugene Pankov
5911794b20 Update build.yml 2021-12-09 13:29:08 +01:00
Eugene Pankov
f640bf9443 Revert "Update build.yml"
This reverts commit 9f50d8506c.
2021-12-09 13:28:55 +01:00
Eugene Pankov
9f50d8506c Update build.yml 2021-12-09 13:02:26 +01:00
Eugene Pankov
361f6c2fe5 Update build.yml 2021-12-09 11:25:46 +01:00
Eugene Pankov
8cac38e1ef Update build.yml 2021-12-09 11:18:31 +01:00
Eugene Pankov
75757d027e Update README.md 2021-12-09 01:07:52 +01:00
Eugene Pankov
0c8b6e56da theme tweaks 2021-12-08 23:33:45 +01:00
Eugene Pankov
5be4a12ee5 theme updates 2021-12-08 23:25:46 +01:00
Eugene Pankov
433c7d33d9 fixed tab title recovery for split tabs - fixes #4810 2021-12-08 21:45:58 +01:00
Eugene Pankov
b755346ac0 fixed #5001 2021-12-08 21:01:48 +01:00
Eugene Pankov
4c663e4a20 profile settings: allow filtering by description - fixes #5022 2021-12-08 20:58:13 +01:00
Eugene Pankov
a34e4c236d lint 2021-12-08 20:38:16 +01:00
Eugene Pankov
b2b91f0cfd fixed X11 display spec parsing - fixes #5073, fixes #4978 2021-12-08 20:25:37 +01:00
Eugene Pankov
bbb02f4e64 bundle the clickable-links plugin with Tabby 2021-12-08 19:54:26 +01:00
Eugene Pankov
3eaf46e09d disabled ssh algorithm blacklist by default - fixes #4995, fixes #5072 2021-12-08 19:32:41 +01:00
Eugeny
fc02d27056 Merge pull request #5052 from Eugeny/dependabot/npm_and_yarn/node-sass-7.0.0 2021-12-07 09:10:48 +01:00
Eugeny
0fe7d81a5f Merge pull request #4988 from Eugeny/dependabot/npm_and_yarn/typedoc-0.22.10 2021-12-07 09:10:17 +01:00
dependabot[bot]
59dbe6ba83 Bump node-sass from 6.0.1 to 7.0.0
Bumps [node-sass](https://github.com/sass/node-sass) from 6.0.1 to 7.0.0.
- [Release notes](https://github.com/sass/node-sass/releases)
- [Changelog](https://github.com/sass/node-sass/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sass/node-sass/compare/v6.0.1...v7.0.0)

---
updated-dependencies:
- dependency-name: node-sass
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-07 04:05:50 +00:00
Eugene Pankov
860a577ddb fixed ESM default imports 2021-12-06 19:13:26 +01:00
dependabot[bot]
2edb9cc5b8 Bump typedoc from 0.22.9 to 0.22.10
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.22.9 to 0.22.10.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.22.9...v0.22.10)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-06 17:39:46 +00:00
Eugene Pankov
5bc13965e1 Update package.json 2021-12-06 18:35:33 +01:00
Eugene Pankov
2ca93fdb98 Update build.yml 2021-12-06 18:16:20 +01:00
Eugene Pankov
aa62ca9a6e Update ssh.ts 2021-12-06 18:12:54 +01:00
Eugene Pankov
1928cda394 Update build.yml 2021-12-06 18:06:07 +01:00
Eugene Pankov
64f8e033c4 Update ssh.ts 2021-12-06 18:03:22 +01:00
Eugene Pankov
23280c2143 Update build.yml 2021-12-06 17:46:38 +01:00
dependabot[bot]
e4037d5aac Bump axios from 0.21.1 to 0.24.0
Bumps [axios](https://github.com/axios/axios) from 0.21.1 to 0.24.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.21.1...v0.24.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-06 11:15:07 +00:00
Eugene Pankov
d2ec08e3f8 build updates 2021-12-06 12:14:06 +01:00
Eugeny
b186f986ac Merge pull request #4964 from Eugeny/dependabot/npm_and_yarn/app/electron-updater-4.6.1 2021-12-06 11:51:05 +01:00
Eugeny
dbf91228fe Merge pull request #4970 from Eugeny/dependabot/npm_and_yarn/electron-builder-22.14.5 2021-12-06 11:50:42 +01:00
Eugeny
b58198b82b Merge pull request #4996 from Eugeny/dependabot/npm_and_yarn/webpack-5.64.4 2021-12-06 11:50:03 +01:00
Eugeny
eca92760f3 Merge pull request #5002 from Eugeny/dependabot/npm_and_yarn/app/serialport-9.2.8 2021-12-06 11:49:50 +01:00
Eugeny
d4815ca827 Merge pull request #4997 from Eugeny/dependabot/npm_and_yarn/tabby-ssh/types/ssh2-0.5.49 2021-12-06 11:49:33 +01:00
Eugeny
4c19122acb Merge pull request #5009 from Eugeny/dependabot/github_actions/actions/setup-node-2.5.0 2021-12-06 11:49:25 +01:00
Eugene Pankov
6bdbca4e19 Update build.yml 2021-12-06 11:46:52 +01:00
Eugene Pankov
bb47a5d76f ssh: respect keyboard-interactive prompt echo setting - fixes #5045 2021-12-06 09:19:49 +01:00
Eugene Pankov
f308fd481d bumped plugins 2021-12-06 09:19:32 +01:00
Eugene Pankov
34adf767eb ensure patch-package runs on web 2021-12-01 10:04:09 +01:00
Eugene Pankov
2c6a26b01a bumped windows build image 2021-11-30 19:05:49 +01:00
dependabot[bot]
e596553dbf Bump actions/setup-node from 2.4.0 to 2.5.0
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2.4.0 to 2.5.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2.4.0...v2.5.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-30 04:14:38 +00:00
dependabot[bot]
990b1b8623 Bump serialport from 9.2.5 to 9.2.8 in /app
Bumps [serialport](https://github.com/serialport/node-serialport) from 9.2.5 to 9.2.8.
- [Release notes](https://github.com/serialport/node-serialport/releases)
- [Changelog](https://github.com/serialport/node-serialport/blob/master/CHANGELOG.md)
- [Commits](https://github.com/serialport/node-serialport/compare/@serialport/bindings@9.2.5...@serialport/bindings@9.2.8)

---
updated-dependencies:
- dependency-name: serialport
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-29 04:01:51 +00:00
Eugene Pankov
9856249c88 fixed #5000 - native socksv5 connection support in ssh and connection mode UI overhaul 2021-11-28 18:21:26 +01:00
dependabot[bot]
7818f0642f Bump @types/ssh2 from 0.5.48 to 0.5.49 in /tabby-ssh
Bumps [@types/ssh2](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ssh2) from 0.5.48 to 0.5.49.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ssh2)

---
updated-dependencies:
- dependency-name: "@types/ssh2"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-26 04:20:02 +00:00
dependabot[bot]
bcea319eb8 Bump webpack from 5.61.0 to 5.64.4
Bumps [webpack](https://github.com/webpack/webpack) from 5.61.0 to 5.64.4.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.61.0...v5.64.4)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-26 04:05:14 +00:00
Eugeny
246ae9fe77 Merge pull request #4993 from Eugeny/all-contributors/add-NessunKim 2021-11-25 12:36:26 +01:00
allcontributors[bot]
b4a678640e docs: update .all-contributorsrc [skip ci] 2021-11-25 11:36:13 +00:00
allcontributors[bot]
8692c17ea4 docs: update README.md [skip ci] 2021-11-25 11:36:12 +00:00
Eugeny
59ee098fde Merge pull request #4992 from NessunKim/hotkey-backticks 2021-11-25 12:36:11 +01:00
Nessun Kim
cd09043558 Fix hotkey setter to handle backticks and tildes properly 2021-11-25 20:12:00 +09:00
dependabot[bot]
6998a61f37 Bump @fortawesome/fontawesome-free from 6.0.0-beta2 to 6.0.0-beta3
Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 6.0.0-beta2 to 6.0.0-beta3.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/commits)

---
updated-dependencies:
- dependency-name: "@fortawesome/fontawesome-free"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-23 04:03:27 +00:00
dependabot[bot]
be8f8eec70 Bump electron-builder from 22.11.7 to 22.14.5
Bumps [electron-builder](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-builder) from 22.11.7 to 22.14.5.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-builder/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/v22.14.5/packages/electron-builder)

---
updated-dependencies:
- dependency-name: electron-builder
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-22 04:07:44 +00:00
dependabot[bot]
4986730f44 Bump @types/js-yaml from 4.0.4 to 4.0.5
Bumps [@types/js-yaml](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/js-yaml) from 4.0.4 to 4.0.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/js-yaml)

---
updated-dependencies:
- dependency-name: "@types/js-yaml"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-22 04:05:17 +00:00
dependabot[bot]
85fb2c5725 Bump electron-updater from 4.3.9 to 4.6.1 in /app
Bumps [electron-updater](https://github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater) from 4.3.9 to 4.6.1.
- [Release notes](https://github.com/electron-userland/electron-builder/releases)
- [Changelog](https://github.com/electron-userland/electron-builder/blob/master/packages/electron-updater/CHANGELOG.md)
- [Commits](https://github.com/electron-userland/electron-builder/commits/HEAD/packages/electron-updater)

---
updated-dependencies:
- dependency-name: electron-updater
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-22 04:02:00 +00:00
Eugene Pankov
2baede4675 ignore fewer errors in profileSettingsTab 2021-11-21 17:51:32 +01:00
Eugeny
176992a629 Merge pull request #4962 from highfredo/master 2021-11-21 17:49:06 +01:00
highfredo
905e7ffc43 Deepclone profile before passing it to the configuration component and fix uncaught error on modal dismiss 2021-11-21 13:43:02 +01:00
Eugene Pankov
8ff130ebfd fixed #4931 - allow empty username to work with winscp integration 2021-11-20 17:39:10 +01:00
Eugene Pankov
064bcb31d8 fixed toolbar color in paper theme - fixes #4954 2021-11-20 17:24:09 +01:00
Eugene Pankov
25e4e5e8b4 Merge branch 'master' of github.com:Eugeny/tabby 2021-11-20 13:36:32 +01:00
Eugene Pankov
e3018086fb build against an older glibc 2021-11-20 13:36:27 +01:00
Eugeny
f3908da0a6 Merge pull request #4889 from Eugeny/dependabot/npm_and_yarn/shell-quote-1.7.3 2021-11-19 22:58:43 +01:00
Eugeny
2e57ffb169 Merge pull request #4907 from Eugeny/dependabot/npm_and_yarn/electron-rebuild-3.2.5 2021-11-19 22:58:11 +01:00
Eugeny
bda8199e5d Merge pull request #4923 from Eugeny/dependabot/npm_and_yarn/typedoc-0.22.9 2021-11-19 22:57:50 +01:00
Eugeny
a6cbb64f59 Merge pull request #4960 from Eugeny/all-contributors/add-highfredo 2021-11-19 22:57:03 +01:00
allcontributors[bot]
8b1efaeb53 docs: update .all-contributorsrc [skip ci] 2021-11-19 21:56:14 +00:00
allcontributors[bot]
fa767adf52 docs: update README.md [skip ci] 2021-11-19 21:56:13 +00:00
Eugene Pankov
096a6128c9 style tweaks 2021-11-19 22:53:34 +01:00
highfredo
a5fa022792 Autofill port forwarding inputs with the deleted port 2021-11-19 20:18:32 +01:00
highfredo
2922df08f4 Add description to ssh port forwarding 2021-11-19 20:17:08 +01:00
Eugeny
700aae3ab0 Merge pull request #4929 from Eugeny/all-contributors/add-composer404 2021-11-15 21:49:06 +01:00
allcontributors[bot]
cad6b4d1ee docs: update .all-contributorsrc [skip ci] 2021-11-15 20:45:34 +00:00
Eugeny
2b57061949 Merge pull request #4928 from composer404/master 2021-11-15 21:45:33 +01:00
allcontributors[bot]
ca5b0a95d9 docs: update README.md [skip ci] 2021-11-15 20:45:33 +00:00
Eugene Pankov
0e3b486e22 don't auto-update on quit 2021-11-15 21:44:02 +01:00
Kozik Przemysław
f3e5ad4a2a Merge branch 'master' of github.com:composer404/tabby 2021-11-15 20:22:25 +01:00
Kozik Przemysław
ad2ab61927 toolbar icons update 2021-11-15 20:21:58 +01:00
Kozik Przemysław
e2464cf3b1 Merge branch 'master' of github.com:composer404/tabby 2021-11-15 20:19:00 +01:00
Kozik Przemysław
4c2959b4c4 toolbar icons update 2021-11-15 20:18:28 +01:00
Kozik Przemysław
4718e9ff22 Toolbar icons update 2021-11-15 20:16:24 +01:00
dependabot[bot]
8899e57f81 Bump typedoc from 0.22.7 to 0.22.9
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.22.7 to 0.22.9.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.22.7...v0.22.9)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-15 04:08:47 +00:00
Eugene Pankov
14098177e4 bumped plugins 2021-11-14 16:23:29 +01:00
Eugene Pankov
3c68e2bd29 config sync is experimental no more 2021-11-14 15:50:40 +01:00
Eugeny
bebec4f638 Merge pull request #4921 from composer404/master 2021-11-14 15:33:54 +01:00
Kozik Przemysław
f16f00cc7e update plugin list in KR version 2021-11-14 15:06:26 +01:00
Kozik Przemysław
b01b25b084 plugin list update 2021-11-14 14:59:49 +01:00
Eugene Pankov
39389f77d0 added support for long-clicking for context menu when right click is set to paste (#4858) 2021-11-14 10:59:08 +01:00
Eugene Pankov
a1dbcdbae3 handle failing dscl 2021-11-13 19:04:30 +01:00
Eugene Pankov
92f5b5a4ae plugin settings updates 2021-11-13 17:07:02 +01:00
dependabot[bot]
f379159a70 Bump electron-rebuild from 3.2.3 to 3.2.5
Bumps [electron-rebuild](https://github.com/electron/electron-rebuild) from 3.2.3 to 3.2.5.
- [Release notes](https://github.com/electron/electron-rebuild/releases)
- [Changelog](https://github.com/electron/electron-rebuild/blob/master/.releaserc.json)
- [Commits](https://github.com/electron/electron-rebuild/compare/v3.2.3...v3.2.5)

---
updated-dependencies:
- dependency-name: electron-rebuild
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-11 04:03:25 +00:00
dependabot[bot]
ec850344fc Bump shell-quote from 1.7.2 to 1.7.3
Bumps [shell-quote](https://github.com/substack/node-shell-quote) from 1.7.2 to 1.7.3.
- [Release notes](https://github.com/substack/node-shell-quote/releases)
- [Changelog](https://github.com/substack/node-shell-quote/blob/master/CHANGELOG.md)
- [Commits](https://github.com/substack/node-shell-quote/compare/v1.7.2...1.7.3)

---
updated-dependencies:
- dependency-name: shell-quote
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-08 04:06:41 +00:00
dependabot[bot]
824f995209 Bump @types/webpack-env from 1.16.2 to 1.16.3
Bumps [@types/webpack-env](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/webpack-env) from 1.16.2 to 1.16.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/webpack-env)

---
updated-dependencies:
- dependency-name: "@types/webpack-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-08 04:05:31 +00:00
Eugene Pankov
8a0a9700aa added missing exports 2021-11-07 11:40:52 +01:00
Eugeny
7cd51d5611 Merge pull request #4869 from Eugeny/dependabot/npm_and_yarn/sentry/cli-1.71.0
Bump @sentry/cli from 1.67.2 to 1.71.0
2021-11-07 10:08:14 +01:00
Eugeny
eda7b42edb Merge pull request #4822 from Eugeny/dependabot/npm_and_yarn/types/js-yaml-4.0.4
Bump @types/js-yaml from 4.0.2 to 4.0.4
2021-11-07 10:07:38 +01:00
Eugeny
981ab25a91 Merge pull request #4695 from Eugeny/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.33.0
Bump @typescript-eslint/eslint-plugin from 4.31.1 to 4.33.0
2021-11-07 10:07:23 +01:00
Eugeny
f0dded8eb5 Merge pull request #4624 from Eugeny/dependabot/npm_and_yarn/tabby-ssh/ansi-regex-6.0.1
Bump ansi-regex from 6.0.0 to 6.0.1 in /tabby-ssh
2021-11-07 10:06:54 +01:00
Eugeny
1f0e7e44cc Merge pull request #4656 from Eugeny/dependabot/npm_and_yarn/app/yargs-17.2.1
Bump yargs from 17.1.0 to 17.2.1 in /app
2021-11-07 10:06:19 +01:00
Eugeny
95c31d99c0 Merge pull request #4750 from Eugeny/dependabot/npm_and_yarn/webpack-bundle-analyzer-4.5.0
Bump webpack-bundle-analyzer from 4.4.2 to 4.5.0
2021-11-07 10:05:47 +01:00
Eugeny
e3db0dfbab Merge pull request #4799 from Eugeny/dependabot/npm_and_yarn/tabby-plugin-manager/types/semver-7.3.9
Bump @types/semver from 7.3.7 to 7.3.9 in /tabby-plugin-manager
2021-11-07 10:00:58 +01:00
Eugeny
559ebf0852 Merge pull request #4804 from Eugeny/dependabot/npm_and_yarn/app/node-abi-3.3.0
Bump node-abi from 3.2.0 to 3.3.0 in /app
2021-11-07 10:00:45 +01:00
Eugeny
0e8abae46f Merge pull request #4820 from Eugeny/dependabot/npm_and_yarn/typedoc-0.22.7
Bump typedoc from 0.22.3 to 0.22.7
2021-11-07 10:00:36 +01:00
dependabot[bot]
bfe034d77f Bump @types/js-yaml from 4.0.2 to 4.0.4
Bumps [@types/js-yaml](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/js-yaml) from 4.0.2 to 4.0.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/js-yaml)

---
updated-dependencies:
- dependency-name: "@types/js-yaml"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 22:03:06 +00:00
dependabot[bot]
50a1656f61 Bump webpack-bundle-analyzer from 4.4.2 to 4.5.0
Bumps [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer) from 4.4.2 to 4.5.0.
- [Release notes](https://github.com/webpack-contrib/webpack-bundle-analyzer/releases)
- [Changelog](https://github.com/webpack-contrib/webpack-bundle-analyzer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/webpack-bundle-analyzer/compare/v4.4.2...v4.5.0)

---
updated-dependencies:
- dependency-name: webpack-bundle-analyzer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 22:01:57 +00:00
dependabot[bot]
f70780f618 Bump typedoc from 0.22.3 to 0.22.7
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.22.3 to 0.22.7.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.22.3...v0.22.7)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 21:59:02 +00:00
dependabot[bot]
712bd0cd04 Bump @types/semver from 7.3.7 to 7.3.9 in /tabby-plugin-manager
Bumps [@types/semver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver) from 7.3.7 to 7.3.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/semver)

---
updated-dependencies:
- dependency-name: "@types/semver"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 21:58:42 +00:00
Eugene Pankov
123d544cd1 removed old dep 2021-11-06 22:57:45 +01:00
dependabot[bot]
414966732c Bump node-abi from 3.2.0 to 3.3.0 in /app
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/main/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v3.2.0...v3.3.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 21:53:41 +00:00
dependabot[bot]
58de0773f4 Bump yargs from 17.1.0 to 17.2.1 in /app
Bumps [yargs](https://github.com/yargs/yargs) from 17.1.0 to 17.2.1.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v17.1.0...v17.2.1)

---
updated-dependencies:
- dependency-name: yargs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 21:53:20 +00:00
Eugene Pankov
22505195ec Merge branch 'master' of github.com:Eugeny/tabby 2021-11-06 22:51:57 +01:00
Eugeny
ea2c9b3d9f Merge pull request #4877 from Eugeny/dependabot/npm_and_yarn/css-loader-6.5.1 2021-11-06 22:51:48 +01:00
Eugeny
f39405640f Merge pull request #4524 from Eugeny/dependabot/npm_and_yarn/app/tar-4.4.19 2021-11-06 22:51:10 +01:00
Eugeny
436b366743 Merge pull request #4823 from Eugeny/dependabot/npm_and_yarn/utils-decorators-1.10.4 2021-11-06 22:50:10 +01:00
Eugeny
c3719f896d Merge pull request #4534 from Eugeny/dependabot/npm_and_yarn/npmlog-5.0.1 2021-11-06 22:49:43 +01:00
dependabot[bot]
654e5f4453 Bump tar from 4.4.13 to 4.4.19 in /app
Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.19.
- [Release notes](https://github.com/npm/node-tar/releases)
- [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.19)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 21:49:03 +00:00
Eugeny
fa54deb091 Merge pull request #4796 from Eugeny/dependabot/npm_and_yarn/webpack-cli-4.9.1 2021-11-06 22:49:01 +01:00
Eugeny
346dbdf7bb Merge pull request #4848 from Eugeny/dependabot/npm_and_yarn/sass-loader-12.3.0 2021-11-06 22:48:38 +01:00
Eugeny
f246eb7736 Merge pull request #4861 from Eugeny/dependabot/npm_and_yarn/app/serialport-9.2.5 2021-11-06 22:48:16 +01:00
Eugeny
f7454c8064 Merge pull request #4862 from Eugeny/dependabot/npm_and_yarn/webpack-5.61.0 2021-11-06 22:48:10 +01:00
Eugene Pankov
271f8d155c removed old dep 2021-11-06 22:46:55 +01:00
Eugene Pankov
6b93c2609e swallow ligature related font parsing errors - fixes #4840 2021-11-06 22:42:49 +01:00
Eugene Pankov
2c342a7d44 removed old ligature / webgl warning 2021-11-06 22:14:56 +01:00
dependabot[bot]
5b18f88b90 Bump css-loader from 6.2.0 to 6.5.1
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.2.0 to 6.5.1.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.2.0...v6.5.1)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 15:20:27 +00:00
dependabot[bot]
d0ae5e42f4 Bump @sentry/cli from 1.67.2 to 1.71.0
Bumps [@sentry/cli](https://github.com/getsentry/sentry-cli) from 1.67.2 to 1.71.0.
- [Release notes](https://github.com/getsentry/sentry-cli/releases)
- [Changelog](https://github.com/getsentry/sentry-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-cli/compare/1.67.2...1.71.0)

---
updated-dependencies:
- dependency-name: "@sentry/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 15:19:27 +00:00
Eugene Pankov
59d642434a fixed "infinite" transfer speed display 2021-11-06 16:15:09 +01:00
Eugene Pankov
f2d6931f1a icon updates 2021-11-06 15:56:43 +01:00
Eugene Pankov
2fb73b0951 updated FontAwesome 2021-11-06 13:55:47 +01:00
Eugene Pankov
f3312852a9 refreshed search panel design 2021-11-06 13:41:20 +01:00
Eugene Pankov
781a4a76c0 bumped xterm 2021-11-06 10:31:51 +01:00
Eugeny
475ff14f78 Update codeql-analysis.yml 2021-11-02 10:30:28 +01:00
dependabot[bot]
b6698138b6 Bump webpack from 5.57.1 to 5.61.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.57.1 to 5.61.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.57.1...v5.61.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 04:09:42 +00:00
dependabot[bot]
6251d7737c Bump serialport from 9.2.1 to 9.2.5 in /app
Bumps [serialport](https://github.com/serialport/node-serialport) from 9.2.1 to 9.2.5.
- [Release notes](https://github.com/serialport/node-serialport/releases)
- [Changelog](https://github.com/serialport/node-serialport/blob/master/CHANGELOG.md)
- [Commits](https://github.com/serialport/node-serialport/compare/@serialport/bindings@9.2.1...v9.2.5)

---
updated-dependencies:
- dependency-name: serialport
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-01 04:03:34 +00:00
Eugeny
06e700c6a2 Create codeql-analysis.yml 2021-10-31 22:54:43 +01:00
Eugene Pankov
ff65e2abb4 Update README.md 2021-10-31 22:52:47 +01:00
Eugene Pankov
a16c397843 bumped plugins 2021-10-31 18:21:04 +01:00
Eugene Pankov
da2ba0ec49 lint 2021-10-31 17:38:30 +01:00
Eugene Pankov
9d8e19622f avoid multiple parallel passphrase prompts - fixes #4811 2021-10-31 16:18:49 +01:00
Eugene Pankov
f820a2a631 fixed scrollbar positioning on resize - fixes #4854 2021-10-31 10:55:37 +01:00
Eugene Pankov
da089fc46a now DEFINITELY re-added AES-GCM 2021-10-29 09:13:51 +02:00
Eugene Pankov
937243a9d9 honor default ssh username for the quick connect box - fixes #4663 2021-10-28 09:55:54 +02:00
Eugene Pankov
a2de29e5ac lint 2021-10-28 09:55:20 +02:00
Eugene Pankov
25cdf6d6bf fixed transfers dropdown being clipped by the terminal - fixes #4688 2021-10-28 09:53:46 +02:00
Eugene Pankov
b5cf66c232 prevent Cmd-R from reloading in production - fixes #4772 2021-10-28 09:26:55 +02:00
Eugene Pankov
7be3904123 make titlebar double-click maximize window on macOS - fixes #4754 2021-10-28 09:26:32 +02:00
Eugene Pankov
3109ea0220 re-added AES-GCM ciphers - fixes #4849, fixes #4846, fixes #4844 2021-10-28 09:08:06 +02:00
dependabot[bot]
63297cb6a6 Bump sass-loader from 12.1.0 to 12.3.0
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 12.1.0 to 12.3.0.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v12.1.0...v12.3.0)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-28 04:05:58 +00:00
Eugene Pankov
ed480a2954 ssh: re-allow aes*-gcm ciphers by default 2021-10-27 13:04:03 +02:00
Eugene Pankov
3da6f6ffa6 bump 2021-10-27 13:03:48 +02:00
Eugene Pankov
881d5d599d re-added sha1 patch for web 2021-10-25 09:13:57 +02:00
dependabot[bot]
b0b4614610 Bump utils-decorators from 1.10.2 to 1.10.4
Bumps [utils-decorators](https://github.com/vlio20/utils-decorators) from 1.10.2 to 1.10.4.
- [Release notes](https://github.com/vlio20/utils-decorators/releases)
- [Changelog](https://github.com/vlio20/utils-decorators/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vlio20/utils-decorators/commits)

---
updated-dependencies:
- dependency-name: utils-decorators
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-25 04:06:48 +00:00
Eugene Pankov
f0e96b5f8b settings UI tweaks 2021-10-24 22:50:21 +02:00
Eugene Pankov
6fed2cb9c0 ssh: allow overriding X11 display - fixes #3975 2021-10-24 22:34:59 +02:00
Eugene Pankov
8e2ffa1654 fixed X11 port detection for UNIX sockets - fixes #4818, fixes #2003 2021-10-24 22:23:50 +02:00
Eugene Pankov
c25d4bd768 ui tweaks 2021-10-23 19:17:43 +02:00
Eugene Pankov
9f8f2966d9 fixed #4794 - env var expansion in profiles 2021-10-23 19:14:33 +02:00
Eugene Pankov
5c976948dd merge env vars case insensitively (fixes #4778) 2021-10-23 10:04:44 +02:00
Eugene Pankov
ff4b137088 word 2021-10-23 09:53:43 +02:00
Eugene Pankov
e3214e38d3 disable preventAccidentalTabClosure by default 2021-10-22 22:00:32 +02:00
dependabot[bot]
4b1553abc7 Bump webpack-cli from 4.8.0 to 4.9.1
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 4.8.0 to 4.9.1.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@4.8.0...webpack-cli@4.9.1)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-20 04:04:52 +00:00
Eugene Pankov
2fc457dd78 handle cancelled username modal 2021-10-19 22:39:10 +02:00
Eugeny
3621ea934c Merge pull request #4731 from Eugeny/dependabot/npm_and_yarn/ssh2-1.5.0 2021-10-19 19:46:14 +02:00
Eugeny
b275dac08a Merge pull request #4757 from Eugeny/dependabot/npm_and_yarn/app/windows-process-tree-0.3.2 2021-10-19 19:44:22 +02:00
Eugeny
47e1bfc810 Merge pull request #4779 from tainoNZ/master 2021-10-18 14:32:37 +02:00
Eugeny
37e9ba48b1 Merge pull request #4788 from Eugeny/all-contributors/add-tainoNZ 2021-10-18 13:54:41 +02:00
allcontributors[bot]
a54d537536 docs: update .all-contributorsrc [skip ci] 2021-10-18 11:54:25 +00:00
allcontributors[bot]
0c2b221c06 docs: update README.md [skip ci] 2021-10-18 11:54:24 +00:00
Eugene Pankov
e3375741af lint 2021-10-18 13:53:27 +02:00
Aaron Davison
d82a88bcc6 added additional options for vault remember password 2021-10-18 16:00:17 +13:00
Eugeny
f7cab00e4d Merge pull request #4776 from Eugeny/all-contributors/add-Me1onRind 2021-10-16 23:08:53 +02:00
Eugeny
7f733b8029 Merge pull request #4775 from Me1onRind/add_duplicate_tab_hotkey 2021-10-16 23:08:35 +02:00
allcontributors[bot]
d6291c8af4 docs: update .all-contributorsrc [skip ci] 2021-10-16 21:08:35 +00:00
allcontributors[bot]
563852c024 docs: update README.md [skip ci] 2021-10-16 21:08:34 +00:00
Me1onRind
1941d9b748 add duplicate tab hotkey 2021-10-16 22:49:03 +08:00
dependabot[bot]
3473be99bf Bump windows-process-tree from 0.3.0 to 0.3.2 in /app
Bumps [windows-process-tree](https://github.com/Microsoft/vscode-windows-process-tree) from 0.3.0 to 0.3.2.
- [Release notes](https://github.com/Microsoft/vscode-windows-process-tree/releases)
- [Commits](https://github.com/Microsoft/vscode-windows-process-tree/compare/v0.3.0...0.3.2)

---
updated-dependencies:
- dependency-name: windows-process-tree
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-14 04:01:22 +00:00
dependabot[bot]
10cb6a81c7 Bump ssh2 from 1.4.0 to 1.5.0
Bumps [ssh2](https://github.com/mscdex/ssh2) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/mscdex/ssh2/releases)
- [Commits](https://github.com/mscdex/ssh2/compare/v1.4.0...v1.5.0)

---
updated-dependencies:
- dependency-name: ssh2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-11 04:05:53 +00:00
dependabot[bot]
cb65906290 Bump @typescript-eslint/eslint-plugin from 4.31.1 to 4.33.0
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.31.1 to 4.33.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.33.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-07 21:51:29 +00:00
dependabot[bot]
7a83d85884 Bump npmlog from 5.0.0 to 5.0.1
Bumps [npmlog](https://github.com/npm/npmlog) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/npm/npmlog/releases)
- [Changelog](https://github.com/npm/npmlog/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/npmlog/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: npmlog
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-07 21:51:14 +00:00
Eugeny
35f0d6908a Merge pull request #4666 from Eugeny/dependabot/npm_and_yarn/node-abi-3.2.0 2021-10-07 23:47:20 +02:00
Eugeny
2c2d100c27 Merge pull request #4698 from Eugeny/dependabot/npm_and_yarn/typescript-eslint/parser-4.33.0 2021-10-07 23:47:02 +02:00
Eugeny
ab623a7a91 Merge pull request #4708 from Eugeny/dependabot/npm_and_yarn/app/angular/cdk-12.2.9 2021-10-07 23:46:56 +02:00
Eugeny
e2e606602b Merge pull request #4704 from Eugeny/dependabot/npm_and_yarn/core-js-3.18.2 2021-10-07 23:46:36 +02:00
Eugeny
cd3149b601 Merge pull request #4664 from Eugeny/dependabot/npm_and_yarn/app/node-abi-3.2.0 2021-10-07 23:45:56 +02:00
Eugeny
50748db958 Merge pull request #4697 from Eugeny/dependabot/npm_and_yarn/slugify-1.6.1 2021-10-07 23:45:33 +02:00
Eugeny
8049dc7332 Merge pull request #4705 from Eugeny/dependabot/npm_and_yarn/webpack-5.57.1 2021-10-07 23:45:28 +02:00
Eugeny
f468796877 Merge pull request #4707 from Eugeny/dependabot/npm_and_yarn/app/rxjs-7.4.0 2021-10-07 23:45:07 +02:00
Eugene Pankov
c093780230 Merge branch 'master' of https://github.com/Eugeny/tabby 2021-10-07 21:58:36 +02:00
Eugene Pankov
c67e44cc9d admin tabs: more reliable resize detection 2021-10-07 21:57:33 +02:00
dependabot[bot]
db45d0c87a Bump @angular/cdk from 12.2.0 to 12.2.9 in /app
Bumps [@angular/cdk](https://github.com/angular/components) from 12.2.0 to 12.2.9.
- [Release notes](https://github.com/angular/components/releases)
- [Changelog](https://github.com/angular/components/blob/master/CHANGELOG.md)
- [Commits](https://github.com/angular/components/compare/12.2.0...12.2.9)

---
updated-dependencies:
- dependency-name: "@angular/cdk"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-07 04:02:32 +00:00
dependabot[bot]
4107a01a01 Bump rxjs from 7.2.0 to 7.4.0 in /app
Bumps [rxjs](https://github.com/reactivex/rxjs) from 7.2.0 to 7.4.0.
- [Release notes](https://github.com/reactivex/rxjs/releases)
- [Changelog](https://github.com/ReactiveX/rxjs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reactivex/rxjs/compare/7.2.0...7.4.0)

---
updated-dependencies:
- dependency-name: rxjs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-07 04:02:12 +00:00
dependabot[bot]
5e378844a1 Bump webpack from 5.52.1 to 5.57.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.52.1 to 5.57.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.52.1...v5.57.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-06 04:05:57 +00:00
dependabot[bot]
623496ff52 Bump core-js from 3.15.2 to 3.18.2
Bumps [core-js](https://github.com/zloirock/core-js) from 3.15.2 to 3.18.2.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/compare/v3.15.2...v3.18.2)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-06 04:05:29 +00:00
dependabot[bot]
5082814023 Bump @typescript-eslint/parser from 4.28.5 to 4.33.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 4.28.5 to 4.33.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.33.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-05 04:05:02 +00:00
dependabot[bot]
9836b7aefb Bump slugify from 1.6.0 to 1.6.1
Bumps [slugify](https://github.com/simov/slugify) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/simov/slugify/releases)
- [Commits](https://github.com/simov/slugify/compare/v1.6.0...v1.6.1)

---
updated-dependencies:
- dependency-name: slugify
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-05 04:04:43 +00:00
Eugene Pankov
cb9681ef41 Update build.yml 2021-10-04 15:46:25 +02:00
Eugene Pankov
7527b8ac2d bumped electron 2021-10-04 13:01:11 +02:00
Eugene Pankov
da081ba706 bumped ci ubuntu 2021-10-04 12:37:44 +02:00
Eugene Pankov
e6063da813 Merge branch 'master' of github.com:Eugeny/tabby 2021-10-04 12:34:34 +02:00
Eugene Pankov
e6b4cb94bd bumped electron-builder 2021-10-04 12:32:09 +02:00
Eugene Pankov
56b843c007 bumped electron 2021-10-04 07:13:59 +02:00
Eugene Pankov
a26b30f0bc Update selectorModal.component.ts 2021-10-04 07:13:50 +02:00
Eugene Pankov
4a1d8cdd0d fixed admin tabs on windows - fixes #4669, fixes #4601, fixed #4594 2021-10-01 18:56:28 +02:00
dependabot[bot]
7a0920b87c Bump node-abi from 3.1.0 to 3.2.0
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/master/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-28 04:04:19 +00:00
dependabot[bot]
26199ebb76 Bump node-abi from 3.1.0 to 3.2.0 in /app
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/master/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-28 04:01:38 +00:00
Eugene Pankov
e3e01558b2 less sync ipc 2021-09-25 18:11:35 +02:00
Eugene Pankov
1852486818 blacklisted terminus-scrollbar plugin 2021-09-25 17:37:45 +02:00
Eugene Pankov
d7ea394a15 update api docs links 2021-09-25 01:01:31 +02:00
Eugene Pankov
c4a1d8aa56 setup docs deployment 2021-09-25 00:36:21 +02:00
Eugeny
be39591c54 Merge pull request #4644 from Eugeny/dependabot/npm_and_yarn/node-abi-3.1.0 2021-09-25 00:10:56 +02:00
Eugeny
94320265b8 Merge pull request #4642 from Eugeny/dependabot/npm_and_yarn/app/node-abi-3.1.0 2021-09-25 00:10:50 +02:00
Eugene Pankov
b94a943694 ui tweaks 2021-09-25 00:07:33 +02:00
Eugene Pankov
1674ec1ebf pull utils-decorators dep up 2021-09-24 23:59:34 +02:00
Eugene Pankov
3923e46f22 fixed #4586 - fix disableDynamicTabTitle to work with switch-profile 2021-09-24 23:55:19 +02:00
Eugene Pankov
ed71b499b9 automatically trim trailing newline when pasting 2021-09-24 23:43:57 +02:00
Eugene Pankov
924fb90220 fixed #4537 - macos: focus app when showing a new window 2021-09-24 23:41:19 +02:00
Eugene Pankov
00191763cf fixed #4629 - missing activity highlight 2021-09-24 23:29:41 +02:00
Eugene Pankov
555a21d648 fixed #4630 - added theme setting for cursor accent color 2021-09-24 23:12:17 +02:00
Eugene Pankov
9d88db83ee fixed #3961 - broadcast more actions when "focus all panes" is active 2021-09-24 23:05:05 +02:00
dependabot[bot]
2bdecc899d Bump node-abi from 3.0.0 to 3.1.0
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/master/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-24 04:04:06 +00:00
dependabot[bot]
ab8992f0aa Bump node-abi from 3.0.0 to 3.1.0 in /app
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/master/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-24 04:02:03 +00:00
dependabot[bot]
31b203f81a Bump ansi-regex from 6.0.0 to 6.0.1 in /tabby-ssh
Bumps [ansi-regex](https://github.com/chalk/ansi-regex) from 6.0.0 to 6.0.1.
- [Release notes](https://github.com/chalk/ansi-regex/releases)
- [Commits](https://github.com/chalk/ansi-regex/compare/v6.0.0...v6.0.1)

---
updated-dependencies:
- dependency-name: ansi-regex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-20 21:34:28 +00:00
Eugeny
e474ad573a Merge pull request #4577 from Eugeny/dependabot/npm_and_yarn/app/source-map-support-0.5.20
Bump source-map-support from 0.5.19 to 0.5.20 in /app
2021-09-20 23:33:31 +02:00
Eugene Pankov
4c6227fccf fixed #4608 - make ssh username setting optional 2021-09-20 23:28:21 +02:00
Eugene Pankov
02b7b12ea5 added OSC52 support (remote copy) 2021-09-19 17:02:42 +02:00
Eugene Pankov
d319a54fee show recent profiles in the start page - fixes #4585 2021-09-19 13:35:26 +02:00
Eugene Pankov
397a93bd6f a bit more reliable hotkey handling 2021-09-17 22:09:35 +02:00
Eugene Pankov
8d3f4137a1 don't copy text if empty 2021-09-17 00:23:30 +02:00
Eugene Pankov
3a615a070b Merge branch 'master' of github.com:Eugeny/tabby 2021-09-17 00:23:15 +02:00
Eugene Pankov
95a04788e5 hotkey fixes 2021-09-17 00:23:12 +02:00
Eugene Pankov
60a1a1f21c telnet command sequence fixes 2021-09-17 00:23:04 +02:00
Eugeny
4ad5627823 Merge pull request #4532 from Eugeny/dependabot/npm_and_yarn/electron-notarize-1.1.1 2021-09-16 23:45:50 +02:00
Eugeny
5a83621c64 Merge pull request #4541 from Eugeny/dependabot/npm_and_yarn/app/serialport-9.2.1 2021-09-16 23:45:41 +02:00
Eugeny
ed6d2fc005 Merge pull request #4587 from Eugeny/dependabot/npm_and_yarn/webpack-5.52.1 2021-09-16 23:45:31 +02:00
Eugeny
63f05a7388 Merge pull request #4588 from Eugeny/dependabot/npm_and_yarn/typedoc-0.22.3 2021-09-16 23:45:16 +02:00
Eugeny
a687377d16 Merge pull request #4596 from Eugeny/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-4.31.1 2021-09-16 23:44:24 +02:00
Eugeny
9dc8f66153 Merge pull request #4606 from Eugeny/dependabot/npm_and_yarn/sentry/electron-2.5.4 2021-09-16 23:43:15 +02:00
dependabot[bot]
e155174bd7 Bump @sentry/electron from 2.5.2 to 2.5.4
Bumps [@sentry/electron](https://github.com/getsentry/sentry-electron) from 2.5.2 to 2.5.4.
- [Release notes](https://github.com/getsentry/sentry-electron/releases)
- [Changelog](https://github.com/getsentry/sentry-electron/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-electron/compare/2.5.2...2.5.4)

---
updated-dependencies:
- dependency-name: "@sentry/electron"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-16 04:03:15 +00:00
dependabot[bot]
6c06e24b48 Bump @typescript-eslint/eslint-plugin from 4.29.0 to 4.31.1
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.29.0 to 4.31.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.31.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-14 04:04:27 +00:00
Eugene Pankov
a99fcbb71d shortcutName 2021-09-13 09:53:53 +02:00
dependabot[bot]
95b8b0b4dd Bump typedoc from 0.21.6 to 0.22.3
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.21.6 to 0.22.3.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.21.6...v0.22.3)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-13 04:07:24 +00:00
dependabot[bot]
c47fe51422 Bump webpack from 5.51.1 to 5.52.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.51.1 to 5.52.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.51.1...v5.52.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-13 04:05:04 +00:00
dependabot[bot]
25b3aa5850 Bump source-map-support from 0.5.19 to 0.5.20 in /app
Bumps [source-map-support](https://github.com/evanw/node-source-map-support) from 0.5.19 to 0.5.20.
- [Release notes](https://github.com/evanw/node-source-map-support/releases)
- [Commits](https://github.com/evanw/node-source-map-support/compare/v0.5.19...v0.5.20)

---
updated-dependencies:
- dependency-name: source-map-support
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-10 04:01:52 +00:00
Eugene Pankov
a87d8871ad bumped xterm, check bracketedPaste state via terminal modes 2021-09-09 23:07:18 +02:00
Eugene Pankov
d6fa3b02a9 ssh: reworked keyboard-interactive auth UI - fixes #4540 2021-09-09 22:43:39 +02:00
Eugene Pankov
8a514fff17 lint 2021-09-09 22:17:15 +02:00
Eugene Pankov
00b43e88dc fixed saving profiles - fixes #4567, fixes #4330 2021-09-09 22:02:32 +02:00
Eugeny
7048c2c10c Merge pull request #4574 from Eugeny/all-contributors/add-BoYeonJang 2021-09-09 12:00:51 +02:00
Eugene Pankov
3f64789c55 Update README.md 2021-09-09 12:00:39 +02:00
Eugene Pankov
38e7f7f1b6 Update README.md 2021-09-09 12:00:14 +02:00
Eugene Pankov
b337bc5cfd word 2021-09-09 11:56:56 +02:00
allcontributors[bot]
4ac5daed8c docs: update .all-contributorsrc [skip ci] 2021-09-09 09:56:42 +00:00
allcontributors[bot]
82b724174c docs: update README.md [skip ci] 2021-09-09 09:56:41 +00:00
Eugeny
e7ab2bcffd Merge pull request #4548 from BoYeonJang/Korean_translatio 2021-09-09 11:56:23 +02:00
장보연
3518c74508 Update README.md in Korean 2021-09-07 10:21:50 +09:00
Eugene Pankov
a9515d38d1 bumped plugins 2021-09-06 23:38:58 +02:00
Eugene Pankov
e32bce29e0 mention Clippy plugin 2021-09-06 23:38:55 +02:00
Eugeny
48ca696b0b Merge pull request #4512 from Eugeny/dependabot/npm_and_yarn/tabby-ssh/types/ssh2-0.5.48 2021-09-06 14:57:39 +02:00
Eugeny
7bd9a887a6 Merge pull request #4543 from Eugeny/dependabot/npm_and_yarn/ssh2-1.4.0
Bump ssh2 from 1.3.0 to 1.4.0
2021-09-06 14:56:11 +02:00
dependabot[bot]
7bc66e9382 Bump ssh2 from 1.3.0 to 1.4.0
Bumps [ssh2](https://github.com/mscdex/ssh2) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/mscdex/ssh2/releases)
- [Commits](https://github.com/mscdex/ssh2/compare/v1.3.0...v1.4.0)

---
updated-dependencies:
- dependency-name: ssh2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 04:06:52 +00:00
dependabot[bot]
ff3feb61bc Bump serialport from 9.2.0 to 9.2.1 in /app
Bumps [serialport](https://github.com/serialport/node-serialport) from 9.2.0 to 9.2.1.
- [Release notes](https://github.com/serialport/node-serialport/releases)
- [Changelog](https://github.com/serialport/node-serialport/blob/master/CHANGELOG.md)
- [Commits](https://github.com/serialport/node-serialport/compare/@serialport/bindings@9.2.0...@serialport/bindings@9.2.1)

---
updated-dependencies:
- dependency-name: serialport
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-06 04:01:41 +00:00
dependabot[bot]
2cb98d65da Bump electron-notarize from 1.0.1 to 1.1.1
Bumps [electron-notarize](https://github.com/electron/electron-notarize) from 1.0.1 to 1.1.1.
- [Release notes](https://github.com/electron/electron-notarize/releases)
- [Changelog](https://github.com/electron/electron-notarize/blob/master/.releaserc.json)
- [Commits](https://github.com/electron/electron-notarize/compare/v1.0.1...v1.1.1)

---
updated-dependencies:
- dependency-name: electron-notarize
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-03 04:04:24 +00:00
Eugene Pankov
b7ac65fce0 added msys2 built-in profiles - fixes #2962 2021-09-02 23:52:31 +02:00
Eugene Pankov
601fff454d auto-search powershell $PATH 2021-09-02 23:24:29 +02:00
Eugene Pankov
730084425e fixed config sync host URL 2021-09-02 23:07:16 +02:00
Eugene Pankov
646094f210 Update README.md 2021-09-02 23:07:09 +02:00
Eugene Pankov
d5c9e1e9f6 keep a backup of the config file 2021-09-02 22:40:01 +02:00
Eugene Pankov
8d0bcb94b1 better separate profiles by group - fixes #4517 2021-09-02 22:30:21 +02:00
Eugene Pankov
f681f0e50a added scrolling to transfers menu 2021-09-02 19:42:17 +02:00
Eugeny
2185f59111 Merge pull request #4530 from Eugeny/dependabot/npm_and_yarn/electron-rebuild-3.2.3 2021-09-02 12:50:09 +02:00
Eugeny
c5ba0b1e42 Merge pull request #4525 from Eugeny/dependabot/npm_and_yarn/app/node-abi-3.0.0
Bump node-abi from 2.30.0 to 3.0.0 in /app
2021-09-02 12:45:55 +02:00
Eugeny
b522284834 Merge pull request #4527 from Eugeny/dependabot/npm_and_yarn/macos-release-3.0.1
Bump macos-release from 3.0.0 to 3.0.1
2021-09-02 12:45:49 +02:00
Eugeny
3e2adfb0b8 Merge pull request #4528 from Eugeny/dependabot/npm_and_yarn/node-abi-3.0.0 2021-09-02 12:45:40 +02:00
dependabot[bot]
1a6f6759b9 Bump electron-rebuild from 3.2.0 to 3.2.3
Bumps [electron-rebuild](https://github.com/electron/electron-rebuild) from 3.2.0 to 3.2.3.
- [Release notes](https://github.com/electron/electron-rebuild/releases)
- [Changelog](https://github.com/electron/electron-rebuild/blob/master/.releaserc.json)
- [Commits](https://github.com/electron/electron-rebuild/compare/v3.2.0...v3.2.3)

---
updated-dependencies:
- dependency-name: electron-rebuild
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-02 04:09:16 +00:00
dependabot[bot]
43a67bcd9d Bump node-abi from 2.30.0 to 3.0.0
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 2.30.0 to 3.0.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/master/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v2.30.0...v3.0.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-02 04:05:53 +00:00
dependabot[bot]
5f7621cd8c Bump macos-release from 3.0.0 to 3.0.1
Bumps [macos-release](https://github.com/sindresorhus/macos-release) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/sindresorhus/macos-release/releases)
- [Commits](https://github.com/sindresorhus/macos-release/compare/v3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: macos-release
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-02 04:04:33 +00:00
dependabot[bot]
5e30a0b250 Bump node-abi from 2.30.0 to 3.0.0 in /app
Bumps [node-abi](https://github.com/lgeiger/node-abi) from 2.30.0 to 3.0.0.
- [Release notes](https://github.com/lgeiger/node-abi/releases)
- [Changelog](https://github.com/electron/node-abi/blob/master/.releaserc.json)
- [Commits](https://github.com/lgeiger/node-abi/compare/v2.30.0...v3.0.0)

---
updated-dependencies:
- dependency-name: node-abi
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-02 04:01:27 +00:00
Eugene Pankov
8f02072762 Update README.md 2021-09-01 11:03:07 +02:00
dependabot[bot]
79fdba44c6 Bump @types/ssh2 from 0.5.47 to 0.5.48 in /tabby-ssh
Bumps [@types/ssh2](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ssh2) from 0.5.47 to 0.5.48.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ssh2)

---
updated-dependencies:
- dependency-name: "@types/ssh2"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-31 04:20:16 +00:00
Eugene Pankov
efe0bad650 publish to repo on tags only 2021-08-29 18:39:01 +02:00
Eugene Pankov
a244362935 Update README.md 2021-08-29 18:36:47 +02:00
Eugene Pankov
924f5f13b1 Update build.yml 2021-08-29 17:11:51 +02:00
Eugeny
8f8dbd2023 Update build.yml 2021-08-29 16:47:23 +02:00
Eugeny
952d31a7d5 Update build.yml 2021-08-29 16:46:26 +02:00
Eugeny
f6e90a3121 Update build.yml 2021-08-29 16:21:48 +02:00
Eugeny
2818af7402 Update build.yml 2021-08-28 22:51:16 +02:00
Eugene Pankov
9a36bdb9d1 added packagecloud uploads 2021-08-28 20:27:56 +02:00
Eugene Pankov
033468b0b0 prevent string_decoder from mangling non-utf output - fixes #4025, fixes #4178, fixes #4373, fixes #4282 2021-08-28 20:15:20 +02:00
Eugene Pankov
e6d83c6c58 fixed terminal padding with toolbar pinned 2021-08-28 17:07:32 +02:00
Eugene Pankov
49d58c69bc sftp: handle incorrect reported CWD 2021-08-28 17:07:23 +02:00
Eugene Pankov
67ff355ca3 Merge branch 'master' of github.com:Eugeny/tabby 2021-08-28 16:42:14 +02:00
Eugene Pankov
5b0a7b39b7 emergency brake for spinner output 2021-08-28 16:42:11 +02:00
Eugene Pankov
4ff5dea346 fixed #768 again 2021-08-28 14:26:46 +02:00
Eugene Pankov
4f244a126c Merge branch 'master' of github.com:Eugeny/tabby 2021-08-27 20:46:52 +02:00
Eugeny
1926dffb7b Merge pull request #4487 from Eugeny/dependabot/npm_and_yarn/sentry/electron-2.5.2
Bump @sentry/electron from 2.5.1 to 2.5.2
2021-08-27 20:46:47 +02:00
Eugene Pankov
8642725b9f possibly fixed proxy command issues 2021-08-27 20:41:48 +02:00
Eugene Pankov
7252f80573 fixed #4483 - repeat keydown events affecting hotkeys 2021-08-27 20:02:32 +02:00
Eugene Pankov
2d331332a4 ui tweaks 2021-08-27 19:56:09 +02:00
Eugene Pankov
f36e2551b5 moved recentProfiles from config to localStorage 2021-08-27 19:54:20 +02:00
Eugene Pankov
bcf09c59e3 fixed app not quitting completely on cmd-q 2021-08-27 18:26:57 +02:00
Eugene Pankov
b84c41d668 Merge branch 'master' of github.com:Eugeny/tabby 2021-08-27 18:12:19 +02:00
dependabot[bot]
2fbbb18bd9 Bump @sentry/electron from 2.5.1 to 2.5.2
Bumps [@sentry/electron](https://github.com/getsentry/sentry-electron) from 2.5.1 to 2.5.2.
- [Release notes](https://github.com/getsentry/sentry-electron/releases)
- [Changelog](https://github.com/getsentry/sentry-electron/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-electron/compare/2.5.1...2.5.2)

---
updated-dependencies:
- dependency-name: "@sentry/electron"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-26 04:05:38 +00:00
Eugeny
d48c2ddb36 Merge pull request #4479 from Eugeny/dependabot/npm_and_yarn/tabby-settings/marked-3.0.2
Bump marked from 2.1.3 to 3.0.2 in /tabby-settings
2021-08-25 22:07:14 +02:00
Eugeny
2b55e72be2 Merge pull request #4429 from Eugeny/dependabot/npm_and_yarn/app/path-parse-1.0.7
Bump path-parse from 1.0.6 to 1.0.7 in /app
2021-08-25 22:06:21 +02:00
Eugeny
b21fcf8f2b Merge pull request #4392 from Eugeny/dependabot/npm_and_yarn/path-parse-1.0.7 2021-08-25 22:06:06 +02:00
Eugeny
02a99e8118 Merge pull request #4447 from Eugeny/dependabot/npm_and_yarn/typedoc-0.21.6
Bump typedoc from 0.21.5 to 0.21.6
2021-08-25 22:05:59 +02:00
Eugene Pankov
fa66c96d60 #768 - fixed altgraph modifier handling 2021-08-25 22:02:57 +02:00
dependabot[bot]
888c8217ca Bump marked from 2.1.3 to 3.0.2 in /tabby-settings
Bumps [marked](https://github.com/markedjs/marked) from 2.1.3 to 3.0.2.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/release.config.js)
- [Commits](https://github.com/markedjs/marked/compare/v2.1.3...v3.0.2)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-25 04:24:35 +00:00
Eugene Pankov
de3aab4996 web related fixes 2021-08-25 01:25:40 +02:00
Eugene Pankov
8d587d27e5 reintroduced electron-updater 2021-08-24 19:13:49 +02:00
Eugeny
fa7bb79122 Merge pull request #4470 from Eugeny/dependabot/npm_and_yarn/electron-13.2.2 2021-08-24 18:56:44 +02:00
dependabot[bot]
f3255a7f31 Bump electron from 13.2.1 to 13.2.2
Bumps [electron](https://github.com/electron/electron) from 13.2.1 to 13.2.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v13.2.1...v13.2.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-24 04:04:35 +00:00
Eugeny
69680cbb8d Merge pull request #4465 from Eugeny/dependabot/npm_and_yarn/electron-rebuild-3.2.0
Bump electron-rebuild from 3.1.1 to 3.2.0
2021-08-23 09:08:12 +02:00
Eugene Pankov
69c693a0a3 lint 2021-08-23 08:59:36 +02:00
dependabot[bot]
69cdd5fb4a Bump electron-rebuild from 3.1.1 to 3.2.0
Bumps [electron-rebuild](https://github.com/electron/electron-rebuild) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/electron/electron-rebuild/releases)
- [Changelog](https://github.com/electron/electron-rebuild/blob/master/.releaserc.json)
- [Commits](https://github.com/electron/electron-rebuild/compare/v3.1.1...v3.2.0)

---
updated-dependencies:
- dependency-name: electron-rebuild
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-23 04:03:29 +00:00
Eugene Pankov
59101cfcb3 added generic hotkeys for profile selectors by type 2021-08-22 20:59:50 +02:00
Eugene Pankov
7120e32c91 fixed terminal toolbar padding - fixes #4384 2021-08-22 20:50:38 +02:00
Eugene Pankov
0a0d94ec91 sftp: fixed upload renaming - fixes #4383, fixes #4455 2021-08-22 20:23:51 +02:00
Eugene Pankov
43e3277c0d removed libappindicator from the dependencies list - fixes #4425 2021-08-22 20:17:01 +02:00
Eugene Pankov
da28596968 handle shift-insert through hotkeys system - fixes #3565, fixes #4451 2021-08-22 20:12:23 +02:00
Eugene Pankov
c1c7654380 xterm: potentially fix dead key handling issues - fixes #768 2021-08-22 17:42:38 +02:00
Eugene Pankov
20116d7af6 global profile settings - fixes #4098 2021-08-22 00:10:56 +02:00
dependabot[bot]
8c32fe010c Bump typedoc from 0.21.5 to 0.21.6
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.21.5 to 0.21.6.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.21.5...v0.21.6)

---
updated-dependencies:
- dependency-name: typedoc
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-21 21:50:22 +00:00
Eugene Pankov
0a3debb691 drop eslint-plugin-import 2021-08-21 23:45:41 +02:00
Eugeny
a3e5d04aac Merge pull request #4441 from Eugeny/dependabot/npm_and_yarn/tslib-2.3.1
Bump tslib from 2.3.0 to 2.3.1
2021-08-21 23:44:08 +02:00
Eugeny
153c98c03a Merge pull request #4419 from Eugeny/dependabot/npm_and_yarn/webpack-cli-4.8.0 2021-08-21 23:43:19 +02:00
Eugeny
90fa980b70 Merge pull request #4439 from Eugeny/dependabot/npm_and_yarn/ssh2-1.3.0 2021-08-21 23:43:08 +02:00
Eugeny
42bfde0e7f Merge pull request #4438 from Eugeny/dependabot/npm_and_yarn/electron-13.2.1
Bump electron from 13.1.9 to 13.2.1
2021-08-21 23:41:34 +02:00
Eugeny
14122bcfa2 Merge pull request #4453 from Eugeny/dependabot/npm_and_yarn/webpack-5.51.1 2021-08-21 23:41:18 +02:00
dependabot[bot]
84879af11a Bump webpack from 5.50.0 to 5.51.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.50.0 to 5.51.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.50.0...v5.51.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-20 04:03:49 +00:00
dependabot[bot]
1c371347e9 Bump tslib from 2.3.0 to 2.3.1
Bumps [tslib](https://github.com/Microsoft/tslib) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/Microsoft/tslib/releases)
- [Commits](https://github.com/Microsoft/tslib/compare/2.3.0...2.3.1)

---
updated-dependencies:
- dependency-name: tslib
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-19 21:33:46 +00:00
dependabot[bot]
0c08a4d10c Bump electron from 13.1.9 to 13.2.1
Bumps [electron](https://github.com/electron/electron) from 13.1.9 to 13.2.1.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v13.1.9...v13.2.1)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-19 21:33:23 +00:00
dependabot[bot]
3a66aaf9d7 Bump ssh2 from 1.2.0 to 1.3.0
Bumps [ssh2](https://github.com/mscdex/ssh2) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/mscdex/ssh2/releases)
- [Commits](https://github.com/mscdex/ssh2/compare/v1.2.0...v1.3.0)

---
updated-dependencies:
- dependency-name: ssh2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-19 21:32:13 +00:00
Eugene Pankov
1992d99556 faster startup on macOS 2021-08-19 23:29:44 +02:00
Eugene Pankov
60046da4b3 perf: tweak pty flow control 2021-08-19 23:14:38 +02:00
Eugene Pankov
e33e954e41 Update package.json 2021-08-19 23:14:31 +02:00
Eugene Pankov
f5e5091b10 perf: debounce activity updates 2021-08-19 23:14:26 +02:00
Eugene Pankov
38691b80f2 moved deep-equal dependency out 2021-08-19 23:14:12 +02:00
Eugene Pankov
8d5eef6fa7 fixed up tab progress and title updates 2021-08-19 15:43:02 +02:00
Eugene Pankov
e0f935519a prevent reporting the same progress value twice 2021-08-19 12:16:40 +02:00
dependabot[bot]
1b9081ce80 Bump webpack-cli from 4.7.0 to 4.8.0
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 4.7.0 to 4.8.0.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@4.7.0...webpack-cli@4.8.0)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-18 22:02:01 +00:00
dependabot[bot]
e1098d9502 Bump path-parse from 1.0.6 to 1.0.7
Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases)
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-18 21:58:48 +00:00
dependabot[bot]
14a4acdd92 Bump path-parse from 1.0.6 to 1.0.7 in /app
Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases)
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7)

---
updated-dependencies:
- dependency-name: path-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-17 06:59:49 +00:00
387 changed files with 50156 additions and 6047 deletions

View File

@@ -1,6 +1,11 @@
{
"files": [
"README.md"
"README.md",
"README.zh-CN.md",
"README.ru-RU.md",
"README.ko-KR.md",
"README.it-IT.md",
"README.de-DE.md"
],
"imageSize": 100,
"commit": false,
@@ -442,6 +447,315 @@
"contributions": [
"code"
]
},
{
"login": "BoYeonJang",
"name": "장보연",
"avatar_url": "https://avatars.githubusercontent.com/u/59506394?v=4",
"profile": "https://www.notion.so/3d45c6bd2cbd4f938873a4bd12e23375",
"contributions": [
"doc"
]
},
{
"login": "Me1onRind",
"name": "zZ",
"avatar_url": "https://avatars.githubusercontent.com/u/19531270?v=4",
"profile": "https://github.com/Me1onRind",
"contributions": [
"code"
]
},
{
"login": "tainoNZ",
"name": "Aaron Davison",
"avatar_url": "https://avatars.githubusercontent.com/u/49261322?v=4",
"profile": "https://github.com/tainoNZ",
"contributions": [
"code"
]
},
{
"login": "composer404",
"name": "Przemyslaw Kozik",
"avatar_url": "https://avatars.githubusercontent.com/u/58251560?v=4",
"profile": "https://github.com/composer404",
"contributions": [
"design"
]
},
{
"login": "highfredo",
"name": "Alfredo Arellano de la Fuente",
"avatar_url": "https://avatars.githubusercontent.com/u/5951524?v=4",
"profile": "https://github.com/highfredo",
"contributions": [
"code"
]
},
{
"login": "NessunKim",
"name": "MH Kim",
"avatar_url": "https://avatars.githubusercontent.com/u/12974079?v=4",
"profile": "https://github.com/NessunKim",
"contributions": [
"code"
]
},
{
"login": "jaimeadf",
"name": "Marmota",
"avatar_url": "https://avatars.githubusercontent.com/u/40345645?v=4",
"profile": "https://discord.gg/4c5EVTBhtp",
"contributions": [
"design"
]
},
{
"login": "TENX-S",
"name": "Ares Andrew",
"avatar_url": "https://avatars.githubusercontent.com/u/40336192?v=4",
"profile": "https://ares.zone",
"contributions": [
"doc"
]
},
{
"login": "gkor",
"name": "George Korsnick",
"avatar_url": "https://avatars.githubusercontent.com/u/780052?v=4",
"profile": "https://usual.io/",
"contributions": [
"financial"
]
},
{
"login": "uluhonolulu",
"name": "Artem Smirnov",
"avatar_url": "https://avatars.githubusercontent.com/u/872764?v=4",
"profile": "https://about.me/ulu",
"contributions": [
"financial"
]
},
{
"login": "nevotheless",
"name": "Tim Kopplow",
"avatar_url": "https://avatars.githubusercontent.com/u/779797?v=4",
"profile": "https://github.com/nevotheless",
"contributions": [
"financial"
]
},
{
"login": "mrthock",
"name": "mrthock",
"avatar_url": "https://avatars.githubusercontent.com/u/88901709?v=4",
"profile": "https://github.com/mrthock",
"contributions": [
"financial"
]
},
{
"login": "lrottach",
"name": "Lukas Rottach",
"avatar_url": "https://avatars.githubusercontent.com/u/50323692?v=4",
"profile": "https://github.com/lrottach",
"contributions": [
"financial"
]
},
{
"login": "boonkerz",
"name": "boonkerz",
"avatar_url": "https://avatars.githubusercontent.com/u/277321?v=4",
"profile": "https://github.com/boonkerz",
"contributions": [
"code",
"translation"
]
},
{
"login": "milotype",
"name": "Milo Ivir",
"avatar_url": "https://avatars.githubusercontent.com/u/43657314?v=4",
"profile": "https://github.com/milotype",
"contributions": [
"translation"
]
},
{
"login": "JasonCubic",
"name": "JasonCubic",
"avatar_url": "https://avatars.githubusercontent.com/u/8921015?v=4",
"profile": "https://github.com/JasonCubic",
"contributions": [
"design"
]
},
{
"login": "MaxWaldorf",
"name": "MaxWaldorf",
"avatar_url": "https://avatars.githubusercontent.com/u/15877853?v=4",
"profile": "https://github.com/MaxWaldorf",
"contributions": [
"infra"
]
},
{
"login": "mwz",
"name": "Michael Wizner",
"avatar_url": "https://avatars.githubusercontent.com/u/1190768?v=4",
"profile": "https://github.com/mwz",
"contributions": [
"code"
]
},
{
"login": "mgrulich",
"name": "Martin",
"avatar_url": "https://avatars.githubusercontent.com/u/781036?v=4",
"profile": "https://github.com/mgrulich",
"contributions": [
"code"
]
},
{
"login": "piersandro",
"name": "Piersandro Guerrera",
"avatar_url": "https://avatars.githubusercontent.com/u/19996309?v=4",
"profile": "https://github.com/piersandro",
"contributions": [
"doc",
"translation"
]
},
{
"login": "X-0x01",
"name": "X-0x01",
"avatar_url": "https://avatars.githubusercontent.com/u/19320096?v=4",
"profile": "http://pingbase.cn",
"contributions": [
"code"
]
},
{
"login": "Allenator",
"name": "Allenator",
"avatar_url": "https://avatars.githubusercontent.com/u/11794943?v=4",
"profile": "https://github.com/Allenator",
"contributions": [
"doc"
]
},
{
"login": "microhobby",
"name": "Matheus Castello",
"avatar_url": "https://avatars.githubusercontent.com/u/2633321?v=4",
"profile": "http://microhobby.com.br/blog",
"contributions": [
"code"
]
},
{
"login": "Jai-JAP",
"name": "Jai A P",
"avatar_url": "https://avatars.githubusercontent.com/u/78354625?v=4",
"profile": "https://github.com/Jai-JAP",
"contributions": [
"platform"
]
},
{
"login": "ysc3839",
"name": "Richard Yu",
"avatar_url": "https://avatars.githubusercontent.com/u/12028138?v=4",
"profile": "https://blog.ysc3839.com",
"contributions": [
"code"
]
},
{
"login": "artu-ole",
"name": "artu-ole",
"avatar_url": "https://avatars.githubusercontent.com/u/15938416?v=4",
"profile": "https://github.com/artu-ole",
"contributions": [
"code"
]
},
{
"login": "TimaGribanov",
"name": "Timofey Gribanov",
"avatar_url": "https://avatars.githubusercontent.com/u/48593815?v=4",
"profile": "https://timagribanov.github.io/",
"contributions": [
"doc",
"translation"
]
},
{
"login": "ChristianBingman",
"name": "Christian Bingman",
"avatar_url": "https://avatars.githubusercontent.com/u/42191425?v=4",
"profile": "https://git.christianbingman.com",
"contributions": [
"code"
]
},
{
"login": "Ox0400",
"name": "zhipeng",
"avatar_url": "https://avatars.githubusercontent.com/u/5310853?v=4",
"profile": "http://zhangzhipeng2023.cn/",
"contributions": [
"code"
]
},
{
"login": "woodmeal",
"name": "woodmeal",
"avatar_url": "https://avatars.githubusercontent.com/u/104011197?v=4",
"profile": "https://github.com/woodmeal",
"contributions": [
"code"
]
},
{
"login": "MagicLike",
"name": "MagicLike",
"avatar_url": "https://avatars.githubusercontent.com/u/82117109?v=4",
"profile": "https://magiclike.codeberg.page/",
"contributions": [
"doc"
]
},
{
"login": "hisamafahri",
"name": "Hisam Fahri",
"avatar_url": "https://avatars.githubusercontent.com/u/65691613?v=4",
"profile": "https://github.com/hisamafahri",
"contributions": [
"code"
]
},
{
"login": "LiangchengJ",
"name": "Liangcheng Juves",
"avatar_url": "https://avatars.githubusercontent.com/u/48881023?v=4",
"profile": "https://liangchengj.com",
"contributions": [
"code"
]
},
{
"login": "attet",
"name": "Atte Timonen",
"avatar_url": "https://avatars.githubusercontent.com/u/1911416?v=4",
"profile": "https://github.com/attet",
"contributions": [
"code"
]
}
],
"contributorsPerLine": 7,

View File

@@ -0,0 +1,27 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''
---
<!--
# RULES:
* **ENGLISH ONLY** - this issue tracker is English-only. Please respect the people who take time to help you with your problems.
* Search existing issues first: https://github.com/Eugeny/tabby/issues
-->
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

23
.github/ISSUE_TEMPLATE/issue-report.md vendored Normal file
View File

@@ -0,0 +1,23 @@
---
name: Issue report
about: Report a problem
title: ''
labels: 'T: Bug'
assignees: ''
---
<!--
# READ CAREFULLY:
* **ENGLISH ONLY** - this issue tracker is English-only. Please respect the people who take time to help you with your problems.
* Search existing issues first: https://github.com/Eugeny/tabby/issues
* Test with the latest Tabby version: https://github.com/Eugeny/tabby/releases
* Disable third-party plugins.
-->
**Describe the problem**:
[A clear and concise description of what the bug is.]
**To Reproduce**:
[Steps to reproduce the behavior]

View File

@@ -2,18 +2,18 @@ name: Package-Build
on: [push, pull_request]
jobs:
Lint:
runs-on: macos-11.0
runs-on: macos-11
steps:
- name: Checkout
uses: actions/checkout@v2.3.4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Installing Node
uses: actions/setup-node@v2.4.0
uses: actions/setup-node@v3.2.0
with:
node-version: 14
node-version: 16
- name: Install deps
run: |
@@ -31,7 +31,7 @@ jobs:
run: yarn run lint
macOS-Build:
runs-on: macos-11.0
runs-on: macos-11
needs: Lint
strategy:
matrix:
@@ -41,30 +41,23 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v2.3.4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Installing Node
uses: actions/setup-node@v2.4.0
uses: actions/setup-node@v3.2.0
with:
node-version: 14
node-version: 16
- name: Install deps
run: |
sudo npm i -g yarn@1.22.1
cd app
yarn
cd ..
rm app/node_modules/.yarn-integrity
yarn
- name: Build native deps
run: scripts/build-native.js
yarn --network-timeout 1000000
env:
ARCH: ${{matrix.arch}}
- name: Build native deps
- name: Fix cross build
run: |
rm -rf app/node_modules/cpu-features
rm -rf app/node_modules/ssh2/crypto/build
@@ -91,6 +84,8 @@ jobs:
APPSTORE_USERNAME: ${{ secrets.APPSTORE_USERNAME }}
APPSTORE_PASSWORD: ${{ secrets.APPSTORE_PASSWORD }}
USE_HARD_LINKS: false
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
# DEBUG: electron-builder,electron-builder:*
- name: Build packages without signing
@@ -129,34 +124,26 @@ jobs:
path: artifact-zip
Linux-Build:
runs-on: ubuntu-18.04
runs-on: ubuntu-18.04 # build against an older glibc for compatibility
needs: Lint
steps:
- name: Checkout
uses: actions/checkout@v2.3.4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install Node
uses: actions/setup-node@v2.4.0
uses: actions/setup-node@v3.2.0
with:
node-version: 14
node-version: 16
- name: Install deps
run: |
sudo apt-get update
sudo apt-get install bsdtar zsh
sudo apt-get install libarchive-tools zsh
npm i -g yarn@1.19.1
cd app
yarn
cd ..
rm app/node_modules/.yarn-integrity
yarn
npm run patch
- name: Build native deps
run: scripts/build-native.js
yarn --network-timeout 1000000
- name: Webpack
run: yarn run build
@@ -169,6 +156,8 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
USE_HARD_LINKS: false
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
# DEBUG: electron-builder,electron-builder:*
- name: Build web resources
@@ -183,6 +172,15 @@ jobs:
SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }}
- name: Upload packages to packagecloud.io
uses: Eugeny/packagecloud-action@main
if: github.repository == 'Eugeny/tabby' && github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')
env:
PACKAGECLOUD_TOKEN: ${{ secrets.PACKAGECLOUD_TOKEN }}
with:
repo: 'eugeny/tabby'
dir: 'dist'
- name: Package artifacts
run: |
mkdir artifact-deb
@@ -191,8 +189,6 @@ jobs:
mv dist/*.rpm artifact-rpm/ || true
mkdir artifact-pacman
mv dist/*.pacman artifact-pacman/ || true
mkdir artifact-snap
mv dist/*.snap artifact-snap/ || true
mkdir artifact-tar.gz
mv dist/*.tar.gz artifact-tar.gz/ || true
mkdir artifact-web
@@ -201,31 +197,25 @@ jobs:
- uses: actions/upload-artifact@master
name: Upload DEB
with:
name: Linux DEB
name: Linux DEB (x86_64)
path: artifact-deb
- uses: actions/upload-artifact@master
name: Upload RPM
with:
name: Linux RPM
name: Linux RPM (x86_64)
path: artifact-rpm
- uses: actions/upload-artifact@master
name: Upload Pacman Package
with:
name: Linux Pacman
name: Linux Pacman (x86_64)
path: artifact-pacman
- uses: actions/upload-artifact@master
name: Upload Snap
with:
name: Linux Snap
path: artifact-snap
- uses: actions/upload-artifact@master
name: Upload Linux tarball
with:
name: Linux tarball
name: Linux tarball (x86_64)
path: artifact-tar.gz
- uses: actions/upload-artifact@master
@@ -234,42 +224,59 @@ jobs:
name: Web tarball
path: artifact-web
Windows-Build:
runs-on: windows-2016
runs-on: windows-2022
needs: Lint
strategy:
matrix:
include:
- arch: x64
- arch: arm64
steps:
- name: Checkout
uses: actions/checkout@v2.3.4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Installing Node
uses: actions/setup-node@v2.4.0
uses: actions/setup-node@v3.2.0
with:
node-version: 14
node-version: 16
- name: Update node-gyp
run: |
npm install --global node-gyp@8.4.1
npm prefix -g | % {npm config set node_gyp "$_\node_modules\node-gyp\bin\node-gyp.js"}
- name: Build
shell: powershell
run: |
npm i -g yarn@1.19.1
yarn
node scripts/build-native.js
yarn --network-timeout 1000000
yarn run build
node scripts/prepackage-plugins.js
env:
ARCH: ${{matrix.arch}}
- name: Build and sign packages
run: node scripts/build-windows.js
if: github.repository == 'Eugeny/tabby' && github.event_name == 'push' && (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags'))
env:
ARCH: ${{matrix.arch}}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
WIN_CSC_LINK: ${{ secrets.WIN_CSC_LINK }}
WIN_CSC_KEY_PASSWORD: ${{ secrets.WIN_CSC_KEY_PASSWORD }}
# DEBUG: electron-builder,electron-builder:*
DEBUG: electron-builder,electron-builder:*
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- name: Build packages without signing
run: node scripts/build-windows.js
if: "!(github.repository == 'Eugeny/tabby' && github.event_name == 'push' && (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags')))"
env:
ARCH: ${{matrix.arch}}
- name: Upload symbols
run: |
@@ -283,18 +290,18 @@ jobs:
- name: Package artifacts
run: |
mkdir artifact-setup
mv dist/*-setup.exe artifact-setup/
mv dist/*-setup-*.exe artifact-setup/
mkdir artifact-portable
mv dist/*-portable.zip artifact-portable/
mv dist/*-portable-*.zip artifact-portable/
- uses: actions/upload-artifact@master
name: Upload installer
with:
name: Windows installer
name: Windows installer (${{matrix.arch}})
path: artifact-setup
- uses: actions/upload-artifact@master
name: Upload portable build
with:
name: Windows portable build
name: Windows portable build (${{matrix.arch}})
path: artifact-portable

70
.github/workflows/codeql-analysis.yml vendored Normal file
View File

@@ -0,0 +1,70 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ master ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '26 7 * * 4'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'javascript' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://git.io/codeql-language-support
steps:
- name: Checkout repository
uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

View File

@@ -2,24 +2,22 @@ name: Docs
on: push
jobs:
build:
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
if: ${{ github.actor != 'dependabot[bot]' }}
steps:
- name: Checkout
uses: actions/checkout@v2.3.4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Installing Node
uses: actions/setup-node@v2.4.0
uses: actions/setup-node@v3.2.0
with:
node-version: 14
node-version: 16
- name: Build
run: |
eval $(ssh-agent -s)
ssh-add <(echo "$DOCS_PRIVATE_KEY")
yarn cache clean
cd app
yarn
@@ -28,7 +26,13 @@ jobs:
yarn
yarn run build:typings
yarn run docs
rsync -e "ssh -o StrictHostKeyChecking=no" -arv docs/api/ root@ajenti.org:/srv/terminus-docs/
env:
DOCS_PRIVATE_KEY: ${{ secrets.DOCS_PRIVATE_KEY }}
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_TABBY_DOCS }}'
channelId: live
projectId: tabby-docs

15
.github/workflows/issue-translator.yml vendored Normal file
View File

@@ -0,0 +1,15 @@
name: 'issue-translator'
on:
issue_comment:
types: [created]
issues:
types: [opened]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: tomsun28/issues-translate-action@v2.6
with:
IS_MODIFY_TITLE: true
CUSTOM_BOT_NOTE: The translator bot has detected that this issue body's language is not English, and has translated it automatically.

2
.gitignore vendored
View File

@@ -34,3 +34,5 @@ sentry-symbols.js
tabby-ssh/util/pagent.exe
*.psd
crowdin.yml

View File

@@ -11,21 +11,20 @@ First, install the dependencies:
```
# macOS:
yarn
./scripts/build-native.js
```
**Note: For compiling for Linux armv7l, you need to downgrade electron to 17.0.0 in package.json present in root directory of tabby source**
```
# Linux (Debian/Ubuntu here as an example)
sudo apt install libfontconfig-dev libsecret-1-dev libarchive-tools libnss3 libatk1.0-0 libatk-bridge2.0-0 libgdk-pixbuf2.0-0 libgtk-3-0 libgbm1 cmake
yarn
./scripts/build-native.js
```
```
# Windows:
npm -g install windows-build-tools
yarn
node scripts\build-native.js
```
Now, check if your build is working:
@@ -145,4 +144,6 @@ export default class MyModule { }
See `tabby-core/src/api.ts`, `tabby-settings/src/api.ts`, `tabby-local/src/api.ts` and `tabby-terminal/src/api.ts` for the available extension points.
Also check out [the example plugin](https://github.com/Eugeny/tabby-clippy).
Publish your plugin on NPM with a `tabby-plugin` keyword to make it appear in the Plugin Manager.

270
README.de-DE.md Normal file
View File

@@ -0,0 +1,270 @@
[![](docs/readme.png)](https://tabby.sh)
<p align="center">
<a href="https://github.com/Eugeny/tabby/releases/latest"><img alt="Alle GitHub Releases" src="https://img.shields.io/github/downloads/eugeny/tabby/total.svg?label=DOWNLOADS&logo=github&style=for-the-badge"></a> <a href="https://nightly.link/Eugeny/tabby/workflows/build/master"><img src="https://shields.io/badge/-Nightly%20Builds-orange?logo=hackthebox&logoColor=fff&style=for-the-badge"/></a> <a href="https://matrix.to/#/#tabby-general:matrix.org"><img alt="Matrix" src="https://img.shields.io/matrix/tabby-general:matrix.org?logo=matrix&style=for-the-badge&color=magenta"></a> &nbsp <a href="https://translate.tabby.sh/"><img alt="Übersetzen" src="https://shields.io/badge/Übersetzen-UI-white?logo=googletranslate&style=for-the-badge&color=white&logoColor=fff"></a> <a href="https://twitter.com/eugeeeeny"><img alt="Twitter" src="https://shields.io/badge/Abonnieren-Nachrichten-blue?logo=twitter&style=for-the-badge&color=blue"></a>
</p>
<p align="center">
<a href="https://ko-fi.com/J3J8KWTF">
<img src="https://cdn.ko-fi.com/cdn/kofi3.png?v=2" width="150">
</a>
</p>
----
### Downloads:
* [Neueste Version](https://github.com/Eugeny/tabby/releases/latest)
* [Repositories](https://packagecloud.io/eugeny/tabby): [Debian/Ubuntu-basiert](https://packagecloud.io/eugeny/tabby/install#bash-deb), [RPM-basiert](https://packagecloud.io/eugeny/tabby/install#bash-rpm)
* [Neueste nightly Version](https://nightly.link/Eugeny/tabby/workflows/build/master)
<br/>
<p align="center">
Diese README ist auch verfügbar in: <a href="./README.md">:gb: English</a> · <a href="./README.ru-RU.md">:ru: Русский</a> · <a href="./README.ko-KR.md">:kr: 한국어</a> · <a href="./README.zh-CN.md">:cn: 简体中文</a> · <a href="./README.it-IT.md">:it: Italiano</a>
</p>
----
[**Tabby**](https://tabby.sh) (ehemals **Terminus**) ist ein äußerst konfigurierbarer Terminalemulator, SSH- und serieller Client für Windows, macOS und Linux
* Integrierter SSH- und Telnet-Client und Verbindungsmanager
* Integriertes serielles Terminal
* Theming und Farbschemata
* Vollständig konfigurierbare Tastenkombinationen und Multi-Akkord-Tastenkombinationen
* Geteilte Fenster
* Merkt sich deine Tabs
* Unterstützung für PowerShell (und PS Core), WSL, Git-Bash, Cygwin, MSYS2, Cmder und CMD
* Direkte Dateiübertragung von/zu SSH-Sitzungen über Zmodem
* Vollständige Unicode-Unterstützung, einschließlich Zeichen mit doppelter Breite
* Kein Abbruch bei schnell ablaufenden Ausgaben
* Richtiges Shell-Erlebnis unter Windows, einschließlich Tabulator-Vervollständigung (über Clink)
* Integrierter verschlüsselter Container für SSH-Secrets und Konfiguration
* SSH-, SFTP- und Telnet-Client verfügbar als [Web-App](https://tabby.sh/app) (auch [selbstgehostet](https://github.com/Eugeny/tabby-web)).
# Inhaltsverzeichnis <!-- omit in toc -->
- [Was Tabby ist und was nicht](#what-tabby-is-and-isnt)
- [Terminal-Funktionen](#terminal-features)
- [SSH Client](#ssh-client)
- [Serielles Terminal](#serial-terminal)
- [Portabel](#portable)
- [Plugins](#plugins)
- [Themen](#themes)
- [Beitragen](#contributing)
<a name="about"></a>
# Was Tabby ist und was nicht
**Tabby ist** eine Alternative zu Windows Standard-Terminal (conhost), PowerShell ISE, PuTTY, macOS Terminal.app und iTerm
**Tabby ist weder** eine neue Shell noch ein MinGW- oder Cygwin-Ersatz. Sie ist auch nicht gerade sparsam - wenn die RAM-Nutzung von Bedeutung ist, solltest Du [Conemu](https://conemu.github.io) oder [Alacritty](https://github.com/jwilm/alacritty) in Betracht ziehen.
<a name="terminal"></a>
# Terminal-Funktionen
![](docs/readme-terminal.png)
* Ein V220-Terminal + verschiedene Erweiterungen
* Mehrere verschachtelte, geteilte Fenster
* Tabs auf jeder Seite des Fensters
* Optional andockbares Fenster mit einem globalen Spawn-Hotkey ("Quake-Konsole")
* Fortschrittserkennung
* Benachrichtigung bei Prozessabschluss
* Einfügen in Klammern, mehrzeilige Einfügewarnungen
* Schriftart-Ligaturen
* Benutzerdefinierte Shell-Profile
* Optionales RMB-Einfügen und Kopieren bei Auswahl (PuTTY-Stil)
<a name="ssh"></a>
# SSH Client
![](docs/readme-ssh.png)
* SSH2-Client mit einem Verbindungsmanager
* X11 und Portweiterleitung
* Automatisches Jump-Host-Management
* Agent-Weiterleitung (inkl. Pageant und Windows-eigenem OpenSSH-Agent)
* Anmeldeskripte
<a name="serial"></a>
# Serielles Terminal
* Gespeicherte Verbindungen
* Unterstützung von Readline-Eingaben
* Optionale hexadezimale Byte-für-Byte-Eingabe und Hexdump-Ausgabe
* Newline-Konvertierung
* Automatische Wiederverbindung
<a name="portable"></a>
# Portabel
Tabby läuft als portable Anwendung unter Windows, wenn Sie einen `data`-Ordner am selben Ort erstellen, an dem sich auch `Tabby.exe` befindet.
<a name="plugins"></a>
# Plugins
Plugins und Themen können direkt aus der Ansicht "Einstellungen" in Tabby installiert werden.
* [docker](https://github.com/Eugeny/tabby-docker) - Verbindung zu Docker-Containern
* [title-control](https://github.com/kbjr/terminus-title-control) - ermöglicht die Änderung des Titels der Terminal-Tabs durch Angabe eines Präfixes, Suffixes und/oder zu entfernender Strings
* [quick-cmds](https://github.com/Domain/terminus-quick-cmds) - schnelles Senden von Befehlen an eine oder alle Terminal-Tabs
* [save-output](https://github.com/Eugeny/tabby-save-output) - speichert Terminalausgaben in einer Datei
* [sync-config](https://github.com/starxg/terminus-sync-config) - synchronisiert die Konfiguration mit Gist oder Gitee
* [clippy](https://github.com/Eugeny/tabby-clippy) - ein Beispiel-Plugin, das einen die ganze Zeit nervt
* [workspace-manager](https://github.com/composer404/tabby-workspace-manager) - ermöglicht das Erstellen eigener Workspace-Profile auf Basis der angegebenen Konfiguration
* [search-in-browser](https://github.com/composer404/tabby-search-in-browser) - öffnet den Standard-Systembrowser mit einem Text, der aus dem Tabby Tab ausgewählt wurde
<a name="themes"></a>
# Themen
* [hype](https://github.com/Eugeny/tabby-theme-hype) - ein von Hyper inspiriertes Thema
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) - das entspannte Thema für Tabby
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox)
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10)
* [altair](https://github.com/yxuko/terminus-altair)
# Sponsoren <!-- omit in toc -->
[![](https://assets-production.packagecloud.io/assets/packagecloud-logo-light-scaled-26ce8e96060fddf74afbd4445e63ba35590d4aaa56edc98495bb390ef3cae0ae.png)](https://packagecloud.io)
[**packagecloud**](https://packagecloud.io) bietet kostenloses Debian/RPM-Repository-Hosting an
<a name="contributing"></a>
# Beitragen
Pull Requests und Plugins sind willkommen!
Siehe [HACKING.md](https://github.com/Eugeny/tabby/blob/master/HACKING.md) und [API docs](https://docs.tabby.sh/) für Informationen über den Aufbau des Projekts und ein sehr kurzes Tutorial zur Plugin-Entwicklung.
---
<a name="contributors"></a>
Dank geht an diese wunderbaren Menschen ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center"><a href="http://www.russellmyers.com"><img src="https://avatars2.githubusercontent.com/u/184085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Russell Myers</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mezner" title="Code">💻</a></td>
<td align="center"><a href="http://www.morwire.com"><img src="https://avatars1.githubusercontent.com/u/3991658?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Austin Warren</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ehwarren" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Drachenkaetzchen"><img src="https://avatars1.githubusercontent.com/u/162974?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Felicia Hummel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Drachenkaetzchen" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mikemaccana"><img src="https://avatars2.githubusercontent.com/u/172594?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mike MacCana</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mikemaccana" title="Tests">⚠️</a> <a href="#design-mikemaccana" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/yxuko"><img src="https://avatars1.githubusercontent.com/u/1786317?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Yacine Kanzari</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yxuko" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/BBJip"><img src="https://avatars2.githubusercontent.com/u/32908927?v=4?s=100" width="100px;" alt=""/><br /><sub><b>BBJip</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BBJip" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Futagirl"><img src="https://avatars2.githubusercontent.com/u/33533958?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Futagirl</b></sub></a><br /><a href="#design-Futagirl" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://www.levrik.io"><img src="https://avatars3.githubusercontent.com/u/9491603?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Levin Rickert</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=levrik" title="Code">💻</a></td>
<td align="center"><a href="https://kwonoj.github.io"><img src="https://avatars2.githubusercontent.com/u/1210596?v=4?s=100" width="100px;" alt=""/><br /><sub><b>OJ Kwon</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=kwonoj" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Domain"><img src="https://avatars2.githubusercontent.com/u/903197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>domain</b></sub></a><br /><a href="#plugin-Domain" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Domain" title="Code">💻</a></td>
<td align="center"><a href="http://www.jbrumond.me"><img src="https://avatars1.githubusercontent.com/u/195127?v=4?s=100" width="100px;" alt=""/><br /><sub><b>James Brumond</b></sub></a><br /><a href="#plugin-kbjr" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://www.growingwiththeweb.com"><img src="https://avatars0.githubusercontent.com/u/2193314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Daniel Imms</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Code">💻</a> <a href="#plugin-Tyriar" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/baflo"><img src="https://avatars2.githubusercontent.com/u/834350?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Florian Bachmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=baflo" title="Code">💻</a></td>
<td align="center"><a href="http://michael-kuehnel.de"><img src="https://avatars2.githubusercontent.com/u/441011?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Kühnel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mischah" title="Code">💻</a> <a href="#design-mischah" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/NieLeben"><img src="https://avatars3.githubusercontent.com/u/47182955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tilmann Meyer</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NieLeben" title="Code">💻</a></td>
<td align="center"><a href="http://www.jubeat.net"><img src="https://avatars3.githubusercontent.com/u/11289158?v=4?s=100" width="100px;" alt=""/><br /><sub><b>PM Extra</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/issues?q=author%3APMExtra" title="Bug reports">🐛</a></td>
<td align="center"><a href="https://jjuhas.keybase.pub//"><img src="https://avatars1.githubusercontent.com/u/6438760?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=IgnusG" title="Code">💻</a></td>
<td align="center"><a href="https://hans-koch.me"><img src="https://avatars0.githubusercontent.com/u/1093709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hans Koch</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hammster" title="Code">💻</a></td>
<td align="center"><a href="http://thepuzzlemaker.info"><img src="https://avatars3.githubusercontent.com/u/12666617?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dak Smyth</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ThePuzzlemaker" title="Code">💻</a></td>
<td align="center"><a href="http://yfwz100.github.io"><img src="https://avatars2.githubusercontent.com/u/983211?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Wang Zhi</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yfwz100" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/jack1142"><img src="https://avatars0.githubusercontent.com/u/6032823?v=4?s=100" width="100px;" alt=""/><br /><sub><b>jack1142</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=jack1142" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/hdougie"><img src="https://avatars1.githubusercontent.com/u/450799?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Howie Douglas</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hdougie" title="Code">💻</a></td>
<td align="center"><a href="https://chriskaczor.com"><img src="https://avatars2.githubusercontent.com/u/180906?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chris Kaczor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ckaczor" title="Code">💻</a></td>
<td align="center"><a href="https://www.boxmein.net"><img src="https://avatars1.githubusercontent.com/u/358714?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Johannes Kadak</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boxmein" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/LeSeulArtichaut"><img src="https://avatars1.githubusercontent.com/u/38361244?v=4?s=100" width="100px;" alt=""/><br /><sub><b>LeSeulArtichaut</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LeSeulArtichaut" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/CyrilTaylor"><img src="https://avatars0.githubusercontent.com/u/12631466?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Cyril Taylor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=CyrilTaylor" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/nstefanou"><img src="https://avatars3.githubusercontent.com/u/51129173?v=4?s=100" width="100px;" alt=""/><br /><sub><b>nstefanou</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=nstefanou" title="Code">💻</a> <a href="#plugin-nstefanou" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="https://github.com/orin220444"><img src="https://avatars3.githubusercontent.com/u/30747229?v=4?s=100" width="100px;" alt=""/><br /><sub><b>orin220444</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=orin220444" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/Goobles"><img src="https://avatars3.githubusercontent.com/u/8776771?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gobius Dolhain</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Goobles" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/3l0w"><img src="https://avatars2.githubusercontent.com/u/37798980?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gwilherm Folliot</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=3l0w" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Dimitory"><img src="https://avatars0.githubusercontent.com/u/475955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dmitry Pronin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=dimitory" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/JonathanBeverley"><img src="https://avatars1.githubusercontent.com/u/20328966?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan Beverley</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=JonathanBeverley" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/zend"><img src="https://avatars1.githubusercontent.com/u/25160?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Zenghai Liang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=zend" title="Code">💻</a></td>
<td align="center"><a href="https://about.me/matishadow"><img src="https://avatars0.githubusercontent.com/u/9083085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mateusz Tracz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=matishadow" title="Code">💻</a></td>
<td align="center"><a href="https://zergpool.com"><img src="https://avatars3.githubusercontent.com/u/36234677?v=4?s=100" width="100px;" alt=""/><br /><sub><b>pinpin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=pinpins" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/TakuroOnoda"><img src="https://avatars0.githubusercontent.com/u/1407926?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Takuro Onoda</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TakuroOnoda" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/frauhottelmann"><img src="https://avatars2.githubusercontent.com/u/902705?v=4?s=100" width="100px;" alt=""/><br /><sub><b>frauhottelmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=frauhottelmann" title="Code">💻</a></td>
<td align="center"><a href="http://patalong.pl"><img src="https://avatars.githubusercontent.com/u/29167842?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piotr Patalong</b></sub></a><br /><a href="#design-VectorKappa" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/clarkwang"><img src="https://avatars.githubusercontent.com/u/157076?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Clark Wang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=clarkwang" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/iamchating"><img src="https://avatars.githubusercontent.com/u/7088153?v=4?s=100" width="100px;" alt=""/><br /><sub><b>iamchating</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=iamchating" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/starxg"><img src="https://avatars.githubusercontent.com/u/34997494?v=4?s=100" width="100px;" alt=""/><br /><sub><b>starxg</b></sub></a><br /><a href="#plugin-starxg" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://hashnote.net/"><img src="https://avatars.githubusercontent.com/u/546312?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alisue</b></sub></a><br /><a href="#design-lambdalisue" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/ydcool"><img src="https://avatars.githubusercontent.com/u/5668295?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dominic Yin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ydcool" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/bdr99"><img src="https://avatars.githubusercontent.com/u/2292715?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Brandon Rothweiler</b></sub></a><br /><a href="#design-bdr99" title="Design">🎨</a></td>
<td align="center"><a href="https://git.io/JnP49"><img src="https://avatars.githubusercontent.com/u/63876444?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Logic Machine</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=logicmachine123" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/cypherbits"><img src="https://avatars.githubusercontent.com/u/10424900?v=4?s=100" width="100px;" alt=""/><br /><sub><b>cypherbits</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=cypherbits" title="Documentation">📖</a></td>
<td align="center"><a href="https://modulolotus.net"><img src="https://avatars.githubusercontent.com/u/946421?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matthew Davidson</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=KingMob" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/al-wi"><img src="https://avatars.githubusercontent.com/u/11092199?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alexander Wiedemann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=al-wi" title="Code">💻</a></td>
<td align="center"><a href="https://www.notion.so/3d45c6bd2cbd4f938873a4bd12e23375"><img src="https://avatars.githubusercontent.com/u/59506394?v=4?s=100" width="100px;" alt=""/><br /><sub><b>장보연</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BoYeonJang" title="Documentation">📖</a></td>
</tr>
<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>
<td align="center"><a href="https://github.com/highfredo"><img src="https://avatars.githubusercontent.com/u/5951524?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alfredo Arellano de la Fuente</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=highfredo" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/NessunKim"><img src="https://avatars.githubusercontent.com/u/12974079?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MH Kim</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NessunKim" title="Code">💻</a></td>
<td align="center"><a href="https://discord.gg/4c5EVTBhtp"><img src="https://avatars.githubusercontent.com/u/40345645?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Marmota</b></sub></a><br /><a href="#design-jaimeadf" title="Design">🎨</a></td>
<td align="center"><a href="https://ares.zone"><img src="https://avatars.githubusercontent.com/u/40336192?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ares Andrew</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TENX-S" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="https://usual.io/"><img src="https://avatars.githubusercontent.com/u/780052?v=4?s=100" width="100px;" alt=""/><br /><sub><b>George Korsnick</b></sub></a><br /><a href="#financial-gkor" title="Financial">💵</a></td>
<td align="center"><a href="https://about.me/ulu"><img src="https://avatars.githubusercontent.com/u/872764?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Artem Smirnov</b></sub></a><br /><a href="#financial-uluhonolulu" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/nevotheless"><img src="https://avatars.githubusercontent.com/u/779797?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tim Kopplow</b></sub></a><br /><a href="#financial-nevotheless" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/mrthock"><img src="https://avatars.githubusercontent.com/u/88901709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>mrthock</b></sub></a><br /><a href="#financial-mrthock" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/lrottach"><img src="https://avatars.githubusercontent.com/u/50323692?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Lukas Rottach</b></sub></a><br /><a href="#financial-lrottach" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/boonkerz"><img src="https://avatars.githubusercontent.com/u/277321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>boonkerz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boonkerz" title="Code">💻</a> <a href="#translation-boonkerz" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/milotype"><img src="https://avatars.githubusercontent.com/u/43657314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Milo Ivir</b></sub></a><br /><a href="#translation-milotype" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/JasonCubic"><img src="https://avatars.githubusercontent.com/u/8921015?v=4?s=100" width="100px;" alt=""/><br /><sub><b>JasonCubic</b></sub></a><br /><a href="#design-JasonCubic" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/MaxWaldorf"><img src="https://avatars.githubusercontent.com/u/15877853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MaxWaldorf</b></sub></a><br /><a href="#infra-MaxWaldorf" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
<td align="center"><a href="https://github.com/mwz"><img src="https://avatars.githubusercontent.com/u/1190768?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Wizner</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mwz" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mgrulich"><img src="https://avatars.githubusercontent.com/u/781036?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Martin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mgrulich" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/piersandro"><img src="https://avatars.githubusercontent.com/u/19996309?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piersandro Guerrera</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=piersandro" title="Documentation">📖</a> <a href="#translation-piersandro" title="Translation">🌍</a></td>
<td align="center"><a href="http://pingbase.cn"><img src="https://avatars.githubusercontent.com/u/19320096?v=4?s=100" width="100px;" alt=""/><br /><sub><b>X-0x01</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=X-0x01" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Allenator"><img src="https://avatars.githubusercontent.com/u/11794943?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allenator</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Allenator" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="http://microhobby.com.br/blog"><img src="https://avatars.githubusercontent.com/u/2633321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matheus Castello</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=microhobby" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Jai-JAP"><img src="https://avatars.githubusercontent.com/u/78354625?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jai A P</b></sub></a><br /><a href="#platform-Jai-JAP" title="Packaging/porting to new platform">📦</a></td>
<td align="center"><a href="https://blog.ysc3839.com"><img src="https://avatars.githubusercontent.com/u/12028138?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Richard Yu</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ysc3839" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/artu-ole"><img src="https://avatars.githubusercontent.com/u/15938416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>artu-ole</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=artu-ole" title="Code">💻</a></td>
<td align="center"><a href="https://timagribanov.github.io/"><img src="https://avatars.githubusercontent.com/u/48593815?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Timofey Gribanov</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TimaGribanov" title="Documentation">📖</a> <a href="#translation-TimaGribanov" title="Translation">🌍</a></td>
<td align="center"><a href="https://git.christianbingman.com"><img src="https://avatars.githubusercontent.com/u/42191425?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Christian Bingman</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ChristianBingman" title="Code">💻</a></td>
<td align="center"><a href="http://zhangzhipeng2023.cn/"><img src="https://avatars.githubusercontent.com/u/5310853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>zhipeng</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Ox0400" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/woodmeal"><img src="https://avatars.githubusercontent.com/u/104011197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>woodmeal</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=woodmeal" title="Code">💻</a></td>
<td align="center"><a href="https://magiclike.codeberg.page/"><img src="https://avatars.githubusercontent.com/u/82117109?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MagicLike</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=MagicLike" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/hisamafahri"><img src="https://avatars.githubusercontent.com/u/65691613?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hisam Fahri</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hisamafahri" title="Code">💻</a></td>
<td align="center"><a href="https://liangchengj.com"><img src="https://avatars.githubusercontent.com/u/48881023?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Liangcheng Juves</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LiangchengJ" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/attet"><img src="https://avatars.githubusercontent.com/u/1911416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Atte Timonen</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=attet" title="Code">💻</a></td>
</tr>
</table>
<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
Dieses Projekt folgt der [all-contributors](https://github.com/all-contributors/all-contributors) Spezifikation. Beiträge jeglicher Art sind willkommen!

265
README.it-IT.md Normal file
View File

@@ -0,0 +1,265 @@
[![](docs/readme.png)](https://tabby.sh)
<p align="center">
<a href="https://github.com/Eugeny/tabby/releases/latest"><img alt="GitHub All Releases" src="https://img.shields.io/github/downloads/eugeny/tabby/total.svg?label=DOWNLOADS&logo=github&style=for-the-badge"></a> &nbsp; <a href="https://nightly.link/Eugeny/tabby/workflows/build/master"><img src="https://shields.io/badge/-Nightly%20Builds-orange?logo=hackthebox&logoColor=fff&style=for-the-badge"/></a> &nbsp; <a href="https://matrix.to/#/#tabby-general:matrix.org"><img alt="Matrix" src="https://img.shields.io/matrix/tabby-general:matrix.org?logo=matrix&style=for-the-badge&color=magenta"></a> &nbsp <a href="https://translate.tabby.sh/"><img alt="Translate" src="https://shields.io/badge/Translate-UI-white?logo=googletranslate&style=for-the-badge&color=white&logoColor=fff"></a> &nbsp; <a href="https://twitter.com/eugeeeeny"><img alt="Twitter" src="https://shields.io/badge/Subscribe-News-blue?logo=twitter&style=for-the-badge&color=blue"></a>
</p>
<p align="center">
<a href="https://ko-fi.com/J3J8KWTF">
<img src="https://cdn.ko-fi.com/cdn/kofi3.png?v=2" width="150">
</a>
</p>
----
### Downloads:
* [Ultima versione](https://github.com/Eugeny/tabby/releases/latest)
* [Repository](https://packagecloud.io/eugeny/tabby): [Pacchetto Debian/Ubuntu](https://packagecloud.io/eugeny/tabby/install#bash-deb), [Pachetto RPM](https://packagecloud.io/eugeny/tabby/install#bash-rpm)
* [Ultima edizione nightly](https://nightly.link/Eugeny/tabby/workflows/build/master)
<br/>
<p align="center">
Questo README è disponibile anche in: <a href="./README.md">:gb: English</a> · <a href="./README.ru-RU.md">:ru: Русский</a> · <a href="./README.ko-KR.md">:kr: 한국어</a> · <a href="./README.zh-CN.md">:cn: 简体中文</a> · <a href="./README.de-DE.md">:de: Deutsch</a>
----
[**Tabby**](https://tabby.sh) (precedentemente **Terminus**) è un emulatore di terminale, SSH e client seriale altamente configurabile per Windows, macOS e Linux
* Client SSH e Telnet integrato con gestore delle connessioni
* Terminale seriale integrato
* Temi e combinazioni di colori
* Scorciatoie completamente configurabili e scorciatoie multi-tasto
* Divisibile in pannelli
* Ricorda le schede aperte
* Supporto PowerShell (e PS Core), WSL, Git-Bash, Cygwin, MSYS2, Cmder e CMD
* Trasferimento file diretto da/a sessioni SSH tramite Zmodem
* Pieno supporto Unicode inclusi caratteri a doppia larghezza
* Non si blocca su output a flusso rapido
* Proper shell experience on Windows including tab completion (via Clink)
* Integrated encrypted container for SSH secrets and configuration
* Esperienza shell studiaat per Windows incluso il completamento delle schede (tramite Clink)
* Contenitore crittografato integrato per chiavi SSH e file di configurazione
* Client SSH, SFTP e Telnet disponibile come [web app](https://tabby.sh/app) (anche [self-hosted](https://github.com/Eugeny/tabby-web)).
# Contenuti <!-- omit in toc -->
- [Cosa è e cosa non è Tabby](#cosa-è-e-cosa-non-è-tabby)
- [Caratteristiche del Terminale](#caratteristiche-del-terminale)
- [Client SSH](#client-ssh)
- [Terminale Seriale](#terminale-seriale)
- [Portabilità](#portabilità)
- [Plugin](#plugin)
- [Temi](#temi)
- [Partecipazione](#partecipazione)
<a name="about"></a>
# Cosa è e cosa non è Tabby
* **Tabby è** un'alternativa al terminale standard di Windows (conhost), PowerShell ISE, PuTTY, macOS Terminal.app e iTerm
* **Tabby non è** una nuova shell o un'alternativa a MinGW o Cygwin. Non è nemmeno leggero: se l'utilizzo della RAM è importante, considera [Conemu](https://conemu.github.io) o [Alacritty](https://github.com/jwilm/alacritty)
<a name="terminal"></a>
# Caratteristiche del Terminale
![](docs/readme-terminal.png)
* Un terminale V220 + vari estensioni
* Suddivisione in pannelli
* Schede su qualsiasi lato della finestra
* Finestra agganciabile opzionale con un tasto di scelta rapida ("Quake console")
* Rilevamento del progresso
* Notifica al completamento del processo
* Incolla tra parentesi e avvisi di incollaggio multilinea
* Legature dei caratteri
* Profili shell personalizzati
* Incolla RMB e copia su selezione opzionale (in stile PuTTY)
<a name="ssh"></a>
# Client SSH
![](docs/readme-ssh.png)
* Client SSH2 con un gestore di connessioni
* X11 e port forwarding
* Gestione automatica dell'host di salto
* Inoltro dell'agente (incluso Pageant e l'agente OpenSSH nativo di Windows)
* Script di accesso
<a name="serial"></a>
# Terminale Seriale
* Connessioni salvate
* Supporto per l'input Readline
* Input esadecimale byte per byte opzionale e output hexdump
* Conversione nuova riga
* Riconnessione automatica
<a name="portable"></a>
# Portabilità
Tabby può essere eseguito come app portatile su Windows, se crei una cartella `data` nella stessa posizione in cui si trova `Tabby.exe`.
<a name="plugins"></a>
# Plugin
Plugins and themes can be installed directly from the Settings view inside Tabby.
* [docker](https://github.com/Eugeny/tabby-docker) - connect to Docker containers
* [title-control](https://github.com/kbjr/terminus-title-control) - allows modifying the title of the terminal tabs by providing a prefix, suffix, and/or strings to be removed
* [quick-cmds](https://github.com/Domain/terminus-quick-cmds) - quickly send commands to one or all terminal tabs
* [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>
# Temi
* [hype](https://github.com/Eugeny/tabby-theme-hype) - a Hyper inspired theme
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) - the Relaxed theme for Tabby
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox)
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10)
* [altair](https://github.com/yxuko/terminus-altair)
# Sponsor <!-- omit in toc -->
[![](https://assets-production.packagecloud.io/assets/packagecloud-logo-light-scaled-26ce8e96060fddf74afbd4445e63ba35590d4aaa56edc98495bb390ef3cae0ae.png)](https://packagecloud.io)
[**packagecloud**](https://packagecloud.io) ha fornito gratuitamente un hosting per i repository Debian/RPM
<a name="contributing"></a>
# Partecipazione
Richieste pull e plugin sono i benvenuti!
Vedi [HACKING.md](https://github.com/Eugeny/tabby/blob/master/HACKING.md) e la [documentazione API](https://docs.tabby.sh/) per informazioni su come è strutturato il progetto e un brevissimo tutorial sullo sviluppo dei plugin.
---
<a name="contributors"></a>
Grazie a queste persone meravigliose ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center"><a href="http://www.russellmyers.com"><img src="https://avatars2.githubusercontent.com/u/184085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Russell Myers</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mezner" title="Code">💻</a></td>
<td align="center"><a href="http://www.morwire.com"><img src="https://avatars1.githubusercontent.com/u/3991658?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Austin Warren</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ehwarren" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Drachenkaetzchen"><img src="https://avatars1.githubusercontent.com/u/162974?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Felicia Hummel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Drachenkaetzchen" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mikemaccana"><img src="https://avatars2.githubusercontent.com/u/172594?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mike MacCana</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mikemaccana" title="Tests">⚠️</a> <a href="#design-mikemaccana" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/yxuko"><img src="https://avatars1.githubusercontent.com/u/1786317?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Yacine Kanzari</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yxuko" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/BBJip"><img src="https://avatars2.githubusercontent.com/u/32908927?v=4?s=100" width="100px;" alt=""/><br /><sub><b>BBJip</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BBJip" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Futagirl"><img src="https://avatars2.githubusercontent.com/u/33533958?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Futagirl</b></sub></a><br /><a href="#design-Futagirl" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://www.levrik.io"><img src="https://avatars3.githubusercontent.com/u/9491603?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Levin Rickert</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=levrik" title="Code">💻</a></td>
<td align="center"><a href="https://kwonoj.github.io"><img src="https://avatars2.githubusercontent.com/u/1210596?v=4?s=100" width="100px;" alt=""/><br /><sub><b>OJ Kwon</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=kwonoj" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Domain"><img src="https://avatars2.githubusercontent.com/u/903197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>domain</b></sub></a><br /><a href="#plugin-Domain" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Domain" title="Code">💻</a></td>
<td align="center"><a href="http://www.jbrumond.me"><img src="https://avatars1.githubusercontent.com/u/195127?v=4?s=100" width="100px;" alt=""/><br /><sub><b>James Brumond</b></sub></a><br /><a href="#plugin-kbjr" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://www.growingwiththeweb.com"><img src="https://avatars0.githubusercontent.com/u/2193314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Daniel Imms</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Code">💻</a> <a href="#plugin-Tyriar" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/baflo"><img src="https://avatars2.githubusercontent.com/u/834350?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Florian Bachmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=baflo" title="Code">💻</a></td>
<td align="center"><a href="http://michael-kuehnel.de"><img src="https://avatars2.githubusercontent.com/u/441011?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Kühnel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mischah" title="Code">💻</a> <a href="#design-mischah" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/NieLeben"><img src="https://avatars3.githubusercontent.com/u/47182955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tilmann Meyer</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NieLeben" title="Code">💻</a></td>
<td align="center"><a href="http://www.jubeat.net"><img src="https://avatars3.githubusercontent.com/u/11289158?v=4?s=100" width="100px;" alt=""/><br /><sub><b>PM Extra</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/issues?q=author%3APMExtra" title="Bug reports">🐛</a></td>
<td align="center"><a href="https://jjuhas.keybase.pub//"><img src="https://avatars1.githubusercontent.com/u/6438760?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=IgnusG" title="Code">💻</a></td>
<td align="center"><a href="https://hans-koch.me"><img src="https://avatars0.githubusercontent.com/u/1093709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hans Koch</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hammster" title="Code">💻</a></td>
<td align="center"><a href="http://thepuzzlemaker.info"><img src="https://avatars3.githubusercontent.com/u/12666617?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dak Smyth</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ThePuzzlemaker" title="Code">💻</a></td>
<td align="center"><a href="http://yfwz100.github.io"><img src="https://avatars2.githubusercontent.com/u/983211?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Wang Zhi</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yfwz100" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/jack1142"><img src="https://avatars0.githubusercontent.com/u/6032823?v=4?s=100" width="100px;" alt=""/><br /><sub><b>jack1142</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=jack1142" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/hdougie"><img src="https://avatars1.githubusercontent.com/u/450799?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Howie Douglas</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hdougie" title="Code">💻</a></td>
<td align="center"><a href="https://chriskaczor.com"><img src="https://avatars2.githubusercontent.com/u/180906?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chris Kaczor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ckaczor" title="Code">💻</a></td>
<td align="center"><a href="https://www.boxmein.net"><img src="https://avatars1.githubusercontent.com/u/358714?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Johannes Kadak</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boxmein" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/LeSeulArtichaut"><img src="https://avatars1.githubusercontent.com/u/38361244?v=4?s=100" width="100px;" alt=""/><br /><sub><b>LeSeulArtichaut</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LeSeulArtichaut" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/CyrilTaylor"><img src="https://avatars0.githubusercontent.com/u/12631466?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Cyril Taylor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=CyrilTaylor" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/nstefanou"><img src="https://avatars3.githubusercontent.com/u/51129173?v=4?s=100" width="100px;" alt=""/><br /><sub><b>nstefanou</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=nstefanou" title="Code">💻</a> <a href="#plugin-nstefanou" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="https://github.com/orin220444"><img src="https://avatars3.githubusercontent.com/u/30747229?v=4?s=100" width="100px;" alt=""/><br /><sub><b>orin220444</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=orin220444" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/Goobles"><img src="https://avatars3.githubusercontent.com/u/8776771?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gobius Dolhain</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Goobles" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/3l0w"><img src="https://avatars2.githubusercontent.com/u/37798980?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gwilherm Folliot</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=3l0w" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Dimitory"><img src="https://avatars0.githubusercontent.com/u/475955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dmitry Pronin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=dimitory" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/JonathanBeverley"><img src="https://avatars1.githubusercontent.com/u/20328966?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan Beverley</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=JonathanBeverley" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/zend"><img src="https://avatars1.githubusercontent.com/u/25160?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Zenghai Liang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=zend" title="Code">💻</a></td>
<td align="center"><a href="https://about.me/matishadow"><img src="https://avatars0.githubusercontent.com/u/9083085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mateusz Tracz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=matishadow" title="Code">💻</a></td>
<td align="center"><a href="https://zergpool.com"><img src="https://avatars3.githubusercontent.com/u/36234677?v=4?s=100" width="100px;" alt=""/><br /><sub><b>pinpin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=pinpins" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/TakuroOnoda"><img src="https://avatars0.githubusercontent.com/u/1407926?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Takuro Onoda</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TakuroOnoda" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/frauhottelmann"><img src="https://avatars2.githubusercontent.com/u/902705?v=4?s=100" width="100px;" alt=""/><br /><sub><b>frauhottelmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=frauhottelmann" title="Code">💻</a></td>
<td align="center"><a href="http://patalong.pl"><img src="https://avatars.githubusercontent.com/u/29167842?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piotr Patalong</b></sub></a><br /><a href="#design-VectorKappa" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/clarkwang"><img src="https://avatars.githubusercontent.com/u/157076?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Clark Wang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=clarkwang" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/iamchating"><img src="https://avatars.githubusercontent.com/u/7088153?v=4?s=100" width="100px;" alt=""/><br /><sub><b>iamchating</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=iamchating" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/starxg"><img src="https://avatars.githubusercontent.com/u/34997494?v=4?s=100" width="100px;" alt=""/><br /><sub><b>starxg</b></sub></a><br /><a href="#plugin-starxg" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://hashnote.net/"><img src="https://avatars.githubusercontent.com/u/546312?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alisue</b></sub></a><br /><a href="#design-lambdalisue" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/ydcool"><img src="https://avatars.githubusercontent.com/u/5668295?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dominic Yin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ydcool" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/bdr99"><img src="https://avatars.githubusercontent.com/u/2292715?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Brandon Rothweiler</b></sub></a><br /><a href="#design-bdr99" title="Design">🎨</a></td>
<td align="center"><a href="https://git.io/JnP49"><img src="https://avatars.githubusercontent.com/u/63876444?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Logic Machine</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=logicmachine123" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/cypherbits"><img src="https://avatars.githubusercontent.com/u/10424900?v=4?s=100" width="100px;" alt=""/><br /><sub><b>cypherbits</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=cypherbits" title="Documentation">📖</a></td>
<td align="center"><a href="https://modulolotus.net"><img src="https://avatars.githubusercontent.com/u/946421?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matthew Davidson</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=KingMob" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/al-wi"><img src="https://avatars.githubusercontent.com/u/11092199?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alexander Wiedemann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=al-wi" title="Code">💻</a></td>
<td align="center"><a href="https://www.notion.so/3d45c6bd2cbd4f938873a4bd12e23375"><img src="https://avatars.githubusercontent.com/u/59506394?v=4?s=100" width="100px;" alt=""/><br /><sub><b>장보연</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BoYeonJang" title="Documentation">📖</a></td>
</tr>
<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>
<td align="center"><a href="https://github.com/highfredo"><img src="https://avatars.githubusercontent.com/u/5951524?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alfredo Arellano de la Fuente</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=highfredo" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/NessunKim"><img src="https://avatars.githubusercontent.com/u/12974079?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MH Kim</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NessunKim" title="Code">💻</a></td>
<td align="center"><a href="https://discord.gg/4c5EVTBhtp"><img src="https://avatars.githubusercontent.com/u/40345645?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Marmota</b></sub></a><br /><a href="#design-jaimeadf" title="Design">🎨</a></td>
<td align="center"><a href="https://ares.zone"><img src="https://avatars.githubusercontent.com/u/40336192?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ares Andrew</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TENX-S" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="https://usual.io/"><img src="https://avatars.githubusercontent.com/u/780052?v=4?s=100" width="100px;" alt=""/><br /><sub><b>George Korsnick</b></sub></a><br /><a href="#financial-gkor" title="Financial">💵</a></td>
<td align="center"><a href="https://about.me/ulu"><img src="https://avatars.githubusercontent.com/u/872764?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Artem Smirnov</b></sub></a><br /><a href="#financial-uluhonolulu" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/nevotheless"><img src="https://avatars.githubusercontent.com/u/779797?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tim Kopplow</b></sub></a><br /><a href="#financial-nevotheless" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/mrthock"><img src="https://avatars.githubusercontent.com/u/88901709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>mrthock</b></sub></a><br /><a href="#financial-mrthock" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/lrottach"><img src="https://avatars.githubusercontent.com/u/50323692?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Lukas Rottach</b></sub></a><br /><a href="#financial-lrottach" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/boonkerz"><img src="https://avatars.githubusercontent.com/u/277321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>boonkerz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boonkerz" title="Code">💻</a> <a href="#translation-boonkerz" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/milotype"><img src="https://avatars.githubusercontent.com/u/43657314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Milo Ivir</b></sub></a><br /><a href="#translation-milotype" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/JasonCubic"><img src="https://avatars.githubusercontent.com/u/8921015?v=4?s=100" width="100px;" alt=""/><br /><sub><b>JasonCubic</b></sub></a><br /><a href="#design-JasonCubic" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/MaxWaldorf"><img src="https://avatars.githubusercontent.com/u/15877853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MaxWaldorf</b></sub></a><br /><a href="#infra-MaxWaldorf" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
<td align="center"><a href="https://github.com/mwz"><img src="https://avatars.githubusercontent.com/u/1190768?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Wizner</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mwz" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mgrulich"><img src="https://avatars.githubusercontent.com/u/781036?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Martin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mgrulich" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/piersandro"><img src="https://avatars.githubusercontent.com/u/19996309?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piersandro Guerrera</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=piersandro" title="Documentation">📖</a> <a href="#translation-piersandro" title="Translation">🌍</a></td>
<td align="center"><a href="http://pingbase.cn"><img src="https://avatars.githubusercontent.com/u/19320096?v=4?s=100" width="100px;" alt=""/><br /><sub><b>X-0x01</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=X-0x01" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Allenator"><img src="https://avatars.githubusercontent.com/u/11794943?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allenator</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Allenator" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="http://microhobby.com.br/blog"><img src="https://avatars.githubusercontent.com/u/2633321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matheus Castello</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=microhobby" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Jai-JAP"><img src="https://avatars.githubusercontent.com/u/78354625?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jai A P</b></sub></a><br /><a href="#platform-Jai-JAP" title="Packaging/porting to new platform">📦</a></td>
<td align="center"><a href="https://blog.ysc3839.com"><img src="https://avatars.githubusercontent.com/u/12028138?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Richard Yu</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ysc3839" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/artu-ole"><img src="https://avatars.githubusercontent.com/u/15938416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>artu-ole</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=artu-ole" title="Code">💻</a></td>
<td align="center"><a href="https://timagribanov.github.io/"><img src="https://avatars.githubusercontent.com/u/48593815?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Timofey Gribanov</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TimaGribanov" title="Documentation">📖</a> <a href="#translation-TimaGribanov" title="Translation">🌍</a></td>
<td align="center"><a href="https://git.christianbingman.com"><img src="https://avatars.githubusercontent.com/u/42191425?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Christian Bingman</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ChristianBingman" title="Code">💻</a></td>
<td align="center"><a href="http://zhangzhipeng2023.cn/"><img src="https://avatars.githubusercontent.com/u/5310853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>zhipeng</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Ox0400" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/woodmeal"><img src="https://avatars.githubusercontent.com/u/104011197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>woodmeal</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=woodmeal" title="Code">💻</a></td>
<td align="center"><a href="https://magiclike.codeberg.page/"><img src="https://avatars.githubusercontent.com/u/82117109?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MagicLike</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=MagicLike" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/hisamafahri"><img src="https://avatars.githubusercontent.com/u/65691613?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hisam Fahri</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hisamafahri" title="Code">💻</a></td>
<td align="center"><a href="https://liangchengj.com"><img src="https://avatars.githubusercontent.com/u/48881023?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Liangcheng Juves</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LiangchengJ" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/attet"><img src="https://avatars.githubusercontent.com/u/1911416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Atte Timonen</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=attet" title="Code">💻</a></td>
</tr>
</table>
<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
Questo progetto segue le specifiche [all-contributors](https://github.com/all-contributors/all-contributors). Contributi di qualsiasi genere sono ben accetti!

261
README.ko-KR.md Normal file
View File

@@ -0,0 +1,261 @@
[![](docs/readme.png)](https://tabby.sh)
<p align="center">
<a href="https://github.com/Eugeny/tabby/releases/latest"><img alt="GitHub All Releases" src="https://img.shields.io/github/downloads/eugeny/tabby/total.svg?label=DOWNLOADS&logo=github&style=for-the-badge"></a> &nbsp; <a href="https://nightly.link/Eugeny/tabby/workflows/build/master"><img src="https://shields.io/badge/-Nightly%20Builds-orange?logo=hackthebox&logoColor=fff&style=for-the-badge"/></a> &nbsp; <a href="https://matrix.to/#/#tabby-general:matrix.org"><img alt="Matrix" src="https://img.shields.io/matrix/tabby-general:matrix.org?logo=matrix&style=for-the-badge&color=magenta"></a>
</p>
<p align="center">
<a href="https://ko-fi.com/J3J8KWTF">
<img src="https://cdn.ko-fi.com/cdn/kofi3.png?v=2" width="150">
</a>
</p>
----
### 다운로드:
* [Latest release](https://github.com/Eugeny/tabby/releases/latest)
* [Repositories](https://packagecloud.io/eugeny/tabby): [Debian/Ubuntu-based](https://packagecloud.io/eugeny/tabby/install#bash-deb), [RPM-based](https://packagecloud.io/eugeny/tabby/install#bash-rpm)
* [Latest nightly build](https://nightly.link/Eugeny/tabby/workflows/build/master)
----
**Tabby** (구 **Terminus**)는 Windows, macOS 및 Linux용으로 뛰어난 구성의 터미널 에뮬레이터, SSH 및 시리얼 클라이언트입니다.
* 통합 SSH 클라이언트 및 연결 관리자
* 통합 시리얼 터미널
* 테마 및 색 구성표
* 전체 구성이 가능한 단축키 및 다중 코드 단축키
* 창 분할
* 이전 탭 사용을 기억
* PowerShell (및 PS Core), WSL, Git-Bash, Cygwin, Cmder 및 CMD 지원
* Zmodem을 통한 SSH 세션 간의 직접 파일 전송
* 2바이트 문자를 포함한 전체 유니코드 지원
* 빠르게 출력되는 것에 대해 휩쓸리지 않음
* 탭 완성을 포함한 Windows에서의 적절한 셸 환경 (Clink을 통해)
* SSH 시크릿 및 구성을 위한 통합 암호화 컨테이너
# 목차 <!-- omit in toc -->
- [Tabby는 무엇인가](#tabby는-무엇인가)
- [터미널 기능](#터미널-기능)
- [SSH 클라이언트](#ssh-클라이언트)
- [시리얼 터미널](#시리얼-터미널)
- [포터블](#포터블)
- [플러그인](#플러그인)
- [테마](#테마)
- [기여](#기여)
<a name="about"></a>
# Tabby는 무엇인가
* **Tabby는** Windows의 표준 터미널 (conhost), PowerShell ISE, PuTTY 또는 iTerm의 대안 프로그램입니다.
* **Tabby는** 새로운 셸이나 MinGW 또는 Cygwin을 대체하지 **않습니다**. 가볍지도 않습니다. - RAM 사용량이 중요한 경우, [Conemu](https://conemu.github.io) 또는 [Alacritty](https://github.com/jwilm/alacritty)를 고려하십시오.
<a name="terminal"></a>
# 터미널 기능
![](docs/readme-terminal.png)
* A V220 터미널 + 다양한 확장
* 여러 개의 분할 창 중첩
* 모든 측면에 탭이 위치함
* 전역 스폰 단축키가 있는 도킹 가능한 윈도우 ("Quake console")
* 진행률 탐지
* 프로세스 완료 시 알림
* 괄호 붙여넣기, 여러 줄 붙여넣기 경고
* 폰트 합자(ligatures)
* 커스텀 셸 프로필
* RMB 붙여넣기 및 복사 선택 옵션 (PuTTY 스타일)
<a name="ssh"></a>
# SSH 클라이언트
![](docs/readme-ssh.png)
* 연결 관리자가 있는 SSH2 클라이언트
* X11 및 포트 포워딩
* 자동 jump 호스트 관리
* 에이전트 전달 (Pageant 및 Windows 기본 OpenSSH 에이전트 포함)
* 로그인 스크립트
<a name="serial"></a>
# 시리얼 터미널
* 연결 저장
* Readline 입력 지원
* 선택적 hex byte별 입력 및 hexdump 출력
* 개행 변환
* 자동 재접속
<a name="portable"></a>
# 포터블
`Tabby.exe`가 있는 동일한 위치에 `data` 폴더를 생성하면 Windows에서 Tabby가 포터블 앱으로 실행됩니다.
<a name="plugins"></a>
# 플러그인
플러그인과 테마는 Tabby 내부의 설정에서 직접 설치할 수 있습니다.
* [clickable-links](https://github.com/Eugeny/tabby-clickable-links) - m터미널의 경로 및 URL을 클릭 가능하게
* [docker](https://github.com/Eugeny/tabby-docker) - Docker 컨테이너에 연결
* [title-control](https://github.com/kbjr/terminus-title-control) - 접두사, 접미사 및/또는 문자열 제거를 제공하여 터미널 탭의 제목을 수정
* [quick-cmds](https://github.com/Domain/terminus-quick-cmds) - 하나 또는 모든 터미널 탭에 신속한 명령 전송
* [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>
# 테마
* [hype](https://github.com/Eugeny/tabby-theme-hype) - Hyper에서 영감을 받은 테마
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) - Tabby를 위해 여유로움을 제공하는 테마
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox)
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10)
* [altair](https://github.com/yxuko/terminus-altair)
# 스폰서 <!-- omit in toc -->
[![](https://assets-production.packagecloud.io/assets/packagecloud-logo-light-scaled-26ce8e96060fddf74afbd4445e63ba35590d4aaa56edc98495bb390ef3cae0ae.png)](https://packagecloud.io)
[**packagecloud**](https://packagecloud.io)가 무료 Debian/RPM 저장소 호스팅을 제공하였습니다.
<a name="contributing"></a>
# 기여
Pull requests and plugins are welcome!
프로젝트 배치 방법에 대한 자세한 내용과 매우 간단한 플러그인 개발 튜토리얼은 [HACKING.md](https://github.com/Eugeny/tabby/blob/master/HACKING.md) 및 [API docs](https://docs.tabby.sh/)를 참조하십시오.
---
<a name="contributors"></a>
여기있는 멋진 사람들에게 진심으로 감사합니다. ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center"><a href="http://www.russellmyers.com"><img src="https://avatars2.githubusercontent.com/u/184085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Russell Myers</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mezner" title="Code">💻</a></td>
<td align="center"><a href="http://www.morwire.com"><img src="https://avatars1.githubusercontent.com/u/3991658?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Austin Warren</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ehwarren" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Drachenkaetzchen"><img src="https://avatars1.githubusercontent.com/u/162974?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Felicia Hummel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Drachenkaetzchen" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mikemaccana"><img src="https://avatars2.githubusercontent.com/u/172594?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mike MacCana</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mikemaccana" title="Tests">⚠️</a> <a href="#design-mikemaccana" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/yxuko"><img src="https://avatars1.githubusercontent.com/u/1786317?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Yacine Kanzari</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yxuko" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/BBJip"><img src="https://avatars2.githubusercontent.com/u/32908927?v=4?s=100" width="100px;" alt=""/><br /><sub><b>BBJip</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BBJip" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Futagirl"><img src="https://avatars2.githubusercontent.com/u/33533958?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Futagirl</b></sub></a><br /><a href="#design-Futagirl" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://www.levrik.io"><img src="https://avatars3.githubusercontent.com/u/9491603?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Levin Rickert</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=levrik" title="Code">💻</a></td>
<td align="center"><a href="https://kwonoj.github.io"><img src="https://avatars2.githubusercontent.com/u/1210596?v=4?s=100" width="100px;" alt=""/><br /><sub><b>OJ Kwon</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=kwonoj" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Domain"><img src="https://avatars2.githubusercontent.com/u/903197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>domain</b></sub></a><br /><a href="#plugin-Domain" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Domain" title="Code">💻</a></td>
<td align="center"><a href="http://www.jbrumond.me"><img src="https://avatars1.githubusercontent.com/u/195127?v=4?s=100" width="100px;" alt=""/><br /><sub><b>James Brumond</b></sub></a><br /><a href="#plugin-kbjr" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://www.growingwiththeweb.com"><img src="https://avatars0.githubusercontent.com/u/2193314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Daniel Imms</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Code">💻</a> <a href="#plugin-Tyriar" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/baflo"><img src="https://avatars2.githubusercontent.com/u/834350?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Florian Bachmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=baflo" title="Code">💻</a></td>
<td align="center"><a href="http://michael-kuehnel.de"><img src="https://avatars2.githubusercontent.com/u/441011?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Kühnel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mischah" title="Code">💻</a> <a href="#design-mischah" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/NieLeben"><img src="https://avatars3.githubusercontent.com/u/47182955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tilmann Meyer</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NieLeben" title="Code">💻</a></td>
<td align="center"><a href="http://www.jubeat.net"><img src="https://avatars3.githubusercontent.com/u/11289158?v=4?s=100" width="100px;" alt=""/><br /><sub><b>PM Extra</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/issues?q=author%3APMExtra" title="Bug reports">🐛</a></td>
<td align="center"><a href="https://jjuhas.keybase.pub//"><img src="https://avatars1.githubusercontent.com/u/6438760?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=IgnusG" title="Code">💻</a></td>
<td align="center"><a href="https://hans-koch.me"><img src="https://avatars0.githubusercontent.com/u/1093709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hans Koch</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hammster" title="Code">💻</a></td>
<td align="center"><a href="http://thepuzzlemaker.info"><img src="https://avatars3.githubusercontent.com/u/12666617?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dak Smyth</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ThePuzzlemaker" title="Code">💻</a></td>
<td align="center"><a href="http://yfwz100.github.io"><img src="https://avatars2.githubusercontent.com/u/983211?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Wang Zhi</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yfwz100" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/jack1142"><img src="https://avatars0.githubusercontent.com/u/6032823?v=4?s=100" width="100px;" alt=""/><br /><sub><b>jack1142</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=jack1142" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/hdougie"><img src="https://avatars1.githubusercontent.com/u/450799?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Howie Douglas</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hdougie" title="Code">💻</a></td>
<td align="center"><a href="https://chriskaczor.com"><img src="https://avatars2.githubusercontent.com/u/180906?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chris Kaczor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ckaczor" title="Code">💻</a></td>
<td align="center"><a href="https://www.boxmein.net"><img src="https://avatars1.githubusercontent.com/u/358714?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Johannes Kadak</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boxmein" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/LeSeulArtichaut"><img src="https://avatars1.githubusercontent.com/u/38361244?v=4?s=100" width="100px;" alt=""/><br /><sub><b>LeSeulArtichaut</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LeSeulArtichaut" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/CyrilTaylor"><img src="https://avatars0.githubusercontent.com/u/12631466?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Cyril Taylor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=CyrilTaylor" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/nstefanou"><img src="https://avatars3.githubusercontent.com/u/51129173?v=4?s=100" width="100px;" alt=""/><br /><sub><b>nstefanou</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=nstefanou" title="Code">💻</a> <a href="#plugin-nstefanou" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="https://github.com/orin220444"><img src="https://avatars3.githubusercontent.com/u/30747229?v=4?s=100" width="100px;" alt=""/><br /><sub><b>orin220444</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=orin220444" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/Goobles"><img src="https://avatars3.githubusercontent.com/u/8776771?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gobius Dolhain</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Goobles" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/3l0w"><img src="https://avatars2.githubusercontent.com/u/37798980?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gwilherm Folliot</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=3l0w" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Dimitory"><img src="https://avatars0.githubusercontent.com/u/475955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dmitry Pronin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=dimitory" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/JonathanBeverley"><img src="https://avatars1.githubusercontent.com/u/20328966?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan Beverley</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=JonathanBeverley" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/zend"><img src="https://avatars1.githubusercontent.com/u/25160?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Zenghai Liang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=zend" title="Code">💻</a></td>
<td align="center"><a href="https://about.me/matishadow"><img src="https://avatars0.githubusercontent.com/u/9083085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mateusz Tracz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=matishadow" title="Code">💻</a></td>
<td align="center"><a href="https://zergpool.com"><img src="https://avatars3.githubusercontent.com/u/36234677?v=4?s=100" width="100px;" alt=""/><br /><sub><b>pinpin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=pinpins" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/TakuroOnoda"><img src="https://avatars0.githubusercontent.com/u/1407926?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Takuro Onoda</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TakuroOnoda" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/frauhottelmann"><img src="https://avatars2.githubusercontent.com/u/902705?v=4?s=100" width="100px;" alt=""/><br /><sub><b>frauhottelmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=frauhottelmann" title="Code">💻</a></td>
<td align="center"><a href="http://patalong.pl"><img src="https://avatars.githubusercontent.com/u/29167842?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piotr Patalong</b></sub></a><br /><a href="#design-VectorKappa" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/clarkwang"><img src="https://avatars.githubusercontent.com/u/157076?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Clark Wang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=clarkwang" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/iamchating"><img src="https://avatars.githubusercontent.com/u/7088153?v=4?s=100" width="100px;" alt=""/><br /><sub><b>iamchating</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=iamchating" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/starxg"><img src="https://avatars.githubusercontent.com/u/34997494?v=4?s=100" width="100px;" alt=""/><br /><sub><b>starxg</b></sub></a><br /><a href="#plugin-starxg" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://hashnote.net/"><img src="https://avatars.githubusercontent.com/u/546312?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alisue</b></sub></a><br /><a href="#design-lambdalisue" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/ydcool"><img src="https://avatars.githubusercontent.com/u/5668295?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dominic Yin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ydcool" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/bdr99"><img src="https://avatars.githubusercontent.com/u/2292715?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Brandon Rothweiler</b></sub></a><br /><a href="#design-bdr99" title="Design">🎨</a></td>
<td align="center"><a href="https://git.io/JnP49"><img src="https://avatars.githubusercontent.com/u/63876444?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Logic Machine</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=logicmachine123" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/cypherbits"><img src="https://avatars.githubusercontent.com/u/10424900?v=4?s=100" width="100px;" alt=""/><br /><sub><b>cypherbits</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=cypherbits" title="Documentation">📖</a></td>
<td align="center"><a href="https://modulolotus.net"><img src="https://avatars.githubusercontent.com/u/946421?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matthew Davidson</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=KingMob" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/al-wi"><img src="https://avatars.githubusercontent.com/u/11092199?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alexander Wiedemann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=al-wi" title="Code">💻</a></td>
<td align="center"><a href="https://www.notion.so/3d45c6bd2cbd4f938873a4bd12e23375"><img src="https://avatars.githubusercontent.com/u/59506394?v=4?s=100" width="100px;" alt=""/><br /><sub><b>장보연</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BoYeonJang" title="Documentation">📖</a></td>
</tr>
<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>
<td align="center"><a href="https://github.com/highfredo"><img src="https://avatars.githubusercontent.com/u/5951524?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alfredo Arellano de la Fuente</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=highfredo" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/NessunKim"><img src="https://avatars.githubusercontent.com/u/12974079?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MH Kim</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NessunKim" title="Code">💻</a></td>
<td align="center"><a href="https://discord.gg/4c5EVTBhtp"><img src="https://avatars.githubusercontent.com/u/40345645?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Marmota</b></sub></a><br /><a href="#design-jaimeadf" title="Design">🎨</a></td>
<td align="center"><a href="https://ares.zone"><img src="https://avatars.githubusercontent.com/u/40336192?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ares Andrew</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TENX-S" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="https://usual.io/"><img src="https://avatars.githubusercontent.com/u/780052?v=4?s=100" width="100px;" alt=""/><br /><sub><b>George Korsnick</b></sub></a><br /><a href="#financial-gkor" title="Financial">💵</a></td>
<td align="center"><a href="https://about.me/ulu"><img src="https://avatars.githubusercontent.com/u/872764?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Artem Smirnov</b></sub></a><br /><a href="#financial-uluhonolulu" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/nevotheless"><img src="https://avatars.githubusercontent.com/u/779797?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tim Kopplow</b></sub></a><br /><a href="#financial-nevotheless" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/mrthock"><img src="https://avatars.githubusercontent.com/u/88901709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>mrthock</b></sub></a><br /><a href="#financial-mrthock" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/lrottach"><img src="https://avatars.githubusercontent.com/u/50323692?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Lukas Rottach</b></sub></a><br /><a href="#financial-lrottach" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/boonkerz"><img src="https://avatars.githubusercontent.com/u/277321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>boonkerz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boonkerz" title="Code">💻</a> <a href="#translation-boonkerz" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/milotype"><img src="https://avatars.githubusercontent.com/u/43657314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Milo Ivir</b></sub></a><br /><a href="#translation-milotype" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/JasonCubic"><img src="https://avatars.githubusercontent.com/u/8921015?v=4?s=100" width="100px;" alt=""/><br /><sub><b>JasonCubic</b></sub></a><br /><a href="#design-JasonCubic" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/MaxWaldorf"><img src="https://avatars.githubusercontent.com/u/15877853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MaxWaldorf</b></sub></a><br /><a href="#infra-MaxWaldorf" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
<td align="center"><a href="https://github.com/mwz"><img src="https://avatars.githubusercontent.com/u/1190768?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Wizner</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mwz" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mgrulich"><img src="https://avatars.githubusercontent.com/u/781036?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Martin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mgrulich" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/piersandro"><img src="https://avatars.githubusercontent.com/u/19996309?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piersandro Guerrera</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=piersandro" title="Documentation">📖</a> <a href="#translation-piersandro" title="Translation">🌍</a></td>
<td align="center"><a href="http://pingbase.cn"><img src="https://avatars.githubusercontent.com/u/19320096?v=4?s=100" width="100px;" alt=""/><br /><sub><b>X-0x01</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=X-0x01" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Allenator"><img src="https://avatars.githubusercontent.com/u/11794943?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allenator</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Allenator" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="http://microhobby.com.br/blog"><img src="https://avatars.githubusercontent.com/u/2633321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matheus Castello</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=microhobby" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Jai-JAP"><img src="https://avatars.githubusercontent.com/u/78354625?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jai A P</b></sub></a><br /><a href="#platform-Jai-JAP" title="Packaging/porting to new platform">📦</a></td>
<td align="center"><a href="https://blog.ysc3839.com"><img src="https://avatars.githubusercontent.com/u/12028138?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Richard Yu</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ysc3839" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/artu-ole"><img src="https://avatars.githubusercontent.com/u/15938416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>artu-ole</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=artu-ole" title="Code">💻</a></td>
<td align="center"><a href="https://timagribanov.github.io/"><img src="https://avatars.githubusercontent.com/u/48593815?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Timofey Gribanov</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TimaGribanov" title="Documentation">📖</a> <a href="#translation-TimaGribanov" title="Translation">🌍</a></td>
<td align="center"><a href="https://git.christianbingman.com"><img src="https://avatars.githubusercontent.com/u/42191425?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Christian Bingman</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ChristianBingman" title="Code">💻</a></td>
<td align="center"><a href="http://zhangzhipeng2023.cn/"><img src="https://avatars.githubusercontent.com/u/5310853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>zhipeng</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Ox0400" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/woodmeal"><img src="https://avatars.githubusercontent.com/u/104011197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>woodmeal</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=woodmeal" title="Code">💻</a></td>
<td align="center"><a href="https://magiclike.codeberg.page/"><img src="https://avatars.githubusercontent.com/u/82117109?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MagicLike</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=MagicLike" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/hisamafahri"><img src="https://avatars.githubusercontent.com/u/65691613?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hisam Fahri</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hisamafahri" title="Code">💻</a></td>
<td align="center"><a href="https://liangchengj.com"><img src="https://avatars.githubusercontent.com/u/48881023?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Liangcheng Juves</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LiangchengJ" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/attet"><img src="https://avatars.githubusercontent.com/u/1911416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Atte Timonen</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=attet" title="Code">💻</a></td>
</tr>
</table>
<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
이 프로젝트는 [모든 기여자](https://github.com/all-contributors/all-contributors)의 규격을 따릅니다. 어떠한 종류의 기여도 모두 환영합니다!
<img src="https://ga-beacon.appspot.com/UA-3278102-18/github/readme" width="1"/>

111
README.md
View File

@@ -1,8 +1,8 @@
![](docs/readme.png)
[![](docs/readme.png)](https://tabby.sh)
<p align="center">
<a href="https://github.com/Eugeny/tabby/releases/latest"><img alt="GitHub All Releases" src="https://img.shields.io/github/downloads/eugeny/tabby/total.svg?label=RELEASE&logo=github&style=for-the-badge"></a> &nbsp; <a href="https://nightly.link/Eugeny/tabby/workflows/build/master"><img src="https://shields.io/badge/-Nightly%20Builds-orange?logo=hackthebox&logoColor=fff&style=for-the-badge"/></a> &nbsp; <a href="https://matrix.to/#/#tabby-general:matrix.org"><img alt="Matrix" src="https://img.shields.io/matrix/tabby-general:matrix.org?logo=matrix&style=for-the-badge&color=magenta"></a>
<a href="https://github.com/Eugeny/tabby/releases/latest"><img alt="GitHub All Releases" src="https://img.shields.io/github/downloads/eugeny/tabby/total.svg?label=DOWNLOADS&logo=github&style=for-the-badge"></a> &nbsp; <a href="https://nightly.link/Eugeny/tabby/workflows/build/master"><img src="https://shields.io/badge/-Nightly%20Builds-orange?logo=hackthebox&logoColor=fff&style=for-the-badge"/></a> &nbsp; <a href="https://matrix.to/#/#tabby-general:matrix.org"><img alt="Matrix" src="https://img.shields.io/matrix/tabby-general:matrix.org?logo=matrix&style=for-the-badge&color=magenta"></a> &nbsp <a href="https://translate.tabby.sh/"><img alt="Translate" src="https://shields.io/badge/Translate-UI-white?logo=googletranslate&style=for-the-badge&color=white&logoColor=fff"></a> &nbsp; <a href="https://twitter.com/eugeeeeny"><img alt="Twitter" src="https://shields.io/badge/Subscribe-News-blue?logo=twitter&style=for-the-badge&color=blue"></a>
</p>
<p align="center">
@@ -16,30 +16,34 @@
### Downloads:
* [Latest release](https://github.com/Eugeny/tabby/releases/latest)
* [Nightly build](https://nightly.link/Eugeny/tabby/workflows/build/master)
* [Repositories](https://packagecloud.io/eugeny/tabby): [Debian/Ubuntu-based](https://packagecloud.io/eugeny/tabby/install#bash-deb), [RPM-based](https://packagecloud.io/eugeny/tabby/install#bash-rpm)
* [Latest nightly build](https://nightly.link/Eugeny/tabby/workflows/build/master)
<br/>
<p align="center">
This README is also available in: <a href="./README.ru-RU.md">:ru: Русский</a> · <a href="./README.ko-KR.md">:kr: 한국어</a> · <a href="./README.zh-CN.md">:cn: 简体中文</a> · <a href="./README.it-IT.md">:it: Italiano</a> · <a href="./README.de-DE.md">:de: Deutsch</a>
</p>
----
**Tabby** (formerly **Terminus**) is a highly configurable terminal emulator, SSH and serial client for Windows, macOS and Linux
[**Tabby**](https://tabby.sh) (formerly **Terminus**) is a highly configurable terminal emulator, SSH and serial client for Windows, macOS and Linux
* Integrated SSH client and connection manager
* Integrated SSH and Telnet client and connection manager
* Integrated serial terminal
* Theming and color schemes
* Fully configurable shortcuts and multi-chord shortcuts
* Split panes
* Remembers your tabs
* PowerShell (and PS Core), WSL, Git-Bash, Cygwin, Cmder and CMD support
* PowerShell (and PS Core), WSL, Git-Bash, Cygwin, MSYS2, Cmder and CMD support
* Direct file transfer from/to SSH sessions via Zmodem
* Full Unicode support including double-width characters
* Doesn't choke on fast-flowing outputs
* Proper shell experience on Windows including tab completion (via Clink)
* Integrated encrypted container for SSH secrets and configuration
* SSH, SFTP and Telnet client available as a [web app](https://tabby.sh/app) (also [self-hosted](https://github.com/Eugeny/tabby-web)).
---
# Contents <!-- omit in toc -->
# Contents
- [Contents](#contents)
- [What Tabby is and isn't](#what-tabby-is-and-isnt)
- [Terminal features](#terminal-features)
- [SSH Client](#ssh-client)
@@ -50,13 +54,15 @@
- [Contributing](#contributing)
<a name="about"></a>
# What Tabby is and isn't
* **Tabby is** an alternative to Windows' standard terminal (conhost), PowerShell ISE, PuTTY or iTerm
* **Tabby is** an alternative to Windows' standard terminal (conhost), PowerShell ISE, PuTTY, macOS Terminal.app and iTerm
* **Tabby is not** a new shell or a MinGW or Cygwin replacement. Neither is it lightweight - if RAM usage is of importance, consider [Conemu](https://conemu.github.io) or [Alacritty](https://github.com/jwilm/alacritty)
<a name="terminal"></a>
# Terminal features
![](docs/readme-terminal.png)
@@ -73,6 +79,7 @@
* Optional RMB paste and copy-on select (PuTTY style)
<a name="ssh"></a>
# SSH Client
![](docs/readme-ssh.png)
@@ -84,6 +91,7 @@
* Login scripts
<a name="serial"></a>
# Serial Terminal
* Saved connections
@@ -93,37 +101,48 @@
* Automatic reconnection
<a name="portable"></a>
# Portable
Tabby will run as a portable app on Windows, if you create a `data` folder in the same location where `Tabby.exe` lives.
<a name="plugins"></a>
# Plugins
Plugins and themes can be installed directly from the Settings view inside Tabby.
* [clickable-links](https://github.com/Eugeny/tabby-clickable-links) - makes paths and URLs in the terminal clickable
* [docker](https://github.com/Eugeny/tabby-docker) - connect to Docker containers
* [title-control](https://github.com/kbjr/terminus-title-control) - allows modifying the title of the terminal tabs by providing a prefix, suffix, and/or strings to be removed
* [quick-cmds](https://github.com/Domain/terminus-quick-cmds) - quickly send commands to one or all terminal tabs
* [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
* [docker](https://github.com/Eugeny/tabby-docker) - connect to Docker containers
* [title-control](https://github.com/kbjr/terminus-title-control) - allows modifying the title of the terminal tabs by providing a prefix, suffix, and/or strings to be removed
* [quick-cmds](https://github.com/Domain/terminus-quick-cmds) - quickly send commands to one or all terminal tabs
* [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
* [hype](https://github.com/Eugeny/tabby-theme-hype) - a Hyper inspired theme
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) - the Relaxed theme for Tabby
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox)
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10)
* [altair](https://github.com/yxuko/terminus-altair)
* [hype](https://github.com/Eugeny/tabby-theme-hype) - a Hyper inspired theme
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) - the Relaxed theme for Tabby
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox)
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10)
* [altair](https://github.com/yxuko/terminus-altair)
# Sponsors <!-- omit in toc -->
[![](https://assets-production.packagecloud.io/assets/packagecloud-logo-light-scaled-26ce8e96060fddf74afbd4445e63ba35590d4aaa56edc98495bb390ef3cae0ae.png)](https://packagecloud.io)
[**packagecloud**](https://packagecloud.io) has provided free Debian/RPM repository hosting
<a name="contributing"></a>
# Contributing
Pull requests and plugins are welcome!
See [HACKING.md](https://github.com/Eugeny/tabby/blob/master/HACKING.md) and [API docs](http://ajenti.org/terminus-docs/) for information of how the project is laid out, and a very brief plugin development tutorial.
See [HACKING.md](https://github.com/Eugeny/tabby/blob/master/HACKING.md) and [API docs](https://docs.tabby.sh/) for information of how the project is laid out, and a very brief plugin development tutorial.
---
<a name="contributors"></a>
@@ -195,6 +214,50 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
<td align="center"><a href="https://github.com/cypherbits"><img src="https://avatars.githubusercontent.com/u/10424900?v=4?s=100" width="100px;" alt=""/><br /><sub><b>cypherbits</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=cypherbits" title="Documentation">📖</a></td>
<td align="center"><a href="https://modulolotus.net"><img src="https://avatars.githubusercontent.com/u/946421?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matthew Davidson</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=KingMob" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/al-wi"><img src="https://avatars.githubusercontent.com/u/11092199?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alexander Wiedemann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=al-wi" title="Code">💻</a></td>
<td align="center"><a href="https://www.notion.so/3d45c6bd2cbd4f938873a4bd12e23375"><img src="https://avatars.githubusercontent.com/u/59506394?v=4?s=100" width="100px;" alt=""/><br /><sub><b>장보연</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BoYeonJang" title="Documentation">📖</a></td>
</tr>
<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>
<td align="center"><a href="https://github.com/highfredo"><img src="https://avatars.githubusercontent.com/u/5951524?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alfredo Arellano de la Fuente</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=highfredo" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/NessunKim"><img src="https://avatars.githubusercontent.com/u/12974079?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MH Kim</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NessunKim" title="Code">💻</a></td>
<td align="center"><a href="https://discord.gg/4c5EVTBhtp"><img src="https://avatars.githubusercontent.com/u/40345645?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Marmota</b></sub></a><br /><a href="#design-jaimeadf" title="Design">🎨</a></td>
<td align="center"><a href="https://ares.zone"><img src="https://avatars.githubusercontent.com/u/40336192?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ares Andrew</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TENX-S" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="https://usual.io/"><img src="https://avatars.githubusercontent.com/u/780052?v=4?s=100" width="100px;" alt=""/><br /><sub><b>George Korsnick</b></sub></a><br /><a href="#financial-gkor" title="Financial">💵</a></td>
<td align="center"><a href="https://about.me/ulu"><img src="https://avatars.githubusercontent.com/u/872764?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Artem Smirnov</b></sub></a><br /><a href="#financial-uluhonolulu" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/nevotheless"><img src="https://avatars.githubusercontent.com/u/779797?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tim Kopplow</b></sub></a><br /><a href="#financial-nevotheless" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/mrthock"><img src="https://avatars.githubusercontent.com/u/88901709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>mrthock</b></sub></a><br /><a href="#financial-mrthock" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/lrottach"><img src="https://avatars.githubusercontent.com/u/50323692?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Lukas Rottach</b></sub></a><br /><a href="#financial-lrottach" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/boonkerz"><img src="https://avatars.githubusercontent.com/u/277321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>boonkerz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boonkerz" title="Code">💻</a> <a href="#translation-boonkerz" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/milotype"><img src="https://avatars.githubusercontent.com/u/43657314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Milo Ivir</b></sub></a><br /><a href="#translation-milotype" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/JasonCubic"><img src="https://avatars.githubusercontent.com/u/8921015?v=4?s=100" width="100px;" alt=""/><br /><sub><b>JasonCubic</b></sub></a><br /><a href="#design-JasonCubic" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/MaxWaldorf"><img src="https://avatars.githubusercontent.com/u/15877853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MaxWaldorf</b></sub></a><br /><a href="#infra-MaxWaldorf" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
<td align="center"><a href="https://github.com/mwz"><img src="https://avatars.githubusercontent.com/u/1190768?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Wizner</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mwz" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mgrulich"><img src="https://avatars.githubusercontent.com/u/781036?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Martin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mgrulich" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/piersandro"><img src="https://avatars.githubusercontent.com/u/19996309?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piersandro Guerrera</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=piersandro" title="Documentation">📖</a> <a href="#translation-piersandro" title="Translation">🌍</a></td>
<td align="center"><a href="http://pingbase.cn"><img src="https://avatars.githubusercontent.com/u/19320096?v=4?s=100" width="100px;" alt=""/><br /><sub><b>X-0x01</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=X-0x01" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Allenator"><img src="https://avatars.githubusercontent.com/u/11794943?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allenator</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Allenator" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="http://microhobby.com.br/blog"><img src="https://avatars.githubusercontent.com/u/2633321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matheus Castello</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=microhobby" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Jai-JAP"><img src="https://avatars.githubusercontent.com/u/78354625?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jai A P</b></sub></a><br /><a href="#platform-Jai-JAP" title="Packaging/porting to new platform">📦</a></td>
<td align="center"><a href="https://blog.ysc3839.com"><img src="https://avatars.githubusercontent.com/u/12028138?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Richard Yu</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ysc3839" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/artu-ole"><img src="https://avatars.githubusercontent.com/u/15938416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>artu-ole</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=artu-ole" title="Code">💻</a></td>
<td align="center"><a href="https://timagribanov.github.io/"><img src="https://avatars.githubusercontent.com/u/48593815?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Timofey Gribanov</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TimaGribanov" title="Documentation">📖</a> <a href="#translation-TimaGribanov" title="Translation">🌍</a></td>
<td align="center"><a href="https://git.christianbingman.com"><img src="https://avatars.githubusercontent.com/u/42191425?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Christian Bingman</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ChristianBingman" title="Code">💻</a></td>
<td align="center"><a href="http://zhangzhipeng2023.cn/"><img src="https://avatars.githubusercontent.com/u/5310853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>zhipeng</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Ox0400" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/woodmeal"><img src="https://avatars.githubusercontent.com/u/104011197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>woodmeal</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=woodmeal" title="Code">💻</a></td>
<td align="center"><a href="https://magiclike.codeberg.page/"><img src="https://avatars.githubusercontent.com/u/82117109?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MagicLike</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=MagicLike" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/hisamafahri"><img src="https://avatars.githubusercontent.com/u/65691613?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hisam Fahri</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hisamafahri" title="Code">💻</a></td>
<td align="center"><a href="https://liangchengj.com"><img src="https://avatars.githubusercontent.com/u/48881023?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Liangcheng Juves</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LiangchengJ" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/attet"><img src="https://avatars.githubusercontent.com/u/1911416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Atte Timonen</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=attet" title="Code">💻</a></td>
</tr>
</table>
@@ -204,5 +267,3 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
<!-- ALL-CONTRIBUTORS-LIST:END -->
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
<img src="https://ga-beacon.appspot.com/UA-3278102-18/github/readme" width="1"/>

267
README.ru-RU.md Normal file
View File

@@ -0,0 +1,267 @@
[![](docs/readme.png)](https://tabby.sh)
<p align="center">
<a href="https://github.com/Eugeny/tabby/releases/latest"><img alt="GitHub All Releases" src="https://img.shields.io/github/downloads/eugeny/tabby/total.svg?label=DOWNLOADS&logo=github&style=for-the-badge"></a> &nbsp; <a href="https://nightly.link/Eugeny/tabby/workflows/build/master"><img src="https://shields.io/badge/-Nightly%20Builds-orange?logo=hackthebox&logoColor=fff&style=for-the-badge"/></a> &nbsp; <a href="https://matrix.to/#/#tabby-general:matrix.org"><img alt="Matrix" src="https://img.shields.io/matrix/tabby-general:matrix.org?logo=matrix&style=for-the-badge&color=magenta"></a> &nbsp <a href="https://translate.tabby.sh/"><img alt="Translate" src="https://shields.io/badge/Translate-UI-white?logo=googletranslate&style=for-the-badge&color=white&logoColor=fff"></a> &nbsp; <a href="https://twitter.com/eugeeeeny"><img alt="Twitter" src="https://shields.io/badge/Subscribe-News-blue?logo=twitter&style=for-the-badge&color=blue"></a>
</p>
<p align="center">
<a href="https://ko-fi.com/J3J8KWTF">
<img src="https://cdn.ko-fi.com/cdn/kofi3.png?v=2" width="150">
</a>
</p>
----
### Загрузки:
* [Последняя версия](https://github.com/Eugeny/tabby/releases/latest)
* [Репозитории](https://packagecloud.io/eugeny/tabby): [Debian/Ubuntu](https://packagecloud.io/eugeny/tabby/install#bash-deb), [RPM](https://packagecloud.io/eugeny/tabby/install#bash-rpm)
* [Последний nightly-билд](https://nightly.link/Eugeny/tabby/workflows/build/master)
<br/>
<p align="center">
Этот README также доступен на: <a href="./README.md">:gb: English</a> · <a href="./README.ko-KR.md">:kr: 한국어</a> · <a href="./README.zh-CN.md">:cn: 简体中文</a> · <a href="./README.it-IT.md">:it: Italiano</a> · <a href="./README.de-DE.md">:de: Deutsch</a>
</p>
----
[**Tabby**](https://tabby.sh) (ранее **Terminus**) — широко конфигурируемый эмулятор терминала, SSH- и COM-клиент для Windows, macOS и Linux:
* Встроенный SSH- и Telnet-клиент и менеджер подключений;
* Встроенный последовтаельный терминал;
* Темы и цветовые схемы;
* Полностью настраеваемые сочетания клавиш;
* Панели;
* Запоминание вкладок;
* Поддержка PowerShell (and PS Core), WSL, Git-Bash, Cygwin, MSYS2, Cmder и CMD;
* Прямая передача файлов из и в SSH-сессии через Zmodem;
* Полная поддержка Unicode, включая символы двойной ширины;
* Не задыхается при быстром выводе;
* Полноценный опыт работы с shell на Windows, включая дополнение слов и команд по Tab (при помощи Clink);
* Втроенное защищённое хранилище для SSH-ключей и настроек;
* SSH-, SFTP- и Telnet-клиент доступен как [веб-приложение](https://tabby.sh/app) (также для [самостоятелньного хостинга](https://github.com/Eugeny/tabby-web)).
# Содержание <!-- omit in toc -->
- [Правда и ложь про Tabby](#правда-и-ложь-про-tabby)
- [Функции терминала](#функции-терминала)
- [SSH-клиент](#ssh-клиент)
- [Терминал последовательного порта](#терминал-последовательного-порта)
- [Портативность](#портативность)
- [Плагины](#плагины)
- [Темы](#темы)
- [Внести свой вклад](#внести-свой-вклад)
<a name="about"></a>
# Правда и ложь про Tabby
* **Правда:** Tabby — это альтернатива стандартному терминалу Windows (conhost), PowerShell ISE, PuTTY, macOS Terminal.app и iTerm.
* **Ложь:** Tabby — это не новая оболочка или замена MinGW или Cygwin. Также он нелёгок — если потребление ОЗУ крайне важно для вас, лучше взгляните на [Conemu](https://conemu.github.io) или [Alacritty](https://github.com/jwilm/alacritty).
<a name="terminal"></a>
# Функции терминала
![](docs/readme-terminal.png)
* Терминал V220 + различные дополнения;
* Деление окна на несколько панелей;
* Вкладки на любой стороне окна;
* Опционально закрепляемое окно с глобальной горячей клавишей для вызова («Quake console»);
* Определение прогресса процесса;
* Уведомления о завершении процессов;
* Защита от выполнения команд при вставке, предупреждения о вставке нескольких строк;
* Лигатуры шрифтов;
* Пользовательские профили оболочки;
* Опциональная ПКМ-вставка и копирование при выделении (в стиле PuTTY).
<a name="ssh"></a>
# SSH-клиент
![](docs/readme-ssh.png)
* SSH2-клиент с менеджером соединений;
* Проброс портов и X11;
* Управление автоматическими джамп-хостами;
* Проброс агента (включая Pageant и встроеный в Windows OpenSSH Agent);
* Скрипты для входа.
<a name="serial"></a>
# Терминал последовательного порта
* Сохранение соединений;
* Поддержка ввода readline;
* Опциональый побатный ввод HEX и вывод hexdump;
* Преобразование newline;
* Автоматическое восстановление соединения.
<a name="portable"></a>
# Портативность
На Windows Tabby будет работать в портативном режиме, если создать папку `data` там же, где расположен файл `Tabby.exe`.
<a name="plugins"></a>
# Плагины
Плагины и темы можно установить напрямую из Настроек Tabby.
* [clickable-links](https://github.com/Eugeny/tabby-clickable-links) — делает пути и URL в терминале гиперссылками;
* [docker](https://github.com/Eugeny/tabby-docker) — подключения к Docker-контейнерам;
* [title-control](https://github.com/kbjr/terminus-title-control) — позволяет изменять названия вкладок, добавляя префиксы, суффиксы и позволяя удалять строки;
* [quick-cmds](https://github.com/Domain/terminus-quick-cmds) — быстро передаёт команды в одну или все вкладки терминала;
* [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>
# Темы
* [hype](https://github.com/Eugeny/tabby-theme-hype) — тема, вдохновлённая Hyper;
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) — тема Relaxed для Tabby;
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox);
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10);
* [altair](https://github.com/yxuko/terminus-altair).
# Спонсоры <!-- omit in toc -->
[![](https://assets-production.packagecloud.io/assets/packagecloud-logo-light-scaled-26ce8e96060fddf74afbd4445e63ba35590d4aaa56edc98495bb390ef3cae0ae.png)](https://packagecloud.io)
[**packagecloud**](https://packagecloud.io) предоставил бесплатный хостинг для Debian/RPM репозитория.
<a name="contributing"></a>
# Внести свой вклад
Pull-запросы и плагины приветствуются!
Взгляните на [HACKING.md](https://github.com/Eugeny/tabby/blob/master/HACKING.md) и [API docs](https://docs.tabby.sh/), чтобы понять, как устроен проект, и ради очень краткого туториала по созданию плагинов.
---
<a name="contributors"></a>
Огромное спасибо этим прекрасным людям ([описание эмодзи](https://allcontributors.org/docs/en/emoji-key)):
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center"><a href="http://www.russellmyers.com"><img src="https://avatars2.githubusercontent.com/u/184085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Russell Myers</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mezner" title="Code">💻</a></td>
<td align="center"><a href="http://www.morwire.com"><img src="https://avatars1.githubusercontent.com/u/3991658?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Austin Warren</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ehwarren" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Drachenkaetzchen"><img src="https://avatars1.githubusercontent.com/u/162974?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Felicia Hummel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Drachenkaetzchen" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mikemaccana"><img src="https://avatars2.githubusercontent.com/u/172594?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mike MacCana</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mikemaccana" title="Tests">⚠️</a> <a href="#design-mikemaccana" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/yxuko"><img src="https://avatars1.githubusercontent.com/u/1786317?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Yacine Kanzari</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yxuko" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/BBJip"><img src="https://avatars2.githubusercontent.com/u/32908927?v=4?s=100" width="100px;" alt=""/><br /><sub><b>BBJip</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BBJip" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Futagirl"><img src="https://avatars2.githubusercontent.com/u/33533958?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Futagirl</b></sub></a><br /><a href="#design-Futagirl" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://www.levrik.io"><img src="https://avatars3.githubusercontent.com/u/9491603?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Levin Rickert</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=levrik" title="Code">💻</a></td>
<td align="center"><a href="https://kwonoj.github.io"><img src="https://avatars2.githubusercontent.com/u/1210596?v=4?s=100" width="100px;" alt=""/><br /><sub><b>OJ Kwon</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=kwonoj" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Domain"><img src="https://avatars2.githubusercontent.com/u/903197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>domain</b></sub></a><br /><a href="#plugin-Domain" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Domain" title="Code">💻</a></td>
<td align="center"><a href="http://www.jbrumond.me"><img src="https://avatars1.githubusercontent.com/u/195127?v=4?s=100" width="100px;" alt=""/><br /><sub><b>James Brumond</b></sub></a><br /><a href="#plugin-kbjr" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://www.growingwiththeweb.com"><img src="https://avatars0.githubusercontent.com/u/2193314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Daniel Imms</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Code">💻</a> <a href="#plugin-Tyriar" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/baflo"><img src="https://avatars2.githubusercontent.com/u/834350?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Florian Bachmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=baflo" title="Code">💻</a></td>
<td align="center"><a href="http://michael-kuehnel.de"><img src="https://avatars2.githubusercontent.com/u/441011?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Kühnel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mischah" title="Code">💻</a> <a href="#design-mischah" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/NieLeben"><img src="https://avatars3.githubusercontent.com/u/47182955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tilmann Meyer</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NieLeben" title="Code">💻</a></td>
<td align="center"><a href="http://www.jubeat.net"><img src="https://avatars3.githubusercontent.com/u/11289158?v=4?s=100" width="100px;" alt=""/><br /><sub><b>PM Extra</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/issues?q=author%3APMExtra" title="Bug reports">🐛</a></td>
<td align="center"><a href="https://jjuhas.keybase.pub//"><img src="https://avatars1.githubusercontent.com/u/6438760?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=IgnusG" title="Code">💻</a></td>
<td align="center"><a href="https://hans-koch.me"><img src="https://avatars0.githubusercontent.com/u/1093709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hans Koch</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hammster" title="Code">💻</a></td>
<td align="center"><a href="http://thepuzzlemaker.info"><img src="https://avatars3.githubusercontent.com/u/12666617?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dak Smyth</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ThePuzzlemaker" title="Code">💻</a></td>
<td align="center"><a href="http://yfwz100.github.io"><img src="https://avatars2.githubusercontent.com/u/983211?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Wang Zhi</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yfwz100" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/jack1142"><img src="https://avatars0.githubusercontent.com/u/6032823?v=4?s=100" width="100px;" alt=""/><br /><sub><b>jack1142</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=jack1142" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/hdougie"><img src="https://avatars1.githubusercontent.com/u/450799?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Howie Douglas</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hdougie" title="Code">💻</a></td>
<td align="center"><a href="https://chriskaczor.com"><img src="https://avatars2.githubusercontent.com/u/180906?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chris Kaczor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ckaczor" title="Code">💻</a></td>
<td align="center"><a href="https://www.boxmein.net"><img src="https://avatars1.githubusercontent.com/u/358714?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Johannes Kadak</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boxmein" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/LeSeulArtichaut"><img src="https://avatars1.githubusercontent.com/u/38361244?v=4?s=100" width="100px;" alt=""/><br /><sub><b>LeSeulArtichaut</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LeSeulArtichaut" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/CyrilTaylor"><img src="https://avatars0.githubusercontent.com/u/12631466?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Cyril Taylor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=CyrilTaylor" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/nstefanou"><img src="https://avatars3.githubusercontent.com/u/51129173?v=4?s=100" width="100px;" alt=""/><br /><sub><b>nstefanou</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=nstefanou" title="Code">💻</a> <a href="#plugin-nstefanou" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="https://github.com/orin220444"><img src="https://avatars3.githubusercontent.com/u/30747229?v=4?s=100" width="100px;" alt=""/><br /><sub><b>orin220444</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=orin220444" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/Goobles"><img src="https://avatars3.githubusercontent.com/u/8776771?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gobius Dolhain</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Goobles" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/3l0w"><img src="https://avatars2.githubusercontent.com/u/37798980?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gwilherm Folliot</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=3l0w" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Dimitory"><img src="https://avatars0.githubusercontent.com/u/475955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dmitry Pronin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=dimitory" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/JonathanBeverley"><img src="https://avatars1.githubusercontent.com/u/20328966?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan Beverley</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=JonathanBeverley" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/zend"><img src="https://avatars1.githubusercontent.com/u/25160?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Zenghai Liang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=zend" title="Code">💻</a></td>
<td align="center"><a href="https://about.me/matishadow"><img src="https://avatars0.githubusercontent.com/u/9083085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mateusz Tracz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=matishadow" title="Code">💻</a></td>
<td align="center"><a href="https://zergpool.com"><img src="https://avatars3.githubusercontent.com/u/36234677?v=4?s=100" width="100px;" alt=""/><br /><sub><b>pinpin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=pinpins" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/TakuroOnoda"><img src="https://avatars0.githubusercontent.com/u/1407926?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Takuro Onoda</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TakuroOnoda" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/frauhottelmann"><img src="https://avatars2.githubusercontent.com/u/902705?v=4?s=100" width="100px;" alt=""/><br /><sub><b>frauhottelmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=frauhottelmann" title="Code">💻</a></td>
<td align="center"><a href="http://patalong.pl"><img src="https://avatars.githubusercontent.com/u/29167842?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piotr Patalong</b></sub></a><br /><a href="#design-VectorKappa" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/clarkwang"><img src="https://avatars.githubusercontent.com/u/157076?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Clark Wang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=clarkwang" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/iamchating"><img src="https://avatars.githubusercontent.com/u/7088153?v=4?s=100" width="100px;" alt=""/><br /><sub><b>iamchating</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=iamchating" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/starxg"><img src="https://avatars.githubusercontent.com/u/34997494?v=4?s=100" width="100px;" alt=""/><br /><sub><b>starxg</b></sub></a><br /><a href="#plugin-starxg" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://hashnote.net/"><img src="https://avatars.githubusercontent.com/u/546312?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alisue</b></sub></a><br /><a href="#design-lambdalisue" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/ydcool"><img src="https://avatars.githubusercontent.com/u/5668295?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dominic Yin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ydcool" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/bdr99"><img src="https://avatars.githubusercontent.com/u/2292715?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Brandon Rothweiler</b></sub></a><br /><a href="#design-bdr99" title="Design">🎨</a></td>
<td align="center"><a href="https://git.io/JnP49"><img src="https://avatars.githubusercontent.com/u/63876444?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Logic Machine</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=logicmachine123" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/cypherbits"><img src="https://avatars.githubusercontent.com/u/10424900?v=4?s=100" width="100px;" alt=""/><br /><sub><b>cypherbits</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=cypherbits" title="Documentation">📖</a></td>
<td align="center"><a href="https://modulolotus.net"><img src="https://avatars.githubusercontent.com/u/946421?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matthew Davidson</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=KingMob" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/al-wi"><img src="https://avatars.githubusercontent.com/u/11092199?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alexander Wiedemann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=al-wi" title="Code">💻</a></td>
<td align="center"><a href="https://www.notion.so/3d45c6bd2cbd4f938873a4bd12e23375"><img src="https://avatars.githubusercontent.com/u/59506394?v=4?s=100" width="100px;" alt=""/><br /><sub><b>장보연</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BoYeonJang" title="Documentation">📖</a></td>
</tr>
<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>
<td align="center"><a href="https://github.com/highfredo"><img src="https://avatars.githubusercontent.com/u/5951524?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alfredo Arellano de la Fuente</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=highfredo" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/NessunKim"><img src="https://avatars.githubusercontent.com/u/12974079?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MH Kim</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NessunKim" title="Code">💻</a></td>
<td align="center"><a href="https://discord.gg/4c5EVTBhtp"><img src="https://avatars.githubusercontent.com/u/40345645?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Marmota</b></sub></a><br /><a href="#design-jaimeadf" title="Design">🎨</a></td>
<td align="center"><a href="https://ares.zone"><img src="https://avatars.githubusercontent.com/u/40336192?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ares Andrew</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TENX-S" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="https://usual.io/"><img src="https://avatars.githubusercontent.com/u/780052?v=4?s=100" width="100px;" alt=""/><br /><sub><b>George Korsnick</b></sub></a><br /><a href="#financial-gkor" title="Financial">💵</a></td>
<td align="center"><a href="https://about.me/ulu"><img src="https://avatars.githubusercontent.com/u/872764?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Artem Smirnov</b></sub></a><br /><a href="#financial-uluhonolulu" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/nevotheless"><img src="https://avatars.githubusercontent.com/u/779797?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tim Kopplow</b></sub></a><br /><a href="#financial-nevotheless" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/mrthock"><img src="https://avatars.githubusercontent.com/u/88901709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>mrthock</b></sub></a><br /><a href="#financial-mrthock" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/lrottach"><img src="https://avatars.githubusercontent.com/u/50323692?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Lukas Rottach</b></sub></a><br /><a href="#financial-lrottach" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/boonkerz"><img src="https://avatars.githubusercontent.com/u/277321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>boonkerz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boonkerz" title="Code">💻</a> <a href="#translation-boonkerz" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/milotype"><img src="https://avatars.githubusercontent.com/u/43657314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Milo Ivir</b></sub></a><br /><a href="#translation-milotype" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/JasonCubic"><img src="https://avatars.githubusercontent.com/u/8921015?v=4?s=100" width="100px;" alt=""/><br /><sub><b>JasonCubic</b></sub></a><br /><a href="#design-JasonCubic" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/MaxWaldorf"><img src="https://avatars.githubusercontent.com/u/15877853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MaxWaldorf</b></sub></a><br /><a href="#infra-MaxWaldorf" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
<td align="center"><a href="https://github.com/mwz"><img src="https://avatars.githubusercontent.com/u/1190768?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Wizner</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mwz" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mgrulich"><img src="https://avatars.githubusercontent.com/u/781036?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Martin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mgrulich" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/piersandro"><img src="https://avatars.githubusercontent.com/u/19996309?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piersandro Guerrera</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=piersandro" title="Documentation">📖</a> <a href="#translation-piersandro" title="Translation">🌍</a></td>
<td align="center"><a href="http://pingbase.cn"><img src="https://avatars.githubusercontent.com/u/19320096?v=4?s=100" width="100px;" alt=""/><br /><sub><b>X-0x01</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=X-0x01" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Allenator"><img src="https://avatars.githubusercontent.com/u/11794943?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allenator</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Allenator" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="http://microhobby.com.br/blog"><img src="https://avatars.githubusercontent.com/u/2633321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matheus Castello</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=microhobby" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Jai-JAP"><img src="https://avatars.githubusercontent.com/u/78354625?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jai A P</b></sub></a><br /><a href="#platform-Jai-JAP" title="Packaging/porting to new platform">📦</a></td>
<td align="center"><a href="https://blog.ysc3839.com"><img src="https://avatars.githubusercontent.com/u/12028138?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Richard Yu</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ysc3839" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/artu-ole"><img src="https://avatars.githubusercontent.com/u/15938416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>artu-ole</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=artu-ole" title="Code">💻</a></td>
<td align="center"><a href="https://timagribanov.github.io/"><img src="https://avatars.githubusercontent.com/u/48593815?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Timofey Gribanov</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TimaGribanov" title="Documentation">📖</a> <a href="#translation-TimaGribanov" title="Translation">🌍</a></td>
<td align="center"><a href="https://git.christianbingman.com"><img src="https://avatars.githubusercontent.com/u/42191425?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Christian Bingman</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ChristianBingman" title="Code">💻</a></td>
<td align="center"><a href="http://zhangzhipeng2023.cn/"><img src="https://avatars.githubusercontent.com/u/5310853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>zhipeng</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Ox0400" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/woodmeal"><img src="https://avatars.githubusercontent.com/u/104011197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>woodmeal</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=woodmeal" title="Code">💻</a></td>
<td align="center"><a href="https://magiclike.codeberg.page/"><img src="https://avatars.githubusercontent.com/u/82117109?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MagicLike</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=MagicLike" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/hisamafahri"><img src="https://avatars.githubusercontent.com/u/65691613?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hisam Fahri</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hisamafahri" title="Code">💻</a></td>
<td align="center"><a href="https://liangchengj.com"><img src="https://avatars.githubusercontent.com/u/48881023?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Liangcheng Juves</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LiangchengJ" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/attet"><img src="https://avatars.githubusercontent.com/u/1911416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Atte Timonen</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=attet" title="Code">💻</a></td>
</tr>
</table>
<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
Данный проект следует заветам [all-contributors](https://github.com/all-contributors/all-contributors). Любые созидатели приветствуются!
<img src="https://ga-beacon.appspot.com/UA-3278102-18/github/readme" width="1"/>

264
README.zh-CN.md Normal file
View File

@@ -0,0 +1,264 @@
[![](docs/readme.png)](https://tabby.sh)
<p align="center">
<a href="https://github.com/Eugeny/tabby/releases/latest"><img alt="GitHub All Releases" src="https://img.shields.io/github/downloads/eugeny/tabby/total.svg?label=DOWNLOADS&logo=github&style=for-the-badge"></a> &nbsp; <a href="https://nightly.link/Eugeny/tabby/workflows/build/master"><img src="https://shields.io/badge/-Nightly%20Builds-orange?logo=hackthebox&logoColor=fff&style=for-the-badge"/></a> &nbsp; <a href="https://matrix.to/#/#tabby-general:matrix.org"><img alt="Matrix" src="https://img.shields.io/matrix/tabby-general:matrix.org?logo=matrix&style=for-the-badge&color=magenta"></a> &nbsp <a href="https://translate.tabby.sh/"><img alt="Translate" src="https://shields.io/badge/Translate-UI-white?logo=googletranslate&style=for-the-badge&color=white&logoColor=fff"></a> &nbsp; <a href="https://twitter.com/eugeeeeny"><img alt="Twitter" src="https://shields.io/badge/Subscribe-News-blue?logo=twitter&style=for-the-badge&color=blue"></a>
</p>
<p align="center">
<a href="https://ko-fi.com/J3J8KWTF">
<img src="https://cdn.ko-fi.com/cdn/kofi3.png?v=2" width="150">
</a>
</p>
----
### 下载
* [Latest release](https://github.com/Eugeny/tabby/releases/latest)
* [Repositories](https://packagecloud.io/eugeny/tabby): [Debian/Ubuntu-based](https://packagecloud.io/eugeny/tabby/install#bash-deb), [RPM-based](https://packagecloud.io/eugeny/tabby/install#bash-rpm)
* [Latest nightly build](https://nightly.link/Eugeny/tabby/workflows/build/master)
<br/>
<p align="center">
本 README 还适用于以下语言: <a href="./README.md">:gb: English</a> · <a href="./README.ru-RU.md">:ru: Русский</a> · <a href="./README.ko-KR.md">:kr: 한국어</a> · <a href="./README.it-IT.md">:it: Italiano</a> · <a href="./README.de-DE.md">:de: Deutsch</a>
</p>
----
[**Tabby**](https://tabby.sh) (前身是 **Terminus**) 是一个可高度配置的终端模拟器和 SSH 或串口客户端,支持 WindowsmacOS 和 Linux
* 集成 SSHTelnet 客户端和连接管理器
* 集成串行终端
* 定制主题和配色方案
* 完全可配置的快捷键和多键快捷键
* 分体式窗格
* 自动保存标签页
* 支持 PowerShell和 PS Core、WSL、Git-Bash、Cygwin、MSYS2、Cmder 和 CMD
* 在 SSH 会话中通过 Zmodem 进行直接文件传输
* 完整的 Unicode 支持,包括双角字符
* 不会因快速的输出而卡住
* Windows 上舒适的 shell 体验,包括 tab 自动补全(通过 Clink
* 为 SSH secrets 和设置集成了加密容器
* SSH、SFTP 和 Telnet 客户端可用作 [Web 应用](https://tabby.sh/app)(也可[托管](https://github.com/Eugeny/tabby-web)
# 目录 <!-- omit in toc -->
- [Tabby是什么](#tabby是什么)
- [终端特性](#终端特性)
- [SSH 客户端](#ssh-客户端)
- [串行终端](#串行终端)
- [便携式应用](#便携式应用)
- [插件](#插件)
- [主题](#主题)
- [贡献](#贡献)
<a name="about"></a>
# Tabby是什么
* **Tabby 是** Windows 标准终端 (conhost)、PowerShell ISE、PuTTY、macOS Terminal.app 和 iTerm 的替代品
* **Tabby 不是**一个全新的 shell也不是 MinGW 或 Cygwin 的替代品。它也不是轻量级的 - 如果你对内存的占用很敏感,请考虑 [Conemu](https://conemu.github.io) 或 [Alacritty](https://github.com/jwilm/alacritty)
<a name="terminal"></a>
# 终端特性
![](docs/readme-terminal.png)
* 一个 V220 终端 + 各种插件
* 多个嵌套的拆分窗格
* 可以将标签页设置在窗口的任意一侧
* 带有全局生成热键的可选可停靠窗口“Quake console”
* 进度检测
* 流程完成通知
* 带括号的粘贴,多行粘贴提示
* 连体字
* 自定义 shell 配置文件
* 可选的 RMB 粘贴和复制选择PuTTY 风格)
<a name="ssh"></a>
# SSH 客户端
![](docs/readme-ssh.png)
* 带有连接管理器的 SSH2 客户端
* X11和端口转发
* 自动跳转主机管理
* 代理转发(包括 Pageant 和 Windows 原生 OpenSSH 代理)
* 登录脚本
<a name="serial"></a>
# 串行终端
* 保存连接
* 逐行读取的输入支持
* 可选的十六进制逐字节输入和十六进制转储输出
* 换行转换
* 自动重连
<a name="portable"></a>
# 便携式应用
如果在 Tabby.exe 所在的目录创建一个名为`data`文件夹Tabby 将可以在 Windows 上作为便携式的应用程序运行。
<a name="plugins"></a>
# 插件
插件和主题可以直接在 Tabby 设置中安装。
* [clickable-links](https://github.com/Eugeny/tabby-clickable-links) - 使终端中的路径和 URL 可点击
* [docker](https://github.com/Eugeny/tabby-docker) - 连接 Docker 容器
* [title-control](https://github.com/kbjr/terminus-title-control) - 允许通过提供要删除的前缀、后缀和/或字符串来修改标签页的标题
* [quick-cmds](https://github.com/Domain/terminus-quick-cmds) - 快速向一个或所有标签页发送命令
* [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>
# 主题
* [hype](https://github.com/Eugeny/tabby-theme-hype) - 受 Hyper 启发的主题
* [relaxed](https://github.com/Relaxed-Theme/relaxed-terminal-themes#terminus) - 为 Tabby 打造的 Relaxed 主题
* [gruvbox](https://github.com/porkloin/terminus-theme-gruvbox)
* [windows10](https://www.npmjs.com/package/terminus-theme-windows10)
* [altair](https://github.com/yxuko/terminus-altair)
# Sponsors <!-- omit in toc -->
[![](https://assets-production.packagecloud.io/assets/packagecloud-logo-light-scaled-26ce8e96060fddf74afbd4445e63ba35590d4aaa56edc98495bb390ef3cae0ae.png)](https://packagecloud.io)
[**packagecloud**](https://packagecloud.io) 提供了免费的 Debian/RPM 存储库托管
<a name="contributing"></a>
# 贡献
欢迎提交 PR 和插件!
请参阅 [HACKING.md](https://github.com/Eugeny/tabby/blob/master/HACKING.md) 和 [API 文档](https://docs.tabby.sh/) 以获取有关项目布局的信息以及非常简短的插件开发教程。
---
<a name="contributors"></a>
感谢这些人,他们棒极了!([emoji key](https://allcontributors.org/docs/en/emoji-key)):
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center"><a href="http://www.russellmyers.com"><img src="https://avatars2.githubusercontent.com/u/184085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Russell Myers</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mezner" title="Code">💻</a></td>
<td align="center"><a href="http://www.morwire.com"><img src="https://avatars1.githubusercontent.com/u/3991658?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Austin Warren</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ehwarren" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Drachenkaetzchen"><img src="https://avatars1.githubusercontent.com/u/162974?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Felicia Hummel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Drachenkaetzchen" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mikemaccana"><img src="https://avatars2.githubusercontent.com/u/172594?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mike MacCana</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mikemaccana" title="Tests">⚠️</a> <a href="#design-mikemaccana" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/yxuko"><img src="https://avatars1.githubusercontent.com/u/1786317?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Yacine Kanzari</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yxuko" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/BBJip"><img src="https://avatars2.githubusercontent.com/u/32908927?v=4?s=100" width="100px;" alt=""/><br /><sub><b>BBJip</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BBJip" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Futagirl"><img src="https://avatars2.githubusercontent.com/u/33533958?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Futagirl</b></sub></a><br /><a href="#design-Futagirl" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://www.levrik.io"><img src="https://avatars3.githubusercontent.com/u/9491603?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Levin Rickert</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=levrik" title="Code">💻</a></td>
<td align="center"><a href="https://kwonoj.github.io"><img src="https://avatars2.githubusercontent.com/u/1210596?v=4?s=100" width="100px;" alt=""/><br /><sub><b>OJ Kwon</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=kwonoj" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Domain"><img src="https://avatars2.githubusercontent.com/u/903197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>domain</b></sub></a><br /><a href="#plugin-Domain" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Domain" title="Code">💻</a></td>
<td align="center"><a href="http://www.jbrumond.me"><img src="https://avatars1.githubusercontent.com/u/195127?v=4?s=100" width="100px;" alt=""/><br /><sub><b>James Brumond</b></sub></a><br /><a href="#plugin-kbjr" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://www.growingwiththeweb.com"><img src="https://avatars0.githubusercontent.com/u/2193314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Daniel Imms</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Code">💻</a> <a href="#plugin-Tyriar" title="Plugin/utility libraries">🔌</a> <a href="https://github.com/Eugeny/tabby/commits?author=Tyriar" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/baflo"><img src="https://avatars2.githubusercontent.com/u/834350?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Florian Bachmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=baflo" title="Code">💻</a></td>
<td align="center"><a href="http://michael-kuehnel.de"><img src="https://avatars2.githubusercontent.com/u/441011?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Kühnel</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mischah" title="Code">💻</a> <a href="#design-mischah" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/NieLeben"><img src="https://avatars3.githubusercontent.com/u/47182955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tilmann Meyer</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NieLeben" title="Code">💻</a></td>
<td align="center"><a href="http://www.jubeat.net"><img src="https://avatars3.githubusercontent.com/u/11289158?v=4?s=100" width="100px;" alt=""/><br /><sub><b>PM Extra</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/issues?q=author%3APMExtra" title="Bug reports">🐛</a></td>
<td align="center"><a href="https://jjuhas.keybase.pub//"><img src="https://avatars1.githubusercontent.com/u/6438760?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=IgnusG" title="Code">💻</a></td>
<td align="center"><a href="https://hans-koch.me"><img src="https://avatars0.githubusercontent.com/u/1093709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hans Koch</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hammster" title="Code">💻</a></td>
<td align="center"><a href="http://thepuzzlemaker.info"><img src="https://avatars3.githubusercontent.com/u/12666617?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dak Smyth</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ThePuzzlemaker" title="Code">💻</a></td>
<td align="center"><a href="http://yfwz100.github.io"><img src="https://avatars2.githubusercontent.com/u/983211?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Wang Zhi</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=yfwz100" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/jack1142"><img src="https://avatars0.githubusercontent.com/u/6032823?v=4?s=100" width="100px;" alt=""/><br /><sub><b>jack1142</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=jack1142" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/hdougie"><img src="https://avatars1.githubusercontent.com/u/450799?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Howie Douglas</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hdougie" title="Code">💻</a></td>
<td align="center"><a href="https://chriskaczor.com"><img src="https://avatars2.githubusercontent.com/u/180906?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chris Kaczor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ckaczor" title="Code">💻</a></td>
<td align="center"><a href="https://www.boxmein.net"><img src="https://avatars1.githubusercontent.com/u/358714?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Johannes Kadak</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boxmein" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/LeSeulArtichaut"><img src="https://avatars1.githubusercontent.com/u/38361244?v=4?s=100" width="100px;" alt=""/><br /><sub><b>LeSeulArtichaut</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LeSeulArtichaut" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/CyrilTaylor"><img src="https://avatars0.githubusercontent.com/u/12631466?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Cyril Taylor</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=CyrilTaylor" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/nstefanou"><img src="https://avatars3.githubusercontent.com/u/51129173?v=4?s=100" width="100px;" alt=""/><br /><sub><b>nstefanou</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=nstefanou" title="Code">💻</a> <a href="#plugin-nstefanou" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="https://github.com/orin220444"><img src="https://avatars3.githubusercontent.com/u/30747229?v=4?s=100" width="100px;" alt=""/><br /><sub><b>orin220444</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=orin220444" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/Goobles"><img src="https://avatars3.githubusercontent.com/u/8776771?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gobius Dolhain</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Goobles" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/3l0w"><img src="https://avatars2.githubusercontent.com/u/37798980?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Gwilherm Folliot</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=3l0w" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Dimitory"><img src="https://avatars0.githubusercontent.com/u/475955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dmitry Pronin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=dimitory" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/JonathanBeverley"><img src="https://avatars1.githubusercontent.com/u/20328966?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jonathan Beverley</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=JonathanBeverley" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/zend"><img src="https://avatars1.githubusercontent.com/u/25160?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Zenghai Liang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=zend" title="Code">💻</a></td>
<td align="center"><a href="https://about.me/matishadow"><img src="https://avatars0.githubusercontent.com/u/9083085?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mateusz Tracz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=matishadow" title="Code">💻</a></td>
<td align="center"><a href="https://zergpool.com"><img src="https://avatars3.githubusercontent.com/u/36234677?v=4?s=100" width="100px;" alt=""/><br /><sub><b>pinpin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=pinpins" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/TakuroOnoda"><img src="https://avatars0.githubusercontent.com/u/1407926?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Takuro Onoda</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TakuroOnoda" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/frauhottelmann"><img src="https://avatars2.githubusercontent.com/u/902705?v=4?s=100" width="100px;" alt=""/><br /><sub><b>frauhottelmann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=frauhottelmann" title="Code">💻</a></td>
<td align="center"><a href="http://patalong.pl"><img src="https://avatars.githubusercontent.com/u/29167842?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piotr Patalong</b></sub></a><br /><a href="#design-VectorKappa" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/clarkwang"><img src="https://avatars.githubusercontent.com/u/157076?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Clark Wang</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=clarkwang" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/iamchating"><img src="https://avatars.githubusercontent.com/u/7088153?v=4?s=100" width="100px;" alt=""/><br /><sub><b>iamchating</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=iamchating" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/starxg"><img src="https://avatars.githubusercontent.com/u/34997494?v=4?s=100" width="100px;" alt=""/><br /><sub><b>starxg</b></sub></a><br /><a href="#plugin-starxg" title="Plugin/utility libraries">🔌</a></td>
<td align="center"><a href="http://hashnote.net/"><img src="https://avatars.githubusercontent.com/u/546312?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alisue</b></sub></a><br /><a href="#design-lambdalisue" title="Design">🎨</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/ydcool"><img src="https://avatars.githubusercontent.com/u/5668295?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Dominic Yin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ydcool" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/bdr99"><img src="https://avatars.githubusercontent.com/u/2292715?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Brandon Rothweiler</b></sub></a><br /><a href="#design-bdr99" title="Design">🎨</a></td>
<td align="center"><a href="https://git.io/JnP49"><img src="https://avatars.githubusercontent.com/u/63876444?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Logic Machine</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=logicmachine123" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/cypherbits"><img src="https://avatars.githubusercontent.com/u/10424900?v=4?s=100" width="100px;" alt=""/><br /><sub><b>cypherbits</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=cypherbits" title="Documentation">📖</a></td>
<td align="center"><a href="https://modulolotus.net"><img src="https://avatars.githubusercontent.com/u/946421?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matthew Davidson</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=KingMob" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/al-wi"><img src="https://avatars.githubusercontent.com/u/11092199?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alexander Wiedemann</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=al-wi" title="Code">💻</a></td>
<td align="center"><a href="https://www.notion.so/3d45c6bd2cbd4f938873a4bd12e23375"><img src="https://avatars.githubusercontent.com/u/59506394?v=4?s=100" width="100px;" alt=""/><br /><sub><b>장보연</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=BoYeonJang" title="Documentation">📖</a></td>
</tr>
<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>
<td align="center"><a href="https://github.com/highfredo"><img src="https://avatars.githubusercontent.com/u/5951524?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alfredo Arellano de la Fuente</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=highfredo" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/NessunKim"><img src="https://avatars.githubusercontent.com/u/12974079?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MH Kim</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=NessunKim" title="Code">💻</a></td>
<td align="center"><a href="https://discord.gg/4c5EVTBhtp"><img src="https://avatars.githubusercontent.com/u/40345645?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Marmota</b></sub></a><br /><a href="#design-jaimeadf" title="Design">🎨</a></td>
<td align="center"><a href="https://ares.zone"><img src="https://avatars.githubusercontent.com/u/40336192?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ares Andrew</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TENX-S" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="https://usual.io/"><img src="https://avatars.githubusercontent.com/u/780052?v=4?s=100" width="100px;" alt=""/><br /><sub><b>George Korsnick</b></sub></a><br /><a href="#financial-gkor" title="Financial">💵</a></td>
<td align="center"><a href="https://about.me/ulu"><img src="https://avatars.githubusercontent.com/u/872764?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Artem Smirnov</b></sub></a><br /><a href="#financial-uluhonolulu" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/nevotheless"><img src="https://avatars.githubusercontent.com/u/779797?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tim Kopplow</b></sub></a><br /><a href="#financial-nevotheless" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/mrthock"><img src="https://avatars.githubusercontent.com/u/88901709?v=4?s=100" width="100px;" alt=""/><br /><sub><b>mrthock</b></sub></a><br /><a href="#financial-mrthock" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/lrottach"><img src="https://avatars.githubusercontent.com/u/50323692?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Lukas Rottach</b></sub></a><br /><a href="#financial-lrottach" title="Financial">💵</a></td>
<td align="center"><a href="https://github.com/boonkerz"><img src="https://avatars.githubusercontent.com/u/277321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>boonkerz</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=boonkerz" title="Code">💻</a> <a href="#translation-boonkerz" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/milotype"><img src="https://avatars.githubusercontent.com/u/43657314?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Milo Ivir</b></sub></a><br /><a href="#translation-milotype" title="Translation">🌍</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/JasonCubic"><img src="https://avatars.githubusercontent.com/u/8921015?v=4?s=100" width="100px;" alt=""/><br /><sub><b>JasonCubic</b></sub></a><br /><a href="#design-JasonCubic" title="Design">🎨</a></td>
<td align="center"><a href="https://github.com/MaxWaldorf"><img src="https://avatars.githubusercontent.com/u/15877853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MaxWaldorf</b></sub></a><br /><a href="#infra-MaxWaldorf" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
<td align="center"><a href="https://github.com/mwz"><img src="https://avatars.githubusercontent.com/u/1190768?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Michael Wizner</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mwz" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/mgrulich"><img src="https://avatars.githubusercontent.com/u/781036?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Martin</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=mgrulich" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/piersandro"><img src="https://avatars.githubusercontent.com/u/19996309?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Piersandro Guerrera</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=piersandro" title="Documentation">📖</a> <a href="#translation-piersandro" title="Translation">🌍</a></td>
<td align="center"><a href="http://pingbase.cn"><img src="https://avatars.githubusercontent.com/u/19320096?v=4?s=100" width="100px;" alt=""/><br /><sub><b>X-0x01</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=X-0x01" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Allenator"><img src="https://avatars.githubusercontent.com/u/11794943?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Allenator</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Allenator" title="Documentation">📖</a></td>
</tr>
<tr>
<td align="center"><a href="http://microhobby.com.br/blog"><img src="https://avatars.githubusercontent.com/u/2633321?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Matheus Castello</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=microhobby" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Jai-JAP"><img src="https://avatars.githubusercontent.com/u/78354625?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jai A P</b></sub></a><br /><a href="#platform-Jai-JAP" title="Packaging/porting to new platform">📦</a></td>
<td align="center"><a href="https://blog.ysc3839.com"><img src="https://avatars.githubusercontent.com/u/12028138?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Richard Yu</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ysc3839" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/artu-ole"><img src="https://avatars.githubusercontent.com/u/15938416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>artu-ole</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=artu-ole" title="Code">💻</a></td>
<td align="center"><a href="https://timagribanov.github.io/"><img src="https://avatars.githubusercontent.com/u/48593815?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Timofey Gribanov</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=TimaGribanov" title="Documentation">📖</a> <a href="#translation-TimaGribanov" title="Translation">🌍</a></td>
<td align="center"><a href="https://git.christianbingman.com"><img src="https://avatars.githubusercontent.com/u/42191425?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Christian Bingman</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=ChristianBingman" title="Code">💻</a></td>
<td align="center"><a href="http://zhangzhipeng2023.cn/"><img src="https://avatars.githubusercontent.com/u/5310853?v=4?s=100" width="100px;" alt=""/><br /><sub><b>zhipeng</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=Ox0400" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/woodmeal"><img src="https://avatars.githubusercontent.com/u/104011197?v=4?s=100" width="100px;" alt=""/><br /><sub><b>woodmeal</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=woodmeal" title="Code">💻</a></td>
<td align="center"><a href="https://magiclike.codeberg.page/"><img src="https://avatars.githubusercontent.com/u/82117109?v=4?s=100" width="100px;" alt=""/><br /><sub><b>MagicLike</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=MagicLike" title="Documentation">📖</a></td>
<td align="center"><a href="https://github.com/hisamafahri"><img src="https://avatars.githubusercontent.com/u/65691613?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hisam Fahri</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=hisamafahri" title="Code">💻</a></td>
<td align="center"><a href="https://liangchengj.com"><img src="https://avatars.githubusercontent.com/u/48881023?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Liangcheng Juves</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=LiangchengJ" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/attet"><img src="https://avatars.githubusercontent.com/u/1911416?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Atte Timonen</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=attet" title="Code">💻</a></td>
</tr>
</table>
<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
本项目遵循 [all-contributors](https://github.com/all-contributors/all-contributors) 规范。 欢迎任何形式的贡献!

View File

@@ -1,11 +1,12 @@
import { app, ipcMain, Menu, Tray, shell, screen, globalShortcut, MenuItemConstructorOptions } from 'electron'
import * as promiseIpc from 'electron-promise-ipc'
import promiseIpc from 'electron-promise-ipc'
import * as remote from '@electron/remote/main'
import { exec } from 'mz/child_process'
import * as path from 'path'
import * as fs from 'fs'
import { Subject, throttleTime } from 'rxjs'
import { loadConfig } from './config'
import { saveConfig } from './config'
import { Window, WindowOptions } from './window'
import { pluginManager } from './pluginManager'
import { PTYManager } from './pty'
@@ -21,15 +22,22 @@ export class Application {
private ptyManager = new PTYManager()
private windows: Window[] = []
private globalHotkey$ = new Subject<void>()
private quitRequested = false
userPluginsPath: string
constructor () {
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
constructor (private configStore: any) {
remote.initialize()
this.useBuiltinGraphics()
this.ptyManager.init(this)
ipcMain.on('app:config-change', (_event, config) => {
this.broadcast('host:config-change', config)
this.configStore = config
})
ipcMain.on('app:save-config', (_event, data) => {
saveConfig(data)
})
ipcMain.on('app:register-global-hotkey', (_event, specs) => {
@@ -51,14 +59,25 @@ export class Application {
return pluginManager.uninstall(this.userPluginsPath, name)
})
const configData = loadConfig()
;(promiseIpc as any).on('get-default-mac-shell', async () => {
try {
return (await exec(`/usr/bin/dscl . -read /Users/${process.env.LOGNAME} UserShell`))[0].toString().split(' ')[1].trim()
} catch {
return '/bin/bash'
}
})
if (process.platform === 'linux') {
app.commandLine.appendSwitch('no-sandbox')
if (((configData.appearance || {}).opacity || 1) !== 1) {
if (((this.configStore.appearance || {}).opacity || 1) !== 1) {
app.commandLine.appendSwitch('enable-transparent-visuals')
app.disableHardwareAcceleration()
}
}
if (this.configStore.hacks?.disableGPU) {
app.commandLine.appendSwitch('disable-gpu')
app.disableHardwareAcceleration()
}
this.userPluginsPath = path.join(
app.getPath('userData'),
@@ -72,11 +91,20 @@ export class Application {
app.commandLine.appendSwitch('disable-http-cache')
app.commandLine.appendSwitch('max-active-webgl-contexts', '9000')
app.commandLine.appendSwitch('lang', 'EN')
app.allowRendererProcessReuse = false
for (const flag of configData.flags || [['force_discrete_gpu', '0']]) {
for (const flag of this.configStore.flags || [['force_discrete_gpu', '0']]) {
app.commandLine.appendSwitch(flag[0], flag[1])
}
app.on('before-quit', () => {
this.quitRequested = true
})
app.on('window-all-closed', () => {
if (this.quitRequested || process.platform !== 'darwin') {
app.quit()
}
})
}
init (): void {
@@ -86,8 +114,11 @@ export class Application {
}
async newWindow (options?: WindowOptions): Promise<Window> {
const window = new Window(this, options)
const window = new Window(this, this.configStore, options)
this.windows.push(window)
if (this.windows.length === 1){
window.makeMain()
}
window.visible$.subscribe(visible => {
if (visible) {
this.disableTray()
@@ -97,6 +128,10 @@ export class Application {
})
window.closed$.subscribe(() => {
this.windows = this.windows.filter(x => x !== window)
if (!this.windows.some(x => x.isMainWindow)) {
this.windows[0]?.makeMain()
this.windows[0]?.present()
}
})
if (process.platform === 'darwin') {
this.setupMenu()
@@ -106,7 +141,14 @@ export class Application {
}
onGlobalHotkey (): void {
if (this.windows.some(x => x.isFocused() && x.isVisible())) {
let isPresent = this.windows.some(x => x.isFocused() && x.isVisible())
const isDockedOnTop = this.windows.some(x => x.isDockedOnTop())
if (isDockedOnTop) {
// if docked and on top, hide even if not focused right now
isPresent = this.windows.some(x => x.isVisible())
}
if (isPresent) {
for (const window of this.windows) {
window.hide()
}
@@ -175,11 +217,14 @@ export class Application {
focus (): void {
for (const window of this.windows) {
window.show()
window.present()
}
}
handleSecondInstance (argv: string[], cwd: string): void {
async handleSecondInstance (argv: string[], cwd: string): Promise<void> {
if (!this.windows.length) {
await this.newWindow()
}
this.presentAllWindows()
this.windows[this.windows.length - 1].passCliArguments(argv, cwd, true)
}
@@ -221,7 +266,8 @@ export class Application {
{
label: 'Quit',
accelerator: 'Cmd+Q',
click () {
click: () => {
this.quitRequested = true
app.quit()
},
},
@@ -244,7 +290,6 @@ export class Application {
{
label: 'View',
submenu: [
{ role: 'reload' },
{ role: 'toggleDevTools' },
{ type: 'separator' },
{ role: 'togglefullscreen' },
@@ -272,6 +317,10 @@ export class Application {
},
]
if (process.env.TABBY_DEV) {
template[2].submenu['unshift']({ role: 'reload' })
}
Menu.setApplicationMenu(Menu.buildFromTemplate(template))
}
}

View File

@@ -25,7 +25,10 @@ export function parseArgs (argv: string[], cwd: string): any {
type: 'string',
})
})
.version('version', '', app.getVersion())
.command('recent [index]', 'open a tab with a recent profile', {
profileNumber: { type: 'number' },
})
.version(app.getVersion())
.option('debug', {
alias: 'd',
describe: 'Show DevTools on start',
@@ -35,11 +38,6 @@ export function parseArgs (argv: string[], cwd: string): any {
describe: 'Start minimized',
type: 'boolean',
})
.option('version', {
alias: 'v',
describe: 'Show version and exit',
type: 'boolean',
})
.help('help')
.parse()
}

View File

@@ -1,26 +1,47 @@
import * as fs from 'fs'
import * as fs from 'mz/fs'
import * as path from 'path'
import * as yaml from 'js-yaml'
import { v4 as uuidv4 } from 'uuid'
import * as gracefulFS from 'graceful-fs'
import { app } from 'electron'
import { promisify } from 'util'
export function migrateConfig (): void {
export async function migrateConfig (): Promise<void> {
const configPath = path.join(app.getPath('userData'), 'config.yaml')
const legacyConfigPath = path.join(app.getPath('userData'), '../terminus', 'config.yaml')
if (fs.existsSync(legacyConfigPath) && (
!fs.existsSync(configPath) ||
fs.statSync(configPath).mtime < fs.statSync(legacyConfigPath).mtime
if (await fs.exists(legacyConfigPath) && (
!await fs.exists(configPath) ||
(await fs.stat(configPath)).mtime < (await fs.stat(legacyConfigPath)).mtime
)) {
fs.writeFileSync(configPath, fs.readFileSync(legacyConfigPath))
await fs.writeFile(configPath, await fs.readFile(legacyConfigPath))
}
}
export function loadConfig (): any {
migrateConfig()
export async function loadConfig (): Promise<any> {
await migrateConfig()
const configPath = path.join(app.getPath('userData'), 'config.yaml')
if (fs.existsSync(configPath)) {
return yaml.load(fs.readFileSync(configPath, 'utf8'))
if (await fs.exists(configPath)) {
return yaml.load(await fs.readFile(configPath, 'utf8'))
} else {
return {}
}
}
const configPath = path.join(app.getPath('userData'), 'config.yaml')
let _configSaveInProgress = Promise.resolve()
async function _saveConfigInternal (content: string): Promise<void> {
const tempPath = configPath + '.new.' + uuidv4().toString()
await fs.writeFile(tempPath, content, 'utf8')
await fs.writeFile(configPath + '.backup', content, 'utf8')
await promisify(gracefulFS.rename)(tempPath, configPath)
}
export async function saveConfig (content: string): Promise<void> {
try {
await _configSaveInProgress
} catch { }
_configSaveInProgress = _saveConfigInternal(content)
await _configSaveInProgress
}

View File

@@ -3,59 +3,62 @@ import './portable'
import 'source-map-support/register'
import './sentry'
import './lru'
import { app, ipcMain, Menu } from 'electron'
import { app, ipcMain, Menu, dialog } from 'electron'
import { parseArgs } from './cli'
import { Application } from './app'
import electronDebug = require('electron-debug')
import { loadConfig } from './config'
if (!process.env.TABBY_PLUGINS) {
process.env.TABBY_PLUGINS = ''
}
const application = new Application()
ipcMain.on('app:new-window', () => {
application.newWindow()
})
app.on('activate', () => {
if (!application.hasWindows()) {
application.newWindow()
} else {
application.focus()
}
})
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit()
}
})
process.on('uncaughtException' as any, err => {
console.log(err)
application.broadcast('uncaughtException', err)
})
app.on('second-instance', (_event, argv, cwd) => {
application.handleSecondInstance(argv, cwd)
})
const argv = parseArgs(process.argv, process.cwd())
const application = loadConfig().catch(err => {
dialog.showErrorBox('Could not read config', err.message)
app.exit(1)
}).then(configStore => {
const _application = new Application(configStore)
ipcMain.on('app:new-window', () => {
_application.newWindow()
})
process.on('uncaughtException' as any, err => {
console.log(err)
_application.broadcast('uncaughtException', err)
})
if (argv.d) {
electronDebug({
isEnabled: true,
showDevTools: true,
devToolsMode: 'undocked',
})
}
return _application
})
app.on('activate', async () => {
if (!(await application).hasWindows()) {
(await application).newWindow()
} else {
(await application).focus()
}
})
app.on('second-instance', async (_event, newArgv, cwd) => {
(await application).handleSecondInstance(newArgv, cwd)
})
if (!app.requestSingleInstanceLock()) {
app.quit()
app.exit(0)
}
if (argv.d) {
electronDebug({
isEnabled: true,
showDevTools: true,
devToolsMode: 'undocked',
})
}
app.on('ready', async () => {
if (process.platform === 'darwin') {
app.dock.setMenu(Menu.buildFromTemplate([
@@ -67,9 +70,11 @@ app.on('ready', async () => {
},
]))
}
application.init()
const window = await application.newWindow({ hidden: argv.hidden })
(await application).init()
const window = await (await application).newWindow({ hidden: argv.hidden })
await window.ready
window.passCliArguments(process.argv, process.cwd(), false)
window.focus()
})

View File

@@ -1,4 +1,4 @@
import * as LRU from 'lru-cache'
import LRU from 'lru-cache'
import * as fs from 'fs'
const lru = new LRU({ max: 256, maxAge: 250 })
const origLstat = fs.realpathSync.bind(fs)

View File

@@ -1,18 +1,28 @@
import * as nodePTY from '@tabby-gang/node-pty'
import { StringDecoder } from './stringDecoder'
import { v4 as uuidv4 } from 'uuid'
import { ipcMain } from 'electron'
import { Application } from './app'
import { UTF8Splitter } from './utfSplitter'
import { Subject, debounceTime } from 'rxjs'
import { StringDecoder } from './stringDecoder'
class PTYDataQueue {
private buffers: Buffer[] = []
private delta = 0
private maxChunk = 1024
private maxDelta = 1024 * 50
private maxChunk = 1024 * 100
private maxDelta = this.maxChunk * 5
private flowPaused = false
private decoder = new StringDecoder()
private decoder = new UTF8Splitter()
private output$ = new Subject<Buffer>()
constructor (private pty: nodePTY.IPty, private onData: (data: Buffer) => void) { }
constructor (private pty: nodePTY.IPty, private onData: (data: Buffer) => void) {
this.output$.pipe(debounceTime(500)).subscribe(() => {
const remainder = this.decoder.flush()
if (remainder.length) {
this.onData(remainder)
}
})
}
push (data: Buffer) {
this.buffers.push(data)
@@ -61,7 +71,9 @@ class PTYDataQueue {
}
private emitData (data: Buffer) {
this.onData(this.decoder.write(data))
const validChunk = this.decoder.write(data)
this.onData(validChunk)
this.output$.next(validChunk)
}
private pause () {
@@ -79,6 +91,8 @@ class PTYDataQueue {
export class PTY {
private pty: nodePTY.IPty
private outputQueue: PTYDataQueue
private decoder = new StringDecoder()
exited = false
constructor (private id: string, private app: Application, ...args: any[]) {
this.pty = (nodePTY as any).spawn(...args)
@@ -87,10 +101,13 @@ export class PTY {
}
this.outputQueue = new PTYDataQueue(this.pty, data => {
setImmediate(() => this.emit('data', data))
setImmediate(() => this.emit('data', this.decoder.write(data)))
})
this.pty.on('data', data => this.outputQueue.push(Buffer.from(data)))
this.pty.onData(data => this.outputQueue.push(Buffer.from(data)))
this.pty.onExit(() => {
this.exited = true
})
}
getPID (): number {
@@ -133,7 +150,7 @@ export class PTYManager {
})
ipcMain.on('pty:exists', (event, id) => {
event.returnValue = !!this.ptys[id]
event.returnValue = this.ptys[id] && !this.ptys[id].exited
})
ipcMain.on('pty:get-pid', (event, id) => {

32
app/lib/utfSplitter.ts Normal file
View File

@@ -0,0 +1,32 @@
const partials = [
[0b110, 5, 0],
[0b1110, 4, 1],
[0b11110, 3, 2],
]
export class UTF8Splitter {
private internal = Buffer.alloc(0)
write (data: Buffer): Buffer {
this.internal = Buffer.concat([this.internal, data])
let keep = 0
for (const [pattern, shift, maxOffset] of partials) {
for (let offset = 0; offset < maxOffset + 1; offset++) {
if (this.internal[this.internal.length - offset - 1] >> shift === pattern) {
keep = Math.max(keep, offset + 1)
}
}
}
const result = this.internal.slice(0, this.internal.length - keep)
this.internal = this.internal.slice(this.internal.length - keep)
return result
}
flush (): Buffer {
const result = this.internal
this.internal = Buffer.alloc(0)
return result
}
}

View File

@@ -3,18 +3,18 @@ import * as glasstron from 'glasstron'
import { Subject, Observable, debounceTime } from 'rxjs'
import { BrowserWindow, app, ipcMain, Rectangle, Menu, screen, BrowserWindowConstructorOptions, TouchBar, nativeImage } from 'electron'
import ElectronConfig = require('electron-config')
import { enable as enableRemote } from '@electron/remote/main'
import * as os from 'os'
import * as path from 'path'
import macOSRelease from 'macos-release'
import * as compareVersions from 'compare-versions'
import { compare as compareVersions } from 'compare-versions'
import type { Application } from './app'
import { parseArgs } from './cli'
import { loadConfig } from './config'
let DwmEnableBlurBehindWindow: any = null
if (process.platform === 'win32') {
DwmEnableBlurBehindWindow = require('windows-blurbehind').DwmEnableBlurBehindWindow
DwmEnableBlurBehindWindow = require('@tabby-gang/windows-blurbehind').DwmEnableBlurBehindWindow
}
export interface WindowOptions {
@@ -26,12 +26,13 @@ abstract class GlasstronWindow extends BrowserWindow {
abstract setBlur (_: boolean)
}
const macOSVibrancyType = process.platform === 'darwin' ? compareVersions.compare(macOSRelease().version, '10.14', '>=') ? 'fullscreen-ui' : 'dark' : null
const macOSVibrancyType = process.platform === 'darwin' ? compareVersions(macOSRelease().version, '10.14', '>=') ? 'under-window' : 'dark' : null
const activityIcon = nativeImage.createFromPath(`${app.getAppPath()}/assets/activity.png`)
export class Window {
ready: Promise<void>
isMainWindow = false
private visible = new Subject<boolean>()
private closed = new Subject<void>()
private window?: GlasstronWindow
@@ -40,15 +41,15 @@ export class Window {
private closing = false
private lastVibrancy: { enabled: boolean, type?: string } | null = null
private disableVibrancyWhileDragging = false
private configStore: any
private touchBarControl: any
private isFluentVibrancy = false
private dockHidden = false
get visible$ (): Observable<boolean> { return this.visible }
get closed$ (): Observable<void> { return this.closed }
constructor (private application: Application, options?: WindowOptions) {
this.configStore = loadConfig()
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
constructor (private application: Application, private configStore: any, options?: WindowOptions) {
options = options ?? {}
this.windowConfig = new ElectronConfig({ name: 'window' })
@@ -65,13 +66,13 @@ export class Window {
nodeIntegration: true,
preload: path.join(__dirname, 'sentry.js'),
backgroundThrottling: false,
enableRemoteModule: true,
contextIsolation: false,
},
maximizable: true,
frame: false,
show: false,
backgroundColor: '#00000000',
acceptFirstMouse: true,
}
if (this.windowBounds) {
@@ -116,6 +117,7 @@ export class Window {
}
this.window.focus()
this.window.moveTop()
application.focus()
}
})
@@ -125,10 +127,14 @@ export class Window {
}
})
enableRemote(this.window.webContents)
this.window.loadURL(`file://${app.getAppPath()}/dist/index.html`, { extraHeaders: 'pragma: no-cache\n' })
this.window.webContents.setVisualZoomLevelLimits(1, 1)
this.window.webContents.setZoomFactor(1)
this.window.webContents.session.setPermissionCheckHandler(() => true)
this.window.webContents.session.setDevicePermissionHandler(() => true)
if (process.platform === 'darwin') {
this.touchBarControl = new TouchBar.TouchBarSegmentedControl({
@@ -155,6 +161,11 @@ export class Window {
})
}
makeMain (): void {
this.isMainWindow = true
this.window.webContents.send('host:became-main-window')
}
setVibrancy (enabled: boolean, type?: string, userRequested?: boolean): void {
if (userRequested ?? true) {
this.lastVibrancy = { enabled, type }
@@ -164,11 +175,12 @@ export class Window {
this.window.blurType = enabled ? type === 'fluent' ? 'acrylic' : 'blurbehind' : null
try {
this.window.setBlur(enabled)
this.isFluentVibrancy = enabled && type === 'fluent'
} catch (error) {
console.error('Failed to set window blur', error)
}
} else {
DwmEnableBlurBehindWindow(this.window, enabled)
DwmEnableBlurBehindWindow(this.window.getNativeWindowHandle(), enabled)
}
} else if (process.platform === 'linux') {
this.window.setBackgroundColor(enabled ? '#00000000' : '#131d27')
@@ -178,11 +190,6 @@ export class Window {
}
}
show (): void {
this.window.show()
this.window.moveTop()
}
focus (): void {
this.window.focus()
}
@@ -194,6 +201,7 @@ export class Window {
this.window.webContents.send(event, ...args)
if (event === 'host:config-change') {
this.configStore = args[0]
this.enableDockedWindowStyles(this.isDockedOnTop())
}
}
@@ -209,45 +217,69 @@ export class Window {
return this.window.isVisible()
}
hide (): void {
isDockedOnTop (): boolean {
return this.isMainWindow && this.configStore.appearance?.dock && this.configStore.appearance?.dock !== 'off' && (this.configStore.appearance?.dockAlwaysOnTop ?? true)
}
async hide (): Promise<void> {
if (process.platform === 'darwin') {
// Lose focus
Menu.sendActionToFirstResponder('hide:')
}
this.window.blur()
if (process.platform !== 'darwin') {
this.window.hide()
}
}
present (): void {
if (!this.window.isVisible()) {
// unfocused, invisible
this.window.show()
this.window.focus()
} else {
if (!this.configStore.appearance?.dock || this.configStore.appearance?.dock === 'off') {
// not docked, visible
setTimeout(() => {
this.window.show()
this.window.focus()
})
} else {
if (this.configStore.appearance?.dockAlwaysOnTop) {
// docked, visible, on top
this.window.hide()
} else {
// docked, visible, not on top
this.window.focus()
}
if (this.isDockedOnTop()) {
await this.enableDockedWindowStyles(false)
}
}
this.window.blur()
this.window.hide()
}
async show (): Promise<void> {
await this.enableDockedWindowStyles(this.isDockedOnTop())
this.window.show()
this.window.focus()
}
async present (): Promise<void> {
await this.show()
this.window.moveTop()
}
passCliArguments (argv: string[], cwd: string, secondInstance: boolean): void {
this.send('cli', parseArgs(argv, cwd), cwd, secondInstance)
}
private async enableDockedWindowStyles (enabled: boolean) {
if (process.platform === 'darwin') {
if (enabled) {
if (!this.dockHidden) {
app.dock.hide()
this.dockHidden = true
}
this.window.setAlwaysOnTop(true, 'screen-saver', 1)
if (!this.window.isVisibleOnAllWorkspaces()) {
this.window.setVisibleOnAllWorkspaces(true, { visibleOnFullScreen: true })
}
if (this.window.fullScreenable) {
this.window.setFullScreenable(false)
}
} else {
if (this.dockHidden) {
await app.dock.show()
this.dockHidden = false
}
if (this.window.isAlwaysOnTop()) {
this.window.setAlwaysOnTop(false)
}
if (this.window.isVisibleOnAllWorkspaces()) {
this.window.setVisibleOnAllWorkspaces(false)
}
if (!this.window.fullScreenable) {
this.window.setFullScreenable(true)
}
}
}
}
private setupWindowManagement () {
this.window.on('show', () => {
this.visible.next(true)
@@ -271,6 +303,9 @@ export class Window {
this.window.on('enter-full-screen', () => this.send('host:window-enter-full-screen'))
this.window.on('leave-full-screen', () => this.send('host:window-leave-full-screen'))
this.window.on('maximize', () => this.send('host:window-maximized'))
this.window.on('unmaximize', () => this.send('host:window-unmaximized'))
this.window.on('close', event => {
if (!this.closing) {
event.preventDefault()
@@ -309,7 +344,7 @@ export class Window {
config: this.configStore,
executable: app.getPath('exe'),
windowID: this.window.id,
isFirstWindow: this.window.id === 1,
isMainWindow: this.isMainWindow,
userPluginsPath: this.application.userPluginsPath,
})
})
@@ -356,8 +391,7 @@ export class Window {
if (this.window.isMinimized()) {
this.window.restore()
}
this.window.show()
this.window.moveTop()
this.present()
})
ipcMain.on('window-close', event => {
@@ -379,12 +413,12 @@ export class Window {
this.window.webContents.on('new-window', event => event.preventDefault())
ipcMain.on('window-set-disable-vibrancy-while-dragging', (_event, value) => {
this.disableVibrancyWhileDragging = value
this.disableVibrancyWhileDragging = value && this.configStore.hacks?.disableVibrancyWhileDragging
})
let moveEndedTimeout: any = null
const onBoundsChange = () => {
if (!this.lastVibrancy?.enabled || !this.disableVibrancyWhileDragging) {
if (!this.lastVibrancy?.enabled || !this.disableVibrancyWhileDragging || !this.isFluentVibrancy) {
return
}
this.setVibrancy(false, undefined, false)
@@ -397,6 +431,18 @@ export class Window {
}
this.window.on('move', onBoundsChange)
this.window.on('resize', onBoundsChange)
ipcMain.on('window-set-traffic-light-position', (_event, x, y) => {
this.window.setTrafficLightPosition({ x, y })
})
ipcMain.on('window-set-opacity', (_event, opacity) => {
this.window.setOpacity(opacity)
})
ipcMain.on('window-set-progress-bar', (_event, value) => {
this.window.setProgressBar(value, { mode: value < 0 ? 'none' : 'normal' })
})
}
private destroy () {

View File

@@ -8,43 +8,45 @@
"email": "e@ajenti.org"
},
"main": "dist/main.js",
"version": "1.0.0-alpha.1",
"version": "1.0.0",
"scripts": {
"postinstall": "patch-package",
"build": "webpack --progress --color --display-modules",
"watch": "webpack --progress --color --watch"
},
"dependencies": {
"@angular/cdk": "^12.2.0",
"@electron/remote": "1.2.0",
"@electron/remote": "2.0.8",
"@tabby-gang/node-pty": "^0.11.0-beta.200",
"any-promise": "^1.3.0",
"electron-config": "2.0.0",
"electron-debug": "^3.2.0",
"electron-promise-ipc": "^2.2.4",
"electron-updater": "^5.0.1",
"fontmanager-redux": "1.1.0",
"glasstron": "0.0.7",
"glasstron": "0.1.1",
"js-yaml": "4.1.0",
"keytar": "^7.7.0",
"keytar": "^7.9.0",
"mz": "^2.7.0",
"native-process-working-directory": "^1.0.2",
"@tabby-gang/node-pty": "^0.11.0-beta.200",
"npm": "6",
"rxjs": "^7.2.0",
"source-map-support": "^0.5.19",
"rxjs": "^7.5.5",
"source-map-support": "^0.5.20",
"v8-compile-cache": "^2.3.0",
"yargs": "^17.1.0"
"yargs": "^17.3.1"
},
"optionalDependencies": {
"macos-native-processlist": "^2.0.0",
"serialport": "^9.2.0",
"windows-blurbehind": "^1.0.1",
"windows-native-registry": "^3.1.0",
"windows-process-tree": "^0.3.0"
"@tabby-gang/windows-blurbehind": "^3.0.0",
"macos-native-processlist": "^2.1.0",
"serialport": "10.4.0",
"serialport-binding-webserialapi": "^1.0.3",
"windows-native-registry": "^3.2.1",
"windows-process-tree": "^0.3.3"
},
"devDependencies": {
"@types/mz": "2.7.4",
"@types/node": "16.0.1",
"ngx-filesize": "^2.0.16",
"node-abi": "^2.30.0"
"patch-package": "^6.4.7"
},
"peerDependencies": {
"tabby-community-color-schemes": "*",

View File

@@ -0,0 +1,327 @@
diff --git a/node_modules/@serialport/bindings-cpp/src/serialport_win.cpp b/node_modules/@serialport/bindings-cpp/src/serialport_win.cpp
index b11c07f..910023e 100644
--- a/node_modules/@serialport/bindings-cpp/src/serialport_win.cpp
+++ b/node_modules/@serialport/bindings-cpp/src/serialport_win.cpp
@@ -10,6 +10,7 @@
#include <initguid.h>
#include <devpkey.h>
#include <devguid.h>
+#include <wchar.h>
#pragma comment(lib, "setupapi.lib")
#define ARRAY_SIZE(arr) (sizeof(arr)/sizeof(arr[0]))
@@ -25,6 +26,29 @@ typedef BOOL (WINAPI *CancelIoExType)(HANDLE hFile, LPOVERLAPPED lpOverlapped);
std::list<int> g_closingHandles;
+void ErrorCodeToString(const wchar_t* prefix, int errorCode, wchar_t *errorStr) {
+ switch (errorCode) {
+ case ERROR_FILE_NOT_FOUND:
+ _snwprintf_s(errorStr, ERROR_STRING_SIZE, _TRUNCATE, L"%ls: File not found", prefix);
+ break;
+ case ERROR_INVALID_HANDLE:
+ _snwprintf_s(errorStr, ERROR_STRING_SIZE, _TRUNCATE, L"%ls: Invalid handle", prefix);
+ break;
+ case ERROR_ACCESS_DENIED:
+ _snwprintf_s(errorStr, ERROR_STRING_SIZE, _TRUNCATE, L"%ls: Access denied", prefix);
+ break;
+ case ERROR_OPERATION_ABORTED:
+ _snwprintf_s(errorStr, ERROR_STRING_SIZE, _TRUNCATE, L"%ls: Operation aborted", prefix);
+ break;
+ case ERROR_INVALID_PARAMETER:
+ _snwprintf_s(errorStr, ERROR_STRING_SIZE, _TRUNCATE, L"%ls: The parameter is incorrect %d", prefix, errorCode);
+ break;
+ default:
+ _snwprintf_s(errorStr, ERROR_STRING_SIZE, _TRUNCATE, L"%ls: Unknown error code %d", prefix, errorCode);
+ break;
+ }
+}
+
void ErrorCodeToString(const char* prefix, int errorCode, char *errorStr) {
switch (errorCode) {
case ERROR_FILE_NOT_FOUND:
@@ -608,9 +632,9 @@ void CloseBaton::Execute() {
}
}
-char *copySubstring(char *someString, int n) {
- char *new_ = reinterpret_cast<char*>(malloc(sizeof(char)*n + 1));
- strncpy_s(new_, n + 1, someString, n);
+wchar_t *copySubstring(wchar_t *someString, int n) {
+ wchar_t *new_ = reinterpret_cast<wchar_t*>(malloc(sizeof(wchar_t)*n + 1));
+ wcsncpy_s(new_, n + 1, someString, n);
new_[n] = '\0';
return new_;
}
@@ -625,7 +649,7 @@ Napi::Value List(const Napi::CallbackInfo& info) {
Napi::Function callback = info[0].As<Napi::Function>();
ListBaton* baton = new ListBaton(callback);
- snprintf(baton->errorString, sizeof(baton->errorString), "");
+ _snwprintf(baton->errorString, sizeof(baton->errorString), L"");
baton->Queue();
return env.Undefined();
@@ -633,20 +657,20 @@ Napi::Value List(const Napi::CallbackInfo& info) {
// It's possible that the s/n is a construct and not the s/n of the parent USB
// composite device. This performs some convoluted registry lookups to fetch the USB s/n.
-void getSerialNumber(const char *vid,
- const char *pid,
+void getSerialNumber(const wchar_t *vid,
+ const wchar_t *pid,
const HDEVINFO hDevInfo,
SP_DEVINFO_DATA deviceInfoData,
const unsigned int maxSerialNumberLength,
- char* serialNumber) {
- _snprintf_s(serialNumber, maxSerialNumberLength, _TRUNCATE, "");
+ wchar_t* serialNumber) {
+ _snwprintf_s(serialNumber, maxSerialNumberLength, _TRUNCATE, L"");
if (vid == NULL || pid == NULL) {
return;
}
DWORD dwSize;
WCHAR szWUuidBuffer[MAX_BUFFER_SIZE];
- WCHAR containerUuid[MAX_BUFFER_SIZE];
+ WCHAR wantedUuid[MAX_BUFFER_SIZE];
// Fetch the "Container ID" for this device node. In USB context, this "Container
@@ -683,7 +707,7 @@ void getSerialNumber(const char *vid,
// Given the UUID bytes, build up a (widechar) string from it. There's some mangling
// going on.
- StringFromGUID2((REFGUID)szWUuidBuffer, containerUuid, ARRAY_SIZE(containerUuid));
+ StringFromGUID2((REFGUID)szWUuidBuffer, wantedUuid, ARRAY_SIZE(wantedUuid));
} else {
// Container UUID could not be fetched, return empty serial number.
return;
@@ -693,21 +717,15 @@ void getSerialNumber(const char *vid,
// This means they're non-removable, and are not handled (yet).
// Maybe they should inherit the s/n from somewhere else.
- // Sanitize input - for whatever reason, StringFromGUID2() returns a WCHAR* but
- // the comparisons later need a plain old char*, in lowercase ASCII.
- char wantedUuid[MAX_BUFFER_SIZE];
- _snprintf_s(wantedUuid, MAX_BUFFER_SIZE, _TRUNCATE, "%ws", containerUuid);
- strlwr(wantedUuid);
-
// Iterate through all the USB devices with the given VendorID/ProductID
HKEY vendorProductHKey;
DWORD retCode;
- char hkeyPath[MAX_BUFFER_SIZE];
+ wchar_t hkeyPath[MAX_BUFFER_SIZE];
- _snprintf_s(hkeyPath, MAX_BUFFER_SIZE, _TRUNCATE, "SYSTEM\\CurrentControlSet\\Enum\\USB\\VID_%s&PID_%s", vid, pid);
+ _snwprintf_s(hkeyPath, MAX_BUFFER_SIZE, _TRUNCATE, L"SYSTEM\\CurrentControlSet\\Enum\\USB\\VID_%s&PID_%s", vid, pid);
- retCode = RegOpenKeyEx(
+ retCode = RegOpenKeyExW(
HKEY_LOCAL_MACHINE,
hkeyPath,
0,
@@ -739,9 +757,9 @@ void getSerialNumber(const char *vid,
// Each of the subkeys here is the serial number of a USB device with the
// given VendorId/ProductId. Now fetch the string for the S/N.
DWORD serialNumberLength = maxSerialNumberLength;
- retCode = RegEnumKeyEx(vendorProductHKey,
+ retCode = RegEnumKeyExW(vendorProductHKey,
i,
- serialNumber,
+ reinterpret_cast<LPWSTR>(serialNumber),
&serialNumberLength,
NULL,
NULL,
@@ -751,21 +769,21 @@ void getSerialNumber(const char *vid,
if (retCode == ERROR_SUCCESS) {
// Lookup info for VID_(vendorId)&PID_(productId)\(serialnumber)
- _snprintf_s(hkeyPath, MAX_BUFFER_SIZE, _TRUNCATE,
- "SYSTEM\\CurrentControlSet\\Enum\\USB\\VID_%s&PID_%s\\%s",
+ _snwprintf_s(hkeyPath, MAX_BUFFER_SIZE, _TRUNCATE,
+ L"SYSTEM\\CurrentControlSet\\Enum\\USB\\VID_%ls&PID_%ls\\%ls",
vid, pid, serialNumber);
HKEY deviceHKey;
- if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, hkeyPath, 0, KEY_READ, &deviceHKey) == ERROR_SUCCESS) {
- char readUuid[MAX_BUFFER_SIZE];
+ if (RegOpenKeyExW(HKEY_LOCAL_MACHINE, hkeyPath, 0, KEY_READ, &deviceHKey) == ERROR_SUCCESS) {
+ wchar_t readUuid[MAX_BUFFER_SIZE];
DWORD readSize = sizeof(readUuid);
// Query VID_(vendorId)&PID_(productId)\(serialnumber)\ContainerID
- retCode = RegQueryValueEx(deviceHKey, "ContainerID", NULL, NULL, (LPBYTE)&readUuid, &readSize);
+ retCode = RegQueryValueExW(deviceHKey, L"ContainerID", NULL, NULL, (LPBYTE)&readUuid, &readSize);
if (retCode == ERROR_SUCCESS) {
readUuid[readSize] = '\0';
- if (strcmp(wantedUuid, readUuid) == 0) {
+ if (wcscmp(wantedUuid, readUuid) == 0) {
// The ContainerID UUIDs match, return now that serialNumber has
// the right value.
RegCloseKey(deviceHKey);
@@ -783,7 +801,7 @@ void getSerialNumber(const char *vid,
RegCloseKey(vendorProductHKey);
}
- _snprintf_s(serialNumber, maxSerialNumberLength, _TRUNCATE, "");
+ _snwprintf_s(serialNumber, maxSerialNumberLength, _TRUNCATE, L"");
return;
}
@@ -795,15 +813,15 @@ void ListBaton::Execute() {
int memberIndex = 0;
DWORD dwSize, dwPropertyRegDataType;
- char szBuffer[MAX_BUFFER_SIZE];
- char *pnpId;
- char *vendorId;
- char *productId;
- char *name;
- char *manufacturer;
- char *locationId;
- char *friendlyName;
- char serialNumber[MAX_REGISTRY_KEY_SIZE];
+ wchar_t szBuffer[MAX_BUFFER_SIZE];
+ wchar_t *pnpId;
+ wchar_t *vendorId;
+ wchar_t *productId;
+ wchar_t *name;
+ wchar_t *manufacturer;
+ wchar_t *locationId;
+ wchar_t *friendlyName;
+ wchar_t serialNumber[MAX_REGISTRY_KEY_SIZE];
bool isCom;
while (true) {
isCom = false;
@@ -814,7 +832,6 @@ void ListBaton::Execute() {
manufacturer = NULL;
locationId = NULL;
friendlyName = NULL;
- isCom = false;
ZeroMemory(&deviceInfoData, sizeof(SP_DEVINFO_DATA));
deviceInfoData.cbSize = sizeof(SP_DEVINFO_DATA);
@@ -826,16 +843,16 @@ void ListBaton::Execute() {
}
dwSize = sizeof(szBuffer);
- SetupDiGetDeviceInstanceId(hDevInfo, &deviceInfoData, szBuffer, dwSize, &dwSize);
+ SetupDiGetDeviceInstanceIdW(hDevInfo, &deviceInfoData, reinterpret_cast<PWSTR>(szBuffer), dwSize, &dwSize);
szBuffer[dwSize] = '\0';
- pnpId = strdup(szBuffer);
+ pnpId = wcsdup(szBuffer);
- vendorId = strstr(szBuffer, "VID_");
+ vendorId = wcsstr(szBuffer, L"VID_");
if (vendorId) {
vendorId += 4;
vendorId = copySubstring(vendorId, 4);
}
- productId = strstr(szBuffer, "PID_");
+ productId = wcsstr(szBuffer, L"PID_");
if (productId) {
productId += 4;
productId = copySubstring(productId, 4);
@@ -843,32 +860,29 @@ void ListBaton::Execute() {
getSerialNumber(vendorId, productId, hDevInfo, deviceInfoData, MAX_REGISTRY_KEY_SIZE, serialNumber);
- if (SetupDiGetDeviceRegistryProperty(hDevInfo, &deviceInfoData,
+ if (SetupDiGetDeviceRegistryPropertyW(hDevInfo, &deviceInfoData,
SPDRP_LOCATION_INFORMATION, &dwPropertyRegDataType,
- reinterpret_cast<BYTE*>(szBuffer),
- sizeof(szBuffer), &dwSize)) {
- locationId = strdup(szBuffer);
+ reinterpret_cast<PBYTE>(szBuffer), sizeof(szBuffer), &dwSize)) {
+ locationId = wcsdup(szBuffer);
}
- if (SetupDiGetDeviceRegistryProperty(hDevInfo, &deviceInfoData,
+ if (SetupDiGetDeviceRegistryPropertyW(hDevInfo, &deviceInfoData,
SPDRP_FRIENDLYNAME, &dwPropertyRegDataType,
- reinterpret_cast<BYTE*>(szBuffer),
- sizeof(szBuffer), &dwSize)) {
- friendlyName = strdup(szBuffer);
+ reinterpret_cast<PBYTE>(szBuffer), sizeof(szBuffer), &dwSize)) {
+ friendlyName = wcsdup(szBuffer);
}
- if (SetupDiGetDeviceRegistryProperty(hDevInfo, &deviceInfoData,
+ if (SetupDiGetDeviceRegistryPropertyW(hDevInfo, &deviceInfoData,
SPDRP_MFG, &dwPropertyRegDataType,
- reinterpret_cast<BYTE*>(szBuffer),
- sizeof(szBuffer), &dwSize)) {
- manufacturer = strdup(szBuffer);
+ reinterpret_cast<PBYTE>(szBuffer), sizeof(szBuffer), &dwSize)) {
+ manufacturer = wcsdup(szBuffer);
}
HKEY hkey = SetupDiOpenDevRegKey(hDevInfo, &deviceInfoData, DICS_FLAG_GLOBAL, 0, DIREG_DEV, KEY_READ);
if (hkey != INVALID_HANDLE_VALUE) {
dwSize = sizeof(szBuffer);
- if (RegQueryValueEx(hkey, "PortName", NULL, NULL, (LPBYTE)&szBuffer, &dwSize) == ERROR_SUCCESS) {
+ if (RegQueryValueExW(hkey, L"PortName", NULL, NULL, (LPBYTE)&szBuffer, &dwSize) == ERROR_SUCCESS) {
+ name = wcsdup(szBuffer);
szBuffer[dwSize] = '\0';
- name = strdup(szBuffer);
- isCom = strstr(szBuffer, "COM") != NULL;
+ isCom = wcsstr(szBuffer, L"COM") != NULL;
}
}
if (isCom) {
@@ -916,6 +930,16 @@ void setIfNotEmpty(Napi::Object item, std::string key, const char *value) {
}
}
+void setIfNotEmpty(Napi::Object item, std::string key, const wchar_t *value) {
+ Napi::Env env = item.Env();
+ Napi::String v8key = Napi::String::New(env, key);
+ if (wcslen(value) > 0) {
+ (item).Set(v8key, Napi::String::New(env, (const char16_t*) value));
+ } else {
+ (item).Set(v8key, env.Undefined());
+ }
+}
+
void FlushBaton::Execute() {
DWORD purge_all = PURGE_RXCLEAR | PURGE_TXABORT | PURGE_TXCLEAR;
if (!PurgeComm(int2handle(fd), purge_all)) {
diff --git a/node_modules/@serialport/bindings-cpp/src/serialport_win.h b/node_modules/@serialport/bindings-cpp/src/serialport_win.h
index f3e3c32..739b5dd 100644
--- a/node_modules/@serialport/bindings-cpp/src/serialport_win.h
+++ b/node_modules/@serialport/bindings-cpp/src/serialport_win.h
@@ -47,23 +47,24 @@ Napi::Value Read(const Napi::CallbackInfo& info);
Napi::Value List(const Napi::CallbackInfo& info);
void setIfNotEmpty(Napi::Object item, std::string key, const char *value);
+void setIfNotEmpty(Napi::Object item, std::string key, const wchar_t *value);
struct ListResultItem {
- std::string path;
- std::string manufacturer;
- std::string serialNumber;
- std::string pnpId;
- std::string locationId;
- std::string friendlyName;
- std::string vendorId;
- std::string productId;
+ std::wstring path;
+ std::wstring manufacturer;
+ std::wstring serialNumber;
+ std::wstring pnpId;
+ std::wstring locationId;
+ std::wstring friendlyName;
+ std::wstring vendorId;
+ std::wstring productId;
};
struct ListBaton : public Napi::AsyncWorker {
ListBaton(Napi::Function& callback) : Napi::AsyncWorker(callback, "node-serialport:ListBaton"),
errorString() {}
std::list<ListResultItem*> results;
- char errorString[ERROR_STRING_SIZE];
+ wchar_t errorString[ERROR_STRING_SIZE];
void Execute() override;
void OnOK() override {

View File

@@ -1,7 +1,8 @@
body {
min-height: 100vh;
overflow: hidden;
background: #1D272D;
background: transparent !important;
-webkit-font-smoothing: antialiased;
}
.modal-dialog, .modal-backdrop, .no-drag {
@@ -16,13 +17,17 @@ body {
display: none;
}
.btn {
display: inline-flex;
align-items: center;
flex-wrap: nowrap;
a, button {
&.btn {
display: inline-flex;
align-items: center;
flex-wrap: nowrap;
& > svg {
pointer-events: none;
& > svg {
pointer-events: none;
width: 16px;
height: 16px;
}
}
}
@@ -163,6 +168,10 @@ ngb-typeahead-window {
margin: -7px 0;
}
.content-box {
max-width: 600px;
}
// Windows high contrast mode
@media screen and (forced-colors: active) {

View File

@@ -0,0 +1,7 @@
export const PLUGIN_BLACKLIST = [
'terminus-shell-selector', // superseded by profiles
'terminus-scrollbar', // now useless
'terminus-clickable-links', // now bundled with Tabby
'tabby-clickable-links', // now bundled with Tabby
'terminus-clickable-ips', // broken, functionality now bundled with Tabby
]

View File

@@ -2,6 +2,7 @@ import * as fs from 'mz/fs'
import * as path from 'path'
import * as remote from '@electron/remote'
import { PluginInfo } from '../../tabby-core/src/api/mainProcess'
import { PLUGIN_BLACKLIST } from './pluginBlacklist'
const nodeModule = require('module') // eslint-disable-line @typescript-eslint/no-var-requires
@@ -20,6 +21,8 @@ const builtinPluginsPath = process.env.TABBY_DEV ? path.dirname(remote.app.getAp
const cachedBuiltinModules = {
'@angular/animations': require('@angular/animations'),
'@angular/cdk/drag-drop': require('@angular/cdk/drag-drop'),
'@angular/cdk/clipboard': require('@angular/cdk/clipboard'),
'@angular/common': require('@angular/common'),
'@angular/compiler': require('@angular/compiler'),
'@angular/core': require('@angular/core'),
@@ -63,18 +66,23 @@ export type ProgressCallback = (current: number, total: number) => void
export function initModuleLookup (userPluginsPath: string): void {
global['module'].paths.map((x: string) => nodeModule.globalPaths.push(normalizePath(x)))
nodeModule.globalPaths.unshift(path.join(userPluginsPath, 'node_modules'))
const paths = []
paths.unshift(path.join(userPluginsPath, 'node_modules'))
paths.unshift(path.join(remote.app.getAppPath(), 'node_modules'))
if (process.env.TABBY_DEV) {
nodeModule.globalPaths.unshift(path.dirname(remote.app.getAppPath()))
paths.unshift(path.dirname(remote.app.getAppPath()))
}
nodeModule.globalPaths.unshift(builtinPluginsPath)
// nodeModule.globalPaths.unshift(path.join((process as any).resourcesPath, 'app.asar', 'node_modules'))
paths.unshift(builtinPluginsPath)
// paths.unshift(path.join((process as any).resourcesPath, 'app.asar', 'node_modules'))
if (process.env.TABBY_PLUGINS) {
process.env.TABBY_PLUGINS.split(':').map(x => nodeModule.globalPaths.push(normalizePath(x)))
process.env.TABBY_PLUGINS.split(':').map(x => paths.push(normalizePath(x)))
}
process.env.NODE_PATH += path.delimiter + paths.join(path.delimiter)
nodeModule._initPaths()
builtinModules.forEach(m => {
if (!cachedBuiltinModules[m]) {
cachedBuiltinModules[m] = nodeRequire(m)
@@ -109,7 +117,7 @@ export async function findPlugins (): Promise<PluginInfo[]> {
})
}
for (const packageName of pluginNames) {
if (packageName.startsWith(PREFIX) || packageName.startsWith(LEGACY_PREFIX)) {
if ((packageName.startsWith(PREFIX) || packageName.startsWith(LEGACY_PREFIX)) && !PLUGIN_BLACKLIST.includes(packageName)) {
candidateLocations.push({ pluginDir, packageName })
}
}

View File

@@ -1,3 +1,7 @@
app-root {
background: #1D272D;
}
.preload-logo {
-webkit-app-region: drag;
position: fixed;
@@ -7,7 +11,8 @@
height: 100vh;
display: flex;
animation: 0.5s ease-out fadeIn;
background: radial-gradient(#3a66820a 0%, #000e17 30%, black 100%);
background-image: radial-gradient(#3a66820a 0%, #000e17 30%, black 100%);
background-color: black;
&>div {
width: 200px;

View File

@@ -6,6 +6,7 @@
"declaration": false,
"noImplicitAny": false,
"removeComments": false,
"esModuleInterop": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,

View File

@@ -3,11 +3,13 @@
"baseUrl": "./lib",
"module": "commonjs",
"target": "es2017",
"moduleResolution": "node",
"declaration": false,
"noImplicitAny": false,
"removeComments": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"esModuleInterop": true,
"sourceMap": true,
"noUnusedParameters": true,
"noImplicitReturns": true,

View File

@@ -51,7 +51,7 @@ module.exports = {
'source-map-support': 'commonjs source-map-support',
'windows-swca': 'commonjs windows-swca',
'windows-native-registry': 'commonjs windows-native-registry',
'windows-blurbehind': 'commonjs windows-blurbehind',
'@tabby-gang/windows-blurbehind': 'commonjs @tabby-gang/windows-blurbehind',
'yargs/yargs': 'commonjs yargs/yargs',
},
plugins: [

File diff suppressed because it is too large Load Diff

View File

@@ -1,28 +0,0 @@
os: Visual Studio 2017
platform:
- x64
environment:
nodejs_version: "14"
version: "{build}"
install:
- ps: Install-Product node $env:nodejs_version $env:platform
- yarn
- node scripts/build-native.js
build_script:
- yarn run build
- node scripts/prepackage-plugins.js
- node scripts/build-windows.js
artifacts:
- path: 'dist\*.exe'
cache:
- node_modules
- "*\\node_modules"
- "%USERPROFILE%\\.electron"
- "%LOCALAPPDATA%\\Yarn"

View File

@@ -35,20 +35,23 @@ extraResources:
asarUnpack:
- 'dist/*.map'
publish:
- provider: s3
bucket: tabby-updates
path: 'updates-${channel}-${env.ARCH}'
- provider: github
win:
icon: "./build/windows/icon.ico"
artifactName: tabby-${version}-portable.${ext}
rfc3161TimeStampServer: http://sha256timestamp.ws.symantec.com/sha256/timestamp
artifactName: tabby-${version}-portable-${env.ARCH}.${ext}
rfc3161TimeStampServer: http://timestamp.sectigo.com
nsis:
oneClick: false
artifactName: tabby-${version}-setup.${ext}
artifactName: tabby-${version}-setup-${env.ARCH}.${ext}
installerIcon: "./build/windows/icon.ico"
allowToChangeInstallationDirectory: true
shortcutName: Tabby Terminal
mac:
category: public.app-category.video
category: public.app-category.utilities
icon: "./build/mac/icon.icns"
artifactName: tabby-${version}-macos-${env.ARCH}.${ext}
hardenedRuntime: true
@@ -66,9 +69,9 @@ mac:
NSRemovableVolumesUsageDescription: 'A subprocess requests access to files on a removable volume.'
linux:
category: Utility
category: "Utility;TerminalEmulator;System"
icon: "./build/icons"
artifactName: tabby-${version}-linux.${ext}
artifactName: tabby-${version}-linux-${env.ARCH}.${ext}
executableArgs:
- "--no-sandbox"
desktop:
@@ -85,7 +88,6 @@ deb:
- gnome-keyring
- libnotify4
- libsecret-1-0
- libappindicator1
- libxtst6
- libnss3
afterInstall: build/linux/after-install.tpl

Binary file not shown.

10
firebase.json Normal file
View File

@@ -0,0 +1,10 @@
{
"hosting": {
"public": "docs/api",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
}
}

3
locale/STOP.txt Normal file
View File

@@ -0,0 +1,3 @@
Do not submit pull requests for translations.
Translations are managed at https://crowdin.com/project/tabby

2256
locale/app.pot Normal file

File diff suppressed because it is too large Load Diff

2272
locale/bg-BG.po Normal file

File diff suppressed because it is too large Load Diff

2272
locale/da-DK.po Normal file

File diff suppressed because it is too large Load Diff

2273
locale/de-DE.po Normal file

File diff suppressed because it is too large Load Diff

5
locale/en-US.po Normal file
View File

@@ -0,0 +1,5 @@
msgid "id.port-forwarding.dynamic"
msgstr "Dynamic"
msgid "id.tab-width.dynamic"
msgstr "Dynamic"

2272
locale/es-ES.po Normal file

File diff suppressed because it is too large Load Diff

2273
locale/fr-FR.po Normal file

File diff suppressed because it is too large Load Diff

2273
locale/hr-HR.po Normal file

File diff suppressed because it is too large Load Diff

2273
locale/it-IT.po Normal file

File diff suppressed because it is too large Load Diff

2273
locale/ja-JP.po Normal file

File diff suppressed because it is too large Load Diff

2272
locale/ko-KR.po Normal file

File diff suppressed because it is too large Load Diff

2272
locale/pl-PL.po Normal file

File diff suppressed because it is too large Load Diff

2273
locale/pt-BR.po Normal file

File diff suppressed because it is too large Load Diff

2272
locale/pt-PT.po Normal file

File diff suppressed because it is too large Load Diff

2272
locale/ru-RU.po Normal file

File diff suppressed because it is too large Load Diff

2273
locale/uk-UA.po Normal file

File diff suppressed because it is too large Load Diff

2273
locale/zh-CN.po Normal file

File diff suppressed because it is too large Load Diff

2272
locale/zh-TW.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,85 +1,96 @@
{
"devDependencies": {
"@angular/animations": "^12.0.0",
"@angular/cdk": "^12.2.9",
"@angular/common": "^12.0.0",
"@angular/compiler": "^12.0.0",
"@angular/core": "^12.0.0",
"@angular/forms": "^12.0.0",
"@angular/platform-browser": "^12.0.0",
"@angular/platform-browser-dynamic": "^12.0.0",
"@fortawesome/fontawesome-free": "^5.15.4",
"@biesbjerg/ngx-translate-extract-marker": "^1.0.0",
"@fortawesome/fontawesome-free": "^6.1.1",
"@ng-bootstrap/ng-bootstrap": "^10.0.0",
"@sentry/cli": "^1.67.2",
"@sentry/electron": "^2.5.1",
"@sentry/cli": "^1.74.3",
"@sentry/electron": "^2.5.4",
"@tabby-gang/to-string-loader": "^1.1.7-beta.2",
"@types/deep-equal": "1.0.1",
"@types/electron-config": "^3.2.2",
"@types/electron-debug": "^2.1.0",
"@types/fs-extra": "^9.0.12",
"@types/js-yaml": "^4.0.2",
"@types/fs-extra": "^9.0.13",
"@types/js-yaml": "^4.0.5",
"@types/node": "16.0.1",
"@types/sortablejs": "^1.10.7",
"@types/webpack-env": "^1.16.2",
"@typescript-eslint/eslint-plugin": "^4.29.0",
"@typescript-eslint/parser": "^4.28.5",
"@types/webpack-env": "^1.16.3",
"@typescript-eslint/eslint-plugin": "^4.33.0",
"@typescript-eslint/parser": "^4.33.0",
"apply-loader": "2.0.0",
"axios": "^0.21.1",
"axios": "^0.27.2",
"browserify-sign": "^4.2.1",
"clone-deep": "^4.0.1",
"compare-versions": "^3.6.0",
"core-js": "^3.15.2",
"compare-versions": "^4",
"core-js": "^3.21.1",
"core-js-pure": "^3.21.1",
"cross-env": "7.0.3",
"css-loader": "^6.2.0",
"electron": "13.1.9",
"electron-builder": "22.10.5",
"css-loader": "^6.7.1",
"deep-equal": "2.0.5",
"electron": "18.2.4",
"electron-builder": "^23.0.9",
"electron-download": "^4.1.1",
"electron-installer-snap": "^5.1.0",
"electron-notarize": "^1.0.1",
"electron-rebuild": "^3.1.1",
"electron-notarize": "^1.2.1",
"electron-rebuild": "^3.2.7",
"eslint": "^7.32.0",
"eslint-plugin-import": "^2.23.4",
"file-loader": "^6.2.0",
"graceful-fs": "^4.2.8",
"html-loader": "2.1.2",
"json-loader": "0.5.7",
"gettext-extractor": "^3.5.4",
"graceful-fs": "^4.2.10",
"html-loader": "3.1.0",
"json-loader": "^0.5.7",
"lru-cache": "^6.0.0",
"macos-release": "^3.0.0",
"macos-release": "^3.0.1",
"ngx-sortablejs": "^11.1.0",
"ngx-toastr": "^14.0.0",
"node-abi": "^2.30.0",
"node-sass": "^6.0.1",
"npmlog": "5.0.0",
"node-abi": "^3.15.0",
"node-sass": "^7.0.1",
"npmlog": "6.0.2",
"npx": "^10.2.2",
"patch-package": "^6.4.7",
"pug": "^3.0.2",
"po-gettext-loader": "^1.0.0",
"pug": "3",
"pug-cli": "^1.0.0-alpha6",
"pug-html-loader": "1.1.5",
"pug-lint": "^2.6.0",
"pug-loader": "^2.4.0",
"pug-static-loader": "2.0.0",
"raw-loader": "4.0.2",
"sass-loader": "^12.1.0",
"shell-quote": "^1.7.2",
"shelljs": "0.8.4",
"slugify": "^1.6.0",
"sortablejs": "^1.14.0",
"sass-loader": "^12.6.0",
"shell-quote": "^1.7.3",
"shelljs": "0.8.5",
"slugify": "^1.6.5",
"sortablejs": "^1.15.0",
"source-code-pro": "^2.38.0",
"source-map-loader": "^3.0.0",
"source-map-loader": "^3.0.1",
"source-sans-pro": "3.6.0",
"ssh2": "^1.2.0",
"style-loader": "^3.2.1",
"ssh2": "^1.10.0",
"style-loader": "^3.3.1",
"svg-inline-loader": "^0.8.2",
"ts-loader": "^9.2.3",
"tslib": "^2.3.0",
"typedoc": "^0.21.5",
"thenby": "^1.3.4",
"ts-loader": "^9.2.8",
"tslib": "^2.3.1",
"typedoc": "^0.22.15",
"typescript": "^4.3.5",
"utils-decorators": "^1.10.4",
"val-loader": "4.0.0",
"webpack": "^5.50.0",
"webpack-bundle-analyzer": "^4.4.2",
"webpack-cli": "^4.7.0",
"webpack": "^5.72.1",
"webpack-bundle-analyzer": "^4.5.0",
"webpack-cli": "^4.9.2",
"yaml-loader": "0.6.0",
"zone.js": "^0.11.4"
"zone.js": "^0.11.5"
},
"resolutions": {
"*/pug": "^3",
"lzma-native": "^8.0.0",
"*/node-abi": "^2.30.0",
"*/node-abi": "^3.5.0",
"**/graceful-fs": "^4.2.4"
},
"scripts": {
@@ -89,10 +100,12 @@
"start": "cross-env TABBY_DEV=1 electron app --debug --inspect",
"start:prod": "electron app --debug",
"prod": "cross-env TABBY_DEV=1 electron app",
"docs": "typedoc --emit --out docs/api --tsconfig tabby-core/src/tsconfig.typings.json tabby-core/src/index.ts && typedoc --emit --out docs/api/terminal --tsconfig tabby-terminal/tsconfig.typings.json tabby-terminal/src/index.ts && typedoc --emit --out docs/api/local --tsconfig tabby-local/tsconfig.typings.json tabby-local/src/index.ts && typedoc --emit --out docs/api/settings --tsconfig tabby-settings/tsconfig.typings.json tabby-settings/src/index.ts",
"docs": "node scripts/build-docs.js",
"lint": "eslint --ext ts */src */lib",
"postinstall": "node ./scripts/install-deps.js",
"patch": "patch-package; cd web; patch-package"
"postinstall": "patch-package && node ./scripts/install-deps.js && node ./scripts/build-native.js",
"i18n:pull": "crowdin pull --skip-untranslated-strings",
"i18n:extract": "node scripts/i18n-extract.js",
"i18n:push": "crowdin push"
},
"private": true
}

View File

@@ -1,13 +0,0 @@
diff --git a/node_modules/app-builder-lib/out/appInfo.js b/node_modules/app-builder-lib/out/appInfo.js
index 25a159e..bfe0590 100644
--- a/node_modules/app-builder-lib/out/appInfo.js
+++ b/node_modules/app-builder-lib/out/appInfo.js
@@ -165,7 +165,7 @@ class AppInfo {
get linuxPackageName() {
const name = this.name; // https://github.com/electron-userland/electron-builder/issues/2963
- return name.startsWith("@") ? this.sanitizedProductName : name;
+ return 'tabby-terminal';
}
get sanitizedName() {

View File

@@ -0,0 +1,15 @@
diff --git a/node_modules/app-builder-lib/out/appInfo.js b/node_modules/app-builder-lib/out/appInfo.js
index 363f32c..a0434a9 100644
--- a/node_modules/app-builder-lib/out/appInfo.js
+++ b/node_modules/app-builder-lib/out/appInfo.js
@@ -100,9 +100,7 @@ class AppInfo {
return this.info.metadata.name;
}
get linuxPackageName() {
- const name = this.name;
- // https://github.com/electron-userland/electron-builder/issues/2963
- return name.startsWith("@") ? this.sanitizedProductName : name;
+ return 'tabby-terminal'
}
get sanitizedName() {
return filename_1.sanitizeFileName(this.name);

39
patches/ssh2+1.8.0.patch Normal file
View File

@@ -0,0 +1,39 @@
diff --git a/node_modules/ssh2/lib/protocol/keyParser.js b/node_modules/ssh2/lib/protocol/keyParser.js
index 9860e3f..ee82e51 100644
--- a/node_modules/ssh2/lib/protocol/keyParser.js
+++ b/node_modules/ssh2/lib/protocol/keyParser.js
@@ -15,6 +15,7 @@ const {
sign: sign_,
verify: verify_,
} = require('crypto');
+const { createVerify: createVerifyDSS } = require('browserify-sign')
const supportedOpenSSLCiphers = getCiphers();
const { Ber } = require('asn1');
@@ -404,6 +405,17 @@ const BaseKey = {
return new Error('No public key available');
if (!algo || typeof algo !== 'string')
algo = this[SYM_HASH_ALGO];
+
+ if (algo === 'dss1') {
+ const verifier = createVerifyDSS('DSA-SHA1');
+ verifier.update(data);
+ try {
+ return verifier.verify(pem, signature);
+ } catch (ex) {
+ return ex;
+ }
+ }
+
try {
return verify_(algo, data, pem, signature);
} catch (ex) {
@@ -1343,7 +1355,7 @@ function parseDER(data, baseType, comment, fullType) {
return new Error('Malformed OpenSSH public key');
pubPEM = genOpenSSLDSAPub(p, q, g, y);
pubSSH = genOpenSSHDSAPub(p, q, g, y);
- algo = 'sha1';
+ algo = 'dss1';
break;
}
case 'ssh-ed25519': {

9
scripts/build-docs.js Executable file
View File

@@ -0,0 +1,9 @@
#!/usr/bin/env node
const sh = require('shelljs')
const vars = require('./vars')
const log = require('npmlog')
vars.packagesWithDocs.forEach(([dest, src]) => {
log.info('docs', src)
sh.exec(`yarn typedoc --out docs/api/${dest} --tsconfig ${src}/tsconfig.typings.json ${src}/src/index.ts`, { fatal: true })
})

View File

@@ -4,9 +4,13 @@ const vars = require('./vars')
const isTag = (process.env.GITHUB_REF || '').startsWith('refs/tags/')
process.env.ARCH = ((process.env.ARCH || process.arch) === 'arm') ? 'armv7l' : process.env.ARCH || process.arch
builder({
dir: true,
linux: ['deb', 'tar.gz', 'rpm', 'pacman'],
armv7l: process.env.ARCH === 'armv7l',
arm64: process.env.ARCH === 'arm64',
config: {
extraMetadata: {
version: vars.version,

View File

@@ -3,12 +3,18 @@ const rebuild = require('electron-rebuild').default
const path = require('path')
const vars = require('./vars')
if (process.platform === 'win32' || process.platform === 'linux') {
process.env.ARCH = ((process.env.ARCH || process.arch) === 'arm') ? 'armv7l' : process.env.ARCH || process.arch
} else {
process.env.ARCH ??= process.arch
}
let lifecycles = []
for (let dir of ['app', 'tabby-core', 'tabby-local', 'tabby-ssh', 'tabby-terminal']) {
const build = rebuild({
buildPath: path.resolve(__dirname, '../' + dir),
electronVersion: vars.electronVersion,
arch: process.env.ARCH ?? process.arch,
arch: process.env.ARCH,
force: true,
})
build.catch(e => {

View File

@@ -5,5 +5,5 @@ const log = require('npmlog')
vars.builtinPlugins.forEach(plugin => {
log.info('typings', plugin)
sh.exec(`npx tsc --project ${plugin}/tsconfig.typings.json`)
sh.exec(`yarn tsc --project ${plugin}/tsconfig.typings.json`, { fatal: true })
})

View File

@@ -5,9 +5,12 @@ const vars = require('./vars')
const isTag = (process.env.GITHUB_REF || process.env.BUILD_SOURCEBRANCH || '').startsWith('refs/tags/')
const isCI = !!process.env.GITHUB_REF
process.env.ARCH = process.env.ARCH || process.arch
builder({
dir: true,
win: ['nsis', 'zip'],
arm64: process.env.ARCH === 'arm64',
config: {
extraMetadata: {
version: vars.version,

53
scripts/i18n-extract.js Executable file
View File

@@ -0,0 +1,53 @@
#!/usr/bin/env node
const sh = require('shelljs')
const fs = require('fs/promises')
const vars = require('./vars')
const log = require('npmlog')
const { GettextExtractor, JsExtractors, HtmlExtractors } = require('gettext-extractor')
let extractor = new GettextExtractor()
const tempOutput = 'locale/app.new.pot'
const pot = 'locale/app.pot'
const tempHtml = 'locale/tmp-html'
;(async () => {
sh.mkdir('-p', tempHtml)
for (const plugin of vars.builtinPlugins) {
log.info('compile-pug', plugin)
sh.exec(`yarn pug --doctype html -s --pretty -O '{require: function(){}}' -o ${tempHtml}/${plugin} ${plugin}`, { fatal: true })
}
log.info('extract-ts')
extractor.createJsParser([
JsExtractors.callExpression('this.translate.instant', {
arguments: { text: 0 },
}),
JsExtractors.callExpression('translate.instant', {
arguments: { text: 0 },
}),
JsExtractors.callExpression('_', {
arguments: { text: 0 },
}),
]).parseFilesGlob('./tabby-*/src/**/*.ts')
log.info('extract-pug')
const options = {
attributes: {
context: 'translatecontext',
},
}
extractor.createHtmlParser([
HtmlExtractors.elementContent('translate, [translate=""]', options),
HtmlExtractors.elementAttribute('[translate*=" "]', 'translate', options),
]).parseFilesGlob(`${tempHtml}/**/*.html`)
extractor.savePotFile(tempOutput)
extractor.printStats()
sh.rm('-r', tempHtml)
sh.exec(`msgcat -s ${tempOutput} > ${pot}`, { fatal: true })
await fs.rename(tempOutput, pot)
})()

View File

@@ -1,29 +1,26 @@
#!/usr/bin/env node
const sh = require('shelljs')
const path = require('path')
const vars = require('./vars')
const log = require('npmlog')
const localBinPath = path.resolve(__dirname, '../node_modules/.bin')
const npx = `${localBinPath}/npx`
log.info('patch')
sh.exec(`${npx} patch-package`)
sh.exec(`yarn patch-package`, { fatal: true })
log.info('deps', 'app')
sh.cd('app')
sh.exec(`${npx} yarn install --force`)
sh.exec(`yarn install --force --network-timeout 1000000`, { fatal: true })
sh.cd('..')
sh.cd('web')
sh.exec(`${npx} yarn install --force`)
sh.exec(`yarn install --force --network-timeout 1000000`, { fatal: true })
sh.exec(`yarn patch-package`, { fatal: true })
sh.cd('..')
vars.allPackages.forEach(plugin => {
log.info('deps', plugin)
sh.cd(plugin)
sh.exec(`${npx} yarn install --force`)
sh.exec(`yarn install --force --network-timeout 1000000`, { fatal: true })
sh.cd('..')
})

View File

@@ -11,25 +11,25 @@ sh.mkdir('-p', target)
fs.writeFileSync(path.join(target, 'package.json'), '{}')
sh.cd(target)
vars.builtinPlugins.forEach(plugin => {
if (plugin === 'tabby-web') {
return
}
log.info('install', plugin)
sh.cp('-r', path.join('..', plugin), '.')
sh.rm('-rf', path.join(plugin, 'node_modules'))
sh.cd(plugin)
sh.exec(`yarn install --force --production`)
if (plugin === 'tabby-web') {
return
}
log.info('install', plugin)
sh.cp('-r', path.join('..', plugin), '.')
sh.rm('-rf', path.join(plugin, 'node_modules'))
sh.cd(plugin)
sh.exec(`yarn install --force --production`, { fatal: true })
log.info('rebuild', 'native')
if (fs.existsSync('node_modules')) {
rebuild({
buildPath: path.resolve('.'),
electronVersion: vars.electronVersion,
arch: process.env.ARCH ?? process.arch,
force: true,
})
}
sh.cd('..')
log.info('rebuild', 'native')
if (fs.existsSync('node_modules')) {
rebuild({
buildPath: path.resolve('.'),
electronVersion: vars.electronVersion,
arch: process.env.ARCH ?? process.arch,
force: true,
})
}
sh.cd('..')
})
fs.unlinkSync(path.join(target, 'package.json'), '{}')

View File

@@ -2,11 +2,12 @@
const sh = require('shelljs')
const vars = require('./vars')
const log = require('npmlog')
const { execSync } = require('child_process')
vars.allPackages.forEach(plugin => {
log.info('bump', plugin)
sh.cd(plugin)
sh.exec('npm --no-git-tag-version version ' + vars.version)
sh.exec('npm publish')
sh.exec('npm --no-git-tag-version version ' + vars.version, { fatal: true })
execSync('npm publish', { stdio: 'inherit' })
sh.cd('..')
})

View File

@@ -25,6 +25,14 @@ exports.builtinPlugins = [
'tabby-electron',
'tabby-local',
'tabby-plugin-manager',
'tabby-linkifier',
]
exports.packagesWithDocs = [
['.', 'tabby-core'],
['terminal', 'tabby-terminal'],
['local', 'tabby-local'],
['settings', 'tabby-settings'],
]
exports.allPackages = [

View File

@@ -19,7 +19,6 @@ parts:
- libfontconfig-dev
override-build: |
yarn
./scripts/build-native.js
yarn run build
./scripts/build-linux.js
mkdir -p $SNAPCRAFT_PART_INSTALL/opt/tabby || true

View File

@@ -1,6 +1,6 @@
{
"name": "tabby-community-color-schemes",
"version": "1.0.150",
"version": "1.0.171-nightly.3",
"description": "Community color schemes for Tabby",
"keywords": [
"tabby-builtin-plugin"

View File

@@ -0,0 +1,44 @@
!
! Light Owl
! https://github.com/sdras/night-owl-vscode-theme
!
*.foreground: #403f53
*.background: #fbfbfb
*.cursorColor: #90a7b2
!
! Black
*.color0: #403f53
*.color8: #403f53
!
! Red
*.color1: #de3d3b
*.color9: #de3d3b
!
! Green
*.color2: #08916a
*.color10: #08916a
!
! Yellow
*.color3: #e0af02
*.color11: #daaa01
!
! Blue
*.color4: #288ed7
*.color12: #288ed7
!
! Magenta
*.color5: #d6438a
*.color13: #d6438a
!
! Cyan
*.color6: #2aa298
*.color14: #2aa298
!
! White
*.color7: #f0f0f0
*.color15: #979797
!
! Bold, Italic, Underline
!*.colorBD:
!*.colorIT:
!*.colorUL:

View File

@@ -0,0 +1,44 @@
!
! Night Owl
! https://github.com/sdras/night-owl-vscode-theme
!
*.foreground: #d6deeb
*.background: #011627
*.cursorColor: #80a4c2
!
! Black
*.color0: #011627
*.color8: #969696
!
! Red
*.color1: #ef5350
*.color9: #ef5350
!
! Green
*.color2: #22da6e
*.color10: #22da6e
!
! Yellow
*.color3: #addb67
*.color11: #ffeb95
!
! Blue
*.color4: #82aaff
*.color12: #82aaff
!
! Magenta
*.color5: #c792ea
*.color13: #c792ea
!
! Cyan
*.color6: #21c7a8
*.color14: #7fdbca
!
! White
*.color7: #ffffff
*.color15: #ffffff
!
! Bold, Italic, Underline
!*.colorBD:
!*.colorIT:
!*.colorUL:

View File

@@ -0,0 +1,44 @@
!
! Rosé Pine
! https://rosepinetheme.com/
!
*.foreground: #e0def4
*.background: #191724
*.cursorColor: #555169
!
! Black
*.color0: #26233a
*.color8: #6e6a86
!
! Red
*.color1: #eb6f92
*.color9: #eb6f92
!
! Green
*.color2: #31748f
*.color10: #31748f
!
! Yellow
*.color3: #f6c177
*.color11: #f6c177
!
! Blue
*.color4: #9ccfd8
*.color12: #9ccfd8
! Magenta
*.color5: #c4a7e7
*.color13: #c4a7e7
!
! Cyan
*.color6: #ebbcba
*.color14: #ebbcba
!
! White
*.color7: #e0def4
*.color15: #e0def4
!
! Bold, Italic, Underline
!*.colorBD:
!*.colorIT:
!*.colorUL:

View File

@@ -0,0 +1,44 @@
!
! Rosé Pine Dawn
! https://rosepinetheme.com/
!
*.foreground: #575279
*.background: #faf4ed
*.cursorColor: #9893a5
!
! Black
*.color0: #f2e9de
*.color8: #6e6a86
!
! Red
*.color1: #b4637a
*.color9: #b4637a
!
! Green
*.color2: #286983
*.color10: #286983
!
! Yellow
*.color3: #ea9d34
*.color11: #ea9d34
!
! Blue
*.color4: #56949f
*.color12: #56949f
!
! Magenta
*.color5: #907aa9
*.color13: #907aa9
!
! Cyan
*.color6: #d7827e
*.color14: #d7827e
!
! White
*.color7: #575279
*.color15: #575279
!
! Bold, Italic, Underline
!*.colorBD:
!*.colorIT:
!*.colorUL:

View File

@@ -0,0 +1,44 @@
!
! Rosé Pine Moon
! https://rosepinetheme.com/
!
*.foreground: #e0def4
*.background: #232136
*.cursorColor: #59546d
!
! Black
*.color0: #393552
*.color8: #817c9c
!
! Red
*.color1: #eb6f92
*.color9: #eb6f92
!
! Green
*.color2: #3e8fb0
*.color10: #3e8fb0
!
! Yellow
*.color3: #f6c177
*.color11: #f6c177
!
! Blue
*.color4: #9ccfd8
*.color12: #9ccfd8
!
! Magenta
*.color5: #c4a7e7
*.color13: #c4a7e7
!
! Cyan
*.color6: #ea9a97
*.color14: #ea9a97
!
! White
*.color7: #e0def4
*.color15: #e0def4
!
! Bold, Italic, Underline
!*.colorBD:
!*.colorIT:
!*.colorUL:

View File

@@ -1,7 +1,13 @@
Tabby Core Plugin
--------------------
# Tabby Core Plugin
See also: [Settings plugin API](./settings/), [Terminal plugin API](./terminal/), [Local terminal API](./local/)
See also:
* [Settings plugin API](./settings/)
* [Terminal plugin API](./terminal/)
* [Local terminal API](./local/)
* [Linkifier plugin API](./linkifier/)
This module provides:
* tabbed interface services
* toolbar UI

View File

@@ -1,6 +1,6 @@
{
"name": "tabby-core",
"version": "1.0.150",
"version": "1.0.171-nightly.3",
"description": "Tabby core",
"keywords": [
"tabby-builtin-plugin"
@@ -17,15 +17,15 @@
"author": "Eugene Pankov",
"license": "MIT",
"devDependencies": {
"@types/js-yaml": "^4.0.0",
"@ngx-translate/core": "^14.0.0",
"bootstrap": "^4.1.3",
"deep-equal": "^2.0.5",
"deepmerge": "^4.1.1",
"electron-updater": "^4.0.6",
"js-yaml": "^4.0.0",
"messageformat": "^2.3.0",
"mixpanel": "^0.13.0",
"ngx-filesize": "^2.0.16",
"ngx-perfect-scrollbar": "^10.1.0",
"ngx-translate-messageformat-compiler": "^4.11.0",
"readable-stream": "3.6.0",
"uuid": "^8.0.0"
},

View File

@@ -1,7 +1,7 @@
export { BaseComponent, SubscriptionContainer } from '../components/base.component'
export { BaseTabComponent, BaseTabProcess } from '../components/baseTab.component'
export { BaseTabComponent, BaseTabProcess, GetRecoveryTokenOptions } from '../components/baseTab.component'
export { TabHeaderComponent } from '../components/tabHeader.component'
export { SplitTabComponent, SplitContainer } from '../components/splitTab.component'
export { SplitTabComponent, SplitContainer, SplitDirection, SplitOrientation } from '../components/splitTab.component'
export { TabRecoveryProvider, RecoveryToken } from './tabRecovery'
export { ToolbarButtonProvider, ToolbarButton } from './toolbarButtonProvider'
export { ConfigProvider } from './configProvider'
@@ -25,13 +25,15 @@ export { DockingService, Screen } from '../services/docking.service'
export { Logger, ConsoleLogger, LogService } from '../services/log.service'
export { HomeBaseService } from '../services/homeBase.service'
export { HotkeysService } from '../services/hotkeys.service'
export { KeyEventData, KeyName, Keystroke } from '../services/hotkeys.util'
export { KeyEventData, KeyName, Keystroke, altKeyName, metaKeyName } from '../services/hotkeys.util'
export { NotificationsService } from '../services/notifications.service'
export { ThemesService } from '../services/themes.service'
export { ProfilesService } from '../services/profiles.service'
export { SelectorService } from '../services/selector.service'
export { TabRecoveryService } from '../services/tabRecovery.service'
export { TabsService, NewTabParameters, TabComponentType } from '../services/tabs.service'
export { UpdaterService } from '../services/updater.service'
export { VaultService, Vault, VaultSecret, VaultFileSecret, VAULT_SECRET_TYPE_FILE } from '../services/vault.service'
export { VaultService, Vault, VaultSecret, VaultFileSecret, VAULT_SECRET_TYPE_FILE, StoredVault, VaultSecretKey } from '../services/vault.service'
export { FileProvidersService } from '../services/fileProviders.service'
export { LocaleService, TranslateServiceWrapper as TranslateService } from '../services/locale.service'
export * from '../utils'

View File

@@ -16,7 +16,7 @@ export interface PluginInfo {
export interface BootstrapData {
config: Record<string, any>
executable: string
isFirstWindow: boolean
isMainWindow: boolean
windowID: number
installedPlugins: PluginInfo[]
userPluginsPath: string

View File

@@ -48,6 +48,9 @@ export abstract class FileTransfer {
}
protected increaseProgress (bytes: number): void {
if (!bytes) {
return
}
this.completedBytes += bytes
this.lastChunkSpeed = bytes * 1000 / (Date.now() - this.lastChunkStartTime)
this.lastChunkStartTime = Date.now()

View File

@@ -44,7 +44,7 @@ export abstract class ProfileProvider<P extends Profile> {
abstract getBuiltinProfiles (): Promise<PartialProfile<P>[]>
abstract getNewTabParameters (profile: PartialProfile<P>): Promise<NewTabParameters<BaseTabComponent>>
abstract getNewTabParameters (profile: P): Promise<NewTabParameters<BaseTabComponent>>
getSuggestedName (profile: PartialProfile<P>): string|null {
return null
@@ -56,5 +56,9 @@ export abstract class ProfileProvider<P extends Profile> {
return null
}
intoQuickConnectString (profile: P): string|null {
return null
}
deleteProfile (profile: P): void { }
}

View File

@@ -1,9 +1,12 @@
export interface SelectorOption<T> {
name: string
description?: string
group?: string
result?: T
icon?: string
freeInputPattern?: string
freeInputEquivalent?: string
color?: string
weight?: number
callback?: (string?) => void
}

View File

@@ -1,10 +1,10 @@
import deepClone from 'clone-deep'
import { BaseTabComponent } from '../components/baseTab.component'
import { NewTabParameters } from '../services/tabs.service'
export interface RecoveryToken {
[_: string]: any
type: string
tabIcon?: string|null
tabColor?: string|null
}
@@ -38,14 +38,4 @@ export abstract class TabRecoveryProvider <T extends BaseTabComponent> {
* or `null` if this token is from a different tab type or is not supported
*/
abstract recover (recoveryToken: RecoveryToken): Promise<NewTabParameters<T>>
/**
* @param recoveryToken a recovery token found in the saved tabs list
* @returns [[RecoveryToken]] a new recovery token to create the duplicate tab from
*
* The default implementation just returns a deep copy of the original token
*/
duplicate (recoveryToken: RecoveryToken): RecoveryToken {
return deepClone(recoveryToken)
}
}

View File

@@ -27,6 +27,10 @@ export interface ToolbarButton {
/** @hidden */
submenuItems?: ToolbarButton[]
showInToolbar?: boolean
showInStartPage?: boolean
}
/**

View File

@@ -1,10 +1,9 @@
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
import { Injectable } from '@angular/core'
import { TranslateService } from '@ngx-translate/core'
import { ToolbarButton, ToolbarButtonProvider } from './api/toolbarButtonProvider'
import { HostAppService, Platform } from './api/hostApp'
import { PartialProfile, Profile } from './api/profileProvider'
import { ConfigService } from './services/config.service'
import { HotkeysService } from './services/hotkeys.service'
import { ProfilesService } from './services/profiles.service'
@@ -14,7 +13,7 @@ export class ButtonProvider extends ToolbarButtonProvider {
constructor (
private hostApp: HostAppService,
private profilesService: ProfilesService,
private config: ConfigService,
private translate: TranslateService,
hotkeys: HotkeysService,
) {
super()
@@ -28,32 +27,29 @@ export class ButtonProvider extends ToolbarButtonProvider {
async activate () {
const profile = await this.profilesService.showProfileSelector()
if (profile) {
this.launchProfile(profile)
this.profilesService.launchProfile(profile)
}
}
async launchProfile (profile: PartialProfile<Profile>) {
await this.profilesService.openNewTabForProfile(profile)
let recentProfiles = this.config.store.recentProfiles
if (this.config.store.terminal.showRecentProfiles > 0) {
recentProfiles = recentProfiles.filter(x => x.group !== profile.group || x.name !== profile.name)
recentProfiles.unshift(profile)
recentProfiles = recentProfiles.slice(0, this.config.store.terminal.showRecentProfiles)
} else {
recentProfiles = []
}
this.config.store.recentProfiles = recentProfiles
this.config.save()
}
provide (): ToolbarButton[] {
return [{
icon: this.hostApp.platform === Platform.Web
? require('./icons/plus.svg')
: require('./icons/profiles.svg'),
title: 'New tab with profile',
click: () => this.activate(),
}]
return [
{
icon: this.hostApp.platform === Platform.Web
? require('./icons/plus.svg')
: require('./icons/profiles.svg'),
title: this.translate.instant('Profiles & connections'),
click: () => this.activate(),
},
...this.profilesService.getRecentProfiles().map(profile => ({
icon: require('./icons/history.svg'),
title: profile.name,
showInToolbar: false,
showinStartPage: true,
click: async () => {
const p = (await this.profilesService.getProfiles()).find(x => x.id === profile.id) ?? profile
this.profilesService.launchProfile(p)
},
})),
]
}
}

View File

@@ -23,6 +23,10 @@ export class ProfileCLIHandler extends CLIHandler {
this.handleOpenProfile(event.argv.profileName)
return true
}
if (op === 'recent') {
this.handleOpenRecentProfile(event.argv.profileNumber)
return true
}
return false
}
@@ -35,6 +39,15 @@ export class ProfileCLIHandler extends CLIHandler {
this.profiles.openNewTabForProfile(profile)
this.hostWindow.bringToFront()
}
private async handleOpenRecentProfile (profileNumber: number) {
const profiles = this.profiles.getRecentProfiles()
if (profileNumber >= profiles.length) {
return
}
this.profiles.openNewTabForProfile(profiles[profileNumber])
this.hostWindow.bringToFront()
}
}
@Injectable()

View File

@@ -1,5 +1,6 @@
title-bar(
*ngIf='ready && !hostWindow.isFullscreen && config.store.appearance.frame == "full" && config.store.appearance.dock == "off"',
(dblclick)='hostWindow.toggleMaximize()',
[class.inset]='hostApp.platform == Platform.macOS && !hostWindow.isFullscreen'
)
@@ -8,7 +9,7 @@ title-bar(
[class.tabs-on-top]='config.store.appearance.tabsLocation == "top" || config.store.appearance.tabsLocation == "left"',
[class.tabs-on-side]='hasVerticalTabs()',
)
.tab-bar
.tab-bar((dblclick)='hostWindow.toggleMaximize()')
.inset.background(*ngIf='hostApp.platform == Platform.macOS \
&& !hostWindow.isFullscreen \
&& config.store.appearance.frame == "thin" \
@@ -25,7 +26,7 @@ title-bar(
[tab]='tab',
[active]='tab == app.activeTab',
@animateTab,
[@.disabled]='hasVerticalTabs()',
[@.disabled]='hasVerticalTabs() || !config.store.accessibility.animations',
(click)='app.selectTab(tab)',
[class.fully-draggable]='hostApp.platform != Platform.macOS',
[class.drag-region]='hostApp.platform == Platform.macOS && !(app.tabDragActive$|async)',
@@ -56,15 +57,20 @@ title-bar(
div([class.ml-3]='hasIcons(button.submenuItems)') {{item.title}}
.d-flex(
*ngIf='activeTransfers.length > 0',
ngbDropdown,
[(open)]='activeTransfersDropdownOpen'
container='body',
#activeTransfersDropdown='ngbDropdown'
)
button.btn.btn-secondary.btn-tab-bar(
*ngIf='activeTransfers.length > 0',
title='File transfers',
ngbDropdownToggle
) !{require('../icons/download-solid.svg')}
transfers-menu(ngbDropdownMenu, [(transfers)]='activeTransfers')
) !{require('../icons/transfers.svg')}
transfers-menu(
ngbDropdownMenu,
[(transfers)]='activeTransfers',
(transfersChange)='onTransfersChange()'
)
.drag-space.background([class.persistent]='config.store.appearance.frame == "thin" && hostApp.platform != Platform.macOS')

View File

@@ -6,7 +6,6 @@
overflow: hidden;
user-select: none;
-webkit-user-drag: none;
-webkit-font-smoothing: antialiased;
will-change: transform;
cursor: default;
animation: 0.5s ease-out fadeIn;
@@ -89,7 +88,7 @@ $side-tab-width: 200px;
padding: 0 12px;
flex: 0 0 auto;
border-bottom: 2px solid transparent;
transition: 0.25s all;
transition: 0.125s all ease-out;
font-size: 12px;
text-transform: uppercase;

View File

@@ -1,7 +1,7 @@
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
import { Component, Inject, Input, HostListener, HostBinding, ViewChildren } from '@angular/core'
import { Component, Inject, Input, HostListener, HostBinding, ViewChildren, ViewChild } from '@angular/core'
import { trigger, style, animate, transition, state } from '@angular/animations'
import { NgbModal } from '@ng-bootstrap/ng-bootstrap'
import { NgbDropdown, NgbModal } from '@ng-bootstrap/ng-bootstrap'
import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop'
import { HostAppService, Platform } from '../api/hostApp'
@@ -14,6 +14,7 @@ import { UpdaterService } from '../services/updater.service'
import { BaseTabComponent } from './baseTab.component'
import { SafeModeModalComponent } from './safeModeModal.component'
import { TabBodyComponent } from './tabBody.component'
import { SplitTabComponent } from './splitTab.component'
import { AppService, FileTransfer, HostWindowService, PlatformService, ToolbarButton, ToolbarButtonProvider } from '../api'
/** @hidden */
@@ -24,8 +25,8 @@ import { AppService, FileTransfer, HostWindowService, PlatformService, ToolbarBu
animations: [
trigger('animateTab', [
state('in', style({
'flex-basis': '200px',
width: '200px',
'flex-basis': 'auto',
width: 'auto',
})),
transition(':enter', [
style({
@@ -33,14 +34,14 @@ import { AppService, FileTransfer, HostWindowService, PlatformService, ToolbarBu
width: '1px',
}),
animate('250ms ease-in-out', style({
'flex-basis': '200px',
width: '200px',
'flex-basis': 'auto',
width: 'auto',
})),
]),
transition(':leave', [
style({
'flex-basis': '200px',
width: '200px',
'flex-basis': 'auto',
width: 'auto',
}),
animate('250ms ease-in-out', style({
'flex-basis': '1px',
@@ -60,10 +61,10 @@ export class AppRootComponent {
@HostBinding('class.platform-linux') platformClassLinux = process.platform === 'linux'
@HostBinding('class.no-tabs') noTabs = true
@ViewChildren(TabBodyComponent) tabBodies: TabBodyComponent[]
@ViewChild('activeTransfersDropdown') activeTransfersDropdown: NgbDropdown
unsortedTabs: BaseTabComponent[] = []
updatesAvailable = false
activeTransfers: FileTransfer[] = []
activeTransfersDropdownOpen = false
private logger: Logger
constructor (
@@ -108,9 +109,18 @@ export class AppRootComponent {
if (hotkey === 'move-tab-right') {
this.app.moveSelectedTabRight()
}
if (hotkey === 'reopen-tab') {
this.app.reopenLastTab()
if (hotkey === 'duplicate-tab') {
this.app.duplicateTab(this.app.activeTab)
}
if (hotkey === 'explode-tab' && this.app.activeTab instanceof SplitTabComponent) {
this.app.explodeTab(this.app.activeTab)
}
if (hotkey === 'combine-tabs' && this.app.activeTab instanceof SplitTabComponent) {
this.app.combineTabsInto(this.app.activeTab)
}
}
if (hotkey === 'reopen-tab') {
this.app.reopenLastTab()
}
if (hotkey === 'toggle-fullscreen') {
hostWindow.toggleFullscreen()
@@ -144,7 +154,7 @@ export class AppRootComponent {
platform.fileTransferStarted$.subscribe(transfer => {
this.activeTransfers.push(transfer)
this.activeTransfersDropdownOpen = true
this.activeTransfersDropdown.open()
})
config.ready$.toPromise().then(() => {
@@ -193,16 +203,34 @@ export class AppRootComponent {
}
onTabsReordered (event: CdkDragDrop<BaseTabComponent[]>) {
const tab: BaseTabComponent = event.item.data
if (!this.app.tabs.includes(tab)) {
if (tab.parent instanceof SplitTabComponent) {
tab.parent.removeTab(tab)
this.app.wrapAndAddTab(tab)
}
}
moveItemInArray(this.app.tabs, event.previousIndex, event.currentIndex)
this.app.emitTabsChanged()
}
onTransfersChange () {
if (this.activeTransfers.length === 0) {
this.activeTransfersDropdown.close()
}
}
@HostBinding('class.vibrant') get isVibrant () {
return this.config.store?.appearance.vibrancy
}
private getToolbarButtons (aboveZero: boolean): ToolbarButton[] {
let buttons: ToolbarButton[] = []
this.config.enabledServices(this.toolbarButtonProviders).forEach(provider => {
buttons = buttons.concat(provider.provide())
})
return buttons
.filter(x => x.showInToolbar ?? true)
.filter(button => (button.weight ?? 0) > 0 === aboveZero)
.sort((a: ToolbarButton, b: ToolbarButton) => (a.weight ?? 0) - (b.weight ?? 0))
}

View File

@@ -1,4 +1,4 @@
import { Observable, Subject } from 'rxjs'
import { Observable, Subject, distinctUntilChanged, filter, debounceTime } from 'rxjs'
import { EmbeddedViewRef, ViewContainerRef, ViewRef } from '@angular/core'
import { RecoveryToken } from '../api/tabRecovery'
import { BaseComponent } from './base.component'
@@ -11,6 +11,10 @@ export interface BaseTabProcess {
name: string
}
export interface GetRecoveryTokenOptions {
includeState: boolean
}
/**
* Abstract base class for custom tab components
*/
@@ -43,7 +47,16 @@ export abstract class BaseTabComponent extends BaseComponent {
/**
* CSS color override for the tab's header
*/
color: string|null = null
get color (): string|null { return this._color }
set color (value: string|null) { this._color = value }
private _color: string|null = null
/**
* icon override for the tab's header
*/
get icon (): string|null { return this._icon }
set icon (value: string|null) { this._icon = value }
private _icon: string|null = null
hasFocus = false
@@ -57,7 +70,6 @@ export abstract class BaseTabComponent extends BaseComponent {
/* @hidden */
viewContainerEmbeddedRef?: EmbeddedViewRef<any>
private progressClearTimeout: number
private titleChange = new Subject<string>()
private focused = new Subject<void>()
private blurred = new Subject<void>()
@@ -69,8 +81,8 @@ export abstract class BaseTabComponent extends BaseComponent {
get focused$ (): Observable<void> { return this.focused }
get blurred$ (): Observable<void> { return this.blurred }
get titleChange$ (): Observable<string> { return this.titleChange }
get progress$ (): Observable<number|null> { return this.progress }
get titleChange$ (): Observable<string> { return this.titleChange.pipe(distinctUntilChanged()) }
get progress$ (): Observable<number|null> { return this.progress.pipe(distinctUntilChanged()) }
get activity$ (): Observable<boolean> { return this.activity }
get destroyed$ (): Observable<void> { return this.destroyed }
get recoveryStateChangedHint$ (): Observable<void> { return this.recoveryStateChangedHint }
@@ -83,6 +95,12 @@ export abstract class BaseTabComponent extends BaseComponent {
this.blurred$.subscribe(() => {
this.hasFocus = false
})
this.subscribeUntilDestroyed(this.progress.pipe(
filter(x => x !== null),
debounceTime(5000),
), () => {
this.setProgress(null)
})
}
setTitle (title: string): void {
@@ -99,30 +117,26 @@ export abstract class BaseTabComponent extends BaseComponent {
*/
setProgress (progress: number|null): void {
this.progress.next(progress)
if (progress) {
if (this.progressClearTimeout) {
clearTimeout(this.progressClearTimeout)
}
this.progressClearTimeout = setTimeout(() => {
this.setProgress(null)
}, 5000) as any
}
}
/**
* Shows the acticity marker on the tab header
*/
displayActivity (): void {
this.hasActivity = true
this.activity.next(true)
if (!this.hasActivity) {
this.hasActivity = true
this.activity.next(true)
}
}
/**
* Removes the acticity marker from the tab header
*/
clearActivity (): void {
this.hasActivity = false
this.activity.next(false)
if (this.hasActivity) {
this.hasActivity = false
this.activity.next(false)
}
}
/**
@@ -132,7 +146,7 @@ export abstract class BaseTabComponent extends BaseComponent {
* @return JSON serializable tab state representation
* for your [[TabRecoveryProvider]] to parse
*/
async getRecoveryToken (): Promise<RecoveryToken|null> {
async getRecoveryToken (options?: GetRecoveryTokenOptions): Promise<RecoveryToken|null> { // eslint-disable-line @typescript-eslint/no-unused-vars
return null
}

View File

@@ -0,0 +1,9 @@
i.icon(
class='fa-fw {{icon}}',
[style.color]='color',
*ngIf='!isHTML'
)
.icon(
[fastHtmlBind]='icon',
*ngIf='isHTML'
)

View File

@@ -0,0 +1,15 @@
:host {
display: flex;
align-items: center;
max-width: 1.25rem;
}
::ng-deep img {
max-width: 100%;
max-height: 100%;
}
::ng-deep svg {
width: 100%;
height: 100%;
}

View File

@@ -0,0 +1,18 @@
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
import { Component, Input } from '@angular/core'
import { BaseComponent } from './base.component'
/** @hidden */
@Component({
selector: 'profile-icon',
template: require('./profileIcon.component.pug'),
styles: [require('./profileIcon.component.scss')],
})
export class ProfileIconComponent extends BaseComponent {
@Input() icon?: string
@Input() color?: string
get isHTML (): boolean {
return this.icon?.startsWith('<') ?? false
}
}

View File

@@ -2,5 +2,5 @@
input.form-control(type='text', #input, [(ngModel)]='value', (keyup.enter)='save()', autofocus)
.modal-footer
button.btn.btn-primary((click)='save()') Save
button.btn.btn-secondary((click)='close()') Cancel
button.btn.btn-primary((click)='save()', translate) Save
button.btn.btn-secondary((click)='close()', translate) Cancel

View File

@@ -1,7 +1,7 @@
.modal-body
.alert.alert-danger Tabby could not start with your plugins, so all third party plugins have been disabled in this session. The error was:
.alert.alert-danger(translate) Tabby could not start with your plugins, so all third party plugins have been disabled in this session. The error was:
pre {{error}}
.modal-footer
button.btn.btn-primary((click)='close()') Close
button.btn.btn-primary((click)='close()', translate) Close

View File

@@ -8,21 +8,27 @@
)
.list-group.list-group-light(*ngIf='filteredOptions.length')
a.list-group-item.list-group-item-action.d-flex.align-items-center(
#item,
(click)='selectOption(option)',
[class.active]='selectedIndex == i',
*ngFor='let option of filteredOptions; let i = index'
)
i.icon(
class='fa-fw {{option.icon}}',
style='color: {{option.color}}',
*ngIf='!iconIsSVG(option.icon)'
ng-container(*ngFor='let option of filteredOptions; let i = index')
label.group-header(
*ngIf='hasGroups && option.group !== filteredOptions[i - 1]?.group'
) {{option.group}}
a.list-group-item.list-group-item-action.d-flex.align-items-center(
#item,
(click)='selectOption(option)',
[class.active]='selectedIndex == i'
)
.icon(
[fastHtmlBind]='option.icon',
style='color: {{option.color}}',
*ngIf='iconIsSVG(option.icon)'
)
.title.mr-2 {{getOptionText(option)}}
.description.no-wrap.text-muted {{option.description}}
profile-icon(
[icon]='option.icon',
[color]='option.color'
)
.title.mr-2 {{getOptionText(option)}}
.description.no-wrap.text-muted(
*ngIf='option.description !== getOptionText(option)'
) {{option.description}}
.ml-auto
.no-wrap.badge.badge-secondary.text-muted.ml-2(*ngIf='selectedIndex == i && canEditSelected()')
span Backspace
i.fas.fa-pencil.ml-1
.no-wrap.badge.badge-secondary.text-muted.ml-2(*ngIf='selectedIndex == i')
span Enter
i.fas.fa-arrow-right.ml-1

View File

@@ -7,6 +7,17 @@
overflow: auto;
border-top-left-radius: 0;
border-top-right-radius: 0;
padding: 10px 15px;
}
.group-header {
padding: 0 1rem;
margin: 15px 0 10px;
font-weight: bold;
&:first-child {
margin-top: 5px;
}
}
.icon {
@@ -25,4 +36,5 @@
input {
border-radius: 0;
border: none;
}

View File

@@ -1,3 +1,4 @@
import { firstBy } from 'thenby'
import { Component, Input, HostListener, ViewChildren, QueryList, ElementRef } from '@angular/core' // eslint-disable-line @typescript-eslint/no-unused-vars
import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'
import { SelectorOption } from '../api/selector'
@@ -14,6 +15,7 @@ export class SelectorModalComponent<T> {
@Input() filter = ''
@Input() name: string
@Input() selectedIndex = 0
hasGroups = false
@ViewChildren('item') itemChildren: QueryList<ElementRef>
constructor (
@@ -22,14 +24,17 @@ export class SelectorModalComponent<T> {
ngOnInit (): void {
this.onFilterChange()
this.hasGroups = this.options.some(x => x.group)
}
@HostListener('keyup', ['$event']) onKeyUp (event: KeyboardEvent): void {
@HostListener('keydown', ['$event']) onKeyUp (event: KeyboardEvent): void {
if (event.key === 'ArrowUp') {
this.selectedIndex--
event.preventDefault()
}
if (event.key === 'ArrowDown') {
this.selectedIndex++
event.preventDefault()
}
if (event.key === 'Enter') {
this.selectOption(this.filteredOptions[this.selectedIndex])
@@ -37,6 +42,10 @@ export class SelectorModalComponent<T> {
if (event.key === 'Escape') {
this.close()
}
if (event.key === 'Backspace' && this.canEditSelected()) {
this.filter = this.filteredOptions[this.selectedIndex].freeInputEquivalent!
this.onFilterChange()
}
this.selectedIndex = (this.selectedIndex + this.filteredOptions.length) % this.filteredOptions.length
Array.from(this.itemChildren)[this.selectedIndex]?.nativeElement.scrollIntoView({
@@ -48,16 +57,26 @@ export class SelectorModalComponent<T> {
onFilterChange (): void {
const f = this.filter.trim().toLowerCase()
if (!f) {
this.filteredOptions = this.options.filter(x => !x.freeInputPattern)
this.filteredOptions = this.options.slice().sort(
firstBy<SelectorOption<T>, number>(x => x.weight ?? 0)
.thenBy<SelectorOption<T>, string>(x => x.group ?? '')
.thenBy<SelectorOption<T>, string>(x => x.name)
)
.filter(x => !x.freeInputPattern)
} else {
const terms = f.split(' ')
// eslint-disable-next-line @typescript-eslint/restrict-plus-operands
this.filteredOptions = this.options.filter(x => x.freeInputPattern ?? terms.every(term => (x.name + (x.description ?? '')).toLowerCase().includes(term)))
this.filteredOptions = this.options.filter(x => x.freeInputPattern ?? this.filterMatches(x, terms))
}
this.selectedIndex = Math.max(0, this.selectedIndex)
this.selectedIndex = Math.min(this.filteredOptions.length - 1, this.selectedIndex)
}
filterMatches (option: SelectorOption<T>, terms: string[]): boolean {
const content = (option.group ?? '') + option.name + (option.description ?? '')
return terms.every(term => content.toLowerCase().includes(term))
}
getOptionText (option: SelectorOption<T>): string {
if (option.freeInputPattern) {
return option.freeInputPattern.replace('%s', this.filter)
@@ -70,11 +89,11 @@ export class SelectorModalComponent<T> {
this.modalInstance.close(option.result)
}
canEditSelected (): boolean {
return !this.filter && !!this.filteredOptions[this.selectedIndex].freeInputEquivalent && this.options.some(x => x.freeInputPattern)
}
close (): void {
this.modalInstance.dismiss()
}
iconIsSVG (icon?: string): boolean {
return icon?.startsWith('<') ?? false
}
}

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