Karya, built on 2022-03-21T01:30:44 (patch 89d1651424c35e564138d93424a157ff87457245)
Safe HaskellSafe-Inferred

Cmd.Repl.LSol

Description

Utilities for solkattu. This re-exports Solkattu.Db so I can find pre-defined korvais.

E.g.: > return $ LSol.search $ LSol.hasInstrument "kendang_tunggal" > return $ LSol.search $ LSol.aroundDate (LSol.date 2017 7 10) 10 > 59: .... etc > LSol.insert_k1 True 1 59 0

Synopsis

Documentation

insert :: (Cmd.M m, Solkattu.Notation stroke, Expr.ToExpr (Realize.Stroke stroke), Ord stroke) => Korvai.Instrument stroke -> Bool -> TrackTime -> ScoreIndex -> SectionIndex -> m () Source #

Insert the korvai at the selection. TODO implement ModifyNotes.replace_tracks to clear existing notes first

edit_new :: Cmd.M m => Korvai.Korvai -> SectionIndex -> Text -> m ReplProtocol.Result Source #

Find the korvai, do integrate_track for it, and open an editor on the source file. The editor has bindings to reintegrate after an edit.

get_key :: Cmd.M m => m Block.SourceKey Source #

Find the SourceKey of integrated events around the cursor.

reintegrate :: Ui.M m => Block.SourceKey -> m () Source #

This can be called manually to reintegrate after a change, but is also called automatically by edit.

integrate_track :: Cmd.M m => Korvai.Korvai -> SectionIndex -> Text -> m Block.SourceKey Source #

Get the SourceKey, create an empty track with that.

type Select = forall i. [(i, Korvai.Score)] -> [(i, Korvai.Score)] Source #

recentDates :: Int -> Select Source #

The number of date groups starting from the most recent.

date :: Stack => Int -> Int -> Int -> Day Source #

writeHtmlTo :: FilePath -> IO () Source #

Write all Korvais as HTML into the given directory.

writeText :: IO () Source #

Write to solkattu-text for grepping and diffing, and solkattu-color for catting.

writeTextTo :: FilePath -> FilePath -> Format.Abstraction -> IO () Source #

The usual text dir is a git repo, so I can see what effect changes have, in the same manner as App.VerifyPerformance.