1 05/16/16  input_history, ih
 2 
 3 Syntax as a command:
 4    ih attach {source_switch {monitored_switch}} {-control_args}
 5 or:
 6    ih detach {source_switch}
 7 or:
 8    ih version {source_switch}
 9 
10 
11 Function: the attach operation inserts the input_history_ I/O module
12 between the IOCB named by source_switch and its currently attached I/O
13 module.  This current attachment is saved for future use on a new IOCB
14 named by the monitored_switch argument.
15 
16 Each subsequent get_line operation on source_switch passes-thru
17 input_history_ to the monitored_switch.  input_history_ appends each
18 line received from the monitor_switch to a history file, then returns
19 the line to its caller.  Other operations pass-thru to the
20 monitored_switch, with results returned to the caller without action
21 taken by input_history_.
22 
23 
24 If source_switch is attached to window_io_ before the input_history
25 attach operation, then keystrokes are added to the window_io_
26 real-time line editor (which runs for each get_line operation) to
27 select past input lines (saved in the history file) for editing and
28 re-input.  See video_editing.gi.info for further information.
29 
30 The detach operation stops capture of input lines in the history file,
31 and reconnects the source_switch to its original I/O module.  This
32 reverses the changes made by the input_history attach operation.
33 
34 The version operation displays version numbers for this command,
35 and for the input_history_ I/O module.
36 
37 
38 Arguments:
39 source_switch
40    is an existing switch attached to an I/O module open for
41    stream_input or stream_input_output.  Subsequent get_line
42    operations on this switch will be captured in the history file.
43    (DEFAULT: -- user_i/o)
44 monitored_switch
45    is a new switch created by the input_history command to save the
46    I/O module attachment currently on the input_switch, so subsequent
47    I/O requests can pass-thru the input_history_ module to the saved
48    module.   (DEFAULT: -- input_history.time)
49 
50 
51 Control arguments: are input_history_ I/O module attach options.
52 -pathname PATH, -pn PATH
53    use PATH as the location of the history file.  The default PATH is:
54      [homedir]>[user name].history
55 -perprocess, -pp
56    use a temporary history file created in the process directory.
57 -permanent, -perm
58    use only a permanent the history file.  See "Notes on the history
59    file" for further information on these three control arguments.
60 
61 
62 -lines N, -ln N
63    recommends a size for the history file, in lines.  The default is
64    200 lines (about 2 records of storage, if the average input line is
65    40 characters in length).  (See "Notes on the history file" below.)
66 -truncate, -tc
67    if the history file already exists, truncates this file as part of
68    the attach operation.  The default is to extend the existing file.
69 
70 
71 Notes on input_history_:
72 For more information about the input_history_ I/O module, use the help
73 command to display the following files:
74 
75   input_history_.info         (or: ih_.info)
76   video_editing.gi.info