TeraPadでC言語の標準ライブラリ関数をハイライト表示する
投稿日: 最終更新日:2016/02/11 投稿者:nk.
TeraPadでのPHP(+WP)のハイライト表示追加はこちら
C言語の標準ライブラリに含まれる関数がハイライト表示されないことに気付いたので、こちらも追加することにしました。
参考にしたサイトは以下の2つです。
- 標準ライブラリ関数一覧 – 苦しんで覚えるC言語
- C言語 予約語一覧 [ if, else, switch, for, while, continue, goto, return, … ] | 勇躍のゴミ箱
Cの標準ライブラリが増えることは考えにくいので、PHPのときのようにデータ抽出に使ったPerlコードは載せません。と思ったけど詳しい解説なしで記しておきます。(ファイル邪魔だから消したいけどコードを残しておきたかったのでこのスペースを私的流用)
なお、実際に追加する際の手順はPHPの時の記事を参照してください。
[色]タブの位置は下の画像を参照してください。
スポンサーリンク
cpp.kwd
それでは、cpp.kwdを作成して、以下のテキストデータに置き換えてください。
↓の領域内をダブルクリックすれば選択されます。
# WinMain _Bool _Complex _Imaginary __DATE__ __FILE__ __LINE__ __STDC__ __TIME__ __asm __assume __based __cdecl __cplusplus __declspec __except __fastcall __finally __inline __int16 __int32 __int64 __int8 __leave __multiple_inheritance __single_inheritance __stdcall __try __uuidof __virtual_inheritance abort abs acos asctime asin asm assert atan atan2 atexit atof atoi atol auto bad_cast bad_typeid bool break bsearch calloc case catch cdecl ceil char class clearerr clock const const_cast continue cos cosh ctime default define defined delete difftime div dllexport dllimport do double dynamic_cast elif else endasm endif entry enum error except exit exp explicit extern fabs false far fclose feof ferror fflush fgetc fgetpos fgets finally float floor fmod fopen for fprintf fputc fputs fread free freopen frexp friend fscanf fseek fsetpos ftell fwrite getc getchar getenv gets gmtime goto huge if ifdef ifndef import include inline int interrupt isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit labs ldexp ldiv line localtime log log10 long longjmp main malloc memchr memcmp memcpy memmove memset modf mutable naked namespace near new noreturn operator pascal perror pow pragma printf private protected public putc putchar puts qsort raise rand realloc register reinterpret_cast remove rename restrict return scanf setjmp short signal signed sin sinh sizeof sqrt srand static static_cast strcat strchr strcmp strcpy strcspn strerror strftime strlen strncat strncmp strncpy strpbrk strrchr strspn strstr strtod strtok strtol strtoul struct switch system tan tanh template this thread throw time true try type_info typedef typeid typename undef union unsigned using uuid virtual void volatile while wmain xalloc
追記: ファイルとしてDL
追記
ファイルとして公開するやり方がわかったので、zipで置いておきます。
“TeraPad用 C/C++ キーワードリスト” をダウンロード cpp.kwd_.zip – 587 回のダウンロード – 1,015 B
リスト抽出スクリプト(perl)
標準ライブラリ関数一覧 – 苦しんで覚えるC言語からリストを抽出するPerlスクリプト
/^[ (\w+) ]/ and print $1,$/ while<DATA>; <>; __DATA__ [ fopen ] 関数型 : FILE *fopen(const char *filename, const char *mode); 引数 : ファイル名、モード文字列 戻り値 : 開いたファイルポインタ。失敗した場合はNULL。 機能 : ファイルを開く。 モード : r 読み込み、w 新規、a 追加。b付加でバイナリ、+付加で入出力両用。 ...
リストから重複を除いてソートするスクリプト(perl)
@r; %c; y/\n\r//d and $_ ne '' and push@r,$_ while <DATA>; @r=grep(!$c{$_}++, @r); $, = $/; print sort@r; __DATA__ fopen fclose fgetc ...