發表文章

目前顯示的是 2月, 2017的文章

關於我與終端的那些小事

該是說一種嚮往吧,我對黑窗。 自幼看老爸操作黑窗,便能感受他到獨特的魅力,儘管 cmd 現在在我眼裡是如此軟弱。 ( 等到你會寫 bat 再來說嘴 ) 直到大學碰 linux,我才真正踏入其中。 一些基本指令, cd , mkdir 外,來談談其他東西吧。 vim 對它的認識是越來越深,但你不摸索他,他永遠只會停留在那。 我拖了一年,才開始用 vundle 裝插件, vimscript 不知甚麼時候會再碰。 scp 走 ssh 協定的 cp , 你就把他當 cp 用,比 ftp 好用。(我覺得) 是教授安利的。 tmux 學校教授一開始的裝 口畢  利器,有了他,可以切螢幕,很好裝 口畢 。 他過了一學期(印象中)才  (在同學逼問之下)  介紹我們這個東西。 asciinema 教授介紹的終端錄影小程式,很潮喔。 bc 書上看來的終端計算機,高精度的。 zip 成天混 TCL 難免嫌滑鼠慢,所以 zip 不錯。 rar 同 zip,還有 winrar 都在跳 試用期很煩   。 git 這也是不碰,永遠不會碰的東西。 試著 push 一些東西在 github 後,你會覺得網頁版上傳麻煩。 接著你就會使用他,然後  愛上他 。 hexo 這是可以讓你跟 github 加深感情  的東西,他可以利用你的 markdown 檔案快速生成網站, 然後 push 到 github 上成為你的一個小地盤。愛上  用 vim 寫 blog 吧。 ici python 寫成的英文辭典,讓你連瀏覽器都不用打開。 搭配 vim 用 leader 鍵服用更佳,透過 pip 安裝。 看文檔一路通暢( 我還沒體驗到 )。 abbrev 敝人用 python 寫的縮寫參考器,用簡單的爬蟲給你縮寫單字建議,自我感覺良好,在命名變數時 * 格直升。 各種 compiler & interpreter - python , node , perl , ghc , ruby ,  racket(scheme) , gcc , g++ , java 等 程序猿玩耍必備玩具,集齊可獲得 toy collection master 稱號。 gdb 中低階程序猿配備,當你成為 master 便不再有 bug,不用 debug (口夷 ? ) 。 autojump 快速 cd,我之前試圖寫了

Codeforces 三場下來的感想

已經到大二下了,感覺自己有很多不足的地方。 在 Codeforces 這裡,再次提醒了我要前進。 三場下來,rating 呈現嚴格遞減,這當然也不是我想要的。 前兩次都只有解一題,第三次到了三題,因為題目比較簡單。 目前打算式降低參加頻率,開始採練功模式。 也碰了三次了,說真的,其實題目沒想像中的難,但有深度,只要可以越往後面解的話。 現在應該就是提升準確度和手速吧。 Codeforces 真的很好玩。 希望某一天可以登上顛峰!

[Racket] 安裝在 Cygwin 上真是 Wow

恩,正式使用之後會有更多內容。 目前記錄折騰過程。不排除會有更多問題。 為了更好融入 Cygwin ,所以採用手動編譯。 source 包 from GitHub 。 基本上 README 寫得算詳細,可是其中有段 make --unix ,我本機 GNU make 竟然沒有 --nuix 此 flag。 可能是這個原因,導致編譯時有些宏定義沒辦法起作用,所以我直接在 src 目錄的 .c 檔做 #define 的動作。 因為他寫的 Makefile 我看不太懂,不太敢動他 : P 首先是出現 fatal error libffi.xxxx 沒有安裝,找不到庫等等 ( 問題出在 forign 資料夾編譯時 )     To run `racket/draw' and `racket/gui' programs, you will need     Cairo, Pango, and GTk install.  These libraries are not     distributed with Racket, and they are not needed for compilation,     except for building documentation that uses `racket/draw'. More     info about required libs is available at     http://docs.racket-lang.org/draw/libs.html and     http://docs.racket-lang.org/gui/libs.html.     The content of the "foreign" subdirectory may require GNU `make'     if no installed "libffi" is detected.  If the build fails with     another variant of `make', please try using GNU `make'. 基本上把它說的 Cairo, Pango, and GTk 三個庫用 Cygwin 的

[Racket] On Cygwin. Wow.

恩,正式使用之後會有更多內容。 目前記錄折騰過程。不排除會有更多問題。 為了更好融入 Cygwin ,所以採用手動編譯。 source 包 from GitHub 。 先定義目錄,因為它放得很多,又有些重名,假設當前目錄為 clone 下來的資料夾。 /cygdrive/d/workSpace/github/racket(cloned dir)/racket/src -> 現在在這裡 mkdir build && cd build ../configure make make install 基本上 README (看 /cygdrive/d/workSpace/github/racket(cloned dir)/racket/src 下的 README)  寫得算詳細, 可是其中有段 make --unix ,我本機 GNU make 竟然沒有 --unix 此 flag。 可能是這個原因,導致編譯時有些宏定義沒辦法起作用, 所以我直接在 /cygdrive/d/workSpace/github/racket(cloned dir)/racket/src/racket/src 目錄的 .c 檔做 #define 的動作。 因為他寫的 Makefile 我看不太懂,不太敢動他 : P 首先是出現 fatal error libffi.xxxx 沒有安裝,找不到庫等等 ( 問題出在 forign 資料夾編譯時 )     To run `racket/draw' and `racket/gui' programs, you will need     Cairo, Pango, and GTk install.  These libraries are not     distributed with Racket, and they are not needed for compilation,     except for building documentation that uses `racket/draw'. More     info about required libs is available at     http://docs.racket-lang.org/draw/libs.html and

