标签: auto-completion

我需要安装什么工具才能让我的终端显示我正在编写的命令的自动完成?

我每天都使用 Ubuntu,最近我发现 Kali Linux 上的终端行为与 Ubuntu 上的终端不同......我可以根据我输入的命令历史看到我正在输入的命令的结尾已经输入如下:

显示视觉自动完成功能的终端图片

我知道我可以通过按 Tab 来使用自动完成功能,但这个功能是别的东西,因为我可以在按 Tab 之前看到命令......这也不是 Kali 相关问题,因为我只想在 Ubuntu 20.04 上复制这个功能。这是一项我可以通过安装一些工具轻松安装在 Ubuntu 上的功能apt install吗?还是我需要做的配置?

command-line auto-completion

5
推荐指数
1
解决办法
2679
查看次数

如何在 bash 中禁用路径名扩展?

假设我是一个懒惰的混混,并希望避免把每串用引号将参数传递给函数时,我该如何避免字符*?正在使用的bash为patname扩张呢?

简化示例:

fn () {
    echo "$1"
}
# shopt -s option - disable * and ?
fn not/*/expanded
fn neither\ should\ this/be/expanded?
fn 'accepted too*'
# shopt -u option - enable * and ?
Run Code Online (Sandbox Code Playgroud)

这应该输出:

not/*/expanded
neither should this/be/expanded?
accepted too*
Run Code Online (Sandbox Code Playgroud)

bash auto-completion

4
推荐指数
1
解决办法
4693
查看次数

像Android“键盘”这样的词预测

有没有办法像在android上一样进行单词预测?

就像这个截图:

这将大大提高在 Ubuntu 上打字的速度。

我在这里需要它:

  • 雷鸟
  • 浏览器文本区域
  • 编辑

所需功能:

  • 需要在线和离线工作(没有互联网连接)

更新

我为这个问题悬赏,但仍然没有答案。我猜桌面快死了。我想迟早我会使用 android 而不是 ubuntu。

keyboard shortcuts auto-completion

4
推荐指数
1
解决办法
1394
查看次数

Bash 补全在子 shell 中不起作用

当我启动 bash 子 shell(通过bash从命令提示符调用)时,所有选项卡补全都会停止工作。该complete命令在新 shell 中变为空:

$ complete
[...]
complete -F _apport-collect apport-collect
complete -F _filedir_xspec vim
complete -o dirnames -o filenames -F _apport-bug ubuntu-bug
complete -F _known_hosts ftp
complete -F _longopt units
complete -F _longopt uname
complete -F _service /etc/init.d/network-manager
complete -F _longopt touch
complete -F _longopt ldd
complete -F _command then
complete -F _known_hosts rlogin
complete -F _service /etc/init.d/sddm
complete -F _service /etc/init.d/lvm2-lvmpolld
complete -F _command command
complete -F _longopt sha384sum
complete -F _known_hosts …
Run Code Online (Sandbox Code Playgroud)

command-line bash auto-completion

4
推荐指数
1
解决办法
543
查看次数

如何在符号链接目录中完成目录?

我有一个符号链接:

/path/to/foo -> /path/to/bar/foo
Run Code Online (Sandbox Code Playgroud)

/path/to/foo我可能想要 cd 到/path/to/bar/foo

$ cd ../ Tab

然后什么都不会自动完成。不过,我仍然cd可以通过在目录“bar”中输入来正常工作。

这是为什么?是否有我可以应用的设置或技巧来完成该选项卡?

bash auto-completion symbolic-link

3
推荐指数
1
解决办法
1547
查看次数

Geany 中的 php 代码完成需要插件吗?

我是 Geany IDE 的新手。我已经安装了基本的 Geany,没有来自 ubuntu 软件中心的任何插件。当我按 Ctrl 空格时,我找不到 php 的代码完成。此功能是否需要插件?

谢谢。

php auto-completion 12.04 geany

3
推荐指数
1
解决办法
5366
查看次数

更新后bash自动完成行为异常

由于 bash 是最近更新的,当我尝试在 cd 期间通过 Tab 键自动完成时,我得到以下信息...

tony@tony-HP:~$ cd Mucword=1
words[0]=${!ref}${COMP_WORDS[i]}
words[1]=${!ref}${COMP_WORDS[i]}
cword=1
words=("${@:3:2}")
cword="$3"
cur="$3"
cur="$3"
cword="$3"
prev="$3"
words=("${@:3:2}")
 compgen -d -- "$quoted" 
sic/
Run Code Online (Sandbox Code Playgroud)

在这里,我cd Mu在提示符下输入并使用选项卡,在 bash 吐出我不需要的信息sic/后,在确定我的音乐目录后添加。有什么变化?在安全问题之后是否有默认设置?

