packages feed

rasa-ext-files 0.1.0.0 → 0.1.1

raw patch · 2 files changed

+47/−43 lines, 2 filesdep +rasa-ext-bufsdep +yi-ropedep ~basedep ~data-defaultdep ~lensPVP ok

version bump matches the API change (PVP)

Dependencies added: rasa-ext-bufs, yi-rope

Dependency ranges changed: base, data-default, lens, rasa, rasa-ext-cmd, rasa-ext-status-bar, text

API changes (from Hackage documentation)

Files

rasa-ext-files.cabal view
@@ -1,36 +1,36 @@-name:                rasa-ext-files-version:             0.1.0.0-synopsis:            Rasa Ext for filesystem actions-description:         Rasa Ext for filesystem actions-homepage:            https://github.com/ChrisPenner/rasa/-license:             MIT-license-file:        LICENSE-author:              Chris Penner-maintainer:          christopher.penner@gmail.com-copyright:           2016 Chris Penner-category:            Extension-build-type:          Simple--- extra-source-files:-cabal-version:       >=1.10--library-  hs-source-dirs:      src-  exposed-modules:-                       Rasa.Ext.Files--  build-depends:       base >= 4.7 && < 5-                     , rasa-                     , rasa-ext-status-bar-                     , rasa-ext-cmd-                     , data-default-                     , lens-                     , text-  default-language:    Haskell2010+name: rasa-ext-files+version: 0.1.1+cabal-version: >=1.10+build-type: Simple+license: MIT+license-file: LICENSE+copyright: 2016 Chris Penner+maintainer: christopher.penner@gmail.com+homepage: https://github.com/ChrisPenner/rasa/+synopsis: Rasa Ext for filesystem actions+description:+    Rasa Ext for filesystem actions+category: Extension+author: Chris Penner -  default-extensions:+source-repository head+    type: git+    location: https://github.com/ChrisPenner/rasa -  ghc-options:         -Wall+library+    exposed-modules:+        Rasa.Ext.Files+    build-depends:+        base >=4.8 && <5,+        rasa >=0.1.4 && <0.2,+        rasa-ext-bufs >=0.1.1 && <0.2,+        rasa-ext-status-bar >=0.1.1 && <0.2,+        rasa-ext-cmd >=0.1.1 && <0.2,+        data-default >=0.7.1.1 && <0.8,+        lens ==4.14.*,+        text >=1.2.2.1 && <1.3,+        yi-rope >=0.7.0.2 && <0.8+    default-language: Haskell2010+    hs-source-dirs: src+    ghc-options: -Wall -source-repository head-  type:     git-  location: https://github.com/ChrisPenner/rasa
src/Rasa/Ext/Files.hs view
@@ -14,15 +14,17 @@ import Data.Default  import Data.Monoid +import Control.Monad import Control.Monad.IO.Class-import qualified Data.Text as T+import qualified Yi.Rope as Y  import Rasa.Ext+import Rasa.Ext.Bufs import Rasa.Ext.Cmd import Rasa.Ext.StatusBar  data FileInfo = FileInfo-  { _filename :: Maybe T.Text+  { _filename :: Maybe Y.YiString   } deriving (Typeable, Show, Eq)  makeLenses ''FileInfo@@ -36,17 +38,17 @@ files = do   onInit $ do     loadFiles-    addCmd "save" $ focusDo . saveAs+    addCmd "save" $ void . focusDo . saveAs . Y.fromString   beforeRender showFilename  showFilename :: Action ()-showFilename = focusDo $ do+showFilename = void . focusDo $ do   mName <- use $ bufExt.filename   traverse_ (leftStatus . disp) mName       where disp name = "<" <> name <> ">" -saveAs :: T.Text -> BufAction ()-saveAs fName = use text >>= liftIO . TIO.writeFile (T.unpack fName)+saveAs :: Y.YiString -> BufAction ()+saveAs fName = use text >>= liftIO . TIO.writeFile (Y.toString fName) . Y.toText  save :: BufAction () save = do@@ -55,14 +57,16 @@     Just fName -> saveAs fName     Nothing -> return () -setFilename :: T.Text -> BufAction ()+setFilename :: Y.YiString -> BufAction () setFilename fname = bufExt.filename ?= fname -addFile :: T.Text -> T.Text -> Action ()-addFile fname txt = addBufferThen txt (setFilename fname)+addFile :: Y.YiString -> Y.YiString -> Action ()+addFile fname txt = do+  newBuf <- newBuffer txt+  bufDo_ newBuf (setFilename fname)  loadFiles :: Action () loadFiles = do   fileNames <- liftIO getArgs   fileTexts <- liftIO $ traverse TIO.readFile fileNames-  mapM_ (uncurry addFile) $ zip (T.pack <$> fileNames) fileTexts+  mapM_ (uncurry addFile) $ zip (Y.fromString <$> fileNames) (Y.fromText <$> fileTexts)