iPhone 相簿照片無法刪除

在 iPhone 裡面有某些相簿的照片是無法直接刪除的

當我們點進去這些照片時,除了 "編輯""分享" 之外,根本找不到 "刪除"

這個問題困惑了很多人,其中也包括過去的我

這些無法刪除的照片,可以分為兩類,刪除的方式不同:

  • 照片串流:可以直接從 iPhone 刪除
  • 事件相簿:iPhone 必須連接電腦,從電腦刪除

1. 刪除「照片串流」

開啟 iPhone 設定 > 點選 iCloud > 點選 iPhoto > 關閉「照片串流」


2. 刪除「事件相簿」

  1. 完全關閉 iPhone「相簿 App」

  2. 將 iPhone 連接至你的 Mac,並且開啟 iTunes

  3. 點選 iTunes 左上角的 "裝置圖示" > 點選左邊的 "照片" 欄位

  4. 勾選 "同步照片",拷貝照片來自 "iPhoto"

  5. 勾選 "所選的照片、事件和面孔並自動包含",選擇 "沒有事件"

  6. 套用設定

Share Comments

避免 iPhone 連接 Mac 時,自動啟動 iTunes、iPhoto、Photos

在開發 iOS App 的時候,每次只要 iPhone 一連接 Mac,就會自動跳出 iTunes, iPhoto

每次插拔後重新接上又跳出來,非常的不方便

尤其是當連接的是其他人的私人手機 debug 時,就會不小心從 iPhoto 看到別人的照片

有的時候還挺尷尬的…


1. iTunes

開啟設定(command + ,)> 裝置 > 勾選 "避免 iPod、iPhone 和 iPad 自動同步"


2. iPhoto

開啟設定(command + ,)> 一般 > 連接相機時開啟:選擇 "沒有應用程式"


3. Photos(新版的 iPhoto?)

上方選擇 輸入 > 取消 "為此裝置打開「照片」"




Share Comments

推薦的開發工具

由於我之前工作都是用 Mac 在做軟體開發,後來有滿多同事看我用得很順手

後來都想買 Mac 來用看看 XD

我個人非常推薦用 Mac 進行軟體開發工作

像是我之前常常會跑台北參加各種開發者 Conference

不論是演講者或是底下的開發者們,幾乎是人手一台 Mac

Mac 的穩定性實在是令人非常驚豔,我覺得工作上沒什麼比穩定性還要更重要的了!

這篇主要是寫給初次在 Mac 進行開發的人看的

主要介紹是一些推薦的開發套件,以及一些提醒事項


應用程式 簡介
Xcode 開發 Mac OSXiOS App 專用 IDE
iTerm2 神器等級的終端機
brew 安裝其他 command line,類似 Ubuntuapt-get
git 版本控制軟體
repo 版本控制軟體
Sublime Text 神器等級的文字編輯器
TextWrangler 很方便搜尋關鍵字的文字編輯器

1. 安裝 Xcode

建議從 Mac App Store 下載:https://itunes.apple.com/tw/app/xcode/id497799835?l=zh&mt=12

Xcode 是開發者必裝的軟體,包含了 IDE, Command Line Tools, Clang Compiler, …

其實如果不想要 IDE 的話,也是可以直接到 Apple 開發者中心,直接下載 Command Line Tools

不過這裡是建議直接下載 Xcode,後續透過 Mac App Store 更新會比較方便


2. 安裝 iTerm 2(★★★★★★)

Mac 神器等級的終端機

請參考這篇:終端機 iTerm2 及設定 bash_profile

內有圖文並茂的設定教學


3. 安裝 Home Brew

官方網站:http://brew.sh/

brew 的功能等同於 Ubuntu 上的 apt-get

brew 出現以前有 MacPorts,但是由於他的依賴關係做得不好,常常令人頭痛

於是 brew 就出現了拯救了大家,後來就變成 Mac 上的主流

安裝很簡單,只需要執行以下的 command line 即可

1
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Mac 原廠設定有包含 Ruby, Python … 等大多數的開發套件,所以可以直接執行指令


4. 安裝 git

官方網站:https://git-scm.com/

現今主流的版本控制軟體,應該不用多作解釋吧 XD

可以透過官方網站的 .dmg 來安裝,也可以透過 brew 來安裝

