Author: anoopknayak
Date: Wed Sep 18 09:36:49 2013
New Revision: 1524352

URL: http://svn.apache.org/r1524352
Log:
First commit after making the bloodhound LiveSyntaxHighlightingPlugin

Added:
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/   
(with props)
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/__init__.py
   (with props)
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/bhlivesyntaxhighlight.py
   (with props)
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/codemirror.css
   (with props)
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/wikimarkup.css
   (with props)
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/js/
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/js/codemirror.js
   (with props)
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/js/livesyntaxhighlight.js
   (with props)
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/js/wikimarkup.js
   (with props)
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/templates/
    
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/setup.py
   (with props)
Modified:
    bloodhound/branches/livesyntaxhighlighting/   (props changed)
    bloodhound/branches/livesyntaxhighlighting/.gitignore

Propchange: bloodhound/branches/livesyntaxhighlighting/
------------------------------------------------------------------------------
--- svn:global-ignores (added)
+++ svn:global-ignores Wed Sep 18 09:36:49 2013
@@ -0,0 +1 @@
+tracdeveloperplugin

Modified: bloodhound/branches/livesyntaxhighlighting/.gitignore
URL: 
http://svn.apache.org/viewvc/bloodhound/branches/livesyntaxhighlighting/.gitignore?rev=1524352&r1=1524351&r2=1524352&view=diff
==============================================================================
--- bloodhound/branches/livesyntaxhighlighting/.gitignore (original)
+++ bloodhound/branches/livesyntaxhighlighting/.gitignore Wed Sep 18 09:36:49 
2013
@@ -6,3 +6,4 @@
 *.rej
 .svn
 installer/bloodhound
+tracdeveloperplugin
\ No newline at end of file

Propchange: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/
------------------------------------------------------------------------------
--- svn:global-ignores (added)
+++ svn:global-ignores Wed Sep 18 09:36:49 2013
@@ -0,0 +1,3 @@
+*.codeintel
+*.sublime-project
+*.sublime-workspace

Added: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/__init__.py
URL: 
http://svn.apache.org/viewvc/bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/__init__.py?rev=1524352&view=auto
==============================================================================
--- 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/__init__.py
 (added)
+++ 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/__init__.py
 Wed Sep 18 09:36:49 2013
@@ -0,0 +1,16 @@
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.
\ No newline at end of file

Propchange: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/__init__.py
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/bhlivesyntaxhighlight.py
URL: 
http://svn.apache.org/viewvc/bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/bhlivesyntaxhighlight.py?rev=1524352&view=auto
==============================================================================
--- 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/bhlivesyntaxhighlight.py
 (added)
+++ 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/bhlivesyntaxhighlight.py
 Wed Sep 18 09:36:49 2013
