LINUX.ORG.RU

Сообщения proofit404

 

Открытая/free to use система электронного хронометража

Форум — Talks

Существует ли сабж в природе?

 

proofit404
()

Растянуть окно в awesome

Форум — Desktop

Хочется чтобы свежеподнятый emacsclient -c растягивало поверх всех окон аля maximize без пустых пикселей по краям экрана. Гуглил долго, но похоже имакс сам не даёт своими фрэймами ворочить. How to fix?

 ,

proofit404
()

Как сделать чтобы при логине через какой-нибудь dm использовался ~/.zprofile вместо ~/.profile?

Форум — General

$SUBJ

 ,

proofit404
()

подружить zsh c rvm

Форум — General

Сейчас добавил следующее в ~/.zshrc:

[ -d $HOME/.rvm/bin ] && PATH=$PATH:$HOME/.rvm/bin
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . $HOME/.rvm/scripts/rvm
Но теперь шелл стартует ощутимо дольше. ~/.zprofile при логине в иксы не запускается как я понял. Вопрос: куда его положить чтобы работало и через иксы и через рлогин? Тормоза достали.

 , ,

proofit404
()

Common Lisp для мобильных OS.

Форум — Development

Бегло нагуглил поддержку iOS в ECL и Android'да в CCL. Если у кого имеется опыт использования - поделитесь.

 , , ,

proofit404
()

dmenu коряво запускает приложения.

Форум — Desktop

Начнём с начала.
Вот если запустить имакс, открыть файлик hello-world, написать туда фразу «Привет мир!», сохранить и закрыть. То это даёт нам большую почву для зармышлений на тему: «Почему в терминале запущенном из dmenu он отображается некоректно, а из другого bash всё работает?»

Вызываем команду из dmenu:

sakura -x '/bin/zsh'

% cat hello-world 
������������ ������!

Вызываем команду из другого bash:

$ sakura -x '/bin/zsh'
% cat hello-world 
Привет мир!
Тоже самое творится с urxvt и запущенном в нем bash. Как его лечить?

Далее имеется непонятная ересь с переменной $PATH приложений запускаемых из dmenu. Пути добавленные в .bashrc и .bash_profile не работают из него. В том же имаксе 'exec-path ничего не видет кроме системных. Пофиксилось добавление путей внутри .xsession. Ниже конфиги для полноты.

.xsession

#!/bin/sh

export PATH=$PATH:$HOME/bin

xsetroot -cursor_name left_ptr

setxkbmap -layout 'us,ru(winkeys)' -model pc105 -option grp:caps_toggle,grp_led:caps

while xsetroot -name "`date`"
do
	sleep 1
done &

feh --bg-scale wallpaper.jpg &

/home/proofit404/bin/dwm

.Xdefaults

*font: -*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*
*boldFont: -*-terminus-medium-r-*-*-16-*-*-*-*-*-*-*

URxvt*foreground: #000000
URxvt*background: #EEE9E9
URxvt*scrollBar: false

.bash_profile

[[ -f ~/.bashrc ]] && . ~/.bashrc

.bashrc

if [[ $- != *i* ]] ; then
	return
fi

export LANG="en_US.UTF-8"
export LC_COLLATE="C"

### Nyan-cat prompt.

PS1="\`if [ \$? = 0 ]; then echo \[\e[35m\]^_^\[\e[0m\]; else echo \[\e[31m\]O_O\[\e[0m\]; fi\` \$ "

 , , , .xsession

proofit404
()

Статусбар к dwm как внешняя программа.

Форум — Development

Всем привет. Наткнулся тут на следующее profil-dwmstatus-1.0.c.
У меня появилось большое желание прикрутить туда же pwd окошка в фокусе, статут от mutt и irssi.
dwm по своей сути перехватывает события иксов и обрабатывает их определённым образом, т.е. именно в этом месте и можно впихнуть отсылку информации о текущем окошке, чтобы потом найти его cwd. К mutt и irssi тоже нотификаторы прикрутить можно.
Хочется узнать самый кошерный способ асинхронного взаимодействия для выше указанных утилит, позволяющий обновлять статусбар не только раз в секунду, но и сразу же при смене фокуса и т.д.

for (;;sleep(1)) {
    ...      
    datetime = getdatetime();
    ...
    snprintf(status, 200, "%0.2f, %0.2f | %d%% | %s", cpu0, cpu1, bat0, datetime);

    free(datetime);
    setstatus(status);
}