ps 如您所料,点击返回更改目录。

bash auto-completion

3
推荐指数
1
解决办法
1119
查看次数

终端自动完成在 adb 命令中不起作用

我正在使用 Ubuntu 14.04(更新),在终端中,自动完成运行良好,但是当我在终端中使用 adb 命令时,自动完成不再起作用..

command-line auto-completion adb

3
推荐指数
1
解决办法
4441
查看次数

为什么我在 bash 中调用函数时会出现 _parse_usage 错误?

所以我收到以下错误:

bash: _parse_usage: line 16: syntax error near unexpected token `('
bash: _parse_usage: line 16: ` -?(\[)+([a-zA-Z0-9?]))'
bash: error importing function definition for `_parse_usage'
bash: _longopt: line 14: syntax error near unexpected token `('
bash: _longopt: line 14: ` --+([-a-z0-9_]))'
bash: error importing function definition for `_longopt'
Run Code Online (Sandbox Code Playgroud)

显然仅在函数调用上。

command-line bash functions auto-completion

3
推荐指数
1
解决办法
1084
查看次数

哪个包负责 Ubuntu 上 systemd/systemctl 的 bash 补全?

我本地安装了 Ubuntu 16.04,默认情况下它具有systemctl子命令的 bash 补全功能。但是当我在 Digital Ocean 上启动 Ubuntu Server 18.04 实例时,子systemctl命令没有 bash 补全。我预计会缺少一些软件包,例如systemd-completion,但在我本地的 Ubuntu 上我只安装了这些软件包:

\n\n
ii  libpam-systemd:amd64                          229-4ubuntu21.2                                          amd64        system and service manager - PAM module\nii  libsystemd0:amd64                             229-4ubuntu21.2                                          amd64        systemd utility library\nii  libsystemd0:i386                              229-4ubuntu21.2                                          i386         systemd utility library\nii  systemd                                       229-4ubuntu21.2                                          amd64        system and service manager\nii  systemd-shim                                  9-1bzr4ubuntu1                                           amd64        shim for systemd\nii  systemd-sysv                                  229-4ubuntu21.2                                          amd64        system and service manager - SysV links\n
Run Code Online (Sandbox Code Playgroud)\n\n

和竣工工程。这bash-completion软件包已安装在两台机器上。

\n\n

另外,在/etc/bash_completion.d/我的本地 16.04 机器上,我没有看到任何相关的 systemctl …

command-line bash auto-completion systemd

3
推荐指数
1
解决办法
5107
查看次数

我应该如何安装我自己的 bash 完成脚本?

我编写了一些软件,其中包含它自己的 Bash 完成脚本。当我手动获取它时,这个脚本工作正常,但我试图找出如何最好地安装在 Ubuntu 18.04 上。

/usr/share/bash-completion/completions 中有很多其他完成脚本,这让我认为这是答案,但是在那里安装我的完成脚本没有任何效果。那个位置不知何故是一个红鲱鱼?或者除了将脚本放在那里之外,我还需要做些什么来注册脚本?

bash auto-completion 18.04

3
推荐指数
1
解决办法
1321
查看次数

自定义命令的 Bash 完成以完成静态目录树

我想补充的bash的可编程完成自定义完成规范,做了以下情况:每当输入的命令是foo,我想对于部分令牌之后做文件名/目录下完成foo,但是相对于一个固定的目录(比方说/a/b/c),而不是当前工作目录。

例如,假设/a/b/c包含文件

hello goodbye cheers directory
Run Code Online (Sandbox Code Playgroud)

/a/b/c/directory包含文件

adieu ciao
Run Code Online (Sandbox Code Playgroud)

然后,输入foo go<TAB>应该完成goto goodbye,并且输入foo dir<TAB>ci<TAB>应该首先完成参数 todirectory/然后 to directory/ciao,无论我当前的工作目录是什么。

我希望能够通过一次调用来设置它complete,但是在阅读手册后,我似乎无法做到这一点。可以做到吗?而且,如果没有,我怎么能添加一个 compspec 来做到这一点?

command-line bash auto-completion

2
推荐指数
1
解决办法
1523
查看次数

我可以在终端中获得更好的制表符补全功能吗?

假设我在一个文件夹中有三个文件名以 s 开头的文件。

如果我输入 s 并点击Tab,我会听到错误提示音,并且终端中没有完成任何操作。我必须输入足够的文件名,以便在它自动完成之前明确终端我想要的文件Tab

因此,如果我有文件名schoolscuba、 和scary,并且我想开办学校,我必须输入 sch ,否则它不会自动完成。我见过一些例子,您可以键入内容s,然后可以Tab一一浏览所有选项。

此功能不可用还是我必须在某处更改设置?

bash auto-completion

0
推荐指数
1
解决办法
1076
查看次数