hikiutils 0.2.3.13 → 0.2.3.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/hikiutils.gemspec +2 -1
  3. data/hikiutils_bob/Rakefile +30 -16
  4. data/hikiutils_bob/code.hiki +9 -30
  5. data/hikiutils_bob/figs/hikiutils_bob.002.jpeg +0 -0
  6. data/hikiutils_bob/figs/hikiutils_bob.007.jpeg +0 -0
  7. data/hikiutils_bob/figs/hikiutils_bob.pdf +0 -0
  8. data/hikiutils_bob/hikiutils_bob/hikiutils_bob.002.jpeg +0 -0
  9. data/hikiutils_bob/hikiutils_bob/hikiutils_bob.007.jpeg +0 -0
  10. data/hikiutils_bob/hikiutils_bob.key +0 -0
  11. data/hikiutils_bob/latex_all.hiki +33 -8
  12. data/hikiutils_bob/latex_dir/code.aux +7 -14
  13. data/hikiutils_bob/latex_dir/code.log +28 -0
  14. data/hikiutils_bob/latex_dir/code.tex +13 -31
  15. data/hikiutils_bob/latex_dir/hikiutils_bob.log +59 -50
  16. data/hikiutils_bob/latex_dir/hikiutils_bob.pdf +0 -0
  17. data/hikiutils_bob/latex_dir/hikiutils_bob.synctex.gz +0 -0
  18. data/hikiutils_bob/latex_dir/hikiutils_bob.toc +29 -29
  19. data/hikiutils_bob/latex_dir/latex_all.aux +19 -16
  20. data/hikiutils_bob/latex_dir/latex_all.log +28 -0
  21. data/hikiutils_bob/latex_dir/latex_all.tex +34 -9
  22. data/hikiutils_bob/latex_dir/sync.aux +16 -16
  23. data/hikiutils_bob/latex_dir/sync.tex +4 -4
  24. data/hikiutils_yamane/Rakefile +14 -2
  25. data/hikiutils_yamane/abstract.hiki +3 -3
  26. data/hikiutils_yamane/discussion.hiki +9 -0
  27. data/hikiutils_yamane/hikiutils_yamane.hiki +8 -10
  28. data/hikiutils_yamane/introduction.hiki +1 -1
  29. data/hikiutils_yamane/latex_dir/abstract.tex +3 -3
  30. data/hikiutils_yamane/latex_dir/{%CA%FD/313/241.aux → discussion.aux} +8 -7
  31. data/hikiutils_yamane/latex_dir/discussion.tex +9 -0
  32. data/hikiutils_yamane/latex_dir/hikiutils_yamane.aux +3 -6
  33. data/hikiutils_yamane/latex_dir/hikiutils_yamane.log +50 -59
  34. data/hikiutils_yamane/latex_dir/hikiutils_yamane.pdf +0 -0
  35. data/hikiutils_yamane/latex_dir/hikiutils_yamane.synctex.gz +0 -0
  36. data/hikiutils_yamane/latex_dir/hikiutils_yamane.tex +4 -7
  37. data/hikiutils_yamane/latex_dir/hikiutils_yamane.toc +21 -21
  38. data/hikiutils_yamane/latex_dir/introduction.tex +1 -1
  39. data/hikiutils_yamane/latex_dir/method.aux +46 -0
  40. data/hikiutils_yamane/latex_dir/method.tex +247 -0
  41. data/hikiutils_yamane/latex_dir/results.aux +49 -0
  42. data/hikiutils_yamane/latex_dir/results.tex +249 -0
  43. data/hikiutils_yamane/method.hiki +234 -0
  44. data/hikiutils_yamane/results.hiki +225 -0
  45. data/hikiutils_yamane/toc.hiki +0 -1
  46. data/lib/hikiutils/version.rb +1 -1
  47. data/lib/hikiutils_thor.rb~ +37 -37
  48. data/lib/templates/Rakefile_hiki_sync +32 -17
  49. data/lib/templates/mi_key_bind_setting +1 -0
  50. metadata +33 -19
  51. data/hikiutils_yamane/Rakefile~ +0 -477
  52. data/hikiutils_yamane/command.hiki +0 -111
  53. data/hikiutils_yamane/compare.hiki +0 -116
  54. data/hikiutils_yamane/latex_dir/command.aux +0 -35
  55. data/hikiutils_yamane/latex_dir/command.log +0 -0
  56. data/hikiutils_yamane/latex_dir/command.tex +0 -123
  57. data/hikiutils_yamane/latex_dir/compare.aux +0 -30
  58. data/hikiutils_yamane/latex_dir/compare.tex +0 -123
  59. data/hikiutils_yamane/latex_dir/optparse.aux +0 -31
  60. data/hikiutils_yamane/latex_dir/optparse.tex +0 -119
  61. data/hikiutils_yamane/latex_dir/thor.aux +0 -32
  62. data/hikiutils_yamane/latex_dir/thor.tex +0 -110
  63. data/hikiutils_yamane/optparse.hiki +0 -114
  64. data/hikiutils_yamane/thor.hiki +0 -107
