GNU/Linux >> Znalost Linux >  >> Linux

Nastavení Shiny Development Environment v Linuxu na Windows 10

Zatímco jsem získával Ruby on Rails, aby dobře fungoval pod Ubuntu na Windows 10, využil jsem příležitosti a nastavil jsem prostředí *nix bash, které z velké části používalo výchozí nastavení. Ano, vím, že mohu použít zsh nebo ryby nebo jiné mušle. Ano, vím, že mohu používat emacs a screen, ale používám Vim a tmux. Bojuj se mnou. Každopádně, jakmile byl můj příspěvek hotový, začal jsem si pohrávat s open source .NET Core na Linuxu (běží na Windows, Mac a Linux, ale tady běžím na Linuxu na Windows. #Inception) a tweetoval jsem obrázek můj desktop.

Mimochodem, cítím se naprosto ospravedlněn veškerým zájmem o "textový režim" vzhledem k mému blogovému příspěvku z roku 2004 "Windows zcela chybí loď TextMode.";)'

Také pro ty z vás, které HLUBOKÝ NEZAJÍMÁ příkazový řádek, je to skvělé. Nyní můžete přestat číst. Úplně v pořádku. Používám také Visual Studio AND Visual Studio Code. Někdy klikám a myší a někdy klepu a píšu. Je tu prostor pro nás všechny.

CO JE VŠECHNO TENTO LINUX NA VĚCÍCH WINDOWS? Zde jsou často kladené otázky o subsystému Bash/Windows pro Linux/Ubuntu ve Windows/Snowball in Hell a některé podrobné poznámky k verzi. Ano, je to skutečné a je to velkolepé. Nemůžete přečíst tolik textu? Zde je video, které jsem natočil na Ubuntu ve Windows 10.

Řada lidí se mě zeptala, jak by mohli nastavit své instalace WSL (Windows Subsystem for Linux), aby byly něco takového, takže jsem udělal toto. Všimněte si, že pokud používám *nix zapnuto a vypnuto více než 20 let, nejsem v žádném případě odborník. Jsem a byl jsem ve svých dovednostech trvale střední. Nesním v RegEx a uráží mě, že ostatní dokážou vyluštit awk skript bez googlování.

Na tomto snímku obrazovky se tedy děje několik věcí.

  • Spuštění .NET Core v systému Linux (ve Windows 10)
  • Skvělý motiv VIM s>256 barvami
  • Norton Půlnoční velitel v rohu (díky Migueli)
  • Rozbočovač tmux ve stylu Desqview (s podporou myši)
  • Některé přemapování klávesových zkratek, výzva git, dokončení
  • Písmo Ubuntu Mono
  • Pěkné barvy adresáře (DIRCOLORS/LS_COLORS)

Pojďme je rozebrat jeden po druhém. A znovu, váš počet najetých kilometrů se může lišit, žádná záruka vyjádřená nebo předpokládaná, cokoli z toho může zničit váš svět, to jste si přečetli na blogu. Linux je nekonečně konfigurovatelný a jedinou konstantou je, že moje konfigurace je špinavá a vaše konfigurace je na hovno. Dokud v tom tvém neuvidím něco, co můžu ukrást.

Spuštění .NET Core v systému Linux (ve Windows 10)

Vzhledem k tomu, že Linux na Windows 10 je (dnes) Ubuntu, můžete si do něj nainstalovat .NET Core jako každý Linux. Zde jsou pokyny pro Ubuntu pro SDK .NET Core. Možná máte Ubuntu 14.04 nebo 16.04 (pokud chcete, můžete svůj Linux upgradovat na Windows). Ujistěte se, že víte, co spouštíte:

~ $ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.2 LTS
Release: 16.04
Codename: xenial
~ $

Pokud nepoužíváte verzi 16.04, můžete celý subsystém snadno odstranit a znovu nainstalovat pomocí těchto příkazů v cmd.exe (všimněte si, že /full je vážný a zapaluje souborový systém Linuxu):

