成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

打造高效前端工作環(huán)境-tmuxinator

vboy1010 / 1950人閱讀

摘要:當下次從版本管理器下載項目后,直接執(zhí)行引入變量到項目配置文件中參數(shù)形式調(diào)用鍵值對形式調(diào)用環(huán)境變量調(diào)用設(shè)置開發(fā)環(huán)境上下文在項目配置文件中加入配置項。

前言

?雖然tmux能讓我們方便組織工作環(huán)境,但每次重新打開會話時都需要手動重新創(chuàng)建窗口、窗格和執(zhí)行各種程序,能不能像VS那樣以工程為單位保存窗口、窗格和各種所需執(zhí)行的程序的信息呢?tmuxinator恰恰能解決我們這個需求!

安裝與配置

?安裝gem

$ sudo apt install gem
$ gem sources --remove https://rubygems.org --add http://gems.ruby-china.org/

?確保gem的源有且僅有http://gems.ruby-china.org/

$ gem sources -l

?安裝Tmuxinator

$ gem install tmuxinator

?配置別名mux和tmuxinator子命令智能補全
自動根據(jù)使用的shell(bash,zsh,fish)下載配置腳本,并啟用配置。

$ if [[ $SHELL == *fish* ]];then pushd ~/.config/fish/completions/; else pushd ~/.tmuxinator/; fi &&
curl -O "https://raw.githubusercontent.com/tmuxinator/tmuxinator/master/completion/tmuxinator.$(basename $SHELL)" &&
popd &&
if [[ $SHELL != *fish* ]];then echo "source ~/.tmuxinator/tmuxinator.$(basename $SHELL)" >> ~/.$(basename $SHELL)rc; fi &&
if [ -z $EDITOR ];then echo "export EDITOR="vim"" >> ~/.$(basename $SHELL)rc; fi &&
source ~/.$(basename $SHELL)rc
入門

1.創(chuàng)建并編輯項目配置,mux n
示例:

$ mux n demo

然后進入項目配置編輯界面

# ~/.tmuxinator/demo.yml
# 默認配置
name: demo #項目(配置)名稱,不要包含句號
root: ~/   #項目的根目錄,作為后續(xù)各命令的當前工作目錄使用

windows:
    - editor: # 配置名稱為editor的窗口
            layout: main-vertical # 由于editor下存在多個窗格,因此需要layout可以設(shè)置布局(5個默認值even-horizontal,even-vertical,main-horizontal,main-vertical,tiled)
            panes:
                - vim # 配置一個窗格運行vim
                - guard # 配置另一個窗格運行g(shù)uard
    - server: bundle exec rails s # 配置名稱為server的窗口, 且僅有一個執(zhí)行bundle exec rail s的窗格
    - logs: tail -f log/development.log # 配置名稱為logs的窗口, 且僅有一個執(zhí)行tail -f log/development.lgo的窗格

根據(jù)修改配置得到如下

# ~/.tmuxinator/demo.yml
name: demo
root: ~/repos/demo/
pre_window: nvm use 4

windows:
    - editor: vim index.html
    - server: npm run dev
    - stats:
            layout: even-horizontal
            panes:
                - npm run watch:html
                - npm run watch:css
                - npm run watch:js
    - note:
            root: ~/repos/note/ # 可在窗口下通過root來配置該窗口下各命令的當前工作目錄
            panes:
                - vim pugjs.md

然后保存文件就OK了!

2.打開項目(i.e.根據(jù)項目配置啟動tmux會話),mux mux s
示例:

$ mux demo

然后tmuxinator就會創(chuàng)建一個tmux會話,并根據(jù)剛才編輯的配置文件創(chuàng)建窗口和窗格

3.關(guān)閉項目(i.e.根據(jù)項目配置關(guān)閉tmux會話),mux st
示例:在tmux某個shell中輸入

$ mux st demo

4.編輯項目配置,mux e mux o
5.查看現(xiàn)有項目配置,mux l
6.刪除項目(i.e.刪除現(xiàn)有項目配置),mux d []*
7.修改項目配置名稱,mux c

進階

