ctrl+shift+p filters: :st2 :st3 :win :osx :linux
浏览

PhpCodeGen

bteryek 全部

PhpCodeGen是一个Sublime Text 2和3插件,它通过简单的缩写语法生成面向对象代码。

详情

安装

  • 总数 17K
  • Win 11K
  • Mac 2K
  • Linux 3K
8月6日 8月5日 8月4日 8月3日 8月2日 8月1日 7月31日 7月30日 7月29日 7月28日 7月27日 7月26日 7月25日 7月24日 7月23日 7月22日 7月21日 7月20日 7月19日 7月18日 7月17日 7月16日 7月15日 7月14日 7月13日 7月12日 7月11日 7月10日 7月9日 7月8日 7月7日 7月6日 7月5日 7月4日 7月3日 7月2日 7月1日 6月30日 6月29日 6月28日 6月27日 6月26日 6月25日 6月24日 6月23日
Windows 0 0 1 0 3 0 0 0 0 0 0 0 1 0 0 0 0 0 3 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0
Mac 1 1 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 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 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

说明文件

源代码
bitbucket.org

PhpCodeGen

PhpCodeGen是一个Sublime Text插件,它通过简单的缩写语法生成面向对象代码。

新功能:支持Sublime Text 2和3

之前

之后

简介

使用PhpCodeGen for Sublime Text,您可以通过几行代码极快地生成完全自定义的带有docblocks的面向对象代码。使用PhpCodeGen,您可以生成成百上千个格式正确的类、接口、属性、常量和方法的占位符。

从Package Control安装

  1. 搜索PhpCodeGen

手动安装

  1. 在包目录中创建一个名为“PhpCodeGen”的文件夹
  2. 下载最新标签,解压缩并将文件放置在“PhpCodeGen”目录中。

自动完成

将语法模式设置为php,并开始键入'@',建议将开始填充。

视频教程

我在youtube上简要介绍了如何使用此插件并上传了视频。 http://www.youtube.com/watch?v=WV_NhVxrYwY

警告

所有命令前必须没有空格或制表符才能被解析。 PhpCodeGen会自动正确缩进命令输出。

这是正确的,将被解析

@class test

这是错误的,将不会被解析

@class test

如果选项需要一个参数,请确保选项参数之前有一个空格

这是正确的

@class -tag MyTagGroupName

这是错误的

@class -tagMyTagGroupName

默认设置

PhpCodeGen包含以下默认设置

{

    "docblockTagGroup": {

    },

    "debugMode": true,
    "autoGenerateDockBlocks": true,

    "numberOfSpaces": 0,

    "newLinesAfterClassDeclaration": 0,
    "newLinesBeforeClassClosingBrace": 1,

    "newLinesAfterMethodDeclaration": 2,
    "newLinesBeforeMethodClosingBrace": 2,

    "newLinesAboveClassDocBlock": 1,
    "newLinesBelowClassDocBlock": 1,

    "newLinesAboveConstantDockBlock": 1,
    "newLinesBelowConstantDockBlock": 1,

    "newLinesAbovePropertyDockBlock": 1,
    "newLinesBelowPropertyDockBlock": 1,

    "newLinesAboveMethodDockBlock": 2,
    "newLinesBelowMethodDockBlock": 1,

    "defaultMethodVisibility": "public",
    "defaultPropertyVisibility": "protected",

    "openingCurlyBraceOnSameLine": true

}

命令API

@ class | @ c

生成一个类。最后一个参数是类名。

基本示例

@class MyClass

输出

/**
 * MyClass documentation goes here...
 */

