⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mkskel.tpu

📁 Minix比较全的源码
💻 TPU
字号:
!  mkskel.tpu!       usage:!  edit/TPU/noDisplay/noSection/Command=mkskel.tpu flex.skl /Output=skel.c!!  Create a C source file from the flex skeleton data.  Copy the file,!       changing backslash (\) to doubled backslash (\\) and quote (")!       to backslash quote (\").  For each line, insert space+space+quote!       at the beginning and quote+comma at the end.  Bracket the updated!       text with several lines of prologue and epilogue.!   skelfile := CREATE_BUFFER("file", GET_INFO(COMMAND_LINE, "file_name"));   SET(NO_WRITE, skelfile);   target := '"' | '\';                         !do this once, outside loops   POSITION(BEGINNING_OF(skelfile));            !start here   rest_of_line := CREATE_RANGE(MARK(NONE), MARK(NONE));  !also outside loops   LOOP      EXITIF MARK(NONE) = END_OF(skelfile);     !are we done yet?      COPY_TEXT('  "');  start_pos := MARK(NONE);      POSITION(LINE_END);  end_pos := MARK(NONE);      MODIFY_RANGE(rest_of_line, start_pos, end_pos);      LOOP	 next_match := SEARCH_QUIETLY(target, FORWARD, EXACT, rest_of_line);	 EXITIF next_match = 0;	 POSITION(BEGINNING_OF(next_match));	 COPY_TEXT('\');  MOVE_HORIZONTAL(1);   !past the matched character	 MODIFY_RANGE(rest_of_line, MARK(NONE), end_pos);      ENDLOOP;      POSITION(LINE_END);  COPY_TEXT('",');      MOVE_VERTICAL(1);  POSITION(LINE_BEGIN);  !go to next line   ENDLOOP;   POSITION(BEGINNING_OF(skelfile));            !insert five line prologue   COPY_TEXT('/* File created from flex.skl via mkskel.tpu */');   SPLIT_LINE;								   SPLIT_LINE;   COPY_TEXT('#include "flexdef.h"');                              SPLIT_LINE;								   SPLIT_LINE;   COPY_TEXT('const char *skel[] = {');                            SPLIT_LINE;   POSITION(END_OF(skelfile));                  !append two line epilogue   COPY_TEXT('  0');                                               SPLIT_LINE;   COPY_TEXT('};');                                             !! SPLIT_LINE;   WRITE_FILE(skelfile, GET_INFO(COMMAND_LINE, "output_file"));   QUIT!--<eof>--

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -