Hello, I'm Yusuke Yoshimoto, a Japanese university student majoring in computer science. I found a minor bug in the standard completion function _java_class and fixed it. The bug is that typed string gets broken if $JAVA_TOOL_OPTIONS is set and -classpath is designated as jar files. For example, given that $JAVA_TOOL_OPTIONS is '-Dfile.encoding=UTF-8', I type java -classpath hamcrest-all-1.3.jar:junit-4.11.jar: and hit tab, then the input goes to the following: java -classpath hamcrest-all-1.3.jar:junit-4.11.jar: Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 To fix this, change line 18 of zsh-5.0.2/Completion/Unix/Type/_java_class c+=( ${${${(M)$(_call_program jar_classes jar -tf $i)##*.class}%%.class}:gs#/#.#} ) into c+=( ${${${(M)$(_call_program jar_classes jar -tf $i 2>/dev/null)##*.class}%%.class}:gs#/#.#} ) Thank you.