Skip to content

Commit a5b39be

Browse files
committed
Various fixes
- kbmenu reads python_path from kbconfig - preview handles filenames with spaces - logging slightly quieter
1 parent a5c82f6 commit a5b39be

File tree

4 files changed

+22
-18
lines changed

4 files changed

+22
-18
lines changed

Diff for: korbenware/bin/kbconfig

+3
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ DEFAULTS = {
2424
"background": {
2525
"path": "/usr/share/backgrounds",
2626
"sway_args": "fill"
27+
},
28+
"menu": {
29+
"python_path": ""
2730
}
2831
}
2932

Diff for: korbenware/bin/kbmenu

+11-11
Original file line numberDiff line numberDiff line change
@@ -6,27 +6,27 @@
66
# License, v. 2.0. If a copy of the MPL was not distributed with this
77
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
88

9-
PYTHON="${PYTHON:-/usr/bin/python3}"
9+
PYTHON="$(kbconfig get menu python_path)"
10+
if [ -z "${PYTHON}" ]; then
11+
PYTHON=/usr/bin/python3
12+
fi
1013
DEBUG="${DEBUG:-}"
1114

1215
function log-debug {
1316
if [ ! -z "${DEBUG}" ]; then
14-
echo "debug: $1"
17+
echo "debug:" "$@"
1518
fi
1619
}
1720

1821
function log-info {
19-
echo "info: $1"
22+
echo "info:" "$@"
2023
}
2124

22-
function log-error {
23-
echo "ERROR: $1" 1>&2
24-
}
2525

2626
log-info "Grandmaw Korben's XDG Menu Explorer 🦜"
2727
log-info '"nice work, pixel birdie!"'
2828
log-info "programmed entirely while unemployed"
29-
log-info "it worked if it ends with ok"
29+
log-debug "it worked if it ends with ok"
3030

3131
__PRELUDE='
3232
import xdg.Menu
@@ -70,7 +70,7 @@ COMMENTS = dict()
7070
for path in __walk([], xdg.Menu.parse()):
7171
COMMENTS[__key(path)] = path[-1].DesktopEntry.getComment()
7272
73-
print(COMMENTS[sys.argv[1]])
73+
print(COMMENTS[" ".join([arg for arg in sys.argv[1:] if arg])])
7474
'
7575

7676
__COMMAND="${__PRELUDE}"'
@@ -86,8 +86,8 @@ for path in __walk([], xdg.Menu.parse()):
8686
print(COMMANDS[sys.argv[1]])
8787
'
8888

89-
CHOICE="$(python -c "${__PREVIEW}" | fzf -m --preview "python -c '${__GET}' '{1}'")"
89+
CHOICE="$("${PYTHON}" -c "${__PREVIEW}" | fzf -m --preview '"'"${PYTHON}"'"'" -c '${__GET}' '{1}' '{2}' '{3}' '{4}' '{5}' '{6}' '{7}' '{8}'")"
9090

91-
eval "nohup $(python -c "${__COMMAND}" "${CHOICE}") &> /dev/null &"
91+
eval "nohup $("${PYTHON}" -c "${__COMMAND}" "${CHOICE}") &> /dev/null &"
9292

93-
log-info "ok"
93+
log-debug "ok"

Diff for: korbenware/bin/kbopen

+6-6
Original file line numberDiff line numberDiff line change
@@ -18,17 +18,17 @@ function log-debug {
1818
}
1919

2020
function log-info {
21-
echo "info: $1"
21+
echo "info:" "$@"
2222
}
2323

2424
function log-error {
25-
echo "ERROR: $1" 1>&2
25+
echo "ERROR:" "$@" 1>&2
2626
}
2727

2828
log-info "Korby Jr. The File/Url Opener 🦜"
2929
log-info "programmed entirely while eating a spider plant"
3030
log-info '"open up or else!"'
31-
log-info "it worked if it ends with ok"
31+
log-debug "it worked if it ends with ok"
3232

3333
function log-help {
3434
log-info "Open files and URLs with default and mime-appropriate XDG applications"
@@ -61,8 +61,8 @@ else
6161
fi
6262

6363
while [ -d "${PATH_OR_URL}" ]; do
64-
log-info "Searching in ${PATH_OR_URL} with fzf"
65-
PATH_OR_URL="$(find "${PATH_OR_URL}" | fzf --preview "kbprev {}")"
64+
log-debug "Searching in ${PATH_OR_URL} with fzf"
65+
PATH_OR_URL="$(find "${PATH_OR_URL}" | fzf --preview "kbprev '{}'")"
6666
done
6767

6868
log-debug "Path or URL: ${PATH_OR_URL}"
@@ -94,4 +94,4 @@ case $MIME_TYPE in
9494
eval "${OPEN_CMD} '${PATH_OR_URL}'"
9595
esac
9696

97-
log-info "ok"
97+
log-debug "ok"

Diff for: korbenware/bin/kbprev

+2-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ log-info "Korben's Cool Babysitter's File Preview 🦜"
3535
log-info "programmed while changing Korby Jr's diaper"
3636
log-info "it worked if it ends with ok"
3737

38-
FILE="${1:-}"
38+
ARGS="$@"
39+
FILE=$(IFS=, ; echo "${ARGS[*]}")
3940

4041
if [ -d "${FILE}" ]; then
4142
ls -l

0 commit comments

Comments
 (0)