clipboard 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/clipboard.gemspec +2 -3
- data/lib/clipboard.rb +1 -1
- data/lib/clipboard/cygwin.rb +13 -13
- data/lib/clipboard/file.rb +14 -14
- data/lib/clipboard/java.rb +18 -18
- data/lib/clipboard/linux.rb +31 -31
- data/lib/clipboard/mac.rb +13 -13
- data/lib/clipboard/version.rb +1 -1
- data/lib/clipboard/windows.rb +67 -67
- data/spec/clipboard_spec.rb +2 -3
- metadata +11 -11
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: c91049aa4bbdb688bc936ab74e419a79168565c5
         | 
| 4 | 
            +
              data.tar.gz: 4556c855410c5585d338d9a75bb68e2370beb0b5
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 06c1548b9cf38578c899021de84979e85147db85b7bc4909cfcf96dc53b7457368fce3fce9f1cae992c64e21ab60832d5210894a1ee266e73e00105c2187805d
         | 
| 7 | 
            +
              data.tar.gz: 9479f050e48e56f3d3f9c0c0028e7b409b5f5359d37d9249aa16b0accef35368912ce25976ea0d53cd75beeb253cb1fb7eb9a8d0d828965517c7a9090ced1fe9
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,5 +1,10 @@ | |
| 1 1 | 
             
            # CHANGELOG
         | 
| 2 2 |  | 
| 3 | 
            +
            ## 1.1.1
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            * Surpress 3rd party processes' STDERR, see #26
         | 
| 6 | 
            +
            * Internal API changes to meet modified relaxed ruby style guidelines
         | 
| 7 | 
            +
             | 
| 3 8 | 
             
            ## 1.1.0
         | 
| 4 9 | 
             
            * Remove support for 1.8
         | 
| 5 10 | 
             
            * Windows: Fix that the gem tries to convert encoding of pasted strings, leave this to user
         | 
    
        data/clipboard.gemspec
    CHANGED
    
    | @@ -1,5 +1,4 @@ | |
| 1 1 | 
             
            # -*- encoding: utf-8 -*-
         | 
| 2 | 
            -
            require 'rubygems' unless defined? Gem
         | 
| 3 2 |  | 
| 4 3 | 
             
            $:.unshift File.expand_path("../lib", __FILE__)
         | 
| 5 4 | 
             
            require 'clipboard/version'
         | 
| @@ -21,6 +20,6 @@ Gem::Specification.new do |s| | |
| 21 20 | 
             
              s.files = Dir.glob(%w[{lib,spec}/**/*.rb [A-Z]*.txt [A-Z]*.md]) + %w{clipboard.gemspec}
         | 
| 22 21 |  | 
| 23 22 | 
             
              s.required_ruby_version = '>= 1.9.3'
         | 
| 24 | 
            -
              s.add_development_dependency 'rake'
         | 
| 25 | 
            -
              s.add_development_dependency 'rspec', ' | 
| 23 | 
            +
              s.add_development_dependency 'rake', '~> 11'
         | 
| 24 | 
            +
              s.add_development_dependency 'rspec', '~> 3'
         | 
| 26 25 | 
             
            end
         | 
    
        data/lib/clipboard.rb
    CHANGED
    
    
    
        data/lib/clipboard/cygwin.rb
    CHANGED
    
    | @@ -1,18 +1,18 @@ | |
| 1 | 
            -
            module Clipboard | 
| 1 | 
            +
            module Clipboard
         | 
| 2 | 
            +
              module Cygwin
         | 
| 3 | 
            +
                extend self
         | 
| 2 4 |  | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 5 | 
            +
                def paste(_ = nil)
         | 
| 6 | 
            +
                  File.read("/dev/clipboard")
         | 
| 7 | 
            +
                end
         | 
| 5 8 |  | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
              def copy(data)
         | 
| 11 | 
            -
                File.open("/dev/clipboard", "w"){ |f| f.write(data) }
         | 
| 12 | 
            -
                paste
         | 
| 13 | 
            -
              end
         | 
| 9 | 
            +
                def copy(data)
         | 
| 10 | 
            +
                  File.open("/dev/clipboard", "w"){ |f| f.write(data) }
         | 
| 11 | 
            +
                  paste
         | 