@@ -0,0 +1,68 @@
+import pkg_resources
+import re
+
+from trac.core import *
+from trac.util.html import html
+from trac.web.api import IRequestFilter
+from trac.web.chrome import ITemplateProvider, add_stylesheet,add_script
+
+class LiveSyntaxHighlightingPlugin(Component):
+    implements (IRequestFilter, ITemplateProvider)
+
+    ### IRequestFilter methods
+
+    ### Future implementation ###
+    # def match_request(self, req):
+    #     if re.match(r'.*?(/wiki/)', req.path_info) or re.match(r'/wiki/', 
+    #         req.path_info):
+    #         if req.args['action'] == "edit":
+    #             return True
+
+    def pre_process_request(self, req, handler):
+        return handler
+
+    def post_process_request(self, req, template, data, content_type):
+        flag = False
+        if re.match(r'.*?(/wiki/)', req.path_info) or re.match(r'/wiki/', 
+            req.path_info):
+            if req.args['action'] == "edit":
+                flag = True
+        
+        if flag:
+
+            ### Future implementation ###
+            # defaults = {}
+            # prefs = dict((key, req.session.get('wiki_%s' % key, 
defaults.get(key)))
+            #     for key in ('editrows','sidebyside','livesyntaxhighlight'))
+            # if 'from_editor' in req.args:
+            #     livesyntaxhighlight = req.args.get('livesyntaxhighlight') or 
None
+            #     if livesyntaxhighlight != prefs['livesyntaxhighlight']:
+            #         req.session.set('wiki_livesyntaxhighlight', 
+            #             int(bool(livesyntaxhighlight)), 1)
+            # else:
+            #     livesyntaxhighlight = prefs['livesyntaxhighlight']
+            # if livesyntaxhighlight:
+            add_script(req, 'livesyntaxhighlight/js/codemirror.js')
+            add_script(req, 'livesyntaxhighlight/js/wikimarkup.js')
+            add_stylesheet(req, 'livesyntaxhighlight/css/codemirror.css')
+            add_stylesheet(req, 'livesyntaxhighlight/css/wikimarkup.css')
+            add_script(req, "livesyntaxhighlight/js/livesyntaxhighlight.js")
+
+            ### Future implementation ###
+            # data.update({'livesyntaxhighlight', livesyntaxhighlight})
+            # self.env.log(data)
+            # self.env.log(template)
+            return template, data, content_type 
+        else:
+            self.log.debug("Condition not satisfied ")
+            return template, data, content_type
+
+
+    ### ITemplateProvider methods
+    def get_templates_dirs(self):
+        resource_filename = pkg_resources.resource_filename
+        return [resource_filename('bhlivesyntaxhighlight', 'templates')]    
+
+    def get_htdocs_dirs(self):
+        resource_filename = pkg_resources.resource_filename
+        return [('livesyntaxhighlight', 
resource_filename('bhlivesyntaxhighlight', 'htdocs'))]
\ No newline at end of file

Propchange: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/bhlivesyntaxhighlight.py
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/codemirror.css
URL: 
http://svn.apache.org/viewvc/bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/codemirror.css?rev=1524352&view=auto
==============================================================================
--- 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/codemirror.css
 (added)
+++ 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/codemirror.css
 Wed Sep 18 09:36:49 2013
