Tab completion not working in version 4.0.1 on macOS
- 主要语言
- Python
- 星标
- 13.4k
- 派生
- 612
- 平均合并
- 6 天 14 小时
- 30 天内合并 PR
- 10
描述
## Description
When I start typing a statement, and pgcli suggests the complete statement in gray, and I just want to accept it, I try to hit Tab and instead focus the menu. I have to hit the right arrow key to select the suggested statement. This is strange compared to other editors.
Worse, sometimes hitting tab just cuts off what I'm typing.
## Desired Behavior
I would like to be able to use Tab to select the suggested statement. I can already use the down arrow to select the first completion menu item. I should at least be able to change this in the config file. There is no documentation about this.
However, there seems to be a lot of back-and-forth on keybindings and why we can't do this and that on keybindings in pgcli because of the way Python works, the library we're using, etc. which don't make sense to me as a developer, because the user should be able to configure these and not worry about hacking source just for keybindings. Please give us a documented way to change these without needing to edit source code.
## Your environment
macOS Sonoma 14.1.2 / Terminal / pgcli installed via homebrew
```
pip freeze main
altgraph @ file:///AppleInternal/Library/BuildRoots/dc12d579-7d9b-11ee-af04-6aecfccc70fe/Library/Caches/com.apple.xbs/Sources/python3/altgraph-0.17.2-py2.py3-none-any.whl
future @ file:///AppleInternal/Library/BuildRoots/dc12d579-7d9b-11ee-af04-6aecfccc70fe/Library/Caches/com.apple.xbs/Sources/python3/future-0.18.2-py3-none-any.whl
macholib @ file:///AppleInternal/Library/BuildRoots/dc12d579-7d9b-11ee-af04-6aecfccc70fe/Library/Caches/com.apple.xbs/Sources/python3/macholib-1.15.2-py2.py3-none-any.whl
six @ file:///AppleInternal/Library/BuildRoots/dc12d579-7d9b-11ee-af04-6aecfccc70fe/Library/Caches/com.apple.xbs/Sources/python3/six-1.15.0-py2.py3-none-any.whl
```
贡献指南
调研方向
该 issue 没有列出文件或测试。首先在 macOS 上复现 pgcli 中 Tab 的行为,并跟踪补全和按键绑定的处理过程。当 Tab 能够可靠地接受建议的语句,或者存在一个有文档说明的配置选项,可以在不修改源代码的情况下改变此行为时,即可视为完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- postgresql, python
- 领域
- cli, databases
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100