From 370a12d7df3c7e2d0f7a08a66c9c9f09b85870c9 Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Thu, 26 May 2022 18:46:20 +0200 Subject: Add 'macports-checksums' plugin A new command that appends MacPorts checksums for a given file. --- .../autoload/macports_checksums.vim | 19 +++++++++++++++++++ .../ftplugin/portfile/macports_checksums.vim | 2 ++ 2 files changed, 21 insertions(+) create mode 100644 bundle/macports-checksums/autoload/macports_checksums.vim create mode 100644 bundle/macports-checksums/ftplugin/portfile/macports_checksums.vim (limited to 'bundle') diff --git a/bundle/macports-checksums/autoload/macports_checksums.vim b/bundle/macports-checksums/autoload/macports_checksums.vim new file mode 100644 index 0000000..b01e65d --- /dev/null +++ b/bundle/macports-checksums/autoload/macports_checksums.vim @@ -0,0 +1,19 @@ +" Append MacPorts checksums for `a:file` to the current line. +function! macports_checksums#Checksums(file) + let rmd160 = system('openssl dgst -rmd160 ' . fnameescape(a:file))[:-2] + let sha256 = system('shasum -a 256 ' . fnameescape(a:file)) + let filesize = system('wc -c ' . fnameescape(a:file)) + + call append( + \ '.', + \ ' size ' . split(filesize, ' ')[0] + \ ) + call append( + \ '.', + \ ' sha256 ' . split(sha256, ' ')[0] . ' \' + \ ) + call append( + \ '.', + \ 'checksums rmd160 ' . split(rmd160, ' ')[1] . ' \' + \ ) +endfunction diff --git a/bundle/macports-checksums/ftplugin/portfile/macports_checksums.vim b/bundle/macports-checksums/ftplugin/portfile/macports_checksums.vim new file mode 100644 index 0000000..8c34e70 --- /dev/null +++ b/bundle/macports-checksums/ftplugin/portfile/macports_checksums.vim @@ -0,0 +1,2 @@ +command! -buffer -nargs=1 -complete=file MPchecksums + \ call macports_checksums#Checksums() -- cgit v1.2.3