# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-# Remove url codings form stdin
+# Remove url codings from stdin
function get_modeline {
modeline=$(
echo "$QUERY_STRING" |
# - I have some plugins in ~/.vim
# - Run ex in screen to trick it into thinking that it
- # has a real terminal, not that we also have to set
+ # has a real terminal, note that we also have to set
# term=xterm-256color in vimrc
HOME=/home/andy \
screen -D -m ex -nXZ -i NONE -u vimrc \
'+set bexpr= fde= fdt= fex= inde= inex= key= pa= pexpr' \
- '+set iconstring= ruf= stl= tal= titlestring=' \
+ '+set iconstring= ruf= stl= tal=' \
+ "+set titlestring=$1\ -\ vpaste.net" \
'+set noml' \
'+2d|'$trim \
- '+%s/\r//g' \
+ '+%s/\r//g' \
'+TOhtml' \
"+sav! $output" \
'+qall!' \
# Upload handler
function do_upload {
- output="$(mktemp db/XXXXX)"
- uri="$url$(basename "$output")${QUERY_STRING:+"?"}"
text=$(cut_file "$1")
if [ -z "$text" ]; then
header text/plain
echo "No text pasted"
exit
fi
+ output="$(mktemp db/XXXXX)"
+ uri="$url$(basename "$output")${QUERY_STRING:+"?"}"
(get_modeline; echo "$text") > "$output"
echo "Status: 302 Found"
echo "Location: $uri"
<head>
<title>vpaste.net - Vim based pastebin</title>
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
+ <meta name="description" content="vpaste: Vim based pastebin" />
+ <meta name="keywords" content="vpaste,paste,pastebin,vim" />
<style type="text/css">
* { margin:0; padding:0; }
body { margin:1em; }
<li><a href="vpaste?ft=sh">vpaste</a></li>
<li><a href="index.cgi?ft=sh">index.cgi</a>
<a href="vimrc?ft=vim">vimrc</a>
- <a href="htaccess?ft=apache">htaccess</a></li>
- <li><a href="2html-et.patch?ft=diff">2html-et.patch</a></li>
+ <a href="htaccess?ft=apache">htaccess</a>
+ <a href="robots.txt?ft=robots">robots.txt</a>
+ <a href="sitemap.xml?ft=xml">sitemap.xml</a></li>
+ <li><a href="2html.patch?ft=diff">2html.patch</a></li>
<li><a href="https://lug.rose-hulman.edu/svn/misc/trunk/htdocs/vpaste/">Subversion</a></li>
</ul>