Skip to content
Create beautiful image of your source code.
Rust Shell Python PowerShell
Branch: master
Clone or download
Latest commit 5290a89 Aug 13, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
assets Keep the empty directory Jul 13, 2019
ci Update CI Aug 9, 2019
src Implement --to-clipboard for macOS Aug 11, 2019
.gitignore Keep the empty directory Jul 13, 2019
.travis.yml Update CI Aug 9, 2019
Cargo.lock Change features of syntect Aug 13, 2019
Cargo.toml Change features of syntect Aug 13, 2019
LICENSE Initial commit Jul 10, 2019
README.md Update CI Aug 9, 2019
appveyor.yml Update CI Aug 9, 2019

README.md

Silicon

Crates.io Documentation Linux Build Status Windows build status License

Silicon is an alternative to Carbon implemented in Rust.

It can render your source code into a beautiful image.

Why Silicon

Carbon is a wonderful tool to create a beautiful image of your source code.

But it is a web application, which brings the following disadvantages:

  • Cannot work without Internet & browser.
  • Doesn't work well with shell. (Although there is carbon-now-cli, its experience is not very good, especially when the network is not so good.)

However, Silicon doesn't have these problem. It's is implemented in Rust and can work without browser & Internet.

Silicon can render your source code on the fly while carbon-now-cli takes several seconds on it.

Disadvantages

It's not as beautiful as Carbon...

Install

Cargo

cargo install silicon

# or the latest version (Linux/macOS)

cargo install --git https://github.com/Aloxaf/silicon

# for Windows (see #11)

git clone --single-branch --branch dev https://github.com/Aloxaf/silicon
cd silicon
cargo build --release

AUR

Silicon is available on AUR (Thanks to @radmen).

You can install it with any AUR helpers you like.

eg.

pikaur -S silicon

Dependencies

Arch Linux

sudo pacman -S --needed pkgconf freetype2 fontconfig libxcb xclip

Examples

Read code from file

silicon main.rs -o main.png 

Read code from clipboard, and copy the result image to clipboard(--to-clipboard is only available on Linux)

silicon --from-clipboard -l rs --to-clipboard

Use multiple fonts

silicon main.rs -o main.png -f 'Hack; SimSun'

Highlight specified line

silicon main.rs -o main.png --highlight-lines '1; 3-4'

Custom the image

silicon ./target/test.rs -o test.png \
    --shadow-color '#555' --background '#fff' \
    --shadow-blur-radius 30 --no-window-controls

Transparent background

The color can be #RGB[A] or #RRGGBB[AA]

silicon ./target/test.rs -o test.png --background '#fff0'

see silicon --help for detail

You can’t perform that action at this time.