@@ -1,19 +1,22 @@
1
1
  \relax
2
- \@writefile{toc}{\contentsline {section}{\numberline {3}実際の最終形態(卒論=pdf)への変換}{13}}
3
- \@writefile{toc}{\contentsline {subsection}{\numberline {3.1}install}{13}}
4
- \@writefile{toc}{\contentsline {subsection}{\numberline {3.2}rake latex(個別ファイルの変換)}{14}}
5
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.1}注意}{14}}
6
- \@writefile{toc}{\contentsline {subsection}{\numberline {3.3}rake latex\_all手順(ディレクトリー内の一括変換)}{15}}
7
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.1}下準備}{15}}
8
- \@writefile{toc}{\contentsline {paragraph}{head.tex}{16}}
9
- \@writefile{toc}{\contentsline {paragraph}{pre.tex}{16}}
10
- \@writefile{toc}{\contentsline {paragraph}{mainのpreamble部}{16}}
11
- \@writefile{toc}{\contentsline {subsection}{\numberline {3.4}補助コマンドの解説}{17}}
12
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}rake reset\_latex\_dir(latex\_dirのゴミ掃除)}{17}}
13
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}wrap関係}{17}}
14
- \@writefile{toc}{\contentsline {subsection}{\numberline {3.5}開発メモ(2017/2/8)}{18}}
2
+ \@writefile{toc}{\contentsline {section}{\numberline {3}実際の最終形態(卒論=pdf)への変換}{14}}
3
+ \@writefile{toc}{\contentsline {subsection}{\numberline {3.1}install}{14}}
4
+ \@writefile{toc}{\contentsline {subsection}{\numberline {3.2}rake latex(個別ファイルの変換)}{15}}
5
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.1}注意}{15}}
6
+ \@writefile{toc}{\contentsline {subsection}{\numberline {3.3}rake latex\_all手順(ディレクトリー内の一括変換)}{16}}
7
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.1}下準備}{16}}
8
+ \@writefile{toc}{\contentsline {paragraph}{head.tex}{17}}
9
+ \@writefile{toc}{\contentsline {paragraph}{pre.tex}{17}}
10
+ \@writefile{toc}{\contentsline {paragraph}{mainのpreamble部}{17}}
11
+ \@writefile{toc}{\contentsline {subsection}{\numberline {3.4}補助コマンドの解説}{18}}
12
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}rake reset\_latex\_dir(latex\_dirのゴミ掃除)}{18}}
13
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}wrap関係}{18}}
14
+ \@writefile{toc}{\contentsline {subsection}{\numberline {3.5}参照のシステム}{19}}
15
+ \@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces 参照機能を利用した場合の変換後の表示.}}{20}}
16
+ \newlabel{fig:CiteRefSystems}{{5}{20}}
17
+ \newlabel{default}{{5}{20}}
15
18
  \@setckpt{latex_all}{
16
- \setcounter{page}{19}
19
+ \setcounter{page}{21}
17
20
  \setcounter{equation}{0}
18
21
  \setcounter{enumi}{4}
19
22
  \setcounter{enumii}{1}
@@ -27,8 +30,8 @@
27
30
  \setcounter{subsubsection}{0}
28
31
  \setcounter{paragraph}{0}
29
32
  \setcounter{subparagraph}{0}
30
- \setcounter{figure}{4}
33
+ \setcounter{figure}{5}
31
34
  \setcounter{table}{1}
32
- \setcounter{lstnumber}{10}
35
+ \setcounter{lstnumber}{11}
33
36
  \setcounter{lstlisting}{0}
34
37
  }
