Merge remote-tracking branch 'ekie/load_color_userspace'

This commit is contained in:
Maxime Coste 2015-07-18 23:32:48 +01:00
commit c0f14fe695
2 changed files with 25 additions and 12 deletions

View File

@ -594,12 +594,15 @@ line using:
:echo %sh{ ls -l $kak_bufname } :echo %sh{ ls -l $kak_bufname }
------------------------------- -------------------------------
Configuration & Autoloading
---------------------------
Kakrc Kakrc
----- ~~~~~
If not launched with the `-n` switch, Kakoune will source the If not launched with the `-n` switch, Kakoune will source the
`../share/kak/kakrc` file (relative to the `kak` binary), which `../share/kak/kakrc` file relative to the `kak` binary, which
will in turn source additional files: will source additional files:
If the `$XDG_CONFIG_HOME/kak/autoload` directory exists, load every If the `$XDG_CONFIG_HOME/kak/autoload` directory exists, load every
`*.kak` files in it, and load recursively any subdirectory. `*.kak` files in it, and load recursively any subdirectory.
@ -614,6 +617,15 @@ In order to continue autoloading site-wide files with a local autoload
directory, just add a symbolic link to `../share/kak/autoload/` into directory, just add a symbolic link to `../share/kak/autoload/` into
your local autoload directory. your local autoload directory.
Color Schemes
~~~~~~~~~~~~~
Kakoune ships with some color schemes that are installed to
`../share/kak/colors/`. If `$XDG_CONFIG_HOME/kak/colors/` is present
the builtin commmand `colorscheme` will offer completion for those
color schemes. If a scheme is duplicated in userspace it will take
precedence.
Options Options
------- -------

View File

@ -34,14 +34,20 @@ def -shell-params -docstring "colorscheme <name>: enable named colorscheme" \
-shell-completion %{ -shell-completion %{
prefix=${1:0:${kak_pos_in_token}} prefix=${1:0:${kak_pos_in_token}}
( (
for col in ${kak_runtime}/colors/*.kak; do localconfdir=${XDG_CONFIG_HOME:-${HOME}/.config}/kak
for col in ${kak_runtime}/colors/*.kak ${localconfdir}/colors/*.kak; do
expr $(basename "${col}" .kak) : "^\(${prefix}.*\)$" expr $(basename "${col}" .kak) : "^\(${prefix}.*\)$"
done done
) | grep -v '^$' ) | sort -u | grep -v '^$'
} \ } \
colorscheme %{ %sh{ colorscheme %{ %sh{
localconfdir=${XDG_CONFIG_HOME:-${HOME}/.config}/kak
if [ $# -eq 1 ]; then if [ $# -eq 1 ]; then
echo "source '${kak_runtime}/colors/$1.kak'" if [ -f "${localconfdir}/colors/$1.kak" ];then
echo "source '${localconfdir}/colors/$1.kak'"
else
echo "source '${kak_runtime}/colors/$1.kak'"
fi
else else
echo -color Error 'Usage: colorscheme <scheme name>' echo -color Error 'Usage: colorscheme <scheme name>'
fi fi
@ -60,12 +66,7 @@ def -shell-params -docstring "colorscheme <name>: enable named colorscheme" \
done done
} }
if [ -n "${XDG_CONFIG_HOME}" ]; then localconfdir=${XDG_CONFIG_HOME:-${HOME}/.config}/kak
localconfdir="${XDG_CONFIG_HOME}/kak"
else
localconfdir="$HOME/.config/kak"
fi
if [ -d "${localconfdir}/autoload" ]; then if [ -d "${localconfdir}/autoload" ]; then
autoload ${localconfdir}/autoload autoload ${localconfdir}/autoload
elif [ -d "${kak_runtime}/autoload" ]; then elif [ -d "${kak_runtime}/autoload" ]; then