From 8698a276f937cb1cd6f67f7f213e2ea438500d7e Mon Sep 17 00:00:00 2001
From: Brandon Mathis <brandon@imathis.com>
Date: Mon, 30 May 2011 00:30:16 -0400
Subject: Cleaned out public from repository, updated gitignore, added syntax
 highlighting tests, improved syntax highlighting and styling of pre blocks.
 Overriding dynamic gist styling. Added a plugin for pygments caching which
 should speed things up terrifically. added ender.js as a lightweight way of
 scripting the DOM, events, etc. Some general typography and semantic html
 improvements.

---
 source/test/syntax.html | 397 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 397 insertions(+)
 create mode 100644 source/test/syntax.html

(limited to 'source/test/syntax.html')

diff --git a/source/test/syntax.html b/source/test/syntax.html
new file mode 100644
index 00000000..ac26554f
--- /dev/null
+++ b/source/test/syntax.html
@@ -0,0 +1,397 @@
+---
+layout: default
+layout: page
+nometa: true
+title: Syntax Highlighting Debug
+---
+
+<h3 class="filename">gist_syntax_test.rb</h3>
+{% gist 996818 test.rb %}
+
+<h3 class="filename">syntax_test.diff</h3>
+{% highlight diff %}
+@@ -590,7 +590,7 @@ class SpritesTest < Test::Unit::TestCase
+   it "should generate a sprite from nested folders" do
+     css = render <<-SCSS
+-      @import "nested/*.png";
++      @import "nested/**/*.png";
+       @include all-nested-sprites;
+     SCSS
+     assert_correct css, <<-CSS
+
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.html</h3>
+{% highlight html %}
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head>
+<title>A Tiny Page</title>
+<style type="text/css">
+<!--
+      p { font-size:15pt; color:#000 }
+    -->
+</style></head><!-- real comment -->
+<body bgcolor="#FFFFFF" text="#000000" link="#0000CC">
+<script language="javascript" type="text/javascript">
+      function changeHeight(h) {
+        var tds = document.getElementsByTagName("td");
+        for(var i = 0; i < tds.length; i++) {
+          tds[i].setAttribute("height", h + "px");
+      }}
+</script>
+<h1>abc</h1>
+<h2>def</h2>
+<p>Testing page</p>
+</body></html>
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.js</h3>
+{% highlight js %}
+
+/**
+sample javascript from xui
+*/
+
+var undefined,
+    xui,
+    window     = this,
+    string     = new String('string'),
+    document   = window.document,
+    simpleExpr = /^#?([\w-]+)$/,
+    idExpr     = /^#/,
+    tagExpr    = /<([\w:]+)/,
+    slice      = function (e) { return [].slice.call(e, 0); };
+    try { var a = slice(document.documentElement.childNodes)[0].nodeType; }
+    catch(e){ slice = function (e) { var ret=[]; for (var i=0; e[i]; i++)
+        ret.push(e[i]); return ret; }; }
+
+window.x$ = window.xui = xui = function(q, context) {
+    return new xui.fn.find(q, context);
+};
+
+
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.rb</h3>
+{% highlight ruby %}
+
+include Enumerable
+
+def initialize(rbconfig)
+@rbconfig = rbconfig
+@no_harm = false
+end
+
+def load_savefile
+begin
+    File.foreach(savefile()) do |line|
+    k, v = *line.split(/=/, 2)
+    self[k] = v.strip
+    end
+rescue Errno::ENOENT
+    setup_rb_error $!.message + "\n#{File.basename($0)} config first"
+end
+end
+
+if c['rubylibdir']
+    # V > 1.6.3
+    libruby         = "#{c['prefix']}/lib/ruby"
+    siterubyverarch = c['sitearchdir']
+end
+parameterize = lambda {|path|
+    path.sub(/\A#{Regexp.quote(c['prefix'])}/, '$prefix')
+}
+
+if arg = c['configure_args'].split.detect {|arg| /--with-make-prog=/ =~ arg }
+    makeprog = arg.sub(/'/, '').split(/=/, 2)[1]
+else
+    makeprog = 'make'
+end
+
+def setup_rb_error(msg)
+  raise SetupError, msg
+end
+
+if $0 == __FILE__
+  begin
+    ToplevelInstaller.invoke
+  rescue SetupError
+    raise if $DEBUG
+    $stderr.puts $!.message
+    $stderr.puts "Try 'ruby #{$0} --help' for detailed usage."
+    exit 1
+  end
+end
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.php</h3>
+{% highlight php %}
+<?php
+require_once($GLOBALS['g_campsiteDir']. "/$ADMIN_DIR/country/common.php");
+require_once($GLOBALS['g_campsiteDir']. "/classes/SimplePager.php");
+camp_load_translation_strings("api");
+
+$f_country_language_selected = camp_session_get('f_language_selected', '');
+$f_country_offset = camp_session_get('f_country_offset', 0);
+if (empty($f_country_language_selected)) {
+	$f_country_language_selected = null;
+}
+$ItemsPerPage = 20;
+$languages = Language::GetLanguages(null, null, null, array(), array(), true);
+$numCountries = Country::GetNumCountries($f_country_language_selected);
+
+$pager = new SimplePager($numCountries, $ItemsPerPage, "index.php?");
+
+$crumbs = array();
+$crumbs[] = array(getGS("Configure"), "");
+$crumbs[] = array(getGS("Countries"), "");
+echo camp_html_breadcrumbs($crumbs);
+
+?>
+
+<?php  if ($g_user->hasPermission("ManageCountries")) { ?>
+<table BORDER="0" CELLSPACING="0" CELLPADDING="1">
+    <tr>
+        <td><a href="add.php"><?php putGS("Add new"); ?></a></td>
+    </tr>
+</table>
+{% endhighlight %}
+
+
+<h3 class="filename">syntax_test.hs</h3>
+{% highlight hs %}
+{-# LANGUAGE OverloadedStrings #-}
+module Main where
+
+--import Prelude hiding (id)
+--import Control.Category (id)
+import Control.Arrow ((>>>), (***), arr)
+import Control.Monad (forM_)
+-- import Data.Monoid (mempty, mconcat)
+
+-- import System.FilePath
+
+import Hakyll
+
+
+main :: IO ()
+main = hakyll $ do
+
+    route   "css/*" $ setExtension "css"
+    compile "css/*" $ byExtension (error "Not a (S)CSS file")
+        [ (".css",  compressCssCompiler)
+        , (".scss", sass)
+        ]
+
+    route   "js/**" idRoute
+    compile "js/**" copyFileCompiler
+
+    route   "img/*" idRoute
+    compile "img/*" copyFileCompiler
+
+    compile "templates/*" templateCompiler
+
+    forM_ ["test.md", "index.md"] $ \page -> do
+        route   page $ setExtension "html"
+        compile page $ pageCompiler
+            >>> applyTemplateCompiler "templates/default.html"
+            >>> relativizeUrlsCompiler
+
+sass :: Compiler Resource String
+sass = getResourceString >>> unixFilter "sass" ["-s", "--scss"]
+                         >>> arr compressCss
+
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.sh</h3>
+{% highlight sh %}
+#!/bin/bash
+
+cd $ROOT_DIR
+DOT_FILES="lastpass weechat ssh Xauthority"
+for dotfile in $DOT_FILES; do conform_link "$DATA_DIR/$dotfile" ".$dotfile"; done
+
+# TODO: refactor with suffix variables (or common cron values)
+
+case "$PLATFORM" in
+	linux)
+        #conform_link "$CONF_DIR/shell/zshenv" ".zshenv"
+        crontab -l > $ROOT_DIR/tmp/crontab-conflict-arch
+        cd $ROOT_DIR/$CONF_DIR/cron
+        if [[ "$(diff ~/tmp/crontab-conflict-arch crontab-current-arch)" == ""
+            ]];
+            then # no difference with current backup
+                logger "$LOG_PREFIX: crontab live settings match stored "\
+                    "settings; no restore required"
+                rm ~/tmp/crontab-conflict-arch
+            else # current crontab settings in file do not match live settings
+                crontab $ROOT_DIR/$CONF_DIR/cron/crontab-current-arch
+                logger "$LOG_PREFIX: crontab stored settings conflict with "\
+                    "live settings; stored settings restored. "\
+                    "Previous settings recorded in ~/tmp/crontab-conflict-arch."
+        fi
+    ;;
+
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.py</h3>
+{% highlight py %}
+# test python (sample from offlineimap)
+
+class ExitNotifyThread(Thread):
+    """This class is designed to alert a "monitor" to the fact that a thread has
+    exited and to provide for the ability for it to find out why."""
+    def run(self):
+        global exitthreads, profiledir
+        self.threadid = thread.get_ident()
+        try:
+            if not profiledir:          # normal case
+                Thread.run(self)
+            else:
+                try:
+                    import cProfile as profile
+                except ImportError:
+                    import profile
+                prof = profile.Profile()
+                try:
+                    prof = prof.runctx("Thread.run(self)", globals(), locals())
+                except SystemExit:
+                    pass
+                prof.dump_stats( \
+                            profiledir + "/" + str(self.threadid) + "_" + \
+                            self.getName() + ".prof")
+        except:
+            self.setExitCause('EXCEPTION')
+            if sys:
+                self.setExitException(sys.exc_info()[1])
+                tb = traceback.format_exc()
+                self.setExitStackTrace(tb)
+        else:
+            self.setExitCause('NORMAL')
+        if not hasattr(self, 'exitmessage'):
+            self.setExitMessage(None)
+
+        if exitthreads:
+            exitthreads.put(self, True)
+
+    def setExitCause(self, cause):
+        self.exitcause = cause
+    def getExitCause(self):
+        """Returns the cause of the exit, one of:
+        'EXCEPTION' -- the thread aborted because of an exception
+        'NORMAL' -- normal termination."""
+        return self.exitcause
+    def setExitException(self, exc):
+        self.exitexception = exc
+    def getExitException(self):
+        """If getExitCause() is 'EXCEPTION', holds the value from
+        sys.exc_info()[1] for this exception."""
+        return self.exitexception
+    def setExitStackTrace(self, st):
+        self.exitstacktrace = st
+    def getExitStackTrace(self):
+        """If getExitCause() is 'EXCEPTION', returns a string representing
+        the stack trace for this exception."""
+        return self.exitstacktrace
+    def setExitMessage(self, msg):
+        """Sets the exit message to be fetched by a subsequent call to
+        getExitMessage.  This message may be any object or type except
+        None."""
+        self.exitmessage = msg
+    def getExitMessage(self):
+        """For any exit cause, returns the message previously set by
+        a call to setExitMessage(), or None if there was no such message
+        set."""
+        return self.exitmessage
+
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.pl</h3>
+{% highlight perl %}
+#!perl -w
+
+# Time-stamp: <2002/04/06, 13:12:13 (EST), maverick, csvformat.pl>
+# Two pass CSV file to table formatter
+
+$delim = $#ARGV >= 1 ? $ARGV[1] : ',';
+print STDERR "Split pattern: $delim\n";
+
+# first pass
+open F, "<$ARGV[0]" or die;
+while(<F>)
+{
+  chomp;
+  $i = 0;
+  map { $max[$_->[1]] = $_->[0] if $_->[0] > ($max[$_->[1]] || 0) }
+    (map {[length $_, $i++]} split($delim));
+}
+close F;
+
+print STDERR 'Field width:   ', join(', ', @max), "\n";
+print STDERR join(' ', map {'-' x $_} @max);
+
+# second pass
+open F, "<$ARGV[0]" or die;
+while(<F>)
+  {
+  chomp;
+  $i = 0;
+  map { printf("%-$max[$_->[1]]s ", $_->[0]) }
+    (map {[$_, $i++]} split($delim));
+  print "\n";
+}
+close F;
+
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.java</h3>
+{% highlight java %}
+import java.util.Map;
+import java.util.TreeSet;
+
+public class GetEnv {
+  /**
+   * let's test generics
+   * @param args the command line arguments
+   */
+  public static void main(String[] args) {
+    // get a map of environment variables
+    Map<String, String> env = System.getenv();
+    // build a sorted set out of the keys and iterate
+    for(String k: new TreeSet<String>(env.keySet())) {
+      System.out.printf("%s = %s\n", k, env.get(k));
+    }
+  }    }
+{% endhighlight %}
+
+<h3 class="filename">syntax_test.c</h3>
+{% highlight c %}
+#define UNICODE
+#include <windows.h>
+
+int main(int argc, char **argv) {
+  int speed = 0, speed1 = 0, speed2 = 0; // 1-20
+  printf("Set Mouse Speed by Maverick\n");
+
+  SystemParametersInfo(SPI_GETMOUSESPEED, 0, &speed, 0);
+  printf("Current speed: %2d\n", speed);
+
+  if (argc == 1) return 0;
+  if (argc >= 2) sscanf(argv[1], "%d", &speed1);
+  if (argc >= 3) sscanf(argv[2], "%d", &speed2);
+
+  if (argc == 2) // set speed to first value
+    speed = speed1;
+  else if (speed == speed1 || speed == speed2) // alternate
+    speed = speed1 + speed2 - speed;
+  else
+    speed = speed1;  // start with first value
+
+  SystemParametersInfo(SPI_SETMOUSESPEED, 0,  speed, 0);
+  SystemParametersInfo(SPI_GETMOUSESPEED, 0, &speed, 0);
+  printf("New speed:     %2d\n", speed);
+  return 0;
+}
+
+{% endhighlight %}
+
-- 
cgit v1.2.1