秀丸エディタスレ Part46

■ このスレッドは過去ログ倉庫に格納されています
2023/02/15(水) 19:36:05.65ID:i3y85R6n0
!extend:checked:vvvvv:1000:512
次スレを立てる方は↑を二行重ねて書いてください

軽快・高機能・安定と三拍子そろったテキストエディタ
秀丸エディタについて語ろう

■前スレ
秀丸エディタスレ Part45
https://egg.5ch.net/test/read.cgi/software/1655573512/

■公式
http://hide.maruo.co.jp/

■秀シリーズサポートフォーラム
http://www.maruo.co.jp/hidesoft/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2名無しさん@お腹いっぱい。 (ワッチョイW 4f74-rLxr)
垢版 |
2023/02/16(木) 19:18:29.49ID:I5ICFkBF0
>>1
秀丸は韓国でも通用するエディタ
2023/02/17(金) 08:51:22.26ID:GM6Hw0HM0
Ver9.20
2023/02/19(日) 17:58:05.56ID:IK5YhytP0
リソース文字列を表示するマクロってどう作るんでしょうか?
src.cppのIDS_HOGEにカーソルが合っている状態でマクロを呼び出すと、"ほげほげ"が表示される感じです。

■A/B/C/D/E/src.cpp
...
IDS_HOGE
...

■A/B/C/Lang/res.rc
STRINGTABLE DISCARDABLE
BEGIN
...
IDS_HOGE "ほげほげ"
...
END

既存マクロで似たようなのあったらそれを改良するのですが、イチから作るとなるとなかなか敷居が高く。。
5名無しさん@お腹いっぱい。 (アウアウウーT Sa49-h1Ka)
垢版 |
2023/02/19(日) 18:05:13.27ID:Dk+CAQLua
×敷居が高い
○ハードルが高い
2023/02/19(日) 18:14:17.95ID:IK5YhytP0
すいません、ハードルが高いでした・・
よろしくお願いしますm(_ _)m
2023/02/24(金) 10:47:17.27ID:q+QK81tt0
>>4ですが1から勉強するしか無いでしょうか・・・
このマクロ参考になるよとかの情報でも良いのですが(T_T)
2023/02/24(金) 11:10:19.15ID:/LlAOY1Ap
まだこのスレ立った事知らない人が多いのかも
因みに「表示」というのは、"ほげほげ"の先頭へカーソル移動したいという事なの?
2023/02/24(金) 12:42:05.17ID:fzmjhi2Kp
あ、違うね
IDS_HOGEの先頭?にカーソルを立てたら、"ほげほげ"がコメント的に見える様にできないかって事か。
アウトライン表示だけじゃ駄目なのかね。
2023/02/24(金) 15:01:05.91ID:q+QK81tt0
>>8-9
レスありがとう御座います。
コメント的に見える様に....の方です。

>>4の場合、src.cppのIDS_HOGEにカーソルがある状態でキーを押したら、res.rcを開かないでも
ポップアップで「ほげほげ」と表示されるような感じです。
2023/02/24(金) 16:05:15.94ID:+kxe4Ys+p
■〜src.cpp
から
参照元のIDS_HOGE
までのパターン性がちょっと掴めないから、どうかな。特にsrc.cppの前。
参照先の■〜res.rcの内容と違ってるよね。
2023/02/24(金) 20:30:58.71ID:q+QK81tt0
>>11
ありがとう御座います。
res.rcの所在はマクロ側で事前に登録しておくという感じでも大丈夫です。
「登録された1ファイルの中から、IDS_HOGEを検索して定義内容を表示する」みたいな。
2023/02/25(土) 02:11:35.79ID:9gzk7vzG0
1. カーソル位置を「単語の選択」してIDS_HOGEを拾って変数($target とか)に入れといて
2. res.rcを(バッググラウンドとか非表示で)開いて切り替えて
3. IDS_HOGE " を検索
4. 選択開始後に次の " を検索して選択されて要る "ほげほげ" を拾う
(もしくは正規表現で "ほげほげ" 部分をうまいこと拾う)
5. src.cppに戻ってきてからメッセージボックスで "ほげほげ" を表示
 ツールチップ表示にしたいなら macrodll.dll あたりが必要かも
 title文使えばステータスバーへの表示ならできるかも

具体的な記載方法は「キー操作の記録開始/終了」「キー操作の保存」で
操作作業をマクロに書き出せるのでそれを改造していくといい

