[chcp 65001]を入れることによってコマンドプロンプトでUTF-8の文字が扱えるようになる|HUGOの記事を生成してWZ EDITORでファイルを開くWindowsバッチファイル|日付時刻をベースに|(echo %trim%)で変数trimの後ろの余分なスペースが取り除かれる

以下の文字列を、[honyarara.bat]というファイル名で保存するとバッチファイルになります。

以下の内容において、[chcp 65001]を入れることによってコマンドプロンプトでUTF-8の文字が扱えるようになります。

以下の内容において、[cd C:\Users\ai\Desktop\HUGO新規]は、新規ファイルを生成したいディレクトリ名をフルパスで考えて、自分の環境に合わせて書き換えてください。

@echo off
:: 文字コードをUTF-8に設定
chcp 65001 > nul

:: 現在の日時を取得
for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /value') do set datetime=%%I
set datetime=%datetime:~0,14%

:: バッチファイル自身のフルパスを取得
set "batchpath=%~f0"

:: バッチファイルを一時ファイルにコピー
copy "%batchpath%" "%temp%\temp_batch.bat" >nul

:: 一時ファイルの内容を更新して元のファイルに上書き
(
    echo @echo off
    echo setlocal enabledelayedexpansion
    echo.
    echo :: Last updated: !datetime!
    echo.
    type "%temp%\temp_batch.bat"
) > "%batchpath%"

:: 一時ファイルを削除
del "%temp%\temp_batch.bat"

:: 以下、元のスクリプトの機能を実行

cd C:\Hugo\Benkyo\content\sakura-editor

set TIME2=%TIME: =0%
set mdfilename=%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%-%TIME2:~0,2%-%TIME2:~3,2%-%TIME2:~6,2%-09-00
(
echo +++
echo date = "%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%T%TIME2:~0,2%:%TIME2:~3,2%:%TIME2:~6,2%+09:00"
echo slug = "%mdfilename%"
echo categories = ["サクラエディタ","正規表現","日本語表現"]
echo tags = ["●●●タグ"]
echo title = "●●●タイトル"
echo +++
echo.
echo.
echo ## ●●●タイトル
echo.
) > "%mdfilename%.md"

start "" "C:\Program Files\WZ EDITOR 10\wzeditor.exe" "%mdfilename%.md"

exit /b

HUGOの更新時刻を生成するバッチ

@echo off
set TIME2=%TIME: =0%
echo lastmod = "%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%T%TIME2:~0,2%:%TIME2:~3,2%:%TIME2:~6,2%+09:00" | clip

コマンドプロンプトで["][<][>][&][|]は[^]でエスケープする|[%]は[%%]としてエスケープする

以下のコードを[SJIS][CR+LF]で[command-prompt-escape.mac]などのファイル名で[C:\Users%USERNAME%\AppData\sakura]に保存してください。 そのファイルは、サクラエディタのマクロとして使えます。 [SJIS]を採用するのは、[かな][カナ][漢字]などの2バイト文字を置換できるようにするための必須条件です。

サクラエディタ

//コマンドプロンプトの記号をエスケープする
S_ReplaceAll('[\r\n]+', '\n', 148);

S_ReplaceAll('"', '^"', 42); 
S_ReplaceAll('<', '^<', 42); 
S_ReplaceAll('>', '^>', 42); 
S_ReplaceAll('&', '^&', 42); 
S_ReplaceAll('|', '^|', 42); 
S_ReplaceAll('%', '%%', 42); 

//完了
//S_ReplaceAll('^(?!■).+$', '', 44);
//S_ReplaceAll('^[\r\n]+', '', 44);
S_ReplaceAll('[\n]+', '\r\n', 44);
S_ReDraw(0);
S_SelectAll(0);
S_Copy(0);

正規表現にかんして[(][)][[][]][<][>][?][|]を[¥]でエスケープする

以下のコードを[SJIS][CR+LF]で[command-prompt-escape.mac]などのファイル名で[C:\Users%USERNAME%\AppData\sakura]に保存してください。 そのファイルは、サクラエディタのマクロとして使えます。 [SJIS]を採用するのは、[かな][カナ][漢字][記号]などの2バイト文字を置換できるようにするための必須条件です。

Windowsのシステムロケールを[SJIS]から[UTF8]に変更すれば、もしかすると[dadadada.mac]を[UTF8][CR+LF]で保存しても、[かな][カナ][漢字][記号]などの2バイト文字を置換できるようになるかもしれません。 しかし、古いフリーウェアの[メニュー文字などが文字化けする]と使いづらいだろうことを懸念し、まだWindowsのシステムロケールを[UTF8]に変更する試みは、行なっていません。

Windows 10の文字コード(システムロケール)をUTF-8に変更する方法 | PC,LAN,WiFi,NASの出張トラブル解決,中小企業のITサポートは(株)とげおネット

サクラエディタ

//正規表現の記号をエスケープする
S_ReplaceAll('[\r\n]+', '\n', 148);

S_ReplaceAll('(', '\(', 42); 
S_ReplaceAll(')', '\)', 42); 
S_ReplaceAll('[', '\[', 42); 
S_ReplaceAll(']', '\]', 42); 
S_ReplaceAll('<', '\<', 42); 
S_ReplaceAll('>', '\>', 42); 
S_ReplaceAll('?', '\?', 42); 
S_ReplaceAll('|', '\|', 42); 


//完了
//S_ReplaceAll('^(?!■).+$', '', 44);
//S_ReplaceAll('^[\r\n]+', '', 44);
S_ReplaceAll('[\n]+', '\r\n', 44);
S_ReDraw(0);
S_SelectAll(0);
S_Copy(0);