小松鼠嚇了一跳,有了魔法眼鏡後,這世界看起來完全不一樣了

顯示具有 lyx 標籤的文章。 顯示所有文章
顯示具有 lyx 標籤的文章。 顯示所有文章

2011年7月7日 星期四

用 kindle 顯示 LyX 的 PDF Preview

  •  環境為 Win 7 32bit, LyX 1.6.9,  Python 2.7, Cygwin, Kindle DX
  • Kindle DX 安裝 usbNetwork hack
  • Cygwin 安裝 openSSH
  • 將 ssh 環境設定成無密碼登入 kindle,要在 kindle 的 usbnet/etc 下設定 authorized_keys
  • 將下面的 python 程式用 py2exe 或者 cx_freeze 包裝成 exe 檔
  • 在 LyX 裡面,將 Tools -> Preferences -> File Handling -> File Format 下的 pdf (pdflatex) 的 viewer 由 pdfview 改成我們的 exe 檔的路徑。
  • 如此就完成了,LyX 的 preview 會自動傳送到 kindle,然後自動更新書目。

2008年6月10日 星期二

zhpy 的另類用法

配合上 zhpy ,我們可以寫出下面這樣的 python 程式:

# encoding: zhpy_utf8
from math import *
from operator import *
print Σ(range(100))
print sin(π/4) ≠ √(2)/2
print(100),(e)
print 5 × 30 ÷ 2 ≦ tan((5)*π/4)
Π=λ f:reduce(mul, f, 1)
print Π(range(1,6))
print set([1, 2, 3, 4, 5]) ∩ set([1, 3, 5, 7, 9])
(第一行是 MagicCodec 語法,普通的 zhpy 請去掉第一行)
不管實不實用,至少增加了一點可讀性。既然是λ,為什麼要寫成 lambda?
以上的程式碼只需要下面的 zhpy .ini 檔案(可以叫做 math.ini,放在執行的目錄下)
[math]
λ=lambda
π=pi
Σ=sum
≠=!=
÷=/
×=*
㏒=log10
㏑=log
√=sqrt
≧=>=
≦=<= ∩=& ∪=l
for 和 in 可以換成相對應的符號, set 的 <, <= 也可以換成 set 符號。
Haskell 的 ide Lesksah能做到這件事情。 如果能夠把 lyx 修改成 python, haskell 或者其他程式語言的編輯器,應該也挺有趣的。
相關的東西是 TeXmacs 的 python plugin tmPython

2007年9月19日 星期三

lyx 文法檢查

很久沒有更新了,來一個沒什麼用的東西: 將 lyx 加入文法檢查。
環境是 ubuntu,不過 windows 下面也類似。

Step 1: 安裝 lyx 1.5.1(google ubuntu lyx), perl (用 apt-get 就行了)
**注意要將 /usr/bin/lyx link 到 /usr/bin/lyx-1.5.1 上
Step 2: google 搜尋 lyx-gc languagetool,然後下載 lyx-gc 0.3h 版本
Step 3: 解開 lyx-gc 的壓縮檔。
Step 4: 修改 lyx-gc,將第一行 #!/bin/sh 改成 #!/bin/bash,也可以把 locale 改掉
Step 5: 修改 chktex.pl
將 $ErrorText .='> '.embed_error_tags($rule_context,' '.$rule_ptrs,'?,'?').".\n\n "; 裡面的兩個奇怪的字元改掉,改成不奇怪的字元。我是用 _
Step 6: 執行 lyx-gc 即可,然後用 lyx 選單裡面的 check tex 檢查簡單的文法錯誤(666錯誤)。
Step 7: 可以 sudo apt-get install chktex 來增強功能(非 666錯誤)。
要更進階的功能,則需要 LanguageTool。
Step 1: 安裝 sun java 1.4 以上的版本
Step 2: google 搜尋,下載 LanguageTool 0.9.1 版
Step 3: 解該 LanguageTool 到某個目錄,假定是 /home/user/lt
Step 4: 修改 chktex.pl.jLanguageTool.pl 的 my $LANGUAGETOOL_PATH,指向 /home/user/lt。
Step 5: 這樣就能用了。可以開個新檔,打入 is were,然後執行 lyx 的 check tex 兩次(算是 bug),如果檢查出文法錯誤,那就成功了。

可惜 LanguageTool 本身不太穩,某些怪一點的文字,會讓他爆掉。所以長一點的文章可能只好分段檢查。
Windows 方面,可以安裝 windows 版本的 perl,但是 lyx-gc 的作者顯然 perl 功力不怎麼樣,很多檔案操作都是呼叫 shell 來完成的。需要手動修改 perl 程式,把一些檔案操作改成 perl 的內建功能。另外也可能要把一些 bash 檔的功能手動調整。基本上, windows 版本下面也是可以跑的。雖然說和 chktex 及 LanguageTool 搭配還要額外的修改。