source: postlfs/shells/zsh.xml@ eede1a3

11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since eede1a3 was 29e0d9d6, checked in by Xi Ruoyao <xry111@…>, 3 years ago

zsh: merge /usr

  • Property mode set to 100644
File size: 10.9 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY zsh-download-http "https://www.zsh.org/pub/zsh-&zsh-version;.tar.xz">
8 <!ENTITY zsh-download-ftp " ">
9 <!ENTITY zsh-md5sum "e02a5428620b3dd268800c7843b3dd4d">
10 <!ENTITY zsh-size "3.0 MB">
11 <!ENTITY zsh-buildsize "72 MB (includes documentation and tests)">
12 <!ENTITY zsh-time "1.3 SBU (Using parallelism=4; includes documentation and tests)">
13
14 <!ENTITY zsh-doc-md5sum "ef8514401a81bb1a4c4b655ebda8a1a2">
15 <!ENTITY zsh-doc-size "3.0 MB">
16]>
17
18<sect1 id="zsh" xreflabel="zsh-&zsh-version;">
19 <?dbhtml filename="zsh.html"?>
20
21 <sect1info>
22 <date>$Date$</date>
23 </sect1info>
24
25 <title>zsh-&zsh-version;</title>
26
27 <indexterm zone="zsh">
28 <primary sortas="a-zsh">zsh</primary>
29 </indexterm>
30
31 <sect2 role="package">
32 <title>Introduction to zsh</title>
33
34 <para>
35 The <application>zsh</application> package contains a command
36 interpreter (shell) usable as an interactive login shell and as
37 a shell script command processor. Of the standard shells,
38 <application>zsh</application> most closely resembles
39 <application>ksh</application> but includes many enhancements.
40 </para>
41
42 &lfs101_checked;
43
44 <bridgehead renderas="sect3">Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
47 <para>
48 Download (HTTP): <ulink url="&zsh-download-http;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download (FTP): <ulink url="&zsh-download-ftp;"/>
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download MD5 sum: &zsh-md5sum;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Download size: &zsh-size;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated disk space required: &zsh-buildsize;
69 </para>
70 </listitem>
71 <listitem>
72 <para>
73 Estimated build time: &zsh-time;
74 </para>
75 </listitem>
76 </itemizedlist>
77
78 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
79 <itemizedlist spacing="compact">
80 <listitem>
81 <para>
82 Optional Documentation: <ulink
83 url="https://www.zsh.org/pub/zsh-&zsh-version;-doc.tar.xz"/>
84 </para>
85 </listitem>
86 <listitem>
87 <para>
88 Documentation MD5 sum: &zsh-doc-md5sum;
89 </para>
90 </listitem>
91 <listitem>
92 <para>
93 Documentation download size: &zsh-doc-size;
94 </para>
95 </listitem>
96 </itemizedlist>
97
98 <note>
99 <para>
100 When there is a new <application>zsh</application> release, the old
101 files shown above are moved to a new server directory:
102 <ulink url="https://www.zsh.org/pub/old/"/>.
103 </para>
104 </note>
105
106 <bridgehead renderas="sect3">zsh Dependencies</bridgehead>
107
108 <bridgehead renderas="sect4">Optional</bridgehead>
109 <para role="optional">
110 <xref linkend="libcap-pam"/>,
111 <xref linkend="pcre"/>, and
112 <xref linkend="valgrind"/>,
113 </para>
114
115 <para condition="html" role="usernotes">User Notes:
116 <ulink url="&blfs-wiki;/zsh"/></para>
117
118 </sect2>
119
120 <sect2 role="installation">
121 <title>Installation of zsh</title>
122
123 <para>
124 If you downloaded the optional documentation, unpack it with
125 the following command:
126 </para>
127
128<screen><userinput>tar --strip-components=1 -xvf ../zsh-&zsh-version;-doc.tar.xz</userinput></screen>
129
130<!-- <note>
131 <para>
132 Using a script to build with "su -c script" may produce a funny
133 configure error message: "no controlling tty". If this happens, add
134 the switch -\-with-tcsetpgrp to configure.
135 </para>
136 </note>
137-->
138 <para>
139 Install <application>zsh</application> by running the following
140 commands:
141 </para>
142
143<screen><userinput>./configure --prefix=/usr \
144 --sysconfdir=/etc/zsh \
145 --enable-etcdir=/etc/zsh &amp;&amp;
146make &amp;&amp;
147
148makeinfo Doc/zsh.texi --plaintext -o Doc/zsh.txt &amp;&amp;
149makeinfo Doc/zsh.texi --html -o Doc/html &amp;&amp;
150makeinfo Doc/zsh.texi --html --no-split --no-headers -o Doc/zsh.html</userinput></screen>
151
152 <para>
153 If you have <xref linkend="texlive"/>
154 installed, you can build PDF format of the documentation by issuing
155 the following command:
156 </para>
157
158<screen remap="doc"><userinput>texi2pdf Doc/zsh.texi -o Doc/zsh.pdf</userinput></screen>
159
160 <para>
161 To test the results, issue: <command>make check</command>.
162 </para>
163
164 <para>
165 Now, as the <systemitem class="username">root</systemitem> user:
166 </para>
167
168<screen role="root"><userinput>make install &amp;&amp;
169make infodir=/usr/share/info install.info &amp;&amp;
170
171install -v -m755 -d /usr/share/doc/zsh-&zsh-version;/html &amp;&amp;
172install -v -m644 Doc/html/* /usr/share/doc/zsh-&zsh-version;/html &amp;&amp;
173install -v -m644 Doc/zsh.{html,txt} /usr/share/doc/zsh-&zsh-version;</userinput></screen>
174
175 <para>
176 If you downloaded the optional documentation, install it by issuing
177 the following commands as the
178 <systemitem class="username">root</systemitem> user:
179 </para>
180
181<screen role="root"><userinput>make htmldir=/usr/share/doc/zsh-&zsh-version;/html install.html &amp;&amp;
182install -v -m644 Doc/zsh.dvi /usr/share/doc/zsh-&zsh-version;</userinput></screen>
183
184 <para>
185 If you built the PDF format of the documentation, install
186 it by issuing the following command as the
187 <systemitem class="username">root</systemitem> user:
188 </para>
189
190<screen role="root"
191 remap="doc"><userinput>install -v -m644 Doc/zsh.pdf /usr/share/doc/zsh-&zsh-version;</userinput></screen>
192
193 </sect2>
194
195 <sect2 role="commands">
196 <title>Command Explanations</title>
197
198 <para>
199 <parameter>--sysconfdir=/etc/zsh</parameter> and
200 <parameter>--enable-etcdir=/etc/zsh</parameter>: These parameters are
201 used so that all the <application>zsh</application> configuration files
202 are consolidated into the <filename class='directory'>/etc/zsh</filename>
203 directory. Omit these parameters if you wish to retain historical
204 compatibility by having all the files located in the
205 <filename class='directory'>/etc</filename> directory.
206 </para>
207
208 <para>
209 <option>--enable-cap</option>: This option enables
210 POSIX capabilities.
211 </para>
212
213 <para>
214 <option>--disable-gdbm</option>: This option disables the
215 use of the <application>GDBM</application> library.
216 </para>
217
218 <para>
219 <option>--enable-pcre</option>: This option allows zsh to use
220 the <application>PCRE</application> regular expression library in shell
221 builtins.
222 </para>
223 </sect2>
224
225 <sect2 role="configuration">
226 <title>Configuring zsh</title>
227
228 <sect3 id="zsh-config">
229 <title>Config Files</title>
230
231 <para>
232 There are a whole host of configuration files for
233 <application>zsh</application> including
234 <filename>/etc/zsh/zshenv</filename>,
235 <filename>/etc/zsh/zprofile</filename>,
236 <filename>/etc/zsh/zshrc</filename>,
237 <filename>/etc/zsh/zlogin</filename> and
238 <filename>/etc/zsh/zlogout</filename>.
239 You can find more information on these in the
240 <filename>zsh(1)</filename> and related manual pages.
241 </para>
242
243 <para>
244 The first time zsh is executed, you will be prompted by messages asking
245 several questions. The answers will be used to create a
246 <filename>~/.zshrc</filename> file. If you wish to run these questions
247 again, run <command>zsh
248 /usr/share/zsh/&zsh-version;/functions/zsh-newuser-install -f</command>.
249 </para>
250
251 <para>
252 There are several built-in advanced prompts. In the
253 <command>zsh</command> shell, start advanced prompt support with
254 <command>autoload -U promptinit</command>, then
255 <command>promptinit</command>. Available prompt names are listed with
256 <command>prompt -l</command>. Select a particular one with
257 <command>prompt <literal>&lt;prompt-name&gt;</literal></command>.
258 Display all available
259 prompts with <command>prompt -p</command>. Except for the list and
260 display commands above, you can insert the other ones in
261 <filename>~/.zshrc</filename> to be automatically executed at
262 shell start, with the prompt you chose.
263 </para>
264
265 <indexterm zone="zsh zsh-config">
266 <primary sortas="e-etc-zsh-zshenv">/etc/zsh/zshenv</primary>
267 </indexterm>
268
269 <indexterm zone="zsh zsh-config">
270 <primary sortas="e-etc-zsh-zprofile">/etc/zsh/zprofile</primary>
271 </indexterm>
272
273 <indexterm zone="zsh zsh-config">
274 <primary sortas="e-etc-zsh-zshrc">/etc/zsh/zshrc</primary>
275 </indexterm>
276
277 <indexterm zone="zsh zsh-config">
278 <primary sortas="e-etc-zsh-zlogin">/etc/zsh/zlogin</primary>
279 </indexterm>
280
281 <indexterm zone="zsh zsh-config">
282 <primary sortas="e-etc-zsh-zlogout">/etc/zsh/zlogout</primary>
283 </indexterm>
284
285 </sect3>
286
287 <sect3>
288 <title>Configuration Information</title>
289
290 <para>
291 Update <filename>/etc/shells</filename> to include the
292 <application>zsh</application> shell program names (as the
293 <systemitem class="username">root</systemitem> user):
294 </para>
295
296<screen role="root"><userinput>cat &gt;&gt; /etc/shells &lt;&lt; "EOF"
297<literal>/bin/zsh</literal>
298EOF</userinput></screen>
299
300 </sect3>
301
302 </sect2>
303
304 <sect2 role="content">
305 <title>Contents</title>
306
307 <segmentedlist>
308 <segtitle>Installed Programs</segtitle>
309 <segtitle>Installed Libraries</segtitle>
310 <segtitle>Installed Directories</segtitle>
311
312 <seglistitem>
313 <seg>zsh and zsh-&zsh-version; (hardlinked to each other)</seg>
314 <seg>Numerous plugin helper modules under
315 /usr/lib/zsh/&zsh-version;/</seg>
316 <seg>/usr/{lib,share}/zsh and /usr/share/doc/zsh-&zsh-version;</seg>
317 </seglistitem>
318 </segmentedlist>
319
320 <variablelist>
321 <bridgehead renderas="sect3">Short Description</bridgehead>
322 <?dbfo list-presentation="list"?>
323 <?dbhtml list-presentation="table"?>
324
325 <varlistentry id="zsh-prog">
326 <term><command>zsh</command></term>
327 <listitem>
328 <para>
329 is a shell which has command-line editing, built-in spelling
330 correction, programmable command completion, shell functions (with
331 autoloading), a history mechanism, and a host of other features
332 </para>
333 <indexterm zone="zsh zsh-prog">
334 <primary sortas="b-zsh">zsh</primary>
335 </indexterm>
336 </listitem>
337 </varlistentry>
338
339 </variablelist>
340
341 </sect2>
342
343</sect1>
Note: See TracBrowser for help on using the repository browser.