google code-beautifer

星期二, 8月 01, 2017

EMACS usb 隨身碟版的配置

有時候想在外寫個無關機密的東西,但是不方便時時帶個筆電出門,湊巧有個安全的windows  機器在那可以讓你用USB碟可是你沒有管理員權限,這時在隨身帶的USB 碟上裝一套可攜版的 emacs 來寫寫文件不錯,不過既然都能跑emacs ,當然會想把自己家裡電腦整套.emacs 配置跟.emacs.d 裡面包山包海的套件也帶過來所以跟自家的環境一樣方便。這要怎麼做?其實不難:

可以在啟動emacs 的batch 檔裡設定環境參數:主要就是下面兩行
set HOME=%~dp0..\emacshome
"%~dp0\winbin\emacs-24.5\bin\runemacs.exe" %*

其中 %~dp0 就是windows 裡現行執行檔的現行目錄, 假如把這兩行寫到USB 碟上根目錄的一個檔案叫runEmacsUSB.bat,不管 USB 碟 是 e: 還是f:.... %~dp0 就是那個碟的根目錄,假定 USB 碟 是 e: 那 runEmacsUSB.bat 的位置在e:\runEmacsUSB.bat 而 %~dp0 就是 e:\
這個可以照自己喜好更動,我在  USB 碟 下開了一個子目錄 winbin ,然後又把整個emacs 隨身版拷貝到 winbin 子目錄下的emacs-24.5 裡,所以執行檔路徑就在e:\winbin\emacs-24.5\bin\runemacs.exe
這就是 runEmacsUSB.bat 第二行的前半段但是用雙引號刮起來 後半段就只是把參數全吃下傳給emacs
這樣這個在根目錄的批次檔就會去子目錄裡找到真正的執行檔
但是這個emacs 配置重點在第一行,他會指定 emacs 的家目錄 ,我是在USB 碟根目錄下開了一個子目錄叫emacshome ,然後把 .emacs 設定檔跟 .emacs.d 目錄全拷貝過去emacshome 之下,這下執行 runEmacsUSB.bat 就可以在USB 碟上跑全套 emacs 服務,在電腦上看大螢幕寫東西的爽度不是用手機可以比擬的

順帶一提,我試過emacs 24 跟25 版,在windows 10上某機器上, 25 版對我特製化的程式碼字型設定顯示不佳,會糊糊的。但是24 版不會,所以為了相容性我就沒有跑25 版