четверг, 7 апреля 2011 г.

Аудио заметки на буке.

Наткнулся тут на пост на хабре, ну и приглянулась мне там одна идея. А именно запись аудио с микрофона по горячей клавише. Правда я немного переделал то, что написал там автор... Во первых не делал это алиасами в шелле, а отдельным скриптом. Я так больше люблю. ;) ИМХО алиасы для совсем мелких нужд типа:

ll="ls -la"

не более того... Ладно, я отклонился от темы. ;) В общем кидаю сюда свой скриптик, вдруг кому пригодится? :) Работает в режиме триггера: нажали кнопку - запустился, нажали еще раз - убился. Все сохраняется в папку ~/microphone. Если ее нет - создается. Плюс выкидывается информационное сообщение. Если не надо этого - просто закомментируйте строки с zenity или поменяйте на любую другую утилиту. Ладно: меньше слов - больше дела. ;)


#!/bin/sh

RUN_PID=`ps axc | awk '/arecord/{print $1}'`
mkdir -p ~/microphone
NAME="`date +%F-%R`.mp3"

if [ "x$RUN_PID" = "x" ]; then
    arecord -F 5 -t wav -f dat | lame - > ~/microphone/${NAME} &
    zenity --info --text="Запись файла ${NAME} начата"
    echo $NAME >> ~/microphone/last
else
    killall arecord
    zenity --warning --text="Запись прервана. Последние записанные файлы: `cat ~/microphone/last`"
    rm ~/microphone/last
fi

UPD: да, забыл совсем: кей биндим уже сами. ;) Я, например в awesome его привязал к большой голубой кнопке на буке "Access IBM", все равно простаивает. :)

5 комментариев:

  1. Отличная идея :) Надо будет попробовать.

    Кстати, тоже со временем ушел от алиасов. У меня есть ~/bin, которая прописана в путях баша и сложена в репозиторий hg. И когда я перехожу на другой комп, вместе со мной сразу переходит больше половины нужного мне функционала :) Хотя половина скриптов - те же однострочники-алиасы :) Там еще бонусы есть - вроде того что gmrun видит эти скрипты, а алиасов не видит.

    ОтветитьУдалить
  2. почти оффтопом - а я вот осваиваю фильтрующие фичи vim'а :) Те, которые "!!" и "выделение-!".

    Очень удобно, но все не соберусь написать. Сделал себе несколько мелких утилит - например скрипт, получающий на вход урл, а на выходе печатающий урл и имя страницы из title - упорядочиваю себе закладки :)

    ОтветитьУдалить
  3. Да, о синхронизации bin-ов (они у меня так же сделаны, как у тебя) :) Правда вот думаю о dropbox-е, что бы само все проходило. Хотя есть небольшая паранойя: если сломают мой dropbox и засунут что-то в скрипты, а я с дуру запущу не проверив... как-то не по себе от этих мыслей. ;)

    ОтветитьУдалить
  4. Чет не знаю про них. :) Ну это понятно: vim - это целый мир! Надо почитать. ;)

    А у меня все руки не дойдут сделать нормальный фолдинг и подсветку синтаксиса для своего АБФ. :( Хочу вот фолдинг сделать на основе синтаксиса. Написал на скорую руку, да не пошло что-то... Ни как не сяду разобраться. :(

    ОтветитьУдалить
  5. А! Тфу ты черт, не сообразил сразу о каких фильтрах идет речь. :) Конечно знаю. :)

    ОтветитьУдалить