Add a graph visualization page based on the analyze script
This commit is contained in:
@@ -40,11 +40,14 @@ files.each do |file|
|
||||
name = file
|
||||
tags = []
|
||||
group = 1
|
||||
draft = false
|
||||
value = File.size(file)
|
||||
url = file.gsub(/^content/, "https://danilafe.com").delete_suffix("/index.md").delete_suffix(".md")
|
||||
File.readlines(file).each do |l|
|
||||
if l =~ /^title: (.+)$/
|
||||
name = $~[1].delete_prefix('"').delete_suffix('"')
|
||||
elsif l =~ /^draft: true$/
|
||||
draft = true
|
||||
elsif l =~ /^tags: (.+)$/
|
||||
tags = $~[1].delete_prefix("[").delete_suffix("]").split(/,\s?/).map { |it| it.gsub('"', '') }
|
||||
if tags.include? "Compilers"
|
||||
@@ -60,7 +63,8 @@ files.each do |file|
|
||||
end
|
||||
end
|
||||
end
|
||||
data[file] = { :id => id, :label => name, :group => group, :tags => tags, :url => url, :value => value }
|
||||
next if draft
|
||||
data[file] = { :id => id, :name => name, :group => group, :tags => tags, :url => url, :value => value }
|
||||
end
|
||||
|
||||
edges = []
|
||||
@@ -72,6 +76,8 @@ files.each do |file1|
|
||||
# end
|
||||
next unless frefs = refs[file1]
|
||||
frefs.each do |ref|
|
||||
next unless data[file1]
|
||||
next unless data[ref]
|
||||
edges << { :from => data[file1][:id], :to => data[ref][:id] }
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user