rdoc 8.0.0 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CONTRIBUTING.md +1 -3
- data/RI.md +75 -75
- data/exe/rdoc +2 -2
- data/lib/rdoc/code_object/alias.rb +71 -69
- data/lib/rdoc/code_object/any_method.rb +305 -303
- data/lib/rdoc/code_object/attr.rb +150 -148
- data/lib/rdoc/code_object/class_module.rb +798 -792
- data/lib/rdoc/code_object/constant.rb +175 -173
- data/lib/rdoc/code_object/context/section.rb +142 -138
- data/lib/rdoc/code_object/context.rb +926 -958
- data/lib/rdoc/code_object/extend.rb +7 -5
- data/lib/rdoc/code_object/include.rb +7 -5
- data/lib/rdoc/code_object/method_attr.rb +326 -319
- data/lib/rdoc/code_object/mixin.rb +97 -95
- data/lib/rdoc/code_object/normal_class.rb +77 -78
- data/lib/rdoc/code_object/normal_module.rb +61 -59
- data/lib/rdoc/code_object/require.rb +23 -39
- data/lib/rdoc/code_object/single_class.rb +21 -19
- data/lib/rdoc/code_object/top_level.rb +212 -219
- data/lib/rdoc/code_object.rb +305 -303
- data/lib/rdoc/comment.rb +275 -273
- data/lib/rdoc/cross_reference.rb +192 -190
- data/lib/rdoc/encoding.rb +105 -103
- data/lib/rdoc/erb_partial.rb +13 -11
- data/lib/rdoc/erbio.rb +29 -27
- data/lib/rdoc/generator/aliki.rb +161 -153
- data/lib/rdoc/generator/darkfish.rb +645 -635
- data/lib/rdoc/generator/json_index.rb +233 -229
- data/lib/rdoc/generator/markup.rb +164 -146
- data/lib/rdoc/generator/pot/message_extractor.rb +57 -51
- data/lib/rdoc/generator/pot/po.rb +52 -51
- data/lib/rdoc/generator/pot/po_entry.rb +138 -132
- data/lib/rdoc/generator/pot.rb +85 -81
- data/lib/rdoc/generator/ri.rb +23 -19
- data/lib/rdoc/generator/template/aliki/DESIGN.md +6 -4
- data/lib/rdoc/generator/template/aliki/_footer.rhtml +1 -1
- data/lib/rdoc/generator/template/aliki/_head.rhtml +10 -10
- data/lib/rdoc/generator/template/aliki/_header.rhtml +29 -44
- data/lib/rdoc/generator/template/aliki/_sidebar_search.rhtml +4 -4
- data/lib/rdoc/generator/template/aliki/css/rdoc.css +207 -178
- data/lib/rdoc/generator/template/aliki/js/aliki.js +60 -84
- data/lib/rdoc/generator/template/darkfish/_footer.rhtml +1 -1
- data/lib/rdoc/generator.rb +48 -46
- data/lib/rdoc/i18n/locale.rb +99 -95
- data/lib/rdoc/i18n/text.rb +109 -105
- data/lib/rdoc/i18n.rb +7 -5
- data/lib/rdoc/markdown/byte_runtime.rb +80 -0
- data/lib/rdoc/markdown.kpeg +15 -11
- data/lib/rdoc/markdown.rb +40 -47
- data/lib/rdoc/markup/block_quote.rb +12 -8
- data/lib/rdoc/markup/document.rb +127 -123
- data/lib/rdoc/markup/formatter.rb +219 -215
- data/lib/rdoc/markup/include.rb +33 -29
- data/lib/rdoc/markup/indented_paragraph.rb +37 -33
- data/lib/rdoc/markup/inline_parser.rb +281 -277
- data/lib/rdoc/markup/list.rb +80 -88
- data/lib/rdoc/markup/list_item.rb +73 -85
- data/lib/rdoc/markup/paragraph.rb +23 -19
- data/lib/rdoc/markup/parser.rb +501 -497
- data/lib/rdoc/markup/pre_process.rb +283 -279
- data/lib/rdoc/markup/raw.rb +2 -2
- data/lib/rdoc/markup/rule.rb +16 -12
- data/lib/rdoc/markup/to_ansi.rb +143 -139
- data/lib/rdoc/markup/to_bs.rb +72 -68
- data/lib/rdoc/markup/to_html.rb +594 -565
- data/lib/rdoc/markup/to_html_crossref.rb +234 -230
- data/lib/rdoc/markup/to_html_snippet.rb +232 -227
- data/lib/rdoc/markup/to_joined_paragraph.rb +36 -32
- data/lib/rdoc/markup/to_label.rb +63 -59
- data/lib/rdoc/markup/to_markdown.rb +212 -208
- data/lib/rdoc/markup/to_rdoc.rb +336 -332
- data/lib/rdoc/markup/to_table_of_contents.rb +66 -62
- data/lib/rdoc/markup/to_test.rb +60 -56
- data/lib/rdoc/markup/to_tt_only.rb +84 -80
- data/lib/rdoc/markup/verbatim.rb +62 -58
- data/lib/rdoc/markup.rb +198 -196
- data/lib/rdoc/options.rb +1063 -1061
- data/lib/rdoc/parser/c.rb +1039 -1037
- data/lib/rdoc/parser/changelog.rb +319 -315
- data/lib/rdoc/parser/markdown.rb +17 -13
- data/lib/rdoc/parser/rbs.rb +239 -235
- data/lib/rdoc/parser/rd.rb +17 -13
- data/lib/rdoc/parser/ruby.rb +1245 -1124
- data/lib/rdoc/parser/ruby_colorizer.rb +263 -213
- data/lib/rdoc/parser/simple.rb +31 -27
- data/lib/rdoc/parser/text.rb +12 -8
- data/lib/rdoc/parser.rb +228 -220
- data/lib/rdoc/rbs_helper.rb +1 -1
- data/lib/rdoc/rd/inline.rb +57 -53
- data/lib/rdoc/rd.rb +90 -88
- data/lib/rdoc/rdoc.rb +500 -491
- data/lib/rdoc/ri/driver.rb +1140 -1135
- data/lib/rdoc/ri/formatter.rb +7 -3
- data/lib/rdoc/ri/paths.rb +140 -136
- data/lib/rdoc/ri/servlet.rb +354 -350
- data/lib/rdoc/ri/store.rb +4 -2
- data/lib/rdoc/ri/task.rb +55 -51
- data/lib/rdoc/ri.rb +14 -12
- data/lib/rdoc/rubygems_hook.rb +183 -181
- data/lib/rdoc/server.rb +349 -347
- data/lib/rdoc/stats/normal.rb +46 -42
- data/lib/rdoc/stats/quiet.rb +39 -35
- data/lib/rdoc/stats/verbose.rb +35 -31
- data/lib/rdoc/stats.rb +365 -363
- data/lib/rdoc/store.rb +888 -902
- data/lib/rdoc/task.rb +260 -256
- data/lib/rdoc/text.rb +135 -133
- data/lib/rdoc/token_stream.rb +101 -93
- data/lib/rdoc/tom_doc.rb +203 -201
- data/lib/rdoc/version.rb +1 -1
- metadata +4 -5
- data/lib/rdoc/markdown/literals.kpeg +0 -21
- data/lib/rdoc/markdown/literals.rb +0 -454
|
@@ -1,141 +1,147 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
2
|
+
module RDoc
|
|
3
|
+
module Generator
|
|
4
|
+
class POT
|
|
5
|
+
##
|
|
6
|
+
# A PO entry in PO
|
|
7
|
+
|
|
8
|
+
class POEntry
|
|
9
|
+
|
|
10
|
+
# The msgid content
|
|
11
|
+
attr_reader :msgid
|
|
12
|
+
|
|
13
|
+
# The msgstr content
|
|
14
|
+
attr_reader :msgstr
|
|
15
|
+
|
|
16
|
+
# The comment content created by translator (PO editor)
|
|
17
|
+
attr_reader :translator_comment
|
|
18
|
+
|
|
19
|
+
# The comment content extracted from source file
|
|
20
|
+
attr_reader :extracted_comment
|
|
21
|
+
|
|
22
|
+
# The locations where the PO entry is extracted
|
|
23
|
+
attr_reader :references
|
|
24
|
+
|
|
25
|
+
# The flags of the PO entry
|
|
26
|
+
attr_reader :flags
|
|
27
|
+
|
|
28
|
+
##
|
|
29
|
+
# Creates a PO entry for +msgid+. Other values can be specified by
|
|
30
|
+
# +options+.
|
|
31
|
+
|
|
32
|
+
def initialize(msgid, options = {})
|
|
33
|
+
@msgid = msgid
|
|
34
|
+
@msgstr = options[:msgstr] || ""
|
|
35
|
+
@translator_comment = options[:translator_comment]
|
|
36
|
+
@extracted_comment = options[:extracted_comment]
|
|
37
|
+
@references = options[:references] || []
|
|
38
|
+
@flags = options[:flags] || []
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
##
|
|
42
|
+
# Returns the PO entry in PO format.
|
|
43
|
+
|
|
44
|
+
def to_s
|
|
45
|
+
entry = ''
|
|
46
|
+
entry += format_translator_comment
|
|
47
|
+
entry += format_extracted_comment
|
|
48
|
+
entry += format_references
|
|
49
|
+
entry += format_flags
|
|
50
|
+
entry += <<-ENTRY
|
|
48
51
|
msgid #{format_message(@msgid)}
|
|
49
52
|
msgstr #{format_message(@msgstr)}
|
|
50
53
|
ENTRY
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
##
|
|
57
|
+
# Merges the PO entry with +other_entry+.
|
|
58
|
+
|
|
59
|
+
def merge(other_entry)
|
|
60
|
+
options = {
|
|
61
|
+
:extracted_comment => merge_string(@extracted_comment,
|
|
62
|
+
other_entry.extracted_comment),
|
|
63
|
+
:translator_comment => merge_string(@translator_comment,
|
|
64
|
+
other_entry.translator_comment),
|
|
65
|
+
:references => merge_array(@references,
|
|
66
|
+
other_entry.references),
|
|
67
|
+
:flags => merge_array(@flags,
|
|
68
|
+
other_entry.flags),
|
|
69
|
+
}
|
|
70
|
+
self.class.new(@msgid, options)
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
private
|
|
74
|
+
|
|
75
|
+
def format_comment(mark, comment)
|
|
76
|
+
return '' unless comment
|
|
77
|
+
return '' if comment.empty?
|
|
78
|
+
|
|
79
|
+
formatted_comment = ''
|
|
80
|
+
comment.each_line do |line|
|
|
81
|
+
formatted_comment += "#{mark} #{line}"
|
|
82
|
+
end
|
|
83
|
+
formatted_comment += "\n" unless formatted_comment.end_with?("\n")
|
|
84
|
+
formatted_comment
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
def format_translator_comment
|
|
88
|
+
format_comment('#', @translator_comment)
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
def format_extracted_comment
|
|
92
|
+
format_comment('#.', @extracted_comment)
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
def format_references
|
|
96
|
+
return '' if @references.empty?
|
|
97
|
+
|
|
98
|
+
formatted_references = ''
|
|
99
|
+
@references.sort.each do |file, line|
|
|
100
|
+
formatted_references += "\#: #{file}:#{line}\n"
|
|
101
|
+
end
|
|
102
|
+
formatted_references
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
def format_flags
|
|
106
|
+
return '' if @flags.empty?
|
|
107
|
+
|
|
108
|
+
formatted_flags = flags.join(",")
|
|
109
|
+
"\#, #{formatted_flags}\n"
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
def format_message(message)
|
|
113
|
+
return "\"#{escape(message)}\"" unless message.include?("\n")
|
|
114
|
+
|
|
115
|
+
formatted_message = '""'
|
|
116
|
+
message.each_line do |line|
|
|
117
|
+
formatted_message += "\n"
|
|
118
|
+
formatted_message += "\"#{escape(line)}\""
|
|
119
|
+
end
|
|
120
|
+
formatted_message
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
def escape(string)
|
|
124
|
+
string.gsub(/["\\\t\n]/) do |special_character|
|
|
125
|
+
case special_character
|
|
126
|
+
when "\t"
|
|
127
|
+
"\\t"
|
|
128
|
+
when "\n"
|
|
129
|
+
"\\n"
|
|
130
|
+
else
|
|
131
|
+
"\\#{special_character}"
|
|
132
|
+
end
|
|
133
|
+
end
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
def merge_string(string1, string2)
|
|
137
|
+
[string1, string2].compact.join("\n")
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
def merge_array(array1, array2)
|
|
141
|
+
(array1 + array2).uniq
|
|
142
|
+
end
|
|
83
143
|
|
|
84
|
-
def format_translator_comment
|
|
85
|
-
format_comment('#', @translator_comment)
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
def format_extracted_comment
|
|
89
|
-
format_comment('#.', @extracted_comment)
|
|
90
|
-
end
|
|
91
|
-
|
|
92
|
-
def format_references
|
|
93
|
-
return '' if @references.empty?
|
|
94
|
-
|
|
95
|
-
formatted_references = ''
|
|
96
|
-
@references.sort.each do |file, line|
|
|
97
|
-
formatted_references += "\#: #{file}:#{line}\n"
|
|
98
|
-
end
|
|
99
|
-
formatted_references
|
|
100
|
-
end
|
|
101
|
-
|
|
102
|
-
def format_flags
|
|
103
|
-
return '' if @flags.empty?
|
|
104
|
-
|
|
105
|
-
formatted_flags = flags.join(",")
|
|
106
|
-
"\#, #{formatted_flags}\n"
|
|
107
|
-
end
|
|
108
|
-
|
|
109
|
-
def format_message(message)
|
|
110
|
-
return "\"#{escape(message)}\"" unless message.include?("\n")
|
|
111
|
-
|
|
112
|
-
formatted_message = '""'
|
|
113
|
-
message.each_line do |line|
|
|
114
|
-
formatted_message += "\n"
|
|
115
|
-
formatted_message += "\"#{escape(line)}\""
|
|
116
|
-
end
|
|
117
|
-
formatted_message
|
|
118
|
-
end
|
|
119
|
-
|
|
120
|
-
def escape(string)
|
|
121
|
-
string.gsub(/["\\\t\n]/) do |special_character|
|
|
122
|
-
case special_character
|
|
123
|
-
when "\t"
|
|
124
|
-
"\\t"
|
|
125
|
-
when "\n"
|
|
126
|
-
"\\n"
|
|
127
|
-
else
|
|
128
|
-
"\\#{special_character}"
|
|
129
144
|
end
|
|
130
145
|
end
|
|
131
146
|
end
|
|
132
|
-
|
|
133
|
-
def merge_string(string1, string2)
|
|
134
|
-
[string1, string2].compact.join("\n")
|
|
135
|
-
end
|
|
136
|
-
|
|
137
|
-
def merge_array(array1, array2)
|
|
138
|
-
(array1 + array2).uniq
|
|
139
|
-
end
|
|
140
|
-
|
|
141
147
|
end
|
data/lib/rdoc/generator/pot.rb
CHANGED
|
@@ -1,94 +1,98 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
#
|
|
6
|
-
#
|
|
7
|
-
#
|
|
8
|
-
#
|
|
9
|
-
#
|
|
10
|
-
#
|
|
11
|
-
#
|
|
12
|
-
#
|
|
13
|
-
#
|
|
14
|
-
#
|
|
15
|
-
#
|
|
16
|
-
#
|
|
17
|
-
#
|
|
18
|
-
#
|
|
19
|
-
#
|
|
20
|
-
#
|
|
21
|
-
#
|
|
22
|
-
#
|
|
23
|
-
#
|
|
24
|
-
#
|
|
25
|
-
#
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
# %
|
|
29
|
-
#
|
|
30
|
-
#
|
|
31
|
-
#
|
|
32
|
-
#
|
|
33
|
-
#
|
|
34
|
-
#
|
|
35
|
-
#
|
|
36
|
-
#
|
|
37
|
-
#
|
|
38
|
-
#
|
|
39
|
-
#
|
|
40
|
-
#
|
|
41
|
-
#
|
|
42
|
-
#
|
|
43
|
-
#
|
|
44
|
-
#
|
|
45
|
-
#
|
|
46
|
-
#
|
|
47
|
-
#
|
|
48
|
-
#
|
|
49
|
-
#
|
|
50
|
-
#
|
|
51
|
-
#
|
|
52
|
-
#
|
|
53
|
-
#
|
|
54
|
-
#
|
|
2
|
+
module RDoc
|
|
3
|
+
module Generator
|
|
4
|
+
##
|
|
5
|
+
# Generates a POT file.
|
|
6
|
+
#
|
|
7
|
+
# Here is a translator work flow with the generator.
|
|
8
|
+
#
|
|
9
|
+
# == Create .pot
|
|
10
|
+
#
|
|
11
|
+
# You create .pot file by pot formatter:
|
|
12
|
+
#
|
|
13
|
+
# % rdoc --format pot
|
|
14
|
+
#
|
|
15
|
+
# It generates doc/rdoc.pot.
|
|
16
|
+
#
|
|
17
|
+
# == Create .po
|
|
18
|
+
#
|
|
19
|
+
# You create .po file from doc/rdoc.pot. This operation is needed only
|
|
20
|
+
# the first time. This work flow assumes that you are a translator
|
|
21
|
+
# for Japanese.
|
|
22
|
+
#
|
|
23
|
+
# You create locale/ja/rdoc.po from doc/rdoc.pot. You can use msginit
|
|
24
|
+
# provided by GNU gettext or rmsginit provided by gettext gem. This
|
|
25
|
+
# work flow uses gettext gem because it is more portable than GNU
|
|
26
|
+
# gettext for Rubyists. Gettext gem is implemented by pure Ruby.
|
|
27
|
+
#
|
|
28
|
+
# % gem install gettext
|
|
29
|
+
# % mkdir -p locale/ja
|
|
30
|
+
# % rmsginit --input doc/rdoc.pot --output locale/ja/rdoc.po --locale ja
|
|
31
|
+
#
|
|
32
|
+
# Translate messages in .po
|
|
33
|
+
#
|
|
34
|
+
# You translate messages in .po by a PO file editor. po-mode.el exists
|
|
35
|
+
# for Emacs users. There are some GUI tools such as GTranslator.
|
|
36
|
+
# There are some Web services such as POEditor and Tansifex. You can
|
|
37
|
+
# edit by your favorite text editor because .po is a text file.
|
|
38
|
+
# Generate localized documentation
|
|
39
|
+
#
|
|
40
|
+
# You can generate localized documentation with locale/ja/rdoc.po:
|
|
41
|
+
#
|
|
42
|
+
# % rdoc --locale ja
|
|
43
|
+
#
|
|
44
|
+
# You can find documentation in Japanese in doc/. Yay!
|
|
45
|
+
#
|
|
46
|
+
# == Update translation
|
|
47
|
+
#
|
|
48
|
+
# You need to update translation when your application is added or
|
|
49
|
+
# modified messages.
|
|
50
|
+
#
|
|
51
|
+
# You can update .po by the following command lines:
|
|
52
|
+
#
|
|
53
|
+
# % rdoc --format pot
|
|
54
|
+
# % rmsgmerge --update locale/ja/rdoc.po doc/rdoc.pot
|
|
55
|
+
#
|
|
56
|
+
# You edit locale/ja/rdoc.po to translate new messages.
|
|
55
57
|
|
|
56
|
-
class
|
|
58
|
+
class POT
|
|
57
59
|
|
|
58
|
-
|
|
60
|
+
RDoc.add_generator self
|
|
59
61
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
+
##
|
|
63
|
+
# Description of this generator
|
|
62
64
|
|
|
63
|
-
|
|
65
|
+
DESCRIPTION = 'creates .pot file'
|
|
64
66
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
+
##
|
|
68
|
+
# Set up a new .pot generator
|
|
67
69
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
70
|
+
def initialize(store, options) #:not-new:
|
|
71
|
+
@options = options
|
|
72
|
+
@store = store
|
|
73
|
+
end
|
|
72
74
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
+
##
|
|
76
|
+
# Writes .pot to disk.
|
|
75
77
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
78
|
+
def generate
|
|
79
|
+
po = extract_messages
|
|
80
|
+
pot_path = 'rdoc.pot'
|
|
81
|
+
File.open(pot_path, "w") do |pot|
|
|
82
|
+
pot.print(po.to_s)
|
|
83
|
+
end
|
|
84
|
+
end
|
|
83
85
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
86
|
+
private
|
|
87
|
+
def extract_messages
|
|
88
|
+
extractor = MessageExtractor.new(@store)
|
|
89
|
+
extractor.extract
|
|
90
|
+
end
|
|
89
91
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
92
|
+
require_relative 'pot/message_extractor'
|
|
93
|
+
require_relative 'pot/po'
|
|
94
|
+
require_relative 'pot/po_entry'
|
|
93
95
|
|
|
96
|
+
end
|
|
97
|
+
end
|
|
94
98
|
end
|
data/lib/rdoc/generator/ri.rb
CHANGED
|
@@ -1,30 +1,34 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
module RDoc
|
|
3
|
+
module Generator
|
|
4
|
+
##
|
|
5
|
+
# Generates ri data files
|
|
4
6
|
|
|
5
|
-
class
|
|
7
|
+
class RI
|
|
6
8
|
|
|
7
|
-
|
|
9
|
+
RDoc.add_generator self
|
|
8
10
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
+
##
|
|
12
|
+
# Description of this generator
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
DESCRIPTION = 'creates ri data files'
|
|
13
15
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
+
##
|
|
17
|
+
# Set up a new ri generator
|
|
16
18
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
def initialize(store, options) #:not-new:
|
|
20
|
+
@options = options
|
|
21
|
+
@store = store
|
|
22
|
+
@store.path = '.'
|
|
23
|
+
end
|
|
22
24
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
+
##
|
|
26
|
+
# Writes the parsed data store to disk for use by ri.
|
|
25
27
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
def generate
|
|
29
|
+
@store.save
|
|
30
|
+
end
|
|
29
31
|
|
|
32
|
+
end
|
|
33
|
+
end
|
|
30
34
|
end
|
|
@@ -289,12 +289,14 @@ horizontally.
|
|
|
289
289
|
|
|
290
290
|
### Search
|
|
291
291
|
|
|
292
|
+
One search form and one result list serve both header layouts. CSS changes the presentation at `1023px`.
|
|
293
|
+
|
|
292
294
|
| Element | Value |
|
|
293
295
|
|----------------------------------|-------------------------------------------------------------|
|
|
294
|
-
|
|
|
295
|
-
| Desktop
|
|
296
|
-
|
|
|
297
|
-
|
|
|
296
|
+
| Shared field (`#search-field`) | full-width border-box, `space-2 space-4` pad, 1px border, `radius-md`, `base`. Focus uses an accent border + `0 0 0 3px accent-subtle` |
|
|
297
|
+
| Desktop results (`#search-results`) | absolute inside the search surface, full-width border-box, `max-height: 60vh`, `radius-lg`, `shadow-lg`, `z-popover` (500) |
|
|
298
|
+
| Compact surface (`.navbar-search.is-open .search-surface`) | centered overlay, `max-width: 600px`, `max-height: 80vh`, `radius-lg`, `shadow-xl` |
|
|
299
|
+
| Compact result item | `space-3 space-4` pad, `radius-md`, hover `background-secondary` |
|
|
298
300
|
| Servlet field | pill `border-radius: 1.25rem`, leading 🔍 (`\1F50D`) glyph |
|
|
299
301
|
| Result lines | `.search-match` `base` · `.search-namespace` `sm` secondary · `.search-snippet` `sm` tertiary |
|
|
300
302
|
| Type badge (`.search-type-*`) | inline-block, `space-0 space-2` pad, `xs`, weight 500, `radius-sm`, colors per §2 |
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
<div class="footer-bottom">
|
|
18
18
|
<p>
|
|
19
|
-
Generated by <a href="https://ruby.github.io/rdoc/">RDoc <%=
|
|
19
|
+
Generated by <a href="https://ruby.github.io/rdoc/">RDoc <%= VERSION %></a>
|
|
20
20
|
using the Aliki theme by <a href="http://st0012.dev">Stan Lo</a>
|
|
21
21
|
</p>
|
|
22
22
|
</div>
|
|
@@ -112,52 +112,52 @@
|
|
|
112
112
|
</script>
|
|
113
113
|
|
|
114
114
|
<script
|
|
115
|
-
src="<%= h asset_rel_prefix %>/js/theme-toggle.js?v=<%= h
|
|
115
|
+
src="<%= h asset_rel_prefix %>/js/theme-toggle.js?v=<%= h VERSION %>"
|
|
116
116
|
></script>
|
|
117
117
|
|
|
118
118
|
<script
|
|
119
|
-
src="<%= h asset_rel_prefix %>/js/search_navigation.js?v=<%= h
|
|
119
|
+
src="<%= h asset_rel_prefix %>/js/search_navigation.js?v=<%= h VERSION %>"
|
|
120
120
|
defer
|
|
121
121
|
></script>
|
|
122
122
|
|
|
123
123
|
<script
|
|
124
|
-
src="<%= h asset_rel_prefix %>/js/search_data.js?v=<%= h
|
|
124
|
+
src="<%= h asset_rel_prefix %>/js/search_data.js?v=<%= h VERSION %>"
|
|
125
125
|
defer
|
|
126
126
|
></script>
|
|
127
127
|
|
|
128
128
|
<script
|
|
129
|
-
src="<%= h asset_rel_prefix %>/js/search_ranker.js?v=<%= h
|
|
129
|
+
src="<%= h asset_rel_prefix %>/js/search_ranker.js?v=<%= h VERSION %>"
|
|
130
130
|
defer
|
|
131
131
|
></script>
|
|
132
132
|
|
|
133
133
|
<script
|
|
134
|
-
src="<%= h asset_rel_prefix %>/js/search_controller.js?v=<%= h
|
|
134
|
+
src="<%= h asset_rel_prefix %>/js/search_controller.js?v=<%= h VERSION %>"
|
|
135
135
|
defer
|
|
136
136
|
></script>
|
|
137
137
|
|
|
138
138
|
<script
|
|
139
|
-
src="<%= h asset_rel_prefix %>/js/c_highlighter.js?v=<%= h
|
|
139
|
+
src="<%= h asset_rel_prefix %>/js/c_highlighter.js?v=<%= h VERSION %>"
|
|
140
140
|
defer
|
|
141
141
|
></script>
|
|
142
142
|
|
|
143
143
|
<script
|
|
144
|
-
src="<%= h asset_rel_prefix %>/js/bash_highlighter.js?v=<%= h
|
|
144
|
+
src="<%= h asset_rel_prefix %>/js/bash_highlighter.js?v=<%= h VERSION %>"
|
|
145
145
|
defer
|
|
146
146
|
></script>
|
|
147
147
|
|
|
148
148
|
<script
|
|
149
|
-
src="<%= h asset_rel_prefix %>/js/aliki.js?v=<%= h
|
|
149
|
+
src="<%= h asset_rel_prefix %>/js/aliki.js?v=<%= h VERSION %>"
|
|
150
150
|
defer
|
|
151
151
|
></script>
|
|
152
152
|
|
|
153
153
|
<link
|
|
154
|
-
href="<%= h asset_rel_prefix %>/css/rdoc.css?v=<%= h
|
|
154
|
+
href="<%= h asset_rel_prefix %>/css/rdoc.css?v=<%= h VERSION %>"
|
|
155
155
|
rel="stylesheet"
|
|
156
156
|
>
|
|
157
157
|
|
|
158
158
|
<%- @options.template_stylesheets.each do |stylesheet| %>
|
|
159
159
|
<link
|
|
160
|
-
href="<%= h asset_rel_prefix %>/<%= h File.basename stylesheet %>?v=<%= h
|
|
160
|
+
href="<%= h asset_rel_prefix %>/<%= h File.basename stylesheet %>?v=<%= h VERSION %>"
|
|
161
161
|
rel="stylesheet"
|
|
162
162
|
>
|
|
163
163
|
<%- end %>
|