jekyll-beastiepress 1.0.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.
@@ -0,0 +1,65 @@
|
|
1
|
+
# Title: FreeBSD manual tag for Jekyll
|
2
|
+
# Author: Nicole Reid http://cooltrainer.org
|
3
|
+
# Description: Easily link to BSD manpages.
|
4
|
+
#
|
5
|
+
# Syntax {% man [section] command ['release'] ['link text'] ['title text'] %}
|
6
|
+
#
|
7
|
+
# Examples:
|
8
|
+
# {% man 8 lpc "FreeBSD 8.1-RELEASE" "the manpage" "Section 8 of the lpc manpage" %}
|
9
|
+
# {% man 8 lpc "FreeBSD 8.1-RELEASE" %}
|
10
|
+
# {% man lpc %}
|
11
|
+
#
|
12
|
+
# Output:
|
13
|
+
# <a href='http://www.freebsd.org/cgi/man.cgi?query=lpc&sektion=8&manpath=FreeBSD 8.1-RELEASE' title='Section 8 of the lpc manpage'>the manpage</a>
|
14
|
+
# <a href='http://www.freebsd.org/cgi/man.cgi?query=lpc&sektion=8&manpath=FreeBSD 8.1-RELEASE' title='man lpc(8) from FreeBSD 8.1-RELEASE'>lpc(8)</a>
|
15
|
+
# <a href='http://www.freebsd.org/cgi/man.cgi?query=lpc&sektion=&manpath=' title='man lpc'>lpc</a>
|
16
|
+
#
|
17
|
+
|
18
|
+
module Jekyll
|
19
|
+
|
20
|
+
class ManTag < Liquid::Tag
|
21
|
+
@man = nil
|
22
|
+
@section = ''
|
23
|
+
@release = ''
|
24
|
+
@title = ''
|
25
|
+
@link = ''
|
26
|
+
|
27
|
+
def initialize(tag_name, markup, tokens)
|
28
|
+
if markup =~ /((\d+)\s+)?(\w+)(\s+((?:"|')([^"']+)(?:"|')))?(\s+((?:"|')([^"']+)(?:"|')))?(\s+((?:"|')([^"']+)(?:"|')))?/i
|
29
|
+
@section = $2
|
30
|
+
@man = $3
|
31
|
+
@release = $6
|
32
|
+
@link = $9
|
33
|
+
@title = $12
|
34
|
+
if !@link
|
35
|
+
@link = @man
|
36
|
+
if @section
|
37
|
+
@link += "(#{@section})"
|
38
|
+
end
|
39
|
+
if @release && @title
|
40
|
+
@title += " from #{@release}"
|
41
|
+
end
|
42
|
+
end
|
43
|
+
if !@title
|
44
|
+
@title = "man #{@man}"
|
45
|
+
if @release
|
46
|
+
@title += " from #{@release}"
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
super
|
51
|
+
end
|
52
|
+
|
53
|
+
def render(context)
|
54
|
+
output = super
|
55
|
+
if @man
|
56
|
+
man = "<a class='man' href='http://www.freebsd.org/cgi/man.cgi?query=#{@man}&ektion=#{@section}&manpath=#{@release}' title='#{@title}'>#{@link}</a>"
|
57
|
+
else
|
58
|
+
"Error processing input, expected syntax: {% port category/portname ['link text'] ['title text'] %}"
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
Liquid::Template.register_tag('man', Jekyll::ManTag)
|
65
|
+
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# Title: FreeBSD port tag for Jekyll
|
2
|
+
# Author: Nicole Reid http://cooltrainer.org
|
3
|
+
# Description: Easily link to Freshports for FreeBSD ports.
|
4
|
+
#
|
5
|
+
# Syntax {% port portname ['link text'] ['title text'] %}
|
6
|
+
#
|
7
|
+
# Example:
|
8
|
+
# {% port www/subsonic "A link to www/subsonic on Freshports" "Subsonic" %}
|
9
|
+
#
|
10
|
+
# Output:
|
11
|
+
# <a href='http://freshports.org/www/subsonic' title='A link to www/subsonic on Freshports'>Subsonic</a>
|
12
|
+
#
|
13
|
+
|
14
|
+
module Jekyll
|
15
|
+
|
16
|
+
class PortTag < Liquid::Tag
|
17
|
+
@port = nil
|
18
|
+
@title = ''
|
19
|
+
@link = ''
|
20
|
+
|
21
|
+
def initialize(tag_name, markup, tokens)
|
22
|
+
if markup =~ /(\S+(?:\/\S+)?)(\s+((?:"|')([^"']+)(?:"|')))?(\s+((?:"|')([^"']+)(?:"|')))?/i
|
23
|
+
@port = $1
|
24
|
+
@link = $4
|
25
|
+
@title = $7
|
26
|
+
if !@link
|
27
|
+
@link = @port
|
28
|
+
end
|
29
|
+
if !@title
|
30
|
+
@title = @link
|
31
|
+
end
|
32
|
+
end
|
33
|
+
super
|
34
|
+
end
|
35
|
+
|
36
|
+
def render(context)
|
37
|
+
output = super
|
38
|
+
if @port
|
39
|
+
port = "<a class='port' href='http://freshports.org/#{@port}' title='#{@title}'>#{@link}</a>"
|
40
|
+
else
|
41
|
+
"Error processing input, expected syntax: {% port category/portname ['link text'] ['title text'] %}"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
Liquid::Template.register_tag('port', Jekyll::PortTag)
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# Title: FreeBSD PR tag for Jekyll
|
2
|
+
# Author: Nicole Reid http://cooltrainer.org
|
3
|
+
# Description: Easily link to FreeBSD problem reports.
|
4
|
+
#
|
5
|
+
# Syntax {% pr [category/]prnumber ['link text'] ['title text'] %}
|
6
|
+
#
|
7
|
+
# Example:
|
8
|
+
# {% pr ports/151677 'the fix' 'Filename handling fix for cuetools.sh' %}
|
9
|
+
# {% pr ports/151677 %}
|
10
|
+
#
|
11
|
+
# Output:
|
12
|
+
# <a href='http://freshports.org/www/subsonic' title='Filename handling fix for cuetools.sh'>the fix</a>
|
13
|
+
# <a href='http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/151677' title='Problem Report ports/151677'>ports/151677</a>
|
14
|
+
#
|
15
|
+
|
16
|
+
module Jekyll
|
17
|
+
|
18
|
+
class PRTag < Liquid::Tag
|
19
|
+
@pr = nil
|
20
|
+
|
21
|
+
def initialize(tag_name, markup, tokens)
|
22
|
+
if markup =~ /((\w+\/?)\d+)(\s+((?:"|')([^"']+)(?:"|')))?(\s+((?:"|')([^"']+)(?:"|')))?/i
|
23
|
+
@pr = $1
|
24
|
+
@link = $5
|
25
|
+
@title = $8
|
26
|
+
if !@link
|
27
|
+
@link = @pr
|
28
|
+
end
|
29
|
+
if !@title
|
30
|
+
@title = "Problem Report #{@pr}"
|
31
|
+
end
|
32
|
+
end
|
33
|
+
super
|
34
|
+
end
|
35
|
+
|
36
|
+
def render(context)
|
37
|
+
output = super
|
38
|
+
if @pr
|
39
|
+
pr = "<a class='pr' href='http://www.freebsd.org/cgi/query-pr.cgi?pr=#{@pr}' title='#{@title}'>#{@link}</a>"
|
40
|
+
else
|
41
|
+
"Error processing input, expected syntax: {% pr [category/]prnumber ['link text'] ['title text'] %}"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
Liquid::Template.register_tag('pr', Jekyll::PRTag)
|
48
|
+
|
metadata
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: jekyll-beastiepress
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 23
|
5
|
+
prerelease:
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 0
|
9
|
+
- 0
|
10
|
+
version: 1.0.0
|
11
|
+
platform: ruby
|
12
|
+
authors:
|
13
|
+
- Nicole Reid
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2012-02-21 00:00:00 Z
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
name: jekyll
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
hash: 55
|
29
|
+
segments:
|
30
|
+
- 0
|
31
|
+
- 10
|
32
|
+
- 0
|
33
|
+
version: 0.10.0
|
34
|
+
type: :runtime
|
35
|
+
version_requirements: *id001
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: liquid
|
38
|
+
prerelease: false
|
39
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
40
|
+
none: false
|
41
|
+
requirements:
|
42
|
+
- - ">="
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
hash: 3
|
45
|
+
segments:
|
46
|
+
- 2
|
47
|
+
- 2
|
48
|
+
- 2
|
49
|
+
version: 2.2.2
|
50
|
+
type: :runtime
|
51
|
+
version_requirements: *id002
|
52
|
+
description: Extend Jekyll with easy tags for linking FreeBSD manual pages, ports, and problem reports.
|
53
|
+
email: root@cooltrainer.org
|
54
|
+
executables: []
|
55
|
+
|
56
|
+
extensions: []
|
57
|
+
|
58
|
+
extra_rdoc_files: []
|
59
|
+
|
60
|
+
files:
|
61
|
+
- lib/jekyll-beastiepress.rb
|
62
|
+
- lib/jekyll-beastiepress/man_tag.rb
|
63
|
+
- lib/jekyll-beastiepress/port_tag.rb
|
64
|
+
- lib/jekyll-beastiepress/pr_tag.rb
|
65
|
+
homepage: https://github.com/okeeblow/jekyll-beastiepress
|
66
|
+
licenses: []
|
67
|
+
|
68
|
+
post_install_message:
|
69
|
+
rdoc_options: []
|
70
|
+
|
71
|
+
require_paths:
|
72
|
+
- lib
|
73
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
75
|
+
requirements:
|
76
|
+
- - ">="
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
hash: 3
|
79
|
+
segments:
|
80
|
+
- 0
|
81
|
+
version: "0"
|
82
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ">="
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
hash: 3
|
88
|
+
segments:
|
89
|
+
- 0
|
90
|
+
version: "0"
|
91
|
+
requirements: []
|
92
|
+
|
93
|
+
rubyforge_project:
|
94
|
+
rubygems_version: 1.8.11
|
95
|
+
signing_key:
|
96
|
+
specification_version: 3
|
97
|
+
summary: FreeBSD community tags for Jekyll
|
98
|
+
test_files: []
|
99
|
+
|