Highlight
A humble SublimeText package for exporting highlighted code as RTF or HTML
Details
Installs
- Total 111K
- Win 72K
- Mac 28K
- Linux 12K
Nov 21 | Nov 20 | Nov 19 | Nov 18 | Nov 17 | Nov 16 | Nov 15 | Nov 14 | Nov 13 | Nov 12 | Nov 11 | Nov 10 | Nov 9 | Nov 8 | Nov 7 | Nov 6 | Nov 5 | Nov 4 | Nov 3 | Nov 2 | Nov 1 | Oct 31 | Oct 30 | Oct 29 | Oct 28 | Oct 27 | Oct 26 | Oct 25 | Oct 24 | Oct 23 | Oct 22 | Oct 21 | Oct 20 | Oct 19 | Oct 18 | Oct 17 | Oct 16 | Oct 15 | Oct 14 | Oct 13 | Oct 12 | Oct 11 | Oct 10 | Oct 9 | Oct 8 | Oct 7 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 4 | 1 | 1 | 5 | 1 | 1 | 6 | 0 | 0 | 2 | 2 | 3 | 0 | 3 | 9 | 7 | 6 | 1 | 2 | 1 | 1 | 3 | 9 | 9 | 3 | 0 | 1 | 1 | 6 | 4 | 5 | 2 | 3 | 2 | 8 | 6 | 4 | 6 | 3 | 1 | 0 | 2 | 5 | 3 | 4 | 4 |
Mac | 1 | 1 | 1 | 2 | 1 | 1 | 1 | 0 | 0 | 2 | 3 | 0 | 2 | 2 | 0 | 4 | 1 | 1 | 0 | 0 | 1 | 2 | 5 | 1 | 4 | 0 | 1 | 4 | 3 | 2 | 1 | 1 | 1 | 0 | 1 | 1 | 2 | 2 | 0 | 0 | 0 | 2 | 1 | 1 | 2 | 2 |
Linux | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 3 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 2 | 1 | 1 | 0 | 3 | 0 | 0 | 0 | 0 | 1 | 1 | 3 |
Readme
- Source
- raw.githubusercontent.com
SublimeHighlight
Sublime Text 3 users: a python3
branch is also available. Just git checkout python3
from the root of your package installation to use in in ST3. If you upgrade from a previous
ST2 installation or encounter problems with the package, please proceed as detailed below:
- Remove the package, if installed, using Package Control.
- Add a repository:
https://github.com/n1k0/SublimeHighlight/tree/python3
- Install
SublimeHighlight
with Package Control. It should pull the correct branch from Github. - Restart Sublime Text 3
This SublimeText2 package allows to highlight & export currently edited code to HTML or RTF using Pygments.
Several commands are added to SublimeText2 when installed:
- SublimeHighlight: convert to HTML: will convert current code to highlighted HTML in a new SublimeText tab.
- SublimeHighlight: convert to RTF: will convert current code to highlighted RTF in a new SublimeText tab.
- SublimeHighlight: view as HTML: will convert current code to highlighted HTML and open it in your default browser.
- SublimeHighlight: view as RTF: will convert current code to an RTF document and open the generated file with your default program.
- SublimeHighlight: copy to clipboard as HTML: will convert current code to highlighted HTML and store it into the system clipboard.
- SublimeHighlight: copy to clipboard as RTF: will convert current code to raw highlighted RTF and store it into the system clipboard.
This latter command, Copy to clipboard as RTF, allows to copy and paste highlighted code from Sublime Tex 2 to other softwares like Powerpoint, Keynotes, Word, etc.
Settings
You can find a dedicated user settings file in the Preferences > Package
Settings > SublimeHighlight
menu where you can customize Pygments settings:
Sample Settings - User
file:
{
"theme": "monokai",
"linenos": "inline",
"noclasses": true,
"fontface": "Menlo"
}
Check out the available options below.
Themes
You can choose the Pygments theme to use by setting the theme
option:
{
"theme": "vim"
}
Available themes are:
autumn
borland
bw
colorful
default
emacs
friendly
fruity
manni
monokai
murphy
native
pastie
perldoc
rrt
tango
trac
vim
vs
Here's a screenshot of what some example code looks like with different themes:
Note: You can add your own pygments files by copying the _theme_.py
to Packages/Highlight/pygments/styles
, and adding your theme to the STYLES_MAP
in SublimeHighlight/pygments/styles/__init__.py
. Eg.:
# Maps style names to 'submodule::classname'.
STYLE_MAP = {
'default': 'default::DefaultStyle',
'mytheme': 'mytheme::MyThemeStyle',
}
Line numbering
You can add line numbering by setting the linenos
option:
{
"linenos": "inline"
}
Accepted values for the linenos
option are table
, inline
or false
— the latter being the default.
Inline styling
You can set the rendered HTML code to use inline styles instead of CSS classes:
{
"noclasses": true
}
Lexer options
SublimeHighlight supports Pygments lexer options. To set an option for a given lexer, eg. PHP
:
{
"lexer_options": {
"PHP": {
"startinline": true
}
}
}
Font face
You can set font face used in RTF output by using the fontface setting.
{
"fontface": "Menlo"
}
Setting up shortcuts
This is a sample key binding for copying RTF highlighted code contents to your clipboard by pressing ctrl + alt + c:
[
{ "keys": ["ctrl+alt+c"],
"command": "sublime_highlight",
"args": { "target": "clipboard",
"output_type": "rtf"
}},
]
You can combine the target
and output_type
argument values to achieve the stuff you want. Possible values are:
target
:
sublime
: new Sublime Text 2 tabexternal
: new external fileclipboard
: system clipboard
output_type
:
rtf
: RTF formathtml
: HTML format
Why this package?
Mostly for toying around with SublimeText2 plugin API (which is great), but also to ease the process of copying/pasting richly formatted code over softwares like Powerpoint, Word, Keynote and shits like that.
License
This software is released under the terms of the MIT license.