Cygwin jest przeznaczony przede wszystkim do zapewnienia środowiska podobnego do Linuksa na systemie Windows. Działa najlepiej z programami skompilowanymi dla Cygwin. Może współpracować bezpośrednio z rodzimymi programami Windows, ale musisz być ostrożny.
Jedną z cech Cygwin jest to, że stara się, aby system plików Windows wyglądał jak typowy system plików Linux, np. Programy znajdują się w / usr / bin. Programy Cygwin nie odnoszą się do dysku C: odnoszą się do / cygdrive / c. (Niektóre programy Cygwin rozumieją „C:”, ale są to wyjątki.) Chociaż katalog domowy pojawia się w C: \ cygwin \ home z Windows, pojawia się w / home z Cygwin. Oznacza to, że przekazywanie pełnych nazw ścieżek między programami Cygwin i programami Windows może być trudne: programy Windows nie rozumieją pełnych nazw ścieżek Cygwin, a programy Cygwin na ogół nie rozumieją pełnych nazw ścieżek Windows. Istnieje narzędzie Cygwin, cygpath, które może tłumaczyć między ścieżkami Windows i Cygwin, ale musisz samodzielnie wstawić ten poziom tłumaczenia.
Nie znam ogólnego rozwiązania problemu łączenia programów Cygwin z programami Windows. Najlepsze rozwiązanie zależy od tego, co próbujesz zrobić, od tego, ile chcesz żyć w świecie Linuksa vs. życie w świecie Windows, oraz od programów, których potrzebujesz.
Jeśli planujesz używać Mercurial, Vim, Git itp. Z wiersza poleceń Cygwin, zaleciłbym zainstalowanie wersji tych programów Cygwin. Możesz mieć w systemie zarówno wersje Windows, jak i Cygwin, ale musisz być ostrożny ze swoją ŚCIEŻKĄ.
Próbowałem skonfigurować gvima systemu Windows do używania powłoki Cygwin i ostatecznie zrezygnowałem. Teraz używam gvima dla Windows podczas otwierania plików z GUI i Cygwin vim podczas otwierania plików z wiersza poleceń. W systemie Windows Vim jest po prostu zbyt wiele miejsc, w których konwencje interfejsu API systemu operacyjnego Windows muszą być dostosowane do konwencji programów zewnętrznych Cygwin. To powiedziawszy, używanie tych samych plików konfiguracyjnych użytkownika dla obu jest łatwe. W powłoce bash Cygwin:
ln -s /cygdrive/c/Documents\ and\ Settings/username/_vimrc ~/.vimrc
ln -s /cygdrive/c/Documents\ and\ Settings/username/vimfiles ~/.vim
Musisz tylko upewnić się, że wszystkie te pliki mają końcówki linii uniksowej i używać d2u
na tych, które nie mają. Cygwin's Vim (dowolny Uniksowy Vim) oczekuje zakończenia linii uniksowych; Windows Vim akceptuje zakończenia linii Unix lub DOS.
Użyłem Cygwina dość często, ale nie jestem ekspertem. Powyższe odzwierciedla moje doświadczenia.