| 12 | 
            +
                end
         | 
| 14 13 |  | 
| 15 | 
            -
             | 
| 16 | 
            -
             | 
| 14 | 
            +
                def clear
         | 
| 15 | 
            +
                  copy ''
         | 
| 16 | 
            +
                end
         | 
| 17 17 | 
             
              end
         | 
| 18 18 | 
             
            end
         | 
    
        data/lib/clipboard/file.rb
    CHANGED
    
    | @@ -1,20 +1,20 @@ | |
| 1 | 
            -
            module Clipboard | 
| 1 | 
            +
            module Clipboard
         | 
| 2 | 
            +
              module File
         | 
| 3 | 
            +
                extend self
         | 
| 2 4 |  | 
| 3 | 
            -
             | 
| 4 | 
            -
              extend self
         | 
| 5 | 
            +
                FILE = ::File.expand_path("~/.clipboard")
         | 
| 5 6 |  | 
| 6 | 
            -
             | 
| 7 | 
            +
                def copy(text)
         | 
| 8 | 
            +
                  ::File.open(FILE, 'w', 0o0600) { |f| f.write(text) } rescue ''
         | 
| 9 | 
            +
                  paste
         | 
| 10 | 
            +
                end
         | 
| 7 11 |  | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
                 | 
| 11 | 
            -
              end
         | 
| 12 | 
            -
             | 
| 13 | 
            -
              def paste(_ = nil)
         | 
| 14 | 
            -
                File.read(FILE) rescue ''
         | 
| 15 | 
            -
              end
         | 
| 12 | 
            +
                def paste(_ = nil)
         | 
| 13 | 
            +
                  ::File.read(FILE) rescue ''
         | 
| 14 | 
            +
                end
         | 
| 16 15 |  | 
| 17 | 
            -
             | 
| 18 | 
            -
             | 
| 16 | 
            +
                def clear
         | 
| 17 | 
            +
                  copy ''
         | 
| 18 | 
            +
                end
         | 
| 19 19 | 
             
              end
         | 
| 20 20 | 
             
            end
         | 
    
        data/lib/clipboard/java.rb
    CHANGED
    
    | @@ -1,24 +1,24 @@ | |
| 1 | 
            -
            module Clipboard | 
| 1 | 
            +
            module Clipboard
         | 
| 2 | 
            +
              # Basic java clipboard access (jruby). No fun to use on X.
         | 
| 3 | 
            +
              module Java
         | 
| 4 | 
            +
                extend self
         | 
| 2 5 |  | 
| 3 | 
            -
             | 
| 4 | 
            -
            module Clipboard::Java
         | 
| 5 | 
            -
              extend self
         | 
| 6 | 
            +
                FLAVOR = ::Java::JavaAwtDatatransfer::DataFlavor.stringFlavor
         | 
| 6 7 |  | 
| 7 | 
            -
             | 
| 8 | 
            +
                def copy(text)
         | 
| 9 | 
            +
                  selection_string = ::Java::JavaAwtDatatransfer::StringSelection.new text
         | 
| 10 | 
            +
                  ::Java::JavaAwt::Toolkit.default_toolkit.system_clipboard.set_contents selection_string, nil
         | 
| 11 | 
            +
                  paste
         | 
| 12 | 
            +
                end
         | 
| 8 13 |  | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
                 | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 15 | 
            -
              def paste(_ = nil)
         | 
| 16 | 
            -
                ::Java::JavaAwt::Toolkit.default_toolkit.system_clipboard.get_data(FLAVOR)
         | 
| 17 | 
            -
              rescue
         | 
| 18 | 
            -
                ''
         | 
| 19 | 
            -
              end
         | 
| 14 | 
            +
                def paste(_ = nil)
         | 
| 15 | 
            +
                  ::Java::JavaAwt::Toolkit.default_toolkit.system_clipboard.get_data(FLAVOR)
         | 
| 16 | 
            +
                rescue
         | 
| 17 | 
            +
                  ''
         | 
| 18 | 
            +
                end
         | 
| 20 19 |  | 
| 21 | 
            -
             | 
| 22 | 
            -
             | 
| 20 | 
            +
                def clear
         | 
| 21 | 
            +
                  copy ''
         | 
