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 254
  • Win 90
  • OS X 121
  • Linux 43
Dec 15 Dec 14 Dec 13 Dec 12 Dec 11 Dec 10 Dec 9 Dec 8 Dec 7 Dec 6 Dec 5 Dec 4 Dec 3 Dec 2 Dec 1 Nov 30 Nov 29 Nov 28 Nov 27 Nov 26 Nov 25 Nov 24 Nov 23 Nov 22 Nov 21 Nov 20 Nov 19 Nov 18 Nov 17 Nov 16 Nov 15 Nov 14 Nov 13 Nov 12 Nov 11 Nov 10 Nov 9 Nov 8 Nov 7 Nov 6 Nov 5 Nov 4 Nov 3 Nov 2 Nov 1
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
OS X 0 0 0 0 1 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 0 0 0 0 1
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 1 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.