Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,11 @@ In the 3rd form, list current bookmark.
* `-h` display this help and exit

## Variables
The location of the bookmarks list file depends on the envionment's configuration. The file is searched in the following order:

Bookmark list are stored in `~/.cdbookmark` file. This file name can be changed by `CD_BOOKMARK_FILE` variable.
1. `$CD_BOOKMARK_FILE` - if it is set. This has highest precedence. Thus you can set this to override to custom location.
1. `$XDG_CONFIG_HOME/cd-bookmarks/bookmarks` - if the directory `cd-bookmarks/` exist. Note that `$XDG_CONFIG_HOME` defaults to `$HOME/.config`
1. `$HOME/.cdbookmark` - fall back to old default $HOME/.cdbookmark


## Examples
Expand Down
12 changes: 11 additions & 1 deletion cd-bookmark
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,18 @@
# or: cd-bookmark [-l]
#

function _cdbookmark_get_config_file() {
if ! [ -z ${CD_BOOKMARK_FILE+x} ]; then
echo "$CD_BOOKMARK_FILE"
elif [ -d ${XDG_CONFIG_HOME:-$HOME/.config}/cd-bookmark ]; then
echo "${XDG_CONFIG_HOME:-$HOME/.config}/cd-bookmark/bookmarks"
else
echo "${HOME}/.cdbookmark"
fi
}

typeset -r SCRIPT_NAME="cd-bookmark"
typeset -r BOOKMARK_FILE="${CD_BOOKMARK_FILE:-${HOME}/.cdbookmark}"
typeset -r BOOKMARK_FILE="$(_cdbookmark_get_config_file)"

function _cdbookmark_print_usage() {
cat << EOF
Expand Down