| 22 | 
            +
                end
         | 
| 23 23 | 
             
              end
         | 
| 24 24 | 
             
            end
         | 
    
        data/lib/clipboard/linux.rb
    CHANGED
    
    | @@ -1,41 +1,41 @@ | |
| 1 1 | 
             
            require 'open3'
         | 
| 2 2 |  | 
| 3 | 
            -
            module Clipboard | 
| 3 | 
            +
            module Clipboard
         | 
| 4 | 
            +
              module Linux
         | 
| 5 | 
            +
                extend self
         | 
| 4 6 |  | 
| 5 | 
            -
             | 
| 6 | 
            -
              extend self
         | 
| 7 | 
            +
                CLIPBOARDS = %w[clipboard primary secondary].freeze
         | 
| 7 8 |  | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
               | 
| 12 | 
            -
                 | 
| 13 | 
            -
                 | 
| 14 | 
            -
             | 
| 15 | 
            -
               | 
| 16 | 
            -
                 | 
| 17 | 
            -
                 | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
                 | 
| 21 | 
            -
                      "On debian/ubuntu, you can install it with: sudo apt-get install xclip"
         | 
| 22 | 
            -
              end
         | 
| 9 | 
            +
                # check which backend to use
         | 
| 10 | 
            +
                if system('which xclip >/dev/null 2>&1')
         | 
| 11 | 
            +
                  WriteCommand = 'xclip'.freeze
         | 
| 12 | 
            +
                  ReadCommand  = 'xclip -o'.freeze
         | 
| 13 | 
            +
                  Selection    = proc{ |x| "-selection #{x}" }.freeze
         | 
| 14 | 
            +
                elsif system('which xsel >/dev/null 2>&1')
         | 
| 15 | 
            +
                  WriteCommand = 'xsel -i'.freeze
         | 
| 16 | 
            +
                  ReadCommand  = 'xsel -o'.freeze
         | 
| 17 | 
            +
                  Selection    = { 'clipboard' => '-b', 'primary' => '-p', 'secondary' => '-s' }.freeze
         | 
| 18 | 
            +
                else
         | 
| 19 | 
            +
                  raise Clipboard::ClipboardLoadError, "clipboard: Could not find required program xclip or xsel\n" \
         | 
| 20 | 
            +
                        "On debian/ubuntu, you can install it with: sudo apt-get install xclip"
         | 
| 21 | 
            +
                end
         | 
| 23 22 |  | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 23 | 
            +
                def paste(which = nil)
         | 
| 24 | 
            +
                  if !which || !CLIPBOARDS.include?(which.to_s.downcase)
         | 
| 25 | 
            +
                    which = CLIPBOARDS.first
         | 
| 26 | 
            +
                  end
         | 
| 27 | 
            +
                  `#{ReadCommand} #{Selection[which.to_s.downcase]} 2> /dev/null`
         | 
| 27 28 | 
             
                end
         | 
| 28 | 
            -
                `#{ReadCommand} #{Selection[which.to_s.downcase]}`
         | 
| 29 | 
            -
              end
         | 
| 30 29 |  | 
| 31 | 
            -
             | 
| 32 | 
            -
             | 
| 33 | 
            -
             | 
| 30 | 
            +
                def clear
         | 
| 31 | 
            +
                  copy ''
         | 
| 32 | 
            +
                end
         | 
| 34 33 |  | 
| 35 | 
            -
             | 
| 36 | 
            -
             | 
| 37 | 
            -
             | 
| 38 | 
            -
             | 
| 39 | 
            -
             | 
| 34 | 
            +
                def copy(data)
         | 
| 35 | 
            +
                  CLIPBOARDS.each{ |which|
         | 
| 36 | 
            +
                    Open3.popen3( "#{WriteCommand} #{Selection[which.to_s.downcase]}" ){ |input, _, _| input << data }
         | 
| 37 | 
            +
                  }
         | 
| 38 | 
            +
                  paste
         | 
| 39 | 
            +
                end
         | 
| 40 40 | 
             
              end
         | 
| 41 41 | 
             
            end
         | 
    
        data/lib/clipboard/mac.rb
    CHANGED
    
    | @@ -1,20 +1,20 @@ | |
| 1 1 | 
             
            require 'open3'
         | 
