• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Cocoa Interface für Bash Script

  • Ersteller bastilian
  • 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