fdpowermon - 클라우드에서의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 fdpowermon 명령입니다.

프로그램:

이름


fdpowermon - freedesktop.org 호환 시스템 트레이에 배터리 잔량 아이콘 추가

개요


fdpowermon

기술


이 프로그램을 사용하면 freedesktop.org 호환 컴퓨터에서 "배터리 잔량" 아이콘을 표시할 수 있습니다.
상태 영역. 일반 텍스트 구성 파일을 통해 테마를 지정할 수 있습니다.
(/etc/fdpowermon/theme.cfg or $XDG_CONFIG_DIR/fdpowermon/theme.cfg) 또는 짧은 내용을 통해
펄 스크립트(/etc/fdpowermon/theme.pl or $XDG_CONFIG_DIR/fdpowermon/theme.pl). 만약
$XDG_CONFIG_DIR이 설정되지 않았으며 $HOME/.config가 기본값으로 사용됩니다.

전자는 스크립팅이 필요하지 않기 때문에 더 쉽습니다. 그리고 실제로 기본값
구성은 이러한 일반 텍스트 테마의 예입니다. 그러나 후자는 다음을 허용합니다.
배터리 잔량이 부족할 때 실행해야 하는 콜백을 정의할 수 있으므로 유연성이 향상됩니다.
특정 임계값에 도달합니다.

Perl 테마이든 일반 텍스트 테마이든 테마는 '단계'를 통해 구축됩니다.
한 줄로 정의됩니다. 일반 텍스트 구성 파일에서 이러한 줄은 다음과 같습니다.

방전 = 2:missing.png:low.png, 10:low.png, 100:full.png

이는 세 가지 단계를 정의합니다. 배터리 잔량이 다음인 경우 가장 높은 단계에 "full.png" loading="lazy"가 표시됩니다.
11%~100%(포함) 두 번째 단계에서는 배터리 수준이 낮을 때 "low.png" loading="lazy"를 표시합니다.
3%~10%(포함)입니다. 세 번째 단계에서는 "missing.png"가 번갈아 표시됩니다.
배터리가 0%에서 2% 사이일 때 XNUMX초 간격으로 "low.png" loading="lazy"입니다.

라인은 "방전"으로 시작하므로 시스템이 실행 중일 때 이러한 단계가 사용됩니다.
배터리 전원에. 배터리가 다음과 같은 경우에도 유사한 단계를 정의할 수 있습니다.
충전 :

충전중 = 0:empty-charge.png, 10:low-charge.png, 100: full-charge.png

배터리가 (정확히) 0%일 때 "empty-charge.png" loading="lazy"가 표시됩니다.
1%에서 10%(포함) 사이의 "low-charge.png" loading="lazy" 및 11%에서 "full-charge.png" loading="lazy"
위.

순서가 중요하다는 점에 유의하세요. 단계는 낮은 것부터 높은 것까지 정의되어야 합니다.

테마 구성을 완료하려면 몇 가지 항목을 더 추가해야 합니다.

[마이테마]
단계 = 3
dir = /home/wouter/.fdpowermon/mytheme-icons
충전중 = 0:empty-charge.png, 10:low-charge.png, 100: full-charge.png
방전 = 2:missing.png:low.png, 10:low.png, 100:full.png

이는 세 단계로 구성된 "mytheme"이라는 테마를 정의하고 다음에서 이미지를 찾습니다.
"/home/wouter/.fdpowermon/mytheme-icons" 디렉토리. 을 정의하는 것은 불가능합니다
충전 단계와 충전 단계의 단계 수가 다른 테마
방전 단계; 원한다면 해당 단계에 대한 추가 단계를 정의하면 됩니다.
위 또는 아래 단계와 동일한 아이콘이 있는 더 적은 단계를 갖고 싶습니다.

여기서도 순서가 중요합니다. "단계" 줄은 모든 단계 앞에 나타나야 합니다.
"충전" 또는 "방전" 라인(fdpowermon 1.7 이하에서는 그렇지 않았습니다).

둘 이상의 테마가 구성된 경우 fdpowermon은 기본적으로 마지막 테마를 사용합니다.
사용자별 구성에 정의되어 있거나 (사용자별 구성 파일이 없는 경우)
시스템 전체 구성에 정의된 마지막 테마입니다.

Perl 테마 구성 파일은 fdpowermon::theme::make_default를 사용하여 기본값을 변경할 수 있습니다.
테마.

API


@경고
@fdpowermon::theme::warnings 배열을 사용하여 fdpowermon 수준을 지정할 수 있습니다.
표준 경고를 발행해야 합니다. 기본값은 (10, 5, 1)이며 이는 경고를 발행한다는 의미입니다.
10%, 5%, 1% 수준으로요. 특히 빠른 속도로 배터리가 방전되면 주의하세요.
속도에 따라 경보가 발령되기 전보다 수준이 훨씬 더 낮아졌을 수도 있습니다.
또한 fdpowermon은 시스템에서 전원이 제거되면 즉시 경고를 발행합니다.
그리고 그 힘은 첫 번째 수준보다 낮습니다.

전원이 제거될 때 fdpowermon이 항상 경고를 발행하도록 하려면 이것을 다음과 같이 설정하십시오.
(100, 10, 5, 1)과 같습니다. 20%, 10%, 5%에서 fdpowermon 문제 경고를 표시하려면 다음으로 설정하십시오.
(20, 10, 5).

경고 텍스트는 변경할 수 없습니다. 원한다면 다음을 참조하세요.
fdpowermon::theme::warning sub를 사용하고 이벤트를 사용합니다.

$use_notify
$fdpowermon::theme::use_notify 변수는 사용 여부를 결정하는 데 사용될 수 있습니다.
libnotify 메시지(XNUMX이 아닌 값으로 설정된 경우) 또는 대화 상자 창(다음과 같은 값으로 설정된 경우)
XNUMX으로 평가됩니다.)

