Czy mogę uruchomić top jako wygaszacz ekranu?

9

Mój pracodawca wydał mi ostatnio MacBooka Pro do zabawy. Mam duże doświadczenie z Linuksem, ale zaskoczyło mnie, jak ładnie wygląda terminal na komputerze Mac w trybie pełnoekranowym, szczególnie gdy jest uruchomiony „top”. Myślę, że wyglądałby imponująco „hackerski” jako wygaszacz ekranu.

Czy ktoś wymyślił sposób, aby to zadziałało? Oczywiście musiałbym wyłączyć zwykły tryb oszczędzania energii, w którym wyświetlacz jest wyłączony.

Istnieje jeden projekt, ale na podstawie jego strony internetowej jest bardzo trudny, jeśli w ogóle działa.

Jordan Nash
źródło
Jaki był projekt Wypróbowałeś to?
Alistair McMillan,
@AlistairMcMillan to githib.com/lunow/terminalscreensaver, o którym była mowa w poprzedniej dyskusji tutaj (106270, październik 2013), w której, jak donosili, zajęło dużo pracy, aby uczynić go funkcjonalnym.
Jordan Nash,
Tak, niestety ten wygaszacz ekranu generuje tylko wstępnie wygenerowany tekst. W rzeczywistości z niczym nie rozmawia.
Alistair McMillan,

Odpowiedzi:

4

Jeśli szukasz hackerskich wygaszaczy ekranu, stary pakiet Xscreensaver został niedawno przekonwertowany na OSX.

Przykładami hakerów są Sonar, AppleII i Phosphor. Możliwe też GLMatrix.

Jednak, aby odpowiedzieć na twoje pytanie: /superuser/420546/osx-run-bash-or-app-as-the-screensaver

Napisz skrypt jabłkowy, aby uruchomić Terminal, uruchom Top i sam ekran. Następnie umieść ten skrypt w aplikacji.

Alex
źródło
3

Jeśli zainstalujesz XScreenSaver w wersji OS X , phosphorwygaszacz symuluje stary wyświetlacz terminali fosforowych. To może być skonfigurowany do uruchomienia dowolnego polecenia na wyświetlaczu terminala, w tym top:

wygaszacz ekranu fosforowy

Uważam, że ustawienia -scale 2 -delay 40 -program topdziałają całkiem dobrze i wyglądają dość „hackersko”.

Stuart Caie
źródło
Patrzę na panel Opcje wygaszacza ekranu fosforu w Ustawieniach i nie wiem, jak to uruchomić. -scale to flaga ... do którego polecenia?
niels
1

LookThrough ekranu robi prawie co szukasz na Mavericks i Yosemite . Pozwala na prawidłowe zabezpieczenie komputera Mac, gdy jednocześnie wyświetlasz rzeczywiste wyjście toppolecenia.

Wyjście na ekranie nie będzie dokładnie synchroniczną kopią tego, co byłoby na ekranie bez wygaszacza ekranu. To wyjście będzie kopią asynchroniczną, ale opóźnienie jest tak małe, że idealnie nadaje się do całkowitego zjedzenia procesora komputera Mac i do uniknięcia poczucia zwolnienia.

Pozwala także zachować na ekranie, co tylko chcesz. Używam go do utrzymywania na ekranie wykresów cactiwydajności sprzętu sieciowego.

Jeśli szukasz rozwiązania na temat Lion lub Mountain Lion , spójrz na to stare pytanie Przezroczysty zablokowany ekran .

dan
źródło
1

Możesz użyć ScriptSaver , ponieważ jeśli Require password after sleep or screen saver beginswłączyłeś po IIRC OS X 10.7, inaczej nie przejrzysz i nie zobaczysz czarnego ekranu (jestem włączony 10.8.5). Oto przykład użycia go uruchomić iTermz top.

Ustawienia ScriptSaver

Skrypt aktywacyjny

