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
  • Mac 5K
  • Linux 3K
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 Mar 9 Mar 8 Mar 7 Mar 6 Mar 5 Mar 4 Mar 3 Mar 2 Mar 1 Feb 29 Feb 28 Feb 27 Feb 26 Feb 25 Feb 24 Feb 23 Feb 22 Feb 21 Feb 20 Feb 19 Feb 18 Feb 17 Feb 16 Feb 15 Feb 14
Windows 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
Mac 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 !