@@ -0,0 +1,28 @@
1
+ This is e-pTeX, Version 3.14159265-p3.7-160201-2.6 (utf8.euc) (TeX Live 2016) (preloaded format=platex 2017.1.26) 10 FEB 2017 16:46
2
+ entering extended mode
3
+ restricted \write18 enabled.
4
+ file:line:error style messages enabled.
5
+ %&-line parsing enabled.
6
+ **latex_all.tex
7
+ (./latex_all.tex
8
+ pLaTeX2e <2016/11/29> (based on LaTeX2e <2017/01/01>)
9
+ Babel <3.9r> and hyphenation patterns for 83 language(s) loaded.
10
+ ./latex_all.tex:2: Undefined control sequence.
11
+ l.2 \section
12
+ {実際の最終形態(卒論=pdf)への変換}
13
+ ?
14
+ ./latex_all.tex:2: Emergency stop.
15
+ l.2 \section
16
+ {実際の最終形態(卒論=pdf)への変換}
17
+ End of file on the terminal!
18
+
19
+
20
+ Here is how much of TeX's memory you used:
21
+ 4 strings out of 493683
22
+ 50 string characters out of 6149653
23
+ 53892 words of memory out of 5000000
24
+ 3671 multiletter control sequences out of 15000+600000
25
+ 7511 words of font info for 31 fonts, out of 8000000 for 9000
26
+ 929 hyphenation exceptions out of 8191
27
+ 5i,0n,3p,58b,8s stack positions out of 5000i,500n,10000p,200000b,80000s
28
+ No pages of output.
@@ -122,7 +122,7 @@ hiki -i
122
122
 
123
123
  \paragraph{head.tex}
124
124
  題目,学生番号,氏名を変更する.年月をチェック.
125
- \\setcounter{tocdepth}はtocをどこまで表示するかのレベルに対応します.
125
+ \\setcounter\{tocdepth\}はtocをどこまで表示するかのレベルに対応します.
126
126
  原稿作成時は階層がわかりやすいように深めにしていますが,本番では2程度で十分です.
127
127
  \begin{lstlisting}[style=customTeX,basicstyle={\scriptsize\ttfamily}]
128
128
  bob% cat head.tex
@@ -197,7 +197,9 @@ wrapfigureでtextの回りこみや位置調整を行う必要があります.
197
197
  \item rake change\_wrap(wrapで変換)
198
198
  \item rake latex\_base(latexに変換するだけの下請け)
199
199
  \item rake latex\_wrap(figure環境だけをwrapfig環境に変える)
200
- \end{itemize}\begin{lstlisting}[style=customRuby,basicstyle={\scriptsize\ttfamily}]
200
+ \end{itemize}
201
+ Rakefile内の記述は
202
+ \begin{lstlisting}[style=customRuby,basicstyle={\scriptsize\ttfamily}]
201
203
  desc "latex conversion FILE1"
202
204
  task :latex => [:latex_base] do
203
205
  exit
@@ -208,17 +210,40 @@ task :latex_wrap => [:latex_base, :change_wrap] do
208
210
  exit
209
211
  end
210
212
  \end{lstlisting}
213
+ となっています.つまり,:latex\_baseをした後に,:change\_wrapを呼び出しています.
214
+
211
215
  完成例はこちらです.
212
216
 
213
217
  \begin{itemize}
214
218
  \item \verb|{{attach_anchor(calphad_bob.pdf,hikiutils_bob)}}|
215
219
  \end{itemize}
216
- \subsection{開発メモ(2017/2/8)}
220
+ 発表会の予稿ハンドアウトなどではこれが不可欠です.
221
+
222
+ \subsection{参照のシステム}
223
+ latexへ文献参照を渡すために,下記のようなフォーマットでの記述を行ってください.
224
+ \begin{lstlisting}[style=customCsh,basicstyle={\scriptsize\ttfamily}]
225
+ 図{{ref(fig:SystemOverview)}}に卒論編集システムの概観を示しています.
226
+
227
+ !!!caption: (fig:SystemOverview)卒論編集システムの概観.
228
+ {{attach_view(hikiutils_bob.006.jpeg)}}
229
+
230
+ *基本的な使い方{{cite(listings1)}}
231
+ *独自のカラー化{{cite(listings2)}}
232
+ !reference:
233
+ :listings1:[[http://d.hatena.ne.jp/mallowlabs/20061226/1167137637]]
234
+ :listings2:[[http://www.ipc.akita-nct.ac.jp/~yamamoto/comp/latex/make_doc/source/source.html]]
235
+ \end{lstlisting}
217
236
  \begin{itemize}
218
- \item hikiutilsにlatex2hiki, hiki2latexも統合すべきか?
219
- \item \verb|{{ref}}| \verb|{{cite}}|を組み込む
220
- \item hikiにではなく,rake syncで変換
221
- \item listingsの調整
222
- \item jlistingは,\\lstsetや\\lstdefinestyleで引っかかってダメ
223
- \item basicstyle={\small\ttfamily}これ効いてんにゃろか??
237
+ \item caption以下の丸括弧内にタグを書きます.
238
+ \item fig:以下のタグにsnake nameは使えません.Camelで書くようにしてください.
239
+ \item refでそれを参照します.
240
+ \item citeの方も同じです.
241
+ \item reference:以下の:...:記述がlatexではbibliographyに変わります.
224
242
  \end{itemize}
243
+ これをsync, all\_latexをかけると図\ref{fig:CiteRefSystems}のようになります.latexの文献参照(cite, bibliography),図表番号の参照(ref, label)が正常に処理されていることが確認できます.また,web表示した場合でもそれほど違和感なく読めるでしょう.
244
+
245
+ \begin{figure}[htbp]\begin{center}
246
+ \includegraphics[width=10cm,bb= 0 0 737 553]{../figs/./hikiutils_bob.007.jpeg}
247
+ \caption{参照機能を利用した場合の変換後の表示.}
248
+ \label{fig:CiteRefSystems}
249
+ \label{default}\end{center}\end{figure}
@@ -1,39 +1,39 @@
1
1
  \relax
2
2
  \@writefile{toc}{\contentsline {section}{\numberline {1}イントロダクション}{4}}
3
- \@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces 卒論編集システムの基本概念.}}{4}}
4
- \newlabel{default}{{1}{4}}
5
- \@writefile{toc}{\contentsline {section}{\numberline {2}hikiとの同期}{5}}
6
- \@writefile{toc}{\contentsline {subsection}{\numberline {2.1}hikiutilsのinstall}{5}}
3
+ \@writefile{toc}{\contentsline {section}{\numberline {2}hikiとの同期}{4}}
4
+ \@writefile{toc}{\contentsline {subsection}{\numberline {2.1}hikiutilsのinstall}{4}}
5
+ \@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces 卒論編集システムの基本概念.}}{5}}
6
+ \newlabel{default}{{1}{5}}
7
7
  \@writefile{toc}{\contentsline {subsection}{\numberline {2.2}個別ディレクトリーの構成}{5}}
