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

UMD snippets

by garrettn ST2/ST3

JavaScript Universal Module Definition snippets for Sublime Text

Details

Installs

  • Total 249
  • Win 89
  • OS X 117
  • Linux 43
Oct 17 Oct 16 Oct 15 Oct 14 Oct 13 Oct 12 Oct 11 Oct 10 Oct 9 Oct 8 Oct 7 Oct 6 Oct 5 Oct 4 Oct 3 Oct 2 Oct 1 Sep 30 Sep 29 Sep 28 Sep 27 Sep 26 Sep 25 Sep 24 Sep 23 Sep 22 Sep 21 Sep 20 Sep 19 Sep 18 Sep 17 Sep 16 Sep 15 Sep 14 Sep 13 Sep 12 Sep 11 Sep 10 Sep 9 Sep 8 Sep 7 Sep 6 Sep 5 Sep 4 Sep 3
Windows 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 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 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
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 UMD Snippets

JavaScript snippets for the Universal Module Definition.

Installation

Use Package Control. Search for “UMD Snippets.”

Alternatively, clone this repository into your Packages folder.

Usage

Each snippet is described below, with a title that you can search for in the Command Palette (prefixed by “UMD—”) and with a tab trigger.

The snippets mirror (with a couple tiny differences) the templates provided in the UMD repo, with fields for making it easier to configure module names and dependencies. For detailed explanations of each UMD variant, see the corresponding template in the UMD repo.

AMD or browser global

(function (root, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['b'], factory);
    } else {
        // Browser globals
        root.amdWeb = factory(root.b);
    }
}(this, function (b) {

    function amdWeb () {

    }

    return amdWeb;
}));

Tab trigger: umda

Fields:

  1. module name
  2. factory dependencies
  3. module parameters
  4. module code

Reference: amdWeb

AMD with global export

(function (root, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['b'], function (b) {
            // Also create a global in case some scripts
            // that are loaded still are looking for
            // a global even when an AMD loader is in use.
            return (root.amdWebGlobal = factory(b));
        });
    } else {
        // Browser globals
        root.amdWebGlobal = factory(root.b);
    }
}(this, function (b) {

    function amdWebGlobal () {

    }

    return amdWebGlobal;
}));

Tab trigger: umdag

Fields:

  1. module name
  2. factory dependencies
  3. module parameters
  4. module code

Reference: amdWebGlobal

CommonJS adapter

// Help Node out by setting up define.
if (typeof exports === 'object' && typeof define !== 'function') {
    define = function (factory) {
        factory(require, exports, module);
    };
}

define(function (require, exports, module) {
    var b = require('b');

    // Only attach properties to the exports object to define
    // the module's properties.
    exports.action = function () {

    };
});

Tab trigger: umdca

Fields:

  1. name of property on the exports object
  2. optional dependency
  3. module parameters
  4. module code

Reference: commonjsAdapter

CommonJS strict

(function (root, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['exports', 'b'], factory);
    } else if (typeof exports === 'object') {
        // CommonJS
        factory(exports, require('b'));
    } else {
        // Browser globals
        factory((root.commonJsStrict = {}), root.b);
    }
}(this, function (exports, b) {

    // attach properties to the exports object to define
    // the exported module properties.
    exports.action = function () {

    };
}));

Tab trigger: umdcs

Fields:

  1. global module name
  2. name of property on exports object
  3. factory dependencies
  4. module parameters
  5. module code

Reference: commonjsStrict

CommonJS strict with global

(function (root, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['exports', 'b'], function (exports, b) {
            factory((root.commonJsStrictGlobal = exports), b);
        });
    } else if (typeof exports === 'object') {
        // CommonJS
        factory(exports, require('b'));
    } else {
        // Browser globals
        factory((root.commonJsStrictGlobal = {}), root.b);
    }
}(this, function (exports, b) {

    // attach properties to the exports object to define
    // the exported module properties.
    exports.action = function () {

    };
}));

Tab trigger: umdcg

Fields:

  1. global module name
  2. name of property on exports object
  3. factory dependencies
  4. module parameters
  5. module code

Reference: commonjsStrictGlobal

jQuery plugin

(function (factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['jquery'], factory);
    } else {
        // Browser globals
        factory(jQuery);
    }
}(function ($) {
    $.fn.jqueryPlugin = function () {

    };
}));

Tab trigger: umdj

Fields:

  1. plugin name
  2. factory dependencies
  3. plugin parameters
  4. plugin code

Reference: jqueryPlugin

jQuery plugin with CommonJS

(function (factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['jquery'], factory);
    } else {
        // Browser globals
        factory(jQuery);
    }
}(function ($) {
    $.fn.jqueryPlugin = function () {

    };
}));

Tab trigger: umdjc

Fields:

  1. plugin name
  2. factory dependencies
  3. plugin parameters
  4. plugin code

Reference: jqueryPluginCommonjs

Node adapter

// Help Node out by setting up define.
if (typeof module === 'object' && typeof define !== 'function') {
    var define = function (factory) {
        module.exports = factory(require, exports, module);
    };
}

define(function (require, exports, module) {
    var b = require('b');

    return function () {

    };
});

Tab trigger: umdn

Fields:

  1. optional dependency
  2. module parameters
  3. module code

Reference: nodeAdapter

AMD, Node, or browser global

(function (root, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['b'], factory);
    } else if (typeof exports === 'object') {
        // Node. Does not work with strict CommonJS, but
        // only CommonJS-like enviroments that support module.exports,
        // like Node.
        module.exports = factory(require('b'));
    } else {
        // Browser globals (root is window)
        root.returnExports = factory(root.b);
    }
}(this, function (b) {

    function returnExports () {

    }

    return returnExports;
}));

Tab trigger: umdr

Fields:

  1. module name
  2. factory dependencies
  3. module parameters
  4. module code

Reference: returnExports

AMD with global, Node, or global

(function (root, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['b'], function (b) {
            // Also create a global in case some scripts
            // that are loaded still are looking for
            // a global even when an AMD loader is in use.
            return (root.returnExportsGlobal = factory(b));
        });
    } else if (typeof exports === 'object') {
        // Node. Does not work with strict CommonJS, but
        // only CommonJS-like enviroments that support module.exports,
        // like Node.
        module.exports = factory(require('b'));
    } else {
        // Browser globals (root is window)
        root.returnExportsGlobal = factory(root.b);
    }
}(this, function (b) {

    function returnExportsGlobal () {

    }

    return returnExportsGlobal;
}));

Tab trigger: umdrg

Fields:

  1. module name
  2. factory dependencies
  3. module parameters
  4. module code

Reference: returnExports

Contributing

Pull requests for improving the snippets are welcome. If you want to make changes to the module definitions themselves, please send those requests to the UMD repo.

License

The Sublime UMD Snippets package is released under the MIT License. See LICENSE.txt for details.