Я пытаюсь обновить существующий ответ
Как открыть новое окно Firefox с Терминалом
принять URL в качестве аргумента и открыть новое окно Firefox.
я могу использовать
open -a Firefox 'http://localhost:3000'
но он открывается на вкладке, а не в новом окне по желанию.
Один вариант
open -n -a Firefox 'http://localhost:3000'
что дает мне стандартную ошибку
Закройте Firefox, копия Firefox уже открыта. Только одна копия Firefox может быть открыта одновременно
НО это открывает URL в моем браузере по умолчанию Safari.
Я пробовал разные варианты на основе man-страницы для открытия и на сайте Mozilla для открытия URL-адресов с их продуктами, но они говорят, что информация устарела и может не работать. Это не для меня, например,
/Applications/Firefox.app/Contents/MacOS/firefox -new-window "http://localhost:3000"
/Applications/Firefox.app/Contents/MacOS/firefox -remote "openURL(http://localhost:3000, new-window)"
оба терпят неудачу с общей ошибкой выше.
Я пытался изменить скрипт в предыдущей ссылке. Я обновил его до следующего.
# A function to be able to open up a new Firefox window if firefox is already
# running.
function firefox-window() {
/usr/bin/env osascript <<-EOF
on run argv
tell application "System Events"
if (name of processes) contains "Firefox" then
tell application "Firefox" to activate
keystroke "n" using command down
else
tell application "Firefox" to activate
end if
return "I am trying to open " & item 1 of argv & " in a new Firefox window."
(*
if & item 1 of argv &
return "I am the if you seek"
tell application "Firefox" OpenURL & item 1 of argv &
end if
*)
end tell
end run
EOF
}
Я получаю ошибку:
ошибка выполнения: невозможно преобразовать элемент 1 из {} в текст типа Unicode. (-1700)
и я застрял там. Так что у меня проблема с получением URL-адреса в appleScript в качестве аргумента.
Ну, я получаю множество других ошибок, но оригинальный скрипт выполняется, несмотря на те, что были до ошибки UNICODE.
~$ firefox-window 'http://localhost:3000'
2012-06-10 16:13:30.258 osascript[789:60f] Error loading /Library/ScriptingAdditions/Adobe Unit
Types.osax/Contents/MacOS/Adobe Unit Types: dlopen(/Library/ScriptingAdditions/Adobe Unit
Types.osax/Contents/MacOS/Adobe Unit Types, 262): no suitable image found. Did find:
/Library/ScriptingAdditions/Adobe Unit Types.osax/Contents/MacOS/Adobe Unit Types: no
matching architecture in universal wrapper
osascript: OpenScripting.framework - scripting addition "/Library/ScriptingAdditions/Adobe Unit
Types.osax" declares no loadable handlers.
294:300: execution error: Can’t make item 1 of {} into type Unicode text. (-1700)
Я надеялся, что это может быть просто, но это заставляет меня биться головой об стену. Я озадачен тем, что это не будет работать с простой командой open, поэтому я могу сделать это в сценарии оболочки.
Буду признателен за любую помощь в получении Firefox, чтобы открыть новое окно при передаче URL-адреса к нему.