Rust

Rustコードスクリーンショット生成

Rustのスニペットを、Macから離れることなく共有したくなる画像に。

Rust のコードは記号が多いため、読みやすさをテーマ選びが左右する度合いが他の言語より大きくなります。

Codeshotは貼り付けたコードからRustを判別するので、言語の選び間違いは起きません。付属する30種類のうち3つのテーマで同じスニペットを、アプリ自身のスタイルシートで表示しています。

use std::fs;

#[derive(Debug)]
pub struct Snapshot<'a> {
    pub code: &'a str,
    pub scale: u8,
}

impl<'a> Snapshot<'a> {
    fn save(&self, path: &str) -> std::io::Result<()> {
        fs::write(path, self.render())
    }
}
Solarized · ダーク
use std::fs;

#[derive(Debug)]
pub struct Snapshot<'a> {
    pub code: &'a str,
    pub scale: u8,
}

impl<'a> Snapshot<'a> {
    fn save(&self, path: &str) -> std::io::Result<()> {
        fs::write(path, self.render())
    }
}
Tokyo Night · ダーク
use std::fs;

#[derive(Debug)]
pub struct Snapshot<'a> {
    pub code: &'a str,
    pub scale: u8,
}

impl<'a> Snapshot<'a> {
    fn save(&self, path: &str) -> std::io::Result<()> {
        fs::write(path, self.render())
    }
}
Xcode · ダーク

Rustに合うテーマ選び

コントラストの低いテーマではライフタイムやジェネリクスが埋もれます。Solarized と Tokyo Night はどちらも演算子と識別子をはっきり分けるので、借用チェッカーの話をするときに向いています。

サイズを正しく決める

画像サイズを内容に合わせるか、比率で固定します(1:1、4:3、3:2、16:9、9:16、2:3、3:4)。そのうえで1×・2×・3×から選んで書き出せば、Retinaディスプレイでも鮮明なままです。Cでクリップボードに直接コピー、またはSで保存できます。

30種類のテーマを見比べるか、全体の流れをご覧ください。

Rustと、ほかの59言語のために

すべてMac上で動作します。コードが外に出ることはありません。

macOS版をダウンロード