File: printer_function_with_indentation.tex

package info (click to toggle)
kimwitu-doc 10a-3
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k, sarge
  • size: 1,192 kB
  • ctags: 341
  • sloc: makefile: 166; yacc: 125; ansic: 40; lex: 18; sh: 2
file content (21 lines) | stat: -rw-r--r-- 1,036 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
% Remember to use the lgrind style

\File{printer\_function\_with\_indentation.k},{14:04},{Feb 19 1997}
\L{\LB{\K{\#include}_\<\V{stdio}.\V{h}\>}}
\L{\LB{\K{\#include}_\S{}\"unpk.h\"\SE{}}}
\L{\LB{\K{static}_\V{indent}=0;}}
\L{\LB{}}
\L{\LB{\K{void}_\V{printer}(\K{char}_\*\V{s},_\V{uview}_\V{v})_\{}}
\L{\LB{____\K{char}_\V{c};_\K{int}_\V{j};}}
\L{\LB{}}
\L{\LB{____\K{while}(\V{c}=\*\V{s}++)_\{}}
\L{\LB{}\Tab{8}{\K{if}_(\V{c}!=\S{}\'\%\'\SE{})_\V{putchar}(\V{c});}}
\L{\LB{}\Tab{8}{\K{else}_\K{switch}(\V{c}=\*\V{s}++)_\{}}
\L{\LB{}\Tab{8}{\K{case}_\S{}\'b\'\SE{}:}\Tab{24}{\V{indent}\-\-;_\K{break};}}
\L{\LB{}\Tab{8}{\K{case}_\S{}\'t\'\SE{}:}\Tab{24}{\V{indent}++;_\K{break};}}
\L{\LB{}\Tab{8}{\K{case}_\S{}\'n\'\SE{}:}\Tab{24}{\V{putchar}(\S{}\'\2n\'\SE{});}}
\L{\LB{}\Tab{24}{\K{for}_(\V{j}=\V{indent};_\V{j}\>0;_\V{j}\-\-)_\V{putchar}(\S{}\'\2t\'\SE{});}}
\L{\LB{}\Tab{24}{\K{break};}}
\L{\LB{}\Tab{8}{\K{case}_\S{}\'\20\'\SE{}:}\Tab{24}{\K{return};}}
\L{\LB{}\Tab{8}{\K{default}:}\Tab{24}{\V{putchar}(\V{c});}}
\L{\LB{\}\}\}}}