asciisourcerer 0.3.1 → 0.5.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.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: asciisourcerer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - DocOps Lab
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-04-02 00:00:00.000000000 Z
11
+ date: 2026-09-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: asciidoctor
@@ -108,6 +108,20 @@ dependencies:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: '2.1'
111
+ - !ruby/object:Gem::Dependency
112
+ name: yard
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '0.9'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '0.9'
111
125
  description: AsciiSourcerer provides APIs for specialized use of AsciiDoc (attribute
112
126
  extraction, special conversions), YAML (tag handling), and Liquid (Jekyll-based
113
127
  rendering, custom tags, etc).
@@ -117,11 +131,14 @@ executables: []
117
131
  extensions: []
118
132
  extra_rdoc_files: []
119
133
  files:
134
+ - BILL_OF_MATERIALS.adoc
120
135
  - LICENSE
121
136
  - README.adoc
122
137
  - lib/asciidoctor/extensions/source-skim-tree-processor/extension.rb
123
138
  - lib/asciisourcerer.rb
124
139
  - lib/sourcerer.rb
140
+ - lib/sourcerer/_docs/partials/liquid-filters-by-kind.adoc
141
+ - lib/sourcerer/_docs/partials/liquid-filters-by-source.adoc
125
142
  - lib/sourcerer/asciidoc.rb
126
143
  - lib/sourcerer/builder.rb
127
144
  - lib/sourcerer/jekyll.rb
@@ -136,17 +153,19 @@ files:
136
153
  - lib/sourcerer/source_skim.rb
137
154
  - lib/sourcerer/source_skim/config.rb
138
155
  - lib/sourcerer/source_skim/markdown_skimmer.rb
156
+ - lib/sourcerer/source_skim/ruby_skimmer.rb
139
157
  - lib/sourcerer/source_skim/skimmer.rb
140
158
  - lib/sourcerer/sync.rb
141
159
  - lib/sourcerer/sync/block_parser.rb
142
160
  - lib/sourcerer/sync/cast.rb
143
161
  - lib/sourcerer/templating.rb
162
+ - lib/sourcerer/util/gem_uri.rb
144
163
  - lib/sourcerer/util/list_amend.rb
145
164
  - lib/sourcerer/util/pathifier.rb
146
165
  - lib/sourcerer/version.rb
147
166
  - lib/sourcerer/yaml.rb
148
167
  - lib/sourcerer/yaml_frontmatter.rb
149
- - specs/docs/frontmatter-reader_prd.adoc
168
+ - specs/data/liquid-filters.yml
150
169
  homepage: https://github.com/DocOps/asciisourcerer
151
170
  licenses:
152
171
  - MIT
@@ -1,47 +0,0 @@
1
- = FrontmatterReader: PRD
2
- :status: implemented
3
- :version: 0.3.0
4
-
5
- == Overview
6
-
7
- `Sourcerer::SourceSkim` needs to incorporate a simpler Skim object that derives data/content from frontmatter YAML and section headings.
8
-
9
- `SourceSkim` currently generates structured, semantic metadata and content outline about AsciiDoc source files.
10
- But many use cases (Jekyll site pipelines, documentation indexers, cross-repo search tools) need to work with Markdown files, as well:
11
-
12
- * Frontmatter data (layout, title, navigation hints, etc.)
13
- * Section headings and their levels:
14
- ** a flat list of section headings and their line numbers, and/or
15
- ** a nested hierarchy of sections and subsections.
16
-
17
- == Output Shape
18
-
19
- The core operation yields a skim in one of the following configurations:
20
-
21
- [source,ruby]
22
- ----
23
- {
24
- title: 'Introduction', # String — from first # heading
25
- frontmatter: { 'layout' => 'docs', 'title' => 'Guide', ... }, # Hash
26
- sections_flat: [ # Array
27
- { text: 'Getting Started', level: 1, starts_at: 13 },
28
- { text: 'Prerequisites', level: 2, starts_at: 17 },
29
- ...
30
- ]
31
- }
32
- ----
33
-
34
- [source,ruby]
35
- ----
36
- {
37
- title: 'Introduction', # String
38
- frontmatter: { 'layout' => 'docs', 'title' => 'Guide', ... }, # Hash
39
- sections_tree: [ # Array (same shape as AsciiDoc)
40
- { text: 'Getting Started', level: 1, starts_at: 13, sections: [
41
- { text: 'Prerequisites', level: 2, starts_at: 17, sections: [] }
42
- ] },
43
- { text: 'Advanced Usage', level: 1, starts_at: 22, sections: [] },
44
- ...
45
- ]
46
- }
47
- ----