From bb35b6ec6f89e0200d711b7a88b67061ca8cbb9b Mon Sep 17 00:00:00 2001 From: Riccardo Spagni <ric@spagni.net> Date: Thu, 19 Feb 2015 15:05:59 +0200 Subject: [PATCH] wrote Moneropedia plugin, initial test entries --- _plugins/moneropedia.rb | 65 ++++++++++++++++++++++++ downloads/index.md | 4 +- knowledge-base/moneropedia/block.md | 8 +++ knowledge-base/moneropedia/blockchain.md | 8 +++ knowledge-base/moneropedia/index.md | 4 +- 5 files changed, 86 insertions(+), 3 deletions(-) create mode 100644 _plugins/moneropedia.rb create mode 100644 knowledge-base/moneropedia/block.md create mode 100644 knowledge-base/moneropedia/blockchain.md diff --git a/_plugins/moneropedia.rb b/_plugins/moneropedia.rb new file mode 100644 index 00000000..dadece05 --- /dev/null +++ b/_plugins/moneropedia.rb @@ -0,0 +1,65 @@ +# Copyright (c) 2014-2015, The Monero Project +# +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without modification, are +# permitted provided that the following conditions are met: +# +# 1. Redistributions of source code must retain the above copyright notice, this list of +# conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright notice, this list +# of conditions and the following disclaimer in the documentation and/or other +# materials provided with the distribution. +# +# 3. Neither the name of the copyright holder nor the names of its contributors may be +# used to endorse or promote products derived from this software without specific +# prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF +# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +module Jekyll + module Converters + class Markdown < Converter + alias base_converter convert + @@moneropedia = Array.new + + def convert(content) + # build up index of Moneropedia summaries + if @@moneropedia.empty? + + # grab all .md files in the Moneropedia folder, ignore index.md + moneropedia_path = File.join(@config["source"], "/knowledge-base/moneropedia/*.md") + files = Dir.glob(moneropedia_path).reject{|f| f =~ Regexp.new('index.md', Regexp::EXTENDED | Regexp::IGNORECASE) } + + # step through all the files + files.each do |entry_file| + entry = { } + entry = SafeYAML.load_file(entry_file) + + if !entry.empty? + @@moneropedia.push({ :terms => entry['terms'], :summary => entry['summary'] }) + end + end + end + + + @@moneropedia.each do |entry| + entry[:terms].each do |term| + content = content.gsub(/(@#{term})\b/i, '<a href="/knowledge-base/moneropedia/' + term + '" data-toggle="tooltip" data-placement="top" data-original-title="' + entry[:summary] + '">' + term + '</a>') + end + end + + base_converter(content) + end + end + end +end \ No newline at end of file diff --git a/downloads/index.md b/downloads/index.md index 129b17d7..68daacee 100644 --- a/downloads/index.md +++ b/downloads/index.md @@ -13,7 +13,7 @@ attribution: "<!-- Icon is based on work by Freepik (http://www.freepik.com) and Monero Core consists of several applications, including bitmonerod (the daemon that maintains the connection to the network) and simplewallet (a Monero account manager application), as well as several other helper applications. -If you are using Monero Core for the first time you may want to download a blockchain bootstrap to get you started. A link to download the blockchain bootstrap is included in the listings below. +If you are using Monero Core for the first time you may want to download a @blockchain bootstrap to get you started. A link to download the @blockchain bootstrap is included in the listings below. <div class="row"> @@ -75,6 +75,6 @@ If you are using Monero Core for the first time you may want to download a block ### Other Downloads -- For blockchain bootstraps please use the link for your current platform from the list above. +- For @blockchain bootstraps please use the link for your current platform from the list above. - For Monero Research Lab publications please visit the [Monero Research Lab section](/research-lab) of this site. - High resolution and vector copies of the Monero logo [can be downloaded at this link](/downloads/resources/branding.zip). diff --git a/knowledge-base/moneropedia/block.md b/knowledge-base/moneropedia/block.md new file mode 100644 index 00000000..2729e23f --- /dev/null +++ b/knowledge-base/moneropedia/block.md @@ -0,0 +1,8 @@ +--- +layout: static_page +title: "Block | Moneropedia" +terms: ["block", "blocks"] +summary: "Blocks rock my socks" +--- + +### Work in Progress diff --git a/knowledge-base/moneropedia/blockchain.md b/knowledge-base/moneropedia/blockchain.md new file mode 100644 index 00000000..66e3dd10 --- /dev/null +++ b/knowledge-base/moneropedia/blockchain.md @@ -0,0 +1,8 @@ +--- +layout: static_page +title: "Blockchain | Moneropedia" +terms: ["blockchain", "blockchains"] +summary: "The blockchain is a blockchain" +--- + +### Work in Progress diff --git a/knowledge-base/moneropedia/index.md b/knowledge-base/moneropedia/index.md index c730f2dd..05da1224 100644 --- a/knowledge-base/moneropedia/index.md +++ b/knowledge-base/moneropedia/index.md @@ -9,4 +9,6 @@ icon: "icon_wiki" attribution: "<!-- Icon is based on work by Freepik (http://www.freepik.com) and is licensed under Creative Commons BY 3.0 -->" --- -### Work in Progress \ No newline at end of file +### Work in Progress + +This is a test of the <a href="#" data-toggle="tooltip" data-placement="top" data-original-title="Default tooltip">Tooltip</a> thingy. \ No newline at end of file -- GitLab