屏幕和Cygwin:没有标签完成?

屏幕和Cygwin:没有标签完成?,cygwin,gnu-screen,Cygwin,Gnu Screen,我在使用开发环境时遇到一些问题。具体地说,在我从Cygwin中调用screen实用程序之后,我就失去了完成制表符的能力。在我调用screen之前,tab完成工作正常 我为术语env变量(VT100、xterm等)设置了不同的值,但没有成功。这一定是件小事,但我已经不知道了。StackOverflow对我有什么建议吗?当你从cygwin内部发布“screen”时,它可能会把你放在另一个shell中,比如/bin/sh而不是/bin/bash(而bash是你获取制表符的来源) 要解决此问题,您可以编

我在使用开发环境时遇到一些问题。具体地说,在我从Cygwin中调用screen实用程序之后,我就失去了完成制表符的能力。在我调用screen之前,tab完成工作正常


我为术语env变量(VT100、xterm等)设置了不同的值,但没有成功。这一定是件小事,但我已经不知道了。StackOverflow对我有什么建议吗?

当你从cygwin内部发布“screen”时,它可能会把你放在另一个shell中,比如/bin/sh而不是/bin/bash(而bash是你获取制表符的来源)

要解决此问题,您可以编辑.screenrc文件(位于您的主目录中)并在此行中添加:

shell bash

然后再次尝试运行screen,您应该会在这个新窗口中看到制表符完成工作。

问题是,为了在默认cygwin设置中完成制表符,bash需要作为登录shell运行。如果在cygwin bash中运行
bash
,则也不会有制表符完成。要将screen设置为在登录模式下运行bash,请将此行添加到~/.screenrc文件中:

shell -bash

在linux机器上使用screen时,我遇到了git autocompletion无法工作的类似问题,但这不是由于不同的shell造成的。我用这个问题修复了它:并执行以下操作:

获取git自动完成脚本

curl https://raw.github.com/git/git/master/contrib/completion/git-completion.bash -OL
你为什么要把它挂在那里

mv git-completion.bash .git-completion.bash
将此行添加到您的。/bashrc

source ~/.git-completion.bash
然后在你的终点站

source ~/.bashrc
这对我很管用


(我想三年后你可能已经解决了你的问题,但我希望这对其他人有所帮助)

你好,尼古拉斯,欢迎来到SO。谢谢你为这个老问题付出努力。。。你的回答为这个问题提供了很好的信息。所以我投了一票。谢谢!在过去的几年里,我无数次地帮助了我,我期待着给社区一些回报。