2013-04-12 1 views
2

У меня есть программа, которая считывает данные в файле, изменяет некоторые элементы и создает новый файл. Код выглядит следующим образом:Измените Ruby-программу на простое приложение для настольных компьютеров

lines = IO.readlines('single_before_CAP.txt').map do |line| 
a = line.split.each { |i| i.capitalize! } 
a2 = a.join(" ") 
File.open('single_after_CAP.txt', 'w') do |file| 
    file.puts lines 
end 

Как я могу использовать Xcode и MacRuby, чтобы получить эту программу для запуска как приложение GUI? Если не Xcode и MacRuby, есть ли еще одна простая задача, которую я могу сделать, чтобы сделать это автономным графическим интерфейсом?

+0

Существует несколько шагов по созданию приложения macruby. Я поставил ссылку на них в своем ответе. Помогает ли это? – vlasits

+1

Спасибо. Похоже, кто-то удалил часть, где я сказал, что уже просмотрел доступные учебники. Я смог пройти через них, но мне не нужен таймер или приложение, которое показывает мне, как сказать «Button Clicked!» И т. Д. Я думаю, это может быть так просто, как я хочу. Я просто хочу иметь программу «Запуск» без необходимости переходить на Cmd Line и говорить ей, чтобы она запускалась. – jmitchell1009

+0

Ах ... для людей, вероятно, будет трудно мотивировать написать другую (возможно, длинную) версию этих учебных пособий, предназначенную только для вашей проблемы.Вы можете начать использовать процесс, описанный в учебниках, до тех пор, пока у вас не возникнет ** конкретная проблема с шагом в учебнике, а затем задайте более заданный вопрос. – vlasits

ответ

1

Если вы просто хотите, чтобы запустить приложение обезглавленное рубиновый, вы можете использовать Automator. Просто создайте новый рабочий процесс, добавьте строку для выполнения вашего приложения и сохраните ее как «.app». Если хотите, я могу дать вам более конкретные инструкции.

@ jmitchell1009

Особые указания: Если вам не нужно вводить что-либо в вашей программе (например, файлов или аргументов), самый простой способ будет заключаться в следующем:

  1. Открыть Automater
  2. Выберите новое «приложение» (это сохранит ваш конечный результат как .app, вы можете выбрать другой вариант, если хотите что-то еще)
  3. Выберите действие «Запустить сценарий оболочки» и перетащите его в рабочий процесс.
  4. Выберите оболочку для ее запуска (не важно, если вы просто используете рубиновое приложение).
  5. Выберите, где вход должен идти (опять же, если у вас нет ввода, это должно иметь большое значение)
  6. Введите команду для своего рубинового приложения. Что-то вроде «ruby commandpath» и т. Д. (Без кавычек, конечно)
  7. Возможно, вы захотите запустить его несколько раз, чтобы убедиться, что он работает. Как только вы закончите, вы можете сохранить рабочий процесс, и он создаст для вас .app.

Если у вас есть какие-либо вопросы, дайте мне знать.

+0

Да, пожалуйста. Я буду исследовать самостоятельно, однако любые шаги, которые помогут облегчить понимание, будут полезны. – jmitchell1009

+0

Хорошо. Я сделал это и получил ошибку в моем коде. Он не будет читать array_2.gsub (/ Ws /, ", west side"). Gsub (/ Es /, ", east side"), ссылаясь на 2-й «.gsub» в качестве рассматриваемой строки, с ошибкой " sytax error, неожиданный «.», ожидающий кенд. Я получаю это также с помощью Platypus, однако без проблем могу работать из командной строки. Не распознает ли он мою текущую версию Ruby? Использование 1.9.3 из командной строки. имеют более старую версию на моем компьютере, а также, если эта информация помогает. – jmitchell1009

+0

@ jmitchell1009 сценарий оболочки буквально просто запускает его, как если бы он был в командной строке. Используете ли вы версию ruby, упакованную в OS X, или вы что-то устанавливаете else? Вы можете запустить 'which ruby', чтобы посмотреть, какую версию вы вызываете из командной строки. – user2276204

2

Похоже, что вы хотите, в основном, простое приложение-оболочка, которое запускает ваш скрипт при двойном щелчке, а не полный графический интерфейс. Platypus - это самый простой способ сделать это. Вы просто даете ему свой сценарий, настраиваете несколько параметров (например, нужен ли ваш скрипт файлу в качестве аргумента), и он даст вам приложение с двойным щелчком, которое может включать в себя простой интерфейс, такой как индикатор выполнения или вывод текста ,

+0

Я пробовал Platypus, однако он не будет читать весь мой код Ruby, давая мне ошибки там, где они не существуют, когда я запускаю из командной строки. FYI - код выше не тот, который мне действительно нужен, а базовая концепция. Фактический код - сотни строк. – jmitchell1009

 Смежные вопросы

  • Нет связанных вопросов^_^