| 2 2 |  | 
| 3 | 
            -
            module Clipboard | 
| 3 | 
            +
            module Clipboard
         | 
| 4 | 
            +
              module Mac
         | 
| 5 | 
            +
                extend self
         | 
| 4 6 |  | 
| 5 | 
            -
             | 
| 6 | 
            -
             | 
| 7 | 
            +
                def paste(_ = nil)
         | 
| 8 | 
            +
                  `pbpaste`
         | 
| 9 | 
            +
                end
         | 
| 7 10 |  | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 12 | 
            -
              def copy(data)
         | 
| 13 | 
            -
                Open3.popen3( 'pbcopy' ){ |input,_,_| input << data }
         | 
| 14 | 
            -
                paste
         | 
| 15 | 
            -
              end
         | 
| 11 | 
            +
                def copy(data)
         | 
| 12 | 
            +
                  Open3.popen3( 'pbcopy' ){ |input, _, _| input << data }
         | 
| 13 | 
            +
                  paste
         | 
| 14 | 
            +
                end
         | 
| 16 15 |  | 
| 17 | 
            -
             | 
| 18 | 
            -
             | 
| 16 | 
            +
                def clear
         | 
| 17 | 
            +
                  copy ''
         | 
| 18 | 
            +
                end
         | 
| 19 19 | 
             
              end
         | 
| 20 20 | 
             
            end
         | 
    
        data/lib/clipboard/version.rb
    CHANGED
    
    
    
        data/lib/clipboard/windows.rb
    CHANGED
    
    | @@ -1,84 +1,84 @@ | |
| 1 1 | 
             
            require 'open3'
         | 
| 2 2 |  | 
| 3 | 
            -
            module Clipboard | 
| 3 | 
            +
            module Clipboard
         | 
| 4 | 
            +
              module Windows
         | 
| 5 | 
            +
                extend self
         | 
| 4 6 |  | 
| 5 | 
            -
             | 
| 6 | 
            -
             | 
| 7 | 
            +
                CF_TEXT = 1
         | 
| 8 | 
            +
                CF_UNICODETEXT = 13
         | 
| 9 | 
            +
                GMEM_MOVEABLE = 2
         | 
| 7 10 |  | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
                require 'ffi'
         | 
| 15 | 
            -
              rescue LoadError
         | 
| 16 | 
            -
                raise LoadError, 'Could not load the required ffi gem, install it with: gem install ffi'
         | 
| 17 | 
            -
              end
         | 
| 11 | 
            +
                # get ffi function handlers
         | 
| 12 | 
            +
                begin
         | 
| 13 | 
            +
                  require 'ffi'
         | 
| 14 | 
            +
                rescue LoadError
         | 
| 15 | 
            +
                  raise LoadError, 'Could not load the required ffi gem, install it with: gem install ffi'
         | 
| 16 | 
            +
                end
         | 
| 18 17 |  | 
| 19 | 
            -
             | 
| 20 | 
            -
             | 
| 21 | 
            -
             | 
| 22 | 
            -
             | 
| 18 | 
            +
                module User32
         | 
| 19 | 
            +
                  extend FFI::Library
         | 
| 20 | 
            +
                  ffi_lib "user32"
         | 
| 21 | 
            +
                  ffi_convention :stdcall
         | 
| 23 22 |  | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 28 | 
            -
             | 
| 29 | 
            -
             | 
| 23 | 
            +
                  attach_function :open,  :OpenClipboard,    [ :long ], :long
         | 
| 24 | 
            +
                  attach_function :close, :CloseClipboard,   [       ], :long
         | 
| 25 | 
            +
                  attach_function :empty, :EmptyClipboard,   [       ], :long
         | 
| 26 | 
            +
                  attach_function :get,   :GetClipboardData, [ :long ], :long
         | 
| 27 | 
            +
                  attach_function :set,   :SetClipboardData, [ :long, :long ], :long
         | 
| 28 | 
            +
                end
         | 
| 30 29 |  | 
| 31 | 
            -
             | 
| 32 | 
            -
             | 
| 33 | 
            -
             | 
| 34 | 
            -
             | 
| 30 | 
            +
                module Kernel32
         | 
| 31 | 
            +
                  extend FFI::Library
         | 
