標籤:latex winedt 最佳化 自訂快速鍵 工具列
前一個礼拜忙著準備討論班的示範稿,順帶還有單位的一門考試的試題需要排版整理,所以微博更新的速度又被拖後了。說實話,Latex這種“所想即所得”的排版系統對人的確是一種折磨,它並不適合快速的文檔編輯,倒是適合我們這種具有強烈強迫症傾向的人用來欣賞。所謂"慢工出細活",用Latex編輯文稿、書籍排版是集腋成裘的勾當,有許多東西是在這種折磨的過程中慢慢積累出來的。我在幾年的考試命題出題過程中,從最開始的Word+Mathtype逐漸過渡到Word+Aurora,最後還是 忍不住我那清冽的強迫症人格,投入到了Miktex+Winedt的陣營中來,個中的折磨,辛苦,被人的不理解和鄙視 慢慢的彙集起來,有了一些能提高輸入效率的小Tips:
1.有時輸入數學公式環境比如“$$”或者 “$$ $$” ,手動輸入總會有遺漏的情況,這造成了編譯過程中一些無法預知的錯誤,尤其是在公式符號量大蕪雜的時候 這時debugging相當於是噩夢一樣....那就自訂一個輸入數學環境的快速鍵?
WinEdt提供了個可以自訂GUI介面的指令碼配置程式,開啟指令碼配置程式:(菜單)Option->Options Interface
在WinEdt介面的左端點擊“Menus and Tool bar" 選擇 Main Menu.ini;這時您會看到一段很長的代碼表單,主要內容就是定義了有關WinEdt的一切 比如菜單名稱 命令 快速鍵等等
如果你想定義新命令的快速鍵 還是要注意不要和Winedt已有的快速鍵衝突 這樣是最好的了。
比如可以在這段代碼的最後加入一段 實現自動輸入數學公式環境"$$"
ITEM="MathInText" CAPTION="$$" MACRO="Chr(-1,'$');Chr(-1,'$');CMD('Char Left');" REQ_DOCUMENT=1 SHORTCUT="16461::Ctrl+M" REQ_SELECTED_TEXT=1
這段代碼是我搜尋得來的產物[1],實際運行中發現,如果對一個已經選擇的欄位對象運行快速鍵“Ctrl+M”.是會覆蓋掉原來的欄位的。而對我的需求來說 希望是欄位不被覆蓋掉 要實現這個理念 本著“半搜尋半探索”的目的,針對一些已有的快速鍵代碼 尤其是Control Pannel中的 我自己寫了一段改進的代碼。
ITEM="MathInText" CAPTION="$$"// MACRO="IfSel(2,'>',!'SetSel(0);');Chr(-1,'$');Chr(-1,'$');CMD('Char Left');" MACRO="IfSel(2,'>',!'SetSel(0);');IfSel(0,'=',""Ins('$$');CharLeft;"",""InsLabel('','$','$');"");" REQ_DOCUMENT=1 SHORTCUT="16461::Ctrl+M" REQ_SELECTED_TEXT=0
至於其中所用到的宏命令 還是不在本文章中去介紹了 參考的話 推薦一本大牛的小眾書籍 The WinEdt Hacker’s Guide,Jason Alexander,November 21, 1999 點擊開啟連結
當然 如果您只是對其中已有的宏命令修改其相應的快速鍵 比如 \textbf 添加快速鍵,就可以用Bold 搜尋,找到 REQ_DOCUMENT=1 那一行,加入 SHORTCUT="",然後將游標移到兩個引號中間,click Insert Shortcut in the Options Interface,然後在彈出的介面中按Ctrl+B 就可以了。
當然 修改完畢之後,記得儲存當前的.ini檔案 並且“Load Script ”一下
2.如果對當前的編輯表單Font 不是很滿意 可以考慮在還在左邊的“Option Pannel”裡面選擇“Font Scheme-》Font"選項
選擇一種等寬字型。。。。。。Winedt 推薦使用 Verdana字型 而本人鐘愛Conslas 僅是個人愛好 供大家參考
3.有的時候 我們需要自己定製一些輸入 比如輸入
\lim\limits_{n\to\infty}
這也是很煩心的 我們可以像WinEdt那樣 自訂 GUI Page COntrol 所謂GUI Page Control 就是指這樣一個介面
在WinEdt 6.0 以上版本 您也可以定義自己的Symbol 這個也是在剛才的那個”Option Control“裡面 選擇 ”Tex Symbols“
這裡面放置的是大量的Tex 符號捷徑。自訂就是要自己建一個出來(當然你也可以修改原有的,不過一般還是沒必要這樣做了),仿照原有的那些資訊,自己打一個。
PAGE="常用" CONFIGURATION="" MODE="" GROUP="常用\changyong.bmp" TOP=0 SPACE=0 ROWS=2 COLUMNS=4 WIDTH=50 HEIGHT=25 ITEM="( )" MACRO="Ins('\left(\right)');CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;" ITEM="[ ]" MACRO="Ins('\left[\right]');CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;" ITEM="{ }" MACRO="Ins('\left\{\right\}');CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;" ITEM="| |" MACRO="Ins('\left|\right|');CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;" ITEM="{ " MACRO="Ins('\left\{\right.');CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;CharLeft;" ITEM="sum_i=1^n" MACRO="Ins('\sum_{i=1}^{n}{}');CharLeft;" ITEM="prod_i=1^n" MACRO="Ins('\prod_{i=1}^{n}{}');CharLeft;" ITEM="lim_xtoinfty" MACRO="Ins('\lim_{x\to+\infty}{}');CharLeft;"
注意這裡有個圖片changyong.bmp是要自己根據你所設的符號製作的,這裡比較麻煩,要作的位置恰好,否則顯示得不好,不過關係不大,因為是你自己設定的你自己也清楚大概位置在哪了吧呵呵。輸入完後儲存並 Load Script 就 OK 了
定製WinEdt 最佳化Latex輸入