s2p 0.0.3 → 0.0.5
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/lib/s2p/notebook.rb +55 -0
- data/lib/s2p/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fdcd6755739bf7072a6271b5a28608c3c8c1261ad4dee98988219d7685ceba4a
|
4
|
+
data.tar.gz: 2c7a496e4dddd121faa9bc27910fa88c51219aa0eb785b589a58aed13d04347f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ad04853d770053e71d51bb97cb9d170ce9e25c270954d5bb7b91b85bfe3df8675e5760bc9f9d28eded3257aa588487fff81be465921057accdc2c216de09e8c7
|
7
|
+
data.tar.gz: f3c3de8c4be91fe9ba28a2ae70cafdfbaeabc0f434021e5b2033989335fbbfb816e2c544eeddef320ec7f5ab701895dadc3fe577fceb2a1721df021b0a6a6c65
|
data/lib/s2p/notebook.rb
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
begin
|
4
|
+
require "redcarpet"
|
5
|
+
rescue LoadError
|
6
|
+
fail "The S2P::Notebook feature needs the redcarpet gem installed to run"
|
7
|
+
end
|
8
|
+
|
9
|
+
module S2P
|
10
|
+
class Notebook
|
11
|
+
def self.run_file(source, runner_class=NotebookRunner)
|
12
|
+
run(File.read(source), runner_class)
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.run(source, runner_class=NotebookRunner)
|
16
|
+
Redcarpet::Markdown.new(runner_class, :fenced_code_blocks => true).render(source)
|
17
|
+
|
18
|
+
:ok
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
class Notebook
|
23
|
+
class Component
|
24
|
+
def self.[](*a, **o)
|
25
|
+
new(*a, **o)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
class NotebookRunner < Redcarpet::Render::HTML
|
31
|
+
def codespan(code)
|
32
|
+
case code
|
33
|
+
when /^~ /
|
34
|
+
eval(code[/^~ (.*)/, 1], MAIN_BINDING)
|
35
|
+
else
|
36
|
+
eval("puts(#{code})", MAIN_BINDING)
|
37
|
+
end
|
38
|
+
|
39
|
+
""
|
40
|
+
end
|
41
|
+
|
42
|
+
def block_code(text, operation)
|
43
|
+
case operation
|
44
|
+
when nil, "ruby"
|
45
|
+
eval(text, MAIN_BINDING) # See end of file for this hack.
|
46
|
+
when "text"
|
47
|
+
puts(text)
|
48
|
+
end
|
49
|
+
|
50
|
+
""
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
S2P::NotebookRunner::MAIN_BINDING = binding
|
data/lib/s2p/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: s2p
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gregory Brown
|
8
8
|
bindir: bin
|
9
9
|
cert_chain: []
|
10
|
-
date: 2025-02-
|
10
|
+
date: 2025-02-02 00:00:00.000000000 Z
|
11
11
|
dependencies: []
|
12
12
|
description: Experimental dev utilies from skillstopractice.com. Will eventually find
|
13
13
|
homes in their own gems if they pan out.
|
@@ -18,6 +18,7 @@ extra_rdoc_files: []
|
|
18
18
|
files:
|
19
19
|
- lib/s2p/component.rb
|
20
20
|
- lib/s2p/contractor.rb
|
21
|
+
- lib/s2p/notebook.rb
|
21
22
|
- lib/s2p/version.rb
|
22
23
|
licenses:
|
23
24
|
- MIT
|