ただぶっちゃけ秀丸マクロでVSCODEの拡張機能のようなことするのは難しい
質問の答えとは違うけどctagとタグジャンプ使った方が目的に近いことが実現できると思う
2023/02/26(日) 21:33:48.97ID:6xoTG5Gp0
>>13
ありがとう御座います。
参考にさせて頂きます。

ctagsは使用してるんですけど、リソース番号の方(resource.h)に飛んじゃうんですよね(u_u)

■A/B/C/resource.h
#define ..
#define IDS_HOGE 1006
#define ..
#define ..
15名無しさん@お腹いっぱい。 (ヒッナーW ee25-yeYs)
垢版 |
2023/03/03(金) 13:43:38.32ID:HaP46PFw00303
質問を教えてください。
This is a pen. That is England. My Mother's name is TARO.
という文字列を、
This is a pen.
That is England.
My Mother's name is TARO.
となることを期待して、「.」→「.\n」、正規表現にチェック、と置換設定して実行すると
全文章が真っ黄っ黄になってできないです。
どのようにしたら出来るでしょうか?
宜しくお願いします。
2023/03/03(金) 14:16:35.99ID:Ae9gJb6400303
.をエスケープ
\.
17名無しさん@お腹いっぱい。 (ヒッナーW ee25-yeYs)
垢版 |
2023/03/03(金) 15:35:46.65ID:HaP46PFw00303
>>16
ありがとうございました。大変助かりました。

という事は、正規表現にチェックを入れると、
被置換文字も置換文字も両方ともescapeシーケンスで書く必要がある、
と覚えれば良いでしょうか。
2023/03/03(金) 15:54:51.06ID:6PH4ngyI00303
>>17
必要なもののみエスケープする必要あり
検索ダイアログの入力ボックスの右にある小さい▶ボタン押してみて
19名無しさん@お腹いっぱい。 (ワッチョイW b1e8-2Biy)
垢版 |
2023/03/04(土) 20:31:28.50ID:90B3kAjb0
>>18
ありがとうございます
2023/03/06(月) 10:13:25.62ID:OO3/CyCEp
>>19
メタ文字(正規表現が機能として使う文字)と被る文字をリテラル(その文字そのもの)として扱いたい場合、エスケープと言って直前に\置きリテラルと認識させる事ができる。

