Окно терминала как отдельное приложение

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

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

  • Отдельные значки в Dock
  • Отдельные значки при переключении задач Command-Tab
  • Я мог бы прикрепить каждое окно к отдельному пространству.

Есть ли способ сделать это?

Ответы (3)

@mankoff поставил меня на правильный путь. Вот что мне пришлось сделать, чтобы получить то, что я хочу:

  1. Скопируйте Terminal.app в новый файл (например, MyTerminal.app)
  2. Измените значок приложения:
    1. Скопируйте изображение значка в буфер обмена из предварительного просмотра
    2. Щелкните правой кнопкой мыши (Command-щелчок) в приложении
    3. Выберите «Получить информацию»
    4. Щелкните значок приложения в левом верхнем углу.
    5. Вставка нового изображения значка из буфера обмена
  3. Щелкните правой кнопкой мыши приложение и выберите «Показать содержимое пакета».
  4. Измените следующие значения в Contents/Info.plist:
    1. "Отображаемое имя пакета" -> "MyTerminal"
    2. «Идентификатор пакета» -> уникальная строка для конкретного приложения. Я выбрал «ca.softcraft.myterminal», так как мне принадлежит домен «softcraft.ca».
    3. Имя пакета -> "Мой терминал"
    4. Типы документов -> Удалить
    5. Типы URL -> Удалить
    6. Приложение имеет локализованное отображаемое имя -> снимите флажок
    7. UTI экспортированного типа -> Удалить
  5. Я удалил кучу настроек локализации (Contents/Resources/*.lproj) за ненадобностью; мне просто нужен английский
  6. В Contents/Resources/English/InfoPlist.strings я удалил настройки переопределения «CFBundleName» и «CFBundleDisplayName».
  7. В Contents/Resources/Initial Settings я удалил все файлы *.terminal, кроме одного.
    1. Я использую пользовательскую настройку терминала, но нет никаких причин, по которым вы не можете использовать Basic
    2. В Contents/Resources/Initial Settings/settings.plist я убедился, что для моего значения «Настройки по умолчанию» установлено имя моего файла .terminal.
  8. Я установил значения в файле .terminal, чтобы они соответствовали тому, что я хотел при открытии.
    1. Это просто файл .plist с другим расширением; вы можете использовать Редактор списка свойств, чтобы изменить его
    2. Вы также можете установить их с помощью самого терминала, а затем экспортировать их.
    3. В основном я изменил «CommandString», чтобы он запускался при запуске нового «приложения».

Это отлично работает. Новые приложения «Терминал» не зависят друг от друга и от основного Терминала. Теперь я могу довольно быстро создавать новые.

Я также сделал это с Firefox, чтобы создать браузер для моего веб-сайта разработки. (Я пробовал Mozilla Prism, но нашел его слишком ограниченным).

Рад, что смог помочь указать вам правильное направление. Prism ограничен и, по-моему, с прошлой недели больше не разрабатывается. Если вы хотите хороший SSB, проверьте Fluid.app.
Я часто использую Fluid, и он мне нравится... но, поскольку он основан на Safari, я не получаю все свои расширения Firefox (в частности, Firebug). Если бы была Fluid для Firefox, я бы был настроен.

Вы можете сделать что-то подобное, но с iTerm или Terminal.

Это работает, потому что в firefox есть менеджер профилей. Я не верю, что это что-то присущее OSX
О, я проверил, и вы можете запускать несколько экземпляров iTerm.app, поэтому вам не нужны профили (хотя у iterm есть профили, я не смог выбрать профиль из командной строки), но остальная часть процесса останется прежней. . И OP получит новый значок Dock, который порождает новое окно терминала.
это очень близко, и спасибо за ответ. Тем не менее, это не совсем дает мне то, что мне нужно. Automator действительно может запускать новые окна iTerm (а также новые экземпляры терминала), но эти окна/приложения не работают «внутри» созданного Automator приложения, поэтому они не получают перечисленных мной преимуществ приложения. Вместо этого приложение-автоматизатор порождает отдельные экземпляры под именем приложения iTerm.

Просто скопируйте Terminal.app или iTerm.app и переименуйте каждую копию ProjectA.app, ProjectB.app.

Вам все равно придется зайти в само приложение и изменить некоторые другие вещи, так как он по-прежнему будет отображаться как Терминал в строке меню и строке заголовка приложения, однако на вкладке cmd + он будет отображать ProjectA и ProjectB.