Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/mkwebook/ext/string.rb

Instance Method Summary collapse

Instance Method Details

#expaObject



6
7
8
# File 'lib/mkwebook/ext/string.rb', line 6

def expa
  File.expand_path(self)
end

#fObject



10
11
12
# File 'lib/mkwebook/ext/string.rb', line 10

def f
  expa
end

#normalize_file_path(force_extname = nil) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/mkwebook/ext/string.rb', line 14

def normalize_file_path(force_extname = nil)
  uri = URI.parse(self)
  file_path = uri.path[1..]
  extname = File.extname(file_path)
  basename = File.basename(file_path, extname)
  origin = "#{uri.scheme.try { |s| s + '_' }}#{uri.host}#{uri.port.try { |p| '_' + p.to_s }}"
  basename += "_#{Digest::MD5.hexdigest(uri.query)}" if uri.query.present?
  extname = force_extname if force_extname && extname.empty?
  File.join(origin, File.dirname(file_path), basename + extname)
end

#normalize_uri(force_extname = nil) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/mkwebook/ext/string.rb', line 25

def normalize_uri(force_extname = nil)
  uri = URI.parse(self)
  file_path = uri.path[1..]
  extname = File.extname(file_path)
  basename = File.basename(file_path, extname)
  basename += "_#{Digest::MD5.hexdigest(uri.query)}" if uri.query.present?
  origin = "#{uri.scheme.try { |s| s + '_' }}#{uri.host}#{uri.port.try { |p| '_' + p.to_s }}"
  extname = force_extname if force_extname && extname.empty?
  file_path = File.join(origin, File.dirname(file_path), basename + extname)
  if uri.fragment.present?
    file_path += "##{uri.fragment}"
  else
    file_path
  end
end

#pObject



2
3
4
# File 'lib/mkwebook/ext/string.rb', line 2

def p
  puts self
end

#relative_path_from(base) ⇒ Object



41
42
43
# File 'lib/mkwebook/ext/string.rb', line 41

def relative_path_from(base)
  Pathname.new(self).relative_path_from(Pathname.new(base)).to_s.gsub(%r{^\.\./}, '')
end