はてなブログでは、ソースコードなどを構文(シンタックス)に応じて色付け(ハイライト)表示する シンタックス・ハイライト において、新しくプログラミング言語 Swift に対応しました。どうぞご利用ください。
※Swiftは、Appleが公開したiOSおよびOS X用のプログラミング言語で、iPhoneアプリ開発などに利用されます。
Swift - Overview - Apple Developer
シンタックス・ハイライトとは
シンタックス・ハイライトは、編集画面が「はてな記法」モードおよび「Markdown」モードのときに利用できます。はてな記法のスーパーpre記法や、Markdownのコードブロックにおいて、記述したコードがどの構文かをファイルタイプで指示します。
はてな記法でシンタックス・ハイライトを利用する
はてな記法では、スーパーpre記法で先頭の>||
の2本のパイプ(||
)の間にファイルタイプを指定します。Swiftでは次のように記述します。
>|swift| ...ソースコードを記述する... ||<
Markdownでシンタックスハイライトを利用する
バッククオート(`
)を3つ続けた```
で囲まれたコードブロックにおいて、先頭のバッククォートの最後にファイルタイプを指定します。Swiftでは次のように記述します。
```swift ...ソースコードを記述する... ```
表示例
シンタックス・ハイライトで表示したSwiftによるFizzBuzzプラグラムです。構文に応じて見やすく色付けされています。
// FizzBuzz by Enum enum FizzBuzz { case Fizz, Buzz, FizzBuzz, Other(Int) var state: String { switch self { case .Fizz: return "Fizz" case .Buzz: return "Buzz" case .FizzBuzz: return "FizzBuzz" case .Other(let i): return "\(i)" } } } func judge(i: Int) -> FizzBuzz { switch (i % 3, i % 5) { case (0, 0): return .FizzBuzz case (0, _): return .Fizz case (_, 0): return .Buzz default: return .Other(i) } } func generate(to: Int) -> [FizzBuzz] { switch to { case 1: return [judge(to)] default: return generate(to - 1) + [judge(to)] } } generate(15).map { println($0.state) } // FizzBuzz by extension of Int extension Int { var fizzBuzz: String { switch (self % 3, self % 5) { case (0, 0): return "FizzBuzz" case (0, _): return "Fizz" case (_, 0): return "Buzz" default: return "\(self)" } } } func gen(x: Int) -> [String] { switch x { case 1: return [x.fizzBuzz] default: return gen(x - 1) + [x.fizzBuzz] } } println(gen(15))
関連項目
はてなブログのシンタックス・ハイライトでは、このほかC、Perl、Python、Ruby、Go……など、現時点で543の構文に対応しています。詳細は次のヘルプを参照してください。
関連記事
- 2012-09-26 Markdownモードにおいて、コードブロックのシンタックスハイライトに対応しました(リンク先記事中の「その他の機能変更について」にある機能変更です)
- 2012-05-24 スーパーpre記法のシンタックスハイライトについて、はてなダイアリーで使用できるものすべてに対応しました。さらに、CoffeeScriptやioなど、新たにいくつかの言語にも対応しました(リンク先記事中の「その他の機能追加と不具合修正について」にある機能追加です)
はてなダイアリー・はてなグループでは
シンタックス・ハイライトは、はてなダイアリー・はてなグループでも利用できますが、対応している構文が異なります。詳細は次のヘルプを参照してください。