ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Angular​Inject

by ayamflow ST2

Convenient Sublime Text 2 Plugin to quickly inject a dependency into any AngularJS module

Details

Installs

  • Total 18K
  • Win 10K
  • OS X 5K
  • Linux 3K
Apr 23 Apr 22 Apr 21 Apr 20 Apr 19 Apr 18 Apr 17 Apr 16 Apr 15 Apr 14 Apr 13 Apr 12 Apr 11 Apr 10 Apr 9 Apr 8 Apr 7 Apr 6 Apr 5 Apr 4 Apr 3 Apr 2 Apr 1 Mar 31 Mar 30 Mar 29 Mar 28 Mar 27 Mar 26 Mar 25 Mar 24 Mar 23 Mar 22 Mar 21 Mar 20 Mar 19 Mar 18 Mar 17 Mar 16 Mar 15 Mar 14 Mar 13 Mar 12 Mar 11 Mar 10
Windows 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
OS X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Linux 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com

Sublime Text 2 Plugin : AngularInject

Convenient Sublime Text 2 Plugin to quickly inject a dependency into any AngularJS module

Installation

With Package Control:

Just search for AngularInject package and confirm. Tada !

Manually:

Download and extract into your ST2 Packages folder. That's it. This directory can be found on Mac OS at ~/Library/Application Support/Sublime Text 2/Packages/

Usage

Note: this plugin only work (yet) with inline annotation. It doesn't work (yet) with static injection (example: MyController.$inject = ['$scope', 'greeter'];).

By default the plugin can be called with Cmd + Alt + i (Mac OS) and Ctrl + Alt + i (Windows & Linux). You can also use the Command Palette to find AngularJS: Inject Dependency (any word should work).

You should see the quick panel (bottom of ST2 screen). Just type in the dependency you wish (for instance $window). Shazam !

Your module should looks like this :

angular.module('myApp.controllers', []).controller('MyCtrl', [ '$http', function($http) { ... }

and to something like this after the plugin action (notice the $window injection)

angular.module('myApp.controllers', []).controller('MyCtrl', [ '$http', '$window', function($http, $window) { ... }

If multiple modules exist on the same file, you will be ask to chose the one to inject.

Next Step

Know issues

A lot ?

Todo

  1. Allow to remove an injection from the module
  2. Make the plugin work with no min-safe version (MyCtrl.$inject[…] or controller('MyCtrl', function()…)3. inject)
  3. Insure that the modified line is really the [ function() from the module

Contributing

Feel free to modify, share, comment any bug or fork. Just drop a tweet if you do !