CS guide - Origin

因為看到學長的文有感而發, 突然想以 CS 為主題寫一個給後輩的指南。 究竟 CS 在搞甚麼,和 CE 有甚麼不同 ? 文科學校都叫 CS , 工科叫 CE ? 如何入門 CS 等等,這些是我一年前非常想知道的。 時至今日,我還在完備我心中的答案。 我知道自己還有很多不足的地方, 要寫這樣的東西可能不夠有力。 但我覺得系上學長弟制, 學術傳承的東西似乎不夠多。 我沒認直屬 感覺有個這樣的東西, 入門好像就可以容易些, 彎路也可以少走一點。 我覺得概念的形成很重要, 對一個領域沒有一個概觀, 在學習上好像就會有點無所適從。 基本上內容可能就提及跟其他學校相比, 有哪方面可以自己加強。 其實比起學校課程, 我覺得自主學習研究的風氣更為重要。 而說實在的, 其實系上也有不少**神秘**的資源是被我們所忽略的。 我也正在摸索,這部分就慢慢紀錄吧。 這一年多來,也算是有不少際遇了。 一個全然的小白能由家人引路, 繼而受到同儕教授指教, 最後能自主透過網路,追求自己想要的東西。 最後, 希望系上學習風氣也能日益增長。 儘管離系核很遠的的我好像沒資格這樣說

Yo , 廢文一篇來連線

今天玩 bonk.io , 俺和有位 ubuntu 1604 的網友 ( linuxer ) 有了交流。 真是各種 666 ,見證 OS 之爭 R。 成功度過了 2/14 呵呵,不過要開學了,要上發條了,買來的書也要看,該下決心潛心讀書了。 總而言之,言而總之,加油 Bar ,騷年。 也希望未來能和遇到更多有著相同興趣的網友啊。 題外話,有點想旁聽星期五的 Java 啊。  

[C/C++] BASH GCC/G++ 增加預設標頭檔路徑

在 windows 下用 ide 應該沒這個問題,只要在上面 toolbar 點個幾下,就可以增加了, 之前在 minesweeper solver 用過就不贅述了。 此次是在 cygwin 下,我想在家目錄下新增一個 lib 資料夾專門放我的標頭檔, 但每次要加上 -I 去 link dir 感覺很麻煩,用 alias 感覺又不是正道。 之後查到 SO 的 這篇 ,沒錯!我就是個搬運工。 在 BASH 下可以設環境變數,其實提問者提到的 LD_* 那個我也試過, 不過後來一查,發現是動態連結的環境變數。 怎麼說哩,有查到一個例子是 nano 需要用到 ncurses 的庫,.so 檔卻被移到其他地方去, 所以要執行 nano 時跑不起來,這是只要重新設定一下 LD_* 這個變數就好了。 讓 nano 重新找到 ncurses 的 .so ,就可以開始編文字囉。 跑題了。主要還是說 gcc/g++ 也有適用給 include 搜尋的環境變數, 就是 C_INCLUDE_PATH 和 CPLUS_INCLUDE_PATH 啦 , 前者是給 C 後者是 C++ , 然後還有一個就是 CPATH 是兩者共用的。 所以在 .bashrc 或 .profile 中加一句 CPATH="$HOME/lib:$CPATH" 就好囉。

[Chrome] disable "停用開發人員模式擴充功能" warning

圖片
因為裝了 UpNext extension ( from github) , 所以出現了這個提示。 實在很惱人,在看了 低調一點 的辦法後,發現我根本沒有  gpedit.msc 啊~ (因為我是 notebook windows 10 , 好像要 windows 專業版 才有這個功能) 但,深深被 geek 精神影響的我,內心其實也微微的排斥這種方法的,太 win 的方式不適合我 (被踢 既然插件是從很 geek 的 github 載下來的,解決方法也要很 geek 的從 stackoverflow 找啊 (其實是 google 找到的 不過試著用英文搜尋看看真的很重要,不要被中文思維所局限了,所謂視野開闊,就從英文搜尋開始~ so 上的 hacker 果然厲害,直接從 dll 下手,而且還是用 bat 檔改,恩,更新日期還很新(Jan 14, 2017),太棒了。(傳送門 戳我 ) 沒有摸過 bat , 只有摸過 linux 的 script , bat 也是看懂了一些,這位仁兄似乎是直接開檔改一些值,太狂啦~ 講一下步驟 Save the code below to  DevWarningPatch.bat  somewhere (on the Desktop, for example or in the folder with chrome.dll) 將下列 code 存成  DevWarningPatch.bat (注意副檔名)。 不會改副檔名自己找辦法(有些人可以直接用重新命名改),或用記事本存 .txt 再右鍵進內容改。 儲存的位置不限,可以是桌面,或是 chrome 的系統夾。 我才不會說 geeker 都是用 vim 呢 ( 謎 : geeker 才不用 windows ) 註:其實檔名沒那麼重要,但,尊重作者。 Exit Chrome. Or let the script close it including its hidden background processes. 關閉 chrome , (可以直接關閉他,或讓 script 關閉他) ,包含 chrome 在背景運作的程序都要關閉。 ( 這,我就直接右上角按 x 而已)   Rightclick