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.



9
10
11
12
13
14
# File 'lib/nautilus_scripts.rb', line 9

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/bjs/nexus_5/links/20161202/Internal%20shared%20storage/DCIM/Camera



27
28
29
# File 'lib/nautilus_scripts.rb', line 27

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

.selected_file_paths(default = "") ⇒ Object

NAUTILUS_SCRIPT_SELECTED_FILE_PATHS=‘/home/tmp/bjs/nexus_5/links/20161202/Internal shared storage/DCIM/Camera/IMG_20131122_111539.jpg



32
33
34
# File 'lib/nautilus_scripts.rb', line 32

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

.selected_uris(default = "") ⇒ Object

NAUTILUS_SCRIPT_SELECTED_URIS=‘file:///home/tmp/bjs/nexus_5/links/20161202/Internal%20shared%20storage/DCIM/Camera/IMG_20131122_111539.jpg



37
38
39
# File 'lib/nautilus_scripts.rb', line 37

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

.window_geometry(default = "") ⇒ Object

NAUTILUS_SCRIPT_WINDOW_GEOMETRY=1540x808+26+23



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

def self.window_geometry(default="")
  geo=ENV['NAUTILUS_SCRIPT_WINDOW_GEOMETRY']||default
  m=geo.match(GEOMETRY_RE)
  h={}
  [:x, :y, :w, :h].map { |k| h[k]=m.nil? ? nil : m[k] }
  return h
end

Instance Method Details

#defile(item) ⇒ Object

Convert file URI to filesystem path



17
18
19
# File 'lib/nautilus_scripts.rb', line 17

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

#each(&block) ⇒ Object



50
51
52
53
54
# File 'lib/nautilus_scripts.rb', line 50

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

#refile(item) ⇒ Object

Convert filesystem path to file URI



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

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