YAP.1
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:10k
源码类别:

操作系统开发

开发平台:

C/C++

  1. ." $Header: yap.1,v 6.2 88/04/29 11:47:43 ceriel Exp $
  2. ." nroff -man yap.1
  3. .tr ~
  4. .TH YAP 1 local
  5. .SH NAME
  6. yap, more - yet another pager
  7. .SH SYNOPSIS
  8. .B yap
  9. [
  10. .B -cnuq
  11. ]
  12. [
  13. .B -fInfP
  14. ]
  15. [
  16. .B +fIcommandfP 
  17. ] [ name ...  ]
  18. .SH DESCRIPTION
  19. .I Yap
  20. is a program allowing the user to examine a continuous text one screenful at
  21. a time on a video display terminal.
  22. It does so by
  23. pausing after each screenful, waiting for the user to type a command.
  24. The commands are enumerated later.
  25. .IR Yap 's
  26. main feature is, that it can page both forwards and backwards,
  27. even when reading from standard input.
  28. .PP
  29. The command line options are:
  30. .TP
  31. .I -n
  32. An integer which is the size (in lines) of a page (the initial
  33. .IR page-size .
  34. .TP
  35. .B -c
  36. Normally,
  37. .I yap
  38. will display each page by beginning at the top of the screen and erasing 
  39. each line just before it displays on it. If your terminal cannot erase a line,
  40. .I yap
  41. will clear the screen before it displays a page.
  42. .br
  43. This avoids scrolling the screen, making it easier to read while 
  44. .I yap 
  45. is writing.
  46. The
  47. .B -c
  48. option causes
  49. .I yap
  50. to scroll the screen instead of beginning at the top of the screen.
  51. This is also done if your terminal cannot either erase a line or clear the
  52. screen.
  53. .TP
  54. .B -u
  55. Normally,
  56. .I yap
  57. handles underlining such as produced by nroff in a manner appropriate
  58. to the particular terminal: if the terminal can perform underlining well
  59. (t.i., the escape sequences for underlining do not occupy space on the
  60. screen),
  61. .I yap
  62. will underline underlined information in the input. The
  63. .B -u
  64. option supresses this underlining.
  65. .TP
  66. .B -n
  67. Normally,
  68. .I yap
  69. also recognises escape sequences for stand-out mode or underlining mode
  70. in the input, and knows how much space these escape sequences will
  71. occupy on the screen, so that
  72. .I yap
  73. will not fold lines erroneously.
  74. The
  75. .B -n
  76. option supresses this pattern matching.
  77. .TP
  78. .B -q
  79. This option will cause
  80. .I yap
  81. to exit only on the "quit" command.
  82. .TP
  83. .BI + command
  84. fIcommandfP is taken to be an initial command to
  85. .IR yap .
  86. .PP
  87. .I Yap
  88. uses the
  89. .IR termcap (5)
  90. database to determine the terminal capabilities and the default 
  91. .IR page-size .
  92. It examines the $TERM environment variable to identify the terminal type.
  93. If $TERM is not set, it defaults to
  94. .IR dumb .
  95. .I Yap
  96. Also examines the $TERMCAP environment variable to locate the
  97. .IR termcap (5)
  98. database.
  99. If $TERMCAP is not set, it defaults to
  100. .IR /etc/termcap .
  101. .PP
  102. .I Yap
  103. looks in the $YAP environment variable
  104. to pre-set flags.
  105. For instance, if you prefer the
  106. .B -c
  107. mode of operation, just set the $YAP environment variable
  108. to
  109. .BR -c .
  110. .PP
  111. The commands of
  112. .I yap
  113. can be bound to sequences of keystrokes.
  114. The environment variable $YAPKEYS may contain the bindings in the
  115. form of a list of colon-separated `name=sequence' pairs.
  116. The
  117. .I name
  118. is a short mnemonic for the command, the
  119. .I sequence
  120. is the sequence of keystrokes to be typed to invoke the command.
  121. This sequence may contain a ^X escape, which means control-X,
  122. and a \X escape, which means X. The latter can be used to get
  123. the characters `^', `\' and `:' in the sequence.
  124. There are two keymaps available, the default one and a user-defined one.
  125. You can switch between one and the other with the
  126. .I change keymap
  127. command.
  128. .PP
  129. The
  130. .I yap
  131. commands are described below.
  132. The mnemonics for the commands are given in parentheses. The default
  133. key sequences (if any) are given after the mnemonic.
  134. Every command takes an optional integer argument, which may be typed
  135. before the command. Some commands just ignore it. The integer argument
  136. is referred to as
  137. .IR i .
  138. Usually, if
  139. .I i
  140. is not given, it defaults to 1.
  141. .de Nc
  142. .PP
  143. &\$1
  144. .RI ( \$2 )
  145. .BR \$3
  146. .br
  147. .RS
  148. ..
  149. .de Ec
  150. .RE
  151. ..
  152. .Nc "visit previous file" bf P
  153. Visit the
  154. .IR i -th
  155. previous file given in the command line.
  156. .Ec
  157. .Nc "scroll one line up or go to line" bl "^K ~or~ k"
  158. If
  159. .I i
  160. is not given, scroll one line up. Otherwise,
  161. .I i
  162. will be interpreted as a line number. A page starting with the line
  163. indicated will then be displayed.
  164. .Ec
  165. .Nc "bottom" bot "l ~or~ $"
  166. Go to the last line of the input.
  167. .Ec
  168. .Nc "display previous page" bp -
  169. Display the previous page, consisting of
  170. .I i
  171. lines, (or
  172. .I page-size
  173. lines if no argument is given).
  174. .Ec
  175. .Nc "display previous page and set pagesize" bps Z
  176. Display the previous page, consisting of
  177. .I i
  178. lines, (or
  179. .I page-size
  180. lines if no argument is given).
  181. If
  182. .I i
  183. is given, the
  184. .I page-size
  185. is set to
  186. .IR i .
  187. .Ec
  188. .Nc "scroll up" bs ^B
  189. Scroll up
  190. .I i
  191. lines (or
  192. .I scroll-size
  193. lines if
  194. .I i
  195. is not given. Initially, the
  196. .I scroll-size
  197. is 11).
  198. .Ec
  199. .Nc "search backwards for pattern" bse ?
  200. Search backwards for the
  201. .IR i -th
  202. occurrence of a regular expression which will be prompted for.
  203. If there are less than
  204. .I i
  205. occurrences of the expression, the position in the file remains unchanged.
  206. Otherwise, a page is displayed, starting two lines before the place where the
  207. expression was found. The user's erase and kill characters may be used
  208. to edit the expression.
  209. Erasing back past the first character cancels the search command.
  210. .br
  211. Note: Some systems do not have
  212. .IR regex (3).
  213. On those systems, searches are still supported, but regular expressions
  214. are not.
  215. .Ec
  216. .Nc "skip lines backwards" bsl S
  217. Skip
  218. .I i
  219. lines backwards and display a page.
  220. .Ec
  221. .Nc "skip pages backwards" bsp F
  222. Skip
  223. .I i
  224. pages backwards and display a page.
  225. .Ec
  226. .Nc "scroll up and set scrollsize" bss b
  227. Scroll up
  228. .I i
  229. lines (or
  230. .I scroll-size
  231. lines if
  232. .I i
  233. is not given.
  234. If
  235. .I i
  236. is given, the
  237. .I scroll-size
  238. is set to
  239. .IR i .
  240. .Ec
  241. .Nc "change key map" chm ^[
  242. Change from the current key map to the other (if there is one).
  243. .Ec
  244. .Nc "exchange current page and mark" exg x
  245. Set the mark to the current page, and display the previously marked
  246. page.
  247. .Ec
  248. .Nc "visit next file" ff N
  249. Visit the
  250. .IR i -th
  251. next file given in the command line.
  252. .Ec
  253. .Nc "scroll one line down or go to line" fl "^J ~or~ ^M ~or~ j"
  254. If
  255. .I i
  256. is not given, scroll one line down. Otherwise,
  257. .I i
  258. will be interpreted as a line number. A page starting with the line
  259. indicated will then be displayed.
  260. .Ec
  261. .Nc "display next page" fp <space>
  262. Display the next page, consisting of
  263. .I i
  264. lines, (or
  265. .I page-size
  266. lines if no argument is given).
  267. .Ec
  268. .Nc "display next page and set pagesize" fps z
  269. Display the next page, consisting of
  270. .I i
  271. lines, (or
  272. .I page-size
  273. lines if no argument is given).
  274. If
  275. .I i
  276. is given, the
  277. .I page-size
  278. is set to
  279. .IR i .
  280. .Ec
  281. .Nc "scroll down" fs ^D
  282. Scroll down 
  283. .I i
  284. lines (or
  285. .I scroll-size
  286. lines if no argument is given).
  287. .Ec
  288. .Nc "search forwards for pattern" fse /
  289. Search forwards for the
  290. .IR i -th
  291. occurrence of a regular expression which will be prompted for.
  292. If there are less than
  293. .I i
  294. occurrences of the expression, the position in the file remains unchanged.
  295. Otherwise, a page is displayed, starting two lines before the place where the
  296. expression was found. The user's erase and kill characters may be used
  297. to edit the expression.
  298. Erasing back past the first character cancels the search command.
  299. .br
  300. Note: Some systems do not have
  301. .IR regex (3).
  302. On those systems, searches are still supported, but regular expressions
  303. are not.
  304. .Ec
  305. .Nc "skip lines forwards" fsl s
  306. Skip
  307. .I i
  308. lines and display a page.
  309. .Ec
  310. .Nc "skip pages forwards" fsp f
  311. Skip
  312. .I i
  313. pages and display a page.
  314. .Ec
  315. .Nc "scroll down and set scrollsize" fss d
  316. Scroll down
  317. .I i
  318. lines (or
  319. .I scroll-size
  320. lines if
  321. .I i
  322. is not given.
  323. If
  324. .I i
  325. is given, the
  326. .I scroll-size
  327. is set to
  328. .IR i .
  329. .Ec
  330. .Nc "help" hlp h
  331. Give a short description of all commands that are bound to a key sequence.
  332. .Ec
  333. .Nc "set a mark" mar m
  334. Set a mark on the current page.
  335. .Ec
  336. .Nc "repeat last search" nse n
  337. Search for the 
  338. .IR i -th
  339. occurrence of the last regular expression entered, in the direction of the
  340. last search.
  341. .Ec
  342. .Nc "repeat last search in other direction" nsr r
  343. Search for the
  344. .IR i -th
  345. occurrence of the last regular expression entered, but in the other direction.
  346. .Ec
  347. .Nc "quit" qui "Q ~or~ q"
  348. Exit from
  349. .IR yap .
  350. .Ec
  351. .Nc "redraw" red ^L
  352. Redraw the current page.
  353. .Ec
  354. .Nc "repeat" rep .
  355. Repeat the last command. This does not always make sense, so not all
  356. commands can be repeated.
  357. .Ec
  358. .Nc "shell escape" shl !
  359. Invoke the shell with a command that will be prompted for.
  360. In the command, the characters `%' and `!' are replaced with the
  361. current file name and the previous shell command respectively.
  362. The sequences `\%' and `\!' are replaced by `%' and `!' respectively.
  363. The user's erase and kill characters can be used to edit the command.
  364. Erasing back past the first character cancels the command.
  365. .Ec
  366. .Nc "pipe to shell command" pip |
  367. Pipe the current input file into a shell command that will be prompted for.
  368. The comments given in the description of the shell escape command apply here
  369. too.
  370. .Ec
  371. .Nc "go to mark" tom '
  372. Display the marked page.
  373. .Ec
  374. .Nc "top" top ^^
  375. Display a page starting with the first line of the input.
  376. .Ec
  377. .Nc "visit file" vis e
  378. Visit a new file. The filename will be prompted for. If you just
  379. type a return, the current file is revisited.
  380. .Ec
  381. .Nc "write input to a file" wrf w
  382. Write the input to a file, whose name will be prompted for.
  383. .Ec
  384. .PP
  385. The commands take effect immediately, i.e., it is not necessary to
  386. type a carriage return.
  387. Up to the time when the command sequence itself is given,
  388. the user may give an interrupt to cancel the command
  389. being formed.
  390. .SH AUTHOR
  391. Ceriel J.H. Jacobs
  392. .SH FILES
  393. .DT
  394. /etc/termcap Terminal capabilities data base
  395. .SH SEE ALSO
  396. .IR termcap (5), ~regex (3).
  397. .SH BUGS
  398. .I Yap
  399. will find your terminal very stupid and act like it,
  400. if it has no way of placing the
  401. cursor on the home position, or cannot either
  402. erase a line or
  403. insert one.
  404. .PP
  405. In lines longer than about 2000 characters, a linefeed is silently inserted.
  406. .PP
  407. The percentage, given in the prompt when
  408. .I yap
  409. reads from a file (and knows it), is not always very accurate.