Сабж, нанодесу.

 , ,

proofit404
()

Musthave для конфига к etl сервису.

Форум — Development

Имеется festful http сервис обменивающийся с клиентами структурами json.
Так вот. Хочется сделать для него конфиг на родном языке программирования. Сервис сам по себе включает простейший etl. Принял запрос, обработал данные в соответствие с конфигом, отослал обратно.
Покачто в конфиге объявлена функция обработки, хуки на запуск/остановку сервиса, хуки на приём отправку json клиенту.
Что ещё можно закинуть в конфиг?

 

proofit404
()

Настроить все соединения на прокси.

Форум — Admin

Погуглил и нашёл таки tsocks. Надо настроиться на виндовый tmg сервер, на котором раздают http на 8080 порту и socks4 на 1080 соответственно. Конфигурация приведена ниже.

local = 131.0.0.0/255.0.0.0

path {
  reaches = 150.0.0.0:80/255.0.0.0
  reaches = 150.0.0.0:443/255.0.0.0
  server = wintmgname
  server_type = 4
  server_port = 8080
  default_user = blahblahblah
  default_pass = blahblahblah
}

server = wintmgname
server_type = 4
server_port = 1080
default_user = blahblahblah
default_pass = blahblahblah
Дело в том, что git и emerge работают при этом нормально. Leiningen, использующий curl нифига не качает из реп. Браузеры очень медленно грузят странички и часто теряют коннект. C https вообще беда в этом плане.

Два вопроса:

  • Как таки его правильно настроить, чтобы всё работало с приемлемой скоростью?
  • Как его запускать глобально? Чтобы любой залогиневшийся пользователь (неважно через rlogin или xsession) мог свободно пользоваться им без этого $ . tsocks on.

 

proofit404
()

Statusbar мне запили.

Форум — General

Хочется лицезреть в топе своего терминальчика pwd и date. Прекрасно знаю, что это тривиальщина в tmux и в screen. Хочется сделать это средствами bash.

 ,

proofit404
()

Видимость extend-type для протокола.

Форум — Development

По мотивам предыдущей темы хочу полюбопытствовать как оно работает. Имеется модуль А, содержащий

(defprotocol MyProt
  (bar [a b]))

(defn foo
...
  (bar ...)
...)

Имеется модуль Б, использующий модуль А следующим образом

