Cmder - Используйте <tab> для циклического прохождения кандидатов на автозаполнение?


18

В оригинальном cmd.exe в Windows, можно использовать для циклического прохождения автозаполнения кандидатов. Но в cmder эта функция, похоже, удалена. Есть ли способ его включить?


Почему вы пытаетесь cmder вместо официального ConEmu, чем?
Максим

@Maximus Просто наткнулся на cmder и никогда не пробовал других ... Спасибо!
Дофин

2
cmder - это просто предварительно настроенный ConEmu с некоторым сторонним программным обеспечением
Maximus

Ответы:


19

Как упоминалось выше, « cmder » представляет собой объединение другого программного обеспечения с открытым исходным кодом. Программное обеспечение, которое управляет поведением завершения вкладки, называется « clink ». Чтобы изменить это поведение, перейдите в каталог « cmder » и найдите:

\ Cmder \ поставщика \ Звон \ clink_inputrc_base

Откройте clink_inputrc_base, сохраните резервную копию оригинала, а затем замените обе строки, которые читаются:

"\ t": клинк-завершение-шим

с:

"\ t": полное меню

для обратного поведения shift + tab, также добавьте строку под каждой из приведенных выше строк, которая гласит:

"\ e`Z": полное меню назад

Это сработало для меня. Перейдите по этой ссылке для получения информации об изменении поведения клинка:

https://github.com/mridgers/clink/issues/190

РЕДАКТИРОВАТЬ: Пожалуйста, смотрите мой комментарий ниже, или дополнительный ответ от «приливов». В более новых версиях cmder этот процесс несколько проще. Вам просто нужно раскомментировать строки, как описано в файле, см. Мой комментарий или другой ответ для более подробной информации.


ОБНОВЛЕНИЕ: Я только что скачал более новую версию cmder (v1.3.6), и теперь в файле выше есть две строки с комментариями, над которыми написано «# Раскомментируйте эти две строки для завершения стиля vanilla cmd.exe». Если вы раскомментируете две строки ниже, это приведет к тому же поведению, что и мой ответ здесь.
Усы

Можно ли будет заставить <tab> работать так: 1-я <tab> - список всех возможных команд, 2-я и после <tab> - завершение?
X.Артур

10

Собственно, в \cmder\vendor\clink\clink_inputrc_baseфайле уже есть эти строки в конце:

# Uncomment these two lines for vanilla cmd.exe style completion.
# "\t": clink-menu-completion-shim
# "\e`Z": clink-backward-menu-completion-shim

Если вы удалите #символы из последних двух строк, вы получите желаемое поведение.


Спасибо, да, отметил это в моих комментариях 22 июня. Этого не было в более ранних версиях cmder.
Усы

В любом случае, чтобы исключить элементы, которых на самом деле нет в текущем рабочем каталоге?
Hellyale

Все еще не git
Каньон

2

Клинк изменяет поведение завершения вкладки. Итак: удалите clink из vendorsпапки, снимите флажок Использовать clink в приглашении .


Это работает после того, как я удаляю clink, хотя я не проверял Use clink in promptсначала. Еще одна проблема заключается в том, что сейчас {lamb}и {git}{hg}появляется. Подсказка Git, кажется, ломается, когда я перехожу к git dir.
Дофин

Установите официальный ConEmu и настройте его на свой вкус
Maximus

@ Максимус как? Вы можете расширить
peval27
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.