Add support for nvm

This commit is contained in:
Zeh Rizzatti 2012-12-13 12:10:55 -03:00 committed by Sorin Ionescu
parent d198c08db5
commit 185235003e
3 changed files with 56 additions and 2 deletions

View file

@ -1,13 +1,34 @@
Node.js Node.js
======= =======
Provides utility functions for [Node.js][1] and loads [npm][2] completion. Provides utility functions for [Node.js][1], loads the Node Version Manager, and
enables [npm][2] completion.
nvm
---
[nvm][5] allows for managing multiple, isolated Node.js installations in the
home directory.
Functions Functions
--------- ---------
- `node-doc` opens the Node.js online [API documentation][3] in the default - `node-doc` opens the Node.js online [API documentation][3] in the default
browser. browser.
- `node-info` exposes information about the Node.js environment via the
`$node_info` associative array.
Theming
-------
To display the version number of the current Node.js version, define the
following style inside the `prompt_name_setup` function.
# %v - Node.js version.
zstyle ':prezto:module:node:info:version' format 'version:%v'
Then add `$node_info[version]` to either `$PROMPT` or `$RPROMPT` and call
`node-info` in `prompt_name_preexec` hook function.
Authors Authors
------- -------
@ -15,9 +36,11 @@ Authors
*The authors of this module should be contacted via the [issue tracker][4].* *The authors of this module should be contacted via the [issue tracker][4].*
- [Sorin Ionescu](https://github.com/sorin-ionescu) - [Sorin Ionescu](https://github.com/sorin-ionescu)
- [Zeh Rizzatti](https://github.com/zehrizzatti)
[1]: http://nodejs.org [1]: http://nodejs.org
[2]: http://npmjs.org [2]: http://npmjs.org
[3]: http://nodejs.org/api [3]: http://nodejs.org/api
[4]: https://github.com/sorin-ionescu/prezto/issues [4]: https://github.com/sorin-ionescu/prezto/issues
[5]: https://github.com/creationix/nvm

View file

@ -0,0 +1,25 @@
#
# Exposes information about the Node.js environment via the $node_info
# associative array.
#
# Authors:
# Zeh Rizzatti <zehrizzatti@gmail.com>
#
local version
local version_format
local version_formatted
unset node_info
typeset -gA node_info
if (( $+functions[nvm_version] )); then
version="${$(nvm_version)#v}"
fi
if [[ -n "$version" ]]; then
zstyle -s ':prezto:module:node:info:version' format 'version_format'
zformat -f version_formatted "$version_format" "v:$version"
node_info[version]="$version_formatted"
fi

View file

@ -1,10 +1,16 @@
# #
# Completes npm. # Loads the Node Version Manager and enables npm completion.
# #
# Authors: # Authors:
# Sorin Ionescu <sorin.ionescu@gmail.com> # Sorin Ionescu <sorin.ionescu@gmail.com>
# Zeh Rizzatti <zehrizzatti@gmail.com>
# #
# Load NVM into the shell session.
if [[ -s "$HOME/.nvm/nvm.sh" ]]; then
source "$HOME/.nvm/nvm.sh"
fi
# Return if requirements are not found. # Return if requirements are not found.
if (( ! $+commands[node] )); then if (( ! $+commands[node] )); then
return 1 return 1