diff --git a/src/wsdiff.py b/src/wsdiff.py
index 2c5dbb5..b83c523 100644
--- a/src/wsdiff.py
+++ b/src/wsdiff.py
@@ -40,17 +40,21 @@ from pygments.lexer import RegexLexer
from pygments.lexers import get_lexer_by_name, guess_lexer_for_filename, get_all_lexers, LEXERS
from pygments import token
+DIFF_STYLE_TOGGLE = r'''
+
-
-
Split view
-
-
-
+ $diff_style_toggle
+
+
+ $body
-
-
-
-$body
-
'''
@@ -513,22 +524,6 @@ span.clearbg {
}
'''
-class SexprLexer(RegexLexer):
- name = 'KiCad S-Expression'
- aliases = ['sexp']
- filenames = ['*.kicad_mod', '*.kicad_sym']
-
- tokens = {
- 'root': [
- (r'\s+', token.Whitespace),
- (r'[()]', token.Punctuation),
- (r'([+-]?\d+\.\d+)(?=[)\s])', token.Number),
- (r'(-?\d+)(?=[)\s])', token.Number),
- (r'"((?:[^"]|\\")*)"(?=[)\s])', token.String),
- (r'([^()"\s]+)(?=[)\s])', token.Name),
- ]
- }
-
from pygments.formatter import Formatter
from pygments.token import STANDARD_TYPES
@@ -674,6 +669,9 @@ def cli():
print(string.Template(HTML_TEMPLATE).substitute(
title=pagetitle,
pygments_css=syntax_css,
+ main_css=MAIN_CSS,
+ diff_style_toggle=DIFF_STYLE_TOGGLE,
+ diff_style_script=DIFF_STYLE_SCRIPT,
body='$body'), file=args.output)
sys.exit(0)
@@ -717,14 +715,10 @@ def cli():
if args.lexer:
lexer = get_lexer_by_name(lexer)
else:
- if new.suffix.lower() in ('.kicad_mod', '.kicad_mod', '.kicad_pcb', '.kicad_sch')\
- or new.name == 'sym_lib_table':
- lexer = SexprLexer()
- else:
- try:
- lexer = guess_lexer_for_filename(new, new_text)
- except:
- lexer = get_lexer_by_name('text')
+ try:
+ lexer = guess_lexer_for_filename(new, new_text)
+ except:
+ lexer = get_lexer_by_name('text')
diff_blocks.append(html_diff_block(old_text, new_text, suffix, lexer, hide_filename=args.nofilename))
body = '\n'.join(diff_blocks)
@@ -735,6 +729,9 @@ def cli():
print(string.Template(HTML_TEMPLATE).substitute(
title=pagetitle,
pygments_css=syntax_css,
+ main_css=MAIN_CSS,
+ diff_style_toggle=DIFF_STYLE_TOGGLE,
+ diff_style_script=DIFF_STYLE_SCRIPT,
body=body), file=args.output)
if args.open: