]> git.rmz.io Git - dotfiles.git/blob - zsh/plugins/mvn/mvn.plugin.zsh
add xbindkeysrc
[dotfiles.git] / zsh / plugins / mvn / mvn.plugin.zsh
1 # mvn-color based on https://gist.github.com/1027800
2 export BOLD=`tput bold`
3 export UNDERLINE_ON=`tput smul`
4 export UNDERLINE_OFF=`tput rmul`
5 export TEXT_BLACK=`tput setaf 0`
6 export TEXT_RED=`tput setaf 1`
7 export TEXT_GREEN=`tput setaf 2`
8 export TEXT_YELLOW=`tput setaf 3`
9 export TEXT_BLUE=`tput setaf 4`
10 export TEXT_MAGENTA=`tput setaf 5`
11 export TEXT_CYAN=`tput setaf 6`
12 export TEXT_WHITE=`tput setaf 7`
13 export BACKGROUND_BLACK=`tput setab 0`
14 export BACKGROUND_RED=`tput setab 1`
15 export BACKGROUND_GREEN=`tput setab 2`
16 export BACKGROUND_YELLOW=`tput setab 3`
17 export BACKGROUND_BLUE=`tput setab 4`
18 export BACKGROUND_MAGENTA=`tput setab 5`
19 export BACKGROUND_CYAN=`tput setab 6`
20 export BACKGROUND_WHITE=`tput setab 7`
21 export RESET_FORMATTING=`tput sgr0`
22
23
24 # Wrapper function for Maven's mvn command.
25 mvn-color()
26 {
27 # Filter mvn output using sed
28 mvn $@ | sed -e "s/\(\[INFO\]\ \-.*\)/${TEXT_BLUE}${BOLD}\1/g" \
29 -e "s/\(\[INFO\]\ \[.*\)/${RESET_FORMATTING}${BOLD}\1${RESET_FORMATTING}/g" \
30 -e "s/\(\[INFO\]\ BUILD SUCCESSFUL\)/${BOLD}${TEXT_GREEN}\1${RESET_FORMATTING}/g" \
31 -e "s/\(\[WARNING\].*\)/${BOLD}${TEXT_YELLOW}\1${RESET_FORMATTING}/g" \
32 -e "s/\(\[ERROR\].*\)/${BOLD}${TEXT_RED}\1${RESET_FORMATTING}/g" \
33 -e "s/Tests run: \([^,]*\), Failures: \([^,]*\), Errors: \([^,]*\), Skipped: \([^,]*\)/${BOLD}${TEXT_GREEN}Tests run: \1${RESET_FORMATTING}, Failures: ${BOLD}${TEXT_RED}\2${RESET_FORMATTING}, Errors: ${BOLD}${TEXT_RED}\3${RESET_FORMATTING}, Skipped: ${BOLD}${TEXT_YELLOW}\4${RESET_FORMATTING}/g"
34
35 # Make sure formatting is reset
36 echo -ne ${RESET_FORMATTING}
37 }
38
39 # Override the mvn command with the colorized one.
40 #alias mvn="mvn-color"
41
42 # aliases
43 alias mvncie='mvn clean install eclipse:eclipse'
44 alias mvnci='mvn clean install'
45 alias mvne='mvn eclipse:eclipse'
46 alias mvnce='mvn clean eclipse:clean eclipse:eclipse'
47 alias mvnd='mvn deploy'
48 alias mvnp='mvn package'
49 alias mvnc='mvn clean'
50 alias mvncom='mvn compile'
51 alias mvnt='mvn test'
52 alias mvnag='mvn archetype:generate'
53
54 function listMavenCompletions {
55 reply=(
56 # common lifecycle
57 clean process-resources compile process-test-resources test-compile test package verify install deploy site
58
59 # common plugins
60 deploy failsafe install site surefire checkstyle javadoc jxr pmd ant antrun archetype assembly dependency enforcer gpg help release repository source eclipse idea jetty cargo jboss tomcat tomcat6 tomcat7 exec versions war ear ejb android scm buildnumber nexus repository sonar license hibernate3 liquibase flyway gwt
61
62 # deploy
63 deploy:deploy-file
64 # failsafe
65 failsafe:integration-test failsafe:verify
66 # install
67 install:install-file
68 # site
69 site:site site:deploy site:run site:stage site:stage-deploy
70 # surefire
71 surefire:test
72
73 # checkstyle
74 checkstyle:checkstyle checkstyle:check
75 # javadoc
76 javadoc:javadoc javadoc:jar javadoc:aggregate
77 # jxr
78 jxr:jxr
79 # pmd
80 pmd:pmd pmd:cpd pmd:check pmd:cpd-check
81
82 # ant
83 ant:ant ant:clean
84 # antrun
85 antrun:run
86 # archetype
87 archetype:generate archetype:create-from-project archetype:crawl
88 # assembly
89 assembly:single assembly:assembly
90 # dependency
91 dependency:analyze dependency:analyze-dep-mgt dependency:analyze-only dependency:analyze-report dependency:build-classpath dependency:copy dependency:copy-dependencies dependency:get dependency:go-offline dependency:list dependency:purge-local-repository dependency:resolve dependency:resolve-plugins dependency:sources dependency:tree dependency:unpack dependency:unpack-dependencies
92 # enforcer
93 enforcer:enforce
94 # gpg
95 gpg:sign gpg:sign-and-deploy-file
96 # help
97 help:active-profiles help:all-profiles help:describe help:effective-pom help:effective-settings help:evaluate help:expressions help:system
98 # release
99 release:clean release:prepare release:rollback release:perform release:stage release:branch release:update-versions
100 # repository
101 repository:bundle-create repository:bundle-pack
102 # source
103 source:aggregate source:jar source:jar-no-fork
104
105 # eclipse
106 eclipse:clean eclipse:eclipse
107 # idea
108 idea:clean idea:idea
109
110 # jetty
111 jetty:run jetty:run-exploded
112 # cargo
113 cargo:start cargo:run cargo:stop cargo:deploy cargo:undeploy cargo:help
114 # jboss
115 jboss:start jboss:stop jboss:deploy jboss:undeploy jboss:redeploy
116 # tomcat
117 tomcat:start tomcat:stop tomcat:deploy tomcat:undeploy tomcat:undeploy
118 # tomcat6
119 tomcat6:run tomcat6:run-war tomcat6:run-war-only tomcat6:stop tomcat6:deploy tomcat6:undeploy
120 # tomcat7
121 tomcat7:run tomcat7:run-war tomcat7:run-war-only tomcat7:deploy
122 # exec
123 exec:exec exec:java
124 # versions
125 versions:display-dependency-updates versions:display-plugin-updates versions:display-property-updates versions:update-parent versions:update-properties versions:update-child-modules versions:lock-snapshots versions:unlock-snapshots versions:resolve-ranges versions:set versions:use-releases versions:use-next-releases versions:use-latest-releases versions:use-next-snapshots versions:use-latest-snapshots versions:use-next-versions versions:use-latest-versions versions:commit versions:revert
126 # scm
127 scm:add scm:checkin scm:checkout scm:update scm:status
128 # buildnumber
129 buildnumber:create buildnumber:create-timestamp buildnumber:help buildnumber:hgchangeset
130
131 # war
132 war:war war:exploded war:inplace war:manifest
133 # ear
134 ear:ear ear:generate-application-xml
135 # ejb
136 ejb:ejb
137 # android
138 android:apk android:apklib android:deploy android:deploy-dependencies android:dex android:emulator-start android:emulator-stop android:emulator-stop-all android:generate-sources android:help android:instrument android:manifest-update android:pull android:push android:redeploy android:run android:undeploy android:unpack android:version-update android:zipalign android:devices
139 # nexus
140 nexus:staging-list nexus:staging-close nexus:staging-drop nexus:staging-release nexus:staging-build-promotion nexus:staging-profiles-list nexus:settings-download
141 # repository
142 repository:bundle-create repository:bundle-pack repository:help
143
144 # sonar
145 sonar:sonar
146 # license
147 license:format license:check
148 # hibernate3
149 hibernate3:hbm2ddl hibernate3:help
150 # liquibase
151 liquibase:changelogSync liquibase:changelogSyncSQL liquibase:clearCheckSums liquibase:dbDoc liquibase:diff liquibase:dropAll liquibase:help liquibase:migrate liquibase:listLocks liquibase:migrateSQL liquibase:releaseLocks liquibase:rollback liquibase:rollbackSQL liquibase:status liquibase:tag liquibase:update liquibase:updateSQL liquibase:updateTestingRollback
152 # flyway
153 flyway:clean flyway:history flyway:init flyway:migrate flyway:status flyway:validate
154 # gwt
155 gwt:browser gwt:clean gwt:compile gwt:compile-report gwt:css gwt:debug gwt:eclipse gwt:eclipseTest gwt:generateAsync gwt:help gwt:i18n gwt:mergewebxml gwt:resources gwt:run gwt:sdkInstall gwt:source-jar gwt:soyc gwt:test
156
157 # options
158 -Dmaven.test.skip=true -DskipTests -Dmaven.surefire.debug -DenableCiProfile -Dpmd.skip=true -Dcheckstyle.skip=true -Dtycho.mode=maven
159
160 # arguments
161 -am -amd -B -C -c -cpu -D -e -emp -ep -f -fae -ff -fn -gs -h -l -N -npr -npu -nsu -o -P -pl -q -rf -s -T -t -U -up -V -v -X
162
163 cli:execute cli:execute-phase
164 archetype:generate generate-sources
165 cobertura:cobertura
166 -Dtest= `if [ -d ./src ] ; then find ./src/test/java -type f -name '*.java' | grep -v svn | sed 's?.*/\([^/]*\)\..*?-Dtest=\1?' ; fi`
167 );
168 }
169
170 compctl -K listMavenCompletions mvn