hikiutils 0.2.3.13 → 0.2.3.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/hikiutils.gemspec +2 -1
- data/hikiutils_bob/Rakefile +30 -16
- data/hikiutils_bob/code.hiki +9 -30
- data/hikiutils_bob/figs/hikiutils_bob.002.jpeg +0 -0
- data/hikiutils_bob/figs/hikiutils_bob.007.jpeg +0 -0
- data/hikiutils_bob/figs/hikiutils_bob.pdf +0 -0
- data/hikiutils_bob/hikiutils_bob/hikiutils_bob.002.jpeg +0 -0
- data/hikiutils_bob/hikiutils_bob/hikiutils_bob.007.jpeg +0 -0
- data/hikiutils_bob/hikiutils_bob.key +0 -0
- data/hikiutils_bob/latex_all.hiki +33 -8
- data/hikiutils_bob/latex_dir/code.aux +7 -14
- data/hikiutils_bob/latex_dir/code.log +28 -0
- data/hikiutils_bob/latex_dir/code.tex +13 -31
- data/hikiutils_bob/latex_dir/hikiutils_bob.log +59 -50
- data/hikiutils_bob/latex_dir/hikiutils_bob.pdf +0 -0
- data/hikiutils_bob/latex_dir/hikiutils_bob.synctex.gz +0 -0
- data/hikiutils_bob/latex_dir/hikiutils_bob.toc +29 -29
- data/hikiutils_bob/latex_dir/latex_all.aux +19 -16
- data/hikiutils_bob/latex_dir/latex_all.log +28 -0
- data/hikiutils_bob/latex_dir/latex_all.tex +34 -9
- data/hikiutils_bob/latex_dir/sync.aux +16 -16
- data/hikiutils_bob/latex_dir/sync.tex +4 -4
- data/hikiutils_yamane/Rakefile +14 -2
- data/hikiutils_yamane/abstract.hiki +3 -3
- data/hikiutils_yamane/discussion.hiki +9 -0
- data/hikiutils_yamane/hikiutils_yamane.hiki +8 -10
- data/hikiutils_yamane/introduction.hiki +1 -1
- data/hikiutils_yamane/latex_dir/abstract.tex +3 -3
- data/hikiutils_yamane/latex_dir/{%CA%FD/313/241.aux → discussion.aux} +8 -7
- data/hikiutils_yamane/latex_dir/discussion.tex +9 -0
- data/hikiutils_yamane/latex_dir/hikiutils_yamane.aux +3 -6
- data/hikiutils_yamane/latex_dir/hikiutils_yamane.log +50 -59
- data/hikiutils_yamane/latex_dir/hikiutils_yamane.pdf +0 -0
- data/hikiutils_yamane/latex_dir/hikiutils_yamane.synctex.gz +0 -0
- data/hikiutils_yamane/latex_dir/hikiutils_yamane.tex +4 -7
- data/hikiutils_yamane/latex_dir/hikiutils_yamane.toc +21 -21
- data/hikiutils_yamane/latex_dir/introduction.tex +1 -1
- data/hikiutils_yamane/latex_dir/method.aux +46 -0
- data/hikiutils_yamane/latex_dir/method.tex +247 -0
- data/hikiutils_yamane/latex_dir/results.aux +49 -0
- data/hikiutils_yamane/latex_dir/results.tex +249 -0
- data/hikiutils_yamane/method.hiki +234 -0
- data/hikiutils_yamane/results.hiki +225 -0
- data/hikiutils_yamane/toc.hiki +0 -1
- data/lib/hikiutils/version.rb +1 -1
- data/lib/hikiutils_thor.rb~ +37 -37
- data/lib/templates/Rakefile_hiki_sync +32 -17
- data/lib/templates/mi_key_bind_setting +1 -0
- metadata +33 -19
- data/hikiutils_yamane/Rakefile~ +0 -477
- data/hikiutils_yamane/command.hiki +0 -111
- data/hikiutils_yamane/compare.hiki +0 -116
- data/hikiutils_yamane/latex_dir/command.aux +0 -35
- data/hikiutils_yamane/latex_dir/command.log +0 -0
- data/hikiutils_yamane/latex_dir/command.tex +0 -123
- data/hikiutils_yamane/latex_dir/compare.aux +0 -30
- data/hikiutils_yamane/latex_dir/compare.tex +0 -123
- data/hikiutils_yamane/latex_dir/optparse.aux +0 -31
- data/hikiutils_yamane/latex_dir/optparse.tex +0 -119
- data/hikiutils_yamane/latex_dir/thor.aux +0 -32
- data/hikiutils_yamane/latex_dir/thor.tex +0 -110
- data/hikiutils_yamane/optparse.hiki +0 -114
- data/hikiutils_yamane/thor.hiki +0 -107
@@ -1,19 +1,22 @@
|
|
1
1
|
\relax
|
2
|
-
\@writefile{toc}{\contentsline {section}{\numberline {3}実際の最終形態(卒論=pdf)への変換}{
|
3
|
-
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}install}{
|
4
|
-
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}rake latex(個別ファイルの変換)}{
|
5
|
-
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.1}注意}{
|
6
|
-
\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}rake latex\_all手順(ディレクトリー内の一括変換)}{
|
7
|
-
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.1}下準備}{
|
8
|
-
\@writefile{toc}{\contentsline {paragraph}{head.tex}{
|
9
|
-
\@writefile{toc}{\contentsline {paragraph}{pre.tex}{
|
10
|
-
\@writefile{toc}{\contentsline {paragraph}{mainのpreamble部}{
|
11
|
-
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}補助コマンドの解説}{
|
12
|
-
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}rake reset\_latex\_dir(latex\_dirのゴミ掃除)}{
|
13
|
-
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}wrap関係}{
|
14
|
-
\@writefile{toc}{\contentsline {subsection}{\numberline {3.5}
|
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
|
+
\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}{
|
33
|
+
\setcounter{figure}{5}
|
31
34
|
\setcounter{table}{1}
|
32
|
-
\setcounter{lstnumber}{
|
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}
|
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
|
-
|
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
|
219
|
-
\item
|
220
|
-
\item
|
221
|
-
\item
|
222
|
-
\item
|
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{
|
4
|
-
\
|
5
|
-
\@writefile{
|
6
|
-
|
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.
|
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}{
|
20
|
-
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.4}rake convert VAL DIR}{
|
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)}{
|
24
|
-
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.8}rake touch [FILE](new)}{
|
25
|
-
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.5.9}rake github(new)}{
|
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による同期のシーケンス図.}}{
|
29
|
-
\newlabel{default}{{4}{
|
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}図表に関する制約}{
|
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}テキストに関する制約}{
|
34
|
+
\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.7.4}テキストに関する制約}{13}}
|
35
35
|
\@setckpt{sync}{
|
36
|
-
\setcounter{page}{
|
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が済んでいると仮定して同期の手順を以下に示す.
|
data/hikiutils_yamane/Rakefile
CHANGED
@@ -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
|
-
|
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を
|
8
|
-
研究結果は,
|
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
|
-
|
10
|
-
|
11
|
-
|
9
|
+
//!![[optparseとthorの比較|hikiutils_yamane_compare]]
|
10
|
+
//!![[既存のhikiutilsのコマンド解説|hikiutils_yamane_optparse]]
|
11
|
+
![[結果|hikiutils_yamane_results]]
|
12
12
|
//自分の仕事,ないものをつくる
|
13
|
-
|
14
|
-
|
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の使い方まとめ」,
|
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を
|
8
|
-
研究結果は,
|
7
|
+
optparseで作成されているhikiutilsをThorで作成し,そして2つのコマンドラインツール作成ライブラリで作成されたhikiutilsを比較する.
|
8
|
+
研究結果は,Thorのほうがコマンドを簡単に定義することができ,またコードも短くできた.
|
9
9
|
|
@@ -1,21 +1,22 @@
|
|
1
1
|
\relax
|
2
|
-
\@
|
3
|
-
|
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}{
|
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}{
|
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}{
|
18
|
-
\setcounter{table}{
|
19
|
-
\setcounter{lstnumber}{
|
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
|
-
\@
|
5
|
-
\@input{
|
6
|
-
\@input{
|
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}
|