1
brew install git

Git Completion

git 在 Linux 上預設就可以使用 tab 鍵自動完成指令

但是 Mac 上預設卻沒有這個功能,必須要額外下載 git-completion.bash 的腳本

我們可以從 git 的 github,找到 git-completion.bash 的腳本

1
2
# 使用 curl 下載到 home 目錄,並且改名為 .git-completion.sh
curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash > ~/.git-completion.sh

接著修改 ~/.bash_profile 新增以下內容,再重開終端機就行了

1
2
# git bash completion
[ -f ~/.git-completion.sh ] && . ~/.git-completion.sh

Mac File System 不分大小寫

Linux 的 File System 會區分大小寫不同的檔案

而 Mac 與 Windows 一樣,會將大小寫不同的檔案,視為同一個檔案

之前有遇過 A 使用 Linux 平台開發,新增檔案 a123 跟 A123

結果導致我在 Mac 要同步檔案的時候,發生錯誤,還弄了老半天

所以這一定要特別注意


git 在各平台的指令,會有些微的不同

例如說,在 Mac 要將檔案加入提交的時候

已刪除的檔案,可以用 git add <removed_file>

但是在 Linux 上,必須要用 git rm <removed_file> 才能加入

就只是要提醒,各平台的 git 指令會有一點點些微的不同


5. 安裝 repo(搭配 Gerrit 使用)

repo 官方網站:https://code.google.com/p/git-repo/

官方下載安裝教學:http://source.android.com/source/downloading.html#installing-repo

Google 為管理 Android 這種超大型的專案,於是基於 Git Server 開發出了 Gerrit 系統

可以有效率的將一個大專案拆成各個小專案,捨棄 git submodules,統一使用 manifest.xml 來管理

可以減少很多不必要的 patch,例如 merge branch, commit, update submodules commit, … 等等

開發者可以更專注於功能的開發,追縱 bug

其 Code Review Web 介面,可以透過 Change-Id 追蹤每個 patch 的訂正情形


Repo 是搭配 Gerrit 所誕生的工具,作為 client 端的 command line

目前最新版的 repo 是使用 python 寫的,由於 Mac 內建已經有安裝 python 2.7.10 所以可以直接執行

(如果要在 Windows 執行 repo,必須要另外安裝 python 才能運行)

git 的指令為基礎,封裝了 gitGerrit Server 複雜的設定以及溝通的指令

例如 git pull, git push, git fetch 等容易出錯,及設定錯誤的指令

大部份的時候,只需要透過 repo sync, repo upload 即可完成同步、上傳程式碼

執行以下 command line 即可將 repo 安裝到 ~/bin 底下:

1
2
3
mkdir -p ~/bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

新增路徑 ~/binbash_profile

~/.bash_profile
1
export PATH=$PATH:~/bin

使用 repo sync 指令時,他會去先下載 repo 一份最新的 source code,放到 .repo/ 目錄底下

他透過 GPG 去驗證 repo tag 的版本

如果在 Mac 上使用 repo 發生 GPG 相關的錯誤訊息,請安裝 GPG Tools

官方網站:https://gpgtools.org/

安裝好之後,他會要求你輸入信箱等等資訊,不用填,直接關掉就可以了


6. Sublime Text 3(★★★★★★)

官方網站:http://www.sublimetext.com/3

文字編輯超級神器,應該不用多作解釋吧 XD


設定 Sublime Command Line

https://www.sublimetext.com/docs/2/osx_command_line.html

可以直接透過 command line 用 sublime 開啟檔案


安裝 Package Control

https://packagecontrol.io/installation#st3

Sublime Text 有提供各式各樣的套件,可以很簡單的擴充

例如,我個人經常會使用 Markdown 語法來編寫文件、寫網誌,就非常推薦套件 MarkdownLight

作者的 github:https://github.com/sekogan/MarkdownLight

Babel 也有開發 sublime 的套件,可同時支援 ES5, ES6, JSX 的語法

Babel 官方網址:https://babeljs.io/

Babel Github:https://github.com/babel/babel-sublime


7. TextWrangler(★★★)

官方網站:http://www.barebones.com/products/textwrangler/

建議從 Mac App Store 安裝:https://itunes.apple.com/tw/app/textwrangler/id404010395?mt=12

