This file is indexed.

/usr/lib/swi-prolog/doc/Manual/tty.html is in swi-prolog-nox 5.10.4-3ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<HTML>
<HEAD>
<TITLE>SWI-Prolog 5.11.18 Reference Manual: Section 4.32</TITLE><LINK REL=home HREF="index.html">
<LINK REL=contents HREF="Contents.html">
<LINK REL=index HREF="DocIndex.html">
<LINK REL=summary HREF="summary.html">
<LINK REL=previous HREF="format.html">
<LINK REL=next HREF="system.html">
<STYLE type="text/css">
/* Style sheet for SWI-Prolog latex2html
*/

dd.defbody
{ margin-bottom: 1em;
}

dt.pubdef
{ background-color: #c5e1ff;
}

dt.multidef
{ background-color: #c8ffc7;
}

.bib dd
{ margin-bottom: 1em;
}

.bib dt
{ float: left;
margin-right: 1.3ex;
}

pre.code
{ margin-left: 1.5em;
margin-right: 1.5em;
border: 1px dotted;
padding-top: 5px;
padding-left: 5px;
padding-bottom: 5px;
background-color: #f8f8f8;
}

div.navigate
{ text-align: center;
background-color: #f0f0f0;
border: 1px dotted;
padding: 5px;
}

div.title
{ text-align: center;
padding-bottom: 1em;
font-size: 200%;
font-weight: bold;
}

div.author
{ text-align: center;
font-style: italic;
}

div.abstract
{ margin-top: 2em;
background-color: #f0f0f0;
border: 1px dotted;
padding: 5px;
margin-left: 10%; margin-right:10%;
}

div.abstract-title
{ text-align: center;
padding: 5px;
font-size: 120%;
font-weight: bold;
}

div.toc-h1
{ font-size: 200%;
font-weight: bold;
}

div.toc-h2
{ font-size: 120%;
font-weight: bold;
margin-left: 2em;
}

div.toc-h3
{ font-size: 100%;
font-weight: bold;
margin-left: 4em;
}

div.toc-h4
{ font-size: 100%;
margin-left: 6em;
}

span.sec-nr
{
}

span.sec-title
{
}

span.pred-ext
{ font-weight: bold;
}

span.pred-tag
{ float: right;
padding-top: 0.2em;
font-size: 80%;
font-style: italic;
color: #202020;
}

/* Footnotes */

sup.fn { color: blue; text-decoration: underline; }
span.fn-text { display: none; }
sup.fn span {display: none;}
sup:hover span
{ display: block !important;
position: absolute; top: auto; left: auto; width: 80%;
color: #000; background: white;
border: 2px solid;
padding: 5px; margin: 10px; z-index: 100;
font-size: smaller;
}
</STYLE>
</HEAD>
<BODY BGCOLOR="white">
<DIV class="navigate"><A class="nav" href="index.html"><IMG SRC="home.gif" BORDER=0 ALT="Home"></A>
<A class="nav" href="Contents.html"><IMG SRC="index.gif" BORDER=0 ALT="Contents"></A>
<A class="nav" href="DocIndex.html"><IMG SRC="yellow_pages.gif" BORDER=0 ALT="Index"></A>
<A class="nav" href="summary.html"><IMG SRC="info.gif" BORDER=0 ALT="Summary"></A>
<A class="nav" href="format.html"><IMG SRC="prev.gif" BORDER=0 ALT="Previous"></A>
<A class="nav" href="system.html"><IMG SRC="next.gif" BORDER=0 ALT="Next"></A>
</DIV>

<H2><A NAME="sec:4.32"><SPAN class="sec-nr">4.32</SPAN> <SPAN class="sec-title">Terminal 
Control</SPAN></A></H2>

<A NAME="sec:tty"></A>

<P>The following predicates form a simple access mechanism to the Unix 
termcap library to provide terminal independent I/O for screen 
terminals. These predicates are only available on Unix machines. The 
SWI-Prolog Windows consoles accepts the ANSI escape sequences.

