code2gist 0.0.4 → 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.
- data/Gemfile.lock +1 -1
- data/README.md +9 -3
- data/bin/code2gist +3 -1
- data/code2gist.gemspec +2 -2
- data/lib/code2gist.rb +6 -6
- metadata +4 -4
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -25,12 +25,12 @@ Or:
|
|
25
25
|
new_text = Code2Gist.replace(your_text, "another example description")
|
26
26
|
|
27
27
|
### Options
|
28
|
-
When replacing, there
|
29
|
-
`false`).
|
28
|
+
When replacing, there are two options available: `:html` (default:
|
29
|
+
`false`) and `:anonymous` (default: `false`).
|
30
30
|
|
31
31
|
Quick example:
|
32
32
|
|
33
|
-
Code2Gist.replace(your_markdown_text, "
|
33
|
+
Code2Gist.replace(your_markdown_text, "yay!", :html => true)
|
34
34
|
|
35
35
|
This is specially useful if you're using markdown/textile and would like
|
36
36
|
to have all your code blocks in a gist and embeded in your HTML. For
|
@@ -38,6 +38,12 @@ example:
|
|
38
38
|
|
39
39
|
html = Markdown.new(Code2Gist.replace(text, "Code snippets from article X", :html => true)).to_html
|
40
40
|
|
41
|
+
You can use the `:anonymous` option to avoid authenticating that code
|
42
|
+
upload, even if the credentials are available (see next section):
|
43
|
+
|
44
|
+
Code2Gist.replace(your_markdown_text, "anonymous!", :anonymous =>
|
45
|
+
true)
|
46
|
+
|
41
47
|
### I want to be the owner of the gist!
|
42
48
|
|
43
49
|
It's okay, just specify your username and API token before uploading any
|
data/bin/code2gist
CHANGED
@@ -27,14 +27,16 @@ end
|
|
27
27
|
login = options.delete(:login)
|
28
28
|
token = options.delete(:token)
|
29
29
|
substitute = options.delete(:substitute)
|
30
|
+
anonymous = true
|
30
31
|
|
31
32
|
if login && options
|
32
33
|
Code2Gist::Config.github_login = login
|
33
34
|
Code2Gist::Config.github_token = token
|
35
|
+
anonymous = false
|
34
36
|
end
|
35
37
|
|
36
38
|
if action == "upload"
|
37
|
-
puts Code2Gist.upload(File.read(path), description)
|
39
|
+
puts Code2Gist.upload(File.read(path), description, anonymous)
|
38
40
|
elsif action == "replace"
|
39
41
|
new_text = Code2Gist.replace(File.read(path), description, options)
|
40
42
|
|
data/code2gist.gemspec
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = "code2gist"
|
5
|
-
s.version = "0.0.
|
5
|
+
s.version = "0.0.5"
|
6
6
|
s.platform = Gem::Platform::RUBY
|
7
|
-
s.authors = ["
|
7
|
+
s.authors = ["Goncalo Silva"]
|
8
8
|
s.email = ["goncalossilva@gmail.com"]
|
9
9
|
s.homepage = "http://github.com/goncalossilva/code2gist"
|
10
10
|
s.summary = "Parse text files (markdown/textile/whatever) for code blocks and gist them"
|
data/lib/code2gist.rb
CHANGED
@@ -22,7 +22,7 @@ module Code2Gist
|
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
25
|
-
def upload(text, description = nil)
|
25
|
+
def upload(text, description = nil, anonymous = false)
|
26
26
|
new_text = name_nameless_code_blocks(text)
|
27
27
|
|
28
28
|
code_blocks = Hash[*new_text.scan(CODE_REGEX).flatten]
|
@@ -31,15 +31,15 @@ module Code2Gist
|
|
31
31
|
return nil
|
32
32
|
end
|
33
33
|
|
34
|
-
get_gist(code_blocks, description)
|
34
|
+
get_gist(code_blocks, description, anonymous)
|
35
35
|
end
|
36
36
|
|
37
37
|
def replace(text, description = nil, opts = {})
|
38
|
-
options = {:html => false}.merge(opts)
|
38
|
+
options = {:html => false, :anonymous => false}.merge(opts)
|
39
39
|
|
40
40
|
new_text = name_nameless_code_blocks(text)
|
41
41
|
|
42
|
-
gist_url = upload(new_text, description)
|
42
|
+
gist_url = upload(new_text, description, options[:anonymous])
|
43
43
|
|
44
44
|
if options[:html]
|
45
45
|
new_text.gsub(CODE_REGEX, "<script src=\"#{gist_url}.js?file=\\1\"></script>")
|
@@ -64,7 +64,7 @@ module Code2Gist
|
|
64
64
|
new_text
|
65
65
|
end
|
66
66
|
|
67
|
-
def get_gist(data, description)
|
67
|
+
def get_gist(data, description, anonymous)
|
68
68
|
post_data = {}
|
69
69
|
data.each_with_index do |(filename, content), index|
|
70
70
|
post_data.merge!("files[#{filename}]" => content)
|
@@ -73,7 +73,7 @@ module Code2Gist
|
|
73
73
|
post_data.merge!(
|
74
74
|
"login" => Code2Gist::Config.github_login,
|
75
75
|
"token" => Code2Gist::Config.github_token
|
76
|
-
) unless Code2Gist::Config.github_login.nil? || Code2Gist::Config.github_token.nil?
|
76
|
+
) unless anonymous || Code2Gist::Config.github_login.nil? || Code2Gist::Config.github_token.nil?
|
77
77
|
|
78
78
|
post_data.merge!("description" => description)
|
79
79
|
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: code2gist
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
|
-
-
|
8
|
+
- Goncalo Silva
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-
|
12
|
+
date: 2011-09-03 00:00:00.000000000Z
|
13
13
|
dependencies: []
|
14
14
|
description: Parse text files (markdown/textile/whatever) for code blocks and gist
|
15
15
|
them
|
@@ -42,7 +42,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
42
42
|
version: '0'
|
43
43
|
segments:
|
44
44
|
- 0
|
45
|
-
hash: -
|
45
|
+
hash: -3600356913606737563
|
46
46
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
47
47
|
none: false
|
48
48
|
requirements:
|