Comments (28)
你用的是什么终端?iTerm2 ?
from trzsz-ssh.
你用的是什么终端?iTerm2 ?
我用的是Alacritty
, iTerm2
偶尔会用
如果只考虑支持 Tmux
环境下的多开, 我感觉与用什么终端关系不大的
from trzsz-ssh.
如果是 iTerm2 的话,可能 https://github.com/wouterdebie/i2cssh 或 https://github.com/kamranahmedse/itomate 会是你想要的。
from trzsz-ssh.
如果是 iTerm2 的话,可能 https://github.com/wouterdebie/i2cssh 或 https://github.com/kamranahmedse/itomate 会是你想要的。
我看了这两个项目的演示, 属于非 Tmux
原生的 Window
或 pane
多开, 我用 Tmux
主要还是用它原生的功能, 没有用它与终端软件集成的一些功能. 如果考虑终端软件多开 Tab
可能就复杂了, 只考虑Tmux
环境下多开就有统一性的接口
from trzsz-ssh.
感觉像你那样写个脚本,一键打开自己想登录的服务器,会比手工选择快很多吧?
一般常用的也不太多,写几个脚本,并且设置好 alias 就可以了?
from trzsz-ssh.
感觉像你那样写个脚本,一键打开自己想登录的服务器,会比手工选择快很多吧? 一般常用的也不太多,写几个脚本,并且设置好 alias 就可以了?
我那个脚本是交互式的, 需要按下Tab
键选中要同时登录的主机, 我是想如果tssh
能原生支持就更好了
临时需要对一批机器同时执行相同的指令, 如果能同时登录并在一个Tmux
的Window
开启同步操作是非常方便的
from trzsz-ssh.
意思是输入一次命令,在多个服务器中都执行?那感觉和 https://github.com/wouterdebie/i2cssh 很像。
tssh
要支持的话,还没想好怎么做。一般来说每个 tssh
进程都独立连接一台服务器,要接受一次输入多处执行,就得有个 master 进程专门来接收输入,然后分发给其他 tssh
进程。如果 tssh
一个进程直接连接很多台服务器,那多窗口问题又很不好实现了。
from trzsz-ssh.
意思是输入一次命令,在多个服务器中都执行?那感觉和 https://github.com/wouterdebie/i2cssh 很像。
tssh
要支持的话,还没想好怎么做。一般来说每个tssh
进程都独立连接一台服务器,要接受一次输入多处执行,就得有个 master 进程专门来接收输入,然后分发给其他tssh
进程。如果tssh
一个进程直接连接很多台服务器,那多窗口问题又很不好实现了。
可以先不用考虑那么复杂
我的想法是: tssh 可以支持 交互式多选,然后侦听用户按键,如果是用户选中了多个主机名并按下了回车键就调用tmux
接口打开 Tmux 的多个window
,如果是用户选中了多个主机名并按下了Ctrl+Enter
就调用tmux
接口在 Tmux
的一个 Window 中打开多个pane
from trzsz-ssh.
可以先不用考虑那么复杂
我的想法是: tssh 可以支持 交互式多选,然后侦听用户按键,如果是用户选中了多个主机名并按下了回车键就调用tmux
接口打开 Tmux 的多个window
,如果是用户选中了多个主机名并按下了Ctrl+Enter
就调用tmux
接口在Tmux
的一个 Window 中打开多个pane
这样的话,感觉都不需要多选。当前在哪一个,按下 ctrl + enter
就直接打开一个 tmux 的 window。然后再移到另一个,再按下 ctrl + enter
再打开一个 tmux 的 window ?pane
的话,再选另外一个快捷键?
from trzsz-ssh.
这样的话,感觉都不需要多选。当前在哪一个,按下 ctrl + enter 就直接打开一个 tmux 的 window。然后再移到另一个,再按下 ctrl + enter 再打开一个 tmux 的 window ?pane 的话,再选另外一个快捷键?
这种操作逻辑也可以,我是习惯 fzf 多选模式的那种,一次选中多个,一次确认按键打开多个window
或pane
from trzsz-ssh.
选中时,至少要按一次键,还不如按这个键时直接打开,这样实现会简单一些。
不过,选中的快捷键可能只是一个普通按键( 如空格键 ),而打开的按键是一个组合键,这些使用的体验上会有一些区别。
现在用的是 https://github.com/manifoldco/promptui 这个组件,没找到多选的用法,多选再一次打开的实现会难很多。
from trzsz-ssh.
现在用的是 https://github.com/manifoldco/promptui 这个组件,没找到多选的用法,多选再一次打开的实现会难很多
看了这个 promptui 项目,感觉已经不维护了,我找到了一个支持多选的 go 库,支持多选单选,目前在积极开发中
https://github.com/fzdwx/infinite
from trzsz-ssh.
https://github.com/go-survey/survey 这个也可以。
不过,我感觉自己改造一下 promptui 的可控性会更好一些,例如:https://liza.io/implementing-multiple-choice-selection-in-go-with-promptui/
另外,如果是打开 new-window 还好。如果是打开 pane 又如何布局呢,可以左右分,又可以上下分,选择多个时如何分呢?
from trzsz-ssh.
如果是打开 pane 又如何布局呢,可以左右分,又可以上下分,选择多个时如何分呢?
默认布局为平铺均分整个window
,优先左右均分,然后上下均分,即尽量让每个pane
都是均等的
可以设定横向或纵向最多均分多少份,比如默认最多3等份
from trzsz-ssh.
列举一下选中不同数量时,tmux split-window 的例子?好像还得移动到另一个 pane 去,才能再次 split ?在原来的 pane 可以再次 split 其他的 pane 吗,至少得知道其他 pane 的编号吧?
from trzsz-ssh.
我知道了,分 pane 时可以随便分,分完之后,再执行一下 tmux select-layout tiled
就好了。举例:
tmux split-pane sh \; split-pane bash \; split-pane zsh \; select-layout tiled
from trzsz-ssh.
我知道了,分 pane 时可以随便分,分完之后,再执行一下
tmux select-layout tiled
就好了。举例:tmux split-pane sh \; split-pane bash \; split-pane zsh \; select-layout tiled
嗯嗯,这种方式就很容易实现平铺布局
from trzsz-ssh.
不过,tmux select-layout tiled
优先上下分,然后才是左右分,我觉得这样不太好。
例如 6 个时,现在 tmux 是这样分的:
---------
| 1 | 2 |
---------
| 3 | 4 |
---------
| 5 | 6 |
---------
我觉得下面这样分会更好一些:
-------------
| 1 | 2 | 3 |
-------------
| 4 | 5 | 6 |
-------------
from trzsz-ssh.
还有 8 个时,我也觉得上下两行,每行 4 个会更好一些,如:
https://stackoverflow.com/questions/53433705/tmux-8-pane-sane-tiled-layout
from trzsz-ssh.
还有 8 个时,我也觉得上下两行,每行 4 个会更好一些,如: https://stackoverflow.com/questions/53433705/tmux-8-pane-sane-tiled-layout
目前大多数一次打开最多6个主机,8 个就没考虑过,6个的话,两行三列貌似有点不太好实现排列,对我来说,三行两列也能接受
from trzsz-ssh.
v0.1.8
已支持,用法请参考文档 批量登录。
from trzsz-ssh.
v0.1.8
已支持,用法请参考文档 批量登录。
太棒了👍,感谢大佬的支持
还有一些快捷操作的建议:
上图中,希望能支持Ctrl+a
全选,Ctrl+v
反选,
另外希望能增设Ctrl+x
来选中条目,空格键在这个地方就不好使了,和Ctrl/Alt
的组合键,在 Mac 下可能和用户已有的冲突(Ctrl+Space
:切换输入法,Alt+Space
:Monica,一个 AI 工具),
还有选中一个条目后,自动移动到下一个条目上
from trzsz-ssh.
1、Ctrl + A
和 Ctrl + O
全选或反选当前页的,可以搞;要全选上一页或下一页( 未显示出来的那些)就太多了,感觉没必要。不用 Ctrl + V
,因为这和 Windows 的粘贴键冲突了 。
2、Ctrl + X
也可以选中或反选当前条目,也可以搞;另外,我觉得现在的搜索不是很好用,想在搜索时按下一次 Enter
就锁定当前搜索结果,切换到类似未搜索时那样操作;Ctrl + E
可以取消锁定的搜索结果,恢复显示全部列表。
3、选中之后自动移到下一项,这个感觉不太好,会让人以为是 bug。另外可能是误选了,只要再按一次就能恢复,自动移动了就没那么方便了。space + j + space + j + ...
这样操作起来也很快了,感觉没必要再自动到下一项。
from trzsz-ssh.
Ctrl + E 可以取消锁定的搜索结果,恢复显示全部列表
这个是指: 清空键入的搜索关键词,恢复到为未搜索的状态是吧 ,这个可以安排用Ctrl+u
键,符合 shell
终端按键的默认风格
选中之后自动移到下一项,这个感觉不太好,会让人以为是 bug。另外可能是误选了
这个可能让新手有这种感觉,但是用户一旦熟悉后,就不会有这种错觉,反而觉得体验更好。选中一个条目一般来说是一个比较明确的操作,再次按下Space
取消选中的频率不会很高
from trzsz-ssh.
这个是指: 清空键入的搜索关键词,恢复到为未搜索的状态是吧 ,这个可以安排用Ctrl+u键,符合 shell终端按键的默认风格
Ctrl + U
( up ) 是 vim 的往上翻半页快捷键,这个我已经用作往上翻页了。
这个可能让新手有这种感觉,但是用户一旦熟悉后,就不会有这种错觉,反而觉得体验更好。选中一个条目一般来说是一个比较明确的操作,再次按下Space取消选中的频率不会很高
移动还是要有明确的操作会好一些。你可以去编译 Linux 内核,试试 make menuconfig
的操作。
from trzsz-ssh.
Ctrl+w
,Ctrl+T
对选中的单一条目也支持一下新窗口或新标签打开吧
当检索后只有一个条目时,直接自动选中它
from trzsz-ssh.
1、选中单一条目时,如果以新窗口或 tab 打开,剩下原来的 tssh 进程就很尴尬了。tmux
和其他的终端都有新开一个窗口或 tab 的快捷键,建议先自己开好新窗口或 tab,然后再运行 tssh 程序。
2、只剩下一个时,未必就是用户想要的,有可能只是输入了某个错误的字母,我认为不应该代替用户做选择。
from trzsz-ssh.
@boomker 全选 Ctrl + A
,反选 Ctrl + O
,选中或取消 Ctrl + X
,这三个功能已实现,具体用法可参考 快捷键。
在 v0.1.9
发布之前,可以 go install github.com/trzsz/trzsz-ssh/cmd/tssh@main
这样先安装试用。
from trzsz-ssh.
Related Issues (20)
- ~/.ssh/config 中配置的 SetEnv TERM 无效 HOT 2
- 能否支持登录之后切换用户呢? HOT 1
- 能否做一个忽略的功能呢?ssh中存在很多其实并不需要真的连接的配置。 HOT 6
- tssh无法用key连接,ssh正常,请问是哪里没正确吗? HOT 55
- [功能请求] 通过命令行参数传递密码 HOT 2
- 无法解析 ssh/confg 中多项 Include HOT 6
- 可以美化文件传输的进度条吗? HOT 4
- 引入兼容 Warp 的软链接后,影响了 rsync 的运行 HOT 3
- 按照免密登录配置后,ssh 登录可以免密,但是 tssh 提示请出入密码。 HOT 1
- [selfupdate] could u kindly consider add selfupdate
- mintty Ctrl-C退出整个tssh HOT 12
- -R for serveo.net or ssh-j.com on Windows10 and Debian12 HOT 19
- My user name include a symbol '#' that i can't login destination host HOT 2
- 无法激活1password的ssh agent HOT 5
- An example of using tssh `as` a library HOT 3
- Mosh 支持 HOT 25
- 类似于xftp实现跨服务器传输文件 HOT 3
- tssh执行后面直接执行命令报错 HOT 2
- 拖曳上传现在只支持trzsz, 能否支持lrzsz的拖曳上传? HOT 1
- 在 warp 中 block 功能不生效 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from trzsz-ssh.