Я бездельничал с grep
и помещенный это в мой .zshenv:
export GREP_OPTIONS="--color=auto"
export GREP_COLORS='mt=1;34'
Я ударял голову на клавиатуре и изменении GREP_COLORS
вокруг в течение минуты, пытаясь выяснить, почему цвета папки работали, но совпавший текст не был.
Я делал это:
$ grep -R -n -i -e "functionFoo\(" --include=*.cs --exclude-dir=Logs *
Номер строки и имена файлов были установлены с цветами по умолчанию, но совпавший текст не был.
После пребывания слишком в течение большого количества времени, я думавший сделать это:
$ grep -R -n -e "functionFoo\(" --include=*.cs --exclude-dir=Logs *
(Я удалил -i
опция.) Это - все, что потребовалось, чтобы заставить совпавший текст правильно обнаруживаться полужирным синий. Это - Cygwin на установке Vista с rxvt, работающим zsh.
Какая-либо идея, почему цвета grep повредились бы при определении нечувствительного к регистру соответствия?
Обновление: Под cygwin 1.7 это немного лучше - поиск без учета регистра работает правильно, но это только выделяет слово, которое соответствует выражению точно. Другими словами, "FunctionFoo" выделяет "FunctionFoo", но не "functionFoo" и наоборот. Вероятно, grep выходит, таким образом, я буду отправлять его тому списку.
Это не связано с Cygwin, но с grep. Необходимо установить переменные среды локали в оболочке, как ЛЕНГ.
Взятый от grep (1) руководство:
Локаль для категории LC_foo указана путем исследования этих трех переменных среды LC_ALL, LC_foo, ЛЕНГ, в том порядке. Первая из этих переменных, которая установлена, указывает локаль. Например, если LC_ALL не установлен, но LC_MESSAGES установлен на pt_BR, то локаль бразильского португальского используется для категории LC_MESSAGES. Локаль C используется, если ни одна из этих переменных среды не установлена, если каталог локали не установлен, или если grep не был скомпилирован с поддержкой национальных языков (NLS).
Попробуйте, например:
LANG=en_US.UTF-8 grep -R -n -i -e "functionFoo\(" --include=*.cs --exclude-dir=Logs *
Это должно решить Вашу проблему и работы для меня с GNU grep 2.5.4 и колотить 3.2.48 (1) - выпуск.