> lxrun /uninstall /full
> lxrun /install

Nebo pokud chcete, můžete to spustit v bash (bude to trvat déle, ale zachováte nastavení).

POZNÁMKA že ke spuštění Ubuntu 16.04 budete potřebovat Windows 10 Creators Edition sestavení 16163 nebo vyšší. Chcete-li zkontrolovat sestavení, zadejte „winver“.

sudo do-release-upgrade

Zjistěte, co má Ubuntu váš Windows 10, když si do něj nainstalujete .NET Core. Další věc, kterou je třeba si zapamatovat, je, že nyní máte dvě jádra .NET, jedno Windows a jedno Ubuntu, na stejném (tak trochu) počítači. Vzhledem k tomu, že systémy souborů jsou oddělené, není to velký problém. Svou vývojovou práci dělám v Ubuntu na /mnt/d/github (což je jednotka Windows). Je v pořádku, že subsystém Linux upravuje soubory v Linuxu nebo Windows, ale „nesahejte“ do systému souborů Linux z Windows.

Super motiv Vim s>256 barvami

To téma Vim je gruvbox a nainstaloval jsem ho takto. Děkuji Richovi Turnerovi, že mě přivedl k tomuto tématu.

$ cd ~/
$ mkdir .vim
$ cd .vim
$ mkdir colors
$ cd colors
$ curl -O https://raw.githubusercontent.com/morhetz/gruvbox/master/colors/gruvbox.vim
$ cd ~/
$ vim .vimrc

Vložte následující (stisknutím „i“ vložte a poté klikněte pravým tlačítkem/vložte)

set number
syntax enable
set background=dark
colorscheme gruvbox
set mouse=a

if &term =~ '256color'
" disable Background Color Erase (BCE) so that color schemes
" render properly when inside 256-color tmux and GNU screen.
" see also http://snk.tuxfamily.org/log/vim-256color-bce.html
set t_ut=
endif

Poté uložte a ukončete pomocí Esc, :wq (napiš a ukonči). Existuje spousta motivů, tak si nějaké vyzkoušejte!

Norton Půlnoční velitel v rohu (díky Migueli)

Midnight Commander je úžasný klon Norton Commander, který založil Miguel de Icaza a který je licencován jako součást GNU. Nainstaloval jsem to přes apt, stejně jako jakýkoli software Ubuntu.

$ sudo apt-get install mc

V rámci systému Windows (konzolový hostitel), ve kterém běží bash, je podpora myši, takže podporu myši získáte i v Midnight Commander!

Skvělé věci.

Rozdělovač tmux ve stylu Desqview (s podporou myši)

Tmux je terminálový multiplexer. Jedná se o prostředí textového okna, ve kterém můžete spouštět více programů. Ještě lepší je, že se můžete „odpojit“ od běžící relace a znovu se připojit odjinud. Z tohoto důvodu lidé rádi používají tmux na serverech, kde mohou ssh vstoupit, nastavit prostředí, odpojit a znovu připojit odjinud.

POZNÁMKA: Subsystém Windows pro Linux ukončí všechny procesy na pozadí při ukončení poslední konzoly. Takže můžete šťastně odpojit a připojit relace tmux, ale ujistěte se, že nezavíráte všechny konzole na vašem počítači.

Zde je pěkný animovaný gif, na kterém jsem přesunul splitter na tmux ve Windows. ANO, VÍM, ŽE MŮŽETE POUŽÍVAT KLÁVESNICE, ALE TENTO GIF JE SKVĚLÝ.

Některé přemapování klávesových zkratek, výzva git, dokončení

Stále se učím tmux, ale tady je můj .tmux.conf. Provedl jsem několik běžných změn, aby bylo vytváření oken pomocí klávesových zkratek jednodušší.

#remap prefix from 'C-b' to 'C-a'
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix

# split panes using | and -
bind | split-window -h
bind _ split-window -v
unbind '"'
unbind %
bind k confirm kill-window
bind K confirm kill-server
bind < resize-pane -L 1
bind > resize-pane -R 1
bind - resize-pane -D 1
bind + resize-pane -U 1
bind r source-file ~/.tmux.conf

# switch panes using Alt-arrow without prefix
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D

# Enable mouse control (clickable windows, panes, resizable panes)
set -g mouse on
set -g default-terminal "screen-256color"

Používám výchozí Ubuntu .bashrc, který zahrnuje kontrolu dircolors (více o tom níže), ale přidal jsem to pro git-completion.sh a výzvu git, stejně jako tyto dva aliasy. Líbí se mi, že mohu napsat „desktop“ a přejít na plochu Windows. A -x v Midnight Commander pomáhá podpoře myši.

alias desktop="cd /mnt/c/Users/scott/Desktop"
alias mc="mc -x"
export CLICOLOR=1
source ~/.git-completion.sh
PS1='\[\033[37m\]\W\[\033[0m\]$(__git_ps1 " (\[\033[35m\]%s\[\033[0m\])") \$ '
GIT_PS1_SHOWDIRTYSTATE=1
GIT_PS1_SHOWSTASHSTATE=1
GIT_PS1_SHOWUNTRACKEDFILES=1
GIT_PS1_SHOWUPSTREAM="auto"

Git Completion lze nainstalovat pomocí:

sudo apt-get install git bash-completion

Písmo Ubuntu Mono

Opravdu se mi líbí písmo Ubuntu Mono a líbí se mi, jak vypadá při spuštění Ubuntu pod Windows. Ubuntu Font Family si můžete stáhnout zdarma. Klikněte pravým tlačítkem na stažené soubory TTF a klikněte pravým tlačítkem a "Instalovat" nebo je přetáhněte do C:\windows\fonts. Poté klikněte na levý horní roh libovolného okna konzoly Bash a změňte písmo na Ubuntu Mono.

Pěkné barvy adresáře (DIRCOLORS/LS_COLORS)'

Pokud máte černé pozadí příkazového řádku, pak výchozí barvy pro adresáře budou tmavě modrá na černé, což je na hovno. Naštěstí můžete získat soubory .dircolors z celého wep nebo nastavit proměnnou prostředí LS_COLORS (nezapomeňte hledat LS_COLORS pro Linux, ne jinou, jinou LSCOLORS na Macu).

Skončil jsem s "dircolors-solarized" odtud, stáhl jsem to pomocí wget nebo curl a vložil do ~. Potom potvrďte, že je to ve vašem .bashrc (pravděpodobně už je)

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'

alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi

Stáhněte si jakýkoli soubor .dircolors, který vám udělá radost (ujistěte se, že název souboru skončí jako „.dircolors“, takže možná budete muset zkopírovat zdrojový soubor ~/.dircolors a poté restartovat konzolu.

Je to pro mě velký rozdíl, a jak už jsem zmínil, je to naprosto, nádherně, šíleně konfigurovatelné.

Nechte SVŮJ Linux na Windows tipy v komentářích!

Sponzor: Věděli jste, že VSTS lze úzce integrovat s Octopus Deploy? Podívejte se na Damiana Bradyho a Briana A. Randella, jak vám ukážou, jak automatizovat nasazení z VSTS na Octopus Deploy, a předveďte nový panel VSTS Octopus Deploy widget. Sledujte nyní

Linux
  1. C# v prostředí linuxu

  2. Nastavení proměnných prostředí Linuxu

  3. Jak dostanu svůj vestavěný klíč Windows 8+ z prostředí Linuxu?

  1. Termux mění Android na vývojové prostředí Linuxu

  2. Nastavení vývojového prostředí python virtualenv na Debian Linuxu

  3. exFAT vs NTFS na Linuxu

  1. 10 DŮVODŮ PRO ZMĚNU WINDOWS 10 NA LINUX

  2. Flex vývoj na Linuxu, jaké je dobré bezplatné prostředí?

  3. Vytvářejte symbolické odkazy NTFS z Linuxu