planet 0.3.8 → 0.3.9
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/bin/planet +65 -43
- data/lib/planet/version.rb +1 -1
- metadata +2 -2
    
        data/bin/planet
    CHANGED
    
    | @@ -5,6 +5,43 @@ require 'planet' | |
| 5 5 |  | 
| 6 6 | 
             
            include GLI
         | 
| 7 7 |  | 
| 8 | 
            +
            TEMPLATES = {
         | 
| 9 | 
            +
              author:  '
         | 
| 10 | 
            +
            <div class="author">
         | 
| 11 | 
            +
              <img src="{{ image_url }}" style="width: 96px; height: 96;">
         | 
| 12 | 
            +
              <span style="position: absolute; padding: 32px 15px;">
         | 
| 13 | 
            +
                <i>Original post by <a href="{{ twitter_url }}">{{ author }}</a> - check out <a href="{{ blog_url }}">{{ blog_name }}</a></i>
         | 
| 14 | 
            +
              </span>
         | 
| 15 | 
            +
            </div>
         | 
| 16 | 
            +
            ',
         | 
| 17 | 
            +
              header: '---
         | 
| 18 | 
            +
            title: "{{ post_title }}"
         | 
| 19 | 
            +
            kind: article
         | 
| 20 | 
            +
            created_at: {{ post_date }}
         | 
| 21 | 
            +
            author: {{ author }}
         | 
| 22 | 
            +
            layout: post
         | 
| 23 | 
            +
            ---
         | 
| 24 | 
            +
            ',
         | 
| 25 | 
            +
              planet: '## Planet.rb default config file, modify it and spawn awesomeness!
         | 
| 26 | 
            +
             | 
| 27 | 
            +
            planet:
         | 
| 28 | 
            +
                posts_directory: source/_posts/
         | 
| 29 | 
            +
                templates_directory: source/_layouts/
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            blogs:
         | 
| 32 | 
            +
              # Bare minimum to get it working
         | 
| 33 | 
            +
              - author: "Cubox"
         | 
| 34 | 
            +
                feed:   "http://blog.cuboxlabs.com/atom.xml"
         | 
| 35 | 
            +
                image:  "http://cuboxlabs.com/img/cubox-humans/could-be-you.png"
         | 
| 36 | 
            +
             | 
| 37 | 
            +
              - author: "Pablo Astigarraga"
         | 
| 38 | 
            +
                feed:   "http://blog.poteland.com/atom.xml"
         | 
| 39 | 
            +
                image:  "http://poteland.com/images/avatars/red_mage.png"
         | 
| 40 | 
            +
                # Other fields:
         | 
| 41 | 
            +
                twitter: "poteland"
         | 
| 42 | 
            +
                url: "http://blog.poteland.com"    # => only required for people that don\'t have a \'url\' field on their RSS/Atom field'
         | 
| 43 | 
            +
            }
         | 
| 44 | 
            +
             | 
| 8 45 | 
             
            program_desc 'Planet.rb is an awesome feed-aggregator gem that consumes RSS/Atom feeds and outputs them in a format suitable to use with Octopress or Jekyll'
         | 
| 9 46 |  | 
| 10 47 | 
             
            desc 'Parses planet.yml file for blogs and generates their posts in Jekyll compliant format under the _posts directory'
         | 
| @@ -38,27 +75,7 @@ command :init do |c| | |
| 38 75 | 
             
              c.action do |global_options,options,args|
         | 
| 39 76 | 
             
                abort 'There is already a planet.yml file present' if File.exist? 'planet.yml'
         | 
| 40 77 |  | 
| 41 | 
            -
                 | 
| 42 | 
            -
             | 
| 43 | 
            -
            planet:
         | 
| 44 | 
            -
                posts_directory: source/_posts/
         | 
| 45 | 
            -
                templates_directory: source/_layouts/
         | 
| 46 | 
            -
             | 
| 47 | 
            -
            blogs:
         | 
| 48 | 
            -
              # Bare minimum to get it working
         | 
| 49 | 
            -
              - author: "Cubox"
         | 
