「一太郎」用です。
マクロに入ると、1 文字入力になります。その文字のブックマーク名にジャンプします。
文書の先頭ジャンプ、文書の最後ジャンプ等も可能。
Esc → なにもしないで終了
Ctrl+S → 文書頭へ → 終了
Ctrl+E → 文書末へ → 終了
Ctrl+B → 前ページへ → 終了
Ctrl+N → 次ページへ → 終了
Ctrl+W → 次文書ウインドウへ → 終了
Ctrl+Q → 次の分割画面へ → 終了
a~z、A~Z、0~9 → ブックマークへジャンプ → 終了
Ctrl+M → 選択してブックマークジャンプ → 終了
Ctrl+D → カーソル位置のブックマーク削除 → 終了
Ctrl+Shift+D → ブックマーク名を指定して削除 → 終了
マクロの使い方は、システムマクロで登録し、例えば「Ctrl+W」に割り当てる…など。
Ctrl+W で「次文書ウインドウ」ができますが、Ctrl+Tabで出来るので意味がないです。
マクロ:
!!処理:各種ジャンプ
!!作成:2003.12.21? by T.A.
!!編集:2025.10.31 by T.A.
!!説明:ブックマークにジャンプ。
CommandGuidance("ジャンプ:^d、^D、^e、^m、^q、^s、^w。ジャンプ=0~9、a~z、A~Z。他=中止")
$key=getkey(2,1)
!!ErrorBreakMode(0,0,1)
select case $key
case "{ESC}"
case "^s"
文書頭( )
case "^e"
文書末( )
case "^b"
前ページ( )
case "^n"
次ページ( )
case "^w"
rem 次文書(1)!!順方向
次のウインドウへ()
case "^q"
分割画面ジャンプ(1)
case "0" to "9","a" to "z","A" to "Z"
ブックマークへジャンプ()
case "^m"
マークジャンプ?( )
case "^d"
ブックマークを削除()
case "~^d"
ブックマークを削除2()
end select
!!エラー表示
end
sub ブックマークへジャンプ
CommandGuidance("ブックマックへジャンプ:")
Guidance($Key)
try
ブックマークジャンプ($key)
exception
case "SearchError"
%EC=ErrorCode( )
select case %EC
case 201
Guidance("中止します。")
case 2050
set %Error=MacroEngine.LastError
メッセージ(%Error.Message,0)
end select
Guidance($Key)
end try
end sub
sub ブックマークを削除
!!note:GetMark()によりカーソル位置のマーク番号を得ても、そのマーク名を得る方法がない。GetBookmarkList(2)によりマーク・リストを得てもこのリスト番号とマーク番号とは一致しない。
CommandGuidance("カーソル位置のブックマークの削除:")
%CSRBMN=GetMark() !!=カーソル位置のマーク番号
if %CSRBMN=0 then
メッセージ("カーソル位置にブックマークが有りません。",0)
exit sub
end if
CancelMark(%CSRBMN) !!マーク削除¶debug
メッセージ("カーソル位置のブックマークを削除しました。",0)
end sub
sub ブックマークを削除2 !!直接マークを指定して削除
CommandGuidance("指定ブックマークの削除:")
!! %BMNam=文字入力 (.タイトル="削除するブックマーク名の指定",.長さ=20,.文字数=20,.初期値="") !!=マーク名
%BMNam=InputString("削除するブックマーク名の指定",20,20) !!=マーク名
!! %BMNam=InputBox("ブックマーク名を指定して下さい。","ブックマークの削除")
if %BMNam=nil or %BMNam="" then
メッセージ("中断します。",0)
exit sub
end if
Guidance("削除:" & %BMNam)
CancelBookMark(%BMNam) !!マーク削除
メッセージ("ブックマーク「" & %BMNam &"」を削除しました。",0)
end sub
!!編集:2025.10.31
sub 次のウインドウへ
NextDocument( 1 ) !!順方向
end sub
sub エラー表示
%err=ErrorCode( )
select case %err
case 0
Guidance("ブックマークジャンプ:" & $key)
stop
case 201
Guidance(%err & ":ESC")
case 2050
Guidance(%err & ":登録されていません")
case else
Guidance("ERR:" & %err)
end select
end sub