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

yardgen

作者: fappelman 全部

未提供描述

详细信息

  • 2021.03.01.11.44.41
  • bitbucket.org
  • bitbucket.org
  • 3 年前
  • 2 小时前
  • 10 年前

安装量

  • 总计 1K
  • Win 185
  • Mac 565
  • Linux 269
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 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 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 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 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

说明文件

源代码
bitbucket.org

Yardgen:Sublime Text 3 的 Yard 生成器集成

作者:Fred Appelman 许可证:MIT 许可证 邮箱[email protected]

建议、问题或问题?

如果您对该软件有任何疑问、建议或问题,请通过在 bitbucket 添加问题或通过发送电子邮件给我来告知我。

概述

Yard 生成器是 Sublime Text 的一个插件,可以针对 Ruby 源代码生成内联 Yard 文档。然后,Yard 将其转换为正确的 HTML 文档集。

简单来说,您只需将光标放在您想进行文档化的方法、类、模块属性等处,然后按 CTRL+Return,并添加一个文档模板。接下来,您可以按 Tab 在模板中切换,并直接在模板中编写实际文档。这避免了记住文档格式的繁琐部分。目标是尽可能完整地生成文档,因此最终您将获得 100% 的文档覆盖而没有警告。

它甚至允许您在此阶段重命名方法参数。如果您像我一样,在完成编写软件时,您的参数名称可能不再完全涵盖功能。

如果您想添加额外的文档,您可以使用 Tab 完成度手动插入 Yard 构造。

兼容性

此软件包已在 ST3 上进行了测试,但没有理由它不能与 ST2 一起使用。

灵感

最初的想法来自由 revathskumar 编写的 sublime-yardoc 包,以及 TextMate 中的 yardoc 包。我毫无保留地复制了 tab 完成度。revathskumar 创建的包提供的功能不够充分,因此创建了此包。

安装

通过 Package Control

安装此软件包最简单的方法是通过 Package Control

  • 如果您刚刚安装了 Package Control,您可能需要重新启动 Sublime Text 3 才能执行下一部分。
  • 打开命令面板(OS X 上为 Command+Shift+p,Linux/Windows 上为 Control+Shift+p)。
  • 选择“Package Control: Install Package”(这可能需要几秒钟)
  • 列表出现时选择 Yardgen。
  • Package Control 将自动将 Yardgen 更新到最新版本。

没有 Package Control

转到您 Sublime Text Packages 目录,并使用以下命令克隆仓库

git clone [email protected]:fappelman/yardgen.git

您可以在 yardgen 目录中定期发出更新命令

git pull

这将使您的软件更新到最新版本。

使用方法

在方法定义处按 ctrl+enter

def simple_method
    # Method body
end

会得到以下结果

#
# <description>
#
#
# @return [<type>] <description>
#
def simple_method
    # Method body
end

功能列表

模块

module Example
end

将展开为

# Module Example provides <description>
#
# @author Joe Blog <[email protected]>
#
module Example
end

作者可以在设置文件中设置。如果未定义,则使用 USER 环境变量。

class Example
end

将展开为

# Class Example provides <description>
#
# @author Joe Blog <[email protected]>
#
module Class
end

构造函数(初始化)

构造函数是特殊的,因为它不需要返回类型,Yard 已知道如何处理此方法

def initialize(a,b)
end

将展开为

# <description>
#
# @param  [<type>] a <description>
# @param  [<type>] b <description>
#
def initialize(a,b)
end

一个普通的(类)方法

def normal_method(a,b)
end

将展开为

# <description>
#
# @param  [<type>] a <description>
# @param  [<type>] b <description>
#
# @return [<type>] <description>
#
def normal_method(a,b)
end

一个只读属性

attr_reader :read_only_attr

将展开为

# @!attribute [r] read
#   @return [<type] <description>
attr_reader :read_only_attr

一个可读/写属性

attr_accessor :read_write_attr

将展开为

# @!attribute [rw] read
#   @return [<type] <description>
attr_accessor :read_write_attr

一个只写属性

attr_writer :write_only_attr

将展开为

# @!attribute [w] write
#   @return [<type] <description>
attr_writer :write_only_attr

常量

CONSTANT="123"

将展开为

# @return [<type>] <description>
CONSTANT="123"

一个产生式方法

def method
    yield a,b
end

将展开为

#
# <description>
#
#
# @return [<type>] <description>
#
# @yieldparam [<type>] a <description>
# @yieldparam [<type>] b <description>
# @yieldreturn [<type>] <describe what yield should return>
def method
    yield a,b
end

如果没有传递参数,则仅存在 @yieldreturn

Rails

提供了一些有限的 Rails 功能。识别 field 关键字。

class RailsExample

    field :ab

end

将展开为

class RailsExample

    # Fields
    field :ab

end

以下关系 has_manyhas_onebelongs_tohas_and_belongs_to_manyembeds_oneembeds_many 将添加“关系”注释。

例如

class RailsExample

    has_many :ab

end

将展开为

class RailsExample

    # Associations
    has_many :ab

end

关键字 delegate 将添加注释“委托”。

例如

class RailsExample

    delegate :name, :to => :user

end

将展开为

class RailsExample

    # Delegate
    delegate :name, :to => :user

end

最后是验证 validatevalidatesvalidates_presence_ofvalidates_absence_of 将添加注释“验证”。

例如

class RailsExample

    validate :ab

end

将展开为

class RailsExample

    # Validations
    validate :ab

end

自动补全

以下列出了一些自动补全功能

设置

// Specify the @author. If not defined it will default to
// the login name through the environment variable USER
"author": "Joe Blog <[email protected]>",
// Add an initial empty line at the beginning of the comment
"initial_empty_line": true

许可

MIT 许可证(MIT)版权© 2014 Fred Appelman

特此授予任何获得此软件和相关文档副本(“软件”)的人以免费使用软件的权利,包括但又不仅限于使用、复制、修改、合并、出版、分发、再许可和/或出售软件副本的权利,并允许向软件提供方提供软件的人使用上述许可的权利,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于对适销性、特定用途适用性和非侵权性的保证。在任何情况下,作者或版权持有人均不对任何索赔、损害或其他责任负责,无论这种责任是基于合同、侵权或其他原因引起的,无论是否与软件或其使用或其他交易有关。