From 1546cae4d7c47341199f33d27e2f99c10bcdce02 Mon Sep 17 00:00:00 2001
From: Jeffrey Phillips Freeman <jeffrey.freeman@syncleus.com>
Date: Sun, 2 Oct 2016 07:06:57 -0400
Subject: [PATCH] fixed a gemspec bug where we required the whole application
 rather than just application information.

---
 apex.gemspec         | 12 ++++++------
 lib/apex.rb          | 23 +++++++++++++++++++++--
 lib/apex/app_info.rb |  3 +++
 3 files changed, 30 insertions(+), 8 deletions(-)
 create mode 100644 lib/apex/app_info.rb

diff --git a/apex.gemspec b/apex.gemspec
index b4843ff..1757dec 100644
--- a/apex.gemspec
+++ b/apex.gemspec
@@ -1,7 +1,7 @@
 # coding: utf-8
 lib = File.expand_path('../lib', __FILE__)
 $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
-require 'apex'
+require 'apex/app_info'
 
 Gem::Specification.new do |spec|
     spec.name = 'apex'
@@ -28,13 +28,13 @@ Gem::Specification.new do |spec|
     spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
     spec.require_paths = ['lib']
 
-    spec.add_development_dependency 'bundler'
-    spec.add_development_dependency 'rake'
-    spec.add_development_dependency 'rdoc'
-    spec.add_development_dependency 'aruba'
+    spec.add_dependency 'colorize'
     spec.add_dependency 'abstraction'
     spec.add_dependency 'json'
     spec.add_dependency 'serialport'
     spec.add_dependency 'methadone'
-    spec.add_dependency 'colorize'
+    spec.add_development_dependency 'bundler'
+    spec.add_development_dependency 'rake'
+    spec.add_development_dependency 'rdoc'
+    spec.add_development_dependency 'aruba'
 end
diff --git a/lib/apex.rb b/lib/apex.rb
index a05e577..358132a 100644
--- a/lib/apex.rb
+++ b/lib/apex.rb
@@ -1,8 +1,27 @@
+require 'colorize'
 require 'kiss/kiss_serial'
 require 'aprs/aprs_kiss'
+require 'apex/app_info'
 
 module Apex
-    VERSION = "0.0.1"
+    def self.echo_color_frame(frame, direction_in)
+        formatted_aprs = [frame[:source].colorize(:green), frame[:destination].colorize(:blue)].join('>')
+        paths = []
+        frame[:path].each do |path|
+            paths << path.colorize(:cyan)
+        end
+        paths = ','.join(paths)
+        if frame['path']
+            formatted_aprs = ','.join([formatted_aprs, paths])
+        end
+        formatted_aprs += ':'
+        formatted_aprs += frame['text']
+        if direction_in
+            click.echo(click.style(port_name + ' << ', fg='magenta') + formatted_aprs)
+        else
+            click.echo(click.style(port_name + ' >> ', fg='magenta', bold=True, blink=True) + formatted_aprs)
+        end
+    end
 
     def self.main
         kiss = Kiss::KissSerial.new('/dev/ttyUSB1', 9600)
@@ -12,7 +31,7 @@ module Apex
         while true
             frame = aprs_kiss.read
             if frame
-                p frame
+                echo_color_frame(frame)
             else
                 sleep(1)
             end
diff --git a/lib/apex/app_info.rb b/lib/apex/app_info.rb
new file mode 100644
index 0000000..d7886bb
--- /dev/null
+++ b/lib/apex/app_info.rb
@@ -0,0 +1,3 @@
+module Apex
+    VERSION = "0.0.1"
+end
-- 
GitLab