#!/usr/bin/env dash # Runs it's first argument and then the second, regardless if the first failed or # succeeded utils0chain() { eval "$1" eval "$2" } utils0get_current_context() { current_context="$(task _get rc.context)" printf "%s\n" "$current_context" } utils0get_current_context_path() { current_context="$1" context_path="$(task _get rc.context."$current_context".rc.neorg_path 2>/dev/null)" if ! [ "$context_path" ]; then context_path="$(grep "context.$current_context.rc.neorg_path" "%HOME_TASKRC" | awk 'BEGIN {FS="="} {print $2}')" [ "$context_path" ] || die "All contexts should have a 'neorg_path' set!" fi printf "%s\n" "$context_path" } utils0get_neorg_project_dir() { # Perform shell expansion of Tilde neorg_project_dir="$(sed "s|^~|$HOME|" "$(ptmp "%DEFAULT_NEORG_PROJECT_DIR")")" printf "%s\n" "$neorg_project_dir" } utils0project2context() { project="$1" context="$(sed 's|\.|_|g' "$(ptmp "$project")")" printf "%s\n" "$context" } utils0context2project() { context="$1" project="$(sed 's|_|\.|g' "$(ptmp "$context")")" printf "%s\n" "$project" }