@@ -38,7 +38,7 @@ csv_cat() {
38
38
# returns: nothing
39
39
40
40
column_wrap () {
41
- local footer
41
+ local footer max lpad pad
42
42
footer=" ${1} "
43
43
44
44
if [ " ${COLUMNS:- 0} " -lt 80 ] || [ -z " ${HAS_COLUMN} " ] ; then
@@ -53,9 +53,18 @@ column_wrap() {
53
53
footer=" $( echo -e " ${footer} " | column -t -s ' :' ) "
54
54
fi
55
55
56
+ # Find the number of characters in the longest line
57
+ max=" $( echo -e " ${footer} " | awk ' BEGIN{l=0} length>l {l=length}; END{print l}' ) "
58
+
59
+ # remove an extra 3 - 1 for '^', 2 for the fzf gutter
60
+ lpad=" $(( (COLUMNS - max - 3 ) / 2 )) "
61
+
62
+ [[ ${lpad} -gt 0 ]] && printf -v pad " %*s" " ${lpad} " ' '
63
+
56
64
footer=" ${footer// \[ / \\ 033\[ 0;32m\[ } "
57
65
footer=" ${footer// \] / \]\\ 033\[ 0m} "
58
- echo -e " ${footer} "
66
+
67
+ echo -e " ${footer// ^/ ${pad} } "
59
68
}
60
69
61
70
# arg1: Path to file with detected boot environments, 1 per line
@@ -87,14 +96,14 @@ draw_be() {
87
96
fi
88
97
89
98
header=" $( column_wrap " \
90
- [RETURN] boot:[ESCAPE] refresh view:[CTRL+P] pool status
91
- [CTRL+D] set bootfs:[CTRL+S] snapshots:[CTRL+K] kernels
92
- [CTRL+E] edit kcl:[CTRL+J] jump into chroot:[CTRL+R] recovery shell
93
- ${kcl_text: +${kcl_text} : } [CTRL+L] view logs:${blank} [CTRL+H] help" \
99
+ ^ [RETURN] boot:[ESCAPE] refresh view:[CTRL+P] pool status
100
+ ^ [CTRL+D] set bootfs:[CTRL+S] snapshots:[CTRL+K] kernels
101
+ ^ [CTRL+E] edit kcl:[CTRL+J] jump into chroot:[CTRL+R] recovery shell
102
+ ^ ${kcl_text: +${kcl_text} : } [CTRL+L] view logs:${blank} [CTRL+H] help" \
94
103
" \
95
- [RETURN] boot
96
- [CTRL+R] recovery shell
97
- [CTRL+H] help" ) "
104
+ ^ [RETURN] boot
105
+ ^ [CTRL+R] recovery shell
106
+ ^ [CTRL+H] help" ) "
98
107
99
108
expects=" --expect=alt-e,alt-k,alt-d,alt-s,alt-c,alt-r,alt-p,alt-w,alt-j,alt-o${kcl_bind: +,${kcl_bind} } "
100
109
@@ -135,13 +144,13 @@ draw_kernel() {
135
144
zdebug " using kernels file: ${_kernels} "
136
145
137
146
header=" $( column_wrap " \
138
- [RETURN] boot:[ESCAPE] back
139
- [CTRL+D] set default:[CTRL+U] unset default
140
- [CTRL+L] view logs:[CTRL+H] help" \
147
+ ^ [RETURN] boot:[ESCAPE] back
148
+ ^ [CTRL+D] set default:[CTRL+U] unset default
149
+ ^ [CTRL+L] view logs:[CTRL+H] help" \
141
150
" \
142
- [RETURN] boot
143
- [CTRL+D] set default
144
- [CTRL+H] help" ) "
151
+ ^ [RETURN] boot
152
+ ^ [CTRL+D] set default
153
+ ^ [CTRL+H] help" ) "
145
154
146
155
expects=" --expect=alt-d,alt-u"
147
156
@@ -178,14 +187,14 @@ draw_snapshots() {
178
187
sort_key=" $( get_sort_key ) "
179
188
180
189
header=" $( column_wrap " \
181
- [RETURN] duplicate:[CTRL+C] clone only:[CTRL+X] clone and promote
182
- [CTRL+D] show diff:[CTRL+R] rollback:[CTRL+N] create new snapshot
183
- [CTRL+L] view logs::[CTRL+J] jump into chroot
184
- [CTRL+H] help::[ESCAPE] back" \
190
+ ^ [RETURN] duplicate:[CTRL+C] clone only:[CTRL+X] clone and promote
191
+ ^ [CTRL+D] show diff:[CTRL+R] rollback:[CTRL+N] create new snapshot
192
+ ^ [CTRL+L] view logs::[CTRL+J] jump into chroot
193
+ ^ [CTRL+H] help::[ESCAPE] back" \
185
194
" \
186
- [RETURN] duplicate
187
- [CTRL+D] show diff
188
- [CTRL+H] help" ) "
195
+ ^ [RETURN] duplicate
196
+ ^ [CTRL+D] show diff
197
+ ^ [CTRL+H] help" ) "
189
198
190
199
context=" Note: for diff viewer, use tab to select/deselect up to two items"
191
200
0 commit comments