|
|
pl:miw:2009:miw09_doku_latex [2009/09/23 14:04] jsi08 |
pl:miw:2009:miw09_doku_latex [2019/06/27 15:50] |
~~ODT~~ | |
====== Doku Latex ====== | |
Wojciech Nagrodzki [[nagrodz@student.agh.edu.pl]] | |
| |
====== Spotkania ====== | |
===== 20090319 ==== | |
Co udało mi się ustalić na temat pluginu odt? | |
Za pomocą parsera wiki, plik.txt jest konwertowany na postać zawierającą instrukcje specialne: np | |
| |
<code> | |
This is not a list | |
* This is the opening list item | |
* This is the second list item | |
* This is the last list item | |
This is also not a list | |
</code> | |
| |
Zostanie przetłumaczony na: | |
| |
<code> | |
p_open: | |
cdata: "This is not a list" | |
p_close: | |
listu_open: | |
listitem_open: | |
cdata: " This is the opening list item" | |
listitem_close: | |
listitem_open: | |
cdata: " This is the second list item" | |
listitem_close: | |
listitem_open: | |
cdata: " This is the last list item" | |
listitem_close: | |
list_close: | |
p_open: | |
cdata: "This is also not a list" | |
p_close: | |
</code> | |
| |
Zadaniem programisty jest teraz napisanie odpowiednich funkcji to tych instrukcji np. | |
| |
<code> | |
function listu_open() { | |
$this->nlputcmdnl("begin{itemize}"); //need to overload that | |
} | |
</code> | |
| |
W ten właśnie sposób jest napisany plugin DokuTexiT http://danjer.doudouke.org/tech/dokutexit | |
| |
Jeżeli chodzi o kompresję plików do zip, w obu pluginach (ODT i DokuTexiT) używane są funkcje php do kompresji ("c r c 3 2" "g z c o m p r e s s"). | |
Dane są gromadzone w zmiennej "compressedData". | |
| |
PS. wpisane nazw tych funkcji, powoduje błąd w DokuWiki, (nie można zapisać edytowanej strony FIXME) dlatego zapisałem je rozdzielając litery spacjami. | |
| |
===== 05 Marzec 2009 ==== | |
* przyniosę raport co i jak działa/nie działa w pluginie. | |
* [[http://www.dokuwiki.org/plugin:odt]] | |
| |
===== 19 Luty 2009 ==== | |
* postawienie DokuWiki wraz z pluginem DokuLatex | |
* umieszczenie DokuWiki na zewnętrznym serwerze. [[http://student.agh.edu.pl/~nagrodz/Katalog/wiki/|Link do wiki]] | |
====== Projekt ====== | |
====== Sprawozdanie ====== | |
==== Co nie działa? ==== | |
| |
| |
*Problemy ze złożonym formatowaniem: | |
<code> | |
**''Bold and monospaced''** | |
| |
__''Underlined and monospaced''__ | |
| |
//''Italic and monospaced''// | |
</code> | |
| |
*Problemy z tagiem < code > | |
*Problemy z listą numerowaną | |
<code> | |
- The same list but ordered | |
- Another item | |
- Just use indention for deeper levels | |
- That's it | |
</code> | |
| |
Moim zdaniem będzie trzeba przebudować całą funkcję parsującą. | |
Przetłumaczony plik powinien zostać zapisany na dysku i udostępniony użytkownikowi (a nie wyświetlony w przeglądarce bo nie interpretowane są znaki nowej linii). | |
Przy użyciu poleceń powłoki POSIX (nie wiem jeszcze czy da sie wstawić zmienne w odwrócone apostrofy!), można spakować plik latex wraz z grafikami. | |
Myślę ze szybciej pójdzie mi napisanie nowej funkcji niż poprawianie starej. | |
| |
===Testy pluginu=== | |
===Podstawowe formatowanie tekstu=== | |
| |
* **Bold** OK | |
* //Italic// OK | |
* __Underlined__ OK | |
* ''Monospaced'' OK | |
* **__//''Combined''//__** OK | |
* <sub>Subscript</sub> OK | |
* <sup>Superscript</sup> OK | |
* <del>Deleted</del> OK | |
* Paragraphs OK | |
This is some text with some linebreaks\\ Note that the | |
two backslashes are only recognized at the end of a line\\ | |
or followed by\\ a whitespace \\this happens without it. | |
| |
===Linki=== | |
==Zewnętrzne o następującej postaci:== | |
* http://www.google.com/ OK | |
* www.google.com/ OK | |
* [ [http://www.google.com|This Link points to google] ] OK | |
* andi@splitbrain.org OK | |
| |
==Wewnętrzne== | |
Linki wewnętrzne nie działają. Nie można odwołać się w PDF do innej wygenerowanej strony. | |
| |
==Obrazkowe== | |
Nie ją w pełni sprawne, następujący kod | |
[[http://www.php.net|{{wiki:dokuwiki-128.png}}]] | |
| |
jest konwertowany na postać | |
img /Users/wojtek/Sites/dokuwiki/data/media/wiki/dokuwiki-128.png | |
| |
==Przypisy== | |
Przypis ((Tekst przypisu)) | |
Przypisy są zapisywane w obszarze stopki strony. Kliknięcie przypisu powoduje przejście do stopki strony. | |
| |
===Dzielenie na sekcje=== | |
* Poziom 2 4 5 OK | |
* Tworzenie linii horyzontalnej OK | |
| |
===Obrazki=== | |
Nie są w pełni wspierane. Kod postaci | |
| |
Real size: {{wiki:dokuwiki-128.png}} | |
| |
Jest konwertowane na | |
| |
img /Users/wojtek/Sites/dokuwiki/data/media/wiki/dokuwiki-128.png | |
| |
===Listy=== | |
* Numerowane OK | |
- Pierwszy element | |
- Drugi | |
- Niższy poziom, Element pierwszy | |
- Trzeci | |
* Zwykłe OK | |
| |
| |
===Emotikony=== | |
Sa przedstawione jedynie w postaci znakowej. | |
| |
===Typografia=== | |
Jest w pełni wspierana. Konwertowane są min znaki: | |
-> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r) | |
| |
===Cytowanie=== | |
| |
> Hej! | |
| |
>> Witaj! | |
| |
> Idziemy na piwko | |
| |
>> Zapytam Adama | |
| |
>>> OK, chodźmy! | |
| |
Jest w pełni wspierane. | |
| |
===Tabele=== | |
* Nagłówki kolumn OK | |
| |
^ Heading 1 ^ Heading 2 ^ Heading 3 ^ | |
| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 | | |
| Row 2 Col 1 | Row 2 Col 2 | Row 2 Col 3 | | |
| Row 3 Col 1 | Row 3 Col 2 | Row 3 Col 3 | | |
| |
* Nagłówki wierszy OK | |
| |
| ^ Heading 1 ^ Heading 2 ^ | |
^ Heading 3 | Row 1 Col 1 | Row 1 Col 2 | | |
^ Heading 4 | Row 2 Col 1 | Row 2 Col 2 | | |
^ Heading 5 | Row 3 Col 1 | Row 2 Col 2 | | |
| |
* Znienne rozpiętości wierszy OK | |
| |
^ Heading 1 ^ Heading 2 ^ Heading 3 ^ | |
| Row 1 Col 1 | Row 1 Col 2 | Row 1 Col 3 | | |
| Row 2 Col 1 | Wiersz na dwie kolumny || | |
| Row 3 Col 1 | Row 2 Col 2 | Row 2 Col 3 | | |
| |
* Ustawianie zawartości (left, centerad, right) OK | |
| |
^ Table with alignment ^^^ | |
| right| center |left | | |
|left | right| center | | |
| xxxxxxxxxxxx | xxxxxxxxxxxx | xxxxxxxxxxxx | | |
| |
===Bloki nieparsowane=== | |
Są w pełni obsługiwane. | |
| |
Przykładowy blok niesporsowany. | |
| |
===Używanie pluginu=== | |
Link do pluginu http://danjer.doudouke.org/dokutexit.tar.gz | |
| |
Należy wstawić następujący kod na stronie. | |
| |
<texit info> | |
author=MySelf | |
title=MyTitle | |
</texit> | |
| |
W dokutexit settings wklej kolejno w pola kod | |
==DokuTeXit Begin/Header== | |
| |
| |
\documentclass[twoside,a4paper,10pt]{report} | |
%%\usepackage[french]{babel} %% Use your own babel language | |
\usepackage[top=3cm,bottom=3cm,left=2.5cm,right=2.5cm]{geometry} | |
\usepackage{ucs} | |
\usepackage[utf8x]{inputenc} | |
\usepackage{pslatex} | |
\usepackage{hyperref} | |
\usepackage{graphicx} | |
\usepackage{tabularx} | |
\usepackage{supertabular} | |
\usepackage{pdflscape} %% Used for very big table | |
\usepackage{moreverb} | |
\usepackage{color} | |
\usepackage{listings} | |
\usepackage{lastpage} | |
\usepackage{fancyhdr} | |
\usepackage{ulem} | |
\usepackage{textcomp} | |
\usepackage{wasysym} | |
\usepackage{wrapfig} %%Usefull for image | |
\usepackage{eso-pic} %% Background | |
| |
| |
==Dokutexit Command== | |
| |
\pagestyle{fancy}% | |
\renewcommand{\headrulewidth}{0.1pt} | |
\renewcommand{\footrulewidth}{0pt} | |
\renewcommand{\chaptermark}[1]{% | |
\markboth{\chaptername\ \thechapter.\ #1}{}} | |
\renewcommand{\sectionmark}[1]{% | |
\markright{#1}{}} | |
\fancypagestyle{plain}{% | |
\fancyhf{} | |
\fancyfoot[R]{\thepage/\pageref{LastPage}} | |
\renewcommand{\headrulewidth}{0pt} | |
\renewcommand{\footrulewidth}{0pt}} | |
\fancyhf{} | |
\fancyhead[L]{\rightmark} | |
\fancyhead[R]{\leftmark} | |
\fancyfoot[R]{\thepage/\pageref{LastPage}} | |
\renewcommand{\headrulewidth}{0.1pt} | |
\renewcommand{\footrulewidth}{0pt} | |
\definecolor{codegray}{gray}{.95} | |
\lstset{language=C, | |
numbers=left, | |
tabsize=2, | |
basicstyle=\scriptsize, | |
stringstyle=\textrm, | |
showstringspaces=false, | |
frame=none, | |
xleftmargin=3pt, | |
backgroundcolor=\color{codegray}} | |
\newcommand{\settexitref}[2]{(\ref{#1}p\pageref{#1})} | |
\newcommand{\dokutitlelevelone}[1]{\chapter{#1}} | |
\newcommand{\dokutitleleveltwo}[1]{\section{#1}} | |
\newcommand{\dokutitleleveltree}[1]{\subsection{#1}} | |
\newcommand{\dokutitlelevelfour}[1]{\subsubsection{#1}} | |
\newcommand{\dokutitlelevelfive}[1]{\paragraph{#1}} | |
\newcommand{\dokufootnote}[1]{\footnote{#1}} | |
\newcommand{\dokufootmark}[1]{\footnotemark[#1]} | |
\newcommand{\dokubold}[1]{\textbf{#1}} | |
\newcommand{\dokuitalic}[1]{\textsl{#1}} | |
\newcommand{\dokumonospace}[1]{\texttt{#1}} | |
\newcommand{\dokuunderline}[1]{\underline{#1}} | |
\newcommand{\dokuoverline}[1]{\sout{#1}} | |
\newcommand{\dokusupscript}[1]{\textsuperscript{#1}} | |
\newcommand{\dokusubscript}[1]{$_{#1}$} | |
\newcommand{\dokuhline}{\line(1,0){400}} | |
\newcommand{\dokulabel}[1]{\label{#1}} | |
\newcommand{\dokuitem}{\item} | |
\newcommand{\dokuquoting}{\textbar} | |
\newcommand{\dokutabularwidth}{\textwidth} | |
\newcommand{\dokusupertabularheadbreak}{\small\sl continued from previous page} | |
\newcommand{\dokusupertabulartailbreak}{\small\sl continued on next page} | |
\newcommand{\dokuheadingstyle}[1]{\textbf{#1}} | |
\definecolor{dokuheadingcolor}{rgb}{0,0,0.60} | |
\newcommand{\dokubackground}[1]{% | |
\AddToShipoutPicture{% | |
\AtTextCenter{% | |
\makebox(0,0)[c]{\resizebox{\textwidth}{!}{% | |
\rotatebox{25}{\textsf{\textbf{\textcolor[gray]{0.90}{#1}}}}}}% | |
}% | |
}% | |
} | |
| |
==DokuTeXit Document== | |
| |
\begin{document} | |
| |
==DokuTeXit Footer== | |
| |
\end{document} | |
| |
| |
Wciśnij Generate PFD a następnie View Latex Source. | |
| |
====== Prezentacja ====== | |
====== Materiały ====== | |
*Sekcja 2. Plugins | |
http://www.dokuwiki.org/development | |