Измените Носатый для обработки значений переменной длины

Я в настоящее время экспериментирующий с DWM и Носатый для создания минимально выглядящий рабочий стол для использования для кодирования и подобных вещей. У меня есть что-то хорошее продолжение, но существует что-то, с чем у меня есть проблема в данный момент. Прямо сейчас, мое Носатое TEXT раздел является выровненным центром, который выглядит хорошим, но он также возвращает информацию об использовании ЦП. Если использование ЦП мерцает между, скажем, 9 и 10%, полный размер текста отличается, и потому что это - выровненный центр, это переместилось немного. Цвета, удаленные в течение секунды для ясности, вот являются простой версией рассматриваемой строки...

${alignc}CPU: ${cpu}%

Различие, конечно, между двумя из

ЦП 9%

ЦП 10%

то, что вызывает проблему. То, как я пошел бы о лево-дополнении 9 с два, обнуляет, затем 10 с одним нулем, и затем 100 без обнуляет? Единственная вещь, которую я вижу неопределенно связанный в документации, должна иметь дело с дополнением десятичного разряда, которое не является тем, в чем я нуждаюсь вообще.

8
задан 20.08.2010, 08:24

2 ответа

Решение (ничего не может найти лучше теперь, но это работает), включает использование пользовательской функции Lua, вот то, как необходимо сделать:

  1. Создайте файл для функции Lua, скажите ~/.conky_lua_scripts.lua с:

    function conky_pad( number )
        return string.format( '%3i' , conky_parse( number ) )
    end
    

    Это заполнит число пробелами (imo более хороший), если Вы захотите нули, просто заменяют '%3i' '%03i'.

  2. В Вашем .conkyrc добавьте перед TEXT раздел:

    lua_load ~/.conky_lua_scripts.lua
    
  3. Наконец для печати заполненного значения вводят Ваш TEXT разделите что-то как:

    ${alignc}CPU: ${lua_parse pad ${cpu}}%
    

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

6
ответ дан 07.12.2019, 14:00

Я обычно выравниваю текст (ЦП) налево и значения направо, и указываю их точное положение. Таким образом, значения "расширяются" (от 9 до 10, например) в вакуум между ЦП и значением.

0
ответ дан 07.12.2019, 14:00

Теги

Похожие вопросы