Здесь могут быть какие-то странности с моей конфигурацией, просто примечание. Я использую Mac OS X Mountain Lion, но использую coreutils, установленные через Homebrew:
У меня есть несколько функций в моем .bash_profile, которые я использую для поиска в программах Python.
function greppy() { find . -name '*.py' -exec grep -nHr --color "$1" {} \; ; }
function grepcy() { find . -name '*.pyx' -exec grep -nHr --color "$1" {} \; ; }
Чтобы вызвать их из IPython, я вызываю многострочный bash:
In [6]: %%bash
...: . ~/.bash_profile
...: greppy triangle
...:
Это правильно запускает функцию, но не окрашивает поисковый запрос grep. Я также отметил:
In [10]: %%bash
....: source ~/.bash_profile
....: ls --color
....:
Цвета выводятся правильно, но вызывается:
In [11]: %%bash
....: source ~/.bash_profile
....: la
Псевдоним, который всегда использует ls -a --color в моем .bash_profile, не работает.
Еще одно замечание, которое может быть полезным, заключается в том, что мой .bash_profile также вызывает dircolors для чтения конфигурации .dir_colors, которая настраивает окраску каталогов для ls (чтобы по-разному окрашивать цвета py и pyx и делать цвета .pyc относительно серыми, чтобы они были менее виден). Я не уверен, есть ли дополнительное взаимодействие.
У меня есть псевдоним .bashsrc и IPython, настроенный в более старой конфигурации (псевдоним .ipythonrc) на рабочей машине, которая правильно окрашивается. Я пытаюсь заставить то же самое работать на моем MacBook Air для домашнего использования. Это не очень важная часть всего моего круга разработки Python для ipython/bash/vim, но я достаточно разборчив в мелких деталях в своих средах, поэтому я хотел бы заставить его работать, если смогу.
%%bash
. Похоже, это ошибка. - person William Denman   schedule 15.12.2013