class Gistim::Create
Attributes
alias_name[R]
url[R]
Public Class Methods
new(description: nil, alias_name: nil)
click to toggle source
# File lib/gistim/create.rb, line 3 def initialize(description: nil, alias_name: nil) @alias_name = alias_name @description = description end
Public Instance Methods
description()
click to toggle source
# File lib/gistim/create.rb, line 25 def description @description ||= '# Hello Gist!' end
directory()
click to toggle source
# File lib/gistim/create.rb, line 29 def directory "#{Gistim::Command.home}/#{name}" end
hash()
click to toggle source
# File lib/gistim/create.rb, line 21 def hash url.nil? ? nil : url.chomp.gsub(/\A.+\//, '') end
implement()
click to toggle source
# File lib/gistim/create.rb, line 10 def implement File.write(initialize_file_path, description) @url = create_empty clone File.delete(initialize_file_path) self end
name()
click to toggle source
# File lib/gistim/create.rb, line 33 def name alias_name || hash end
Private Instance Methods
clone()
click to toggle source
# File lib/gistim/create.rb, line 39 def clone Clone.clone(url, clone_directory: directory) end
create_empty()
click to toggle source
# File lib/gistim/create.rb, line 43 def create_empty # Execute `$ gist [some_file]` command and get gist url result url = `gist #{initialize_file_path}`.chomp url end
initialize_file_path()
click to toggle source
# File lib/gistim/create.rb, line 50 def initialize_file_path 'GIST.md' end