• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

Cocoa Interface für Bash Script

  • Ersteller Ersteller bastilian
  • Erstellt am Erstellt am

bastilian

Gast
Also, es sollte eigentlich ganz einfach sein.
Ich arbeite seit tagen mit Vision und da ich auch ein paar andere Sachen mache als es gedacht ist, hätte ich gerne ein flexibleres Interface und schöner.

Das ganze lauft so Das interface is mit Platypus gemacht worden, so ein komisches Tool, das net viel kann. Auf jedenfall führt das jetztige Interface einfach beim Start das folgende Bash Script aus:
Code:
#!/bin/bash
DIR=`dirname $0`
cd "$DIR/../../../"

if [[ -f "vision.rb" ]]; then 
  RUBY=`/usr/bin/env which ruby`
  echo "Vision coming up..."
  echo "=> using $RUBY"  
  echo "=> Vision is running"
  $RUBY vision.rb
else
  echo "=> Could not find vision.rb in same directory as Vision.app" 
  echo "=> Please only use Vision.app when its in the original directory"
fi

dieses Bash Script führt dann ein Ruby Script aus das Webrick, den Ruby Webserver startet
Code:
#!/usr/bin/env ruby
PORT = 3232


# Load the nevironment
require File.dirname(__FILE__)  + '/server/config/environment.rb'

# change the current directory
Dir.chdir File.dirname(__FILE__)

# Setup webrick 
puts "=> Vision starting at http://localhost:#{PORT}/"

webrick = mount(WEBrick::HTTPServer.new(:Port => PORT ))

trap("INT") { $webrick.shutdown }


 case RUBY_PLATFORM 
  when /darwin/
    system("open http://localhost:#{PORT}/dashboard/")
  when /win/
    system("start http://localhost:#{PORT}/dashboard/")
  end

webrick.start

Ich hätte gerne zusätzlich zu dem was das Interface jetzt schon kann, dass ich 1. sagen kann ob er gleich den Browser öffnen soll oder nicht, 2. Wäre ein Restart des Webrick auch nett.

Ich hab schon mit interface Builder herumgespielt aber ich kann da net sagen was nu machen soll.

Kann mir vielleicht wer helfen bzw. erklären was ich alles brauche oder wie ich es auf einfachstem weg machen kann ohne mich gleich durch tonnen von Tutorials wühlen muss bis ich das kann.

Gruß Basti