首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xmonad可以让我们经常使用的功能随时可用吗?

xmonad可以让我们经常使用的功能随时可用吗?
EN

Stack Overflow用户
提问于 2012-11-09 15:22:28
回答 1查看 262关注 0票数 1

我们有一些函数需要在任何时间和地点调用。例如:

代码语言:javascript
复制
(defun winG (qty pb ps)
    (- (* qty ps (- 1 SXF YHS)) (* 2 GHF) (* qty pb (+ 1 SXF))))

(defun winQ (qty pb ps)
    (- (* qty ps (- 1 SXF)) (* 2 GHF) (* qty pb (+ 1 SXF))))

(defun stopLoss (qty pb &optional (lossRate 0.02))
    (let ((tot (* qty pb (+ 1 SXF))))
        (format t "Stop Loss at:~$~%" (- pb (/ (* tot lossRate) qty)))
        (format t "Lost Money:~$(~d%)~%" (* tot lossRate) (* 100 lossRate))))

(defun div618 (p1 p2)
    (let ((ratio '(0. 0.191 0.236 0.382 0.5 0.618 0.809 1.))
        (price #'(lambda (r) (if (<= p1 p2) (+ p1 (* (- p2 p1) r)) (- p1 (* (- p1 p2) r))))))
        (if (<= p1 p2)
            (dolist (r (reverse ratio)) (format t "-------~3$   ~$-------~%" r (funcall price r)))
            (dolist (r ratio) (format t "-------~3$  ~$-------~%" r (funcall price r))))))

现在我们使用stumpwm,它可以在启动后加载我们的函数,我们只需在任何时间和地点按热键打开它的eval窗口就可以调用这些函数。这非常方便。然而,stumpwm并不像xmonad那样非常稳定。因此,我们希望使用xmonad而不是stumpwm,也不介意使用haskell实现这些Common Lisp函数。

欢迎提出任何建议!

EN

回答 1

Stack Overflow用户

发布于 2012-11-09 16:37:53

您应该能够通过下面这样的方式来实现这一点

代码语言:javascript
复制
myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
    [ ((modm,    xK_F1     ), spawn $ XMonad.terminal conf) --starts the terminal
    , ((mod4Mask,xK_F1     ), spawn "gvim" >> -- you can concatenate commands too
                              spawn "notify-send -t 1000 gVim" >> 
                              focusUrgent) -- or haskell functions
    , ((mod4Mask,xK_F2     ), spawn "lisp evaluate lispy function") 
    , ((modm,    xK_F3     ), haskellFunctionPortedFromLisp )]

希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13303815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档