ハイライトのぐあいはどうだ?

ハイライトを少し試して見る。まずはふざけた C 言語プログラム。こんなコードは書いてはいけない。

#include <string.h>
#include <stdio.h>

int
main(int argc, char *argv[])
{
    char c;
    char *p;
    int i;

    c = "string"[3];
    printf("%c\n", c);

    c = 3["string"];
    printf("%c\n", c);

    p = "string";
    for (i = 0; i < strlen(p); i++) {
        c = i[p];
        printf("%c\n", c);
    }
}


次に Makefile。もう少しハイライトされるといいんだけど、default ではこんな感じのようだ。js を追加すれば見栄えはもっと良くなるのだろうとは思う。

NAME = noname

#.SUFFIXES: .pdf .gplt

all: $(NAME).ps

$(NAME).ps: $(NAME).tex \
                relation.tex \
                real-explow.tex
        platex $(NAME).tex
        pbibtex $(NAME)
        platex $(NAME).tex
        dvips $(NAME).dvi
        dvipdfmx $(NAME).dvi

.PRECIOUS: %.pdf
%.xbb: %.pdf
        extractbb $*.pdf
%.pdf: %.gplt
        $<
        epstopdf $*.ps


.PHNOY: clean
clean:
        rm -f *.ps *.pdf *.dvi *.log *.pic *.gpic *.gif *.aux *.toc *.xbb *.bbl *.blg *~

pandoc:
        pandoc --mathjax -s $(NAME).tex -o $(NAME).pandoc.html

pandoc2:
        pandoc --mathjax --template=./template.html -s $(NAME).tex -o $(NAME).pandoc.html

最後は sh。どうしてこういうコードになっているかはもはや思い出せない(タイムスタンプ見たら、Jun 15 1992 だった…)。

#! /bin/sh
#
# $Id: chkdef,v 1.1 1992/06/15 01:43:52 hisasima Exp hisasima $
#
# $Author: hisasima $
#
# Check multiple define symbol in C source files.
#
TMP=/tmp/aho.$$
IDFILE=/tmp/id.$$
trap '/bin/rm -f $TMP $IDFILE; exit 1' 1 2 9 15

egrep '^#[  ]*define' "$@" /dev/null | \
 sed 's:#[  ]*define:#define' | sort > $TMP

cat $TMP | while read DUMMY1 IDENT DUMMY2
do
 IDENT=`echo $IDENT | sed 's:(.*::'`
 echo $IDENT
done | sort | uniq > $IDFILE

cat $IDFILE | while read IDENT
do
 LOTS=`egrep $IDENT $TMP | wc -l`
 if [ $LOTS -ne 1 ]
 then
  egrep $IDENT $TMP
 fi
done

/bin/rm -fr $TMP $IDFILE


0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。