閑話休題

ブログの効能と言わば何ぞ其れ日々の由なし事の記帳に限らんや

はてな記法のsuper pre記法でプログラミングコードのシンタックスハイライトする

やりかた

ぐだぐだ言わずに結果から

>|言語名|
プログラムコードはじめ
.
.
.
プログラムコードおわり
<*最後の行に忘れずにスーパープレ記法の終わりに付ける「||<」を記述>

C++の例で言えば(言語名はcpp)

//
//  string2.cpp
//  master_thesis
//
//  Created by singo on 2014/11/03.
//  Copyright (c) 2014年 utfp. All rights reserved.
//

#include <iostream>
#include <cstdio>
using namespace std;

int f(int& x, int& y){
    return 2*x+y;
}
%関数を宣言
void show(int& x, int& y){
    char str[5000];
    sprintf(str,"f(%d,%d)=%d",x,y,f(x,y));
    cout<< str << endl;
}
int main(){
    int i;
    int j;
    for (i=0; i<500; ++i) {
        for (j=0; j<500; ++j){
            show(i,j);
        }
    }
    
}

ね,きれいでしょ?

シンタックスハイライトとは?

シンタックスハイライトとは,テキストエディタの機能であり、テキスト中の一部分をその分類ごとに異なる色やフォントで表示するものである。シンタックスカラーリング(英: Syntax coloring)とも。
この機能により、プログラミング言語マークアップ言語といった構造化された言語において、その構造や構文上のエラーが視覚的に区別しやすくなるため、ソースコードの記述が容易となる。エディタによってはシンタックスハイライトと、スペルチェックやコード畳み込みといった、その他の機能を統合して提供するものもある。」
*1
らしいです.ようするに,プログラミングコードの重要な部分(変数とか予約語とか)を色付けしておけば見やすい,ということ.上のC++を普通のスーパーpre記法で記述すると,

プログラムコードはじめ
.
.
.
プログラムコードおわり
<*最後の行に忘れずにスーパープレ記法の終わりに付ける「||<」を記述>

C++の例で言えば(言語名はcpp)

//
//  string2.cpp
//  master_thesis
//
//  Created by singo on 2014/11/03.
//  Copyright (c) 2014年 utfp. All rights reserved.
//

#include <iostream>
#include <cstdio>
using namespace std;

int f(int& x, int& y){
    return 2*x+y;
}
void show(int& x, int& y){
    char str[5000];
    sprintf(str,"f(%d,%d)=%d",x,y,f(x,y));
    cout<< str << endl;
}
int main(){
    int i;
    int j;
    for (i=0; i<500; ++i) {
        for (j=0; j<500; ++j){
            show(i,j);
        }
    }
    
}

となり可読性がかなり下がっちゃう.コメントとコードが一緒の色で表示されるのはかなり厄介なり.