Compare commits

...

801 Commits

Author SHA1 Message Date
allcontributors[bot]
4f4e616ed8 docs: update .all-contributorsrc [skip ci] 2022-06-25 09:35:46 +00:00
allcontributors[bot]
4d9458c4a2 docs: update README.de-DE.md [skip ci] 2022-06-25 09:35:45 +00:00
allcontributors[bot]
00d584666e docs: update README.it-IT.md [skip ci] 2022-06-25 09:35:44 +00:00
allcontributors[bot]
8f28d6f0f3 docs: update README.ko-KR.md [skip ci] 2022-06-25 09:35:43 +00:00
allcontributors[bot]
51e016f872 docs: update README.ru-RU.md [skip ci] 2022-06-25 09:35:42 +00:00
allcontributors[bot]
29b324e7b9 docs: update README.zh-CN.md [skip ci] 2022-06-25 09:35:41 +00:00
allcontributors[bot]
2131b488a4 docs: update README.md [skip ci] 2022-06-25 09:35:40 +00:00
Eugene
a7cba2be28 Update build.yml 2022-06-18 21:11:07 +02:00
Eugene
2b601c7470 Update build-macos.js 2022-06-18 16:04:51 +02:00
Eugene Pankov
1a1381a64a avoid unnecessary touchbar updates 2022-06-18 12:40:22 +02:00
Eugene Pankov
78cd2a0794 display split tab spanners below the maximized pane 2022-06-18 11:27:30 +02:00
Eugene Pankov
7be921592a fixed "notify on activity" not working for the currently active tab 2022-06-18 11:26:09 +02:00
Eugene Pankov
53f3962640 limit max text shown in paste warning 2022-06-18 11:08:50 +02:00
Eugene Pankov
1c8de05065 added support for Ctrl-/ and Ctrl-@ - fixes #6235, fixes #3382, fixes #3053 2022-06-18 10:42:54 +02:00
Eugene Pankov
a24c1c489b added support for Ctrl-/ - fixes #6235, fixes #3382 2022-06-18 10:40:31 +02:00
Eugene Pankov
85d0b47511 added missing string 2022-06-16 18:34:44 +02:00
Eugene Pankov
f469c91786 locale updates 2022-06-15 22:50:47 +02:00
Eugene Pankov
485cd0ef53 updated locales, added Indonesian and UK English 2022-06-15 22:49:46 +02:00
Eugene Pankov
ce351117a5 use atomically instead of write-file-atomic 2022-06-15 21:30:03 +02:00
Eugene Pankov
ef49aa213e use write-file-atomic for config saving 2022-06-15 20:56:47 +02:00
Eugene Pankov
8d5dffcca1 optimized animations 2022-06-15 20:02:00 +02:00
Eugene Pankov
5087e7de25 optimized flow control 2022-06-15 20:01:53 +02:00
Eugene Pankov
52dd0db5f6 bumped macos-release - fixes #6564 - startup on macOS Ventura 2022-06-10 09:21:20 +02:00
Eugene Pankov
9ed6c138f8 revert updates back to Github 2022-06-02 20:15:30 +02:00
Eugene Pankov
7437aaffcf fixed startup event oder - fixes #6511 2022-05-30 23:27:01 +02:00
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
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
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
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
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
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]
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]
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
320 changed files with 50894 additions and 3251 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,
@@ -496,6 +501,270 @@
"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"
]
},
{
"login": "joaompinto",
"name": "João Pinto",
"avatar_url": "https://avatars.githubusercontent.com/u/1143125?v=4",
"profile": "https://www.linkedin.com/in/joaolmpinto/",
"contributions": [
"doc"
]
}
],
"contributorsPerLine": 7,

View File

@@ -7,6 +7,13 @@ 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 [...]

View File

@@ -8,12 +8,12 @@ assignees: ''
---
<!--
Before submitting an issue, make sure that:
* You're running the latest Tabby version: https://github.com/Eugeny/tabby/releases
* You've searched the existing issues: https://github.com/Eugeny/tabby/issues
* Your problem is not caused by third-party plugins (disable _third-party_ plugins, restart and try to reproduce the problem).
# READ CAREFULLY:
*Reports are accepted in English ONLY.*
* **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**:

View File

@@ -2,16 +2,16 @@ 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.5.0
uses: actions/setup-node@v3.2.0
with:
node-version: 16
@@ -31,40 +31,34 @@ jobs:
run: yarn run lint
macOS-Build:
runs-on: macos-11.0
runs-on: macos-11
needs: Lint
strategy:
matrix:
include:
- arch: x86_64
- arch: arm64
fail-fast: false
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.5.0
uses: actions/setup-node@v3.2.0
with:
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
@@ -134,12 +128,12 @@ jobs:
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.5.0
uses: actions/setup-node@v3.2.0
with:
node-version: 16
@@ -148,14 +142,7 @@ jobs:
sudo apt-get update
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
- name: Build native deps
run: scripts/build-native.js
yarn --network-timeout 1000000
- name: Webpack
run: yarn run build
@@ -183,7 +170,7 @@ jobs:
SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }}
- name: Upload packages to packagecloud.io
uses: TykTechnologies/packagecloud-action@main
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 }}
@@ -199,8 +186,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
@@ -209,31 +194,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
@@ -242,18 +221,25 @@ jobs:
name: Web tarball
path: artifact-web
Windows-Build:
runs-on: windows-2022
needs: Lint
strategy:
matrix:
include:
- arch: x64
- arch: arm64
fail-fast: false
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.5.0
uses: actions/setup-node@v3.2.0
with:
node-version: 16
@@ -266,15 +252,17 @@ jobs:
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 }}
@@ -283,6 +271,8 @@ jobs:
- 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: |
@@ -296,18 +286,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

View File

@@ -38,11 +38,11 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v2
uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
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.
@@ -53,7 +53,7 @@ jobs:
# 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@v1
uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
@@ -67,4 +67,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v2

View File

@@ -7,14 +7,14 @@ 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.5.0
uses: actions/setup-node@v3.2.0
with:
node-version: 14
node-version: 16
- name: Build
run: |

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:

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

