Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 254301 Details for
Bug 345397
gnome-extra/xmonad-log-applet xmonad-log-applet-9999.ebuild
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
xmonad.hs
xmonad.hs (text/plain), 2.16 KB, created by
Florian Schmaus
on 2010-11-14 13:35:46 UTC
(
hide
)
Description:
xmonad.hs
Filename:
MIME Type:
Creator:
Florian Schmaus
Created:
2010-11-14 13:35:46 UTC
Size:
2.16 KB
patch
obsolete
>import Control.OldException(catchDyn,try) >import XMonad.Util.Run >import Control.Concurrent >import DBus >import DBus.Connection >import DBus.Message >import System.Cmd >import XMonad >import XMonad.Config.Gnome >import XMonad.Hooks.DynamicLog >import XMonad.Layout.Accordion >import XMonad.Layout.Grid >import XMonad.ManageHook >import XMonad.Prompt >import XMonad.Util.EZConfig > > >main = withConnection Session $ \ dbus -> do > getWellKnownName dbus > xmonad $ gnomeConfig { > terminal = "xterm", > modMask = mod4Mask, -- set the mod key to the windows key > logHook = dynamicLogWithPP (myPrettyPrinter dbus) > } > > >-- This retry is really awkward, but sometimes DBus won't let us get our >-- name unless we retry a couple times. >getWellKnownName :: Connection -> IO () >getWellKnownName dbus = tryGetName `catchDyn` (\ (DBus.Error _ _) -> > getWellKnownName dbus) > where > tryGetName = do > namereq <- newMethodCall serviceDBus pathDBus interfaceDBus "RequestName" > addArgs namereq [String "org.xmonad.Log", Word32 5] > sendWithReplyAndBlock dbus namereq 0 > return () > > >myPrettyPrinter :: Connection -> PP >myPrettyPrinter dbus = defaultPP { > ppOutput = outputThroughDBus dbus > , ppTitle = pangoColor "#003366" . shorten 50 . pangoSanitize > , ppCurrent = pangoColor "#006666" . wrap "[" "]" . pangoSanitize > , ppVisible = pangoColor "#663366" . wrap "(" ")" . pangoSanitize > , ppHidden = wrap " " " " > , ppUrgent = pangoColor "red" > } > >outputThroughDBus :: Connection -> String -> IO () >outputThroughDBus dbus str = do > let str' = "<span font=\"Terminus 9 Bold\">" ++ str ++ "</span>" > msg <- newSignal "/org/xmonad/Log" "org.xmonad.Log" "Update" > addArgs msg [String str'] > send dbus msg 0 `catchDyn` (\ (DBus.Error _ _ ) -> return 0) > return () > > >pangoColor :: String -> String -> String >pangoColor fg = wrap left right > where > left = "<span foreground=\"" ++ fg ++ "\">" > right = "</span>" > >pangoSanitize :: String -> String >pangoSanitize = foldr sanitize "" > where > sanitize '>' acc = ">" ++ acc > sanitize '<' acc = "<" ++ acc > sanitize '\"' acc = """ ++ acc > sanitize '&' acc = "&" ++ acc > sanitize x acc = x:acc >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 345397
:
254297
|
254299
| 254301