LINUX.ORG.RU

Сообщения GotF

 

[хочется странного][stacking WM]Подскажите, какой WM может такое...

Форум — Talks

Добрый вечер.

Хочется, чтобы по нажатию некоторой клавиши, происходила передача фокуса окну с заданными классом и/или ролью. В данный момент, я могу реализовать сию хотелку посредством xdotool/wmctrl/etc, но хочется «более по-человечески» - средствами WM. М.б., FVWM может такое?

P.S.: Не уверен в серьёзности вопроса, поэтому в Talks.

 

GotF
()

Подскажите название шревта, пожалуйста.

Форум — Talks

Сабж. Интересует шрифт в conky. Ссылка на скриншот.

Спасибо.

GotF
()

[забанили в гугле]Можно ли в ASUS M2A-VM воткнуть 3-х или 4-ядерный ЦП?

Форум — Talks

$SUBJ. И не только воткнуть, но и чтоб работал. Интерес, скорее, теоретический, ибо даже AMD 64 X2 4800+ загрузить нечем.

 

GotF
()

[дневники][склероз][лень]Средство ведения дневника.

Форум — Talks

Здравствуй, ЛОР.

Не уверен, что вопрос технический, посему пишу здесь. Интересует наличие готовых решений для ведения дневника. Желательно с текстовым интерфейсом, шифрование не помешает, но не обязательно. Решение нужно именно оффлайновое (из онлайновых интересен juick.com, но я не знаю, можно ли его нормально забэкапить на свою машину, и можно ли создавать посты с ограниченным доступом на чтение).

Пока подумываю использовать vim+самодельные_велосипеды (вставка даты, разделение записей etc)+шифрование (хотя и без него неплохо).

Спасибо.

 ,

GotF
()

[быдлокодерство][bash]Prompt adam2 from zsh: final

Форум — Talks

Допилил сабж до годного состояния - реализовал худо-бедно обрезку слишком длинной $PWD. Других особых изменений нет. Код страшен аки ядерная война :-)

