st_rc_d

Форк
0
258 строк · 6.0 Кб
1
@startmindmap
2
*:
3
ПРИНЯТЫЕ ОБОЗНАЧЕНИЯ И УСЛОВНОСТИ :
4

5
<file:> <path_to_file>
6
<nnn:> - номер строки в файле
7
указывается только значимый код 
8
в терминах псевдокода похожего на bash
9
source <path_to_file> влечет за собой 
10
раскрытие содержания <path_to_file> в 
11
правой секции соединенной с текущей секцией
12
;
13

14
*:
15

16
STL ВНУТРЕННИЕ УПРАВЛЯЮЩИЕ ФАЙЛЫ STL
17

18
1. (depr?) \~/.d/.lst.d/.st.lst список файлов с файл-путь к корню репо 
19
подключаемой библиотеки
20

21
$ cat \~/.d/.lst.d/.st.lst
22
    ${HOME}/.d/.rc.d/.st_rc_d.rc
23
    ${HOME}/.d/.rc.d/.sta.rc
24
    ${HOME}/.d/.rc.d/.mane.rc
25
    ${HOME}/.d/.rc.d/.stb.rc
26
$ cat \~/.d/.rc.d/.st_rc_d.rc
27
    ${HOME}/REPOBARE/_repo/st_rc_d
28

29
2. \~/.stl/.path/ директория с файл-путь к корню репо 
30
подключаемых библиотеки <lib_repo>
31
ls \~/.stl/.path/ 
32
    <lib_repo1>.path
33
    ...
34

35

36
USER ВНЕШНИЕ УПРАВЛЯЮЩИЕ ФАЙЛЫ STL
37

38
1. \~/.is_bashrc_log 
39
    flag=$(cat \~/.is_bashrc_log) 
40
        if $flag=0 то вывод {source \~/.d/.rc.d/.st.rc.d/.st.rc} в stdout/err
41
        if $flag=1 то вывод {source \~/.d/.rc.d/.st.rc.d/.st.rc} в \~/bashrc.log
42

43

44

45
USER ВНЕШНИЕ ИНФОРМАЦИОННЫЕ ФАЙЛЫ STL
46

47
1. \~/bashrc.log log of {source \~/.d/.rc.d/.st.rc.d/.st.rc}
48

49
;
50

51
*:
52
file:\~/.bashrc
53
Формируем файл в котором записываем флаг логирования {source \~/.d/.rc.d/.st.rc.d/.st.rc} 
54
    - если 0 , то вывод в stdout/err
55
    - если 1 , то вывод в \~/bashrc.log
56
037: echo (0|1) >\~/.is_bashrc_log
57

58
046: source \~/.d/.rc.d/.st.rc.d/.st.rc
59
;
60

61
**:file:\~/.d/.rc.d/.st.rc.d/.st.rc:
62
Для STL путь всегда определен от домашней директории
63

64
Определение константы ST_RC_D_PATH это путь к репо с STL0 
65
хранящийся в файле ~/.stl/.path/st_rc_d.path
66
004: path_to_stl=${HOME}/.stl/.path/st_rc_d.path
67
008: ST_RC_D_PATH=$(cat ${path_to_stl})
68

69
Определение константы ST_RC_D_DATA_PATH это путь к репо с данными для STL0 
70
хранящийся в файле ~/.stl/.path/st_rc_d_data.path
71
026: path_to_data=${HOME}/.stl/.path/st_rc_d_data.path
72
030: ST_RC_D_DATA_PATH=$(cat ${path_to_data})
73

74
047: define _up_d() {}
75
073: define _up_st_os_d() {}
76

77
Определение дефолтных утилит и констант для оболочки в которой запущен этот .bashrc
78
085: _up_st_os_d
79

80
Проверка тестов всех функций STL, если return 1, то загрузка оболочки прерывается 
81
127: source ~/.d/.rc.d/.st.rc.d/.st.tst || return 1
82

83
133: define _loop_lib_st_rc() {}
84
' 000: 
85
' 000: 
86
' 000: 
87
' 000: 
88
' 000: 
89
;
90
***:define: _up_d() {
91
$1 - dir
92
for file in $(ls $1); do
93
    source ${file}
94
done
95
}
96

97
;
98

99
***:define: _up_st_os_d() {
100
    _up_d \~/.d/.rc.d/.st.rc.d/.st.os.d
101
}
102
;
103

104
***:exec: _up_st_os_d:
105
;
106

107
****:ls \~/.d/.rc.d/.st.rc.d/.st.os.d
108