8
8
  \@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces hikiutils\_bobのディレクトリー構成.}}{6}}
9
9
  \newlabel{default}{{2}{6}}
10
10
  \@writefile{toc}{\contentsline {subsection}{\numberline {2.3}システムの概要}{6}}
11
- \@writefile{toc}{\contentsline {subsection}{\numberline {2.4}一般的な執筆手順}{6}}
12
11
  \@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces システムの概要.}}{7}}
13
12
  \newlabel{default}{{3}{7}}
14
- \@writefile{toc}{\contentsline {subsection}{\numberline {2.5}rakeが用意しているタスク}{7}}
13
+ \@writefile{toc}{\contentsline {subsection}{\numberline {2.4}一般的な執筆手順}{7}}
14
+ \@writefile{toc}{\contentsline {subsection}{\numberline {2.5}rakeが用意しているタスク}{8}}
15
15
  \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.1}rake sync}{8}}
16
16
  \@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces }}{8}}
17
17
  \newlabel{default}{{1}{8}}
18
18
  \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.2}rake force\_sync}{8}}
19
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.3}rake chenv}{8}}
20
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.4}rake convert VAL DIR}{8}}
19
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.3}rake chenv}{9}}
20
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.4}rake convert VAL DIR}{9}}
21
21
  \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.5}rake increment}{9}}
22
22
  \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.6}rake number}{9}}
23
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.7}rake open [FILE] (new)}{9}}
24
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.8}rake touch [FILE](new)}{9}}
25
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.9}rake github(new)}{9}}
23
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.7}rake open [FILE] (new)}{10}}
24
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.8}rake touch [FILE](new)}{10}}
25
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.9}rake github(new)}{10}}
26
26
  \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.10}rake reset\_hiki(new)}{10}}
27
27
  \@writefile{toc}{\contentsline {subsection}{\numberline {2.6}githubによる同期}{10}}
28
- \@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces 卒論編集時のgithubによる同期のシーケンス図.}}{10}}
29
- \newlabel{default}{{4}{10}}
28
+ \@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces 卒論編集時のgithubによる同期のシーケンス図.}}{11}}
29
+ \newlabel{default}{{4}{11}}
30
30
  \@writefile{toc}{\contentsline {subsection}{\numberline {2.7}hikiutil関連のヘルプ}{11}}
