LINUX.ORG.RU

Помогите корректно сформировать команду lua

 ,


0

1

Здравствуйте. На awesomeWM я запилил себе нескучный рабочий стол в виде wibar'а, натянутого на layout, а в layout'е уже вписаны ярлыки, которыми часто пользуюсь. Сформировать массив ярлыков моих знаний хватило, а вот в layout их вписать пока у меня получается только явным перебором (размер сформированного двумерного массива ярлыков «dlaunchers» - 12x6):

{layout = wibox.layout.fixed.horizontal, 
				{layout = wibox.layout.fixed.vertical,
					dlaunchers[1][1],
					dlaunchers[1][2],
					dlaunchers[1][3],
					dlaunchers[1][4],
					dlaunchers[1][5],
					dlaunchers[1][6]},
				{layout = wibox.layout.fixed.vertical,
					dlaunchers[2][1],
					dlaunchers[2][2],
					dlaunchers[2][3],
					dlaunchers[2][4],
					dlaunchers[2][5],
					dlaunchers[2][6]},
------и так далее до---------------------------------------------------------
				{layout = wibox.layout.fixed.vertical,
					dlaunchers[12][1],
					dlaunchers[12][2],
					dlaunchers[12][3],
					dlaunchers[12][4],
					dlaunchers[12][5],
					dlaunchers[12][6]},}

Подскажите, пожалуйста, как мне формирование этого layout'а полуавтоматизировать? Тут явно нужен цикл, или команда вывода элементов столбца двумерного массива, или что-то ещё. Но тут мои знания lua буксуют. Спасибо за внимание.

★★★★

Синтаксис lua не знаю, на баше это выглядит так

for i in {1..12}; do for n in {1..6}; do echo dlaunchers[$i][$n]; done; done
anonymous
()

Ужас. Ты хотя бы так форматировать научись.

{
    layout = wibox.layout.fixed.horizontal, 
    {
        layout = wibox.layout.fixed.vertical,
        dlaunchers[1][1],
        dlaunchers[1][2],
        dlaunchers[1][3],
        dlaunchers[1][4],
        dlaunchers[1][5],
        dlaunchers[1][6]
    },
    {
        layout = wibox.layout.fixed.vertical,
        dlaunchers[2][1],
        dlaunchers[2][2],
        dlaunchers[2][3],
        dlaunchers[2][4],
        dlaunchers[2][5],
        dlaunchers[2][6]},
        ------и так далее до---------------------------------------------------------
    {
        layout = wibox.layout.fixed.vertical,
        dlaunchers[12][1],
        dlaunchers[12][2],
        dlaunchers[12][3],
        dlaunchers[12][4],
        dlaunchers[12][5],
        dlaunchers[12][6]},
}
anonymous
()

Если данный конфиг приравнять к переменной cfg, то её значение будет следующим:

cfg = { layout = wibox.layout.fixed.horizontal }

for i=1,12 do
	cfg[i] = { layout = wibox.layout.fixed.vertical }
	for j=1,6 do cfg[i][j]=dlaunchers[i][j] end
end
anonymous
()
Ответ на: комментарий от anonymous

Большое спасибо, аноним! всё срослось.

piyavking ★★★★
() автор топика
Ответ на: удаленный комментарий

я свой rc-base.lua ещё ковыряю. щас нажму.

piyavking ★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 1)
Ответ на: комментарий от xDShot

Вообще кошмарный, естественно. Я не знаю lua, я не знаю программирования, я даже в разметку плохо умею. Мне только десктоп попилить слегка, бггг.

piyavking ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.