@@ -0,0 +1,271 @@
[![](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>
<td align="center"><a href="https://www.linkedin.com/in/joaolmpinto/"><img src="https://avatars.githubusercontent.com/u/1143125?v=4?s=100" width="100px;" alt=""/><br /><sub><b>João Pinto</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=joaompinto" title="Documentation">📖</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!

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

@@ -0,0 +1,266 @@
[![](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>
<td align="center"><a href="https://www.linkedin.com/in/joaolmpinto/"><img src="https://avatars.githubusercontent.com/u/1143125?v=4?s=100" width="100px;" alt=""/><br /><sub><b>João Pinto</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=joaompinto" title="Documentation">📖</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!

View File

@@ -204,6 +204,51 @@ Pull requests and plugins are welcome!
<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>
<td align="center"><a href="https://www.linkedin.com/in/joaolmpinto/"><img src="https://avatars.githubusercontent.com/u/1143125?v=4?s=100" width="100px;" alt=""/><br /><sub><b>João Pinto</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=joaompinto" title="Documentation">📖</a></td>
</tr>
</table>

View File

@@ -2,7 +2,7 @@
<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://twitter.com/eugeeeeny"><img alt="Twitter" src="https://shields.io/badge/Subscribe-News-blue?logo=twitter&style=for-the-badge&color=blue"></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">
@@ -21,7 +21,7 @@
<br/>
<p align="center">
This README is also available in: <a href="./README.ko-KR.md">Korean</a>
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>
----
@@ -79,6 +79,7 @@ This README is also available in: <a href="./README.ko-KR.md">Korean</a>
* Optional RMB paste and copy-on select (PuTTY style)
<a name="ssh"></a>
# SSH Client
![](docs/readme-ssh.png)
@@ -90,6 +91,7 @@ This README is also available in: <a href="./README.ko-KR.md">Korean</a>
* Login scripts
<a name="serial"></a>
# Serial Terminal
* Saved connections
@@ -99,16 +101,17 @@ This README is also available in: <a href="./README.ko-KR.md">Korean</a>
* 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
@@ -119,6 +122,7 @@ Plugins and themes can be installed directly from the Settings view inside Tabby
* [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
@@ -218,6 +222,43 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
<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>
<td align="center"><a href="https://www.linkedin.com/in/joaolmpinto/"><img src="https://avatars.githubusercontent.com/u/1143125?v=4?s=100" width="100px;" alt=""/><br /><sub><b>João Pinto</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=joaompinto" title="Documentation">📖</a></td>
</tr>
</table>
@@ -227,5 +268,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"/>

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

@@ -0,0 +1,268 @@
[![](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>
<td align="center"><a href="https://www.linkedin.com/in/joaolmpinto/"><img src="https://avatars.githubusercontent.com/u/1143125?v=4?s=100" width="100px;" alt=""/><br /><sub><b>João Pinto</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=joaompinto" title="Documentation">📖</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"/>

265
README.zh-CN.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>
----
### 下载
* [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>
<td align="center"><a href="https://www.linkedin.com/in/joaolmpinto/"><img src="https://avatars.githubusercontent.com/u/1143125?v=4?s=100" width="100px;" alt=""/><br /><sub><b>João Pinto</b></sub></a><br /><a href="https://github.com/Eugeny/tabby/commits?author=joaompinto" title="Documentation">📖</a></td>
</tr>
</table>
<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
本项目遵循 [all-contributors](https://github.com/all-contributors/all-contributors) 规范。 欢迎任何形式的贡献!

View File

@@ -6,7 +6,7 @@ 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'
@@ -23,10 +23,10 @@ export class Application {
private windows: Window[] = []
private globalHotkey$ = new Subject<void>()
private quitRequested = false
private configStore: any
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)
@@ -36,6 +36,10 @@ export class Application {
this.configStore = config
})
ipcMain.on('app:save-config', (_event, data) => {
saveConfig(data)
})
ipcMain.on('app:register-global-hotkey', (_event, specs) => {
globalShortcut.unregisterAll()
for (const spec of specs) {
@@ -63,17 +67,16 @@ export class Application {
}
})
this.configStore = loadConfig()
if (process.platform === 'linux') {
app.commandLine.appendSwitch('no-sandbox')
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()
}
}
if (this.configStore.hacks?.disableGPU) {
app.commandLine.appendSwitch('disable-gpu')
app.disableHardwareAcceleration()
}
this.userPluginsPath = path.join(
@@ -93,6 +96,10 @@ export class Application {
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()
@@ -107,7 +114,7 @@ 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()
@@ -130,7 +137,6 @@ export class Application {
this.setupMenu()
}
await window.ready
window.present()
return window
}
@@ -215,7 +221,10 @@ export class Application {
}
}
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)
}

View File

@@ -25,6 +25,9 @@ export function parseArgs (argv: string[], cwd: string): any {
type: 'string',
})
})
.command('recent [index]', 'open a tab with a recent profile', {
profileNumber: { type: 'number' },
})
.version(app.getVersion())
.option('debug', {
alias: 'd',

View File

@@ -1,7 +1,9 @@
import * as fs from 'fs'
import * as fs from 'mz/fs'
import * as path from 'path'
import * as yaml from 'js-yaml'
import { app } from 'electron'
import { writeFile } from 'atomically'
export function migrateConfig (): void {
const configPath = path.join(app.getPath('userData'), 'config.yaml')
@@ -24,3 +26,10 @@ export function loadConfig (): any {
return {}
}
}
const configPath = path.join(app.getPath('userData'), 'config.yaml')
export async function saveConfig (content: string): Promise<void> {
await writeFile(configPath, content, { encoding: 'utf8' })
await writeFile(configPath + '.backup', content, { encoding: 'utf8' })
}

View File

@@ -3,45 +3,39 @@ 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()
const argv = parseArgs(process.argv, process.cwd())
// eslint-disable-next-line @typescript-eslint/init-declarations
let configStore: any
try {
configStore = loadConfig()
} catch (err) {
dialog.showErrorBox('Could not read config', err.message)
app.exit(1)
}
const application = new Application(configStore)
ipcMain.on('app:new-window', () => {
application.newWindow()
})
app.on('activate', () => {
if (!application.hasWindows()) {
application.newWindow()
} else {
application.focus()
}
})
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())
if (!app.requestSingleInstanceLock()) {
app.quit()
app.exit(0)
}
if (argv.d) {
electronDebug({
isEnabled: true,
@@ -50,6 +44,23 @@ if (argv.d) {
})
}
app.on('activate', async () => {
if (!application.hasWindows()) {
application.newWindow()
} else {
application.focus()
}
})
app.on('second-instance', async (_event, newArgv, cwd) => {
application.handleSecondInstance(newArgv, cwd)
})
if (!app.requestSingleInstanceLock()) {
app.quit()
app.exit(0)
}
app.on('ready', async () => {
if (process.platform === 'darwin') {
app.dock.setMenu(Menu.buildFromTemplate([
@@ -61,9 +72,11 @@ app.on('ready', async () => {
},
]))
}
application.init()
const window = await application.newWindow({ hidden: argv.hidden })
await window.ready
window.passCliArguments(process.argv, process.cwd(), false)
window.focus()
})

View File

@@ -4,6 +4,7 @@ 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[] = []
@@ -90,6 +91,7 @@ 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[]) {
@@ -99,7 +101,7 @@ 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.onData(data => this.outputQueue.push(Buffer.from(data)))

View File

@@ -11,7 +11,6 @@ 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') {
@@ -27,7 +26,7 @@ abstract class GlasstronWindow extends BrowserWindow {
abstract setBlur (_: boolean)
}
const macOSVibrancyType = process.platform === 'darwin' ? compareVersions(macOSRelease().version, '10.14', '>=') ? 'fullscreen-ui' : 'dark' : null
const macOSVibrancyType = process.platform === 'darwin' ? compareVersions(macOSRelease().version || '0.0', '10.14', '>=') ? 'under-window' : 'dark' : null
const activityIcon = nativeImage.createFromPath(`${app.getAppPath()}/assets/activity.png`)
@@ -42,7 +41,6 @@ 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
@@ -50,9 +48,8 @@ export class Window {
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' })
@@ -75,6 +72,7 @@ export class Window {
frame: false,
show: false,
backgroundColor: '#00000000',
acceptFirstMouse: true,
}
if (this.windowBounds) {
@@ -135,6 +133,8 @@ export class Window {
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({
@@ -180,7 +180,7 @@ export class Window {
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')
@@ -303,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()
@@ -410,7 +413,7 @@ 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

View File

@@ -15,36 +15,37 @@
"watch": "webpack --progress --color --watch"
},
"dependencies": {
"@angular/cdk": "^12.2.9",
"@electron/remote": "2.0.1",
"@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": "^4.6.1",
"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",
"npm": "6",
"rxjs": "^7.4.0",
"rxjs": "^7.5.5",
"source-map-support": "^0.5.20",
"v8-compile-cache": "^2.3.0",
"yargs": "^17.2.1"
"yargs": "^17.3.1"
},
"optionalDependencies": {
"@tabby-gang/windows-blurbehind": "^3.0.0",
"macos-native-processlist": "^2.0.0",
"serialport": "^10.0.0",
"windows-native-registry": "^3.1.0",
"windows-process-tree": "^0.3.2"
"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",
"atomically": "^1.7.0",
"ngx-filesize": "^2.0.16",
"patch-package": "^6.4.7"
},

View File

@@ -1,14 +0,0 @@
diff --git a/node_modules/@serialport/bindings/src/serialport.cpp b/node_modules/@serialport/bindings/src/serialport.cpp
index c48e150..00a5f5a 100644
--- a/node_modules/@serialport/bindings/src/serialport.cpp
+++ b/node_modules/@serialport/bindings/src/serialport.cpp
@@ -269,7 +269,8 @@ Napi::Value Drain(const Napi::CallbackInfo& info) {
}
inline SerialPortParity ToParityEnum(const Napi::String& napistr) {
- const char* str = napistr.Utf8Value().c_str();
+ auto tmp = napistr.Utf8Value();
+ const char* str = tmp.c_str();
size_t count = strlen(str);
SerialPortParity parity = SERIALPORT_PARITY_NONE;
if (!strncasecmp(str, "none", count)) {

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

@@ -28,7 +28,11 @@ export function getRootModule (plugins: any[]) {
@NgModule({
imports,
bootstrap,
}) class RootModule { } // eslint-disable-line @typescript-eslint/no-extraneous-class
}) class RootModule {
ngDoBootstrap () {
(window as any)['requestAnimationFrame'] = window[window['Zone'].__symbol__('requestAnimationFrame')]
}
}
return RootModule
}

View File

@@ -1,7 +1,7 @@
body {
min-height: 100vh;
overflow: hidden;
background: #1D272D;
background: transparent !important;
-webkit-font-smoothing: antialiased;
}

View File

@@ -3,4 +3,5 @@ export const PLUGIN_BLACKLIST = [
'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

@@ -21,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'),
@@ -64,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)

View File

@@ -1,3 +1,7 @@
app-root {
background: #1D272D;
}
.preload-logo {
-webkit-app-region: drag;
position: fixed;

View File

@@ -2,19 +2,10 @@
# yarn lockfile v1
"@angular/cdk@^12.2.9":
version "12.2.9"
resolved "https://registry.yarnpkg.com/@angular/cdk/-/cdk-12.2.9.tgz#f39e4d7cdb3568ad8e1d412e3500772e2d4c605c"
integrity sha512-9Wgj69iGAZ4teQqW/zPbVg2RGna+m9i3v0zkWGx/+Uo95rikJCUZBQM4bfeOe+bSJrS77jV5EisBWG7ayNUSzQ==
dependencies:
tslib "^2.2.0"
optionalDependencies:
parse5 "^5.0.0"
"@electron/remote@2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@electron/remote/-/remote-2.0.1.tgz#810cbc595a21f0f94641eb2d7e8264063a3f84de"
integrity sha512-bGX4/yB2bPZwXm1DsxgoABgH0Cz7oFtXJgkerB8VrStYdTyvhGAULzNLRn9rVmeAuC3VUDXaXpZIlZAZHpsLIA==
"@electron/remote@2.0.8":
version "2.0.8"
resolved "https://registry.yarnpkg.com/@electron/remote/-/remote-2.0.8.tgz#85ff321f0490222993207106e2f720273bb1a5c3"
integrity sha512-P10v3+iFCIvEPeYzTWWGwwHmqWnjoh8RYnbtZAb3RlQefy4guagzIwcWtfftABIfm6JJTNQf4WPSKWZOpLmHXw==
"@iarna/cli@^1.2.0":
version "1.2.0"
@@ -25,74 +16,101 @@
update-notifier "^2.2.0"
yargs "^8.0.2"
"@serialport/binding-abstract@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/binding-abstract/-/binding-abstract-10.0.0.tgz#c5aea29de3721de80640e290f52217d00d927e4e"
integrity sha512-1IwOMDOWqKO0csrTOv95Ah0Av012DZB8C0OF11SmE3eyh8ab1+y4/Yah/8byMAMG7TXw+2LqkNs1oZtOJGlY1Q==
"@serialport/binding-abstract@^9.0.2":
version "9.2.3"
resolved "https://registry.yarnpkg.com/@serialport/binding-abstract/-/binding-abstract-9.2.3.tgz#e7dd273357b6a698af7ad58db6f57f62443a0acb"
integrity sha512-cQs9tbIlG3P0IrOWyVirqlhWuJ7Ms2Zh9m2108z6Y5UW/iVj6wEOiW8EmK9QX9jmJXYllE7wgGgvVozP5oCj3w==
dependencies:
debug "^4.3.2"
"@serialport/binding-mock@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/binding-mock/-/binding-mock-10.0.0.tgz#dc850c3e06f2be4b0c5e0461d2e12a2506cca573"
integrity sha512-X+lJqU/GbXxxqA4b3T+YK9vQLtoNSjRF+hz1gyYHpNxDFX0dSLU1OVnQUZ2Zi8aa6IBdk/4DcuGN0tDNAlmtKg==
"@serialport/binding-mock@10.2.2":
version "10.2.2"
resolved "https://registry.yarnpkg.com/@serialport/binding-mock/-/binding-mock-10.2.2.tgz#d322a8116a97806addda13c62f50e73d16125874"
integrity sha512-HAFzGhk9OuFMpuor7aT5G1ChPgn5qSsklTFOTUX72Rl6p0xwcSVsRtG/xaGp6bxpN7fI9D/S8THLBWbBgS6ldw==
dependencies:
"@serialport/binding-abstract" "10.0.0"
"@serialport/bindings-interface" "^1.2.1"
debug "^4.3.3"
"@serialport/bindings-cpp@10.7.0":
version "10.7.0"
resolved "https://registry.yarnpkg.com/@serialport/bindings-cpp/-/bindings-cpp-10.7.0.tgz#9cf7dda78d914ba597933089abe2a8511e875851"
integrity sha512-Xx1wA2UCG2loS32hxNvWJI4smCzGKhWqE85//fLRzHoGgE1lSLe3Nk7W40/ebrlGFHWRbQZmeaIF4chb2XLliA==
dependencies:
"@serialport/bindings-interface" "1.2.1"
"@serialport/parser-readline" "^10.2.1"
debug "^4.3.2"
node-addon-api "^4.3.0"
node-gyp-build "^4.3.0"
"@serialport/bindings-interface@1.2.1", "@serialport/bindings-interface@^1.2.1":
version "1.2.1"
resolved "https://registry.yarnpkg.com/@serialport/bindings-interface/-/bindings-interface-1.2.1.tgz#1ee80b0951ef4e4fd8a5a186621feff046aa2faf"
integrity sha512-63Dyqz2gtryRDDckFusOYqLYhR3Hq/M4sEdbF9i/VsvDb6T+tNVgoAKUZ+FMrXXKnCSu+hYbk+MTc0XQANszxw==
"@serialport/parser-byte-length@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-byte-length/-/parser-byte-length-10.3.0.tgz#c650b8883f716af77196e8466e86861b55290201"
integrity sha512-pJ/VoFemzKRRNDHLhFfPThwP40QrGaEnm9TtwL7o2GihEPwzBg3T0bN13ew5TpbbUYZdMpUtpm3CGfl6av9rUQ==
"@serialport/parser-cctalk@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-cctalk/-/parser-cctalk-10.3.0.tgz#d8fc7ab480910b28362b1ff154c01c170ac201a3"
integrity sha512-8ujmk8EvVbDPrNF4mM33bWvUYJOZ0wXbY3WCRazHRWvyCdL0VO0DQvW81ZqgoTpiDQZm5r8wQu9rmuemahF6vQ==
"@serialport/parser-delimiter@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-delimiter/-/parser-delimiter-10.3.0.tgz#4bcbbeed7e3c6fed2c116535f0754bbf8a33f015"
integrity sha512-9E4Vj6s0UbbcCCTclwegHGPYjJhdm9qLCS0lowXQDEQC5naZnbsELemMHs93nD9jHPcyx1B4oXkMnVZLxX5TYw==
"@serialport/parser-inter-byte-timeout@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-inter-byte-timeout/-/parser-inter-byte-timeout-10.3.0.tgz#57e4fceeeeb13415dcded3ef1ba5d28a9fa0c611"
integrity sha512-wKP0QK85NHgvT6BBB1qBfKBBU4pf8kespNXAZBUYmFT+P4n8r8IZE2mqigCD+AiZcfWNQoAizwOsT/Jx/qeVig==
"@serialport/parser-packet-length@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-packet-length/-/parser-packet-length-10.3.0.tgz#9faefc91841c011925a6d4fa4fad6ed44bf11ed6"
integrity sha512-bj0cWzt8YSQj/E5fRQVYdi4TsfTlZQrXlXrUwjyTsCONv8IPOHzsz+yY0fw5SEMiJtaLyqvPkCHLsttOd/zFsg==
"@serialport/parser-readline@10.3.0", "@serialport/parser-readline@^10.2.1":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-readline/-/parser-readline-10.3.0.tgz#7db9143ce9a2537a4086b3824a70fe53ae2107b3"
integrity sha512-ki3ATZ3/RAqnqGROBKE7k+OeZ0DZXZ53GTca4q71OU5RazbbNhTOBQLKLXD3v9QZXCMJdg4hGW/2Y0DuMUqMQg==
dependencies:
"@serialport/parser-delimiter" "10.3.0"
"@serialport/parser-ready@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-ready/-/parser-ready-10.3.0.tgz#6a93d8970dc827e57829a9ee54802469be71f185"
integrity sha512-1owywJ4p592dJyVrEJZPIh6pUZ3/y/LN6kGTDH2wxdewRUITo/sGvDy0er5i2+dJD3yuowiAz0dOHSdz8tevJA==
"@serialport/parser-regex@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-regex/-/parser-regex-10.3.0.tgz#7c7314036535414bb7ada3520598d233f5ea09d0"
integrity sha512-tIogTs7CvTH+UUFnsvE7i33MSISyTPTGPWlglWYH2/5coipXY503jlaYS1YGe818wWNcSx6YAjMZRdhTWwM39w==
"@serialport/parser-slip-encoder@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-slip-encoder/-/parser-slip-encoder-10.3.0.tgz#ff01cd7cda2258ad2ca3ebb113145a0aa7272c78"
integrity sha512-JI0ILF5sylWn8f0MuMzHFBix/iMUTa79/Z95KaPZYnVaEdA7h7hh/o21Jmon/26P3RJwL1SNJCjZ81zfan+LtQ==
"@serialport/parser-spacepacket@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-spacepacket/-/parser-spacepacket-10.3.0.tgz#447d49b0690527ea770410ffe0a2ade2079ae7b2"
integrity sha512-PDF73ClEPsClD1FEJZHNuBevDKsJCkqy/XD5+S5eA6+tY5D4HLrVgSWsg+3qqB6+dlpwf2CzHe+uO8D3teuKHA==
"@serialport/stream@10.3.0":
version "10.3.0"
resolved "https://registry.yarnpkg.com/@serialport/stream/-/stream-10.3.0.tgz#fdb13ed4487379615819203217060b114548c0a6"
integrity sha512-7sooi5fHogYNVEJwxVdg872xO6TuMgQd2E9iRmv+o8pk/1dbBnPkmH6Ka3st1mVE+0KnIJqVlgei+ncSsqXIGw==
dependencies:
"@serialport/bindings-interface" "1.2.1"
debug "^4.3.2"
"@serialport/bindings@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/bindings/-/bindings-10.0.0.tgz#718b105adae977886967ab0edc68a067be9183f8"
integrity sha512-t415A6clhsUX0dBRzN0NRN7Yb6y9U1jA4oGzxL2fWCy7XxQq8beI0GnMebEUaZDWKZ7IAVwGnAPUunk7QdlWlA==
dependencies:
"@serialport/binding-abstract" "10.0.0"
"@serialport/parser-readline" "10.0.0"
bindings "^1.5.0"
debug "^4.3.2"
node-addon-api "4.2.0"
prebuild-install "^7.0.0"
"@serialport/parser-byte-length@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-byte-length/-/parser-byte-length-10.0.0.tgz#05ca2721a50dcdc93f68f3f1e72e10fd82362e84"
integrity sha512-QmZw7oTt6LBHBFbMIPLIZM4WuXpMeK5EpCpXKFtw4a7+yF0yLPwz6uSV2Cf3SvunCfI3eWvucMKpgYNOvglsgA==
"@serialport/parser-cctalk@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-cctalk/-/parser-cctalk-10.0.0.tgz#de42e6952c086da3e384756502f9aaca0e97f881"
integrity sha512-jCxzY2IPghNMaJ+GsUgSOoPCI2v1FZg7RvpSJ/b/igK+M/z/p7oRyWf1LqMyjZT7rP4Ha8ZfsQQy5qGzQ3kuzw==
"@serialport/parser-delimiter@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-delimiter/-/parser-delimiter-10.0.0.tgz#43eb2e3b4c4cf8633eb1200b3af5488ba9a7ecb6"
integrity sha512-s7j+RIxxmyb7xJ3WVcf+IfjFqyoh7k7Edqwqvk2sQLU6UOBNAktNQDHIM/vksQ9QkjJjvl8rIo0YznfBkWbZOQ==
"@serialport/parser-inter-byte-timeout@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-inter-byte-timeout/-/parser-inter-byte-timeout-10.0.0.tgz#07fe7c42e77c9a6379daa6939de55fef99c06ce4"
integrity sha512-ygax3PHuPxi58D3/crCDENSFagvG5EsWjXj6AQRUisExPAAiD02RbZaRqTZluFvDbzMJ/29YJdcdIqnllzGVsw==
"@serialport/parser-readline@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-readline/-/parser-readline-10.0.0.tgz#a87b0d92864e917e07010477057b66efe92d3af9"
integrity sha512-NI3oRY1+fLg94CZm887rgj4V6KyxaJmbmoRgua9bqRv7v/o0SqN9lSQwdYLHQVHpf03zTX9ziuoCV8w5CI3DQQ==
dependencies:
"@serialport/parser-delimiter" "10.0.0"
"@serialport/parser-ready@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-ready/-/parser-ready-10.0.0.tgz#eae67e9c0806f5b2d9750c1ef910a3cedb549119"
integrity sha512-pmMjRVy0wwVSzRt27AtMV/FJdSL6CdKvLUNx+ziDL9Lt30n85ZzrSdYJOwOB63HVIMg8+JRgiyxKNLs+JgMK2g==
"@serialport/parser-regex@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/parser-regex/-/parser-regex-10.0.0.tgz#a5dd648baf0952253a995bf0174ba2c19649e279"
integrity sha512-kLvK6bbDtpnVMagCK95m08W+XaXXzJpDvjzrMNSAtpaL+yeBu4XlEhHpt9+9S/MOetbz4vgWdZx2buYyw9iiGQ==
"@serialport/stream@10.0.0":
version "10.0.0"
resolved "https://registry.yarnpkg.com/@serialport/stream/-/stream-10.0.0.tgz#482580b9bdad468ac2a60c41c7fb933f7dc7436f"
integrity sha512-KFBGWH6BEn4gXUYHEfbywplDX+sVhlL/Yzn/r7hn+qYnwVjhvQo8Vi35CPKESOUKnMKU48sGSUvNaOwU5znw2g==
"@serialport/stream@^9.0.2":
version "9.2.4"
resolved "https://registry.yarnpkg.com/@serialport/stream/-/stream-9.2.4.tgz#9fce093d0b46ed4599953b4fae81718e050d2b33"
integrity sha512-bLye8Ub4vUFQGmkh8qEqehr7SE7EJs2yDs0h9jzuL5oKi+F34CFmWkEErO8GAOQ8YNn7p6b3GxUgs+0BrHHDZQ==
dependencies:
debug "^4.3.2"
@@ -208,6 +226,11 @@ ansi-regex@^5.0.0:
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz"
integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==
ansi-regex@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
ansi-styles@^3.2.0, ansi-styles@^3.2.1:
version "3.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
@@ -287,6 +310,11 @@ asynckit@^0.4.0:
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz"
integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
atomically@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/atomically/-/atomically-1.7.0.tgz#c07a0458432ea6dbc9a3506fffa424b48bccaafe"
integrity sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==
aws-sign2@~0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz"
@@ -326,13 +354,6 @@ bin-links@^1.1.2, bin-links@^1.1.8:
npm-normalize-package-bin "^1.0.0"
write-file-atomic "^2.3.0"
bindings@^1.5.0:
version "1.5.0"
resolved "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz"
integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==
dependencies:
file-uri-to-path "1.0.0"
bl@^4.0.3:
version "4.0.3"
resolved "https://registry.npmjs.org/bl/-/bl-4.0.3.tgz"
@@ -388,10 +409,10 @@ buffer@^5.5.0:
base64-js "^1.3.1"
ieee754 "^1.1.13"
builder-util-runtime@8.9.1:
version "8.9.1"
resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.9.1.tgz#25f066b3fbc20b3e6236a9b956b1ebb0e33ff66a"
integrity sha512-c8a8J3wK6BIVLW7ls+7TRK9igspTbzWmUqxFbgK0m40Ggm6efUbxtWVCGIjc+dtchyr5qAMAUL6iEGRdS/6vwg==
builder-util-runtime@9.0.0:
version "9.0.0"
resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.0.0.tgz#3a40ba7382712ccdb24471567f91d7c167e00830"
integrity sha512-SkpEtSmTkREDHRJnxKEv43aAYp8sYWY8fxYBhGLBLOBIRXeaIp6Kv3lBgSD7uR8jQtC7CA659sqJrpSV6zNvSA==
dependencies:
debug "^4.3.2"
sax "^1.2.4"
@@ -734,10 +755,10 @@ debug@^3.1.0:
dependencies:
ms "^2.1.1"
debug@^4.0.1, debug@^4.3.2:
version "4.3.2"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b"
integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==
debug@^4.0.1, debug@^4.3.2, debug@^4.3.3:
version "4.3.3"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
dependencies:
ms "2.1.2"
@@ -756,13 +777,6 @@ decode-uri-component@^0.2.0:
resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
decompress-response@^4.2.0:
version "4.2.1"
resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-4.2.1.tgz"
integrity sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==
dependencies:
mimic-response "^2.0.0"
decompress-response@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
@@ -804,10 +818,10 @@ detect-indent@~5.0.0:
resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d"
integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50=
detect-libc@^1.0.3:
version "1.0.3"
resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz"
integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
detect-libc@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.0.tgz#c528bc09bc6d1aa30149228240917c225448f204"
integrity sha512-S55LzUl8HUav8l9E2PBTlC5PAJrHK7tkM+XXFGD+fbsbkTzhCpG6K05LxJcUOEWzMa4v6ptcMZ9s3fOdJDu0Zw==
detect-newline@^2.1.0:
version "2.1.0"
@@ -907,13 +921,13 @@ electron-promise-ipc@^2.2.4:
serialize-error "^5.0.0"
uuid "^3.0.1"
electron-updater@^4.6.1:
version "4.6.1"
resolved "https://registry.yarnpkg.com/electron-updater/-/electron-updater-4.6.1.tgz#80ca805c4f51b2e682aac29d18fed75d6a533d32"
integrity sha512-YsU1mHqXLrXXmBMsxhxy24PrbaB8rnpZDPmFa2gOkTYk/Ch13+R0fjsRSpPYvqtskVVY0ux8fu+HnUkVkqc7og==
electron-updater@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/electron-updater/-/electron-updater-5.0.1.tgz#327915f1b2e573daf1ce1d8102bcab93f4880c1a"
integrity sha512-dNnXPCqYmergXy3jgg4UICuD50Orug9GQe/5xfHy+BE2Fy0icB0QE+y6iQWdCDf7yeONxwMBf4HgIkGG5pIaVg==
dependencies:
"@types/semver" "^7.3.6"
builder-util-runtime "8.9.1"
builder-util-runtime "9.0.0"
fs-extra "^10.0.0"
js-yaml "^4.1.0"
lazy-val "^1.0.5"
@@ -1066,11 +1080,6 @@ figgy-pudding@^3.4.1, figgy-pudding@^3.5.1:
resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e"
integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==
file-uri-to-path@1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz"
integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==
"filesize@>= 4.0.0":
version "6.3.0"
resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.3.0.tgz#dff53cfb3f104c9e422f346d53be8dbcc971bf11"
@@ -1292,12 +1301,12 @@ github-from-package@0.0.0:
resolved "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz"
integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=
glasstron@0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/glasstron/-/glasstron-0.0.7.tgz#d0f3e8344351bbcb89a39323282b4ddb06b03ba0"
integrity sha512-zeqfC0E153yBKWHB8ZBA5rT1o1dCCQcPECBryzWLX3uy6VTX3CUcy7kjk/4BlVztEIbpV2plEetpOxSAOe5cqw==
glasstron@0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/glasstron/-/glasstron-0.1.1.tgz#491a2e6f7e7b285c3776c5f7af7aaba2269833b2"
integrity sha512-oLEMQM5wwdAQ44NrXD3wjk+b3dsfQG1XtkLn5pCxQNa3ri1AtWvvzpnhFUd88ZTmguHvkY4c3JKzcPSYaJAKKA==
dependencies:
node-addon-api "^3.0.0"
node-addon-api "^4.0.0"
x11 "^2.3.0"
glob@^7.1.1, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
@@ -1758,13 +1767,13 @@ keyboardevents-areequal@^0.2.1:
resolved "https://registry.npmjs.org/keyboardevents-areequal/-/keyboardevents-areequal-0.2.2.tgz"
integrity sha512-Nv+Kr33T0mEjxR500q+I6IWisOQ0lK1GGOncV0kWE6n4KFmpcu7RUX5/2B0EUtX51Cb0HjZ9VJsSY3u4cBa0kw==
keytar@^7.7.0:
version "7.7.0"
resolved "https://registry.yarnpkg.com/keytar/-/keytar-7.7.0.tgz#3002b106c01631aa79b1aa9ee0493b94179bbbd2"
integrity sha512-YEY9HWqThQc5q5xbXbRwsZTh2PJ36OSYRjSv3NN2xf5s5dpLTjEZnC2YikR29OaVybf9nQ0dJ/80i40RS97t/A==
keytar@^7.9.0:
version "7.9.0"
resolved "https://registry.yarnpkg.com/keytar/-/keytar-7.9.0.tgz#4c6225708f51b50cbf77c5aae81721964c2918cb"
integrity sha512-VPD8mtVtm5JNtA2AErl6Chp06JBfy7diFQ7TQQhdpWOl6MrCRB+eRbvAZUsbGQS9kiMq0coJsy0W0vHpDCkWsQ==
dependencies:
node-addon-api "^3.0.0"
prebuild-install "^6.0.0"
node-addon-api "^4.3.0"
prebuild-install "^7.0.1"
klaw-sync@^6.0.0:
version "6.0.0"
@@ -2048,12 +2057,12 @@ lru-cache@^6.0.0:
dependencies:
yallist "^4.0.0"
macos-native-processlist@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/macos-native-processlist/-/macos-native-processlist-2.0.0.tgz"
integrity sha512-ciW1n2jL+9f7+9xijMMVmVzRbpVlKjzMFmgpNricm5QKfkUTMEa1suR0pc9pQRrLea4sJtbLo0u+izzHDvkpIA==
macos-native-processlist@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/macos-native-processlist/-/macos-native-processlist-2.1.0.tgz#3ebfc0391083331bfa20acef01a45abd45b554dd"
integrity sha512-qXsNLedPaF7/vo26gOS6HyNvI8Oko5PgvezBsWwXkCFXQdU9+JOFDQvvRZ4WoPgUUkiV7a4PK7xbbkf8X6d/cQ==
dependencies:
node-addon-api "3.0.0"
node-addon-api "3.1.0"
make-dir@^1.0.0:
version "1.3.0"
@@ -2116,11 +2125,6 @@ mimic-fn@^1.0.0:
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==
mimic-response@^2.0.0:
version "2.1.0"
resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz"
integrity sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==
mimic-response@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"
@@ -2134,9 +2138,9 @@ minimatch@^3.0.4:
brace-expansion "^1.1.7"
minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5:
version "1.2.5"
resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz"
integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
version "1.2.6"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
minipass@^2.3.5, minipass@^2.6.0, minipass@^2.9.0:
version "2.9.0"
@@ -2252,7 +2256,7 @@ nice-try@^1.0.4:
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
node-abi@^2.20.0, node-abi@^2.7.0:
node-abi@^2.20.0:
version "2.30.1"
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.30.1.tgz#c437d4b1fe0e285aaf290d45b45d4d7afedac4cf"
integrity sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==
@@ -2260,27 +2264,22 @@ node-abi@^2.20.0, node-abi@^2.7.0:
semver "^5.4.1"
node-abi@^3.3.0:
version "3.5.0"
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.5.0.tgz#26e8b7b251c3260a5ac5ba5aef3b4345a0229248"
integrity sha512-LtHvNIBgOy5mO8mPEUtkCW/YCRWYEKshIvqhe1GHHyXEHEB5mgICyYnAcl4qan3uFeRROErKGzatFHPf6kDxWw==
version "3.8.0"
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.8.0.tgz#679957dc8e7aa47b0a02589dbfde4f77b29ccb32"
integrity sha512-tzua9qWWi7iW4I42vUPKM+SfaF0vQSLAm4yO5J83mSwB7GeoWrDKC/K+8YCnYNwqP5duwazbw2X9l4m8SC2cUw==
dependencies:
semver "^7.3.5"
node-addon-api@3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.0.0.tgz"
integrity sha512-sSHCgWfJ+Lui/u+0msF3oyCgvdkhxDbkCS6Q8uiJquzOimkJBvX6hl5aSSA7DR1XbMpdM8r7phjcF63sF4rkKg==
node-addon-api@4.2.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.2.0.tgz#117cbb5a959dff0992e1c586ae0393573e4d2a87"
integrity sha512-eazsqzwG2lskuzBqCGPi7Ac2UgOoMz8JVOXVhTvvPDYhthvNpefx8jWD8Np7Gv+2Sz0FlPWZk0nJV0z598Wn8Q==
node-addon-api@^3.0.0, node-addon-api@^3.0.2, node-addon-api@^3.1.0:
node-addon-api@3.1.0, node-addon-api@^3.0.2, node-addon-api@^3.1.0:
version "3.1.0"
resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.1.0.tgz"
integrity sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw==
node-addon-api@^4.0.0, node-addon-api@^4.3.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f"
integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==
node-fetch-npm@^2.0.2:
version "2.0.4"
resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz#6507d0e17a9ec0be3bec516958a497cec54bf5a4"
@@ -2290,6 +2289,11 @@ node-fetch-npm@^2.0.2:
json-parse-better-errors "^1.0.0"
safe-buffer "^5.1.1"
node-gyp-build@^4.3.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3"
integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==
node-gyp@^5.0.2, node-gyp@^5.1.0:
version "5.1.1"
resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e"
@@ -2307,11 +2311,6 @@ node-gyp@^5.0.2, node-gyp@^5.1.0:
tar "^4.4.12"
which "^1.3.1"
noop-logger@^0.1.1:
version "0.1.1"
resolved "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz"
integrity sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=
nopt@^4.0.1, nopt@^4.0.3:
version "4.0.3"
resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48"
@@ -2780,11 +2779,6 @@ parse-json@^2.2.0:
dependencies:
error-ex "^1.2.0"
parse5@^5.0.0:
version "5.1.1"
resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178"
integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==
patch-package@^6.4.7:
version "6.4.7"
resolved "https://registry.yarnpkg.com/patch-package/-/patch-package-6.4.7.tgz#2282d53c397909a0d9ef92dae3fdeb558382b148"
@@ -2863,33 +2857,12 @@ pkg-up@^2.0.0:
dependencies:
find-up "^2.1.0"
prebuild-install@^6.0.0:
version "6.0.1"
resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-6.0.1.tgz#5902172f7a40eb67305b96c2a695db32636ee26d"
integrity sha512-7GOJrLuow8yeiyv75rmvZyeMGzl8mdEX5gY69d6a6bHWmiPevwqFw+tQavhK0EYMaSg3/KD24cWqeQv1EWsqDQ==
prebuild-install@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.0.1.tgz#c10075727c318efe72412f333e0ef625beaf3870"
integrity sha512-QBSab31WqkyxpnMWQxubYAHR5S9B2+r81ucocew34Fkl98FhvKIF50jIJnNOBmAZfyNV7vE5T6gd3hTVWgY6tg==
dependencies:
detect-libc "^1.0.3"
expand-template "^2.0.3"
github-from-package "0.0.0"
minimist "^1.2.3"
mkdirp-classic "^0.5.3"
napi-build-utils "^1.0.1"
node-abi "^2.7.0"
noop-logger "^0.1.1"
npmlog "^4.0.1"
pump "^3.0.0"
rc "^1.2.7"
simple-get "^3.0.3"
tar-fs "^2.0.0"
tunnel-agent "^0.6.0"
which-pm-runs "^1.0.0"
prebuild-install@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.0.0.tgz#3c5ce3902f1cb9d6de5ae94ca53575e4af0c1574"
integrity sha512-IvSenf33K7JcgddNz2D5w521EgO+4aMMjFt73Uk9FRzQ7P+QZPKrp7qPsDydsSwjGt3T5xRNnM1bj1zMTD5fTA==
dependencies:
detect-libc "^1.0.3"
detect-libc "^2.0.0"
expand-template "^2.0.3"
github-from-package "0.0.0"
minimist "^1.2.3"
@@ -3223,12 +3196,12 @@ run-queue@^1.0.0, run-queue@^1.0.3:
dependencies:
aproba "^1.1.1"
rxjs@^7.4.0:
version "7.4.0"
resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.4.0.tgz#a12a44d7eebf016f5ff2441b87f28c9a51cebc68"
integrity sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w==
rxjs@^7.5.5:
version "7.5.5"
resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.5.tgz#2ebad89af0f560f460ad5cc4213219e1f7dd4e9f"
integrity sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==
dependencies:
tslib "~2.1.0"
tslib "^2.1.0"
safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1:
version "5.2.1"
@@ -3276,22 +3249,33 @@ serialize-error@^5.0.0:
dependencies:
type-fest "^0.8.0"
serialport@^10.0.0:
version "10.0.0"
resolved "https://registry.yarnpkg.com/serialport/-/serialport-10.0.0.tgz#75ec9fd25683dc1acb9d8e24433608f641b0b9e0"
integrity sha512-fqOs6u4buZLbTpAPYZP4j2qwcOJ5Jxtg0x+llJFuMc4AVwrxx+iQc68/46aHCr+qJ2Wo2N86AZ/DDY5acSOODA==
serialport-binding-webserialapi@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/serialport-binding-webserialapi/-/serialport-binding-webserialapi-1.0.3.tgz#cf4348c075da2de8f6cf9936c0b95645f3ae657b"
integrity sha512-TS7dsvetVoTeiWlzpsT/akjtljiYPO56FoJWSFyJSoO/E8icYJ2neQ7CW5NW/sHZDnMqAxULyAny47UFhWz9oQ==
dependencies:
"@serialport/binding-mock" "10.0.0"
"@serialport/bindings" "10.0.0"
"@serialport/parser-byte-length" "10.0.0"
"@serialport/parser-cctalk" "10.0.0"
"@serialport/parser-delimiter" "10.0.0"
"@serialport/parser-inter-byte-timeout" "10.0.0"
"@serialport/parser-readline" "10.0.0"
"@serialport/parser-ready" "10.0.0"
"@serialport/parser-regex" "10.0.0"
"@serialport/stream" "10.0.0"
debug "^4.3.2"
"@serialport/binding-abstract" "^9.0.2"
"@serialport/stream" "^9.0.2"
serialport@10.4.0:
version "10.4.0"
resolved "https://registry.yarnpkg.com/serialport/-/serialport-10.4.0.tgz#93c95ecccc0e314d5bbee3f06cde2c70be70e671"
integrity sha512-PszPM5SnFMgSXom60PkKS2A9nMlNbHkuoyRBlzdSWw9rmgOn258+V0dYbWMrETJMM+TJV32vqBzjg5MmmUMwMw==
dependencies:
"@serialport/binding-mock" "10.2.2"
"@serialport/bindings-cpp" "10.7.0"
"@serialport/parser-byte-length" "10.3.0"
"@serialport/parser-cctalk" "10.3.0"
"@serialport/parser-delimiter" "10.3.0"
"@serialport/parser-inter-byte-timeout" "10.3.0"
"@serialport/parser-packet-length" "10.3.0"
"@serialport/parser-readline" "10.3.0"
"@serialport/parser-ready" "10.3.0"
"@serialport/parser-regex" "10.3.0"
"@serialport/parser-slip-encoder" "10.3.0"
"@serialport/parser-spacepacket" "10.3.0"
"@serialport/stream" "10.3.0"
debug "^4.3.3"
set-blocking@^2.0.0, set-blocking@~2.0.0:
version "2.0.0"
@@ -3327,19 +3311,10 @@ simple-concat@^1.0.0:
resolved "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz"
integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==
simple-get@^3.0.3:
version "3.1.0"
resolved "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz"
integrity sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA==
dependencies:
decompress-response "^4.2.0"
once "^1.3.1"
simple-concat "^1.0.0"
simple-get@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.0.tgz#73fa628278d21de83dadd5512d2cc1f4872bd675"
integrity sha512-ZalZGexYr3TA0SwySsr5HlgOOinS4Jsa8YB2GJ6lUNAazyAu4KG/VmzMTwAt2YVXzzVj8QmefmAonZIK2BSGcQ==
version "4.0.1"
resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543"
integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==
dependencies:
decompress-response "^6.0.0"
once "^1.3.1"
@@ -3507,14 +3482,14 @@ string-width@^3.0.0, string-width@^3.1.0:
is-fullwidth-code-point "^2.0.0"
strip-ansi "^5.1.0"
string-width@^4.1.0, string-width@^4.2.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz"
integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==
string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
dependencies:
emoji-regex "^8.0.0"
is-fullwidth-code-point "^3.0.0"
strip-ansi "^6.0.0"
strip-ansi "^6.0.1"
string.prototype.trimend@^1.0.1:
version "1.0.3"
@@ -3577,6 +3552,13 @@ strip-ansi@^6.0.0:
dependencies:
ansi-regex "^5.0.0"
strip-ansi@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
dependencies:
ansi-regex "^5.0.1"
strip-bom@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
@@ -3704,15 +3686,10 @@ tough-cookie@~2.5.0:
psl "^1.1.28"
punycode "^2.1.1"
tslib@^2.0.0, tslib@^2.2.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.0.tgz#803b8cdab3e12ba581a4ca41c8839bbb0dacb09e"
integrity sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==
tslib@~2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a"
integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==
tslib@^2.0.0, tslib@^2.1.0:
version "2.3.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==
tunnel-agent@^0.6.0:
version "0.6.0"
@@ -3880,11 +3857,6 @@ which-module@^2.0.0:
resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz"
integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
which-pm-runs@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz"
integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=
which@^1.2.9, which@^1.3.0, which@^1.3.1:
version "1.3.1"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
@@ -3906,17 +3878,17 @@ widest-line@^2.0.0:
dependencies:
string-width "^2.1.1"
windows-native-registry@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/windows-native-registry/-/windows-native-registry-3.1.0.tgz#909ef3254519fdec57d2f149ac59a2c9dc84419a"
integrity sha512-WrDysn2V7dH+EYE6cS2RF+7r2P+M0pOYWtU8iBrjV2HaGkCLlUdGUWzOdzT0JPdWwz0BkVu3IOae2xmBajQqBA==
windows-native-registry@^3.2.1:
version "3.2.1"
resolved "https://registry.yarnpkg.com/windows-native-registry/-/windows-native-registry-3.2.1.tgz#8a60feb456398992677a1f8cad1eecb6b4f0d5f4"
integrity sha512-LUHzDUyabwcKNJNlIBVAmg/gdvzOWbuPPyeGmMGSYMAh+m4ZqmafrtyRuyWaviJ1lTzGT/MmhTVb5t8IO3Nlkg==
dependencies:
node-addon-api "^3.1.0"
windows-process-tree@^0.3.2:
version "0.3.2"
resolved "https://registry.yarnpkg.com/windows-process-tree/-/windows-process-tree-0.3.2.tgz#8c39f39e7707e09fd74638a7ef644b5f389096d3"
integrity sha512-x8Y4KOV8tUhhPiO0TH7wOMTZ677rw7VEwq+dTuHHiLTClkrNXWSY3XzP6ez3fs2Cab4FajrtmiqRs0jTMZHfyw==
windows-process-tree@^0.3.3:
version "0.3.3"
resolved "https://registry.yarnpkg.com/windows-process-tree/-/windows-process-tree-0.3.3.tgz#7c178815f02bf4cfbcac1f93b2f3a3cc10bc9245"
integrity sha512-rkiAMP0AS27xikFyn7i4gPbOK16UdjY8X/C6eo37CnfNLqTvK2eEaT+Dh0e5xnvmlsi0lEKd60O+4ajzfDkq7A==
dependencies:
nan "^2.13.2"
@@ -4022,10 +3994,10 @@ yargs-parser@^15.0.1:
camelcase "^5.0.0"
decamelize "^1.2.0"
yargs-parser@^20.2.2:
version "20.2.7"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a"
integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==
yargs-parser@^21.0.0:
version "21.0.0"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.0.tgz#a485d3966be4317426dd56bdb6a30131b281dc55"
integrity sha512-z9kApYUOCwoeZ78rfRYYWdiU/iNL6mwwYlkkZfJoyMR1xps+NEBX5X7XmRpxkZHhXJ6+Ey00IwKxBBSW9FIjyA==
yargs-parser@^7.0.0:
version "7.0.0"
@@ -4051,18 +4023,18 @@ yargs@^14.2.3:
y18n "^4.0.0"
yargs-parser "^15.0.1"
yargs@^17.2.1:
version "17.2.1"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.2.1.tgz#e2c95b9796a0e1f7f3bf4427863b42e0418191ea"
integrity sha512-XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==
yargs@^17.3.1:
version "17.3.1"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.3.1.tgz#da56b28f32e2fd45aefb402ed9c26f42be4c07b9"
integrity sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==
dependencies:
cliui "^7.0.2"
escalade "^3.1.1"
get-caller-file "^2.0.5"
require-directory "^2.1.1"
string-width "^4.2.0"
string-width "^4.2.3"
y18n "^5.0.5"
yargs-parser "^20.2.2"
yargs-parser "^21.0.0"
yargs@^8.0.2:
version "8.0.2"

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

@@ -39,16 +39,16 @@ publish:
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 +66,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:

Binary file not shown.

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

2288
locale/app.pot Normal file

File diff suppressed because it is too large Load Diff

2267
locale/bg-BG.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/da-DK.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/de-DE.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/en-GB.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"

2267
locale/es-ES.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/fr-FR.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/hr-HR.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/id-ID.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/it-IT.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/ja-JP.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/ko-KR.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/pl-PL.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/pt-BR.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/pt-PT.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/ru-RU.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/uk-UA.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/zh-CN.po Normal file

File diff suppressed because it is too large Load Diff

2267
locale/zh-TW.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,85 +1,94 @@
{
"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": "^6.0.0-beta.2",
"@biesbjerg/ngx-translate-extract-marker": "^1.0.0",
"@fortawesome/fontawesome-free": "^6.1.1",
"@ng-bootstrap/ng-bootstrap": "^10.0.0",
"@sentry/cli": "^1.71.0",
"@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.4",
"@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",
"@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": "^4",
"core-js": "^3.18.2",
"core-js": "^3.21.1",
"core-js-pure": "^3.21.1",
"cross-env": "7.0.3",
"css-loader": "^6.5.1",
"css-loader": "^6.7.1",
"deep-equal": "2.0.5",
"electron": "16.0.5",
"electron-builder": "^22.14.5",
"electron": "18.2.4",
"electron-builder": "^23.0.9",
"electron-download": "^4.1.1",
"electron-installer-snap": "^5.1.0",
"electron-notarize": "^1.1.1",
"electron-rebuild": "^3.2.5",
"electron-notarize": "^1.2.1",
"electron-rebuild": "^3.2.7",
"eslint": "^7.32.0",
"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.1",
"macos-release": "^3.1.0",
"ngx-sortablejs": "^11.1.0",
"ngx-toastr": "^14.0.0",
"node-abi": "^3.2.0",
"node-sass": "^7.0.0",
"npmlog": "5.0.1",
"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.3.0",
"sass-loader": "^12.6.0",
"shell-quote": "^1.7.3",
"shelljs": "0.8.4",
"slugify": "^1.6.1",
"sortablejs": "^1.14.0",
"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.5.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",
"thenby": "^1.3.4",
"ts-loader": "^9.2.8",
"tslib": "^2.3.1",
"typedoc": "^0.22.10",
"typedoc": "^0.22.15",
"typescript": "^4.3.5",
"utils-decorators": "^1.10.4",
"val-loader": "4.0.0",
"webpack": "^5.64.4",
"webpack": "^5.72.1",
"webpack-bundle-analyzer": "^4.5.0",
"webpack-cli": "^4.9.1",
"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": "^3.5.0",
"**/graceful-fs": "^4.2.4"
@@ -93,7 +102,10 @@
"prod": "cross-env TABBY_DEV=1 electron app",
"docs": "node scripts/build-docs.js",
"lint": "eslint --ext ts */src */lib",
"postinstall": "patch-package && node ./scripts/install-deps.js"
"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
}

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': {

View File

@@ -5,5 +5,5 @@ 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`)
sh.exec(`yarn typedoc --out docs/api/${dest} --tsconfig ${src}/tsconfig.typings.json ${src}/src/index.ts`, { fatal: true })
})

View File

@@ -1,16 +1,25 @@
#!/usr/bin/env node
/* eslint-disable @typescript-eslint/prefer-nullish-coalescing */
const builder = require('electron-builder').build
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,
},
publish: {
provider: 'github',
channel: `latest-${process.arch}`,
},
},
publish: isTag ? 'always' : 'onTag',
publish: isTag ? 'always' : 'onTagOrDraft',
}).catch(() => process.exit(1))

View File

@@ -1,4 +1,5 @@
#!/usr/bin/env node
/* eslint-disable @typescript-eslint/prefer-nullish-coalescing */
const builder = require('electron-builder').build
const vars = require('./vars')
@@ -24,8 +25,12 @@ builder({
identity: !process.env.CI || process.env.CSC_LINK ? undefined : null,
},
npmRebuild: process.env.ARCH !== 'arm64',
publish: {
provider: 'github',
channel: `latest-${process.env.ARCH}`,
},
},
publish: isTag ? 'always' : 'onTag',
publish: isTag ? 'always' : 'onTagOrDraft',
}).catch(e => {
console.error(e)
process.exit(1)

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

@@ -1,17 +1,24 @@
#!/usr/bin/env node
/* eslint-disable @typescript-eslint/prefer-nullish-coalescing */
const builder = require('electron-builder').build
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,
},
publish: {
provider: 'github',
channel: `latest-${process.arch}`,
},
},
publish: isTag ? 'always' : 'onTag',
publish: isTag ? 'always' : 'onTagOrDraft',
}).catch(() => process.exit(1))

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,30 +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(`${npx} patch-package`)
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

@@ -7,7 +7,7 @@ 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 --no-git-tag-version version ' + vars.version, { fatal: true })
execSync('npm publish', { stdio: 'inherit' })
sh.cd('..')
})

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.165-nightly.0",
"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,6 +1,6 @@
{
"name": "tabby-core",
"version": "1.0.165-nightly.0",
"version": "1.0.171-nightly.3",
"description": "Tabby core",
"keywords": [
"tabby-builtin-plugin"
@@ -17,12 +17,15 @@
"author": "Eugene Pankov",
"license": "MIT",
"devDependencies": {
"@ngx-translate/core": "^14.0.0",
"bootstrap": "^4.1.3",
"deepmerge": "^4.1.1",
"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,5 +1,5 @@
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, SplitDirection, SplitOrientation } from '../components/splitTab.component'
export { TabRecoveryProvider, RecoveryToken } from './tabRecovery'
@@ -35,4 +35,5 @@ export { TabsService, NewTabParameters, TabComponentType } from '../services/tab
export { UpdaterService } from '../services/updater.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

@@ -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

@@ -5,6 +5,8 @@ export interface SelectorOption<T> {
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

@@ -1,5 +1,6 @@
/* 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'
@@ -12,6 +13,7 @@ export class ButtonProvider extends ToolbarButtonProvider {
constructor (
private hostApp: HostAppService,
private profilesService: ProfilesService,
private translate: TranslateService,
hotkeys: HotkeysService,
) {
super()
@@ -35,7 +37,7 @@ export class ButtonProvider extends ToolbarButtonProvider {
icon: this.hostApp.platform === Platform.Web
? require('./icons/plus.svg')
: require('./icons/profiles.svg'),
title: 'Profiles and connections',
title: this.translate.instant('Profiles & connections'),
click: () => this.activate(),
},
...this.profilesService.getRecentProfiles().map(profile => ({

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

@@ -26,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)',

View File

@@ -88,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

@@ -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',
@@ -111,6 +112,12 @@ export class AppRootComponent {
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()
@@ -196,6 +203,13 @@ 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()
}
@@ -206,6 +220,10 @@ export class AppRootComponent {
}
}
@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 => {

View File

@@ -1,4 +1,4 @@
import { Observable, Subject, distinctUntilChanged } 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>()
@@ -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,14 +117,6 @@ 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
}
}
/**
@@ -136,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

@@ -17,16 +17,18 @@
(click)='selectOption(option)',
[class.active]='selectedIndex == i'
)
i.icon(
class='fa-fw {{option.icon}}',
style='color: {{option.color}}',
*ngIf='!iconIsSVG(option.icon)'
)
.icon(
[fastHtmlBind]='option.icon',
style='color: {{option.color}}',
*ngIf='iconIsSVG(option.icon)'
profile-icon(
[icon]='option.icon',
[color]='option.color'
)
.title.mr-2 {{getOptionText(option)}}
.description.no-wrap.text-muted {{option.description}}
.no-wrap.badge.badge-secondary.text-muted.ml-auto(*ngIf='selectedIndex == i') Enter
.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

@@ -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'
@@ -26,7 +27,7 @@ export class SelectorModalComponent<T> {
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()
@@ -41,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({
@@ -52,8 +57,11 @@ export class SelectorModalComponent<T> {
onFilterChange (): void {
const f = this.filter.trim().toLowerCase()
if (!f) {
this.filteredOptions = this.options.slice()
.sort((a, b) => a.group?.localeCompare(b.group ?? '') ?? 0)
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(' ')
@@ -81,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
}
}

View File

@@ -18,7 +18,7 @@
}
&.maximized {
z-index: 2;
z-index: 6;
box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 30px;
backdrop-filter: blur(10px);
border-radius: 10px;

View File

@@ -1,13 +1,15 @@
import { Observable, Subject } from 'rxjs'
import { Component, Injectable, ViewChild, ViewContainerRef, EmbeddedViewRef, AfterViewInit, OnDestroy } from '@angular/core'
import { BaseTabComponent, BaseTabProcess } from './baseTab.component'
import { BaseTabComponent, BaseTabProcess, GetRecoveryTokenOptions } from './baseTab.component'
import { TabRecoveryProvider, RecoveryToken } from '../api/tabRecovery'
import { TabsService, NewTabParameters } from '../services/tabs.service'
import { HotkeysService } from '../services/hotkeys.service'
import { TabRecoveryService } from '../services/tabRecovery.service'
import { ConfigService } from '../api'
export type SplitOrientation = 'v' | 'h'
export type SplitDirection = 'r' | 't' | 'b' | 'l'
export type ResizeDirection = 'v' | 'h' | 'dv' | 'dh'
/**
* Describes a horizontal or vertical split row or column
@@ -82,6 +84,18 @@ export class SplitContainer {
this.ratios = this.ratios.map(x => x / s)
}
/**
* Makes all tabs have the same size
*/
equalize (): void {
for (const child of this.children) {
if (child instanceof SplitContainer) {
child.equalize()
}
}
this.ratios.fill(1 / this.ratios.length)
}
/**
* Gets the left/top side offset for the given element index (between 0 and 1)
*/
@@ -93,13 +107,13 @@ export class SplitContainer {
return s
}
async serialize (tabsRecovery: TabRecoveryService): Promise<RecoveryToken> {
async serialize (tabsRecovery: TabRecoveryService, options?: GetRecoveryTokenOptions): Promise<RecoveryToken> {
const children: any[] = []
for (const child of this.children) {
if (child instanceof SplitContainer) {
children.push(await child.serialize(tabsRecovery))
children.push(await child.serialize(tabsRecovery, options))
} else {
children.push(await tabsRecovery.getFullRecoveryToken(child))
children.push(await tabsRecovery.getFullRecoveryToken(child, options))
}
}
return {
@@ -197,6 +211,11 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
/** @hidden */
_allFocusMode = false
/**
* Disables display of dynamic window/tab title provided by the shell
*/
disableDynamicTitle = false
/** @hidden */
private focusedTab: BaseTabComponent|null = null
private maximizedTab: BaseTabComponent|null = null
@@ -238,6 +257,7 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
private hotkeys: HotkeysService,
private tabsService: TabsService,
private tabRecovery: TabRecoveryService,
private config: ConfigService,
) {
super()
this.root = new SplitContainer()
@@ -253,6 +273,9 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
})
this.blurred$.subscribe(() => this.getAllTabs().forEach(x => x.emitBlurred()))
this.tabAdded$.subscribe(() => this.updateTitle())
this.tabRemoved$.subscribe(() => this.updateTitle())
this.subscribeUntilDestroyed(this.hotkeys.hotkey$, hotkey => {
if (!this.hasFocus || !this.focusedTab) {
return
@@ -288,6 +311,33 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
case 'pane-nav-next':
this.navigateLinear(1)
break
case 'pane-nav-1':
this.navigateSpecific(0)
break
case 'pane-nav-2':
this.navigateSpecific(1)
break
case 'pane-nav-3':
this.navigateSpecific(2)
break
case 'pane-nav-4':
this.navigateSpecific(3)
break
case 'pane-nav-5':
this.navigateSpecific(4)
break
case 'pane-nav-6':
this.navigateSpecific(5)
break
case 'pane-nav-7':
this.navigateSpecific(6)
break
case 'pane-nav-8':
this.navigateSpecific(7)
break
case 'pane-nav-9':
this.navigateSpecific(8)
break
case 'pane-maximize':
if (this.maximizedTab) {
this.maximize(null)
@@ -298,6 +348,18 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
case 'close-pane':
this.removeTab(this.focusedTab)
break
case 'pane-increase-vertical':
this.resizePane('v')
break
case 'pane-decrease-vertical':
this.resizePane('dv')
break
case 'pane-increase-horizontal':
this.resizePane('h')
break
case 'pane-decrease-horizontal':
this.resizePane('dh')
break
}
})
}
@@ -305,7 +367,7 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
/** @hidden */
async ngAfterViewInit (): Promise<void> {
if (this._recoveredState) {
await this.recoverContainer(this.root, this._recoveredState, this._recoveredState.duplicate)
await this.recoverContainer(this.root, this._recoveredState)
this.updateTitle()
this.layout()
setTimeout(() => {
@@ -446,6 +508,8 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
this.attachTabView(tab)
this.onAfterTabAdded(tab)
}
this.root.normalize()
}
removeTab (tab: BaseTabComponent): void {
@@ -487,6 +551,75 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
this.updateTitle()
}
/**
* Changes the size of the focused pane in the given direction
*/
resizePane (direction: ResizeDirection): void {
const resizeStep = this.config.store.terminal.paneResizeStep
// The direction of the resize pane, vertically or horizontally
let directionvh: SplitOrientation = 'h'
const isDecreasing: boolean = direction === 'dv' || direction === 'dh'
if (direction === 'dh') {
directionvh = 'h'
}
if (direction === 'dv') {
directionvh = 'v'
}
if (direction === 'h') {
directionvh = 'h'
}
if (direction === 'v') {
directionvh = 'v'
}
if (!this.focusedTab) {
console.debug('No currently focused tab')
return
}
let currentContainer: BaseTabComponent | SplitContainer = this.focusedTab
let child: BaseTabComponent | SplitContainer | null = this.focusedTab
let curSplitOrientation: SplitOrientation | null = null
// Find the first split that is in the orientations that the user chooses to change
while (curSplitOrientation !== directionvh) {
const parentContainer = this.getParentOf(currentContainer)
if (!parentContainer) {
return
}
child = currentContainer
currentContainer = parentContainer
if (currentContainer instanceof SplitContainer) {
curSplitOrientation = currentContainer.orientation
}
}
if (!(currentContainer instanceof SplitContainer)) {
return
}
// Determine which index in the ratios refers to the child that will be modified
const currentChildIndex = currentContainer.children.indexOf(child)
let updatedRatio = 0
if (isDecreasing) {
updatedRatio = currentContainer.ratios[currentChildIndex] - resizeStep
if (updatedRatio < 0) {
return
}
} else {
updatedRatio = currentContainer.ratios[currentChildIndex] + resizeStep
if (updatedRatio > 1) {
return
}
}
currentContainer.ratios[currentChildIndex] = updatedRatio
this.layout()
}
/**
* Moves focus in the given direction
*/
@@ -538,6 +671,15 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
this.focus(target)
}
navigateSpecific (target: number): void {
const all = this.getAllTabs()
if (target >= all.length) {
return
}
this.focus(all[target])
}
async splitTab (tab: BaseTabComponent, dir: SplitDirection): Promise<BaseTabComponent|null> {
const newTab = await this.tabsService.duplicate(tab)
if (newTab) {
@@ -571,8 +713,8 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
}
/** @hidden */
async getRecoveryToken (): Promise<any> {
return this.root.serialize(this.tabRecovery)
async getRecoveryToken (options?: GetRecoveryTokenOptions): Promise<any> {
return this.root.serialize(this.tabRecovery, options)
}
/** @hidden */
@@ -621,14 +763,45 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
super.clearActivity()
}
get icon (): string|null {
return this.getFocusedTab()?.icon ?? null
}
set icon (icon: string|null) {
for (const t of this.getAllTabs()) {
t.icon = icon
}
}
get color (): string|null {
return this.getFocusedTab()?.color ?? null
}
set color (color: string|null) {
for (const t of this.getAllTabs()) {
t.color = color
}
}
equalize (): void {
this.root.normalize()
this.root.equalize()
}
private updateTitle (): void {
this.setTitle(this.getAllTabs().map(x => x.title).join(' | '))
if (this.disableDynamicTitle) {
return
}
this.setTitle([...new Set(this.getAllTabs().map(x => x.title))].join(' | '))
}
private attachTabView (tab: BaseTabComponent) {
const ref = tab.insertIntoContainer(this.viewContainer)
this.viewRefs.set(tab, ref)
tab.addEventListenerUntilDestroyed(ref.rootNodes[0], 'click', () => this.focus(tab))
if (this.config.store.terminal.focusFollowsMouse) {
tab.addEventListenerUntilDestroyed(ref.rootNodes[0], 'mousemove', () => this.focus(tab))
}
tab.subscribeUntilDestroyed(tab.titleChange$, () => this.updateTitle())
tab.subscribeUntilDestroyed(tab.activity$, a => a ? this.displayActivity() : this.clearActivity())
@@ -792,7 +965,7 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
})
}
private async recoverContainer (root: SplitContainer, state: any, duplicate = false) {
private async recoverContainer (root: SplitContainer, state: any) {
const children: (SplitContainer | BaseTabComponent)[] = []
root.orientation = state.orientation
root.ratios = state.ratios
@@ -803,10 +976,10 @@ export class SplitTabComponent extends BaseTabComponent implements AfterViewInit
}
if (childState.type === 'app:split-tab') {
const child = new SplitContainer()
await this.recoverContainer(child, childState, duplicate)
await this.recoverContainer(child, childState)
children.push(child)
} else {
const recovered = await this.tabRecovery.recoverTab(childState, duplicate)
const recovered = await this.tabRecovery.recoverTab(childState)
if (recovered) {
const tab = this.tabsService.create(recovered)
children.push(tab)
@@ -837,11 +1010,4 @@ export class SplitTabRecoveryProvider extends TabRecoveryProvider<SplitTabCompon
inputs: { _recoveredState: recoveryToken },
}
}
duplicate (recoveryToken: RecoveryToken): RecoveryToken {
return {
...recoveryToken,
duplicate: true,
}
}
}

View File

@@ -3,7 +3,7 @@ import { Component, Input, HostBinding, ElementRef, Output, EventEmitter } from
import { AppService } from '../services/app.service'
import { BaseTabComponent } from './baseTab.component'
import { SelfPositioningComponent } from './selfPositioning.component'
import { SplitDropZoneInfo } from './splitTab.component'
import { SplitDropZoneInfo, SplitTabComponent } from './splitTab.component'
/** @hidden */
@Component({
@@ -22,7 +22,7 @@ import { SplitDropZoneInfo } from './splitTab.component'
})
export class SplitTabDropZoneComponent extends SelfPositioningComponent {
@Input() dropZone: SplitDropZoneInfo
@Input() parent: BaseTabComponent
@Input() parent: SplitTabComponent
@Output() tabDropped = new EventEmitter<BaseTabComponent>()
@HostBinding('class.active') isActive = false
@HostBinding('class.highlighted') isHighlighted = false
@@ -34,11 +34,21 @@ export class SplitTabDropZoneComponent extends SelfPositioningComponent {
) {
super(element)
this.subscribeUntilDestroyed(app.tabDragActive$, tab => {
this.isActive = !!tab && tab !== this.parent && (this.dropZone.type === 'relative' || tab !== this.dropZone.container.children[this.dropZone.position])
this.isActive = !!tab && this.canActivateFor(tab)
this.layout()
})
}
canActivateFor (tab: BaseTabComponent): boolean {
const allTabs = this.parent.getAllTabs()
return !(
tab === this.parent ||
allTabs.length === 1 && allTabs.includes(tab) ||
this.dropZone.type === 'relative' && tab === this.dropZone.relativeTo ||
this.dropZone.type === 'absolute' && tab === this.dropZone.container.children[this.dropZone.position]
)
}
ngOnChanges () {
this.layout()
}

View File

@@ -13,7 +13,8 @@
div {
background: rgba(0, 0, 0, .7);
padding: 20px 30px;
font-size: 18px;
margin: 20px;
font-size: 16px;
color: #fff;
display: flex;
align-items: center;

View File

@@ -18,6 +18,9 @@ footer.d-flex.align-items-center
span GitHub
button.btn.btn-dark((click)='homeBase.reportBug()')
i.fas.fa-bug
span Report a problem
span(translate) Report a problem
.form-control-static.selectable.no-drag Version: {{homeBase.appVersion}}
.form-control-static.selectable.no-drag(
translate='Version: {version}',
[translateParams]='{ version: this.homeBase.appVersion }'
)

View File

@@ -5,6 +5,12 @@
.index(*ngIf='!config.store.terminal.hideTabIndex && hostApp.platform === Platform.macOS', cdkDragHandle) {{index + 1}}
.index(*ngIf='!config.store.terminal.hideTabIndex && hostApp.platform !== Platform.macOS') {{index + 1}}
profile-icon(
*ngIf='config.store.terminal.showTabProfileIcon && tab.icon',
[icon]='tab.icon',
[color]='tab.color'
)
.name(
[title]='tab.customTitle || tab.title',
[class.no-hover]='config.store.terminal.hideCloseButton'

View File

@@ -37,6 +37,12 @@ $tabs-height: 38px;
text-align: center;
transition: 0.25s all;
align-self: center;
margin-top: 1px;
}
profile-icon {
font-size: 13px;
margin: 1px 4px 0 0;
}
.name {

View File

@@ -1,6 +1,7 @@
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
import { Component, Input, Optional, Inject, HostBinding, HostListener, NgZone } from '@angular/core'
import { NgbModal } from '@ng-bootstrap/ng-bootstrap'
import { auditTime } from 'rxjs'
import { TabContextMenuItemProvider } from '../api/tabContextMenuProvider'
import { BaseTabComponent } from './baseTab.component'
import { RenameTabModalComponent } from './renameTabModal.component'
@@ -47,7 +48,9 @@ export class TabHeaderComponent extends BaseComponent {
}
ngOnInit () {
this.subscribeUntilDestroyed(this.tab.progress$, progress => {
this.subscribeUntilDestroyed(this.tab.progress$.pipe(
auditTime(300),
), progress => {
this.zone.run(() => {
this.progress = progress
})

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