タグジャンプについてNo.05812
HOPE-1 さん 00/05/22 21:34
 
はじめまして。

秀丸エディタをワンチップマイコン(PIC)の開発に使用しています。
アセンブルした時にエラーファイルが作られ、その中にエラーを起こした部分を

Error[122]   C:\DATA\TEST.ASM 60 : Illegal opcode (status1)

のように示されます。以前のバージョン(2.18)の秀丸ではここの
行でタグジャンプがそのままできたのですが、現在のバージョン(3.05)では、Erro
r[122] を削除してからでないと、タグジャンプができません。
 これは、以前のようにそのままタグジャンプできるといいのですがどうでしょうか。

よろしくお願いします。  

[ ]
RE:05812 タグジャンプについてNo.05817
ENCODINGSHIFTJIS さん 00/05/23 11:43
 
>Error[122]   C:\DATA\TEST.ASM 60 : Illegal opcode (status1)
>のように示されます。以前のバージョン(2.18)の秀丸ではここの
>行でタグジャンプがそのままできたのですが、現在のバージョン(3.05)では、Err
>or[122] を削除してからでないと、タグジャンプができません。

   C:\DATA\TEST.ASM 60 :Error[122] Illegal opcode (status1)
に行を変形するとよいのです。
基本の考え方は、空白、: で区切られた項目の入替えです

検索文字列
^[^ ]+\f[^:]+:[^:]+:\f
置換文字列
\1\0
正規表現で
置換実行  手動でも マクロ登録実行でもあるいは

エラーリストを開く時の起動時マクロ設定で。
  秀丸.EXE /xマクロ名
 秀丸起動と同時にマクロを実行します。/xの後ろにマクロのファイル名を指定して
ください。
これは .BAT の中に書ける。

別に秀丸に取り込んで項目入替しなくとも
ASM実行の .BAT を書き換えて エラーリストのファイルを
加工するソフトをかましてもよい。簡単なことはどこでやっても
簡単。

__E__


[ ]
RE:05812 タグジャンプについてNo.05822
秀丸担当 さん 00/05/24 18:38
 
>行でタグジャンプがそのままできたのですが、現在のバージョン(3.05)では、Err
>or[122] を削除してからでないと、タグジャンプができません。
> これは、以前のようにそのままタグジャンプできるといいのですがどうでしょうか。

タグジャンプの判断方法はいろいろバージョンによって変更していて、
現在のV3.05に落ち着いています。
またここで判断方法を変更すると別の方から苦情が来るかもしれない
ので、もうあまり変更したくないのですが、前にできていたものがで
きないというのはまずい気がするので検討しておきます。

[ ]
RE:05817 タグジャンプについてNo.05826
HOPE-1 さん 00/05/25 15:52
 

>C:\DATA\TEST.ASM 60 :Error[122] Illegal opcode (status1)
>に行を変形するとよいのです。
>基本の考え方は、空白、: で区切られた項目の入替えです
>
>検索文字列
>^[^ ]+\f[^:]+:[^:]+:\f
>置換文字列
>\1\0
>正規表現で
>置換実行  手動でも マクロ登録実行でもあるいは

ENCODINGSHIFTJISさん ありがとうございます。

今までマクロを使ったこたがありませんでしたので、
てこずりましたが、何とかできました。

ありがとうございました。



[ ]
RE:05822 タグジャンプについてNo.05827
HOPE-1 さん 00/05/25 15:57
 
>
>タグジャンプの判断方法はいろいろバージョンによって変更していて、
>現在のV3.05に落ち着いています。
>またここで判断方法を変更すると別の方から苦情が来るかもしれない
>ので、もうあまり変更したくないのですが、前にできていたものがで
>きないというのはまずい気がするので検討しておきます。

秀丸担当さん、わかりました。
ありがとうございます。




[ ]
RE:05822 タグジャンプについてNo.06984
える さん 00/12/06 06:10
 
