class Lerna::Strategies::Wall

Public Instance Methods

applicable?() click to toggle source
# File lib/lerna/strategies/wall.rb, line 6
def applicable?
  wanted_displays.length >= 2
end
configure() click to toggle source
# File lib/lerna/strategies/wall.rb, line 17
def configure
  names = wanted_displays.map(&:name)
  leftmost = configure_one(names.first)
  names.each_cons(2).inject(leftmost) { |a, (l, r)|
    a + configure_one(r) + ['--right-of', l]
  }
end
preconfigure() click to toggle source
# File lib/lerna/strategies/wall.rb, line 10
def preconfigure
  disconnected = displays - wanted_displays
  disconnected.flat_map { |d|
    ['--output', d.name, '--off']
  }
end

Private Instance Methods

configure_one(name) click to toggle source
# File lib/lerna/strategies/wall.rb, line 34
def configure_one(name)
  ['--output', name, '--auto', '--rotate', 'normal']
end
wanted_displays() click to toggle source
# File lib/lerna/strategies/wall.rb, line 27
def wanted_displays
  displays.
    select(&:connected?).
    select { |d| d.external? && d.digital? }.
    sort_by(&:name)
end