つれづれなる備忘録

日々の発見をあるがままに綴る

ブログデザイン備忘録~シンタックスハイライト

1. シンタックスハイライト

 今回ははてな記法で使えるシンタックスハイライト(言語ごとの構文に応じた色付け表示)について紹介する。はてなヘルプのリンクとしては ソースコードを色付けして表示する(シンタックスハイライト) - はてなブログ ヘルプがあるが、有用性が高いのでサイドメニューのリンクにも追加した。

2. はてな記法でのシンタックスハイライトサンプル

言語を指定する場合上のリンクの中にある言語名を```言語名と記述する。いくつかシンタックスハイライトのサンプルを下に示す。(たくさんあるので、いくつか抜粋して掲載) pythonのようなOSS以外にmatlab(m-file)やmapleなど商用ソフトウェアも含まれている。

awk

BEGIN {
    blank_line = 0
    bol_apple = 0
}
/^$/ {
    ++blank_line
}
{
    ++bol_apple
}
END {
    print "空行は" blank_line "行です。"
    print "「林檎」・「りんご」または「リンゴ」という文字列を含むのは" bol_apple "行です。"
}

basic

10 X=INT(RND(1)*7+1)
20 LOCATE 10,10:PRINT X
30 GOTO 10

c

#include <stdio.h>
void main(){
printf("Hello World!");
}

C++(cpp)

#include <iostream>

int main()
{
    std::cout << "Hello, World!\n";
}

css

.hatena-module-archive .hatena-module-title:before {
  font-family: "Font Awesome 5 Free";
  content: '\f187';
}

cuda

#include <stdio.h>

__device__ void device_strcpy(char *dst, const char *src) {
    while (*dst++ = *src++);
}

fortran

do i=1,nn
if (b(i) /= 0) then
a(i) = 1.0 / b(i)
else
exit
end if
end do

git

git clone https://username@domain/path/to/repository

gnuplot

plot exp(x) with points pt 15 ps 1.5 lc "red"

go

package main
import "fmt"
func main() {
    fmt.Println("Hello, World")
}

html

<div class="menubar"> 
   <ul>
         <li><a href="#" >メインメニュー1</a></li>
         <li><a href="#" >メインメニュー2</a></li>
   </ul>
</div>

java

public class Hello {
    public static void main(String[] args) {
        System.out.println("Hello, world!");
    }
}

javascript

<script>
var s = 0;
function countSecond() {
    s++;
    if (s > 5) {
        clearInterval();
        document.getElementById("sample1").innerHTML = "秒数カウントを終了";
    } else {
        document.getElementById("sample1").innerHTML = s+"秒";
    }
}
</script>

maple

p1:= pointplot([1,2],[3,-1]);

matlab

newFile = fullfile(tmp,'ANewFile.m');
fid = fopen(newFile,'w');
fprintf(fid,'Z = magic(5);\n');
fprintf(fid,'b = bar3(Z);\n'); 
fclose(fid);

php

<?php
   $banban[] = "HTML";
   $banban[] = "XHTML";
   $banban[] = "XML";
  ?>

processing

background(0);
fill(255, 0, 0);
rect(10, 10, 60, 60); //左上
fill(0, 0, 255);
rect(30, 30, 60, 60); //右下

python

result = []
for num1 in range(1, 10):
    tmp = []
    for num2 in range(1, 10):
        tmp.append(f'{num1 * num2:2}')
    result.append(tmp)

ruby

cities  = %w[ London
              Oslo
              Paris
              Amsterdam
              Berlin ]
visited = %w[Berlin Oslo]

swift

var explicitDouble: Double = 70 // 70.0
var implicitInteger = 70    // Int
var implicitDouble = 70.0   // Double
 
let theAnswer = 42

tex

\displaystyle f(x)=\sum\_{n=0}^{\infty} \frac{f^{(n)}(a)}{n!} (x-a)^{n}

typescript

let v_arr1: string[] = ["Red", "Green", "Blue"];
let v_arr2: Array<string> = ["Red", "Green", "Blue"];
let v_tuple: [string, number] = ["Yamada", 26];