>>行でタグジャンプがそのままできたのですが、現在のバージョン(3.05)では、Er
>ror[122] を削除してからでないと、タグジャンプができません。
>> これは、以前のようにそのままタグジャンプできるといいのですがどうでしょう
>か。
>タグジャンプの判断方法はいろいろバージョンによって変更していて、
>現在のV3.05に落ち着いています。
>またここで判断方法を変更すると別の方から苦情が来るかもしれない
>ので、もうあまり変更したくないのですが、前にできていたものがで
>きないというのはまずい気がするので検討しておきます。

ちょー 古いところからの引用ですいません。
( 時系列表示されてなくて過去の記事のツリーに埋もれたらどうしよう )

この「タグジャンプの判断方法」はどこかにドキュメント化されています
でしょうか? されてなければ知りたいと思っています。

目的としては C のヘッダファイル中に、各関数へのタグジャンプ用のコ
メントを加えておきたいのです。

/*                 <get_ptr.c>
 * get_ptr()
 *
 * IN:  i: インデックス
 * RETURN: インデックス番目のポインタ
 */
void far *get_ptr(int i);

のような感じのヘッダのコメントの右上の部分です。
( この形式は失敗しました)

なんでこんなことが必要になったかというと、利用している C のリンカの
問題で「特定のパブリックシンボルを参照した時にそのシンボルを含むオブ
ジェクトとそのオブジェクトが参照するすべてのオブジェクトをリンクする」
という仕様だからなんです。

結果として「すべてのソースコード中にはパブリックシンボルは1つしか
おけない」という制約ができています。

ですので、ptr_ctl.h に

extern int ptr_count;
void far *get_ptr(int i);
int set_ptr(void far *p);

と3行書くことは許されていても、この3つのパブリックシンボルはそれぞ
れが別々のソースコード上に存在しています。
ファイル名の 8 文字制限もあって、関数/変数の増加に伴う管理がかなり辛
くなりファイルを探す必要が出だしてきました。そこで

extern int ptr_count;   /* ptr_cnt.c */
void far *get_ptr(int i); /* get_ptr.c */
int set_ptr(void far *p); /* set_ptr.c */

というような感じでファイル名をマークしておいて、タグジャンプで飛べる
と嬉しいのですが...。

タグファイルを作成してダイレクトタグジャンプすればいいのですが、タグ
ファイルはすでに別の情報のために使用済みなのです。

ということで、最初に戻って、タグジャンプのファイル名の取り出し規則が
わかれば、それに添った記述をして狙ったソースファイルにタグジャンプで
きるコメント文をかけるかな? と思っています。

試行錯誤した感じでは「もしかしてコメントの中では飛ばないようになって
いるのかも」と思ったりしてますが...
( 「ファイル名と思わしき場所のカラー表示」とは判定方法が違うみたいですね )

# 3.05 を利用しています

[ ]
RE:06984 タグジャンプについてNo.06986
ENCODINGSHIFTJIS さん 00/12/06 13:30
 
>目的としては C のヘッダファイル中に、各関数へのタグジャンプ用のコ
>メントを加えておきたいのです。

変形のタグジャンプ・ダイレクトタグジャンプはマクロで作っても
行数は食わない。と思うが?

// [ *]\f[^ ;(]+\f[ ;(]  の \1 でダイレクトタグジャンプ
// カーソル位置の単語を拾う、表を引く、ファイルを開く
// Hyperlink0.mac
//               単語の拾い方の変形で様々なハイパーリンクが作れる 、コメント
内でも
escape;
searchup    "[ *]",regular; right; beginsel;
searchdown "[ ;(]",regular;
$s=gettext(seltopx,seltopy,selendx,selendy);
//
    #wno=findhidemaru("grep2.tags");
