[Pkg-haskell-commits] darcs: yi: Initial Check-In

Masayuki Hatta mhatta at debian.org
Sun Feb 24 13:56:22 UTC 2013


Sun Feb 24 13:55:16 UTC 2013  Masayuki Hatta <mhatta at debian.org>
  * Initial Check-In
  Ignore-this: ade1a256ad230c12427be1626c086c7d

    A ./changelog
    A ./compat
    A ./control
    A ./copyright
    A ./patches/
    A ./patches/man-page.diff
    A ./patches/series
    A ./patches/use-pointedlist-0.4.diff
    A ./patches/workaround-unicode.diff
    A ./patches/xpm-icons.diff
    A ./rules
    A ./source/
    A ./source/format
    A ./watch
    A ./yi-emacs.desktop
    A ./yi-vim.desktop
    A ./yi.dirs
    A ./yi.manpages
    A ./yi.menu

Sun Feb 24 13:55:16 UTC 2013  Masayuki Hatta <mhatta at debian.org>
  * Initial Check-In
  Ignore-this: ade1a256ad230c12427be1626c086c7d
diff -rN -u old-yi//changelog new-yi//changelog
--- old-yi//changelog	1970-01-01 00:00:00.000000000 +0000
+++ new-yi//changelog	2013-02-24 13:56:22.079719316 +0000
@@ -0,0 +1,6 @@
+yi (0.6.6.0-1) UNRELEASED; urgency=low
+
+  * Initial release. (closes: #701527)
+  * Debianization generated by cabal-debian
+
+ -- Masayuki Hatta (mhatta) <mhatta at debian.org>  Sun, 24 Feb 2013 01:30:08 +0900
diff -rN -u old-yi//compat new-yi//compat
--- old-yi//compat	1970-01-01 00:00:00.000000000 +0000
+++ new-yi//compat	2013-02-24 13:56:22.079719316 +0000
@@ -0,0 +1 @@
+7
\ No newline at end of file
diff -rN -u old-yi//control new-yi//control
--- old-yi//control	1970-01-01 00:00:00.000000000 +0000
+++ new-yi//control	2013-02-24 13:56:22.083719450 +0000
@@ -0,0 +1,200 @@
+Source: yi
+Priority: extra
+Section: haskell
+Maintainer: Debian Haskell Group <pkg-haskell-maintainers at lists.alioth.debian.org>
+Uploaders: Masayuki Hatta (mhatta) <mhatta at debian.org>
+Build-Depends: debhelper (>= 7.0)
+               , haskell-devscripts (>= 0.8)
+               , cdbs
+               , ghc
+               , ghc-prof
+               , libghc-diff-dev (>= 0.1)
+               , libghc-diff-dev (<< 0.2)
+               , libghc-diff-prof (>= 0.1)
+               , libghc-diff-prof (<< 0.2)
+               , libghc-quickcheck2-dev (>= 2.1.0.2)
+               , libghc-quickcheck2-prof (>= 2.1.0.2)
+               , libghc-cautious-file-dev (>= 1.0.1)
+               , libghc-cautious-file-prof (>= 1.0.1)
+               , libghc-concrete-typerep-dev (>= 0.1)
+               , libghc-concrete-typerep-dev (<< 0.2)
+               , libghc-concrete-typerep-prof (>= 0.1)
+               , libghc-concrete-typerep-prof (<< 0.2)
+               , libghc-data-accessor-dev (>= 0.2.1.4)
+               , libghc-data-accessor-dev (<< 0.3)
+               , libghc-data-accessor-prof (>= 0.2.1.4)
+               , libghc-data-accessor-prof (<< 0.3)
+               , libghc-data-accessor-mtl-dev (>= 0.2)
+               , libghc-data-accessor-mtl-dev (<< 0.3)
+               , libghc-data-accessor-mtl-prof (>= 0.2)
+               , libghc-data-accessor-mtl-prof (<< 0.3)
+               , libghc-data-accessor-template-dev (>= 0.2.1.3)
+               , libghc-data-accessor-template-dev (<< 0.2.2)
+               , libghc-data-accessor-template-prof (>= 0.2.1.3)
+               , libghc-data-accessor-template-prof (<< 0.2.2)
+               , libghc-derive-dev (>= 2.4)
+               , libghc-derive-dev (<< 2.7)
+               , libghc-derive-prof (>= 2.4)
+               , libghc-derive-prof (<< 2.7)
+               , libghc-dlist-dev (>= 0.4.1)
+               , libghc-dlist-prof (>= 0.4.1)
+               , libghc-dyre-dev (>= 0.7)
+               , libghc-dyre-prof (>= 0.7)
+               , libghc-fingertree-dev (<< 0.1)
+               , libghc-fingertree-prof (<< 0.1)
+               , libghc-ghc-paths-dev (>= 0.1)
+               , libghc-ghc-paths-dev (<< 0.2)
+               , libghc-ghc-paths-prof (>= 0.1)
+               , libghc-ghc-paths-prof (<< 0.2)
+               , libghc-hashable-dev (<< 1.2)
+               , libghc-hashable-prof (<< 1.2)
+               , libghc-hint-dev (>> 0.3.1)
+               , libghc-hint-prof (>> 0.3.1)
+               , libghc-mtl-dev (>= 0.1.0.1)
+               , libghc-mtl-prof (>= 0.1.0.1)
+               , libghc-pointedlist-dev (>= 0.4)
+               , libghc-pointedlist-dev (<< 0.5)
+               , libghc-pointedlist-prof (>= 0.4)
+               , libghc-pointedlist-prof (<< 0.5)
+               , libghc-puremd5-dev (>= 0.2.3)
+               , libghc-puremd5-prof (>= 0.2.3)
+               , libghc-random-dev
+               , libghc-random-prof
+               , libghc-regex-base-dev (>= 0.93)
+               , libghc-regex-base-dev (<< 0.94)
+               , libghc-regex-base-prof (>= 0.93)
+               , libghc-regex-base-prof (<< 0.94)
+               , libghc-regex-tdfa-dev (>= 1.1)
+               , libghc-regex-tdfa-dev (<< 1.2)
+               , libghc-regex-tdfa-prof (>= 1.1)
+               , libghc-regex-tdfa-prof (<< 1.2)
+               , libghc-rosezipper-dev (>= 0.1)
+               , libghc-rosezipper-dev (<< 0.3)
+               , libghc-rosezipper-prof (>= 0.1)
+               , libghc-rosezipper-prof (<< 0.3)
+               , libghc-split-dev (>= 0.1)
+               , libghc-split-dev (<< 0.2)
+               , libghc-split-prof (>= 0.1)
+               , libghc-split-prof (<< 0.2)
+               , libghc-uniplate-dev
+               , libghc-uniplate-prof
+               , libghc-unix-compat-dev (>= 0.1)
+               , libghc-unix-compat-dev (<< 0.4)
+               , libghc-unix-compat-prof (>= 0.1)
+               , libghc-unix-compat-prof (<< 0.4)
+               , libghc-unordered-containers-dev (>= 0.1.3)
+               , libghc-unordered-containers-dev (<< 0.3)
+               , libghc-unordered-containers-prof (>= 0.1.3)
+               , libghc-unordered-containers-prof (<< 0.3)
+               , libghc-utf8-string-dev (>= 0.3.1)
+               , libghc-utf8-string-prof (>= 0.3.1)
+               , libghc-vty-dev (>= 4.7.0.0)
+               , libghc-vty-dev (<< 5)
+               , libghc-vty-prof (>= 4.7.0.0)
+               , libghc-vty-prof (<< 5)
+               , alex
+               , libghc-gtk-dev
+               , libghc-gtk-prof
+               , libghc-vte-dev
+               , libghc-vte-prof
+Build-Depends-Indep: ghc-doc
+                     , libghc-diff-doc (>= 0.1)
+                     , libghc-diff-doc (<< 0.2)
+                     , libghc-quickcheck2-doc (>= 2.1.0.2)
+                     , libghc-cautious-file-doc (>= 1.0.1)
+                     , libghc-concrete-typerep-doc (>= 0.1)
+                     , libghc-concrete-typerep-doc (<< 0.2)
+                     , libghc-data-accessor-doc (>= 0.2.1.4)
+                     , libghc-data-accessor-doc (<< 0.3)
+                     , libghc-data-accessor-mtl-doc (>= 0.2)
+                     , libghc-data-accessor-mtl-doc (<< 0.3)
+                     , libghc-data-accessor-template-doc (>= 0.2.1.3)
+                     , libghc-data-accessor-template-doc (<< 0.2.2)
+                     , libghc-derive-doc (>= 2.4)
+                     , libghc-derive-doc (<< 2.7)
+                     , libghc-dlist-doc (>= 0.4.1)
+                     , libghc-dyre-doc (>= 0.7)
+                     , libghc-fingertree-doc (<< 0.1)
+                     , libghc-ghc-paths-doc (>= 0.1)
+                     , libghc-ghc-paths-doc (<< 0.2)
+                     , libghc-hashable-doc (<< 1.2)
+                     , libghc-hint-doc (>> 0.3.1)
+                     , libghc-mtl-doc (>= 0.1.0.1)
+                     , libghc-pointedlist-doc (>= 0.4)
+                     , libghc-pointedlist-doc (<< 0.5)
+                     , libghc-puremd5-doc (>= 0.2.3)
+                     , libghc-random-doc
+                     , libghc-regex-base-doc (>= 0.93)
+                     , libghc-regex-base-doc (<< 0.94)
+                     , libghc-regex-tdfa-doc (>= 1.1)
+                     , libghc-regex-tdfa-doc (<< 1.2)
+                     , libghc-rosezipper-doc (>= 0.1)
+                     , libghc-rosezipper-doc (<< 0.3)
+                     , libghc-split-doc (>= 0.1)
+                     , libghc-split-doc (<< 0.2)
+                     , libghc-uniplate-doc
+                     , libghc-unix-compat-doc (>= 0.1)
+                     , libghc-unix-compat-doc (<< 0.4)
+                     , libghc-unordered-containers-doc (>= 0.1.3)
+                     , libghc-unordered-containers-doc (<< 0.3)
+                     , libghc-utf8-string-doc (>= 0.3.1)
+                     , libghc-vty-doc (>= 4.7.0.0)
+                     , libghc-vty-doc (<< 5)
+                     , libghc-gtk-doc
+                     , libghc-vte-doc
+Standards-Version: 3.9.3
+Homepage: http://haskell.org/haskellwiki/Yi
+Vcs-Darcs: http://darcs.debian.org/darcs/pkg-haskell/yi
+Vcs-Browser: http://darcs.debian.org/cgi-bin/darcsweb.cgi?r=pkg-haskell/yi
+
+Package: libghc-yi-dev
+Architecture: any
+Depends: ${shlibs:Depends}
+         , ${haskell:Depends}
+         , ${misc:Depends}
+Recommends: ${haskell:Recommends}
+Suggests: ${haskell:Suggests}
+Provides: ${haskell:Provides}
+Description: Haskell-Scriptable Editor
+ Yi is a text editor written in Haskell and extensible in Haskell.  The goal 
+ of the Yi project is to provide a flexible, powerful, and correct editor 
+ for haskell hacking.
+ .
+ This package contains the normal library files.
+
+Package: libghc-yi-prof
+Architecture: any
+Depends: ${haskell:Depends}
+         , ${misc:Depends}
+Recommends: ${haskell:Recommends}
+Suggests: ${haskell:Suggests}
+Provides: ${haskell:Provides}
+Description: Haskell-Scriptable Editor
+ Yi is a text editor written in Haskell and extensible in Haskell.  The goal 
+ of the Yi project is to provide a flexible, powerful, and correct editor 
+ for haskell hacking.
+ .
+ This package contains the libraries compiled with profiling enabled.
+
+Package: libghc-yi-doc
+Architecture: all
+Section: doc
+Depends: ${haskell:Depends}
+         , ${misc:Depends}
+Recommends: ${haskell:Recommends}
+Suggests: ${haskell:Suggests}
+Description: Haskell-Scriptable Editor
+ Yi is a text editor written in Haskell and extensible in Haskell.  The goal 
+ of the Yi project is to provide a flexible, powerful, and correct editor 
+ for haskell hacking.
+ .
+ This package contains the documentation files.
+
+Package: yi
+Architecture: any
+Section: misc
+Depends: ${shlibs:Depends}, ${haskell:Depends}, ${misc:Depends}
+Description: Haskell-Scriptable Editor
+ Yi is a text editor written in Haskell and extensible in Haskell.  The goal 
+ of the Yi project is to provide a flexible, powerful, and correct editor 
+ for haskell hacking.
diff -rN -u old-yi//copyright new-yi//copyright
--- old-yi//copyright	1970-01-01 00:00:00.000000000 +0000
+++ new-yi//copyright	2013-02-24 13:56:22.083719450 +0000
@@ -0,0 +1,28 @@
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: yi
+Upstream-Contact: Yi development team <yi-devel at googlegroups.com>
+Source: http://hackage.haskell.org/package/yi
+
+Files: *
+Copyright: Copyright 2013 Yi development team <yi-devel at googlegroups.com>
+License: GPL-2
+ This program is free software; you can redistribute it
+ and/or modify it under the terms of the GNU General Public
+ License as published by the Free Software Foundation; 
+ version 2 of the License.
+ .
+ This program is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE.  See the GNU General Public License for more
+ details.
+ .
+ You should have received a copy of the GNU General Public
+ License along with this package; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA  02110-1301 USA
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 2 can be found in the file
+ `/usr/share/common-licenses/GPL-2'.
+
diff -rN -u old-yi//patches/man-page.diff new-yi//patches/man-page.diff
--- old-yi//patches/man-page.diff	1970-01-01 00:00:00.000000000 +0000
+++ new-yi//patches/man-page.diff	2013-02-24 13:56:22.083719450 +0000
@@ -0,0 +1,69 @@
+--- /dev/null
++++ b/yi.1
+@@ -0,0 +1,65 @@
++.TH YI 1 2008-10-22 "yi version 0.1" "User Manual"
++
++.SH NAME
++yi \- text editor extensible in Haskell
++
++.SH SYNOPSIS
++.B yi 
++[\fIOPTION\fR] [\fIFILENAME\fR]
++
++.SH DESCRIPTION
++.ds c \fIYi\fP
++\*c is a text editor written and extensible in Haskell. Consult the html
++documentation for a full description of its behaviour.
++.PP
++.TP
++.B \-\-selfcheck
++Run self-checks
++.TP
++.B \-f frontend \-\-frontend=frontend
++Select frontend (one of vty, gtk, pango, cocoa).
++.TP
++.B \-y config \-\-config\-file=config
++Specify a configuration file.
++.TP
++.B \-V \-\-version
++Show version information
++.TP
++.B \-h \-\-help
++Show help message.
++.TP
++.B \-\-debug
++Write debug information in a log file.
++.TP
++.B \-l num \-\-line=num
++Start on given line number
++.TP
++.B \-\-as=editor
++Start with key bindings of given editor.
++.TP
++.B \-\-recompile\-force
++Force recompile of custom Yi before starting.
++.TP
++.B \-\-resume
++Resume execution of Yi from previous state.
++.TP
++.B \-\-recompile
++Recompile custom Yi if required then exit.
++
++.SH BUGS
++Bug reports should be posted to the Google issue tracker
++<http://code.google.com/p/yi-editor/issues/>. Other suggestions or ideas may
++be posted to the yi-devel <yi-devel at googlegroups.com> mailing list.
++.SH COPYRIGHT
++Copyright \(co 2004-2005 Don Stewart,
++except for components derived from Riot <http://iki.fi/tuomov/riot/>,
++Copyright \(co Tuomo Valkonen.
++.PP
++Yi is released under the terms of the GPL.
++.SH "SEE ALSO"
++.BR vi (1)
++
++.SH AUTHOR
++
++Yi is developed by a team of many developers, currently lead by Jean-Philippe
++Bernardy.
+\ No newline at end of file
diff -rN -u old-yi//patches/series new-yi//patches/series
--- old-yi//patches/series	1970-01-01 00:00:00.000000000 +0000
+++ new-yi//patches/series	2013-02-24 13:56:22.083719450 +0000
@@ -0,0 +1,4 @@
+xpm-icons.diff
+workaround-unicode.diff
+man-page.diff
+use-pointedlist-0.4.diff
diff -rN -u old-yi//patches/use-pointedlist-0.4.diff new-yi//patches/use-pointedlist-0.4.diff
--- old-yi//patches/use-pointedlist-0.4.diff	1970-01-01 00:00:00.000000000 +0000
+++ new-yi//patches/use-pointedlist-0.4.diff	2013-02-24 13:56:22.083719450 +0000
@@ -0,0 +1,207 @@
+--- a/src/library/Yi/Editor.hs
++++ b/src/library/Yi/Editor.hs
+@@ -32,7 +32,7 @@
+ import Yi.Window
+ import qualified Data.Rope as R
+ import qualified Data.DelayList as DelayList
+-import qualified Data.List.PointedList as PL (atEnd)
++import qualified Data.List.PointedList as PL (atEnd, moveTo)
+ import qualified Data.List.PointedList.Circular as PL
+ import qualified Data.Map as M
+ import {-# source #-} Yi.Keymap (extractTopKeymap)
+@@ -142,7 +142,7 @@
+ tabsA = tabs_A . fixCurrentBufferA_
+ 
+ currentTabA :: Accessor Editor Tab
+-currentTabA = PL.focusA . tabsA
++currentTabA = focusA . tabsA
+ 
+ dynA :: YiVariable a => Accessor Editor a
+ dynA = dynamicValueA . dynamicA
+@@ -314,7 +314,7 @@
+   withGivenBufferAndWindow0 w (bufkey w) f
+ 
+ currentWindowA :: Accessor Editor Window
+-currentWindowA = PL.focusA . windowsA
++currentWindowA = focusA . windowsA
+ 
+ -- | Return the current buffer
+ currentBuffer :: Editor -> BufferRef
+@@ -460,7 +460,7 @@
+ -- | Attach the specified buffer to the current window
+ switchToBufferE :: BufferRef -> EditorM ()
+ switchToBufferE bk = do
+-    modA (PL.focusA . windowsA) (\w -> 
++    modA (focusA . windowsA) (\w ->
+            w { bufkey = bk, 
+                bufAccessList = forceFold1 $ ((bufkey w):) . filter (bk/=) $ bufAccessList w })
+ 
+@@ -506,7 +506,7 @@
+ 
+ -- | Swaps the focused window with the first window. Useful for layouts such as 'HPairOneStack', for which the first window is the largest.
+ swapWinWithFirstE :: EditorM ()
+-swapWinWithFirstE = modA windowsA (swapFocus (fromJust . PL.move 0))
++swapWinWithFirstE = modA windowsA (swapFocus (fromJust . PL.moveTo 0))
+ 
+ -- | Moves the focused window to the first window, and moves all other windows down the stack.
+ pushWinToFirstE :: EditorM ()
+@@ -514,7 +514,7 @@
+   where
+       pushToFirst ws = case PL.delete ws of
+           Nothing -> ws
+-          Just ws' -> PL.insertLeft (ws ^. PL.focusA) (fromJust $ PL.move 0 ws')
++          Just ws' -> PL.insertLeft (ws ^. focusA) (fromJust $ PL.moveTo 0 ws')
+ 
+ -- | Swap focused window with the next one
+ moveWinNextE :: EditorM ()
+@@ -530,7 +530,7 @@
+ fixCurrentBufferA_ :: Accessor Editor Editor
+ fixCurrentBufferA_ = fromSetGet (\new _old -> let 
+     ws = windows new
+-    b = findBufferWith (bufkey $ PL.focus ws) new
++    b = findBufferWith (bufkey $ PL._focus ws) new
+     newBufferStack = nub (bkey b : bufferStack new)
+     -- make sure we do not hold to old versions by seqing the length.
+     in length newBufferStack `seq` new { bufferStack = newBufferStack  } ) id
+@@ -541,7 +541,7 @@
+ fixCurrentWindow :: EditorM ()
+ fixCurrentWindow = do
+     b <- gets currentBuffer
+-    modA (PL.focusA . windowsA) (\w -> w {bufkey = b})
++    modA (focusA . windowsA) (\w -> w {bufkey = b})
+ 
+ withWindowE :: Window -> BufferM a -> EditorM a
+ withWindowE w = withGivenBufferAndWindow0 w (bufkey w)
+@@ -577,8 +577,8 @@
+     case foldl searchWindowSet  (False, 0, 0) ts of
+         (False, _, _) -> fail $ "No window with key " ++ show wkey ++ "found. (focusWindowE)"
+         (True, tabIndex, winIndex) -> do
+-            putA tabsA (fromJust $ PL.move tabIndex ts) 
+-            modA windowsA (\ws -> fromJust $ PL.move winIndex ws) 
++            putA tabsA (fromJust $ PL.moveTo tabIndex ts)
++            modA windowsA (\ws -> fromJust $ PL.moveTo winIndex ws)
+ 
+ -- | Split the current window, opening a second window onto current buffer.
+ -- TODO: unfold newWindowE here?
+@@ -604,7 +604,7 @@
+      go lms lm =
+        case findPL (layoutManagerSameType lm) lms of
+          Nothing -> head lms
+-         Just lmsPL -> f lmsPL ^. PL.focusA
++         Just lmsPL -> f lmsPL ^. focusA
+ 
+ -- | Next variant of the current layout manager, as given by 'nextVariant'
+ layoutManagerNextVariantE :: EditorM ()
+@@ -645,8 +645,8 @@
+ -- | Moves the focused tab to the given index, or to the end if the index is not specified.
+ moveTab :: Maybe Int -> EditorM ()
+ moveTab Nothing  = do count <- getsA tabsA PL.length
+-                      modA tabsA $ fromJust . PL.move (pred count)
+-moveTab (Just n) = do newTabs <- getsA tabsA (PL.move n)
++                      modA tabsA $ fromJust . PL.moveTo (pred count)
++moveTab (Just n) = do newTabs <- getsA tabsA (PL.moveTo n)
+                       when (isNothing newTabs) failure
+                       putA tabsA $ fromJust newTabs
+   where failure = fail $ "moveTab " ++ show n ++ ": no such tab"
+--- a/src/library/Yi/Prelude.hs
++++ b/src/library/Yi/Prelude.hs
+@@ -37,6 +37,7 @@
+ dummyGet,
+ every,
+ findPL,
++focusA,
+ fromIntegral,
+ fst,
+ fst3,
+@@ -232,9 +233,14 @@
+   go ls (f:rs) | p f    = Just (PL.PointedList ls f rs)
+                | otherwise = go (f:ls) rs
+ 
++focusA :: Accessor (PL.PointedList a) a
++focusA = accessor getter setter where
++  getter   (PL.PointedList _ x _) = x
++  setter y (PL.PointedList x _ z) = PL.PointedList x y z
++
+ -- | Given a function which moves the focus from index A to index B, return a function which swaps the elements at indexes A and B and then moves the focus. See Yi.Editor.swapWinWithFirstE for an example.
+ swapFocus :: (PL.PointedList a -> PL.PointedList a) -> (PL.PointedList a -> PL.PointedList a)
+-swapFocus moveFocus xs = PL.focusA ^= (xs ^. PL.focusA) $ moveFocus $ PL.focusA ^= (moveFocus xs ^. PL.focusA) $ xs
++swapFocus moveFocus xs = focusA ^= (xs ^. focusA) $ moveFocus $ focusA ^= (moveFocus xs ^. focusA) $ xs
+ ----------------------
+ -- Acessor stuff
+ 
+--- a/src/library/Yi/Tab.hs
++++ b/src/library/Yi/Tab.hs
+@@ -40,7 +40,7 @@
+  deriving Typeable
+ 
+ tabFocus :: Tab -> Window
+-tabFocus = PL.focus . tabWindows
++tabFocus = PL._focus . tabWindows
+ 
+ -- | Returns a list of all mini windows associated with the given tab
+ tabMiniWindows :: Tab -> [Window]
+--- a/src/library/Yi/UI/Pango.hs
++++ b/src/library/Yi/UI/Pango.hs
+@@ -13,6 +13,7 @@
+ import Data.Prototype
+ import Data.IORef
+ import Data.List (drop, intercalate, zip)
++import qualified Data.List.PointedList as PL (moveTo)
+ import qualified Data.List.PointedList.Circular as PL
+ import Data.Maybe
+ import qualified Data.Map as[...incomplete...]



More information about the Pkg-haskell-commits mailing list