@@ -0,0 +1,259 @@
+/* BASICS */
+
+.CodeMirror {
+  /* Set height, width, borders, and global font properties here */
+  font-family: monospace;
+  height: 300px;
+}
+.CodeMirror-scroll {
+  /* Set scrolling behaviour here */
+  overflow: auto;
+}
+
+/* PADDING */
+
+.CodeMirror-lines {
+  padding: 4px 0; /* Vertical padding around content */
+}
+.CodeMirror pre {
+  padding: 0 4px; /* Horizontal padding of content */
+}
+
+.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
+  background-color: white; /* The little square between H and V scrollbars */
+}
+
+/* GUTTER */
+
+.CodeMirror-gutters {
+  border-right: 1px solid #ddd;
+  background-color: #f7f7f7;
+  white-space: nowrap;
+}
+.CodeMirror-linenumbers {}
+.CodeMirror-linenumber {
+  padding: 0 3px 0 5px;
+  min-width: 20px;
+  text-align: right;
+  color: #999;
+}
+
+/* CURSOR */
+
+.CodeMirror div.CodeMirror-cursor {
+  border-left: 1px solid black;
+  z-index: 3;
+}
+/* Shown when moving in bi-directional text */
+.CodeMirror div.CodeMirror-secondarycursor {
+  border-left: 1px solid silver;
+}
+.CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor {
+  width: auto;
+  border: 0;
+  background: #7e7;
+  z-index: 1;
+}
+/* Can style cursor different in overwrite (non-insert) mode */
+.CodeMirror div.CodeMirror-cursor.CodeMirror-overwrite {}
+
+.cm-tab { display: inline-block; }
+
+/* DEFAULT THEME */
+
+.cm-s-default .cm-keyword {color: #708;}
+.cm-s-default .cm-atom {color: #219;}
+.cm-s-default .cm-number {color: #164;}
+.cm-s-default .cm-def {color: #00f;}
+.cm-s-default .cm-variable {color: black;}
+.cm-s-default .cm-variable-2 {color: #05a;}
+.cm-s-default .cm-variable-3 {color: #085;}
+.cm-s-default .cm-property {color: black;}
+.cm-s-default .cm-operator {color: black;}
+.cm-s-default .cm-comment {color: #a50;}
+.cm-s-default .cm-string {color: #a11;}
+.cm-s-default .cm-string-2 {color: #f50;}
+.cm-s-default .cm-meta {color: #555;}
+.cm-s-default .cm-error {color: #f00;}
+.cm-s-default .cm-qualifier {color: #555;}
+.cm-s-default .cm-builtin {color: #30a;}
+.cm-s-default .cm-bracket {color: #997;}
+.cm-s-default .cm-tag {color: #170;}
+.cm-s-default .cm-attribute {color: #00c;}
+.cm-s-default .cm-header {color: blue;}
+.cm-s-default .cm-quote {color: #090;}
+.cm-s-default .cm-hr {color: #999;}
+.cm-s-default .cm-link {color: #00c;}
+
+.cm-negative {color: #d44;}
+.cm-positive {color: #292;}
+.cm-header, .cm-strong {font-weight: bold;}
+.cm-em {font-style: italic;}
+.cm-link {text-decoration: underline;}
+
+.cm-invalidchar {color: #f00;}
+
+div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;}
+div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
+.CodeMirror-activeline-background {background: #e8f2ff;}
+
+/* STOP */
+
+/* The rest of this file contains styles related to the mechanics of
+   the editor. You probably shouldn't touch them. */
+
+.CodeMirror {
+  line-height: 1;
+  position: relative;
+  overflow: hidden;
+  background: white;
+  color: black;
+}
+
+.CodeMirror-scroll {
+  /* 30px is the magic margin used to hide the element's real scrollbars */
+  /* See overflow: hidden in .CodeMirror */
+  margin-bottom: -30px; margin-right: -30px;
+  padding-bottom: 30px; padding-right: 30px;
+  height: 100%;
+  outline: none; /* Prevent dragging from highlighting the element */
+  position: relative;
+}
+.CodeMirror-sizer {
+  position: relative;
+}
+
+/* The fake, visible scrollbars. Used to force redraw during scrolling
+   before actuall scrolling happens, thus preventing shaking and
+   flickering artifacts. */
+.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, 
.CodeMirror-gutter-filler {
+  position: absolute;
+  z-index: 6;
+  display: none;
+}
+.CodeMirror-vscrollbar {
+  right: 0; top: 0;
+  overflow-x: hidden;
+  overflow-y: scroll;
+}
+.CodeMirror-hscrollbar {
+  bottom: 0; left: 0;
+  overflow-y: hidden;
+  overflow-x: scroll;
+}
+.CodeMirror-scrollbar-filler {
+  right: 0; bottom: 0;
+}
+.CodeMirror-gutter-filler {
+  left: 0; bottom: 0;
+}
+
+.CodeMirror-gutters {
+  position: absolute; left: 0; top: 0;
+  padding-bottom: 30px;
+  z-index: 3;
+}
+.CodeMirror-gutter {
+  white-space: normal;
+  height: 100%;
+  padding-bottom: 30px;
+  margin-bottom: -32px;
+  display: inline-block;
+  /* Hack to make IE7 behave */
+  *zoom:1;
+  *display:inline;
+}
+.CodeMirror-gutter-elt {
+  position: absolute;
+  cursor: default;
+  z-index: 4;
+}
+
+.CodeMirror-lines {
+  cursor: text;
+}
+.CodeMirror pre {
+  /* Reset some styles that the rest of the page might have set */
+  -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
+  border-width: 0;
+  background: transparent;
+  font-family: inherit;
+  font-size: inherit;
+  margin: 0;
+  white-space: pre;
+  word-wrap: normal;
+  line-height: inherit;
+  color: inherit;
+  z-index: 2;
+  position: relative;
+  overflow: visible;
+}
+.CodeMirror-wrap pre {
+  word-wrap: break-word;
+  white-space: pre-wrap;
+  word-break: normal;
+}
+.CodeMirror-code pre {
+  border-right: 30px solid transparent;
+  width: -webkit-fit-content;
+  width: -moz-fit-content;
+  width: fit-content;
+}
+.CodeMirror-wrap .CodeMirror-code pre {
+  border-right: none;
+  width: auto;
+}
+.CodeMirror-linebackground {
+  position: absolute;
+  left: 0; right: 0; top: 0; bottom: 0;
+  z-index: 0;
+}
+
+.CodeMirror-linewidget {
+  position: relative;
+  z-index: 2;
+  overflow: auto;
+}
+
+.CodeMirror-widget {}
+
+.CodeMirror-wrap .CodeMirror-scroll {
+  overflow-x: hidden;
+}
+
+.CodeMirror-measure {
+  position: absolute;
+  width: 100%;
+  height: 0;
+  overflow: hidden;
+  visibility: hidden;
+}
+.CodeMirror-measure pre { position: static; }
+
+.CodeMirror div.CodeMirror-cursor {
+  position: absolute;
+  visibility: hidden;
+  border-right: none;
+  width: 0;
+}
+.CodeMirror-focused div.CodeMirror-cursor {
+  visibility: visible;
+}
+
+.CodeMirror-selected { background: #d9d9d9; }
+.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
+
+.cm-searching {
+  background: #ffa;
+  background: rgba(255, 255, 0, .4);
+}
+
+/* IE7 hack to prevent it from returning funny offsetTops on the spans */
+.CodeMirror span { *vertical-align: text-bottom; }
+
+@media print {
+  /* Hide the cursor when printing */
+  .CodeMirror div.CodeMirror-cursor {
+    visibility: hidden;
+  }
+}

Propchange: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/codemirror.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/wikimarkup.css
URL: 
http://svn.apache.org/viewvc/bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/wikimarkup.css?rev=1524352&view=auto
==============================================================================
--- 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/wikimarkup.css
 (added)
+++ 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/wikimarkup.css
 Wed Sep 18 09:36:49 2013
@@ -0,0 +1,48 @@
+.cm-wm-syntaxerror {
+       color: #FFF;
+       background-color: #900;
+}
+
+.cm-wm-deleted {
+       text-decoration: line-through;
+}
+
+
+.cm-wm-listitem:first-child { /*Added first child to fix duplicate padding 
when highlighting*/
+       padding-left: 10px;
+}
+
+.cm-wm-box {
+       border-top-width: 0px ! important;
+       border-style: solid;
+       border-width: 1px;
+       border-color: inherit;
+}
+
+.cm-wm-underline {
+       text-decoration: underline;
+}
+
+.cm-wm-superscript{
+    vertical-align: super;
+    font-size: 8px;
+}
+.cm-wm-subscript{
+    vertical-align: sub;
+    font-size: 8px;
+}
+.cm-wm-header1{
+    font-size: 2em; /* font size of h1 tag according to w3c*/
+    font-weight: bold;
+}
+.cm-wm-header2{
+    font-size: 1.5em; /* font size of h2 tag according to w3c*/
+    font-weight: bold;
+}
+.cm-wm-header3{
+    font-size: 1.17em; /* font size of h3 tag according to w3c*/
+    font-weight: bold;
+}
+.cm-wm-header5 {
+    font-weight: bold;
+}
\ No newline at end of file

Propchange: 
bloodhound/branches/livesyntaxhighlighting/bloodhound_livesyntaxhighlighting/bhlivesyntaxhighlight/htdocs/css/wikimarkup.css
------------------------------------------------------------------------------
    svn:eol-style = native


Reply via email to