| 32 | 
            +
                  ffi_lib 'kernel32'
         | 
| 33 | 
            +
                  ffi_convention :stdcall
         | 
| 35 34 |  | 
| 36 | 
            -
             | 
| 37 | 
            -
             | 
| 38 | 
            -
             | 
| 39 | 
            -
             | 
| 40 | 
            -
             | 
| 35 | 
            +
                  attach_function :lock,   :GlobalLock,   [ :long ], :pointer
         | 
| 36 | 
            +
                  attach_function :unlock, :GlobalUnlock, [ :long ], :long
         | 
| 37 | 
            +
                  attach_function :size,   :GlobalSize,   [ :long ], :long
         | 
| 38 | 
            +
                  attach_function :alloc,  :GlobalAlloc,  [ :long, :long ], :long
         | 
| 39 | 
            +
                end
         | 
| 41 40 |  | 
| 42 | 
            -
             | 
| 43 | 
            -
             | 
| 44 | 
            -
             | 
| 45 | 
            -
             | 
| 46 | 
            -
             | 
| 47 | 
            -
             | 
| 48 | 
            -
             | 
| 49 | 
            -
             | 
| 50 | 
            -
             | 
| 51 | 
            -
             | 
| 52 | 
            -
             | 
| 53 | 
            -
             | 
| 41 | 
            +
                # see http://www.codeproject.com/KB/clipboard/archerclipboard1.aspx
         | 
| 42 | 
            +
                def paste(_ = nil)
         | 
| 43 | 
            +
                  data = ""
         | 
| 44 | 
            +
                  if 0 != User32.open( 0 )
         | 
| 45 | 
            +
                    hclip = User32.get( CF_UNICODETEXT )
         | 
| 46 | 
            +
                    if hclip && 0 != hclip
         | 
| 47 | 
            +
                      pointer_to_data = Kernel32.lock( hclip )
         | 
| 48 | 
            +
                      # Windows Unicode is ended by two null bytes, so get the whole string
         | 
| 49 | 
            +
                      size = Kernel32.size( hclip )
         | 
| 50 | 
            +
                      data << pointer_to_data.get_bytes( 0, size - 2 )
         | 
| 51 | 
            +
                      data.force_encoding("UTF-16LE")
         | 
| 52 | 
            +
                      Kernel32.unlock( hclip )
         | 
| 53 | 
            +
                    end
         | 
| 54 | 
            +
                    User32.close( )
         | 
| 54 55 | 
             
                  end
         | 
| 55 | 
            -
                   | 
| 56 | 
            +
                  data
         | 
| 56 57 | 
             
                end
         | 
| 57 | 
            -
                data
         | 
| 58 | 
            -
              end
         | 
| 59 58 |  | 
| 60 | 
            -
             | 
| 61 | 
            -
             | 
| 62 | 
            -
             | 
| 63 | 
            -
             | 
| 59 | 
            +
                def clear
         | 
| 60 | 
            +
                  if 0 != User32.open( 0 )
         | 
| 61 | 
            +
                    User32.empty( )
         | 
| 62 | 
            +
                    User32.close( )
         | 
| 63 | 
            +
                  end
         | 
| 64 | 
            +
                  paste
         | 
| 64 65 | 
             
                end
         | 
| 65 | 
            -
                paste
         | 
| 66 | 
            -
              end
         | 
| 67 66 |  | 
| 68 | 
            -
             | 
| 69 | 
            -
             | 
| 70 | 
            -
             | 
| 71 | 
            -
             | 
| 72 | 
            -
             | 
| 73 | 
            -
             | 
| 74 | 
            -
             | 
| 75 | 
            -
             | 
| 76 | 
            -
             | 
| 77 | 
            -
             | 
| 78 | 
            -
             | 
| 79 | 
            -
             | 
| 80 | 
            -
             | 
| 67 | 
            +
                def copy(data_to_copy)
         | 
| 68 | 
            +
                  if 0 != User32.open( 0 )
         | 
| 69 | 
            +
                    User32.empty( )
         | 
| 70 | 
            +
                    data = data_to_copy.encode("UTF-16LE") # TODO: catch bad encodings
         | 
| 71 | 
            +
                    data << 0
         | 