但し範囲内を表現する[文字列](ブラケットで囲まれた中)に限っては例外として不要になる(というかあってもなくてもいい」
2023/03/06(月) 15:40:29.61ID:vNF37C7+0
前スレ落ちてたのに気づいてなくって最近静かだなって思ってました orz

>>4
いまいちどういう使い方をされようとしてるのか分からないですが
選択した文字列で特定のファイルをgrepかけるという程度のことで
良ければ割と簡単そうで叩き台となるサンプルのマクロを
提示できそうな気がします
メッセージボックスを使うよりファイルに書き出す方が扱いやすくって
自分的には好みです
というか、まだ見てるかな?
2023/03/06(月) 15:57:24.54ID:ANeahzAtp
多分、リアルタイムで参照しながら作業したいんじゃないかな。
2023/03/06(月) 16:15:53.78ID:vNF37C7+0
というとgrepとかでなくてカーソルを合わせただけで
吹き出しが出て表示されるようなイメージでしょうか?
期待値が高すぎて出る幕なかったかも
2023/03/06(月) 16:23:28.98ID:EG+FmZU50
おまいら、キーボード何使ってんの?

特集 - ソフトウェア開発者/有限会社サイトー企画代表 秀まるお氏 インタビュー | REALFORCE | 日本製プレミアムキーボードの最高峰
https://www.realforce.co.jp/special/2208/#sec01
2023/03/06(月) 17:17:21.78ID:G08o2ZjTp
打鍵のソフトさを最優先してロジKX800。しかしFやesc、ctrl等の配列(サイズ感)は最悪であるw
でもこいつだと、マイクロソリューションに専用シートがあるんよな…
2023/03/06(月) 19:33:29.95ID:eYUa5+N+0
ミネベア VANGUARD V101(RT6656TWJP)
PS/2 → USB 変換アダプタを介してPCに接続してる
ぶっ壊れる気配がまったく無いよ~
2023/03/06(月) 19:35:16.72ID:eYUa5+N+0
ミネベアつうかWiNDyだった
2023/03/06(月) 20:12:09.55ID:EG+FmZU50
>>26
おー、ワイも持ってるで
あと、RT6652TWJP (黒筐体)、初代 Realforce 91 (PS/2)、IBM Spacesaver Ⅱ、Natural Keyboard、
Keychron Q8 (半額祭でゲット)、IDOBAO ID80、Portico75、YMDK 67 minila
3行目のは全て QMK 入り Q8 と YMDK 67 minila は親指厨も満足の US キーボード
2023/03/08(水) 00:35:38.44ID:7391Vj7X0
>>21-23
レスありがとう御座います。
吹き出しのようなイメージです!
カーソル合わせただけで出てくる必要はないのですが、カーソル合わせてバインドしたキーを押すと出てくる感じでしょうか。
今はgrepしてるんですが面倒だなぁ・・と。

ctagでヘッダじゃなくってリソースの方に飛んでくれるのならそれでも良いんですが・・・
2023/03/08(水) 02:17:45.99ID:/ufsibxp0
あまり分かってないので期待されてるのと違うかもしれませんが上げてみる

//resのgrep.mac

//$s:選択文字列
//$f:対象ファイル
//$d:対象ディレクトリ

if(!selecting){endmacro;}
$s=gettext(seltopx,seltopy,selendx,selendy);
$d="c:\\users\\user\\appdata\\roaming\\hidemaruo\\hidemaru\\macro\\230308";
$f="res.rc";
grep $s, $f,$d;
setwindowsize 50, 7;setwindowpos 80, 5;
2023/03/09(木) 10:33:46.73ID:EqRwHkzKa
要件無視したソフトはたくさん見てきたけどこれはレベチ
2023/03/09(木) 11:22:05.33ID:CxS9cZ4z0
普通に読み解けば、IDEによくあるようにシンボルに
マウス当てたら静的に分析できる値なり説明なりが
ポップアップで出るってモノでしょう。

いちいちマクロやgrep走らせるのなんか使い物にならんよ。
2023/03/09(木) 12:27:52.94ID:bZDOGGxwp
秀丸はイベントってないよね
2023/03/09(木) 13:30:00.36ID:aW3hLJ+x0
grep で行数とか他の要素が出るのが気に入らないなら
値だけ表示するように加工することもできるし
grep結果のファイルが残ってしまうのが問題なら
表示して何秒後に自動で消すこともできるけど
まずは叩き台と思って
2023/03/09(木) 15:00:53.29ID:aW3hLJ+x0
>>29
> カーソル合わせただけで出てくる必要はないのですが、カーソル合わせてバインドしたキーを押すと出てくる感じでしょうか。
> 今はgrepしてるんですが面倒だなぁ・・と。

マクロ登録すればカーソルを合わせてキー入力で表示できますし、現状でもgrepを使っていて手数を減らしたいとのことだったので、それほど仕様を無視したつもりではないのですが
2023/03/09(木) 20:49:16.35ID:MEKMA5bJ0
自動起動マクロでトリガーをカーソル移動あたりにすれは
(使い物になる重さかはともかく)イベントっぽいことは一応可能じゃね
2023/03/15(水) 15:23:23.05ID:zAuzCXZ90
> 登録された1ファイルの中から、IDS_HOGEを検索して定義内容を表示する
grep関係ないやん

> カーソルが合っている状態でマクロを呼び出す
> カーソル合わせてバインドしたキーを押す
イベント関係ないやん

@ selectwordでカーソル位置のIDS_HOGEを取得
A searchdownで登録ファイル内のIDS_HOGEを検索
B IDS_HOGEと同行の""で区切られた文字列を取得
C messageでほげほげを表示

ctag改造は無理でもこれぐらいは作ったれよ
2023/03/15(水) 16:20:04.85ID:UuxglPsW0
//その1.mac
//$s:選択文字列 $f:対象ファイル $m:メッセージ

if(!selecting){selectword;}
$s=gettext(seltopx,seltopy,selendx,selendy);
$f="c:\\users\\user\\appdata\\roaming\\hidemaruo\\hidemaru\\macro\\230308\\res.rc";
openfile "/h "+$f;if(!result){endmacro;}
searchdown $s;
searchdown "(?<=\").",regular;beginsel;
searchdown "\"",regular;
$m=gettext(seltopx,seltopy,selendx,selendy);
message $m;#h=hidemaruhandle(0);
setactivehidemaru 1;closehidemaruforced #h;
2023/03/15(水) 16:20:41.58ID:UuxglPsW0
//その2.mac
//$s:選択文字列 $f:対象ファイル $d:対象ディレクトリ

if(!selecting){selectword;}
$s=gettext(seltopx,seltopy,selendx,selendy);
$d="c:\\users\\user\\appdata\\roaming\\hidemaruo\\hidemaru\\macro\\230308";
$f="res.rc";
grep $s, $f,$d;
setwindowsize 50, 7;setwindowpos 80, 5;
replaceallfast ".*?\"([^\"]+)\".*","\\1",regular
sleep(1500);#h=hidemaruhandle(0);
setactivehidemaru 1;closehidemaruforced #h;
2023/03/20(月) 10:10:41.78ID:VHNupFsax
>>38-39
すみません全く気づきませんでした!!
>>38が求めていたものズバリです!めっちゃ感動です!!
本当にありがとう御座いました!

もし、、本当にもし、時間が許せば以下の拡張をお願いできませんでしょうか…さすがにあつかましいお願いでしょうか(>_<)

(1) 言語選択メニュー
起動直後に↓のポップアップが表示される。
1 日本語で表示
2 英語で表示

選択された言語に従って、1であれば、Lang1\\ResJpnA.rcとLang2\\ResJpnB.rcの2つが
2であれば、Lang3\\ResEngC.rcとLang4\\ResEngD.rcの2つが
内部記憶される。

例えば、1を選択すると$Res1、$Res2はそれぞれ
$Res1 = "Lang1\\ResJpnA.rc";
$Res2 = "Lang2\\ResJpnB.rc";
のように記憶される。

(2) フォルダ/ファイル探索機能
A/B/C/D/E/src.cpp内にあるIDS_HOGEにカーソルがある状態でマクロを実行するとA/B/C/D/Eに$Res1もしくは$Res2があるか検索、無ければ
A/B/C/Dに$Res1もしくは$Res2があるか検索、無ければ更に階層をあがり、ファイルがあるまで検索する。
見つからなければマクロ終了。

見つかった場合、$Res1に対してIDS_HOGEを検索し、見つかれば"ほげほげ"を表示(>>38ですね)し、見つからなければ$Res2に対してIDS_HOGEを検索...見つからなければマクロ終了。
2023/03/20(月) 11:13:06.14ID:ozwXs2i20
grepバージョンならタグジャンプでソース元にも跳べるし
便利そうなんて思って作ったんですが
見当外れの上に散々な言われようでちょっと凹みました

その1については
1.ダイアログを使う
2.マウスメニューを使う
3.普通に起動すると日本語、シフトを押しながら起動すると英語
という3バージョンを思いつきました
メニュー選択のひと手間が面倒で自分の好みでは3なんですが
見当外れの前科があるので一応全部作ってみます

変数として内部に記憶してもマクロ終了で失われてしまうので
ここはiniファイルとして外部に保存するようにしましょう

その2のファイル検索は秀丸マクロだけでは難しそう
いや、できるかもしれないけどなにかあるとすぐにrubyに
頼ってしまう自分のような軟弱者には無理
ruby使っていいですか?
2023/03/20(月) 13:20:16.42ID:VHNupFsax
>>41
ひと手間が面倒…確かにそうですね!
↓の様にして日・英で別のmacにして、キー割り当てを別にしておけば一発でポ
ップアップされるのでその方が良い気がしました(>_<)

JP.mac
$Res1 = "Lang1\\ResJpnA.rc";
$Res2 = "Lang2\\ResJpnB.rc";
EG.mac
$Res1 = "Lang3\\ResJpnC.rc";
$Res2 = "Lang4\\ResJpnD.rc";

すみません、(1)は取り消しで、(2)のみの拡張でお願いできませんでしょうか
(T_T)

イメージとしては、
(2)-1. 開いているファイルがある階層で、$Res1もしくは$Res2のファイルがあるか見て、無ければ1つずつ階層を上がって$Res1もしくは$Res2があるか確認
(2)-2. $Res1が見つかると、$Res1から
(2)-3. IDS_HOGEを検索し"ほげほげ"をポップアップしマクロ終了
(2)-4. IDS_HOGEが見つからない場合、$Res2(もしあれば)に対して(2)-3.を実行

$Res1と$Res2の両方にIDS_HOGEが定義されていることはありません。
$Res1,$Res2のファイル自体が無かった場合、ファイルがあったとしてもIDS_HOGEが定義されていなかった場合は「ありません!」とポップアップしてもらえると嬉しいです。
2023/03/20(月) 13:29:36.67ID:VHNupFsax
リソースファイルは3つぐらいまで対応して頂ければ嬉しいです。
後出しばかりでスミマセン(T_T)

JP.mac
$Res1 = "Lang1\\ResJpnA.rc";
$Res2 = "Lang2\\ResJpnB.rc";
$Res3 = "Lang3\\ResJpnC.rc";
EG.mac
$Res1 = "Lang4\\ResEngD.rc";
$Res2 = "Lang5\\ResEngE.rc";
$Res3 = "Lang6\\ResEngF.rc";
2023/03/20(月) 14:36:39.97ID:VHNupFsax
grepバージョンについては今回は使いませんが、今後のためにマクロフォルダに入れておきます!
せっかく気を使って頂いたのにスルーしてしまったみたいな形になり申し訳ありません...
>>38を動かしてポップアップが出た感動が大きすぎたようです(--;)
本当にありがとう御座います!!
2023/03/21(火) 07:06:26.87ID:GaxWMZHw0
//ids_hoge.mac
//UTF-8(BOM付き)でファイル保存

setmenudelay 300;
mousemenu
"&J 日本語",
"&E 英語";

if(result==0){endmacro;}
runsync2 "rubyw -x "+currentmacrofilename+" "+directory+" "+str(result);
openfile "/h tmp.txt";if(!result){endmacro;}
selectall;
$m=gettext(seltopx,seltopy,selendx,selendy);
message $m;#h=hidemaruhandle(0);
setactivehidemaru 1;closehidemaruforced #h;
endmacro;

/*
#/
#! ruby
# encoding: utf-8
Encoding.default_external = 'UTF-8'
$stdout=open("tmp.txt","w")
$stderr=open("err.txt","w")
#続く
2023/03/21(火) 07:07:13.59ID:GaxWMZHw0
#続き
dir,res,f,m=ARGV[0].encode(Encoding::UTF_8),ARGV[1].to_i,"",[]
if res==1
res1="Lang\\ResJpnA.rc"
res2="Lang\\ResJpnB.rc"
res3="Lang\\ResJpnC.rc"
elsif res==2
res1="Lang\\ResJpnD.rc"
res2="Lang\\ResJpnE.rc"
res3="Lang\\ResJpnF.rc"
end
r=[res1,res2,res3]
while /\\/=~dir
r.each{|e|
if FileTest.file?(dir+"\\"+e)
f=dir+"\\"+e
m=open(f).readlines.grep(/IDS_HOGE/)
break if m!=[]
end}
dir=dir.gsub(/\\[^\\]*$/,"")
end
if f==""
puts "ファイルが見つかりません"
elsif m==[]
puts "IDS_HOGEが見つかりません"
else
puts m[0].gsub(/.*?\"([^\"]*)\"/,'\1')
end
__END__
*/
2023/03/25(土) 13:27:06.95ID:ztg6C3nP0
>>45-46
ありがとう御座います。
せっかく実装していただいたのですが、ど素人の私では何をどうすれば良いか解りませんでした…
秀丸マクロだけを使用して、>>38に対して>>42の機能を追加するのは難しいということでしょうか?

rubyについて、先ずはインストールするところから始めようと思いますが
Devkit?あり無しや7Zip版とかがあって1から調べ進めていくのがかなり大変そうです。。
/*~*/までのコードはどう実行させるのでしょうか?
スレ違いになってしまいそうです恐縮ですが、良ければ教えてくださいm(_ _)m
2023/03/25(土) 13:41:03.72ID:bFmGCav60
rubyの実装なら、自分で色々検索して頑張るしかないよ。
そこまで頼るのは何か違うと思う
2023/03/25(土) 16:05:58.11ID:OJrucgUeM
俺の仕様で。
俺の言語で。
異論は認めん。
2023/03/25(土) 16:16:12.23ID:PbNx+xJd0
追加要望の段階で 仮にもプログラムコードに触ろうとしてる人間が他人に要求していい内容じゃなかったしね
2023/03/25(土) 18:20:44.81ID:yMw0x+Cl0
世の秀丸マクロ作者の中には秀丸マクロだけで作れるよ
って方もいるかも知れませんが自分には無理。
すぐにrubyに頼ってしまう軟弱者ですから。

Windowsでrubyを使うならRubyインストーラーを使いましょう。
いろいろ便利だから。
Devkitは無くて泣くことがあってもあって困ることはないから
とりあえずこっちを選びましょう。ということで最新版なら
https://rubyinstaller.org/downloads/
Ruby+Devkit 3.2.1-1 (x64)
あたりになるかと思いますが
自身は未だVer2.6.5を使ってるので万一、エラーになるようなことがあれば
教えてください。

秀丸マクロ的には/*~*/はコメント。
一方、ruby的には #! ruby から __END__ までがスクリプト。
秀丸マクロのコメントの中にrubyスクリプトを埋め込んで
秀丸マクロを実行すればそのままrubyを呼び出すようになってます。
2023/03/25(土) 20:38:39.60ID:yMw0x+Cl0
ちなみに秀丸マクロ使っててどの辺が困るかというと
・ファイル操作
・凝った正規表現
・配列処理
のあたり。
秀丸マクロだけではどうしたらって
頭を抱えちゃう場面があって自分が分かるのは
rubyだけだからrubyで書いてるんですが実際のところ
perlでもPythonでも構わないと思うのです。
2023/03/25(土) 21:46:14.73ID:bFmGCav60
優しいなあ

/* がコメントと気付かない時点で、プログラム作ろうというのもどうかと…
何処かオンライン勉強会でも通った方がいいよ
2023/03/26(日) 00:05:16.74ID:IpCAN6WB0
自身もプログラミング学習の授業では劣等生でしたから
必要に迫られて学んだだけで未だに残念な奴だと思ってます
2023/03/26(日) 00:17:54.74ID:3znvJKL10
やさしいつうか自分の承認要求満たしたいだけにみえる
2023/03/26(日) 00:24:39.94ID:tgq9LlpS0
>>54
努力する姿勢があればいいんだよ(業務としてはいかんのかもしれんがw)
2023/03/26(日) 02:10:54.96ID:gV9mvrCp0
今の秀丸は最新JS使えるからある程度複雑なのもいける。
ハッシュだ正規表現だファイル捜査だのために外部プログラム使う機会はほぼ無くなったな。
2023/03/27(月) 12:18:58.71ID:B1zTO9zip
昔の年寄りは「信頼できる(権威ある)学校や講習を受けないと駄目!」←以後全く外を見ずアップデートできない
今のネット世代「勉強なんてネットだけで独学できる!勉強会なんて無駄無駄連呼!」

と極端なんよね。勉強会マニアもたまにいるけど(というかまともなプログラマーはこっち)
両方必要なのよ。基礎をしっかり学ばなければ独学でまともな物は作れないし、基礎を学んだところで常にアップデートしないと無能になる。
2023/03/29(水) 18:23:48.64ID:LNeFgxnq0NIKU
Ver9.21
60名無しさん@お腹いっぱい。 (アウアウウーT Sa23-icd+)
垢版 |
2023/04/01(土) 17:27:14.42ID:xtYambtia
ベータ版で実装されたブラウザ枠が便利すぎて感動
秀丸使っていまだにホームページ管理してる俺には神更新だわ
2023/04/02(日) 14:43:46.84ID:EOfFLmIr0
>>60
htmを変更したらプレビューとかできるの?
62名無しさん@お腹いっぱい。 (アウアウウーT Sa23-icd+)
垢版 |
2023/04/02(日) 14:55:53.56ID:vXHfzfNxa
>>61
できるよ
いまはまだベータ版だからいまいちなところあるけど
ブラウザ枠のオン・オフ、内容更新なんかをキー割り当てすればかなり便利
2023/04/02(日) 16:25:45.06ID:bw2Pspz70
リアルタイムプレビューが出来ないんだなぁ、これが
かなりトリッキーなことせれば出来なくはないけど
2023/04/02(日) 16:34:57.53ID:bw2Pspz70
秀丸マクロのjsで1000ミリとかで回して、テキスト違ったらブラウザ更新とかしかないかなー
2023/04/03(月) 04:54:12.45ID:5P+sJP1r0
>>63
> リアルタイムプレビュー
PC初心者なら良いけど、他の人には操作がもっさりでイラつくよ

> キー割り当てすればかなり便利
これさえ設定できれば問題ないかと
2023/04/03(月) 13:31:59.66ID:9AO9gF8C0
とはいえ秀丸でサイト用ファイルやmd書くのかといわれれば
ブラウザ枠程度では書きませんて感じはあるなー
それらを取り扱うための根本を欠いてるし...
2023/04/21(金) 08:40:25.11ID:U6xBSKr20
秀丸エディタで一月前の設定に戻そうと
[その他]→[設定内容の保存/復元]→復元するにチェック→次へ
で 秀丸純正.hmereg を選択して[開く]をクリックしてみたのですが
ヘルプページが表示されるだけで復元されてないようです
なにか間違っているのでしょうか
2023/04/21(金) 11:41:27.75ID:U6xBSKr20
自己解決しました
秀丸エディタを最新版にアップデートしてから復元すると
「成功しました」が表示されましたのでうまくいったようです
2023/05/14(日) 05:30:02.01ID:5HE3tDQ00
秀丸をおすすめする
https://www.youtube.com/watch?v=9Q4X36UqSU0
2023/05/15(月) 05:12:38.94ID:oDqxJd5U0
合成で文字を読み上げさせた言葉に何の意味があるんだw

15秒ほどで本人のイントネーションや喋り方と乖離してると
声だけでもわかる。
2023/06/03(土) 20:15:33.41ID:MyMSXAcb0
質問です。
基本機能で検索には[¥uxxxx]で文字コードを検索できるのに、置換には使えません。置換文字をコード指定したい時はどう書けばできるでしょうか。
2023/06/04(日) 02:31:26.78ID:086JorTw0
[\uxxxx]は正規表現として扱われるから検索には使えても置換先には使えない
置換先に使いたい場合はマクロで unichar を使えばできそう
実際、次ので「ア」を「あ」に置換できた
replaceallfast "ア",unichar(0x3042),regular;
2023/06/04(日) 03:46:36.23ID:wPV2fbfu0
お返事ありがとうございます。
正規表現だから使えないってのはイマイチ謎ですが、Hmjre.dllの特性か何かですかね…
マクロではregularさえ入れてれば、unicharと付けなくても普通に"¥uff10"とかだけで置換に使えてる気がしてたんですが、会社じゃないとちょっと確認できません。
2023/06/04(日) 06:11:22.16ID:086JorTw0
[0-9],[a-z]とかと同じ扱いでひらがななら[\u3040-\u309F]と表現できる
マクロならunicharとかなしでってのはその通りだった、ごめん
2023/06/04(日) 15:26:57.46ID:wPV2fbfu0
いえいえ、わざわざありがとうございます。
置換機能で使えないのはHmJreのというより、秀丸自体の機能制限かもしれませんね。
よく使う記号類はリテラルでスティッキーズに保存しておくしかないか
2023/06/04(日) 15:35:57.76ID:wPV2fbfu0
2〜3クッション増えていいならListReplace.macで多分できると思うんですが、いや毎回手軽に検索置換したいだけなんだと。
あれ入力UIの長さ超える長文は反映されず、テキストを直接編集する必要があるし。
…自前でスクリプトUI付きのマクロ作れってか
2023/06/10(土) 15:14:58.79ID:siGRwG8I0
もう少し具体的にどういうことをしたいのかを教えてもらえれば
もしかしたらお力になれるかもしれません
2023/06/10(土) 16:29:43.36ID:siGRwG8I0
置換リスト作っておけば万事OKっていうなら置換リスト作りましょう
UI付きのマクロってのが何を意味しているのか分かりませんけど
menuやmousemenuやら秀丸マクロのUIは結構有能です
2023/06/12(月) 02:24:27.26ID:XeMcuOv50
単純に置き換えダイアログみたいなForm UIのことでは?
次に出るv9.22以降なら標準機能だけでも出来なくはないが。
2023/06/14(水) 20:10:44.17ID:MaBaaxFE0
2023/06/14 Ver9.22
・ブラウザ枠、個別ブラウザ枠追加。
・レンダリング枠追加。
・タブバーの位置を内側や、共通と個別の間に指定できるようにした。
・メニューバーの独自描画の変更と適用範囲を広げた。
・マクロファイルのエンコードは欧文や簡体字中国語は仕様に無かったけど動作させていたのを廃止して、明確にUTF-16,UTF-8,Shift-JISのみとした。
・詳しくはV9.22βでの改版履歴を参照ください。
参考:新機能紹介ページ
81名無しさん@お腹いっぱい。 (ワッチョイ fb03-yHKI)
垢版 |
2023/06/15(木) 22:38:12.45ID:+tQjScZi0
メニューから検索を選び、ボタンの▼をクリックすると、
今まで検索した履歴が大量に出ます
調べても全然出てこないのですが、
これを削除するにはどうしたら良いでしょうか?

右クリックから、ヒストリを削除を選べば削除できますが、
一つずつしか選べません、一括で削除したいです
2023/06/15(木) 23:03:56.31ID:pyEjfz4D0
その他 > 履歴の消去
2023/06/15(木) 23:49:24.37ID:FuH55hwL0
検索履歴を操作するマクロを作ってみました

//検索履歴操作.mac
setmenudelay 700;
mousemenu
"&C クリア", //検索履歴をクリア
"&G ゲット", //検索履歴を新規ファイルに書き出す
"&S セット"; //ャQットで作ったャtァイルを編集bオて検索履歴にャZット

if(result==0){endmacro;
}else if(result==1){
setsearchhist 0,"",2;
}else if(result==2){
newfile;#c=val(getsearchhist(-1));#i=0;
while(#i<#c){insert getsearchhist(#i)+"\n";#i=#i+1;}
}else if(result==3){
gofileend;#y=y;
while(#y>0){
moveto 0,#y-1;beginsel;golineend2;
setsearchhist -1,getselectedtext();#y=#y-1;}
}
2023/06/16(金) 00:39:46.71ID:pod4EVAP0
9.22出てるよ
2023/06/16(金) 00:42:47.66ID:pod4EVAP0
>>84
ア、上のレス読んでなかったorz
2023/06/21(水) 17:49:28.67ID:QsnWjJCD0
2023/06/21 Ver9.23
・V9.22にあったバグ修正
  ・現在の秀丸エディタに対してのgrep文でフォルダ指定がうまくいかない問題修正。(トラブル対策のカレントフォルダ移動する設定のとき)
  ・マクロでrefcallと複数の秀丸エディタでの使用で落ちる問題修正。
・詳しくはV9.23βでの改版履歴を参照ください。
2023/06/22(木) 22:12:05.18ID:WaPSJce10
神アプデすぎ
2023/06/23(金) 10:07:12.02ID:YZWo6MI90
モバイルメール向けに
40文字折り返し
のためのマクロを考えていた
正規表現でもできるかな?と思っていたら、
秀丸には整形っていうのがあるんだねw

痒い所に手が届きすぎでしょw
2023/06/23(金) 11:29:19.93ID:3//KYpaE0
emacs使ってた時にこの手のlispを探してて
見つけた時は天才かよって思いました。
今なら割と優しい部類のマクロ(lisp)だってことが分かるんですが。
lispはちょっと手に負えなかったんですが
秀丸マクロならなんとかなりそうでありがたいです。

秀丸担当さんはニッチな需要にまで細かく対応されてて
要望がすぐ反映されるって点ではありがたいですが
そのせいで仕様がワケワカメな部分がでてきて
そこそこ秀丸マクロに馴染んできたつもりでいるんですが
サルネン風とか未だによく分かってなかったりします。
2023/06/28(水) 08:57:10.02ID:vM62KADUp
マクロ内でJavaScriptの使い所って、どういう時ですか?
マクロヘルプ読んでもいまいちピンと来ない。
2023/06/28(水) 16:45:18.05ID:v4TLp8OI0
ソースが汎用言語で書ける、ブラウザ用のライブラリも使える可能性高い
人気の汎用言語だからAIに書き方を相談出来る。
独自言語の秀丸マクロだとあと10年経ってもAIは答えない。

それとJSは常駐監視処理(Tick)が出来る。
2023/06/28(水) 21:17:16.44ID:zVjmmHNT0
その辺は分かるんですが、具体的に秀丸マクロで出来ない・面倒な事、秀丸への渡し方とかがピンと来ないんです。
秀丸の不得意といえば文字列(複数改行)の操作とか正規表現かなとおもいますが、JavaScriptといってもライブラリーは秀丸用のを使うのかな…とすると、結局変わらないかー。(対応してるbrong入れてみたけど、結局やれない事が多過ぎて入れる意味はなかった)
2023/06/28(水) 21:17:52.03ID:zVjmmHNT0
あ、Tickってのは知りません。調べてみます
2023/07/02(日) 10:25:14.51ID:DlhSlT0/0
質問
いつの間にか、ブックマークのセパレーターが表示されていません
おま環ですか?
2023/07/07(金) 12:08:49.32ID:mI2O2V3j00707
ユーザーに選択肢をゆだねるマクロとしては
メニュー選択
入力ダイアログ表示(数値・文字入力)
あたりですよね

他にありますか?
2023/07/07(金) 14:02:44.30ID:TwbSDlNy00707
レンダリング枠やブラウザ枠
2023/07/07(金) 17:10:18.67ID:y6UJxPZp00707
shift、ctrl、altを押しながら起動させると動作を変えるとか
選択してる場合としてない場合で動作を変えるとかはしてる
2023/07/07(金) 19:18:32.94ID:Nvf1rq2q00707
>>95
選択肢のGUIってことなら
「はい」+「いいえ」+「キャンセル」 とか 「OK」+「キャンセル」 とかのメッセージボックスもあると思う
2023/07/07(金) 21:54:03.94ID:mI2O2V3j00707
ありがとうございます
2023/07/08(土) 07:28:42.46ID:CUzKXNe60
秀丸エディタ、そろそろレジストリ依存から解放すればいいのに。
101名無しさん@お腹いっぱい。 (ワッチョイW 9fe3-fWh5)
垢版 |
2023/07/09(日) 02:47:26.96ID:phGu8W6j0
持ち出しキット使う話ではなく?
■ このスレッドは過去ログ倉庫に格納されています
16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面