Lyx輸入中文與代碼高亮

若是您看了個人這個隨筆:《OpenSUSE 13.2安裝Texlive2014+Texmaker+Lyx》html

(一)LyX中文html5

打開Lyx直接新建開始使用,那麼輸入的中文會是編譯失敗的,疑?爲何它的說明文檔和教程編譯都沒有問題...程序員

緣由即在於每一個文檔的配置都是不一樣的。你能夠打開「幫助 - Lyx介紹」,本身也新建一個文件。而後打開「文檔 - 首選項」。會發現配置是不一樣的。若是對着實例改,那麼就能夠運行中文了,不過仍是會有不少的地方,莫名其妙的編譯不過,多是還有些什麼設置我沒有去改,剛剛接觸也不會改。因此最簡單的方法就是複製Lyx介紹到你的目錄,刪除原有內容,而後編輯。這是最簡單有效的方法,能夠應付絕大多數的編寫工做,之後瞭解多了能夠再本身配置shell

(二)LyX代碼高亮canvas

對於程序員來講,假如想插入些代碼,沒有高亮確定是沒法接受的。下面來看下方法。ide

打開「文檔 - 首選項」,進入「LaTex導言區」,追加以下代碼:spa

\usepackage{listings}
\usepackage{xcolor}
\lstset{
  %行號
  numbers=left,
  %背景框
  framexleftmargin=10mm,
  frame=none,
  %背景色
  %backgroundcolor=\color[rgb]{1,1,0.76},
  backgroundcolor=\color[RGB]{245,245,244},
  %樣式
  keywordstyle=\bf\color{blue},
  identifierstyle=\bf,
  numberstyle=\color[RGB]{0,192,192},
  commentstyle=\it\color[RGB]{0,96,96},
  stringstyle=\rmfamily\slshape\color[RGB]{128,0,0},
  %顯示空格
  showstringspaces=false,
  xleftmargin=2em, %邊距
  xrightmargin=2em, 
  aboveskip=1em
}

這樣,在「插入 - Tex代碼」,就可使用以下的代碼進行插入代碼rest

\begin{lstlisting}[language={C}]
#include <stdio.h>
int main(void)
{
    printf("Hello LyX!");
    return 0;
}
\end{lstlisting}

效果:code

是否是還不錯呢~不過不得不提一個問題就是listings包中支持的語言可能不是很全。好比不支持JavaScripthtml5等。htm

支持的語言列表能夠參看listings說明.pdf(16頁)想更多的瞭解listings也能夠去查看此文檔

 

LyX不支持Javascript的解決辦法:

修改安裝目錄下的語言支持文件。路徑是/usr/local/texlive/2014/texmf-dist/tex/latex/listings/。咱們在lstlang1.sty中添加以下設置信息便可(放在兩門語言定義中間)

\lst@definelanguage{JavaScript}%
  {morekeywords={typeof,new,true,false,catch,function,return,null,catch,switch,var,if,in,while,do,else,case,break},%
  morecomment=[l]//,%
  morecomment=[s]{/*}{*/},%
  morestring=[b]",%
  morestring=[b]',%
  }[keywords,comments,strings]%

OK,在語言選項的地方使用「JavaScript」便可實現代碼高亮。

還有一種靈活的方法,是直接在導言區添加代碼。如添加HTML5支持:

\lstdefinelanguage{HTML5}[]{HTML}{
    sensitive=false,
    morekeywords={canvas},
    tag=[s]
}

把定義代碼放入導言區也是能夠實現相同的功能。以下:

OK,基本的使用LyX應該是沒有問題了。

 

-------

PS:萬事具有,本打算用LyX完成個人畢業論文,去翻看了羣裏的說明才發現學校給了畢設模板.....萬惡的學校&&M¥Office !

相關文章
相關標籤/搜索