其實他是一個文字編輯器

他對我來說 TextWrangler 最大的賣點是,他文內搜尋的介面做得很好

在 debug 的時候,很適合在幾萬行的 log 裡面搜尋關鍵字

然而一份 log 會有幾萬行,這件事本身很可能就是一個 bug

Share Comments

推薦的軟體工具

應用程式 簡介 推薦
1 Alfred 2 自訂指令熱鍵神器 ★★★★★★
2 AppCleaner 完整移除 App 及相關資料 ★★★★★
3 BetterTouchTool 自訂觸控板設定、自動調整視窗大小 ★★★★★★
4 Chrome 網頁瀏覽器 ★★★★★
5 Karabiner 自訂鍵盤設定 ★★★★★
6 Memory Clean 監控記憶體,釋放記憶體 ★★★★
7 Nally BBS 瀏覽器 ★★★★
8 Parallels Desktop 虛擬機 ★★★★
9 Skitch 簡易圖文編輯軟體 ★★★★★
10 Teamviewer 遠端桌面 ★★★★★
11 VLC 多媒體播放器 ★★★★★

1. Alfred 2 (★★★★★★)

官方網址:https://www.alfredapp.com/

神器等級的工具軟體,硬要給 6 顆星

功能類似 Mac 內建的 Spotlight,不過他的速度更快,功能更強大

不論何時何地,只要透過快捷鍵 option + space 就可以把 Alfred 的介面叫出來

  • 可以快速搜尋、開啟應用程式

  • 支援 Apple 內建字典查詢

  • 輸入數字運算式直接顯示運算結果

  • 他也可以幫你上網到 google, youtube, wiki, … 搜尋結果,也可以自訂要搜尋的關鍵字
    等於是幫你省下開啟瀏覽器,以及開啟搜尋網頁的時間

Alfred 還有其他進階的功能,但是需要額外購買 PowerPack 的服務

可以搜尋通訊錄、iTune,直接輸入 command line,或是自定義複雜的 workflow … 等等

付費 32 英鎊(約 1600 台幣)就可以終身使用

不過光是一般功能就已經很神了!


2. AppCleaner (★★★★★)

官方網站:http://www.freemacsoft.net/appcleaner/

完整移除應用程式,以及其相關檔案,不會殘留資料


3. BetterTouchTool (★★★★★★)

神器等級的工具,可自訂觸控板設定、自動調整視窗大小

請參考這篇:觸控板設定及 BetterTouchTool

內有圖文並茂的設定教學


4. Chrome (★★★★★)

官方網站:https://www.google.com.tw/chrome/browser/desktop/

網頁瀏覽器,這個不用多作介紹吧 XD


5. Karabiner (★★★★★)

自訂鍵盤設定

請參考這篇:自訂鍵盤及 Karabiner

內有圖文並茂的設定教學

6. Memory Clean (★★★★)

官方網站:https://fiplab.com/apps/memory-clean-for-mac

建議透過 Mac App Store 安裝

他會常駐於 Mac 螢幕右上角的工具列,監控當下記憶體的使用情況

可以點擊 Clean 來釋放部分的記憶體


7. Nally (★★★★)

官方網站:http://yllan.org/app/Nally/

台灣人開發的 BBS 瀏覽器

有另外一款 BBS 瀏覽器叫做 Welly,兩款都有人在使用

前幾天跟朋友在試用 Welly 開啟 PPT,結果整個都是亂碼,也不曉得是什麼問題

但是使用 Nally 開 PTT 就不會出現亂碼


8. Parallels Desktop (★★★★)

官方網站:http://www.parallels.com/tw/

虛擬機,目前有支援多作業系統,包含 Windows, Ubuntu, ChromeOS, Android, … 等等

Parallels Desktop 目前出到 11 版

支援全屏、融合模式,可以直接在個作業系統之間拖拉檔案,以及快速切換作業系統

相較於其他家的虛擬機 VMware、VirtualBox,Parallels Desktop 對於 Windows 的支援度最好

這些虛擬機好像都不能同時開啟,會互相排斥

但是缺點是要花錢買,原價 79.99 美金(約 2440 台幣),通常上網拍買會便宜很多

如果序號有支援兩台電腦的話,可以跟朋友合資購買

