The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Представлен RubyWM, оконный менеджер, написанный целиком на Ruby, opennews (??), 23-Янв-24, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


63. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +4 +/
Сообщение от zhmylove (ok), 23-Янв-24, 13:48 
Фи, на Perl уже давно есть [korgwm]
Ответить | Правка | Наверх | Cообщить модератору

74. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от voiceofreason (?), 23-Янв-24, 15:17 
На коммон-лишп
Ответить | Правка | Наверх | Cообщить модератору

91. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (91), 23-Янв-24, 19:18 
Тоже есть, и тоже давно. И на elisp тоже есть. На лиспах такие вещи (да и все остальные, в общем-то тоже) писать сплошное удовольствие. Но для этого надо видеть дальше скобочек, а на этом 99.9999999999% диванных сливается.
Ответить | Правка | Наверх | Cообщить модератору

102. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (98), 23-Янв-24, 20:25 
На хаскеле поинтересней с точки зрения строгости, сайд эффектов и чистоты. На Лиспе скучно)
Ответить | Правка | Наверх | Cообщить модератору

113. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (113), 23-Янв-24, 23:17 
А мне не надо интереснее. Мне надо чтобы написал, и работало потом 20 лет без переписывания.
Ответить | Правка | Наверх | Cообщить модератору

118. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (118), 24-Янв-24, 03:59 
Как xmonad?
Ответить | Правка | Наверх | Cообщить модератору

121. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (121), 24-Янв-24, 08:29 
> Как xmonad?

github/xmonad/xmonad-contrib/blob/master/CHANGES.md

"Dropped support for GHC 8.4."

Красава. Модно, молодежно. Лови момент.

Ответить | Правка | Наверх | Cообщить модератору

154. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (118), 25-Янв-24, 10:39 
Отрицай, лиспер : )
Ответить | Правка | Наверх | Cообщить модератору

106. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Печенька (?), 23-Янв-24, 22:00 
На  закрывающие скобочки лисперы мало смотрят, в основном ориентируются на отступы (как бы это странно не звучало), есть даже srfi для схемы в виде языка с отступами https://srfi.schemers.org/srfi-119/srfi-119.html

Кстати, в той же схеме и других диалектах можно смешивать круглые и квадратные скобки для читабельности, например, можно посмотреть в код chezscheme и увидеть как это выглядит.

Ну и давно есть различные плагины для балансирования скобок в редакторах.

Ответить | Правка | К родителю #91 | Наверх | Cообщить модератору

115. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (113), 23-Янв-24, 23:19 
Вот именно это я и имел в виду, когда говорил про видеть дальше скобочек. Дело не в редакторе и не в отступах. Дело в гомоиконности. Но диванным нужен плагин.
Ответить | Правка | Наверх | Cообщить модератору

119. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от User (??), 24-Янв-24, 07:13 
Нееее... Первое, что нужно "диванным"(ТМ) - это чтоб платили. За lisp вот практически не платят. Одно время вроде за closure вполне себе - но лет уже не мало как по ощущениям все "наигрались", не в последнюю очередь по причине очень уж унылого перформанса.
Ответить | Правка | Наверх | Cообщить модератору

78. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +1 +/
Сообщение от wd (?), 23-Янв-24, 15:54 
дык есть и просто PerlWM
Ответить | Правка | К родителю #63 | Наверх | Cообщить модератору

92. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +1 +/
Сообщение от zhmylove (ok), 23-Янв-24, 19:29 
Последний релиз PerlWM датирован 2004м годом.
Он, конечно, есть, но он неюзабелен: по функциональности он даже хуже TWM.
Ну и сыпет варнингами и TODO при работе.

Короче, PerlWM -- это PoC, а не рабочий инструмент.

Ответить | Правка | Наверх | Cообщить модератору

84. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +2 +/
Сообщение от jjklh (?), 23-Янв-24, 17:13 
Глянул на гитхабе. Ты молодец. Не думал что встречу перлхакера на опеннете.

Можно вопрос? А yaml конфигурация принципиальна? Обрезает же возможности расширения.

Вместо простыни из
<code>
  mod_ctrl_1: 'tag_append(1)'
  mod_ctrl_2: 'tag_append(2)'
  mod_ctrl_3: 'tag_append(3)'
  mod_ctrl_4: 'tag_append(4)'
  mod_ctrl_5: 'tag_append(5)'
  mod_ctrl_6: 'tag_append(6)'
  mod_ctrl_7: 'tag_append(7)'
  mod_ctrl_8: 'tag_append(8)'
  mod_ctrl_9: 'tag_append(9)'
  mod_shift_1: 'win_move_tag(1)'
  mod_shift_2: 'win_move_tag(2)'
  mod_shift_3: 'win_move_tag(3)'
  mod_shift_4: 'win_move_tag(4)'
  mod_shift_5: 'win_move_tag(5)'
  mod_shift_6: 'win_move_tag(6)'
  mod_shift_7: 'win_move_tag(7)'
  mod_shift_8: 'win_move_tag(8)'
  mod_shift_9: 'win_move_tag(9)'
</code>

