-
Notifications
You must be signed in to change notification settings - Fork 0
/
man-groff.bat
146 lines (105 loc) · 2.85 KB
/
man-groff.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
@ECHO OFF
set man_root=PATH_TO_FOLDER_WITH_MAN_DIRS
set man_gz_root=PATH_TO_FOLDER_WITH_GZ_MAN_DIRS
set groff=PATH_TO_GROFF
set argC=0
for %%x in (%*) do Set /A argC+=1
if %argC%==2 goto cat
if %argC%==1 goto no_cat
if %argC%==0 echo Usage: `man program` or `man catagory program` & goto end
:no_cat
rem Search all catagories
:check_man1
if exist %man_root%\man1\%1.1 goto man1
:check_gz_man1
if exist %man_gz_root%\man1\%1.1.gz goto gz_man1
:check_man3
if exist %man_root%\man3\%1.3 goto man3
:check_gz_man3
if exist %man_root%\man3\%1.3.gz goto gz_man3
:check_man5
if exist %man_root%\man5\%1.5 goto man5
:check_gz_man5
if exist %man_root%\man3\%1.5.gz goto gz_man5
:check_man7
if exist %man_root%\man7\%1.7 goto man7
:check_gz_man7
if exist %man_root%\man7\%1.7.gz goto gz_man7
:check_man8
if exist %man_root%\man8\%1.8 goto man8
:check_gz_man8
if exist %man_root%\man8\%1.8.gz goto gz_man8
echo Manpage not found
goto end
:cat
rem Search selected catagory
if exist %man_root%\man%1\%2.%1 goto cat_man%1
if exist %man_root%\man%1\%2.%1.gz goto cat_gz_man%1
echo Manpage not found
goto end
rem Man (1)
:man1
%groff% -Tascii -man %man_root%\man1\%1.1 | less -r
goto end
:cat_man1
%groff% -Tascii -man %man_root%\man1\%2.1 | less -r
goto end
:gz_man1
gzip -d -k --to-stdout %man_gz_root%\man1\%1.1.gz | %groff% -Tascii -man | less -r
goto end
:cat_gz_man1
gzip -d -k --to-stdout %man_gz_root%\man1\%2.1.gz | %groff% -Tascii -man | less -r
goto end
rem Man (3)
:man3
%groff% -Tascii -man %man_root%\man3\%1.3 | less -r
goto end
:gz_man3
gzip -d -k --to-stdout %man_gz_root%\man3\%1.3.gz | %groff% -Tascii -man | less -r
goto end
:cat_man3
%groff% -Tascii -man %man_root%\man3\%2.3 | less -r
goto end
:cat_gz_man3
gzip -d -k --to-stdout %man_gz_root%\man3\%2.3.gz | %groff% -Tascii -man | less -r
goto end
rem Man (5)
:man5
%groff% -Tascii -man %man_root%\man5\%1.5 | less -r
goto end
:gz_man5
gzip -d -k --to-stdout %man_gz_root%\man5\%1.5.gz | %groff% -Tascii -man | less -r
goto end
:cat_man5
%groff% -Tascii -man %man_root%\man5\%2.5 | less -r
goto end
:cat_gz_man5
gzip -d -k --to-stdout %man_gz_root%\man5\%2.5.gz | %groff% -Tascii -man | less -r
goto end
rem Man (7)
:man7
%groff% -Tascii -man %man_root%\man7\%1.7 | less -r
goto end
:gz_man7
gzip -d -k --to-stdout %man_gz_root%\man7\%1.7.gz | %groff% -Tascii -man | less -r
goto end
:cat_man7
%groff% -Tascii -man %man_root%\man7\%2.7 | less -r
goto end
:cat_gz_man7
gzip -d -k --to-stdout %man_gz_root%\man7\%2.7.gz | %groff% -Tascii -man | less -r
goto end
rem Man (8)
:man8
%groff% -Tascii -man %man_root%\man8\%1.8 | less -r
goto end
:gz_man8
gzip -d -k --to-stdout %man_gz_root%\man8\%1.8.gz | %groff% -Tascii -man | less -r
goto end
:cat_man8
%groff% -Tascii -man %man_root%\man8\%2.8 | less -r
goto end
:cat_gz_man8
gzip -d -k --to-stdout %man_gz_root%\man8\%2.8.gz | %groff% -Tascii -man | less -r
goto end
:end