2016-08-23 09:31:29 +02:00
|
|
|
(( $+commands[npm] )) && {
|
2022-10-24 12:07:12 +02:00
|
|
|
command rm -f "${ZSH_CACHE_DIR:-$ZSH/cache}/npm_completion"
|
2020-02-25 22:23:37 +01:00
|
|
|
|
|
|
|
_npm_completion() {
|
|
|
|
local si=$IFS
|
|
|
|
compadd -- $(COMP_CWORD=$((CURRENT-1)) \
|
|
|
|
COMP_LINE=$BUFFER \
|
|
|
|
COMP_POINT=0 \
|
|
|
|
npm completion -- "${words[@]}" \
|
|
|
|
2>/dev/null)
|
|
|
|
IFS=$si
|
|
|
|
}
|
|
|
|
compdef _npm_completion npm
|
2016-08-24 00:13:24 +02:00
|
|
|
}
|
2015-02-13 08:19:43 +01:00
|
|
|
|
2015-09-30 16:42:34 +02:00
|
|
|
# Install dependencies globally
|
|
|
|
alias npmg="npm i -g "
|
2015-02-13 08:19:43 +01:00
|
|
|
|
2015-03-11 22:18:42 +01:00
|
|
|
# npm package names are lowercase
|
|
|
|
# Thus, we've used camelCase for the following aliases:
|
|
|
|
|
|
|
|
# Install and save to dependencies in your package.json
|
|
|
|
# npms is used by https://www.npmjs.com/package/npms
|
|
|
|
alias npmS="npm i -S "
|
|
|
|
|
|
|
|
# Install and save to dev-dependencies in your package.json
|
|
|
|
# npmd is used by https://github.com/dominictarr/npmd
|
|
|
|
alias npmD="npm i -D "
|
2015-09-29 10:20:55 +02:00
|
|
|
|
2021-04-25 19:02:39 +02:00
|
|
|
# Force npm to fetch remote resources even if a local copy exists on disk.
|
|
|
|
alias npmF='npm i -f'
|
|
|
|
|
2015-08-03 22:06:33 +02:00
|
|
|
# Execute command from node_modules folder based on current directory
|
|
|
|
# i.e npmE gulp
|
2015-08-11 02:56:49 +02:00
|
|
|
alias npmE='PATH="$(npm bin)":"$PATH"'
|
2016-03-24 08:28:26 +01:00
|
|
|
|
|
|
|
# Check which npm modules are outdated
|
|
|
|
alias npmO="npm outdated"
|
2016-08-13 05:49:42 +02:00
|
|
|
|
2021-04-25 19:07:25 +02:00
|
|
|
# Update all the packages listed to the latest version
|
|
|
|
alias npmU="npm update"
|
|
|
|
|
2016-09-20 04:58:45 +02:00
|
|
|
# Check package versions
|
|
|
|
alias npmV="npm -v"
|
|
|
|
|
|
|
|
# List packages
|
|
|
|
alias npmL="npm list"
|
|
|
|
|
2017-11-04 18:35:44 +01:00
|
|
|
# List top-level installed packages
|
|
|
|
alias npmL0="npm ls --depth=0"
|
|
|
|
|
2016-08-13 05:49:42 +02:00
|
|
|
# Run npm start
|
|
|
|
alias npmst="npm start"
|
|
|
|
|
|
|
|
# Run npm test
|
|
|
|
alias npmt="npm test"
|
|
|
|
|
2017-11-04 18:35:44 +01:00
|
|
|
# Run npm scripts
|
|
|
|
alias npmR="npm run"
|
|
|
|
|
2024-03-26 09:55:16 +01:00
|
|
|
# Run npm publish
|
2018-04-15 19:54:42 +02:00
|
|
|
alias npmP="npm publish"
|
|
|
|
|
|
|
|
# Run npm init
|
|
|
|
alias npmI="npm init"
|
2021-04-25 19:08:51 +02:00
|
|
|
|
|
|
|
# Run npm info
|
|
|
|
alias npmi="npm info"
|
|
|
|
|
|
|
|
# Run npm search
|
|
|
|
alias npmSe="npm search"
|
2021-12-29 14:12:52 +01:00
|
|
|
|
2023-04-20 13:42:47 +02:00
|
|
|
# Run npm run dev
|
|
|
|
alias npmrd="npm run dev"
|
|
|
|
|
2023-10-28 17:48:45 +02:00
|
|
|
# Run npm run build
|
|
|
|
alias npmrb="npm run build"
|
|
|
|
|
2021-12-29 14:12:52 +01:00
|
|
|
npm_toggle_install_uninstall() {
|
|
|
|
# Look up to the previous 2 history commands
|
|
|
|
local line
|
|
|
|
for line in "$BUFFER" \
|
|
|
|
"${history[$((HISTCMD-1))]}" \
|
|
|
|
"${history[$((HISTCMD-2))]}"
|
|
|
|
do
|
|
|
|
case "$line" in
|
|
|
|
"npm uninstall"*)
|
|
|
|
BUFFER="${line/npm uninstall/npm install}"
|
|
|
|
(( CURSOR = CURSOR + 2 )) # uninstall -> install: 2 chars removed
|
|
|
|
;;
|
|
|
|
"npm install"*)
|
|
|
|
BUFFER="${line/npm install/npm uninstall}"
|
|
|
|
(( CURSOR = CURSOR + 2 )) # install -> uninstall: 2 chars added
|
|
|
|
;;
|
|
|
|
"npm un "*)
|
|
|
|
BUFFER="${line/npm un/npm install}"
|
|
|
|
(( CURSOR = CURSOR + 5 )) # un -> install: 5 chars added
|
|
|
|
;;
|
|
|
|
"npm i "*)
|
|
|
|
BUFFER="${line/npm i/npm uninstall}"
|
|
|
|
(( CURSOR = CURSOR + 8 )) # i -> uninstall: 8 chars added
|
|
|
|
;;
|
|
|
|
*) continue ;;
|
|
|
|
esac
|
|
|
|
return 0
|
|
|
|
done
|
|
|
|
|
|
|
|
BUFFER="npm install"
|
|
|
|
CURSOR=${#BUFFER}
|
|
|
|
}
|
|
|
|
|
|
|
|
zle -N npm_toggle_install_uninstall
|
|
|
|
|
|
|
|
# Defined shortcut keys: [F2] [F2]
|
|
|
|
bindkey -M emacs '^[OQ^[OQ' npm_toggle_install_uninstall
|
|
|
|
bindkey -M vicmd '^[OQ^[OQ' npm_toggle_install_uninstall
|
|
|
|
bindkey -M viins '^[OQ^[OQ' npm_toggle_install_uninstall
|