部分的な「上書き禁止」をしたい.No.25726
Knotopologynn さん 08/12/05 16:09
 
何時も,お世話になります.今までに色々と教えてもらい役にたっています.
Windows XP で秀丸エディタV7.07 を使わせて頂いております.

あるファイル全体を「上書き禁止」にすると,そのファイルは編集できなくなります.
これを,ファイル全体ではなく,ファイルの一部分のみ「上書き禁止」には
出来ないでしょうか?
例えば,ファイル内のある数行の文字列だけとか,あるいは,
単語「\abcd」の \abcd だけを「変更禁止」にして,変更や削除ができなくなる.
というようなことが出来ないでしょうか?
本音は,TeX(テフ)のスタイルファイル(xxx.sty)の中の文字列を
変更できないように凍結したいのです.例えば,

\newcommand{\abcd}{\ensuremath{\mbox{\usefont{U}{eus}{b}{n}X}}}

と単語 \abcd を変更できないようにする.
そして,一つのファイルのなかに,このようなものが沢山ある.と言うように.

単語 \abcd は,他のファイル(秀丸エディタ)でも使いますが,
そのファイルの中でも単語 \abcd は変更できない.
というようなことは可能でしょうか?
方法が何かあれば教えて下さい.

[ ]
RE:25726 部分的な「上書き禁止」をしたいNo.25727
秀丸担当 さん 08/12/05 16:36
 

>あるファイル全体を「上書き禁止」にすると,そのファイルは編集できなくなります.
>これを,ファイル全体ではなく,ファイルの一部分のみ「上書き禁止」には
>出来ないでしょうか?
>例えば,ファイル内のある数行の文字列だけとか,あるいは,
>単語「\abcd」の \abcd だけを「変更禁止」にして,変更や削除ができなくなる.
>というようなことが出来ないでしょうか?

行単位であれば、部分編集という機能を使えば、行単位の指定した範囲内のみ編
集可能にして、それ以外は編集できないというようにはできます。
例えば、

\newcommand{\abcd}{\ensuremath{\mbox{\usefont{U}{eus}{b}{n}X}}}
xxxxxxxxxxx
yyyyyyyyyyy
zzzzzzzzzzz

というテキストがあったとして、x〜zの行を範囲選択して部分編集(標準でAlt+
[)すると、x〜zの行以外は編集できないようにできます。部分編集解除(標準
でAlt+])で解除します。


単語の編集禁止はできないです。
単語の編集禁止をするのは、今後も難しいと思います。

もし置換作業で特定の単語を除外したいという場合であれば、いったん
「\abcd」を「★」などの普段使わないであろう文字列にいったん置換してから、
後で元の文字列に置換しなおすといいかもしれません。

あるいは、単純に\abcdを強調表示しておいて、もし誤って編集したら強調表示
が消えることになるので、それで視覚的に確認するといった方法ではどうでしょ
うか。

[ ]
RE:25726 部分的な「上書き禁止」をしたいNo.25729
ENCODINGSHIFTJIS さん 08/12/05 16:46
 
一般には  
固定部と可変部を持つ文字列を 発生させる仕組み
を 使って解決すると思いますが。
名前は様々、穴埋め、マクロ、テンプレートエンジン、○○補完、編集フレームワー
ク、定形入力
秀丸では ドーでしょう。
xmlエディタのように 特定部分を認識して 編集不可にする機能はないですから
1. その行を編集する定形ダイアログを表示で入力にして、行では修正しない。
2. 強調表示を使って、その単語を発色させる(強調単語でないと発色しない)ので
崩れが目に見える。
3. 検証の秀丸マクロを作って、検証する
ナドナド

[ ]
RE:25727 部分的な「上書き禁止」をしたいNo.25731
Knotopologynn さん 08/12/05 17:01
 
早速,回答をありがとうございました.
「部分編集」は使わせていただきます.単語の編集禁止は,とりあえず,あきらめま
す.単語を強調表示しておく方法は試してみます.
不勉強で申し訳ありませんが,今後ともよろしくおねがいします.

>単語の編集禁止はできないです。
>単語の編集禁止をするのは、今後も難しいと思います。
>
>もし置換作業で特定の単語を除外したいという場合であれば、いったん
>「\abcd」を「★」などの普段使わないであろう文字列にいったん置換してから、
>後で元の文字列に置換しなおすといいかもしれません。
>
>あるいは、単純に\abcdを強調表示しておいて、もし誤って編集したら強調表示
>が消えることになるので、それで視覚的に確認するといった方法ではどうでしょ
>うか。

[ ]
RE:25729 部分的な「上書き禁止」をしたいNo.25733
Knotopologynn さん 08/12/06 17:00
 
コメントをありがとうございます.参考にします.

>一般には  
>固定部と可変部を持つ文字列を 発生させる仕組み
>を 使って解決すると思いますが。

[ ]