2011-12-14 526 views

回答

1

我用這個shell腳本:

#!/bin/sh 
#or you process here 
PROCESS='ruby */yard server' 
PID=`pidof $PROCESS` 

start() { 
    yard server & 
} 

stop() { 
    if [ "$PID" ];then 
    kill -KILL $PID 
    echo 'yard is stopped' 
    fi 
} 

case "$1" in 
start) 
    start 
;; 
stop) 
    stop 
;; 
restart) 
    stop 
    start 
;; 
*) 
echo Usage: $0 [start|stop|restart] 
;; 
esac 

而且在哈德森:yard doc && ./yard.sh restart

1

我使用nginx的和乘客,服務於這個小小的網絡應用:

# ~/Documentation/config.ru 
require 'rubygems' 
require 'yard' 

libraries = {} 
gems = Gem.source_index.find_name('').each do |spec| 
    libraries[spec.name] ||= [] 
    libraries[spec.name] << YARD::Server::LibraryVersion.new(spec.name, spec.version.to_s, nil, :gem) 
end 

run YARD::Server::RackAdapter.new libraries 

的Nginx虛擬主機:

# /opt/nginx/config/sites-enabled/gems.doc 
server { 
    listen 80; 
    server_name gems.doc; 
    root /Users/your-user/Documentation/yard/public; 
    rails_env development; 
    passenger_enabled on; 
} 

更多在這個帖子:http://makarius.me/offline-rails-ruby-jquery-and-gems-docs-with

2

我發現最簡單的選項只需在我的Rails應用程序中從/ public鏈接生成的文檔文件夾即可。你只需要確保js/css資源可以通過相同的路徑訪問。

例如:

$ cd <railsapp> 
$ ls 
Gemfile 
app/ 
.. 
public/ 
doc/ <- Folder that contains the html files generated by yard 
$ cd public/ 
$ ln -s ../doc/ docs 

這將有助於您的文檔在/docs/index.html的類/方法/文件基於

JavaScript的搜索仍然有效,因爲它是基於JavaScript。但是,出現在頂部的搜索不會出現在此方法中。不過,我發現基於JavaScript的搜索足夠了。

相關問題