Lors de l'écriture de code python (avec gvim), je garde souvent des commandes de ligne de commande complexes pour les cas de test enregistrés dans mes docstrings. Une erreur de perte de temps courante que je fais est de copier la ligne entière du fichier python et de la coller dans le terminal.
Pour un exemple, une de mes fonctions ressemble à ceci
@profile
def incremental_test(ibs, qaid_list, daid_list=None):
"""
Plots the scores/ranks of correct matches while varying the size of the
database.
Args:
ibs (list) : IBEISController object
qaid_list (list) : list of annotation-ids to query
CommandLine:
python dev.py -t inc --db PZ_MTEST --qaid 1:30:3 --cmd
python dev.py --db PZ_MTEST --allgt --cmd
python dev.py --db PZ_MTEST --allgt -t inc
python dev.py -t inc --db PZ_MTEST --qaid 1:30:3 --cmd
python dev.py -t inc --db PZ_Master0
python dev.py -t inc --db GZ_ALL --ninit 100 --noqcache
Example:
>>> from ibeis.all_imports import * # NOQA
>>> ibs = ibeis.opendb('PZ_MTEST')
>>> qaid_list = ibs.get_valid_aids()
>>> daid_list = None
"""
from ibeis.model.hots import automated_matcher
ibs1 = ibs
num_initial = ut.get_argval('--ninit', type_=int, default=0)
return automated_matcher.incremental_test(ibs1, num_initial)
Et je veux copier une des différentes commandes dans le terminal pour le tester.
Initialement, lorsque je copie / colle une de ces lignes, cela fonctionne bien, mais si je change de code et que je veux relancer le test, je me trouve à appuyer sur la flèche vers le haut pour accéder à la commande précédente de mon historique. Mais parce que la commande avait des espaces blancs, je reçois une autre commande. Ce qui aggrave la situation, c'est que souvent, la commande précédente est très similaire. peut-être avais-je ajouté un drapeau --verbose ou quelque chose comme ça, donc je ne l’attrape pas toujours immédiatement.
Actuellement, ma solution consiste à copier soigneusement la commande depuis le début du premier caractère non-blanc ou à repasser la commande. Ces deux options rompent mon rythme de codage et je me trouve souvent à la recherche d'une meilleure solution.
Avec cet exemple modérateur, ma question est la suivante:
Existe-t-il un moyen de configurer le gnome-terminal de telle sorte que, lorsque vous appuyez sur la flèche vers le haut, il vous donne la dernière commande, même s'il est précédé d'un espace.
J'imagine qu'une solution de rechange pourrait consister à ce que Ctrl + Maj + C dans vim copie la ligne dans le presse-papiers mais lstrip le blanc, mais je préférerais un hack terminal.
la source
HISTIGNORE
?