aboutsummaryrefslogtreecommitdiffstats
path: root/bundle/mpvim/ftplugin/portfile.vim
diff options
context:
space:
mode:
Diffstat (limited to 'bundle/mpvim/ftplugin/portfile.vim')
-rw-r--r--bundle/mpvim/ftplugin/portfile.vim40
1 files changed, 40 insertions, 0 deletions
diff --git a/bundle/mpvim/ftplugin/portfile.vim b/bundle/mpvim/ftplugin/portfile.vim
new file mode 100644
index 0000000..116c249
--- /dev/null
+++ b/bundle/mpvim/ftplugin/portfile.vim
@@ -0,0 +1,40 @@
+" vim:fenc=utf-8:et:sw=4:ts=4:sts=4
+" ======================================================================
+" Vim filetype plugin for portfile
+" Maintainer: Maximilian Nickel <mnick@macports.org>
+" ======================================================================
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+if !exists("g:did_mpftplugin")
+ function PortfileGetErrors()
+ if !empty(getqflist())
+ exe "copen"
+ end
+ endfunction
+
+ function TracPatch(url)
+ let patchfile="$TMPDIR/portfile.patch"
+ let url = substitute(a:url, "/attachment/", "/raw-attachment/", "")
+ let cmd = "!curl --progress-bar -o \"" . patchfile . "\" \"" . url . "\""
+ exe cmd
+ exe "diffpatch " . patchfile
+ endfunction
+
+ let g:did_mpftplugin = 1
+endif
+
+au QuickFixCmdPre make exe "cclose"
+au QuickFixCmdPost make call PortfileGetErrors()
+command! -nargs=1 MPpatch :call TracPatch("<args>")
+
+" Ignore Portfile modeline
+setlocal nomodeline
+setlocal fileencoding=utf-8
+setlocal expandtab
+setlocal shiftwidth=4
+setlocal tabstop=4
+setlocal softtabstop=4