| 50 | 
            -
                feed:   "http://blog.cuboxlabs.com/atom.xml"
         | 
| 51 | 
            -
                image:  "http://cuboxlabs.com/img/cubox-humans/could-be-you.png"
         | 
| 52 | 
            -
             | 
| 53 | 
            -
              - author: "Pablo Astigarraga"
         | 
| 54 | 
            -
                feed:   "http://blog.poteland.com/atom.xml"
         | 
| 55 | 
            -
                image:  "http://poteland.com/images/avatars/red_mage.png"
         | 
| 56 | 
            -
                # Other fields:
         | 
| 57 | 
            -
                twitter: "poteland"
         | 
| 58 | 
            -
                url: "http://blog.poteland.com"    # => only required for people that don\'t have a \'url\' field on their RSS/Atom field'
         | 
| 59 | 
            -
             | 
| 60 | 
            -
             | 
| 61 | 
            -
                File.open('planet.yml', 'w') { |f| f.write(default) }
         | 
| 78 | 
            +
                File.open('planet.yml', 'w') { |f| f.write(TEMPLATES[:planet]) }
         | 
| 62 79 |  | 
| 63 80 | 
             
                puts '=> Created default planet.yml'
         | 
| 64 81 | 
             
              end
         | 
| @@ -69,35 +86,19 @@ command :create_templates do |c| | |
| 69 86 | 
             
              c.action do |global_options,options,args|
         | 
| 70 87 | 
             
                conf = YAML.load_file('planet.yml')
         | 
| 71 88 |  | 
| 72 | 
            -
                templates_dir = conf.fetch('planet').fetch('templates_directory', '_layouts/')
         | 
| 89 | 
            +
                templates_dir = conf.fetch('planet').fetch('templates_directory', 'source/_layouts/')
         | 
| 73 90 |  | 
| 74 91 | 
             
                FileUtils.mkdir_p(templates_dir)
         | 
| 75 92 |  | 
| 76 | 
            -
                author = '
         | 
| 77 | 
            -
            <div class="author">
         | 
| 78 | 
            -
              <img src="{{ image_url }}" style="width: 96px; height: 96;">
         | 
| 79 | 
            -
              <span style="position: absolute; padding: 32px 15px;">
         | 
| 80 | 
            -
                <i>Original post by <a href="{{ twitter_url }}">{{ author }}</a> - check out <a href="{{ blog_url }}">{{ blog_name }}</a></i>
         | 
| 81 | 
            -
              </span>
         | 
| 82 | 
            -
            </div>
         | 
| 83 | 
            -
            '
         | 
| 84 93 | 
             
                if !File.exists?(templates_dir + 'author.html')
         | 
| 85 | 
            -
                  File.open(templates_dir + 'author.html', 'w') { |f| f.write(author) }
         | 
| 94 | 
            +
                  File.open(templates_dir + 'author.html', 'w') { |f| f.write(TEMPLATES[:author]) }
         | 
| 86 95 | 
             
                  puts "=> Created default #{ templates_dir }author.html"
         | 
| 87 96 | 
             
                else
         | 
| 88 97 | 
             
                  puts "=> Template #{ templates_dir }author.html already exists, skipping"
         | 
| 89 98 | 
             
                end
         | 
| 90 99 |  | 
| 91 | 
            -
                header ='---
         | 
| 92 | 
            -
            title: "{{ post_title }}"
         | 
| 93 | 
            -
            kind: article
         | 
| 94 | 
            -
            created_at: {{ post_date }}
         | 
| 95 | 
            -
            author: {{ author }}
         | 
| 96 | 
            -
            layout: post
         | 
| 97 | 
            -
            ---
         | 
| 98 | 
            -
            '
         | 
| 99 100 | 
             
                if !File.exists?(templates_dir + 'header.md')
         | 
| 100 | 
            -
                  File.open(templates_dir + 'header.md', 'w') { |f| f.write(header) }
         | 
| 101 | 
            +
                  File.open(templates_dir + 'header.md', 'w') { |f| f.write(TEMPLATES[:header]) }
         | 