기본값은 libnotify Glib 내부 검사 데이터가 설치된 경우 libnotify를 사용하는 것입니다.
그렇지 않은 경우 대화 상자. 대화 상자는 초점을 빼앗아 혼란을 야기할 수 있기 때문입니다.
사용자의 작업에는 libnotify를 사용하는 것이 저자가 강력히 권장하는 사항입니다.

변수를 명시적으로 XNUMX이 아닌 값으로 설정하면
설치된 Glib 내부 검사 데이터는 무시됩니다. 그 항목에서 사용 가능한지 확인하세요.
사례!


새로운 fdpowermon 테마를 만듭니다. 축복받은 참조를 반환합니다. 예:

내 $theme = 새로운 fdpowermon::theme;

$테마->set_stepcount($count)
테마의 단계 수를 설정합니다. fdpowermon 테마는 동일해야 합니다.
"충전" 방향과 "방전" 방향 모두의 단계 수입니다.

set_charge, set_discharge 또는 parsing_step을 호출하기 전에 호출해야 합니다.

$테마->set_dir($dir)
아이콘 파일 이름에 사용되는 기본 디렉터리를 설정합니다.

$테마->세트_충전(\@요소)
배터리 충전 시 표시될 아이콘을 설정합니다. 주장은
parse_step 메소드를 통해 생성됩니다.

$theme->set_discharge(\@elements)
배터리가 방전될 때 표시될 아이콘을 설정합니다. 주장은 다음과 같아야합니다
parse_step 메소드를 통해 생성됩니다.

$테마->parse_step($defs)
주어진 문자열을 set_charge로 전달할 수 있는 것으로 구문 분석하거나
set_discharge. 정의는 위에서 설명한 단계 형식이어야 합니다.
"충전 중 =" 또는 "방전 = "으로 시작합니다.

이 메소드는 검사하고 (아마도) 수정할 수 있는 arrayref를 반환하지만,
앞으로 호환되기를 원하는 테마는 이를 불투명한 데이터 구조로 처리해야 합니다.

$테마->set_event($단계, \&콜백, '디')
방전 중일 때 하위 '콜백'이 실행되고 도달할 수 있도록 테마를 업데이트하세요.
$step을 처음으로 시도했습니다. 대신 충전 시 이벤트를 설정하려면 'c'를 세 번째로 전달하세요.
논의.

단계는 배열이므로 0 기반입니다. 가장 낮은 번호의 항목은
가장 낮은 단계.

이벤트가 트리거되면 콜백 루틴에 두 개의 인수가 전달됩니다. 첫 번째는
현재 배터리 수준(%) 두 번째는 해당 여부를 나타내는 숫자입니다.
배터리는 현재 충전 중(1) 또는 방전 중(0)입니다. ACPI를 구문 분석하는 경우
명령이 실패하지만 두 번째 인수는 undef일 수 있습니다. 너는 이것을 준비해야 해
가능성. fdpowermon 자체는 배터리가 다음과 같다고 가정하여 해당 사례를 처리합니다.
충전; 당신도 그렇게 하기를 원할 수도 있고 원하지 않을 수도 있습니다.

$테마->등록($name)
특정 이름으로 테마를 등록합니다. 해당 이름으로 테마가 이미 존재하는 경우
교체되었습니다.

make_default($이름)
특정 이름의 테마를 기본 테마로 만듭니다.

get_theme($name)
주어진 이름으로 테마를 찾습니다. 예:

내 $theme = fdpowermon::theme::get_theme("default");

경고($메시지)
libnotify를 사용하거나 대화 상자를 사용하여 경고를 생성합니다.

fdpowermon::theme::warning($message);

자세한 내용은 위의 $fdpowermon::theme::use_notify 문서를 참조하세요.
구현이 선택됩니다.

사용 예


전체 .cfg 테마 예제를 보려면 위를 보세요.

Perl에서 완전히 동일한 테마를 구성하려면 다음과 같이 하면 됩니다.

내 $theme = 새로운 fdpowermon::theme;
$테마->set_stepcount(3);
$theme->set_dir("/home/wouter/.fdpowermon/mytheme-icons");
$theme->set_charge($theme->parse_step("0:empty-charge.png, 10:low-charge.png, 100: full-charge.png"));
$theme->set_discharge($theme->parse_step("2:missing.png:low.png, 10:low.png, 100:full.png"));

(펄 테마로서 이는 theme.cfg가 아닌 theme.pl에 저장됩니다. 가능한 내용은 위를 참조하세요.
Perl 테마 위치)

그러나 테마를 동적으로 구축하려는 경우가 아니면 이 방법은 적합하지 않습니다.
추천합니다. 대신 .cfg 파일에서 테마를 빌드하고 수정할 수도 있습니다.
펄에서. 전원이 들어오면 시스템을 일시 중지하는 이벤트를 추가하고 싶다고 가정해 보겠습니다.
낮은; 이 경우 다음과 같은 작업을 수행합니다.

하위 정지 {
system("sudo pm-일시 중지");
}

my $theme = fdpowermon::theme::get_theme("mytheme");
$theme->set_event(0, \&중단, 'd');

이는 배터리가 방전되고 최저 수준에 도달할 때 '일시 중지' 하위를 호출합니다.
단계(위 예에서는 배터리가 10%에 도달하는 경우입니다.
그건 좀 나중에 하세요). 이 '일시 중지' 하위 항목은 단순히 'pm-일시 중지' 프로그램을 호출합니다.
sudo, 시스템을 일시 중지합니다.

onworks.net 서비스를 사용하여 온라인으로 fdpowermon 사용



최신 Linux 및 Windows 온라인 프로그램