1.項目配置文件路徑隨心玩
?眼利的同學可能會發(fā)現(xiàn)當我們輸入mux n demo后創(chuàng)建的配置文件首行為# ~/.tmuxinator/demo.yml,這個正是demo這個項目配置文件的路徑。也就是說默認情況下項目配置將保存在~/.tmuxinator/下,并以項目名稱.yml作為文件名。這樣我們就能在任意目錄下通過命令mux 打開項目了。
?但一旦誤刪了項目配置那么就要重新設(shè)置了,能不能把它也挪到項目中通過版本管理器(git etc.)作保障呢?必須可以的哦!

# 假設(shè)項目目錄為~/repos/demo/
$ mv ~/.tmuxinator/demo.yml ~/repos/demo/.tmuxinator.yml &&
ln -s ~/repos/demo/.tmuxinator.yml ~/.tmuxinator/demo.yml

?那么除了通過mux 外,當pwd為項目目錄時,直接輸入mux也會打開當前項目。而且可以通過mux的其他命令來管理項目配置文件。
?當下次從版本管理器下載項目后,直接執(zhí)行

$ ln -s ~/repos/demo/.tmuxinator.yml ~/.tmuxinator/demo.yml

2.引入變量到項目配置文件中
?參數(shù)形式

# ~/.tmuxinator/demo.yml
name: demo
root: ~/<%= @args[0] %>

.........

調(diào)用mux demo args0 args1
?鍵值對形式

# ~/.tmuxinator/demo.yml
name: demo
root: ~/<%= @settings["ws"] %>

.........

調(diào)用mux demo ws="repos/demo/"
?環(huán)境變量

# ~/.tmuxinator/demo.yml
name: demo
root: ~/<%= ENV["ws"] %>

.........

調(diào)用set $ws="repos/demo/" && mux demo

3.設(shè)置開發(fā)環(huán)境上下文
?在項目配置文件中加入pre_window配置項。
示例:

name: demo
root: ~/repos/demo
pre_window: nvm use 4
總結(jié)

?尊重原創(chuàng),轉(zhuǎn)載請注明來自:http://www.cnblogs.com/fsjohn... ^_^肥仔John

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/24897.html

相關(guān)文章

  • macOS打造Web前端開發(fā)環(huán)境高效管理macOS

    摘要:本配置比較適合前端開發(fā)人員,打造開發(fā),自動補全使用效率好的已解決安裝卻提示需要的問題提示安裝常用工具及,如使用工具不一樣的,可自已進行相關(guān)配置詳細配置安裝安裝插件所需的已在初使化環(huán)境中配置完成適合前端相關(guān)開發(fā),設(shè)置參考許可證 Ren Chunhuis Dotfiles 本配置比較適合Web前端開發(fā)人員,打造 iTerm + Zsh + Vim/NeoVim + Tmux] 開發(fā),自動補...

    selfimpr 評論0 收藏0
  • 【轉(zhuǎn)】給年輕的前端程序員提升能力的幾條建議

    摘要:如果你問一個年輕的前端開發(fā)人員,你在今后的年內(nèi)如何提升自己的能力他可能會說我現(xiàn)在對前端比較熟悉,但我想深入了解,另外現(xiàn)在發(fā)展的很快我也想看一下。再舉一個例子,我會留意身邊的程序員所用的鍵盤。只有少部分的程序員會買高端的靜電容鍵盤,比如。 如果你問一個年輕的前端開發(fā)人員,你在今后的 3 年內(nèi)如何提升自己的能力?他可能會說我現(xiàn)在對 Web 前端比較熟悉,但我想深入了解 AngularJS,...

    Ryan_Li 評論0 收藏0
  • mac 下的新玩具

    摘要:為啥需要,因為能更快更方便的進行代碼提示與代碼補全,每個人的精力都是有限的,能打一個字母出來結(jié)果就絕對不打第二個。 tools zsh為啥需要zsh,因為能更快更方便的進行代碼提示與代碼補全,每個人的精力都是有限的,能打一個字母出來結(jié)果就絕對不打第二個。 plugins=(git brew mvn svn svn-fast-info sbt go pip zsh-syntax-high...

    canopus4u 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<