class MyClass {
选项

抽象类

-a

标记组

将用户定义的标签应用于docblock

-tag

类扩展其他类

-e ExtendedClassName

实现接口(s)。您可以使用逗号指定多个接口,如下所示。但是,多个接口之间不能有空格。

-i Interface1,Interface2

示例

@class -a -e ExtendedClass -i Interface1,Interface2 MyClass

输出

/**
 * MyClass
 */

abstract class MyClass extends ExtendedClass implements Interface1, Interface2 {

@ endClass | @ ec

结束类的声明并创建关闭的括号

@ interface | @ i

生成接口。您可以使用逗号指定多个接口继承,如下所示。但是,多个接口之间不能有空格。

选项

将用户定义的标签应用于docblock

-tag

扩展接口

-e

示例

@interface -e InterfaceA,InterfaceB MyInterface

输出

/**
 * MyInterface documentation goes here...
 */

interface MyInterface extends InterfaceA, InterfaceB {

@ endInterface | @ ei

结束接口声明并创建关闭的括号

@ const

创建一个常量

基本示例

@const AGE 15

输出

/**
 * AGE
 */

const AGE = 15;
选项

将常量值用引号括起来

-q

示例

@const -q NAME JOE SHMO

引号输出

/**
 * NAME
 */

const NAME = 'JOE SHMO';

将用户定义的标签应用于docblock

-tag

@ property | @ p

创建属性或类变量。属性的可见性将默认为在您的设置中定义的内容。

基本示例

@property strName

输出

/**
 * strName
 * @var datatype
 */

protected $strName;
选项

可见性:public | protected | private

-v

将用户定义的标签应用于docblock

-tag

返回类型

-t

静态属性

-s

为属性生成setter方法

-set

为属性生成getter方法

-get

高级示例

@property -v private -t int -set -get myAge

输出

/**
 * myAge
 * @var int
 */

private $myAge;

/**
 * setMyAge
 * @param int $value
 * @return void
 */

public function setMyAge(int $value) {
    $this->myAge = $value;
}

/**
 * getMyAge
 * @return int
 */

public function getMyAge() {
    return $this->myAge;
}

@ method | @ m

创建类方法

基本示例

@method init

输出

/**
 * init
 * @return void
 */

public function init() {

}

可见性:public | protected | private

-v

将用户定义的标签应用于docblock

-tag

静态方法

-s

抽象方法

-a

最终方法

-f

指定Docblock的返回类型

-r

方法参数:请参阅 如何在@ method和@ function命令中使用-p

-p

高级示例

@method -s -v protected -f -p {DataObject:data = null} init

输出

/**
 * init
 * @param DataObject $data = null
 * @return void
 */

final protected static function init(DataObject $data = null) {

}

@ function | @ f

创建标准函数

基本示例

@function myFunc

输出

/**
 * test
 * @return void
 */

function test() {

}

高级示例

@function -p {User:objUser = null} -r object initWithUser

输出

/**
 * initWithUser
 * @param User $objUser = null
 * @return object
 */

function initWithUser(User $objUser = null) {

}

指定Docblock的返回类型

-r

将用户定义的标签应用于docblock

-tag

静态方法

-s

函数参数:请参阅 如何在@ method和@ function命令中使用-p

-p

@ php

创建开启的php标签

@endPhp

创建关闭的php标签

设置API

不要修改默认设置!只在用户设置中做出更改

大多数设置都涉及代码生成模板。您可以将这些设置复制到用户设置中并按喜好修改。

许多设置是自解释的。以下讨论的是那些可能有点不清楚它们做什么的设置。

debugMode - 将调试信息记录到控制台

numberOfSpaces - 适用于常量属性。它指的是docblock和常量/属性声明之间的空间。

docblockTagGroup - 定义用于命令的docblock的用户定义标签。请参阅 如何使用 -tag

如何在@ method和@ function命令中使用-p

此选项用于生成方法或函数的参数。必须在括号内指定参数,并且每个参数必须通过逗号分隔。

支持类型提示和默认值。如果您不包含参数值的'$',PhpCodeGen将自动添加。

示例

@method -p {TypeHint:localVar, $localVar2, localVar3='default value'} init

输出

/**
 * init
 * @param TypeHint $localVar
 * @param $localVar2
 * @param $localVar3 = 'default value'
 * @return void
 */

public function init(TypeHint $localVar, $localVar2, $localVar3 = 'default value') {

}

如何使用-tag

tag选项允许您将自定义docblock标签注入到命令的docblock中。这通常与用户设置中的“docblockTagGroup”一起使用。tag选项可以应用于除以下所有命令外

  • @ php
  • @ endPhp

-tag接受一个参数,该参数是docblockTagGroup中的

每个命令只能应用一个docblock标签组。

在PhpCodeGen用户设置中的“docblockTagGroup”对象下定义您的自定义标签组。

示例

"docblockTagGroup": {

    "author": 
    [
        {
            "tag": "@package",
            "value": "MyPackage"
        },
        {
            "tag": "@author",
            "value": "Your Name <[email protected]>"
        }
    ],
    "method":
    [
        {
            "tag": "@since",
            "value": "beta"
        }
    ]

}

在这里我们有两组docblock标签组:“author”和“method”

如果您想给命令添加额外的dockblock标签组,可以这样操作

@class -tag author MyClass

输出

/**
 * MyClass
 * @package Mecdata
 * @author Your Name <[email protected]>
 */

class MyClass {

为PhpCodeGen创建快捷键

  1. 打开Sublime Text
  2. 转到首选项->键盘映射->用户
  3. 将快捷键添加到键盘映射中

示例

{"keys": ["ctrl+t"], "command": "php_code_gen"},

查看我的其他插件