Class: Jekyll::Commands::New

### Home Classes Methods

### In Files

- lib/jekyll/commands/new.rb

### Parent

Jekyll::Command

### Methods

- ::create_blank_site
- ::initialized_post_name
- ::process
- ::scaffold_post_content

### Files

- LICENSE

### Class/Module Index

Quicksearch

- Jekyll
- Jekyll::Command
- Jekyll::Commands
- Jekyll::Commands::Build
- Jekyll::Commands::Doctor
- Jekyll::Commands::New
- Jekyll::Commands::Serve
- Jekyll::Configuration
- Jekyll::Converter
- Jekyll::Converters
- Jekyll::Converters::Identity
- Jekyll::Converters::Markdown
- Jekyll::Converters::Markdown::KramdownParser
- Jekyll::Converters::Markdown::MarukuParser
- Jekyll::Converters::Markdown::RDiscountParser
- Jekyll::Converters::Markdown::RedcarpetParser
- Jekyll::Converters::Markdown::RedcarpetParser::CommonMethods
- Jekyll::Converters::Markdown::RedcarpetParser::WithPygments
- Jekyll::Converters::Markdown::RedcarpetParser::WithoutPygments
- Jekyll::Converters::Textile
- Jekyll::Convertible
- Jekyll::Deprecator
- Jekyll::Draft
- Jekyll::Excerpt
- Jekyll::FatalException
- Jekyll::Filters
- Jekyll::Generator
- Jekyll::Generators
- Jekyll::Generators::Pagination
- Jekyll::GistTag
- Jekyll::Layout
- Jekyll::Page
- Jekyll::Pager
- Jekyll::Plugin
- Jekyll::Post
- Jekyll::RelatedPosts
- Jekyll::Site
- Jekyll::Site::Cleaner
- Jekyll::StaticFile
- Jekyll::Stevenson
- Jekyll::Tags
- Jekyll::Tags::HighlightBlock
- Jekyll::Tags::IncludeTag
- Jekyll::Tags::PostComparer
- Jekyll::Tags::PostUrl
- Jekyll::URL
- Date
- Enumerable
- Hash
- Object

No matching classes.

# Jekyll::Commands::New

### Public Class Methods

create_blank_site(path) click to toggle source

    # File lib/jekyll/commands/new.rb, line 29
    def self.create_blank_site(path)
      Dir.chdir(path) do
        FileUtils.mkdir(%(_layouts _posts _drafts))
        FileUtils.touch("index.html")
      end
    end

initialized_post_name() click to toggle source

Internal: Gets the filename of the sample post to be created

Returns the filename of the sample post, as a String

    # File lib/jekyll/commands/new.rb, line 43
    def self.initialized_post_name
      "_posts/#{Time.now.strftime('%Y-%m-%d')}-welcome-to-jekyll.markdown"
    end

process(args, options = {}) click to toggle source

    # File lib/jekyll/commands/new.rb, line 6
    def self.process(args, options = {})
      raise ArgumentError.new('You must specify a path.') if args.empty?

      new_blog_path = File.expand_path(args.join(" "), Dir.pwd)
      FileUtils.mkdir_p new_blog_path
      if preserve_source_location?(new_blog_path, options)
        Jekyll.logger.error "Conflict:", "#{new_blog_path} exists and is not empty."
        exit(1)
      end

      if options[:blank]
        create_blank_site new_blog_path
      else
        create_sample_files new_blog_path

        File.open(File.expand_path(self.initialized_post_name, new_blog_path), "w") do |f|
          f.write(self.scaffold_post_content)
        end
      end

      puts "New jekyll site installed in #{new_blog_path}."
    end

scaffold_post_content() click to toggle source

    # File lib/jekyll/commands/new.rb, line 36
    def self.scaffold_post_content
      ERB.new(File.read(File.expand_path(scaffold_path, site_template))).result
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.