about summary refs log tree commit diff
path: root/Functions/VCS_Info/Backends/VCS_INFO_get_data_cvs
diff options
context:
space:
mode:
Diffstat (limited to 'Functions/VCS_Info/Backends/VCS_INFO_get_data_cvs')
-rw-r--r--Functions/VCS_Info/Backends/VCS_INFO_get_data_cvs18
1 files changed, 18 insertions, 0 deletions
diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_cvs b/Functions/VCS_Info/Backends/VCS_INFO_get_data_cvs
new file mode 100644
index 000000000..fa1ceca02
--- /dev/null
+++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_cvs
@@ -0,0 +1,18 @@
+## vim:ft=zsh
+## cvs support by: Frank Terbeck <ft@bewatermyfriend.org>
+## Distributed under the same BSD-ish license as zsh itself.
+
+setopt localoptions NO_shwordsplit
+local cvsbranch cvsbase
+
+cvsbase="."
+while [[ -d "${cvsbase}/../CVS" ]]; do
+    cvsbase="${cvsbase}/.."
+done
+cvsbase="$(VCS_INFO_realpath ${cvsbase})"
+cvsbranch=$(< ./CVS/Repository)
+rrn=${cvsbase:t}
+cvsbranch=${cvsbranch##${rrn}/}
+[[ -z ${cvsbranch} ]] && cvsbranch=${rrn}
+VCS_INFO_formats '' "${cvsbranch}" "${cvsbase}"
+return 0