(extend-type clojure.lang.IPersistentMap
  MyProt
  (bar [a b] ...

(defn what-else
...
  (foo ...)
...)

Так вот. Если загрузить модуль Б в nREPL и вызвать функцию what-else, то сыпется на следующем

No implementation of method: :bar of protocol: #'user/MyProt found for class: clojure.lang.PersistentArrayMap

Но если загрузить в nREPL ещё и модуль А, не меняя при этом область видимости, и повторить вызов what-else, то всё замечательно заработает.
lein test естественно тоже валится на этом.

Вопрос: как так устроен этот чудо extend-type, что твориться такая ересь?

 

proofit404
()

Мультиметоды и типы.

Форум — Development

Решил вот тут использовать алгоритм, анализ в котором основан на типе определения, в языке с динамической типизацией и неявным приведением онных.
А именно есть мультиметод принимающий х. Если х мапа, вектор или список, то вызывается один метод. Если х попадает под определение :default, то возвращаем х как есть.
Все вроде бы хорошо на примерах с последовательностями небольшого размера, а вот с чем-то большим кложа заботливо переводит PersistentArrayMap в PersistentHaspMap в целях производительности. Да, я прописал class как функцию выбора метода.
Как это сделать полюдски?

 

proofit404
()

flyspell-buffer

Форум — General

Совсем себе уже мозг сломал:

flyspell-mode
flyspell-buffer
Всё нормально работает, послонстью проверяет весь буфер и подсвечивает все ошибки. Хочу в лисп-моде:
flyspell-prog-mode
flyspell-buffer
Подсвечивает слов 5 на экране, остальное побоку. Если поместить курсор на слово - естественно перепроверит. Как сделать нормальную проверку коментов в исходниках?
ЗЫ: хук на лисп-мод:
(defun comments-hook ()
  (flyspell-prog-mode)
  (flyspell-buffer)
  (turn-on-auto-fill)
  (setq comment-auto-fill-only-comments t))

 

proofit404
()

Различается exec-path в зависимости от способа запуска.

Форум — General

При логине использую gdm.
В пользовательском .bashrc поправлена переменная $PATH.
Если запустить имаск из терминала, то естественно exec-path соответствует $PATH и всякие там clojure-swank и nrepl стартуют из имакса нормально.
Если запустить имакс из меню/панельки/what-else, то пропадают пути добавленные непосредственно в .bashrc - сильно бесит.
Как это починить без костылей в ~/.emacs?

 

proofit404
()

Создание проекта не под EPL

Форум — Development

Когда делаешь $ cabal init , то предлагается на выбор десяток лицензий, под которыми можно выпускать новый проект. А вот $ lein new ничего подобного не предлагает. Видел ли кто-нибудь какой-либо плагин для подобных нужд, а то править все это руками как-то лениво. Или оно кроме меня никому не надо, и все кложуристы придерживаются EPL?

 ,

proofit404
()

Провайдеры для auto-complete-mode

Форум — Development

Очень часто встречаю, что всякие там слаймы, роупы и прочие делают автокомплит в отдельный буфер *Completion*
Кто-нибудь пытался сделать этот буфер провайдером к auto-complete-mode?

 

proofit404
()

Посоветуйте графический тулкит

Форум — Development

Вот есть нодные редакторы в софтинах наподобие Гудини и т.п.
В каком графическом тулките есть нормальный набор виджетов для реализации подобного, пофиг как они реализованы изкаропки и сторонними компонентами.
Желательно ткнуть в примерчик сразу, а то гугл в понедельник утром ко мне не дружелюбен.
Софтина просто мордой для сети будет, так что пофиг что там за язык.

 ,

proofit404
()

Vlc вешает систему.

Форум — Multimedia

Столкнулся с рядом проблем:

  • При воспроизведении может повеситься в любом месте и единственное на что среагирует комп это хардресет. При это из колонок раздаётся очень не дружелюбный монотонный звук.
  • На произвольных видеофайлах в начале может шипеть звук, прекращает он это дело случайным образом. Проявляется тоже непойми как - один и тоже видео файл может сразу нормально воспроизводить, может нет.

Первое по-моему какой-то аппаратный баг, т.к. проявляется в разных дистрах: debian stable, xubuntu, arch.
Сейчас на борту ноута asus k50in xubuntu 12.04 с последними обновлениями.

$ vlc --version
VLC media player 2.0.3 Twoflower (revision 2.0.2-93-g77aa89e)
VLC version 2.0.3 Twoflower (2.0.2-93-g77aa89e)
Compiled by buildd on roseapple.buildd (Jul 24 2012 22:39:41)
Compiler: gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)

 ,

proofit404
()

Перенаправить stdout и stderr в разные буферы для сабпроцесса

Форум — Development

Вот в обычном баше можно следующее:

$ command 2> error_file 1> output_file

Как можно в имаксе для сабпроцесса получить такое же поведение, только для буферов а не для файлов?

 

proofit404
()

Возможно ли использование GPL в условиях оккупации?

Форум — Development

Здравствуй, уважаемый LOR.
В рассаднике оффтопик решений на моей работе назрела необходимость перекачивать данные из одного программного решения в другое. Необходимо паралельно приводить их в соответствие с внутренним миром принимающей стороны. Пролив не один килограмм говна, таки убедил руководство, что природу объектов и правила их преобразования надо вынести в конфиг, а само приложение на сервер, вместо прибивания гвоздями к коду одной большой кнопочки плагина. Отпочковалась следующая схема:

    +-------------------------+      +--------+
    | Data transformation app | <=== | Config |
    +-------------------------+      +--------+
          ^         |                             
          |         v             
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                 
            Network                         
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                  
     |    ^         |     ^                       
     v    |         v     |
  +----------+     +----------+
  | Client A |     | Client B |
  +----------+     +----------+
Сдонжив в догонку ещё и никсовый сервак под эти нужды, подумалось о полезности этой реализации другим. Поскольку непосредственно наших корпоративных решений касаются только конфиги и N-ное число фронтендов, то само приложение можно и в свободный доступ выложить не нарушив таинства.
Можно ли выложить его в GPL, чтобы потом Столлман самих не покарал?

 ,

proofit404
()

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