2016年1月30日

手元の祝鳥をあげてみた.いくつかバグ修正と,補完マクロを調整中.まだ補完マクロの動きが気持ち悪いのが多いので,もうちょっと考えてみるけど.

25 件のコメント:

liki さんのコメント...

1/30バージョン使ってみました。前回気づいた点は問題なく動作しています。
\documentclassの補完で[]オプションのリストで最初の項目だけ[tab]で選択入力できないようです。
他にも@multiargs指定した最初の項目は[tab]で入力されないようです。

liki さんのコメント...

Ctrl+Spaceでの補完の場合、補完後の改行がされないようです。
\begin{

hoge

Ctrl+Space補完後
\begin{align}

\end{align}hoge

abenori さんのコメント...

> \documentclassの補完で[]オプションのリストで最初の項目だけ[tab]で選択入力できないようです。
調べてみます.

> Ctrl+Spaceでの補完の場合、補完後の改行がされないようです。
設定ファイルから改行を除いてみたせいなんですが,やっぱりあった方が良いですかね,
\begin{env1}

\end{env2}
でenv1の場所で起動したときの挙動とも関連しているので,もう少しいじってみます.

Xp さんのコメント...

Xp環境では,初期設定で秀丸の保護違反になります。
2015/4/9版まではXpで動くのですが。
コンパイルオプションのみでは対応不能ということでしょうか?

abenori さんのコメント...

あれ,保護違反だとバグか何かかもしれませんね.落ちている場所を特定したいので,次のことを行ってもらっても良いですか?
1 macrodll.dllをhttps://onedrive.live.com/redir?resid=4FABCB4EC4FA1E70!21860&authkey=!AIfnovHX5Cicrak&ithint=folder%2cpdfにあるものに入れ替える.
2 http://www.vector.co.jp/soft/win95/prog/se046776.html からDBConを落として解凍,起動しておく.
3 落ちる手順を実行してみる
4 DBConの中身をはりつけるか何かしてこちらに知らせる(個人情報とかあれば消してください).
一応3の手順も教えてもらえるとありがたいです.

Xp さんのコメント...

0130版をmacroフォルダにコピーして,秀丸(8.56)からCtrl+tで祝鳥を呼び出しプログラムの初期設定→はいを選択すると,保護違反で秀丸が異常終了します。
DBConの表示は下記の通りです。

macrodll:SETHMJREDLL: path = `c:\program files\hidemaru\hmjre.dll'
macrodll.dll:FILE_CREATEDIR: dir = `c:\program files\hidemaru\macro\fortex\ini\Xp

と表示されています

abenori さんのコメント...

> macrodll.dll:FILE_CREATEDIR: dir = `c:\program files\hidemaru\macro\fortex\ini\Xp
これ,実際には最後に'がついていたりしますか?

Xp さんのコメント...

すいません
macrodll.dll:FILE_CREATEDIR: dir = `c:\program files\hidemaru\macro\fortex\ini\Xp Xp\'
でした
最後は ユーザー名\' です

abenori さんのコメント...

上のdllをもう少し情報を吐くようにしてみました.同じことを試してもらって良いですか?URLは同じ
https://onedrive.live.com/redir?resid=4FABCB4EC4FA1E70!21860&authkey=!AIfnovHX5Cicrak&ithint=folder%2cpdf
です.

Xp さんのコメント...

2/8版DLLに変更しましたが,下記の通りで変わっていないような・・・

macrodll:SETHMJREDLL: path = `c:\program files\hidemaru\hmjre.dll'
macrodll.dll:FILE_CREATEDIR: dir = `c:\program files\hidemaru\macro\fortex\ini\Xp Xp\'

abenori さんのコメント...

更にもう少し出すようにしてみました.同じようにしてもらっても良いでしょうか?
(ちょっとコードも変更したので,運が良いと動いちゃうかもしれません.)

Xp さんのコメント...

2016/2/8 22:19 版 macrodll.dllを入れました
macrodll:SETHMJREDLL: path = `c:\program files\hidemaru\hmjre.dll'
macrodll.dll:FILE_CREATEDIR: dir = `c:\program files\hidemaru\macro\fortex\ini\Xp Xp\'

ちなみにfortexフォルダ内にiniフォルダなども出来ていません。

abenori さんのコメント...

あれ,これでも駄目ですか…….とりあえず一行ごとにメッセージを出すようにしてみたので,もう一度試してもらえますか?(何度もすみません.)

Xp さんのコメント...

いえいえ,対応していただいて有り難いです。メッセージは,

macrodll:SETHMJREDLL: path = `c:\program files\hidemaru\hmjre.dll'
macrodll.dll:FILE_CREATEDIR: dir = `c:\program files\hidemaru\macro\fortex\ini\xp xp\'
CHECK_STRING
Call CreateDir
CreateDir start
TransRegularPath1

になりました。

abenori さんのコメント...

ありがとうございます.理由がわかりましたので,後で対処します.

abenori さんのコメント...

すみません,遅くなりました.新しいmacrodll.dllを同じ場所におきましたので,また試してみてください.これで大丈夫だと思います.(dbconはもう捨ててもらって良いです.)

Xp さんのコメント...

Xpへの対応,有り難うございます。
初期設定は完走しましたが,Ctrl+tでのコンパイルに失敗します。
(これまでと同じく,保護違反がでて秀丸が終了します)

エラーの原因のWebページも参照しましたが,当方でVC++2010にてソースからコンパイルすれば解決するのでしょうか?

abenori さんのコメント...

すみません,まだstatic変数がごろごろしていました.もう一度直したのでまた同じURLからとってきてください.

> 当方でVC++2010にてソースからコンパイルすれば解決するのでしょうか?
可能性はありますが,2010ではもうコンパイルが通らないかもしれません.

Xp さんのコメント...

試しました。
 コンパイルが全滅
 メインメニューからのプログラム設定も同様にダメ,です。
宜しくお願いします。
VC2010でのコンパイルは,なんだか沢山エラーが出て大変そうです・・・

abenori さんのコメント...

なかなか手強いですね…….もう一度メッセージが出るバージョンにしてみたので,またdbconとともにお願いしても良いですか?

Xp さんのコメント...

Ctrl+t T T の結果です

macrodll:SETHMJREDLL: path = `c:\program files\hidemaru\hmjre.dll'
macrodll.dll:STRING_SPLITSTR: str = `', key = `
'
String::split: value = , key =

search: from =
not found
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_SPLITSTR: str = `', key = `
'
String::split: value = , key =

search: from =
not found
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:GSUB: str = `', reg = `/', getstr = `\\', casesense = 0, word = 0
macrodll.dll:TEXPROJECT_FINDPARENTFILE: file = `D:\hoge.tex'

Xp さんのコメント...

Ctrl+t O の結果
macrodll:SETHMJREDLL: path = `c:\program files\hidemaru\hmjre.dll'
macrodll.dll:HASHSTRSTR_SET: name = `DEFAULTPROGRAM_PSPreview'
macrodll.dll:MENU_SETPARENT: hwnd = 328768
macrodll.dll:MENU_CLEAR:
macrodll.dll:MENU_ADDMENU: parent = `', id = `Command0_', str = `TeXToDVI'
macrodll.dll:TRANSLIKESPRINTF: str = `%m\fortex\sub\package\textodvi\compile.mac'
macrodll.dll:STRING_SPLITSTR: str = `programtype=format;format=platex.fmt;guesscompile=fortex;guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex', key = `;'
String::split: value = programtype=format;format=platex.fmt;guesscompile=fortex;guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex, key = ;
search: from = programtype=format;format=platex.fmt;guesscompile=fortex;guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
found: ;format=platex.fmt;guesscompile=fortex;guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
search: from = format=platex.fmt;guesscompile=fortex;guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
found: ;guesscompile=fortex;guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
search: from = guesscompile=fortex;guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
found: ;guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
search: from = guessmaxtimes=10;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
found: ;bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
search: from = bibtex_program=pbibtex;makeindex_program=mendex;syncsrc=synctex
found: ;makeindex_program=mendex;syncsrc=synctex
search: from = makeindex_program=mendex;syncsrc=synctex
found: ;syncsrc=synctex
search: from = syncsrc=synctex
not found
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:STRING_GETSPLITSTR:
macrodll.dll:STRING_ISMORESPLITSTR:
macrodll.dll:FILE_GETLONGPATHNAME: sfn = `C:\DOCUME~1\Xp~1\LOCALS~1\Temp\'
macrodll.dll:MENU_ADDMENU: parent = `Command0_', id = `Command0_TEXTODVI_ProgramType', str = `プログラム'
macrodll.dll:MENU_ADDMENU: parent = `Command0_TEXTODVI_ProgramType', id = `Command0_TEXTODVI_ProgramType_Format', str = `★ フォーマットファイルから選ぶ'
macrodll.dll:MATCHSTR: str = `16/02/03(水) 07:34:04', reg = `^(.*\))', getstr = `\1', casesense = 0, word = 0

abenori さんのコメント...

これでどうでしょうか?
https://onedrive.live.com/redir?resid=4FABCB4EC4FA1E70!22660&authkey=!ABF-6jweqQ-TALQ&ithint=file%2cdll

Xp さんのコメント...

概ねうまく動いています!
しばらく使用してみます。
有り難うございました。

abenori さんのコメント...

良かったです.あげていたものは最適化がされていない遅いやつなので,リリース版をおいておきました.こちらを使ってください.