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

Latest Version

Version
4.0.142
Update
December 27, 2019
Size
106KiB
Developer
Category
Users
7,000+
Rating
4.075 ★
Manifest Version
2
Web Store Status
Languages Support
English
See more
Permissions
Tabs
Http://*/*
Https://*/*
Ftp://*/*
See more

Syntaxtic! Extension

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
Read more

Source 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://*/*"]}
Read more

How to download and manually install Syntaxtic! extension for Chrome

Looking for a way to install Syntaxtic! extensions for Chrome, you can search for them in the Chrome Web Store, clicking the "Add to Chrome" button, and following the straightforward process.

However, you may need to install Syntaxtic! extensions manually, this article outlines two simple methods to effortlessly install Syntaxtic! extensions, whether they come as unpacked folders in compressed formats like .zip or as .crx files.

Method 1: Download Syntaxtic! extension and manually install through Drag &Drop

If you ever need to manually install a Syntaxtic! extension for Chrome, don't worry, it's a simple process. Just follow these easy steps, and you will have your extension ready to use in no time.

Step 1: Download the Syntaxtic! Extension by clicking the "Download CRX" button on the website.

Look for the Syntaxtic! extension you wish to install. Go to the website and download the Syntaxtic! extension package, which is usually a .CRX file and comes in a zipped file. Here ".crx" file is the format for Syntaxtic! extension that contains all the data.

Step 2: Extract &Arrange Files

Once the file is downloaded, extract that file into its own folder. Similarly, give that extension files a permanent home. In other words, keep it in a folder that you don't accidentally delete it because these files will be needed to make that extension work.

Step 3: Go to the Chrome Extensions Page

Open Google Chrome and in the address bar, type chrome://extensions; it will open the Google Chrome extensions page. Make sure that "My extensions" is selected in the sidebar.

Step 4: Drag and Drop the Extension

Now, go to the folder where you extracted the Syntaxtic! extension and drag &drop the extension file from there anywhere onto the extension page within Google Chrome.

Step 5: Complete the Installation

Once you drag and drop the extension file, follow the steps that Google Chrome takes you through. Similarly, if the extension file is of .crx file format, you will be required to review the permissions and then add the extension.

Now, you can manage that added extension as you would like to with any other Chrome extension that you added through Chrome Webstore. Its icon will also appear in the Google Chrome Menu on the right side of the address bar once you activate it.

Method 2: Download Syntaxtic! extension for Chrome and install in Developer Mode

This is another method to install Syntaxtic! extension manually, but the twist is that here, you install by enabling the developer mode option provided in Google Chrome. This mode is commonly used for testing extensions or running unpublished tools.

Step 1: Download the Syntaxtic! extension file

Select and download the Syntaxtic! extension by clicking the 'Download CRX' button on the website.

Step 2: Extract the downloaded contents

Convert the file to a ZIP file if it is in CRX format then extract the Syntaxtic! extension zip file or folder that you downloaded. Make sure you extract it using the same folder name and keep it safely in another folder, so you don't delete it by mistake. The extracted folder will be needed to keep your Syntaxtic! extension running.

Step 3: Open Chrome Extension Setting Page

In the address bar of Google Chrome, type chrome://extensions and open the Chrome Extension Page.

Step 4: Enable Developer Mode

After opening the Chrome Extension page, look at the top right side, and you will find the toggle option of "Developer mode."Simply enable that developer mode option.

Step 5: Load the Unpacked Extension

Once you enable the developer mode option, you will see the menu of Load Unpacked, Pack Extensions and Update. From that, select the option "Load unpacked."

Step 6: Select the Extension Folder

Once the pop-up opens upon clicking Load unpacked, select the Syntaxtic! extension directory and click on the "Select Folder "button.

Step 7: Confirm and Install

After you select an extension folder of a Google Chrome extension you're installing manually, confirm its installation for the final time and let the installation complete.

