Difference between revisions of "Wiki2html"

From VNUML-WIKI
Jump to: navigation, search
(vnuml-clean-web script)
Line 74: Line 74:
 
echo "Changing style sheet"
 
echo "Changing style sheet"
 
cd ../skins/fratman_enhanced
 
cd ../skins/fratman_enhanced
 +
# hide edit links
 
echo ".editsection { visibility: hidden }" >> maina1d0.css
 
echo ".editsection { visibility: hidden }" >> maina1d0.css
 
# otra forma de hacerlo
 
#cp maina1d0.css maina1d0.css.tmp
 
#cat maina1d0.css.tmp | sed -e '/^.editsection/ avisibility: hidden;' > maina1d0.css
 
#rm maina1d0.css.tmp
 
 
 
cd ../../index.php
 
cd ../../index.php
  

Revision as of 16:43, 16 March 2007

How to generate a local copy of the documentation in html starting from the VNUML wiki

Tested on Suse linux, although it should work on any distribution.

  1. Download and install htttrack from http://www.httrack.com/
  2. Get a copy of VNUML wiki:
  3.  mkdir vnumlweb
     cd vnumlweb
     httrack http://www.dit.upm.es/vnuml
    
  4. Create a script named vnuml-clean-web with the content shown below.
  5. Execute that script on the directory where the main files reside, that is:
  6.  cd www.dit.upm.es/vnuml
     cd index.php
     vnuml-clean-web
    

    Use "--doc-only" option if you want to eliminate the "Navigation" menu on the left side of the pages.

  7. Delete the auxiliary files httrack generate in upper directory (it seems they are not needed):
  8.  cd ..
     rm index????*.{html,css,php} opensearch_desc.php 
    
  9. Load the index.html file in www.dit.upm.es/vnuml directory and you will have access to the local copy of the documentation.

vnuml-clean-web script

#!/bin/bash

for X in *
do
  echo "Filtering file $X"
  cp $X $X.tmp
  cat $X.tmp | \
  awk 'BEGIN {RS="" } {
    gsub("<!-- BEGINMENU -->.*<!-- ENDMENU -->", "", $0);
    gsub("<!-- BEGINSEARCH -->.*<!-- ENDSEARCH -->", "", $0);
    gsub("<!-- BEGINPERSONALTOOLS -->.*<!-- ENDPERSONALTOOLS -->", "", $0);
    gsub("<!-- BEGINTOOLBOX -->.*<!-- ENDTOOLBOX -->", "", $0);
#    gsub("<span class=\"editsection\">.*]</span>", "", $0);
    print $0
  }' > $X

  if [ "$1" == "--doc-only" ]; then
    # Remove navigation menu
    cp $X $X.tmp
    cat $X.tmp | \
    awk 'BEGIN {RS="" } {
      # delete navigation sidebar
      gsub("<div class=\047portlet\047 id=\047p-navigation\047>.*<!-- ENDSIDEBAR p-navigation -->", "", $0);
      # change image link from Main_Page to Docintro.html
      gsub("<a href=\"Main_Page.html\" id=\"home\"><i>Home</i></a>", "<a href=\"Docintro.html\" id=\"home\"><i>Home</i></a>", $0);
      print $0
    }' > $X
  fi
  rm $X.tmp

done

echo "Changing style sheet"
cd ../skins/fratman_enhanced
# hide edit links
echo ".editsection { visibility: hidden }" >> maina1d0.css
cd ../../index.php


Old version:

#!/bin/bash

for X in *
do
  echo "Filtering file $X"
  cp $X $X.tmp
  cat $X.tmp                                        | \
  sed -e '/BEGINMENU/,/ENDMENU/d'                   | \
  sed -e '/BEGINSEARCH/,/ENDSEARCH/d'               | \
  sed -e '/BEGINPERSONALTOOLS/,/ENDPERSONALTOOLS/d' | \
  sed -e '/BEGINTOOLBOX2/,/ENDTOOLBOX2/d'           | \
  sed -e 's/<span class="editsection">.*]<\/span>//g' \
    > $X
  rm $X.tmp

done