aboutsummaryrefslogtreecommitdiffstats
path: root/cli_config_manager.org
blob: a9341d3649634d9e349bd6347d960b2ee6a1b528 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
* configs
** folder
** file
** 
* supported actions
** init
*** set VC directory
*** set SECRET directory
** add [NEW] config PROGRAMM PATH {SECRET} {PRIMARY}
** edit PROGRAMM[/CONFIG_FILENAME]
** list programms {tree, paths, only programs}
** infile-search REGEXP

* Backend
** ADD
*** if file exists mv it to VC_dir
*** if it is new create it to VC_dir
*** create soft link to config's path
** EDIT
*** edit primary conf file, unless stated otherwise
** LIST
*** TREE
**** Tree like view of all configs under their corresponding program

*** PATHS
**** list of paths the configs link to
*** PROGRAMS
**** list of indexed programs
** SEARCH
*** simple mode
**** regexp matches against paths and program names
**** returns list of matched paths
*** infile
**** regexp matches in the lines of the indexed files
**** returns grep like resulst of matching lines

* Schema
** PROGRAMS
| ID | NAME    |
|----+---------|
|  1 | emacs   |
|  2 | weechat |

** CONFIGS
| ID | PATH  | SECRET | PRIMARY |
|----+-------+--------+---------|
|  1 | /.../ | T      | T       |
|  2 | ...   | T      | F       |
|  3 | ...   | F      | F       |
|  4 | ...   | F      | T       |

** PC
| PID | CID |
|-----+-----|
| 1   | 1   |
| 1   | 2   |
| 2   | 3   |
| 2   | 4   |