diff --git a/xbar/brew-updates.1h.rb b/xbar/brew-updates.1h.rb index e519f05..a0529ee 100755 --- a/xbar/brew-updates.1h.rb +++ b/xbar/brew-updates.1h.rb @@ -2,7 +2,7 @@ # frozen_string_literal: true # Brew Updates -# v2.2.2 +# v2.2.3 # Jim Myhrberg # jimeh # List and manage outdated Homebrew formulas and casks @@ -43,6 +43,9 @@ module Xbar private def print_item(text, **props) + props = props.dup + alt = props.delete(:alt) + output = [text] unless props.empty? props = normalize_props(props) @@ -52,6 +55,10 @@ module Xbar $stdout.print(SUB_STR * nested_level, output.join(' ')) $stdout.puts + + return if alt.nil? || alt.empty? + + print_item(alt, **props.merge(alternate: true)) end def plugin_refresh_uri @@ -242,28 +249,21 @@ module Brew printer.item(formula.name) do |printer| printer.item( 'Upgrade', + alt: 'Upgrade ' \ + "(#{formula.current_version} → #{formula.latest_version})", terminal: true, refresh: true, shell: [brew_path, 'upgrade', formula.name] ) - printer.item( - "Upgrade (#{formula.current_version} → #{formula.latest_version})", - alternate: true, terminal: true, refresh: true, - shell: [brew_path, 'upgrade', formula.name] - ) printer.sep printer.item("Installed: #{formula.installed_versions.join(', ')}") printer.item("Latest: #{formula.latest_version}") printer.sep printer.item( 'Pin', + alt: "Pin (to #{formula.current_version})", terminal: false, refresh: true, shell: [brew_path, 'pin', formula.name] ) - printer.item( - "Pin (to #{formula.current_version})", - alternate: true, terminal: false, refresh: true, - shell: [brew_path, 'pin', formula.name] - ) printer.item('Uninstall') do |printer| printer.item('Are you sure?') printer.item( @@ -285,14 +285,11 @@ module Brew printer.item(cask.name) do |printer| printer.item( 'Upgrade', + alt: 'Upgrade '\ + "(#{cask.current_version} → #{cask.latest_version})", terminal: true, refresh: true, shell: [brew_path, 'upgrade', '--cask', cask.name] ) - printer.item( - "Upgrade (#{cask.current_version} → #{cask.latest_version})", - alternate: true, terminal: true, refresh: true, - shell: [brew_path, 'upgrade', '--cask', cask.name] - ) printer.sep printer.item("Installed: #{cask.installed_version}") printer.item("Latest: #{cask.latest_version}") @@ -317,10 +314,10 @@ module Brew printer.item("Pinned Formulas (#{pinned.size}):") pinned.each do |formula| printer.item(formula.name) do |printer| - printer.item('Upgrade') printer.item( - "Upgrade (#{formula.current_version} → #{formula.latest_version})", - alternate: true + 'Upgrade', + alt: 'Upgrade ' \ + "(#{formula.current_version} → #{formula.latest_version})" ) printer.sep printer.item("Pinned: #{formula.pinned_version}")