由于我的google-fu让我失望,任何人都可以给我一个关于如何使用--remote-expr或任何其他命令行技巧将文本插入当前缓冲区或设置cfile 的简单示例.(任何: - 命令会很好.)
我设法得到的--remote-expr只是E449: Invalid expression received任何事情.
我正在为ac库做一个简单的包装器,它需要有一个传递给它的向量列表.它需要一组指向数组的指针.为了建立一个漂亮的界面,我想要Vector的Vector(或列表),但我无法真正找到如何在idiomatic haskell中做到这一点.(或任何其他方式比memcopying周围的东西).
我正在寻找的是类似的东西
Vector (Vector Foo) -> (Ptr (Ptr Foo) -> IO a) -> IO a
Run Code Online (Sandbox Code Playgroud) 由于我的邪恶和大多数不可理解的原因,我决定想要一个类型级别函数来指示类型的类型类实例的存在.它会像这样工作:
> :kind! HasClass Show Int
> 'True
> :kind! HasClass Monoid Int
> 'False
Run Code Online (Sandbox Code Playgroud)
鉴于最近在GHC中添加了约束类型等,我觉得这可能是可能的,但是没有考虑到整洁的实现.可以吗?
我正在尝试使用Gtk2Hs构建中型GUI,但我并不确定构建系统的最佳方法是什么.我正在寻找一种独立开发子组件的方法,一般来说最终会得到一种结构,这种结构不会让我以后拉出我的头发.
主要的困难是由API等基于组件的组件引起的(即我需要使用相机包裹块withVideoMode :: Camera Undefined -> (Camera a -> IO ()) -> IO ()).我也希望将它们分开,但我没有找到合理的方法来做到这一点.
我需要添加的大多数组件都需要初始化,例如设置摄像机参数或构建小部件,捕获由其他组件触发的事件以及最后清除硬件等清理.
到目前为止,我已经考虑过使用ContTcps部件和像snaplet这样的组件,并将它们隐藏在某个State地方.首先看起来非常重量级,第二个看起来很讨厌,因为我无法在gtk2hs回调中优雅地使用变换器.
(由于某些原因,gists今天不适合我,所以为在这里张贴整个巨大的代码而道歉)
{-#LANGUAGE ScopedTypeVariables#-}
{-#LANGUAGE DataKinds #-}
import CV.CVSU
import CV.CVSU.Rectangle
import CV.Image as CV
import CV.Transforms
import CV.ImageOp
import CV.Drawing as CV
import CVSU.PixelImage
import CVSU.TemporalForest
import Control.Applicative
import Control.Applicative
import Control.Concurrent
import Control.Monad
import Data.Array.MArray
import Data.IORef
import Data.Maybe
import Data.Word
import Utils.Rectangle
import Foreign.Ptr
import Graphics.UI.Gtk …Run Code Online (Sandbox Code Playgroud) 我在我的一个旧项目中得到以下代码:
-- |ImageOperation is a name for unary operators that mutate images inplace.
newtype ImageOperation c d = ImgOp (Image c d-> IO ())
-- |Compose two image operations
(#>) :: ImageOperation c d-> ImageOperation c d -> ImageOperation c d
(#>) (ImgOp a) (ImgOp b) = ImgOp (\img -> (a img >> b img))
-- |An unit operation for compose
nonOp = ImgOp (\i -> return ())
-- |Apply image operation to a Copy of an image
img <# …Run Code Online (Sandbox Code Playgroud)