|
|
@@ -1,36 +1,8 @@ |
|
|
|
# CRITICAL NOTES |
|
|
|
+ flex might be total overkill as scanf might entirely suffice |
|
|
|
|
|
|
|
# Used technologies |
|
|
|
+ C style C++ with pottential future "back" porting |
|
|
|
+ flex history parsers |
|
|
|
+ SQLite |
|
|
|
+ ncurses |
|
|
|
+ readline |
|
|
|
|
|
|
|
# Rationale |
|
|
|
### C/C++ |
|
|
|
+ fuck pust |
|
|
|
### NCurses |
|
|
|
+ i know nothing better that is: |
|
|
|
- portable |
|
|
|
- reliable |
|
|
|
- C compatible |
|
|
|
- anyway better than ncurses |
|
|
|
### SQLite |
|
|
|
+ sharing history between shell types could be desirable, this is the simplest approach |
|
|
|
+ having our own storage means that we could support meta informations globally |
|
|
|
which are not standard for every application |
|
|
|
### Flex |
|
|
|
+ its *actually* reusable |
|
|
|
### Readline |
|
|
|
+ we are not trying to replace it in anyways; it only makes sense |
|
|
|
|
|
|
|
# CLI |
|
|
|
|
|
|
|
``` |
|
|
|
histui <verb> |
|
|
|
<import> <file-1>:<file-2> [format] |
|
|
|
<import> <file-1> <file-2> [format] |
|
|
|
<export> <file> [format] |
|
|
|
<tui> <file> [options] |
|
|
|
<init> <shell> |
|
|
@@ -158,5 +130,33 @@ M : minutes; 0 padded {03} |
|
|
|
T : ISO 8601 time format ("HH:MM:SS") |
|
|
|
``` |
|
|
|
|
|
|
|
# Configuration |
|
|
|
|
|
|
|
``` |
|
|
|
# Comment |
|
|
|
|
|
|
|
if <conditional> |
|
|
|
# ... |
|
|
|
elif <conditional> |
|
|
|
# ... |
|
|
|
fi |
|
|
|
|
|
|
|
bind <key-combination> <action> |
|
|
|
set <option> <value> |
|
|
|
``` |
|
|
|
|
|
|
|
#### Conditionals |
|
|
|
|
|
|
|
``` |
|
|
|
<value-1> <operator> <value-2> |
|
|
|
``` |
|
|
|
|
|
|
|
Values may be string literals, |
|
|
|
an environment valiable |
|
|
|
or a builtin variable. |
|
|
|
|
|
|
|
PARENTNAME : argv0 of the process parrent |
|
|
|
|
|
|
|
# Environment |
|
|
|
HISTUIFILE : histuidb to be used |
|
|
|
|