Dr.AKULAvich
2008-05-21
Часто бывает, найдешь полезный hack-tip, сделаешь все, согласно инструкциям, порадуешься да забудешь. При чистой установке придется опять наращивать былой функционал. Накропал на досуге скрипт, который автоматизирует некоторые операции. В моем примере отключается задержка контекстных меню в GTK и применяются некоторые опции для bash из этой статьи. Также планирую добавить отключение спикерфона (раздражает меня это писк). Реализация скрипта может не совсем удачная, не могу похвастаться умениями в скриптописательстве. С радостью приму ваши пожелания, предложения и критику.
#!/bin/bash
# Скрипт создан для быстрого применения полезных находок на новой системе
#
# Ускоряем отображение popup меню в GNOME
echo "Желаете установить задержку popup-menu в ноль (y/n)? "
read answer
case "$answer" in
[yY]) gtkrc=~/.gtkrc-2.0
if [ -f "$gtkrc" ] # существует ли файл?
then
if [ "`grep "gtk-menu-popup-delay" $gtkrc`" = "" ]
then
echo "gtk-menu-popup-delay = 0" >> "$gtkrc"
else
echo "Задержка popup menu уже установлена"
fi
else
echo "gtk-menu-popup-delay = 0" > "$gtkrc"
fi
;;
*) echo "Задержка .";;
esac
echo
# Полезные опции при работе с BASH
echo "Желаете применить некоторые улучшения для Bash (y/n)? "
read answer
case "$answer" in
[yY]) bashrc=~/.bashrc
if [ -f "$bashrc" ] # существует ли файл?
then
# Делаем общую историю для всех консолей
if [ "`grep "shopt -s histappend" $bashrc`" = "" ]
then
echo "# General history" >> "$bashrc"
echo "shopt -s histappend" >> "$bashrc"
echo "PROMPT_COMMAND='history -a'" >> "$bashrc"
else
echo "Изменения для .history уже применены"
fi
# Включаем исправление мелких ошибок при наборе cd
if [ "`grep "shopt -s cdspell" $bashrc`" = "" ]
then
echo "# check mistakes" >> "$bashrc"
echo "shopt -s cdspell" >> "$bashrc"
else
echo "Эвристическое исправление ошибок директорий уже активировано"
fi
# Включаем игнорирование подряд идущих дубликатов команд в истории
if [ "`grep "export HISTCONTROL="ignoredups"" $bashrc`" = "" ]
then
echo "# History duplicates" >> "$bashrc"
echo "export HISTCONTROL="ignoredups"" >> "$bashrc"
else
echo "Игнорирование подряд идущих дубликатов команд в истории уже активировано"
fi
fi
;;
*) echo "Изменения настроек Bash отменены.";;
esac
echo
exit 0
Скачать готовый скрипт.