109
app-aliases.sh  
110
git-alias.sh  
111
git-completion.sh  
112
git-prompt.sh  
113
os_aliases.sh  
114
os_utils.sh
115
;
116

117
*****:file:app-aliases.sh
118

119
alias vim="gvim -v"
120
alias sky="flatpak run com.skype.Client"
121
;
122

123
*****:file:git-alias.sh
124

125
alias gs="git status
126
alias ga="git add
127
alias gc="git commit
128
alias gb="git branch
129
alias gha="git checkout
130
alias gp="git push -u origin master
131
alias gl="git log - -pretty=format:\"%h %s\ --graph
132
alias gw="git show - -stat --oneline HEAD
133
alias gg="git log - -graph - -abbrev-commit - -decorate - -date=relative - -format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --all
134
alias gk="gitk --all&
135
;
136

137
*****:file:git-completion.sh
138

139
git-completion STANDART
140
;
141

142
*****:file:git-prompt.sh
143

144
git-prompt STANDART
145
;
146

147
*****:file:os_aliases
148

149
DEFINE USER ALIASES
150
alias www="tldr"
151
alias ll="ls -l"
152
alias lla="ls -la"
153
alias updb="updatedb -l 0  --output=/home/st/.mydb.db"
154
alias llocate="locate -d ~/.mydb.db"
155
;
156

157
*****:file:os_utils.sh
158

159
DEFINE USER DEFAULT FUNCTIONS
160
<EMPTY>
161
;
162

163
***:define: _up_st_config_d() {
164
    _up_d \~/.d/.rc.d/.st.rc.d/.st.config.d
165
}
166
;
167

168
***:exec: _up_st_config_d
169
;
170

171
****:ls \~/.d/.rc.d/.st.rc.d/.st.config.d
172

173
fn_name.sh
174
;
175

176
*****:file:fn_name.sh
177

178
DEFINE NAME_FUNCTION [fn_name] is VAR [_fn_name]:
179
_fn_name=fn_name
180
;
181

182
***:define: _up_st_sh_d() {
183
    _up_d \~/.d/.rc.d/.st.rc.d/.st.sh.d
184
}
185
;
186

187
***:exec: _up_st_sh_d
188
;
189

190
****:ls \~/.d/.rc.d/.st.rc.d/.st.sh.d
191

192
ALL FN STL files with define functions
193
[fn_name].sh
194
;
195

196
*****:file:[fn_name].sh
197

198
DEFINE NAME_FUNCTION [fn_name]
199
[fn_name](){
200
    [body_fn_name]
201
}
202
;
203

204
***:source \~/.d/.rc.d/.st.rc.d/.st.tst || return 1
205

206
;
207

208
****:file:\~/.d/.rc.d/.st.rc.d/.st.tst
209

210
for name_fn in all_name_fn;do
211
    source \~/.d/.rc.d/.st.rc.d/.st.tst.d/${name_fn}.tst || return 1
212
done
213
;
214

215
*****:file:\~/.d/.rc.d/.st.rc.d/.st.tst.d/${name_fn}.tst
216

217
    source \~/.d/.rc.d/.st.rc.d/.st.tst.d/${name_fn}.tst.d/${name_fn}.tst.sh || return 1
218
;
219

220
******:file:\~/.d/.rc.d/.st.rc.d/.st.tst.d/${name_fn}.tst.d/${name_fn}.tst.sh
221

222
В результате работы ${name_fn} формируется файл res:
223
exec ${name_fn} -> \~/.d/.rc.d/.st.rc.d/.st.tst.d/${name_fn}.tst.d/res   
224

225
Файл pre формируется при правильной работе ${name_fn}
226
ТЕСТ: Сравнение res и pre:
227
diff \~/.d/.rc.d/.st.rc.d/.st.tst.d/${name_fn}.tst.d/res \~/.d/.rc.d/.st.rc.d/.st.tst.d/${name_fn}.tst.d/pre || return 1
228
возврат return 1 ошибка эскалируется до ~/.bashrc и прерывает загрузку оболочки
229
;
230

231
***:define: _loop_lib_st_rc() {
232
    file_lib_lst=${HOME}/.d/.lst.d/.st.lst
233
}
234
;
235

236
***:source \~/.d/.rc.d/.st.rc.d/.st.tst || return 1
237

238
;
239
***:source \~/.d/.rc.d/.st.rc.d/.st.tst || return 1
240

241
;
242

243
' *:HEAD:
244

245
' CONT
246
' ;
247

248
' *:HEAD:
249

250
' CONT
251
' ;
252

253
' *:HEAD:
254

255
' CONT
256
' ;
257

258
@endmindmap

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.