2015年3月11日

Mac OS X Command Hacks(一)將剪貼簿的 Markdown 轉成包含格式化的 RTF 文字

平常如果習慣用 Markdown 文字書寫,但是在貼到 Word / Pages 或網頁的所視即所得編輯器中,又想要有轉換過的格式化文字,可以用簡單的指令輕鬆辦到。

先安裝 Pandoc

http://johnmacfarlane.net/pandoc/installing.html

這是本文唯一需要加裝的第三方軟體。

Pandoc 是可以轉換多種文字格式的 command-line 工具,我們利用它將 Markdown 文字轉為 HTML 格式。

Pandoc 使用範例

pandoc -f markdown -t html README.md

複製一段 Markdown 純文字

以下是一段 Markdown 格式的純文字,選取這段文字複製到剪貼簿。

# 投資致富學他們,果粉買蘋果股票獲利破百萬

想要投資股市卻不知如何下手?一些蘋果迷「投其所愛」,轉戰投資蘋果股票,如今獲利已超過百萬台幣。

許多股市入門書籍都教投資人若不知如何選股時,不妨「所用即所買」,也就是平時愛用哪家公司的產品,就買哪家公司的股票。這個原則對於眾多的蘋果(Apple)愛好者來說特別適用,由於蘋果股價一路飆高,如果他們遵行這樣的投資法則,顯然都能大賺一筆。

若有蘋果愛好者從2007年第一代iPhone上市時,開始投資蘋果股票,當時,蘋果股價每股不到20美元,至2015年3月,蘋果股價來到129美元左右價位,光是股價上獲利就超過5倍。實際上,因為蘋果股票中間拆分過,實際獲利超過10倍。

資料來源:[天下雜誌](http://www.cw.com.tw/article/article.action?id=5065387)

使用 pbpaste 指令

利用 pbpaste 輸出剪貼簿內容,再經過 pipeline 交給 Pandoc 轉換

pbpaste | pandoc -f markdown -t html

執行結果(轉換成 HTML Code):
使用 textutil 指令

再把 pandoc 的輸出 pipeline 給 textutil 處理!

pbpaste | pandoc -f markdown -t html | textutil -stdin -format html -convert rtf -stdout -inputencoding UTF-8 -encoding UTF-8

這輸出根本火星文來著~但這就是我們需要的 RTF 格式!
使用 pbcopy 指令

最後一個步驟,把 RTF 輸出再複製到剪貼簿!

pbpaste | pandoc -f markdown -t html | textutil -stdin -format html -convert rtf -stdout -inputencoding UTF-8 -encoding UTF-8 | pbcopy

這次執行完指令不會有任何輸出,因為結果已經被覆寫回剪貼簿內容了!

接下來去任何一個支援貼上文字的地方試試,例如 Pages!
或是 Web-based WYSWYG Editor(範例是 TinyMCE):

利用 alias 簡化指令

將這段 alias 指令加到「~/.profile」:

alias md2rtf='pbpaste | pandoc -f markdown -t html | textutil -stdin -format html -convert rtf -stdout -inputencoding UTF-8 -encoding UTF-8 | pbcopy'

重新打開終端機,未來只要執行「md2rtf」就可以完成整串任務!

: )

2015年3月8日

使用 Groovy + PDFBox 移除 PDF 多餘文字

Groovy Script 利用 Java 豐富的 Library 自製 command-line 工具超簡單,這篇以 Apache PDFBox 為例,示範 Groovy 如何利用約 50 行左右簡短程式碼,做到客製化的 PDF 維護工具,用來將 PDF 檔案中礙眼的文字移除 : )

下載 pdftrim 原始碼:

https://gist.github.com/lyhcode/79cad1a5cef2697ba749

使用方法類似 shell script,使用範例:

  • chmod a+x pdftrim
  • ./pdftrim source.pdf target.pdf

這個不知從哪來的 PDF 檔案作為範例,原始文件中右上方的藍色文字很礙眼,準備踢掉⋯
噹噹噹,經過 pdftrim 踢掉後,乾淨許多 : )

學習 Groovy 請參考 CodeData | Groovy 系列技術文章

也歡迎加入 Groovy Taiwan 粉絲專頁



2015年3月5日

免安裝第三方軟體,用指令 Mac OS X 開啟 USB 外接硬碟 NTFS 讀寫功能(支援 OS X Yosemite)

我的 2010-mid MacBook Pro 升級至 OS X 10.10.2(Yosemite)後,就不打算在上面安裝太多軟體,單純作為一台光碟轉檔、音樂播放及煲耳機的筆電使用。所以外接硬碟的 NTFS 讀寫支援,就不打算再用 Paragon NTFS for MacOSXFUSE + NTFS-3G 之類的做法。

其實早有耳聞 Mac OS X 系統本身就內建 NTFS 讀寫,但一直沒花時間試不知真假,今天爬文看到這篇:

【Mac 祕技】一個指令讓 NTFS 硬碟也能在 Mac 機進行寫入!

測試一下發現果然管用 : )

我將指令做了點修改,讓 USB 外接硬碟能方便使用。

一、打開 Terminal(終端機)

用指令快又省事 : )

二、接上 USB 外接硬碟

這時候 NTFS 磁碟會自動掛載成唯讀模式(只能讀取不能寫入檔案)

三、執行「mount」指令

找到外接硬碟的掛載資料,例如:

/dev/disk1s1 on /Volumes/Transcend1TB (ntfs, local, nodev, nosuid, read-only, noowners)

這段可以得知外接硬碟的磁區「/dev/disk1s1」被掛載在「/Volumes/Transcend1TB」這個資料夾。

四、執行「sudo umount /Volmes/Transcend1TB」

先卸載該磁碟。

五、執行「sudo mkdir /Volumes/EXT-USB」

重建一個掛載目標資料夾。

六、執行「sudo mount -o rw,auto,nobrowse -t ntfs /dev/disk1s1 /Volumes/EXT-USB」

這裏就是重點,重新用 mount 指令掛載,並且加上 rw 打開讀寫支援的選項。

完成之後,就可以在 /Volumes/EXT-USB 新增檔案或資料夾,驗證寫入功能被打開。



lyhcode by lyhcode
歡迎轉載,請務必註明出處!