Skip to content

Commit

Permalink
Merge pull request sakura-editor#718 from m-tmatma/feature/copydirpath
Browse files Browse the repository at this point in the history
開いているファイルのフォルダのパスをクリップボードにコピーできるようにする
  • Loading branch information
m-tmatma authored Dec 30, 2018
2 parents be20c4c + e438af7 commit 91b19b6
Show file tree
Hide file tree
Showing 26 changed files with 229 additions and 1 deletion.
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
- [単体テスト](#単体テスト)
- [デバッグ方法](#デバッグ方法)
- [変更履歴](#変更履歴)
- [マクロのサンプル](#マクロのサンプル)

<!-- /TOC -->

Expand Down Expand Up @@ -123,3 +124,8 @@ https://ci.appveyor.com/project/sakuraeditor/sakura/history
で説明している手順でローカルで確認できます。

[CHANGELOG.mdについて](https://github.com/sakura-editor/sakura/wiki/CHANGELOG.md%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6) のページに`CHANGELOG.md` に関する説明を記載しています。

## マクロのサンプル

[tools/macro](こちら)でマクロのサンプルを提供してます。
もしサンプルを作ってもいいよ~という方がおられましたら PR の作成お願いします。
1 change: 1 addition & 0 deletions help/macro/macro.HHP
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ source\reference\clipboard\S_CopyLinesAsPassage.html
source\reference\clipboard\S_CopyLinesWithLineNumber.html
source\reference\clipboard\S_CopyPath.html
source\reference\clipboard\S_CopyFilename.html
source\reference\clipboard\S_CopyDirPath.html
source\reference\clipboard\S_CopyTag.html
source\reference\clipboard\S_CopyKeyBindList.html
source\reference\insert\S_InsertDate.html
Expand Down
5 changes: 5 additions & 0 deletions help/macro/macro.hhc
Original file line number Diff line number Diff line change
Expand Up @@ -612,6 +612,11 @@
<param name="Local" value="source\reference\clipboard\S_CopyFilename.html">
<param name="ImageNumber" value="9">
</OBJECT>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="���̃t�@�C���̃t�H���_�����R�s�[">
<param name="Local" value="source\reference\clipboard\S_CopyDirPath.html">
<param name="ImageNumber" value="9">
</OBJECT>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="���̃t�@�C���̃p�X���ƃJ�[�\���ʒu���R�s�[">
<param name="Local" value="source\reference\clipboard\S_CopyTag.html">
Expand Down
8 changes: 8 additions & 0 deletions help/macro/macro.hhk
Original file line number Diff line number Diff line change
Expand Up @@ -185,6 +185,11 @@
<param name="Name" value="S_CopyFilename">
<param name="Local" value="source\reference\clipboard\S_CopyFilename.html">
</OBJECT>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="CopyDirPath">
<param name="Name" value="S_CopyDirPath">
<param name="Local" value="source\reference\clipboard\S_CopyDirPath.html">
</OBJECT>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="CopyKeyBindList">
<param name="Name" value="S_CopyKeyBindList">
Expand Down Expand Up @@ -1099,6 +1104,9 @@
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="S_CopyFilename">
<param name="Local" value="source\reference\clipboard\S_CopyFilename.html">
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="S_CopyDirPath">
<param name="Local" value="source\reference\clipboard\S_CopyDirPath.html">
</OBJECT>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="S_CopyKeyBindList">
Expand Down
16 changes: 16 additions & 0 deletions help/macro/source/reference/clipboard/S_CopyDirPath.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<html><head><title>S_CopyFolder</title>
<LINK REL="stylesheet" TYPE="text/css" HREF="../../sakura.css">
<meta http-equiv="Content-type" content="text/html; charset=Shift_JIS">
</head>
<small>
Sakura-Editor Macro Reference
</small>
<h2>S_CopyFolder</h2>
<dl>
<dt>機能</dt>
<dd>このファイルのフォルダ名をコピー</dd>
<dt>構文</dt>
<dd><i>void S_CopyFolder ( )</i></dd>
</dl>
<hr>
</body></html>
1 change: 1 addition & 0 deletions help/macro/source/reference/clipboard/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
<li><a href = "./S_CopyColorHtmlWithLineNumber.html">S_CopyColorHtmlWithLineNumberl</a></li>
<li><a href = "./S_CopyPath.html">S_CopyPath</a></li>
<li><a href = "./S_CopyFilename.html">S_CopyFilename</a></li>
<li><a href = "./S_CopyDirPath.html">S_CopyDirPath</a></li>
<li><a href = "./S_CopyTag.html">S_CopyTag</a></li>
<li><a href = "./S_CopyKeyBindList.html">S_CopyKeyBindList</a></li>
</ul>
Expand Down
1 change: 1 addition & 0 deletions help/macro/source/reference/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -185,6 +185,7 @@
<li><a href = "./clipboard/S_CopyColorHtmlWithLineNumber.html">S_CopyColorHtmlWithLineNumberl</a></li>
<li><a href = "./clipboard/S_CopyPath.html">S_CopyPath</a></li>
<li><a href = "./clipboard/S_CopyFilename.html">S_CopyFilename</a></li>
<li><a href = "./clipboard/S_CopyDirPath.html">S_CopyDirPath</a></li>
<li><a href = "./clipboard/S_CopyTag.html">S_CopyTag</a></li>
<li><a href = "./clipboard/S_CopyKeyBindList.html">S_CopyKeyBindList</a></li>
</ul>
Expand Down
20 changes: 20 additions & 0 deletions help/sakura/_RESOURCE/HLP000380.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML lang="ja">
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<link rel="stylesheet" href="dsk_sakura.css" type="text/css">
<link rel="shortcut icon" href="images/favicon.ico">
<TITLE>このファイルのフォルダ名をコピー</TITLE>
<META NAME="MS-HKWD" CONTENT="このファイルのフォルダ名をコピー">
<META NAME="MS-HKWD" CONTENT="CopyDirPath">
</HEAD>
<BODY>
<script type="text/javascript" src="item.js"></script>
<noscript>[<a href="HLP000001.html">目次</a>]<br></noscript>
<h2>このファイルのフォルダ名をコピー</h2>
現在編集中のファイルのフォルダ名をクリップボードへコピーします。<br>
<br>
<a href="HLP000204.html"><b>マクロ構文</b></a><br>
・構文: CopyDirPath( );<br>
・記録: ○<br>
</BODY></HTML>
5 changes: 5 additions & 0 deletions help/sakura/sakura.hhc
Original file line number Diff line number Diff line change
Expand Up @@ -595,6 +595,11 @@
<param name="Local" value="_RESOURCE\HLP000056.html">
<param name="ImageNumber" value="9">
</OBJECT>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="���̃t�@�C���̃t�H���_�����R�s�[">
<param name="Local" value="_RESOURCE\HLP000380.html">
<param name="ImageNumber" value="9">
</OBJECT>
<LI> <OBJECT type="text/sitemap">
<param name="Name" value="���̃t�@�C���̃p�X���ƃJ�[�\���ʒu���R�s�[">
<param name="Local" value="_RESOURCE\HLP000175.html">
Expand Down
4 changes: 4 additions & 0 deletions help/sakura/sakura.hhk
Original file line number Diff line number Diff line change
Expand Up @@ -453,6 +453,10 @@
<param name="Local" value="_RESOURCE\HLP000056.html">
</OBJECT>
<LI><OBJECT type="text/sitemap">
<param name="Name" value="���̃t�@�C���̃t�H���_�����R�s�[">
<param name="Local" value="_RESOURCE\HLP000380.html">
</OBJECT>
<LI><OBJECT type="text/sitemap">
<param name="Name" value="���̃t�@�C���̃p�X���ƃJ�[�\���ʒu���R�s�[">
<param name="Local" value="_RESOURCE\HLP000175.html">
</OBJECT>
Expand Down
2 changes: 2 additions & 0 deletions help/sakura/sakura.hhp
Original file line number Diff line number Diff line change
Expand Up @@ -389,6 +389,7 @@ _RESOURCE\HLP000376.html
_RESOURCE\HLP000377.html
_RESOURCE\HLP000378.html
_RESOURCE\HLP000379.html
_RESOURCE\HLP000380.html
_RESOURCE\HLP_UR000.html
_RESOURCE\HLP_UR017.html
_RESOURCE\HLP_UR016.html
Expand Down Expand Up @@ -782,6 +783,7 @@ HLP000376=_RESOURCE\HLP000376.html
HLP000377=_RESOURCE\HLP000377.html
HLP000378=_RESOURCE\HLP000378.html
HLP000379=_RESOURCE\HLP000379.html
HLP000380=_RESOURCE\HLP000380.html
HLP_UR000=_RESOURCE\HLP_UR000.html
HLP_UR017=_RESOURCE\HLP_UR017.html
HLP_UR016=_RESOURCE\HLP_UR016.html
Expand Down
1 change: 1 addition & 0 deletions sakura_core/Funccode_x.hsrc
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,7 @@ F_COPYPATH = 30620, //このファイルのパス名をクリップボード
F_COPYTAG = 30621, //このファイルのパス名とカーソル位置をコピー なし
F_COPYFNAME = 30622, //このファイル名をクリップボードにコピー なし
F_CREATEKEYBINDLIST = 30630, //キー割り当て一覧をコピー なし
F_COPYDIRPATH = 30631, //このファイルのフォルダ名をクリップボードにコピー なし


// 挿入系
Expand Down
1 change: 1 addition & 0 deletions sakura_core/cmd/CViewCommander.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -375,6 +375,7 @@ BOOL CViewCommander::HandleCommand(
case F_ADDTAIL_W: Command_ADDTAIL( (const wchar_t*)lparam1, (int)lparam2 );break; /* 最後にテキストを追加 */
case F_COPYFNAME: Command_COPYFILENAME();break; //このファイル名をクリップボードにコピー / /2002/2/3 aroka
case F_COPYPATH: Command_COPYPATH();break; //このファイルのパス名をクリップボードにコピー
case F_COPYDIRPATH: Command_COPYDIRPATH();break; //このファイルのフォルダ名をクリップボードにコピー
case F_COPYTAG: Command_COPYTAG();break; //このファイルのパス名とカーソル位置をコピー //Sept. 15, 2000 jepro 上と同じ説明になっていたのを修正
case F_COPYLINES: Command_COPYLINES();break; //選択範囲内全行コピー
case F_COPYLINESASPASSAGE: Command_COPYLINESASPASSAGE();break; //選択範囲内全行引用符付きコピー
Expand Down
1 change: 1 addition & 0 deletions sakura_core/cmd/CViewCommander.h
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,7 @@ class CViewCommander{
void Command_ADDTAIL( const wchar_t* pszData, int nDataLen); /* 最後にテキストを追加 */
void Command_COPYFILENAME( void ); /* このファイル名をクリップボードにコピー */ //2002/2/3 aroka
void Command_COPYPATH( void ); /* このファイルのパス名をクリップボードにコピー */
void Command_COPYDIRPATH( void ); /* このファイルのフォルダ名をクリップボードにコピー */
void Command_COPYTAG( void ); /* このファイルのパス名とカーソル位置をコピー */
void Command_COPYLINES( void ); /* 選択範囲内全行コピー */
void Command_COPYLINESASPASSAGE( void ); /* 選択範囲内全行引用符付きコピー */
Expand Down
21 changes: 21 additions & 0 deletions sakura_core/cmd/CViewCommander_Clipboard.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1118,6 +1118,27 @@ void CViewCommander::Command_COPYPATH( void )
}
}

/* 現在編集中のファイルのフォルダ名をクリップボードにコピー */
void CViewCommander::Command_COPYDIRPATH( void )
{
if (!GetDocument()->m_cDocFile.GetFilePathClass().IsValidPath()) {
ErrorBeep();
return;
}
std::wstring strFolder(GetDocument()->m_cDocFile.GetFilePathClass().GetDirPath());

/* 末尾にバックスラッシュがあれば取り除く */
auto itrClear = strFolder.end();
itrClear--;
if (*itrClear == L'\\')
{
strFolder.erase(itrClear);
}

/* クリップボードにフォルダ名をコピー */
m_pCommanderView->MySetClipboardData( strFolder.c_str(), strFolder.size(), false );
}

// May 9, 2000 genta
/* 現在編集中のファイルのパス名とカーソル位置をクリップボードにコピー */
void CViewCommander::Command_COPYTAG( void )
Expand Down
12 changes: 12 additions & 0 deletions sakura_core/env/CShareData.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1351,6 +1351,12 @@ void CShareData::InitPopupMenu(DLLSHAREDATA* pShareData)
rMenu.m_nCustMenuItemFuncArr[0][n] = F_COPYPATH;
rMenu.m_nCustMenuItemKeyArr [0][n] = '\\';
n++;
rMenu.m_nCustMenuItemFuncArr[0][n] = F_COPYDIRPATH;
rMenu.m_nCustMenuItemKeyArr [0][n] = 'O';
n++;
rMenu.m_nCustMenuItemFuncArr[0][n] = F_0;
rMenu.m_nCustMenuItemKeyArr [0][n] = '\0';
n++;
rMenu.m_nCustMenuItemFuncArr[0][n] = F_OPEN_FOLDER_IN_EXPLORER;
rMenu.m_nCustMenuItemKeyArr[0][n] = 'E';
n++;
Expand Down Expand Up @@ -1414,6 +1420,12 @@ void CShareData::InitPopupMenu(DLLSHAREDATA* pShareData)
rMenu.m_nCustMenuItemFuncArr[CUSTMENU_INDEX_FOR_TABWND][n] = F_COPYPATH;
rMenu.m_nCustMenuItemKeyArr [CUSTMENU_INDEX_FOR_TABWND][n] = '\0';
n++;
rMenu.m_nCustMenuItemFuncArr[CUSTMENU_INDEX_FOR_TABWND][n] = F_COPYDIRPATH;
rMenu.m_nCustMenuItemKeyArr [CUSTMENU_INDEX_FOR_TABWND][n] = '\0';
n++;
rMenu.m_nCustMenuItemFuncArr[CUSTMENU_INDEX_FOR_TABWND][n] = F_0;
rMenu.m_nCustMenuItemKeyArr [CUSTMENU_INDEX_FOR_TABWND][n] = '\0';
n++;
rMenu.m_nCustMenuItemFuncArr[CUSTMENU_INDEX_FOR_TABWND][n] = F_OPEN_FOLDER_IN_EXPLORER;
rMenu.m_nCustMenuItemKeyArr [CUSTMENU_INDEX_FOR_TABWND][n] = 'F';
n++;
Expand Down
3 changes: 3 additions & 0 deletions sakura_core/func/Funccode.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -277,6 +277,7 @@ const EFunctionCode pnFuncList_Clip[] = { //Oct. 16, 2000 JEPRO 変数名変更(
F_COPY_COLOR_HTML_LINENUMBER, //選択範囲内行番号色付きHTMLコピー
F_COPYFNAME , //このファイル名をクリップボードにコピー //2002/2/3 aroka
F_COPYPATH , //このファイルのパス名をクリップボードにコピー
F_COPYDIRPATH , //このファイルのフォルダ名をクリップボードにコピー
F_COPYTAG , //このファイルのパス名とカーソル位置をコピー //Sept. 14, 2000 JEPRO メニューに合わせて下に移動
F_CREATEKEYBINDLIST //キー割り当て一覧をコピー //Sept. 15, 2000 JEPRO IDM_TESTのままではうまくいかないのでFに変えて登録 //Dec. 25, 2000 復活
};
Expand Down Expand Up @@ -744,6 +745,7 @@ int FuncID_To_HelpContextID( EFunctionCode nFuncID )
case F_COPY_COLOR_HTML: return HLP000342; //選択範囲内色付きHTMLコピー
case F_COPY_COLOR_HTML_LINENUMBER: return HLP000343; //選択範囲内行番号色付きHTMLコピー
case F_COPYPATH: return HLP000056; //このファイルのパス名をクリップボードにコピー
case F_COPYDIRPATH: return HLP000380; //このファイルのフォルダ名をクリップボードにコピー
case F_COPYTAG: return HLP000175; //このファイルのパス名とカーソル位置をコピー //Oct. 17, 2000 JEPRO 追加
case F_COPYFNAME: return HLP000303; //このファイル名をクリップボードにコピー // 2002/2/3 aroka
// case IDM_TEST_CREATEKEYBINDLIST: return 57; //キー割り当て一覧をクリップボードへコピー //Sept. 15, 2000 jepro「リスト」を「一覧」に変更
Expand Down Expand Up @@ -1173,6 +1175,7 @@ bool IsFuncEnable( const CEditDoc* pcEditDoc, const DLLSHAREDATA* pShareData, EF
case F_REDO: return pcEditDoc->m_cDocEditor.IsEnableRedo(); /* Redo(やり直し)可能な状態か? */

case F_COPYPATH:
case F_COPYDIRPATH:
case F_COPYTAG:
case F_COPYFNAME: // 2002/2/3 aroka
case F_OPEN_HfromtoC: //同名のC/C++ヘッダ(ソース)を開く //Feb. 7, 2001 JEPRO 追加
Expand Down
2 changes: 2 additions & 0 deletions sakura_core/macro/CSMacroMgr.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,7 @@ MacroFuncInfo CSMacroMgr::m_MacroFuncInfoCommandArr[] =
{F_COPY_COLOR_HTML, LTEXT("CopyColorHtml"), {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_EMPTY, NULL}, //選択範囲内色付きHTMLコピー
{F_COPY_COLOR_HTML_LINENUMBER, LTEXT("CopyColorHtmlWithLineNumber"), {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_EMPTY, NULL}, //選択範囲内行番号色付きHTMLコピー
{F_COPYPATH, LTEXT("CopyPath"), {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_EMPTY, NULL}, //このファイルのパス名をクリップボードにコピー
{F_COPYDIRPATH, LTEXT("CopyDirPath"), {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_EMPTY, NULL}, //このファイルのフォルダ名をクリップボードにコピー
{F_COPYFNAME, LTEXT("CopyFilename"), {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_EMPTY, NULL}, //このファイル名をクリップボードにコピー // 2002/2/3 aroka
{F_COPYTAG, LTEXT("CopyTag"), {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_EMPTY, NULL}, //このファイルのパス名とカーソル位置をコピー //Sept. 15, 2000 jepro 上と同じ説明になっていたのを修正
{F_CREATEKEYBINDLIST, LTEXT("CopyKeyBindList"), {VT_EMPTY, VT_EMPTY, VT_EMPTY, VT_EMPTY}, VT_EMPTY, NULL}, //キー割り当て一覧をコピー //Sept. 15, 2000 JEPRO 追加 //Dec. 25, 2000 復活
Expand Down Expand Up @@ -1039,6 +1040,7 @@ BOOL CSMacroMgr::CanFuncIsKeyMacro( int nFuncID )
case F_COPY_COLOR_HTML ://選択範囲内色付きHTMLコピー
case F_COPY_COLOR_HTML_LINENUMBER://選択範囲内行番号色付きHTMLコピー
case F_COPYPATH ://このファイルのパス名をクリップボードにコピー
case F_COPYDIRPATH ://このファイルのフォルダ名をクリップボードにコピー
case F_COPYTAG ://このファイルのパス名とカーソル位置をコピー //Sept. 15, 2000 jepro 上と同じ説明になっていたのを修正
case F_COPYFNAME ://このファイル名をクリップボードにコピー // 2002/2/3 aroka
case F_CREATEKEYBINDLIST ://キー割り当て一覧をコピー //Sept. 15, 2000 JEPRO 追加 //Dec. 25, 2000 復活
Expand Down
1 change: 1 addition & 0 deletions sakura_core/sakura.hh
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@
#define HLP000377 377 //管理者としてコマンドプロンプトを開く
#define HLP000378 378 //PowerShellを開く
#define HLP000379 379 //管理者としてPowerShellを開く
#define HLP000380 380 //このファイルのフォルダ名をコピー
#define HLP000363 363 //プロファイルマネージャ
#define HLP000029 29 //最近使ったファイル
#define HLP000023 23 //最近使ったフォルダ
Expand Down
1 change: 1 addition & 0 deletions sakura_core/sakura_rc.rc
Original file line number Diff line number Diff line change
Expand Up @@ -2492,6 +2492,7 @@ BEGIN
F_COPYPATH "このファイルのパス名をコピー"
F_COPYTAG "このファイルのパス名とカーソル位置をコピー"
F_COPYFNAME "このファイル名をコピー"
F_COPYDIRPATH "このファイルのフォルダ名をコピー"
END

STRINGTABLE DISCARDABLE
Expand Down
2 changes: 1 addition & 1 deletion sakura_core/uiparts/CMenuDrawer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,7 @@ CMenuDrawer::CMenuDrawer()
/* 175 */ F_COPY_ADDCRLF /* , TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 */, //折り返し位置に改行をつけてコピー
/* 176 */ F_COPY_COLOR_HTML /* , TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 */, //選択範囲内色付きHTMLコピー
/* 177 */ F_COPY_COLOR_HTML_LINENUMBER /* , TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 */, //選択範囲内行番号色付きHTMLコピー
/* 178 */ F_DISABLE /* , TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 */, //ダミー
/* 178 */ F_COPYDIRPATH /* , TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 */, //このファイルのフォルダ名をクリップボードにコピー
/* 179 */ F_DISABLE /* , TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 */, //ダミー
/* 180 */ F_DISABLE /* , TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 */, //ダミー
/* 181 */ F_DISABLE /* , TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0 */, //ダミー
Expand Down
1 change: 1 addition & 0 deletions sakura_lang_en_US/sakura_lang_rc.rc
Original file line number Diff line number Diff line change
Expand Up @@ -2496,6 +2496,7 @@ BEGIN
F_COPYPATH "Copy this file's path"
F_COPYTAG "Copy file path and cursor location"
F_COPYFNAME "Copy this file's name"
F_COPYDIRPATH "Copy this file's directory path"
END

STRINGTABLE DISCARDABLE
Expand Down
35 changes: 35 additions & 0 deletions tools/macro/CopyDirPath/CopyDirPath.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
// MIT License
//
// Copyright (c) 2018 Sakura Editor Organization
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
//
// 「現在編集中のファイルのフォルダ名をクリップボードにコピー」のマクロ機能を
// テストするためのサンプルのキーボードマクロです。
//
// 前提条件
// 1. ver 2.4.0.0 以降のサクラエディタを使用する
// 使い方
// 1. サクラエディタを開く
// 2. なにかテキストファイルを開く
// 3. [ツール] メニューから [キーマクロの読み込み] を選ぶ
// 4. このマクロファイルのパスを指定する
// 5. [ツール] メニューから [キーマクロの実行] を選ぶ
// 6. クリップボードに開いたテキストファイルのフォルダパスがコピーされるので、エディタ等に貼り付ける。
CopyDirPath();
Loading

0 comments on commit 91b19b6

Please sign in to comment.