Skip to content
Snippets Groups Projects
Forked from mlz / Frida
737 commits behind the upstream repository.
TODO 3.76 KiB
== Todo at once ==


== Current refactoring (everything becomes an object) ==

Reimplement fn key binding
- fn3-4 to scan k

When commands have become programmable:
- automatic mfj after oi
- review history
  - latest action on pX should be part of history
  - history replay must not stop for error
  - show commands while playing history
  - fnc keys not in history

Documentation:
- Universal help/doc associated with
  - environment variables like psdir
  - operators and functions (now hf; separate operators and functions, reconsider sorting)
- refer to external documentation
- explain resol, conv, pconv
- more info on commands (in command shell and in manual?)

Terminology:
- "file" -> "workspace"


== Command-line interface ==

Default file selection:
- inform user about new file selection as result of an operation
- inform user about renumbering after deletion?
- keep curve references intact
- correct default selection after
  - fdel, fx
  - msb

history:
  -  for replaying:
    - RETURN not stored
  - during interactive session:
    - store repeated commands only once
- save every input at once (from history to logging ...)

dialog generics
  - restore ask callback help for lists (prompt for list, not for string)
  - restore help on "?" (e.g. expression help for 'md')
  - default for plot range


== Expressions and functions ==

get_k should allow i dependence
  similar repair as recently for get_j


== Specific commands ==

"update plot" to replot after change of axes

mfj, cp for curve file

valgrind complains about NPloWin -> transform into a class with destructor?

fs->fl:
- broken for fit-with-external-program (cc ecr or similar)
- y08 is not true YAML. Don't use text for data.

update gnuplot symbol explanation


== CLEANUP ==

- lmfit call-back within class, thanks to std::functional
- read-plus Interface in EINEN namespace ask:: stecken ??


== WISHLIST ==

user interface
- 'gp!' <filename> ?
- 'dp' output for #spec>1 is obfuscated

docu lines and num pars
- 'mfj' remove redundant doc lines
- check for completeness
- 'cp' zeigt manchmal zuviel: Anzeige ohne Par-List

customization
- let user choose points/line
- let user choose color/symbol/linestyle
- debug mode (e.g. gnuplot monitor)

allow ad-hoc addition of fit functions
(plugin ? distinguish from opr-functions ?)
- plot accessible Q-E-space

improve existing methods
- 'oi' wenn mehrere Files mit rank=2, automatisch in einen File packen
- 'oixy': auch 'oixyd'
distribution
- include wupscat, wupsbb
- rewrite wupscat in bash instead of ruby


== PROJECTS ==

refactor func+op registration so that registered object can be const
(assemble typed function list prior to registration)

boost::format -> cppformat

detailed balance

DOS

pipes to avoid unnecessary files

avg, int, sum in oi
oy y/[].mr{abs(x)>7}.oy{y^2}.avg[j]

2d plots using pm3d # was ist das ?

splines (e.g. to approximate measured resolution)

convolution with function
- with spline
- with TOFTOF model

coord name algebra


== WAITING FOR CLUE ==

parallel execution: upon first exception kill all threads

rework dy, dp
How to treat blanks in user input:
- operators "mod", "div" suggest to allow blanks in expressions
- "op* 1 .3 99" suggeststo split at blanks

should operations have a return value?
- code for user interrupt
- numeric result?
- pointer to files (replace sel_collect_begin/end mechanism)??

Ctrl+C to abort fit

oyo; [15,j,0] --> i, y2, ... # nicht so, aber .. ??

residual plot

Graphics: simplify; allow LaTeX labels -> Asymptote ? gnuplot ?

distribution: do not overwrite user modifications of ini file

in graph file: doc lines should be formatted such that they can be easily
  read in as command lines

script language integration
- testing
- support for Excel-like tables
- towards LAMP

ROOT integration
- well-defined histogram channels