Skip to content

Commit 50cb58f

Browse files
author
Ashe Connor
authored
Merge pull request #1139 from github/kivikakk/pass-symlink
Pass through symlink info
2 parents 968ba4e + 6704f82 commit 50cb58f

File tree

4 files changed

+12
-10
lines changed

4 files changed

+12
-10
lines changed

Gemfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@ gem "rdoc", "~>3.6"
1010
gem "org-ruby", "= 0.9.9"
1111
gem "creole", "~>0.3.6"
1212
gem "wikicloth", "=0.8.3"
13+
gem "twitter-text", "~> 1.14"
1314
gem "asciidoctor", "= 1.5.6.1"
1415
gem "rake"

github-markup.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,5 @@ Gem::Specification.new do |s|
2323
s.add_development_dependency 'sanitize', '~> 2.1', '>= 2.1.0'
2424
s.add_development_dependency 'nokogiri', '1.6.8.1'
2525
s.add_development_dependency 'nokogiri-diff', '~> 0.2.0'
26-
s.add_development_dependency "github-linguist", "~> 5.0", ">= 5.0.8"
26+
s.add_development_dependency "github-linguist", "~> 6.0"
2727
end

lib/github/markup.rb

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,11 @@ def preload!
4040
end
4141
end
4242

43-
def render(filename, content = nil)
43+
def render(filename, content = nil, symlink = nil)
4444
content ||= File.read(filename)
45+
symlink = (File.symlink?(filename) rescue false) if symlink.nil?
4546

46-
if impl = renderer(filename, content)
47+
if impl = renderer(filename, content, symlink)
4748
impl.render(filename, content)
4849
else
4950
content
@@ -79,20 +80,20 @@ def command(symbol, command, regexp, languages, name, &block)
7980
markup_impl(symbol, CommandImplementation.new(regexp, languages, command, name, &block))
8081
end
8182

82-
def can_render?(filename, content)
83-
!!renderer(filename, content)
83+
def can_render?(filename, content, symlink = false)
84+
!!renderer(filename, content, symlink)
8485
end
8586

86-
def renderer(filename, content)
87-
language = language(filename, content)
87+
def renderer(filename, content, symlink = false)
88+
language = language(filename, content, symlink)
8889
markup_impls.find { |impl|
8990
impl.match?(filename, language)
9091
}
9192
end
9293

93-
def language(filename, content)
94+
def language(filename, content, symlink = false)
9495
if defined?(::Linguist)
95-
blob = Linguist::Blob.new(filename, content)
96+
blob = Linguist::Blob.new(filename, content, symlink: symlink)
9697
return Linguist.detect(blob, allow_empty: true)
9798
end
9899
end

test/markup_test.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ def test_raises_error_if_command_exits_non_zero
104104
GitHub::Markup.command(:doesntmatter, 'test/fixtures/fail.sh', /fail/, ['Java'], 'fail')
105105
assert GitHub::Markup.can_render?('README.java', 'stop swallowing errors')
106106
begin
107-
GitHub::Markup.render('README.java', "stop swallowing errors")
107+
GitHub::Markup.render('README.java', "stop swallowing errors", false)
108108
rescue GitHub::Markup::CommandError => e
109109
assert_equal "failure message", e.message
110110
else

0 commit comments

Comments
 (0)