Как настроить Console2 / Git Bash для запуска разных скриптов на разных вкладках? - PullRequest
2 голосов
/ 08 сентября 2011

Во-первых, мои извинения за возможно неправильную терминологию.Я пришел к этому из фона Windows и имею только знания Windows и DOS, чтобы выразить свои потребности.

Фон

Я использую Console2 для запуска GitBash на 2 разных вкладках.

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

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

.bash_profile представляется linux-эквивалентом старого файла DOS autoexec.bat.Как таковые мои псевдонимы настроены для любой вкладки, которая запускает git sh.exe.

Мне сказали, что если я добавлю hg.exe (mercurial) в путь, то я смогу использовать обаHG и Git Таким образом.Это оказалось правильным.

Каковы мои цели

Я хотел бы иметь возможность настроить разные вкладки для работы с разными псевдонимами.

В этом конкретном случае я хотел бы иметь возможность настроить вкладку HG, которая по-прежнему запускает Git Bash (sh.exe), но инициализирует другой набор псевдонимов.

Мне кажется, мне нужно

  • Создайте отдельный «файл bat» для каждого набора псевдонимов.
  • Настройте Console2 для использования разных «bat-файлов» в качестве autoexec для разных вкладок.

Вопрос

Как настроить вкладку Console2 настройки (которая в настоящий момент запускает sh.exe), чтобы она передавала имя файла «command» для запуска при запуске?

Ответы [ 4 ]

0 голосов
/ 19 февраля 2013

Использовать console2 в качестве оболочки с вкладками.Вот статья для настройки

0 голосов
/ 08 сентября 2011

ИМХО имеет больше смысла писать псевдонимы, чтобы они вели себя по-разному в разных средах.Селектором поведения может быть имя текущего каталога или наличие файла флага в текущем каталоге;файл псевдонимов или сценариев может содержать этот код, или сценарий запуска может получать разные файлы или просто настраивать PATH по-разному в зависимости от селектора.

Вот так;в вашем .bashrc, добавьте

test -e .git && . ~/bin/gitalises.sh
test -e .hg && . ~/bin/hgaliases.sh

или как это;

test -e .git && PATH=~/bin/git:$PATH   # put co for git in ~/bin/git/co
test -e .hg && PATH=~/bin/hg:$PATH     # and ditto for ~/bin/hg/co

или как это;

test -e .git && VC=git

и затем в командной строке выможет установить VC=hg в любое время, если ваши скрипты (или псевдонимы; но я бы порекомендовал функции или скрипты) выглядят примерно так:

case $VC in
  git) git --gobble=gook "$@";;
  hg) hg bbq a/c "$@";;
  *) echo "err um uh" >&2 ;;
esac

Это также зависит от того, сколько общего кода у вас в псевдонимах;выглядит ли псевдоним hg для чего-либо очень отличающимся от псевдонима git для чего-то?Затем поддерживайте их отдельно.Или заключите общий код в общий исходный файл, используемый обоими.

0 голосов
/ 04 декабря 2012

Следующее работает для меня, используя Console2.Он использует оболочку Cygwin bash и файл .bash_profile в моем каталоге cygwin $ HOME.

<path_to_cygwin>\bin\bash.exe --login -i -c "cd /cygdrive/c/Cygwin/home/<username>; exec /bin/bash --init-file .bash_profile

Просто замените .bash_profile файлом, который вы хотите получить при запуске оболочки (и, очевидно, используйте ваше собственное имя пользователя и пути).

0 голосов
/ 08 сентября 2011

Вы можете передать имя скрипта bash.exe, и он запустит его. Имейте в виду, что bash будет ожидать, что путь будет в стиле UNIX - например, вместо C:\temp\myscript.sh он будет хотеть его так: /cygdrive/c/temp/myscript.sh.

Больше информации о вызове bash в руководстве по bash .

(Вы можете использовать cygpath.exe для автоматизации перевода, если хотите. У меня есть пример в моем блоге .)

Обновление Похоже, вы хотите использовать --init-file или --rcfile и указывать там команды запуска.

...