»

Bash Prompt and ANSI Color

Log — Tags: , , — Posted by Starck on March 29, 2013

Bash Setting

Prompt

只要設定 PS1 這個環境變數就可以修改在 Terminal 的提示文字, 通常會在 home 目錄中的 .bashrc 找到定義

export PS1=""

可以使用的 prompt 變數如下:

  • \d : 可顯示出『星期 月 日』的日期格式,如:”Mon Feb 2″
  • \H : 完整的主機名稱
  • \h : 僅取主機名稱在第一個小數點之前的名字
  • \t : 顯示時間,為 24 小時格式的『HH:MM:SS』
  • \T : 顯示時間,為 12 小時格式的『HH:MM:SS』
  • \A : 顯示時間,為 24 小時格式的『HH:MM』
  • \@ : 顯示時間,為 12 小時格式的『am/pm』樣式
  • \u : 目前使用者的帳號名稱,如『root』;
  • \v : BASH 的版本資訊
  • \w : 完整的工作目錄名稱,由根目錄寫起的目錄名稱。但 home 目錄會以 ~ 取代;
  • \W : 利用 basename 函數取得工作目錄名稱,所以僅會列出最後一個目錄名。
  • \# : 下達的第幾個指令。
  • \$ : 提示字元,如果是 root 時,提示字元為 # ,否則就是 $ 囉~

ANSI Color

  • \e[ or \033[ : 代表顏色宣告的開始
  • x;ym : x,y 為顏色值
  • \e[m or \033[m : 顏色宣告結束

顏色值可以參考下面的對照表:

reference

ANSI 256 Color

如果要用到 ANSI 256 color, 可以先下載 colortest 了解想要的顏色編號.

  • \e[38;5; or \033[38;5; : 顏色宣告
  • xm : x 為顏色編號
  • \e[m or \033[m : 顏色宣告結束

我目前的 PS1 設定如下

export PS1="★ \u [\033[38;5;148m \W \033[m] \$ "

export PS1="\e[0;96m☁ \e[m \u [\033[38;5;148m \W \033[m] \$ "

.

Upgrading PHP on MacOS

Log — Tags: , , , — Posted by Starck on March 29, 2013

所需工具

使用 Brew 讓在 MacOS 安裝管理套件變得容易許多, 而 HomeBrew-PHP 則是讓你在 MacOS 上安裝 PHP 和管理 extensions 的 Brew 套件.

Brew

安裝 Brew:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

如果之前已經安裝過 Brew, 依據習慣, 我會將 Brew 更新到最後的版本:

brew update

brew upgrade

Installation

Tap the homebrew/dupes repository into your brew installation:

brew tap homebrew/dupes

Tap the repository into your brew installation:

brew tap josegonzalez/homebrew-php

安裝參數說明

brew options php54

安裝 php 5.4

brew install php54

安裝時可能會出現的問題

jpeg8-d:

jpeg8-d is already installed, it's just not linked
    Could not symlink file: /usr/local/Cellar/jpeg/8d/bin/wrjpgcom
    Target /usr/local/bin/wrjpgcom already exists. You may need to delete it.
    To force the link and delete this file, do:
    brew link --overwrite formula_name

解法: brew link --overwrite jpeg

reference

Apache httpd.conf 設定

先檢查 /usr/local/Cellar/php54/ 下的 php 版本號是多少, 例如: 5.4.12

** Update 2013-08-07 **

在 Moutain Lion Server 下, 修改 php module 讀取路徑要到 /Library/Server/Web/Config/apache2/httpd_server_app.conf

** Update 2013-10-26 **

After updating Mavericks Server, please also upgrade to the latest Xcode and make sure you re-install Command-line Tools: xcode-select --install

Edit /Library/Server/Web/Config/apache2/httpd_server_app.conf:

如果使用 FPM, 請在 Terminal 下達:

Command-line

If you would like to swap the PHP you use on the command line, you should update the $PATH variable in either your .bashrc or .bash_profile:

[MacOS] mysql.sock error

Log — Tags: , — Posted by Starck on March 28, 2013

今天在使用 Terminal 連線到本機 MySQL 時發生錯誤:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

因為平常使用 phpMyAdmin 都是正常的, 所以不確定這個情況是什麼時候開始和什麼原因造成的. 查看 /etc/my.cnf, 確認 mysql.sock 是設在 /var/mysql/mysql.sock(不知道為什麼用 mysql 指令時它會跑去透過 /tmp/mysql.sock) , 沒時間處理這個問題, 所以先用 symbolic link 的方式解決.

$ ln -s /var/mysql/mysql.sock /tmp/mysql.sock

最常用的 SublimeText Plugins 和 Key Bindings

Coding, Log — Tags: — Posted by Starck on March 26, 2013


Theme


Plugins

  • Emmet – 快速編寫 HTML/CSS 的方式

  • CTags

    在 Mac 下會有問題,需要修改設定檔:

    "command" : "ctags -R -f .tags"

    改成

    "command" : "/usr/local/bin/ctags -R -f .tags"

    就正常了

  • SFTP

    可以在 SublimeText 直接上傳文件到 Server, 還可以 diff 比較差異, 很好用。

  • Git

    這個不用說了吧,不過很少用,因為都直接在 Terminal 操作

  • CodeIntel

    提供自動化的 Navigate to Definition 和 Autocomplete, 但還沒有仔細去研究…

  • MarkdownPreview

    預覽 Markdown 語法的生成畫面, 可以 settings 裡將 parser engine 改成 github (預設為 default) 以支援 GitHub-flavored Markdown

  • HTMLPrettify

  • Javascript Beautify

manual format: Ctl+Alt+f

.

Key Bindings

  • cmd + p : Goto Anything
  • ctrl + cmd + p : Command Pattern
  • cmd + d : Multiple Selection 快速修改變數名稱
  • cmd + option + d : 移除整行文字
  • ctrl + cmd + : 整行文字上移
  • ctrl + cmd + : 整行文字下移
  • cmd + option + : 整行文字複製到下一行

2013-07-18 更新

CodeIntel:

For Mac OS X:

  • Jump to definition = Control+Click
  • Jump to definition = Control+Command+Alt+Up
  • Go back = Control+Command+Alt+Left
  • Manual CodeIntel = Control+Shift+space

2014-06-10 更新

Overwrite 模式切換

alt + cmd+ o



2013-06-18:

CodeIntel 需要建一個設定檔在 ~/.codeintel/config 或是 project_root/.codeintel/config:

在我的 Mac, 因為有用 Brew 重新編譯 PHP, 所以路徑應改為:

"php": '/usr/local/Cellar/php54/5.4.12/bin/php',

« Previous Page
(c) 2024 Starck Lin | powered by WordPress