<DL class="latex">
<DT class="pubdef"><A NAME="tty_get_capability/3"><STRONG>tty_get_capability</STRONG>(<VAR>+Name, 
+Type, -Result</VAR>)</A></DT>
<DD class="defbody">
Get the capability named <VAR>Name</VAR> from the termcap library. See 
termcap(5) for the capability names. <VAR>Type</VAR> specifies the type 
of the expected result, and is one of <CODE>string</CODE>, <CODE>number</CODE> 
or
<CODE>bool</CODE>. String results are returned as an atom, number result 
as an integer and bool results as the atom <CODE>on</CODE> or <CODE>off</CODE>. 
If an option cannot be found this predicate fails silently. The results 
are only computed once. Successive queries on the same capability are 
fast.
</DD>
<DT class="pubdef"><A NAME="tty_goto/2"><STRONG>tty_goto</STRONG>(<VAR>+X, 
+Y</VAR>)</A></DT>
<DD class="defbody">
Goto position (<VAR>X</VAR>, <VAR>Y</VAR>) on the screen. Note that the 
predicates
<A NAME="idx:linecount2:1086"></A><A class="pred" href="streamstat.html#line_count/2">line_count/2</A> 
and <A NAME="idx:lineposition2:1087"></A><A class="pred" href="streamstat.html#line_position/2">line_position/2</A> 
will not have a well defined behaviour while using this predicate.
</DD>
<DT class="pubdef"><A NAME="tty_put/2"><STRONG>tty_put</STRONG>(<VAR>+Atom, 
+Lines</VAR>)</A></DT>
<DD class="defbody">
Put an atom via the termcap library function tputs(). This function 
decodes padding information in the strings returned by <A NAME="idx:ttygetcapability3:1088"></A><A class="pred" href="tty.html#tty_get_capability/3">tty_get_capability/3</A> 
and should be used to output these strings. <VAR>Lines</VAR> is the 
number of lines affected by the operation, or 1 if not applicable (as in 
almost all cases).
</DD>
<DT class="pubdef"><A NAME="set_tty/2"><STRONG>set_tty</STRONG>(<VAR>-OldStream, 
+NewStream</VAR>)</A></DT>
<DD class="defbody">
Set the output stream, used by <A NAME="idx:ttyput2:1089"></A><A class="pred" href="tty.html#tty_put/2">tty_put/2</A> 
and <A NAME="idx:ttygoto2:1090"></A><A class="pred" href="tty.html#tty_goto/2">tty_goto/2</A> 
to a specific stream. Default is user_output.
</DD>
<DT class="pubdef"><A NAME="tty_size/2"><STRONG>tty_size</STRONG>(<VAR>-Rows, 
-Columns</VAR>)</A></DT>
<DD class="defbody">
Determine the size of the terminal. Platforms:

<DL class="latex">
<DT><B>Unix</B></DT>
<DD>
If the system provides <EM>ioctl</EM> calls for this, these are used and <A NAME="idx:ttysize2:1091"></A><A class="pred" href="tty.html#tty_size/2">tty_size/2</A> 
properly reflects the actual size after a user resize of the window. As 
a fallback, the system uses
<A NAME="idx:ttygetcapability3:1092"></A><A class="pred" href="tty.html#tty_get_capability/3">tty_get_capability/3</A> 
using <CODE>li</CODE> and <CODE>co</CODE> capabilities. In this case the 
reported size reflects the size at the first call and is not updated 
after a user-initiated resize of the terminal.</DD>
<DT><B>Windows</B></DT>
<DD>
Getting the size of the terminal is provided for <B>swipl-win.exe</B>. 
The requested value reflects the current size. For the multi-threaded 
version the console that is associated with the
<CODE>user_input</CODE> stream is used.
</DD>
</DL>

</DD>
</DL>

<P></BODY></HTML>