f1799de0c92357cfafd501c3f74375d197a1708c
- Author
- Lucas A. Rodrigues <lucas.ar.rodrigues@gmail.com>
- Committer
- Marc Cornellà <marc.cornella@live.com>
- Date
Message
Diff
This diff is truncated to protect this page.
1diff --git a/plugins/drush/README.md b/plugins/drush/README.md
2new file mode 100644
3index 0000000000000000000000000000000000000000..df7b82bddb11e1c2a6cceedd9b83b3e3ff8914ab
4--- /dev/null
5+++ b/plugins/drush/README.md
6@@ -0,0 +1,83 @@
7+# Drush
8+
9+## Description
10+This plugin offers aliases and functions to make the work with drush easier and more productive.
11+
12+To enable it, add the `drush` to your `plugins` array in `~/.zshrc`:
13+
14+```
15+plugins=(... drush)
16+```
17+
18+## Aliases
19+| Alias | Description | Command |
20+|-------|-----------------------------------------------------------------------|-----------------------------|
21+| dr | Display drush help | drush |
22+| drca | Clear all drupal caches. | drush cc all |
23+| drcb | Clear block cache. | drush cc block |
24+| drcg | Clear registry cache. | drush cc registry |
25+| drcj | Clear css-js cache. | drush cc css-js |
26+| drcm | Clear menu cache. | drush cc menu |
27+| drcml | Clear module-list cache. | drush cc module-list |
28+| drcr | Run all cron hooks in all active modules for specified site. | drush core-cron |
29+| drct | Clear theme-registry cache. | drush cc theme-registry |
30+| drcv | Clear views cache. (Make sure that the views module is enabled) | drush cc views |
31+| drdmp | Backup database in a new dump.sql file | drush drush sql-dump --ordered-dump --result-file=dump.sql|
32+| drf | Display features status | drush features |
33+| drfr | Revert a feature module on your site. | drush features-revert -y |
34+| drfu | Update a feature module on your site. | drush features-update -y |
35+| drfra | Revert all enabled feature module on your site. | drush features-revert-all |
36+| drif | Flush all derived images. | drush image-flush --all |
37+| drpm | Show a list of available modules. | drush pm-list --type=module |
38+| drst | Provides a birds-eye view of the current Drupal installation, if any. | drush core-status |
39+| drup | Apply any database updates required (as with running update.php). | drush updatedb |
40+| drups | List any pending database updates. | drush updatedb-status |
41+| drv | Show drush version. | drush version |
42+| drvd | Delete a variable. | drush variable-del |
43+| drvg | Get a list of some or all site variables and values. | drush variable-get |
44+| drvs | Set a variable. | drush variable-set |
45+
46+## Functions
47+
48+### dren
49+Download and enable one or more extensions (modules or themes).
50+Must be invoked with one or more parameters. e.g.:
51+`dren devel` or `dren devel module_filter views`
52+
53+### drf
54+Edit drushrc, site alias, and Drupal settings.php files.
55+Can be invoked with one or without parameters. e.g.:
56+`drf 1`
57+
58+### dris
59+Disable one or more extensions (modules or themes)
60+Must be invoked with one or more parameters. e.g.:
61+`dris devel` or `dris devel module_filter views`
62+
63+### drpu
64+Uninstall one or more modules.
65+Must be invoked with one or more parameters. e.g.:
66+`drpu devel` or `drpu devel module_filter views`
67+
68+### drnew
69+Creates a brand new drupal website.
70+Note: As soon as the installation is complete, drush will print a username and a random password into the terminal:
71+```
72+Installation complete. User name: admin User password: cf7t8yqNEm
73+```
74+
75+## Additional features
76+
77+### Autocomplete
78+The [completion script for drush](https://github.com/drush-ops/drush/blob/8.0.1/drush.complete.sh) comes enabled with this plugin.
79+So, it is possible to type a command:
80+```
81+drush sql
82+```
83+
84+And as soon as the tab key is pressed, the script will display the available commands:
85+```
86+drush sql
87+sqlc sql-conf sql-create sql-dump sql-query sql-sanitize
88+sql-cli sql-connect sql-drop sqlq sqlsan sql-sync
89+```
90diff --git a/plugins/drush/drush.complete.sh b/plugins/drush/drush.complete.sh
91new file mode 100644
92index 0000000000000000000000000000000000000000..38b882ec358e31b4e1b84267d19aaa0d81e7bb72
93--- /dev/null
94+++ b/plugins/drush/drush.complete.sh
95@@ -0,0 +1,50 @@
96+# BASH completion script for Drush.
97+#
98+# Place this in your /etc/bash_completion.d/ directory or source it from your
99+# ~/.bash_completion or ~/.bash_profile files. Alternatively, source
100+# examples/example.bashrc instead, as it will automatically find and source
101+# this file.
102+#
103+# If you're using ZSH instead of BASH, add the following to your ~/.zshrc file
104+# and source it.
105+#
106+# autoload bashcompinit
107+# bashcompinit
108+# source /path/to/your/drush.complete.sh
109+
110+# Ensure drush is available.
111+which drush > /dev/null || alias drush &> /dev/null || return
112+
113+__drush_ps1() {
114+ f="${TMPDIR:-/tmp/}/drush-env-${USER}/drush-drupal-site-$$"
115+ if [ -f $f ]
116+ then
117+ __DRUPAL_SITE=$(cat "$f")
118+ else
119+ __DRUPAL_SITE="$DRUPAL_SITE"
120+ fi
121+
122+ # Set DRUSH_PS1_SHOWCOLORHINTS to a non-empty value and define a
123+ # __drush_ps1_colorize_alias() function for color hints in your Drush PS1
124+ # prompt. See example.prompt.sh for an example implementation.
125+ if [ -n "${__DRUPAL_SITE-}" ] && [ -n "${DRUSH_PS1_SHOWCOLORHINTS-}" ]; then
126+ __drush_ps1_colorize_alias
127+ fi
128+
129+ [[ -n "$__DRUPAL_SITE" ]] && printf "${1:- (%s)}" "$__DRUPAL_SITE"
130+}
131+
132+# Completion function, uses the "drush complete" command to retrieve
133+# completions for a specific command line COMP_WORDS.
134+_drush_completion() {
135+ # Set IFS to newline (locally), since we only use newline separators, and
136+ # need to retain spaces (or not) after completions.
137+ local IFS=$'\n'
138+ # The '< /dev/null' is a work around for a bug in php libedit stdin handling.
139+ # Note that libedit in place of libreadline in some distributions. See:
140+ # https://bugs.launchpad.net/ubuntu/+source/php5/+bug/322214
141+ COMPREPLY=( $(drush --early=includes/complete.inc "${COMP_WORDS[@]}" < /dev/null 2> /dev/null) )
142+}
143+
144+# Register our completion function. We include common short aliases for Drush.
145+complete -o bashdefault -o default -o nospace -F _drush_completion d dr drush drush5 drush6 drush7 drush8 drush.php
146diff --git a/plugins/drush/drush.plugin.zsh b/plugins/drush/drush.plugin.zsh
147new file mode 100644
148index 0000000000000000000000000000000000000000..8a20d79f268e59423771c9553ef88365ff073b81
149--- /dev/null
150+++ b/plugins/drush/drush.plugin.zsh
151@@ -0,0 +1,104 @@
152+# Drush support.
153+
154+function dren() {
155+ drush en $@ -y
156+}
157+
158+function dris() {
159+ drush pm-disable $@ -y
160+}
161+
162+function drpu() {
163+ drush pm-uninstall $@ -y
164+}
165+
166+function drf() {
167+ if [[ $1 == "" ]] then
168+ drush core-config
169+ else
170+ drush core-config --choice=$1
171+ fi
172+}
173+
174+function drfi() {
175+ if [[ $1 == "fields" ]]; then
176+ drush field-info fields
177+ elif [[ $1 == "types" ]]; then
178+ drush field-info types
179+ else
180+ drush field-info
181+ fi
182+}
183+
184+function drnew() {
185+
186+ cd ~
187+ echo "Website's name: "
188+ read WEBSITE_NAME
189+
190+ HOST=http://$(hostname -i)/
191+
192+ if [[ $WEBSITE_NAME == "" ]] then
193+ MINUTES=$(date +%M:%S)
194+ WEBSITE_NAME="Drupal-$MINUTES"
195+ echo "Your website will be named: $WEBSITE_NAME"
196+ fi
197+
198+ drush dl drupal --drupal-project-rename=$WEBSITE_NAME
199+
200+ echo "Type your localhost directory: (Leave empty for /var/www/html/)"
201+ read DIRECTORY
202+
203+ if [[ $DIRECTORY == "" ]] then
204+ DIRECTORY="/var/www/html/"
205+ fi
206+
207+ echo "Moving to $DIRECTORY$WEBSITE_NAME"
208+ sudo mv $WEBSITE_NAME $DIRECTORY
209+ cd $DIRECTORY$WEBSITE_NAME
210+
211+ echo "Database's user: "
212+ read DATABASE_USR
213+ echo "Database's password: "
214+ read -s DATABASE_PWD
215+ echo "Database's name for your project: "
216+ read DATABASE
217+
218+ DB_URL="mysql://$DATABASE_USR:$DATABASE_PWD@localhost/$DATABASE"
219+ drush site-install standard --db-url=$DB_URL --site-name=$WEBSITE_NAME
220+
221+ open_command $HOST$WEBSITE_NAME
222+ echo "Done"
223+
224+}
225+
226+# Aliases, sorted alphabetically.
227+alias dr="drush"
228+alias drca="drush cc all" # Deprecated for Drush 8
229+alias drcb="drush cc block" # Deprecated for Drush 8
230+alias drcg="drush cc registry" # Deprecated for Drush 8
231+alias drcj="drush cc css-js"
232+alias drcm="drush cc menu"
233+alias drcml="drush cc module-list"
234+alias drcr="drush core-cron"
235+alias drct="drush cc theme-registry"
236+alias drcv="drush cc views"
237+alias drdmp="drush sql-dump --ordered-dump --result-file=dump.sql"
238+alias drf="drush features"
239+alias drfr="drush features-revert -y"
240+alias drfu="drush features-update -y"
241+alias drfra="drush features-revert-all"
242+alias drif="drush image-flush --all"
243+alias drpm="drush pm-list --type=module"
244+alias drst="drush core-status"
245+alias drup="drush updatedb"
246+alias drups="drush updatedb-status"
247+alias drv="drush version"
248+alias drvd="drush variable-del"
249+alias drvg="drush variable-get"
250+alias drvs="drush variable-set"