2000-02-18 03:38:33 +08:00
|
|
|
<sect1 id="using-cygwinenv"><title>The <EnVar>CYGWIN</EnVar> environment
|
|
|
|
variable</title>
|
|
|
|
|
|
|
|
<para>The <EnVar>CYGWIN</EnVar> environment variable is used to configure
|
|
|
|
many global settings for the Cygwin runtime system. It contains the options
|
|
|
|
listed below, separated by blank characters. Many options can be turned off
|
|
|
|
by prefixing with <literal>no </literal>.</para>
|
|
|
|
|
|
|
|
<itemizedlist Mark="bullet">
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>(no)binmode</FirstTerm> - if set, non-disk
|
|
|
|
(e.g. pipe and COM ports) file opens default to binary mode
|
2002-12-19 10:14:06 +08:00
|
|
|
(no CRLF translation) instead of text mode. Defaults to set (binary
|
|
|
|
mode). By default, devices are opened in binary mode, so this option
|
|
|
|
has little effect on normal cygwin operations.
|
|
|
|
|
|
|
|
It does affect two things, however. For non-NTFS filesystems, this
|
|
|
|
option will control the line endings for standard output/input/error
|
|
|
|
for redirection from the Windows command shell. It will also affect
|
|
|
|
the default translation mode of a pipe, although most shells set the
|
|
|
|
pipe to binary by default.
|
2000-02-18 03:38:33 +08:00
|
|
|
</para>
|
|
|
|
<warning><title>Warning!</title><para>If set in 12/98 b20.1, all files
|
2000-12-23 01:02:02 +08:00
|
|
|
always open in binary mode.</para></warning>
|
2000-02-18 03:38:33 +08:00
|
|
|
</listitem>
|
|
|
|
<listitem>
|
2001-04-13 05:52:38 +08:00
|
|
|
<para><FirstTerm>check_case:level</FirstTerm> - Controls the behaviour of
|
|
|
|
Cygwin when a user tries to open or create a file using a case different from
|
|
|
|
the case of the path as asved on the disk.
|
|
|
|
<literal>level</literal> is one of <literal>relaxed</literal>,
|
|
|
|
<literal>adjust</literal> and <literal>strict</literal>.</para>
|
|
|
|
<itemizedlist Mark="bullet">
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>relaxed</FirstTerm> which is the default behaviour simply
|
|
|
|
ignores case. That's the default for native Windows applications as well.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>adjust</FirstTerm> behaves mostly invisible. The POSIX input
|
|
|
|
path is internally adjusted in case, so that the resulting DOS path uses the
|
|
|
|
correct case throughout. You can see the result when changing the directory
|
|
|
|
using a wrong case and calling <command>/bin/pwd</command> afterwards.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>strict</FirstTerm> results in a error message if the case
|
|
|
|
isn't correct. Trying to open a file <filename>Foo</filename> while a file
|
|
|
|
<filename>fOo</filename> exists results in a "no such file or directory"
|
|
|
|
error. Trying to create a file <filename>BAR</filename> while a file
|
|
|
|
<filename>Bar</filename> exists results in a "Filename exists with different
|
|
|
|
case" error.</para>
|
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
</listitem>
|
2003-02-03 08:30:45 +08:00
|
|
|
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>codepage:[ansi|oem]</FirstTerm> - Windows console
|
|
|
|
applications can use different character sets (codepages) for drawing
|
|
|
|
characters. The first setting, called "ansi", is the default.
|
|
|
|
This character set contains various forms of latin characters used
|
|
|
|
in European languages. The name originates from the ANSI Latin1
|
|
|
|
(ISO 8859-1) standard, used in Windows 1.0, though the character
|
|
|
|
sets have since diverged from any standard. The second setting
|
|
|
|
selects an older, DOS-based character set, containing various line
|
|
|
|
drawing and special characters. It is called "oem" since it was
|
|
|
|
originally encoded in the firmware of IBM PCs by original
|
|
|
|
equipment manufacturers (OEMs). If you find that some characters
|
|
|
|
(especially non-US or 'graphical' ones) do not display correctly in
|
|
|
|
Cygwin, you can use this option to select an appropriate codepage.
|
|
|
|
</listitem>
|
|
|
|
|
2001-04-13 05:52:38 +08:00
|
|
|
<listitem>
|
2000-02-18 03:38:33 +08:00
|
|
|
<para><FirstTerm>(no)envcache</FirstTerm> - If set, environment variable
|
|
|
|
conversions (between Win32 and POSIX) are cached. Note that this is may
|
|
|
|
cause problems if the mount table changes, as the cache is not invalidated
|
|
|
|
and may contain values that depend on the previous mount table
|
|
|
|
contents. Defaults to set.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>(no)export</FirstTerm> - if set, the final values of these
|
|
|
|
settings are re-exported to the environment as $CYGWIN again.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
2000-12-23 01:02:02 +08:00
|
|
|
<para><FirstTerm>error_start:filepath</FirstTerm> - if set, runs <filename>filepath</filename>
|
2000-11-19 12:53:46 +08:00
|
|
|
when cygwin encounters a fatal error. This is useful for debugging.
|
|
|
|
<filename>filepath</filename> is usually set to the path to the <filename>gdb</filename>
|
2000-12-23 01:02:02 +08:00
|
|
|
program.</para>
|
2000-11-19 12:53:46 +08:00
|
|
|
<para><FirstTerm>(no)glob[:ignorecase]</FirstTerm> - if set, command line arguments
|
2000-02-18 03:38:33 +08:00
|
|
|
containing UNIX-style file wildcard characters (brackets, question mark,
|
|
|
|
asterisk, escaped with \) are expanded into lists of files that match
|
|
|
|
those wildcards.
|
|
|
|
This is applicable only to programs running from a DOS command line prompt.
|
|
|
|
Default is set.</para>
|
2000-11-19 12:53:46 +08:00
|
|
|
<para>This option also accepts an optional <literal>[no]ignorecase</literal> modifer.
|
|
|
|
If supplied, wildcard matching is case insensitive. The default is <literal>noignorecase</literal></para>
|
2000-02-18 03:38:33 +08:00
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>(no)ntea</FirstTerm> - if set, use the full NT Extended
|
|
|
|
Attributes to store UNIX-like inode information.
|
|
|
|
This option only operates under Windows NT. Defaults to not set. </para>
|
|
|
|
<Warning><Title>Warning!</Title> <para>This may create additional
|
|
|
|
<emphasis>large</emphasis> files on non-NTFS partitions.</para></Warning>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>(no)ntsec</FirstTerm> - if set, use the NT security
|
|
|
|
model to set UNIX-like permissions on files and processes. The
|
2000-12-20 04:14:34 +08:00
|
|
|
file permissions can only be set on NTFS partitions. FAT doesn't
|
2000-02-18 03:38:33 +08:00
|
|
|
support the NT file security. For more information, read the documentation
|
|
|
|
in <citation>ntsec.sgml</citation>.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
2000-12-20 04:14:34 +08:00
|
|
|
<para><FirstTerm>(no)smbntsec</FirstTerm> - if set, use `ntsec' on remote
|
|
|
|
drives as well (this is the default). If you encounter problems with NT shares
|
|
|
|
or Samba drives, setting this to `nosmbntsec' could help. In that case the
|
|
|
|
permission and owner/group information is faked as on FAT partitions.
|
|
|
|
A reason for a non working ntsec on remote drives could be insufficient
|
|
|
|
permissions of the users. Since the needed user rights are somewhat dangerous
|
|
|
|
(SeRestorePrivilege) it's not always an option to grant that rights to users.
|
|
|
|
However, this shouldn't be a problem in NT domain environments.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
2000-02-18 03:38:33 +08:00
|
|
|
<para><FirstTerm>(no)reset_com</FirstTerm> - if set, serial ports are reset
|
|
|
|
to 9600-8-N-1 with no flow control when used. This is done at open
|
|
|
|
time and when handles are inherited. Defaults to set.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>(no)strip_title</FirstTerm> - if set, strips the directory
|
|
|
|
part off the window title, if any. Default is not set.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>(no)title</FirstTerm> - if set, the title bar
|
|
|
|
reflects the name of the program currently running. Default is not
|
|
|
|
set. Note that under Win9x the title bar is always enabled and it is
|
|
|
|
stripped by default, but this is because of the way Win9x works. In
|
|
|
|
order not to strip, specify <literal>title</literal> or <literal>title
|
|
|
|
nostrip_title</literal>.</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>(no)tty</FirstTerm> - if set, Cygwin enables extra support
|
|
|
|
(i.e., termios) for UNIX-like ttys.
|
|
|
|
It is not compatible with some Windows programs.
|
|
|
|
Defaults to not set, in which case the tty is opened in text mode
|
|
|
|
with ^Z as EOF. Note that this has been changed such that ^D works as
|
|
|
|
expected instead of ^Z, and is settable via stty.
|
|
|
|
This option must be specified before starting a Cygwin shell
|
|
|
|
and it cannot be changed in the shell.</para>
|
|
|
|
</listitem>
|
2001-03-02 20:05:31 +08:00
|
|
|
<listitem>
|
|
|
|
<para><FirstTerm>(no)winsymlinks</FirstTerm> - if set, Cygwin creates
|
|
|
|
symlinks as Windows shortcuts with a special header and the R/O attribute
|
|
|
|
set. If not set, Cygwin creates symlinks as plain files with a magic number,
|
|
|
|
a path and the system attribute set. Defaults to set.</para>
|
|
|
|
</listitem>
|
2000-02-18 03:38:33 +08:00
|
|
|
</itemizedlist>
|
|
|
|
</sect1>
|