if( #wno == -1){ menu "grep2.tags が開かれていません";endmacro; }
setactivehidemaru #wno;
//
gofiletop; searchdown $s; // 外れがあるなら、もっと正確に見る
tagjump;                  // back は うまくない
// int get_ptr(;

------------------- grep2.tags --- grep で作っておく
D:\Program Files\Hidemaru\dat\ptr_cnt.c(1): ptr_count
D:\Program Files\Hidemaru\dat\get_ptr.c(1): void far get_ptr(init i);
D:\Program Files\Hidemaru\dat\set_ptr.c(1): int set_ptr(void far *p);
---------------------------------
見出し語が先にくる タイプも作れます。
http://www.MARUO.co.jp/hidesoft/2/m001115.html#6840

[ ]
RE:06984 タグジャンプについてNo.06994
秀丸担当 さん 00/12/07 18:35
 
>この「タグジャンプの判断方法」はどこかにドキュメント化されています
>でしょうか? されてなければ知りたいと思っています。

判断方法はドキュメント化されていません。
基本的にはgrep結果とtagsファイル、c言語、アセンブリ言語のエラー出力
に対応するように作られています。
行の先頭にあるファイル名を判断します。
例外的には、先頭にある空白、"#include","error","warning",
"**fatal**", "**error**", "*Warning*"
は無視してそのあとに書かれているファイル名を判断します。
#includeの場合環境変数INCLUDEのパスも検索します。
現状の仕様ではC言語のコメントに含む文字で記述しようとしても、
できません。

[ ]
RE:06994 タグジャンプについてNo.06999
える さん 00/12/08 03:52
 
>現状の仕様ではC言語のコメントに含む文字で記述し
>ようとしても、できません。

ということで、簡単なマクロでやることにします。
マクロ環境は個人ごとに異なってしまっているので
マクロはあまり使いたくないのですが、2〜3行で
実現できることなのでそれで済まします。

ついでに、

タグファイル作成では (自動) と hilight ファイ
ルの指定の2通りが使えますが、(自動)の検出に
相当する hilight ファイルは書けませんよね?

自動+α や 自動の変形 を希望する人は hilight
の指定で自動相当の抽出ができないで困ったことは
ないのかな。

( どうも 自動 だと hilight ではできない複数行
   にまたがるチェックができるようだ )

[ ]
RE:06999 タグジャンプについてNo.07002
秀丸担当 さん 00/12/08 17:37
 
>タグファイル作成では (自動) と hilight ファイ
>ルの指定の2通りが使えますが、(自動)の検出に
>相当する hilight ファイルは書けませんよね?

(自動)の場合は、
hilightファイルによるtagsファイルの作成と、
(C言語の関数一覧)相当のtagsファイル作成を
使い分けています。

まず拡張子を判断し、その拡張子のファイルタイプ別の設定
がhilightファイルを指定していてかつ行の強調表示がある
場合に、hilightファイルによるtagsファイル作成をします。
そうでない場合は(C言語の関数一覧)相当のtagsファイル作
成をします。

[ ]
RE:06986 タグジャンプについてNo.07005
ENCODINGSHIFTJIS さん 00/12/09 11:32
 
> extern int ptr_count;   /* ptr_cnt.c */
> void far *get_ptr(int i); /* get_ptr.c */
> int set_ptr(void far *p); /* set_ptr.c */

> というような感じでファイル名をマークしておいて、タグジャンプで飛べる
> と嬉しいのですが...。
マウスクリックで 「Webページを開く」を流用できないか、として
閲覧モードしかないが

1。 デで止まる    file:///C|/Windows/デスクトップ/WinCVS.txt
2。 空白で止まる  file:///D|/Program Files/Hidemaru/MAC/WSH/promtest.js
3。 ?メモ帳で開く file:///D|/XSL/News.txt
4。 ?quickviewで開く file:///D|/XSL/news.dtd

/* file:///C|/A-Project/SRC/set_ptr.c */
で クリックして すべてブラウザで開ける設定法は 見つからなかった。
開き方の感じでは、全体の文字列がそのままブラウザに渡らずに
ファイル名の部分で 関連付けで開く になっているような


[ ]
RE:07005 タグジャンプについてNo.07006
ENCODINGSHIFTJIS さん 00/12/09 15:07
 
>/* file:///C|/A-Project/SRC/set_ptr.c */
>で クリックして すべてブラウザで開ける設定法は 見つからなかった。
>開き方の感じでは、全体の文字列がそのままブラウザに渡らずに
>ファイル名の部分で 関連付けで開く になっているような

補足します、動作環境のユーザーインターフェイスのプラウザの設定が
「通常のWebブラウザを使う」 は 実際は 「シェルで開く」 のように見える
file:/// のあとには .EXE や .BAT を書けてそのように動く
.BAT のプロパティのコマンドラインには a.bat ? を書いて動作した

[ ]
RE:07005 タグジャンプについてNo.07007
ひろ さん 00/12/09 18:53
 
 えるさん、ENCODINGSHIFTJIS さん今日は、ひろです。
> > extern int ptr_count;   /* ptr_cnt.c */
<中略>
> > というような感じでファイル名をマークしておいて、タグジャンプで飛べる
構造体の menuber 表記も file name として認識してしまいますが(^^)、「
ファイル名と思わしき場所の color 表示」を ON にしておけば「ダイレク
トタグジャンプ (default では [Ctrl]+[F10])」で開きます。

> 1。 デで止まる    file:///C|/Windows/デスクトップ/WinCVS.txt
> 2。 空白で止まる  file:///D|/Program Files/Hidemaru/MAC/WSH/promtest.js
のように file name をして認識されに場合は、範囲選択をしてから「ダイ
レクトタグジャンプ」を使用します。この場合は上記の option が OFF で
も構いません。

[ ]
RE:07007 タグジャンプについてNo.07008
encodingshiftjis さん 00/12/09 23:03
 
> えるさん、ENCODINGSHIFTJIS さん今日は、ひろです。
>> > extern int ptr_count;   /* ptr_cnt.c */
><中略>
>> > というような感じでファイル名をマークしておいて、タグジャンプで飛べる
>構造体の menuber 表記も file name として認識してしまいますが(^^)、「
>ファイル名と思わしき場所の color 表示」を ON にしておけば「ダイレク
>トタグジャンプ (default では [Ctrl]+[F10])」で開きます。

アンドキュメンティッド秀丸なんでしょうか?
ヘルプの説明では ダイレクトタグジャンプは
tagsを経由する間接タグジャンプなのだが、
ファイル名と思わしき場所の color 表示」を ON では
カーソル位置のファイル名でタグジャンプなのですね。


[ ]
RE:07008 タグジャンプについてNo.07009
encodingshiftjis さん 00/12/09 23:40
 
>ファイル名と思わしき場所の color 表示」を ON では
>カーソル位置のファイル名でタグジャンプなのですね。
というより
file:/// や >start  や関連付け と同様の 「シェルで開く」ですね
  notepad.exe でも Ctrl+F10 で起動する
いったい タグジャンプと関連は薄すぎ
 

[ ]
RE:07009 タグジャンプについてNo.07010
encodingshiftjis さん 00/12/10 00:31
 
Ctrl+F10 は1行コマンド起動的に使える
動作環境 プラウザの指定 Webブラウザを指定する に
%1
を指定する。
次に テキストに   notepad.exe x.txt を書き込んで
全体を選択してCtrl+F10
ちゃんと1行コマンドが起動できる
機能はともかく、ダイレクトタグジャンプの説明と隔たりが大きいと
思う。



[ ]
RE:07010 タグジャンプについてNo.07014
秀丸担当 さん 00/12/11 18:50
 
>Ctrl+F10 は1行コマンド起動的に使える
>動作環境 プラウザの指定 Webブラウザを指定する に
>%1

おお、それは、意外な使い方ですね。

>機能はともかく、ダイレクトタグジャンプの説明と隔たりが大きいと
>思う。

はい。その通りと思います。
たぶん誰かが要望を出し実現されたものと思うのですが。
ヘルプには書いておこうと思います。

ちなみにV1.xxの頃からダイレクトタグジャンプは内部
コマンド名HyperLinkといい、HyperLinkと言えば違和
感無いかも。

[ ]
RE:07014 タグジャンプについてNo.07016
ひろ さん 00/12/11 20:22
 
 秀丸担当様、encodingshif さん今日は、ひろです。
> たぶん誰かが要望を出し実現されたものと思うのですが。
 確か私です(^^;。だから help になくてこの仕様を知っていた。

[ ]