Syntaxtic!

Performs syntax highlighting on files visited in the browser based on their extension

What is Syntaxtic!?

Syntaxtic! is a Chrome extension developed by andrew.j.matheny, and its main feature is "Performs syntax highlighting on files visited in the browser based on their extension".

Extension Screenshots

screenshot
screenshot
screenshot

Download Syntaxtic! Extension CRX File

Download Syntaxtic! extension files in crx format, manually install Chrome extensions in the browser, or share the crx files with friends to easily install Chrome extensions.

Extension Usage Instructions

                        Syntaxtic! is a chrome extension for syntax highlighting on source files opened in Chrome.  This extension was primarily designed for viewing files hosted in a web accessible version control system that doesn't natively provide highlighting but the usage certainly doesn't end there.

A variety of color themes and default sizes can now be selected from the extension options page.

Supported Languages:
    Actionscript    (.as .actionscript)
    Bash              (.sh)
    C++               (.cpp .h .cc)
    C#                 (.cs)
    C                   (.c .h)
    Clojure           (.clj)
    CSS               (.css)
    Diff                 (.diff .patch)
    Erlang            (.erl)
    Groovy            (.groovy)
    Go                  (.go)
    JavaScript       (.js)
    Java               (.java)
    JavaFX           (.fx)
    Latex             (.tex)
    Objective-C    (.m, .h)
    Perl                (.pl .perl .pm)
    PlainText        (.txt)
    PowerShell     (.ps1 .ps2)
    Python           (.py)
    Ruby              (.rb)
    Scala             (.scala)
    Swift              (.swift)
    Sql                (.sql, .pls)
    Typescript   (.ts)
    VisualBasic    (.vb)

Experimental Support:
    Bibtex            (.bib .bibtex)
    Common Lisp (.lisp .emacs)
    CSV pretty printing

Any file ending in one of the above extensions will be automatically highlighted using the appropriate grammar.

Any comments or suggestions can be directed to http://twitter.com/matheeeny or submitted as issues to https://github.com/matheeeny/Syntaxtic.

This extension would not be possible without Alex Gorbatchev's fantastic syntax highlighting API available at http://alexgorbatchev.com/SyntaxHighlighter/


UPDATES:

v1.1.25
- Added check for content-type = text/html.  If found, does not perform syntax highlighting

v1.1.28
- Added .cc as a c++ alias and .pm as a perl alias per request

v1.1.33
- Fixed actionscript as c# issue
- Fixed .cc aliasing

v2.0.43
- Added options page with selectable theme and size

v2.0.44
- Removed unused permissions

v3.0.74
- Added action button to disable line numbers or highlighting for the current page
- Updated to current version of extension manifest
- Small bug fixes
- Removed XML highlighting to let the default webkit viewer do it's thing

v3.0.117
- Added support for Go and CoffeeScript

v4.0.135
- Updated to latest version of syntax highlighting library which should fix many language highlighting issues
- Added support for typescript
- Added support for swift
- Removed CoffeeScript support due to complications with core library update                    

Extension Basic Information

