Cet article est un pense-bête de ma configuration.
J’utilise la version Sublime Text 2.0.1 Build 2217.
J’ai installé les plugins Sublime Text 2 suivants propres à mes besoins en Python :
- Package Control, le premier paquet à installer, car il vous permet d’installer les suivants,
- Pylinter,
- PySide,
- Python Test Runner,
- Sublime REPL,
- Sublime ROPE.
Lancer un script Python avec argument
L’argument est ici “update”. Il suffit de créer un “Build” customisé.
pythoncustom.sublime-build:
{ "cmd": ["python", "-u", "$file", "update"], "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", "selector": "source.python" }
Aider Pylint à trouver le path de votre script
Ajoutez le path menant à votre script ou à vos éventuelles bibliothèques.
Ici il s’agit d’ajouter le chemin au path Python : /home/julien/projectfolder.
Pylinter.sublime-setting:
{ // When versbose is 'true', various messages will be written to the console. // values: true or false "verbose": false, // The full path to the Python executable you want to // run Pylint with or simply use 'python'. "python_bin": "python", // The following paths will be added Pylint's Python path "python_path": [ "/home/julien/projectfolder"], // Optionally set the working directory "working_dir": null, // Full path to the lint.py module in the pylint package "pylint_path": null, // Optional full path to a Pylint configuration file "pylint_rc": null, // Set to true to automtically run Pylint on save "run_on_save": true, // Set to true to use graphical error icons "use_icons": false, // Ignore Pylint error types. Possible values: // "R" : Refactor for a "good practice" metric violation // "C" : Convention for coding standard violation // "W" : Warning for stylistic problems, or minor programming issues // "E" : Error for important programming issues (i.e. most probably bug) // "F" : Fatal for errors which prevented further processing s"ignore": [] }
Ajouter un snippet Bottle Python
bottle.sublime-snippet:
<snippet> <content><![CDATA[ import bottle @bottle.route('/') def index(): return "hello" if "__main__" == __name__: bottle.debug(True) bottle.run(host=${1:host}, port=${2:port}) ]]></content> <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> <!-- <tabTrigger>bottle</tabTrigger> --> <!-- Optional: Set a scope to limit where the snippet will trigger --> <!-- <scope>source.python</scope> -->