Komputery, Windows i masa kompletnego bałaganu. Tak, to mój dziennik.

ktos.jogger


Głosowa informacja o godzinie

10 października 2007, 19:10:58. Techblog, Windows , 0.

dmn napisał wczoraj w jaki sposób zmusić Linuksa do "powiedzenia" jaką mamy aktualnie godzinę. Wystarczą dwie linijki kodu. A Windows zapytacie?

Wystarczy jedna.

(new-object -com Sapi.SpVoice).Speak([DateTime]::Now.ToString("T"))

Rzecz jasna trzeba mieć Windows PowerShell i jakiś "głos". W Windows Vista standardowo Microsoft Anna czyta bardzo ładnie, obecny standardowo w Windows XP "Microsoft Sam" czyta okropnie (ale da się zrozumieć ;-))

Komentarze

  1. dmn
    10 października 2007 19:14:14

    hm.. myślałem, że to „linux exclusive” ;]
    sprawdzę jak mi się zdarzy siedzieć na win :)

  2. Elwis
    10 października 2007 19:35:26

    Taaa.. Niech żyje manipulacja… dmn zrobił to w dwóch linijkach dla poleprzenia czytelności. Można spokojnie zmieścić to w jednej :)

  3. Marcin / Ktos
    10 października 2007 19:41:58

    Elwis, tutaj też można rozbić na dwie linijki (i tak zrobiłem za pierwszym razem: tworzenie zmiennej i z niej wywołanie metody Speak), jeżeli potrzeba ;-)

    W ogóle mierzenie kodu „liniami” to dobre jest chyba tylko dla języków w których separatorem jest \n, jeżeli mamy możliwość użycia średnika, to już nie jest liczba linii tak istotna :-)

  4. Elwis
    10 października 2007 19:43:47

    Z tymi liniami, rzeczywiście często mało miarodajna skala..

  5. Uzytkownik
    10 października 2007 21:53:14

    Powinno zadziałać:
    espeak —stdout „`date +”%k %M”`” | aplay /dev/stdin

  6. Marek
    10 października 2007 22:58:26

    @ktos, a wiesz może jak zainstalować Windows PowerShell w XP z PL językiem ? :/

  7. Dot
    10 października 2007 23:03:18

    Hmm… A w czym dokładnie problem? Dawno to było, ale kiedyś instalowałem i nie przypominam sobie kłopotów…

  8. Marek
    10 października 2007 23:07:51

    Dokładnie w tym:
    Error Screen

  9. Dot
    10 października 2007 23:16:02

    A którą paczkę próbujesz instalować? Angielską, czy zlokalizowaną? W/g http://support.microsoft.com/kb/926139 powinno się zainstalować wersję angielską:
    „There are two installation packages and a multilingual user interface (MUI) language package for Windows PowerShell 1.0. Select the installation package for the language type and operating system on the computer.
    •English
    If you are running an English-language version of Windows, or a version of Windows localized for a language other than German, Spanish, French, Italian, Japanese, Korean, Portuguese, Russian, Chinese Simplified, or Chinese Traditional, install an English-language version of Windows PowerShell 1.0. This article describes the English language installation packages.”

  10. Marcin / Ktos
    11 października 2007 09:20:37

    Dokładnie, nie instaluj wersji MUI, tylko zwykłą. Windows XP Polski współpracuje z PowerShellem angielskim bez problemu.

  11. jrk/jarek/jaareek
    14 października 2007 02:16:57

    Głosowa informacja o godzinie?

    Dmn i Ktos napisali, co zrobić by „linux powiedział godzinę”. Przypomniało mi to o pewnym programiku, zwycięzcy IOCCC z 2001 roku, który kiedyś widziałem. Kod poniżej.

Zostaw komentarz

W komentarzach dozwolona jest składnia Markdown do formatowania.