tell application "iTerm" to create window with profile "Hotkey Window" command "top"

Wygaszacz ekranu

LookThrough . Alternatywnie, JohnnyNash , Transparent .

Skrypt dezaktywacji

tell application "iTerm"
close front window
quit
end tell
1,61803
źródło
0

Jeśli chcesz zaoszczędzić trochę pamięci komputera i być może użycia procesora, oto sposób na zapisanie „hackerskiego” wyniku Toppolecenia i użycie go jako wygaszacza ekranu.

Minusem tego podejścia jest to, że wygaszacz ekranu nie będzie w stanie wyświetlać żadnych danych na żywo Top . Jeśli wyjście na żywo jest ważne, odpowiedź Alexa jest prawdopodobnie najlepszym rozwiązaniem (z wyjątkiem oczywiście napisania programu).

Jeśli jednak chcesz to zrobić ze względu na fajny wygląd, podejście wideo będzie prawdopodobnie znacznie lżejsze w zasobach systemowych i można to zrobić przy użyciu oficjalnych programów Apple. Ponadto nie będziesz musiał uruchamiać aplikacji pełnoekranowej w tle (choć w rzeczywistości jest to całkiem fajna koncepcja @Alex, i mogę później zajrzeć na własne potrzeby).

Tak czy inaczej, oto krótki przewodnik na temat tworzenia wygaszacza ekranu:

  • Ten krótki film pokazuje, jak zrobić wygaszacz ekranu za pomocą Apple Quartz Composer. Niestety, ten program nie jest już domyślnie wyposażony w Xcode.

  • Aby uzyskać Quartz Composer, przejdź na stronę developer.apple.com/downloads i wyszukaj go na stronie głównej. Graphics Tools for XcodePowinna pojawić się lista programów, zainstalowałem najnowszą i działa ona dobrze na OSX 10.9.4 (mówię to, ponieważ twórca powyższego wideo powiedział, że jedna ze starszych wersji nie działa z jego systemem operacyjnym).

  • Możesz użyć QuickTime Player, aby nagrać swój program, przechodząc do File > New Screen Recording.

  • Nagraj kilka minut filmu i przycinaj / przycinaj wideo w razie potrzeby, aby wyglądało dobrze podczas zapętlania, przechodząc do Edit > Split Clipi Edit > Trim. Myślę, że w razie potrzeby możesz również skopiować i podzielić podzielone segmenty.

  • Wyeksportuj klip w wybranej przez siebie rozdzielczości, ale jeśli tylko nagrywasz Terminal, prawdopodobnie nie potrzebujesz bardzo wysokiej rozdzielczości.

Jeśli nagrywasz bardzo długi film lub chcesz użyć wysokiej rozdzielczości, plik może być dość duży i nieefektywny pod względem zasobów, ale na szczęście istnieje możliwość obejścia tego problemu. W takim przypadku zalecałbym użycie kompresji wideo do programów innych niż Apple. Ten program istnieje już od dłuższego czasu i moim zdaniem wydaje się dość renomowany. Nazywa się HandBrake . Osobiście używam go bardzo często podczas kompresji moich zrzutów ekranu i wykładów klasowych. Jeśli użyjesz odpowiednich ustawień, robi to naprawdę świetną robotę.

Jeśli zdecydujesz się skompresować wideo za pomocą HandBreak, opublikuj komentarz tutaj, a mogę zasugerować niektóre ustawienia, których używam do swoich nagrań.

Mam nadzieję że to pomoże! :)

Vladimir
źródło
1
Usunąłem wszystkie komentarze, ponieważ wydaje się, że dyskusja zakończyła się i nie dodaje już odpowiedzi. Jeśli jednak chcesz kontynuować dyskusję, zrób to na czacie.
nohillside
1
Cofnęłam głos, gdy odpowiedź została wyjaśniona. Przepraszam za to, @Vladimir.
aglasser