leksah 0.15.1.0 → 0.15.1.1
raw patch · 21 files changed
+265/−136 lines, 21 filesdep ~gtk3-mac-integrationdep ~leksahdep ~leksah-serverPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: gtk3-mac-integration, leksah, leksah-server, ltk
API changes (from Hackage documentation)
- IDE.BufferMode: [addedIndex] :: IDEBuffer -> Int
- IDE.BufferMode: [bufferName] :: IDEBuffer -> Text
- IDE.BufferMode: [fileName] :: IDEBuffer -> Maybe FilePath
- IDE.BufferMode: [modTime] :: IDEBuffer -> IORef (Maybe UTCTime)
- IDE.BufferMode: [modeEditComment] :: Mode -> IDEAction
- IDE.BufferMode: [modeEditFromCandy] :: Mode -> IDEAction
- IDE.BufferMode: [modeEditInCommentOrString] :: Mode -> Text -> Bool
- IDE.BufferMode: [modeEditInsertCode] :: Mode -> forall editor. TextEditor editor => Text -> EditorIter editor -> EditorBuffer editor -> IDEAction
- IDE.BufferMode: [modeEditKeystrokeCandy] :: Mode -> Maybe Char -> (Text -> Bool) -> IDEAction
- IDE.BufferMode: [modeEditToCandy] :: Mode -> (Text -> Bool) -> IDEAction
- IDE.BufferMode: [modeEditUncomment] :: Mode -> IDEAction
- IDE.BufferMode: [modeName] :: Mode -> Text
- IDE.BufferMode: [modeSelectedModuleName] :: Mode -> IDEM (Maybe Text)
- IDE.BufferMode: [modeTransformToCandy] :: Mode -> forall editor. TextEditor editor => (Text -> Bool) -> EditorBuffer editor -> IDEAction
- IDE.BufferMode: [mode] :: IDEBuffer -> Mode
- IDE.BufferMode: [scrolledWindow] :: IDEBuffer -> ScrolledWindow
- IDE.BufferMode: [sourceView] :: IDEBuffer -> EditorView editor
- IDE.BufferMode: instance GHC.Classes.Eq IDE.BufferMode.BufferState
- IDE.BufferMode: instance GHC.Classes.Ord IDE.BufferMode.BufferState
- IDE.BufferMode: instance GHC.Read.Read IDE.BufferMode.BufferState
- IDE.BufferMode: instance GHC.Show.Show IDE.BufferMode.BufferState
- IDE.BufferMode: instance Graphics.UI.Frame.Panes.Pane IDE.BufferMode.IDEBuffer IDE.Core.Types.IDEM
- IDE.Build: [msBackgroundBuild] :: MakeSettings -> Bool
- IDE.Build: [msDontInstallLast] :: MakeSettings -> Bool
- IDE.Build: [msJumpToWarnings] :: MakeSettings -> Bool
- IDE.Build: [msMakeMode] :: MakeSettings -> Bool
- IDE.Build: [msRunUnitTests] :: MakeSettings -> Bool
- IDE.Build: [msSaveAllBeforeBuild] :: MakeSettings -> Bool
- IDE.Build: [msSingleBuildWithoutLinking] :: MakeSettings -> Bool
- IDE.Build: instance (GHC.Show.Show alpha, GHC.Show.Show beta) => GHC.Show.Show (IDE.Build.Chain alpha beta)
- IDE.Build: instance GHC.Classes.Eq IDE.Build.MakeOp
- IDE.Build: instance GHC.Classes.Ord IDE.Build.MakeOp
- IDE.Build: instance GHC.Show.Show IDE.Build.MakeOp
- IDE.Command.Print: [exitCode] :: PrintError -> Int
- IDE.Command.Print: [printCmd] :: PrintError -> FilePath
- IDE.Command.Print: [stderr] :: PrintError -> Text
- IDE.Command.Print: instance GHC.Read.Read IDE.Command.Print.PrintError
- IDE.Command.Print: instance GHC.Show.Show IDE.Command.Print.PrintError
- IDE.Command.VCS.Types: instance Control.Monad.IO.Class.MonadIO IDE.Command.VCS.Types.VCSAction
- IDE.Command.VCS.Types: instance Control.Monad.Reader.Class.MonadReader (IDE.Core.Types.VCSConf, GHC.IO.FilePath) IDE.Command.VCS.Types.VCSAction
- IDE.Command.VCS.Types: instance GHC.Base.Applicative IDE.Command.VCS.Types.VCSAction
- IDE.Command.VCS.Types: instance GHC.Base.Functor IDE.Command.VCS.Types.VCSAction
- IDE.Command.VCS.Types: instance GHC.Base.Monad IDE.Command.VCS.Types.VCSAction
- IDE.Core.State: instance GHC.Classes.Eq IDE.Core.State.MessageLevel
- IDE.Core.State: instance GHC.Classes.Ord IDE.Core.State.MessageLevel
- IDE.Core.State: instance GHC.Exception.Exception IDE.Core.State.IDEException
- IDE.Core.State: instance GHC.Show.Show IDE.Core.State.IDEException
- IDE.Core.State: instance GHC.Show.Show IDE.Core.State.MessageLevel
- IDE.Core.State: instance Graphics.UI.Frame.Panes.PaneMonad IDE.Core.Types.IDEM
- IDE.Core.Types: [accelerator] :: ActionDescr alpha -> [KeyString]
- IDE.Core.Types: [action] :: ActionDescr alpha -> ReaderT alpha IO ()
- IDE.Core.Types: [activeExe] :: IDE -> Maybe Text
- IDE.Core.Types: [activePack] :: IDE -> Maybe IDEPackage
- IDE.Core.Types: [allLogRefs] :: IDE -> [LogRef]
- IDE.Core.Types: [autoCommand] :: IDE -> IDEAction
- IDE.Core.Types: [autoLoad] :: Prefs -> Bool
- IDE.Core.Types: [autoURI] :: IDE -> Maybe Text
- IDE.Core.Types: [backgroundBuild] :: Prefs -> Bool
- IDE.Core.Types: [blacklist] :: GUIHistory' -> Bool
- IDE.Core.Types: [breakOnError] :: Prefs -> Bool
- IDE.Core.Types: [breakOnException] :: Prefs -> Bool
- IDE.Core.Types: [breakpointBG] :: EditorStyle -> (Color, Color)
- IDE.Core.Types: [breakpointBackgroundDark] :: Prefs -> Color
- IDE.Core.Types: [breakpointBackgroundLight] :: Prefs -> Color
- IDE.Core.Types: [browser] :: Prefs -> Text
- IDE.Core.Types: [bufferProjCache] :: IDE -> Map FilePath [IDEPackage]
- IDE.Core.Types: [candy] :: IDE -> CandyTable
- IDE.Core.Types: [caseSense] :: SearchMode -> Bool
- IDE.Core.Types: [categoryForPane] :: Prefs -> [(Text, Text)]
- IDE.Core.Types: [collectAtStart] :: Prefs -> Bool
- IDE.Core.Types: [completeRestricted] :: Prefs -> Bool
- IDE.Core.Types: [completion] :: IDE -> ((Int, Int), Maybe CompletionWindow)
- IDE.Core.Types: [contextBG] :: EditorStyle -> (Color, Color)
- IDE.Core.Types: [contextBackgroundDark] :: Prefs -> Color
- IDE.Core.Types: [contextBackgroundLight] :: Prefs -> Color
- IDE.Core.Types: [currentEBC] :: IDE -> (Maybe LogRef, Maybe LogRef, Maybe LogRef)
- IDE.Core.Types: [currentHist] :: IDE -> Int
- IDE.Core.Types: [currentState] :: IDE -> IDEState
- IDE.Core.Types: [cwListStore] :: CompletionWindow -> ListStore Text
- IDE.Core.Types: [cwTreeView] :: CompletionWindow -> TreeView
- IDE.Core.Types: [cwWindow] :: CompletionWindow -> Window
- IDE.Core.Types: [debugState] :: IDE -> Maybe (IDEPackage, ToolState)
- IDE.Core.Types: [defaultPath] :: Prefs -> PanePath
- IDE.Core.Types: [defaultSize] :: Prefs -> (Int, Int)
- IDE.Core.Types: [docuSearchURL] :: Prefs -> Text
- IDE.Core.Types: [dontInstallLast] :: Prefs -> Bool
- IDE.Core.Types: [endWithLastConn] :: Prefs -> Bool
- IDE.Core.Types: [facetS] :: GUIHistory' -> Maybe Text
- IDE.Core.Types: [findbar] :: IDE -> (Bool, Maybe (Toolbar, ListStore Text))
- IDE.Core.Types: [forceLineEnds] :: Prefs -> Bool
- IDE.Core.Types: [foundBG] :: EditorStyle -> (Color, Color)
- IDE.Core.Types: [foundBackgroundDark] :: Prefs -> Color
- IDE.Core.Types: [foundBackgroundLight] :: Prefs -> Color
- IDE.Core.Types: [frameState] :: IDE -> FrameState IDEM
- IDE.Core.Types: [guiHistory] :: IDE -> (Bool, [GUIHistory], Int)
- IDE.Core.Types: [handlers] :: IDE -> Map Text [(Unique, IDEEvent -> IDEM IDEEvent)]
- IDE.Core.Types: [hlintQueue] :: IDE -> Maybe (TVar [Either FilePath FilePath])
- IDE.Core.Types: [ipdBenchmarks] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdBuildFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdCabalFile] :: IDEPackage -> FilePath
- IDE.Core.Types: [ipdConfigFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdDepends] :: IDEPackage -> [Dependency]
- IDE.Core.Types: [ipdExeFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdExes] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdExtensions] :: IDEPackage -> [Extension]
- IDE.Core.Types: [ipdExtraSrcs] :: IDEPackage -> Set FilePath
- IDE.Core.Types: [ipdHaddockFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdHasLibs] :: IDEPackage -> Bool
- IDE.Core.Types: [ipdInstallFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdMain] :: IDEPackage -> [(FilePath, BuildInfo, Bool)]
- IDE.Core.Types: [ipdModules] :: IDEPackage -> Map ModuleName BuildInfo
- IDE.Core.Types: [ipdPackageId] :: IDEPackage -> PackageIdentifier
- IDE.Core.Types: [ipdRegisterFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdSandboxSources] :: IDEPackage -> [IDEPackage]
- IDE.Core.Types: [ipdSdistFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdSrcDirs] :: IDEPackage -> [FilePath]
- IDE.Core.Types: [ipdTestFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdTests] :: IDEPackage -> [Text]
- IDE.Core.Types: [ipdUnregisterFlags] :: IDEPackage -> [Text]
- IDE.Core.Types: [isToggle] :: ActionDescr alpha -> Bool
- IDE.Core.Types: [jumpToWarnings] :: Prefs -> Bool
- IDE.Core.Types: [keymapName] :: Prefs -> Text
- IDE.Core.Types: [label] :: ActionDescr alpha -> Text
- IDE.Core.Types: [lintBG] :: EditorStyle -> (Color, Color)
- IDE.Core.Types: [lintBackgroundDark] :: Prefs -> Color
- IDE.Core.Types: [lintBackgroundLight] :: Prefs -> Color
- IDE.Core.Types: [logBuffer] :: LogLaunch -> TextBuffer
- IDE.Core.Types: [logLaunch] :: LogLaunchData -> LogLaunch
- IDE.Core.Types: [logLaunches] :: IDE -> Map Text LogLaunchData
- IDE.Core.Types: [logLines] :: LogRef -> Maybe (Int, Int)
- IDE.Core.Types: [logRefIdea] :: LogRef -> Maybe (Text, Idea)
- IDE.Core.Types: [logRefPackage] :: LogRef -> IDEPackage
- IDE.Core.Types: [logRefSrcSpan] :: LogRef -> SrcSpan
- IDE.Core.Types: [logRefType] :: LogRef -> LogRefType
- IDE.Core.Types: [logviewFont] :: Prefs -> Maybe Text
- IDE.Core.Types: [makeMode] :: Prefs -> Bool
- IDE.Core.Types: [matchBG] :: EditorStyle -> (Color, Color)
- IDE.Core.Types: [matchBackgroundDark] :: Prefs -> Color
- IDE.Core.Types: [matchBackgroundLight] :: Prefs -> Color
- IDE.Core.Types: [mbInfo] :: GUIHistory' -> Maybe Descr
- IDE.Core.Types: [mbPid] :: LogLaunchData -> Maybe ProcessHandle
- IDE.Core.Types: [moduleS] :: GUIHistory' -> Maybe ModuleName
- IDE.Core.Types: [name] :: ActionDescr alpha -> ActionString
- IDE.Core.Types: [packageBlacklist] :: Prefs -> [Dependency]
- IDE.Core.Types: [packageInfo] :: IDE -> Maybe (GenScope, GenScope)
- IDE.Core.Types: [packageVcsConf] :: Workspace -> Map FilePath VCSConf
- IDE.Core.Types: [paneN] :: GUIHistory' -> Maybe Text
- IDE.Core.Types: [pathForCategory] :: Prefs -> [(Text, PanePath)]
- IDE.Core.Types: [preferDark] :: EditorStyle -> Bool
- IDE.Core.Types: [prefsFormat] :: Prefs -> Int
- IDE.Core.Types: [prefsSaveTime] :: Prefs -> Text
- IDE.Core.Types: [prefs] :: IDE -> Prefs
- IDE.Core.Types: [printBindResult] :: Prefs -> Bool
- IDE.Core.Types: [printEvldWithShow] :: Prefs -> Bool
- IDE.Core.Types: [recentFiles] :: IDE -> [FilePath]
- IDE.Core.Types: [recentPanes] :: IDE -> [PaneName]
- IDE.Core.Types: [recentWorkspaces] :: IDE -> [FilePath]
- IDE.Core.Types: [refDescription] :: LogRef -> Text
- IDE.Core.Types: [removeTBlanks] :: Prefs -> Bool
- IDE.Core.Types: [retrieveStrategy] :: Prefs -> RetrieveStrategy
- IDE.Core.Types: [retrieveURL] :: Prefs -> Text
- IDE.Core.Types: [rightMargin] :: Prefs -> (Bool, Int)
- IDE.Core.Types: [runUnitTests] :: Prefs -> Bool
- IDE.Core.Types: [runningTool] :: IDE -> Maybe ProcessHandle
- IDE.Core.Types: [saveAllBeforeBuild] :: Prefs -> Bool
- IDE.Core.Types: [scope] :: GUIHistory' -> Scope
- IDE.Core.Types: [serverIP] :: Prefs -> Text
- IDE.Core.Types: [serverPort] :: Prefs -> Int
- IDE.Core.Types: [serverQueue] :: IDE -> Maybe (MVar (ServerCommand, ServerAnswer -> IDEM ()))
- IDE.Core.Types: [server] :: IDE -> Maybe Handle
- IDE.Core.Types: [showHiddenFiles] :: Prefs -> Bool
- IDE.Core.Types: [showLineNumbers] :: Prefs -> Bool
- IDE.Core.Types: [singleBuildWithoutLinking] :: Prefs -> Bool
- IDE.Core.Types: [sourceCandy] :: Prefs -> (Bool, Text)
- IDE.Core.Types: [sourceDirectories] :: Prefs -> [FilePath]
- IDE.Core.Types: [sourceStyle] :: Prefs -> (Bool, Text)
- IDE.Core.Types: [specialKey] :: IDE -> SpecialKeyCons IDERef
- IDE.Core.Types: [specialKeys] :: IDE -> SpecialKeyTable IDERef
- IDE.Core.Types: [stockID] :: ActionDescr alpha -> Maybe Text
- IDE.Core.Types: [styleName] :: EditorStyle -> Maybe Text
- IDE.Core.Types: [systemInfo] :: IDE -> Maybe GenScope
- IDE.Core.Types: [tabWidth] :: Prefs -> Int
- IDE.Core.Types: [textEditorType] :: Prefs -> Text
- IDE.Core.Types: [textviewFont] :: Prefs -> Maybe Text
- IDE.Core.Types: [toolbar] :: IDE -> (Bool, Maybe Toolbar)
- IDE.Core.Types: [tooltip] :: ActionDescr alpha -> Maybe Text
- IDE.Core.Types: [unpackDirectory] :: Prefs -> Maybe FilePath
- IDE.Core.Types: [useCabalDev] :: Prefs -> Bool
- IDE.Core.Types: [useCtrlTabFlipping] :: Prefs -> Bool
- IDE.Core.Types: [useVado] :: Prefs -> Bool
- IDE.Core.Types: [vcsData] :: IDE -> (Map FilePath MenuItem, Maybe (Maybe Text))
- IDE.Core.Types: [workspInfoCache] :: IDE -> PackageDescrCache
- IDE.Core.Types: [workspaceInfo] :: IDE -> Maybe (GenScope, GenScope)
- IDE.Core.Types: [workspace] :: IDE -> Maybe Workspace
- IDE.Core.Types: [wrapLines] :: Prefs -> Bool
- IDE.Core.Types: [wsActiveExe] :: Workspace -> Maybe Text
- IDE.Core.Types: [wsActivePackFile] :: Workspace -> Maybe FilePath
- IDE.Core.Types: [wsFile] :: Workspace -> FilePath
- IDE.Core.Types: [wsName] :: Workspace -> Text
- IDE.Core.Types: [wsNobuildPack] :: Workspace -> [IDEPackage]
- IDE.Core.Types: [wsPackagesFiles] :: Workspace -> [FilePath]
- IDE.Core.Types: [wsPackages] :: Workspace -> [IDEPackage]
- IDE.Core.Types: [wsSaveTime] :: Workspace -> Text
- IDE.Core.Types: [wsVersion] :: Workspace -> Int
- IDE.Core.Types: [yiControl] :: IDE -> Control
- IDE.Core.Types: instance Control.Event.Event IDE.Core.Types.IDEEvent Data.Text.Internal.Text
- IDE.Core.Types: instance Control.Event.EventSelector Data.Text.Internal.Text
- IDE.Core.Types: instance Control.Event.EventSource IDE.Core.Types.IDERef IDE.Core.Types.IDEEvent IDE.Core.Types.IDEM Data.Text.Internal.Text
- IDE.Core.Types: instance GHC.Classes.Eq IDE.Core.Types.GUIHistory'
- IDE.Core.Types: instance GHC.Classes.Eq IDE.Core.Types.IDEPackage
- IDE.Core.Types: instance GHC.Classes.Eq IDE.Core.Types.LogRef
- IDE.Core.Types: instance GHC.Classes.Eq IDE.Core.Types.LogRefType
- IDE.Core.Types: instance GHC.Classes.Eq IDE.Core.Types.Prefs
- IDE.Core.Types: instance GHC.Classes.Eq IDE.Core.Types.SearchHint
- IDE.Core.Types: instance GHC.Classes.Eq IDE.Core.Types.SearchMode
- IDE.Core.Types: instance GHC.Classes.Eq IDE.Core.Types.SensitivityMask
- IDE.Core.Types: instance GHC.Classes.Ord Graphics.UI.Gtk.Gdk.Enums.Modifier
- IDE.Core.Types: instance GHC.Classes.Ord IDE.Core.Types.GUIHistory'
- IDE.Core.Types: instance GHC.Classes.Ord IDE.Core.Types.IDEPackage
- IDE.Core.Types: instance GHC.Classes.Ord IDE.Core.Types.LogRefType
- IDE.Core.Types: instance GHC.Classes.Ord IDE.Core.Types.SearchMode
- IDE.Core.Types: instance GHC.Classes.Ord IDE.Core.Types.SensitivityMask
- IDE.Core.Types: instance GHC.Enum.Bounded IDE.Core.Types.LogRefType
- IDE.Core.Types: instance GHC.Enum.Enum IDE.Core.Types.LogRefType
- IDE.Core.Types: instance GHC.Read.Read IDE.Core.Types.SearchMode
- IDE.Core.Types: instance GHC.Show.Show IDE.Core.Types.GUIHistory'
- IDE.Core.Types: instance GHC.Show.Show IDE.Core.Types.IDEPackage
- IDE.Core.Types: instance GHC.Show.Show IDE.Core.Types.LogRef
- IDE.Core.Types: instance GHC.Show.Show IDE.Core.Types.LogRefType
- IDE.Core.Types: instance GHC.Show.Show IDE.Core.Types.Prefs
- IDE.Core.Types: instance GHC.Show.Show IDE.Core.Types.SearchMode
- IDE.Core.Types: instance GHC.Show.Show IDE.Core.Types.SensitivityMask
- IDE.Core.Types: instance GHC.Show.Show IDE.Core.Types.Workspace
- IDE.Core.Types: instance IDE.Core.Types.MonadIDE (IDE.Core.Types.IDEEventM t)
- IDE.Core.Types: instance IDE.Core.Types.MonadIDE IDE.Core.Types.IDEM
- IDE.Core.Types: instance IDE.Core.Types.MonadIDE IDE.Core.Types.PackageM
- IDE.Core.Types: instance IDE.Core.Types.MonadIDE IDE.Core.Types.WorkspaceM
- IDE.Find: [caseSensitive] :: FindState -> Bool
- IDE.Find: [entireWord] :: FindState -> Bool
- IDE.Find: [entryHist] :: FindState -> [Text]
- IDE.Find: [entryStr] :: FindState -> Text
- IDE.Find: [lineNr] :: FindState -> Int
- IDE.Find: [regex] :: FindState -> Bool
- IDE.Find: [replaceHist] :: FindState -> [Text]
- IDE.Find: [replaceStr] :: FindState -> Text
- IDE.Find: [wrapAround] :: FindState -> Bool
- IDE.Find: instance GHC.Classes.Eq IDE.Find.FindState
- IDE.Find: instance GHC.Classes.Ord IDE.Find.FindState
- IDE.Find: instance GHC.Read.Read IDE.Find.FindState
- IDE.Find: instance GHC.Show.Show IDE.Find.FindState
- IDE.ImportTool: [hiddenModule] :: HiddenModuleResult -> Text
- IDE.ImportTool: [missingPackage] :: HiddenModuleResult -> PackageId
- IDE.ImportTool: instance GHC.Classes.Eq IDE.ImportTool.HiddenModuleResult
- IDE.ImportTool: instance GHC.Classes.Eq IDE.ImportTool.NotInScopeParseResult
- IDE.ImportTool: instance GHC.Show.Show IDE.ImportTool.HiddenModuleResult
- IDE.Keymap: instance IDE.Keymap.Keymap IDE.Core.Types.KeymapI
- IDE.Leksah: instance GHC.Classes.Eq IDE.Leksah.Flag
- IDE.Leksah: instance GHC.Show.Show IDE.Leksah.Flag
- IDE.Pane.Breakpoints: instance GHC.Classes.Eq IDE.Pane.Breakpoints.BreakpointsState
- IDE.Pane.Breakpoints: instance GHC.Classes.Ord IDE.Pane.Breakpoints.BreakpointsState
- IDE.Pane.Breakpoints: instance GHC.Read.Read IDE.Pane.Breakpoints.BreakpointsState
- IDE.Pane.Breakpoints: instance GHC.Show.Show IDE.Pane.Breakpoints.BreakpointsState
- IDE.Pane.Breakpoints: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Breakpoints.IDEBreakpoints IDE.Core.Types.IDEM
- IDE.Pane.Breakpoints: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Breakpoints.IDEBreakpoints IDE.Pane.Breakpoints.BreakpointsState IDE.Core.Types.IDEM
- IDE.Pane.Errors: instance GHC.Classes.Eq IDE.Pane.Errors.ErrorsState
- IDE.Pane.Errors: instance GHC.Classes.Ord IDE.Pane.Errors.ErrorsState
- IDE.Pane.Errors: instance GHC.Read.Read IDE.Pane.Errors.ErrorsState
- IDE.Pane.Errors: instance GHC.Show.Show IDE.Pane.Errors.ErrorsState
- IDE.Pane.Errors: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Errors.IDEErrors IDE.Core.Types.IDEM
- IDE.Pane.Errors: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Errors.IDEErrors IDE.Pane.Errors.ErrorsState IDE.Core.Types.IDEM
- IDE.Pane.Files: [fileStore] :: IDEFiles -> TreeStore FileRecord
- IDE.Pane.Files: [scrolledView] :: IDEFiles -> ScrolledWindow
- IDE.Pane.Files: [treeView] :: IDEFiles -> TreeView
- IDE.Pane.Files: instance GHC.Classes.Eq IDE.Pane.Files.FileRecord
- IDE.Pane.Files: instance GHC.Classes.Eq IDE.Pane.Files.FilesState
- IDE.Pane.Files: instance GHC.Classes.Ord IDE.Pane.Files.FileRecord
- IDE.Pane.Files: instance GHC.Classes.Ord IDE.Pane.Files.FilesState
- IDE.Pane.Files: instance GHC.Read.Read IDE.Pane.Files.FilesState
- IDE.Pane.Files: instance GHC.Show.Show IDE.Pane.Files.FilesState
- IDE.Pane.Files: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Files.IDEFiles IDE.Core.Types.IDEM
- IDE.Pane.Files: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Files.IDEFiles IDE.Pane.Files.FilesState IDE.Core.Types.IDEM
- IDE.Pane.Grep: [activeGrep] :: IDEGrep -> MVar Bool
- IDE.Pane.Grep: [grepStore] :: IDEGrep -> TreeStore GrepRecord
- IDE.Pane.Grep: [scrolledView] :: IDEGrep -> ScrolledWindow
- IDE.Pane.Grep: [treeView] :: IDEGrep -> TreeView
- IDE.Pane.Grep: [waitingGrep] :: IDEGrep -> MVar Bool
- IDE.Pane.Grep: instance GHC.Classes.Eq IDE.Pane.Grep.GrepState
- IDE.Pane.Grep: instance GHC.Classes.Ord IDE.Pane.Grep.GrepState
- IDE.Pane.Grep: instance GHC.Read.Read IDE.Pane.Grep.GrepState
- IDE.Pane.Grep: instance GHC.Show.Show IDE.Pane.Grep.GrepState
- IDE.Pane.Grep: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Grep.IDEGrep IDE.Core.Types.IDEM
- IDE.Pane.Grep: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Grep.IDEGrep IDE.Pane.Grep.GrepState IDE.Core.Types.IDEM
- IDE.Pane.HLint: instance GHC.Classes.Eq IDE.Pane.HLint.HLintState
- IDE.Pane.HLint: instance GHC.Classes.Ord IDE.Pane.HLint.HLintState
- IDE.Pane.HLint: instance GHC.Read.Read IDE.Pane.HLint.HLintState
- IDE.Pane.HLint: instance GHC.Show.Show IDE.Pane.HLint.HLintState
- IDE.Pane.HLint: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.HLint.IDEHLint IDE.Core.Types.IDEM
- IDE.Pane.HLint: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.HLint.IDEHLint IDE.Pane.HLint.HLintState IDE.Core.Types.IDEM
- IDE.Pane.Info: instance GHC.Classes.Eq IDE.Pane.Info.InfoState
- IDE.Pane.Info: instance GHC.Classes.Ord IDE.Pane.Info.InfoState
- IDE.Pane.Info: instance GHC.Read.Read IDE.Pane.Info.InfoState
- IDE.Pane.Info: instance GHC.Show.Show IDE.Pane.Info.InfoState
- IDE.Pane.Info: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Info.IDEInfo IDE.Core.Types.IDEM
- IDE.Pane.Info: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Info.IDEInfo IDE.Pane.Info.InfoState IDE.Core.Types.IDEM
- IDE.Pane.Log: [logButtons] :: IDELog -> HBox
- IDE.Pane.Log: [logLaunchBox] :: IDELog -> ComboBox
- IDE.Pane.Log: [logLaunchTextView] :: IDELog -> TextView
- IDE.Pane.Log: [logMainContainer] :: IDELog -> VBox
- IDE.Pane.Log: instance GHC.Classes.Eq IDE.Pane.Log.LogState
- IDE.Pane.Log: instance GHC.Classes.Ord IDE.Pane.Log.LogState
- IDE.Pane.Log: instance GHC.Read.Read IDE.Pane.Log.LogState
- IDE.Pane.Log: instance GHC.Show.Show IDE.Pane.Log.LogState
- IDE.Pane.Log: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Log.IDELog IDE.Core.Types.IDEM
- IDE.Pane.Log: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Log.IDELog IDE.Pane.Log.LogState IDE.Core.Types.IDEM
- IDE.Pane.Modules: [blacklistB] :: IDEModules -> CheckButton
- IDE.Pane.Modules: [dependsB] :: IDEModules -> CheckButton
- IDE.Pane.Modules: [descrSortedStore] :: IDEModules -> TypedTreeModelSort Descr
- IDE.Pane.Modules: [descrStore] :: IDEModules -> TreeStore Descr
- IDE.Pane.Modules: [descrView] :: IDEModules -> TreeView
- IDE.Pane.Modules: [expanderState] :: IDEModules -> IORef ExpanderState
- IDE.Pane.Modules: [oldSelection] :: IDEModules -> IORef SelectionState
- IDE.Pane.Modules: [outer] :: IDEModules -> VBox
- IDE.Pane.Modules: [packageDExpNoBlack] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [packageDExp] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [packageExpNoBlack] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [packageExp] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [packageScopeB] :: IDEModules -> RadioButton
- IDE.Pane.Modules: [paned] :: IDEModules -> HPaned
- IDE.Pane.Modules: [systemExpNoBlack] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [systemExp] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [systemScopeB] :: IDEModules -> RadioButton
- IDE.Pane.Modules: [treeStore] :: IDEModules -> TreeStore ModuleRecord
- IDE.Pane.Modules: [treeView] :: IDEModules -> TreeView
- IDE.Pane.Modules: [workspaceDExpNoBlack] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [workspaceDExp] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [workspaceExpNoBlack] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [workspaceExp] :: ExpanderState -> ExpanderFacet
- IDE.Pane.Modules: [workspaceScopeB] :: IDEModules -> RadioButton
- IDE.Pane.Modules: instance GHC.Classes.Eq IDE.Pane.Modules.ExpanderState
- IDE.Pane.Modules: instance GHC.Classes.Eq IDE.Pane.Modules.ModulesState
- IDE.Pane.Modules: instance GHC.Classes.Eq IDE.Pane.Modules.SelectionState
- IDE.Pane.Modules: instance GHC.Classes.Ord IDE.Pane.Modules.ExpanderState
- IDE.Pane.Modules: instance GHC.Classes.Ord IDE.Pane.Modules.ModulesState
- IDE.Pane.Modules: instance GHC.Classes.Ord IDE.Pane.Modules.SelectionState
- IDE.Pane.Modules: instance GHC.Classes.Ord a => GHC.Classes.Ord (Data.Tree.Tree a)
- IDE.Pane.Modules: instance GHC.Read.Read IDE.Pane.Modules.ExpanderState
- IDE.Pane.Modules: instance GHC.Read.Read IDE.Pane.Modules.ModulesState
- IDE.Pane.Modules: instance GHC.Show.Show IDE.Pane.Modules.ExpanderState
- IDE.Pane.Modules: instance GHC.Show.Show IDE.Pane.Modules.ModulesState
- IDE.Pane.Modules: instance GHC.Show.Show IDE.Pane.Modules.SelectionState
- IDE.Pane.Modules: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Modules.IDEModules IDE.Core.Types.IDEM
- IDE.Pane.Modules: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Modules.IDEModules IDE.Pane.Modules.ModulesState IDE.Core.Types.IDEM
- IDE.Pane.PackageEditor: instance Default.Default Distribution.Compiler.CompilerFlavor
- IDE.Pane.PackageEditor: instance Default.Default Distribution.PackageDescription.BuildInfo
- IDE.Pane.PackageEditor: instance Default.Default Distribution.PackageDescription.BuildType
- IDE.Pane.PackageEditor: instance Default.Default Distribution.PackageDescription.Executable
- IDE.Pane.PackageEditor: instance Default.Default Distribution.PackageDescription.Library
- IDE.Pane.PackageEditor: instance Default.Default Distribution.PackageDescription.RepoKind
- IDE.Pane.PackageEditor: instance Default.Default Distribution.PackageDescription.RepoType
- IDE.Pane.PackageEditor: instance Default.Default Distribution.PackageDescription.SourceRepo
- IDE.Pane.PackageEditor: instance Default.Default IDE.Pane.PackageEditor.Benchmark'
- IDE.Pane.PackageEditor: instance Default.Default IDE.Pane.PackageEditor.Executable'
- IDE.Pane.PackageEditor: instance Default.Default IDE.Pane.PackageEditor.Library'
- IDE.Pane.PackageEditor: instance Default.Default IDE.Pane.PackageEditor.Test'
- IDE.Pane.PackageEditor: instance GHC.Classes.Eq IDE.Pane.PackageEditor.Benchmark'
- IDE.Pane.PackageEditor: instance GHC.Classes.Eq IDE.Pane.PackageEditor.Executable'
- IDE.Pane.PackageEditor: instance GHC.Classes.Eq IDE.Pane.PackageEditor.Library'
- IDE.Pane.PackageEditor: instance GHC.Classes.Eq IDE.Pane.PackageEditor.PackageDescriptionEd
- IDE.Pane.PackageEditor: instance GHC.Classes.Eq IDE.Pane.PackageEditor.Test'
- IDE.Pane.PackageEditor: instance GHC.Read.Read IDE.Pane.PackageEditor.PackageState
- IDE.Pane.PackageEditor: instance GHC.Show.Show IDE.Pane.PackageEditor.Benchmark'
- IDE.Pane.PackageEditor: instance GHC.Show.Show IDE.Pane.PackageEditor.Executable'
- IDE.Pane.PackageEditor: instance GHC.Show.Show IDE.Pane.PackageEditor.Library'
- IDE.Pane.PackageEditor: instance GHC.Show.Show IDE.Pane.PackageEditor.PackageState
- IDE.Pane.PackageEditor: instance GHC.Show.Show IDE.Pane.PackageEditor.Test'
- IDE.Pane.PackageEditor: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.PackageEditor.PackagePane IDE.Core.Types.IDEM
- IDE.Pane.PackageEditor: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.PackageEditor.PackagePane IDE.Pane.PackageEditor.PackageState IDE.Core.Types.IDEM
- IDE.Pane.PackageFlags: [flagsBox] :: IDEFlags -> VBox
- IDE.Pane.PackageFlags: instance GHC.Classes.Eq IDE.Pane.PackageFlags.FlagsState
- IDE.Pane.PackageFlags: instance GHC.Classes.Ord IDE.Pane.PackageFlags.FlagsState
- IDE.Pane.PackageFlags: instance GHC.Read.Read IDE.Pane.PackageFlags.FlagsState
- IDE.Pane.PackageFlags: instance GHC.Show.Show IDE.Pane.PackageFlags.FlagsState
- IDE.Pane.PackageFlags: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.PackageFlags.IDEFlags IDE.Core.Types.IDEM
- IDE.Pane.PackageFlags: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.PackageFlags.IDEFlags IDE.Pane.PackageFlags.FlagsState IDE.Core.Types.IDEM
- IDE.Pane.Preferences: [prefsBox] :: IDEPrefs -> VBox
- IDE.Pane.Preferences: instance GHC.Classes.Eq IDE.Pane.Preferences.PrefsState
- IDE.Pane.Preferences: instance GHC.Classes.Ord IDE.Pane.Preferences.PrefsState
- IDE.Pane.Preferences: instance GHC.Read.Read IDE.Pane.Preferences.PrefsState
- IDE.Pane.Preferences: instance GHC.Show.Show IDE.Pane.Preferences.PrefsState
- IDE.Pane.Preferences: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Preferences.IDEPrefs IDE.Core.Types.IDEM
- IDE.Pane.Preferences: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Preferences.IDEPrefs IDE.Pane.Preferences.PrefsState IDE.Core.Types.IDEM
- IDE.Pane.Search: [entry] :: IDESearch -> Entry
- IDE.Pane.Search: [modeSelection] :: IDESearch -> SearchMode -> IDEAction
- IDE.Pane.Search: [scopeSelection] :: IDESearch -> Scope -> IDEAction
- IDE.Pane.Search: [scrolledView] :: IDESearch -> ScrolledWindow
- IDE.Pane.Search: [searchMetaGUI] :: IDESearch -> Text -> IDEAction
- IDE.Pane.Search: [searchModeRef] :: IDESearch -> IORef SearchMode
- IDE.Pane.Search: [searchScopeRef] :: IDESearch -> IORef Scope
- IDE.Pane.Search: [searchStore] :: IDESearch -> ListStore Descr
- IDE.Pane.Search: [setChoices] :: IDESearch -> [Descr] -> IDEAction
- IDE.Pane.Search: [topBox] :: IDESearch -> VBox
- IDE.Pane.Search: [treeView] :: IDESearch -> TreeView
- IDE.Pane.Search: instance GHC.Classes.Eq IDE.Pane.Search.SearchState
- IDE.Pane.Search: instance GHC.Classes.Ord IDE.Pane.Search.SearchState
- IDE.Pane.Search: instance GHC.Read.Read IDE.Pane.Search.SearchState
- IDE.Pane.Search: instance GHC.Show.Show IDE.Pane.Search.SearchState
- IDE.Pane.Search: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Search.IDESearch IDE.Core.Types.IDEM
- IDE.Pane.Search: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Search.IDESearch IDE.Pane.Search.SearchState IDE.Core.Types.IDEM
- IDE.Pane.SourceBuffer: [addedIndex] :: IDEBuffer -> Int
- IDE.Pane.SourceBuffer: [bufferName] :: IDEBuffer -> Text
- IDE.Pane.SourceBuffer: [fileName] :: IDEBuffer -> Maybe FilePath
- IDE.Pane.SourceBuffer: [modTime] :: IDEBuffer -> IORef (Maybe UTCTime)
- IDE.Pane.SourceBuffer: [mode] :: IDEBuffer -> Mode
- IDE.Pane.SourceBuffer: [scrolledWindow] :: IDEBuffer -> ScrolledWindow
- IDE.Pane.SourceBuffer: [sourceView] :: IDEBuffer -> EditorView editor
- IDE.Pane.SourceBuffer: instance GHC.Classes.Eq IDE.Pane.SourceBuffer.CharacterCategory
- IDE.Pane.SourceBuffer: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.BufferMode.IDEBuffer IDE.BufferMode.BufferState IDE.Core.Types.IDEM
- IDE.Pane.Trace: instance GHC.Classes.Eq IDE.Pane.Trace.TraceState
- IDE.Pane.Trace: instance GHC.Classes.Ord IDE.Pane.Trace.TraceState
- IDE.Pane.Trace: instance GHC.Read.Read IDE.Pane.Trace.TraceState
- IDE.Pane.Trace: instance GHC.Show.Show IDE.Pane.Trace.TraceState
- IDE.Pane.Trace: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Trace.IDETrace IDE.Core.Types.IDEM
- IDE.Pane.Trace: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Trace.IDETrace IDE.Pane.Trace.TraceState IDE.Core.Types.IDEM
- IDE.Pane.Variables: instance GHC.Classes.Eq IDE.Pane.Variables.VariablesState
- IDE.Pane.Variables: instance GHC.Classes.Ord IDE.Pane.Variables.VariablesState
- IDE.Pane.Variables: instance GHC.Read.Read IDE.Pane.Variables.VariablesState
- IDE.Pane.Variables: instance GHC.Show.Show IDE.Pane.Variables.VariablesState
- IDE.Pane.Variables: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Variables.IDEVariables IDE.Core.Types.IDEM
- IDE.Pane.Variables: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Variables.IDEVariables IDE.Pane.Variables.VariablesState IDE.Core.Types.IDEM
- IDE.Pane.WebKit.Documentation: [scrolledView] :: IDEDocumentation -> ScrolledWindow
- IDE.Pane.WebKit.Documentation: [uri] :: DocumentationState -> Maybe Text
- IDE.Pane.WebKit.Documentation: [webView] :: IDEDocumentation -> WebView
- IDE.Pane.WebKit.Documentation: [zoom] :: DocumentationState -> Float
- IDE.Pane.WebKit.Documentation: instance GHC.Classes.Eq IDE.Pane.WebKit.Documentation.DocumentationState
- IDE.Pane.WebKit.Documentation: instance GHC.Classes.Ord IDE.Pane.WebKit.Documentation.DocumentationState
- IDE.Pane.WebKit.Documentation: instance GHC.Read.Read IDE.Pane.WebKit.Documentation.DocumentationState
- IDE.Pane.WebKit.Documentation: instance GHC.Show.Show IDE.Pane.WebKit.Documentation.DocumentationState
- IDE.Pane.WebKit.Documentation: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.WebKit.Documentation.IDEDocumentation IDE.Core.Types.IDEM
- IDE.Pane.WebKit.Documentation: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.WebKit.Documentation.IDEDocumentation IDE.Pane.WebKit.Documentation.DocumentationState IDE.Core.Types.IDEM
- IDE.Pane.WebKit.Inspect: [inspectView] :: IDEInspect -> WebView
- IDE.Pane.WebKit.Inspect: [scrollWin] :: IDEInspect -> ScrolledWindow
- IDE.Pane.WebKit.Inspect: instance GHC.Classes.Eq IDE.Pane.WebKit.Inspect.InspectState
- IDE.Pane.WebKit.Inspect: instance GHC.Classes.Ord IDE.Pane.WebKit.Inspect.InspectState
- IDE.Pane.WebKit.Inspect: instance GHC.Read.Read IDE.Pane.WebKit.Inspect.InspectState
- IDE.Pane.WebKit.Inspect: instance GHC.Show.Show IDE.Pane.WebKit.Inspect.InspectState
- IDE.Pane.WebKit.Inspect: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.WebKit.Inspect.IDEInspect IDE.Core.Types.IDEM
- IDE.Pane.WebKit.Inspect: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.WebKit.Inspect.IDEInspect IDE.Pane.WebKit.Inspect.InspectState IDE.Core.Types.IDEM
- IDE.Pane.WebKit.Output: [alwaysHtmlRef] :: IDEOutput -> IORef Bool
- IDE.Pane.WebKit.Output: [alwaysHtml] :: OutputState -> Bool
- IDE.Pane.WebKit.Output: [uriEntry] :: IDEOutput -> Entry
- IDE.Pane.WebKit.Output: [vbox] :: IDEOutput -> VBox
- IDE.Pane.WebKit.Output: [webView] :: IDEOutput -> WebView
- IDE.Pane.WebKit.Output: [zoom] :: OutputState -> Float
- IDE.Pane.WebKit.Output: instance GHC.Classes.Eq IDE.Pane.WebKit.Output.OutputState
- IDE.Pane.WebKit.Output: instance GHC.Classes.Ord IDE.Pane.WebKit.Output.OutputState
- IDE.Pane.WebKit.Output: instance GHC.Read.Read IDE.Pane.WebKit.Output.OutputState
- IDE.Pane.WebKit.Output: instance GHC.Show.Show IDE.Pane.WebKit.Output.OutputState
- IDE.Pane.WebKit.Output: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.WebKit.Output.IDEOutput IDE.Core.Types.IDEM
- IDE.Pane.WebKit.Output: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.WebKit.Output.IDEOutput IDE.Pane.WebKit.Output.OutputState IDE.Core.Types.IDEM
- IDE.Pane.Workspace: instance GHC.Classes.Eq IDE.Pane.Workspace.WorkspaceState
- IDE.Pane.Workspace: instance GHC.Classes.Ord IDE.Pane.Workspace.WorkspaceState
- IDE.Pane.Workspace: instance GHC.Read.Read IDE.Pane.Workspace.WorkspaceState
- IDE.Pane.Workspace: instance GHC.Show.Show IDE.Pane.Workspace.WorkspaceState
- IDE.Pane.Workspace: instance Graphics.UI.Frame.Panes.Pane IDE.Pane.Workspace.IDEWorkspace IDE.Core.Types.IDEM
- IDE.Pane.Workspace: instance Graphics.UI.Frame.Panes.RecoverablePane IDE.Pane.Workspace.IDEWorkspace IDE.Pane.Workspace.WorkspaceState IDE.Core.Types.IDEM
- IDE.Session: instance GHC.Classes.Eq IDE.Session.PaneState
- IDE.Session: instance GHC.Classes.Ord IDE.Session.PaneState
- IDE.Session: instance GHC.Read.Read IDE.Session.PaneState
- IDE.Session: instance GHC.Show.Show IDE.Session.PaneState
- IDE.SymbolNavigation: instance GHC.Classes.Eq IDE.SymbolNavigation.Locality
- IDE.SymbolNavigation: instance GHC.Classes.Ord IDE.SymbolNavigation.Locality
- IDE.SymbolNavigation: instance GHC.Show.Show IDE.SymbolNavigation.Locality
- IDE.TextEditor.Class: [breakpointBG] :: EditorStyle -> (Color, Color)
- IDE.TextEditor.Class: [contextBG] :: EditorStyle -> (Color, Color)
- IDE.TextEditor.Class: [foundBG] :: EditorStyle -> (Color, Color)
- IDE.TextEditor.Class: [lintBG] :: EditorStyle -> (Color, Color)
- IDE.TextEditor.Class: [matchBG] :: EditorStyle -> (Color, Color)
- IDE.TextEditor.Class: [preferDark] :: EditorStyle -> Bool
- IDE.TextEditor.Class: [styleName] :: EditorStyle -> Maybe Text
- IDE.TextEditor.CodeMirror: instance GHC.Show.Show IDE.TextEditor.CodeMirror.CodeMirror
- IDE.TextEditor.CodeMirror: instance IDE.TextEditor.Class.TextEditor IDE.TextEditor.CodeMirror.CodeMirror
- IDE.TextEditor.GtkSourceView: instance GHC.Show.Show IDE.TextEditor.GtkSourceView.GtkSourceView
- IDE.TextEditor.GtkSourceView: instance IDE.TextEditor.Class.TextEditor IDE.TextEditor.GtkSourceView.GtkSourceView
- IDE.TextEditor.Yi: instance GHC.Show.Show IDE.TextEditor.Yi.Yi
+ IDE.BufferMode: addedIndex :: IDEBuffer -> Int
+ IDE.BufferMode: bufferName :: IDEBuffer -> Text
+ IDE.BufferMode: fileName :: IDEBuffer -> Maybe FilePath
+ IDE.BufferMode: instance Eq BufferState
+ IDE.BufferMode: instance Ord BufferState
+ IDE.BufferMode: instance Pane IDEBuffer IDEM
+ IDE.BufferMode: instance Read BufferState
+ IDE.BufferMode: instance Show BufferState
+ IDE.BufferMode: instance Typeable BufferState
+ IDE.BufferMode: instance Typeable IDEBuffer
+ IDE.BufferMode: modTime :: IDEBuffer -> IORef (Maybe UTCTime)
+ IDE.BufferMode: mode :: IDEBuffer -> Mode
+ IDE.BufferMode: modeEditComment :: Mode -> IDEAction
+ IDE.BufferMode: modeEditFromCandy :: Mode -> IDEAction
+ IDE.BufferMode: modeEditInCommentOrString :: Mode -> Text -> Bool
+ IDE.BufferMode: modeEditInsertCode :: Mode -> forall editor. TextEditor editor => Text -> EditorIter editor -> EditorBuffer editor -> IDEAction
+ IDE.BufferMode: modeEditKeystrokeCandy :: Mode -> Maybe Char -> (Text -> Bool) -> IDEAction
+ IDE.BufferMode: modeEditToCandy :: Mode -> (Text -> Bool) -> IDEAction
+ IDE.BufferMode: modeEditUncomment :: Mode -> IDEAction
+ IDE.BufferMode: modeName :: Mode -> Text
+ IDE.BufferMode: modeSelectedModuleName :: Mode -> IDEM (Maybe Text)
+ IDE.BufferMode: modeTransformToCandy :: Mode -> forall editor. TextEditor editor => (Text -> Bool) -> EditorBuffer editor -> IDEAction
+ IDE.BufferMode: scrolledWindow :: IDEBuffer -> ScrolledWindow
+ IDE.BufferMode: sourceView :: IDEBuffer -> EditorView editor
+ IDE.Build: instance (Show alpha, Show beta) => Show (Chain alpha beta)
+ IDE.Build: instance Eq MakeOp
+ IDE.Build: instance Ord MakeOp
+ IDE.Build: instance Show MakeOp
+ IDE.Build: msBackgroundBuild :: MakeSettings -> Bool
+ IDE.Build: msDontInstallLast :: MakeSettings -> Bool
+ IDE.Build: msJumpToWarnings :: MakeSettings -> Bool
+ IDE.Build: msMakeMode :: MakeSettings -> Bool
+ IDE.Build: msRunUnitTests :: MakeSettings -> Bool
+ IDE.Build: msSaveAllBeforeBuild :: MakeSettings -> Bool
+ IDE.Build: msSingleBuildWithoutLinking :: MakeSettings -> Bool
+ IDE.Command.Print: exitCode :: PrintError -> Int
+ IDE.Command.Print: instance Read PrintError
+ IDE.Command.Print: instance Show PrintError
+ IDE.Command.Print: printCmd :: PrintError -> FilePath
+ IDE.Command.Print: stderr :: PrintError -> Text
+ IDE.Command.VCS.Types: instance Applicative VCSAction
+ IDE.Command.VCS.Types: instance Functor VCSAction
+ IDE.Command.VCS.Types: instance Monad VCSAction
+ IDE.Command.VCS.Types: instance MonadIO VCSAction
+ IDE.Command.VCS.Types: instance MonadReader (VCSConf, FilePath) VCSAction
+ IDE.Core.State: instance Eq MessageLevel
+ IDE.Core.State: instance Exception IDEException
+ IDE.Core.State: instance Ord MessageLevel
+ IDE.Core.State: instance PaneMonad IDEM
+ IDE.Core.State: instance Show IDEException
+ IDE.Core.State: instance Show MessageLevel
+ IDE.Core.State: instance Typeable IDEException
+ IDE.Core.Types: accelerator :: ActionDescr alpha -> [KeyString]
+ IDE.Core.Types: action :: ActionDescr alpha -> ReaderT alpha IO ()
+ IDE.Core.Types: activeExe :: IDE -> Maybe Text
+ IDE.Core.Types: activePack :: IDE -> Maybe IDEPackage
+ IDE.Core.Types: allLogRefs :: IDE -> [LogRef]
+ IDE.Core.Types: autoCommand :: IDE -> IDEAction
+ IDE.Core.Types: autoLoad :: Prefs -> Bool
+ IDE.Core.Types: autoURI :: IDE -> Maybe Text
+ IDE.Core.Types: backgroundBuild :: Prefs -> Bool
+ IDE.Core.Types: blacklist :: GUIHistory' -> Bool
+ IDE.Core.Types: breakOnError :: Prefs -> Bool
+ IDE.Core.Types: breakOnException :: Prefs -> Bool
+ IDE.Core.Types: breakpointBG :: EditorStyle -> (Color, Color)
+ IDE.Core.Types: breakpointBackgroundDark :: Prefs -> Color
+ IDE.Core.Types: breakpointBackgroundLight :: Prefs -> Color
+ IDE.Core.Types: browser :: Prefs -> Text
+ IDE.Core.Types: bufferProjCache :: IDE -> Map FilePath [IDEPackage]
+ IDE.Core.Types: candy :: IDE -> CandyTable
+ IDE.Core.Types: caseSense :: SearchMode -> Bool
+ IDE.Core.Types: categoryForPane :: Prefs -> [(Text, Text)]
+ IDE.Core.Types: collectAtStart :: Prefs -> Bool
+ IDE.Core.Types: completeRestricted :: Prefs -> Bool
+ IDE.Core.Types: completion :: IDE -> ((Int, Int), Maybe CompletionWindow)
+ IDE.Core.Types: contextBG :: EditorStyle -> (Color, Color)
+ IDE.Core.Types: contextBackgroundDark :: Prefs -> Color
+ IDE.Core.Types: contextBackgroundLight :: Prefs -> Color
+ IDE.Core.Types: currentEBC :: IDE -> (Maybe LogRef, Maybe LogRef, Maybe LogRef)
+ IDE.Core.Types: currentHist :: IDE -> Int
+ IDE.Core.Types: currentState :: IDE -> IDEState
+ IDE.Core.Types: cwListStore :: CompletionWindow -> ListStore Text
+ IDE.Core.Types: cwTreeView :: CompletionWindow -> TreeView
+ IDE.Core.Types: cwWindow :: CompletionWindow -> Window
+ IDE.Core.Types: debugState :: IDE -> Maybe (IDEPackage, ToolState)
+ IDE.Core.Types: defaultPath :: Prefs -> PanePath
+ IDE.Core.Types: defaultSize :: Prefs -> (Int, Int)
+ IDE.Core.Types: docuSearchURL :: Prefs -> Text
+ IDE.Core.Types: dontInstallLast :: Prefs -> Bool
+ IDE.Core.Types: endWithLastConn :: Prefs -> Bool
+ IDE.Core.Types: facetS :: GUIHistory' -> Maybe Text
+ IDE.Core.Types: findbar :: IDE -> (Bool, Maybe (Toolbar, ListStore Text))
+ IDE.Core.Types: forceLineEnds :: Prefs -> Bool
+ IDE.Core.Types: foundBG :: EditorStyle -> (Color, Color)
+ IDE.Core.Types: foundBackgroundDark :: Prefs -> Color
+ IDE.Core.Types: foundBackgroundLight :: Prefs -> Color
+ IDE.Core.Types: frameState :: IDE -> FrameState IDEM
+ IDE.Core.Types: guiHistory :: IDE -> (Bool, [GUIHistory], Int)
+ IDE.Core.Types: handlers :: IDE -> Map Text [(Unique, IDEEvent -> IDEM IDEEvent)]
+ IDE.Core.Types: hlintQueue :: IDE -> Maybe (TVar [Either FilePath FilePath])
+ IDE.Core.Types: instance Bounded LogRefType
+ IDE.Core.Types: instance Enum LogRefType
+ IDE.Core.Types: instance Eq GUIHistory'
+ IDE.Core.Types: instance Eq IDEPackage
+ IDE.Core.Types: instance Eq LogRef
+ IDE.Core.Types: instance Eq LogRefType
+ IDE.Core.Types: instance Eq Prefs
+ IDE.Core.Types: instance Eq SearchHint
+ IDE.Core.Types: instance Eq SearchMode
+ IDE.Core.Types: instance Eq SensitivityMask
+ IDE.Core.Types: instance Event IDEEvent Text
+ IDE.Core.Types: instance EventSelector Text
+ IDE.Core.Types: instance EventSource IDERef IDEEvent IDEM Text
+ IDE.Core.Types: instance MonadIDE (IDEEventM t)
+ IDE.Core.Types: instance MonadIDE IDEM
+ IDE.Core.Types: instance MonadIDE PackageM
+ IDE.Core.Types: instance MonadIDE WorkspaceM
+ IDE.Core.Types: instance Ord GUIHistory'
+ IDE.Core.Types: instance Ord IDEPackage
+ IDE.Core.Types: instance Ord LogRefType
+ IDE.Core.Types: instance Ord Modifier
+ IDE.Core.Types: instance Ord SearchMode
+ IDE.Core.Types: instance Ord SensitivityMask
+ IDE.Core.Types: instance Read SearchMode
+ IDE.Core.Types: instance Show GUIHistory'
+ IDE.Core.Types: instance Show IDEPackage
+ IDE.Core.Types: instance Show LogRef
+ IDE.Core.Types: instance Show LogRefType
+ IDE.Core.Types: instance Show Prefs
+ IDE.Core.Types: instance Show SearchMode
+ IDE.Core.Types: instance Show SensitivityMask
+ IDE.Core.Types: instance Show Workspace
+ IDE.Core.Types: instance Typeable LogLaunch
+ IDE.Core.Types: ipdBenchmarks :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdBuildFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdCabalFile :: IDEPackage -> FilePath
+ IDE.Core.Types: ipdConfigFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdDepends :: IDEPackage -> [Dependency]
+ IDE.Core.Types: ipdExeFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdExes :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdExtensions :: IDEPackage -> [Extension]
+ IDE.Core.Types: ipdExtraSrcs :: IDEPackage -> Set FilePath
+ IDE.Core.Types: ipdHaddockFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdHasLibs :: IDEPackage -> Bool
+ IDE.Core.Types: ipdInstallFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdMain :: IDEPackage -> [(FilePath, BuildInfo, Bool)]
+ IDE.Core.Types: ipdModules :: IDEPackage -> Map ModuleName BuildInfo
+ IDE.Core.Types: ipdPackageId :: IDEPackage -> PackageIdentifier
+ IDE.Core.Types: ipdRegisterFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdSandboxSources :: IDEPackage -> [IDEPackage]
+ IDE.Core.Types: ipdSdistFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdSrcDirs :: IDEPackage -> [FilePath]
+ IDE.Core.Types: ipdTestFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdTests :: IDEPackage -> [Text]
+ IDE.Core.Types: ipdUnregisterFlags :: IDEPackage -> [Text]
+ IDE.Core.Types: isToggle :: ActionDescr alpha -> Bool
+ IDE.Core.Types: jumpToWarnings :: Prefs -> Bool
+ IDE.Core.Types: keymapName :: Prefs -> Text
+ IDE.Core.Types: label :: ActionDescr alpha -> Text
+ IDE.Core.Types: lintBG :: EditorStyle -> (Color, Color)
+ IDE.Core.Types: lintBackgroundDark :: Prefs -> Color
+ IDE.Core.Types: lintBackgroundLight :: Prefs -> Color
+ IDE.Core.Types: logBuffer :: LogLaunch -> TextBuffer
+ IDE.Core.Types: logLaunch :: LogLaunchData -> LogLaunch
+ IDE.Core.Types: logLaunches :: IDE -> Map Text LogLaunchData
+ IDE.Core.Types: logLines :: LogRef -> Maybe (Int, Int)
+ IDE.Core.Types: logRefIdea :: LogRef -> Maybe (Text, Idea)
+ IDE.Core.Types: logRefPackage :: LogRef -> IDEPackage
+ IDE.Core.Types: logRefSrcSpan :: LogRef -> SrcSpan
+ IDE.Core.Types: logRefType :: LogRef -> LogRefType
+ IDE.Core.Types: logviewFont :: Prefs -> Maybe Text
+ IDE.Core.Types: makeMode :: Prefs -> Bool
+ IDE.Core.Types: matchBG :: EditorStyle -> (Color, Color)
+ IDE.Core.Types: matchBackgroundDark :: Prefs -> Color
+ IDE.Core.Types: matchBackgroundLight :: Prefs -> Color
+ IDE.Core.Types: mbInfo :: GUIHistory' -> Maybe Descr
+ IDE.Core.Types: mbPid :: LogLaunchData -> Maybe ProcessHandle
+ IDE.Core.Types: moduleS :: GUIHistory' -> Maybe ModuleName
+ IDE.Core.Types: name :: ActionDescr alpha -> ActionString
+ IDE.Core.Types: packageBlacklist :: Prefs -> [Dependency]
+ IDE.Core.Types: packageInfo :: IDE -> Maybe (GenScope, GenScope)
+ IDE.Core.Types: packageVcsConf :: Workspace -> Map FilePath VCSConf
+ IDE.Core.Types: paneN :: GUIHistory' -> Maybe Text
+ IDE.Core.Types: pathForCategory :: Prefs -> [(Text, PanePath)]
+ IDE.Core.Types: preferDark :: EditorStyle -> Bool
+ IDE.Core.Types: prefs :: IDE -> Prefs
+ IDE.Core.Types: prefsFormat :: Prefs -> Int
+ IDE.Core.Types: prefsSaveTime :: Prefs -> Text
+ IDE.Core.Types: printBindResult :: Prefs -> Bool
+ IDE.Core.Types: printEvldWithShow :: Prefs -> Bool
+ IDE.Core.Types: recentFiles :: IDE -> [FilePath]
+ IDE.Core.Types: recentPanes :: IDE -> [PaneName]
+ IDE.Core.Types: recentWorkspaces :: IDE -> [FilePath]
+ IDE.Core.Types: refDescription :: LogRef -> Text
+ IDE.Core.Types: removeTBlanks :: Prefs -> Bool
+ IDE.Core.Types: retrieveStrategy :: Prefs -> RetrieveStrategy
+ IDE.Core.Types: retrieveURL :: Prefs -> Text
+ IDE.Core.Types: rightMargin :: Prefs -> (Bool, Int)
+ IDE.Core.Types: runUnitTests :: Prefs -> Bool
+ IDE.Core.Types: runningTool :: IDE -> Maybe ProcessHandle
+ IDE.Core.Types: saveAllBeforeBuild :: Prefs -> Bool
+ IDE.Core.Types: scope :: GUIHistory' -> Scope
+ IDE.Core.Types: server :: IDE -> Maybe Handle
+ IDE.Core.Types: serverIP :: Prefs -> Text
+ IDE.Core.Types: serverPort :: Prefs -> Int
+ IDE.Core.Types: serverQueue :: IDE -> Maybe (MVar (ServerCommand, ServerAnswer -> IDEM ()))
+ IDE.Core.Types: showHiddenFiles :: Prefs -> Bool
+ IDE.Core.Types: showLineNumbers :: Prefs -> Bool
+ IDE.Core.Types: singleBuildWithoutLinking :: Prefs -> Bool
+ IDE.Core.Types: sourceCandy :: Prefs -> (Bool, Text)
+ IDE.Core.Types: sourceDirectories :: Prefs -> [FilePath]
+ IDE.Core.Types: sourceStyle :: Prefs -> (Bool, Text)
+ IDE.Core.Types: specialKey :: IDE -> SpecialKeyCons IDERef
+ IDE.Core.Types: specialKeys :: IDE -> SpecialKeyTable IDERef
+ IDE.Core.Types: stockID :: ActionDescr alpha -> Maybe Text
+ IDE.Core.Types: styleName :: EditorStyle -> Maybe Text
+ IDE.Core.Types: systemInfo :: IDE -> Maybe GenScope
+ IDE.Core.Types: tabWidth :: Prefs -> Int
+ IDE.Core.Types: textEditorType :: Prefs -> Text
+ IDE.Core.Types: textviewFont :: Prefs -> Maybe Text
+ IDE.Core.Types: toolbar :: IDE -> (Bool, Maybe Toolbar)
+ IDE.Core.Types: tooltip :: ActionDescr alpha -> Maybe Text
+ IDE.Core.Types: unpackDirectory :: Prefs -> Maybe FilePath
+ IDE.Core.Types: useCabalDev :: Prefs -> Bool
+ IDE.Core.Types: useCtrlTabFlipping :: Prefs -> Bool
+ IDE.Core.Types: useVado :: Prefs -> Bool
+ IDE.Core.Types: vcsData :: IDE -> (Map FilePath MenuItem, Maybe (Maybe Text))
+ IDE.Core.Types: workspInfoCache :: IDE -> PackageDescrCache
+ IDE.Core.Types: workspace :: IDE -> Maybe Workspace
+ IDE.Core.Types: workspaceInfo :: IDE -> Maybe (GenScope, GenScope)
+ IDE.Core.Types: wrapLines :: Prefs -> Bool
+ IDE.Core.Types: wsActiveExe :: Workspace -> Maybe Text
+ IDE.Core.Types: wsActivePackFile :: Workspace -> Maybe FilePath
+ IDE.Core.Types: wsFile :: Workspace -> FilePath
+ IDE.Core.Types: wsName :: Workspace -> Text
+ IDE.Core.Types: wsNobuildPack :: Workspace -> [IDEPackage]
+ IDE.Core.Types: wsPackages :: Workspace -> [IDEPackage]
+ IDE.Core.Types: wsPackagesFiles :: Workspace -> [FilePath]
+ IDE.Core.Types: wsSaveTime :: Workspace -> Text
+ IDE.Core.Types: wsVersion :: Workspace -> Int
+ IDE.Core.Types: yiControl :: IDE -> Control
+ IDE.Find: caseSensitive :: FindState -> Bool
+ IDE.Find: entireWord :: FindState -> Bool
+ IDE.Find: entryHist :: FindState -> [Text]
+ IDE.Find: entryStr :: FindState -> Text
+ IDE.Find: instance Eq FindState
+ IDE.Find: instance Ord FindState
+ IDE.Find: instance Read FindState
+ IDE.Find: instance Show FindState
+ IDE.Find: lineNr :: FindState -> Int
+ IDE.Find: regex :: FindState -> Bool
+ IDE.Find: replaceHist :: FindState -> [Text]
+ IDE.Find: replaceStr :: FindState -> Text
+ IDE.Find: wrapAround :: FindState -> Bool
+ IDE.ImportTool: hiddenModule :: HiddenModuleResult -> Text
+ IDE.ImportTool: instance Eq HiddenModuleResult
+ IDE.ImportTool: instance Eq NotInScopeParseResult
+ IDE.ImportTool: instance Show HiddenModuleResult
+ IDE.ImportTool: missingPackage :: HiddenModuleResult -> PackageId
+ IDE.Keymap: instance Keymap KeymapI
+ IDE.Leksah: instance Eq Flag
+ IDE.Leksah: instance Show Flag
+ IDE.OSX: allowFullscreen :: DrawWindowClass window => window -> IO ()
+ IDE.Pane.Breakpoints: instance Eq BreakpointsState
+ IDE.Pane.Breakpoints: instance Ord BreakpointsState
+ IDE.Pane.Breakpoints: instance Pane IDEBreakpoints IDEM
+ IDE.Pane.Breakpoints: instance Read BreakpointsState
+ IDE.Pane.Breakpoints: instance RecoverablePane IDEBreakpoints BreakpointsState IDEM
+ IDE.Pane.Breakpoints: instance Show BreakpointsState
+ IDE.Pane.Breakpoints: instance Typeable BreakpointsState
+ IDE.Pane.Breakpoints: instance Typeable IDEBreakpoints
+ IDE.Pane.Errors: instance Eq ErrorsState
+ IDE.Pane.Errors: instance Ord ErrorsState
+ IDE.Pane.Errors: instance Pane IDEErrors IDEM
+ IDE.Pane.Errors: instance Read ErrorsState
+ IDE.Pane.Errors: instance RecoverablePane IDEErrors ErrorsState IDEM
+ IDE.Pane.Errors: instance Show ErrorsState
+ IDE.Pane.Errors: instance Typeable ErrorsState
+ IDE.Pane.Errors: instance Typeable IDEErrors
+ IDE.Pane.Files: fileStore :: IDEFiles -> TreeStore FileRecord
+ IDE.Pane.Files: instance Eq FileRecord
+ IDE.Pane.Files: instance Eq FilesState
+ IDE.Pane.Files: instance Ord FileRecord
+ IDE.Pane.Files: instance Ord FilesState
+ IDE.Pane.Files: instance Pane IDEFiles IDEM
+ IDE.Pane.Files: instance Read FilesState
+ IDE.Pane.Files: instance RecoverablePane IDEFiles FilesState IDEM
+ IDE.Pane.Files: instance Show FilesState
+ IDE.Pane.Files: instance Typeable FilesState
+ IDE.Pane.Files: instance Typeable IDEFiles
+ IDE.Pane.Files: scrolledView :: IDEFiles -> ScrolledWindow
+ IDE.Pane.Files: treeView :: IDEFiles -> TreeView
+ IDE.Pane.Grep: activeGrep :: IDEGrep -> MVar Bool
+ IDE.Pane.Grep: grepStore :: IDEGrep -> TreeStore GrepRecord
+ IDE.Pane.Grep: instance Eq GrepState
+ IDE.Pane.Grep: instance Ord GrepState
+ IDE.Pane.Grep: instance Pane IDEGrep IDEM
+ IDE.Pane.Grep: instance Read GrepState
+ IDE.Pane.Grep: instance RecoverablePane IDEGrep GrepState IDEM
+ IDE.Pane.Grep: instance Show GrepState
+ IDE.Pane.Grep: instance Typeable GrepState
+ IDE.Pane.Grep: instance Typeable IDEGrep
+ IDE.Pane.Grep: scrolledView :: IDEGrep -> ScrolledWindow
+ IDE.Pane.Grep: treeView :: IDEGrep -> TreeView
+ IDE.Pane.Grep: waitingGrep :: IDEGrep -> MVar Bool
+ IDE.Pane.HLint: instance Eq HLintState
+ IDE.Pane.HLint: instance Ord HLintState
+ IDE.Pane.HLint: instance Pane IDEHLint IDEM
+ IDE.Pane.HLint: instance Read HLintState
+ IDE.Pane.HLint: instance RecoverablePane IDEHLint HLintState IDEM
+ IDE.Pane.HLint: instance Show HLintState
+ IDE.Pane.HLint: instance Typeable HLintState
+ IDE.Pane.HLint: instance Typeable IDEHLint
+ IDE.Pane.Info: instance Eq InfoState
+ IDE.Pane.Info: instance Ord InfoState
+ IDE.Pane.Info: instance Pane IDEInfo IDEM
+ IDE.Pane.Info: instance Read InfoState
+ IDE.Pane.Info: instance RecoverablePane IDEInfo InfoState IDEM
+ IDE.Pane.Info: instance Show InfoState
+ IDE.Pane.Info: instance Typeable IDEInfo
+ IDE.Pane.Info: instance Typeable InfoState
+ IDE.Pane.Log: instance Eq LogState
+ IDE.Pane.Log: instance Ord LogState
+ IDE.Pane.Log: instance Pane IDELog IDEM
+ IDE.Pane.Log: instance Read LogState
+ IDE.Pane.Log: instance RecoverablePane IDELog LogState IDEM
+ IDE.Pane.Log: instance Show LogState
+ IDE.Pane.Log: instance Typeable IDELog
+ IDE.Pane.Log: instance Typeable LogState
+ IDE.Pane.Log: logButtons :: IDELog -> HBox
+ IDE.Pane.Log: logLaunchBox :: IDELog -> ComboBox
+ IDE.Pane.Log: logLaunchTextView :: IDELog -> TextView
+ IDE.Pane.Log: logMainContainer :: IDELog -> VBox
+ IDE.Pane.Modules: blacklistB :: IDEModules -> CheckButton
+ IDE.Pane.Modules: dependsB :: IDEModules -> CheckButton
+ IDE.Pane.Modules: descrSortedStore :: IDEModules -> TypedTreeModelSort Descr
+ IDE.Pane.Modules: descrStore :: IDEModules -> TreeStore Descr
+ IDE.Pane.Modules: descrView :: IDEModules -> TreeView
+ IDE.Pane.Modules: expanderState :: IDEModules -> IORef ExpanderState
+ IDE.Pane.Modules: instance Eq ExpanderState
+ IDE.Pane.Modules: instance Eq ModulesState
+ IDE.Pane.Modules: instance Eq SelectionState
+ IDE.Pane.Modules: instance Ord ExpanderState
+ IDE.Pane.Modules: instance Ord ModulesState
+ IDE.Pane.Modules: instance Ord SelectionState
+ IDE.Pane.Modules: instance Ord a => Ord (Tree a)
+ IDE.Pane.Modules: instance Pane IDEModules IDEM
+ IDE.Pane.Modules: instance Read ExpanderState
+ IDE.Pane.Modules: instance Read ModulesState
+ IDE.Pane.Modules: instance RecoverablePane IDEModules ModulesState IDEM
+ IDE.Pane.Modules: instance Show ExpanderState
+ IDE.Pane.Modules: instance Show ModulesState
+ IDE.Pane.Modules: instance Show SelectionState
+ IDE.Pane.Modules: instance Typeable IDEModules
+ IDE.Pane.Modules: instance Typeable ModulesState
+ IDE.Pane.Modules: oldSelection :: IDEModules -> IORef SelectionState
+ IDE.Pane.Modules: outer :: IDEModules -> VBox
+ IDE.Pane.Modules: packageDExp :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: packageDExpNoBlack :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: packageExp :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: packageExpNoBlack :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: packageScopeB :: IDEModules -> RadioButton
+ IDE.Pane.Modules: paned :: IDEModules -> HPaned
+ IDE.Pane.Modules: systemExp :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: systemExpNoBlack :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: systemScopeB :: IDEModules -> RadioButton
+ IDE.Pane.Modules: treeStore :: IDEModules -> TreeStore ModuleRecord
+ IDE.Pane.Modules: treeView :: IDEModules -> TreeView
+ IDE.Pane.Modules: workspaceDExp :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: workspaceDExpNoBlack :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: workspaceExp :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: workspaceExpNoBlack :: ExpanderState -> ExpanderFacet
+ IDE.Pane.Modules: workspaceScopeB :: IDEModules -> RadioButton
+ IDE.Pane.PackageEditor: instance Default Benchmark'
+ IDE.Pane.PackageEditor: instance Default BuildInfo
+ IDE.Pane.PackageEditor: instance Default BuildType
+ IDE.Pane.PackageEditor: instance Default CompilerFlavor
+ IDE.Pane.PackageEditor: instance Default Executable
+ IDE.Pane.PackageEditor: instance Default Executable'
+ IDE.Pane.PackageEditor: instance Default Library
+ IDE.Pane.PackageEditor: instance Default Library'
+ IDE.Pane.PackageEditor: instance Default RepoKind
+ IDE.Pane.PackageEditor: instance Default RepoType
+ IDE.Pane.PackageEditor: instance Default SourceRepo
+ IDE.Pane.PackageEditor: instance Default Test'
+ IDE.Pane.PackageEditor: instance Eq Benchmark'
+ IDE.Pane.PackageEditor: instance Eq Executable'
+ IDE.Pane.PackageEditor: instance Eq Library'
+ IDE.Pane.PackageEditor: instance Eq PackageDescriptionEd
+ IDE.Pane.PackageEditor: instance Eq Test'
+ IDE.Pane.PackageEditor: instance Pane PackagePane IDEM
+ IDE.Pane.PackageEditor: instance Read PackageState
+ IDE.Pane.PackageEditor: instance RecoverablePane PackagePane PackageState IDEM
+ IDE.Pane.PackageEditor: instance Show Benchmark'
+ IDE.Pane.PackageEditor: instance Show Executable'
+ IDE.Pane.PackageEditor: instance Show Library'
+ IDE.Pane.PackageEditor: instance Show PackageState
+ IDE.Pane.PackageEditor: instance Show Test'
+ IDE.Pane.PackageEditor: instance Typeable PackagePane
+ IDE.Pane.PackageEditor: instance Typeable PackageState
+ IDE.Pane.PackageFlags: flagsBox :: IDEFlags -> VBox
+ IDE.Pane.PackageFlags: instance Eq FlagsState
+ IDE.Pane.PackageFlags: instance Ord FlagsState
+ IDE.Pane.PackageFlags: instance Pane IDEFlags IDEM
+ IDE.Pane.PackageFlags: instance Read FlagsState
+ IDE.Pane.PackageFlags: instance RecoverablePane IDEFlags FlagsState IDEM
+ IDE.Pane.PackageFlags: instance Show FlagsState
+ IDE.Pane.PackageFlags: instance Typeable FlagsState
+ IDE.Pane.PackageFlags: instance Typeable IDEFlags
+ IDE.Pane.Preferences: instance Eq PrefsState
+ IDE.Pane.Preferences: instance Ord PrefsState
+ IDE.Pane.Preferences: instance Pane IDEPrefs IDEM
+ IDE.Pane.Preferences: instance Read PrefsState
+ IDE.Pane.Preferences: instance RecoverablePane IDEPrefs PrefsState IDEM
+ IDE.Pane.Preferences: instance Show PrefsState
+ IDE.Pane.Preferences: instance Typeable IDEPrefs
+ IDE.Pane.Preferences: instance Typeable PrefsState
+ IDE.Pane.Preferences: prefsBox :: IDEPrefs -> VBox
+ IDE.Pane.Search: entry :: IDESearch -> Entry
+ IDE.Pane.Search: instance Eq SearchState
+ IDE.Pane.Search: instance Ord SearchState
+ IDE.Pane.Search: instance Pane IDESearch IDEM
+ IDE.Pane.Search: instance Read SearchState
+ IDE.Pane.Search: instance RecoverablePane IDESearch SearchState IDEM
+ IDE.Pane.Search: instance Show SearchState
+ IDE.Pane.Search: instance Typeable IDESearch
+ IDE.Pane.Search: instance Typeable SearchState
+ IDE.Pane.Search: modeSelection :: IDESearch -> SearchMode -> IDEAction
+ IDE.Pane.Search: scopeSelection :: IDESearch -> Scope -> IDEAction
+ IDE.Pane.Search: scrolledView :: IDESearch -> ScrolledWindow
+ IDE.Pane.Search: searchMetaGUI :: IDESearch -> Text -> IDEAction
+ IDE.Pane.Search: searchModeRef :: IDESearch -> IORef SearchMode
+ IDE.Pane.Search: searchScopeRef :: IDESearch -> IORef Scope
+ IDE.Pane.Search: searchStore :: IDESearch -> ListStore Descr
+ IDE.Pane.Search: setChoices :: IDESearch -> [Descr] -> IDEAction
+ IDE.Pane.Search: topBox :: IDESearch -> VBox
+ IDE.Pane.Search: treeView :: IDESearch -> TreeView
+ IDE.Pane.SourceBuffer: addedIndex :: IDEBuffer -> Int
+ IDE.Pane.SourceBuffer: bufferName :: IDEBuffer -> Text
+ IDE.Pane.SourceBuffer: fileName :: IDEBuffer -> Maybe FilePath
+ IDE.Pane.SourceBuffer: instance Eq CharacterCategory
+ IDE.Pane.SourceBuffer: instance RecoverablePane IDEBuffer BufferState IDEM
+ IDE.Pane.SourceBuffer: modTime :: IDEBuffer -> IORef (Maybe UTCTime)
+ IDE.Pane.SourceBuffer: mode :: IDEBuffer -> Mode
+ IDE.Pane.SourceBuffer: removeLintLogRefs :: FilePath -> FilePath -> IDEAction
+ IDE.Pane.SourceBuffer: removeTestLogRefs :: FilePath -> IDEAction
+ IDE.Pane.SourceBuffer: scrolledWindow :: IDEBuffer -> ScrolledWindow
+ IDE.Pane.SourceBuffer: sourceView :: IDEBuffer -> EditorView editor
+ IDE.Pane.Trace: instance Eq TraceState
+ IDE.Pane.Trace: instance Ord TraceState
+ IDE.Pane.Trace: instance Pane IDETrace IDEM
+ IDE.Pane.Trace: instance Read TraceState
+ IDE.Pane.Trace: instance RecoverablePane IDETrace TraceState IDEM
+ IDE.Pane.Trace: instance Show TraceState
+ IDE.Pane.Trace: instance Typeable IDETrace
+ IDE.Pane.Trace: instance Typeable TraceState
+ IDE.Pane.Variables: instance Eq VariablesState
+ IDE.Pane.Variables: instance Ord VariablesState
+ IDE.Pane.Variables: instance Pane IDEVariables IDEM
+ IDE.Pane.Variables: instance Read VariablesState
+ IDE.Pane.Variables: instance RecoverablePane IDEVariables VariablesState IDEM
+ IDE.Pane.Variables: instance Show VariablesState
+ IDE.Pane.Variables: instance Typeable IDEVariables
+ IDE.Pane.Variables: instance Typeable VariablesState
+ IDE.Pane.WebKit.Documentation: instance Eq DocumentationState
+ IDE.Pane.WebKit.Documentation: instance Ord DocumentationState
+ IDE.Pane.WebKit.Documentation: instance Pane IDEDocumentation IDEM
+ IDE.Pane.WebKit.Documentation: instance Read DocumentationState
+ IDE.Pane.WebKit.Documentation: instance RecoverablePane IDEDocumentation DocumentationState IDEM
+ IDE.Pane.WebKit.Documentation: instance Show DocumentationState
+ IDE.Pane.WebKit.Documentation: instance Typeable DocumentationState
+ IDE.Pane.WebKit.Documentation: instance Typeable IDEDocumentation
+ IDE.Pane.WebKit.Documentation: scrolledView :: IDEDocumentation -> ScrolledWindow
+ IDE.Pane.WebKit.Documentation: uri :: DocumentationState -> Maybe Text
+ IDE.Pane.WebKit.Documentation: webView :: IDEDocumentation -> WebView
+ IDE.Pane.WebKit.Documentation: zoom :: DocumentationState -> Float
+ IDE.Pane.WebKit.Inspect: inspectView :: IDEInspect -> WebView
+ IDE.Pane.WebKit.Inspect: instance Eq InspectState
+ IDE.Pane.WebKit.Inspect: instance Ord InspectState
+ IDE.Pane.WebKit.Inspect: instance Pane IDEInspect IDEM
+ IDE.Pane.WebKit.Inspect: instance Read InspectState
+ IDE.Pane.WebKit.Inspect: instance RecoverablePane IDEInspect InspectState IDEM
+ IDE.Pane.WebKit.Inspect: instance Show InspectState
+ IDE.Pane.WebKit.Inspect: instance Typeable IDEInspect
+ IDE.Pane.WebKit.Inspect: instance Typeable InspectState
+ IDE.Pane.WebKit.Inspect: scrollWin :: IDEInspect -> ScrolledWindow
+ IDE.Pane.WebKit.Output: alwaysHtml :: OutputState -> Bool
+ IDE.Pane.WebKit.Output: alwaysHtmlRef :: IDEOutput -> IORef Bool
+ IDE.Pane.WebKit.Output: instance Eq OutputState
+ IDE.Pane.WebKit.Output: instance Ord OutputState
+ IDE.Pane.WebKit.Output: instance Pane IDEOutput IDEM
+ IDE.Pane.WebKit.Output: instance Read OutputState
+ IDE.Pane.WebKit.Output: instance RecoverablePane IDEOutput OutputState IDEM
+ IDE.Pane.WebKit.Output: instance Show OutputState
+ IDE.Pane.WebKit.Output: instance Typeable IDEOutput
+ IDE.Pane.WebKit.Output: instance Typeable OutputState
+ IDE.Pane.WebKit.Output: uriEntry :: IDEOutput -> Entry
+ IDE.Pane.WebKit.Output: vbox :: IDEOutput -> VBox
+ IDE.Pane.WebKit.Output: webView :: IDEOutput -> WebView
+ IDE.Pane.WebKit.Output: zoom :: OutputState -> Float
+ IDE.Pane.Workspace: instance Eq WorkspaceState
+ IDE.Pane.Workspace: instance Ord WorkspaceState
+ IDE.Pane.Workspace: instance Pane IDEWorkspace IDEM
+ IDE.Pane.Workspace: instance Read WorkspaceState
+ IDE.Pane.Workspace: instance RecoverablePane IDEWorkspace WorkspaceState IDEM
+ IDE.Pane.Workspace: instance Show WorkspaceState
+ IDE.Pane.Workspace: instance Typeable IDEWorkspace
+ IDE.Pane.Workspace: instance Typeable WorkspaceState
+ IDE.Session: instance Eq PaneState
+ IDE.Session: instance Ord PaneState
+ IDE.Session: instance Read PaneState
+ IDE.Session: instance Show PaneState
+ IDE.SymbolNavigation: instance Eq Locality
+ IDE.SymbolNavigation: instance Ord Locality
+ IDE.SymbolNavigation: instance Show Locality
+ IDE.TextEditor.Class: breakpointBG :: EditorStyle -> (Color, Color)
+ IDE.TextEditor.Class: contextBG :: EditorStyle -> (Color, Color)
+ IDE.TextEditor.Class: foundBG :: EditorStyle -> (Color, Color)
+ IDE.TextEditor.Class: lintBG :: EditorStyle -> (Color, Color)
+ IDE.TextEditor.Class: matchBG :: EditorStyle -> (Color, Color)
+ IDE.TextEditor.Class: preferDark :: EditorStyle -> Bool
+ IDE.TextEditor.Class: styleName :: EditorStyle -> Maybe Text
+ IDE.TextEditor.CodeMirror: instance Show CodeMirror
+ IDE.TextEditor.CodeMirror: instance TextEditor CodeMirror
+ IDE.TextEditor.CodeMirror: instance Typeable CodeMirror
+ IDE.TextEditor.GtkSourceView: instance Show GtkSourceView
+ IDE.TextEditor.GtkSourceView: instance TextEditor GtkSourceView
+ IDE.TextEditor.GtkSourceView: instance Typeable GtkSourceView
+ IDE.TextEditor.Yi: instance Show Yi
+ IDE.TextEditor.Yi: instance Typeable Yi
+ IDE.Utils.ExternalTool: showProcessHandle :: ProcessHandle -> IO String
- IDE.Core.State: catchIDE :: Exception e => IDEM a -> (e -> IO a) -> IDEM a
+ IDE.Core.State: catchIDE :: (MonadIDE m, Exception e) => IDEM a -> (e -> IO a) -> m a
- IDE.Core.State: forkIDE :: IDEAction -> IDEAction
+ IDE.Core.State: forkIDE :: MonadIDE m => IDEAction -> m ()
- IDE.Core.State: postAsyncIDE :: IDEM () -> IDEM ()
+ IDE.Core.State: postAsyncIDE :: MonadIDE m => IDEM () -> m ()
- IDE.Core.State: postSyncIDE :: IDEM a -> IDEM a
+ IDE.Core.State: postSyncIDE :: MonadIDE m => IDEM a -> m a
- IDE.Core.Types: ErrorChanged :: IDEEvent
+ IDE.Core.Types: ErrorChanged :: Bool -> IDEEvent
- IDE.Pane.Errors: fillErrorList :: IDEAction
+ IDE.Pane.Errors: fillErrorList :: Bool -> IDEAction
- IDE.Pane.SourceBuffer: addLogRef :: LogRef -> IDEAction
+ IDE.Pane.SourceBuffer: addLogRef :: Bool -> Bool -> LogRef -> IDEAction
- IDE.Pane.SourceBuffer: removeLogRefs :: [LogRefType] -> FilePath -> FilePath -> IDEAction
+ IDE.Pane.SourceBuffer: removeLogRefs :: (FilePath -> FilePath -> Bool) -> [LogRefType] -> IDEAction
- IDE.TextEditor: createMark :: TextEditor editor => EditorView editor -> LogRefType -> EditorIter editor -> Text -> IDEM (EditorMark editor)
+ IDE.TextEditor: createMark :: TextEditor editor => EditorView editor -> LogRefType -> EditorIter editor -> Text -> IDEM ()
- IDE.TextEditor.Class: createMark :: TextEditor editor => EditorView editor -> LogRefType -> EditorIter editor -> Text -> IDEM (EditorMark editor)
+ IDE.TextEditor.Class: createMark :: TextEditor editor => EditorView editor -> LogRefType -> EditorIter editor -> Text -> IDEM ()
- IDE.TextEditor.CodeMirror: createMark :: TextEditor editor => EditorView editor -> LogRefType -> EditorIter editor -> Text -> IDEM (EditorMark editor)
+ IDE.TextEditor.CodeMirror: createMark :: TextEditor editor => EditorView editor -> LogRefType -> EditorIter editor -> Text -> IDEM ()
- IDE.TextEditor.GtkSourceView: createMark :: TextEditor editor => EditorView editor -> LogRefType -> EditorIter editor -> Text -> IDEM (EditorMark editor)
+ IDE.TextEditor.GtkSourceView: createMark :: TextEditor editor => EditorView editor -> LogRefType -> EditorIter editor -> Text -> IDEM ()
Files
- Readme.md +1/−1
- leksah.cabal +7/−7
- osx/makedmgs.sh +3/−0
- scripts/clean.sh +0/−10
- src/IDE/Command.hs +1/−1
- src/IDE/Core/State.hs +4/−4
- src/IDE/Core/Types.hs +2/−2
- src/IDE/Debug.hs +4/−3
- src/IDE/HLint.hs +16/−14
- src/IDE/ImportTool.hs +11/−8
- src/IDE/Leksah.hs +15/−10
- src/IDE/LogRef.hs +4/−4
- src/IDE/OSX.hs +3/−0
- src/IDE/Package.hs +38/−13
- src/IDE/Pane/Errors.hs +19/−8
- src/IDE/Pane/SourceBuffer.hs +68/−27
- src/IDE/Session.hs +1/−1
- src/IDE/TextEditor/Class.hs +1/−1
- src/IDE/TextEditor/CodeMirror.hs +2/−1
- src/IDE/TextEditor/GtkSourceView.hs +5/−2
- src/IDE/Utils/ExternalTool.hs +60/−19
Readme.md view
@@ -50,7 +50,7 @@ Use MacPorts to install GHC and the C libraries needed by Leksah (this will take a long time): - sudo port install ghc gtk3 webkit-gtk3 gtksourceview3 gtk-osx-application adwaita-icon-theme+ sudo port install ghc gtk3 webkit-gtk3 gtksourceview3 gtk-osx-application-gtk3 adwaita-icon-theme Update Cabal and cabal-install
leksah.cabal view
@@ -1,5 +1,5 @@ name: leksah-version: 0.15.1.0+version: 0.15.1.1 cabal-version: >=1.18 build-type: Simple license: GPL@@ -208,7 +208,7 @@ if os(osx) build-depends:- gtk3-mac-integration >=0.3.0.0 && <0.4+ gtk3-mac-integration >=0.3.1.0 && <0.4 if flag(yi) build-depends:@@ -333,11 +333,11 @@ utf8-string >=0.3.1.1 && <1.1, array >=0.2.0.0 && <0.6, time >=0.1 && <1.6,- ltk >=0.15.0.1 && <0.16,+ ltk >=0.15.0.2 && <0.16, binary-shared >=0.8 && <0.9, deepseq >=1.1.0.0 && <1.5, hslogger >=1.0.7 && <1.3,- leksah-server >=0.15.0.4 && <0.16,+ leksah-server >=0.15.0.6 && <0.16, ghc >=6.10.1 && <7.11, strict >=0.3.2 && <0.4, conduit >=1.0.8 && <1.3,@@ -389,7 +389,7 @@ ghc-options: -optl-headerpad_max_install_names main-is: Main.hs build-depends:- leksah ==0.15.1.0,+ leksah ==0.15.1.1, base >=4.0.0.0 && <=4.9, gtk3 >=0.13.9 && <0.14, stm >=2.4.4 && <2.5@@ -400,7 +400,7 @@ executable bewleksah main-is: Main.hs build-depends:- leksah ==0.15.1.0,+ leksah ==0.15.1.1, base >=4.0.0.0 && <=4.9, jsaddle -any, ghcjs-dom -any,@@ -424,7 +424,7 @@ base >=4.0.0.0 && <4.9, Cabal >=1.10.2.0 && <1.23, QuickCheck >=2.4.2 && <2.9,- leksah ==0.15.1.0,+ leksah ==0.15.1.1, containers -any, ltk -any, leksah-server -any,
osx/makedmgs.sh view
@@ -7,3 +7,6 @@ scripts/clean.sh osx/makedmg.sh +scp osx/leksah-0.15.1.1-ghc-7.8.3.dmg server:.+scp osx/leksah-0.15.1.1-ghc-7.10.1.dmg server:.+
scripts/clean.sh view
@@ -10,18 +10,8 @@ ghc-pkg$GHCVERSION unregister --force jsaddle || true ghc-pkg$GHCVERSION unregister --force gtksourceview2 || true ghc-pkg$GHCVERSION unregister --force gtksourceview3 || true-ghc-pkg$GHCVERSION unregister --force webkit-javascriptcore || true-ghc-pkg$GHCVERSION unregister --force webkitgtk3-javascriptcore || true-ghc-pkg$GHCVERSION unregister --force webkit || true-ghc-pkg$GHCVERSION unregister --force webkitgtk3 || true ghc-pkg$GHCVERSION unregister --force gtk-mac-integration || true ghc-pkg$GHCVERSION unregister --force gtk3-mac-integration || true-ghc-pkg$GHCVERSION unregister --force gtk || true-ghc-pkg$GHCVERSION unregister --force gtk3 || true-ghc-pkg$GHCVERSION unregister --force pango || true-ghc-pkg$GHCVERSION unregister --force cairo || true-ghc-pkg$GHCVERSION unregister --force gio || true-ghc-pkg$GHCVERSION unregister --force glib || true ghc-pkg$GHCVERSION unregister --force hlint || true rm -rf vendor/*/dist \
src/IDE/Command.hs view
@@ -918,7 +918,7 @@ registerEvent stRef "VariablesChanged" (\ e@VariablesChanged -> fillVariablesListQuiet >> return e) registerEvent stRef "ErrorChanged"- (\ e@ErrorChanged -> postAsyncIDE fillErrorList >> return e)+ (\ e@(ErrorChanged show') -> postAsyncIDE (fillErrorList show') >> return e) registerEvent stRef "CurrentErrorChanged" (\ e@(CurrentErrorChanged mbLogRef) -> postAsyncIDE (do selectRef mbLogRef
src/IDE/Core/State.hs view
@@ -313,16 +313,16 @@ liftYi :: Yi.YiM a -> IDEM a liftYi = liftYiControl . Yi.liftYi -catchIDE :: Exception e => IDEM a -> (e -> IO a) -> IDEM a+catchIDE :: (MonadIDE m, Exception e) => IDEM a -> (e -> IO a) -> m a catchIDE block handler = reifyIDE (\ideR -> catch (reflectIDE block ideR) handler) -forkIDE :: IDEAction -> IDEAction+forkIDE :: MonadIDE m => IDEAction -> m () forkIDE block = reifyIDE (void . forkIO . reflectIDE block) -postSyncIDE :: IDEM a -> IDEM a+postSyncIDE :: MonadIDE m => IDEM a -> m a postSyncIDE f = reifyIDE (postGUISync . reflectIDE f) -postAsyncIDE :: IDEM () -> IDEM ()+postAsyncIDE :: MonadIDE m => IDEM () -> m () postAsyncIDE f = reifyIDE (postGUIAsync . reflectIDE f) onIDE obj signal callback = do
src/IDE/Core/Types.hs view
@@ -288,7 +288,7 @@ | SaveSession FilePath | UpdateRecent | VariablesChanged- | ErrorChanged+ | ErrorChanged Bool | CurrentErrorChanged (Maybe LogRef) | BreakpointChanged | CurrentBreakChanged (Maybe LogRef)@@ -314,7 +314,7 @@ getSelector (SaveSession _) = "SaveSession" getSelector UpdateRecent = "UpdateRecent" getSelector VariablesChanged = "VariablesChanged"- getSelector ErrorChanged = "ErrorChanged"+ getSelector (ErrorChanged _) = "ErrorChanged" getSelector (CurrentErrorChanged _) = "CurrentErrorChanged" getSelector BreakpointChanged = "BreakpointChanged" getSelector (CurrentBreakChanged _) = "CurrentBreakChanged"
src/IDE/Debug.hs view
@@ -74,7 +74,7 @@ import IDE.Metainfo.Provider (getActivePackageDescr) import Distribution.Text (display) import IDE.Pane.Log-import Data.List (stripPrefix, isSuffixOf)+import Data.List (intersperse, stripPrefix, isSuffixOf) import IDE.Utils.GUIUtils (getDebugToggled) import IDE.Package (debugStart, executeDebugCommand, tryDebug, printBindResultFlag, breakOnErrorFlag, breakOnExceptionFlag, printEvldWithShowFlag)@@ -90,7 +90,8 @@ import Data.Monoid ((<>), Monoid(..)) import Data.Text (Text) import qualified Data.Text as T- (pack, lines, stripPrefix, unlines, isSuffixOf, unpack)+ (concat, intersperse, pack, lines, stripPrefix, unlines,+ isSuffixOf, unpack) import System.Exit (ExitCode(..)) import IDE.Pane.WebKit.Output (loadOutputUri) @@ -134,7 +135,7 @@ -- -- > stripComments "-- This is still a comment" stripComments :: Text -> Text-stripComments t = maybe t T.unlines $+stripComments t = maybe t (T.concat . intersperse "\n") $ mapM (T.stripPrefix "-- >>>") lines' <|> mapM (T.stripPrefix "-- >") lines' where
src/IDE/HLint.hs view
@@ -51,13 +51,13 @@ (defaultCpphsOptions, runCpphsReturningSymTab, CpphsOptions(..)) import System.Log.Logger (debugM) import Data.Monoid ((<>))-import Data.List (intercalate, find)+import Data.List (sortBy, intercalate, find) import qualified Data.Map as M (keys, lookup) import qualified Data.Text as T (replicate, init, unlines, reverse, take, drop, lines, unpack, pack) import Control.Exception (SomeException(..))-import Data.Maybe (mapMaybe, catMaybes)+import Data.Maybe (isJust, mapMaybe, catMaybes) import Distribution.Package (PackageIdentifier(..)) import Distribution.ModuleName (ModuleName) import IDE.Core.CTypes@@ -68,13 +68,14 @@ (SrcLoc(..), SrcSpan(..)) import IDE.Pane.SourceBuffer (useCandyFor, selectSourceBuf, fileSave, inActiveBufContext,- addLogRef, belongsToPackage, removeLogRefs)+ addLogRef, belongsToPackage, removeLintLogRefs) import qualified Data.Text.IO as T (readFile) import Data.Text (Text) import IDE.TextEditor (TextEditor(..)) import IDE.SourceCandy (getCandylessPart, positionToCandy, stringToCandy) import IDE.BufferMode (editInsertCode)+import Data.Ord (comparing) packageHLint :: PackageAction packageHLint = asks ipdCabalFile >>= (lift . lift . scheduleHLint . Left)@@ -108,8 +109,8 @@ runHLint (Right sourceFile) = do liftIO . debugM "leksah" $ "runHLint" packages <- maybe [] wsAllPackages <$> readIDE workspace- case find (belongsToPackage sourceFile) packages of- Just package -> runHLint' package (Just sourceFile)+ case reverse . (sortBy $ comparing (length . ipdBuildDir)) $ filter (belongsToPackage sourceFile) packages of+ (package:_) -> runHLint' package (Just sourceFile) _ -> liftIO . debugM "leksah" $ "runHLint package not found for " <> sourceFile runHLint (Left cabalFile) = do liftIO . debugM "leksah" $ "runHLint"@@ -129,12 +130,12 @@ Nothing -> getSourcePaths (ipdPackageId package) modules res <- forM paths $ \ full -> do let file = makeRelative (ipdBuildDir package) full- postSyncIDE $ removeLogRefs [LintRef] (ipdBuildDir package) file+ postSyncIDE $ removeLintLogRefs (ipdBuildDir package) file text <- liftIO $ T.readFile full liftIO . debugM "leksah" $ "runHLint parsing " <> full do result <- liftIO $ parseModuleEx flags full (Just (T.unpack text)) case result of- Left e -> logHLintError package e >> return Nothing+ Left e -> logHLintError (isJust mbSourceFile) package e >> return Nothing Right r -> do liftIO . debugM "leksah" $ "runHLint parsed " <> full return $ Just (r, (full, text))@@ -146,7 +147,7 @@ ideas = map fst results texts = map snd results getText f = maybe "" snd $ find (equalFilePath f . fst) texts- logHLintResult package (applyHints classify hint ideas) getText+ logHLintResult (isJust mbSourceFile) package (applyHints classify hint ideas) getText getSourcePaths :: PackageIdentifier -> [ModuleName] -> IDEM [FilePath]@@ -183,8 +184,8 @@ liftIO . debugM "leksah" $ "hlintSettings defines = " <> show defines return (flags, classify, hint) -logHLintResult :: IDEPackage -> [Idea] -> (FilePath -> Text) -> IDEAction-logHLintResult package allIdeas getText = do+logHLintResult :: Bool -> IDEPackage -> [Idea] -> (FilePath -> Text) -> IDEAction+logHLintResult fileScope package allIdeas getText = do let ideas = filter (\Idea{..} -> ideaSeverity /= Ignore) allIdeas forM_ ideas $ \ idea@Idea{..} -> do let text = getText (HSE.srcSpanFilename ideaSpan)@@ -204,11 +205,11 @@ . T.unlines . fixHead . reverse . fixTail $ reverse fromLines ref = LogRef srcSpan package (T.pack $ showHLint idea) (Just (from, idea)) Nothing LintRef- postSyncIDE $ addLogRef ref+ postSyncIDE $ addLogRef fileScope fileScope ref return () -logHLintError :: IDEPackage -> ParseError -> IDEAction-logHLintError package error = do+logHLintError :: Bool -> IDEPackage -> ParseError -> IDEAction+logHLintError fileScope package error = do let loc = parseErrorLocation error srcSpan = SrcSpan (makeRelative (ipdBuildDir package) $ HSE.srcFilename loc) (HSE.srcLine loc)@@ -216,7 +217,7 @@ (HSE.srcLine loc) (HSE.srcColumn loc - 1) ref = LogRef srcSpan package ("Hlint Parse Error: " <> T.pack (parseErrorMessage error)) Nothing Nothing LintRef- postSyncIDE $ addLogRef ref+ postSyncIDE $ addLogRef fileScope fileScope ref -- Cut down version of showEx from HLint showHLint :: Idea -> String@@ -236,6 +237,7 @@ resolveActiveHLint :: IDEM Bool resolveActiveHLint = inActiveBufContext False $ \_ _ ebuf _ _ -> do+ liftIO $ debugM "leksah" "resolveActiveHLint" allLogRefs <- readIDE allLogRefs (iStart, iEnd) <- getSelectionBounds ebuf lStart <- getLine iStart
src/IDE/ImportTool.hs view
@@ -76,6 +76,7 @@ import Language.Haskell.Exts (KnownExtension) import Data.Text (Text) import Data.Monoid ((<>))+import System.Log.Logger (debugM) readMaybe :: Read a => Text -> Maybe a readMaybe s = case reads $ T.unpack s of@@ -85,6 +86,7 @@ -- | Add all imports which gave error messages ... resolveErrors :: IDEAction resolveErrors = do+ liftIO $ debugM "leksah" "resolveErrors" prefs' <- readIDE prefs let buildInBackground = backgroundBuild prefs' when buildInBackground $@@ -99,12 +101,9 @@ nubBy (\ (p1,_) (p2,_) -> p1 == p2) [(x,y) | (x,y) <- [((parsePerhapsYouIntendedToUse . refDescription) e, e) | e <- errors]], length x == 1]- when (not (or addPackageResults) && null notInScopes && null extensions) $ do- hlintResolved <- resolveActiveHLint- unless hlintResolved $ ideMessage Normal "No errors, warnings or selected hlints that can be auto resolved"- addAll buildInBackground notInScopes extensions+ addAll addPackageResults buildInBackground notInScopes extensions where- addAll buildInBackground notInScopes extensions = addAllImports notInScopes (True,[])+ addAll addPackageResults buildInBackground notInScopes extensions = addAllImports notInScopes (True,[]) where addAllImports :: [LogRef] -> (Bool,[Descr]) -> IDEM () addAllImports (errorSpec:rest) (True,descrList) = addImport errorSpec descrList (addAllImports rest)@@ -114,9 +113,13 @@ addAllExtensions (errorSpec:rest) True = addExtension errorSpec (addAllExtensions rest) addAllExtensions _ _ = finally - finally = when buildInBackground $ do- prefs' <- readIDE prefs- modifyIDE_ (\ide -> ide{prefs = prefs'{backgroundBuild = True}})+ finally = do+ when buildInBackground $ do+ prefs' <- readIDE prefs+ modifyIDE_ (\ide -> ide{prefs = prefs'{backgroundBuild = True}})+ when (not (or addPackageResults) && null notInScopes && null extensions) $ do+ hlintResolved <- resolveActiveHLint+ unless hlintResolved $ ideMessage Normal "No errors, warnings or selected hlints that can be auto resolved" -- | Add import for current error ... addOneImport :: IDEAction
src/IDE/Leksah.hs view
@@ -214,11 +214,13 @@ startGUI :: Yi.Config -> FilePath -> Maybe FilePath -> [FilePath] -> Prefs -> Bool -> IO () startGUI yiConfig sessionFP mbWorkspaceFP sourceFPs iprefs isFirstStart = Yi.start yiConfig $ \yiControl -> do- st <- unsafeInitGUIForThreadedRTS- when rtsSupportsBoundThreads $ do- setNumCapabilities 2- sysMessage Normal "Linked with -threaded"- timeout <- timeoutAddFull (yield >> return True) priorityLow 10+ st <- unsafeInitGUIForThreadedRTS+ timeout <- if rtsSupportsBoundThreads+ then do+ setNumCapabilities 2+ sysMessage Normal "Linked with -threaded"+ return Nothing+ else Just <$> timeoutAddFull (yield >> return True) priorityLow 10 mbScreen <- screenGetDefault case mbScreen of Just screen -> do@@ -238,7 +240,6 @@ styleContextAddProviderForScreen screen provider 600 Nothing -> debugM "leksah" "Unable to add style provider for screen" mapM_ (sysMessage Normal . T.pack) st- initGtkRc dataDir <- getDataDir mbStartupPrefs <- if not isFirstStart then return $ Just iprefs@@ -250,7 +251,7 @@ prefsPath <- getConfigFilePathForLoad standardPreferencesFilename Nothing dataDir prefs <- readPrefs prefsPath return $ Just prefs- timeoutRemove timeout+ maybe (return ()) timeoutRemove timeout postGUIAsync $ case mbStartupPrefs of Nothing -> return ()@@ -272,7 +273,7 @@ active <- newEmptyMVar mvarSentIdleMessage <- newEmptyMVar idleThread <- forkIO $ do- threadDelay 50000+ threadDelay 200000 isActive <- isJust <$> tryTakeMVar active unless isActive $ do putMVar mvarSentIdleMessage ()@@ -332,7 +333,9 @@ startMainWindow :: Yi.Control -> FilePath -> Maybe FilePath -> [FilePath] -> Prefs -> Bool -> IO () startMainWindow yiControl sessionFP mbWorkspaceFP sourceFPs startupPrefs isFirstStart = do- timeout <- timeoutAddFull (yield >> return True) priorityLow 10+ timeout <- if rtsSupportsBoundThreads+ then return Nothing+ else Just <$> timeoutAddFull (yield >> return True) priorityLow 10 debugM "leksah" "startMainWindow" osxApp <- OSX.applicationNew uiManager <- uiManagerNew@@ -422,6 +425,8 @@ return pair ) ideR + on win realize $ widgetGetWindow win >>= maybe (return ()) OSX.allowFullscreen+ debugM "leksah" "Show main window" widgetShowAll win @@ -460,7 +465,7 @@ workspaceTryQuiet $ void (workspaceAddPackage' welcomeCabal) fileOpenThis welcomeMain) ideR reflectIDE (initInfo (modifyIDE_ (\ide -> ide{currentState = IsRunning}))) ideR- timeoutRemove timeout+ maybe (return ()) timeoutRemove timeout postGUIAsync . mainLoop $ reflectIDE (do currentPrefs <- readIDE prefs
src/IDE/LogRef.hs view
@@ -129,7 +129,7 @@ modifyIDE_ (\ide -> ide{allLogRefs = allLogRefs ide ++ refs}) setCurrentError Nothing markLogRefs- triggerEventIDE ErrorChanged+ triggerEventIDE (ErrorChanged False) triggerEventIDE BreakpointChanged triggerEventIDE TraceChanged return ()@@ -437,18 +437,18 @@ BuildOutputState {..} <- CL.foldM (readAndShow logLaunch) $ initialState log ideR <- lift ask liftIO $ postGUISync $ reflectIDE (do- triggerEventIDE (Sensitivity [(SensitivityError,not (null errs))])+ allErrorLikeRefs <- readIDE errorRefs+ triggerEventIDE (Sensitivity [(SensitivityError,not (null allErrorLikeRefs))]) let errorNum = length (filter isError errs) let warnNum = length errs - errorNum triggerEventIDE (StatusbarChanged [CompartmentState (T.pack $ show errorNum ++ " Errors, " ++ show warnNum ++ " Warnings"), CompartmentBuild False])- unless (backgroundBuild || (not jumpToWarnings && errorNum == 0)) nextError return errs) ideR where readAndShow :: LogLaunch -> BuildOutputState -> ToolOutput -> IDEM BuildOutputState readAndShow logLaunch state@BuildOutputState {..} output = do ideR <- ask- let logPrevious (previous:_) = reflectIDE (addLogRef previous) ideR+ let logPrevious (previous:_) = reflectIDE (addLogRef False backgroundBuild previous) ideR logPrevious _ = return () liftIO $ postGUISync $ case output of
src/IDE/OSX.hs view
@@ -19,6 +19,7 @@ applicationNew , updateMenu , applicationReady+, allowFullscreen ) where import Graphics.UI.Gtk@@ -75,5 +76,7 @@ updateMenu _ _ = return () applicationReady :: Application -> IO () applicationReady _ = return ()+allowFullscreen :: DrawWindowClass window => window -> IO ()+allowFullscreen _ = return () #endif
src/IDE/Package.hs view
@@ -166,10 +166,31 @@ deactivatePackage :: IDEAction deactivatePackage = activatePackage Nothing Nothing Nothing +interruptSaveAndRun :: MonadIDE m => IDEAction -> m ()+interruptSaveAndRun action = do+ ideR <- liftIDE ask+ alreadyRunning <- isRunning+ if alreadyRunning+ then do+ liftIO $ debugM "leksah" "interruptSaveAndRun"+ interruptBuild+ liftIO $ timeoutAddFull (do+ reflectIDE (do+ interruptSaveAndRun action+ return False) ideR+ return False) priorityDefaultIdle 200+ return ()+ else liftIDE run+ where+ run = do+ prefs <- readIDE prefs+ when (saveAllBeforeBuild prefs) . liftIDE . void $ fileSaveAll belongsToWorkspace+ action+ packageConfig :: PackageAction packageConfig = do package <- ask- liftIDE $ packageConfig' package (\ _ -> return ())+ interruptSaveAndRun $ packageConfig' package (\ _ -> return ()) packageConfig' :: IDEPackage -> (Bool -> IDEAction) -> IDEAction packageConfig' package continuation = do@@ -237,6 +258,7 @@ alreadyRunning <- isRunning if alreadyRunning then do+ liftIO $ debugM "leksah" "buildPackage interruptBuild" interruptBuild unless backgroundBuild . liftIO $ do timeoutAddFull (do@@ -244,9 +266,11 @@ buildPackage backgroundBuild jumpToWarnings withoutLinking package continuation return False) ideR- return False) priorityDefaultIdle 1000+ return False) priorityDefaultIdle 100 return ()- else runCabalBuild backgroundBuild jumpToWarnings withoutLinking package True $ \f -> do+ else do+ when (saveAllBeforeBuild prefs) . liftIDE . void $ fileSaveAll belongsToWorkspace+ runCabalBuild backgroundBuild jumpToWarnings withoutLinking package True $ \f -> do when f $ do mbURI <- readIDE autoURI case mbURI of@@ -271,7 +295,7 @@ packageDoc :: PackageAction packageDoc = do package <- ask- liftIDE $ packageDoc' False True package (\ _ -> return ())+ interruptSaveAndRun $ packageDoc' False True package (\ _ -> return ()) packageDoc' :: Bool -> Bool -> IDEPackage -> (Bool -> IDEAction) -> IDEAction packageDoc' backgroundBuild jumpToWarnings package continuation = do@@ -281,14 +305,14 @@ runExternalTool' (__ "Documenting") (cabalCommand prefs) ("haddock" : ipdHaddockFlags package) dir $ do mbLastOutput <- C.getZipSink $ const <$> C.ZipSink sinkLast <*> (C.ZipSink $ logOutputForBuild package backgroundBuild jumpToWarnings)- lift reloadDoc+ lift $ postAsyncIDE reloadDoc lift $ continuation (mbLastOutput == Just (ToolExit ExitSuccess))) (\(e :: SomeException) -> print e) packageClean :: PackageAction packageClean = do package <- ask- liftIDE $ packageClean' package (\ _ -> return ())+ interruptSaveAndRun $ packageClean' package (\ _ -> return ()) packageClean' :: IDEPackage -> (Bool -> IDEAction) -> IDEAction packageClean' package continuation = do@@ -307,7 +331,7 @@ packageCopy :: PackageAction packageCopy = do package <- ask- liftIDE $ do+ interruptSaveAndRun $ do logLaunch <- getDefaultLogLaunch showDefaultLogLaunch' @@ -329,7 +353,7 @@ packageInstallDependencies :: PackageAction packageInstallDependencies = do package <- ask- liftIDE $ do+ interruptSaveAndRun $ do logLaunch <- getDefaultLogLaunch showDefaultLogLaunch' @@ -358,7 +382,7 @@ (\(e :: SomeException) -> print e) packageRun :: PackageAction-packageRun = ask >>= (liftIDE . packageRun' True)+packageRun = ask >>= (interruptSaveAndRun . packageRun' True) packageRun' :: Bool -> IDEPackage -> IDEAction packageRun' removeGhcjsFlagIfPresent package =@@ -420,7 +444,7 @@ isActiveExe selected (Executable name _ _) = selected == Just (T.pack name) packageRunJavaScript :: PackageAction-packageRunJavaScript = ask >>= (liftIDE . packageRunJavaScript' True)+packageRunJavaScript = ask >>= (interruptSaveAndRun . packageRunJavaScript' True) packageRunJavaScript' :: Bool -> IDEPackage -> IDEAction packageRunJavaScript' addFlagIfMissing package =@@ -478,7 +502,7 @@ packageRegister :: PackageAction packageRegister = do package <- ask- liftIDE $ packageRegister' package (\ _ -> return ())+ interruptSaveAndRun $ packageRegister' package (\ _ -> return ()) packageRegister' :: IDEPackage -> (Bool -> IDEAction) -> IDEAction packageRegister' package continuation =@@ -498,7 +522,7 @@ packageTest :: PackageAction packageTest = do package <- ask- liftIDE $ packageTest' False True package True (\ _ -> return ())+ interruptSaveAndRun $ packageTest' False True package True (\ _ -> return ()) packageTest' :: Bool -> Bool -> IDEPackage -> Bool -> (Bool -> IDEAction) -> IDEAction packageTest' backgroundBuild jumpToWarnings package shallConfigure continuation =@@ -509,6 +533,7 @@ catchIDE (do prefs <- readIDE prefs let dir = ipdBuildDir package+ removeTestLogRefs dir runExternalTool' (__ "Testing") (cabalCommand prefs) (["test", "--with-ghc=leksahtrue"] ++ ipdBuildFlags package ++ ipdTestFlags package) dir $ do (mbLastOutput, isConfigErr, _) <- C.getZipSink $ (,,)@@ -530,7 +555,7 @@ packageSdist :: PackageAction packageSdist = do package <- ask- liftIDE $ do+ interruptSaveAndRun $ do logLaunch <- getDefaultLogLaunch showDefaultLogLaunch'
src/IDE/Pane/Errors.hs view
@@ -35,7 +35,7 @@ import Control.Monad.IO.Class (MonadIO(..)) import IDE.Utils.GUIUtils (getDarkState, treeViewContextMenu, __) import Data.Text (Text)-import Control.Monad (void, when, forM_)+import Control.Monad (foldM_, unless, void, when, forM_) import qualified Data.Text as T (intercalate, lines, takeWhile, length, drop) import Data.IORef (writeIORef, readIORef, newIORef, IORef)@@ -126,8 +126,9 @@ getErrors Nothing = forceGetPane (Right "*Errors") getErrors (Just pp) = forceGetPane (Left pp) -fillErrorList :: IDEAction-fillErrorList = getPane >>= maybe (return ()) fillErrorList'+fillErrorList :: Bool -> IDEAction+fillErrorList False = getPane >>= maybe (return ()) fillErrorList'+fillErrorList True = getErrors Nothing >>= \ p -> fillErrorList' p >> displayPane p False fillErrorList' :: IDEErrors -> IDEAction fillErrorList' pane = do@@ -170,10 +171,16 @@ liftIO $ do selection <- treeViewGetSelection (treeView errors) case mbLogRef of- Nothing -> treeSelectionUnselectAll selection+ Nothing -> do+ size <- listStoreGetSize (errorStore errors)+ unless (size == 0) $+ treeViewScrollToCell (treeView errors) (Just [0]) Nothing Nothing+ treeSelectionUnselectAll selection Just lr -> case lr `elemIndex` errorRefs' of Nothing -> return ()- Just ind -> treeSelectionSelectPath selection [ind]+ Just ind -> do+ treeViewScrollToCell (treeView errors) (Just [ind]) Nothing Nothing+ treeSelectionSelectPath selection [ind] errorsContextMenu :: IDERef -> ListStore ErrColumn@@ -211,10 +218,10 @@ Nothing -> treeSelectionUnselectAll treeSel Just (SrcSpan file lStart cStart lEnd cEnd) -> do size <- listStoreGetSize (errorStore pane)- forM_ (take size [0..]) $ \ n -> do+ foldM_ (\ haveScrolled n -> do mbIter <- treeModelGetIter (errorStore pane) [n] case mbIter of- Nothing -> return ()+ Nothing -> return False Just iter -> do ErrColumn {logRef = ref@LogRef{..}} <- listStoreGetValue (errorStore pane) n isSelected <- treeSelectionIterIsSelected treeSel iter@@ -224,6 +231,10 @@ && (lEnd, cEnd) >= (srcSpanStartLine logRefSrcSpan, srcSpanStartColumn logRefSrcSpan) when (isSelected && not shouldBeSel) $ treeSelectionUnselectIter treeSel iter- when (not isSelected && shouldBeSel) $ treeSelectionSelectIter treeSel iter+ when (not isSelected && shouldBeSel) $ do+ unless haveScrolled $ treeViewScrollToCell (treeView pane) (Just [n]) Nothing Nothing+ treeSelectionSelectIter treeSel iter+ return $ haveScrolled || shouldBeSel)+ False (take size [0..])
src/IDE/Pane/SourceBuffer.hs view
@@ -69,6 +69,8 @@ , addLogRef , removeLogRefs , removeBuildLogRefs+, removeTestLogRefs+, removeLintLogRefs , markRefInSourceBuf , inBufContext , inActiveBufContext@@ -152,6 +154,7 @@ (eventModifier, eventKeyName, eventKeyVal) import Data.Foldable (forM_) import Data.Traversable (forM)+import Language.Haskell.HLint3 (Idea(..)) allBuffers :: MonadIDE m => m [IDEBuffer] allBuffers = liftIDE getPanes@@ -343,45 +346,83 @@ updateStyle' :: IDEBuffer -> IDEAction updateStyle' IDEBuffer {sourceView = sv} = getBuffer sv >>= updateStyle -removeLogRefs :: [LogRefType] -> FilePath -> FilePath -> IDEAction-removeLogRefs types root file = do- modifyIDE_ (\ide -> ide{allLogRefs = filter keep $ allLogRefs ide})+removeLogRefs :: (FilePath -> FilePath -> Bool) -> [LogRefType] -> IDEAction+removeLogRefs toRemove' types = do+ (remove, keep) <- partition toRemove <$> readIDE allLogRefs+ let removeDetails = Map.fromListWith (<>) . nub $ map (\ref ->+ (logRefRootPath ref </> logRefFilePath ref,+ [logRefType ref])) remove+ modifyIDE_ (\ide -> ide{allLogRefs = keep}) buffers <- allBuffers- let matchingBufs = filter (maybe False (equalFilePath (root </> file)) . fileName) buffers- forM_ matchingBufs $ \ (IDEBuffer {sourceView = sv}) -> do- buf <- getBuffer sv- forM_ types $ removeTagByName buf . T.pack . show+ let matchingBufs = filter (maybe False (`Map.member` removeDetails) . fileName) buffers+ forM_ matchingBufs $ \ (IDEBuffer {..}) -> do+ buf <- getBuffer sourceView+ forM_ (maybe [] (fromMaybe [] . (`Map.lookup` removeDetails)) fileName) $+ removeTagByName buf . T.pack . show - triggerEventIDE ErrorChanged+ triggerEventIDE (ErrorChanged False) return () where- keep ref = logRefRootPath ref /= root- || logRefFilePath ref /= file- || logRefType ref `notElem` types+ toRemove ref = toRemove' (logRefRootPath ref) (logRefFilePath ref)+ && logRefType ref `elem` types +removeFileLogRefs :: FilePath -> FilePath -> [LogRefType] -> IDEAction+removeFileLogRefs root file types = do+ liftIO . debugM "leksah" $ "removeFileLogRefs " <> root <> " " <> file <> " " <> show types+ removeLogRefs (\r f -> r == root && f == file) types++removePackageLogRefs :: FilePath -> [LogRefType] -> IDEAction+removePackageLogRefs root types = do+ liftIO . debugM "leksah" $ "removePackageLogRefs " <> root <> " " <> show types+ removeLogRefs (\r _ -> r == root) types+ removeBuildLogRefs :: FilePath -> FilePath -> IDEAction-removeBuildLogRefs = removeLogRefs [ErrorRef, WarningRef, TestFailureRef]+removeBuildLogRefs root file = removeFileLogRefs root file [ErrorRef, WarningRef] --- | Test failures have the same imporance as errors so should be--- sorted the same-importance :: LogRef -> LogRefType-importance LogRef{ logRefType = TestFailureRef } = ErrorRef-importance ref = logRefType ref+removeTestLogRefs :: FilePath -> IDEAction+removeTestLogRefs root = removePackageLogRefs root [TestFailureRef] -addLogRef :: LogRef -> IDEAction-addLogRef ref = do+removeLintLogRefs :: FilePath -> FilePath -> IDEAction+removeLintLogRefs root file = removeFileLogRefs root file [LintRef]++canResolve :: LogRef -> Bool+canResolve LogRef { logRefIdea = Just (_, Idea{..}) }+ = ideaHint /= "Reduce duplication" && isJust ideaTo+canResolve _ = False++addLogRef :: Bool -> Bool -> LogRef -> IDEAction+addLogRef hlintFileScope backgroundBuild ref = do+ liftIO . debugM "leksah" $ "addLogRef " <> show hlintFileScope <> " " <> show (logRefType ref) <> " " <> logRefFullFilePath ref -- Put most important errors first. -- If the importance of two errors is the same then -- then the older one might be stale (unless it is in the same file)+ allLogRefs <- readIDE allLogRefs+ currentError <- readIDE currentError+ let (moreImportant, rest) =+ span (\old ->+ let samePackage = logRefRootPath old == logRefRootPath ref+ sameFile = logRefFullFilePath old == logRefFullFilePath ref in+ -- Work out when the old ref is more important than the new+ case (logRefType ref, logRefType old) of+ (ErrorRef , ErrorRef ) -> sameFile+ (ErrorRef , _ ) -> False+ (WarningRef , ErrorRef ) -> samePackage+ (WarningRef , WarningRef ) -> samePackage+ (WarningRef , _ ) -> False+ (TestFailureRef, ErrorRef ) -> samePackage -- Probably should never be True+ (TestFailureRef, TestFailureRef) -> samePackage+ (TestFailureRef, _ ) -> False+ (LintRef , LintRef ) -> (if hlintFileScope then sameFile else samePackage)+ && (canResolve old+ || not (canResolve ref))+ (LintRef , _ ) -> samePackage+ (ContextRef , _ ) -> False+ (BreakpointRef , _ ) -> False) allLogRefs+ currErr = if currentError `elem` map Just moreImportant+ then currentError+ else Nothing modifyIDE_ $ \ ide ->- let (moreImportant, rest) =- partition (\old -> importance old < importance ref -- Note: a low LogRefType is more important- || (importance old == importance ref- && logRefFullFilePath old == logRefFullFilePath ref)) (allLogRefs ide)- currErr = if currentError ide `elem` map Just moreImportant- then currentError ide- else Nothing in ide{ allLogRefs = moreImportant <> [ref] <> rest , currentEBC = (currErr, currentBreak ide, currentContext ide) }@@ -390,7 +431,7 @@ let matchingBufs = filter (maybe False (equalFilePath (logRefFullFilePath ref)) . fileName) buffers forM_ matchingBufs $ \ buf -> markRefInSourceBuf buf ref False - triggerEventIDE ErrorChanged+ triggerEventIDE . ErrorChanged $ not backgroundBuild && null moreImportant return () markRefInSourceBuf :: IDEBuffer -> LogRef -> Bool -> IDEAction
src/IDE/Session.hs view
@@ -673,7 +673,7 @@ setDark :: Bool -> IDEM () setDark dark = do setInfoStyle- fillErrorList+ fillErrorList False prefs <- readIDE prefs buffers <- allBuffers mapM_ updateStyle' buffers
src/IDE/TextEditor/Class.hs view
@@ -65,7 +65,7 @@ -> LogRefType -> EditorIter editor -> Text- -> IDEM (EditorMark editor)+ -> IDEM () cutClipboard :: EditorBuffer editor -> Clipboard -> Bool -> IDEM () delete :: EditorBuffer editor -> EditorIter editor -> EditorIter editor -> IDEM () deleteSelection :: EditorBuffer editor -> IDEM ()
src/IDE/TextEditor/CodeMirror.hs view
@@ -265,9 +265,10 @@ copyClipboard (CMBuffer cm) _ = return () -- TODO createMark (CMView cm) _refType (CMIter _ i) _tooltip = runCM cm $ do m <- codeMirror- lift $ CMMark <$> do+ lift $ do o <- obj m ^. setBookmark' i o+ return () cutClipboard (CMBuffer cm) _ _ = return () -- TODO delete (CMBuffer cm) (CMIter _ first) (CMIter _ last) = runCM cm $ do m <- codeMirror
src/IDE/TextEditor/GtkSourceView.hs view
@@ -207,10 +207,13 @@ canUndo (GtkBuffer sb) = liftIO $ sourceBufferGetCanUndo sb copyClipboard (GtkBuffer sb) clipboard = liftIO $ textBufferCopyClipboard sb clipboard createMark (GtkView sv) refType (GtkIter i) tooltip = liftIO $ do- let cat = T.pack $ show refType sb <- castToSourceBuffer <$> get sv textViewBuffer n <- textIterGetLine i- GtkMark . toTextMark <$> sourceBufferCreateSourceMark sb (Just $ T.pack (show n) <> " " <> tooltip) cat i+ let cat = T.pack $ show refType+ name = T.pack (show n) <> " " <> tooltip+ mark <- textBufferGetMark sb name+ when (isNothing mark) . void $+ sourceBufferCreateSourceMark sb (Just name) cat i cutClipboard (GtkBuffer sb) clipboard defaultEditable = liftIO $ textBufferCutClipboard sb clipboard defaultEditable delete (GtkBuffer sb) (GtkIter first) (GtkIter last) = liftIO $ textBufferDelete sb first last
src/IDE/Utils/ExternalTool.hs view
@@ -1,3 +1,5 @@+{-# LANGUAGE CPP #-}+{-# LANGUAGE LambdaCase #-} ----------------------------------------------------------------------------- -- -- Module : IDE.Utils.Tools@@ -17,6 +19,7 @@ , runExternalTool , isRunning , interruptBuild+ , showProcessHandle ) where import qualified Data.Conduit as C (Sink)@@ -24,9 +27,9 @@ (interruptProcessGroupOf, getProcessExitCode, runTool, ProcessHandle, ToolOutput(..)) import IDE.Core.State- (runningTool, modifyIDE_, reflectIDE, useVado, reifyIDE,- triggerEventIDE, saveAllBeforeBuild, prefs, readIDE, IDEAction,- IDEM, MonadIDE(..))+ (postSyncIDE, runningTool, modifyIDE_, reflectIDE, useVado,+ reifyIDE, triggerEventIDE, saveAllBeforeBuild, prefs, readIDE,+ IDEAction, IDEM, MonadIDE(..)) import Control.Monad (void, unless, when) import IDE.Pane.SourceBuffer (belongsToWorkspace, fileSaveAll) import IDE.Core.Types (StatusbarCompartment(..), IDEEvent(..))@@ -38,7 +41,39 @@ import Control.Applicative ((<$>)) import Data.Text (Text) import qualified Data.Text as T (unpack, pack, null)+import System.Log.Logger (debugM)+import Data.Monoid ((<>)) +#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)+import System.Posix.Types (CPid(..))+import System.Exit (ExitCode)+import Control.Concurrent.MVar (withMVar, MVar)+import Unsafe.Coerce (unsafeCoerce)+import System.Posix.Process (getProcessGroupIDOf)+#endif++#if !defined(mingw32_HOST_OS) && !defined(__MINGW32__)+type PHANDLE = CPid+data ProcessHandle__ = OpenHandle PHANDLE | ClosedHandle ExitCode+data ProcessHandleLike = ProcessHandleLike !(MVar ProcessHandle__) !Bool++withProcessHandle+ :: ProcessHandleLike+ -> (ProcessHandle__ -> IO a)+ -> IO a+withProcessHandle (ProcessHandleLike m _) = withMVar m++showProcessHandle :: ProcessHandle -> IO String+showProcessHandle h = withProcessHandle (unsafeCoerce h) $ \case+ (OpenHandle (CPid pid)) -> do+ CPid gid <- getProcessGroupIDOf (CPid pid)+ return $ "pid " <> show pid <> " gid " <> show gid+ (ClosedHandle _) -> return "closed handle"+#else+showProcessHandle :: ProcessHandle -> IO String+showProcessHandle _ = return ""+#endif+ runExternalTool' :: MonadIDE m => Text -> FilePath@@ -71,24 +106,27 @@ prefs <- readIDE prefs run <- runGuard when run $ do- when (saveAllBeforeBuild prefs) (do fileSaveAll belongsToWorkspace; return ()) unless (T.null description) . void $ triggerEventIDE (StatusbarChanged [CompartmentState description, CompartmentBuild True])- reifyIDE $ \ideR -> forkIO $ do- -- If vado is enabled then look up the mount point and transform- -- the execuatble to "ssh" and the arguments- mountPoint <- if useVado prefs then getMountPoint dir else return $ Right ""- (executable', args') <- case mountPoint of- Left mp -> do- s <- readSettings- a <- vado mp s dir [] executable (map T.unpack args)- return ("ssh", map T.pack a)- _ -> return (executable, args)- -- Run the tool- (output, pid) <- runTool executable' args' (Just dir)+ -- If vado is enabled then look up the mount point and transform+ -- the execuatble to "ssh" and the arguments+ mountPoint <- if useVado prefs then liftIO $ getMountPoint dir else return $ Right ""+ (executable', args') <- case mountPoint of+ Left mp -> do+ s <- liftIO readSettings+ a <- liftIO $ vado mp s dir [] executable (map T.unpack args)+ return ("ssh", map T.pack a)+ _ -> return (executable, args)+ -- Run the tool+ (output, pid) <- liftIO $ runTool executable' args' (Just dir)+ modifyIDE_ (\ide -> ide{runningTool = Just pid})+ reifyIDE $ \ideR -> forkIO $ reflectIDE (do pidHandler pid- modifyIDE_ (\ide -> ide{runningTool = Just pid})+ liftIO $ do+ s <- showProcessHandle pid+ debugM "leksah" $ "runExternalTool " <> s <> " " <>+ unwords (executable' : map T.unpack args') output $$ handleOutput) ideR return () @@ -108,7 +146,10 @@ interruptBuild = do maybeProcess <- readIDE runningTool liftIO $ case maybeProcess of- Just h -> interruptProcessGroupOf h- _ -> return ()+ Just h -> do+ pid <- showProcessHandle h+ debugM "leksah" $ "interruptBuild " <> pid+ interruptProcessGroupOf h+ _ -> debugM "leksah" "interruptBuild Nothing"