Est-il possible d'exécuter "paster shell blah.ini" (ou une variante de celui-ci) et de charger automatiquement certaines bibliothèques? Je déteste avoir à toujours taper "from foo.bar import mystuff" comme première commande dans chaque shell de paster, et je voudrais que l'ordinateur le fasse pour moi.Est-il possible de lancer un shell Paster avec des modules pré-importés?
Répondre
Si vous définissez la variable d'environnement PYTHONSTARTUP sur le nom d'un fichier, il exécutera ce fichier à l'ouverture de l'invite interactive.
Je ne sais rien à propos de la coquille de paster, mais je suppose que cela fonctionne de manière similaire.
Vous pouvez également regarder dans iPython, qui a des fonctionnalités beaucoup plus puissantes (en particulier lorsqu'il est installé avec la bibliothèque readline). Par exemple,% run vous permet d'exécuter un script dans l'espace de noms actuel, ou vous pouvez utiliser l'achèvement de l'historique.
Editer:
OK. Après avoir examiné un peu plus, je suis assez certain que shell Paster fait juste un ensemble des importations utiles, et pourrait facilement être dupliquée avec un script court et ipython puis %run myscript.py
Edit:
Après avoir regardé à la source, ce serait très difficile à faire (je me trompais sur les imports par défaut, il analyse aussi votre fichier de configuration), cependant si vous avez installé Pylons et iPython, alors le shell paster devrait utiliser ipython automagiquement. Vérifiez que les deux sont installés correctement et vérifiez que le shell paster n'utilise pas déjà iPython (il peut ressembler à une invite python normale).
Une option à essayer serait de créer un script sitecustomize.py. Si vous l'avez dans le même dossier que votre interpréteur Pascal, l'interpréteur Python devrait le charger au démarrage. Permettez-moi de clarifier, sitecustomize.py, s'il est trouvé, toujours chargé au démarrage de l'interpréteur. Donc, si vous le placez là où il peut être trouvé, idéalement quelque part qui ne se trouve que lorsque le shell de démarrage commence, alors vous devriez être capable d'ajouter vos importations et de les préparer.
Ceci est probablement votre meilleur pari. Si le shell du pasteur est une application empaquetée (à la py2exe), il devrait toujours fonctionner.
Voir aussi:
http://www.rexx.com/~dkuhlman/pylons_quick_site.html#using-an-ipython-embedded-shell http://pylonshq.com/project/pylonshq/ticket/428
Désolé, PYTHONSTARTUP ne fonctionne pas avec Paster. Pour autant que je sache, iPython (que j'utilise partout ailleurs) non plus. – mike
Que fait réellement le shell paster que vous voulez utiliser à la place d'ipython? J'ai supposé que vous pouviez simplement utiliser ipython à la place et avoir un script pour configurer l'environnement pratique que je suppose que le shell paster crée pour vous. – Singletoned
http://wiki.pylonshq.com/pages/viewpage.action?pageId=9011323 indique que iPython fonctionne, en fait, avec le shell de pasteur. – Christopher