You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.7 KiB
65 lines
1.7 KiB
#!/bin/bash
|
|
|
|
# Kate script interface to html tidy
|
|
# Version 1 - 13/10/03
|
|
# by David Ross http://www.rossy.co.uk
|
|
# modified by Christoph Cullmann for Kate 2.2 (KDE 3.2)
|
|
# Version 1.1 - 15/10/03
|
|
# Added a help message if tidy isn't installed.
|
|
|
|
################
|
|
# Start Config #
|
|
################
|
|
|
|
# Path to tidy - just use "tidy" if it is in your path
|
|
tidy="tidy"
|
|
|
|
# Specify any options you want to pass to tidy
|
|
tidyoptions="-iu --wrap 0 --doctype transitional"
|
|
|
|
# File to write errors to
|
|
errfile=/tmp/$$.err
|
|
infile=/tmp/$$.in
|
|
outfile=/tmp/$$.out
|
|
|
|
# Clean up when done or when aborting.
|
|
trap "rm -f $outfile; rm -f $infile; rm -f $errfile" 0 1 2 3 15
|
|
|
|
# Do you want a prompt before showing errors
|
|
# If you don't have "kdialog" set to 0
|
|
errprompt=1
|
|
|
|
##############
|
|
# Start Code #
|
|
##############
|
|
|
|
# Is tidy installed
|
|
if [ `$tidy -v | grep -c "HTML Tidy"` -ne 1 ];then
|
|
kdialog --msgbox "HTML Tidy could not be found.
|
|
Please download install HTML tidy into your path, tidy can be downloaded from http://tidy.sf.net"
|
|
else
|
|
# Get the active document number
|
|
doc=`dcop $1 KateDocumentManager activeDocumentNumber`
|
|
|
|
# Get the current html from kate
|
|
dcop $1 EditInterface#$doc text > $infile
|
|
|
|
# Run the html through tidy
|
|
cat $infile | $tidy $tidyoptions > $outfile 2> $errfile
|
|
|
|
# Only send back the tidied version if there is valid html
|
|
if [ `cat $outfile|grep -c "DOCTYPE"` -gt 0 ];then
|
|
dcop $1 EditInterface#$doc setText "`cat $outfile`"
|
|
fi
|
|
|
|
# Open a new document with the error code should errors arise
|
|
if [ `cat $errfile|grep -c "No warnings or errors were found"` -eq 0 ];then
|
|
if [ $errprompt -eq 1 ];then
|
|
kdialog --yesno "Errors were found. Do you want to see them?"
|
|
fi
|
|
if [ $? -eq 0 ] || [ $errprompt -eq 0 ];then
|
|
dcop $1 KateDocumentManager openURL "$errfile" ""
|
|
fi
|
|
fi
|
|
fi
|