cygwin.rst
changeset 2485 7c39b8da8353
parent 2484 fcb00dfa7e23
child 2488 b044a0017907
equal deleted inserted replaced
2484:fcb00dfa7e23 2485:7c39b8da8353
    20 
    20 
    21   set PATH=c:\opt\cygwin\bin;%PATH%
    21   set PATH=c:\opt\cygwin\bin;%PATH%
    22 
    22 
    23 Cygwin behavior can be altered via ``CYGWIN`` env var::
    23 Cygwin behavior can be altered via ``CYGWIN`` env var::
    24 
    24 
    25   set CYGWIN=nodosfilewarning noglob
    25   set CYGWIN=noglob wincmdln
    26 
    26 
    27 Currently only ``noglob`` is useful. It disables interpreting special shell wildcard characters
    27 * ``noglob`` disable reinterpreting positional arguments native Windows application as if they
    28 passed verbatim from native Windows apps. So you will unable to do ``ls *`` from ``cmd.exe``. But
    28   contain shell wildcards. With ``glob`` running ``ls *`` from ``cmd`` works as if it is run from
    29 without this option (``glob`` is default) Mercurial patterns, like ``{rev}`` are broken. For me
    29   Unix shell.
    30 native Windows Emacs can't determine file revision with my ``hg`` wrapper.
    30 
       
    31   When I used native Emacs & Cygwin wrapper for ``hg`` default option ``glob`` broke Emacs VC mode
       
    32   because Emacs is using ``{rev}`` as one of the arguments and it was replaced by empty string when
       
    33   ``glob`` is active.
       
    34 
       
    35   ``noglob`` enshures that there are no any magical replacement.
       
    36 
       
    37 * ``wincmdln`` helps during process invocation troubleshooting. Cygwin maintains own structures for
       
    38   program positional arguments so argument list is invisible to Windows programs like Process
       
    39   Monitor. The option ``wincmdln`` tells Cygwin program to copy internal structure for arguments to
       
    40   Windows managed structure making arguments visible.
    31 
    41 
    32 https://cygwin.com/cygwin-ug-net/using-cygwinenv.html
    42 https://cygwin.com/cygwin-ug-net/using-cygwinenv.html
    33   The ``CYGWIN`` environment variable. Available options.
    43   The ``CYGWIN`` environment variable. Available options.
    34 
    44 
    35 Set ``HOME`` env var::
    45 Set ``HOME`` env var::