| 72 | 
            +
                    handler = Kernel32.alloc( GMEM_MOVEABLE, data.bytesize )
         | 
| 73 | 
            +
                    pointer_to_data = Kernel32.lock( handler )
         | 
| 74 | 
            +
                    pointer_to_data.put_bytes( 0, data, 0, data.bytesize )
         | 
| 75 | 
            +
                    Kernel32.unlock( handler )
         | 
| 76 | 
            +
                    User32.set( CF_UNICODETEXT, handler )
         | 
| 77 | 
            +
                    User32.close( )
         | 
| 78 | 
            +
                  else # don't touch anything
         | 
| 79 | 
            +
                    Open3.popen3( 'clip' ){ |input, _, _| input << data_to_copy } # depends on clip (available by default since Vista)
         | 
| 80 | 
            +
                  end
         | 
| 81 | 
            +
                  paste
         | 
| 81 82 | 
             
                end
         | 
| 82 | 
            -
                paste
         | 
| 83 83 | 
             
              end
         | 
| 84 84 | 
             
            end
         | 
    
        data/spec/clipboard_spec.rb
    CHANGED
    
    | @@ -3,12 +3,11 @@ | |
| 3 3 |  | 
| 4 4 | 
             
            require File.expand_path('spec/spec_helper')
         | 
| 5 5 |  | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 6 | 
            +
            os_to_restore = RbConfig::CONFIG['host_os']
         | 
| 8 7 |  | 
| 9 8 | 
             
            describe Clipboard do
         | 
| 10 9 | 
             
              before do
         | 
| 11 | 
            -
                RbConfig::CONFIG['host_os'] =  | 
| 10 | 
            +
                RbConfig::CONFIG['host_os'] = os_to_restore
         | 
| 12 11 | 
             
              end
         | 
| 13 12 |  | 
| 14 13 | 
             
              it "has a VERSION" do
         | 
    
        metadata
    CHANGED
    
    | @@ -1,43 +1,43 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: clipboard
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1.1. | 
| 4 | 
            +
              version: 1.1.1
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Jan Lelis
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2016- | 
| 11 | 
            +
            date: 2016-07-24 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: rake
         | 
| 15 15 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 16 | 
             
                requirements:
         | 
| 17 | 
            -
                - - " | 
| 17 | 
            +
                - - "~>"
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: ' | 
| 19 | 
            +
                    version: '11'
         | 
| 20 20 | 
             
              type: :development
         | 
| 21 21 | 
             
              prerelease: false
         | 
| 22 22 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 23 | 
             
                requirements:
         | 
| 24 | 
            -
                - - " | 
| 24 | 
            +
                - - "~>"
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: ' | 
| 26 | 
            +
                    version: '11'
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: rspec
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 30 | 
             
                requirements:
         | 
| 31 | 
            -
                - - " | 
| 31 | 
            +
                - - "~>"
         | 
| 32 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            -
                    version: ' | 
| 33 | 
            +
                    version: '3'
         | 
| 34 34 | 
             
              type: :development
         | 
| 35 35 | 
             
              prerelease: false
         | 
| 36 36 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 37 | 
             
                requirements:
         | 
| 38 | 
            -
                - - " | 
| 38 | 
            +
                - - "~>"
         | 
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            -
                    version: ' | 
| 40 | 
            +
                    version: '3'
         | 
| 41 41 | 
             
            description: 'Access to the clipboard on Linux, MacOS, Windows, and Cygwin: Clipboard.copy,
         | 
| 42 42 | 
             
              Clipboard.paste, Clipboard.clear'
         | 
| 43 43 | 
             
            email: mail@janlelis.de
         | 
| @@ -83,7 +83,7 @@ requirements: | |
| 83 83 | 
             
              install xclip'
         | 
| 84 84 | 
             
            - On Windows, you will need the ffi gem.
         | 
| 85 85 | 
             
            rubyforge_project: 
         | 
| 86 | 
            -
            rubygems_version: 2. | 
| 86 | 
            +
            rubygems_version: 2.4.8
         | 
| 87 87 | 
             
            signing_key: 
         | 
| 88 88 | 
             
            specification_version: 4
         | 
| 89 89 | 
             
            summary: Access to the clipboard on Linux, MacOS, Windows, and Cygwin.
         |