作为git提交工作流程的一部分,自动生成ruby文档的最佳实践是什么?每当提交合并到master时,我们都会自动生成新文档.
我不记得我在哪里学习!~了String班级的方法.但是我知道它将字符串与正则表达式进行比较并检查字符串是否与正则表达式不匹配.请参阅下面的示例.
C:\>irb
irb(main):001:0> "abba" =~ /(\w)(\w)\2\1/i
=> 0
irb(main):002:0> "xxxx" =~ /(\w)(\w)\2\1/i
=> 0
irb(main):003:0> "asdf" =~ /(\w)(\w)\2\1/i
=> nil
irb(main):004:0> "asdf" !~ /(\w)(\w)\2\1/i
=> true
irb(main):005:0> "asdf" !~ /asdf/i
=> false
irb(main):006:0>
Run Code Online (Sandbox Code Playgroud)
我想找到方法的详细信息,但在双方的RDoc的我找不到它String和Regexp.有人可以帮忙吗?
谢谢.
我正在使用 rdoc 记录 Ruby 项目,并且发现了 darkfish rdoc 格式化程序。我真的很喜欢它,但:call-seq:标签不再起作用了。相反,它将文字字符串放入:call-seq:文档中,然后将调用序列本身格式化为代码块。我不想只从代码中取出所有 :call-seq: 块,因为我的大部分文档需要引用块中给出的实例名称和参数名称:call-seq:。有没有其他人有这个问题?我应该做什么,有解决方法吗?我很确定:call-seq:标签在我使用默认格式化程序之前可以工作,但我不能确定,因为我不知道如何返回生成原始格式(调用 rdoc 时不带任何参数,除了文件生成现在,即使我删除了 doc 文件夹,darkfish 也会输出!)有谁知道如何解决这个问题?
出乎意料的是,我开始收到以下错误消息:
(in /Users/me/.rvm/gems/ruby-1.9.3-p125@mysql2/gems/rails-0.9.5)
rake aborted!
ERROR: 'rake/rdoctask' is obsolete and no longer supported. Use 'rdoc/task' (available in RDoc 2.4.2+) instead.
/Users/me/.rvm/gems/ruby-1.9.3-p125@mysql2/gems/rails-0.9.5/Rakefile:3:in `<top (required)>'
Run Code Online (Sandbox Code Playgroud)
当我做rails s(在我的开发环境终端--Mac Mountain Lion).这个应用程序正在生产中,所以我去了生产环境,做了一个捆绑显示,并修改了我的Gemfile,以对这些gems版本进行编码.
这是我现在在我的本地开发环境中的内容(产生错误消息的原因).
actionmailer (3.2.3)
actionpack (3.2.3)
activemodel (3.2.3)
activerecord (3.2.3)
activeresource (3.2.3)
activesupport (3.2.3)
annotate (2.4.1.beta1)
arel (3.0.2)
bcrypt-ruby (3.0.1)
bootstrap-datepicker-rails (0.6.15)
bootstrap-sass (2.0.2)
builder (3.0.4)
bundler (1.1.3)
coffee-rails (3.2.2)
coffee-script (2.2.0)
coffee-script-source (1.6.1)
commonjs (0.2.6)
devise (2.0.4)
diff-lcs (1.1.3)
erubis (2.7.0)
execjs (1.4.0)
factory_girl (3.2.0)
factory_girl_rails (3.2.0)
hike (1.2.1)
i18n (0.6.4)
journey (1.0.4) …Run Code Online (Sandbox Code Playgroud) 当尝试创建我的 Rails 控制器和使用的参数的文档时,我遇到了困难,因为yard似乎期望这些参数作为方法参数存在。
# Renders a list of items
# @param params [Hash] the search parameters
# @option params [String] 'info' Only return items with this specific info
# @option params [Integer] 'limit' Only return <limit> items
def index
# ... do something smart here
end
Run Code Online (Sandbox Code Playgroud)
因此,对于此文档场将发出警告并且不会创建文档:
[warn]: @param tag has unknown parameter name: params
in file `app/controllers/items_controller.rb' near line 8
Run Code Online (Sandbox Code Playgroud)
有没有办法使用yard来记录这些类型的项目,或者我需要手动执行此操作?
我想在 rubydoc 中为参数或变量或@return. (一定是RDoc?..)
主要原因是让 RubyMine(或其他 IDE)以正确的方式支持自动完成功能、可点击方法、重构等。
在 PHP 中将如下所示:
/**
* @param array $items
* @param Filter[] $filters
* @return Result[]
*/
function filter($items, $filters) {}
Run Code Online (Sandbox Code Playgroud)
我只是不确定它是否可以在 RubyMine 中以类似的方式工作:
##
# @param [Array] items
# @param [Filter[]] filters
# @return [ResultClass[]]
#
def filter(items, filters); end
Run Code Online (Sandbox Code Playgroud)
PHP 中的额外示例:
class My
{
public $name;
}
/**
* @return My[]
*/
function foo()
{
// Similar code here
//return [new My(), new My()];
}
function show()
{
foreach (foo() …Run Code Online (Sandbox Code Playgroud)