Je pense que cette fonctionnalité que OP recherche est appelée dabbrev-expand dans le monde Emacs:
Développez le mot dans le tampon avant le point comme une abréviation dynamique, en recherchant dans le tampon les mots commençant par cette abréviation (v-expand).
xterma également des dabbrev-expandfonctionnalités, mais il est un peu moins intelligent que son homologue Emacs, mais il est très utile pour moi et l'une des raisons pour lesquelles je suis passé xterm. Dans la xtermfenêtre, on peut utiliser une liaison de touches personnalisée spécifiée dans ~/.Xresourcespour invoquer dabbrev-expandune chaîne donnée. Par exemple, j'ai l'entrée suivante dans mon ~/.Xresources(j'utilise uxterm, une version Unicode de xterm):
UXTerm*VT100.Translations: #override \n\
Meta <Key>/:dabbrev-expand() \n\
Dans la xtermfenêtre intérieure , je peux utiliser M-/( ALT + /) pour invoquer dabbrev-expand. xtermrecherchera toutes les chaînes visibles à l'écran qui commencent par les lettres que j'ai tapées. Exemple:
$ echo a_very_long_string bye by
$ a_v
Si je pressais M-/maintenant xtermélargirait a_và a_very_long_string. Malheureusement, comme je l'ai dit, ce xtermn'est pas si intelligent et sa dabbrev-expandfonctionnalité ne fonctionnera que sur des chaînes complètes. Donc, dans votre cas, isserait étendu à issue540et non issue547314parce qu'il issue547314fait partie de origin/issue547314(pensez-y comme \bdans les expressions régulières, c'est un peu similaire, bien que la plupart des moteurs d'expressions régulières capturent les deux occurrences de issuechaînes \bissue.+\b). Mais , vous pouvez taper orpuis pressez M-/. xtermva d'abord s'étendre orà origin/v2.1, ce n'est pas ce que nous voulons, alors appuyez à M-/nouveau et xtermdéveloppez-le origin/issue547314. Maintenant, si vous utilisez Bash, vous pouvez le faire M-b,C-wet C-epour retirer une origin/partie. Pour résumer, l' dabbrev-expandintérieur xtermn'est pas aussi bon que dans Emacs (et Vim je suppose) mais c'est toujours plus rapide que de réécrire de longues cordes à la main et moins sujette aux fautes de frappe. Et dans la plupart des cas, il s'étendra directement à la chaîne souhaitée sans avoir à supprimer les parties redondantes. Vous avez juste besoin de vous y habituer - regardez la chaîne que vous voulez avoir au curseur et voyez si elle n'est pas précédée par quelque chose d'autre, et si c'est tapez une partie précédente et supprimez-la après l'expansion.
Notez que ce xtermn'est pas compilé avec la dabbrev-expandfonctionnalité par défaut et vous devez l'activer explicitement. Cependant, la version de xtermdans les référentiels Ubuntu est compilée avec dabbrev-expandet vous pouvez l'utiliser immédiatement.