XMonad 0.13

Haron_Prime
Почему в template прописано %stdinreader%, когда должно быть %StdinReader% ?
Это linux! Тут регистр имеет значение! Именно поэтому на скрине висит Updating...... - xmobar не понимает, что ему выводить, т.к. не знает, что такое %stdinreader%
Я тоже сначала так подумал, но потому увидел в примерах Cpu, Ram в commands, которые в template записаны как %cpu%, %ram% и работают. Значит StdinReader исключение
Seggoy
xmonad.hs:27:18: error:
    Variable not in scope: ewmh :: XConfig a0 -> XConfig l0

xmonad.hs:27:25: error:
    Variable not in scope:
      withUrgencyHookC
        :: t0
           -> t1
           -> XConfig
                (XMonad.Layout.LayoutModifier.ModifiedLayout
                   AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
           -> XConfig a0

xmonad.hs:27:42: error:
    Data constructor not in scope: NoUrgencyHook

xmonad.hs:27:56: error: Variable not in scope: urgencyConfig

xmonad.hs:28:39: error:
    * Variable not in scope: myAllManageHook :: ManageHook
    * Perhaps you meant `myManageHook` (line 21)

-- Modules
import XMonad  -- Главный модуль
import XMonad.Hooks.DynamicLog -- Хук для обновления информации в баре
import XMonad.Hooks.ManageDocks -- Автоматическое управление программами типа док (баром)
import XMonad.Util.Run(spawnPipe) -- Для запуска внешний приложений/скриптов
import XMonad.Util.EZConfig(additionalKeys) -- Улучшение конфигурации, использование доп.хоткеев
import System.IO -- ?
import System.Exit -- ?
import qualified XMonad.StackSet as W -- Управление клиентами (окнами)
import XMonad.Hooks.ManageHelpers -- Доп.функции ManageHooks
import XMonad.Hooks.ManageDocks
import XMonad.Hooks.ManageHelpers

-- Пользовательские настройки
myTerm = "urxvt"
myBorderColor = "#000000"
myBorderColorFocused = "#8E8E8E"
myModMask = mod1Mask

myManageHook = composeAll . concat $
    [ [manageDocks]
    ]

main = do -- главная функция
	xmproc <- spawnPipe "/usr/bin/xmobar ~/.xmobarrc" -- Подключение XMobar
	xmonad $ ewmh $ withUrgencyHookC NoUrgencyHook urgencyConfig defaults {	-- Установка основного конфига
			manageHook =  myAllManageHook
        		, layoutHook = avoidStruts  $  layoutHook defaultConfig
        		, logHook = dynamicLogWithPP xmobarPP
                        		{ ppOutput = hPutStrLn xmproc
                        		, ppTitle = xmobarColor "green" "" . shorten 50
                        		}
			} `additionalKeys`
			[ ((mod1Mask .|. shiftMask, xK_q), kill)
			, ((mod1Mask, xK_Right), windows W.focusDown)
			, ((mod1Mask, xK_Left), windows W.focusUp)
			, ((mod1Mask, xK_Down), windows W.focusDown)
			, ((mod1Mask, xK_Up), windows W.focusUp)
			, ((controlMask, xK_Print), spawn "scrot -u -q 85 "home/seggoy/Documents/screens/%m-%d-%Y-%H-%M-%S-focused.png")
			]

-- Пользовательский конфиг
defaults = defaultConfig {
	terminal = myTerm
	, borderWidth = 1
	, modMask = myModMask
	, normalBorderColor = myBorderColor
	, focusedBorderColor = myBorderColorFocused
	}
 
xmonad же пишет, в каких строках ошибка
xmonad.hs:27:18: error
и далее
27-я строка
            manageHook =  myAllManageHook
но при этом нигде в конфиге нет переменной myAllManageHook
эту переменную я устанавливал сам для себя, чтоб более читабельный вид был
Выше блока main = do есть её расшифровка

Далее
xmonad.hs:27:42: error:
    Data constructor not in scope: NoUrgencyHook
Попытка использовать модуль XMonad.Hooks.UrgencyHook при том, что сам модуль не импортирован!
import XMonad.Hooks.UrgencyHook hiding (Never)

Далее
import XMonad.Hooks.ManageDocks
import XMonad.Hooks.ManageHelpers
модули импортируются дважды - строки 10 и 4, строки 10 и 12
Внимательнее нужно быть

Сейчас поляжу, что там ещё , покурю только...
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
Seggoy
Я тоже сначала так подумал, но потому увидел в примерах Cpu, Ram в commands, которые в template записаны как %cpu%, %ram% и работают. Значит StdinReader исключение
Здесь описание всех встроенных фишек xmobar и их альясы, которые используются в строке template
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
All я уже убрал, добавил импорт, убрал повторяющиеся импорты. Ошибок нет, но ситуация вроде бы не изменилась. Xmobar все так же заползает за все окна.
            , ((controlMask, xK_Print), spawn "scrot -u -q 85 "home/seggoy/Documents/screens/%m-%d-%Y-%H-%M-%S-focused.png")
C кавычками беда....
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
-- Базовые модули
import XMonad  -- Главный модуль
import System.IO -- ?
import System.Exit -- ?
import qualified XMonad.StackSet as W -- Управление клиентами (окнами)
-- Хуки
import XMonad.Hooks.DynamicLog -- Хук для обновления информации в баре
import XMonad.Hooks.ManageDocks -- Автоматическое управление программами типа док (баром)
import XMonad.Hooks.ManageHelpers -- Доп.функции ManageHooks
import XMonad.Hooks.UrgencyHook hiding (Never)
-- Утили
import XMonad.Util.Run(spawnPipe) -- Для запуска внешний приложений/скриптов
import XMonad.Util.EZConfig(additionalKeys) -- Улучшение конфигурации, использование доп.хоткеев
-- Пользовательские настройки
myTerm = "urxvt"
myBorderColor = "#000000"
myBorderColorFocused = "#8E8E8E"
myModMask = mod1Mask

myKeys [email protected](XConfig {XMonad.modMask = modm}) = M.fromList $
    [
      ((mod1Mask .|. shiftMask, xK_q), kill)
    , ((mod1Mask, xK_Right), windows W.focusDown)
    , ((mod1Mask, xK_Left), windows W.focusUp)
    , ((mod1Mask, xK_Down), windows W.focusDown)
    , ((mod1Mask, xK_Up), windows W.focusUp)
    , ((controlMask, xK_Print), spawn "scrot -u -q 85 home/seggoy/Documents/screens/%m-%d-%Y-%H-%M-%S-focused.png")
    ]

myManageHook = composeAll . concat $
    [
-- Тут должны быть правила для размещения окон

      [isDialog                             --> doCenterFloat]

    , [isFullscreen                       --> doFullFloat]

    , [transience']

    , [manageDocks]
    ]

main = do -- главная функция
    xmproc <- spawnPipe "/usr/bin/xmobar ~/.xmobarrc" -- Подключение XMobar
    xmonad $ ewmh $ withUrgencyHookC NoUrgencyHook urgencyConfig def
        {
             terminal = myTerm
            , borderWidth = 1
            , modMask = myModMask
            , keys = myKeys
            , normalBorderColor = myBorderColor
            , focusedBorderColor = myBorderColorFocused
            , manageHook =  manageHook def <+> myManageHook
            , layoutHook = avoidStruts  $  layoutHook defaultConfig
            , logHook = dynamicLogWithPP xmobarPP
                                { ppOutput = hPutStrLn xmproc
                                , ppTitle = xmobarColor "green" "" . shorten 50
                                }
        }

Причесал немного - надо пробовать
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
Seggoy
Xmobar все так же заползает за все окна.
Там в конфиге была куча ошибок
Я подправил кое-что, что бросилось в глаза
manageHook там вообще абсолютно неправильно были прописаны
Может чего и пропустил...
Надо пробовать
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
Добавил еще модуль
import qualified Data.Map        as M
ругался на отутствие M, вроде как он. Теперь:
xmonad.hs:37:14: error:
    Variable not in scope:
      ewmh
        :: XConfig
             (XMonad.Layout.LayoutModifier.ModifiedLayout
                AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
           -> XConfig l0
тут я не понял, в чем соль. 37 строка это
xmonad $ ewmh $ withUrgencyHookC NoUrgencyHook urgencyConfig def
P.S> подправил ещё кое-что

-- Базовые модули
import XMonad hiding ( (|||) )  -- Главный модуль
import Data.List
import Data.Ratio ((%))
import Foreign.C (CChar)
import Graphics.X11.Xlib
import Graphics.X11.ExtraTypes.XF86
import System.Exit
import System.IO
import qualified Data.Map        as M
import qualified Data.ByteString as B
import qualified XMonad.StackSet as W -- Управление клиентами (окнами)
-- Хуки
import XMonad.Hooks.DynamicLog -- Хук для обновления информации в баре
import XMonad.Hooks.ManageDocks -- Автоматическое управление программами типа док (баром)
import XMonad.Hooks.ManageHelpers -- Доп.функции ManageHooks
import XMonad.Hooks.UrgencyHook hiding (Never)
-- Утили
import XMonad.Util.Run(spawnPipe) -- Для запуска внешний приложений/скриптов
import XMonad.Util.EZConfig(additionalKeys) -- Улучшение конфигурации, использование доп.хоткеев
-- Пользовательские настройки
myTerm = "urxvt"
myBorderColor = "#000000"
myBorderColorFocused = "#8E8E8E"
myModMask = mod1Mask

myKeys [email protected](XConfig {XMonad.modMask = modm}) = M.fromList $
    [
      ((mod1Mask .|. shiftMask, xK_q), kill)
    , ((mod1Mask, xK_Right), windows W.focusDown)
    , ((mod1Mask, xK_Left), windows W.focusUp)
    , ((mod1Mask, xK_Down), windows W.focusDown)
    , ((mod1Mask, xK_Up), windows W.focusUp)
    , ((controlMask, xK_Print), spawn "scrot -u -q 85 home/seggoy/Documents/screens/%m-%d-%Y-%H-%M-%S-focused.png")
    ]

myManageHook = composeAll . concat $
    [
-- Тут должны быть правила для размещения окон

    [isDialog                             --> doCenterFloat]

    , [isFullscreen                       --> doFullFloat]

    , [transience']

    , [manageDocks]
    ]

main = do -- главная функция
    xmproc <- spawnPipe "/usr/bin/xmobar ~/.xmobarrc" -- Подключение XMobar
    xmonad $ ewmh $ withUrgencyHookC NoUrgencyHook urgencyConfig def
        {
             terminal = myTerm
            , borderWidth = 1
            , modMask = myModMask
            , keys = myKeys
            , normalBorderColor = myBorderColor
            , focusedBorderColor = myBorderColorFocused
            , manageHook =  manageHook def <+> myManageHook
            , layoutHook = avoidStruts  $  layoutHook defaultConfig
            , logHook = dynamicLogWithPP xmobarPP
                                { ppOutput = hPutStrLn xmproc
                                , ppTitle = xmobarColor "green" "" . shorten 50
                                }
        }

Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
Seggoy
Добавил еще модуль
import qualified Data.Map        as M
ругался на отутствие M, вроде как он. Теперь:
xmonad.hs:37:14: error:
    Variable not in scope:
      ewmh
        :: XConfig
             (XMonad.Layout.LayoutModifier.ModifiedLayout
                AvoidStruts (Choose Tall (Choose (Mirror Tall) Full)))
           -> XConfig l0
тут я не понял, в чем соль. 37 строка это
xmonad $ ewmh $ withUrgencyHookC NoUrgencyHook urgencyConfig def

xmonad $ ewmh $ withUrgencyHookC NoUrgencyHook urgencyConfig def

import XMonad.Hooks.EwmhDesktops
Gnome 2 >> Unity >> KDE 4 >> Openbox >> Awesome >> Xmonad
GitHub , BitBuket
 
Зарегистрироваться или войдите чтобы оставить сообщение.