# приглашение (adam2)
function prompt_adam2(){
local WHOAMI=$(whoami);
local HOSTNAME=$(hostname);
local USER_AT_HOST_LEN=$((${#WHOAMI}+${#HOSTNAME}+3));
local WIDTH=$(tput cols);
local MYPWD="$PWD";
if [[ "$HOME" == ${MYPWD:0:${#HOME}} ]]; then
	local PWD_LEN=$((${#MYPWD}-${#HOME}+3));
	local MYNEWPWD="~${MYPWD:${#HOME}}";
else
	local PWD_LEN=$((${#MYPWD}+2));
	local MYNEWPWD="$MYPWD";
fi
local DASHES=$((${WIDTH}-${USER_AT_HOST_LEN}-${PWD_LEN}-3));
local PWD_LIM=$((${WIDTH}-${USER_AT_HOST_LEN}-12));
if (( ${#MYNEWPWD} >= ${PWD_LIM} )); then
	local TRUNC_SEQ="/.../";
	PWD_LEN=${#MYNEWPWD};
	if [[ "$HOME" == ${MYPWD:0:${#HOME}} ]]; then
	MYNEWPWD="~"$TRUNC_SEQ"${MYNEWPWD:${PWD_LEN}-${PWD_LIM}:999}";
	DASHES=1;
	else
	MYNEWPWD=""$TRUNC_SEQ"${MYNEWPWD:${PWD_LEN}-${PWD_LIM}:999}";
	DASHES=1;
	fi
fi
if [ "$1" == "dashes" ]; then
for (( i=1; i<=${DASHES}; i++)); do
	echo -n '-';
done
elif [ "$1" == "mypwd" ]; then
	echo -n ${MYNEWPWD};
fi
}

export PS1='\[\e[36;1m\].\[\e[0m\]\[\e[36m\]-\[\e[30;1m\](\[\e[0m\]\
\[\e[32;1m\]$(prompt_adam2 mypwd)\[\e[0m\]\[\e[30;1m\])\[\e[0m\]\[\e[36m\]$(prompt_adam2 dashes)\
\[\e[30;1m\](\[\e[0m\]\[\e[36m\]\u\[\e[1m\]@\[\e[0m\]\[\e[36m\]\h\
\[\e[30;1m\])\[\e[0m\]\[\e[36m\]-\[\e[0m\]\n\
\[\e[36;1m\]\`\[\e[0m\]\[\e[36;1m\]-\[\e[0m\]\[\e[36m\]-\[\e[0m\]\
\[\e[37;1m\]>\[\e[0m\] '
export PS2='\[\e[37;1m\]> \[\e[0m\]'

Пихать в ~/.bashrc

Скриншот.

 

GotF
()

[быдлокодерство][bash]Prompt adam2 from zsh

Форум — Talks

Мне понравилась тема приглашения adam2 из zsh и возникла мысль портировать её на bash. Предлагаю вашему вниманию первую версию (доделывать есть что). Перенесено свойство сохранять ширину при смене текущего каталога/юзернейма/хостнейма. При выводе текущего каталога не происходит подстановка «~» вместо $HOME (постараюсь пофиксить). Не предусмотрена ситуация возможной нехватки места в первой строке (временно, я думаю). Исполнение не безупречно с точки зрения качества кода - одни глобальные переменные для цветов тянут на расстрел ;-) (в оригинале, впрочем, тоже костыли имеются).

Сам код (добавьте в ~/.bashrc, закомментировав свой PS1):

C1='\e[36m';
C2='\e[36;1m'
C3='\e[32;1m'
C4='\e[30;1m'
C5='\e[37;1m'
C6='\e[0m'

function prompt_adam2(){
WHOAMI=$(whoami);
HOSTNAME=$(hostname);
PWD_LEN=$((`expr length "$PWD"`+2));
USER_AT_HOST_LEN=$(($(expr length ${WHOAMI})+$(expr length ${HOSTNAME})+3));
WIDTH=$(tput cols);
DASHES=$((${WIDTH}-${USER_AT_HOST_LEN}-${PWD_LEN}-3));
PROMPT=( ${C2}.${C6}${C1}-${C6}${C4}\(${C6}${C3}${PWD}${C6}${C4}\)${C6}${C1}\
$(for (( i=1; i<=$DASHES; i++)); do echo -n '-'; done)\
${C6}${C4}\(${C6}${C1}$(whoami)${C6}${C2}@${C6}${C1}$(hostname)\
${C6}${C4}\)${C6}${C1}-${C6} );
echo -en ${PROMPT[@]}
}
export PROMPT_COMMAND=prompt_adam2;
export PS1=${C2}"'"${C6}${C2}-${C6}${C1}-${C6}${C5}'> '${C6};

Надеюсь, кому-нибудь пригодится :-)

 

GotF
()

[скука][лень][Донской Light]Вероятность.

Форум — Talks

Добрый вечер.

gotf ~ > echo `expr $(($[$RANDOM % 999]+$[$RANDOM % 999]+$[$RANDOM % 999])) % 27`
0

Какова вероятность сего замечательного события? А такого:

gotf ~ > echo `expr $(($[$RANDOM % 999]+$[$RANDOM % 999]+$[$RANDOM % 999])) % $[RANDOM % 99]`
0

?

Спасибо.

 

GotF
()

[ASUS][fancontrol]Не работает PWM

Форум — Linux-hardware

Плата ASUS M2A-VM. Воткнул вентилятор БП в разъём PWM на плате, обороты вижу, но регулировать нельзя. Помнится, это баг данной платы. У кого такая же - решит ли проблему обновление BIOS? Резистор впаивать - руки не оттуда. Режим QFan распространяется только на вентилятор ЦП by design :-(

 ,

GotF
()

[music][request]Посоветуйте красивую печальную музыку, пожалуйста.

Форум — Talks

$SUBJ. Что-то вроде Evanescence - Eternal. Т.е. инструментал.

Спасибо.

 

GotF
()

[fluxbox][apps]Правила для окон.

Форум — General

Приветствую, ЛОР.

Имеется Fluxbox, а при нём проблема. Я хочу отключить декорации для всех окон, оставив только рамку/border. Для этого в файл apps записываю секцию следующего вида:

[app] (class=.*)
  [Deco] {00000000100}
[end]

И всё бы хорошо, но все правила, записанные ниже, перестают работать вообще. Если поместить вышеприведённое правило в конец файла - не работает уже оно само. Есть ли у проблемы решения?

Версия Fluxbox'а:

gotf ~ > fluxbox -v
Fluxbox 1.0.0 : (c) 2001-2007 Fluxbox Team 

Заранее спасибо.

З.Ы.Ж заметил, что в Openbox'е нет такой проблемы, но это крайний вариант - у меня не так хорошо со свободным временем сейчас, чтобы осиливать новый WM.

 ,

GotF
()

[быдлокодерство][MPD][Gajim]Поругайте :-)

Форум — Talks

Когда мне нечем заняться, я пишу для удовольствия маленькие shell-toys. Сегодня наконец-то довёл до более-менее вменяемого состояния простенький скрипт, который устанавливает имя текущего трека в MPD в качестве статус-сообщения в Gajim.

Аккаунты принимаются в качестве параметра, через запятую и без пробелов. Каталог ~/.mpd необходимо создать заранее (не хочу лишнего кода) - туда будет падать PID-файл скрипта (я пускаю его в отвязке от родительского терминала, поэтому мне это нужно). В первых строках можно изменить формат статусного сообщения и задержку выполнения основного цикла. В вашей системе должны присутствовать утилиты dbus-send и mpc.

Код:

#!/bin/sh

POLLING_INTERVAL='10s' # интервал выполнения основного цикла
MPC_FORMAT="♪%artist% - %title%♪" # формат статуса (см. man mpc)
NOW_PLAYING=`mpc --format "$MPC_FORMAT" | head -n1` # текущий трек

if [ ! "$1" = '' ]; then
	ACCOUNTS="$1"; # аккаунты получаем через аргумент
else
	ACCOUNTS='jabber.org'; # иначе мой стандартный
fi

# записываем наш pid в файл (должен существовать каталог ~/.mpd)
echo `pidof sh $0` > ~/.mpd/now_playing_pid 

# функция для получения статуса MPD
# в данный момент, не предусмотрены все варианты
function mpd_state (){
STATE=`mpc | grep -m 2 -o '\[.*\]'`
case $STATE in
	'[playing]' )
		STATE='Playing:';
	;;
	'[paused]' )
		STATE='Paused:';
	;;
	'' )
		STATE='No Music Playing';
		NOW_PLAYING='';
	;;
esac
}

# тело цикла выполняем, пока существует процесс "gajim"
while [ `pidof gajim` ]; do
	NOW_PLAYING=`mpc --format "$MPC_FORMAT" | head -n1`;

	mpd_state;

	echo $ACCOUNTS | tr ',' '\n' | while read ACCOUNT; do
		# получаем статус
		STATUS=`dbus-send --type=method_call --dest=org.gajim.dbus --print-reply\
		/org/gajim/dbus/RemoteObject org.gajim.dbus.RemoteInterface.get_status\
		string:"$ACCOUNT" | grep -o \".*\" | tr '"' '\0'`;
		# старое статусное сообщение
		OLD_MESSAGE=`dbus-send --type=method_call --dest=org.gajim.dbus\
		--print-reply /org/gajim/dbus/RemoteObject\
		org.gajim.dbus.RemoteInterface.get_status_message\
		string:"$ACCOUNT" | grep -o \".*\" | tr '"' '\0';`
		# если трек не сменился, не будем флудить дублями
		if [ ! "$OLD_MESSAGE" == "$STATE"\ "$NOW_PLAYING" ]; then
		# установка статуса
		dbus-send --type=method_call --dest=org.gajim.dbus --print-reply\
		/org/gajim/dbus/RemoteObject org.gajim.dbus.RemoteInterface.change_status\
		string:"$STATUS" string:"$STATE"\ "$NOW_PLAYING" string:"$ACCOUNT" >\
		/dev/null 2>&1;
		fi
	done
	sleep $POLLING_INTERVAL; # ждём
done

# удаляем pid-файл
rm ~/.mpd/now_playing_pid;
exit 0

Собственно, мне интересны ваши замечания по коду, и возможно, кому-то эта поделка окажется полезной.

Спасибо за внимание.

 ,

GotF
()

[gajim][d-bus] Не могу разобраться с dbus-send

Форум — General

Добрый день, ЛОР.

Такая проблема: использую в своих скриптах gajim-remote для управления Gajim'ом, но он не блещет скоростью, что заметно при многократных вызовах. Прочитал в интернетах о возможности использовать dbus-send и там же был пример:

dbus-send --type=method_call --dest=org.gajim.dbus /org/gajim/dbus/RemoteObject org.gajim.dbus.RemoteInterface.toggle_roster_appearance

который отлично работает, но при попытке подставить в конец метода вместо toggle_roster_appearance (это ведь метод?) что-то из:

  account_info <account>
  add_contact <jid> [account]
  change_status <status> [message] [account]
  check_gajim_running
  contact_info <jid>
  get_status [account]
  get_status_message [account]
  get_unread_msgs_number
  handle_uri <uri> [account]
  help [command]
  join_room <room> [nick] [password] [account]
  list_accounts
  list_contacts [account]
  open_chat <jid> [account]
  prefs_del <key>
  prefs_list
  prefs_put <key=value>
  prefs_store
  remove_contact <jid> [account]
  send_chat_message <jid> <message> [pgp key] [account]
  send_file <file> <jid> [account]
  send_single_message <jid> <subject> <message> [pgp key] [account]
  send_xml <xml> [account]
  show_next_pending_event
  start_chat <account>
  toggle_roster_appearance

...кроме toggle_roster_appearance, ничего не происходит :-(

ЧЯДНТ?

 

GotF
()

[не осилил]Startx из shell-скрипта.

Форум — General

Добрый день, ЛОР.

Такая проблема: хочу запускать Иксы и сразу блокировать tty одной командой. Наклепал такую каку:

#!/bin/sh
echo "Starting X"
/usr/bin/startx > /dev/null 2>&1
echo "X started"
echo 'Waiting'
sleep 10s;
echo "Locking Terminal"
vlock;
exit

Проблема в том, что /usr/bin/startx надо как-то отправить в фон, а обычный '&' тут не помогает. Как решить задачу?

Заранее спасибо.

 

GotF
()

[ЗГ]Посоветуйте скин для Audacious

Форум — Talks

Добрый вечер, ЛОР.

Присоветуйте лаконичный серый скин для сабжевого поделия, наподобие комплектных Osmosis и Ivory (т.е. широкий). На крайний случай, могу искалеч^Wпеределать один из них, но хочется халявы.

Спасибо.

З.Ы.ЖWinamp-like плееры не нужны, плееры со скинами не нужны тоже.

GotF
()

setxkbmap. Проблема с повторным вводом.

Форум — General

Если выполнять нижеприведённую команду из виртуального терминала в иксах, то всё нормально, если же она выполняется из ~/.fluxbox/startup , то при удержании любой клавиши не происходит повторение ввода (вводится один символ), то же относится и к курсорным клавишам (происходит смещение только на один символ).

setxkbmap -rules xorg -model pc105 -layout "us,ru" -option "grp:caps_toggle,grp_led:scroll,grp_led:caps,grp_led:num"

Как исправить?

GotF
()

Just Fluxbox

Галерея — Скриншоты

Таки решился отказаться от уродливых монстро-DE в пользу Fluxbox. Оказалось, удобнейшая штука, настраивается легко и гибко. Заодно много нового узнал об иксовых настройках.

Тема Flux'а -- Dyne (переделано достаточно много, теперь она напоминает Elegant Brit обводкой окон и цветными кнопками), GTK+ -- бывшая Elfin2, иконки -- Gnome-Black, шрифт интерфейса -- гуглодроид. Для теней запущен xcompmgr -- привычка.

Приложения: mirage, urxvt, pcmanfm, conky, evince, sonata, gajim.

>>> Просмотр (1280x960, 760 Kb)

 

GotF
()

[fluxbox]Порядок кнопок в заголовке окна.

Форум — Desktop

Здравствуй, ЛОР.

Сабж. Как поменять порядок кнопок close, iconify, maximize? Т.е., я хочу, например, перенести close в левый край, а maximize и iconify — поменять местами. Просто в metacity и xfwm4 успел привыкнуть уже. С первого раза не нагуглил ничего подходящего.

Спасибо.

 

GotF
()

Woffice

Форум — Linux-org-ru

http://www.linux.org.ru/whois.jsp?nick=Woffice

Облегчите его муки, забаньте, страдает ведь человек, создаёт нездоровые обсуждения вокруг своей персоны.

//Не люблю жаловаться, но он достал похлеще остальных вместе взятых.

GotF
()

[pidgin][spell-check]Язык для проверки орфографии.

Форум — Desktop

Обычно пользуюсь Gajim'ом, но захотелось потыкать Pidgin. Всё хорошо, но при системной локали en_US.UTF-8 он не хочет проверять русский текст (aspell-ru).

Вопрос: как заставить проверять именно русский язык? В Gajim есть выбор языка набора, и там такой проблемы нет.

Спасибо.

 

GotF
()

[gdm][X][nvidia][кактус][ССЗБ]Перезапуск иксов при выходе из Gnome

Форум — General

Имеется: Debian Lenny, Gnome 2.22, GDM 2.20.7-4, Nvidia 9600GT+проприетарный драйвер ветки 173.х.

Суть проблемы: при выходе из Gnome, GDM (как я понимаю) перезапускает X и отключается управление видеокартой (вентилятор раскручивается на максимум), что слегка выносит мозг. Лечится перезагрузкой. Как сделать так, чтобы gdm не перезапускал иксы?

Дополнительная информация: проблема есть в: gdm, slim; проблемы нет в: xdm, kdm. Но мне нужен именно gdm, вот.

Спасибо.

P.S.: сойдёт и ссылка на man/doc.

 , , , ,

GotF
()

RSS подписка на новые темы