| 101 102 | 
             
                  puts "=> Created default #{ templates_dir }header.md"
         | 
| 102 103 | 
             
                else
         | 
| 103 104 | 
             
                  puts "=> Template #{ templates_dir }header.md already exists, skipping"
         | 
| @@ -105,6 +106,25 @@ layout: post | |
| 105 106 | 
             
              end
         | 
| 106 107 | 
             
            end
         | 
| 107 108 |  | 
| 109 | 
            +
            desc 'Delete existing templates and recreate them'
         | 
| 110 | 
            +
            command :update_templates do |c|
         | 
| 111 | 
            +
              c.action do |global_options,options,args|
         | 
| 112 | 
            +
                conf = YAML.load_file('planet.yml')
         | 
| 113 | 
            +
             | 
| 114 | 
            +
                templates_dir = conf.fetch('planet').fetch('templates_directory', 'source/_layouts/')
         | 
| 115 | 
            +
             | 
| 116 | 
            +
                author = templates_dir + 'author.html'
         | 
| 117 | 
            +
                header = templates_dir + 'header.md'
         | 
| 118 | 
            +
             | 
| 119 | 
            +
             | 
| 120 | 
            +
                File.delete(author) if File.exists?(author)
         | 
| 121 | 
            +
                File.delete(header) if File.exists?(header)
         | 
| 122 | 
            +
             | 
| 123 | 
            +
                response = `#{ $0 } create_templates`
         | 
| 124 | 
            +
                puts response
         | 
| 125 | 
            +
              end
         | 
| 126 | 
            +
            end
         | 
| 127 | 
            +
             | 
| 108 128 | 
             
            pre do |global,command,options,args|
         | 
| 109 129 | 
             
              if command.name == :generate
         | 
| 110 130 | 
             
                conf = YAML.load_file('planet.yml')
         | 
| @@ -112,13 +132,15 @@ pre do |global,command,options,args| | |
| 112 132 | 
             
                templates_dir = conf.fetch('planet').fetch('templates_directory', 'source/_layouts')
         | 
| 113 133 | 
             
                FileUtils.mkdir_p(templates_dir)
         | 
| 114 134 |  | 
| 115 | 
            -
                files =  | 
| 135 | 
            +
                files = { author: templates_dir + 'author.html', header: templates_dir + 'header.md' }
         | 
| 116 136 |  | 
| 117 | 
            -
                files.each do | | 
| 118 | 
            -
                   | 
| 137 | 
            +
                files.each do |name, path|
         | 
| 138 | 
            +
                  if !File.exists?(path)
         | 
| 119 139 | 
             
                    puts "=> You are missing some files in your templates directory, planet.rb will create them for you - make sure to review them on #{ templates_dir }!"
         | 
| 120 140 | 
             
                    response = `#{$0} create_templates`
         | 
| 121 141 | 
             
                    puts response
         | 
| 142 | 
            +
                  elsif TEMPLATES[name] != File.read(path)
         | 
| 143 | 
            +
                    puts "!! WARNING: your planet.rb template files are different from the default, if you haven't made specific changes to them yourself then planet.rb default templates might have changed.Run 'planet update_templates' to override your current files with the newest default file available."
         | 
| 122 144 | 
             
                  end
         | 
| 123 145 | 
             
                end
         | 
| 124 146 | 
             
              end
         | 
    
        data/lib/planet/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: planet
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.3. | 
| 4 | 
            +
              version: 0.3.9
         | 
| 5 5 | 
             
              prerelease: 
         | 
| 6 6 | 
             
            platform: ruby
         | 
| 7 7 | 
             
            authors:
         | 
| @@ -9,7 +9,7 @@ authors: | |
| 9 9 | 
             
            autorequire: 
         | 
| 10 10 | 
             
            bindir: bin
         | 
| 11 11 | 
             
            cert_chain: []
         | 
| 12 | 
            -
            date: 2012-04- | 
| 12 | 
            +
            date: 2012-04-24 00:00:00.000000000 Z
         | 
| 13 13 | 
             
            dependencies:
         | 
| 14 14 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 15 15 | 
             
              name: rake
         |