Class: Nautilus::Scripts

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/nautilus_scripts.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(items = nil) ⇒ Scripts

Returns a new instance of Scripts.



6
7
8
9
10
11
# File 'lib/nautilus_scripts.rb', line 6

def initialize(items=nil)
  @items = []
  Scripts.selected_uris(items).each { |item|
    @items << defile(item)
  }
end

Class Method Details

.current_uri(default = "") ⇒ Object

NAUTILUS_SCRIPT_CURRENT_URI=file:///home/tmp/steeve/nexus_5/links/20161202/Internal%20shared%20storage/DCIM/Camera NAUTILUS_SCRIPT_SELECTED_FILE_PATHS=‘/home/tmp/steeve/nexus_5/links/20161202/Internal shared storage/DCIM/Camera/IMG_20131122_111539.jpg NAUTILUS_SCRIPT_SELECTED_URIS=’file:///home/tmp/steeve/nexus_5/links/20161202/Internal%20shared%20storage/DCIM/Camera/IMG_20131122_111539.jpg NAUTILUS_SCRIPT_WINDOW_GEOMETRY=1540x808+26+23



21
22
23
# File 'lib/nautilus_scripts.rb', line 21

def self.current_uri(default="")
  ENV['NAUTILUS_SCRIPT_CURRENT_URI']||default
end

.selected_file_paths(default = "") ⇒ Object



25
26
27
# File 'lib/nautilus_scripts.rb', line 25

def self.selected_file_paths(default="")
  (ENV['NAUTILUS_SCRIPT_SELECTED_FILE_PATHS']||default).split(/\n/)
end

.selected_uris(default = "") ⇒ Object



29
30
31
# File 'lib/nautilus_scripts.rb', line 29

def self.selected_uris(default="")
  (ENV['NAUTILUS_SCRIPT_SELECTED_URIS']||default).split(/\n/)
end

.window_geometry(default = "") ⇒ Object



33
34
35
36
37
38
39
40
41
# File 'lib/nautilus_scripts.rb', line 33

def self.window_geometry(default="")
  geo=ENV['NAUTILUS_SCRIPT_WINDOW_GEOMETRY']||default
  m=geo.match(/(?<w>\d+)x(?<h>\d+)\+(?<x>\d+)\+(?<y>\d+)/)
  h={}
  [:x, :y, :w, :h].each { |k|
    h[k]=m.nil? ? nil : m[k]
  }
  return h
end

Instance Method Details

#defile(item) ⇒ Object



13
14
15
# File 'lib/nautilus_scripts.rb', line 13

def defile(item)
  item.sub(/^file:\/\//, "").gsub(/%20/, " ")
end

#each(&block) ⇒ Object



43
44
45
46
47
# File 'lib/nautilus_scripts.rb', line 43

def each(&block)
  @items.each { |item|
    block.call(item)
  }
end