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

Magic​Templates

by vovayatsyuk ST3

Magically simple PHP templates

Details

  • 1.3.0
  • github.​com
  • github.​com
  • 5 months ago
  • 16 minutes ago
  • 10 months ago

Installs

  • Total 261
  • Win 161
  • OS X 64
  • Linux 36
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 Sep 2 Sep 1 Aug 31 Aug 30 Aug 29 Aug 28 Aug 27 Aug 26 Aug 25 Aug 24 Aug 23 Aug 22 Aug 21 Aug 20 Aug 19 Aug 18 Aug 17 Aug 16 Aug 15 Aug 14 Aug 13 Aug 12 Aug 11 Aug 10 Aug 9 Aug 8 Aug 7 Aug 6
Windows 0 0 1 1 0 1 1 0 0 0 0 2 1 2 0 1 1 0 0 1 0 1 0 1 1 0 0 0 2 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1
OS X 0 0 1 0 0 0 0 0 0 2 1 1 0 0 0 1 0 0 1 0 0 1 1 1 3 1 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0
Linux 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 3 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0

Readme

Source
raw.​githubusercontent.​com

✨ MagicTemplates ✨

Build Status

Tired to type the same boilerplate code for each new file? MagicTemplates plugin automatically inserts autogenerated content for all known files. And it's not just a static snippet, but a magically generated working code!

# 1. You create a new `Menu.php` file in swissup/module-navigationpro/src/Model/ResourceModel/

# 2. MagicTemplates is doing its job:

 ∧_∧
(。・ω・。)つ━☆・*。
⊂   ノ    ・゜+.
しーJ   °。+ *´¨)
  .· ´¸.·*´¨) ¸.·*¨)
(¸.·´ (¸.·’* ⛧

<?php

namespace Swissup\Navigationpro\Model\ResourceModel;

use Magento\Framework\Model\ResourceModel\Db\AbstractDb;

class Menu extends AbstractDb
{
    /**
     * Model initialization
     *
     * @return void
     */
    protected function _construct()
    {
        $this->_init('swissup_navigationpro_menu', 'menu_id');
    }
}

See? And that was a single example, while module supports much much more!

Installation

  1. Run “Package Control: Install Package” command
  2. Type MagicTemplates and press Enter

Configuration

Open Sublime Preferences and add mt- trigger for xml files:

"auto_complete_triggers": [
    [keep_original_triggers],
    {"selector": "text.xml", "characters": "mt-"}
],

Examples

PHP Template

Template for Magento2 resource model

PHP Snippets

Template and snippets for Magento2 plugin

XML Template and Snippets

Template and snippets for Magento2 form ui_component

How it works?

Templates

When you create a file, plugin do the following things:

  1. Searches for the closest composer.json file (This approach allows to work with multiple projects in the same window)
  2. Detects project type, autoload parameters, and other useful information by its content
  3. If the project type matches one of the known types, plugin searches for the template to use. If found - contents is automatically generated and inserted into the file.
- Here is a pretty simple template for
  [Magento's Collection](https://github.com/vovayatsyuk/sublime-magic-templates/blob/master/templates/magento2/files/Model/ResourceModel/Entity/Collection.php.txt)
- Here is a little bigger template for
  [Magento's Form](https://github.com/vovayatsyuk/sublime-magic-templates/blob/master/templates/magento2/files/view/adminhtml/ui_component/form.xml.txt)

Snippets (beta)

Sublime's native snippets mechanism doesn't allow to filter out available snippets depending on filename pattern. MagicTemplates plugin allows to create such kind of dynamic snippets!

This feature allows to reduce the number of shown snippets for various files. For example, when working with Magento's layout.xml file MagicTemplates will never show you autocompletions written for ui_component.xml files.

Additionally, these snippets fully supports MagicTemplates variables which allows to generate more code that simply works.

Known Applications

  • Laravel
  • Magento1
  • Magento2
  • And a few templates and snippets for unknown php applications