Parallels Desktop 大約每次 Apple 發布新版的作業系統時,也會一併發佈新的版本

Parallels Desktop Mac OS X 日期
Parallels Desktop 9 OS X 10.9 Mavericks 2013.10.22
Parallels Desktop 10 OS X 10.10 Yosemite 2014.10.16
Parallels Desktop 11 OS X 10.9 El Capitan 2015.09.30

我有買正版的 PD9 和 PD10,其實真的不便宜

但每過一年就更新版本,每次都會號稱新版本快了 50%

看了都令我很心動,但我也不知道是真的假的

這次 Parallels Desktop 更新,有收到他們寄來的緊急服務通知

我今年四月中才升級 PD10,還不到半年,現在就跟我說什麼功能不能用,感覺滿差的

我覺得使用者可以接受 PD10 比 PD11 速度慢 50%,畢竟軟體開發過了一年,技術上本來就應該有所突破

但是實在很難接受原本可以用的功能,現在卻不能用了…

所以這次 PD11 我應該會跳過吧!


9. Skitch (★★★★★)

官方網站:https://evernote.com/intl/zh-tw/skitch/

建議從 Mac App Store 下載安裝:https://itunes.apple.com/us/app/skitch-snap.-mark-up.-share./id425955336?mt=12

由 Evernote 推出的工具軟體

可以對圖片截圖進行簡易編輯,新增註解、拉箭頭、畫框框

非常簡單好用

Skitch 也有推出 Android 跟 iOS 版本的 App


10. Teamviewer (★★★★★)

官方網站:https://www.teamviewer.com/zhTW/

遠端桌面的老字號

同時支援 Windows, Linux, Mac 等平台

近年來也開始支援 App 的版本


11. VLC (★★★★★)

官方網站:http://www.videolan.org/vlc/

VLC 本身可以支援所有平台

雖然 Mac 內建的 QuickTime Player 已經非常好用了

但是有時候不免會遇到一些格式比較少見的檔案類型

這時候 VLC 就能夠彌補 QuickTime Player 本身支援度的不足

Share Comments

終端機 iTerm2 及設定 bash_profile

Mac 原廠提供的終端機,在 10.10 改版之後已經比以前好用很多了

但是說到 Mac 終端機,iTerm2 絕對是你最佳的選擇

iTerm2 官方網址:https://www.iterm2.com/

iTerm2 最大的特色是,他可以隨時隨地向右、向下新增內分頁

例如說,我現在想要寫完一分 code,準備要用提交

我就可以左邊 git diff,右邊寫 commit message

左右對照非常方便

主要操作的快捷鍵如下:

快捷鍵 功能
⌘ + T 開新分頁
⌘ + 左右 切換分頁
⌘ + D 向右開新內分頁
⌘ + shift + D 向下開新內分頁
⌘ + option + 上下左右 切換內部分頁
⌘ + W 關閉所在的分頁
⌘ + Q 關閉 iTerm2

設定從所在的目錄開啟新分頁

iTerm2 預設每次開新分頁,都會跑回 Home 目錄,這樣會很不方便

iTerm2 可以改成從所在目錄底下,開啟新的分頁

cmd + , 進入設定頁面 > profile > General > Working Directory > Reuse previous session's directory


設定 bash_profile

Mac 終端機預設是沒有顏色區分的,只有白底黑字

對於開發者來說,終端機字體的顏色是非常重要的

如果想要像在 Linux 一樣有顏色的話,就必須自行新增 ~/.bash_profile

以下是我個人慣用的 bash_profile

~/.bash_profilegist
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# enables color in the terminal bash shell
export CLICOLOR=1

# sets up the color scheme for list
export LSCOLORS=ExFxCxDxBxegedabagacad

# enables color for iTerm
export TERM=xterm-color

export TERM="xterm-color"
PS1='\[\e[0;33m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '

# sets up proper alias commands when called
alias ls='ls -vG'
alias ll='ls -al'
alias la='ls -a'
alias vi='vim'

新增完成之後,重開終端機,就會有美麗的顏色了


自訂 iTerm 的背景主題

cmd + , 進入設定頁面 > profile > Colors > Load Presets...

建議如果要時間使用終端機的話,選擇暗色系的會比較保護眼睛

我覺得列表中既有的 Tango Dark 算是還不錯,顏色看起來很舒服

如果既有的顏色都不滿意的話,也可以到這個網站下載別人做好的背景主題

http://iterm2colorschemes.com/


開啟 vim 的語法 highlight

Mac 預設的 vim 的語法 highlight 是關閉的

所以要自行新增 ~/.vimrc

~/.vimrc
1
syntax on
Share Comments

自訂鍵盤及 Karabiner

按住 Fn 時啟用特殊功能鍵

在 Mac 中的按鍵 F1 ~ F12 預設是特殊功能鍵,可以調整螢幕亮度 or 音量

但是如果有些應用程式會很經常按 F1 ~ F12 的按鍵的話,就必須要按著 Fn + F1 ~ F12

例如說,我在虛擬機執行 Windows 或 Linux 的時候,就會經常使用到 F1 ~ F12 等標準功能鍵

所以我會把他的預設改成,按住 Fn 的時候,才會變成特殊功能鍵

  • 系統偏好設定 > 鍵盤 > 勾選 “使用所有 F1、F2 等按鍵作為標準功能鍵”

Karabiner(免費)

一般 Mac 裡面可以自訂的鍵盤按鍵,就只有 Caps Lock, Control, Option, Command 四個按鍵

如果想要自訂其他按鍵的話,可以透過 Karabiner 來幫忙

官方網址:https://pqrs.org/osx/karabiner/

原名為 KeyRemap4MacBook

網路上也有很多部落客撰寫關於此的文章,可以 google 關鍵字 KarabinerKeyRemap4MacBook


調換左側的 control 與 command 鍵

由於以前在 PC 上,非常習慣 control 鍵的位置,而且 command 跟 shift 時常要一起按

他們隔得太遠了,很不好按

假如我使用 Mac 的系統設定來修改按鍵的話,右側的 command 也會變成 control

為了保留右側的 command,就可以透過 Karabiner 來設定

Karabiner 裡面有很多預設的項目,我們只要找到符合我們要的功能打勾就行了

  • 展開 Change Command_L Key (Left Command) > 勾選 Command_L to Control_L
  • 展開 Change Control_L Key (Left Control) > 勾選 Control_L to Command_L

自訂 del

由於 Mac 上只有 delete 鍵,等同於 PC 鍵盤的 Backspace 鍵,向前刪除文字

如果想要向後刪除文字的話,就要按 fn + delete

由於我已經非常習慣使用 del 鍵了,所以會希望有一個 del 鍵可以用

剛好 Karabiner 就已經有提供了這個功能

  • 展開 Change Backslash(\) key > 勾選 Backslash(\) to Forward Delete

由於反斜線通常比較少使用,所以就把它換成 del 鍵,如果想要打反斜線的時候在按著 Fn


自訂滑鼠左鍵:為了快速框選大範圍的內容

通常在 PC 上,我們想要一次拖拉框選大範圍的內容時,就只要用按著滑鼠左鍵,然後搭配滑鼠滾球往下拉就行了

但是 Mac 的觸控板沒有滾球,這樣慢慢拖拉好辛苦

所以我會希望鍵盤上能夠有一個特殊的組合鍵,能夠代表滑鼠的左鍵

我只要按住這個特殊的組合鍵,然後兩指在觸控板往上下滑,就可以快速框選大範圍的內容

由於這是我個人獨特的需求,Karabiner 預設的列表沒有相似的功能

不過沒關係,Karabiner 有提供可以讓使用者新增選項的方法:

  • 開啟 Misc & Uninstall > Custom Setting > Open private.xml

private.xml 可以讓使用者客製化自己的選項

官方文件:https://pqrs.org/osx/karabiner/xml.html.en

所以我決定將 fn + command 設定為滑鼠左鍵

private.xmlgist
1
2
3
4
5
6
7
8
<?xml version="1.0"?>
<root>
<item>
<name>Fn + Cmd to LeftClick</name>
<identifier>private.fn2leftclick</identifier>
<autogen>__KeyToPointingButton__ KeyCode::FN, ModifierFlag::COMMAND_L, PointingButton::LEFT</autogen>
</item>
</root>

  • 存檔之後,回到 Change Key 頁面,按下 Reload XML,自訂的選項就會出現在列表了
Share Comments