Cmder - Utilisez <tab> pour faire défiler les candidats auto-complétés?

18

Dans le cmd.exe d'origine sous Windows, peut être utilisé pour parcourir les candidats de fin automatique. Mais dans cmder, cette fonctionnalité semble avoir été supprimée. Existe-t-il de toute façon pour l'activer?

dofine
la source
Pourquoi essayez-vous cmder au lieu de ConEmu officiel ?
Maximus
@Maximus Je suis juste tombé sur cmder et je n'ai jamais essayé d'autres ... Merci!
dofine du
2
cmder n'est qu'un ConEmu préconfiguré avec des logiciels tiers
Maximus

Réponses:

19

Comme mentionné ci-dessus, « cmder » est une fusion d'autres logiciels open source. Le logiciel qui contrôle le comportement de complétion des onglets est « clink ». Pour modifier ce comportement, accédez à votre répertoire « cmder », puis recherchez:

\ cmder \ vendor \ clink \ clink_inputrc_base

Ouvrez «clink_inputrc_base», enregistrez un original de sauvegarde, puis remplacez les deux lignes qui se lisent:

"\ t": clink-complétion-shim

avec:

"\ t": menu complet

pour le comportement en arrière du cycle Maj + Tab, ajoutez également une ligne sous chacune des lignes ci-dessus qui se lit comme suit:

"\ e`Z": menu-complete-backward

Cela a fonctionné pour moi. Crédit à ce lien pour les informations sur la modification du comportement de clink:

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

EDIT: Veuillez voir mon commentaire ci-dessous, ou une réponse supplémentaire de «marées». Dans les versions plus récentes de cmder, le processus est légèrement plus simple. Il vous suffit de décommenter les lignes comme décrit dans le fichier, voir mon commentaire ou autre réponse pour plus de détails.

Moustache
la source
MISE À JOUR: Je viens de télécharger une version plus récente de cmder (v1.3.6) et maintenant le fichier ci-dessus a deux lignes commentées, au-dessus desquelles il est dit "# Décommentez ces deux lignes pour l'achèvement du style vanilla cmd.exe." Si vous décommentez les deux lignes ci-dessous, il obtiendra le même comportement que ma réponse ici.
Moustache
Sera-t-il possible de faire fonctionner <tab> comme: 1st <tab> - liste toutes les commandes possibles, 2nd et après <tab> - achèvement?
X.Arthur
10

En fait, dans le \cmder\vendor\clink\clink_inputrc_basefichier, il y a déjà ces lignes à la fin:

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

Si vous supprimez les #caractères des deux dernières lignes, vous obtiendrez le comportement souhaité.

Marées
la source
Merci, oui, je l'ai noté dans mes commentaires du 22 juin. Ce n'était pas présent dans les versions antérieures de cmder.
Moustache le
Quoi qu'il en soit pour exclure les éléments qui ne sont pas réellement dans le répertoire de travail actuel?
hellyale
La saisie semi-automatique n'est toujours pas effectuée pour la gitcommande
Kolob Canyon
2

Clink modifie le comportement de fin de tabulation. Donc: supprimez le clink du vendorsdossier, décochez Use clink in prompt .

Maximus
la source
Cela fonctionne après avoir supprimé le clink, même si je n'ai pas vérifié Use clink in promptà la première place. Un autre problème est que maintenant {lamb}et {git}{hg}apparaît. L'invite Git semble se casser lorsque je passe à un répertoire git.
dofine du
Installez ConEmu officiel et configurez-le à votre goût
Maximus
@Maximus comment? pouvez-vous développer
peval27