Дождливый XMonad
Терминал — urxvt, бар — polybar
Конфиги: https://github.com/malyutinegor/rainy
Видео с обоями: https://i.imgur.com/CTiwPki.mp4 (они обычно всегда отключены, включаю чисто чтобы помедитировать)
Терминал — urxvt, бар — polybar
Конфиги: https://github.com/malyutinegor/rainy
Видео с обоями: https://i.imgur.com/CTiwPki.mp4 (они обычно всегда отключены, включаю чисто чтобы помедитировать)
Состоялся выпуск трех связанных проектов для обработки гитарного звука.
Программный гитарный процессор в виде набора плагинов LV2 и LADSPA.
Плагин tubeAmp использует профили в собственном формате *.tapf, благодаря чему можно имитировать звучание любых реальных моделей гитарных усилителей.
Остальные плагины из набора эмулируют педали Fuzz, Distortion, Overdrive, Noise Gate, Octaver.
Основные изменения со времен 1.0:
Гитарный процессор и редактор профилей *.tapf. Может использоваться вместо плагина tubeAmp как независимое JACK приложение.
Это первый выпуск, версия сразу 1.2 для унификации с KPP, потому что используется один и тот же эмулятор гитарного усилителя.
Позволяет создавать и редактировать профили для tubeAmp. Дополнительные функции:
Профилировщик. Позволяет пропустить тестовый сигнал через любой реальный усилитель, тракт, программный или аппаратный процессор, модель электрической цепи. Автоматически анализирует результат и настраивает параметры профиля. По сути этот процесс аналогичен работе с Kemper Amps.
Авто-эквалайзер. Позволяет корректировать звучание готового профиля по записи-образцу. Аналог specmatch у guitarix или Amp Match у BIAS Amp.
Деконвольвер. Позволяет получать импульсные отклики (импульсы в простонародье) гитарных кабинетов или чего угодно, пропустив через них тестовый сигнал. Полученный импульс можно сразу отправить в редактируемый профиль, а можно сохранить в wav файл и использовать в любом конвольвере или плеере импульсов.
Конвольвер. Позволяет накладывать несколько импульсов друг на друга. Например, можно добавить реверберацию к готовому профилю.
Медленный, но точный гитарный процессор не-реального времени, который использует в качестве эмулятора ngspice. Требователен к вычислительным ресурсам, поэтому пока можно только обрабатывать записи гитары в wav файле, выводя результат в wav файл. Это особенно полезно в связке с tubeAmp Designer - можно создавать *.tapf профили при помощи SPICE модели и потом использовать их в реальном времени в tubeAmp.
Для работы нужны:
Модель эмулируемого усилителя/педали или всего тракта в SPICE. Для ее создания хорошо подходит замечательная программа Qucs-S, но можно использовать любой другой редактор SPICE моделей, или написать код вручную.
Импульс кабинета (опционально, для педалей не нужен).
В выпуске приложены модели некоторых классических ламповых усилителей, модели практически всех используемых в гитарных усилителях ламп (триодов и пентодов), для создания своих моделей, импульсы двух кабинетов. Рекомендуется использовать модели ламп именно из этой поставки, они специально подобраны и скорректированы для лучшей работы в тяжелых перегруженных режимах.
Проекты на GitHub:
>>>
KPP
>>>
tubeAmp Designer
>>>
spiceAmp
Бинарные версии для загрузки:
Для организующих всякие данные скриптов - к производительности высоких требований нет, т.к. операции предполагаются элементарные, чтобы быстро стартовал, был способен грузить динамические библиотеки через ffi, желательна поддержка geiser для удобства разработки. Иными словами нужна замена clisp - CL уже приелся и хочу уже взглянуть на какой-нибудь r7rs, раздутый стандарт CL вроде меньше подходит для вышеназванных требований. Попробовал racket - не понравился, по ощущениям sbcl лучше отвечает требованиям не говоря уже про clisp.
В этот тихий и спокойный вечер порелизился Rust 1.39.0 с поддержкой async/await.
https://blog.rust-lang.org/2019/11/07/Rust-1.39.0.html
https://blog.rust-lang.org/2019/11/07/Async-await-stable.html
Ещё tokio с actix-ом дождаться, и вообще ждать будет нечего.
Тег «угадай автора по заголовку».
Q: Зачем?
A: Ради эксперимента, повысится комфорт пользования терминалом или нет.
Q: Причем тут Rust?
A: Ни при чем, но из-за нативности и отсутствия GC на нем толпа людей побежала переписывать что ни попадя. С таким же успехом можно было бы и npm install
, но тормозило бы. Ближе opam install
или go get
Теперь мой терминал по истине свистит и пердит. Даю список если кому надо.
alacritty
- GPU ускоренный терминал.
alias cat=bat
- cat с хорошей подсветкой синтаксиса и нумерацией строк и пейджером.
broot
- навигатор по каталогам, который одновременно показывает дерево, но адекватно себя ведет с громадными каталогами, показывая их по чуть-чуть.
dust
- утилита для исследования места занимаемого каталогами, сортирует деревья файлов начиная с самых больших каталогов.
alias ls="exa -l --group-directories-first"
ls с хорошими дефолтами, tree встроено.
rip
Утилита для удаления файлов с разными удобными фичами и восстановлением
hors "How do I parse float in javascript?"
- находит короткий ответ в интернетах и отвечает. Чуть лучше работает чем оригинал - howdoi
.
mdcat
- cat для Markdown, для отображения удобочитаемой формы документа. Ссылки делает сносками.
alias grep=rg
- очень быстрый и удобный grep
starship
- shell command prompt, показывает кучу полезной информации в зависимости от контекста, например git branch если в репозитории, версии софта и ЯП если в каталогах с сорцами, hostname если зайти по ssh.
tokei
- сборщик статистики по ЯП и строкам кода в деревьях исходников.
hyperfine
- бенчмарк утилита, time на стероидах.
tldr
- сокращенная версия man, показывает как чем пользоваться в примерах, а не выдавая полную справку. Страницы поддерживаются сообществом для громадного количества утилит. Изначальный проект - https://tldr.sh/
topgrade
- универсальная утилита обновления. При запуске пытается обновить все что видит - системные пакеты, vim пакеты и так далее.
runiq
- быстрый sort | uniq
с разными алгоритмами внутри.
fd
- быстрый и удобный find, удобно чтобы не вспоминать заковыристые ключи
fselect
- поисковик файлов с SQL-like языком запросов
sd
- как sed, только интуитивный
i3status-rs
- Сразу i3status+i3blocks. Плюс батарейки к i3blocks, которые как я понял автор решил убрать.
onefetch
- Вроде neofetch, но для сорцов. Просто запустите эту штуку с корня любого git репа, клонированого локально
wasmtime
- JIT runtime для WASI стандарта. Пускалка WebAssembly приложений.
scriptisto
- «shebang-интерпретатор» для компилируемых языков, прозрачно собирает и кеширует нативные сборки кода
Что не зашло совсем
Все вышеперечисленое ставится через cargo install <package_name>
(кроме alacritty), название смотрите на страницах. Сам cargo и Rust ставятся через
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
P.S. Призываю остальных взять ЯП вашей секты и поставить такой эксперимент и отписаться. Да-да, расскажите как вы пользовались ls
на Java. Пользователей emacs
прошу не беспокоить
Жил я себе на арче, наслаждался терминальным ЮИ, потому-то ГУИ в XWayland выглядит как последний Uncharted на ванильной плойке. Но в один день случайно снес себе пол /
и было как-то лень все восстанавливать. На арче сидел сколько себя помню, поэтому решил посмотреть, как там дела в других легковесных дистрибутивов. Глаз зацепился за Void, потому что это тот же самый арч, но без systemd
. Заодно решил осилить HiDPI на Х и пересесть на него, чего раньше не очень удавалось. Ибо емакс в терминале это как корочки от хлеба.
В общем, пришлось менять весь стек: sway + waybar + bemenu
на bspwm + polybar + rofi
. Ну и плюсом picom
, чтобы спецэффекты были, но только чуть-чуть. А это означает переписывание конфигов и wal
темплейтов. Более того, так как ручки то у меня кривые, хотелось автоматизировать все, начиная от бутстрапа системы и заканчивая расстановкой конфигов в нужные места.
В общем, после трёх недель кряхтений, получилось набросать минимум всего, что нужно для полноценной работы на десктопе. Включая вот этот вот бутстрап, который поднимет базовую систему с full disk encryption и ещё парочку скриптов, которые поставят все зависимости и настроят Х с HiDPI и WM со всеми перделками. Написано все это, конечно же, на fish shell. Потому что а на чем ещё. Теперь то можно удалять и двигать все, что не приколочено (а ничего не приколочено) и не бояться, что все сломается и придётся настраивать все ручками заново.
Если по софту, который использую, то это:
Все это, как и подобает, лежит на гитхабе:
Мой прошлый сетап я тут не кидал, но его можно найти в /r/unixporn. Там тоже аниме, но только Хомура.
Собственно сабж.
Есть ли легковесные браузеры, не жрущие гигабайты оперативы и половину процессора, при этом с поддержкой жс и цсс более, чем никакой?
чем полезен карантин - хоть какое-то свободное время. таки решился сделать то, что откладывал уже несколько лет - портировать сильфиду на gtk3
в процессе оказалось, что там столько лишнего и ненужного барахла в коде, тянущегося еще с gtk1, что мама не горюй. так что будет форк, просто патчами не отделаться. децл еще допилю, и закину сырцы на гитхаб
Недавно нашёл часть очень спорной и критикуемой истории. Сохранился серийный номер, и он ни разу не использовался)! Впрочем, я вообще никогда не запускал этот дистр... в 2006 мне было не до линуксов, а в 2009 первым дистром стал Ubuntu 9.04 с ламповым второгномом. Забавно.
Цветовая схема была построена на базе этой.
Привет. Желаю получить такую компоновку окон во фрейме emacs:
г---т---т-т
! 1 ! 0 !3!
!---! ! !
! 2 ! ! !
L---L---L-l
Где 0 - буффер редактирования файла, 1 - навигация по функциям/классам/etc для js/typescript/c++/d/php, 2 - дерево директорий, 3 - minimap. Причём боковые панели должны быть фиксированного размера и если фрейм становится слишком узким они должны пропадать.
Я нашёл для себя minimap-mode и dired-sidebar, для навигации по функциям пока не определился что юзать, чтобы поддерживало нужные языки.
Проблемы:
Dired-sidebar не появляется сам при старте окна. Если я вызываю его через init.el - появляется дополнительное окно lisp scratch, которое нельзя убить через init.el, так как в этот момент оно определяется как единственное.
Minimap растягивается при растягивании фрейма, не знаю как задать фиксированную ширину.
Что подскажете?
Аналог mitsumi classic с железным основанием :
Сейчас есть старенькая sven comfort 3050 - она както напоминает желаемое, но подраздолбалась, а новые их не производят На «авито» брать не вариант - убитые скорее всего будут
Попробовал новую sven s300 - неудобно (пишу на ней), ход короче, клавиши гуляют, ентер хуже, мне неудобно она
В магазах ничего не вижу, только геймеровское с подсветкой, хвалимое ютуберами, тьфу срамота
Осваиваю си. Всё шло хорошо пока внезапно не понадобилось склеить строки (константные и переменные). Покурил stackoverflow. Предлагают 2 варианта:
Первый - создать char buf[молись_чтобы_хватило] и делать str(n)cat/sprintf в этот buf.
Второй - использовать asprintf, который расширение, нестандарт и вообще.
Вопрос: как вы склеиваете строки? Может есть какая-нибудь общепринятая либа?
Простите за нубский вопрос
Состоялся релиз gtk-темы Lounge (в комплекте идет оформление для gtk2, gtk3, gnome-shell и вспомогательная тема иконок), основанной на оригинальной Adwaita. Тема создана под впечатлением от Absoulte, распространяется по лицензии GPLv3+.
( читать дальше... )
Скриншоты: первый, второй, третий, четвертый, пятый.
>>> GitHub
Немного лабаю на гитаре (совсем немного и весьма посредственно). Чувствую как то не весело, не хватает аккомпанимента. Ну или просто чего-то не хватает. Практики наверное.
Еще хочу меньше полагаться на мышечную память и больше на голову. Это общее пожелание и наставление самому себе. Вот.
Пора пробовать программировать мелодии + звук на компе. Именно программировать, всмысле текстом, а то насоветуете мне тут щас метапрог. Какие есть варианты? Уже копал в эту сторону, находил какие-то графические инструменты. Был какой-то сиподобный язык (зачем, спрашиваю я себя, зачем они это делают?).
Еще после того как пытался установить метроном на арч, понял что со звуком те еще пляски могут быть, то им пульсу подавай, то еще какую-нибудь дичь. Да ладно, к пляскам я готов, лишь бы инструмент/тулчейн годный был.
Мгновенный фидбек от изменений весьма желателен.
Хочу получать что-то электронно звучащее, вроде windows96, lorn, carpenter brut, синтезатор из пинк флойда, depeche mode, тысячи их (на самом деле нет).
Базовая система коммутации звуковых потоков:
Программы для звукозаписи и обработки звука:
Гитарные процессоры:
Синтезаторы:
Инструменты для создания трекерной музыки:
Драм-машины:
Наборы эффектов для обработки звука:
Нотные редакторы:
Создание такого треда давно уже назрело, так как обсуждение вопроса гитарного звука в Linux вспыхивает оффтопиком то в одном месте, то в другом. Приглашаю всех интересующихся обсуждать вопрос здесь.
Обсуждаем вопросы использования guitarix, rakarrack, tuxguitar, VST, LV2, LADSPA плагинов и прочего.
Практический результат обсуждений можно увидеть тут.
https://github.com/olegkapitonov/Kapitonov-Plugins-Pack
Версия 1.0, бинарники
https://github.com/olegkapitonov/Kapitonov-Plugins-Pack/releases/tag/v1.0
Прямая ссылка на скачивание всех бинарников
https://github.com/olegkapitonov/Kapitonov-Plugins-Pack/releases/download/v1....
Перемещено leave из multimedia
Перемещено jollheef из talks
Перемещено leave из multimedia
Следующая версия:
Метапрог-прототип 13 + LOR Browser
Скачать (читать файл с названием своего языка из архива!):
https://www111.zippyshare.com/v/Nq5mH4Sa/file.html
Версия 11 содержит оптимизации транслятора и исправления в Метапрог онлайн. В остальном различий с описанием 10 версии нет.
Версия 10 содержит несколько хотфиксов для транслятора диаграмм и онлайн-функционала. В остальном различий в сравнении с описанием 9 версии нет.
Версия 9 содержит хотфикс: в 8 версии были проблемы со скачиванием проектов через Метапрог онлайн. В остальном различий в сравнении с описанием 8 версии нет.
В текущей версии прототипа наконец-то исправлены проблемы с отображением справки в скомпилированном ехе (рекомендую изучить справочную систему) и реализованы условные схождения. Это означает, что на нем можно делать уже по-настоящему сложную логику. Например, бенчмарк, предложенный в прошлых темах. Другие уже сделали множество реализаций на разных текстовых языках программирования, я сделал реализацию на Лабвью - а теперь это возможно и на Метапроге. Исходная задача на бенчмарк: Метапрог-прототип, версия 6 + будильник на Метапроге (комментарий)
Пока что тест получился в целом неважнецкий, где-то на уровне С++. Полагаю, его еще можно оптимизировать до уровня рукописного Си, так как Метапрог может непосредственно оперировать сишными функциями, если надо - даже без помощи метапроговской стандартной библиотеки. Архив с сишными трансляциями бенчмарка и будильника на Метапроге:
https://www32.zippyshare.com/v/JlUIhEAn/file.html или https://drive.google.com/file/d/1lu1RVqqXEVGgZbviCfwrxFMhdDgvo6LT/view
Доступ к Метапрог-диаграммам можно получить через Метапрог онлайн (репозиторий «бенчмарк ЛОР»), открыть - в прототипе Метапрога.
Каждый бенчмарк проходит 10 повторений, во время каждого выводится 4 числа:
Номер повторения (0-9).
Время (миллисекунды) генерации 100000 строк длиной 100 байт и подсчета их хешей.
Время (миллисекунды) генерации 1000 строк по 20 байт и подсчета их хешей.
Время (миллисекунды) поиска вхождний по хешам.
В случае каждого нахождения вхождения в консоль/stdout выводятся подстрока и строка.
В тестах в случае совпадения хешей в консоль/stdout выводится строка «мяу». Кстати, совпадения хешей случаются даже с 20-символьными подстроками, хотя самих вхождений нет (идет дополнительная проверка).
Условное схождение присутствует, например, в функции генерации случайной английской буквы (A-Z_a-z.bmp, между условием и «+»). После слияния веток с данными (или жесткими последовательностями выполнения) от противоположных условий дальнейшие блоки выполняются в обеих случаях.
Есть разные функции генерации случайного числа, и они совершенно разные по скорости. Если использовать randombytes_uniform из библиотеки libsodium - генерация случайных строк работает в сотни раз медленнее, чем rand. Но функция randombytes_uniform из специальной криптографической библиотеки дает «по-настоящему» случайные числа, в отличие от строк из псевдослучайных чисел (rand), которые повторяются даже между разными запусками программы. Есть тесты, использующие разные функции для случайного числа при генерации 100000 строк по 100 байт. Генерация 1000 строк по 20 байт погоды не делает, тут во всех тестах randombytes_uniform. Уверен, что rand сократило б время генерации 1000 строк по 20 байт до нуля миллисекунд.
Подсчет хешей функцией nk_murmur_hash во всех случаях занимает ничтожную часть времени.
Также для тестирования на достоверность и корректность работы программы есть тесты с подстроками по 5 и 3 байта вместо 20. По ним видно, что бенчмарк работает корректно.
В Метапрог-диагармме подфункции/поддиагарммы могут быть представлены в виде ссылок на файлы (серо-зеленая дискетка при наведении мышью) или же быть частично или полностью отвязанными от файла на диске и полностью находиться в теле файла диагарммы (в таком случае цвет дискетки зависит от наличия и соответствия файлу на диске - путь к нему все же хранится в кластере/структуре диаграммы). Иногда это удобно, чтобы, например, сделать локальный форк подфункции. Например, чтобы использовать rand вместо randombytes_uniform, достаточно было форкнуть диаграмму основного бенчмарка и сделать отвязку от файлов на диске цепочки поддиаграмм, отвечающих за формирование массива случайных строк вплоть до функции генерации псевдослучайного числа. В итоге получились локальные форки функций без необходимости сохранять их в новые файлы. Подобным образом можно управлять и типами, такими как структура/выбор (struct/union), структура условного выбора типа (СУВТ, прямых аналогов в Си нет), пронумерованный список (enum) итд.
Бонус: будильник с проверкой введенных значений (сишная трансляция в файле alarm.c в архиве с бенчмарком, Метапрог-диагарммы в Метапрог онлайн, проект «будильник»).
Из недоделанного: схождения по переключателю (switch) корректно работают только в случае схождения всех без исключения случаев, в том числе «інше»/«другое» (default).
Также заметно, что диагарммы бенчмарков «оплелись» в области поиска подстрок. В прототипе Метапрога работать не очень удобно: есть ограничение на размер окна (если еще увеличить - будут слишком большие задержки отрисовки) и не только, переместить блок входа в цикл по условию (do... while), когда он стал перекрывать вход в типованный цикл (for) было уже довольно сложно (надо переподключать проводки и жесткие последовательности), решил оставить все как есть - все равно работает. В Метапроге «сам на себе», когда он появится, подобных неудобств быть не должно.
В планах: циклы по структурам, переключатели (switch) по многотиповому типу, возможно макросы.
Предыдущая версия: Метапрог-прототип, версия 7 + графические диалоги на Метапроге
Бубунта 18.03. Заметил после обновлений.
http://i.imgur.com/fZUSaZD.png
В верхней панельке после перезагрузки поправились шрифты.
Это настройки шрифтов http://i.imgur.com/w1WCPk0.png
Это настройки тем http://i.imgur.com/7qMnOHm.png
Как чинить это гуанище теперь? где сбросить в дефолт хотя бы?
Подскажите вменяемый сабж ? обычные за 3-5 тыщ просто скрипят и разваливаются через годик
← назад | следующие → |