написал бы:
<code>
for my $i (1..9) {
  definekey "mod_ctrl_$i" tag_append($i)
  definekey "mod_shift_$i" win_move_tag($i)
</code>
не говоря уже о возможности определять свои функции в конфиге, наследовать поведение и расширять базовые возможности on-the-fly, что-то типа emacs/vim'a.

Ответить | Правка | К родителю #63 | Наверх | Cообщить модератору

93. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +2 +/
Сообщение от zhmylove (ok), 23-Янв-24, 19:34 
Это да, в lib/X11/korgwm/Config.pm так и написано.
Например: "(map {; "mod_ctrl_$_" => "tag_append($_)" } 1..9),"

Почему не сделал "do $config_file"?
Не было необходимости, но это всегда легко дописать :)

Почему взял YAML? Никакой религии за этим нет. Взял потому, что это простой способ читать структурированные файлы. Предварительно поговорил с ребятами из Modern::Perl, кто чем сейчас пользуется.

Лично я обычно, как ты и предлагаешь, как раз конфиги пишу в perl коде и потом просто исполняю их.
Здесь мне хотелось чего-то, что смогут править не знающие perl люди.

Как-то так :)

P.S. я планирую как-нибудь написать статейку о korgwm, как и зачем я его писал. Просто пока времени нет. Но использую я его каждый день, это не PoC, а мой рабочий инструмент :)

Ответить | Правка | Наверх | Cообщить модератору

105. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +1 +/
Сообщение от jjklh (?), 23-Янв-24, 21:40 
>[оверквотинг удален]
> Почему взял YAML? Никакой религии за этим нет. Взял потому, что это
> простой способ читать структурированные файлы. Предварительно поговорил с ребятами из
> Modern::Perl, кто чем сейчас пользуется.
> Лично я обычно, как ты и предлагаешь, как раз конфиги пишу в
> perl коде и потом просто исполняю их.
> Здесь мне хотелось чего-то, что смогут править не знающие perl люди.
> Как-то так :)
> P.S. я планирую как-нибудь написать статейку о korgwm, как и зачем я
> его писал. Просто пока времени нет. Но использую я его каждый
> день, это не PoC, а мой рабочий инструмент :)

Ну, большой разницы для незнающих Perl между "key: val" и "$key = 'val'" особо нет. Тем более, что ты сам тестируешь перл код, только тратишь время еще и на вынос этих переменных в yaml. А для новичков всегда можно в конфиге explicitly написать, без map'a, от А до Я, тогда разницы вообще никакой. Зато, если в "Apply Rules" если мне захотелось бы сделать матчинг не только по WM_CLASS, но и по WM_NAME, или по WM_ROLE, то при соответствующей организации кода я бы получил возможность:


$config->{rules} = {
  { class => "Sylpheed", title => "sylpheed", role => "Input Password" } =>
     { screen => 2, tag => 2, follow => 0, urgent => 1, },

  { class => "Sylpheed", title => "sylpheed", } =>
     { screen => 2, tag => 2, follow => 0, },
};

Тобишь, просто добавить пару ключей, и переписать обработчик. Разумеется при должной организации кода, на что требуются дополнительные усилия с твоей стороны. А если охота сохранить возможность выноса этих переменных в yaml - то и еще дополнительных усилий. На что я само-собой не имею права, и прошу не воспринимать как указания. Кто я вообще такой... Ты сделал классную штуку, это достойно уважения и похвалы, снимаю шляпу. От меня звезда и подписка на RSS коммитов в гитхабе.

P.S. Но просто знай, если вдруг, еееееесли, вдруг... не смею надеяться, но ееееесли... задумаешь повторить возможности хакинга stumpwm только на Perl'e, как перловщик и изредка непредумышленный коммитер в Perl, я опакечу korgwm в свой дистр, и буду контрибьютером. Ты забацал нереально классную штуку)

Ответить | Правка | Наверх | Cообщить модератору

109. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +2 +/
Сообщение от zhmylove (ok), 23-Янв-24, 22:24 
Круть, спасибо!

А что у тебя за дистр?

BTW для ArchLinux и FreeBSD я уже сделал пакет в AUR и порт, соответственно.

Ответить | Правка | Наверх | Cообщить модератору

110. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +1 +/
Сообщение от jjklh (?), 23-Янв-24, 22:52 
Опеннет вроде режет ссылки, потому напишу так: github/zeppe-lin

Вдохновлялся NetBSD и CRUX. ^_^

Ответить | Правка | Наверх | Cообщить модератору

111. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +1 +/
Сообщение от zhmylove (ok), 23-Янв-24, 23:02 
Спасибо. Посмотрел на гитхабе -- отличный проект. Так что снимаю шляпу и ставлю звезду взаимно :)
Ответить | Правка | Наверх | Cообщить модератору

112. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от jjklh (?), 23-Янв-24, 23:10 
Ну, после столь нетипичных для опеннета любезностей, мы просто обязаны жениться. :-D
Шучу, спасибо бро. Удачи с проектом, и как говорится, have fun.
Ответить | Правка | Наверх | Cообщить модератору

114. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (98), 23-Янв-24, 23:19 
Now kiss.
Ответить | Правка | К родителю #111 | Наверх | Cообщить модератору

151. "Представлен RubyWM, оконный менеджер, написанный целиком на ..."  +/
Сообщение от Аноним (151), 24-Янв-24, 19:26 
> для ArchLinux и FreeBSD я уже сделал пакет

Ах ты мой хороший!

Ответить | Правка | К родителю #109 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру