tag:blogger.com,1999:blog-113955542024-03-13T18:02:34.855+08:00Lambda MindLet's see how far we can go.yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.comBlogger908125tag:blogger.com,1999:blog-11395554.post-49569577116112327022014-04-27T16:27:00.000+08:002014-04-27T16:27:04.111+08:00最近<p>好久沒有寫 blog 了 XD。不過老實說,技術與想法沒什麼長進 XD。</p><p>最近看完兩本 python 的書,TDD 的書看了三分之一,我還是只有看這種書比較快 XD。看的書還是有如以往的雜而不深入,希望可以在今年慢慢的收斂 (每年似乎都講一樣的話 XD?) 慢慢的看才發現,要了解 Mac OSX 和 Linux 兩者之間的差異,說實在話是會花很多時間的。手上關於 Linux 的書比較多,還是會先以 linux 為主吧。(現在的好處是,vagrant 很方便,而買了 parallel desktop 也有 vagrant 的 <a href="https://github.com/Parallels/vagrant-parallels">plugin</a>),希望可以看到什麼就提出來討論,可能現在看的很雜的我還是不能提出很深入的思考性問題吧 XD。</p><p>在工作上因為一直是寫 C 和 Assembly,純黑手工技術倒是升級了不少,不過也沒啥值得一提的事,於是就此打過。</p><p>---<br />繼續看書去。</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-18165675385221726332014-01-01T22:03:00.001+08:002014-01-13T16:36:55.209+08:002013 回顧<p>其實 2013 對我的人生很像是 shfit 掉了一年,不過回想起來也沒這麼糟。今年有 3/4 的時間在當兵,1/4 的時間開始工作了。當兵與工作對我來說算的上是對自己的生活有 一個簡單的交待,但是怎麼繼續過下去,這或許就是今年要面對的問題吧。</p><br />
<p>當兵其實是一個很開心但是又很幹譙的過程,當兵這件事從來都不被值得紀念,唯一想要紀念的是所認識的朋友,這或許才是我們想要珍惜的。</p><br />
<p>在當兵時,利用其中的空閒時間,看完 Learn You a Haskell for Great Good 與大概掃過這本書的後半段。當兵到一度想要學習 Data Mining,然後就買了吃董推薦的 <a href="http://www.amazon.com/Data-Mining-Practical-Techniques-Management/dp/0123748569/ref=sr_1_1?ie=UTF8&qid=1388582653&sr=8-1&keywords=data+mining">Data Mining</a> 但是看不到一半就沒有繼續看下去了。在這中間,Josh Ko 特別從英國買了一本 <a href="https://www.cs.cmu.edu/~rwh/plbook/book.pdf">Practical Foundations for Programming Languages</a> 的實體書送我,不過我也沒有持續很久,但是還是希望未來有一天可以看完,享受一下腦袋 melting down 的快感。在一開始的當兵就希望自己想看什麼就看什麼,但在這個時期中發現,這個問題並不只有今年才存在,所以在結束兵役之後,希望自己可以好好的認真把一些書看完吧。</p><br />
<p>2013 年看了不少課外書,老實說都是利用當兵的時候看的。利用當兵的時候把伊坂幸太郎的作品看完了。也看了 Sean Kuo 推薦的 "鴨川荷爾摩" (萬城目學著),其他的書其實印象沒有這麼深刻了。但是還記得在當兵的時候,當兵的同袍一起看小說的時光。</p><br />
<p>當兵的時候其實並沒有寫什麼程式,硬是要說,大概只有幫忙 gwchen 老師把以前的程式錯誤做一番與修正,這大概只花了幾個禮拜的假日。其他時間都是在對 haskell 做一些嘗試,在今年接近年尾的時候,開始慢慢的可以利用 haskell 來處理一些想要做的事,其實用 haskell 寫程式真的蠻不錯的,雖然我到現在還是不太會 monad ,但是也不急在一時,真的想要做什麼事就慢慢學吧,沒辦法,我並不是一個聰明的人。</p><br />
<p>在哈密瓜的幫忙下,結束兵役後一個月就順利的有一份工作可以做了,因為這份工作的關係,又再度的回到了新竹這個城市,從寬的來算,在這個城市即將邁向第三年生活了,對於工作其實並沒有辦法交待太多,倒也不是因為保密協定,而是在這樣子的工作環境,我著實沒有想太多,就這樣子繼續過工作與生活吧。</p><br />
<p>在 2013 年底與女友一同去台東長濱做了一個簡單的旅行,認識了念陽大哥與慈佈姐,寫了一篇記事留在自己的硬碟裡,也因為這個旅行,開始重新認識自己,對於今年及以後的目標有了相當的修正,關於這個旅行,簡單的來說,心情上的改變,可以讓我們重新認識這個世界,謝謝女友的幫忙及安排這個旅行。希望自己在未來這一年,可以繼續幫助人們。</p><br />
<p>關於今年及未來的展望嗎 ? 希望在接下來的幾年內可以使用自己的電腦工作及開發,老實說我並不討厭 Windows,但是金窩銀窩都不如自己的狗窩好。有想過在家工作的事,不過關於在家工作的條件我一項都沒達成,也是希望這幾年可以慢慢的達成這個目標就是了。</p><br />
<p>對以往的我來說 architecture, FP, PL 這些領域該如何選擇是一個困難的問題,外加自己對 parallel and concurrent 又有興趣,頭又更大了。經過這些日子某天醒來才發現,這不過是庸人自擾,如果真的想要解決一個問題,從這些領域來看這個問題,都會有不同的面向,就開心的往自己想要解決的問題前進吧。希望今年可以學習關於 parallel 的一些事,一直到現在,自己還是會有一個任性的想法: 我真的覺得 functional programming 可以把 parallel and concurrent programming 相關的問題解的很漂亮,雖然這好像是用方法來看問題,不過我還是想要這樣子任性的覺得。</p><br />
<p>至於生活,其實我很開心,可以這樣子一直繼續的學習與思考,謝謝家人女友及朋友的支持,希望今年還是可以繼續學習與寫出一些開心的文字了。</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-24210614318204284012013-10-06T12:21:00.003+08:002013-10-06T12:23:30.636+08:00文字雜想<p>其實不甚清楚以下描述能不能稱為寫作,這種廢話文很多,你大可以跳過 (笑)。其實只有一點想表達:</p><p>創作重要的從來都不是工具,而是我們想要表現的。</p><p>一開始我想要摘錄人月神話所說的一段話 (懶的翻書了)</p><blockquote><p>程式語言並不會大幅度影響開發時間,而團隊中如果有某個語言的高手,那麼使用該語言或許益處還會大些。</p></blockquote><p>在這邊並不想討論從該書第一版出版 35 年後是否有需要修正的地方,在這邊有一個簡單的猜想(不過也無需驗證)。使用文字編輯器或許會影響寫作時間,但是該著重的是你想要表達的。</p><p>來說說自己的故事,當兵的時候因為覺得自己想要好好寫些東西,但是自己用 VIM 寫中文不甚方便,於是乎開始嘗試 Sublime Text 及 iA Writer,然後很快的 (其實也花了好幾天) 決定要使用這兩個分別來做什麼事。最後,我面對到的問題是</p><p>我想要寫什麼 XD?</p><p>我不知道,於是乎寫文章還是慢慢寫(硬碟裡面躺了很多寫到一半的文字),然後在這中間也嘗試了發佈的平台 (從 logdown 到 nikola + snpa)。一直到最近才覺得可以開工了。但心中不甚踏實,總覺得寫出自己可以接受的文字比把寫作環境搞定來的困難的多。</p><p>或許下次自己可以先把寫作的主題想好,開始動工之後自己覺得環境有那裡需要加強再來做也不遲,邊改善寫作環境邊寫作是一個不錯的主意。</p><p>至於我現在要寫些什麼 ? 心中大致上有個底了,而 snpa 的初步開發也接近尾聲,或許可以開始嘗試一些自己想寫的東西了 (希望這句話過三個月後不是嘴炮 XD)。</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-30967675731445749642013-09-15T14:36:00.003+08:002013-09-15T14:36:40.815+08:00工作與未來想做的事<p>從退伍以後不到一個月到進入工作第一禮拜,其實還蠻有蠻多不適應的地方。想來也蠻有趣的,當兵前在新竹念了一年書,入伍後下部隊第一站還是新竹,一直到工作後還是在新竹,到底接下來會去那呢 ? 以後就會知道這個問題的答案是什麼了 (笑)。不過還是要找個時間和當兵的朋友吃飯 (Harold Shaw, Sean Kuo, Jan Chen,對不起,最近真的沒有時間,我一定會找一個時間跟你們吃飯的。)</p><p>老實說,第一個禮拜工作還蠻不習慣的,不過希望接下來可以好一點,我似乎有點過於緊張放不開了 (指的是工作態度,不是對人態度 XD),期待下禮拜可以修正嘍。不過還是要說,工作最不習慣的是不能用自己的電腦,所有的工作習慣都要重新建立 … Orz 。當初從學校畢業之前只有希望不要去那種一定要穿西裝的公司上班,現在看來這個願望是有達成,不過下次應該要加一個可以用自己的電腦做事,不過我看這個願望大概還要很久很久以後才會實現了 XD。</p><p>老實說真的要有什麼結論,現在說出來都是不準的,畢竟只有工作一個禮拜就是了,不過真的從這個禮拜學到不少事,很謝謝公司同仁的幫忙。</p><p>很謝謝我的家人與我的女友,在這一路上一直的包容與忍耐,我不敢說我現在是一個成熟的人,但希望自己離小屁孩這個定義稍微遠一點就很開心了。</p><p>這個禮拜有和哈密瓜吃飯,他鼓勵我,工程師的個性就是動手去做(當然除了這件事以外還有一堆啦),我捫心問我自己,我到底最想做什麼 ? 其實就只是寫寫程式解解問題而己,為了不讓自己淪落到嘴炮人的境界,還是會想要讓自己努力動手做一些事。小馬馬曾對我說過,擴展人類的知識是很難的,我現在能體會,所以至少希望自己可以把人類已知的知識好好善用就夠了。</p><p>未來最想做什麼,我還有一段很長的時間要去探索吧。</p><p>最近還是很想寫 parallel and concurrent program,所以我決定繼續學習 Haskell ,然後把 Simon Marlow 的大作看一看,這件事做完最快大概也要半年過去了 (因為是在不影響工作的事情為前提之下),無聊在 104 上打 haskell ,發現台灣真的有公司要聘用寫 haskell 的人,是做 WhatsTheNumbers app 的公司,之前在某個計畫上看到創辦人說他從 MIT 畢業之後,他做的主題不僅僅在台灣找不到工作,美國也找不到工作。我看到就笑了出來,他做的博士論文真的是一個很有趣的問題呢,有空的人可以去看看喔(不附連結的原因是因為我懶的找了 XD。)</p><p>---<br />可能最大的希望就是以後自己還有力氣說這麼多廢話 XD?</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-18282919800857646672013-09-07T12:16:00.000+08:002013-09-08T09:30:17.258+08:00[Haskell] Read the contents from the clipboard in Haskell<p>有時候只是想要做一點簡單的事情的時候,其實會直接貼上 string 做處理。但是因為不知道怎麼在 ghci 上貼入 multiple line string,所以想到可以直接讀取複製的內容直接做處理。</p><br />
<p>在 Mac OSX 裡有一個相當好用的指令是 <code>pbpaste</code>,可以直接蛉出在剪貼簿中的指令。開一個 subprocess 把指令的 output pipe 進來就可以了。嘗試如下。</p><script src="https://gist.github.com/yen3/6472765.js"></script><br />
<p>嘗試執行結果如下</p><pre><code>Prelude> :l read_pbpaste.hs
[1 of 1] Compiling Main ( read_pbpaste.hs, interpreted )
Ok, modules loaded: Main.
*Main> import Data.Char
*Main Data.Char> processPaste Data.Char.to
Data.Char.toLower Data.Char.toTitle Data.Char.toUpper
*Main Data.Char> processPaste $ map Data.Char.toUpper
Loading package array-0.4.0.1 ... linking ... done.
Loading package deepseq-1.3.0.1 ... linking ... done.
Loading package filepath-1.3.0.1 ... linking ... done.
Loading package old-locale-1.0.0.5 ... linking ... done.
Loading package time-1.4.0.1 ... linking ... done.
Loading package bytestring-0.10.0.2 ... linking ... done.
Loading package unix-2.6.0.1 ... linking ... done.
Loading package directory-1.2.0.1 ... linking ... done.
Loading package process-1.1.0.2 ... linking ... done.
ING PACKAGE ARRAY-0.4.0.1 ... LINKING ... DONE.
LOADING PACKAGE DEEPSEQ-1.3.0.1 ... LINKING ... DONE.
LOADING PACKAGE FILEPATH-1.3.0.1 ... LINKING ... DONE.
LOADING PACKAGE OLD-LOCALE-1.0.0.5 ... LINKING ... DONE.
LOADING PACKAGE TIME-1.4.0.1 ... LINKING ... DONE.
LOADING PACKAGE BYTESTRING-0.10.0.2 ... LINKING ... DONE.
LOADING PACKAGE UNIX-2.6.0.1 ... LINKING ... DONE.
LOADING PACKAGE DIRECTORY-1.2.0.1 ... LINKING ... DONE.
LOADING PACKAGE PROCESS-1.1.0.2 ... LINKING ... DONE.
HTTPS://EN.WIKIPEDIA.ORG/WIKI/CONTINUATION-PASSING_STYLE
*Main Data.Char>
</code></pre><hr size="1" /><p>2013/09/08 09:17 AM 早上試一下,還可以這樣子幹也蠻方便的</p><pre><code>Prelude System.Process> putStrLn =<< readProcess "pbpaste" [] []
http://hackage.haskell.org/packages/archive/process/1.0.1.1/doc/html/System-Process.html
Prelude System.Process> import Data.Char
Prelude System.Process Data.Char> putStrLn . (map toUpper) =<< readProcess "pbpaste" [] []
HTTP://HACKAGE.HASKELL.ORG/PACKAGES/ARCHIVE/PROCESS/1.0.1.1/DOC/HTML/SYSTEM-PROCESS.HTML
</code></pre><p>所以想要寫完全沒有彈性的碼可以這樣子寫。</p><script src="https://gist.github.com/yen3/6481090.js"></script><br />
yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-2575988174651861112013-09-06T23:09:00.000+08:002013-09-07T13:42:28.351+08:00選擇筆記用紙心得<p>這其實是一個蠻簡單的問題,但是這個問題其實困擾了我還蠻長一段時間的,因為我一直有一個問題。</p><p><strong>下筆的那一刻,這張紙是否要被保留下來 ?</strong></p><p>老實說,很多時候我是不知道答案的。不過後來想出一個可以接受的方法解決了這個問題。那麼方法是什麼呢 ?</p><p><strong>買 A4 30 孔資料夾(or 魚骨頭) + A4 30 孔打孔機。重要的重新整理到電腦上</strong></p><p>這個方法應該很多人提過,下面都是我為什麼會選擇這個方法的故事,如果沒興趣的可以跳頁了 XD。</p><p>從大學開始,試著自己開始整理筆記遇到很大的困難。因為我上的課很多課堂都是使用投影片,大概到大二的時候,我買了一台雷射印表機把投影片印出來然後在上課的時候試著做註記,還有自己閱讀課本及寫到 blog 上,大部分的筆記都很零零散散的,不過就這樣子過完了大學四年 XD。到了碩士班,我們還多了一個東西叫做論文,看論文也是一絕,因為一剛開始,真的還蠻難只使用電腦就看論文(中間有買 Kindle DX 試過,但是反應速度實在是有點囧,現在還是認命的買 iPad 了),所以唯一選擇也是印出來,久而久之,如何整理印出來及自己寫的東西變成一個很麻煩的問題。</p><p>那麼現在來談談做筆記的用紙及收集,最常見的方式是 B5 26 孔夾,大小適中,外觀多樣,紙也容易補充,是很好的選擇,不過會遇到我一開始說的問題,我在我下筆的時候,除非明確知道是要做筆記,不然拿 B5 26 孔紙當計算紙也是有點浪費 (26 孔紙和 Dobule A 一包比起來還是貴了點)。經過了很多嘗試,最後還是決定使用 A4 紙做筆記。</p><p>但是使用 A4 紙做筆記會產生最大的問就會跟前面提到的一樣,不容易整理,這中間試了很多方式。一開始印投影片的時候,就買了一個20入的資料夾,每印出一份投影片,就塞進去,要看再拿出來. 也試著夾起來,但是這其實只是進化版的訂書機整理法而己。在碩士班寫的 A4 紙筆記最後全部掃入電腦,然後全部收好,要看的時候就一張一張的看,這個狀況持續了好幾年。</p><p>有一天,我看見 Jacky Liu 帶了一個 2 孔 A4 資料夾裡面塞著他自己打的 A4 紙,我看到的時候覺得可以把筆記紙和自己印出來的資料同時整理,是一個不錯的做法。那時自己先買了一個簡單的打孔器,再買了一個 A4 4 孔資料夾,這個方法雖然滿意,不過也有一些缺點,因為自己買的是單孔打孔器,所以紙打起來並不美觀,另一方面,可以買到 A4 孔夾其實都偏大。在那時候,我自己買了一個 A4 4 孔夾,自己把夾子割小一點,雖然邊緣不怎麼美觀,但是是一個可行性的方法。</p><p><a href="http://www.flickr.com/photos/24606632@N05/9642109381/" title="Flickr 上 yen3rc 的 IMG_2387"><img src="https://farm8.staticflickr.com/7311/9642109381_a71084c820.jpg" width="500" height="375" alt="IMG_2387" /></a></p><p>後來在逛文具行的時候,意外看到大小趨近 A4 紙大小的 A4 4/ 30 孔夾(如下圖),看到這一款相當的開心,當下買了很多個回去存 XD,整理起來效果也很不錯,到此剩下的問題就剩下打孔了。</p><p><a href="http://www.flickr.com/photos/24606632@N05/9645348472/" title="Flickr 上 yen3rc 的 IMG_2385"><img src="https://farm6.staticflickr.com/5534/9645348472_6f782ee4b3.jpg" width="500" height="375" alt="IMG_2385" /></a></p><p><a href="http://www.flickr.com/photos/24606632@N05/9642112777/" title="Flickr 上 yen3rc 的 IMG_2384"><img src="https://farm3.staticflickr.com/2860/9642112777_de0ee99d33.jpg" width="500" height="375" alt="IMG_2384" /></a></p><p>打孔如何打的漂亮,問題在打孔機。一般的書店可以買到的打孔機一般是 2/ 4 孔打孔機,而且紙無法對齊。最後決定在網路上尋找合適的打孔機,在女友的幫助下,發現 Carl GP-130 打孔機的價錢可以接受 (如下圖), 紙可以對齊,打出來也很美觀,於是就決定這個解決方案。</p><p><a href="http://www.flickr.com/photos/24606632@N05/9642111467/" title="Flickr 上 yen3rc 的 IMG_2383"><img src="https://farm4.staticflickr.com/3773/9642111467_679d583500.jpg" width="500" height="375" alt="IMG_2383" /></a></p><p>Carl GP-130 的優點就是打起來整理美觀,容易攜帶,但是缺點還不少。第一,價錢不算便宜,我買的時候是 NTD 600,不知道現在有沒有便宜一點。第二,打一張紙的步驟不算少,要先對齊然後一張紙要打孔 5 次,這速度其實不算快。第三,一次只能打 2 張 80 磅的紙(如 Dobule A) 或 3 張 70 磅的紙,如果有很多紙要打其實蠻耗時的。如果真的想要用這個方法的話,預算足夠可以買 Carl SP-30N (不過因為預算的關係,我和我女友合買一台 XD),雖然紙一樣只能打兩張,但是打孔只要刷一次就搞定,還在可以接受的範圍。</p><p>假設用上述兩台打孔機,那麼一次只能打兩張怎麼辦 ? 有兩個不是方法的方法,第一個,買更專業的打孔機 (笑),第二,利用閒暇時間打孔,我自己是利用看日劇/ 動漫/ 電影的時候打孔,不然就是晚上想睡的時候邊聽音樂打孔,如果有其他方法請跟我說,我也很想知道,謝謝你。</p><p>整理起來效果如何 ? 論文翻閱比起以前方便的多也容易整理,當然,要做註記的時候可能還是要從活頁夾拿出來會比較方便,一般為了筆記方便,通常會再買一個 A4 筆記板 (如下圖),而投影片依舊是個死穴,因為一般是 4 頁投影片一張,用活頁夾翻閱沒這麼方便,直向翻閱的話,可以考慮印 2/ 6 張一張(如下圖),如果要橫向翻閱的話,建議可以買魚骨頭。</p><p><a href="http://www.flickr.com/photos/24606632@N05/9642111979/" title="Flickr 上 yen3rc 的 IMG_2382"><img src="https://farm3.staticflickr.com/2827/9642111979_b05f38124f.jpg" width="500" height="375" alt="IMG_2382" /></a></p><p><a href="http://www.flickr.com/photos/24606632@N05/9645347578/" title="Flickr 上 yen3rc 的 IMG_2386"><img src="https://farm6.staticflickr.com/5528/9645347578_de9aae6831.jpg" width="500" height="375" alt="IMG_2386" /></a></p><p>這個方法最大的優點就有如一開始所說的,不太需要考慮這次的寫作為何,缺點當然也有,一開始要花錢花時間適應,但是以我自己來說,我很喜歡這樣子的整理方式。但是最後還是會想要用電腦整理,原因在於搜尋,不過這又是另外一篇文章了,以後再說吧。</p><p>如果有興趣的話不妨試試看這個方式,如果有什麼想討論的,我也會很樂意討論。</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-60026327017219565882013-09-01T10:31:00.002+08:002013-09-08T19:31:59.388+08:00Lambda Mind & Yen3's Note<div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-YVDY2y1WeWM/UiKtW9WiMJI/AAAAAAAAEBs/zwaeFUh4mhk/s1600/IMG_0007.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-YVDY2y1WeWM/UiKtW9WiMJI/AAAAAAAAEBs/zwaeFUh4mhk/s320/IMG_0007.JPG" /></a></div><br />
<p>從今天開始,No title, no thinking, no meaning 改名為 Lambda Mind。其實一直想改名很久了,但是一直找不到一個符合自己心情的名字,這次在女友的幫忙下才想到這個好名字。當然我也不否認有抄襲 Trek through Pure Reason 的味道,只是我英文和意境沒這麼好,所以只能想簡單一點的 XDXD。</p><p>寫了這麼多年,知道寫出滿意的內容其實並不容易。雖然自己喜歡寫作,但是總覺得自己腦袋沒啥東西可以寫。看著自己當兵時立下退伍後的志願就有一項,希望自己退伍後能持續寫作這件事。這大概也是為什麼硬碟裡面躺了一堆沒寫完的東西(笑)。</p><p>同一時間,經過一些日子的想法,還是決定開個分站 <a href="http://yen3.github.io">Yen3's Note</a> 來記載一些隨筆,如果有可能(這通常不太可能),會再想辦法整理再放回 Lambda Mind 上,有沒有可能全部移過去 ? 暫時不太可能 XD。從 Google Reader 關閉以來,每次看到一個新的服務,我的第一個想法是,這個服務到底可以撐多久,blogger 這個服務也是有可能被 Google 關閉的。logdown 是個好主意,也做的很不錯,但是我還是會想,我們可以用多久 ? 所以其實很謝謝 logdown 可以把所有的文章以 markdown 的形式匯出,至少是留了一個不錯的後路。</p><p>---<br />
最近大概就這樣 XD?</p><br />
<hr size="1" />2013/09/08 19:26 經過一番想法之後,還是決定使用 <a href="http://getnikola.com/">nikola</a> 來做筆記之用,會改的原因大部分都不是技術原因,雖然會比較麻煩一點,不過就先這樣子將就用吧 XD。 yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-69198259959205576272013-08-31T08:04:00.004+08:002013-09-01T10:49:48.572+08:00epub 簡轉繁<p>我知道這個題目已經做到爛掉了,不過在之前看到 <a href="https://code.google.com/p/opencc/">OpenCC Projrect</a>,決定利用一個中午休息時間把 epub 簡體轉繁體 + OpenCC 這件事做完。</p><p>暫時成果在 <a href="https://gist.github.com/yen3/6199074">epubs2t_opencc.py</a>。</p><p>下載之後,只要輸入 <code>python epubs2t_opencc.py filename</code> 即可轉檔。</p><p>這個檔案最大的問題是,其實 <a href="https://pypi.python.org/pypi/opencc-python/">opencc-python</a> 安裝會失敗,必需自己 download source code 之後,在該 source code folder 加上 <a href="http://python-distribute.org/distribute_setup.py">distributed_setup.py</a> 之後執行 <code>python setup.py install</code>,才有辦法把 opencc-python 安裝成功(或許我應該送一個 patch 給原作者 XD)。</p><p>這也算是剛當完兵後寫寫小程式的暖身吧,還是要趕快開始念書才是。</p><br />
<hr size="1" /><p>更新 2013/09/01 10:49 AM - 我直接參考 opencc-python package 的內容,直接把該 function 貼上到 <code>epubs2t_opencc.py</code>裡。現在直接下載不需額外安裝其他套件即可使用,使用方法仍然是 <code>python epubs2t_opencc.py filename</code>,但是需安裝 opencc 才可以使用。如果有需要,我再分別寫 Mac OSX 和 Fedora, ubuntu 的使用文件(其實不難寫,只是我好懶 XD)。</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-70826790318963676002013-05-25T19:34:00.001+08:002013-05-25T19:34:40.626+08:00Modern Times 摩登時代 - 在一個規則名為國家的機器背後<br />
<center><a href="http://1.bp.blogspot.com/-LYOD-zT3VPM/UaChbWfEAqI/AAAAAAAAD6Q/_rmQNLb2EbI/s1600/modern+times.jpg" imageanchor="1" ><img border="0" src="http://1.bp.blogspot.com/-LYOD-zT3VPM/UaChbWfEAqI/AAAAAAAAD6Q/_rmQNLb2EbI/s320/modern+times.jpg" /></a></center><br />
<p>(註1:可以先看魔王,魔王是摩登時代沒有太大關係的前傳,兩本書我都很喜歡。)</p><p>(註2:請把這本書看完再來看此篇心得,雖然沒啥破梗。)</p><p>你有沒有勇氣 ?</p><p>這句話很簡單,但沒有很容易回答,因為我們也不是對每一件事都很有勇氣(笑)。我嘗試在網路上搜尋關於這本書的資訊時,我看到了卓別林的電影(稍微看了一下 wiki,好像沒有什麼直接關係),也看到了另外一個人的心得。他沒有很推薦這本書,不過出乎意外的,我還蠻喜歡這本書的。</p><p>我的朋友看完此書跟我提及,這本書談的是關於人,實在是有很多可以說的。我同意,但是也因為如此,我也不知道從何說起。</p><p>人類形成了村落,再由村落往上一層一層的組成了國家,但是走到了國家這一步,我們反而不了解國家的組成及運作,甚至難以去改變其中的運作,這相較於民主的概念,其實很諷刺。而國家是由許多不同的組織及人民所構成。真正的在上位者,要做出一個決定也得考量許多利害,沒有完全的一個人決定能力。</p><p>那麼國家及人民到底是什麼 ? 我們好像兩邊都過著不相干但是必然有關連的生活。我不知道,或許,這本書講述了某個程度的答案(笑)。</p><p>書中的對於問題的答案並不唯一,我們可以慢慢的想。伊坂幸太郎提出國家與社會的問題,並嘗試了給予了一個我們可以做的小答案,試著從自己的身邊改變,我喜歡這樣子的想法與故事結尾。這樣子的答案讓我想到了長尾效應與蝴蝶效應(長尾效應比較沒關係,不過我就是想到了。)。至少,比很多只提出問題批判一番卻毫無答案的書來的好。</p><p>這本書是伊坂幸太郎的後期作品,與前期的溫暖說故事並不一樣,這本書嘗試用了一種與他以往不同的方式來說故事,雖然並不完美,但是因為這樣子的不完美,我們可以慢慢的看這本書。有人認為書中某些角色過於生硬,但是我倒是覺得這樣子的個性是獵奇與搞笑,我並不會覺得這樣子不好,因為作者已經說明了他想說的了。</p><p>雖然知道作者應該是看不到也看不太懂這篇文章,不過我衷心的希望伊坂幸太郎可以這樣子改變自己的風格繼續寫作。</p><p>---<br />
我好像寫的很玄啊 XD。</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-43875475148593427892013-03-31T11:58:00.002+08:002013-03-31T15:54:28.221+08:00學習 monad<p>這兩天才花時間把 Learn You a Haskell for Great Good 關於 monad 的章節大概掃過一次,只能說自己不太會使用 monad,感覺上很像 Josh 很久很久以前在 blog 上說的話:</p><blockquote><p>我現在對 Haskell 的感覺很奇特,有點熟又不太熟,會的部分都是靠著唸理論(而不是練習)而學起來的。</p></blockquote><p>稍微列一下關於 monad 的文章,只列出我有印象的 XD。</p><ul><li>Josh Ko 的 blog (出門左轉<a href="http://joshkos.blogspot.tw/search?q=monad">搜尋</a>)</li>
<li>godfat 的 blog (出去右轉<a href="http://blogger.godfat.org/search?q=monad">搜尋</a>)</li>
<li>小眾計算學<br />
<ul><li><a href="http://www.iis.sinica.edu.tw/~scm/ncs/2009/11/a-monad-primer/">單子 (monad) 入門(一)</a></li>
<li><a href="http://www.iis.sinica.edu.tw/~scm/ncs/2009/11/the-warm-fuzzy-thing/">單子暖毛毛</a></li>
<li><a href="http://www.iis.sinica.edu.tw/~scm/ncs/2009/11/a-monad-primer-2/">單子 (monad) 入門(二)讀取單子</a></li>
</ul></li>
<li>大貓共和國<br />
<ul><li><a href="http://blog.miaout17.net/2009/07/23/haskell-monad-brainfuck-interpreter-1/">Haskell Monad : 以Brainfuck Interpreter為例 (上) - 大貓共和國</a></li>
<li><a href="http://blog.miaout17.net/2009/07/24/haskell-monad-brainfuck-interpreter-2/">Haskell Monad : 以Brainfuck Interpreter為例 (下) - 大貓共和國</a></li>
</ul></li>
<li>Jaiyalas 推薦的兩篇文章<br />
<ul><li>http://haskell.cs.yale.edu/wp-content/uploads/2013/03/HSoM.pdf</li>
<li>http://www.haskell.org/haskellwiki/Typeclassopedia</li>
</ul></li>
<li><a href="http://blog.sina.com.cn/s/blog_5d90e82f0101jx3l.html">什么是函数式语言 — 王垠</a></li>
</ul><p>因為我數學不太好(我到現在還是沒看 category theory),我所了解的 monad 是在解決如何儲存狀態的問題。如果要寫一個真正的程式,多個 monad 的結合勢必是要<br />
處理的,而我所看到的文章皆提及了 monad transformer,我想可能要等到繼續看下去才會有所辦法就是了。</p><p>很多小程式其實只需要用到簡單的 IO 概念,把 do block 裡面視為一個 imperative program 來寫,再加上 pure function 的概念就可以解決了。再進階一點可以是 IO monad + state monad 來解決,再下去我就得要繼續學習跟看書了。</p><p>其次在王垠在他的 <a href="http://blog.sina.com.cn/s/blog_5d90e82f0101jx3l.html">blog</a> 中提到 monad 這個概念的種種問題,想到與 Josh 跟我提及的話,programer 必需了解程式中每一個狀態的轉換,想法大異其趣。王垠最近寫了很多關於 Lisp 及 Scheme 的文章,忽略掉文章中的情感,他的文章是值得一讀的。</p><p>這幾年反反覆覆的學習又放棄 Haskell,不過現在的我還是想要繼續堅持的學到一個段落就是了。</p><p>---<br />
繼續看書去。</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-79819062091747800012013-03-30T21:26:00.002+08:002013-04-27T17:55:09.604+08:00Guessing Number using Haskell<p>今天利用一點時間寫出來的簡單版(困難版我也不會 XD),明天有空再補心得 XD。如果有什麼可以加強或改寫的的地方還請指教,我會很開心的,謝謝 :)。<br />
</p><pre><code>import System.Random
checkNum :: [Integer] -> [Integer] -> (Integer, Integer)
checkNum input ans = (posNum input ans, correctNum input ans)
where posNum input ans = sum $ zipWith (boolValue (x==y)) input ans
correctNum input ans = foldr (\x y -> y + boolValue (any (== x) ans)) 0 input
boolValue a = if a == True then 1 else 0
game :: [Integer] -> IO ()
game ans = do
input <- fmap (fmap (\x -> read [x])) getLine
let (rpn, rn) = checkNum input ans
if rpn == 4 then
do putStrLn "Win"
return ()
else
do putStrLn $ show rpn ++ "A" ++ show rn ++ "B"
game ans
main = do
gen <- getStdGen
let ans = take 4 (randomRs (1,9) gen)
game ans</code></pre><p>---<br />
繼續前進。<br />
</p><hr line="1" /><p>T55555的<a href="http://www.blogger.com/comment.g?blogID=11395554&postID=7981906209174780001">回應</a>給了許多寶貴的意見,真的很謝謝他每次都給予很好的建議(至於我這麼晚回的原因是因為仍在當兵中...Orz),我也做出了回應,現在把整個修完的 code 再貼一次如下。</p><br />
<pre><code>import System.Random
-- Wrong game logic
-- checkNum :: [Int] -> [Int] -> (Int, Int)
-- checkNum input ans = (posNum input ans, correctNum input ans)
-- where posNum input ans = foldr (\x y -> y + fromEnum x) 0 $ zipWith (==) input ans
-- correctNum input ans = foldr (\x y -> y + (fromEnum (any (==x) ans))) 0 input
checkNum' :: [Int] -> [Int] -> (Int, Int)
checkNum' input ans = foldr (check ans) (0, 0) $ zip input ans
where check ans (x,y) (p,c) =
if x == y then (p+1,c)
else
if (any (==x) ans) then (p,c+1)
else (p,c)
game :: [Int] -> IO ()
game ans = do
input <- fmap (fmap (\x -> read [x])) getLine
let (rpn, rn) = checkNum' input ans
if rpn == 4 then
do putStrLn "Win"
return ()
else
do putStrLn $ show rpn ++ "A" ++ show rn ++ "B"
game ans
main = do
gen <- getStdGen
let ans = take 4 (randomRs (1,9) gen)
putStrLn $ show ans
game ans</code></pre>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com2tag:blogger.com,1999:blog-11395554.post-66383541843561184292013-03-03T11:33:00.001+08:002013-03-03T11:41:39.058+08:00最近<p>最近的 blog article 都是用 markdown 寫好之後工人貼上到 blogger 上,很希望 blogger 可以支援 markdown editor,但也知道短時間內不太可能(笑)。</p><p>一直很想幫 blog 改個名字,不過暫時不知道要改什麼,所以還是將就用吧。</p><p>還是不習慣用 Vim 配合嘸蝦米來寫中文的東西,剛好想到 godfat 和 ihower 推薦的 Sublime Text 2 。所以使用 ST2 配合 markdown 來寫中文 blog (預覽就交給自己寫的 yiviewer)。</p><p>最近做的事不少,做個簡單記錄如下</p><ul><li><p>書</p><ul><li><a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010431756">Golden Slumbers-宅配男與披頭四搖籃曲</a></li>
<li><a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010559438">半路叛逃:App遊戲製作人的1000日告白</a></li>
<li><a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010391685">轉山</a></li>
</ul></li>
<li><p>電影</p><ul><li>黑暗騎士: 黎明升起 (The Dark Night Rises)</li>
<li>007 空降危機 (Skyfall)</li>
<li>BBS 鄉民的正義</li>
<li>蜘蛛人: 驚奇再起 (The Amazing Spider-man)</li>
<li>黑影家族 (Dark Shadows) --- 不推薦,我原本很期待 Tim Burton 和 Johnny Depp 的說。</li>
</ul></li>
<li><p>演唱會</p><ul><li><a href="http://www.books.com.tw/exep/prod/dvd/dvdfile.php?item=D020045496">Perfume 3rd Tour 「JPN」</a> --- 買了快一年才看,中間的純電音表演值得推薦,至於其他部分的推薦可能要好好寫一篇文章(笑)。</li>
</ul></li>
<li><p>音樂</p><ul><li>LIVING THINGS --- Linkin Park</li>
<li>Spring of Life(Single) --- Perfume</li>
<li>Spending All My Time (Single) --- Perfume</li>
<li>In Blue --- The Corrs</li>
<li>Marry You(Single) --- Bruno Mars</li>
</ul></li>
</ul><p>正在看的</p><ul><li><a href="http://www.amazon.com/Practical-Foundations-Programming-Languages-Professor/dp/1107029570">Practical Foundations for Programming Languages</a> --- <a href="http://www.cs.cmu.edu/~rwh/plbook/book.pdf">Full text draft</a>,其實跟實體書內容相比並無太大差異,除了 Draft watermark 和排版不同 。</li>
<li><a href="http://book.realworldhaskell.org/read/">Real World Haskell</a> --- 正在看 Chapter 7: Input and Output,第一次想要好好看這本書的某些章節。</li>
<li><a href="http://www.tenlong.com.tw/items/0123748569?item_id=315177">Data Mining: Practical Machine Learning Tools and Techniques, 3/e</a> --- 單純想學習平行在這方面是否可行,也學習如何分析並找出一堆資料裡面的規則。對我而言是一個全新的領域,所以學起來也蠻有趣的,每翻一頁都好像在複習機率與統計啊 XD。</li>
<li><a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010073002">科學革命的結構</a> --- 這本書在美國出了<a href="http://www.amazon.com/The-Structure-Scientific-Revolutions-Anniversary/dp/0226458121/ref=sr_1_1?ie=UTF8&qid=1362277421&sr=8-1">50週年紀念版</a>,基本上現在看到一半就中斷跑去看其他本書了。</li>
<li><a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010291932">物理之美</a> --- 這本書從高中看到現在,她還比我早看完 (笑)。</li>
<li><a href="http://www.tenlong.com.tw/items/9862762551?item_id=396850">操作介面設計模式 2/e</a> --- 單純想看,因為第一版借給某人後就再也沒還我了,只好再買一本 XD。</li>
</ul><p>未來想買的</p><ul><li><a href="http://ofps.oreilly.com/titles/9781449335946/">Parallel and Concurrent Programming in Haskell</a> --- Simon Marlow 在 concurrent haskell 的著作與推廣與一向不遺餘力,期待這本書趕快出了。</li>
</ul><p>看到覺得是很好的機會但是自己沒辦法的(笑)</p><ul><li><a href="http://www.cs.nott.ac.uk/~gmh/phd-advert.txt">Functional Programming Phd studentships at Nottingham</a></li>
</ul><p>從當兵以來一直在專注 parallel and concurrent programming 的學習與可能性。本來有寫雜記,但是寫的太長了,我懶的修稿,就不貼上來了 XD。</p><br />
---<br />
很感謝最近遇到的朋友與一直持續幫助的人,我就不另外寫出來了。<br />
yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com2tag:blogger.com,1999:blog-11395554.post-35419595170162028512013-02-02T10:22:00.002+08:002013-02-02T11:01:28.474+08:00Calculate the raw sum<p>上個禮拜看到自己以前寫的 blog <a href="http://yen3rc.blogspot.tw/2011/01/blog-post.html">小試牛刀 - 算出檔案每一列的總和</a>,我覺得其實沒有這麼難寫成 Haskell 的版本,T55555 在留言中有提供一個 Haskell one liner version,我在今天早上自己練習寫了一個,沒有 one liner,只是單純做個記錄。</p><pre><code>import System.IO
rawSum :: [[Integer]] -> [Integer]
rawSum = foldr1 (zipWith (+))
readContents :: [Char] -> [[Integer]]
readContents s = map (map read) $ map words $ lines s
main = do
s <- readFile "num_matrix.txt"
print $ rawSum . readContents $ s
</code></pre>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-48740096657146552452013-01-26T20:38:00.000+08:002013-01-26T21:44:10.533+08:00gitit custom css<p>I don't like the <a href="http://gitit.net/">default looking</a>, so I try find a css from the internet and modify it. The preview is as the following.</p><br />
<p><a href="http://www.flickr.com/photos/24606632@N05/8415771039/" title="Flickr 上 yen3rc 的 The modified gitit template"><img src="http://farm9.staticflickr.com/8495/8415771039_2eaaa761d7.jpg" width="500" height="445" alt="The modified gitit template"></a></p><br />
<p>How to use the css?</p><br />
<ol><li>Download code from <a href="https://gist.github.com/40bfb4e42ea857f0c41a">here</a></li>
<li><p>Replace the file with the existed one<pre><code>cp custom.css $GITIT_FOLDER/static/css/custom.css</code></pre></li>
</ol><br />
<p>murmur<br />
The orginal css is founded from the internet, but I can't find it again. If you know the original one, you can mail to me. I will add the reference in the end of the article. Thank you.</p><br />
<p>What are the differentences from the default css?</p><ol><li>Looks beautiful. :)</li>
<li>Move the sidebar to the right side because I seldom use the functions of the sidebar.</li>
<li>Change the color of the link to light blue (#5588aa) because I love the color and the blog uses the same one.</li>
</ol><br />
<p>Btw, you can get more information to know gitit from <a href="http://walkingice.blogspot.tw/2011/11/gitit-git-based-wiki.html">walkingice's blog article</a> (including custom css.)</p><br />
<p>---<br />
I hope you use gitit with the custom css happily.</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-3637560744337874632013-01-19T10:49:00.000+08:002013-01-19T22:02:08.596+08:00Yield commands<p>其實技巧很簡單,只是自己寫著暫記一下,要寫這個的原因是,Learn X The Hard Way 似乎要下架了,索性自己寫一個抓一抓比較快 XD。<br />
<pre><code>mapM_ putStrLn $ map (\x -> "wget http://c.learncodethehardway.org/book/ex" ++ (show x) ++ ".html") [0..52]</code></pre></p><p><br />
---<br />
我相信應該是沒有說明的必要 XD。<br />
</p><br />
<hr size="1"><p>2013/01/19 21:03 經由 Josh Ko 建議<del>應該</del>可以執行 commands 的 <a href="http://cvs.haskell.org/Hugs/pages/libraries/base/System-Cmd.html#v%3Asystem">System.Cmd</a>,這行 code 可以改寫如下。</p><br />
<pre><code>mapM_ system $ map (\x -> "wget http://c.learncodethehardway.org/book/ex" ++ (show x) ++ ".html") [0..52]</code></pre><br />
在 ghci 的執行結果如下<br />
<br />
<pre><code>Prelude> import System.Cmd
Prelude System.Cmd> mapM_ system $ map (\x -> "wget http://c.learncodethehardway.org/book/ex" ++ (show x) ++ ".html") [0..52]
Loading package filepath-1.3.0.0 ... linking ... done.
Loading package old-locale-1.0.0.4 ... linking ... done.
Loading package old-time-1.1.0.0 ... linking ... done.
Loading package bytestring-0.9.2.1 ... linking ... done.
Loading package unix-2.5.1.1 ... linking ... done.
Loading package directory-1.1.0.2 ... linking ... done.
Loading package process-1.1.0.1 ... linking ... done.
--2013-01-19 20:34:37-- http://c.learncodethehardway.org/book/ex0.html
Resolving c.learncodethehardway.org... 71.19.145.23
Connecting to c.learncodethehardway.org|71.19.145.23|:80... connected.
HTTP request sent, awaiting response... 200 OK
...
</code></pre><br />
朝著更便利性前進一步(其他程式語言都可以透過相關的函式來達成目的,只是我都很懶都是直接複製貼上 XD。)yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-75261518220502176352012-12-16T13:31:00.002+08:002012-12-16T13:48:27.032+08:00亂想<p>這一陣子看的關於歷史書有「<a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010454530">明朝的那些事兒 1~7</a>」與「<a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010566586">橡皮推翻了滿清</a>」。喜歡這兩本書的原因是,著重在還原歷史。我不太認為一件事的結果只是單一原因所造成,而這兩本書都有著類似的觀點。<br />
</p><br />
<p>「橡皮推翻了滿清」其實剛開始看感覺還蠻亂的,越是閱讀越是進入佳境,書中的主題主要是從各個方面(如: 地理、經濟、軍事、政治 ... 等等)來探討為什麼滿清會滅亡。因為作者是從寫作 blog 起家,有時候會有一種面對讀者的寫法 (如: 各位看倌認為 ...),封面和標題比較生動活潑一點,可能是想要吸引買氣,雖然我很久沒有看這種感覺的書了。但其實內容的考據與撰寫皆相當的嚴謹,分析原因相當的清晰,如果對清末民初的歷史感到興趣的人,是值得一讀的。</p><br />
<p>每個人都有其人性。有些人熱衷名利,有些人想對社會貢獻或改變,但我相信大多數的人想過平凡的生活。從歷史中看到批評者有之,但能實際做出貢獻者更使人尊敬。有人說歷史可以讓我們鑑往知來,但人性依舊如此,所以,我們能從歷史學到的事並不多,甚至是不斷的重覆無法避免的錯誤。</p><br />
<p>最近與人聊天,總覺得有好好寫(譯)的中文書好像不太好找,連工具書、科普書都邁入一樣的情形。所以看到這本書其實蠻開心的,有空也可以看一下藍戈丰的 <a href="http://plamc.pixnet.net/blog/post/30339414">出書心得</a>。我真的還蠻願意買一本有好好認真寫且深入的書,但這種書並不好找(笑)。背後的原因,應該有蠻多人聊過的,但是至於如何改變這個現況,其實我心中沒個底。所以只能期許自己好好的寫一些東西,雖然這並不是我的本行,但是我很喜歡寫作(笑)。</p><br />
<p>在很久很久以前,有看到過一段文字「他只願意看出版超過十年以上還存在於市面上的書。因為如果經過了十年這本書還存在著,代表有其閱讀的價值」這個看法其實蠻有趣的,雖然有時候會有時候是因為好書實在是太難賣所以絕版了(還好現在網路上很容易找到 ... XD)。我在寫這篇文章的時候,嘗試的去尋找 "紫牛-讓產品自己說故事" 這本書,這本書在我的印象中,七八年前還蠻紅的,但是現在並不是這麼容易可以買到這本書 (笑)。我相信這種書應該會非常的多 XD。</p><br />
<p>這又讓我想到「暮光之城」與「飢餓遊戲」,前者我沒看過,後者我把小說看完了,但是後來才知道原來這兩個系列在美國是被歸類為青少年小說,早知道我就不看了 (笑),飢餓遊戲其實營造出了一個不錯的氣氛,有愛情故事,好像也有反烏托邦情節,具強烈故事性,但總給我一種想要好好說一個故事,但是失了焦的感覺,也不能說這本書不好,但是只能說不合我的胃口(笑)。</p><br />
<p>---<br />
本來想要寫看歷史書的心得,不過後來變成亂寫了,先這樣吧(笑)。<br />
</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com2tag:blogger.com,1999:blog-11395554.post-76811636474668585762012-12-02T13:25:00.000+08:002012-12-02T13:30:49.327+08:00最近<p>Factory Girls 推進到 Chapter 5 了,不過估計下禮拜之後就會慢的很 XD。<br />
</p><p><a href="http://www.cs.cmu.edu/~15150/previous-semesters/2012-spring/lect.html">15-150 Functional Programming</a> 兩個禮拜內推進到 lecture 11,<a href="http://www.cs.cmu.edu/afs/cs/academic/class/15210-s12/www/schedule.html">15-210 Parallel & Sequential Data Structures and Algorithms</a> 也推進到 lecture 3,也希望下禮拜能保持進度,很謝謝 Josh Ko 的每週討論與閒聊,讓我一直放寬心胸努力(笑)。</p><br />
<p>讀 <a href="https://gist.github.com/3985324#開發經驗談">EtherCalc 開發經驗談</a> 想到了 <a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010387385">Peopleware 中文版</a>,於是在利用今天中午重看這本書,以往對於這本書的記憶大抵上是讓人適得其所,減少辦公室干擾。而現今重讀時發現其中的脈胳為討論從時間、環境、人才進而到團隊的管理,如果人才沒有問題,那麼一個專案是否能完成的關鍵在於人而非是技術。(雖然我覺得這兩者沒有什麼直接關係,大概是想看書就看了 XD)</p><br />
<p>另外也因為這篇經驗談中提到的 <a href="http://livescript.net/">LiveScript</a>,想到 Chi-En Wu 有跟我說過,有空我再好好看看,這一陣子可能 Standard ML 看的比 Haskell 還多(笑)。</p><br />
<p>---<br />
暫時性的雜記,期望自己下禮拜能持續閱讀與思考了。<br />
</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-28541850776601279152012-11-25T10:04:00.000+08:002012-11-25T10:06:07.774+08:00Factory Girls<div class="separator" style="clear: both; text-align: center;"><a href="http://2.bp.blogspot.com/-434ePPrKBBc/ULF6fkXQMUI/AAAAAAAAD2U/qZPOII8EUQ8/s1600/Jacket.jpeg" imageanchor="1" style="margin-left:1em; margin-right:1em"><img border="0" height="320" width="207" src="http://2.bp.blogspot.com/-434ePPrKBBc/ULF6fkXQMUI/AAAAAAAAD2U/qZPOII8EUQ8/s320/Jacket.jpeg" /></a></div><br />
<br />
<br />
<p>起先是看了 「<a href="http://www.baibanbao.net/reader/2011/03/05/factory-girls/">白板报 - 工厂女孩</a>」的介紹進而開始閱讀。這本書要求的英文程度不高 (連我都看的懂),我現在看到 Chapter 3 結束,正如白板报所言這本書並不是想要反應所謂的血汗與不公平,而是去貼近描寫這些女孩的生活與想法。<br />
</p><p>這本書有中文版,書名是 「工廠女孩 Factory Girl」。經過某些訓練,我對於 Girl 該字不是複數其實有點感冒 XD。稍微翻了一下,其實沒很喜歡中文書的排版和封面,建議有興趣的人還是看英文版比較好。<br />
</p><br />
<p>至於完整的心得,可能要等看完以後了,那可能要很久很久(笑)。</p><br />
<p>題外話: <a href="http://www.baibanbao.net/">白板报</a>是一個值得推薦閱讀的 blog,能看到有趣但平實的觀點,雖然我現在看簡體字很吃力 (我懶的用同文堂 XD),這個 blog 在對岸貌似很有名,或許也不用我多做著墨 :D。</p><br />
<p>---<br />
在 FB 上字越寫越多,索性還是寫在 blog 上 XD。<br />
</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-44988274351337261512012-10-23T22:40:00.000+08:002012-10-23T22:41:40.917+08:00The Collection of Perfume<div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-JdKCrQ6AQm0/UIarywtBsfI/AAAAAAAAD1w/5yxZZu1IOFU/s1600/65297_4691592205770_1723414822_n.jpeg" imageanchor="1" style="margin-left:1em; margin-right:1em"><img border="0" height="180" width="320" src="http://1.bp.blogspot.com/-JdKCrQ6AQm0/UIarywtBsfI/AAAAAAAAD1w/5yxZZu1IOFU/s320/65297_4691592205770_1723414822_n.jpeg" /></a></div><br />
<p>大概只剩 Perfume ~Complete Best~ 和 Game 會想收,接下來應該都是收台壓了。<br />
雖然 Spending All My Time 的風格我沒很喜歡,而 Perfume 現在的風格和以前也不盡相同了。但是應該還是會繼續再聽一陣子。<br />
</p><p><br />
---<br />
做個紀念。<br />
</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-1583642438079476242012-09-29T17:07:00.000+08:002012-09-29T17:07:38.829+08:00分站<p><a href="http://yen3.github.com">Yen3's Note</a></p><p>老實說,我也不知道為什麼我要搞這個分站,單純是想試試 <a href="http://jaspervdj.be/hakyll/">hakyll</a> 好不好用 XD。等以後有空再來思考要怎麼繼續寫 blog 這件事,先趕快把 Josh Ko 的 <a href="http://joshkos.blogspot.tw/2012/09/flolac12.html">FLOLAC'12</a> 文章看完再說。<br />
</p><p><br />
---<br />其實只是單純不想讓使用 ipod touch 的文章在第一則才寫這篇 XD。<br />
</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com2tag:blogger.com,1999:blog-11395554.post-90994887536151144422012-06-26T09:03:00.000+08:002012-06-26T09:03:28.584+08:00Remote control music play for iOS 5 through a broswer<p>這個是最近才想到的問題,我的問題很簡單,如何用電腦操控 ipod touch 的音樂播放 ? 為什麼會有這個問題的原因是,我的 ipod touch 是插在有音響的 dock 上的,如果我想要切換播放清單或換很多首歌,依靠音響所提供的遙控器多少會有些不便。所以才想要改善這個問題。<br />
</p><br />
<p>方法: 裝上 <a href="http://itunes.apple.com/us/app/reverse-remote/id438057551?mt=8">Reverse Remote</a>。很簡單吧 XD</p><br />
<p>這個方法的限制是,控制的設備需要看的到 ipod touch。最簡單的方式就是兩個設備在同一個 wifi network 底下。而另外一個限制是,想要遠端操作,必需把該 Reverse Remote App 開啟才可以運作,這個限制倒是沒有這麼麻煩。如果你有 jailbreak 的話,透過 cyndia 安裝 <a href="http://www.iphonetechie.com/2011/01/backgrounder-1-0-2-1-released-in-cydia-download-and-install-backgrounder-1-0-2-1-deb/">backgrounder</a> 後,讓 Reverse Remote 背景執行就解決問題了。</p><br />
<p>由於 Reverse Remote 的操作與內建音樂播放 App 的操作是互通的,所以我通常是讓 Reverse Remote 背景執行,然後開著內建音樂播放 App,對我而言,這樣子暫且夠用。</p><br />
<p>如果說有什麼不滿意的,第一個是傳過來的操作介面雖然可以接受,但是每首歌缺乏專輯及歌手名稱,第二個是連線的時候輸入 IP 不甚方便,雖然知這件事可以透過某些方式來解決,但我也懶的解決了 XD 因為我最需要操作的環境只有兩個設備會使用到 wifi network,猜不到 IP 的時候我再去看一下設備 XD。</p><br />
<div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-Ex3WJ2U1VqQ/T-kJqkv-AWI/AAAAAAAADtE/gKSzlpuyYI0/s1600/Screenshot%2B2012-06-26%2Bat%2B8.36.06%2BAM.png" imageanchor="1" style="margin-left:1em; margin-right:1em"><img border="0" height="289" width="320" src="http://4.bp.blogspot.com/-Ex3WJ2U1VqQ/T-kJqkv-AWI/AAAAAAAADtE/gKSzlpuyYI0/s320/Screenshot%2B2012-06-26%2Bat%2B8.36.06%2BAM.png" /></a></div><br />
<br />
<br />
<p>題外話是,這是第一次 JB,僅僅只是為了操作上更佳方便 XD,其實這個方法以外,第一個想到是的 Josh Ko 提的 <a href="http://www.reflectionapp.com/">Reflection</a>,但是後來發現,這好像只能看,不能操作啊 (我好蠢 ... Orz)。第二個方法是 cyndia 上的 Veeny ,簡單的來說就是在 iOS 上裝上 VNC Server,我在 Mac OSX 上試過了,chicken 無法連線,而 Finder 內建的 vnc 開起來奇慢無比,所以最後是嘗試這個作法。當然,朋友說我買錯音響了 XD,應該可以買支持 Airplay/ DLNA (這名詞我第一次聽到 XD) 播放的音響。我的心得是,來不及了,將錯就錯吧 XDXD。</p><br />
<p>---<br />寫個心得 XD。</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com2tag:blogger.com,1999:blog-11395554.post-31990027078226535132012-05-25T11:49:00.002+08:002012-08-08T23:08:42.381+08:00中文直書與 Kindle DX<p>其實我在兩年前寫了關於 <a href="http://yen3rc.blogspot.com/2010/05/kindle-dx.html">Kindle DX 如何閱讀中文小說的</a> blog,但是其實後來自己對於這樣子的方法不甚滿意,最主要的原因是。<br />
</p><p>用橫書看金庸感覺很怪 XD</p><p>但是我又是個懶人,於是這問題一直放著,一直到現在 iPad 或者是 Android 平板都有出相應的好讀網站閱讀軟體,我自己用 KDX 也是看英文居多,於是這問題就一直一直放著 ... 直到我開始看 "明朝的那些事兒"。剛開始我是用我自己的 ipod touch 看的 ... Orz,其實非常的耗時 (因為我翻了好多好多頁),後來索性再看看現在 KDX 破解的現況,KDX 現今可以看中文的破解,大抵上來說都是換掉內建的字體,比較好的可以做到英文字體是原本 KDX 內建,中文是黑體,也就是說,可以直接看中文的 mobi 檔,但是,它還是橫書 XD。只是那一瞬間覺得不能再懶下去了,所以乖乖來找解決方案。</p><p>如果自己不想去 hack KDX 但是又想看直書,最快的方法,把文字複製到 Word 上貼上,然後設定成直書之後輸出成 PDF 應該就解決了 XD 可惜我比較喜歡用 LaTeX ,所以就使用了一個簡單的方法: 在 XeLaTeX 上的 xeCJK package 配合 fontspec package 可以直接把字旋轉 90 度並中文輸出就可以了。最主要關於字型的設定如下</p><pre><code>
# use fontspect package
\usepackage{fontspec}
# use xeCJK package
\usepackage{xeCJK}
# set CJK main font and rotate
\setCJKmainfont[Vertical=RotatedGlyphs]{Hei TC}
</code></pre><br />
<p>最主要的設定只有最後一行,其他的都是使用所需要的套件,於是乎,剩下的就是讀出內容,加上 header 和 footer 形成 tex 檔,然後 complie 生成 pdf 檔,丟到 Kindle DX 上,收工。</p><br />
<p>在 Kindle DX 上的效果如下圖,照片中所使用的字體是 "華康明體 Std W5",實際看起來對比照片略粗<br />
<a href="http://3.bp.blogspot.com/-DMAqmyoJ11I/T9CtQr72PJI/AAAAAAAADsQ/r63B9nfwFVo/s1600/screen_shot-31574.gif" imageanchor="1" style="margin-left:1em; margin-right:1em"><img border="0" height="320" width="220" src="http://3.bp.blogspot.com/-DMAqmyoJ11I/T9CtQr72PJI/AAAAAAAADsQ/r63B9nfwFVo/s320/screen_shot-31574.gif" /></a><br />
<br />
<br />
<br />
<p>為此,我自己寫了一個簡單的好讀網站的 pdb file 轉成 tex file 的小程式,也符上一個簡單的 XeLaTeX template,皆放在 github 上,如果有使用上的問題,歡迎留言或來信。</p><br />
<a href="https://github.com/yen3/PDB-TeX-Converter">github: PDB-TeX-Converter</a><br />
<br />
<br />
<p>其中有幾點討論如下。</p><ol><li>為什麼生出來的檔案沒有頁碼 ?<br />
頁碼在 LaTeX 直書排版上一直是一個很大的問題,但是 Kindle DX 本身就有頁碼,所以直接省略。</li>
<li>為什麼不讀 updb 檔 ? <br />
我嘗試搞了幾個晚上之後放棄,我對於編碼實在是不了解,如果可以,我會試試看。</li>
<li>如何使用 XeLaTeX ?<br />
這個要講要講很久,在 Mac OSX 上是安裝 MacTeX,在 Linux 上是安裝 TeXLive,在 Windows 上 ... 嗯,應該是 TeXLive,但是我沒研究 XD。如果你使用的是 Mac OSX 或者是在 Linux 從 package manager 直接安裝 TeXLive,這隻小程式在運作上應該不會有問題。目前已知在安裝好 MacTeX 2011 的 Mac OSX 上運作可直接生出 pdf 檔。</li>
<li>如何知道字體的英文名稱?<br />
首先,先行建立字體列表,在 command line 中輸入<code>fc-cache -f -c -v</code>接下來,在 command line 中輸入<code>fc-list</code><br />
即可看到字體的相對應英文名稱,在上面的範例是 Hei TC,這其實就是 Mac OSX 中的 "黑體 TC"。<br />
</li>
</ol></p><br />
<p>---<br />
這個應該是很小眾的需求 XD。</p><hr size="1" /><p>2012/06/07 --- 根據 Josh Ko 的建議,還是使用直向直書模式,不過生出來的 pdf 需手動旋轉頁面。示範圖更新如上,代碼更新已上傳至 github 。</p><p>2012/08/08 --- 根據 anynomous 的建議,<a href="http://ebook.cdict.info/">天火藏書排版系統</a>是現有的方案,而我自己也已經建立了一個新專案為 <a href="https://github.com/yen3/convert2tex">convert2tex</a> ,主要是可以把 epub/ txt/ pdb (限好讀網站格式)轉換成 tex 檔和支援簡體轉繁體。雖然現在已經是 stable,但還在補強中,修好就會上傳並說明關於這個專案。(可能會很久很久 XDXD)</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com16tag:blogger.com,1999:blog-11395554.post-14234630257827625662012-05-02T11:48:00.001+08:002012-06-07T21:47:01.029+08:00在 Mac OSX 下觀看 process 的記憶體使用量<p>寫這個小程式的目的只是想知道 Chrome 總共吃了多少記憶體而己 ... Orz (我好無聊 XD)</p><p>這件事其實很簡單,但是我不太會用 shell,所以仿造 godfat 以前寫的 <a href="https://github.com/godfat/dev-tool/blob/master/bin/memsum">mem_usb.rb</a> (原 po 提供連結了 XD)<del>(連結找不到了 XD)</del>。寫了一個簡單的 proc_mem.py 程式碼如下<br />
</p><br />
<pre><code>
#!/usr/bin/env python
import subprocess
import sys
def main():
proc_name = sys.argv[1] if len(sys.argv) >=2 else "Google Chrome"
proc_list = subprocess.check_output(["ps", "-Ao", "rss,comm"])
print str(sum([int(proc.split()[0]) for proc in proc_list.split('\n') if proc.count(proc_name)>0])/1024.0) + " M"
if __name__ == "__main__":
main()
</code></pre>使用上很簡單,輸入你想看的 process 名字就可以看到了,如果什麼都不輸入,預設是 "Google Chrome"。<br />
<p>---<br />
<br />
我的 Google Chrome 吃了 3.5 gb 啊 ... (遠目)。<br />
</p>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com3tag:blogger.com,1999:blog-11395554.post-38380478022654268492012-01-18T10:54:00.000+08:002012-01-18T11:16:44.765+08:00YiViewer - pandoc HTML Viewer<p><a href="http://yen3rc.googlecode.com/files/yiviewer.tar.gz">Download</a></p><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-RpAgOKaabM8/TxY0IzopGgI/AAAAAAAADgA/719LeYdT5WQ/s1600/Screenshot%2B2012-01-18%2Bat%2B10.52.36%2BAM.png" imageanchor="1" style="margin-left:1em; margin-right:1em"><img border="0" height="182" width="320" src="http://1.bp.blogspot.com/-RpAgOKaabM8/TxY0IzopGgI/AAAAAAAADgA/719LeYdT5WQ/s320/Screenshot%2B2012-01-18%2Bat%2B10.52.36%2BAM.png" /></a></div><br />
<br />
<h2 id="what-is-yiviewer">What is YiViewer ?</h2><p>YiViewer is a html previwer for restructed text by <a href="http://johnmacfarlane.net/pandoc/">pandoc</a>. It can previrew markdown, reStructuredText, latex, … etc as a html page.</p><p>It is written by Python and QtWebKit (by <a href="http://www.pyside.org">PySide</a>). The program is very small. It can run smoothly in Mac OSX and Linux.</p><h3 id="feature">Feature</h3><ol style="list-style-type: decimal"><li>Stay in the same location when you regenerate the preview for file.</li>
<li>Regenerate the preview automatically when the file saved.</li>
<li>Support the all file formats for pandoc, it can decide the file formt automatically by subfilename.</li>
<li>A simple and beauty look preview CSS is designed by <a href="http://program-lover.blogspot.com/">C.E.W.</a></li>
</ol><h3 id="connect-author">Connect Author</h3><p>If you have any problem with YiViewer</p><ol style="list-style-type: decimal"><li>Leave message in my <a href="http://yen3rc.blogspot.com">blog</a></li>
<li>Mail to me (yen3rc <em>AT</em> GMAIL).</li>
</ol><h2 id="install">Install</h2><p>There are two steps for installization.</p><ol style="list-style-type: decimal"><li>Install Dependence Librays/ Tools — <a href="http://www.pyside.org/">PySide</a> and <a href="http://johnmacfarlane.net/pandoc/">pandoc</a></li>
<li>Install YiViewer</li>
</ol><h3 id="install-dependence-librarys-tools">Install Dependence Librarys/ Tools</h3><ul><li>Install in Mac OSX</li>
<li>Install in Fedora 14+</li>
<li>Install in Ubuntu (unfinished)</li>
</ul><h4 id="install-for-mac-osx">Install for Mac OSX</h4><ul><li><p>Install from <a href="http://mxcl.github.com/homebrew/">homebrew</a>. Type the following command.</p><pre><code> brew install pyside
brew instal haskell-platform
cabal install pandoc --flags=highlighting
</code></pre></li>
<li><p>Install from package</p><ol style="list-style-type: decimal"><li><p>Download <a href="http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x">Qt</a>, <a href="http://developer.qt.nokia.com/wiki/PySide_Binaries_MacOSX">PySide</a>, <a href="http://hackage.haskell.org/platform/mac.html">haskell-platform</a> package and install it.</p></li>
<li><p>Type the following command</p><pre><code> cabal install pandoc --flags=highlighting
</code></pre></li>
</ol></li>
</ul><h4 id="install-for-fedora-14">Install for Fedora 14+</h4><ul><li><p>Type the following command</p><pre><code>sudo yum install python-pyside* pandoc -y
</code></pre></li>
</ul><h4 id="install-for-ubuntu">Install for Ubuntu</h4><p>I don’t have any computer running with Ubuntu OS. If you test it successd in Ubuntu, please mail to me. Thank you.</p><h3 id="install-yiviewer">Install YiViewer</h3><ul><li><p>untar <code>yiviewer.tar.gz</code> and copy to a run path.</p><pre><code>tar zxvf yiviewer.tar.gz
cd yiviewer
chmod +x yiviewer.py
sudo cp yiviewer.py /usr/local/bin
</code></pre></li>
</ul><h2 id="how-to-use">How to use ?</h2><p>You have two ways to use YiViewer</p><ol style="list-style-type: decimal"><li><p>from command line</p><pre><code>yiviewer.py README.md
</code></pre></li>
<li><p>from GUI</p><pre><code>yiviewer.py
</code></pre><p>File -> Open -> Select Restructed Text File</p></li>
<li>The previwer has the following shortcuts<br />
<ol style="list-style-type: lower-alpha"><li><code>Ctrl + r</code>: Regenerate the page</li>
<li><code>Ctrl + o</code>: Open file</li>
<li><code>Ctrl + s</code>: Save as a html file.</li>
<li><code>Ctrl + +</code>: Zoom in</li>
<li><code>Ctrl + -</code>: Zoom out</li>
<li><code>Ctrl + 0</code>: Set default zoom size.</li>
</ol></li>
</ol><h2 id="to-do-list">To Do List</h2><ol style="list-style-type: decimal"><li><p>上傳到 Github</p><p>這件事我沒做過,我連開 Issue 都不會 XD,看來我真的得好好學一學。(ps: 因為之前都是在學校的 Server 直接走 git with ssh XD。)</p></li>
<li><p>打包程式以順利支持各種平台。</p><p>還蠻重要的,但是我沒有相關經驗,希望二月底前可以做完。(因為我蠻希望可以直接把檔案拖到 dock 的程式執行圖示上就開啟的 XD。)</p></li>
<li><p>在 VIM 上支援即打即顯示。</p><p>目前構想是去讀取 swp file,不知道可不可行,有稍微 parse swp file一下,感覺上是可行的,但是得要知道檔案結束在那個地方。</p></li>
<li><p>支援 pandoc 的自訂格式與 command</p><p>這沒很難,只是很麻煩,目前已經可以從檔名判斷格式,如果真的有需要可以自行從程式碼中修改。而想做的事如下。</p><ol style="list-style-type: decimal"><li>使用者自行定義 input formt,可從 arguments or option 或 GUI (這得要好好想想怎麼設計會比較好)</li>
<li>可支援使用者自行定義 executing pandoc command</li>
</ol></li>
</ol><h3 id="question">Question</h3><ol style="list-style-type: decimal"><li><p>這隻程式會持續的維護嗎 ?</p><p>會,因為我平常都是用這樣子的模式在寫文件,所以有什麼問題我會自己試著去修改。如果有一天沒有維護了,原因不外乎是我不用這隻程式或懶了 XD。</p></li>
<li><p>為什麼使用 PySide & pandoc ?</p><p>用 pandoc 的原因支援檔案格式的多樣性,我覺得這也是 Mou 的一個可惜之處。另外一個原因是: 兩個都有裝 XD 其實 PySide (QtWebKit) 和 haskell-platform 都不小,但是目前沒有改用別的套件的計畫。</p></li>
<li><p>為什麼不支援 Windows ?</p><p>因為非常懶,而且我身邊也沒有可以測的 Windows 電腦 XD。如果上述的套件在 Windows 底下裝的起來,這隻程式應該能執行 (吧?)。相依的套件在 Windows 上都可以直接安裝就是了,有人要幫我測試我會很感激的 (笑)。</p></li>
<li><p>為什麼不能按兩下執行 ?</p><p>因為我不知道怎麼打包一個 Python Program 在各種平台上 XD (尤其是 Mac OSX XD),有需要的話會加到 To Do List 裡面 XD。</p></li>
<li><p>為什麼不支援多檔開啟 ?</p><p>因為懶 XD 如果真的有需要可以加到 To Do List</p></li>
</ol><h2 id="version">Version</h2><ul><li><strong>[01.18.2012]</strong> - v0.1 - Written by Yen3</li>
</ul>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com0tag:blogger.com,1999:blog-11395554.post-3414413753629821912011-11-23T10:47:00.001+08:002011-11-24T19:37:58.587+08:00Copy and Past words from OS's clipborad in vim.<p>In actually, it’s a problem for me when I copy and past words to vim from OS's clipboard. </p><p>So I write a simple vim script to support switching modes between autoindent and noautoindents and set keymap “\ i”.</p><br />
<pre><code>function! SwitchAutoIndent()
if &autoindent
set noautoindent
else
set autoindent
endif
endfunction
nmap <LEADER>i :call SwitchAutoIndent()<CR>
</code></pre><br />
<p>I think it can resolve my problem temporary. Maybe I have to use MacVim because it has no the problem. XD</p><br />
<p>---<br />
Take notes.</p><br />
<hr size="1"><p>godfat mentioned to use past mode when we want to past words. So I founded some information about pastmode from <a href="http://vim.wikia.com/wiki/Toggle_auto-indenting_for_code_paste">vim wiki</a>Just set command as the following.</p><br />
<pre><code>nmap <LEADER>p :set invpaste paste?<CR></code></pre>yen3http://www.blogger.com/profile/09160610856837426907noreply@blogger.com2