2013-02-14 7 views
8

(numaralarını değiştirdi), ancak bir matris tipi klavyeyi (Truly Ergonomic) kullanıyorum ben de sayıları değiştirdi.Switching çalışma alanları Ben de gerçekten ama <a href="http://neo-layout.org" rel="noreferrer">Neo2</a> Dvorak kullanmıyorum

Dolayısıyla benim xmonad.hs bu yapı ergonomik çalışmaz:

-- mod-[1..9], Switch to workspace N 
-- mod-shift-[1..9], Move client to workspace N 
-- 
[((m .|. modMask, k), windows $ f i) 
    | (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9] 
    , (f, m) <- [(W.greedyView, 0), (W.shift, shiftMask)] 

Ben 2 0.

anahtarlarıyla 9'a çalışma alanları erişimi mümkün, 1 bunu değiştirmek istiyorum

Bunu nasıl sağlayabilirim? Üçüncü satırı

'u değiştirmeye çalıştım ancak 9. çalışma alanına erişemedim. Bunu nasıl değiştirmeliyim? Kısa bir açıklama güzel olurdu, bu yüzden bu inşaat hakkında bir şeyler öğrenmek (Haskell'i yıllar önce öğrendim ve çoğunu unuttum).

+0

Lütfen yapılandırmanızı paylaşın. Herhangi bir yerde kullanılabilir bir damla bulamıyorum. Thanks :) – matiu

cevap

8

Senin sorunun xK_2xK_0 daha büyük olduğunu, bu nedenle liste [xK_2 .. xK_0] boş:

Prelude XMonad> xK_2 
50 
Prelude XMonad> xK_0 
48 
Prelude XMonad> [xK_2 .. xK_0] 
[] 

Bundan daha biraz daha uzun listesini kullanmak isteyeceksiniz. Bunu yapmak için en az iki makul yol var;

Prelude XMonad> [xK_2, xK_3, xK_4, xK_5, xK_6, xK_7, xK_8, xK_9, xK_0] 
[50,51,52,53,54,55,56,57,48] 

Ne kullanırdınız biraz daha kısa: biri sadece tuşların elle kendiniz tüm belirtmektir

Prelude XMonad> [xK_2 .. xK_9] ++ [xK_0] 
[50,51,52,53,54,55,56,57,48] 

Daha büyük ifadenin bir parçası ise bazı parantez eklemeyi unutmayın.

+1

Quibble: '[a..b]' bir [ardışık tip] bir aritmetik dizisidir * (http://hackage.haskell.org/packages/archive/base/3.0.3.1/doc/html /GHC-Enum.html#t%3AEnum), liste kavraması değil. –

+0

@Mechanicalsnail Sabit, teşekkürler. –

+0

Teşekkür ederim. Düşündüğüm gibi. – erik

İlgili konular