31
31
  \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.1}hikiで卒論を書くときの初期化と掟}{11}}
32
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.2}図表に関する制約}{11}}
32
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.2}図表に関する制約}{12}}
33
33
  \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.3}同期に関する制約}{12}}
34
- \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.4}テキストに関する制約}{12}}
34
+ \@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.4}テキストに関する制約}{13}}
35
35
  \@setckpt{sync}{
36
- \setcounter{page}{13}
36
+ \setcounter{page}{14}
37
37
  \setcounter{equation}{0}
38
38
  \setcounter{enumi}{4}
39
39
  \setcounter{enumii}{1}
@@ -7,7 +7,7 @@
7
7
  本資料では,卒論の編集作業を効率化する図に示すようなシステムの使い方を紹介します.
8
8
 
9
9
  \begin{figure}[htbp]\begin{center}
10
- \includegraphics[width=10cm,bb=]{../figs/./hikiutils_bob.002.jpeg}
10
+ \includegraphics[width=10cm,bb= 0 0 737 553]{../figs/./hikiutils_bob.002.jpeg}
11
11
  \caption{卒論編集システムの基本概念.}
12
12
  \label{default}\end{center}\end{figure}
13
13
  例えば,卒業生をyamaneとしましょう.yamaneの個人のMacの自分のdirectory(hikiutils\_yamane)に幾つかのファイルを作成して卒論を書いているとします.これを指導教官(bob)が編集するとします.この同期には,Githubにより提供される共同作業環境を使います.これだけでは編集中の文書の体裁がわかりにくいでしょう.そこで,hikiシステムにより容易にwebブラウザ上に完成形を表示しつつ執筆することが求められます.このような環境を提供するのが,本システムです.
@@ -28,7 +28,7 @@ hiki -v
28
28
  図にhikiutils\_bobのディレクトリー構成を示す.
29
29
 
30
30
  \begin{figure}[htbp]\begin{center}
31
- \includegraphics[width=10cm,bb=]{../figs/./hikiutils_bob.003.jpeg}
31
+ \includegraphics[width=10cm,bb= 0 0 737 553]{../figs/./hikiutils_bob.003.jpeg}
32
32
  \caption{hikiutils\_bobのディレクトリー構成.}
33
33
  \label{default}\end{center}\end{figure}
34
34
  コマンド
@@ -56,7 +56,7 @@ keynoteで図を作成して,hikiutils\_bob.hikiに文章を記述していく
56
56
  図に論文作成システムの概要を示している.gemのなかに作られた例えば,hikiutils\_bobなどのdirectory内にRakefileなどを次節のコマンドを使って入れる.このdirectoryでhikiutils\_bob.hikiなどのhikiフォーマットのdocumentを作っていく.rake syncによってwebを提供するhikiのtext, attach, parserなどと同期する.一方,最終の卒業論文形態であるpdfにするためにlatex\_dir内に*.texを生成する.これは次章で解説する.
57
57
 
58
58
  \begin{figure}[htbp]\begin{center}
59
- \includegraphics[width=10cm,bb=]{../figs/./hikiutils_bob.004.jpeg}
59
+ \includegraphics[width=10cm,bb= 0 0 737 553]{../figs/./hikiutils_bob.004.jpeg}
60
60
  \caption{システムの概要.}
61
61
  \label{default}\end{center}\end{figure}
62
62
  \subsection{一般的な執筆手順}
@@ -188,7 +188,7 @@ remove hikiutils_bob_toc[ynqlA]?
188
188
  これらの作業の流れを示すシーケンス図は次の通りである.
189
189
 
190
190
  \begin{figure}[htbp]\begin{center}
191
- \includegraphics[width=10cm,bb=]{../figs/./hikiutils_bob.005.jpeg}
191
+ \includegraphics[width=10cm,bb= 0 0 737 553]{../figs/./hikiutils_bob.005.jpeg}
192
192
  \caption{卒論編集時のgithubによる同期のシーケンス図.}
193
193
  \label{default}\end{center}\end{figure}
194
194
  git init, forkが済んでいると仮定して同期の手順を以下に示す.
@@ -2,6 +2,8 @@
2
2
  require 'systemu'
3
3
  require 'tempfile'
4
4
  require 'colorize'
5
+ require 'coderay'
6
+
5
7
  # -*- coding: utf-8 -*-
6
8
  begin
7
9
  $hiki_dir = File.readlines('./.hikirc')[0].chomp
@@ -66,9 +68,11 @@ end
66
68
  desc "latex_dirのゴミを掃除"
67
69
  task :reset_latex_dir do
68
70
  system "mv latex_dir/head.tex ."
71
+ system "mv latex_dir/jlisting.sty ."
69
72
  system "rm -rf latex_dir"
70
73
  system "mkdir latex_dir"
71
74
  system "mv head.tex latex_dir/"
75
+ system "mv jlisting.sty latex_dir/"
72
76
  system "rake latex_all"
73
77
  end
74
78
 
@@ -116,7 +120,8 @@ end
116
120
 
117
121
  desc "FILE.hikiあるいはhikiファイルをedtiorで開く"
118
122
  task :open do
119
- if file=ARGV[1]
123
+ if file=ARGV[1]
124
+ file += '.hiki' if file.split(".")[1]==nil
120
125
  system "open -a mi #{file}"
121
126
  else
122
127
  Dir.entries('.').each{|file|
@@ -443,7 +448,14 @@ task :self_copy do
443
448
  cp_files.each{|files|
444
449
  p source = files[0]
445
450
  p target = File.join('/Users/bob/Github/hikiutils/lib/templates/',files[1])
446
- FileUtils.cp(source,target,:verbose=>true)
451
+ command = "diff #{source} #{target}"
452
+ status, stdout, stderr=systemu command
453
+ if stdout!=''
454
+ puts command.red
455
+ puts CodeRay.scan(stdout, :Diff).term
456
+ print " Are you sure to save #{source}? [Yn] ".red
457
+ FileUtils.cp(source,target,:verbose=>true) if STDIN.gets.chomp=='Y'
458
+ end
447
459
  }
448
460
  end
449
461
 
@@ -1,8 +1,8 @@
1
1
  !概要
2
- 研究室内の内部文書,あるいは外部への宣伝資料,さらにwikipediaのように重要な研究成果の発信などに西谷研ではhiki systemを利用しています.
2
+ 研究室内の内部文書,あるいは外部への宣伝資料,さらにwikipediaのように重要な研究成果の発信などに西谷研ではhiki systemを利用する.
3
3
  これは初心者にも覚えやすい直感的な操作であるが,慣れてくるとテキスト編集や画面更新にいちいちweb画面へ移行せねばならず,編集の思考が停止する.
4
4
  そこで,編集操作がCUIで完結させるためにテキスト編集に優れたeditorとの連携や,terminal上のshell commandと連携しやすいhikiutilsが開発された.
5
5
  しかし,そのユーザーインターフェースにはコマンドが直感的でないという問題がある.
6
6
  そこで,本研究ではコマンドラインツール作成ライブラリを変更することでコマンドを実装し直し直感的なコマンドにすることを目的とした.
7
- optparseで作成されているhikiutilsをthorで作成し,そして2つのコマンドラインツール作成ライブラリで作成されたhikiutilsを比較する.
8
- 研究結果は,thorのほうがコマンドを簡単に定義することができ,またコードも短くできた.
7
+ optparseで作成されているhikiutilsをThorで作成し,そして2つのコマンドラインツール作成ライブラリで作成されたhikiutilsを比較する.
8
+ 研究結果は,Thorのほうがコマンドを簡単に定義することができ,またコードも短くできた.
@@ -0,0 +1,9 @@
1
+ !optparseからThorへの移行
2
+
3
+ Thorとoptparseでのコードの違いは以上のとおりであるが,コードからもThorのほうが短くなっていることが分かる.
4
+ しかし,Thorの問題点はメソッド名がコマンドとなるため,1つしか定義できないことである.
5
+ これを解決するためにmapを用い,複数のコマンドを定義できるようにした.
6
+ 一方,optparseでは別のコマンドを定義するにはfizzbuzzのoptparseのコードのようにコマンドの解析を行う必要がある.
7
+ つまり,optparseでのコマンド定義はThorより複雑で記述が長くなるということである.
8
+ それに対してThorのほうが全体的にもコードが短くなり,コマンドの定義も簡単に行うことができる.
9
+ また,実行手順も分かりやすくコードが読みやすいため書き換えもすぐ行うことができるので,より直感的なコマンドを実装することも可能となった.
@@ -4,22 +4,20 @@
4
4
 
5
5
  ![[概要|hikiutils_yamane_abstract]]
6
6
  ![[序論|hikiutils_yamane_introduction]]
7
- !方法
7
+ ![[方法|hikiutils_yamane_method]]
8
8
  //他人の仕事,あるものを探す
9
- !![[optparseとthorの比較|hikiutils_yamane_compare]]
10
- !![[既存のhikiutilsのコマンド解説|hikiutils_yamane_optparse]]
11
- !結果
9
+ //!![[optparseとthorの比較|hikiutils_yamane_compare]]
10
+ //!![[既存のhikiutilsのコマンド解説|hikiutils_yamane_optparse]]
11
+ ![[結果|hikiutils_yamane_results]]
12
12
  //自分の仕事,ないものをつくる
13
- !![[コマンドの命名原則|hikiutils_yamane_command]]
14
- !![[hikiutilsのthorのコード解説|hikiutils_yamane_thor]]
15
-
13
+ //!![[コマンドの命名原則|hikiutils_yamane_command]]
14
+ //!![[hikiutilsのthorのコード解説|hikiutils_yamane_thor]]
15
+ ![[議論|hikiutils_yamane_discussion]]
16
16
  !reference:
17
17
  :1-1: hikidoc, https://rubygems.org/gems/hikidoc/versions/0.1.0, https://github.com/hiki/hikidoc,2017/1/30 アクセス.
18
18
  // 「hiki」,hikiwiki.org/ja/about.html ,2017/1/30 アクセス.
19
19
  // 「hikiutils」,https://rubygems.org/gems/hikiutils ,2017/1/30 アクセス.
20
20
  // 「The Ruby Toolbox」, CLI Option Parsers,https://www.ruby-toolbox.com/categories/CLI_Option_Parsers ,2017/1/30 アクセス.
21
- :1-2: 「Thorの使い方まとめ」, http://qiita.com/succi0303/items/32560103190436c9435b ,2017/1/30 アクセス.
21
+ :1-2: 「Thorの使い方まとめ」,http://qiita.com/succi0303/items/32560103190436c9435b 2015/01/14更新,2017/1/30 アクセス.
22
22
  :1-3: 「15.5. optparse - コマンドラインオプション解析器」, http://docs.python.jp/2/library/optparse.html ,2017/1/30 アクセス.
23
23
  :1-4: 「library optparse」, https://docs.ruby-lang.org/ja/latest/library/optparse.html ,2017/1/30 アクセス.
24
-
25
-
@@ -1,5 +1,5 @@
1
1
  !序論
2
- hikiは,hiki記法を用いたwiki cloneである.wikiはウォード・カニンガムが作ったwikiwikiwebを源流とするhome page制作を容易にするシステムで,hikiもwikiの基本要求仕様を満足するシステムを提供する.wikiの特徴であるweb上で編集する機能を提供する.これを便宜上hiki web systemと呼ぶ.図にある通り,一般的な表示画面の他に,編集画面が提供されており,ユーザーはこの編集画面からコンテンツを編集することが可能である.リンクやヘッダー,リスト,引用,表,図の表示などの基本テキストフォーマットが用意されている.
2
+ hikiは,hiki記法を用いたwiki cloneである.wikiはウォード・カニンガムが作ったwikiwikiwebを源流とするhome page制作を容易にするシステムで,hikiもwikiの基本要求仕様を満足するシステムを提供する.wikiの特徴であるweb上で編集する機能を提供する.これを便宜上hiki web systemと呼ぶ.図{{ref(fig:one)}}にある通り,一般的な表示画面の他に,編集画面が提供されており,ユーザーはこの編集画面からコンテンツを編集することが可能である.リンクやヘッダー,リスト,引用,表,図の表示などの基本テキストフォーマットが用意されている.
3
3
 
4
4
  hiki web systemの実際の基本動作は,hiki.cgiプログラムを介して行われている.こちらを便宜上hiki systemと呼ぶ.図{{ref(fig:one)}}に従ってhiki systemの動作概要を説明する.hiki systemは,data/textに置かれた書かれたプレーンテキストをhtmlへ変換する.この変換はhikidoc{{cite(1-1)}}というhikiフォーマットconverterを使っている.また,添付書類はcache/attachに,一度フォーマットしたhtmlはparserに置かれており,それらを参照してhtmlを表示する画面をhiki.cgiは作っている.さらにhiki systemでは検索機能,自動リンク作成などが提供されている
5
5
 
@@ -1,9 +1,9 @@
1
1
  \section{概要}
2
- 研究室内の内部文書,あるいは外部への宣伝資料,さらにwikipediaのように重要な研究成果の発信などに西谷研ではhiki systemを利用しています.
2
+ 研究室内の内部文書,あるいは外部への宣伝資料,さらにwikipediaのように重要な研究成果の発信などに西谷研ではhiki systemを利用する.
3
3
  これは初心者にも覚えやすい直感的な操作であるが,慣れてくるとテキスト編集や画面更新にいちいちweb画面へ移行せねばならず,編集の思考が停止する.
4
4
  そこで,編集操作がCUIで完結させるためにテキスト編集に優れたeditorとの連携や,terminal上のshell commandと連携しやすいhikiutilsが開発された.
5
5
  しかし,そのユーザーインターフェースにはコマンドが直感的でないという問題がある.
6
6
  そこで,本研究ではコマンドラインツール作成ライブラリを変更することでコマンドを実装し直し直感的なコマンドにすることを目的とした.
7
- optparseで作成されているhikiutilsをthorで作成し,そして2つのコマンドラインツール作成ライブラリで作成されたhikiutilsを比較する.
8
- 研究結果は,thorのほうがコマンドを簡単に定義することができ,またコードも短くできた.
7
+ optparseで作成されているhikiutilsをThorで作成し,そして2つのコマンドラインツール作成ライブラリで作成されたhikiutilsを比較する.
8
+ 研究結果は,Thorのほうがコマンドを簡単に定義することができ,またコードも短くできた.
9
9
 
@@ -1,21 +1,22 @@
1
1
  \relax
2
- \@setckpt{方法}{
3
- \setcounter{page}{6}
2
+ \@writefile{toc}{\contentsline {section}{\numberline {5}optparseからThorへの移行}{23}}
3
+ \@setckpt{discussion}{
4
+ \setcounter{page}{24}
4
5
  \setcounter{equation}{0}
5
- \setcounter{enumi}{0}
6
+ \setcounter{enumi}{2}
6
7
  \setcounter{enumii}{0}
7
8
  \setcounter{enumiii}{0}
8
9
  \setcounter{enumiv}{0}
9
10
  \setcounter{footnote}{0}
10
11
  \setcounter{mpfootnote}{0}
11
12
  \setcounter{part}{0}
12
- \setcounter{section}{2}
13
+ \setcounter{section}{5}
13
14
  \setcounter{subsection}{0}
14
15
  \setcounter{subsubsection}{0}
15
16
  \setcounter{paragraph}{0}
16
17
  \setcounter{subparagraph}{0}
17
- \setcounter{figure}{1}
18
- \setcounter{table}{0}
19
- \setcounter{lstnumber}{1}
18
+ \setcounter{figure}{7}
19
+ \setcounter{table}{1}
20
+ \setcounter{lstnumber}{14}
20
21
  \setcounter{lstlisting}{0}
21
22
  }
@@ -0,0 +1,9 @@
1
+ \section{optparseからThorへの移行}
2
+ Thorとoptparseでのコードの違いは以上のとおりであるが,コードからもThorのほうが短くなっていることが分かる.
3
+ しかし,Thorの問題点はメソッド名がコマンドとなるため,1つしか定義できないことである.
4
+ これを解決するためにmapを用い,複数のコマンドを定義できるようにした.
5
+ 一方,optparseでは別のコマンドを定義するにはfizzbuzzのoptparseのコードのようにコマンドの解析を行う必要がある.
6
+ つまり,optparseでのコマンド定義はThorより複雑で記述が長くなるということである.
7
+ それに対してThorのほうが全体的にもコードが短くなり,コマンドの定義も簡単に行うことができる.
8
+ また,実行手順も分かりやすくコードが読みやすいため書き換えもすぐ行うことができるので,より直感的なコマンドを実装することも可能となった.
9
+
@@ -1,12 +1,9 @@
1
1
  \relax
2
2
  \@input{abstract.aux}
3
3
  \@input{introduction.aux}
4
- \@writefile{toc}{\contentsline {section}{\numberline {3}方法}{7}}
5
- \@input{compare.aux}
6
- \@input{optparse.aux}
7
- \@writefile{toc}{\contentsline {section}{\numberline {4}結果}{15}}
8
- \@input{command.aux}
9
- \@input{thor.aux}
4
+ \@input{method.aux}
5
+ \@input{results.aux}
6
+ \@input{discussion.aux}
10
7
  \bibcite{1-1}{1}
11
8
  \bibcite{1-2}{2}
12
9
  \bibcite{1-3}{3}