Conclusion

Here we've made a step-by-step guide on How to manually install Syntaxtic! extension in 2 ways. We hope this guide proves helpful.

Similar Extensions

icon

Clear Code Extension · Developer Tools 7,000+ 7 ★ 1.2MiB

icon

Sight Extension · Developer Tools 7,000+ 248 ★ 871KiB

icon

Refined GitHub Extension · Developer Tools 7,000+ 213 ★ 572KiB

icon

Code Formatter Extension · Developer Tools 7,000+ 35 ★ 5.9MiB

icon

DevTools Theme: Zero Dark Matrix Extension · Developer Tools 7,000+ 545 ★ 56.82KiB

icon

Syntax Highlight Code Blocks Extension · Productivity 7,000+ 9 ★ 24.75KiB

icon

Sourcegraph Extension · Developer Tools 7,000+ 169 ★ 8.22MiB

icon

Octotree - GitHub code tree Extension · Developer Tools 7,000+ 1139 ★ 3.54MiB

icon

Git Patch Viewer Extension · Developer Tools 7,000+ 38 ★ 18.64KiB

icon

XML Tree Extension · Developer Tools 7,000+ 555 ★ 422KiB

icon

My Java Zone Extension Extension · Developer Tools 7,000+ 28 ★ 674KiB

icon

Undisposition [Racle fork] Extension · Productivity 7,000+ 35 ★ 15.47KiB

icon

Github linkify for CMSSW Extension · Developer Tools 7,000+ 5 ★ 19.05KiB

icon

Quick source viewer Extension · Developer Tools 7,000+ 115 ★ 74.21KiB

icon

Markdown Here Extension · Productivity 7,000+ 367 ★ 534KiB

icon

OctoLinker Extension · Developer Tools 7,000+ 110 ★ 184KiB

icon

DevTools Author Extension · Developer Tools 7,000+ 117 ★ 377KiB

icon

Vimium Extension · Productivity 7,000+ 4468 ★ 272KiB

icon

JSBeautify for Google Chrome™ Extension · Developer Tools 7,000+ 52 ★ 37.22KiB

icon

greybeard devtools theme Extension · Developer Tools 7,000+ 19 ★ 539KiB

icon

Chrome extension source viewer Extension · Developer Tools 7,000+ 422 ★ 227KiB

icon

LiveReload Extension · Developer Tools 7,000+ 808 ★ 60.78KiB

icon

Regex Search Extension · Productivity 7,000+ 178 ★ 53.24KiB

icon

GitHub Hovercard Extension · Developer Tools 7,000+ 41 ★ 121KiB

User reviews

icon

Stein Gunnar Bakkeby (ID: 000000a13ef1821d) Voted 5 ★ - Updated 09/26/2023 This extension is excellent for my needs which often involve having a quick look at .diff files on the web. Something that has been annoying me is that if you double click on some code to copy it everything is selected and it all becomes white and I need to click the left hand side with the line numbers in order to restore the highlighting. Turns out that you can turn that off by going to the Syntaxtic extension options and changing quickCode from Enabled to Disabled. Thanks for this.

icon

DA A (ID: 0000005bb93c8bda) Voted 5 ★ - Updated 05/05/2023 fantastic, but I need auto wrap option function, and beautifier option function. thanks!

icon

Simone Zecca (ID: 0000007c7e5d7a11) Voted 4 ★ - Updated 03/05/2020 Cool. Would be nice the ability to add user extension to be opened as simple text. This would help to read plain text files like for instance ".conf" without downloading on local disk

icon

Greg Johnson (ID: 0000004337355f39) Voted 1 ★ - Updated 10/23/2019 Doesn't handle Javascript well _at all_.

icon

Kevin Tang (ID: 000000d3e7eeb5a9) Voted 5 ★ - Updated 08/02/2019 much easier to check code in the browser with highlighted syntax, thanks for the crx