Name Syntaxtic! Syntaxtic!
ID cgjalgdhmbpaacnnejmodfinclbdgaci
Official URL https://chromewebstore.google.com/detail/syntaxtic/cgjalgdhmbpaacnnejmodfinclbdgaci
Description Performs syntax highlighting on files visited in the browser based on their extension
File Size 106 KB
Installation Count 8,555
Current Version 4.0.142
Last Updated 2019-12-28
Publish Date 2019-12-26
Rating 4.07/5 Total 199 Ratings
Developer andrew.j.matheny
Payment Type free
Extension Website http://github.com/ajmath/Syntaxtic
Help Page URL http://twitter.com/matheeeny
Supported Languages en
manifest.json
{
    "update_url": "https:\/\/clients2.google.com\/service\/update2\/crx",
    "content_scripts": [
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/tex.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.tex",
                "*:\/\/*\/*.tex?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/objc.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.m",
                "*:\/\/*\/*.m?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/csv.js",
                "scripts\/CsvToArray.js",
                "scripts\/sprintf-0.7-beta1.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.csv",
                "*:\/\/*\/*.csv?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/bibtex.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.bibtex",
                "*:\/\/*\/*.bibtex?*",
                "*:\/\/*\/*.bib",
                "*:\/\/*\/*.bib?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/clisp.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.lisp",
                "*:\/\/*\/*.lisp?*",
                "*:\/\/*\/*.emacs",
                "*:\/\/*\/*.emacs?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/clojure.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.clj?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/vb.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.vb",
                "*:\/\/*\/*.vb?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/sql.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.sql",
                "*:\/\/*\/*.sql?*",
                "*:\/\/*\/*.pls",
                "*:\/\/*\/*.pls?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/scala.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.scala",
                "*:\/\/*\/*.scala?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/rb.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.rb",
                "*:\/\/*\/*.rb?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/ps.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.ps1",
                "*:\/\/*\/*.ps1?*",
                "*:\/\/*\/*.ps2",
                "*:\/\/*\/*.ps2?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/plain.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.txt",
                "*:\/\/*\/*.txt?*",
                "*:\/\/*\/*.log",
                "*:\/\/*\/*.log?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/perl.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.pl",
                "*:\/\/*\/*.pm",
                "*:\/\/*\/*.perl",
                "*:\/\/*\/*.plx"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/php.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.php",
                "*:\/\/*\/*.php?*",
                "*:\/\/*\/*.php5",
                "*:\/\/*\/*.php4",
                "*:\/\/*\/*.php3",
                "*:\/\/*\/*.phps",
                "*:\/\/*\/*.phps",
                "*:\/\/*\/*.phtml"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/javafx.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.fx",
                "*:\/\/*\/*.fx?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/java.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.java",
                "*:\/\/*\/*.java?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/js.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.js",
                "*:\/\/*\/*.js?*",
                "*:\/\/*\/*.json",
                "*:\/\/*\/*.json?*",
                "*:\/\/*\/*.pbxproj",
                "*:\/\/*\/*.pbxproj?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/groovy.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.groovy",
                "*:\/\/*\/*.groovy?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/erl.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.erl",
                "*:\/\/*\/*.erl?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/diff.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.diff",
                "*:\/\/*\/*.diff?*",
                "*:\/\/*\/*.patch",
                "*:\/\/*\/*.patch?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/css.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.css",
                "*:\/\/*\/*.css?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/less.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.less",
                "*:\/\/*\/*.less?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/sass.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.scss",
                "*:\/\/*\/*.scss?*",
                "*:\/\/*\/*.sass",
                "*:\/\/*\/*.sass?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/cpp.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.cpp",
                "*:\/\/*\/*.cpp?*",
                "*:\/\/*\/*.cc",
                "*:\/\/*\/*.cc?*",
                "*:\/\/*\/*.c",
                "*:\/\/*\/*.c?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/cHeader.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.h",
                "*:\/\/*\/*.h?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/sh.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.sh",
                "*:\/\/*\/*.sh?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/as3.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.as",
                "*:\/\/*\/*.as?*",
                "*:\/\/*\/*.actionscript",
                "*:\/\/*\/*.actionscript?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/cs.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.cs",
                "*:\/\/*\/*.cs?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/go.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.go",
                "*:\/\/*\/*.go?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/py.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.py",
                "*:\/\/*\/*.py?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/f.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.f",
                "*:\/\/*\/*.f90",
                "*:\/\/*\/*.f?*",
                "*:\/\/*\/*.f90?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/typescript.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.ts",
                "*:\/\/*\/*.ts?*"
            ],
            "run_at": "document_end"
        },
        {
            "js": [
                "scripts\/syntaxhighlighter.js",
                "langs\/swift.js",
                "content_script.js"
            ],
            "matches": [
                "*:\/\/*\/*.swift",
                "*:\/\/*\/*.swift?*"
            ],
            "run_at": "document_end"
        }
    ],
    "description": "Performs syntax highlighting on files visited in the browser based on their extension",
    "icons": {
        "48": "syntaxtic_48x48.png",
        "128": "syntaxtic_128x128.png"
    },
    "name": "Syntaxtic!",
    "background": {
        "scripts": [
            "background.js"
        ]
    },
    "options_page": "options.html",
    "version": "4.0.142",
    "manifest_version": 2,
    "web_accessible_resources": [
        "styles\/*",
        "scripts\/*",
        "toggle_*"
    ],
    "page_action": {
        "default_icon": "syntaxtic_48x48.png",
        "default_title": "Toggle",
        "default_popup": "popup.html"
    },
    "permissions": [
        "tabs",
        "http:\/\/*\/*",
        "https:\/\/*\/*",
        "ftp:\/\/*\/*"
    ]
}