Git Product home page Git Product logo

leksah's Introduction

Leksah, an Integrated Development Environment for Haskell
=========================================================

This is Leksah, a hopefully practical tool to support the Haskell development process.

Leksah uses GTK+ as GUI Toolkit with the gtk2hs binding. It is plattform independend
and should run on any plattform where GTK+, gtk2hs and ghc can be installed.
It is currently been tested on Linux, Mac OS X and Windows. It uses the Cabal package management
and build system for Package Management. It currently only supports the Glasgow Haskell Compiler (ghc).

Documentation can be found on leksah.org.

System Requirements
===================

Leksah currently requires:
    GHC version 6.10.x-6.12
    gtk2hs 0.10.x-
    other dependencies see cabal file

If you are a user or just test Leksah, we would appreciate to here from you.

Please send questions and suggestions to the developers
info(at)leksah(dot)org 






leksah's People

Contributors

haja avatar hamishmack avatar jutaro avatar lakshminaras2002 avatar philipperlacher avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

leksah's Issues

Git

Integrate Git in Leksah

Improved highlighting

Highlight functions/variables which have the same name as marked function/variable and are in the same scope.

SVN

integrate svn in leksah

bug: on (re)set-up of vcs-repo, associated package-menu is empty

first commit noticed: a92bad0

actions:
start leksah
Version Control -> random package -> Setup Repo -> switch to random repo -> Ok
result:
Version Control -> random package -> Menu is empty

probably due to "(leksah:5154): Gtk-WARNING **: Can't set a parent on widget which has a parent"

Log:

leksah
Using default Yi configuration
Now updating system metadata ...
***server start
Bind 127.0.0.1:26411
Metadata collector has nothing to do
Metadata collection has finished
Now loading metadata ...
Now updating workspace metadata ...
Finished

Info Changed!!! True
cast windowSetupRepo
cast actOk
cast actCancel
cast actBrowseRepo
cast actBrowseExec
cast entRepo
cast entExec
cast entAuthor
cast entEmail
cast comboBoxVCSType
cast checkbtExec
cast checkbtAuthor
cast lblExec
cast btnBrowseExec
cast lblAuthor
cast lblEmail
cast entPathToTool
cast actBrowsePathToTool
Path True Starting discovery.
Available vcs: [GIT]
checkbtnexec toogled
checkbtnauthor toogled
Path True Starting discovery.
Available vcs: [SVN]
tupleRight (SVN,Config {configCwd = Just "/home/forste/svnreps/project1_work1", configPath = Nothing, configAuthor = Nothing, configEnvironment = []},Just (MergeTool {fullPath = "/home/forste/bin/kdiff3caller"}))

(leksah:5154): Gtk-WARNING **: Can't set a parent on widget which has a parent

Workspace 'equals' repo doesn't hold

For me the assuption that a workspace has exactly one repo doesn't hold.
That is the case for leksah and for other projects I do with leksah.
We could either make a workspace composable of other workspaces or find another way to change the concept?

panes "Workspace" and "Log" overwrite each other

leksah version: commit 7dcbb04

It is possible to get the "workspace" pane over the "log" pane. Only closing all panes on the right side and reopening the "browser" pane, then the "log" pane resolves this problem.

steps to reproduce:
< don't know, not reproduceable yet >

bug: crash on workspace close, reopen, and clicking on VCS menu

Leksah crashes after closing and reopening a workspace, then clicking on VCS menu. Seems like this is due to some bug in gtk/gtk2hs.

Actions:
open leksah and workspace
close workspace
open workspace
click on VCS menu

Log:

Using default Yi configuration
vcsMenu obtained
packageItem obtained
vcsMenu obtained
packageItem obtained
vcsMenu obtained
packageItem obtained
Now updating system metadata ...
***server start
Bind 127.0.0.1:26411
Metadata collector has nothing to do
Metadata collection has finished
Now loading metadata ...
Now updating workspace metadata ...
Finished

Info Changed!!! True
no path found
^Z
[1]+ Stopped leksah
[forste@forste leksah]$ bg
[1]+ leksah &
[forste@forste leksah]$ bgNow saving session
Info Changed!!! False
Now saving session
Info Changed!!! False
vcsMenu obtained
packageItem obtained
vcsMenu obtained
packageItem obtained
vcsMenu obtained
packageItem obtained

(leksah:5814): Gtk-CRITICAL **: IA__gtk_widget_get_pango_context: assertion `GTK_IS_WIDGET (widget)' failed

(leksah:5814): Pango-CRITICAL *: pango_context_get_language: assertion `context != NULL' failed
*__lost connection
*
*lost last connection - exiting
leksah-server: ExitSuccess
ExitSuccess

leksah crashes on workspace open with "load session"

leksah-version: commit: 7dcbb04 (branch: mergeUpstream)

This seems to be a problem in the session file.

log:
[n0s-ubuntu@cyrox-ubuntu:~] leksah
Using default Yi configuration
Now updating system metadata ...
**server start
Bind 127.0.0.1:26411
Metadata collector has nothing to do
Metadata collection has finished
Now loading metadata ...
Now updating workspace metadata ...
Finished
>>>Info Changed!!! True
Now saving session
leksah: Not a notebook getNotebook' viewCollapse' 1 [SplitP LeftP]
*__lost connection
*__lost last connection - exiting
*
*lost last connection - waiting
leksah-server: ExitSuccess
ExitSuccess

leksah session file .lkshs:

Version of session file format:
1
Time of storage:
"Sat Dec 3 10:28:23 CET 2011"
Layout: VerticalP (VerticalP (TerminalP {paneGroups = fromList [], paneTabs = Just TopP, currentPage = 0, detachedId = Nothing, detachedSize = Nothing}) (TerminalP {paneGroups = fromList [], paneTabs = Just TopP, currentPage = 0, detachedId = Nothing, detachedSize = Nothing}) 210) (HorizontalP (TerminalP {paneGroups = fromList [("Browser",HorizontalP (TerminalP {paneGroups = fromList [], paneTabs = Nothing, currentPage = 0, detachedId = Nothing, detachedSize = Nothing}) (HorizontalP (TerminalP {paneGroups = fromList [], paneTabs = Nothing, currentPage = 0, detachedId = Nothing, detachedSize = Nothing}) (TerminalP {paneGroups = fromList [], paneTabs = Nothing, currentPage = 0, detachedId = Nothing, detachedSize = Nothing}) 203) 55)], paneTabs = Just BottomP, currentPage = 0, detachedId = Nothing, detachedSize = Nothing}) (TerminalP {paneGroups = fromList [], paneTabs = Nothing, currentPage = 0, detachedId = Nothing, detachedSize = Nothing}) 424) 1330
Population: [(Just (BufferSt (BufferState "/home/n0s-ubuntu/workspace/leksah/src/IDE/ArgumentHelper.hs" 3776)),[SplitP LeftP,SplitP RightP]),(Just (BufferSt (BufferState "/home/n0s-ubuntu/workspace/leksah/src/IDE/Completion.hs" 8372)),[SplitP LeftP,SplitP RightP]),(Just (ErrorsSt ErrorsState),[SplitP RightP,SplitP TopP]),(Just (FilesSt FilesState),[SplitP LeftP,SplitP LeftP]),(Just (GrepSt GrepState),[SplitP RightP,SplitP TopP]),(Just (InfoSt (InfoState Nothing)),[SplitP RightP,SplitP TopP,GroupP "Browser",SplitP BottomP,SplitP BottomP]),(Just (LogSt LogState),[SplitP RightP,SplitP BottomP]),(Just (ModulesSt (ModulesState 231 (SystemScope,False) (Nothing,Nothing) (ExpanderState {packageExp = ([],[]), packageExpNoBlack = ([],[]), packageDExp = ([],[]), packageDExpNoBlack = ([],[]), workspaceExp = ([],[]), workspaceExpNoBlack = ([],[]), workspaceDExp = ([],[]), workspaceDExpNoBlack = ([],[]), systemExp = ([],[]), systemExpNoBlack = ([],[])}))),[SplitP RightP,SplitP TopP,GroupP "Browser",SplitP BottomP,SplitP TopP]),(Just (BufferSt (BufferState "/home/n0s-ubuntu/workspace/leksah_upstream/src/IDE/Metainfo/Provider.hs" 30670)),[SplitP LeftP,SplitP RightP]),(Just (SearchSt (SearchState {searchString = "EditorView", searchScope = SystemScope, searchMode = Prefix {caseSense = False}})),[SplitP RightP,SplitP TopP]),(Just (BufferSt (BufferState "/home/n0s-ubuntu/workspace/leksah/src/IDE/TextEditor.hs" 3918)),[SplitP LeftP,SplitP RightP]),(Just (WorkspaceSt WorkspaceState),[SplitP RightP,SplitP TopP,GroupP "Browser",SplitP TopP])]
Window size: (1920,1018)
Completion size:
(1028,406)
Workspace: Just "/home/n0s-ubuntu/workspace/leksah/leksah_0.11.lkshw"
Active pane: Just "ArgumentHelper.hs"
Toolbar visible:
True
FindbarState: (False,FindState {entryStr = "", entryHist = ["getCompletion","empty","askPassWrapper","runvcs","runV","showFilesInConflictGUI","asfasdfasdf","showCommitGUI","showConflictsResolvedGUI"], replaceStr = "", replaceHist = [], caseSensitive = False, entireWord = False, wrapAround = True, regex = False, lineNr = 1})
Recently opened files:
["/home/n0s-ubuntu/workspace/leksah/src/IDE/Completion.hs","/home/n0s-ubuntu/workspace/leksah_upstream/src/IDE/Command.hs","/home/n0s-ubuntu/workspace/gui/vcsgui/src/VCSGui/Common/Helpers.hs","/home/n0s-ubuntu/workspace/gui/vcsgui/src/VCSGui/Git/Log.hs","/home/n0s-ubuntu/workspace/gui/vcsgui/src/VCSGui/Common/GtkHelper.hs","/home/n0s-ubuntu/workspace/gui/vcsgui/src/VCSGui/Common.hs","/home/n0s-ubuntu/workspace/gui/vcsgui/src/exe/askpass/Main.hs","/home/n0s-ubuntu/workspace/gui/vcsgui/src/VCSGui/Git/Pull.hs","/home/n0s-ubuntu/workspace/gui/vcsgui/src/VCSGui/Git/Helpers.hs","/home/n0s-ubuntu/workspace/leksah_upstream/src/IDE/Command/VCS/Common/Workspaces.hs","/home/n0s-ubuntu/workspace/leksah_upstream/src/IDE/Command/VCS/Common/Helper.hs","/home/n0s-ubuntu/workspace/gui/vcsgui/src/VCSGui/Git.hs"]
Recently opened workspaces:
["/home/n0s-ubuntu/reposTest/haskellVCSGUI/x.lkshw","/home/n0s-ubuntu/workspace/gui/vcsguis_0.11.lkshw","/home/n0s-ubuntu/workspace/leksah_upstream/leksah_upstream.lkshw"]

leksah layout:
leksah layout

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.