diff --git a/src/XMonad/Config/Vanessa.hs b/src/XMonad/Config/Vanessa.hs
--- a/src/XMonad/Config/Vanessa.hs
+++ b/src/XMonad/Config/Vanessa.hs
@@ -2,7 +2,7 @@
 module XMonad.Config.Vanessa (vConfig) where
 
 --XMonad modules
-import XMonad
+import XMonad hiding (workspaces)
 import XMonad.Hooks.DynamicLog
 import XMonad.Hooks.ManageDocks
 import XMonad.Layout.Spiral
@@ -12,9 +12,11 @@
 import XMonad.Util.Brightness
 import XMonad.Util.Keyboard
 import XMonad.Util.MediaKeys
-import XMonad.StackSet as W
+import XMonad.Util.NamedWindows
+import XMonad.StackSet hiding (filter)
 --Monads etc.
 import qualified Data.Map as M
+import Data.Maybe
 import Data.Monoid
 import Control.Monad hiding (guard)
 import Control.Monad.IO.Class
@@ -27,27 +29,37 @@
     where config = myConfig
 
 -- | Custom configuration taking in one pipe to xmobar
-myConfig xmproc = def { terminal   = "gnome-terminal"
+myConfig xmproc = def { terminal   = "gnome-terminal" -- "alacritty"
                       , keys       = newKeys
                       , layoutHook = myLayout
                       , logHook    = (vLogHook xmproc)
                       , manageHook = myManageHook }
 
+-- | get the current music playing (assumed to be in number 5)
+musicString :: X String
+musicString = do
+    winset <- gets windowset
+    let p = (== "5") . fst
+    wt <- maybe (pure "") (fmap show . getName) . (fmap snd) . listToMaybe . filter p $ zip (((map tag . workspaces)) winset) (allWindows winset) 
+    pure . (xmobarColor "green" "black") . take 40 $ wt
+
 -- | Provides custom hooks to xmonad. This disables printing the window title/connects xmobar and xmonad.
-vLogHook xmproc = dynamicLogWithPP xmobarPP { ppOutput = hPutStrLn xmproc
-                                            , ppTitle = const ""
-                                            , ppLayout = const ""
-                                            , ppHiddenNoWindows = id
-                                            , ppHidden = (xmobarColor "darkorange" "black")
-                                            , ppVisible = (xmobarColor "yellow" "black")
-                                            }
+vLogHook xmproc = musicString >>= \m ->  dynamicLogWithPP xmobarPP { ppOutput = hPutStrLn xmproc
+                                                                   , ppTitle = const m
+                                                                   , ppLayout = const ""
+                                                                   , ppHiddenNoWindows = id
+                                                                   , ppHidden = (xmobarColor "darkorange" "black") -- . (\x -> if x == "5" then "Spotify" else x)
+                                                                   , ppVisible = (xmobarColor "yellow" "black")
+                                                                   }
  
 -- | Doesn't work but I'm trying so hey. 
 myManageHook :: Query (Endo WindowSet)
-myManageHook = composeAll [ className =? "Gimp"          --> doFloat
-                          , resource =? "spotify"       --> doF (W.shift "5")
-                          , resource =? "google-chrome" --> doF (W.shift "2")
-                          , resource =? "crx_bikioccmkafdpakkkcpdbppfkghcmihk" --> doF (W.shift "7")
+myManageHook = composeAll [ className =? "Gimp"                                --> doFloat
+                          , resource =? "spotify"                              --> doF (shift "5")
+                          , resource =? "google-chrome"                        --> doF (shift "2")
+                          , resource =? "crx_bikioccmkafdpakkkcpdbppfkghcmihk" --> doF (shift "7")
+                          , resource =? "crx_bgkodfmeijboinjdegggmkbkjfiagaan" --> doF (shift "7")
+                          , className =? "libreoffice-writer" --> doFloat
                           ]
 
 -- | Custom keymaps to adjust volume, brightness, and 
@@ -59,7 +71,7 @@
              , ((modm, xK_F8), toggleMute)
              --personal (extra) media keys
              , ((modm, xK_End), audioNext)
-             , ((modm, xK_Page_Up), audioPrev)
+             , ((modm, xK_Page_Down), audioPrev)
              , ((modm, xK_Home), audioPlayPause)
              --brightness
              , ((modm, xK_Left), brighten (-100))
diff --git a/xmonad-vanessa.cabal b/xmonad-vanessa.cabal
--- a/xmonad-vanessa.cabal
+++ b/xmonad-vanessa.cabal
@@ -1,5 +1,5 @@
 name: xmonad-vanessa
-version: 0.1.0.2
+version: 0.1.0.3
 cabal-version: >=1.10
 build-type: Simple
 license: BSD3
@@ -31,7 +31,8 @@
         xmonad-extras >=0.12.1 && <0.13,
         containers >=0.5.7.1 && <0.6,
         process >=1.4.2.0 && <1.5,
-        X11 >=1.6.1.2 && <1.7
+        X11 >=1.6.1.2 && <1.7,
+        transformers >=0.5.2.0 && <0.6
     default-language: Haskell2010
     hs-source-dirs: src
 
@@ -39,17 +40,17 @@
     main-is: Main.hs
     build-depends:
         base >=4.9.0.0 && <4.10,
-        xmonad-vanessa >=0.1.0.2 && <0.2
+        xmonad-vanessa >=0.1.0.3 && <0.2
     default-language: Haskell2010
     hs-source-dirs: app
-    ghc-options: -threaded -rtsopts -with-rtsopts=-N
+    ghc-options: -threaded -rtsopts -with-rtsopts=-N -O3 -fllvm -optlo-O3
 
 executable getkb
     main-is: ParseKBLayout.hs
     build-depends:
         base >=4.9.0.0 && <4.10,
-        xmonad-vanessa >=0.1.0.2 && <0.2
+        xmonad-vanessa >=0.1.0.3 && <0.2
     default-language: Haskell2010
     hs-source-dirs: app
-    ghc-options: -threaded -rtsopts -with-rtsopts=-N
+    ghc-options: -threaded -rtsopts -with-rtsopts=-N -fllvm -O3 -optlo-O3
 
