[ 논문 소설 등 작성시 토털커맨더와 오토핫키 이용해 편집하기 ] |
○ v008_003
● 자세한 설명파일 [ 스크립트 파일은 제외함 ]
v008-003-chm.zip
● 스크립트파일 [ 스크립트 파일 + 도움말 파일 등 ]
v008-003.zip
● added-util
added_util.zip
● 스크립트와 함께 사용가능한
한글-고려-신수-만속장경-고려대장경 영인본- 팔리대장경 목록파일
CATALOG.ZIP
* 참고로 고려대장경 영인본 파일 목록은 영인본 기존 목록파일
catalog_unicode.txt 파일을 그대로 사용하면 되므로 첨부하지 않습니다.
- 경전 열람 목적으로 위 스크립트를 사용시는 스크립트가
일정 폴더 ( 예 \util\wincmd\Plugins\AUTO\ )에서 실행되고,
포터블 sz_viewer 프로그램은 [....\util\sz_viewer\ ] 폴더에 들어 있으며,
인경본 이미지는 CD 나 하드디스크 드라이브 내 image 폴더 안에 들어 있는 것으로 예정하여 구성되어 있습니다. 이런 경우 영인본 열람 뷰어 타이틀 등에 해당 텍스트 정보가 기재되며, 열람 이용에 편할 수 있습니다.
그리고 경전 열람은 lister.exe 프로그램의 이름을 hexview.exe 로 이름을 바꾸어
[ 예: ..\util\ ] 안에 들어 있는 경우 이 프로그램으로 경전 텍스트 열람을 실행하게 됩니다.
계속 열람시 새 창을 계속 열어 놓지 않고 열람하기 위함입니다.
기타 구체적 사정과 편의에 따라 스크립트 내용을 바꾸어서 사용하시기 바랍니다.
신설핫키:
목록내 2번째 관련경전 열람용키 윈도우키 + ,
목록내 3번째 관련경전 열람용키 윈도우키+ .
목록내 관련경전 3개 파일 동시열람키 윈도우키 + /
목록내 이전 파일 열람 이동키 : 윈도우키 + M
목록내 다음 파일 열람 이동키 : 윈도우키 + N
.. 등
////// 새 업그레이드버전 및 과거 버전들은 다음 페이지를 참조하시기 바랍니다. ///////
업그레이드 페이지 web http://blog.paran.com/story007/46956142
---
자세한 내용은 위 CHM 도움말 형태로 보시면 편하리라 생각합니다.
다만, 웹상에서 직접 보시기를 원하시면,
아래 부분을 스크롤 해서 웹페이지상에서 내용을 직접 열람해 보시기 바랍니다.
[ 아래 내용 가운데 스크립트 부분은 - 과거 버전 그대로이며 수정하지 않습니다.
새로 업그레이드되는 스크립트는 압축파일과 chm 파일 형태로 위에 제공하기 때문입니다. ]
----
[요약내용] 문서 작성 방식에 대한 검토와 논의의 이유 - 긴글을 쓰는 과정에서 각 부분파일들의 배열과 그 상태에서 편집과 열람이 쉬운 상태를 만들어 작성하는 방법은 어떤 방식들이 있으며 각 상황에서 어떤 방식이 좀 더 나은가. |
● 긴 글을 써가는 데 있어서 문서작성방법은 오랜 기간동안 반복되는 고민이다.
긴 글을 써감에 있어서 각 글 내용들을 전체적으로 체계를 맞추어 배열해내는 것이 문제고
이 과정에서 각 부분들을 하나의 독립적인 단위로 파일로서 관리하는 것이
하나의 파일안에서 문장을 읽어가며 그 때 그 때 각 부분을 파악하는 것보다 수월한 작업이 된다.
그런데 각 부분부분을 독립된 파일로 만들어 폴더에 넣어 관리할 때
다시 이 파일들을 결국 어떤 순서체계로 배열해 관리하며
결국 많은 파일들의 체계를 어떻게 파악해서 이 각 파일들을 조합하여 최종적으로 전체글을 완성할 것인가가 고민의 핵심사항이다.
물론 글을 쓰는 과정에서는 자신이 글을 쓰고자 하는 주제에 대한 실질내용에 대해 실질적으로 내용을 잘 파악해내고
글의 실질적 내용을 잘 완성해내는 것은 가장 근본적인 문제이지만,
그러나 형식적인 차원에서도 글을 어떤 방식과 체계를 통해 전체적으로 잘 완성해 갈 것인가도 함께 고민이 된다.
그리고 이 가운데 글을 어떤 방식과 체계를 통해 써가는 것이 보다 효율적인가의 문제가 여기에서 살피고자 하는 논의점이고 주제다.
○ 이미 그에 대해서는 저작관련에 관한 방식 그리고 프로그램과 관련하여
Mindmap 형 글쓰기와 그에 관한 프로그램,
그리고 전문적 저작툴이자 프로그램인 Scrivener나
그리고 웹스크랩 전문프로그램이자 저술 프로그램으로 이용할 수 있는 Cyberarticle 등을 검토했는데,
현상태에서는 Cyberarticle이 여러 기능을 비교 검토한 끝에 비교적 가장 좋은 프로그램인 것으로 판단된다.
목적은 결국 글 쓰는 과정에서 산만한 형태로 처음 써가게 되는 각 부분부분 글들을 잘 작성해가고
다시 이 부분부분 글들을 전체 체계의 입장에서 잘 순서를 조정해 전체적으로 체계있는 글을 완성하는 것이
문제인데 같은 기능을 갖는 이들 여러 프로그램들에서 다시 웹 환경에서 보다 효율적으로 작업을 할 수 있도록
도움을 주는 프로그램은 Cyberarticle 프로그램인 것으로 생각된다.
○ 그러나 이 프로그램도 문제가 전혀 없는 것은 아니어서,
관리할 파일 수가 매우 많고 폴더구조도 복잡한 경우에는
각 파일들을 모두 이 체계안에서 관리하는 것이 사실상 힘들다는 문제점이 발견된다.
결국 몇몇 분이 이 체계에서 글작성하는 것을 반대하여
다시 Cyberarticle이 구현해 내는 체계와 방식을
기존 폴더 구조 아래서 별도의 다른 방안으로 비슷하게 구현해낼 수 있는 방안은 없는가를
검토하여 이미 그에 관한 대강의 글을 올렸다.
- 그것은 토털커맨더를 이용한 리스트 파일 작성법을 이용하여
쉽게 관리하고자 하는 파일들의 목록을 출력해 낸 상태에서
이제 이 목록 텍스트 파일을 기초로
문서파일들을 그 안에서 체계적으로 배열해가며 관리하고
동시에 그 파일에서 곧바로 매크로를 이용하여 문서 편집과 열람도 가능하게 만들고자 하는 방식이었다.
결국 이들 여러방식을 통해 구현해내고자 하는
저술작업에 있어서 유용한 방식과 프로그램이란,
전체 긴 글을 작성해 가는 과정에서
그 때 그때 의미가 구분되는 각 부분들을 독립파일단위로 나눠 관리하는 것이 보다 편하며
그런 상태에서 각 부분 부분 조각 파일들을 전체체계와의 관계하에서
어떻게 체계적으로 배치하고 관리할 수 있는가에 초점이 맞춰진다.
그것은 우선 시스템 폴더 상에서 기계적으로 파일을 배열하는 방법 ( 이름순- 시간순- 용량순) 과는 별개로
자신의 체계에 맞춰 각 파일들을 배열하고,
다시 이 배열도 작업과정의 진행을 통해 수시로 자유롭게 재배치할 수 있는 방안을 기초적으로 필요로 한다.
그 다음은 그런 목록 배열을 바탕으로 한 상태에서 그 목록체계에 따라 각 파일을 쉽게 열어 열람도 하고,
편집도 가능하게 지원할 방안을 찾는 것에 초점이 맞춰진다.
이것을 별도의 전문 프로그램을 이용하지 않고 기존 폴더 상에서 구현해내고자 할 때는
결국 다음 방식을 이용하게 된다.
○ 우선 각 글의 성격에 따라 폴더로 분류해 체계적으로 잘 나눠 관리한다.
○ 그리고 폴더 내 글들에 대해 목록파일을 생성시킨 다음
목록 파일 안에서 각 파일들을 전체 글의 체계에 맞춰 자유롭게 잘 배열을 수시로 조정해가며 작업을 진행한다.
○ 그리고 최종적으로 그렇게 각 폴더나 파일로 독립해 나눠 작성한 각 파일들을
최종적으로 목록에서 배치한 순서와 체계대로 하나의 파일로 잘 합쳐 출력한다.
이렇게 과정을 요약할 수 있다.
문서작업에서 요구하는 내용은 이처럼 사실 지극히 단순한 내용이다.
그런데, 문서 작업을 하면서 생성되는 파일들을 문서작업과정에서 갖는 이런 희망과 달리,
자신이 원하는 순서대로 임의로 순서를 변경 조정하며 재 배열해 배치하는 것이
실제 컴퓨터 작업에서는 뜻처럼 쉽지 않다.
매번 파일의 일련번호를 수정하며 작업하기도 힘들고 각 파일의 내용을 쉽게 쉽게 즉시즉시 열람하여
각 파일의 내용을 파악하는 것도 힘들고 여하튼 파일관리작업과정에서 많은 번거로움을 겪게 된다.
그렇다고 긴 글을 오직 하나의 파일로만 작성하여 그 파일안에서만
순서를 정리하고 문장을 다듬고 편집해내는 것은 이보다 더 쉽지 않다.
같은 글을 반복해서 또 읽고 또 읽으며 각 문장부분을 일일히 수작업으로 찾아
재배열하고 편집하는 과정을 거쳐야 하기 때문이다.
그래서 결국 의미가 구분되는 각 부분을 미리 독립된 파일단위로 묶어
관리하는 것이 보다 쉬운 방법이 되는 것이다.
사정이 이렇기 때문에 글을 작성하는 과정에서 이런 작업을 어떤 방식을 통해
구현해 낼 수 있는가가 문제된 것이다.
결국 글 작성과정에서는
글 각 부분 부분의 표현을 다듬고 수정하며 편집하는 과정도 문제지만,
이 각 부분 부분 내용과 또는 독립 작성된 각 부분파일들을
전체 체계에 맞춰 원하는 형태로 수시로 배열을 변경해가며,
그 가운데 가장 나은 형태로 전체 글을 완성시킬 좋은 방안을 찾는 것이다.
그리고 이것이 여기서 살피는 다양한 문서작성방식에 대한 검토과정에서 핵심사항이 된다.
○ 기존에 다양한 방식으로 문서를 작업해오면서, 작성한 파일수가 많아지고 폴더가 복잡해짐에 따라,
이들 파일들의 내용을 검색하고, 각 파일들간에 전체적인 상호 관계를 파악하기 곤란해짐에 따라
글 작성과정에서 많은 문제점을 느껴 새로운 문서 포맷을 찾게 되었다.
- 파일 수가 많아짐에 따라 각 파일에 어떤 내용이 들어 있는가..또 수많은 파일들에서 찾는 파일은 어디에 위치했는가
를 검색해 찾는 것이 작업과정에서 1차적문제가 되는데 많은 문서파일이 이 과정에서 어려움을 느끼게 한다.
- 텍스트 문서가 유니코드를 지원함에 따라, 기존 텍스트로 구현할 수 없는 다양한 글자가 지원되게 되어,
각 파일은 텍스트 문서로 별도 저장하면, 이들 텍스트 문서는 검색이 쉽고 그 검색결과를 일목 요연하게 출력해 준다.
- 그러나 문서작성시 텍스트 문서포맷에만 의존하면 표나 이미지 등 자료를 문서안에 첨부시키기 어렵게 된다.
- 그래서 결국 텍스트 검색도 쉽고, 한편 문서내 표, 이미지 첨부도 쉽고, 동시에 웹 환경에서 글 작업에도 함께
쉽게 연계시킬 수 있는 형태로 HTM 포맷으로 문서 기본 포맷을 변경하게 된 사정이 있다.
○ 그런 검토 끝에 기존에 작성해둔 문서들을 HTM 포맷으로 변환시키고
또 한편 새로 작성하는 글을 위해 htm 기본포맷 문서를 만들고 이를 기초로 빈 HTM문서를 미리 다수 만들어
이들을 서로 하이퍼링크로 기계적으로 상호 연결시켜 놓은 상태에서 문서를 작성하는 방안도 실행하게 된 것이다.
그러나 최근 저술 전문프로그램으로 정평높은 Scrivener 프로그램도 검토하고
다시 Cyberarticle 프로그램을 접해 사용해 보는 가운데
Cyberarticle 프로그램이 개별 글을 작성하는 과정에 매우 효율적인 프로그램임을 알게 된 것이다.
Scrivener 프로그램이 rtf 포맷을 기본적으로 사용하여 문서체계를 구성함에 따라 내부문서에서조차 검색이 원할하지 않고,
웹문서와의 연계작업면에서 효율이 떨어지는 데 반해
Cyberarticle 프로그램이 기본적으로 갖는 강력한 웹스크랩 기능과 함께
앞에서 살핀 문서작성과정에서 구현해내고자 하는 기능들을
거의 충분하게 지원해주고 있기 때문이다.
○ 그래서 Cyberarticle을 통해 글을 작성해 가는 것을 새로 글 쓰는 체계로 삼으려고 했으나,
기존에 복잡한 폴더구조에 다양한 파일형태로 많은 수와 용량이 비교적 큰 파일 들을 관리하던 상태에서는
이들 자료를 모두 Cyberarticle 안에서 관리하는 것에 어려움을 느끼게 된다.
import 과정에 시간도 걸리고, 또 그 안에서 계속적으로 전체파일을 관리하는 것은
기존외부 시스템에서 전문 파일 관리 프로그램을 통해 각 파일들을 관리하고,
다양한 외부프로그램과 연동시켜 각 파일을 사용하던 상태보다 오히려 불편함이 많아지게 된다.
그래서 결국 몇몇 개별 문서 작성과정에서는 Cyberarticle 프로그램이 매우 효율적으로 이용할 수 있는 프로그램임에도,
전체 자료 파일들을 모두 이 프로그램을 통해 관리하는 데에는 한계가 발생하며
이것이 문제점으로 제기되게 된다.
○ 그래서 결국 기존 시스템 폴더 상에 폴더 분류를 통해 파일을 배치하고
그 상태에서 다양한 프로그램들을 파일과 연계시켜 사용하는 가운데,
동시에 문서작업과정에서 앞의 Cyberarticle 프로그램이 구현해내는 문서관리기능을
비슷하게 구현해 낼 수 있는 방안은 없는가 하고 방안을 찾을 끝에
그 방안의 하나로,
우선 total commander를 통해 기존 폴더와 파일 구조에서 쉽게 목록파일을 생성시켜 텍스트 문서로 만들 방안을 찾고,
한편 그렇게 목록을 생성시킨 상태에서 그 텍스트 목록 문서를 텍스트 편집기를 통해
각 파일 배열순서를 자신의 전체적인 글 체계에 따라 수시로 자유롭게 조정 재배열할 수 있게 하고,
다시 그 상태에서 목록에 기재된 파일정보를 토대로 매크로 프로그램을 이용하여
기재된 각 파일들을 곧바로 열람하거나 편집할 방안을 마련해
이 방식을 앞 방식의 대체방안으로 제안해봤다.
결국 이는 전체 시스템 폴더 안에 폴더분류로 각 파일들을 배치한 상태 그대로 놓고,
이 상태에서 앞에서 소개한 Cyberarticle이 구현해내는 개별 문서작성과정에서 구현해내는 각 기능을
유사하게 구현해낼 것을 목적으로 방안을 찾은 것이다.
○ 그래서 이들 방안들을 마련하여 각 방법을 검토해보면,
각 방법은 각기 장단점이 있는데 이제 각자의 입장과 상황에 따라
이 가운데 어느 한 방식을 택해서 문서작성과 파일관리작업을 해나가면 되리라고 본다.
그리고 자신의 상황에 맞춰 어느 방식으로 문서를 작성해 나갈 것인가의 판단과정에
도움이 되도록 각 방식의 대강을 소개하고, 장단점을 표로 간단히 비교해보고자 한다.
또한 이에 덧붙여 기존에
토탈커맨더를 통해 descript.ion 주석파일을 생성시켜 파일을 관리하던 경우를 검토해본 끝에,
토탈커맨더에서 생성시키고 관리할 수 있는 descript.ion 주석파일을 그대로 조금 변형시켜 이용하면
이 파일이 곧바로 앞과 같은 목적으로 파일 순서 배열 배치의 자유로운 편집이 가능한 글 작성용 파일 목록으로 동시에 활용할 수 있음을
발견하게 되고
결국 descript.ion 주석파일을 목록 파일로 그대로 이용하면,
파일관리와 문서작성 양 측면에서 모두 효율적 작업이 가능하게 된다는 사실을 다시 발견하게 되었다.
즉 descript.ion 주석파일을 생성시켜 이를 문서작업과정에서 이용하는 문서작성 목록으로 활용하면
이 descript.ion 주석파일이 토털커맨더와 연계되어 파일관리나 주석(목록내용)관리에도 효율을 증진시키며
동시에 이 descript.ion 주석파일은 그대로,
문서작성과정에서 이용가능한 목록 파일이 되어 자신이 자유롭게 순서를 바꿔 각 파일을 배열한 상태에서
다시 앞의 방식을 이용하여 곧바로 각 파일의 문서열람이나 편집도 동시에 가능한 상태를 구현할 수 있음을
발견하게 된 것이다.
그리고 또 Cyberarticle이 각 조각 파일을 최종적으로 작성체계에 따라 병합 출력할 수 있는 기능이
외부 시스템 폴더 상에도 비슷하게 구현해 낼 수 있음도 발견하게 되었다.
결국 폴더와 파일 포맷과 종류가 복잡 다양하고 파일 수도 많고 개별파일들의 용량도 커서
Cyberarticle을 통해 관리하기 힘든 상황에서도,
몇몇 전문프로그램의 도움을 받아 외부 시스템 폴더에 그대로 각 파일을 위치시켜 놓은 상태에서도
Cyberarticle 프로그램이 개별 문서 작업과정에서 구현해내는 효과적인 문서작성 방식과
엇 비슷한 형태로 구현해 낼 수 있게 된 것이다.
그래서 이 방안을 이 글 끝에 간략히 소개하고자 한다.
( 다만, 외부 시스템 폴더 상에서 이를 구현하기 위해서는 이 작업에 이용하는
각 프로그램의 사용방법에 대해 약간의 기본적 정보가 필요하다.
그래서 소개 내용이 많지만, 사실 글로 소개하기에 복잡할 뿐이며 내용이나 방법자체가 그렇게 복잡한 것은 아니다.)
이는 결국 목록을 텍스트 파일로 따로 만들어 이 목록파일안에서 각 파일의 순서를 조정해가며
목록에 기재된 각 파일을 autohotkey 매크로 프로그램을 이용하여 곧바로 편집기로 열어 문서를 작업하는 방법을 기초로 하고,
단지 그 작업에 이용하는 목록파일을
토탈커맨더에서 각 파일에 대해 주석내용을 관리하는 descript.ion 주석파일 포맷을 이용함으로써,
하나의 descript.ion 파일이
토털커맨더에서는 일반적 파일관리에서 활용되게 하고,
또 한편으로는 동시에 문서작성과정에서의 작업체계 배열과 작업용 목록 역할도 동시에 담당할 수 있게 하는 방법이다.
이 방안이 전에 소개한 방안보다는 조금 관리방법이 향상된 상태로 볼 수 있기에,
이 방법을 끝으로 소개하고,
이와 함께 이런 방법을 사용하고자 할 때
사용할 수 있는 간단한 매크로 스크립트 파일도 함께 작성해 이 안에 첨부해 넣어 보기로 한다.
[요약내용] ● 글 쓰는 방식에 대한 검토 -단순HTM방식과 Cyberarticle방식과 Total commander 방식 |
● 기존 방식들의 장단점 간략 비교
○ 여기서 비교 판단 대상으로 삼는 것은 과거의 문서작성 방법에 여러 문제점을 느끼고
그 대안으로 최근에 고려해본 방식들의 비교에 한정한다.
이미 과거에 사용해온 여러 방식들
예를 들어 문서를 작성할 때 마다 빈 파일을 하나씩 만들어 그 안에서 전체 글을 작성해가고,
그런 가운데 문장을 전체적으로 체계있게 배열편집하기 위해
각 문장부분을 반복해 읽어가며 적절한 위치를 찾아 배열하기 위해 전체 글 가운데
이리저리 각 부분을 찾아 편집 배치해가는 방식
또는 각 부분에 대해 파일을 분리해 작성하고 폴더를 체계적으로 분류한 뒤 그 안에 각 파일을 넣어 관리하는 방식
또는 파일이름에 체계적 일련번호와 제목을 붙여가며 한 폴더내에 저장해 통합관리하는 방식
등등인데,
이들은 글을 작성해가며 문서나 관련자료가 점차 증가하면 할 수록,
체계가 복잡해지기도 하고
또 전체 폴더나 개별 문서 안에서 자신이 작성해 놓은 내용마저도 나중에 찾아 이용하려면
그 문서를 찾아 내기가 힘들어지고,
또 다수의 파일안에서 찾고자 하는 파일을 낱글자 검색등을 통해 검색해 찾아보려도
찾기 쉽지 않은 문제점들이 발견된다.
각 폴더나 파일들을 일정한 체계로 분류해 정리하더라도
폴더와 폴더 파일과 파일들간에 서로 상호 관계나 체계가 잘 파악되지 않고
나중에 이를 체계를 잡아 분류해 놓는 작업도 여간 힘들지 않다.
무엇보다 이런 작업을 하려면 문서를 하나하나 열어서 내용을 검토하고,
그 파일의 재배치를 위한 파일관리를 실행해 나가야 하는데
몹시 번거롭고 힘든 작업이 된다.
또 한번 파일의 체계를 잡아 놓더라도 이후 글을 써나가면서 과거의 분류나 체계를
다시 재조정해야 할 필요성이 수시로 제기되게 되는데
파일명앞에 일련번호를 새로 붙이거나 변경해 배열을 재구성하는 작업을 하기도 힘들고,
파일관리과정에서 여러 어려운 문제들에 부딪히게 된다.
이런 검색이나 열람과정상의 문제는 문서작성에 사용한 파일포맷으로부터 일부 기인하기도 하지만,
일일히 그런 복합적인 사정을 여기서 재 검토하자는 것은 아니다.
단지 문서작업을 하고 하나하나 작업결과가 폴더에 쌓여 갈 수록,
과거에 작성한 파일내용은 그 내용을 쉽게 쉽게 파악하기가 힘든 상태가 되고,
그런 사정으로 시일이 지나 과거 문서내용을 찾아 새 작업시 연결해 이용하기도 힘들게 되고,
또 이용하고자 해도 원하는 파일을 검색해 찾아 내기 힘들고,
찾아내 이용하려고 해도 파일 내용을 다시 파악하기 위해 자신이 작성한 글 마저도 재차 반복해 읽어야 하고,
그런 가운데 각 파일내용은 전반적으로 작업과정에 효과적으로 이용 관리하기 힘든 형태로 방치되기 쉽게 된다.
작업한 파일과 참고자료가 쌓여가면 갈 수록 이들 파일은 폴더안에 뒤범벅이 되어 쌓이게 되고
그럴수록 각 파일 내용은 파악하기 힘들게 되므로 결과적으로 작업에 효율적으로 이용하기 힘든 상태가 된다.
자신이 작성한 문서인 경우도 그렇고 다운받은 외부 자료들도 역시 같은 문제가 발생한다.
자료가 쌓여가면 갈 수록 이런 문제는 점차 증가되어
나중에 문서 작성과정에 이들 자료를 이용하는 작업은 번거롭고 힘들며 고통스런 작업으로 변하게 된다. 이들 자료를 작업시 효과적으로 이용하려면 가장 기초적으로 다수 파일들에서 자신이 원하는 파일을 쉽게 검색해 찾아낼 방법이라도 마련되야 하는데, 파일이 많아질 수록 이 검색작업부터가 쉽지 않아 쉽게 지치고 이용을 포기하게 된다.
아래 각 문서작성 방식에서 장단점을 비교 검토하는 대상으로 삼지는 않고자 한다.
여기서는 그나마 최근에 이런 문제점들을 해결하기 위해
새 문서 작성방식으로 검토했던 방식들에 대해서만 국한해
장단점을 비교하는 것에 그치기로 한다.
[ 단순 htm 링크 빈문서 사용 방식 ]
과거 단순 htm 링크 빈문서 사용 방식 [방법 개요] ● htm 파일로 기본문서 양식과 포맷을 정하고 문서 제목을 00001 부터 일련번호로 정하여 상호간에 하이퍼 링크로 연결되는 빈문서를 문서작업에 필요한 만큼 미리 기계적 방법으로 다수 생성시킨다. ○ 각 빈 문서는 예를 들어 00003 문서는 앞 00002 문서와 뒤 00004 문서와 하이퍼 링크로 연결되고 동시에 목차가 기재될 catalog 문서와도 함께 연결되는 형태로 생성된다. ○ 이제 자신의 글 체계에 따라 대강 문서를 작성할 파일를 구체적으로 배당해 정하고, 그 안에서 적절히 빈 문서를 선택하여 그 안에 각 부분에 대한 글들을 수시로 작성해 나간다. | |
장점 |
단점 |
● 기존 다른 문서 포맷 문서들은 파일수가 증가함에 따라, 다수문서안의 낱글자 검색이 불편하고 개별 문서찾기가 어렵게 된다. 그러나 텍스트 문서나 텍스트를 기반으로 태그가 붙은 htm 문서는 텍스트 전문 검색기의 지원을 받아 원하는 파일의 위치와 각 줄의 내용들을 쉽게 즉시즉시 찾고 열람할 수 있다. 또 종전 다수의 문서파일들에서 각 문서와 각 문서간에 체계적인 관계를 파일 제목만으로 서로 파악하기 힘든 점을 하이퍼 링크나 catalog 목록 파일을 이용하여 어느 정도 관계성을 파악할 수 있다. ○ 동시에 일반 htm 문서는 단순한 텍스트문서와 달리 문서작성시 다양한 표나 그림 사진 등 멀티미디어 자료들을 첨부하여 문서를 꾸밀 수 있다. ○ 또 HTM 문서는 웹기반 환경( 블로그 등) 과 쉽게 연계되어 함께 관리할 수 있다. ○ 부수적으로 토탈커맨더 창의 미리보기CTRL+Q 기능을 이용하면 폴더에 파일이 배열된 상태에서도 각 문서파일 내용을 각 파일에 커서만 갖다 대어 즉시즉시 쉽게 내용을 열람 확인하여, 문서작성과정에서 각 문서를 빨리 열람하고 자료를 이용할 수 있다. ○ 일련번호로 기계적으로 파일제목을 달아 파일글 제목만으로 해당 파일의 내용파악이 쉽게 잘 안되는 문제는 descript.ion 주석파일에 제목을 달아서, 역시 토탈커맨더의 주석내용 보기 기능을 통해, 폴더 열람창에서 쉽게 주석파일안에 붙여둔 제목내용 및 간단한 내용파악을 할 수 있게 된다. - 이상이 기존 방식을 버리고 HTM 형태로 문서기본형식을 정하게 된 대강의 이유다. - |
- 다만 이 방식은 다음이 단점이다. - ● 우선 글을 쓰는 과정에서 글 쓰는 이는 목차 순서에 맞춰 차례대로 쓰는 경우가 드물다. 오히려 그 때 그 때 필요한 각 부분을 찾아 쓰게 되기 쉽다. 그런데 이런 경우, 매번 많은 빈문서에서 자신이 글을 쓸 파일이 몇번째 몇번의 파일인지 파악해 찾아 문서를 작성해가기 힘들다. 그래서 또 일련번호 순서와 관계없이 그냥 아무 빈문서를 선택해 문서를 작성해가면, - 하이퍼링크로 미리 연결된 체계나 번호체계, 가 의미를 잃고 파일들간의 전체 체계가 쉽게 깨뜨려지게 된다. ○ 결국 글 작성과정 편의상 체계에 관계없이 문서작성시마다 그냥 빈문서 가운데 가장 빠른 파일을 선택해 작성하고 순서는 나중에 catalog 파일내에서 재조정해 주는 방안을 사용하게 된다. - 즉 catalog 파일에 각 작성파일들의 하이퍼링크를 연결시키고 이 하이퍼링크 부분을 순서를 재배열하여 각 문서파일간의 체계를 조정하여 앞의 문제를 일부 해결할 수 있다. ○ 그러나 이 역시 매번 catalog 파일을 통하여 이들 파일 순서를 재 조정해 주는 방식은 실제 작업시 번거로움을 준다. 무엇보다도 모든 파일들을 이렇게 htm 하이퍼링크로 연결시켜 체계를 정리해 이용하는 것은 곤란하다. 또 개별파일이 위치나 이름 변경시마다 하이퍼링크 부분을 일일히 찾아 재조정해주는 것도 힘들게 된다. |
Cyberarticle [ 기타 Scrivener, 담비노트, Onenote 등..저술작업용 전문프로그램들 ]
Cyberarticle [ 기타 Scrivener, 담비노트, Onenote 등..] [방법 개요] ● 이들 프로그램을 통한 글 작성방식은 요약하면 다음이다. 전체 글의 대강의 체계를 잡은 상태에서 각 부분에 대한 글을 각 부분 독립 파일을 생성시켜 작성해간다. 문서작성에 필요한 자료도 그와 같이 그 파일 안이나 관련된 폴더에 모은다. ○ 그 다음 이들 각 부분 파일은 파일배열 위치를 수시로 자유 변경시켜 위치 이동을 시킬 수 있다. 그래서 부분 글은 부분 파일 안에서 글을 다듬고, 각 부분글들은 전체적으로 체계를 세워 짜맞춰 전체 글을 완성한다. 이들 프로그램은 이렇게 글 작성시 각 부분들을 개별단위 파일로 관리하고 전체적인 체계는 각 부분글의 배열을 자유로이 이동 변경시켜서 조정하여 최종적으로 전체 글이 완성되면 그 체계로 외부로 결과물을 출력해 낼 수 있게 각 파일의 import 및 export 기능을 지원한다. ○ 문서 작업과정에서는 기존 컴퓨터 시스템에서는 작성 파일들을 파일이름순(숫자순)- 용량-날짜순으로만 배열이 가능하기에 각 부분글의 배열 변경이나 조정이 번거롭고 자유롭지 못한 점을 이들 프로그램은 해소시켜 준다. => 각 부분파일의 자유배열 조정이 가능하다. 따라서 각 파일들을 그 때 그 때 적절한 형태로 전체체계에 맞춰 수시로 배열을 바꿀 수 있게 하고, 최종적으로 이 각 부분파일의 배열을 조정해 전체 글을 완성시킬 수 있게 프로그램이 지원해주는 것이다. 이들 프로그램이 갖는 이런 기능이 문서작업 과정에 매우 효율을 높여주기에 전문 저작툴로서 널리 사용되고 있는 실정이다. | |
장점 | 단점 |
● 프로그램의 기능 설명에서 보듯, 장기간에 걸쳐 자료를 모아 논문이나 소설 등 긴 글을 작성해가는 과정에서 각 부분 부분을 별도 파일로 독립해 작성해가며 이미 작성해둔 각 파일들의 내용을 쉽게 개요로 파악하거나 열람이 쉽게 가능하고, 이를 통해 각 부분 파일안의 글을 하나의 단위로 파악하여 전체 글 체계에 맞게 수시로 위치와 배열을 자유롭게 조정해 전체글을 완성해 갈 수 있는 점이 문서작성과정의 효율을 높이게 하는 핵심적 장점이 된다. ○ 또한 글 작성시 작은 부분 부분에 집중 전념해 문서작업을 진행할 수 있다. 전체적으로 산만한 글을 한 파일 안에 넣어 작업하면 매번 파일을 열어 작업부분을 찾아 작업을 시작하고 진행하는데 혼란을 주기 쉬운데 이런 단점을 해소해준다. ○ 보조적으로 글 작성시 필요한 자료를 다양한 형태로 캡춰해 이용하거나, 이용을 위해 모은 자료들도 체계적으로 분류해 글 작성에 쉽게 찾아 이용할 수 있다. ○ 작성해 둔 각 부분부분의 파일 내용을 쉽게 쉽게 클릭해서 곧바로 그 내용을 파악할 수 있다. ○ 전문 프로그램으로서 무엇보다도 일반 사용자가 사용하기 편한 형태로 인터페이스와 메뉴들이 구성되어 있다. |
● 프로그램 안에서 각 부분 파일의 숫자가 많아질 수록 각 파일들을 일반 파일매니저처럼 통합 관리하는 것이 쉽지 않다. ○ 기존에 작성한 문서가 디스크상의 폴더에 다수 있을 때 이들 자료를 모두 import 해서 작업에 함께 사용하기는 힘들다. 다수의 문서자료나 관련된 사진 자료 등을 import 하려면 시간이 상당히 소요된다. 또 파일 종류에 따라 다양한 포맷 자료가 모두 원할하게 import 되지는 않는다. 용량이 큰 문서자료는 사용시 가끔 프로그램이 다운되는 현상도 관찰된다. 한편 import 한 자료는 기존에 작성한 외부 폴더상의 자료와 작업을 진행할 수록 관계설정과 통합 관리가 불편해진다. 시간이 지나면 다수 파일 들 간에 어느 것이 원본이고 어느 본이 수정본인지 각 파일간에 내용을 비교하거나 일치시키고 각 파일을 백업관리하는 등의 부수적 관리문제가 발생할 수 있다. 이런 문제를 해결하려면 매 작업시마다 결과물을 수시로 export 를 실행해 양 파일의 내용을 일치시키거나 아니면 한쪽은 과감히 관리에서 제외시키고 포기하는 것이 좋다고 본다. ○ 프로그램 안에 작성한 자료가 위치하므로 외부 디스크 폴더에 위치한 상태와 비교할 때 해당 파일에 대해 다양한 프로그램을 통해 이용하기가 좀 불편한 상태가 된다. 굳이 이런 목적으로 이용할 경우에는 해당 파일을 개별적으로 Export를 실행해서 사용해야 하기에 약간의 불편함이 따를 수 있다. |
Total commander + autohotkey macro 이용 작성방식
Total commander + autohotkey macro 이용 작성방식 [방법 개요] ● Cyberarticle ( Scrivener) 등의 저술전문 툴의 특징- 즉 각 부분파일을 원하는 체계로 배열한 상태에서 각 문서를 열람 편집하며 배열을 수시로 조정하는 가운데 최종적으로 글을 완성하는 작업 방식이 가장 큰 장점이다. 이런 장점을 외부 시스템 폴더 상에서도 비슷한 형태로 구현해 낼 방안을 찾는 가운데 마련한 방안이다. ● 방법은 전문 파일관리 프로그램인 Total commander를 통해 일단 관리가 필요한 파일 목록을 다양한 형태로 텍스트 파일 형태로 출력해 낸다. [ 소요시간 30초~5분] 이제 기본적으로 출력된 텍스트 목록 파일을 놓고 그 안에서 자신의 작업 체계에 맞춰 자유롭게 각 파일의 배열을 한다. 그리고 그 각 파일의 열람이나 편집 이용은 autohot key 매크로 핫키를 이용하여 그 목록안에서 곧바로 열람 편집 실행이 가능하도록 지원하여 결과적으로 cyber article 과 같은 유사한 기능을 수행할 수 있도록 지원한다. | |
장점 | 단점 |
○ 기존에 관리하던 시스템 폴더 체계 분류와 구조를 그대로 두고 단지 그 폴더에서 각 목적에 따라 관리하고자 하는 파일들만 추출하여 목록으로 만들어 배열을 수시로 자유롭게 조정해가며 작업과정을 진행할 수 있다. ○ 기존 시스템에서 사용 가능한 다양한 편집기, 검색 프로그램 및 편집 툴을 그대로 사용할 수 있다. ○ 기존에 오래 사용하여 익숙해진 워드프로세서의 다양한 기능을 그대로 사용해 문서작성과정의 효율을 가질 수 있다. ( 축약키, 매크로, 한자변환 등등) ○ 별도의 데이터 베이스나 import export 과정을 거쳐 관리하지 않아도 외부 폴더에서 직관적으로 각 파일들의 파일 관리( 복사, 이동, 편집 ) 등의 작업이 가능하다. 원자료 형태를 그대로 놓고 목록만 각 목적에 따라 작성해 이를 다양한 형태로 이용할 수 있게 된다. |
○ 텍스트 편집기로 목록을 만들어 편집해가며 매크로를 이용해 해당 파일의 편집 열람시 이용할 때 작업 환경 인터페이스가 조금 산뜻하지 못하며, (^^) 아름답지 않게 느끼게 된다. ○ 토털커맨더 프로그램이나 매크로 프로그램의 사용법이 익숙하지 않은 경우 토털커맨더를 통한 descript.ion 주석(=목록파일) 작성편집 이용과 이 목록에 바탕해 매크로를 통한 문서편집 과정전반을 매우 어렵다고 느낄 수 있다. ○ 매크로 프로그램 특성상 각 사용자가 각 파일에 연결시켜 사용하기를 원하는 열람 및 편집 프로그램 등의 종류 설정과 파일 경로가 다 다르고 희망하는 실행옵션 핫키 배당 내용이 다 달라, 각 사용자별로 개별적으로 매크로를 편집해 사용해야 하는데, 이 과정에서 스크립트 편집에 어려움을 느끼기 쉽다. -> 또 이로 인해 오작동이 일어나기 쉽다. ○ 기능은 매크로 프로그램 작성여하에 따라 사용가능한 수많은 프로그램들과 관련해 다양한 형태로 지원될 가능성이 열려 있지만, 매 문서작업의 필요에 따라, 개별적으로 작업에 필요한 매크로를 일일히 작성해가면서 작업에 이용하기는 힘들다. |
[요약내용] ● 글 쓰는 여러 방식에 대한 검토 결과 |
● 기존 문서작성 과정에서
기존 작성 문서 내용 검색이나,
작성 파일과 다수 자료파일들간에 서로 체계와 관련성을 파악하지 못하고
폴더안에서 뒤범벅이 되어 혼란을 일으키는 문제점들을 해결하기 위하여,
문서작성과정에서 사용할 수 있는 다른 대체방안들을 검토하고,
이들 각 방안이 갖는 장단점을 대강 위와 같이 나열해보았다.
이들 비교과정에서는 주관적인 편견이 많이 개입되어 있을 수 있다고 보지만,
작업에 사용하는 파일자료가 많아질수록 다음 사항들에 초점을 맞추게 된다.
○ 우선 찾고자 하는 파일을 효율적인 검색방법을 통해 쉽게 찾을 수 있는가.
○ 각 폴더에 들어 있는 수많은 파일들의 내용을 쉽게 쉽게 즉시 즉시 그 내용을 열람하는 것이 가능한가.
○ 그와 함께 각 파일의 내용을 쉽게 파악할 다른 보조수단 (주석파일 이나 라벨 등)이 마련되어 있는가.
○ 매 작업에 임하면서, 이들 자료를 효율적으로 이용하며 서로 관련시켜가며 계속된 작업을 쉽게 진행할 수 있는가.
○ 더 나아가 각 작업 파일들을 자신의 작업체계에 맞춰 순서를 배열하고 또 작업과정시 이 순서를 수시로 재조정해가며 작업에 이용할 수 있는가?
등을 검토하게 된다.
이런 내용들이 장기간 많은 자료 파일을 가지고 문서 작업을 하는데 작업 효율을 높이는데 매우 중요한 부분이 되기 때문이다.
따라서 주로 이런 관점에 초점을 맞춰 장단점을 비교해 보았다.
사실 1년에 1, 2개의 문서만 작성하거나 자료를 1, 2개만 폴더에 넣고 이용하는 상황이라면,
그냥 노트패드나 워드프로세서를 이용하여 문서를 작성하고 저장 관리한다해도 큰 차이는 없다.
그러나 다수의 다양한 자료를 이용하고,
논문이나 소설, 등등 어떤 글을 장기적으로 체계를 세워 작성해나가고
문서 작업을 관리해가고자 하는 경우에는
위와 같은 방법을 사용하며 작업을 해나가면
작업을 진행하면 할 수록
수많은 번거로움을 증폭시켜 일으키는 원인이 된다.
● 여하튼
앞에서 대체방안들로 생각한 각 방법을 비교해 보면,
한 두 개의 문서작성에 전념하거나,
문서작성 과정에서 웹문서자료를 많이 스크랩해서 참고자료로 이용하는 문서작업시에는
Cyberarticle을 사용해 작업하는 것이 매우 탁월하며 효율적이라고 본다.
○ 다만, 자신이 이미 기존 디스크에 너무 많은 문서파일이나 자료들을 폴더체계를 세워 분류관리해 놓고 있는 경우,
Cyberarticle에 이들을 모두 자료를 import 해 이용하기도 곤란하고,
이들 디스크 상의 자료들과 Cyberarticle을 함께 잘 이용해 통합관리하기가 좀 불편할 수도 있다.
Cyberarticle 내 자료가 기본적으로 Cyberarticle 프로그램을 실행한 이후 이용할 수 있는 형태로 존재하기에
비록 불가능한 것은 아니지만 디스크 폴더상 파일과 Cyberarticle 안의 자료가 조금은 분리되어 이용되는 상황이 된다.
● 결국 각 방식은 각기 서로 다른 장단점을 갖는 것이므로
이들 사항을 검토한 가운데 각자의 문서작업 목적과 상황에 맞춰
이들 방식을 포함하여
기타 자신의 작업상 문제점을 해결해 낼 수 있는 가능한 방식을 찾아서 문제를 해결해 나가고,
또 그런 가운데 필요하면 각 방식들을 그 때 그 때 보조적으로 이용하는 것이 좋다고 본다.
○ 아래에서는 기존에 오랜 기간 hwp 포맷으로만 문서를 작성해 오다가,
최근 검색문제에 부딪혀 본인의 권유로 일련번호로 서로 링크연결된 htm 빈문서에 파일내용들을 옮겨 저장 사용하고,
동시에 descript.ion 주석파일안에 문서제목이나 간략한 내용을 넣어 관리하다가,
최근 본인의 cyberarticle 프로그램 소개로 다시 이 안에 파일을 import 시켜 파일작업을 하다가,
또 다시 토털커맨더+매크로 방식으로 옮겨 사용하는 한 분을 기준으로,
토털커맨더와 매크로 프로그램을 조금 편하게 사용할 수 있도록 만든 각 스크립트를 모은 매크로 집을 소개하고,
한편 문서작성과정이나 기타 다양한 파일관리 과정에서 참조하면 도움될 수 있는 토털커맨더의 기능 약간을
토털커맨더 초보자를 기준으로 소개하고 글을 마치고자 한다
[요약내용] 토털커맨더에서 주석파일descript.ion 생성과 편집 및 목록파일로 변경이용방법 소개 이하에 소개하는 방식은 기존 디스크 드라이브의 폴더 분류체계와 파일을 되도록 그대로 유지한 가운데,
● 토털커맨더 기능 소개
○ 토털커맨더는 파일 관리 전문 프로그램으로서, 그 기능을 모두 소개할 수 없을 정도로 다양하다.
또한 기능을 확장시키는 다양한 플러그인 들이 제공되고 있어서, 플러그인을 통해서 그 기능은 더욱 확장될 수 있다.
따라서 여기서는 토털커맨더의 자세한 기능을 소개하지 않고
단지 문서 작성에 이용할 수 있는 간단한 방안만 소개하고 그치기로 한다.
[이미지-000] 언어설정 방법
처음 프로그램을 다운로드 받아 설치하면 메뉴가 영문으로 나타난다.
사용에 편하게 언어설정을 한국어로 선택후 사용하면 된다.
[이미지-0001] 언어설정
[이미지-01] - 토털커맨더 내 주석파일 변경작업을 통해 주석내용순으로 출력해 열람하는 예
○ 위 샘플은 토털커맨더에서 CTRL+Z 키를 눌러 주석 DESCRIPT.ION 파일 편집과정을 하며 작업한 결과를 기초로,
각 파일에 대한 주석(제목+설명) + 그 파일의 절대경로가 함께 기재 완료되어 출력되고 그 주석 이름순따라 파일 배열을 한 결과이다.
● 테스트 목적으로 작성문서와 그 외 기계적으로 생성한 빈문서를 폴더안에서 많이 첨가해 좀 가혹한 환경에서 테스트해본 결과다.
20886 개의 파일을 한 폴더에 넣고 테스트 해 본 것이지만,
이렇게 한 폴더에 너무 많은 파일을 넣고 관리하면,
파일 관리 전문 프로그램인 토털커맨더를 사용해도 좀 힘들게 된다.
○ 여하튼 위 캡쳐 이미지는 파일이름순[일련번호]로 배열되는 순서와 달리
주석에 넣은 각 파일의 제목 (또는 간단한 설명)을 기준으로 파일들을 배열해 낼 수 있음을 보여준다.
○ 주석파일은 매 파일 작성시마다 CTRL +Z 키를 누르면 각 파일에 대한 개별적 주석내용을 기재할 수 있으며 그 내용은 descript.ion 파일안에 기존 내용에 첨가 생성되게 된다.
위 샘플은 기존에 descript.ion 파일로 일련번호로 작성된 htm 파일 제목으로는 각 파일 내용파악이 어려워 주석파일을 통해 각 파일 내용 파악을 해온 경우이다.
그러나 이런 주석파일이 기존에 descript.ion 파일로 있거나 아니거나,
모두 같은 방식으로 새로 일괄적으로 위와 같은 형태의 목록파일을 쉽게 생성해낼 수 있다.
특히 기존에 descript.ion 주석파일을 생성해 사용해온 경우
주석편집시 Enter 키를 사용하는 등으로, 주석줄끝에 특수기호가 들어가 있는 경우 오토핫키와 연계해 사용할 수 없는 목록파일이 되는데,
이런 경우도 아래에 설명하는 방식으로 기존에 작성해둔 주석파일 내용도 살리고 또 오토핫키와 연계해 사용할 수 있는 목록 포맷 형태로 쉽게 변환이 가능하다.
또 기존에 작성해둔 descript.ion 주석파일에 각 파일의 절대경로가 끝 부분에 (다른 공백이나 다른 기호없이) 기재되어 있지 않아,
문서작성용 목록으로 사용할 수 없는 경우에도 기존 목록 내용을 그대로 이용하여 문서작업과정에 사용할 수 있는 문서작업용 목록 포맷 형태로 쉽게 변환이 가능하다.
그리고 기존에 descript.ion 주석파일을 생성해 사용하지 않은 경우에도
다음 방법으로 기계적으로 기초적인 descript.ion 주석파일을 생성시킨 이후
이전 페이지에 소개한 방식대로 개별적으로 각 파일에 대한 주석내용을 첨가 변경시켜 가며 작업을 할 수 있고,
또 이런 포맷으로 새로 만들어진 descript.ion 주석파일은 이 상태로 편집기로 열어
자신이 작성하고자 하는 글 체계에 따라 파일을 재배열해 각 파일 편집및 열람에 즉시즉시 이용할 수 있고,
또 작성과정에서도 수시로 각 파일 순서 배열을 자유로이 상황에 맞게 변경시켜가면서
각 문서파일을 작성 편집해 갈 수 있다.
또 바로 이런 목적으로 이용하기 위해 descript.ion 주석파일을 위 포맷형태로 생성하고자 하는 것이다.
이렇게 descript.ion 주석파일을 생성시켜 파일관리에 이용하면 이 파일을 기초로
토털커맨더를 통한 파일 관리와 자신의 워드프로세서등 프로그램을 통한 체계적인 문서작성 과정에 모두 "동시에" 함께 사용할 수 있다.
물론 이 목록파일을 다양한 형태로 복사 백업받아 형태나 순서 내용을 변경하여 다른 작업에도 이용할 수 있음은 물론이다.
○ 따라서 토털커맨더를 기초로 문서작업을 할 때는
우선 기초작업으로서, 자신이 작업하고자 하는 파일 -
또는 작업에 필요하다고 예상되는 일정 포맷의 빈 파일 들을 다수 생성시켜 놓고,
이를 일정한 체계로 폴더에 나눠 체계적으로 배치 배열 정리를 마친 후
다시 이 내용을 기초로 기본적인 해당 파일의 절대경로가 기재된 descript.ion 파일을 기계적으로 생성시킨 다음에,
차후 문서를 작성하면서 각 파일에 대한 제목이나, 키워드 등을 첨가기재시켜 나가면 된다.
만일 기존에 주석파일을 만들어 관리하고 있었다면
또 같은 방식으로 절대경로만 기계적으로 추가 기입된 형태로 만들어 이를 앞과 같은 목적으로 이용할 수 있다.
○ 결국 하나의 descript.ion 파일은 그 자체로 토털커맨더에서 주석 내용으로 파일창에 출력해 이용할 수도 있고, 또 이 파일안의 내용을 자신만의 독자적인 문서작업 체계에 따라 체계적으로 작업하는 데에도 이용할 수 있다.
- 또 토털커맨더와 같은 파일매니저의 파일 관리 및 각종 프로그램을 통한 다른 프로그램의 실행 이용도 종전처럼 가능하다.
- 또한 윈도우 내컴퓨터에서 지원하는 파일 관리기능도 모두 함께 사용할 수 있다. ○ 그외 기존에 각 파일에 관해 사용한 여러 프로그램들도 종전처럼 다양하게 모두 적용해 사용가능하게 된다.
- 이와 같이 문서작업환경을 만들고 문서작업을 하며 파일관리도 동시에 해나가고자 하는 것이
여기에서 소개하는 방법의 내용이다.
● 다만 이를 위해서는 우선 토털커맨더가 갖고 있는 기능들을 파악하고
위 목적에 맞게 편하게 사용할 수 있도록
토털커맨더가 갖고 있는 관련된 기능을 우선 익힐 필요가 있다.
토털커맨더 기존 사용자는 이미 잘 알고 사용하는 내용일 수 있지만,
처음 토털커맨더를 대하고 사용하는 입장에서는 낯선 방법이 될 수 있으므로
일일히 사용방법의 예를 캡처해 설명해보기로 한다.
[이미지-02] [ 출력된 descript.ion 의 변경 사용례]
토털커맨더에서 목록을 DESCRIPT.ION 파일로 생성한 상태에서는
그 파일은 텍스트 편집기 (editplus 등)를 통해 자유로이 자신에게 적절한 체계를 통해 파일 배열을 재조정하거나
다른 내용을 별도의 줄을 통해 추가기재해가며 배열할 수 있다.
[이미지-03] [ 목록 파일을 기초로 곧바로 열람이나 편집작업을 하는 예]
각 줄 끝에 ( 끝부분에 다른 기재나 공백없이) 그 파일의 절대경로가 첨가되어 기재된 상태가 되면,
○ 이제 이런 목록 파일 안에
작업 체계에 따라 작업을 원하는 파일의 줄에 커서를 놓고 autohotkey의 매크로 핫키를 누르면 곧바로 그 해당파일에 대한 편집이나 열람을 실행할 수 있다.
이 때 사용하는 매크로 핫키는 사용자별로 원하는 특정한 키 또는 마우스 클릭의 상호 조합으로 자유로이 구성할 수 있다.
또 그 파일과 관련해 실행할 프로그램도 자유로이 설정하거나 변경해가며 사용할 수 있다.
[이미지-04] [descript.ion 목록페이지에서 이용방법]
위 샘플은 htm 파일에 wysiwyg형 웹에디터로 wizhtmeditor (프리웨어)를 연결시켜 실행하는 모습이다.
절대경로가 주석 파일 끝부분에 기재되어 있으면 그 줄에 커서를 놓고 매크로 핫키를 클릭하면
곧바로 해당 경로를 인식해 설정된 프로그램을 통해 실행시키는 것이 가능하게 된다.
그러나 절대경로가 그 줄 끝에 기재되어 있지 않는 다른 부분은 그런 방법으로 사용하기가 곤란한 상태다.
따라서 이처럼 우선 주석 내용을 편집해 이용할 필요가 있다.
[이미지-05] [ descript.ion 주석 파일 작성과 기재된 파일 이름의 추후 변경 등의 관계]
○ 토털커맨더의 문서관리 기능 가운데
토털커맨더에서 CTRL+M 키를 누르면 파일이름 일괄 바꾸기가 가능하다.
각 파일에 개별 주석을 작성해 놓은 상태에서도 이후 자신의 사정 변경과 그 때 그 때 편의에 따라 새로 이름을 일괄적으로 변경하는 것도 가능하다.
통상적인 경우 주석을 작성한 파일의 위치가 바뀌거나 이름이 변경되면,
기존에 작성한 주석 내용이 상실될 수 있는데
다음과 같이 하면 파일이름 변경이나 위치 이동 복사 등 작업시에도
기존의 주석내용을 그대로 변경된 파일에서 이용가능하다.
[이미지-06] [ 파일이름 일괄변경의 예]
○ 우선 토털커맨더에서 지원하는 파일 이름 바꾸기는 다양한 옵션 설정을 통해서 실행할 수 있고
또 각각의 목적에 따라 별도 플러그인을 다운받아 설치한 후 다양한 방법으로 일괄 파일이름 변경이 가능하다.
예를 들어 정규식을 통해서도 변경 가능하고, 사진 파일 이나 음악파일 등의 관리시에는 각 파일에 내장된 다양한 파일 정보를 이용해
파일이름의 일괄 변경도 가능하다. 이런 기능은 수많은 다양한 포맷의 문서나 파일 관리 과정에서 대단히 유용한 기능이 된다.
작업시에 만일 작업내용을 취소하려면 1회에 한해 원 상태로 되돌리는 것도 가능하다.
변경 작업을 행할 때 이전상태의 보전이 필요하면,
작업시 토탈커맨더의 작업 임시폴더에서 변경내역을 기록한 파일을 백업하거나,
결과보고서를 별도로 출력해 보관하는 것도 좋다.
[이미지-07] [ 파일 내용 변경시 descript.ion 주석의 연계 변동 방법]
○ descript.ion 주석내용이 작성된 파일이 이후
폴더 위치나, 이름변경과 같은 여러 변경이 있을 때
그 주석내용도 함께 따라서 변경되고 보전되게 하기를 원하면,
설정 옵션에서 위 메뉴에서 [ 주석도 함께 복사] 부분을 찾아 체크를 해줘야 한다.
만일 체크하지 않으면 파일 변경작업을 할 때 기존의 주석내용은 그 파일에 대한
주석기능을 잃게 된다.
[이미지-08] 토털커맨더의 기본적 파일관리기능과 문서 열람 기능
또 그 상태에서 CTRL+Q 를 눌러 곧바로 그 문서내용을 열람하는 것이 가능함을 보여준다.
○ 위 이미지는 - 이름 변경 작업후에도 주석내용이 종전과 같이 그대로 유지되고,
○ 본래, 토탈커맨더가 갖는 강력한 파일 관리 기능의 편의성은 기본적으로 두 창의 이용을 통한 파일관리에서 비롯된다.
예를 들어 문서 복사나 이동과 같은 파일 관리을 할 필요가 있을 때
작업을 하고자 하는 두 폴더의 창을 열어 놓고
직관적으로 마우스로 끌거나 단축키를 통해 복사하거나 이동시킬 수 있다.
즉 왼쪽 창의 파일이나 폴더를 옆 창에 열려진 폴더 로 -> 쉽게 복사(F5)하거나 이동((F6)시킬 수 있다.
또 양쪽 다른 폴더 내용( 백업용 폴더)의 내용을 서로 비교하거나
특정 파일의 동일성 여부를 비교할 때도 역시 두 창을 통해 쉽게 작업을 행할 수 있다.
한편 각 파일안의 낱글자 검색이나 전체 드라이브에서 특정 파일 검색도 쉽게 이용가능하다.
또 압축파일의 압축해제나 압축등도 기본적으로 쉽게 지원된다.
압축해제시 압축을 풀 폴더를 옆창에 놓고 alt+f5 (압축)나 alt+f9(해제) 를 실행할 수 있다.
그 외에도 FTP 나 네트워크 연결 및 기타 파일관리에 필요한 수많은 관리기능이 제공된다.
● 이처럼 기본적인 파일 관리기능 외에도 토털커맨더는 문서편집시에는 다음과 같은 편의성도 제공해준다.
우선 수많은 각종 포맷의 다양한 문서 내용을 토털커맨더에 내장된 뷰어나 연결된 편집기를 통해 그 내용을 즉시즉시 쉽게 열람하거나 편집할 수 있다.
또 위 이미지처럼 두 창 가운데 한 창을 해당 파일 내용 열람창으로 활용해 열람할 수도 있다.
플러그인 설치에 따라서는 이 옆창을 기초적인 텍스트 편집 창으로 활용하는 것도 가능하다. ( 별도 lister 플러그인 설치 필요)
[이미지-09] [ descript.ion 주석 내용을 창에서 효과적으로 열람하고 이용하는 설정방법]
○ CTRL +Z 키를 통해 각 파일에 간단한 제목이나 설명을 주석으로 붙일 수 있다.
그리고 이 주석 내용을 윈도우 창에 출력해 볼 수 있고,
또 이 주석내용의 이름순 등으로 파일 배열을 행할 수도 있다.
더 나아가, 이렇게 출력되는 내용을 다시 복사해 descript.ion 이나 별도의 목록파일로 생성시키는 것도 가능하다.
- 여기서 이런 작업을 통해 얻고자하는 결과는 각 파일의 절대경로를 쉽게 기존 descript.ion 파일안에 넣어
목록파일을 생성시키는 것이다. -
이와 같은 작업을 행하려면 우선 설정메뉴에서 사용자열지정의 내용 편집이 기초적으로 필요하다.
이렇게 내용편집을 하면 기존에 각 파일이 이름순- 확장자- 용량- 날짜순의 방식으로만 배열되는 방법 외에
다양한 기준을 통해 배열되고 내용이 출력되게 하여 각 파일을 이용할 수 있게 된다.
위 작업을 이를 위해 기초적 환경을 만드는 과정이다.
이미지에 표시된 화살표 대로 새로만들기를 클릭하고 원하는 형태를 작성하면 된다.
[이미지-10] [ 주석내용과- 절대경로가 토털커맨더 창에 출력되오 나오게 편집하는 방법]
이를 위해 우선 빨간 화살표가 가리키는 각 부분을 클릭하여
tc 기본 내장 플러그인을 선택한 다음 메뉴에 나열되는 여러 항목가운데
현재 소개하는 문서작업에 이용할 필요가 있는 정보항목 부분을 선택 클릭한다.
우선 한 빈칸에 경로와 전체이름을 선택해 같이 놓아 위와 같이 배열을 만들 수 있다.
( 물론, 이 전에 미리 주석 내용의 필드를 먼저 생성하는 것이 작업순서상 좋다.
그러나 작업 순서와 관계없이 이 배열은 나중에 바꿔 조정할 수 있다. )
* 참고로 토털커맨더 사이트에서 원하는 다양한 플러그인을 받아 설치하면
다양한 다른 옵션들을 통해서 배열하는 것도 가능하다.
다만 문서관리에는 그다지 관계는 없다. ( 음악파일이나 사진파일 등의 관리시에는 필요한 플러그인을 다운받아 이용하면 된다. )
[이미지-11] [ 설정내용의 변경]
○ 주석을 작성할 시 우선적으로 필요한 것은 독립한 "주석" 필드이다.
그리고 현재 작업 목적상 절대경로가 나타나는 항목은 다른 기타의 항목에서 가장 마지막에 위치해야 한다.
이렇게 기존 항목을 재조정하려면, 오른쪽 끝 부분을 클릭하여 위치 조정을 하면 된다.
[이미지-12] [ 변경이 이뤄진 모습]
○ 변경 작업을 통해 현재 문서작업에 필요한 기본 형태를 만들었다.
이외에도 사용자 필요에 따라 적절히 추가할 항목이 있으면 더 추가해도 관계는 없다.
다만 문서작업에서 아래에 안내하는 방식을 통해 이 내용을 이용하려면
절대경로가 나타나게 되는 항목만은 끝에 위치하게 설정해야 한다.
[이미지-13] [ 새로 설정된 방식으로 파일 창의 내용을 열람하기
○ 설정을 마친 후 창에서 파일명-확장자,,등이 나타나는 부분에서 마우스를 우클릭하면
작은 메뉴창이 나온다.
여기에는 기존의 옵션 외에 앞에서 만든 새로운 배열형태 --즉, 전체이름이라는 항목[이름은 자유설정]- 이 추가로 나열된다.
이제 이것을 선택하면 앞에서 만든 형태대로 해당 내용이 창에 출력되어 나온다.
위 이미지는 그 결과가 출력된 모습이다.
○ 파일 리스트 창을 원래의 기본 상태로 바꾸기를 원할 때는
위 메뉴에 기재된 각 단축키 Ctrl+F2 를 이용하면 편하다.
주석작성시 주석을 출력해주는 기본 형태로 Ctrl+Shift+F2 도 있지만,
이 방법으로는 원하는 주석 내용을 복사해 이용하기가 곤란하다.
따라서 앞과 같은 작업을 통해 새로운 배열 방식을 만들어 이용하는 것이다.
[이미지-14] [ 파일리스트 창에 출력된 내용을 그대로 복사하여 목록파일 만들기]
● 앞과 같이 출력된 상태에서 이 출력된 내용을 기초로 그대로 복사해 목록을 만들기 원하면,
리스트를 만들 파일 부분을 블록설정하고 (전체는 CTRL+A)
그 상태에서 위 메뉴창의 메뉴항목을 통해 해당 내용을 복사를 실행하면 된다.
그리고 이 복사 내용을 텍스트 편집기를 통해 빈 문서를 열어 붙여넣기하면 간단히
원하는 내용이 기재된 목록파일이 완성된다.
○ 그리고 앞으로 문서작업시 이용가능한 기본 목록 형태도 바로 이 방식으로
만들어지게 된다.
이 목록 형식은
즉 토털커맨더에서 descript.ion 주석 파일로 그대로 이용가능한 포맷 형태가 되고,
또 동시에 자신만이 파일배열을 자유로이 변경하여 작업에 이용가능한 목록파일 포맷도 된다.
그리고 이 목록 텍스트를 가지고 autohotkey 매크로를 이용하면,
그 배열순서대로 체계적으로 문서 작성 및 열람 및 편집 및 각 파일의 병합 출력작업들이 모두 가능하게 된다.
물론 자신의 특별한 필요에 따라 해당 내용을 수시로 바꾸어 가면서
각 목록 파일은 다른 이름으로 백업 저장하여 각 목적에 따라 다양하게 이용할 수도 있게 된다.
[이미지-15] [ descript.ion 주석파일의 열람 편집 이용을 위한 기본적 설정]
○ 주석내용이 기록되는 descropt.ion 파일은 속성이 기본적으로 숨김파일로 되어 있다.
앞으로 이 descropt.ion 파일을 자신의 문서작업 체계에 따라 자유로이 편집하며
문서작업에 사용할 목록으로 동시에 이용하려면,
이 숨김 파일을 폴더창에서 쉽게 찾아 볼 수 있도록
설정옵션을 바꾸고 이용하는 것이 편하다.
즉 위와 같이 숨김파일 보기 설정내용을 변경해준다.
[이미지-16] [ 토털커맨더에서 파일 이용 프로그램 등록 방법 및 descript,ion 주석 파일 전문 열람 편집메뉴 생성방법]
○ 토탈커맨더에서는 폴더내 위치하는 각종 파일에 대하여 각기 연계시켜 실행시킬 응용프로그램이 있으면
그 응용파일을 메뉴바에 등록하여 놓고 사용할 수 있다.
프로그램을 실행시킬 때, 윈도우 시스템 - 시작-모든 프로그램- 프로그램 선택 사용방법을 통해서도
실행할 수 있지만,
자신이 자주 사용하는 프로그램은 토털커맨더 메뉴바에 등록시켜 사용하면 더 편하게 이용할 수 있다.
○ 따라서 자신이 작업시 빈번하게 자주 이용하는 프로그램이 있거나,
아니면 토털커맨더의 내장 기능 가운데에서 자주 이용하는 항목,
또는 별도로 자신이 작성해 자주 이용하는 매크로 파일등을
사용자 자신이 원하는 형태대로 자유롭게 위 바에 설치해 편하게 이용할 수 있다.
● 여기서는 기본적으로 각 폴더마다 생성해 이용할 주석파일을
문서작업시 효과적으로 이용하기 위해 주석 열람, 편집 관리용
프로그램으로 두개 (열람용-편집용) 프로그램을 끌어 만드는 예를 통해 이 과정을 살펴보기로 한다.
[이미지-17] [ 실행 파일 등록 및 옵션 설정 ]
우선 각 폴더 주석파일 열람용으로 lister 프로그램을 사용하고
편집용으로 editplus를 사용하기 위해 해당 프로그램 파일이 있는 폴더로 창을 옮기고,
각 파일을 찾은 다음 해당 프로그램 파일을 마우스로 끌어 위와 같이 메뉴버튼 바에 끌어 놓는다.
그러면 기본적으로 위와 같은 아이콘이 형성된다.
만일 이 상태에서 버튼을 클릭하면 앞으로 단순히 그 실행파일이 단순하게 실행될 뿐이다.
그러나 이 상태에서 그 프로그램 파일이 자신의 상황에 맞게
자신이 창에서 선택한 파일들과 관련되어 실행되게 만드려면,
이 상태에서 다시 추가 매개변수 옵션을 안에 편집해 설정해 주어야 한다.
이 작업을 하려면, 우선 각 아이콘 위에서 마우스 우클릭한다.
그러면 편집 메뉴가 나타난다.
[이미지-18] [ 프로그램 실행 매개변수 설정 편집]
나타난 메뉴창에서 -변경 을 선택하면 편집창이 나온다.
이제 이 편집창에서 매개변수 항목부분에 " %P[대문자] descript.ion " 을 기재해 적어 넣는다.
위 매개변수 기호는 위 내용외에도 토털커맨더 도움말을 참조하면 다양하게
원하는 형태로 정해 설정할 수 있다.
보통의 다른 응용프로그램들인 경우 %P[=경로]%N[=파일이름+확장자]을 적으면
창에서 이 응용프로그램으로 실행시킬 파일을 커서로 선택한 다음
아이콘을 클릭하면 이 응용프로그램은 선택한 파일을 자동으로 인식해 실행하게 된다.
● 여기서는 토털커맨더 각 창으로 열려진 폴더 안의 descript.ion 파일 만을
따로 중점적으로 관리하기 위한 메뉴를 신설하는 과정이므로,
매개변수 내용을 위와 같은 형태로 기재해 사용하고자 하는 것이다.
또 이 방식대로 단순열람용 프로그램 lister 항목도 같은 형태로 설정해주면 된다.
참고로 lisrter 프로그램은 프로그램안에도 내장되어 있지만
현재와 같이 이용하기 위해서는 토탈커맨더 사이트에서 별도로 독립파일을 다운 받아 이용해야 한다.
[이미지-19] [ 등록한 버튼 메뉴의 이용 예]
이제 편집용 아이콘을 클릭하면
무조건 커서가 위치한 "폴더 안에 위치한" 주석 파일 descript.ion 파일을 등록한 편집기가 열어 곧바로 편집 이용할 수 있게 열어주게 된다.
그런데 이 상태에서 열려진 주석 파일 내용을 보면, 앞에서 처음 작성해둔 배열 체계가 이름순으로
소트되어 변경되고 재배열되어 있음을 확인할 수 있다
○ 그러나 descript.ion 주석 파일 내용은 내용을 추가하거나,
파일의 폴더위치를 이동하거나 해도
처음 작성하거나, 배열한 순서등은 영향받지 않는다.
다만 이처럼 변경된 것은
앞에서 파일이름을 일괄적으로 새번호로 변경하는 과정에서 재배열 정리된 결과다.
따라서 만일 자신이 문서작업 체계에 따라 배열을 바꿔 이용하고,
또 필요한 다른 내용도 별도 줄에 기재해 이용하는 상태라면,
이 내용이 원치않는 형태로 변경되는 것을 방지하기 위해,
자신의 변경작업 내용을 수시로 별도로 백업해가며 관리하는것도 좋다.
[이미지-20] [ 앞의 창 항목 배열방법에 따른 내용 복사 과정]
위 이미지는 앞 [이미지-14]항목에서 설명한 것처럼, 토탈커맨더 창에 자신이 설정한 형태대로 내용이 나열되게 하여
그 내용을 복사하여
다른 DESCRIPT.ION 파일을 하나 열어 그 안에 이 내용을 붙여 넣기 하여 새로운 주석을 만드는 과정이다.
복사 방법을 위 메뉴처럼 실행하면, descript.ion 에서 사용하는 방식 그대로 복사해 넣을 수 있다.
물론 다른 방식으로 ( 이전 페이지에서 소개한 방식처럼) 각 파일 경로를 복사해 넣고
다시 이를 재 편집하여 descript.ion 의 형식으로 변경작업을 할 수도 있다.
그러나 위 방법으로 하면 간단하게 작업을 마칠 수 있다.
한편, 주의할 점은 한 줄에 기존 파일에서 작성된 절대경로와 새로 작성된 절대경로 내용이 이중으로 기재되게 되면,
오토핫키 매크로가 해당 파일의 경로를 인식해 사용하는 것이 곤란해진다.
절대경로의 내용은 한 줄에 정확한 경로로 하나만 기재되어 있어야 한다.
따라서 하나의 줄에 절대경로의 내용이 그 끝에 다른 추가 내용이나 공백이 덧붙여지지 않는 형태로 기재되도록
DESCRIPT.ION 파일을 작성해 이용할 필요가 있다.
[이미지-21]
○ 한편 매 파일 사용 도중
토털커맨더 창에서 주석 작성 작업을 할 파일위에 커서를 놓고
위 메뉴창을 이용하면 그 하나의 파일에 대한 주석 편집작업을
개별적으로 할 수도 있다.
각 메뉴창에는 이용가능한 단축키가 제시된다.
따라서 하나의 파일에 대해 개별적 주석편집을 하려면
그 파일 위에서 단축키 CTRL+Z 를 이용해 편집할 수도 있다.
[ 다만, 아래 오토핫키 매크로에서는 위 단축키 CTRL+Z를 누르면
절대경로가 기재되지 않는 파일의 경우에 한해,
그 파일의 절대경로가 자동으로 끝에 붙어 기재되도록 내용이 변경되어 있다..참고]
[이미지-22] [ descript.ion 주석 파일 기재상 주의점]
○ 기본적으로 주석창에서는 적을 수 있는 분량이 제한된다.
만일 별도로 해당 파일과 관련해 추가할 내용이 있으면 직접 파일을 열어 별도의 줄에 따로 기재하면 된다.
다만 이 경우는 그 내용은 토털커맨더 창이나 설명 팝업창에 출력되지는 않는다.
단지 descript.ion 파일을 직접 열어 참조할 수 있게 된다.
● 한편, 주석 내용을 기재할 시 ENTER 를 사용해 줄바꾸는 것이 불가능한 것은 아니나,
오토핫키에서 절대경로를 인식해 사용하는 방법을 사용하려면 "ENTER키"를 사용하지 않아야 한다.
ENTER키를 사용하지 않더라도 줄을 바꿔 보기를 원하면 바꿔 볼 수 있고 사용에 큰 지장이 없으니
ENTER키를 사용하지 않고 계속 1줄로만 기재해 나가도록 주의해야 한다.
이 양 방식의 주석 작성 차이는 주석줄에서 다음과 같은 결과의 차이를 낳게 된다.
엔터키를 사용한 주석내용의 결과 : 포맷.htm 주석\n주석..\n주석... d:\\gcwebbook\\NewArticleTemplate\\포맷.htm ?
사용하지 않은 주석내용의 결과: "001-토털커맨더 파일배열.jpg" 주석 주석 주석 d:\gcwebbook\NewArticleTemplate\001-토털커맨더 파일배열.jpg
즉, 엔터기를 사용하면 엔터키가 입력된 부분에 \n 기호가 추가되 기재되고, 또 그 줄의 끝 부분 즉 라인피드 부분에 특수한 기호가 첨가된다.
또한 해당 파일의 절대경로의 기재내용 안에 폴더 구분표시에는 "\\" 기호가 사용되어 표시된다.
따라서 이 상태에서 autohotkey 매크로를 이용하면
이런 여러 이유로 기재된 해당파일의 절대 경로를 파악할 수 없거나 실행시 오작동이 발생하며 사용이 곤란해진다.
물론 이런 상태에서도 엔터키를 입력하지 않은 줄에서는 정상 작동가능하다.
그러나 일부 파일에서 엔터키를 입력해 주석파일을 작성하면, 전체적으로 작업과정에서 오작동을 일으키기 쉬우므로,
주석 작업시 엔터키를 사용하지 않도록 주의해야 한다.
그리고, 만일 기존 주석문서에 엔터키를 사용해 주석을 작성하였다면,
그 상태에서 위 방식으로 새로 기존 주석내용을 이용해 새 descript.ion 파일을 작성하고,
기존의 descript.ion 문서는 폐기하는 것이 좋다.
[이미지-23] [ 토털커맨더에서의 파일 이용]
○ 이제 각 문서를 배열하고 각 문서의 내용을 곧바로 옆 창에서 열람하려면, 위 메뉴 CTRl+Q를 사용하면 된다.
별도의 창에 내장 뷰어를 작동하려면 F3 키를 누를 수 있다.
또 편집을 하려면 F4를 누를 수 있다.
옵션 설정에서 위 각 키에 다른 프로그램을 배당하여 사용하는 것도 가능하다.
참고로 lister 내장 뷰어에 다양한 플러그인을 설치하면
다양한 여러 종류의 포맷 문서들도 텍스트 문서처럼 곧바로 옆창이나 별도 창을 통해 열람가능하다.
음악파일 재생이나, 동영상재생, pdf 파일 열람,,,, 등등 및 lister 를 통해 직접 문서 편집도 가능할 수 있다.
물론 앞에서 본 것처럼 각 프로그램을 버튼바에 등록시켜 놓고 옵션을 기재한 후 사용할 수 있다.
예를 들어 사진 편집 과정에서는 다양한 프로그램을 각 목적에 따라 사용할 수 있는데
이런 경우 그 프로그램을 버튼바에 등록시켜 놓으면
해당 파일에 대하여 각 목적에 따라 다양한 프로그램을 선택해 사용하는 것이 가능하다.
메뉴바에 등록한 프로그램이 많아지면 추가 메뉴바를 여러개 설치해 선택 사용하는 것도 가능하다.
[이미지-24] [ 파일 내용을 열람하면서 주석 내용 기재작업]
○ 각 파일에 커서를 놓고 CTRL+Q 키를 누르면 그 파일 내용을 옆창으로 곧바로 열어 볼 수 있다.
이 상태에서 해당 파일의 키워드를 찾아내 주석파일에 붙임으로써 일련번호 대신의 파일 제목으로 이용하거나
보충 설명 내용으로 참조에 이용할 수 있다.
위 상태에서 커서를 계속 내리면 역시 계속해서 파일 내용을 열람할 수 있다.
한편 이 창을 닫고 원래의 파일창으로 이용하려면, 다시 CTRL+Q를 누르면 된다.
[이미지-25] [ 각 파일에 대한 별도의 실행 프로그램 등록 이용 ]
○ 한편 각 파일을 클릭할 때 곧바로 연결되어 실행되는 프로그램이
기본적으로 윈도우 시스템에 설정되어 있다.
그런데 사용자는 이런 내용과 달리 별도로 연결프로그램을 설정해 이용하는 것도 가능하다.
예를 들어 htm 확장자인 경우 이 파일을 클릭하면 기본적으로 인터넷 익스플로어가 실행되기 쉽다.
그런데 토털커맨더에서 파일 더블 클릭을 하면 위 기본 프로그램이 아닌
자신이 원하는 뷰어나 편집기가 실행되도록 설정을 바꿀 수 있다.
다만, 이 변경은 토털커맨더에서만 효과를 갖는다.
만일 시스템 연결내용에 직접 변경을 하려면 이 메뉴 위의 메뉴를 이용하거나,
윈도우에서 본래 지원하는 방식을 통해 그 내용을 변경해 사용하면 된다.
[이미지-26] [ 토털커맨더에서 연결프로그램의 설정방법]
○ 위 이미지는 토털커맨더 내부에서 개별 확장자별로 이용가능한 프로그램을 별도로 편집 설정하는 과정이다.
[이미지-27]
○ 여기서는 htm을 기본문서작성용 포맷으로 이용하고
또 파일 클릭시 htm 편집기가 기본적으로 실행되기를 원하므로,
이 항목에서 원하는 웹에디터 프로그램을 선택해 연결하면 된다.
[이미지-28] 토털커맨더에서 연결 프로그램을 설정한 후 실행한 모습
이제 연결프로그램 설정을 마치고 토탈커맨더 창에서 htm 확장자 파일들을 클릭하면
윈도우 시스템에서 연결된 프로그램이 아니라
자신이 설정해둔 프로그램이 곧바로 실행되어 나타난다..
이런 식으로 사용자별로 자신이 원하는 대로 파일확장자별로 특정 프로그램을 설정해 두고 각 파일을 이용하는 것이 가능하다.
● 이외에도 토털커맨더에는 자체의 기능 및 외부 플로그인 프로그램을 통해 확장시킬 수 있는
파일 관리 기능들이 대단히 많다.
다만, 그 외 다양한 기능들은 문서 작성 편집과정에서는 그다지 추가 설명을 할 필요는 없다고 보고
모두 생략하기로 한다.
각 상황에서 사용자별로 파일관리의 구체적 목적과 필요에 따라서 필요한 내용은
개별적으로 도움말 항목을 참조하면 된다고 본다.
● 이상의 방법으로 하나의 문서 폴더에 대한 그 파일의 절대경로가 끝에 기재되는 주석파일을 작성할 수 있게 되었다.
물론 처음 주석파일을 단순 생성해 작성할 때는 절대경로가 기재되지 않는다.
또 위 방법을 통해 주석파일을 작성해도 처음에는 단순히 절대경로외에는 기재가 없는 상태가 된다.
그리고 각 파일에 대한 구체적 주석내용은
각 문서를 열어보거나 작성 편집과정에서 각 파일에 적절한 키워드나 제목 설명 내용들을
그 때 그 때 각 문서의 내용을 열람해가며 문서안에서 내용을 복사해
주석창에 복사해 넣으면 된다.
[또는 기존에 작성해둔 많은 "텍스트"파일이나 htm 포맷의 파일이 있는 경우
별도로 쉽게 주석 파일작성이 가능한 매크로가 있다..-> 아래 매크로 항목참조]
그러나 굳이 매크로를 이용하지 않더라도,
위 방법을 응용하면 쉽게 쉽게 주석내용을 편집해 이용해 나갈 수 있다.
즉 각 문서를 앞에서 나열한 다양한 방식으로 열람 편집하면서,
그 때 그 때 그 문서의 키워드를 뽑아 주석 내용안에 넣거나
내용을 변경하면서 사용해가면 된다.
참고로 descript.ion 파일을 이용할 때는
빈문서를 일련번호로 기계적으로 생성해 이용할 경우,
각 파일의 제목은 그 일련번호라기 보다는
주석 파일안에 기재된 내용으로 파악할 수 있게 된다.
이 경우는 일련번호는 단순히 작성의 시간적 순서나,
단순히 목록 내 파일 이용을 위해 기계적으로 부여된 관리번호의 의미만 갖게 된다.
한편 주석내용만의 검색은 직접 descript.ion 파일을 열어 검색 확인할 수도 있으며,
토털 커맨더의 찾기에서 플러그인 주석 내용 찾기를 설정해 파일찾기를 실행할 수도 있다.
이상이 기본적으로 토털커맨더가 제공하는 기능을 이용하여
descript.ion 주석 파일을 작성하고
그 파일내용을 토대로 자신의 작업순서에 따른 목록을 편집해내고,
그 목록을 통해 자신이 원하는 체계로 파일을 배열해 이용하거나,
문서작성작업을 해나가는 기본방식이 된다.
● 위와 같이 언뜻 보아 복잡한 과정을 거친 것은
오직 파일배열을 자신의 문서작업과정에서 필요한 배열로 배열하면서
편하게 문서작업을 하기 위함이다.
● 사실 기존 작업과 차이가 있는 것은
오직 이 파일배열을 자신이 원하는 자유로운 형태로 배열해 놓고
각 파일을 이용할 수 있는가 없는가의 차이 하나 밖에는 없다.
그러나 이 단순한 하나의 차이가 실제 작업과정에서는
매우 큰 작업 효율의 차이를 낳게 된다. 또 문서 작성에 매우 효율적인 전문 저술용 프로그램들의 핵심적 기능 사항도 바로 이 부분에 집중되는 것이다.
○ 그리고 바로 이처럼 토털커맨더를 통해 파일관리를 하면서
또 한편으로 자신의 상황에 맞게 각 파일의 목록을
자신만의 체계를 통해 배열해 이용할 수 있도록
목록을 작성하고 이용하기 위해 위와 같이 복잡한 방법이 필요하게 된 것이다.
다만 그림을 보며 한번 실행해 본다면 그다지 어려운 작업은 아님을 알게 된다.
여하튼 이처럼 자신만의 작업 목록을 만들고
이를 기초로 다량의 문서파일관리나 긴 글의 장기간에 걸친 문서작업을 편하게 해나가려면,
토탈커맨더가 제공하는 위와 같은 관련 기능을 파악해 이용하는 것이 필요하다.
○ 좀 더 응용을 한다면 기본 폴더를 통한 분류와 함께 개별 폴더별로 목록을 작성하고
다시 이 목록을 병합하여 이용할 수 있다.
또 검색방법을 통하여 개별적 목록을 작성하여 각각의 목록 들을 각 목적에 따라 효율적으로
이용할 수 있다.
○ 한편 문서 작업시 참조에 이용하는 각종 자료를 일일히 복사해 문서안에 편집해 넣지 않더라도,
그 파일을 각 폴더에 그대로 놓고 해당 파일 경로만 파악해 목록에 편입시키거나,
별도 참조 목록을 만들어 문서작업과정에 이용할 수 있고,
그런 가운데 최종적으로 문서에 발췌해 이용할 부분만 문서안에 포함시켜 편집할 수도 있는 등
다양한 목적으로 이용할 수 있다.
○ 더 나아가 문서 편집 작업 외에도 다양한 업무활동에서 다양한 방식으로 목록 작성 후 이용이 가능하다.
○ 굳이 일일히 개별 자료를 데이터베이스로 가공하지 않더라도
원 자료 형태로 폴더에 두고 목록만 효율적으로 체계적으로 작성해 결과적으로 각 자료를 효율적으로
이용할 수 있다.
● 또 한편 기본적으로 토탈커맨더가 제공하는 파일 관리 기능외에
각자의 상황에 필요한 부가적 기능이 필요하거나,
아니면 기존 토탈커맨더 상에서 단순작업을 반복실행하게 되는 경우에는
다시 autohotkey와 같은 매크로 프로그램을 통해
단순 반복작업을 행하는 것이 그 작업효율을 더 증진시키게 된다.
한편, 원칙적으로 위와 같이 절대경로가 기재된 목록을 만들고 각 파일에 대한 주석을 별도로 작성해 관리하고, 또 그 배열순서를 자신의 작업체계에 맞게 배열하여 목록을 편집 이용한다 하더라도, 토털커맨더의 기능만 기본적으로 이용하는 경우에는 그 목록배열순서에 따라 각 파일을 이용할때 다음과 같은 불편함이 따르게 된다. 즉 일일이 목록 파일을 열어 그 안에서 작업순서나 체계에 따른 파일을 찾고 다시 그 파일을 토털커맨더나 윈도우 열람창에서 다시 찾아 실행하는 과정을 원칙적으로 거쳐야 한다. 그런데 목록을 작성한 이후에는 이 과정을 생략하고 곧바로 각 파일의 절대경로가 기재된 텍스트 목록 파일 위에서 그 파일에 대한 열람이나 편집 등의 문서작업을 곧바로 실행하기 위해서 별도의 오토핫키 매크로가 필요하게 된 것이다. 그리고 그 외에도 오토핫키 매크로는 자신의 컴퓨터 작업과정에서 단순한 반복작업을 매크로를 통해 쉽게 실행할 수 있는 등으로 광범위하게 이용될 수 있다.
따라서 아래에서는 다시 이에 관해 설명을 이어나가고자 한다.
*** 추가 ****
종전에 가장 기본적으로 토털커맨더에서 목록 파일을 생성시키는 방법을 별도 페이지에 올렸었는데,
(http://blog.paran.com/story007/46824937)
상황에 따라 그 방법도 필요할 수 있기에 여기에 그 가운데 필요한 부분만을 발췌해 다시 올립니다.
● 작업1- 자신이 관리할 문서 파일 목록 작성하기 [소요시간: 30 초~ 1분]
● 가장 기본적인 목록 작성 방식
가장 기본적인 목록작성 방식은 텍스트 편집기를 열어 파일을 하나 만들고
자신이 목록을 만들어 관리하고자 하는 파일의 경로를 복사하거나 적어 넣는 방법입니다.
● 목록을 작성해 관리할 파일이 많고 폴더 구조가 매우 복잡한 경우
목록을 만들기를 원하는 파일수가 대단히 많고, 그 폴더 구조도 매우 복잡한 경우
토탈커맨더를 사용하면 다음 방식을 통해 대략 10만개 정도의 파일까지는 10 ~30 여초 또는 그 이상 수백만개의 파일인 경우에도 길어도 5분~10분 안에 해당 파일 리스트를 작성할 수 있습니다.
( 100만 개 파일씩 목록을 만들어 사용하실 분은 드물겠지만, 이론상..^^)
-- 다음 방식으로 진행합니다.--
1. 토탈커맨더를 실행합니다.
1. 자신이 파일 목록(list)을 만들고 싶어하는 폴더를 찾습니다.
1. 단순히 선택한 폴더 안의 파일들만 리스트를 만들고 싶으면 그 폴더안에서 단순히 원하는 파일들을 선택해서 블록설정합니다. ( => 전체 선택은 CTRL+A)
1. 만일 선택한 폴더에서 그 폴더에 속한 하부 폴더안의 파일들까지 모두 리스트를 만들고 싶으면 CTRL + B 를 누릅니다. 이 상태에서 원하는 파일을 선택해 블록설정합니다. ( 전체 선택은 CTRL+A)
1. 그 상태에서 ALT + M + P 키를 연달아 누르면 블록선택한 파일들의 경로가 모두 복사됩니다.
[ // 또는 토탈커맨더 한글메뉴 - 선택 - 전체경로를 포함한 파일명 클립보드로 복사 - 선택실행 // 영문메뉴: Mark -Copy Names with path To clipboard - 선택실행 ]
1. 그 상태에서 텍스트에디터( Editplus 추천)를 열어서 빈 문서에 CTRL+ V 를 눌러 붙여넣기하면 됩니다. [ // 마우스 우클릭 - 붙여넣기 ]
1. 이제 텍스트 파일의 이름을 적당히 적고 저장하면 리스트 파일이 완성됩니다.
○ 기타 더 특수한 목록을 만들어야 할 경우:
● 목록을 만들 파일이 한 폴더 아래에 들어 있지 않고 여러 폴더에 여기저기 나뉘어 있고 그 위치를 자신도 일일이 잘 모르는 경우
1. 토탈커맨더에서 ALT+F7 을 눌러 검색을 실행합니다. [ 한글메뉴 - 명령- 찾기 // 영문메뉴- Commands - Search ]
1. 찾는 옵션은 단순하게 *.hwp 등으로 적을 수도 있고 또는 몇몇 글자를 적어 예를 들어 " 행복론*.*" 이런 식으로도 적어 찾을 수도 있으며
기타 다양한 찾기 옵션을 선택해 실행할 수 있습니다. [ 선택 부분, 디스크, 날짜 제한, 정규식 표현 등 사용.....]
그 이상의 자세한 방법은 토털커맨더의 도움말 파일을 참조하시면 됩니다.
1. 검색이 완료된 상태에서 한글메뉴인 경우 "목록상자에 적용" [영문메뉴: Feed to listbox ] 를 클릭하면 해당 목록이 나열된 폴더가 출력됩니다.
1. 이제 그 부분을 블록선택해서 앞 방식으로 복사해 텍스트 파일안에 넣으면 됩니다.
1. 또는 아예 이들 파일을 관리할 별도의 폴더를 만들어 옮겨 복사한 후 앞의 방법으로 목록을 만드셔도 됩니다. ( 선택사항)
● 특정한 낱글자가 안에 들어 있는 문서들의 목록 작성의 경우
1. 여러 문서 들에서 특정한 낱글자가 들어간 문서만 검색해서 리스트를 만들 수 있습니다.
1. 위 검색 메뉴를 똑같이 열고 되도록 파일 옵션은 *.*로 설정하거나 찾고자 하는 파일확장자를 넣고
그 다음 문자열 부분을 체크한 다음 필요한 여러 옵션을 선택하고
찾는 텍스트 문서에 사용된 코드를 특정해 찾기를 실행하면 됩니다.
1. 역시 검색되어 나온 결과 이후의 처리 방식은 앞과 같습니다.
1. 다만 검색이 가능한 경우는 일반 텍스트문서(htm문서) 등이며, doc 파일이나, hwp 문서안의 낱글자는 원칙적으로 검색되지 않습니다.
( 문서 안에 특정한 낱글자가 들어가 있는 문서 목록 만들기는, 위 방법 외에도 기타 다른 검색프로그램 들의 도움을 받을 수도 있습니다...)
■ 목록 파일 작성시 참고사항:
앞의 방식으로 토털커맨더 폴더에서 파일이 나열된 내용을 복사할 때,
해당 파일들이 배열되는 형태에서 원하는 배열방법을 선택해 배열하면
다양한 형태의 목록파일을 만들 수 있습니다. [ 예: 파일명, 확장자, 크기, 날짜, 속성 등 오름차순 내림차순 등등 ]
그 상태에서 앞의 방식을 통해 복사하면 그 순서로 작성된 목록파일 작성이 1차적으로 가능합니다.
또 나열된 파일안에서 특정한 형식의 파일만 선택할 수도 있습니다. [ctrl+F12 키]를 눌러 원하는 형태를 기재하면 됩니다. 예를 들어 찾는 파일을 *행복*.h*;*진리*.t* 등으로 기재하면 그 형식에 맞는 문서만 나타납니다. 이런 상태에서 블록설정해 복사해 사용하면 됩니다. 다시 전체 문서를 보려면 *.* 로 설정하거나, ctrl+F10 키를 누르면 됩니다.
[ 한글메뉴- 보기 - 사용자정의 ..등등// 영문메뉴- Show - custom..등등 ]
그리고 텍스트 편집기 내에서 복사후 다시 원하는 형태로 소트를 실행하면 또 다른 형태로 일괄 배열이 2차적으로 가능합니다.
[ 예: editplus- 메뉴 - 도구 - 정렬 ]
예를 들어 여러 폴더파일들을 목록으로 만들 때
전체 경로순으로 다시 목록을 정렬할 수 있어서
결과적으로 디스크 상의 폴더 구조 순으로 목록을 만들 수도 있습니다. ( 앞의 파일명은 각 파일이름 순임..)
그리고 다시 기본적으로 이 목록을 가지고
자신이 원하는 유형으로 자유롭게 목록 배열을 할 수 있습니다. ( 이는 자신의 뜻에 따라 배열하는 것이므로 수작업만 가능합니다.)
* 참고: 수작업을 통해 원하는 체계로 배열시
해당 라인을 잘라내거나 복사해 원하는 위치로 옮겨 복사해 넣는 작업을 자주 반복해야 할 경우는,
해당 라인의 내용을 잘라내거나 복사하는 단순작업을 실행할
매크로를 편집기에서 지원하는 매크로로 작성하거나,
아래 소개하는 autohotkey를 통해 매크로를 작성해 작업하는 것이 모두 가능합니다.
추가 파일을 생성할 경우 이 내용을 기존 목록 파일안에 덧붙이는 방식도 같습니다.
즉 추가한 파일의 경로를 위 방식으로 ( 토털커맨더+해당 부분블록설정+ Alt+M+ P 키를 통해) 복사해 목록 파일안에 붙여 넣으면 됩니다.
만일 일정기간 추가된 파일이 많이 있고, 기존 파일의 폴더 위치도 변경이 많이 이뤄진 경우,
목록 작성에 시간이 많이 걸리지 않으므로, 기존 목록을 보존하고
새로 작성하는 것도 가능합니다.
실제 목록작성과정의 설명은 복잡한듯 하지만, 실제 실행해 보면 30 초 정도로 곧바로 리스트 파일을 만들어 낼 수 있습니다.
또 이 방식을 익힌 이후에는 언제든지 필요할 때마다 자신이 관리하고픈 리스트 파일을 그 때 그 때 즉시 즉시 새로 만들어 낼 수 있습니다.
만일 목록파일간 내용비교가 필요한 경우에는 토탈커맨더에서 Alt + F + Y 키를 눌러 비교한 후 그 상태에서 편집가능합니다. ( 한글메뉴: 파일-내용으로비교하기 //영문메뉴 File-Compare by content)
필요한 경우에는 새파일을 만든 후 해당 부분을 블록 선택해 자동으로 특정 리스트 파일로 그 경로가 덧붙여지게 매크로를 작성해 사용할 수도 있습니다.- [ 아래 매크로 설명 참조]
- 이상 관리하고싶은 문서파일 리스트 작성방법을 간단히 마칩니다. -
[요약내용] 오토핫키 매크로 샘플과 이용방법 |
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
이하에 소개하는 방식은 기존 디스크 드라이브의 폴더 분류체계와 파일을 되도록 그대로 유지한 가운데,
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
오토핫키의 문서작업용 매크로
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
○ 이전 글에도 밝혔듯 매크로 프로그램을 만드는 프로그램은 다양하게 있다.
○ 또 매크로는 각자의 사정에 따라 개별적으로 만들어 사용하게 된다.
● 각각의 시스템 상황이나 프로그램 경로 사용 목적 원하는 핫키 배당의 내용 등등이
100 인이면 100 인이 서로 다 다르므로 다른 이가 사용하는 어느 하나의 매크로를
또 다른 이가 그대로 사용하기에는 어려움이 많다.
● 그러나 그렇다하여도 일정한 매크로 내용을 참조하여 자신의 상황에 맞게
변형시켜 편집 이용하는 것은 문서작업과정에 도움이 될 수 있다고 본다.
○ 문서작업에서 매크로의 사용목적은 다음이다.
● 우선 앞의 과정을 통해 토털커맨더를 통해
각 파일에 대한 절대경로가 기재된 목록 파일을 만들었다면
단순히 텍스트로 목록을 만들어 놓는것만으로도
문서 작성이나 편집을 보다 효율적으로 해나갈 수 있게 된다.
그러나 다시 이 상태를 기초로
작성한 그 목록 파일을 열어 해당 파일 줄에 커서를 놓고
핫키나 마우스 버튼을 클릭하면 해당 파일의 편집창이나 열람 창이 곧바로 실행되어
바로 바로 각 문서나 파일을 이용할 수 있게 오토핫키로 매크로를 편집해 사용하면
작업에 효율을 더 증진시킬 수 있다.
다음에 소개하는 오토핫키 매크로스크립트는 이런 기능을 실현시키는 것이
가장 기본적인 목적이다.
○ 이미 다른 페이지에서 이에 관련된 방법을 간단히 소개했지만,
앞에서 소개한 토털커맨더의 descript.ion 편집 방법을 통해 생성된 목록 파일로 기본으로 이용하는 경우,
기존 내용에 조금 추가되거나 변경되는 내용도 있다.
따라서 매크로 작성방법에 대해 아주 기본적인 내용은 이전 페이지나,
그 외 오토핫키의 도움말을 원칙적으로 참조하기로 하고,
다음에서는 토탈커맨더 환경에서 descript.ion 목록 파일을 이용하여,
문서 작성 작업을 진행할 수 있는 매크로를 몇몇가지 소개하기로 한다.
○ 아래에 소개하는 매크로 내용이나 이를 이용한 문서작성 방식은 반드시
그 형태로만 이용해야 한다는 의미가 아니다.
단지 매크로를 통해서 문서작성작업을 할 수 있는 하나의 샘플 예를 제시하고
각 사용자는 이 스크립트 샘플을 참조하여
자신의 상황에 맞게 적절하게 내용을 편집해 이용하는데
도움이 되는 것으로 충분하다고 본다.
● 이미 밝혔듯이
매크로 프로그램은 각 사용자가 사용하는 시스템환경, 프로그램 경로,
설정하고자 하는 버튼키의 내역 등등에 따라
그 내용이 각 사용자별로 천차만별로 다르게 된다.
따라서 상황이 완전히 같지 않으면 원칙적으로
다른 이가 작성한 매크로 스크립트를 그대로 자신이 이용하기는 곤란하다.
여기에 올리는 매크로 스크립트샘플도 같은 사정을 갖는다.
일반적 상황을 예정하여 다수가 공통적으로 사용 가능한
인터페이스를 매크로로 작성해 올리기에는 개인적으로 너무 어려움이 많다.
각자가 사용하는 프로그램의 내용 등등이 모두 다 다르기에
이를 일일이 통일해 매크로 파일을 만들기는 곤란하다고 본다.
따라서 여기서는 단지 위와 같이 목록을 작성하고
이 상태에서 핫키로 목록에 기재된 각 파일을 편집 열람할 수 있는
매크로 스크립트의 샘플을 하나 제시하고,
사용자들이 개별적으로 자신의 상황에 맞게 그 내용을 변형하거나 편집하여
사용할 수 있는 간단한 방법만 추가로 소개하고 마치고자 한다.
--- 제공하는 매크로 스트립트는 작성자의 상황에서는 정상 작동하였으나,
사용자 상황에 따라 오작동이 발생할 수 있으며,
따라서 이 매크로 스크립트들은 어디까지나 사용자 자신의 책임 하에 테스트를 마치고,
자신의 상황에 맞게 재편집해서 사용해야 함을 주의해야 한다. -
만일 특정 기능이 자신의 상황에서 작동하지 않으면
sleep, [시간] 명령을 변경하여 반응시간을 조정하거나,
또는 해당 기능을 다른 방법으로 구현하는 등으로
자신의 목적에 맞게 변형시켜 이용하는 것이 필요하다.
매크로는 작업 상황에 따라 수없이 무한하게 변형 작성할 수 있는 것이므로,
아래와 같은 기본적인 매크로만 제시하는 선에서 그치기로 한다.
프로그램의 설치상태가 각 사용자별로 다르므로
본인은 본인의 사용례만 단순히 제시하는 것임을 주의하고,
매크로 작동여부는 본인의 시스템에서 개별적으로 테스트를 마친 후
필요한 기능만 원하는 형태로 변형시켜 이용하는 것을 원칙으로 한다.
이외 매크로 스크립트를 실행하는 기본적 사용방법 등은
이미 다른 페이지에서 설명하였으므로 반복 설명을 생략하기로 한다.
● 아래 스크립트의 사용에 필요한 기본 프로그램들 ○ total commander ○ 파일뷰어 lister 파일 [프리웨어] : // total commander 에 내장된 형태 외에 total commander 사이트에서 제공하는 독립 프로그램형태로 필요함 ○ 이미지 파일 뷰어 xnview.exe [프리웨어] : ○ 텍스트 편집기 editplus.exe : -- 매크로 테스트 작업전 사전 설정작업이 필요한 프로그램 - 아래 스크립트 샘플에서 작업 중 매 시간마다 슬라이드쇼가 실행되어 휴식시간을 알려주게 된다. 이를 실행하기 위해서는 Xnview 프로그램을 다운받아 스크립트에서 설명하는 방식대로 슬라이드용 리스트 파일 sld 파일을 만들어야 한다..[ 각 sld 파일당 배경 음악 1곡을 삽입할 수 있다.] 파일명은 default.sld 파일과 함께 10.sld 부터 시작해서 33.sld 까지 만들면 된다. 평소에 찍은 사진들로 슬라이드를 만들어 두면 매 시간 휴식시간마다 각기 다른 배경음악과 함께 슬라이드를 볼 수 있다. [이미지-29] [ Xnview 에서 슬라이드 목록 파일 만들기 ]
○ 웹에디터 WizHtmlEditor.exe[프리웨어] :
○ 도스 압축 프로그램 rar.exe :
[이미지-30] [ 슬라이드 설정 사항 예 ]
* 배경음악은 sld 파일당 1곡이 설정 가능하다. * XNVIEW 에서 슬라이드 목록 SLD 파일을 만들 때 "기타옵션" 선택사항에서 "항상 맨 위에 위치" 부분을 체크하여 만들면 핫키로 작은 창으로 바꿔 위치변경이 지원되어 더욱 좋다. * 포터블 환경에서 사용하고자 한다면, [ 특정 드라이브 ] :\totalcmd\Plugins\xnview\sld\ 폴더안에 sld 파일을 생성 저장시켜야 하며 옵션을 상대경로로 선택하고 사진들이 들어 있는 폴더스크립트와 위 폴더가 포터블 드라이브 상태에서도 계속 상대경로로 유지 파악될 수 있어야 한다. 만일 슬라이드 작동시 여러 곡을 다양하게 듣기 원한다면, KMPlayer.exe 등으로 매번 다른 곡 리스트가 별도로 실행되도록 스크립트를 편집 변경 사용하면 된다. ■ 보조프로그램 안내 ■ 한영오타 방지 프로그램 ■ 한글용 단축키 설정 사용 프로그램 : 키보드 속기 ■ 문서작업시 낙서용 - 팬패드 + 프리젠터 프로그램 인터넷 검색이나 문서작업시 그림이나 낙서 등을 할 수 있다. 매크로 핫키를 통해 페이지를 넘기거나 이전 페이지로 옮겨 낙서를 계속 할 수 있다.
사이트에서 스크립트내 설명부분을 표기하는 기호 / * 표기부분이 / * 로 분리되어 나타납니다. 따라서 사용자가 이 상태로 복사해 사용하면 오류가 발생하니, 만일 웹페이지상의 스크립트 부분을 그대로 복사해 사용할 때는 / * 표기된 부분을 찾아 붙여 편집한 후 사용하셔야 합니다. 또한 본 스크립트는 어디까지나 예제이오니, 본인의 시스템에서는 정상작동함을 확인하였으나, ///
스크립트 내용은 아래를 보시고 테스트는 위에서 파일을 다운받아 사용하십시오 . [ 아래 내용 가운데 스크립트 부분은 - 과거 버전( ddd_005_004 )그대로이며 수정하지 않습니다. 이유는 새로 업그레이드되는 스크립트는 압축파일과 chm 파일 형태로 제공하기 때문입니다. ]
/// 추가 주의 사항
현재 블러그 페이지 및 웹페이지에 스크립트내용을 복사해 붙여 올리면,
웹페이지상에서는 스크립트 내용만 검토하시고,
스크립트 테스트를 위해서는 첨부파일을 다운로드 받아 압축을 풀어 확장자를 변경 저장한 후 사용하시기 바랍니다.
사용자가 내용을 검토하고 테스트를 충분히 한 후
자신의 시스템에서 실행하시기 바랍니다.
개별 사용자의 시스템 환경으로 시스템 상에 문제가 발생하거나 오작동이 발생하는 등의 일체의 경우에
본인은 책임을 지지 않습니다. (^^)
; [ 매크로 스크립트 파일 시작 부분 ] Ω♠문서정보♠Ω ™[작성자]™ Prince evilstupidmiserable Little ◑[작성일]◐ 2012-03-목-15-[11weeks 75 days]-07:26 ♨[수정내역]♨ ▩[ 디스크 ]▩ DISK: \G\10\ + gcwebbook\basicformat.xbook ж[ 웹 ]ж web: http://blog.paran.com/story007/46867974 ---- 문서작성과정에 본 스크립트 사용 취지 목적 방식 등의 이해와 관련된 글들 ---------- ● 문서 작업의 기본프로그램 Cyberarticle => http://blog.paran.com/story007/46800330 --cf-- - Editplus로 autohotkey스크립트 짜고 테스트 실행하기 -- ● 컴퓨터상의 문서 보안과 시스템 보안 문제 => http://blog.paran.com/story007/46942387 ● 논문 소설 등 작성시 토털커맨더와 오토핫키 이용해 편집하기[업그레이드용 페이지]=> http://blog.paran.com/story007/46956142 ● 문서작업시 백업관리의 필요성 http://blog.paran.com/story007/47023263 Ш[ 관련 문서 인용 부분 ]Ш ㅹ[ 코멘트 등 정리 내역]ㅹ */
/ *
▼▼ 개인용 특수 설정변경이 가능하거나 필요한 부분에는 ▼ 표시를 하여 구별함.
/////////
-------자신의 상황에 맞게 변형시켜 사용하기 위해서는 기본적으로 필요한 내용을 붙입니다. 각 부분 설명이 다른 페이지의 내용들과 일부 중복되는 면이 있으나, 처음 대하는 분들을 위해서 일부 중복설명 합니다. 양해해주시기 바랍니다.
------- 기존 버전에서 조금 핫키가 변경되거나 기능이 변경된 부분이 있습니다. 해당 부분은 줄 끝에 ★ 로 표시합니다.
문서작업용 매크로 모음
본 스크립트는 다음 목적에 사용합니다.
● 그리고 이 상태에서 각 문서파일의 절대경로가 텍스트 각 줄 끝에 기재된 목록파일을 기계적으로 생성합니다.
[ 간단하고 쉬운 목록 작성방법은 => 다음 파일내 관련 항목 참조]
○ 참고; [ = 토털커맨더로 목록 생성하기 ] http://blog.paran.com/story007/46867974 # 토털커맨더에서 descript.ion 주석파일을 기초로 목록파일을 만드는 방법
○ 참고; [ = 토털커맨더 경로 복사기능으로 목록 만들기] http://blog.paran.com/story007/46824937 # 토털커맨더에서 단순히 ( 전체경로명+파일 클립보드 복사방법으로) 목록만들기
자신의 작업과정에 맞춰 각 문서파일의 순서를 적절히 그 때 그 때 조정해가며 작업을 진행합니다. 필요시 수시로 파일배열을 자유롭게 재 조정합니다.
● 최종적으로 각 부분파일을 목록 순서에 맞춰 하나로 묶어 전체적인 글을 완성 출력합니다.
디스크 드라이브에 관련자료나 작성한 문서파일이 많은 경우 사용할 수 있습니다.
Cyberarticle 이나 Scrivener 와 같은 저술용 프로그램을 사용해도 같은 목적을 이룰 수 있으나,
이들 프로그램으로 관련자료를 모두 import 시켜 관리 작업하기 불편한 경우에
시스템 폴더안에 파일들을 그대로 놓은 상태에서 Cyberarticle 이나 Scrivener 와 같은 비슷한 작업 효과를 얻는 방법입니다.
기타 pc 와 인터넷 문서 작업 환경에서 기본적으로 사용할 수 있는 매크로가 함께 포함되어 있습니다.
자신의 상황에서 아래 매크로 스크립트를 사용하려면
우선 이와 같은 스크립트 사용 목적 취지와
스크립트에 설정된 각 핫키의 기능과
각 핫키에 배당된 실행파일의 경로나, 실행 옵션, 내역 등을 기본적으로 파악하신 후
자신의 상황에 맞게 변형시켜 사용하실 필요가 있습니다.
프로그램 사용시 일정한 키 입력을 반복해야 할 경우 이들 내용을 기록하여, 핫키에 배당하여 실행함으로써,
작업과정을 단축하고 효율을 증진시키는 것이 목적입니다.
하나의 매크로 스크립트가 모두에게 사용 적합한 매크로가 될 수는 없습니다.
자신의 상황에 따라,
필요없는 기능은 삭제하고
또 필요한 기능은 추가하는 등으로 수정해 사용하시는 것이 좋습니다.
본 스크립트 내용은 원칙적으로 테스트 차원에서 참조하시고,
자신의 상황에 맞춰 수정 편집 변형해 사용하시기 바랍니다.
기타 스크립트와 관련해 발생하는 여러 문제는
사용자 스스로 autohotkey의 설명서를 참조해 해결하셔야 합니다.
autohotkey 설명서에서 각 명령 부분을 참조하면 관련 기능 및 옵션 내용에 대해 자세히 참조할 수 있습니다.
편집 수정과정에서 필요한 가장 기초적 내용도 가능하면 함께 기재하여 넣었습니다.
따라서 스크립트 내용을 검토하시고 테스트 하는 가운데
자신의 상황에 맞게 스크립트를 재 편집 사용해
하시는 작업에서 좋은 성과를 거두시기를 희망합니다.
우선 본 스크립트파일은 utf-8 코드 텍스트 문서로 저장되어 있습니다.
내용을 검토 한 후 테스트 하려면 우선 확장자를 ahk로 바꿔 저장하십시오.
시스템에 autohotkey 유니코드용 L- 버전[프리웨어]이 설치되어 있지 않은 경우,
autohotkey 사이트를 방문하여 L- 버전(유니코드 지원용)을 다운로드 받아 시스템에 설치하십시오. [ http://www.autohotkey.com ]
이후 스크립트에 배당된 핫키를 실행하면 각 핫키에 배당된 기능을 테스트 실행해 보실 수 있습니다.
start "" "[autohotkey.exe의 파일경로]" "[본 스크립트 파일의 경로]" 를 텍스트파일로 기재한 후 bat 파일로 저장해 실행하면 됩니다.
autohotkey가 시스템에 설치되지 않은 포터블 환경에서는 autohotkey.exe 파일만 포터블 드라이브에 복사해 넣고 위 방법으로 사용하면 됩니다.
더 이상의 내용 편집이 필요없다고 생각되면,
이 스크립트를 exe 독립 실행파일로 컴파일하여 사용할 수도 있습니다.
● 본 스크립트는 어디까지나,
스크립트 작성자 개인의 현재 시스템과 현재 사용하는 프로그램 상황에 맞춰 작성된 스크립트이므로,
사용환경이 다른 경우 이 스크립트 설정내용을 그대로 사용하기는 곤란합니다.
각 핫키 배당 내용이나 , 실행 프로그램, 그 경로, 실행 옵션, 또는 각 프로그램 실행에 배당된 시간등을 적절히 조정하여,
자신의 시스템에서 각 기능들이 잘 작동할 수 있도록 변경 편집하신 후 사용하십시오.
사용자가 본 매크로를 사용하는 가운데 혹시 발생할지도 모르는 시스템상의 제반 문제는
어디까지나 사용자 본인의 책임사항임도 알려드립니다..(^^)
● 본 스크립트는 기본적으로 다음 전제조건을 충족시킨 상태에서 테스트하셔야 합니다.
따라서 기본적으로 다음 사항을 점검해주시기 바랍니다.
이는 다른 문서작업에서도 기본적으로 필요한 사항입니다.
따라서 usb 메모리스틱이나 기타 포터블 드라이브에서도 같이 실행할 수 있습니다.
만일 totalcmd 폴더가 없는 드라이브에서 본 스크립트를 실행하면 다른 드라이브에 totalcmd 가 정상 설치되어 있어도 작동하지 않습니다.
totalcmd 폴더 안에 함께 넣어 주시기 바랍니다.
만일 다른 경로의 다른 프로그램을 실행하기를 원하시면
해당 스크립트부분을 수정 편집하여 사용하시면 됩니다.
● 본 스크립트에 연동되어 사용되는 기타 프로그램들의 종류와 경로 -
○ 웹에디터 WizHtmlEditor.exe[프리웨어] : 이 프로그램은 [특정드라이브]:\totalcmd\ Plugins \ htmleditor \ 경로안에 WizHtmlEditor.exe가 존재해야 합니다. [역시 다운받아 압축을 이 폴더에 풀어 사용하면 됩니다. -다운로드사이트- http://wizbrother.com/htmleditor/
○ 이미지 파일 뷰어 xnview.exe [프리웨어] : 이 프로그램 역시 [특정드라이브]:\totalcmd\Plugins\xnview\ 폴더에 압축을 풀어 이 폴더안에 xnview.exe 프로그램이 있어야 합니다. ( 인스톨 파일로 설치되는 경우에는 이 폴더내용을 다시 여기로 복사해 사용하면 됩니다) -다운로드 가능사이트- http://www.ghisler.com/tools.htm#other
○ 텍스트 편집기 editplus.exe [쉐어웨어] : 이는 프로그램을 다운받아 정상적으로 시스템 프로그램 폴더 %ProgramFiles%\ EditPlus 3 \ 폴더에 설치하여 해당 폴더 안에 editplus.exe 가 있으면 됩니다. -다운로드 사이트- http://www.editplus.com/kr/
○ 문서 압축프로그램 도스용 rar.exe [쉐어웨어] : winrar 에 포함되어 있으며 이 도스용 rar.exe 프로그램이 스크립트가 위치한 폴더 안에 있어야 보안 목적의 문서 압축이나 해제 삭제 등에 사용될 수 있습니다.
● 본 스크립트는 이상의 프로그램들이 위 경로에 있음을 전제로 하여 구성되어 있습니다.
개별 사용자 환경이 다르면 위 경로에 맞게 이동시켜 사용하는 것이 사용에 편합니다.
또는 스크립트에서 해당 파일 경로를 자신이 원하는 폴더 경로로 바꿔 편집해 사용해도 됩니다.
또는 편집을 통해 각 실행 명령부분에 다른 프로그램을 배당해 사용하는 것도 물론 가능합니다.
다만 본 스크립트가 정상작동하는 지 여부를 확인하기 위해서는 위 내용을 준수한 상태에서 테스트하셔야 합니다.
[ 참고 ] 각 프로그램을 토털커맨더 폴더 하부 Plugins 폴더에 옮겨 위치해 놓고 사용하는 것은
이동상황에서 작업하게 될 경우 토털커맨더 폴더만을 그대로 포터블 드라이브에 옮겨 복사하면
이후 어느 상황에서도 쉽게 계속적 문서작업을 진행해나갈 수 있게 하기 위함입니다.
● 한편 위 상태에서 xnview 프로그램을 실행하여
슬라이드 목록용 파일을 생성시키면 스크립트에 내장된 휴식시간 알람용 슬라이드쇼 기능을 테스트할 수 있습니다.
매 휴식시간마다 슬라이드쇼가 실행되고, 배경음악도 함께 들려주게 됩니다.
이는 매 시간간격으로 휴식시간을 알려줘 , 무리한 계속 작업으로 건강을 해치지 않도록 예방하는 목적입니다.
이들을 적절히 슬라이드 파일로 만들어 놓으면 매 시간마다 쉽게 여러 형태로 열람하며 휴식을 취할 수 있습니다.
xnview.exe를 통하여 [특정드라이브] :\totalcmd \ Plugins \ xnview \ sld \ 폴더안에
sld 확장자인 슬라이드 목록 파일을 파일이름을 default.sld와 10.sld 파일부터 33.sld 파일로 하여 만들어 놓으셔야 합니다. [총 25개]
sld 슬라이드 목록 파일을 다수 만들기 곤란하면, 하나의 슬라이드 목록파일을 이름만 default, 10, 11, 12, ~ 33로 중복 복사해 만들어 사용해도 됩니다.
매 휴식시간 간격을 5분 간격으로 정하고 다시 5분간 슬라이드쇼가 반복 실행되는 것으로 설정해 놓았습니다.
테스트를 통해 정상작동이 확인되면
해당 시간 설정부분을 변경해 사용하면, [SLEEP 명령부분 참조]
예를 들어 매 50 분 간격마다 5분 슬라이드와 음악 파일이 재생되는 형태로 휴식을 취할 수 있게 됩니다.
( 물론 이들 내용은 모두 사용자가 원하는 다른 형태로 편집 사용 가능합니다. )
○ 기타 문서작업시 사용가능한 보조 프로그램,
[ 아래 프로그램들이 문서작업에 도움된다고 보고, 핫키를 배당해 넣었으나, 사용자별로 참조후 불필요한 경우 삭제하거나 수정편집해 사용해도 됩니다.
또한 테스트 과정에서 아래 프로그램들은 없어도 실행에 큰 지장은 없습니다. ]
///////////////////////////////////////////////////////
- 아래 핫키에 배당된 기능을 파악하시고 각 상태에서 사용하실 수 있습니다.
- 여러 폴더안에 각기 descript.ion가 있을 수 있다. 보통 문서 작업을 폴더 단위로 행하기 때문이다.
이런 경우 각 폴더의 descript,ion 이나 진행중인 작업의 descript,ion를 찾아갈 자신의 main 작업 목록파일 즉 main descript,ion을 어느 상태에서도
쉽게 열어 볼 수 있는 핫키입니다.
각 구체적 작업의 세세한 내용은 그 descript.ion을 열어서 파악하면 됩니다.
예를 들어 폴더 구조가 깊이가 9개 12 개 되는 경우가 많은데, 이들을 하나하나 열어보지 않고
이 폴더 구조만 모두 복사할 수 있는 방법입니다.
Tree 명령어를 사용하면, 출력할 수 있습니다.
폴더구조를 출력하고 싶은 최상부 폴더 아래에서
Tree >> tree.txt
라고 도스창에서 명령 내리면 됩니다.
구조가 마음에 안 들면 /A 명령어를 추가해 비교해보실 수 있습니다.
다만 이 방법은 각 폴더들의 절대경로가 나오지 않고 상부폴더 밑에 붙여 보기 좋게 구조도를 보여줍니다.
● 두번째 방법은
토탈커맨더- 보기 - 폴더 트리 [CTRL+F8] 을 누르시고 나서,
해당 폴더 부분을 블록 설정한다음 복사하셔서 편집창에 붙이시면 됩니다.
다만, 이 방법은 폴더가 적고 하부 폴더 깊이가 적을 때 사용할만 합니다.
전체 폴더를 보려면 묶여 나타나는 + 부분을 자꾸 펼쳐줘야 하기 때문입니다.
여하튼 나타난 부분에 블록설정한 다음 alt + M + P 를 누르면 됩니다. => 그다음 편집창에 복사하면 됩니다.
토털커맨더에서 파일 찾기를 실행합니다. [ALT + F7]
열려진 메뉴에서 "플러그인 탭"을 선택한 다음, "플러그인 찾기" "and" 부분에 체크하고
tc 플러그인에서 "디렉토리"를 선택하고 "예"를 선택하십시오.
그러면 그 찾는 폴더 밑의 하부 디렉토리가 모두 검색되어 나타납니다.
이것을 목록창으로 보내십시오..
그 다음 그 부분을 다시 전체 블록설정하고
alt + M + P 를 누르면 됩니다.
그리고 나서 편집창에 붙이시면 됩니다.
-- 참고로 플러그인 찾기는 플러그인의 종류에 따라 매우 다양한 내용별로 파일들을 찾아 낼 수 있으니, 자신의 사용목적에 따라 적절히 이용하시기 바랍니다..
★ 경로가 fttp 주소인 경우 => 토털커맨더 ftp 창 연결 실행 (V.003- 기능신설)
★ 경로가 디스크 폴더 파일 주소인 경우 => 해당 파일을 찾아 실행한다. 목록에 기재된 파일이 다른 드라이브에 위치한 경우에도 찾아 실행한다. [ 포터블 환경 지원목적]
예: txt 확장자파일 => [ 시스템 프로그램폴더] %ProgramFiles%\EditPlus 3\editplus.exe 실행 ----
예: hwp, doc 확장자파일 => c:\hnc\Hwp70\Hwp.exe
예: jpg,gif,png,bmp,tif,tiff,jpe => [특정드라이브] : \totalcmd\Plugins\xnview\xnview.exe
* 기본 설정을 변경하려면 위 부분을 스크립트에서 찾아 편집하면 됩니다.
★ 포터블 환경에서 메세지가 방해되면 윈도우키+CTRL+P를 통해 이 기능을 해지 후 사용한다. (V003 신설)
동시에 사용할 때 사용합니다. 그러나 이외에도 파일의 절대 경로가 기재된 다양한 목록 파일에서도 사용할 수 있습니다.
(V.003 부터 파일 제목에 desc 라는 글자가 들어 있어야 작동되던 제한을 풀었습니다.)
그리고 그 줄 위에서 핫키를 누르면 됩니다.
그러면 곧바로 해당 파일에 대해 문서 작업을 수행할 수 있습니다. [ 아래핫키도 사용방법이 같습니다.]
그러나 이 경우, 그 기재부분 끝에 ":" 표시를 붙여 이어지는 다른 내용과 구별해 주지 않으면, 제대로 경로를 인식해 사용할 수 없습니다.
이런 경우에는 해당 경로 부분을 블록 설정한 후 윈도우키 + L 키를 눌러 사용하십시오. (+ 블록설정후 복사까지 실행한 후 핫키를 눌러도 됨) => 아래 윈도우키 + L 부분 참조
●★ 윈도우키 + W : 현재 위 키와 설정내용이 동일합니다.
이는 각 확장자별로 기본 프로그램외에 별도 실행파일(편집기)를 배당하여 사용할 수 있는 예비 옵션입니다.
현재는 앞 키와 내용이 같은 상태입니다.
한 예로 htm 파일에 기본적으로는 위 프로그램을 사용하다가 보다 전문적인 편집이 필요하면 다른 전문 웹에디터 (예;나모웹에디터) 등을 설정해 사용가능합니다.
사용자별로 편집하여 사용하시면 됩니다.
목록 창에서 마우스 우버튼 두번 클릭 하면
문서창에 "커서"가 놓인 줄 ( 주의: 마우스 커서위치가 아님)의 파일을 문서뷰어로 열람가능합니다.
★[핫키 변경] : 우 버튼클릭으로 핫키를 변경합니다. -> 윈도우키를 누르고 마우스버튼을 누르는 것이 불편한 경우가 있어서 입니다.
lister 프로그램은 다양한 포맷의 파일들을 즉시 즉시 열람 가능합니다.
토털커맨더 사이트를 방문해 lister 플러그인을 추가로 다운받아 설치하면 열람할 수 있는 파일 종류가 확대됩니다. ( 사이트내 플러그인 항목 참조)
- LISTER 프로그램의 이름을 변경해 사용하는 이유: 열람시 열람문서를 하나씩만 열려 있게 하기 위한 목적입니다. ..( 그렇지 않으면 열람하는 매문서마다 창을 열어 놓으므로 불편함 )
★ 종전보다 LISTER 작동시간을 단축설정했습니다. 다만, LISTER 문서 화면이 깨져 나오면 실행시간을 늘려 설정하십시오. SLEEP 명령부분 참조(V003)
////////////////////////////////////
● 윈도우키 + P : ★ 파일 경로 찾기 ---- 각 파일의 절대경로가 기재된 줄에서, 다음 핫키를 누르면 파일이 있는 위치에 직접 찾아가게 됩니다.
★ 다만, HTTP, FTP의 경우는 파일관리작업을 할 수 없으므로 앞과 같이 단순히 브라우저를 실행하는 등의 작업만 합니다.
( 예를 들어, 한 줄에 여러 파일의 경로가 기재된 경우,
또는 기재 부분 뒤에 다른 글자가 붙어 있는 경우 등)에
그 경로부분을 단순히 "블록 설정한 후" 이 핫키를 누르면
기본적으로 윈도우키 + Q 처럼 같은 기능을 실행합니다.
본래 앞의 핫키들 즉, 윈도우키 + Q , W, 마우스 우버튼 클릭시, 해당 경로를 복사하기 위해 Home 키가 사용됩니다.
그런데 일부 문서창(인터넷 창 등)에서는 이 키가 다른 기능으로 작동되어 오작동을 일으킵니다. 이런 경우에는 그 부분을 단순히 "블록 설정한 후" 위 핫키를 사용하면 됩니다.
만일 여러 파일의 경로가 함께 기재된 경우에도 맨 처음 기재된 경로 끝에 구분기호 ":"를 붙여 구분지어 놓으면, 윈도우키 + Q , W, 마우스 우버튼 클릭시 정상적으로 작동합니다.
다만 각 파일의 절대경로가 줄 끝에 위치하여 단일하게 기재된 상태를 본 스크립트가 사용하는 목록파일의 기본적 형식으로 합니다.
●★ 윈도우키 + T::
비교적 정확한 시간에 메세지를 띄어 알려줄 필요가 있을 때 사용할 수 있는 핫키--필요할 때 스크립트에 해당 내용을 기재후 실행하여야 한다. ★
● CTRL+ALT+Shift + U : [ 목록내 각 파일의 병합작용용 핫키 ]
그 파일들의 절대경로가 기재된 목록파일을 작성한 후
- 이 키를 누르면, 그 목록에 기재된 순서대로 각 파일을 불러들여
하나의 문서로 병합 작업을 합니다. [ htm 문서나 TXT 문서만 지원 - 사용 코드는 완성형 유니코드 utf-8 관계없이 지원함 ]
=> 다른 포맷 문서(hwp, doc 등)는 병합작업에 사용하지 않고, 해당 경로와 파일명과 사유만, 해당 파일이 위치할 부분에 기재합니다.
● 윈도우키 + X : 한 줄 내용을 잘라내기 함
목록 편집시 Editplus를 기본 편집기로 사용하는 것을 전제로 하여 Editplus 편집기에서 간단히 파일 관리할 수 있는 핫키다.
현재 Editplus에 핫키가 배당되어 있으므로, 자신의 특정 편집기에 배당시키려면, 이 부분의 수정이 필요하다.
#IfWinActive, EditPlus 라고 각 핫키 설정 위에 제한된 내용 위에 자신의 편집기를 추가하거나, [ ] 변경해도 된다. 추가하는 방법은 ■ hwp 문서작업자용 핫키 - 부분을 참조.
[ 윈도우키 + 2 ▣ Editplus 용 ] - 목록 파일에서 파일을 열고 키워드 부분에 블록 설정한 다음 실행하면 해당 키워드가 목록에 기록됨
● 윈도우키 +2
[ 윈도우키 + B ▣ Editplus 용 ] 주석 정리용 - 블록 복사후 사용
목록파일은 파일이름- 주석 - 절대경로가 기재되어 매우 파악하기 복잡한 형태가 되기 쉬운데,
위 핫키들은 목록파일에서 주석정리시 주석 내용 앞 뒤에 [ ] 기호를 넣고 그 다음에 탭으로 분리해 넣으면 보기가 좋다고 해서 만들어 본 핫키입니다.
Editplus 에서 사용하는 구문 파일 즉 C:\Documents and Settings\[사용자 컴]\Application Data\EditPlus 3\AutoHotkeytext.stx
파일 내용과 관련이 됩니다.
[참고] Editplus로 autohotkey스크립트 짜고 테스트 실행하기 => http://blog.paran.com/story007/46881014
Eidtplus- 메뉴 - 도구- 기본설정 - 설정 & 구문강조 부분에서 해당 stx 파일을 ion 확장자 파일에 선택해 놓고 사용할 때
목록 파일 각 부분을 색깔 등을 구분해서 볼 수 있게 됩니다.
따라서 주석부분을 [ ] 로 묶어주면 보기가 좋게 된다는 이야기입니다.
위 페이지에 소개된 stx 구문 파일에는 다음과 같이 설정되어 있습니다.
#COMMENTON2=[
#COMMENTOFF2=]
그리고
#DELIMITER=,`={} 부분도 앞과 같이 변경해 줍니다. 샘플파일에서 들어간 ";\ ," (마침표) 등을 빼줍니다.
이렇게 하는 목적은 목록 파일에서 주석내용과 절대경로내용를 쉽게 구별해 보고 싶고 또 되도록 절대경로 내용은 잘 안 보이게 하고 싶기 때문이라고 합니다.
한편 이런 목적을 위해 목록파일을 정리할 때
주석내용을 [ ]로 묶은 다음 절대경로와의 사이에 탭을 많이 넣어주면 좋다고 합니다.
우선 절대경로 내용이 멀리 분리되어 떨어져서 보기가 좋게 됩니다.
그 다음 이렇게 처리한 다음
토털커맨더의 "사용자열"의 주석보기에서는 탭 기호를 넣은 다음 부분, 즉 절대경로부분부터는 주석 창에 그 내용이 안 나온다고 합니다.. [ 단, 사용자가 생성시킨, 주석보기 열에서만 그렇습니다.]
그래서 결국 이 방법은 editplus 의 편집창에서 편집 가능한 방법입니다.
● 윈도우키 + 4
Editplus 목록 창에서 해당 파일이 기재된 줄에서 위 윈도우키 +4 를 실행하면
작업용 빈문서를 생성해준다. - 빈문서를 생성할 폴더도 자유 기재 가능하다.
동시에 Editplus 편집 창에 해당 파일의 경로를 자동 기재하여 목록 정리에 편의를 준다.
또 목록에 기재된 경로가 다른 폴더에 위치한 파일인 경우도 있다.
이런 여러 경우에 그 폴더가 아닌
"목록파일이 위치한 폴더 안에" 빈 파일을 생성하고자 할 경우는 now 옵션을 선택해 실행하면 된다.
- 이 기능을 응용하면 문서를 단순히 다른 폴더로 복사하는 것도 가능하다. 다만 중간 백업이 목적이므로 날짜를 부가 기재한다. 파일이름도 동일하게 만들기를 원하면 이 상태에서
다시 윈도우키 + 8 을 눌러 rename을 실행하면 된다.
[ 윈도우키 + 5 ▣ Editplus 용 ▣ WizHtmlEditor 용 ] - 빈 파일(메모용) 만들기 + 파일 목록 작성하기 ★
● 윈도우키 + 5 :
단순한 메모 파일을 날짜를 기재한 파일로 생성시킨다.
목록파일이 위치한 폴더 안에 기본 포맷 문서로 basic.htm 이 존재하면 그 포맷대로 htm 문서를 생성시키고
없을 때는 가장 단순한 utf-8 코드의 htm 포맷의 문서를 생성한다.
안에 메모를 기재하는 날짜도 첫 부분에 기재한다.
[ 윈도우키 + 6 ▣ Editplus 용 ▣ WizHtmlEditor 용] - 원하는 이름 원하는 폴더에 빈 파일(메모용) 만들기 + 파일 목록 작성하기 ★
● 윈도우키 + 6 :
앞 윈도우키 + 5 가 단순한 메모용으로 목록이 위치한 폴더 안에서 시간명으로 파일을 단순 생성시킨다면,
이는 원하는 폴더에 원하는 이름으로 생성시킬 수 있는 핫키다.
없을 때는 가장 단순한 utf-8 코드 형태로 생성한다.
● 윈도우키 + 7 :
rar를 파일을 이용하여 보안 압축을 실행하므로, 스크립트가 있는 폴더에 도스용 rar 최신버전이 들어 있어야 한다.
텍스트 문서나 htm 문서는 보안에 취약하기 때문에 특별히 신설한 핫키다.
이 핫키를 실행하면, 기존문서를 wipe 삭제 옵션으로 보안 삭제하고, 기존문서는 암호를 넣어 압축파일을 생성하는 핫키다.
또 이 핫키는 이와 같이 rar로 압축된 해당 파일을 해제하여 사용할 때도 사용한다.
● 윈도우키 + 8 :
파일의 폴더 이동(move) 이름변경(rename) 또는 두 작업 둘을 모두 다 함께 할 수 있다.
작업을 한 내역을 목록파일에 변경 기재해 넣게 된다.
[ 윈도우키 + 9 ▣ Editplus 용 ▣ WizHtmlEditor 용] - 현재 작업 중인 문서 파일의 절대경로를 파악해 문서 편집창에 출력합니다.
● 윈도우키 + DEL :
작성한 파일을 보안 삭제할 때 사용할 수 있다.
앞의 보안압축과 같이 rar를 파일을 이용하여 보안삭제하므로, 스크립트가 있는 폴더에 도스용 rar 최신버전이 들어 있어야 한다.
-> 절대경로가 기재되어 있는지 확인해 -> 기재된 바가 없으면 자동기재하고, -> 주석 편집창을 준비시킨다.
★ -> 클립보드로 복사해 둔 내용을 이 상태에서 복사해 붙일 수 있다. ( V003 신설)
★ -> 기존에 기재된 절대경로 내용이 현재 파일 경로와 다르면 정정기회를 준다. ( V003 신설)
★ -> 계속 작업에 이용할 수 있도록 실행후 커서를 한 칸 아래로 내린다. ( V003 신설)
=> 각 파일의 내용을 옆 창으로 내용을 열람하며 키워드를 찾아 이 내용을 주석이나 제목으로 복사해 넣을 때 사용할 수 있다. [txt, htm]
★ -> 기존에 기재된 절대경로가 현재 파악되는 절대경로와 내용이 다르면 이를 메세지로 출력해 정정기회를 준다. ( V003 신설)
★ -> 기존에 클립보드로 복사해 둔 내용이 있으면 이 상태에서 복사해 붙일 수 있게 지원한다. ( V003 신설)
★ -> 기존에 기재된 절대경로가 현재 파악되는 절대경로와 내용이 다르면 이를 메세지로 출력해 정정기회를 준다. ( V003 신설)
● 윈도우키 + 6 :
참조할 폴더의 파일위에 커서를 놓고 CTRL+Q를 눌러 그 문서를 열람할 수 있다.
그 상태에서 해당 참조 문서의 키워드 부분에 블록설정하고 이 키를 누르면 해당 내용이 옆창의 커서아래에 놓인 파일의 주석에 자동기재된다.
이후 이런 작업을 연속적으로 실행 가능하다.
( 동일 폴더 내용을 커서를 같이 위치하고 사용하면 윈도우키 +2와 같은 기능도 할 수 있다.)
★ -> 기존에 기재된 절대경로가 현재 파악되는 절대경로와 내용이 다르면 이를 메세지로 출력해 정정기회를 준다. ( V003 신설)
▣▣ [참고] 토털커맨더의 주석 파일 편집의 목적 ▣▣
목록파일을 descript.ion 파일로 관리하면,
토털커맨더 창을 통해 주석보기를 실행하고 +토털커맨더의 다양한 파일관리기능을 함께 이용가능하다.
또 이 파일은 그대로 문서작업시 자신의 임의로 순서를 재배열 배치하며 문서편집작업시 사용가능한 작업 목록파일이 된다.
=> .결국 desceipt.ion 을 주석파일로 이용함과 동시에 문서작업용 작업목록 파일로 함께 이용하기 위한 목적임
토털커맨더에서 주석 파일 편집을 쉽게 행할 수 있도록 핫키를 배당함.
-------
[ total comander 토털커맨더 용 ]
토털커맨더에서 "커서"를 위치한 파일을 기준으로 빈 문서를 원하는 숫자 만큼 생성할 수 있다.
그 파일명 뒤에 -0000 형태로 일련번호가 붙는 빈파일을 지정한 숫자만큼 생성한다.
입력창에 원하는 파일 숫자를 적어 넣으면 된다. [ 기본옵션 =10개 ]
이 때 빈 파일로 생성할 기본 포맷문서파일 ( 예: ..\basic.htm 과 같은 기본포맷문서)를 미리 다양하게 준비하여 선택사용하면 좋다.
● 윈도우키 + DEL [ ▣ total comander 토털커맨더 용 ] : 보안 삭제용 핫키 : editplus 에서도 동일한 핫키로 같은 삭제를 할 수 있다.
보안에 예민한 성격의 문서 ( 금융기관 이용에 필요한 파일등 ) 를 삭제할 때 삭제한 문서를 재복구하여 사용하지 못하도록
커서를 위치해 선택한 파일들을 일정파일로 덮어쓰기 방법으로 삭제하는 핫키
▼ 문서 작업에 이용할 수 있는 부속 핫키 설정 내용
▣▣ 기타 문서작업과정에 이용할 수 있는 프로그램 단축키 설정 내용 === 이들은 해당 프로그램이나 도구가 있는 상태를 예정함.
윈도우키 + X, C, V 는 편집창에서 한줄 삭제 복사 불이기 기능으로 사용되지 않고,
낙서내용 전부지우기, 일반 편집창으로 나가기, 편집창으로 나가 인터넷 문서 아래로 내리고 다시 낙서 모드( 프리젠터 모드)로 재진입하기.... 등으로 배당되어 사용됨.
● oiiiii + 스페이스바[ 또는 엔터키, 또는 탭키 등등 ] 즉, O키 다음 + i키 5회 입력 + 스페이스바 { 엔터키} => 한/영키 사용상태에서 축약키 오류방지방안 및 축약키 기본적 설정과 사용방법 + 긴 문장을 축약키에 배당하는 방법 설명
● ohhhhh + 스페이스바[ 또는 엔터키, 또는 탭키 등등 ] 즉, O키 다음 + H 5회 입력 후 + 스페이스바(엔터키)
=> 상용구에 배당하는 단축키 축약키에 관련한 간단한 샘플예 //
▣▣ 문장 작성시 사용할 상용구 축약키 "샘플"
L+동 옹 문 시 유 세 소 설 비 청 주 증 결 자
L+q , qqq, ruf, w, wk, www, eee, tjr
ruf(결) + "; "
wk(자)+ ;
tjr(석)+ ;
L + bb1, bb0, bc0, bb2,bc2
● L+ ddd : 오토핫키에서 제공하는 기본 변수들을 이용해 문서안에 일정한 내용을 기입하는 샘플 : 핫키 L+ ddd 를 입력시 다음 형식으로 문서 작성 시간 출력 => 2012-03-수-14-[11weeks 74 days]-02:34
● L+ dd2 : 현재시간 출력용 핫키 -2 => 2012-03-화-27-08-54 형태로 출력
pae, pan, pap, par, + ";"
★ 블로그 사이트에 따라 로그인 후 일정시간(6시간) 경과시 문서 작성하여 올리려 하면, 자동 로그아웃 되는 동시에 작성한 문서가 모두 상실되게 됩니다. (파란블로그의 경우임) 이를 방지하기 위해 로그인 절차를 한 후 5시간 30분 되는 시점에 메세지를 출력합니다.
▣▣ hwp 문서작업자용 핫키
=> 두개의 환경상태 [ 다른 제목의 윈도우 문서창] 에 동일한 핫키를 동시 배당시키는 방법 제시용 샘플 ]
/// 단 이 매크로들은 현재 hwp 키매크로가 잘 작동하고 사실상 hwp를 많이 사용않는 상태이므로 실용적 샘플은 아님
-- 아래한글 실행시만 작동하는 키 샘플
윈도우키 + a
윈도우키 + d
윈도우키 + q
--- 이상의 핫키는 어디까지나 샘플 그 자체임..
▣▣ 같은 키의 각 개별 윈도우창에 따라 다른 기능 배당 샘플
● 인터넷 창에서 enter 키 => Shift +Enter 로 기능하게 하기.. [ 일부 인터넷 사이트에서 엔터키 입력시 줄바뀜이 실행되지 않고 곧바로 글이 올라가는 것 방지 ]
● Shift +Enter 키 => Enter 키로 기능하게 하기
● 윈도우키 + E : CyberArticle로 import 할 때 하이퍼 링크상태로만 import 한후 열람만 가능한 문서창에서 이 핫키를 누르면 직접 편집하기가 가능하다.
* 매시간 휴식시간을 알리는 슬라이드쇼가 xnview 로 실행되는 상황에서만, 제한적으로 작동하는 핫키임
● CTRL+ I => 좌측 상부로 이동
● CTRL+ L => 우측 하부로 이동
● CTRL+ K => 좌측 하부로 이동
● CTRL+ J => 중앙으로 이동
● CTRL+ U => 원 상태로 회복 [ 전체 화면 ]
● CTRL+ P => 다음 일련번호의 sld 파일로 이동...
참고-- ○ 만일 휴식시간에 대한 자발적 통제가 잘 안되고 너무 작업에 계속 열중하는 상태라면, 다음과 같이 설정을 바꾸어 놓고 사용해도 된다.
슬라이드를 나가는 ESC 키도 다른 기능을 배당해 핫키로 설정하면, 더 심하게 방해할 수도 있다.
또한 핫키를 해제하는 윈도우키 + S 키도 제거하면 더욱 방해할 수 있다.
따라서 휴식시간에 슬라이드가 작동되어도 잠깐 화면을 옆으로 옮기고 입력작업을 계속할 수 있다.
xnview에서 슬라이드 목록 SLD 파일을 만들 때 "기타옵션" 선택사항에서 "항상 맨 위에 위치" 부분을 체크하여 만들어야 한다.
이렇게 하면, 다른 작업을 하면서 슬라이드 쇼 감상도 동시에 할 수 있다.
sld 파일을 이미 만들어 둔 경우, 각 파일에서 OnTop = 0 부분을 일괄적으로 OnTop = 1 로 변경하면 된다.
=>총 25개 파일의 변경 작업이 귀찮은 경우, Search and replace 같은 전문 프로그램을 사용하면 한 번에 다 바꿀 수 있게 된다.
+ 기본 문서 포맷을 정하고 "변수" 를 통해 각 부분에 다른 내용을 삽입해 문서를 완성시키는 기초 방법 안내
+ 컴퓨터 사용시 윈도우 OS, 프로그램, 매크로 스크립트 들에 의한 해킹의 위험성에 대한 보안 조치 기본 안내
● 윈도우키 + F : 텍스트 문서에서 커서가 위치의 낱말과 동일한 부분 찾아가기
=> 목적: 텍스트 문서에서 관련부분 서로 쉽게 찾아가기
=> 사용례: 본 문서에서는 사용자가 개별 참조할 부분에 ■ 기호를 사용하고 이를 목차로 구성하였다.
이런 경우 그 부분을 참조하고자 할 때 그 부분에서 위 핫키를 누르면 그 위치를 쉽게 찾아갈 수 있다.
=> 특수기호가 없는 경우에는 단순히 같은 낱말 부분을 찾는다.
=> 이 찾기 기능은 현재 Editplus 와 뷰어 lister 에서만 정상 작동한다.
=> Editplus에서는 클립보드에 복사내용이 있는 경우 찾기 실행후 복사한 내용을 그 자리에 쉽게 옮겨 붙일 수 있다.
=> 다만 각 프로그램 상태에 따라 키에 배당된 내용이 달라 오작동을 일으킨다. 다른 편집기에서는 별도로 키 입력과정을 기록 후 사용해야 한다.
+ ( 추가 응용: 이 상태에서 각 부분을 htm문서로 변경시 하이퍼링크 태그로 쉽게 변경 편집할 수 있게 한다.)
실행하는 스크립트 파일을 참조나 편집 테스트 실행 목적으로 곧바로 editplus 로 열고, 토털커맨더로도 해당 위치를 찾아 주는 핫키 [신설]
/////////////////////////////////////////////////////
각 부분에 다시 편집에 필요한 최소한에 한해 기초적 설명을 덧붙인다.
- 스크립트자체로 실행하는 명령
- 축약키
- 윈도우 전반에 적용하는 핫키
- 개별 윈도우 창에 적용하는 핫키 순으로 명령을 배열하기로 한다.
스크립트 목차
////////////////////////////////////////////////////
원하는 부분을 찾을 때 이 목차에서 ■ 기호붙은 부분을 복사해 찾기를 실행하면 해당 부분을 쉽게 찾아 편집할 수 있습니다.
-- 스크립트 실행 후에는 해당 줄 앞 부분 뒷부분에 적당히 커서를 놓고 윈도우키 + F로 찾으실 수도 있습니다. ( 동일낱말로 시작된 부분이 많으므로 적당히 중간에서 실행해도 됨)
-- 종전 스크립트와 변경 내역을 참조하려면 별첨된 help.txt 파일을 참조하시기 바랍니다. 목차에는 새버전시 변경된 부분에 ★ 표시가 되어 있습니다.
///////////////////////////////////////////////////
윈도우키는 #
Ctrl 키는 ^
Alt 키는 !
Shift 키는 +
로 간략히 표시됩니다. 예를 들어 "#5::" 는 윈도우키 +5 의 핫키를 배당한 부분입니다.
따라서 핫키 설정 부분을 편집하고자 할 때는 위 기호를 통해 해당 부분을 찾아가도 됩니다.
------- 기본 문서 작성 환경
■ 날짜 변경시각 통과후 날짜 메세지 변경
■ 날짜 변경시각 통과후 날짜 메세지 변경 첫 메세지 출력
■ 업무시작시 하루 일정 안내메세지가 있는 경우 메세지 출력용
■ 특정 시간에 출력할 메세지가 있는 경우
■ 휴식 시간 시작시 매 휴식시간별 다른 안내메세지 출력용
▼ 휴식시간 간격 - 개인 변경 사항
■ 휴식시간 시작 메세지
● 모니터 작업 화면 가리며 설정된 음악 실행들려주는 사진 슬라이드 실행
● 보충슬라이드쇼
● 휴식시간을 알리는 배경음악-winvibe 사용시
● 배경음악 - kmplayer 사용시
● 텍스트 경구를 띄어주는 프로그램
▼ 추가 개인적 상황 슬라이드 쇼 실행방안
■ 휴식용 실행프로그램 종료
▼ 개인용 시간 조정
▼ 개인용 실행 프로그램 종료 조정
▼ 휴식시간 종료후 중지명령 개인용
■ 5시간 경과시 저장 중 문서 백업
■ 비교적 정확한 시간에 메세지를 띄어 알려주는 핫키--필요할 때 기재후 실행한다. ★
window키+t
■ 일정 안내 예시용 스크립트★★
- 기본 국경일, 법정공휴일, 기념일 등이 기재되어 있으며,
- 자신이 특별히 일정 관리가 필요한 날이 있으면 비슷한 양식으로 추가 기재해 넣을 수 있다.
■ 일정 시간별 메세지 + 시간 안내
■ 매일 시간별 정기적 스케줄 설정 부분
■ 중요한 특별 일정 안내
■ 업무시작-휴식시간 메세지와 함께 출력하는 일정 안내
■ 특별일 추가 특별 일정 안내 메세지 설정
■ 보통의 기념일 + 일상적 반복 일정 안내
■ 일반 기념일 설정 부분
● 음력 명절
● 음력 가족 제사일, 기일
● 음력으로 세는 가족 생일
● 음력 절기
● 선물 준비일 - 음력변동
● 기타 공휴일(명절,기념일 1년 총 12일- 매년 고정된 공휴일 5일 ):
● 법정 기념일(공휴일은 아님) -불변 :
● 세시 명절
● 기타 기념일:
● 그 외 기타 기념일:
● 14일 기념일
● 가족 생일 [ 양력] ;
● 결혼기념일 [ 양력] ;
● 기타 개인적 기념일
● 선물 준비일
■ 기념일 카운트업 02
■ 기념일 카운트다운 01
■ 기념일 카운트다운 02
■ 요일별 일정 안내
■ 요일별 카운트 다운 안내
■ 간단 도움말 일시 참조★
■ 간단 도움말 일시 참조★
window키+f1
Ctrl+Alt+L
■ 문장 작성시 사용하는 오토핫키의 축약키 사용 - 샘플 설명 용 스크립트 구간
Ctrl+Alt+E
■ 아주 긴 축약문장을 한 축약키에 배당하는 방법
■ [보안문제 주의문]
■ 문서사용시 목차기호용 특수기호 축약키
■ htm 태크입력용 축약키
■ 문장 구문 (접속사, 상용낱말) 축약키 설정 방법 예시용 스크립트
■텍스트에서 참고부분 상호 연결하기- 텍스트 문서내 간이한 하이퍼텍스트 연결기능 실행용★
window키+f
■ 인터넷 사용시 사용할 수 있는 매크로
■ 인터넷 사이트 일정시간 경과후 자동로그 아웃으로 인한 작성문서 상실 방지용★
■ [editplus에서 ]주석 부분 표시 부분 -- 정리용 ★
:c1*:[[[::
윈도우키 + Y
------- 문서 작업시 자주 사용하는 프로그램 ( 프리젠터) 사용모드 진입
■ 문서 작업과정시 특정 프로그램 사용모드 진입용 핫키
■ 팬패드 + 태블릿 펜 사용 모드 + 프리젠터 핫키 환경 사용모드 진입용 핫키★
Ctrl+Alt+p
window키+z
window키+x
window키+c
window키+v
window키+b
editplus 에서는 주석 부분 표시 부분 -- [ ] 정리용
--------- 윈도우 일반 환경에서 범용으로 작동하는 핫키 설정구간
■ 핫키 On/OFF
window키+s
window키+Ctrl+p
window키+p
■ 절대경로기재부분 복사된 부분에서 경로 찾기 -> rule 변수에 입력부분 => 각 명령시 공통실행 부분(gosub 와 관련)★
■ http 웹문서의 경로인 경우★
■ ftp 경로인 경우★
■ 디스크내 파일인 경우★
■기재된 경로와 그대로 일치하는 파일이 존재하지 않는 경우★
=> 원 경로 -> 포터블 환경에서 목록 위치한 드라이브내 파일 -> 모든 드라이브 파일 -> 발견안될시 수동 입력 -> 못찾을 때 메세지 출력 (V.003- 기능신설)
■ 절대경로 기재된 파일 토털커맨더에서 찾아 해당 위치에 커서 놓기★
Alt+Ctrl++u
window키+L
window키+q
; 일반 윈도우 창용 핫키로 변환됨★
■ 1차 편집기 등 실행명령 부분
■ 1차 확장자별 응용프로그램 배당 부분
■ 2차 편집기 설정실행용 핫키★
window키+w
■▼ 2차실행명령★
window키+RButton
■ 3차 확장자별 응용프로그램 배당 부분
-------- 특수 조건에서만 작동되는 핫키 배당 구간
window키+Ctrl+Z
■ 주석 편집용 범용 핫키★
Ctrl+Z
window키+1
window키+2
window키+3
window키+6
window키+4
--- eidtplus 편집기로 목록 파일을 연상태에서 간단한 파일관리하기 ---
window키+4
■ 작성 중 문서 백업파일 만들기 [Eidtplus용]
window키+4
■ 목록파일안에서 일기나, 간단한 메모용 파일 만들고 작성하기 + 해당 파일 내용 목록에 기재하기 [Eidtplus용]
window키+5
■ 자유로운 새 이름의 파일 생성 [Eidtplus용]
window키+6
■ 목록안의 파일을 rar 압축파일이 아닌 것을 압축하거나,,rar 압축파일을 압축해제하기 [Eidtplus용]
window키+7
■ 기존 파일 이름 변경하기(rename) + 폴더 이동 (move) + 해당 내용 목록에 기재하기 [Eidtplus용]
window키+8
■ 작성 중인 문서에 작성 중인 문서의 절대 경로 복사해 붙이기용
window키+9
window키++2
window키+Del
■ 윈도우 OS+ 프로그램+ 스크립트 등의 보안관련 주의사항 안내
window키+Del
■ 보안 삭제 [Eidtplus용]
window키+Del
window키+a
window키+d
■ 인터넷 사용시 사이트내 키 작동 내용 수정용 핫키
Enter
Shift+Enter
Enter
■ Cyberarticle 용 열람 전용문서창에서 편집기 열어 편집용 핫키★
window키+e
■ 휴식시간 작동되는 슬라이드 프로그램 용 핫키★
Ctrl+i
Ctrl+o
Ctrl+k
Ctrl+l
Ctrl+j
Ctrl+u
Ctrl+p
■ 문서 정보
ListVars ; 본 스크립트에 사용된 VAR 검색
--- 주로 각 부분을 다 완성한 상태에서 한 문서로 병합하지 않고 그 상태로 나열해 webbook 형태로 가공하고자 할 때 문제되는 내용: ------
○ HTM 파일 목록을 사용할 때 각 줄에 나열된 파일을 하이퍼 링크로 앞 뒤로 계속 연결시켜주는 매크로 => 하이퍼 링크 연결에 사용할 기본 형식을 정하고 + 위 변수 응용하여 스크립트작성 하면 쉽게 작성 가능함
목록 각 줄을 위 아래로 오가며 경로를 파악하고, ( 앞 뒤 문서로 계속 연결시킬 때는 3 줄을 오가며 경로를 파악해 내게 하면 된다.)
경로에서 각 내용 - 파일명 - 확장자...등을 추출해내고
이것을 각 변수(var)에 나눠 배당시킨 다음,
각 파일안에 마련한 하이퍼 링크 연결 태그 내에 배당시키고,
이 내용을 그 해당 파일 1개에 Fileappend 를 시킨다.
이 작업을 각 줄에 기재된 파일 하나에 작업하고 작업을 마친 후
다음 줄로 커서를 이동시킨다.
=> 이 작업을 원하는 횟수만큼 loop 명령으로 이행시킨다.
더욱이 목록을 만들어 이용하는 과정에서는 이 하이퍼링크 작성이 그다지 필요없으며,
최종 작업시에도 크게 필요하다고 보지 않는다.
특히 이미 작성한 하이퍼 링크를 수정하는 경우에는, 각 파일명이 다른 상태이므로 각 부분이 쉽게 파악되지 않게 된다. 따라서 미리 다른 특수기호를 넣어 이를 통해 각 부분을 인식시키고 개별 편집해야 한다.
만일 프로그램을 통해 자동수정하게 하려면 정규식을 사용해 해당 부분을 찾아 자동 바꾸기를 실행해야 하는데 처음 만드는 작업과 달리 이 경우 각 부분을 기계적으로 찾아 내용을 삭제하거나 수정편집하는 작업이 매우 번거롭게 된다.
=> 따라서 본 매크로 집에서 제외한다. 작업이 완료된 후 각 파일을 하이퍼 링크로 상호연결시키는 작업이 꼭 필요한 경우에는 위에 설명한 방식을 통해 스크립트를 작성해 실행하면 쉽게 구현가능하다.
=> 하이퍼 링크 연결 작업을 하는 경우 다시,
하이퍼 링크를 만들어 놓은 상태에서 작업후 이들 파일 순서를 재배열 할 때마다 하이퍼 링크 체계를 목록에 재배열된 형태로 수정을 쉽게 행할 수 있는 재 수정용 매크로 작성도 필요하다.
=> 방식은 수 많은 문서를 검색하여 특정 기호나 문자를 통해 해당 부분을 찾고 그 각 부분을 정규식 표현을 사용하여 인식시키고, 다시 목록내용에서 파악한 각 경로관련 내용을 변수를 통해 재 적용하여,
최종적으로 각 파일당 구체적으로 적당한 내용으로 바꿔 수정편집할 수 있게 해야 한다..
=> 이 작업이 번거로우면 단순히 추가로 덧 붙이고 개별 문서를 열어서, 기존 링크를 수작업으로 삭제하는 작업을 하면 된다.
=> 일단 이들은 모두 번거로운 불필요한 일이라고 보고 매크로 집에서 제외 생략함.. 필요시 위 방안을 참조하여 개별 작성하여 사용하기 바랍니다.
아래부터 본 스크립트가 시작됩니다.
위 설명 부분 및 다음 스크립트 안의 주석 설명부분도
함께 포함시켜 저장해 스크립트를 실행하거나,
exe 파일로 컴파일해도 모두 정상작동합니다.
----------------------------------------------------
; ■ 초기설정
#SingleInstance force ; 같은 스크립트는 하나만 실행합니다.
menu, tray, Icon, %A_scriptdir%\test.ico ; 트레이 아이콘 설정부분입니다. 원하는 아이콘으로 대체가능.
SetTitleMatchMode, 2 ; 윈도우창 인식 방법 옵션- 부분일치 인식
;SetTitleMatchMode, Slow
StringCaseSense, Off ; 영문 대문자 소문자 구별을 하지 않습니다.
DetectHiddenWindows, On
SLEEP, 200
StringLeft, Out, A_scriptdir, 1
; 본 스크립트 테스트 기본 사용환경 점검용
{
PRONEEDED = 2
PRONEEDED04=%ProgramFiles%\EditPlus 3\editplus.exe
}
IfNotExist, %out%:\totalcmd\Totalcmd.exe
{
PRONEEDED = 1
PRONEEDED01=%out%:\totalcmd\Totalcmd.exe
}
IfNotExist, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe
{
PRONEEDED = 1
PRONEEDED02=%out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe
}
IfNotExist, %out%:\totalcmd\Plugins\xnview\xnview.exe
{
PRONEEDED = 1
PRONEEDED03=%out%:\totalcmd\Plugins\xnview\xnview.exe
}
{
IF PRONEEDED04 =
MsgBox , 0, [포터블용 지원 안내], 문서작업용으로 본 스크립트를 테스트하거나 실행할 기본 프로그램이 존재하지 않습니다.`n이 상태에서는 정상적으로 본 스크립트 기능을 테스트하거나 실행할 수 없습니다.`n본 스크립트에 내장된 각 기능을 정상적으로 사용하기 위해서는`n다음 프로그램들이 본 스크립트가 실행되는 %out% 드라이브에서 아래 기재 내용대로 있어야 합니다.`n이들 프로그램이 다른 드라이브 경로에 이미 있다면 그 드라이브 내에 본 스크립트를 놓고 실행하여야 정상 작동합니다.`n`n[일반 환경과 포터블환경에서의 사용을 같이 지원하기 위함입니다.]`n`n%PRONEEDED01%`n%PRONEEDED02%`n%PRONEEDED03%`n%PRONEEDED04%`n, 30
{
IF PRONEEDED = 1
MsgBox , 0, [포터블용 지원 안내], 문서작업용으로 본 스크립트를 테스트하거나 실행할 기본 프로그램이 존재하지 않습니다.`n이 상태에서는 정상적으로 본 스크립트 기능을 테스트하거나 실행할 수 없습니다.`n본 스크립트에 내장된 각 기능을 정상적으로 사용하기 위해서는`neditplus.exe가 아래 시스템 Program 폴더에 정상 설치되어 있어야 합니다.`n또한 다음 프로그램들이 본 스크립트가 실행되는 %out% 드라이브에서 아래 기재 내용대로 있어야 합니다.`n이들 프로그램이 다른 드라이브 경로에 이미 있다면 그 드라이브 내에 본 스크립트를 놓고 실행하여야 정상 작동합니다.`n`n[일반 환경과 포터블환경에서의 사용을 같이 지원하기 위함입니다.]`n`n%PRONEEDED01%`n%PRONEEDED02%`n%PRONEEDED03%`n%PRONEEDED04%`n, 30
IF PRONEEDED = 2
MsgBox , 0, [포터블용 지원 안내], 문서작업용으로 본 스크립트를 테스트하거나 실행할 기본 프로그램이 존재하지 않습니다.`n이 상태에서는 정상적으로 본 스크립트 기능을 테스트하거나 실행할 수 없습니다.`n본 스크립트에 내장된 각 기능을 정상적으로 사용하기 위해서는`neditplus.exe가 아래 시스템 Program 폴더에 정상 설치되어 있어야 합니다.`n`n[일반 환경과 포터블환경에서의 사용을 같이 지원하기 위해 토탈커맨더가 있는 드라이브에서 본 스크립트가 실행되고`,`neditplus.exe 프로그램은 시스템에 정상 설치된 상태에서 사용하시기 바랍니다.]`n`n%PRONEEDED01%`n%PRONEEDED02%`n%PRONEEDED03%`n%PRONEEDED04%`n, 30
}
}
; 실행파일이나 폴더 위치를 현재 스크립트 파일이 존재하는 폴더를 기준으로 상대경로 형태로 파악해 정해 주려면 %A_ScriptDir% 를 사용하면 된다.
; 포터블 환경에서 사용할 때는 드라이브명이 변경되므로 이 방법이 유효하다. 단, 본 스크립트가 실행되는 위치가 %A_ScriptDir% 이므로 포터블 드라이브 안에서 스크립트가 실행되어야 함을 주의
; 오늘날 이동매체에서 자신의 프로그램을 사용하는 경우가 대단히 많다.
; 이런 경우 해당 프로그램을 포터블 환경에서도 그대로 유지하고 사용할 수 있도록
; 자신이 사용하는 주요 사용 프로그램은
; 처음 프로그램 설치된 폴더에서 c:\totalcmd\Plugins\ 폴더에 옮겨 놓고 사용함
; 그래서 데스크탑에서 사용하는 totalcmd 폴더를 usb 매체에 그대로 옮겨 복사해 넣으면 대부분 프로그램을 처음 설정해 사용하는 상태대로 그대로 사용할 수 있게 한다.
; 다만, 폴더만 옮겨서 실행되지 않는 경우가 많다.
; 이런 경우까지 굳이 포터블 환경에서 같이 사용하려면, 설치시부터 폴더를 c:\totalcmd\Plugins\ 하부에 폴더를 정하여 설치하고
; 해당 프로그램의 설치로 새로 기재되는 registry 파일에서 새로 설치된 프로그램 관련파일만 따로 백업받아 설치 경로가 기재된 부분을 찾아 드라이브명을 해당 포터블 드라이브명으로 수작업으로 수정해 등록을 실행시킨 후 사용해야 함....[사용옵션]
; 또한 윈도우 시스템 드라이브 등 다른 폴더들에 설치되는 다른 파일들이 또 있는 경우는 이 파일들도 역시 백업받아서 포터블 상황에서 옮겨 사용하는 다른 시스템에서 해당하는 각 폴더에 복사하거나 등록시킨 후 사용해야 함...
; => 요지: 해당 프로그램을 포터블 프로그램화해서 사용해야 함..
; 본 스크립트는 totalcmd 프로그램이 c 드라이브에 설치되어 있거나 다른 드라이브에서 사용하는 경우에도 정상작동되도록 Out 변수를 드라이브명으로 사용함
; 포터블 환경에서 total commader 를 계속 자신의 설정에 맞추어 사용하려면, 설치시에 설치되는 ini 파일의 위치를 실행프로그램이 있는 곳에 설치되도록 처음 설치해야 함.
; //////////
; 문서 작업시 늘 기본적으로 사용하는 프로그램을 작동시키는 부분 ( 예:) - 단, 다음기재사항은 예이며 본 스크립트에서는 작동하지 않음
; run, %out%:\totalcmd\Plugins\Keyboard Sokki\KR\KSuppt.exe, %out%:\totalcmd\Plugins\Keyboard Sokki\KR
; run, %A_ScriptDir%\eng_kor.exe
; //////////
first_start:
; ////////// 휴식시간 알람용 스크립트
; 문서작업시 장기간 작업으로 인한 건강악화를 방지하기 위하여 50분 작업후 휴식을 취할 수 있도록 시간을 매 시간마다 모니터에 사진화면을 슬라이드로 작동하고 배경음악 등을 실행시키는 프로그램 -24 시간 매 시간 작동용 -
; 매 휴식시간마다 작동하는 프로그램을 사용자별로 달리 설정할 수 있다. 또한 24시간 이상 이 기능이 작동하게 하려면 설정을 조금 바꾸면 된다.
; 현재 사진 슬라이드용 프로그램으로는 xnview 를 사용하여 슬라이드용 목록을 sld 파일로 24개 이상 작성하여 해당 폴더에 넣어 사용하게 되어 있다. 각 슬라이드 파일에는 개별음악 1곡을 설정할 수 있다.
; 다만 여러 곡을 듣기를 원하면 Kmplayer 등을 사용하여 듣고자 하는 각각 다른 곡이 나열된 리스트를 24 개 이상 작성하여 10 - 33 일련번호로 저장하여 사용하거나, 개별곡의 이름을 일련번호 10 - 33 까지 바꿔 저장하여 실행시킬 수 있다.
; 설정을 자신의 희망에 맞게 바꿔 사용하려면 이 사항 들을 자신의 상황에 맞게 설정을 바꿔 사용해야 한다.
; //////////
; 매시간 달리 실행시킬 파일 등의 번호를 처음 시작하는 숫자를 10으로 정하기 위함
; => 예; winvive 로 매 시간마다 다른 mid 곡을 들으려면 폴더에 10번부터 33번까지 다른 mid 곡 넣어 둠--- 다른 경우도 이에 준함.
; 24 시간마다 24 회 매번 다른 리스트를 반복 실행함 ( 현재 무한반복상태 = 실행횟수를 제한하려면, loop, 24 이런 식으로 기입해주면 된다)
{
; 다음은 24 시간 단위로 스크립트 반복 실행하게 하는 스크립트
; ANAME 변수는 loop 실행회수를 24 회 간격으로 순환시키기 위함
ANAME = %A_INDEX%
ANAME -= 24
if num = 34
num = 10 ; num 이 34를 넘으면 10으로 다시 돌아가 순환함.. num 변수값은 loop 외부에서 9로 정해져 10부터 시작함.
{
Gosub, datey
MsgBox, 0, 일정시간 알람작동, %A_YYYY%년 %mm%월 %dd%일 %A_DDD%요일`n`n지금 %pm% %Hour%시 %Min%분입니다.`n`n%lunch1%`n`n%dayschedule%`n`n[프로그램 사용 기본 안내]`n본 스크립트로 업무를 시작한 후 일정시간마다 휴식 시간을 알려드리게 됩니다.`n첫 사용시`n매 휴식시간마다 실행할 프로그램(예: xnview-sld 슬라이드쇼)을`n설정해 사용하시면 좋습니다.`n실행하시겠습니까?`n`n[사용중 도움말 = 윈도우키+ F1], 50
}
if aname in 5,10,15,20,24
Gosub, datey
; ■ 일정관리 전문프로그램 이 있는 경우에 실행 - 2회, 12회째, - 확인차
IF A_INDEX In 2,12
{
; ifexist, %out%:\totalcmd\Plugins\NeoDiary\NeoDiary.exe
; run, %out%:\totalcmd\Plugins\NeoDiary\NeoDiary.exe
ifexist, d:\G\G_03pro\NeoDiary\NeoDiary.exe
run, d:\G\G_03pro\NeoDiary\NeoDiary.exe
}
; 국산 일정관리 프로그램들은 음력일정을 한번 입력하면 계속해서 그 날짜를 매년 자동적으로 일정에 넣어준다.
; 따라서 음력 일정을 관리하는데는 이 방법이 편하다고 본다. 개인적으로는 NeoDiary.exe 정도가 적절하다고 본다.
; 매크로로는 기계적으로 음력날짜를 산출해내기가 어렵고 음력날짜에 해당한 데이터가 별도로 있어야 음력-양력 변환이 가능하다.
; 따라서 매크로를 통해서는 음력날짜를 한번 입력해두고 매년 적용하기는 곤란하다.
; 음력날짜를 매크로로 이용해 일정 안내를 하려면, 음력에 해당한 양력날짜를 매년 초쯤, 수작업으로 해 기재해 넣어야 한다.
; 물론 각 해에 해당한 음력날짜를 미리 다 찾아 미리 입력해 둘 수도 있다. : http://afnmp3.homeip.net:81/~kohyc/calendar/index.cgi [ 음력날짜용 달력을 다운받을 수 있다. ]
IF ANAME = 1
{
IF A_INDEX <> 1
{
MsgBox, 0, 일정시간 알람작동, %A_YYYY%년 %mm%월 %dd%일 %A_DDD%요일`n`n지금 %pm% %Hour%시 %Min%분입니다.`n`n%lunch1%`n`n%dayschedule%`n`n[사용중 도움말 = 윈도우키+ F1], 50
}
}
; 아래 내용은 매 시간마다 출력할 메세지가 있는 경우 메세지가 팝업되게 만드는 스크립트임
;
IF Aname In 3,9,15,21
{
MsgBox, 0, 일정시간 알람작동, %A_YYYY%년 %mm%월 %dd%일 %A_DDD%요일`n`n지금 %pm% %Hour%시 %Min%분입니다.`n`n%lunch1%`n`n%dayschedule%`n`n[사용중 도움말 = 윈도우키+ F1], 50
}
; ■ 특정 시간대에 출력할 메세지가 있는 경우
; 출력메세지 가운데 lunch1 [=시간당 업무시작시 출력할 메세지]에 해당하는 메세지가 있으면 해당시간대에 출력함
MsgBox, 0, 일정 안내, 지금 %pm% %Hour%시 %Min%분입니다.`n%lunch1%`n,60
; 다음 문구는 매 휴식시간에 출력되는 메세지에 들어갈 문구들임
; 문구는 자신이 적절하게 교체 사용
NAME=선한 뜻을 지혜롭고 행복하게 실현함
if ANAME = 2
NAME=행복한 가운데 최상의 향상
if ANAME = 3
NAME=행복
NAME=건강
if ANAME = 5
NAME=시간 절약
if ANAME = 6
NAME=범사에 감사하는 생활
NAME=즐거움과 기쁨이 충만한 생활
if ANAME = 8
NAME=보람이 가득한 생활
NAME=가치있는 생활
if ANAME = 10
NAME=평온한 행복
if ANAME = 11
NAME=의욕과 희망이 가득한 생활
if ANAME = 12
NAME=원만한 인격함양
if ANAME = 13
NAME=지혜와 덕
if ANAME = 14
NAME=이웃을 사랑하는 생활
NAME=선한 만남
NAME=화목한 인간관계 형성
NAME=미움과 원망을 버리는 삶
if ANAME = 18
NAME=다른 이에 대한 선한 희망의 실현
if ANAME = 19
NAME=사회에 대한 선한 희망의 실현
if ANAME = 20
NAME=현실적 이상사회의 실현
NAME=쉼없는 진리탐구작업
if ANAME = 22
NAME=90세 노장마라톤출전
if ANAME = 23
NAME=치매 걸리지 않는 삶
NAME=선한 죽음
; sleep, 30000 ; 30초마다 ~~ 자신이 조정 ; 테스트용 [ 테스트를 마친 후 줄 앞에 ; 표시를 하여 실행명령을 사용하지 않는다. 사용할 줄은 반대로 ; 을 없애고 실행하게 한다...]
; sleep, 300000 ; 5 분마다 ~~~ 테스트 용.
sleep, 3000000 ; 50 분마다 ~~ 자신이 조정
Gosub, timing
MsgBox, 1, 휴식시간 안내, %A_YYYY%년 %mm%월 %dd%일`n현재 시각 %pm% %Hour%시 %A_Min%분입니다.`n%lunch2%`n%NAME%을 위해서 열심히 쉽시다.`n현재 %ANAME%째 휴식입니다, 60
* 자동 슬라이드를 정지하고 수동으로 직접 페이지를 넘겨 보기
SPACE 바(또는 PAUSE BREAK)를 10초 이상 누름 = 그 화면에서 정지
이전 페이지 열람= PgUp 또는 Up 또는 Left 또는 마우스 왼쪽 버튼 클릭
다음 페이지 열람= PgDown 또는 Down 또는 Right 또는 마우스 오른쪽버튼 클릭
맨 처음으로 이동 =HOME // 맨 끝으로 이동 = End
자동 슬라이드 재시작 = SPACE 또는 PAUSE BREAK 를 다시 누름
위치 조정을 할 수 있습니다.
화면위치 이동 = 창 화면에 마우스를 1번 클릭해 정지시킨 후 끌어당기면 창을 이동할 수 있습니다.
* 각 키는 각기 다음 위치로 사이즈를 변경하여 자동 이동합니다.
CTRL+ O = 400*300 사이즈로 오른쪽 윗 끝으로 이동
CTRL+ I = 400*300 사이즈로 왼 쪽 윗 끝으로 이동
CTRL+ K = 400*300 사이즈로 왼 쪽 아래 끝으로 이동
윈도우키 +S 키를 누르면 단축키 기능 일시중지 (또는 재작동) 합니다.
== 배경음악등의 변경 조정 ==[ 현재 스크립트에서 미 지원 ] --
사용자별로 P키에 배당된 명령과 동일한 방법을 사용하면 다른 실행프로그램 예를 들어 음악재생프로그램 들도
다른 곡이나 다를 리스트로 이동 실행하게 할 수 있습니다.
; 개인적 상황 슬라이드 쇼 실행방안- 필요한 프로그램을 설치후 앞 줄에 ";" 를 삭제하고 실행할 것- 실행하지 않는 프로그램은 앞 줄에 ";" 를 첨가시킴
; 현재 xnview 로 기본 설정됨
; ▼ 개인 설정 변경 사항
ifexist, %out%:\totalcmd\Plugins\xnview\sld\%num%.sld
run, %out%:\totalcmd\Plugins\xnview\xnview.exe %out%:\totalcmd\Plugins\xnview\sld\%num%.sld,
; run, %out%:\totalcmd\Plugins\artsage\artsage32.exe, %out%:\totalcmd\Plugins\artsage
; ● 휴식시간을 알리는 배경음악-winvibe 사용시
run, %out%:\totalcmd\Plugins\winvive\WinVibe.exe %out%:\totalcmd\Plugins\winvive\%num%.mid, ,MIN
; run, %A_scriptdir%\WinVibe.exe %A_scriptdir%\%num%.mid, ,MIN
; ● 배경음악 - kmplayer 사용시
; 아래는 배경음악을 xnview에서 각 슬라이드당 한곡만 넣을 수 있으므로 KMPlayer.exe 로 매번 다른 곡리스트를 실행하기를 원할 때 사용하는 명령어임
{
run, %out%:\totalcmd\Plugins\The KMPlayer\KMPlayer.exe "%out%:\totalcmd\Plugins\The KMPlayer\PlayList\%num%.m3u", ,MIN
sleep, 1000
; 실행시 kmp 실행창을 최소화시키는 명령 - WinMinimize, ahk_class Winamp v1.x- 이 듣지않으므로 다음 명령어를 사용함.
PostMessage, 0x112, 0xF020,,, ahk_class Winamp v1.x, ; 0x112 = WM_SYSCOMMAND, 0xF020 = SC_MINIMIZE
}
; ● 텍스트 경구를 띄어주는 프로그램
; run, %out%:\totalcmd\Plugins\pearl\sutra32.exe, %out%:\totalcmd\Plugins\pearl
; 실행시킨 프로그램들은 휴식시간 동안 작동시킨 후 휴식시간이 종료될 시점에 실행된 프로그램 정지시킴~~ 현재 5분 실행 후 종료 설정 ~~
; ▼ 개인용 시간 조정
; sleep, 3000
; 휴식시간 5분 적용
sleep, 300000
; 휴식시간 10 분 적용
; sleep, 600000
; ▼ 개인용 실행 프로그램 종료 조정
; 앞 설정에서 실행시킨 프로그램들 휴식시간 종료시 종료시키기 -- 실행시킨 프로그램 종류를 선택해서 줄 앞 부분 ";" 을 없애고 사용하기
DetectHiddenWindows, On
SLEEP, 200
SLEEP, 200
; Process, CLOSE, ArtSage32.EXE, ; ArtSage32 프로그램 정지명령 - 이 프로그램은 이 명령으로만 정지됨
; Process, CLOSE, SUTRA32.EXE ; SUTRA32.EXE 사용시 정지명령 - 이 프로그램은 이 명령으로만 정지됨
Process, CLOSE, WinVibe.exe
; Process, CLOSE, KMPlayer.exe
; xnview.exe 사용시 정지명령
Process, CLOSE, xnview.exe
; ■ 5시간 작업시마다 작업내용을 일단 클립보드에 복사해 넣는 스크립트
; 블로그 등 인터넷 문서 작업시 일정시간 경과후 로그인 강제 종료로 인해 작성 중인 문서내용을 올리다가 작업내용을 모두 잃어버리지 않도록 임시방편으로 클립보드로 자동 저장하고
; 작업내용 분실에 대한 경고메세지를 알리는 용도
aa =
if ANAME = 5
aa =1
aa =1
aa =1
aa =1
aa =1
if aa = 1 ; 5시간 경과시 저장 중 문서 백업
{
MsgBox, 1, 주의, 작업 중인 내용을 잃어버리지 않도록 일단 내용을 클립보드에 복사합니다.`n 확인ok=자동복사`, 취소cancel=자동복사안함, 30
IfMsgBox, Ok
{
SLEEP, 200
MouseClick, left, 200, 200
send ^a
sleep, 200
send ^c
sleep, 200
}
{
SLEEP, 200
MouseClick, left, 200, 200
send ^a
sleep, 200
send ^c
sleep, 200
}
}
}
;loop 부분~의 끝부분
; ■ 비교적 정확한 시간에 메세지를 띄어 알려주는 핫키--필요할 때 기재후 실행한다. ★
; 1 분당 확인 ; 시간을 자신이 설정하는 포맷에 맞게 정확히 기입하여 주세요
#t::
Msgbox, 0, [시간안내-설정], 시간 약속에 대한 메세지 안내를 스크립트에 설정 후 사용하십시오.,5
loop,
{
; 1회 안내 - break
Times = %A_YYYY%%A_MM%%A_DD%%A_Hour%%A_Min%
If Times between 201203231325 And 201203231328
{
Msgbox, 0, [긴급안내], 식사하세용!!!
break
}
Times2 = %A_Hour%%A_Min%
If Times2 between 1334 And 1338
{
Msgbox, 0, [긴급안내], 빨리 준비하세용!!!
}
}
return
; ■ 일정 시간별 메세지 + 시간 안내
timing:
Hour = %A_Hour%
Hour += 0
Min += 0
; 시간대 내용을 알려주기 위한 스크립트입니다.
If Hour between 1 And 2
pm = 밤
If Hour between 3 And 5
pm = 새벽
If Hour between 6 And 11
pm = 오전
If Hour between 12 And 18
pm = 오후
If Hour between 19 And 22
pm = 저녁
If Hour between 23 And 24
pm = 밤
; 오후 시간을 12 시간제로 만들기 위한 스크립트입니다.
If Hour > 12
{
EnvSub, Hour, 12 ; 같은 명령 [Hour -= 12]
}
; ▼ 하루 시간별 스케줄 001 - "작업 시작시간"에 같이 알릴 스케줄임 [샘플]
; 시간별 스케줄-001은 "작업 시작시간"에 같이 알릴 스케줄임 [샘플]
; 시간별 스케줄-002는 "휴식시간 시작"시 같이 알릴 스케줄임
; loop가 50 분 간격으로 돌아가므로, 정확한 시각까지 맞는 시각 알람은 곤란하며, 대략적 시간 대로 정한 스케줄만 가능함.
; 참고로 원하는 정확한 시각 (예: 분 단위)에 정확히 알람메세지를 출력하게 하려면, loop를 원하는 시간간격마다 순환해 돌리는 별도 스크립트를 작성해 넣어야 함
{
lunch1 = [시간대 스케줄안내]`n지금은 산보를 하실 시간입니다.
}
{
lunch1 = [시간대 스케줄안내]`n지금은 건강을 위해 잠시 휴식을 하시거나 재충전을 위해 독서를 하실 시간입니다.
}
If A_Hour between 19 and 21
{
lunch1 = [시간대 스케줄안내]`n지금은 오늘의 업무를 마치고 가정으로 돌아가실 시간입니다.
}
; 시간별 스케줄 002 ; => "휴식시간 시작시" 같이 알릴 시간 스케줄 [샘플]
; => 참고 시간별 스케줄 001은 업무시작시 알릴 메세지임 [ 앞에 기재 ]
; 설정 샘플 예
{
lunch2 = 점심 드실 때가 되었습니다.
}
If A_Hour between 18 and 19
{
lunch2 = 저녁 드실 때가 되었습니다.
}
; 날짜 일정관리 프로그램을 사용하지 않거나 , 사용하더라도 병행하여 일정을 알려줄 수 있는 방안
; 날짜 일정에 사용하는 변수입니다.
DAY = %A_MM%%A_DD%
mm = %A_MM%
mm += 0
dd = %A_DD%
dd += 0
Hour += 0
Min += 0
; 시간대 내용을 알려주기 위한 스크립트입니다.
If Hour between 1 And 2
pm = 밤
If Hour between 3 And 5
pm = 새벽
If Hour between 6 And 11
pm = 오전
If Hour between 12 And 18
pm = 오후
If Hour between 19 And 22
pm = 저녁
If Hour between 23 And 24
pm = 밤
; 오후 시간을 12 시간제로 만들기 위한 스크립트입니다.
If Hour > 12
{
EnvSub, Hour, 12 ; 같은 명령 [Hour -= 12]
}
; ▼ 일정 안내 설정예
; ▼ 개인 설정 변경 사항
; ■ 중요한 특별 일정 안내
; - 이는 별도의 독립 메세지 창을 매시간 띄워 안내합니다.
; Msgbox, 명령 끝 부분에 타임아웃 시간을 넣지 않으면 메세지를 확인하여 클릭하지 않으면 그 상태에서 스크립트를 중지시키는 작용을 합니다. (참고--꼭 중요한 메세지라면 이 방법도 가능)
; //////////////////////////////
; 일정 특정일에 일정을 확실히 이행해야 할 경우는 "매 시간마다" 별도의 메세지창을 출력하게 하는 다음 메세지방법을 사용합니다. 사용시는 = 나 Between And 로 적당하게 변경 사용하십시오
If DAY Between 0105 And 1231 ; 일정기간 - 1월 5일 부터 12월 31일까지- 반복안내할 내용입니다. - 샘플 예시를 위해 1년 전기간에 걸쳐 설정하였습니다.- 편집하여 사용하시면 됩니다.
Msgbox, 0, [중요특별일정안내], %A_YYYY%년 %mm%월 %dd%일의 특별 일정 안내입니다.`n[일정안내문구]: 오늘은 당신이 역사적으로 매우 보람된 일을 시작해야 할 하루입니다.,10
; 하루 4회 반복 알림
IF A_INDEX In 3,9,15,21
{
If DAY Between 0321 And 0629 ; 특정일 부터 일정기간 - 올해 3월 25일부터 6월 29일까지 계속 - 안내할 내용입니다.
Msgbox, 0, [중요특별일정안내], 지금 %pm% %Hour%시 %Min%분입니다. 올해 6월 달에 비가 많이 온다고 하니 미리 수재 방비를 위해 준비하시기 바랍니다.,10
}
Msgbox, 0, [중요특별일정안내], 지금 %pm% %Hour%시 %Min%분입니다. 오늘 %mm%월 %dd%일 일정 안내입니다. 오늘은 5시 30 분까지 병원을 가야 합니다. 카드를 준비하고 심호흡을 5번 정도 하고 ~~출발해주세용, 10
; ■ 특정 년도에 예정된 일정 안내- 별도의 독립 메세지 창을 매시간 띄워 안내합니다.
; 예: 2013년 3월 2일 결혼식 예정되어 2월 9일 부터 미리 준비를 안내하는 메세지 출력~~~
If A_YYYY = 2013
{
If DAY > 201
{
IF ANAME Between 1 And 3 ; 프로그램 실행후 2회 안내 메세지 출력
Msgbox, 2013년 3월 2일 첫째주 결혼식 예정이랍니다. 비행기 예약 및 사진촬영 등 관련사항을 준비사항들을 점검하시기 바랍니다.`n 오늘 %mm%월 %dd%일 일정 안내입니다.
}
}
; //////////////////////////////
; 다음은 업무시작-휴식시간 메세지와 함께 출력하는 용도 ; dayschedule 이란 변수에 해당사항이 있으면 모두 묶어서 함께 1개의 메세지에 출력 안내하는 용도 [ 앞과는 별도 메세지인가의 구별]
; //////////////////////////////
; ■ 매일 반복되는 업무 일정 안내 메세지
If DAY > 0101 ; 매일 반복되는 업무 일정 안내 - 초기 + 하루 2회 정도 메세지 출력용
dayschedule = [일반일정안내]`n오늘 일정 안내입니다.`n오늘은 당신이 주인공이 되어 보내야 할 소중한 하루입니다.`n당신이 눈을 떠 바라보는 세상에는 늘 당신이 있고 당신이 중심에 있습니다.`n당신의 눈 앞에 펼쳐지는 이 세상에서`n당신이 갖는 선한 뜻이 원만히 성취되도록`n오늘 뜻하시는 일을 즐겁게 잘 하시기 바랍니다.
; ■ 특별일 추가 특별 일정 안내 메세지 설정
; 다음은 일정 특정일에 초기 실행시 + 하루 2회 정도만 위 메세지에 다음 내용을 추가 출력할 때 사용합니다. 테스트를 위해 >= 를 사용했으나, 사용시는 = 나 Between And 로 적당하게 변경 사용하십시오
If DAY Between 0103 And 1231
dayschedule = [특별일정안내]`n오늘은 당신의 생일날이 아닐 것입니다.`n그러나 누군가의 중요한 기념일일 수 있습니다. 오늘 하루를 뜻깊게 보내세용`n`n%dayschedule%`n`n
; ■ 보통의 기념일 + 일상적 반복 일정 안내
; 이 안내는 매일 프로그램 실행시 1회 2회 5회 째만 반복 안내 하기로 함.
{
If DAY >= 0101
dayschedule = %dayschedule%`n[기념일안내]`n오늘은 1년중 단 하루 뿐인 %mm%월 %dd%일을 기념하는 날입니다.
If DAY = 0528
dayschedule = %dayschedule%`n[법정공휴일]`n석가탄신일 입니다.
dayschedule = %dayschedule%`n[법정공휴일]`n추석 입니다.
dayschedule = %dayschedule%`n[법정공휴일]`n추석 공휴일기간입니다.
; ● 음력 명절
; ● 음력 가족 제사일, 기일
; ● 음력으로 세는 가족 생일
; ● 음력 절기
If DAY = 0218
dayschedule = %dayschedule%`n[음력절기]`n우수입니다.
dayschedule = %dayschedule%`n[음력절기]`n청명일 입니다.
dayschedule = %dayschedule%`n[음력절기]`n곡우일 입니다.
; ● 선물 준비일 - 음력변동
If DAY between 0925 And 0927
dayschedule = %dayschedule%`n[선물준비기간]`n추석날 가족에게 선사할 선물을 준비합시다.
/ *
; ● 가족 제사 [ 음력]
; ● 가족 생일 [ 음력 세는 분의 생일 ]
--- 매년 변동되는 기념일 ---
● 석가 탄신일 : 음4.8
● 추석(음8.15) 연휴 : 음8.14~8.16 :
; 법정 기념일(공휴일은 아님) 매년 변동 :
4월첫째토요일 : 향토예비군의날
5월셋째월요일 : 성년의날
10월마지막화요일 : 저축의날
* 기타 기념일:
부활절 3.22~4.26사이에 든다 : 부활절은 춘분(春分:3월 21일경) 후의 최초의 만월 다음에 오는 첫째 일요일이다. ; 2012.4.8, 2013.3.31, 2014.4.20, 2015.4.5 이다.
1월
● 설날(음1/1) 조상님께 차례(연시제)를 지내고 웃어른께 세배를 드린다. 새해 첫날이라 하여 1년 중 가장 큰 명절로 꼽는다. 차례상과 세배 손님을 위한 세찬이 준비되는데 떡국, 만두, 약식, 인절미, 갈비찜, 편육, 빈대떡, 전유어, 나물류, 수정과, 식혜, 과일을 먹는다.
정월대보름 전날 (음 1/14) 정월대보름 전날 오곡밥과 묵은 나물을 먹는다.
● 정월 대보름(上元, 음1/15) 아침에는 1년 내내 부스럼이 없도록 부럼(잣, 호두, 밥, 땅콩)과 귀밝이술을 먹는다. 오곡밥을 먹고 쥐불놀이를한다.
입춘: 입춘첩(입춘대길 등..)을 써붙이고 햇나물 무침을 먹는다.
● 중화절(음2/1) 초하루: 온 집안을 깨끗하게 쓸고 닦는 대청소를 하는 날(노래기 부적)이며, '머슴날'이라 하여 노비에게 나이 수만큼 송편을 만들어주고 유밀과를 먹는다. 머슴날, 풍신제, 콩볶이등도한다.
경칩: 담을 쌓거나 벽을 바르는 일(흙일)을 한다.
한식: 조상의 산소에 성묘(차례)를 가며, 찬 음식을 먹는 풍습이 있다.
● 삼짇날(음3/3): 강남 갔던 제비가 돌아온다는 날로 화전(화면)이라 하여 봄꽃을 넣어 전이나 국수를 해먹는다. 진달래꽃을 찹쌀가루에 버무려 지진 진달래전과 진달래술, 과일, 포 등을 먹는다. 머리감기, 나비점,
그외 3월중 세시풍속: 꽃놀이, 청춘경로회, 가시놀음, 음식; 묵청포,쑥국,산떡,환떡
4월
● 한식(동지절 후 105일 후) 조상의 묘를 돌아보고 미리 만들어둔 찬 음식과 약주, 과일, 떡, 국수, 식혜 등을 먹는다.
● 초파일: (음 4/8) 부처님 오신날이며, 연등놀이를 한다. 느티떡, 볶은 콩, 나물, 삶은 미나리를 먹는다.
그외 4월중세시풍속: 봉숭아 물들이기, 음식; 찐떡,어채,고기만두,미나리강회
사월 보름(下元, 음4/15)
● 단오(음5/5일) 옛날에는 차례를 지냈다. 단오제를 지내며, 창포물에 머리감기, 그네뛰기, 씨름을 즐겼다. 수리취떡, 준치국, 도미찜, 앵두화채 등을 먹는다.
그외 5월중 세시풍속: 대 심는날(13일), 봉숭아물들이기
● 유두(유월 보름, 음6/15) : 음식을 장만해 산간 폭포에서 몸을 씻고 서늘하게 하루를 보낸다. 한해 농사가 잘되라고 논에서 용신제를 지내며 수단자, 밀전병, 유두면을 먹는다. 그외 건단, 상화떡도 먹는다.
삼복(초복.중복.말복): 더위를 이기기 위하여 삼계탕,팥죽,보신탕을 먹는다.
● 칠월칠석(음7/7): 은하 동쪽의 견우별과 서쪽의 직녀별이 만나는 날로 견우와 직녀가 만나는날. 햇볕에 옷과 책을 내어 말리며 견우,직녀 두 별을 보고 절하며 바느질이 늘기를 빈다. 시루떡으로 칠석제를 지낸다. 육개장, 오이김치, 편, 전유어를 먹는다.
백중날(中元, 칠월 보름, 음7/15) 제사, 호미씻이(농악을 하며 즐긴다)를 한다.
● 추석(팔월 대보름, 음8/15) 각종 햇곡식과 햇과일을 거두며 수확의 기쁨을 나누는 날로 추석전에 벌초를하고 추석에 차례를 지내고 성묘를 한다. 강강술래, 씨름, 줄다리기를 한다. 음식; 송편,시루떡, 토란탕 토란단자, 밤단자, 배화채, 화양적 등을 먹는다.
석전제: 각 지방에서 유생들이 문묘에서 가을 석전제를 지낸다.
● 중양절(중구.음9/9): 국화꽃이 피는 시기로 단풍놀이(가을소풍),풍국놀이를 하며 국화술, 국화전, 유자화채 등을 먹는다.
시제, 성주제: 10월은 상달이라하여 조상에 대한 시제및 고사, 성주제를 지내는데 그런 제례 행사는 감사와 안녕을 기원하는 풍속들이다. 시절음식; 신선로, 만두, 난로회, 연포탕, 강정
김장 담그기
--- 양력 기준 기념일 --
동지절(작은설) 동지〉 양력 12월 22일. 아세(작은 설)라고도 하였다. 팥죽을 먹으며 악기를 제거한다 하여 팥죽을 문에 바르거나 팥죽물을 대문간, 대문 판자에 뿌린다. 팥죽에 든 새알심을 나이 수만큼 먹는 풍습이 있다. 팥죽, 비빔국수, 수정과, 동치미, 냉면,등을 먹는다.
납일(가평절): 종묘 사직에 제사를 지냈다. 새잡이, 납설수, 엿고기를 하였다.
제석(제야): 묵은 세배, 해지킴, 널뛰기를 하였다.
연말이 가까워지면 세찬(歲饌)이라 하여 마른 생선, 육포, 곶감, 사과, 배 등을 친척 친지들 사이에 주고받는다. 그리고 그믐에는 연중 거래 관계를 청산하며,각 가정에서는 새해 준비로 분주하다. 또 이날 밤에는 '해지킴[守歲]'이라 하여집 안팎에 불을 밝히고, 남녀가 다 새벽이 될 때까지 자지 않고 밤을 새운다.
{
de = ; 현재시각이 입력되도록 비워둠 current time YYYYMMDDHH
EnvAdd, de, 1, Days
StringLeft, nyear, de, 4
If A_YYYY <> %nyear%
nyears = %nyear% 년%A_space%
If A_YYYY = %nyear%
nyears =
StringTrimLeft, de, de, 4
StringLeft, nmon, de, 2
nmon += 0
StringTrimLeft, de, de, 2
StringLeft, nday, de, 2
nday += 0
dayschedule = %dayschedule%`n[기념일안내]`n내일은 1년 중 단 하루 뿐인 %nyears%%nmon%월 %nday%일을 기념하는 날입니다. 내일 기념일을 미리 준비하시기 바랍니다.
}
; ● 국경일(5일) :한글날(공휴일 아님)
If DAY = 0301
dayschedule = %dayschedule%`n[국경일]`n삼 일 절 입니다.
If DAY = 0717
dayschedule = %dayschedule%`n[국경일]`n제 헌 절 . 1948년 7월 17일 대한민국의 헌법이 선포되어 시행된 일을 기념하는 날입니다.
If DAY = 0815
dayschedule = %dayschedule%`n[국경일]`n광 복 절 대한민국 독립기념일입니다.
If DAY = 1003
dayschedule = %dayschedule%`n[국경일]`n개 천 절 입니다.
If DAY = 1009
dayschedule = %dayschedule%`n[국경일]`n한 글 날 입니다.
dayschedule = %dayschedule%`n[법정공휴일]`n신정
If DAY = 0501
dayschedule = %dayschedule%`n[법정공휴일]`n근로자의날(노동절)
If DAY = 0505
dayschedule = %dayschedule%`n[법정공휴일]`n어린이날
If DAY = 0606
dayschedule = %dayschedule%`n[법정공휴일]`n현충일
If DAY = 1225
dayschedule = %dayschedule%`n[법정공휴일]`n성탄절(크리스마스)
; ● 법정 기념일(공휴일은 아님) -불변 :
If DAY = 0303
dayschedule = %dayschedule%`n[법정 기념일]`n납세자의날
If DAY = 0407
dayschedule = %dayschedule%`n[법정 기념일]`n보건의날/ 신문의 날
If DAY = 0413
dayschedule = %dayschedule%`n[법정 기념일]`n임시정부수립일
If DAY = 0419
dayschedule = %dayschedule%`n[법정 기념일]`n4.19혁명기념일
If DAY = 0420
dayschedule = %dayschedule%`n[법정 기념일]`n장애인의날
If DAY = 0421
dayschedule = %dayschedule%`n[법정 기념일]`n과학의날
If DAY = 0422
dayschedule = %dayschedule%`n[법정 기념일]`n정보통신의날
If DAY = 0425
dayschedule = %dayschedule%`n[법정 기념일]`n법의날
If DAY = 0428
dayschedule = %dayschedule%`n[법정 기념일]`n충무공탄신일
If DAY = 0501
dayschedule = %dayschedule%`n[법정 기념일]`n근로자의날(근로자들은 공휴일)
If DAY = 0505
dayschedule = %dayschedule%`n[법정 기념일]`n어린이날
If DAY = 0508
dayschedule = %dayschedule%`n[법정 기념일]`n어버이날
If DAY = 0508
dayschedule = %dayschedule%`n[법정 기념일]`n재향군인의날
If DAY = 0515
dayschedule = %dayschedule%`n[법정 기념일]`n스승의날
If DAY = 0518
dayschedule = %dayschedule%`n[법정 기념일]`n광주민주화운동 기념일
If DAY = 0519
dayschedule = %dayschedule%`n[법정 기념일]`n발명의날
If DAY = 0525
dayschedule = %dayschedule%`n[법정 기념일]`n방재의날
If DAY = 0531
dayschedule = %dayschedule%`n[법정 기념일]`n바다의날
If DAY = 0605
dayschedule = %dayschedule%`n[법정 기념일]`n환경의날
If DAY = 0625
dayschedule = %dayschedule%`n[법정 기념일]`n6.25전쟁일
If DAY = 0918
dayschedule = %dayschedule%`n[법정 기념일]`n철도의날
If DAY = 1001
dayschedule = %dayschedule%`n[법정 기념일]`n국군의날
If DAY = 1002
dayschedule = %dayschedule%`n[법정 기념일]`n노인의날
If DAY = 1009
dayschedule = %dayschedule%`n[법정 기념일]`n한글날
If DAY = 1015
dayschedule = %dayschedule%`n[법정 기념일]`n체육의날
If DAY = 1020
dayschedule = %dayschedule%`n[법정 기념일]`n문화의날
If DAY = 1021
dayschedule = %dayschedule%`n[법정 기념일]`n경찰의날
If DAY = 1024
dayschedule = %dayschedule%`n[법정 기념일]`n국제연합일(UN데이)
If DAY = 1103
dayschedule = %dayschedule%`n[법정 기념일]`n학생의날
If DAY = 1109
dayschedule = %dayschedule%`n[법정 기념일]`n소방의날
If DAY = 1111
dayschedule = %dayschedule%`n[법정 기념일]`n농어업인의날
If DAY = 1117
dayschedule = %dayschedule%`n[법정 기념일]`n순국선열의날
If DAY = 1130
dayschedule = %dayschedule%`n[법정 기념일]`n무역의날
If DAY = 1203
dayschedule = %dayschedule%`n[법정 기념일]`n소비자보호의날
; ● 세시 명절
If DAY = 1221
dayschedule = %dayschedule%`n[세시명절]`n 동 짓 날 입니다.
; ● 기타 기념일:
If DAY = 0308
dayschedule = %dayschedule%`n[기념일]`n세계여성의날
If DAY = 0315
dayschedule = %dayschedule%`n[기념일]`n상공의 날
If DAY = 0322
dayschedule = %dayschedule%`n[기념일]`n물의날
If DAY = 0323
dayschedule = %dayschedule%`n[기념일]`n기상의날
If DAY = 0401
dayschedule = %dayschedule%`n[기념일]`n만우절
If DAY = 0405
dayschedule = %dayschedule%`n[기념일]`n식목일(4월 5일): 나무를 아껴 가꾸고 많이 심기를 권장하는 날입니다.
If DAY = 0422
dayschedule = %dayschedule%`n[기념일]`n지구의날
If DAY = 0521
dayschedule = %dayschedule%`n[기념일]`n부부의날
If DAY = 0531
dayschedule = %dayschedule%`n[기념일]`n금연의날
If DAY = 0617
dayschedule = %dayschedule%`n[기념일]`n세계사막화방지의날
If DAY = 0907
dayschedule = %dayschedule%`n[기념일]`n사회복지의 날
If DAY = 0916
dayschedule = %dayschedule%`n[기념일]`n세계오존층보호의날
If DAY = 0927
dayschedule = %dayschedule%`n[기념일]`n관광의날
If DAY = 0928
dayschedule = %dayschedule%`n[기념일]`n공자탄신일 (법정공휴일은 아니지만, 유림에서는 기념 행사를 함)
If DAY = 1008
dayschedule = %dayschedule%`n[기념일]`n재향군인의 날
If DAY = 1027
dayschedule = %dayschedule%`n[기념일]`n대한적십자창립일
If DAY = 1028
dayschedule = %dayschedule%`n[기념일]`n교정의 날
If DAY = 1205
dayschedule = %dayschedule%`n[기념일]`n국민교육헌장선포일
If DAY = 1210
dayschedule = %dayschedule%`n[기념일]`n세계인권선언기념일
If DAY = 1229
dayschedule = %dayschedule%`n[기념일]`n생물다양성보존의날
dayschedule = %dayschedule%`n[funny기념일]`n삼겹살데이
If DAY = 0502
dayschedule = %dayschedule%`n[funny기념일]`n오이데이
If DAY = 1004
dayschedule = %dayschedule%`n[funny기념일]`n천사데이
If DAY = 1024
dayschedule = %dayschedule%`n[funny기념일]`n애플데이
If DAY = 1031
dayschedule = %dayschedule%`n[funny기념일]`n할로윈데이
If DAY = 1111
dayschedule = %dayschedule%`n[funny기념일]`n빼빼로 데이 (공식기념일은 아니지만 우리나라에서 발생)
; ● 14일 기념일
If DAY = 0114
dayschedule = %dayschedule%`n[14일 기념일]`n다이어리데이 : 1년 동안 쓸 다이어리나 수첩을 연인에게 선물하는 날.
If DAY = 0214
dayschedule = %dayschedule%`n[14일 기념일]`n발렌타인데이 : 발렌타인데이 여성이 남성에게 초콜릿을 주며 사랑을 고백하는 날. 발렌타인은 3세기경 로마제국에서 사랑하는 젊은이들을 황제의 허락없이 결혼시켜 준 죄로 순교한 사제의 이름이다. 그가 죽은 날이 발렌타인데이인데 지금은 연인들의 날로 알려져 있다.
If DAY = 0314
dayschedule = %dayschedule%`n[14일 기념일]`n화이트데이 : 남성이 발렌타인데이에 받은 선물에 답례하는 날. 서양에는 없는 동양에만 있는 이날은 남자가 좋아하는 여자에게 사탕을 선물하며 자신의 마음을 대답하는 날.
If DAY = 0414
dayschedule = %dayschedule%`n[14일 기념일]`n블랙데이 : 블랙데이는 연인이 없는 남녀가 만나 외로움을 달래는 날. 발렌타인데이에 남자친구에게 초콜렛을 선물하지 못한 여자와 화이트데이에 사탕을 주지 못한 남자가 만나 서로의 외로움을 달래주는 날이니까. 이날은 옷을 비롯해 구두, 양말, 악세사리까지 검정색으로 입어야하고 먹는 것도 짜장면을 먹고 카페에 가도 블랙커피를 마십니다.
If DAY = 0514
dayschedule = %dayschedule%`n[14일 기념일]`n옐로데이 & 로즈데이 : 블랙데이까지 애인을 사귀지 못한 사람이 노란옷을 입고 카레를 먹어야 독신을 면한다는 날. 또는 로즈데이 : 연인들이 장미꽃 사이를 거닐며 데이트하는 날.
If DAY = 0614
dayschedule = %dayschedule%`n[14일 기념일]`n키스데이 : 각 달의 14일에 만난 사람들이 키스하는 날.
If DAY = 0714
dayschedule = %dayschedule%`n[14일 기념일]`n실버데이 : 실버(은제품) 액세서리를 주고받는 날. 실버데이는 은제품을 선물하는 날이라고도 합니다. 또는 학교선배, 직장선배는 물론 부모님에게 데이트 비용을 부담 시키면서 애인을 다른 사람에게 선보이는 날.
If DAY = 0814
dayschedule = %dayschedule%`n[14일 기념일]`n그린데이 : 연인과 삼림욕을 하며 시원하게 피서를 하는 날. 삼림욕을 하는 날이라서 그린데이라고 하며 더운 여름, 시원한 숲이 있는 산을 찾아 둘이 손잡고 걸어 오르면서 삼림욕을 해보는 날
If DAY = 0914
dayschedule = %dayschedule%`n[14일 기념일]`n뮤직데이 & 포토데이 : 사진을 함께 찍어 한장씩 나눠 갖는 날. 음악과 춤이 있는 곳에서 친구들을 모아놓고 자랑스럽게 연인을 소개하면서 둘 사이를 공식화하는 날 또한 청명한 가을 하늘 아래서 연인과 사진을 찍는 포토데이 이기도 합니다
If DAY = 1014
dayschedule = %dayschedule%`n[14일 기념일]`n와인데이 : 연인과 분위기 있는 곳에서 와인을 마시는 날.
If DAY = 1114
dayschedule = %dayschedule%`n[14일 기념일]`n오렌지데이 & 무비데이 : 연인끼리 영화를 보고 오렌지주스를 마시는 날.
If DAY = 1214
dayschedule = %dayschedule%`n[14일 기념일]`n허그(Hug)데이 : 연인끼리 포옹으로 추운 겨울을 함께 녹이는 날. 연인끼리 껴안는 것이 허락되는 날. 허그(Hug)는 꽉 껴안는 것을 의미하는 말이므로 연인끼리 포옹이 가능하다는 뜻.
; ● 가족 생일 [ 양력] ;
; ● 결혼기념일 [ 양력] ;
If DAY = 0506
dayschedule = %dayschedule%`n[선물 준비일]`n모레는 어버이날(5월8일)입니다.
If DAY = 0513
dayschedule = %dayschedule%`n[선물 준비일]`n모레는 스승의날 (5월15일)입니다.
{
meet1_1 = 20120101 ; 기념일이 경과한 날을 계산할 기념일 --- 편집해서 사용하십시오
meet1_meaning_1 = 올해 첫 태양을 만난 날로부터 ; -- 문구를 편집해서 사용하십시오
meet1_2 = %A_year%%A_MM%%A_DD% ; 오늘날짜
EnvSub, meet1_2, %meet1_1%, Days
dayschedule = %dayschedule%`n`n[기념일 카운트업01]`n%meet1_meaning_1% %meet1_2% 일이 지났습니다.
}
{
meet2_1 = 20010101 ; 기념일이 경과한 날을 계산할 기념일 --- 편집해서 사용하십시오
meet2_meaning_1 = 2001년 21세기의 첫 태양을 만난 날로부터 ; -- 문구를 편집해서 사용하십시오
meet2_2 = %A_year%%A_MM%%A_DD% ; 오늘날짜
EnvSub, meet2_2, %meet2_1%, Days
dayschedule = %dayschedule%`n[기념일 카운트업02]`n%meet2_meaning_1% %meet2_2% 일이 지났습니다.
}
{
scheme1_1 = 20121231 ; 예정일 -- 편집해서 사용하십시오
sch_meaning1_1 = 올해 마지막 태양을 만날 날이 ; -- 편집해서 사용하십시오
scheme1_2 = %A_year%%A_MM%%A_DD% ; 오늘날짜
EnvSub, scheme1_1, %scheme1_2%, Days
dayschedule = %dayschedule%`n`n[기념일 카운트다운01]`n%sch_meaning1_1% 앞으로 %scheme1_1% 일 남았습니다.
}
; - 기념일 일 정 일 전 부터 예고 시작용
{
scheme2_1 = 21010101 ; 예정일 -- 편집해서 사용하십시오
sch_meaning2_1 = 다음 세기의 새 해 첫 태양을 만나게 됩니다. ; -- 편집해서 사용하십시오
scheme2_2 = %A_year%%A_MM%%A_DD% ; 오늘날짜
EnvSub, scheme2_1, %scheme1_2%, Days
If scheme2_1 <= 36500 ; 기념일을 미리 알리기 필요한 날짜 기입
dayschedule = %dayschedule%`n[기념일 일정일전부터 예고02]`n앞으로 %scheme2_1% 일 후 %sch_meaning2_1% 준비 바랍니다.
}
; ■ 요일별 일정 안내
If A_DDD In 월,화,수,목,금
dayschedule = %dayschedule%`n`n[요일 안내]`n오늘은 %A_DDD%요일 즐겁게 보람된 일을 하는 날입니다.
If A_DDD In 토,일
dayschedule = %dayschedule%`n`n[요일 안내]`n오늘은 %A_DDD%요일 보람된 일을 즐겁게 쉬면서 하는 날입니다.
If A_DDD = 월
dayschedule = %dayschedule%`n5일 후면 주말이 시작됩니다.`n
If A_DDD = 화
dayschedule = %dayschedule%`n4일 후면 주말이 시작됩니다.`n
If A_DDD = 수
dayschedule = %dayschedule%`n3일 후면 주말이 시작됩니다.`n
If A_DDD = 목
dayschedule = %dayschedule%`n2일 후면 주말이 시작됩니다.`n
If A_DDD = 금
dayschedule = %dayschedule%`n1일 후면 주말이 시작됩니다.`n
If A_DDD = 토
dayschedule = %dayschedule%`n오늘 부터 주말시작입니다.`n
If A_DDD = 일
dayschedule = %dayschedule%`n6일 후면 주말이 시작됩니다.`n
; ■ 간단 도움말 일시 참조★
#f1::
ifexist, %A_scriptdir%\help.txt
run, %A_scriptdir%\help.txt
else
{
msgbox, 0, 도움말, %A_scriptdir%\help.txt가 없습니다. 스크립트 파일을 직접 자세히 참조하시기 바랍니다., 3
ifexist, %ProgramFiles%\EditPlus 3\editplus.exe
run, %ProgramFiles%\EditPlus 3\editplus.exe %A_ScriptFullPath%
}
Return
; ▼▼ 개인설정 시작
#f2::
ifexist, %ProgramFiles%\EditPlus 3\editplus.exe
run, %ProgramFiles%\EditPlus 3\editplus.exe %A_ScriptFullPath%
rule = %A_ScriptFullPath%
portable =선생님께서 찾으시는
pppr =을 찾았습니다.
tttr = 0
Gosub, continue5
Return
; ▼▼ 개인설정 끝
/ *
; //////////
; 문장 작성시 축약키나 영문전환키 문제를 해결하기 위해 사용하는
축약키 사용 전문프로그램 및
한영 전환 오타 방지 프로그램을 실행할 지 여부를 정하는 스크립트 명령 구간
스크립트 실행시 초기 각 프로그램 미사용 상태로 시작함. - 사용을 원하면 배당된 핫키를 실행해 사용하고, 사용중 중지하려면 다시 그 핫키를 누르면 됨 (ON/OFF)
; //////////
*/
; 키보드 속기 프로그램(한글로 축약키를 설정해 사용할 수 있는 프로그램)을 실행 하는 핫키
; 또 이 프로그램 실행으로 오히려 자주 오타가 발생하는 경우 이 프로그램을 사용후 다시 종료시키는 핫키...[ON/ OFF 키]
; 키보드 속키프로그램은 필요하면 인터넷 검색을 통해 다운받으십시요.
If Sokki=
{
; 참고- 포터블 환경 드라이브 %out% 드라이브
ifexist, %out%:\totalcmd\Plugins\Keyboard Sokki\KR\KSuppt.exe
run, %out%:\totalcmd\Plugins\Keyboard Sokki\KR\KSuppt.exe, %out%:\totalcmd\Plugins\Keyboard Sokki\KR
Sokki = use
return
}
{
Process, Close, KSuppt.exe
Sokki =
}
return
; 핫키 : CTRL +ALT +E :
; 한영오타 수정 프로그램 eng_kor.exe - 실행하는 키 + 중지하는 키 [ON/ OFF 키]
; 원하는 형태의 프로그램을 선택해 사용하십시오.
If EngKor=
{
; 포터블 환경 - 스크립트 실행 폴더내 한영오타 수정 프로그램 eng_kor.exe 실행
ifexist, %out%:\totalcmd\Plugins\eng_kor\eng_kor.exe
run, %out%:\totalcmd\Plugins\eng_kor\eng_kor.exe
EngKor = use
return
}
If EngKor=use
{
Process, Close, eng_kor.exe
Sokki =
}
return
; ■ 문장 작성시 사용하는 오토핫키의 축약키 사용 - 샘플 설명 용 스크립트 구간
; //////////
; 문장 작성시 사용하는 오토핫키의 축약키 사용 - 샘플 설명 용 스크립트 구간
; //////////
*/
(
단, hotstring에서 긴 문장을 줄 바꾸어서 나타내려면
현재 사용하는 방식처럼 ( )기호를 사용하여 묶어
나타낼 수도 있다. ; 간단한 상용구 내용 편집하기 샘플이며 =>
본 스크립트에서는 이 방법을 추천하지는 않는다.
한/영키 사용 환경에서는 오타가 발생할 가능성이 많은 방법이다.
한/영키 사용 환경에서도 단축키가 정상 작동하게 하기 위한
보다 자세한 사용방법을 참조하기 위해서는 텍스트 편집기로 빈 문서를 하나 열고
o키를 한번 누르고 i 키를 5번 누르고 +스페이스 바[ 또는 엔터기 등]을 치면 해당 내용을 볼 수 있다.
)
Clipboard =
(
축약키 Hotstring 설정에 관한 가장 간단한 내용은
긴 낱말이나 상용구문을 간단히 [축약기]를 통해 입력하고자 할 때는
그 상용구문을 축약할 축약키를 영문자로 정해 "::" "::" 기호 사이에 넣고
다음에 이어 그 축약키로 나타낼 문자를 적으면 된다.
그러나 여기 스크립트에서는 위 방법이 범용적으로 사용하기에 적절하지 않는 사정을 설명하고 다른 대체적 방안을 소개한다.
:: :: 방법으로 축약키를 정한 경우 그 축약키에 해당한 글자를 입력하고 끝에 특정 기호나 엔터, 탭, 스페이스바를 누르면 해당 축약키가 작동한다.
기본 축약키를 작동시키는 키를 변경하려면 다음 명령을 스크립트 안에 기재하면 된다.
#Hotstring EndChars -[](){}:;'"/\,.?!`n `t
위 내용은 원칙적으로 작동하는 작동키내용이다.
``n은 줄바꿈 엔터키
``t은 탭키
그리고 그 사이에 스페이스가 이 안에 기재된 형태이다.
즉 엔터키 탭키 스페이스 키 등이 축약키를 원칙적으로 작동시키는 키가 된다. 기본적으로 "[" 키나 " ]" "?" 키 등도 모두 축약키를 작동하는 키로 사용된다.
즉 * 표시를 넣으면 스페이스바나 엔터 키등 앞의 작동키를 글자 끝에 입력하지 않아도 글자 입력만으로 곧바로 결과가 출력된다.
-> 보다 더 자세한 옵션은 매뉴얼 참조
반면 영문자로 만든 축약키는 그 키에 해당하는 한글로 입력해도 해당 축약키가 실행된다.
예를 들어 ohhhhh 키로 축약키를 정했다면, ㅐㅗㅗㅗㅗㅗ 를 입력하고 스페이스나 엔터키를 입력하면 위 글자가 나타나게 된다.
그러나 엔터키를 사용하여 줄을 바꿔 나타내자면, (둥근괄호)를 사용하여 이를 묶어야 한다. 이 둥근괄호는 실행명령을 묶는 { } 기호와 구별된다.
축약할 문장에서 각 글자는 한/영키의 영향을 받는다.
영문자의 출력결과는 기본적으로 한/영키 상태에서 그 키로 나타나는 결과가 출력된다.
한/영 전환키 설정 상태에 따라서 영문자들은 때로는 한글로 때로는 영문으로 나타나는 오류가 발생할 수 있다.
다만 스크립트 파일을 utf-8 코드로 텍스트 저장하고 _L 버전 오토핫키를 사용하면 한글은 한/영전환에 관계없이 어느 경우에도 깨지지 않고 출력할 수 있다.
더 나아가 한글이 출력되지 않는 ansi 버전등에서도 한글이 출력되게 하려면
다음에서 사용한 클립보드 clipboard= 방식을 사용해야 한다.
클립보드 방식을 사용하지 않는 경우와 비교하려면, 한/영 전환키를 한글로 설정한 상태에서
o(ㅐ) 다음에 h(ㅓ)를 5번 입력후 스페이스 바를 누른 결과와 비교하면 양 경우의 차이를 알 수 있다.
clipbord 에 내용을 넣어 ctrl +V 키를 통해 붙여넣기하는 방법을 사용해야 한다.
한편 긴 문장을 한 줄로 나타내며 줄 바꿈에 ``n 기호를 사용하며 나타낼 수 있다.
그러나 엔터키를 사용하여 줄을 바꿔 나타내자면, (둥근괄호)를 사용하여 이를 묶어야 한다. 이 둥근괄호는 실행명령을 묶는 { } 기호와 구별된다.
- 추가내용을 참조하려면, 빈 문서 편집창에 가서 O 키 다음에 J 키를 5번 입력해 보세요.
)
data002=
(
안녕~~하십니까..인~~사를 나~~눕시다..명~~랑하~~게 ; 변수 내용 삽입 샘플 설명용
)
sleep, 150
SendInput, ^v
return
; ■ 영자 입력용 축약키
; /////////////////
; 영자 입력용 축약키 - 한글 입력시 몇몇 영문자를 간단히 입력시 한글로 곧바로 한영키 전환- Shift 키 입력 등과 관계없이 곧바로 입력할 수 있는 축약키
; /////////////////
; 축약키 dp4 (=에4 ) => a
clipboard=a
sleep, 150
SendInput, ^v
return
; 축약키를 한 줄로 나타낼 수도 있지만, 여러줄로 명령을 나타낼 수도 있다.
; 각 키에 배당한 명령이 완료되면 return 명령을 내려 그 앞줄까지만 실행하고 멈추게 해야 한다.
; return 키를 넣지 않으면 스크립트에서 어디까지 명령을 이행해야 되는 지 모르므로 계속 이어서 명령을 실행해 나가기 쉽게 되어 오작동이 발생하게 된다.
; 축약키 dp5(=에5) => 대문자 A
clipboard=A
sleep, 150
SendInput, ^v
return
clipboard=b
sleep, 150
SendInput, ^v
return
clipboard=B
sleep, 150
SendInput, ^v
return
clipboard=c
sleep, 150
SendInput, ^v
return
; 축약키 (=시5) => 대문자 C
clipboard=C
sleep, 150
SendInput, ^v
return
; ■ 아주 긴 축약문장을 한 축약키에 배당하는 방법
; /////////////////////
; 아주 긴 축약문장을 한 축약키에 배당하는 방법
; /////////////////////
data001 = 안~~녕~하~세요
Vartest =
(
-- 아주 긴 문장을 축약키에 배당하는 방법 --
이미 앞에서 문장을 여러 줄로 나눠 스크립트 안에 나타내는 방법을 보았다.
그런데 만일 하나의 변수에 넣을 글자가
16,383 characters 글자를 넘는 경우에는 다시 지금 사용하는 이 방법을 사용할 수 있다.
그러나 사실 이처럼 긴 문장을 축약키에 배당하여 문서작성과정에서 자주 사용할 일은 거의 없다.
문서작성 과정에서 다음과 같은 작업을 할 경우에 필요하다.
매번 글을 작성해 나갈 때,
그 안에 일정부분을 일정하게 그 때 그 때 내용을 바꿔 기입할 필요가 있을 때
( 예를 들어 작성 날짜나 파일제목, 또는 다른 파일을 불러와 복사한 부분 등등으로)
이 방법을 사용하여 스크립트 명령을 내리면 되기 때문이다.
그 문서안에 일정한 부분들을
기계적으로 구체적으로 다른 내용으로 각기 바꿔 넣어야 할 상황이 있을 때도
이 방법을 사용할 수 있기 때문이다.
길게 스크립트 명령안에 사용할 수 있는 방법이 필요하다.
또 변수를 사용하여 표시하더라도 어느 정도 분량의 한계가 있기 때문이다.
넣어 사용할 수 있는 방법을 찾을 필요가 있다.
한편
앞의 작업처럼 각 기본 문장 포맷에서
각 부분을 다른 내용으로 바꿔 대입해 표현하고자 할 때는
또 그 변수의 설정방법과
변수에 구체적인 값을 대입시켜 사용할 수 있는
방법을 익히면 된다.
그 부분을 변수로 표현하여 명령을 내리고
그 변수안에 바꿔 넣을 내용들을 다시 제공해주면 되기 때문이다.
우선 변수란 즉 그 변수문자 부분에 여러가지 구체적 내용이 변해 바뀌어 대입되어질 수 있는 하나의 기호가 된다.
예를 들어 본 스크립트에서 첫 부분에 사용한 A_Scriptdir 와 같은 변수가 그것이다.
오토핫키가 자동으로 그 구체적 폴더의 경로 내용을 이 변수안에 대입시켜 넣어 주는 것이다.
따라서 그런 구체적 내용을 자신이 스크립트에서 사용하고자 할 때는
이 변수를 나타내는 문자 앞 뒤로 퍼센트 기호를 붙이면
그 변수가 담고 있는 구체적 내용을 꺼내 적용해 사용할 수 있게 된다.
참조할 수 있다.
사용자가 스크립트를 편집하는 과정에서
자유롭게 특정한 문자나 숫자를 변수로 선언하여 사용할 수 있다.
매뉴얼의 variables, assigning to 항목 이하에서 자세한 사용법을 참조할 수 있다.
그 변수를 통해 다음 형식으로 명령을 내려 사용할 수 있음을 보여주기 위해
그 실행명령의 예를 보여주기 위해서다.
Clipboard= %data001% `n`n`n%data002%
이렇게 선언하고,
Clipboard에 들어간 구체적 내용을
붙여 넣으라고 CTRL + v 키 명령을 내리면
data001과 data002라는 글자가 붙여지는 것이 아니라,
그 변수안에 들어간 구체적인 내용들이
클립보드 안에 복사되어 붙여지게 되는 것이다.
그런 퍼센트 기호로 싼 기호가 문자가 아니라, 변수를 나타내는 기호임을 나타내는 것이며
따라서 그 변수에 해당한 내용을 찾아
대입시켜 그 구체적 내용을 바꿔 나타내라는 의미이다.
그 변수에 해당하는 부분은
=> 변수에 넣어진 구체적인 내용들로 바꿔 넣을 수 있게 된다.
본 스크립트 명령을 이처럼 작성하고 이 명령에 배당된 핫키 ojjjjj를 스크립트 실행후 입력하면
지금 이 문장이 문서 편집창에서 전체가 나오게 된다.
위 부분에서 data001을 퍼센트기호로 싼 부분은 다른 형태로 나온다.
data001 = 안녕하세요
로 정해 놓은 부분이 있기 때문이다.
data002 를 퍼센트로 싼 부분은
아무런 표시가 나오지 않을 수 있다.
그 구체적 내용을 넣어 준 적이 없기 때문이다.
핫키 oiiiii를 실행하는 부분에서
비로서 그 부분의 스크립트를 실행할 때
구체적 내용이 들어갈 수 있게 작성해 두었다.
그 다음에 ojjjjj를 실행한 경우라면,
앞과는 또 다른 결과가 나오게 된다.
필요에 의해서
이미 변수 data002에 들어간 구체적 내용을 지우려면,
data002 =
라고 스크립트 명령을 내리면 된다.
만일 oiiiii 를 먼저 실행하고
그 다음에 ojjjjj를 실행한 경우에
data002 부분에 일정한 내용이 표시되는 경우에도
연속적으로 ojjjjj만을 실행하면
다시 그 부분이 나타나지 않게 된다.
즉 안녕하세요 이하 부분의 내용이 또 출력되지 않게 된다.
data002 부분의 내용을 비우라는 명령이 들어갔기 때문이다.
그 부분은 또 다시 표현되지 않는다.
그래도 다시
핫키를 oiiiii 를 먼저 실행하고
그 다음에 ojjjjj를 실행한 경우에는
다시 그 부분의 내용이 나타나게 된다.
그에 해당한 구체적인 값을
필요에 따라 수시로 바꿔
넣을 수 있는 부분이 된다.
구체적으로 변수 안에 내용을 넣는 방법은
다양하고
그 값을 변화시키는 방법도 매뉴얼을 참조하면
이제 변수를 통해
다양한 구체적 값을 변화시켜 가면서 넣어
스크립트 명령을 실행해 갈 수 있다.
본 스크립트에서도 일정한 변수가 자주 사용되는데
그 작업의 예는 다음과 같다.
나중에, 일정한 목록파일에 기재된 이 각 문서 파일들을
목록 차례대로 하나하나 읽어
변수에 그 내용을 대입시켜 넣은 다음
각 명령을 실행시켜
각 문서를 하나로 병합시키는 실행 예에서도
이 변수사용을 살필 수 있다.
또 다른 예는 다음이다.
목록파일에 각 문서를 차례로 나열하고
이 순서대로 나열된 각 htm 문서를
계속 이어 서로 하이퍼 링크로 연결시키는 작업을 할 때에도
이 변수를 사용하면 쉽게 실행이 가능하다.
매번 다른 파일 경로 내용부분을 바로 이 변수로 표시해
구체적 내용을 바꿔 기입하게 할 수 있다.
조금씩 다른 내용을 기계적으로 변화시켜 대입시키는 문서 작업이 필요한 때는
이런 문서작업을 효율적으로 하기 위해
기초적으로 변수사용방법과,
또 변수를 사용하여
명령어 자체도 긴 문장을 넣는 사용할 수 있는 방법 등을 살필 필요가 있다.
앞에서 퍼센트 기호로 붙인 부분은 그 부분이 변수라는 것을 나타낸다.
그런데 문장 안에서 정말 퍼센트 기호를 그대로 나타내야 할 때도 있다.
이런 때는 퍼센트 기호 앞에 `를 붙여서 표시해야 한다.
다른 명령구문에 쓰이는 특수기호들도 같은 방법을 사용해 표현하게 된다.
Clipboard= `%data001`%`n`%data002`%
와 같은 형태로 나타내면 퍼센트 기호를 그 형태 그대로 나타낼 수 있다.
하나의 변수에 긴 문장을 전부 넣지 말고,
여러 변수에 나눠 배당시키거나,
또는 하나의 변수 내용을 순환시키는 방법을 사용할 수 있다.
즉 다음방법이다.
var = `%var`%
( 이 안에서 줄 바꿔 내용 기재 )
////
위와 같이 사용하면 한번 VAR 변수에 들어간 내용이
다음 단계에서 다시 들어가고 그 이후 내용이 추가로 들어가게 된다.
물론 실제 명령에서는 퍼센트 기호 앞에 있는 ` 기호를 빼내야 한다.
사용할 수 있다.
다음 변수 내용에는 아주 긴 문장을 넣어 보기로 한다.
아래 스크립트에서 토털커맨더를 통해
간단한 보안 목적의 파일 삭제를 행하는 방법과 관련하여
컴퓨터 사용시 가장 기초적으로 주의해야 할
보안 문제에 관하여 주의를 환기시키는 내용이다.
해당 내용은 아래에서 토털커맨더 기능과 관련하여
보안 삭제용 핫키를 배당하는 부분에서 참조하면 되리라 본다.
Vartest 안에 그 내용을 이어 넣어 보기로 한다.
Vartest = %Vartest%`n
(
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
==== 다음 이하는 하나의 변수를 순환적으로 사용할 때 두번째 부분에 기입되어진 부분입니다. =========
시스템에 가장 먼저 설치되고 운영되게 되는 OS는 되도록 신뢰할 수 있는 만한 경로를 통해 구입한 정품을 설치 사용하십시오.
그 시스템은 그 OS를 제작 배포한 이가 자신의 OS를 자신이 소유한 두 대 이상 컴에 설치한 상태와 비슷한 상태가 되기 쉽습니다.
또는 정상적인 시스템 파일과 프로그램 들을 통하여 원격조정이 가능한 상태로 변형 조작을 마친 상태에서 배포하기 쉽습니다.
OS 자체에서 지원하는 정상 시스템 파일들( 바이러스 검사시 검사되지 않음)과 프로그램을 통해 타인의 시스템을 원격 조정 관리하기 쉽습니다.
따라서 불법 OS 제작자가 마치 자신의 OS 로 두대 이상 컴퓨터에 자신의 OS를 설치하여, 두 곳 이상의 장소에서 자신 소유의 컴퓨터들을 원격조정방법을 통해 사용하는 상태처럼 됩니다.
그런 상태에서는 해당 OS 배포자가 이후 타인의 시스템들에 대한 파일 관리권한- 레지스트리키 변경 등에 대하여 정상적인 사용 권한을 취득하여
이후 타인 시스템 ip 주소만 확보되면 쉽게 수시로 원격 침투하여 자신이 원하는 형태로 각종 시스템 변경을 가할 수 있게 됩니다.
시스템이 본래 구성되어 있기 때문에 발생하는 문제이기도 합니다.
그 시스템의 소유자가 누구인가에 그런 원격 이용이 불법이용인가 아닌가가 구별되는데
불법 OS 를 설치해 사용하는 경우 그 시스템의 소유자는 자신의 컴에 그 OS로 설치작업을 하는 이가 아니라, 그 OS를 제작 배포하는 자가 되는 경우가 많습니다.
처음 제작시부터 원천적으로 각국의 사용자들의 민감한 개인 정보를 수집할 수 있는 장치를 장착하여 제작하는 경우도 있으며,
또 그렇지는 않더라도 자국에 배포하는 OS와 타국에 배포하는 OS 별로 각기 다른 수준의 보안수준을 적용하여 제작배포하는 경우가 있어서,
이런 문제들이 사회문제로 제기된 경우가 많습니다.
처음 제작 배포 상태에서는 보안을 유지할 수 있었지만, 이후 시간이 감에 따라,
쉽게 해커의 침투가 이뤄지고 보안체계가 파괴되는 경우도 많습니다.
특히 인터넷을 통한 정보 교환에는 이런 해커의 침투 가능성이 높으므로 늘 업데이트문제에 신경을 기울이며
새로운 해킹 수단의 개발에 대응해 새로 개발된 보안 장치를 다운받아 보안체계의 업데이트 조치를 취하여야 합니다.
해커의 노력과 보안장치 개발자의 노력은 창과 방패의 노력처럼 끝없이 서로 상대하여 기술을 개발하여야
각기 자신의 뜻을 이루기 때문에, 과거의 보안 장치를 유지한 상태에서 보안을 계속 유지해 나가는 것은 쉽지 않습니다.
특별히 직업상 보안조치가 필요한 작업을 상시적으로 해야되는 경우에는
인터넷 이용과 업무를 할 시스템을 서로 분리시켜서
업무에 사용할 시스템은 인터넷이나 외부이용자의 이용과 분리된 독립적인 시스템으로 구축하여 운영할 필요도 있습니다.
특히 무선랜이 기본 장착된 시스템을 사용시에는 부지불식간 무선랜을 통해 해커가 침투할 가능성이 높아지게 됩니다.
수시로 랜선을 빼고 외부와 분리된 상태에서 작업하더라도 해당 작업내용들이 임시파일이나 다양한 형태로 저장된 후
작업결과가 이후 해커에게 노출될 수 있으니 주의하시기 바랍니다.
또한 저장매체에만 해킹툴이 침투해 가동되지 않고 내부 메모리 장치 등 다양한 형태에 해킹툴이나 바이러스가 침투되어 가동될 수 있으니,
하드 디스크만 보안을 유지하는 것으로 충분하지 않을 수 있습니다.
이후 해커에 의해
해당 컴퓨터 상에서 작업하는 모든 내용이 상시 쉽게 감시될 수 있게 되며,
자신의 암호 은행 증권 계좌 거래 내역 등등 보안에 민감한 개인자료가 유출될 가능성이 높습니다.
또한 해당 시스템들은 불법 OS를 제작 배포한 이가 다른 해킹 목적 (DDos 공격 등)에 좀비 피씨가 되어 이용되기 쉽습니다.
그리고 이렇게 타인 시스템에 불법적 이용을 마친 후에는
자신의 사용 흔적(증거)를 없애기 위하여 다시 그 시스템들을 완전 복구불능하거나 사용불능 상태로 파괴시킨 채 떠나가기 쉽습니다.
불법 다운로드 되고 여기저기 유통되는 OS나 프로그램들이 모두 이런 상태라고 볼 수는 없지만,
상당한 경우 불법 OS 최초 제작 배포자가 정상 시스템 파일들로만 ip 주소를 획득한 이후에는 해당 시스템에 대해 원격조정이 가능하도록
사전 제작하여 유포시키는 경우가 많습니다.
바이러스나 해킹 툴 감지 프로그램으로 검사를 한다해도 검사되지 않게 됩니다.
이들을 몇개 조합하여 사용하면 쉽게 해킹 목적으로 해킹툴로 사용할 수 있게 됩니다.
대부분 사용자는 설령 다른 이가 자신의 시스템을 해킹을 하더라도 이 사실을 쉽게 탐지해 낼 수 없는 상태가 됩니다.
따라서 OS 시스템은 되도록 정품을 사용하여 자신이 설치한 OS의 소유자 권한을 컴퓨터 보유자 및 설치자 자신이 획득한 상태에서 시스템을 사용하시기 바랍니다.
그 OS가 설치된 컴퓨터와 시스템은 자신의 것이 아니라 배포자 소유의 시스템이 된다는 점에 특히 유념하고 주의를 기울이시기 바랍니다.
자신이 정상적인 소유자 권한을 획득하려고 시도하면,
그런 시도 이후 해당 OS 시스템 자체가 파괴되고 곧이어 사용불능 상태가 되는 경우가 많습니다.
따라서 이런 상태에서는 이런 작업을 하기 전에 먼저 개인 자료 및 보안에 민감한 자료를 별도 하드디스크에 옮겨 저장을 마친 후 해당 시스템에 대해 수정 변경 작업을 시도하시거나,
아예 해당 시스템의 포맷을 하고, 정상 OS를 마련하여 정상적인 시스템의 재설치 작업을 하시기 바랍니다.
이들 내용을 기록한 파일들이 있는 경우, 다른 이가 침투하여 삭제한 파일들을 복구하여 재사용하지 못하도록 보안 삭제방법을 사용하여 삭제하십시오.
또한 보안에 민감한 자료를 취급한 하드는 폐기할 때는, 단순 포맷 처리로 끝나지 말고, 전체 디스크 내용을 보안 삭제한 후 폐기하십시오.
특히 보안에 민감한 자료를 보안 삭제할 때는 전문프로그램 Bcwipe 등과 같은 전문 wipe 삭제 프로그램을 이용하여, 여러번 덮어쓰기를 실행하여 복구가 불가능한 상태로 삭제하여야 합니다.
자신이 빈번히 사용하는 프로그램들을 정품 시리얼을 취득해 사용하기 위해 불법 다운로드 사이트 등을 통해 받아 설치하는 경우,
프로그램을 다운로드받는 과정이나 그 프로그램 설치과정, 또는 그 프로그램 자체 안에 해킹 툴이 포함되는 경우가 많습니다.
인터넷등을 이용하는 가운데 해킹 툴이나 바이러스가 침투될 가능성이 많으므로
기본적으로 신뢰할 만한 바이러스 해킹툴 검색 프로그램을 늘 가동시켜
외부에서 바이러스나 해킹 툴이 침투하는 것을 방지하고 수시로 탐지 치료를 하는 가운데 사용해야 합니다.
가능한, 이 상태를 유지시키면서 부팅시마다 계속 사용할 수 있도록,
Deep freeze나 Shadow defender 등과 같이 재부팅을 하면 처음 원상상태로 회복되는 전문 시스템 복원프로그램을 사용하는 것이 좋습니다.
각종 프로그램 설치과정에서 시스템 파일이 손상되는 경우가 많으며,
이런 경우 쉽게 처음 원상태로 복구할 수단이 필요합니다.
또한 인터넷이나 각종 프로그램 설치시 바이러스나, 해킹툴이 침투하더라도
일시적으로만 피해를 입히고, 재부팅 이후에는 원상복구를 쉽게 할 수 있도록,
이런 전문 시스템 원상복구프로그램을 이용하여 예방조치를 취할 필요가 있습니다.
재부팅시 늘 그런 해킹툴이 작동되는 원상상태가 되어
오히려 늘 해킹에 노출되는 위험한 상태가 되니 이 점도 함께 주의하시기 바랍니다.
이 사실을 잘 탐지하지 못하면서 사용하게 됩니다.
그리고 설마 자신의 컴에 다른 해커가 해킹툴을 삽입 장착했겠는가 생각하며 사용하기 쉽지만,
해커가 그런 사용자의 시스템에 침투하는 것은 사실 해커도 그런 사실을 잘 모르기 때문이기도 하며,
사용자가 침투하는 목적은 해커에 따라서 수없이 다양하기 때문입니다.
따라서 자신이 보안이 필요한 자료를 취급하는 상태가 아니더라도,
해커는 침투하고, 해커의 목적에 따라 자신의 시스템이 다양한 목적으로 활용되는 상태에 노출되게 됩니다.
자신의 컴퓨터가 그 중에 하나에 포함되어 있을 수도 있다는점을 주의하고,
보안에 주의를 기울이는 가운데 사용하시기 바랍니다.
자신이 특별히 보안조치를 취할 필요가 없이 정상적으로 평범하게 사용하더라도
해커가 침투해 이용하고 이 이용흔적을 없애기 위하여
이용을 마친 후 해당 시스템을 파괴시키고 떠나는 경우가 많으니,
주의를 기울여야 할 필요가 있습니다.
세계의 수많은 해커들이 한국에 있는 컴퓨터를 해킹목적에 이용하기 위하여
한국사용자들의 컴퓨터를 공략 목표로 삼고 활동하므로,
특히 한국내 컴퓨터 사용자들은 이런 세계적 해커들로부터 피해를 받지 않도록
특히 보안유지에 주의를 기울이는 가운데 사용하여 주시기 바랍니다.
그 스크립트 소스가 공개되지 않거나,
소스가 일반에 공개되었더라도
오랜 기간 사용자들로부터 검증과정을 거쳐 신뢰를 받는 상태가 아니거나,
자신의 해당 내용을 잘 파악할 수 없는 상태라면 -- 매우 주의를 기울여 사용하셔야 한다고 봅니다.
한편 되도록 시스템 최초 사용 설치시
프로그램을 설치하여 운영할 파티션과, 자신이 작성하거나 관리하는 자료를 보관하는 파티션을 별도로 구성하여 설치하시는 것이 좋습니다.
그래서 해커의 침투로 시스템 파괴시 최소한 자신이 시간을 들여 작성한 자료들은 원상태로 쉽게 복구할 수 있도록 예방조치를 취할 필요가 있습니다.
자신이 작성한 자료는 파괴되면 복구 자체가 상당히 불가능하여 따라서 그로 인해 회복할 수 없는 피해를 받는 경우가 많습니다.
예를 들어 기념일에 특별히 기념촬영한 사진들,
또는 별도로 시간과 경비를 들여 촬영한 사진,
또는 자신이 오랜 기간 작성해온 문서 들의 경우 해당 자료가 파괴되면,
백업을 받아 관리하지 않은 자료들은 복구할 다른 수단이 별로 없는 상태가 되고,
일일히 재작업을 통해 복구하려면, 시간을 들여 비용과 노력을 재투자해야 하는 관계로, 손해가 매우 심하게 되기 때문입니다...
따라서 자신이 직접 작성한 자료들은 늘 백업을 하고, 비상시 쉽게 재복구를 할 수 있도록 관리를 하시기 바랍니다.
Truecrypt 나 Bestcrypt .. 등의 보안용 디스크, 파티션, 파일 등을 생성할 수 있는 프로그램들을 통하여
자신의 자료에 대한 보안 별도의 보호조치를 취할 필요가 있습니다.
이 외에도 자료 보안을 위하여 보호조치를 할 수 있는 전문 프로그램 들이 대단히 많으니 이들을 적절이 이용하여,
해커들의 악의적 침투 공격에 대비하시기 바랍니다.
보안에 민감한 개인 자료나 금융기관 이용에 필요한 개인 파일, 암호등을 저장해 넣고 사용하는 경우가 많은데
이런 경우 특히 주의를 기울여야 합니다.
이런 경우 매번 이동사용시 좀 불편을 느끼게 되더라도,
이동 Usb 매체들에는 필수적으로 기본적 보안 장치를 갖춘 상태에서 사용하시기 바랍니다.
그래서 그런 Usb 매체를 분실하는 경우에도 타인이 취득하여 함부로 이용할 수 없도록 예방 조치를 취한 상태에서
늘 사용하시기 바랍니다.
다음은 토털커맨더에서 삭제시 보안 필요상 복구가 곤란하게 삭제하기 위한 매크로 핫키입니다.
보안이 필요한 파일들은 삭제시 전문적으로는 MFT 기록등 해당 파일명경로명 정보들까지도 함께 삭제해야 하므로 전문프로그램 Bcwipe 등을 사용해야 반복 덮어쓰기 방법을 통해 삭제해야하나,
간단한 방법으로 유사한 효과를 얻기 위해서는 삭제할 파일을 다른 파일로 덮어쓰기 하여 삭제하는 방법을 사용할 수도 있습니다.
덮어쓰기 할 파일로 %out%:\totalcmd\default_del.txt 가 있으면 이를 사용하지만, 없으면 윈도우 폰트에서 폰트를 사용하여 덮어쓰기 합니다. 폰트파일도 없으면 메세지를 출력함
파일용량은 삭제할 파일보다 용량이 더 큰 파일을 이용하는 것이 이상적이지만, 여기서는 자신의 필요에 따라 적당한 파일을 정해 사용하거나, 작은 윈도우 시스템 폰트를 사용합니다.
보다 자세한 컴퓨터상의 문서 보안과 시스템 보안 문제에 대해서는 http://blog.paran.com/story007/46942387
...
...
///////////////////////////////////////// 긴 문장을 하나의 변수안에 배당시키는 방법 샘플 설명 끝 /////////////////////////////////////////
)
clipboard = %Vartest%
sleep, 150
SendInput, ^v
data002 =
return
; 축약키 설정 사용 방법 예시
; 자신 나름대로 축약키를 만들어 사용할 때 정상적인 입력과정에서도 사용하는 키를 축약키로 배당시키면 오타가 발생한다.
; 따라서 자신이 축약키를 만들어 사용할 때도 나름대로 체계를 일정하게 만들어 축약키 기호도 자신 스스로 오래 기억할 수 있게 하고
; 동시에 사용과정에서 오류가 발생하는 것도 막을 필요가 있다.
; 그래서 각 사용자마다, 내용별로 특정기호를 구별해 사용하고,
; 동시에 축약키 앞이나 끝에 일정 기호를 넣어 축약키를 만들면 문서 입력시 축약키 설정내용으로 인한 오타발생을 예방할 수 있다
; 자신이 예를 들어 철학 용어에 사용하는 축약기호는 P를 앞에 넣고 축약기호를 만들고, 다른 분야는 또 다른 기호를 사용하고,
; 단순한 접속사 등을 줄일 때는 첫글자만 떼어 축약키를 만들고 끝에 ; 기호를 넣어 만드는 식으로 축약키를 만드는 식으로 축약키를 만들어
; 축약키별로 축약키 만든느 방식을 일정하게 구별하고
; 또 동시에 입력과정에서 사용하는 낱말과는 혼동되지 않는 축약기 기호를 별도로 구성해 사용할 수 있다.
; /////////////////
; 다음은 하나의 축약키 구성의 샘플 예제다.
; 이 축약키를 사용하여 문장 작성시 오타가 발생할 가능성이 줄어 든다.
; 다음 내용은 단축키 설정 예로써, 참조사항이며, 각 사용자별로 구체적 내용은 삭제하거나 변형시켜 이용할 부분이다.
;
; 그러나 아래와 같은 특수기호는 텍스트 문서 입력시 다음과 같은 목적으로 자주 사용할 수 있다.
; 우선 텍스트로 문서 작성시에는 전문프로세서가 체계적으로 지원하는 각 목차 단계를 나타내는 기호를 효과적으로 적용할 수 없다.
; 전문 워드프로세서에서는 그런 목차기호는 일일히 그 기호에 해당한 일련번호나 문자를 넣지 않아도 그 워드프로세서에서 기계적으로 변환처리해 나타내게 된다.
;
; 그러나 일반 텍스트 문서 작성과정에서는 그런 기호를 나타내기도 힘들지만,
; 일련번호를 다시 넣어 문서를 작성하기도 곤란하다.
; 글을 쓰다 체계가 바뀌고 부분이 바뀌면 이로 인해 그 목차에 넣은 일련번호를 다시 연이어 교정해 줘야 하는 문제가 나타난다.
; 따라서 문서 내 목차 기호에 숫자나 가나다 등을 넣어 작성하다보면, 나중에 이로 인해 편집과정에서 번거로움을 겪게 된다.
;
; 결국 전체 글을 작성할 때 각 부분을 각 파일로 나눠 작성하면, 이들 파일간에 순서를 배열해 위치하게 하는 문제가 어려움을 일으키듯,
; 한 파일안에서도 구체적 목차 기호에 순서를 넣으면 문서작성과정에서 이 목차들의 단계나 일련번호나 문자를 넣어 배열정리하는 과정에 어려움을 많이 겪게 된다.
;
; 따라서 목차 기호는 단순한 기호로만 쉽게 표현하고
; 최종 정리과정에서 이 부분을 찾아 기계적으로 편집하는 방안이 보다 손쉬운 방법이 된다.
;
; 따라서 이런 특수기호를 나름 선택해서 마련해 놓고 다시 이에 단축키를 배당하여 문서작성을 하면
; 문서 작업과 최종 정리과정에서 보다 불편을 덜 수 있다.
; 아래는 이런 목적으로
; 특수 문자기호를 단축키로서 쉽게 입력하는 방안이다.
; 전체 기호 내용
; 단축키 용 특별기호 L 키
; 예:
;; L+ r, L+동 => 문서사용에 이용하는 전체 특수기호 출력
; ●○ ▼▽ ▲△ ■□ ★☆ ∴
; /////////////////
:c1*:lr::●○ ▼▽ ▲△ ■□ ★☆ ∴
; 최초 주제도입으로 의문제기- 논의할 주제를 처음 제시 하는 부분 - 표제
:c1*:l1::●
:c1*:ldhd::●
:c1*:lans::●
:c1*:dhd;::●
:c1*:ans;::●
; 간단한 결론제시- 함축적 결론, 격언적 제시, 부분
; L+ 2, 시,
:c1*:l2::○
:c1*:ltl::○
:c1*:tl;::○
; 독자나 상대방 입장에서 주제가 도출되는 내용
; L+3, 유 => ▼
:c1*:l3::▼
:c1*:ldb::▼
:c1*:db;::▼
; 독자나 상대방 입장에서 주제가 도출되는 자세한 과정 내용
; L+4, 세 => ▽
:c1*:ltp::▽
:c1*:tp;::▽
; 주제 결론의 객관적인 장단점
; L+5, 소, 설 => ▲
; 주제에 대한 재미있게 읽고 이해하기 쉬운 사례나 비유 이야기 형식의 글을 제시하는 부분
; L+6, 비 => △
:c1*:l6::△
:c1*:lql::△
:c1*:ql;::△
; 주제에 대한 부가적 설명의 도입 부분 ( 그 가장 핵심적인 내용제시부분)
; L+7, 청 => ■
:c1*:lcjd::■
:c1*:cjd;::■
; L+8, 명 => □
:c1*:laud::□
:c1*:aud;::□
; 논증에서 그 예단적 가설이나 그 주장 내용을 먼저 제시하거나, 자신의 주장과 다른 주장을 먼저 제시하는 부분
; L+9, 주 => ★
:c1*:l9::★
:c1*:lwn::★
:c1*:wn;::★
; L+0, 증 => ☆
; 논증의 최종적 결론부분
; L+q ,결 => ∴
; 부가되는 아주 전문적인 자세한설명 참조 부분 ; 예를 들어 백과사전이나 일반 논문 등의 내용 등을 복사해 붙이는 경우
; L+w, 자 => [자세한설명] [설명끝]
; [wktpgkstjfaud] [tjfaudRmx]
; 단축키를 다른 상황에서도 사용하는 키로 배당하면 문서작성중 오타가 발생함
clipboard= [자세한설명] [설명끝]
sleep, 150
SendInput, ^v
return
:c1*:lwk::
clipboard= [자세한설명] [설명끝]
sleep, 150
SendInput, ^v
return
:c1*:wk;::
clipboard= [자세한설명] [설명끝]
sleep, 150
SendInput, ^v
return
; 주석부분: 인용한 책 참고논문 등의 저자, 출판사, 페이지 등을 기재하는 부분-- 되도록 논문에 사용하는 표준 형식을 준수해서 기재하도록 하면 좋다. + 추후 주석을 자주 반복해 사용할 경우에 표준 형식을 마련해 같이 넣기로 함
; L+e, 석 => [주석] [주석끝] /[wntjr] [wntjrRmx]
clipboard= [주석] [주석끝]
sleep, 150
SendInput, ^v
return
:c1*:ltjr::
clipboard= [주석] [주석끝]
sleep, 150
SendInput, ^v
return
:c1*:tjr;::
clipboard= [주석] [주석끝]
sleep, 150
SendInput, ^v
return
/ *
; htm 문서 소스 코드 사용 축약키 ; 요점 박스를 문서에서 작성해 놓은 것을 복사해 붙여 사용할 수 없을 때 html 소스 입력창에서 직접 입력해 사용하는 경우
*/
; htm 요약 박스 형태 1
{
clipboard=<table border="2" width="691" bordercolor="#3300CC" bordercolordark="#0099FF" bordercolorlight="#006699" height="53"><tr bordercolordark="#FFFF33" bordercolorlight="#33FFCC"><td width="681" bordercolorlight="#FFFF99" height="45">[요약내용]</td></tr></table>
sleep, 150
SendInput, ^v
return
}
{
clipboard=<TABLE border=2 borderColor="#FFCC00" borderColorLight="#FF6600" borderColorDark="#FF3333" width=691 height=53><TBODY><TR borderColorLight=#33ffcc borderColorDark=#ffff33> <TD height=45 borderColorLight=#ffff99 width=681><P align="center">[ 요약 ]</P><P>○ </P><P align=left> </P></TD></TR></TBODY></TABLE>
sleep, 150
SendInput, ^v
return
}
:c1*:lbb0::
clipboard=<table border="1" width="694" height="107"><tr><td width="684" height="101"><p align="center">[요약내용]<BR></p><p>○ </p><p> </p></td></tr></table>
sleep, 150
SendInput, ^v
return
clipboard=<table border="1" width="694" height="107"><tr><td width="684" height="101" bgcolor="#FFFF99"><p align="center">[요약내용]<BR></p><p>○ </p><p> </p></td></tr></table>
sleep, 150
SendInput, ^v
return
:c1*:lbb2::
clipboard=<TABLE border=2 borderColor="black" borderColorLight="black" borderColorDark="black" width=691 height=53><TBODY><TR borderColorLight=#33ffcc borderColorDark=#ffff33> <TD height=45 borderColorLight=#ffff99 width=681><p align="center">[요약내용]<BR></p><p align="left">○ </p><p align="center"> </p></TD></TR></TBODY></TABLE>
sleep, 150
SendInput, ^v
return
;LBC2
clipboard=<TABLE border=2 borderColor="black" borderColorLight="black" borderColorDark="black" width=691 height=53><TBODY><TR borderColorLight=#33ffcc borderColorDark=#ffff33><TD height=45 borderColorLight=#ffff99 width=681 bgcolor="#FFFF99"><p align="center">[요약내용]<BR></p><p align="left">○ </p><p align="center"> </p> </TD></TR></TBODY></TABLE>
sleep, 150
SendInput, ^v
return
:c1*:lddd::
StringRight, Week, A_YWeek, 2.
clipboard= %A_YYYY%-%A_MM%-%A_DDD%-%A_DD%-[%Week%weeks %A_YDay% days]-%A_Hour%:%A_Min%
sleep, 150
SendInput, ^v
return
StringRight, Week, A_YWeek, 2.
clipboard= %A_YYYY%-%A_MM%-%A_DDD%-%A_DD%-%A_Hour%-%A_Min%
sleep, 150
sleep, 150
SendInput, ^v
return
; /////////////////
; 축약키 설정 방법 예시 2
; 앞에서는 일정한 분류로 기호내용에 L 자를 배당해서 사용했다면 이제 일정한 축약기 끝에 특수기호를 넣어 다른 입력문장과 구별하는 방식이다.
; 예를 들어, 문장내 빈번히 사용하는 접속사나 상용구용 축약키를 만들어 쓸 때는 축약키 내용에 다시 특수기호 ; 를 끝에 일정하게 넣어 축약키를 만들면 입력시 축약키 설정 내용으로 오타를 방지할 수 있다. 예: dh;(오;) => 왜냐하면,
; /////////////////
:c1*:dh3;::
clipboard=왜냐하면,
sleep, 150
SendInput, ^v
return
; 축약키 국3; =
:c1*:rnr3;::
clipboard=국민주권주의(國民主權主義 , AlemannischالعربيةCatalà Dansk Deutsch English Español Suomi Français GalegoMagyarItaliano日本語 Norsk (bokmål)PolskiPortuguêsSvenska中文)
sleep, 150
SendInput, ^v
return
; ■텍스트에서 참고부분 상호 연결하기- 텍스트 문서내 간이한 하이퍼텍스트 연결기능 실행용★
; -다음 부분에서 참고를 하세요
; 글자 앞이나 끝 부분에 자신만의 특수 인식기호를 넣으면 그 부분을 서로 복사해 넣은 부분간에 찾기 기능을 통해 하이퍼텍스트 기능으로 활용가능합니다.
; ■ 참고2 ■ 참고2 이런 식으로 서로 표시하여 각 부분을 연결시키면 됩니다. 편집기나 뷰어의 찾기 기능 키가 CTRL+F 이고 이후 계속 찾기 키가 F3이므로 이후에는
; 이 키를 이용하여 계속 찾기를 실행하시면 되리라 봅니다.
; 다만 하이퍼텍스트 연결로 사용하려면, 이 글자부분은 스페이스 하나만 허용하며, 끝 부분글자 다음에 스페이스를 2칸 이상 떼면 인식에 오류가 발생합니다.
; 편집기에 따라, 쉼표나 마침표 기타 괄호기호 등이 입력된 부분에서는 정상적으로 작동하지 않을 수 있습니다.
; 어떤 내용을 복사한 상태에서 실행하면 해당 위치를 찾은 다음 그곳에서 복사할 수 있게 합니다.
; 이 기능은 현재 Editplus 와 Lister 에서 지원됩니다.
IfWinActive, EditPlus
{
workdata = %clipboard%
clipboard =
Sendinput, {RIGHT}{CTRL DOWN}{LEFT}{CTRL UP}
Sleep, 30
Sendinput, {SHIFT DOWN}{CTRL DOWN}{RIGHT}{RIGHT}{CTRL UP}{LEFT}{SHIFT UP}
Sleep, 30
Sendinput, {CTRL DOWN}c{CTRL UP}
Sleep, 30
Sendinput, {CTRL DOWN}{RIGHT}{CTRL UP}
Sleep, 30
Sendinput, {CTRL DOWN}f{CTRL UP}
Sleep, 50
Sendinput, {CTRL DOWN}v{CTRL UP}
Sleep, 50
Sendinput, {ENTER}{SHIFT DOWN}{ESC}{SHIFT UP}{CTRL DOWN}{LEFT}{LEFT}{CTRL UP}
clipboard = %workdata%
Sleep, 50
return
}
IfWinActive, ahk_class TLister
{
Send, {RIGHT}{CTRL DOWN}{LEFT}{CTRL UP}{SHIFT DOWN}{CTRL DOWN}{RIGHT}{RIGHT}{CTRL UP}{LEFT}{SHIFT UP}
Sleep, 50
Send, {CTRL DOWN}c{CTRL UP}{RIGHT}
Sleep, 150
Send, {f7}
Sleep, 350
Send, {CTRL DOWN}v{CTRL UP}
Sleep, 500
Send, {ENTER}
Sleep, 150
Send, {F3}
Sleep, 700
IfWinActive, ahk_class #32770
{
Sleep, 50
Send, {ENTER}
Sleep, 350
Send, {CTRL DOWN}{HOME}{CTRL UP}
Sleep, 350
Send, {F3}{LEFT}
}
Send, {CTRL DOWN}{LEFT}{LEFT}{CTRL UP}
Return
}
; //////////////////////////////////////
; 인터넷 사용시 반복해서 아이디나, 암호, 이메일 주소, 개인 주소나 전화번호, 매일 로그인 절차의 반복을 해야 하는 경우가 많다.
; 이런 경우 각기 암호를 사이트별로 달리 설정해도 각 사이트나 특성에 따라 -- 기억하기 쉽게 축약키(핫키)를 배당하여 각 로그인 절차를 쉽게 행할 수 있다.
:c1*:ooooo::
clipboard=[ 인터넷 문서 공유나, 스크랩 사용시 상용구 표현 출력 ]
sleep, 150
SendInput, ^v
return
; 다음은 하나의 샘플
:c1*:pai;::
clipboard=Your ID
sleep, 150
SendInput, ^v
return
:c1*:pae;::
clipboard=Your email address
sleep, 150
SendInput, ^v
return
:c1*:pan;::
clipboard=Your name
sleep, 150
SendInput, ^v
return
:c1*:pap;::
clipboard=Your password
sleep, 150
SendInput, ^v
return
:c1*:par;::
clipboard=Your Home address
sleep, 150
SendInput, ^v
return
; 자주 방문하는 사이트 로그인 절차의 단축키 예
; 일일이 키 입력과정을 종이에 적어 기록해 적을 수도 있겠지만,
; 오토핫키에서 제공하는 AutoScriptWriter.exe를 실행해 녹음버튼을 누르고 자신의 키 입력과정을 한 번 행하면
; 그 내용과 여러 부수적 정보를 얻을 수 있다.
; 그 내용을 그대로 사용해도 되지만, 그 내용을 기초로 조금 내용을 변형하거나 추가해
; 자신의 상황에서 안정적으로 해당 키가 정상작동되도록 수정사용할 수도 있다.
SendInput {Home}{Shift down}{END}{Shift Up}
sleep, 100
SendInput {Del}
SendInput, ^v
SendInput {Tab}
sleep, 120
SendInput {Home}{Shift down}{END}{Shift Up}
sleep, 100
SendInput {Del}
sleep, 100
sleep, 150
SendInput, ^v
SendInput {enter}
; ■ 인터넷 사이트 일정시간 경과후 자동로그 아웃으로 인한 작성문서 상실 방지용★
{
Sleep, 19800000 ; 로그인 후 5 시간 30 분 경과후
MsgBox, 1, 주의, 파란블로그 로그인후 5시간 30분 경과되었습니다. 작업중인 내용을 잃어버리지 않도록 일단 내용을 클립보드에 복사합니다.`n로그 아웃 실행후 재 로그인하여 작업을 계속하여 주십시오.`n 확인ok=자동복사`, 취소cancel=자동복사안함,
IfMsgBox, Ok
{
SLEEP, 200
MouseClick, left, 200, 200
send ^a
sleep, 200
send ^c
sleep, 200
}
}
return
return
;트위터 로그인
SendInput {Home}{Shift down}{END}{Shift Up}
sleep, 100
SendInput {Del}
SendInput, ^v
SendInput {Tab}
sleep, 120
SendInput {Home}{Shift down}{END}{Shift Up}
sleep, 100
SendInput {Del}
sleep, 100
SendInput, ^v
SendInput {enter}
return
; ■ [editplus에서 ]주석 부분 표시 부분 -- 정리용
:c1*:[[[::
sleep, 50
SendInput, {right}{Ctrl down}{left}{Ctrl Up}
sleep, 150
SendInput, [
sleep, 350
;SendInput, {Ctrl down}v{Ctrl Up}
SendInput, {Ctrl down}{right}{Ctrl Up}{left}
sleep, 150
SendInput, %A_space% ]
sleep, 150
SendInput, {tab}{tab}{tab}{tab}{tab}{tab}{tab}{tab}{tab}{tab}
sleep, 50
SendInput, {Ctrl down}{left}{left}{Ctrl Up}
Return
; ■ 사용자 - 기본 작업 목록 펼치기
#Y::
IfExist, d:\descript.ion
run, %ProgramFiles%\EditPlus 3\editplus.exe d:\descript.ion
sleep, 1000
return
/ *
; ■ 문서 작업과정시 특정 프로그램 사용모드 진입용 핫키
; 문서 작성시 사용 프로그램 핫키
; ////////////////////////////////////////////////////////
;
; 다음은 문서 작업에서 하나의 키를 여러 작업에서 함께 사용하게 하는 방법이다.
; 원래 윈도우 모든 상황에서 작동하게 하는 키는 원래 하나의 키에 하나의 동작만 배당시켜 사용하게 된다.
; 그런데 어떤 키를 배당한 후 그 키를 다른 작업에도 이용할 경우가 있다.
; 둘 다 많은 윈도우 창에서 광범위하게 사용하기에, 이런 경우 어떤 작동만 희생시키기도 그렇고 선택문제에 곤란을 겪게 된다.
;
; 그런 경우에 다음방법을 응용하면 하나의 키를 가지고 다른 두작업 이상으로 나눠 배당해 사용할 수 있다.
;
; 여기서는 다음과 같은 상황의 샘플이다.
; 개인적으로 인터넷 문서나 책을 파일로 열어보면서, 테블릿 펜으로 줄을 그어가며 읽거나, 낙서를 하거나, 생각을 적거나 그림을 그려가며 사용하는 경우가 많다.
; 이 때 태블릿 펜용 프리젠터라는 프로그램을 사용하게 되는데 이 프리젠터는 그 창에만 핫키를 배당해 사용하기가 곤란하다.
; 그래서 결국 윈도우 전반에서 사용하는 범용 핫키로 설정해 사용해야 한다..( 참고로 개별 윈도우 창에서만 작동하고 사용하게 되는 핫키는 아래에 따로 설명하며 배당한다. )
; 결국 이 프리젠터 작업에 윈도우키 + z, x, c, v, b 등을 배당하여 사용하는데,
; 이 키는 다른 문서작업에도 또 널리 사용해야 한다.
; 이런 경우, 변수를 배당시켜, 변수의 내용에 따라 어떤 때는 프리젠터용 핫키, 어떤 때는 문서작업 편집과정에서 사용하는 핫키로 사용하게 하는 것이다.
;
; 이런 경우 각 사용모드 가운데 보다 많이 사용하는 모드를 택해 적은 빈도의 사용에 우선 변수 사용을 통해 사용모드로 진입하게 하는 방식을 사용하면 된다.
; 즉 임의의 변수 예를 들어 use 라는 변수를 정하고
; 이 변수 use 가 ok 면 그 사용모드의 방법으로 작동하게 설정하면 된다.
{
if ac =
{
ac = prez ; 사용모드로 들어간다..위 핫키를 누르면 변수 ac의 값이 prez 로 설정되고 변수ad 값이 prez 인 경우는 아래 핫키가 그에 따른 작동을 하게 한다.
;MsgBox [, Options, Title, Text, Timeout]
MsgBox , 0, 핫키모드변경, 프리젠터모드 핫키설정으로 들어갑니다. winkey+Z 키누르면 실행., 1
; 아래 명령은 사용모드로 들어가면서 기본적으로 프리젠터에 마우스를 클릭하여 처음 진입시키는 명령이다. .이후 펜으로 그림을 그리는 작업을 할 수 있다.
; 마우스 클릭 위치는--자신의ㅡ 모니터에 따라, 찾아내야 한다. 이는 오토핫키에서 제공하는 프로그램을 사용하여 찾는다.
; 마우스 위치는 오토핫키에서 제공하는 AU3_Spy.exe 라는 프로그램을 사용하면 자신이 마우스로 가리키는 좌표가 두가지 형태로 나온다.
; 아래 명령은 그 가운데 마우스 클릭 위치를 Screen 모드를 선택해 사용하겠다는 설정이다.
; 결국 아래 마우스 좌표 위치는 같은 프리젠터 프로그램을 사용하더라도 자신의 모니터 종류에 따라 달리 설정해줘야 한다.
; 참고로 AU3_Spy.exe 프로그램은 아래에서 사용하는 명령들에서 개별 윈도우 창의 이름과 내용을 찾아내는데도 사용한다..
CoordMode, Mouse, Screen
sleep, 20
Click 482, 854
sleep, 100
return
}
{
ac = ; 사용상태에서 위 핫키를 다시 누르면 변수 ac의 값이 비워진다. 이후 아래 핫키들은 또 다른 모드(편집용핫키)로 작동을 하게 한다.
CoordMode, Mouse, Screen
sleep, 20
Click 559, 854
sleep, 10
return
}
return
}
#z::
if ac = prez
{
CoordMode, Mouse, Screen
sleep, 20
Click 482, 854
sleep, 100
return
}
return
; 축약키Winkey+ X : => 상황에 따라 두가지 기능을 배당하여 사용한다..
; 프리젠터 사용시 - !^p (alt+ctrl+p) 누르면 ac=가 prez 로 값이 정해지고 이후 프리젠터 기능용으로 사용한다 ; 프리젠터 사용시는 그림이나 적은 글씨 모두 지우기 용
; 그 외 프리젠터 미사용 상황에서는 문서작업용으로 사용된다. - 입력한 부분 한줄 전체 잘라내기로 기능함 [ 주석 편집과정에서 사용함 ]
#x::
{
; 핫키 배당 - 윈도우키 + x ; 사용자별로 변경가능
if ac <> prez
{
Sleep, 500 ; 0.5 초 정도 여유를 두고 다음 명령을 실행한다.
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}x{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}x{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}x{LCtrl Up}
return
}
if ac = prez
{
CoordMode, Mouse, Screen
sleep, 20
Click 432, 854
sleep, 300
SendInput y
Click 482, 854
return
}
}
return
; ■ 한줄 전체 복사하기 ( 프리젠터: 일반창으로 나오기)
; 축약키Winkey+ C : => 상황에 따라 두가지 기능을 배당하여 사용한다..
; 프리젠터 사용시 - !^p (alt+ctrl+p) 누르면 ac=가 prez 로 값이 정해지고 그 상태에서는 프리젠터용 기능으로 사용 => 프리젠터 그림 창에서 일반 창으로 임시로 나오는 용도
; 그 외 프리젠터 미사용 모드에서는 문서 편집시 한줄 전체 복사하기로 기능함
{
if ac <> prez
{
Sleep, 500 ; 0.5 초 정도 여유를 두고 다음 명령을 실행한다.
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
return
}
{
CoordMode, Mouse, Screen
sleep, 20
Click 559, 854
sleep, 10
return
}
return
}
; ■ 복사한 한 줄 내용 줄 안에 붙여 삽입하기 ( 프리젠터: 한장 넘기고 들어오기)
; 축약키Winkey+ V : => 상황에 따라 두가지 기능을 배당하여 사용한다..
; 프리젠터 사용모드에서 배경에 인터넷 문서등을 놓고 낙서나 그림 그린 화면을 지우고 => 일반 화면으로 나간 다음 => 그 모니터 배경 화면을 한 페이지 넘기고 => 그 상태에서 그위에 다시 낙서하기 위해 다시 프리젠터화면으로 들어오기
; Click 702, 11
if ac <> prez
{
Sleep, 500 ; 0.5 초 정도 여유를 두고 다음 명령을 실행한다.
Sendinput, {Home}
Sleep, 50
Sendinput, {enter}
Sleep, 50
Sendinput, {up}{LCtrl Down}v{LCtrl Up}
Sleep, 50
Sendinput, {Home}
return
}
{
CoordMode, Mouse, Screen
sleep, 20
Click 432, 854
sleep, 100
SendInput y
sleep, 100
Click 559, 854
sleep, 100
Click 702, 11
sleep, 100
SendInput {PgDn}
sleep, 100
sleep, 20
Click 482, 854
sleep, 100
return
}
return
; ■ 프리젠터(한장 이전쪽으로 넘기고 들어오기)
; 축약키Winkey+ B : => ; 프리젠터에서 화면 지우고 일반 인터넷, 기타 문서 화면으로 나간 다음 한 페이지를 이전 내용 부분 즉 전에 사용한 페이지로 가고 => 다시 프리젠터 낙서 그림 모드로 들어가기
if ac = prez
{
CoordMode, Mouse, Screen
sleep, 20
Click 432, 854
sleep, 100
SendInput y
sleep, 100
Click 559, 854
sleep, 100
Click 702, 11
sleep, 100
SendInput {PgUp}
sleep, 100
sleep, 20
Click 482, 854
sleep, 100
return
}
; [editplus에서 ]주석 부분 표시 부분 -- 정리용 -- 스페이스가 있을 때는 블록 설정 후 사용
Clipboard =
sleep, 50
SendInput, {Ctrl down}x{Ctrl Up}
;SendInput, {right}{Ctrl down}{left}{Ctrl Up}
sleep, 150
SendInput, [
sleep, 350
SendInput, {Ctrl down}v{Ctrl Up}
SendInput, {Ctrl down}{right}{Ctrl Up}{right}{left}
sleep, 150
SendInput, %A_space% ]
sleep, 150
SendInput, {tab}{tab}{tab}{tab}{tab}{tab}{tab}{tab}{tab}{tab}
sleep, 50
SendInput, {Ctrl down}{left}{left}{Ctrl Up}
Return
; ■ 핫키 On/OFF
; 축약키Winkey+ S : => ; 문서 작업시 Hot key 가 오타를 발생시키는 경우 핫키를 정지시키거나 또는 정지후 다시 되살리는 핫키,
#s::
Suspend, Toggle
MsgBox , ,Hot key 정지 또는 재시작, Hot key 를 정지시키거나 또는 정지후 다시 되살리려면 본 키를 다시 누르시면 됩니다. , 3
return
If portrableuser =
{
portrableuser = user
}
Else
{
portrableuser =
}
return
search:
AAA = %Clipboard%
Clipboard=
StringSplit, wordarray, AAA, :
; 해당 줄이 경로가 기재되지 않은 순수한 주석줄인 경우 실행하지 않음
if wordarray0 < 2
{
StringSplit, Tripitaka, AAA, `;
if Tripitaka0 < 2
{
fin = fin
return
}
; K0955V27P0453b03L; 諸有具前自他利德故云如是如實
; Tripitaka0= 2
; Tripitaka1= K0955V27P0453b03L
; Tripitaka2= 諸有具前自他利德故云如是如實
; [CD]:\27\0401\27_0453_B.SZ
StringLeft, kvol, kvolst, 2 ; kvol=27
StringTrimLeft, kpages, kvolst, 3 ; kpages = 0453b03L
StringLeft, kpage, kpages, 4 ; kpage = 0453
StringTrimLeft, parts, kpages, 4 ; parts = b03L
StringLeft, part, parts, 1 ; part = b
kfolder = 0001
kfolder = 0201
kfolder = 0401
kfolder = 0601
kfolder = 0801
kfolder = 1001
kfolder = 1201
kfolder = 1401
kfolder = 1601
kfolder = 1801
kfolder = 2001
kfolder = 2201
kfolder = 2401
kfolder = 2601
kfolder = 2801
kfolder = 3001
kfolder = 3201
kfolder = 3401
kfolder = 3601
kfolder = 3801
kfolder = 4001
kfolder = 4201
kfolder = 4401
kfolder = 4601
kfolder = 4801
; [CD]:\27\0401\27_0453_B.SZ
;StringTrimLeft, kvolst, Tripitaka1, 6 ; kvolst = 27P0453b03L
;StringLeft, kvol, kvolst, 2 ; kvol=27
;StringTrimLeft, kpages, kvolst, 3 ; kpages = 0453b03L
;StringLeft, kpage, kpages, 4 ; kpage = 0453
;StringTrimLeft, parts, kpages, 4 ; parts = b03L
;StringLeft, part, parts, 1 ; part = b
; 한번 발견된 드라이브가 있는 경우 우선적으로 그곳에서 찾음
IfExist, %DEFAULTDRV%:%ktpath%
{
rule= %DEFAULTDRV%:%ktpath%
tttr = 0
return
}
DriveGet, drivelist, list ; %drivelist%=ACDEFGHJKLM
drivelist2 = %drivelist%
StringSplit, drive_array, drivelist,
Loop, %drive_array0%
{
DEFAULTDRV =
StringRight, TRYDRV, drivelist,1
StringTrimRight,drivelist, drivelist, 1
; mSGBOX, 찾는 드라이브=%TRYDRV%:\%ktpath% ; 테스트용
IfExist, %TRYDRV%:%ktpath%
{
rule= %TRYDRV%:%ktpath%
DEFAULTDRV = %TRYDRV%
tttr = 0
RETURN
}
}
IF DEFAULTDRV = ; 드라이브에서 해당파일이 발견되지 않은 경우
{
tttr =
if kvol between 01 and 04
kvolmsg = Tk04_Image01 CD [vol 01 - 04]
if kvol between 05 and 08
kvolmsg = Tk05_Image02 CD [vol 05 - 08]
if kvol between 09 and 12
kvolmsg = Tk06_Image03 CD [vol 09 - 12]
if kvol between 13 and 16
kvolmsg = Tk07_Image04 CD [vol 13 - 16]
if kvol between 17 and 20
kvolmsg = Tk08_Image05 CD [vol 17 - 20]
if kvol between 21 and 24
kvolmsg = Tk09_Image06 CD [vol 21 - 24]
if kvol between 25 and 28
kvolmsg = Tk10_Image07 CD [vol 25 - 28]
if kvol between 29 and 32
kvolmsg = Tk11_Image08 CD [vol 29 - 32]
if kvol between 33 and 36
kvolmsg = Tk12_Image09 CD [vol 33 - 36]
if kvol between 37 and 40
kvolmsg = Tk13_Image10 CD [vol 37 - 40]
if kvol between 41 and 44
kvolmsg = Tk14_Image11 CD [vol 41 - 44]
if kvol between 45 and 47
kvolmsg = Tk15_Image12 CD [vol 45 - 47]
IfMsgBox, OK
{
drrive = %TRYDRV%
wordarray2 = %ktpath%
GOTO LASTSEARCH
}
}
}
return
}
Tk04_Image01 CD vol 01 - 04
Tk05_Image02 CD vol 05 - 08
Tk06_Image03 CD vol 09 - 12
Tk07_Image04 CD vol 13 - 16
Tk08_Image05 CD vol 17 - 20
Tk09_Image06 CD vol 21 - 24
Tk10_Image07 CD vol 25 - 28
Tk11_Image08 CD vol 29 - 32
Tk12_Image09 CD vol 33 - 36
Tk13_Image10 CD vol 37 - 40
Tk14_Image11 CD vol 41 - 44
Tk15_Image12 CD vol 45 - 47
; 일부 문서에서 복사시 라인피드로 인해 오작동이 발생하는 경우 제거명령
StringReplace, wordarray2, wordarray2, `r`n, , All
StringReplace, wordarray2, wordarray2, `r, , All
StringReplace, wordarray2, wordarray2, `n, , All
; 목록에 기재된 완전한 경로 회복
StringRight, httpr, wordarray1, 4
if httpr = http
{
run, http:%wordarray2%
fin = fin
return
}
; ■ ftp 경로인 경우★
if ftpr = ftp
{
IfWinNotExist, ahk_class TTOTAL_CMD
{
; msgbox, %out%:\totalcmd\Totalcmd.exe ; 정상작동 확인용 메세지 출력- 테스트용
IfExist, %out%:\totalcmd\Totalcmd.exe
{
run, %out%:\totalcmd\Totalcmd.exe /i=%out%:\totalcmd\wincmd.ini
sleep, 500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
}
}
WinWait, ahk_class TTOTAL_CMD,
IfWinNotActive, ahk_class TTOTAL_CMD, ,
WinActivate, ahk_class TTOTAL_CMD,
WinWaitActive, ahk_class TTOTAL_CMD,
PostMessage, 1075, 551
sleep, 300
Clipboard = ftp:%wordarray2%
sleep, 500
Sendinput, ^v
fin = fin
return
}
diskfile:
; 기재된 경로와 그대로 일치하는 파일이 존재하는 경우
StringRight, drrive, wordarray1, 1
Ifexist, %drrive%:%wordarray2%
{
rule = %drrive%:%wordarray2%
portable =선생님께서 찾으시는
pppr =을 찾았습니다.
tttr = 0
return
}
; ■기재된 경로와 그대로 일치하는 파일이 존재하지 않는 경우★
; - 목록파일이 위치한 드라이브에 위치하는 경우 - 다른 드라이브 위치하는 경우 - 직접 기재할 경우 - 끝내 없는 경우
{
WinGetActiveTitle, portpath
; msgbox, portpath = %portpath%
StringSplit, pwordarray, portpath, :
{
rule=%pdrrive%:%wordarray2%
portable = 파일이 기재된 경로에 없어서 "목록파일(경로가 기재된 파일)이 위치한" 드라이브 안에서
pppr =을 대신 찾았습니다.
tttr = 1
return
}
{
portable = 파일이 기재된 경로에도 없고 목록파일(경로가 기재된 파일)이 놓인 드라이브에도 없어서`n가능한 드라이브에서 찾아
pppr =을 찾았습니다.
tttr = 2
{
rule= %DEFAULTDRV%:%wordarray2%
return
}
drivelist2 = %drivelist%
StringSplit, drive_array, drivelist,
Loop, %drive_array0%
{
DEFAULTDRV =
StringRight, TRYDRV,drivelist,1
StringTrimRight,drivelist, drivelist,1
IfExist, %TRYDRV%:%wordarray2%
{
rule= %TRYDRV%:%wordarray2%
DEFAULTDRV = %TRYDRV%
RETURN
}
}
IF DEFAULTDRV = ; 드라이브에서 해당파일이 발견되지 않은 경우
GOTO LASTSEARCH
}
return
}
LASTSEARCH:
pppr =은 찾지 못했습니다.
tttr = 4
;InputBox, OutputVar [, Title, Prompt, HIDE, Width, Height, X, Y, Font, Timeout, Default]
InputBox, putpath, 파일경로확인, 찾으시는 파일 %drrive%:%wordarray2% 이 `n스크립트 실행 %drrive% 드라이브나 목록파일(경로가 기재된 파일)이 위치한 %pdrrive% 드라이브 및`n기타 사용 가능한 %drivelist2% 모든 드라이브에서 발견되지 않습니다. `n`n해당경로에서 파일이 이동 또는 삭제 또는 이름이 변경되었거나.`n해당 폴더가 이동 삭제 이름 변경되거나 또는 다른 폴더 하부로 이동되었을 수 있습니다.`n`n위치를 혹시 아시면 직접 기재하여 주십시오`n특별히 기재하지 않고 실행하면 현 내용에 가장 가까운 폴더를 찾아갑니다.`n`n토털커맨드 찾기 기능을 통해 폴더명 파일명 문서 내 낱글자 등을 통해`n파일을 찾으시려면 입력란에 S 키를 넣어주십시오`nS를 입력하시면 개별적으로 파일을 찾아 직접 실행하셔야 합니다., , 600, 330, , , , 30, %drrive%:%wordarray2%
if ErrorLevel = 1
{
fin = fin
return
}
{
IfWinNotExist, ahk_class TTOTAL_CMD
{
; msgbox, %out%:\totalcmd\Totalcmd.exe ; 정상작동 확인용 메세지 출력- 테스트용
IfExist, %out%:\totalcmd\Totalcmd.exe
{
run, %out%:\totalcmd\Totalcmd.exe /i=%out%:\totalcmd\wincmd.ini
sleep, 500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
}
}
WinWait, ahk_class TTOTAL_CMD,
IfWinNotActive, ahk_class TTOTAL_CMD, ,
WinActivate, ahk_class TTOTAL_CMD,
WinWaitActive, ahk_class TTOTAL_CMD,
;cm_SearchFor=501;Search for
PostMessage, 1075, 501
sleep, 300
;SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, wordarray2, sOutFileName
Clipboard =%sOutFileName%
sleep, 500
Sendinput, ^v
Clipboard = %pdrrive%:\
Sendinput, {tab}
sleep, 150
SendInput, ^v
return
}
{
rule= %putpath%
portable = 파일이 기재된 경로에는 없었으나 새로 기재하신 경로에서 발견되어, 대신
pppr =을 찾았습니다.
tttr = 3
return
}
{
portable = 파일이 기재된 경로에 없어
pppr =은 찾지 못했습니다.
rule= %putpath%
tttr = 4
return
}
; ///////////////////////////////////////
; 각 줄에 기재된 파일들에 일정한 실행명령을 내리는 데 사용하는 핫키들
; 윈도우 범용 핫키와
; 특정 목록 파일 창에서만 작동하는 핫키로 나눈다.
; 핫키 사용의 목적:
; 목록 문서에서 작동하는 핫키는 파일명에 desc 라는 이름이 들어간 경우에만 작동되는 것으로 아래에 설정한다.
; 그러나 이런 목록파일을 포함하여 일반적 텍스트 파일이든 절대경로가 적혀 있다면, 그 줄에서 핫키를 실행하면 토털커맨더를 열고 그 위치를 곧바로 찾아갈 필요가 있다.
; 모든 작업을 매크로로 실행할 수도 없고, 토털커맨더에서 해당 파일에 관련된 작업을 널리 행할 필요도 있기 때문이다.
; 핫키실행하면, - 토털커맨더를 실행시켜 창을 열고 해당 파일이 위치한 부분으로 옮겨 해당 파일이 위치한 부분에 커서를 잡는다.
; 그래서 ..그 이후 토털커맨더에서 그 파일에 관련한 다양한 작업을 곧바로 착수할 수 있다. 예를 들어 파일 이동 복사 백업 응용프로그램 실행 등등 토털커맨더에서 행할 수 있는 다양한 작업을 그 파일과 관련해 바로 실행할 수 있는 상태로 진입한다.
; 약간 작업을 실행시키는데 시간이 걸리는 작업이므로 시간이 소요되나, 막상 실행을 마친 다음, 이 매크로가 무엇을 했는지 잘 알 수 없으므로 결과 메세지를 출력한다..
; (상대경로가 기재된 경우에는 절대경로 즉 각 드라이브명과 완전한 경로가 기재된 상태로 만들어 사용해야 한다. )
; 기본적으로 http ftp 문서등은 다른 명령과 동일하게 실행한다.
; 핫키 : 윈도우키 + P
#p::
before = %clipboard%
Clipboard =
{
Sleep, 50
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}
Sleep, 50
Sendinput, {Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 500
Sendinput, {home}{home}
}
If fin = fin
{
fin =
Return
}
{
; msgbox, %out%:\totalcmd\Totalcmd.exe ; 정상작동 확인용 메세지 출력- 테스트용
IfExist, %out%:\totalcmd\Totalcmd.exe
{
run, %out%:\totalcmd\Totalcmd.exe /i=%out%:\totalcmd\wincmd.ini
sleep, 500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
IfWinActive, ahk_class TNASTYNAGSCREEN
sleep, 1500
}
}
WinWait, ahk_class TTOTAL_CMD,
IfWinNotActive, ahk_class TTOTAL_CMD, ,
WinActivate, ahk_class TTOTAL_CMD,
WinWaitActive, ahk_class TTOTAL_CMD,
{
Clipboard = CD
Sleep, 300
sendinput, CD
Sleep, 300
sendinput, {End}
Sleep, 300
sendinput, {Shift Down}{home}{Shift Up}
Sleep, 300
sendinput, {ctrl down}V{ctrl up}
Sleep, 300
Clipboard = %rule%
Sleep, 300
sendinput, %A_space%
Sleep, 300
sendinput, {ctrl down}V{ctrl up}
Sleep, 500
sendinput, {enter}
Sleep, 100
sendinput, {enter}
Sleep, 2500
MsgBox, 0, 보고, 선생님!!`n%portable%`n%rule% %pppr%`n다음에 할 일을 알려주세용`n`n파일에 대해 삭제나 위치이동 작업을 하시면`n나중을 위해 경로가 기재된 부분에도 변경내역을 표시해주세요 , 35
portable =
pppr =
tttr =
Clipboard = %before%
return
}
Sleep, 300
sendinput, CD
Sleep, 300
sendinput, {End}
Sleep, 300
sendinput, {Shift Down}{home}{Shift Up}
Sleep, 300
sendinput, {ctrl down}V{ctrl up}
Sleep, 300
Clipboard = %rule%
Sleep, 300
sendinput, %A_space%
Sleep, 300
sendinput, {ctrl down}V{ctrl up}
Sleep, 500
sendinput, {enter}
Sleep, 2500
MsgBox, 0, 보고, 선생님!!`n%portable%`n%rule% %pppr%`n다음에 할 일을 알려주세용`n`n파일에 대해 삭제나 위치이동 작업을 하시면`n나중을 위해 경로가 기재된 부분에도 변경내역을 표시해주세요 , 35
portable =
pppr =
; 종전 복사내용 회복
Clipboard = %before%
return
; [ 나누어 작성한 각 문서들을 목록내 순서로 하나의 파일로 병합하는 작업 ]
; 핫키 Alt +Control+Shift+u :
; 자주 사용하지 않는 기능이므로, 핫키를 복잡하게 구성함,
; 목록에 기재된 순서별로 각 파일을 하나로 합칠 목록이 d:\test\목록등.TXT에 있는 경우-- 아니면 이 부분을 편집 사용.
; ● 참고로 다음 스크립트를 이용하려면 되도록 본 스크립트 파일을 utf-8 텍스트 파일로 저장하여 autohotkey_L 버전을 이용하여 사용하여주십시오.
; 하나의 변수에 들어갈 용량이 64 mb 로 제한되므로 이를 늘리고자 하는 경우에는 #MaxMem Megabytes 명령을 추가 사용하십시오.( 최대 4095 까지 지원)
; 예 #MaxMem 4095
; 종전 v005 버전의 스크립트 파일에 병합 명령에 관련해 오타가 기재되어 오작동합니다.
; + 병합지원하는 문서포맷은 일반 텍스트 문서와 htm 문서로 제한합니다.
; + 파일병합 속도도 일반 텍스트 문서를 기준으로 빨리 출력되도록 조정합니다...
; + 포터블 환경까지 지원하도록 추가 수정하였습니다.
; + 출력형태를 텍스트 형태로 할 것인지, Htm 형태로 할 것인지 선택 옵션을 추가했습니다..
; + 출력형태가 텍스트 형태인 경우에도 htm 문서가 포함될 경우를 예상하여 -- 조금 포맷을 수정했습니다.
; + htm의 basic 포맷을 사용할 경우 병합될 때 중복되는 불필요한 meta 내용은 editplus 를 통해 메뉴 검색 - 바꾸기 - 확장 탭을 이용하여 일괄 삭제나 변경가능합니다. 참조 바랍니다.
; 현재 사용중인 목록 파일 경로 확인
WinGetActiveTitle, portpath
StringSplit, pwordarray, portpath, :
StringRight, pdrrive, pwordarray1, 1
StringSplit, ppath, pwordarray2, .
Stringleft, pext, ppath2, 3 ; 확장자는 3글자까지만 지원
If pext In txt,ion
readyFilecatalog =%pdrrive%:%ppath1%.%pext%
else
readyFilecatalog =c:\test\catalog.txt
InputBox, Filecatalog, 작성파일병합안내, 부분파일로 작성해둔 텍스트 기반 파일을 최종적으로 하나로 병합하는 작업을 실행합니다.`n목록파일 가운데 원칙적으로 txt확장자와 htm`,html 확장자 파일들만 선택 병합처리됩니다.`n다른 확장자 다른 포맷파일은 txt 변환처리를 마친 후 사용하시거나`n병합처리 결과에 해당 파일 내역이 기재된 부분을 찾아 별도로 개별적으로 병합처리하십시오`n목록파일에는 각 줄에 하나의 절대경로가 기재되어야 정상처리되며`,`n절대경로가 기재된 끝부분에 다른 공백이나 문자가 기재되면 해당파일은 병합처리에서 제외됩니다. `n목록파일은 텍스트파일이어야 합니다. `n현재 빈칸에 기재된 파일이 병합작업에 사용할 목록파일이 아니면`, `n목록파일의 경로와 이름을 직접 기재후 사용하십시오[ 예: c:\test\catalog.txt]`n`n현재 1파일을 읽는데 0.1초를 배당하였습니다.`n만일 한 파일당 용량이 커서 읽어 들이는데 시간이 필요한 경우`, 스크립트에서 시간을 좀 늘려 설정해 작업하십시오.`n`n또 작업결과를 검토해 만에 하나 결과가 잘못 출력되는 경우에는`n개별 문서들에 txt`,htm 확장자 파일 내부에 사용한 코드나 문서 포맷의 차이로 인한 오류일 수 있습니다.`n이런 경우 개별 문서에 대해 해당 문서를 읽어낼 수 있는 워드프로세서를 사용해`n해당 프로그램내의 매크로를 사용하거나 직접 수작업을 통해 병합하십시오.`n`n원칙적으로 hwp포맷이나 doc포맷 그림파일 포맷 등 특수포맷 파일은 단순병합하면 `n그 상태로 사용할 수 없으므로 처리과정에서 제외합니다`n여기서는 주로 텍스트 문서나 htm 문서 파일들의 병합작업을 실행합니다.`n병합결과는 C:\test 폴더에 출력합니다.`n, , 800, 500, , , , 75, %readyFilecatalog%
if ErrorLevel = 1
return
InputBox, Filecode, 작성파일병합안내2, 최종적으로 병합해 출력할 텍스트 문서의 코드를 기재하여 주십시오`n사용한 문서의 코드에 관계없이 지정한 코드로 최종병합 출력하게 됩니다. `n`n[코드옵션안내]`nutf-8 = utf-8 유니코드`nutf-16 = utf-16 유니코드`nCP20949 = x-cp20949 Korean Wansung`nCP51949 = euc-kr EUC Korean`nCP949 : ks_c_5601-1987 ANSI/OEM Korean (Unified Hangul Code)`n기타 코드는 autohotkey 매뉴얼참조`n`n , , 800, 300, , , , 60, UTF-8
if ErrorLevel = 1
Return
{
msgbox, 0, [목록파일 부존재안내], 병합출력할 파일들이 절대경로가 기재된 목록 텍스트 파일이 발견되지 않습니다.`n다시 확인하여 실행해 주십시오.
return
}
{
AAA = %A_LoopReadLine%
;StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
StringSplit, wordarray, AAA, :
if wordarray0 > 1
{
StringRight, drrive, wordarray1, 1
rule= %drrive%:%wordarray2%
ifnotexist, %rule%
{
SplitPath, rule, OutFN, ,OutExt2, OutNaNE,
; 파일이 발견되지 않을 때 찾을 확장자를 다음으로 제한함-- 다음 확장자는 병합에 사용할 수 있는 - 제한된 파일 확장자임
if OutExt2 in htm,html,txt,ion
gosub, diskfile
}
SplitPath, rule, OutFN, ,OutExt2, OutNaNE,
If A_Index = 1
{
msgbox, 4, [병합파일포맷안내], 병합출력되는 파일 포맷을 HTM으로 하시겠습니까?`nHTM포맷을 선택하시면`,텍스트 줄의 라인변경을 단순히 <br>코드로만 변환해 병합합니다. `n병합할 문서들에 다른 htm문서가 있을 때는 htm을 선택하여 주십시오`nHTM포맷은 Yes TXT포맷은 No를 선택해주십시오,
IFmsgbox, Yes
fformat = htm
IfMsgBox, No
fformat = txt
}
{
If tttr = 4
{
{
hr1= <hr>%portable%`n%rule% %pppr%`n<hr>
(
<hr>
)
}
{
hr1=
(
<hr>=====================
%portable%`n%rule% %pppr%<hr>
hr2=
(
<br>
----- 위 문서는 병합과정에서 제외되었습니다. 별도로 개별적으로 병합하여 주십시오.-----
=====================<hr>
)
}
rATA =
}
If tttr In 1,2,3
{
{
hr1= `n<hr>`n
hr2=<hr>`n%portable%`n%rule% %pppr%<hr>`n
}
If fformat = txt
{
hr1=
(
<hr>=====================
hr2=
(
<hr>
%portable%`n%rule% %pppr%
=====================<hr>
)
}
FileRead, rATA, %rule%
}
; 파일 경로에 존재
{
If fformat = htm
{
hr1= `n<hr>`n
hr2=`n<hr>`n
}
If fformat = txt
{
hr1= `n<hr>=====================`n
hr2= `n=====================<hr>`n
}
FileRead, rATA, %rule%
}
if OutExt2 in txt,ion
{
If fformat = htm
{
StringReplace, rATA, rATA, `n, `n<br>, all
StringReplace, rATA, rATA, `r, `r<br>, All
StringReplace, rATA, rATA, `r`n, `r`n<br>, All
}
}
if OutExt2 not in htm,html,txt,ion
{
If fformat = htm
{
hr1= `n<hr>`n
hr2=
(
<br>
-----목록내 있는 %OutExt2% 포맷 위 파일은 문서 병합과정에서 제외되었습니다. 별도로 개별적으로 병합하여 주십시오.-----
<hr>
)
}
If fformat = txt
{
hr1= `n<hr>=====================`n
hr2=
(
=====================<hr>
)
}
rATA =
}
read = %rATA%
rATA =
data = %data%`n%hr1%%A_LoopReadLine%%hr2%`n%read%
}
; 해당 줄이 경로인 경우 If 구문끝
}
If fformat = txt
{
hr1= `n<hr>=====================`n
hr2= `n=====================<hr>`n
fformat = txt
}
else
{
hr1= `n<hr>`n
hr2=`n<hr>`n
fformat = htm
}
data = %data%`n%hr1%문서병합작업 끝%hr2%
ifnotexist, c:\test
FileCreateDir, c:\test
newdate=%A_YYYY%-%A_MM%-%A_DD%-%A_Hour%%A_Min%
IfExist, c:\test\Output_%newdate%.%fformat%
{
FileCopy, c:\test\Output_%newdate%.%fformat%, c:\test\Output_%newdate%_bac.%fformat%, 1
FileDelete, c:\test\Output_%newdate%.%fformat%
}
sleep, 100
FileAppend, %data%, c:\test\Output_%newdate%.%fformat%, %Filecode%
data =
msgbox, 0, [문서병합완료], 문서병합이 완료되어 c:\test\Output_%newdate%.%fformat% 으로 출력되었습니다. 내용을 점검하시고 사용하시기 바랍니다.
rule = c:\test\Output_%newdate%.%fformat%
sleep, 50
tttr = 0
Gosub, execute1
; 최종 출력할 문서상의 코드를 유니코드로 원할 경우; 위 utf-8 부분을 utf-16로 수정편집 후 사용
; 다른 코드
; CP20949 : x-cp20949 Korean Wansung
; CP51949 : euc-kr EUC Korean
; CP949 : ks_c_5601-1987 ANSI/OEM Korean (Unified Hangul Code)
; 기타 코드는 매뉴얼 참조
; 위 작업은 예를 들어 , ks 완성형 코드 문서 + utf-8 코드 문서 + utf-16 유니코드 문서 등을 모두 차례로 읽어 최종적으로 utf-8로 하나로 통합 출력할 경우에 위 방법을 그대로 사용하면 됩니다.
; 되도록 스크립트 실행시 unicode 용 _L 버전 autohotkey를 사용하여 실행하는 것이 좋다고 봅니다. _L 버전 사용시 위 스크립트를 복사해 utf-8 텍스트로 저장한 후 사용하셔야 합니다.
; $hr$ 은 htm 태그 꺽쇠괄호(braket)로 hr을 싼 기호를 의미합니다. 이 기호는 댓글에 올려지지 않아 이처럼 표시했으므로 사용시 바꿔서 사용하시기 바랍니다.
; fileread 명령은 파일용량이 1 GB 이내인 경우에서만 지원합니다. 참고 바랍니다.
; 핫키 : 윈도우키 + L
; - 폴더나 url 등이 라인 끝에 위치한 목록포맷 문서가 아닌 경우, 또는 줄 처음으로 가는 Home키가 달리 작동하는 편집이나 열람 창에서
; 직접 복사한 후 실행하거나 최소한 해당 경로부분을 직접 블록 설정한 상태에서 실행 [ 실행이 안되면 직접 복사한 후 실행하기]
#l::
; 실행전 복사한 내용을 보전함
before = %clipboard%
Clipboard =
sendinput, {ctrl down}c{ctrl up}
sleep, 150
Gosub, search
If fin = fin
{
fin =
Return
}
Goto, execute1
Return
; 핫키 - 윈도우키 + q
; 일반 윈도우 창용 핫키로 변환됨★
; #IfWinActive, desc ; 아래 핫키의 기능을 descrpt.ion 파일 및 문자 desc 가 들어간 기타 목록 파일에서만 실행되는 핫키로 바꿔 실행하려면 맨 앞의 ";" 기호를 빼서 사용하면 된다.
execut00:
#q:: ; 핫키 배당 - 윈도우키 + q ; 사용자별로 변경가능
; ■ 경로들어 있는 줄 내용 복사 부분
; 실행전 복사한 내용을 보전함
before = %clipboard%
Clipboard =
{
Sleep, 50 ; 0.05 초 정도 여유를 두고 다음 명령을 실행한다.
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 100
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 200
Sendinput, {home}{home}
}
Gosub, search
If fin = fin
{
fin =
Return
}
return
; 복사를 다른 방법으로 사용할 때 별도로 해당 핫키를 배당하는 스크립트를 작성하고 이 줄로 가는 명령 [ goto execute1 ] 을 배당하면 동일하게 작동함
execute1:
; rule 변수의 내용에서 파일이름 및 확장자 추출
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, rule, OutFN, ,OutExt2, OutNaNE,
; 파일이 경로에 없는 경우 => 토탈커맨더를 실행시켜 해당 경로 가까운 곳에 찾아가게 하고 실행하지 않음
If tttr = 4
goto continue5
; 파일을 찾기는 찾았으나, 찾아 실행할 파일이 기재된 경로의 파일과 다른 경우 안내메세지 출력
If tttr In 1,2,3
{
if portrableuser =
MsgBox, 0, 보고, 선생님!!`n%portable%`n%rule% %pppr%`n이 파일을 실행합니다.`n계속 작업에 이 메세지 반복이 귀찮으시면 윈도우키+CTRL+P를 눌러주세용, 5
}
; 확장자별 별도 프로그램 배당 명령----- 1차 전문 편집기
; ■ 1차 확장자별 응용프로그램 배당 부분
*/
Clipboard = %before%
{
; msgbox, 작업할 파일 경로=%rule% ; 기능정상작동테스트용
;Run, Target [, WorkingDir, Max|Min|Hide|UseErrorLevel, OutputVarPID]
; 본인이 확장자 htm 파일 등에 사용할 에디터의 경로를 자신의 상황에 맞게 바꿔 적어서 사용하셔야 합니당..
{
run, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe "%rule%",%out%:\totalcmd\Plugins\htmleditor\,
Return
}
}
;run, %ProgramFiles%\Namo\WebEditor 9\bin\WebEditor.exe "%rule%",
; 확장자 txt 등 종류의 파일에 사용할 에디터의 경로를 위와 같은 요령으로 바꿔 적어서 사용하셔야 합니당..
{
ifexist, %ProgramFiles%\EditPlus 3\editplus.exe
{
run, %ProgramFiles%\EditPlus 3\editplus.exe "%rule%",
Return
}
}
if OutExt2 in pdf
{
Ifexist, %out%:\totalcmd\Plugins\reader\SumatraPDF\SumatraPDF.exe
{
run, %out%:\totalcmd\Plugins\reader\SumatraPDF\SumatraPDF.exe "%rule%",
Return
}
}
{
ifexist, c:\hnc\Hwp70\Hwp.exe
{
run, c:\hnc\Hwp70\Hwp.exe "%rule%",
Return
}
{
run, %out%:\totalcmd\Plugins\hnc-SA\Hwp70\Hwp.exe "%rule%",
Return
}
; ▼▼ 개인설정끝
}
{
ifexist, %out%:\totalcmd\Plugins\The KMPlayer\KMPlayer.exe
{
run, %out%:\totalcmd\Plugins\The KMPlayer\KMPlayer.exe "%rule%",
sleep, 1000
; 실행시 kmp 실행창을 최소화시키는 명령 - WinMinimize, ahk_class Winamp v1.x- 이 듣지않으므로 다음 명령어를 사용함.
PostMessage, 0x112, 0xF020,,, ahk_class Winamp v1.x, ; 0x112 = WM_SYSCOMMAND, 0xF020 = SC_MINIMIZE
Return
}
}
{
run, %out%:\totalcmd\Plugins\xnview\xnview.exe "%rule%",
Return
}
if OutExt2 in SZ,SYS
{
PROCESS, CLOSE, Pviewer.exe
SLEEP, 500
IfExist, %A_ProgramFiles%\Tripitaka Korea\PViewerJCH\Pviewer.exe
run, %A_ProgramFiles%\Tripitaka Korea\PViewerJCH\Pviewer.exe "%rule%",
Else
run, "%rule%",
if A_ScreenHeight >= 719
WinMove, ahk_class ThunderRT6FormDC, , 0, 0, 1270, 670, ; Move the splash window to the top left corner.
else
{
WinMove, ahk_class ThunderRT6FormDC, , 0, 0, (A_ScreenWidth), (A_ScreenHeight-50)
}
Return
}
; 이유는, 이 명령을 각 파일에 대해 계속 실행해 열면 본래 LISTER.EXE 가 계속 새 문서창을 만들어 열기 때문에, 이를 원하지 않는 경우, 기존 문서창을 닫게 하는 한편,
; 만일 LISTER.EXE 는 목록창을 열고 사용하는 경우에는, 이 창은 닫지 않게 하기 위해 이 명령어에 사용할 lister.exe는 이름을 lister32s.exe 로 바꾸어서 구별하게 합니다.
; 단, 계속 lister가 새문서 창을 여는 옵션으로 명령어를 구성하려면, 아래의 Process, Close, lister32s.exe 항 앞에 ; 기호를 넣거나 줄을 지우면 됩니당.
; 설정파일은 %out%:\totalcmd\LISTER_special.ini 에 기재된 것으로 합니다. 물론 바꾸어 적어 사용하시면 됩니다.
{
Process, Close, lister32s.exe
run, %out%:\totalcmd\lister32s.exe /i=%out%:\totalcmd\LISTER_special.ini "%rule%",
Return
}
; 자신이 대부분 기타 확장자 파일에 lister 로 내용을 열람하기를 원하지 않고, 윈도우 시스템에 설정된 연결 파일프로그램을 사용하기를 원하는 경우, - %out%:\totalcmd\ 폴더안에 lister32s.exe 등의 파일은 만들지 않고 사용하면 됩니다.
; 또 만일 모든 확장자에 윈도우 시스템에 연결된 프로그램으로 사용하기를 원할 경우는 앞의 각 확장자별 프로그램 배당 부분 즉 ; 확장자별 별도 프로그램 배당 명령 줄 부터 다음 줄까지 삭제한 후 - 사용하거나 아니면 그 부분들의 프로그램 내용을 지우고 run, "%rule%" 명령어로 단순하게 변경하여 사용하고 또 한편 %out%:\totalcmd\ 폴더안에 lister32s.exe 등의 파일은 만들지 않고 사용하면 됩니다.
; 특히 이렇게 윈도우 시스템에 연결된 프로그램을 사용하는 경우의 차이는 exe 파일 등의 경우 곧바로 실행할 수 있게 됩니다. 앞의 벙법에서는 exe 파일도 뷰어를 통해 내용만 열어 보게 됩니다.
IfNotExist, %out%:\totalcmd\lister32s.exe
{
run, "%rule%",,UseErrorLevel ; 시스템에 연결된 프로그램이 없는 경우 에러 신호를 보내어서 연결 프로그램 등을 설정할 기회를 줍니다...
}
if ErrorLevel = ERROR
{
; 안내 명령어의 구조 ; 주의사항; 안내문장 등에서 줄을 구분할 때는 `n 기호를 사용하고 쉼표를 사용할 때도 `,를 사용합니다.
if ErrorLevel = 1
return
if rOut = 1
{
run, rundll32.exe shell32.dll OpenAs_RunDLL SW_SHOW %rule%
Return
}
if rOut = %rule%
{
; 이미 복사된 내용을 단순히 반복해 넣을 때는 실행하지 않습니다..어차피 에러가 발생하였으므로,,
}
if rOut =
{
; 입력란을 비워도 실행하지 않습니다.
Return
}
if rOut <> ; 프로그램 명을 기재하여 변수에 내용이 있는 경우는 실행합니다.
{
run, %rOut% "%rule%",,UseErrorLevel
if ErrorLevel = ERROR
{
msgbox, 0, 안내, 적어 넣으신 해당 프로그램이 실행되지 않습니다., 5
return
}
}
}
Return
; ■ 2차 편집기 설정실행용 핫키★
; 핫키 윈도우키+W ; 각 줄의 파일에 보다 전문적이고 특수한 편집기 사용시 이용
; 일반 윈도우 창용 핫키로 변환됨★
; #IfWinActive, desc ; 아래 핫키의 기능을 descrpt.ion 파일 및 문자 desc 가 들어간 기타 목록 파일에서만 실행되는 핫키로 바꿔 실행하려면 맨 앞의 ";" 기호를 빼서 사용하면 된다.
#w:: ; 핫키 배당 - 윈도우키 + 1 ; 사용자별로 변경가능
; 실행전 복사한 내용을 보전함
before = %clipboard%
Clipboard =
{
Sleep, 50 ; 0.05 초 정도 여유를 두고 다음 명령을 실행한다.
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 100
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 200
Sendinput, {home}{home}
Gosub, search
{
fin =
Return
}
}
; 경로를 복사한 상태에서 전문편집기 실행 - 역시 다음 명령은 경로를 다른 형태로 클립보드에 복사한 후 goto execute2 명령으로 동일한 형태로 실행가능함.
; ■▼ 2차실행명령★
execute2:
; 파일이 경로에 없는 경우 => 토탈커맨더를 실행시켜 해당 경로 가까운 곳에 찾아가게 하고 실행하지 않음
If tttr = 4
goto continue5
If tttr In 1,2,3
{
if portrableuser =
MsgBox, 0, 보고, 선생님!!`n%portable%`n%rule% %pppr%`n이 파일을 실행합니다.`n계속 작업에 이 메세지 반복이 귀찮으시면 윈도우키+CTRL+P를 눌러주세용, 5
}
/ *
; 확장자별 별도 프로그램 배당 명령----- 2차 전문 편집기
; ■★ 2차 확장자별 응용프로그램 배당 부분
*/
Clipboard = %before%
if OutExt2 in htm,mht,html ; 파일확장자 인식부분, 추가할 다른 확장자가 더 있는 경우는 옆 형식을 참조하여 더 기재해 넣으면 됩니다.
{
; msgbox, 작업할 파일 경로=%rule% ; 기능정상작동테스트용
;Run, Target [, WorkingDir, Max|Min|Hide|UseErrorLevel, OutputVarPID]
; 본인이 확장자 htm 파일 등에 사용할 에디터의 경로를 자신의 상황에 맞게 바꿔 적어서 사용하셔야 합니당..
; run, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe "%rule%", ,Max
; ▼ 개인설정내용
{
run, %ProgramFiles%\Namo\WebEditor 9\bin\WebEditor.exe "%rule%",
Return
}
Else
{
IfExist, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe
{
run, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe "%rule%", ,Max
Return
}
}
}
; 확장자 txt 등 종류의 파일에 사용할 에디터의 경로를 위와 같은 요령으로 바꿔 적어서 사용하셔야 합니당..
{
; ▼ 개인설정내용
{
run, %out%:\totalcmd\Plugins\reader\yBook2\yBook2.exe "%rule%"
Return
}
Else
{
IfExist, %ProgramFiles%\EditPlus 3\editplus.exe
{
run, %ProgramFiles%\EditPlus 3\editplus.exe "%rule%",
Return
}
}
}
{
; Ms word 등 배당 사용가능
; ▼ 개인설정내용
IfExist, c:\hnc\Hwp70\Hwp.exe
{
run, c:\hnc\Hwp70\Hwp.exe "%rule%",
Return
}
}
; 확장자 jpg 등 그림 파일 종류에 사용할 뷰어나, 에디터의 경로를 위와 같은 요령으로 바꿔 적어서 사용하셔야 합니당..
if OutExt2 in jpg,gif,png,bmp,tif,tiff,jpe,sld
{
; run, %out%:\totalcmd\Plugins\xnview\xnview.exe "%rule%",
; run, [ 사진 편집 전문 기타 프로그램 배당 사용가능] "%rule%",
; ▼ 개인설정내용
IfExist, %A_ProgramFiles%\Adobe Photoshop CS5\Photoshop.exe
{
run, %A_ProgramFiles%\Adobe Photoshop CS5\Photoshop.exe "%rule%",
Return
}
IfExist, %out%:\totalcmd\Plugins\drawing\photoshop-portable\Adobe Photoshop CS5\Photoshop.exe
{
run, %out%:\totalcmd\Plugins\drawing\photoshop-portable\Adobe Photoshop CS5\Photoshop.exe "%rule%",
Return
}
Else
{
IfExist, %out%:\totalcmd\Plugins\xnview\xnview.exe
{
run, %out%:\totalcmd\Plugins\xnview\xnview.exe "%rule%",
Return
}
}
}
; ▼ 개인설정내용
if OutExt2 in m3u,kpl,AAC,APE,FLAC,MP1,MP2,MP3,MP4,M4A,M4B,MPC,OFR,OFS,OGG,SPX,TTA,WMA,wmv,avi,mpg,flv,kar,mid
{
ifexist, %out%:\totalcmd\Plugins\The KMPlayer\KMPlayer.exe
{
run, %out%:\totalcmd\Plugins\The KMPlayer\KMPlayer.exe "%rule%",
sleep, 1000
; 실행시 kmp 실행창을 최소화시키는 명령 - WinMinimize, ahk_class Winamp v1.x- 이 듣지않으므로 다음 명령어를 사용함.
PostMessage, 0x112, 0xF020,,, ahk_class Winamp v1.x, ; 0x112 = WM_SYSCOMMAND, 0xF020 = SC_MINIMIZE
Return
}
}
{
PROCESS, CLOSE, Pviewer.exe
SLEEP, 500
IfExist, %A_ProgramFiles%\Tripitaka Korea\PViewerJCH\Pviewer.exe
run, %A_ProgramFiles%\Tripitaka Korea\PViewerJCH\Pviewer.exe "%rule%",
run, "%rule%",
WinMove, ahk_class ThunderRT6FormDC, , 0, 0, 1270, 670, ; Move the splash window to the top left corner.
else
{
WinMove, ahk_class ThunderRT6FormDC, , 0, 0, (A_ScreenWidth), (A_ScreenHeight-50)
}
Return
}
; 이유는, 이 명령을 각 파일에 대해 계속 실행해 열면 본래 LISTER.EXE 가 계속 새 문서창을 만들어 열기 때문에, 이를 원하지 않는 경우, 기존 문서창을 닫게 하는 한편,
; 만일 LISTER.EXE 는 목록창을 열고 사용하는 경우에는, 이 창은 닫지 않게 하기 위해 이 명령어에 사용할 lister.exe는 이름을 lister32s.exe 로 바꾸어서 구별하게 합니다.
; 단, 계속 lister가 새문서 창을 여는 옵션으로 명령어를 구성하려면, 아래의 Process, Close, lister32s.exe 항 앞에 ; 기호를 넣거나 줄을 지우면 됩니당.
; 설정파일은 %out%:\totalcmd\LISTER_special.ini 에 기재된 것으로 합니다. 물론 바꾸어 적어 사용하시면 됩니다.
ifexist, %out%:\totalcmd\lister32s.exe
{
Process, Close, lister32s.exe
run, %out%:\totalcmd\lister32s.exe /i=%out%:\totalcmd\LISTER_special.ini "%rule%",
Return
}
; 자신이 대부분 기타 확장자 파일에 lister 로 내용을 열람하기를 원하지 않고, 윈도우 시스템에 설정된 연결 파일프로그램을 사용하기를 원하는 경우, - %out%:\totalcmd\ 폴더안에 lister32s.exe 등의 파일은 만들지 않고 사용하면 됩니다.
; 또 만일 모든 확장자에 윈도우 시스템에 연결된 프로그램으로 사용하기를 원할 경우는 앞의 각 확장자별 프로그램 배당 부분 즉 ; 확장자별 별도 프로그램 배당 명령 줄 부터 다음 줄까지 삭제한 후 - 사용하거나 아니면 그 부분들의 프로그램 내용을 지우고 run, "%rule%" 명령어로 단순하게 변경하여 사용하고 또 한편 %out%:\totalcmd\ 폴더안에 lister32s.exe 등의 파일은 만들지 않고 사용하면 됩니다.
; 특히 이렇게 윈도우 시스템에 연결된 프로그램을 사용하는 경우의 차이는 exe 파일 등의 경우 곧바로 실행할 수 있게 됩니다. 앞의 벙법에서는 exe 파일도 뷰어를 통해 내용만 열어 보게 됩니다.
IfNotExist, %out%:\totalcmd\lister32s.exe
{
run, "%rule%",,UseErrorLevel ; 시스템에 연결된 프로그램이 없는 경우 에러 신호를 보내어서 연결 프로그램 등을 설정할 기회를 줍니다...
}
if ErrorLevel = ERROR
{
; 안내 명령어의 구조 ; 주의사항; 안내문장 등에서 줄을 구분할 때는 `n 기호를 사용하고 쉼표를 사용할 때도 `,를 사용합니다.
if ErrorLevel = 1
return
if rOut = 1
{
run, rundll32.exe shell32.dll OpenAs_RunDLL SW_SHOW %rule%
Return
}
if rOut = %rule%
{
; 이미 복사된 내용을 단순히 반복해 넣을 때는 실행하지 않습니다..어차피 에러가 발생하였으므로,,
}
if rOut =
{
; 입력란을 비워도 실행하지 않습니다.
Return
}
if rOut <> ; 프로그램 명을 기재하여 변수에 내용이 있는 경우는 실행합니다.
{
run, %rOut% "%rule%",,UseErrorLevel
if ErrorLevel = ERROR
{
msgbox, 0, 안내, 적어 넣으신 해당 프로그램이 실행되지 않습니다., 5
return
}
}
}
Return
;--------------- 뷰어 로만 실행하기 ----------------
; 오른쪽 마우스 버튼 두번 클릭 => 커서가 놓인 부분 줄의 경로의 파일 => 단순 뷰어 실행
; 종전 핫키 CTRL+ [또는 윈도우키 + ] 오른쪽 마우스 버튼 클릭 => 에서 변경
; 마우스 클릭시, 한쪽 손을 윈도우 키를 누르고 있는 것이 불편하다는 분이 계셔서, 마우스 오른쪽 버튼 두번 클릭으로 실행하게 했습니다.
; 뷰어 실행이 너무 늦게 뜬다는 지적에 조금 실행을 빨리 하게 조정해봤습니다. 다만 시스템에 따라 작동이 안되면 역시 sleep, 명령을 사이사이 적절히 넣어 주시기 바랍니다.
; ★ 다만 오른쪽 마우스 버튼이 다른 기능을 갖는 환경인 경우에서는 #IfWinNotActive, 또는 #IfWinActive, 등이 명령어를 적절히 사용해서 제한한다.
; #IfWinActive, desc ; 아래 핫키의 기능을 descrpt.ion 파일 및 문자 desc 가 들어간 기타 목록 파일에서만 실행되는 핫키로 바꿔 실행하려면 맨 앞의 ";" 기호를 빼서 사용하면 된다.
; 실행전 복사한 내용을 보전함
#IfWinNotActive, ahk_class TTOTAL_CMD
RButton::
if RB_presses > 0
{
RB_presses += 1
return
}
RB_presses = 1
SetTimer, KeyRB, 650
return
KeyRB:
SetTimer, KeyRB, off
if RB_presses = 1
{
Click right
}
else if RB_presses >= 2
{
Gosub rbuttondoubleclick
}
return
before = %clipboard%
Clipboard =
{
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 100
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 200
Gosub, search
{
fin =
Return
}
}
return
; ■ 단순뷰어 실행명령 부분
; 3차 단순뷰어 실행
execute3:
Clipboard = %before%
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, rule, OutFN, ,OutExt2, OutNaNE,
; 파일이 경로에 없는 경우 => 토탈커맨더를 실행시켜 해당 경로 가까운 곳에 찾아가게 하고 실행하지 않음
If tttr = 4
goto continue5
If tttr In 1,2,3
{
if portrableuser =
MsgBox, 0, 보고, 선생님!!`n%portable%`n%rule% %pppr%`n이 파일을 실행합니다.`n계속 작업에 이 메세지 반복이 귀찮으시면 윈도우키+CTRL+P를 눌러주세용, 5
}
{
ifexist, %out%:\totalcmd\Plugins\The KMPlayer\KMPlayer.exe
{
run, %out%:\totalcmd\Plugins\The KMPlayer\KMPlayer.exe "%rule%",
sleep, 1000
; 실행시 kmp 실행창을 최소화시키는 명령 - WinMinimize, ahk_class Winamp v1.x- 이 듣지않으므로 다음 명령어를 사용함.
PostMessage, 0x112, 0xF020,,, ahk_class Winamp v1.x, ; 0x112 = WM_SYSCOMMAND, 0xF020 = SC_MINIMIZE
Return
}
}
{
PROCESS, CLOSE, Pviewer.exe
SLEEP, 500
IfExist, %A_ProgramFiles%\Tripitaka Korea\PViewerJCH\Pviewer.exe
run, %A_ProgramFiles%\Tripitaka Korea\PViewerJCH\Pviewer.exe "%rule%",
Else
run, "%rule%",
sleep, 500
if A_ScreenHeight >= 719
WinMove, ahk_class ThunderRT6FormDC, , 0, 0, 1270, 670, ; Move the splash window to the top left corner.
else
{
WinMove, ahk_class ThunderRT6FormDC, , 0, 0, (A_ScreenWidth), (A_ScreenHeight-50)
}
Return
}
/ *
; 확장자별 별도 프로그램 배당 명령----- 1차 전문 편집기
; ■ 3차 확장자별 응용프로그램 배당 부분
*/
; 사용 뷰어를 lister를 사용하나 해당 프로그램 이름을 %out%:\totalcmd\fshed.exe 로 변경사용함...이는 별도의 검색 프로그램에서 해당 파일이름의 뷰어를 지원하는 관계
ifexist, %out%:\totalcmd\fshed.exe
{
Process, Close, fshed.exe
sleep, 300 ; 리스터 문서가 혹시 잘못 나오면 이 시간 부분을 조정한다.
run, %out%:\totalcmd\fshed.exe /i=%out%:\totalcmd\lister32.ini "%rule%",
Return
}
; ■ 특수 윈도우 창등 특정 환경에 배당된 핫키 시작
; ======== 이하는 특수 윈도우 창등 특정 환경에서만 배당 설정된 핫키 ---
;; 참조 - 일반 윈도우 범용 핫키를 배당해서 사용하려면 이 라인 위에 놓고 배당해야 비교적 오류발생 없이 정상작동함
*/
; ■ 토털커맨더 프로그램 상에서 파일 주석 내용 연속 편집용 매크로
;//////////////////////////
; cm_CopyFullNamesToClip=2018;Copy names with full path
; IfWinActive, ahk_class TTOTAL_CMD
; PostMessage, 1075, 2018
; 원래의 토털커맨더에서 작동하던 단순한 주석편집용 단축키 ctrl +z 키 기능을 회복하려면, "윈도우키 + ctrl +z" 키를 눌러 설정을 바꾸시기 바랍니다. 이후 다시 기능을 바꿀 때도 같습니다.
; 핫키 : 윈도우키 + CTRL+Z
#IfWinActive, ahk_class TTOTAL_CMD,
#^Z::
If TC_controlz=use
{
TC_controlz=
Goto, zzz
}
If TC_controlz=
{
TC_controlz=use
Goto, zzz
}
Return
; ■ 주석 편집용 범용 핫키★
; 핫키 CTRL+Z
; 주석 descript.ion 내용 정리용 매크로
; 토커에서 커서를 놓고 ctrl + z 실행하면, 주석창을 열고 해당 파일주석내용에 -절대경로가 입력되어 있는지 여부를 확인 후 기재가 없는 경우에 - 해당 파일의 절대경로를 입력한다.
; 클립보드에 복사한 내용이 있을 때 그 내용 보전시키고~ 원하면 주석안에 복사해 넣을 수 있도록 한다.
; 토털커맨더에서 ctrl +z 키가 주석키에 배당된 키인데, 절대경로를 기재하거나 검사하는 내용을 추가하여 변경하였다.
zzz:
#IfWinActive, ahk_class TTOTAL_CMD,
^Z::
{
before = %Clipboard%
Clipboard =
Sleep, 150
;cm_EditComment=2700;Edit file comment ; 주석창 열기
;cm_CopyFullNamesToClip=2018;Copy names with full path ; 전체경로복사
PostMessage, 1075, 2018
Sleep, 50
as = %Clipboard%
Clipboard =
PostMessage, 1075, 2700
Sleep, 50
sleep, 150
Sendinput, {Home}
Sleep, 50
Sendinput, {Home}{Shift Down}{Ctrl Down}{end}{Ctrl Up}{Shift Up}
;Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 500
AAA = %Clipboard%
Clipboard=
;StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
StringSplit, wordarray, AAA, :
;전체 경로 기재해야 할 경우 기재함
if wordarray0 < 2
{
Clipboard = %as%
Sleep, 50
Sendinput, {end}
Sendinput, %A_Space%%A_Space%%A_Space%%A_Space%%A_Space%
Sendinput, {Ctrl Down}v{Ctrl Up}
}
if wordarray0 > 1
{
StringRight, drrive, wordarray1, 1
if as <> %drrive%:%wordarray2%
{
MsgBox,0, 파일경로안내, 현재 파일위치가 이전에 기재된 내용과 다릅니다.`n확인후 한 부분을 삭제하십시오, 3
Clipboard = %as%
Sleep, 50
Sendinput, {end}
Sendinput, %A_Space%%A_Space%%A_Space%%A_Space%%A_Space%
Sendinput, {Ctrl Down}v{Ctrl Up}
}
}
Sendinput, {Ctrl down}{home}{Ctrl Up}
Sleep, 50
Clipboard = %before%
return
}
If TC_controlz=use
{
; 주석창 열기
PostMessage, 1075, 2700
return
}
return
; 핫키: 윈도우키 +1
; 이런 경우 적절한 내용을 미리 클립보드에 복사한 상태에서 그 내용을 커서가 위치한 해당 파일내 주석 안에 앞에 계속 붙여 넣기하는 용도의 핫키
#IfWinActive, ahk_class TTOTAL_CMD,
#1::
{
PostMessage, 1075, 2700 ; 주석창 열기
Sendinput, {Ctrl down}{home}{Ctrl Up}
sleep, 300
Sendinput, {CTRLDOWN}v{CTRLUP}
Sendinput, {F2}
sleep, 50
Sendinput, {Down}
}
return
; 그리고 주석을 정리할 파일이 들어 있는 폴더에서 주석을 정리할 파일을 순서대로 배열하고 맨 위 파일에서 CTRL+q 를 누른다.
; 문서 내용을 옆 창에서 간단히 열람하고 이 창에서 키워드를 발견하고 블록설정하고,
; 이 상태에서 WINKEY + 2 를 누른다. 그러면, 파일의 주석안으로 붙여 복사해 넣는다.
; + v2: 절대경로가 기재가 안 되어 있으면 끝에 기재를 한다.
; 그리고 다음 파일로 커서를 옮겨 놓는다.
; 참고: 기존의 양 폴더 내용 참조를 통해 주석정리하기는 사용자들이 사용할 기회가 많지 않아 윈도우키 + 6 으로 옮겨갑니다.
; 윈도우키 +6 도 위 목적에 이용할 수 있기는 합니다만 양 창에 같은 폴더를 같은 파일순서로 배열하고 커서를 같이 위치해 놓고 사용해야 합니다.
; 윈도우키 +6 은, 다른 백업파일이나 참조 문서 파일을 놓고 새 문서에, 새로 작업할 문서를 만들거나, - 기존 자료 파일에 해당하는 빈문서를 만들고 제목을 붙이고자 할 때 사용합니다.
; * LISTER 플러그인 상태나 문서 상태에 따라 CTRL+q 에서 블록설정한 부분이 CTRL+ C로 복사가 잘 안되는 경우가 있습니다. 이런 경우는 복사가 되게 만든 후 사용하시거나 아니면 수작업으로 복사해 넣어야 합니다.
; cm_SrcQuickview=304;Source: Quick view panel
#2::
halt2 =
{
; MsgBox [, Options, Title, Text, Timeout] ; 처음 실행시 사용방법 안내......
{
mSGBOX, 0, 사용법안내, 토털커맨더 주석 연속 정리용 핫키`n`n실행방법`n`n토털커맨더를 실행한다.`n한 창에 주석정리할 파일들을 순서대로 놓고 맨 위 파일에 커서를 놓는다.`n그리고 CTRL+q 를 누른다. `n열려진 파일내용을 보고 키워드 부분에 블록 설정한다. `n이 상태에서 WINKEY + 2 를 누른다. `n그러면 그 부분을 복사해서 해당 파일안의 주석에 그 내용을 복사해 넣게 된다.`n + v2: 절대경로가 기재가 안 되어 있거나 잘못 기재되어 있으면 기재하거나 정정기회를 준다.`n다수의 기존 파일에 주석 내용을 만들거나 새로 정리할 때 사용하면 된다.`n`n주의: LISTER 플러그인에 따라 CTRL+ C로 복사가 안되는 경우가 있습니다.`n이런 경우 수작업을 하시거나 복사가 되게 변경한 후 사용하십시오.`n작업 방법이 이해되시면 oK 버튼을 누르신 다음`, 실행 준비가 되시면 재실행해주십시오`n, 65
start2 = iknow2
return
}
{
;토탈커맨더 창 열리기를 기다리기
WinWait, ahk_class TTOTAL_CMD,
IfWinNotActive, ahk_class TTOTAL_CMD, , WinActivate, ahk_class TTOTAL_CMD,
WinWaitActive, ahk_class TTOTAL_CMD,
CLIPBOARD =
Sleep, 50
sendinput, {ctrl down}c{ctrl up}
sleep, 50
con = %Clipboard% ; 옆 패널에서 복사한 내용
Sleep, 100
Sendinput, {TAB}
;cm_CopyFullNamesToClip=2018;Copy names with full path ; 전체경로복사
PostMessage, 1075, 2018
Sleep, 50
as = %Clipboard% ; 전체경로
Clipboard =
; 주석창 열기후 절대 경로 적혀있는지 확인 후 없으면 기재할 것.
PostMessage, 1075, 2700 ; 주석창 열기
/ *
;주석편집창 열리기를 기다리기
WinWait, ahk_class TCmtEditForm,
IfWinNotActive, ahk_class TCmtEditForm, ,
WinActivate, ahk_class TCmtEditForm,
WinWaitActive, ahk_class TCmtEditForm,
*/
Sendinput, {Home}
Sleep, 150
Sendinput, {Home}{Shift Down}{Ctrl Down}{end}{Ctrl Up}{Shift Up}
Sleep, 150
Sendinput, {LCtrl Down}c{LCtrl Up}
AAA = %Clipboard%
Clipboard=
;StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
StringSplit, wordarray, AAA, :
if wordarray0 < 2
{
Clipboard = %as%
Sleep, 150
Sendinput, {end}
Sendinput, %A_Space%%A_Space%%A_Space%%A_Space%%A_Space%
Sendinput, {Ctrl Down}v{Ctrl Up}
}
; 기재된 경로와 대조 확인 작업
{
StringRight, drrive, wordarray1, 1
if as <> %drrive%:%wordarray2%
{
MsgBox,0, 파일경로안내, 현재 파일위치가 이전에 기재된 내용과 다릅니다.`n확인후 한 부분을 삭제하십시오, 3
Clipboard = %as%
Sleep, 50
Sendinput, {end}
Sendinput, %A_Space%%A_Space%%A_Space%%A_Space%%A_Space%
Sendinput, {Ctrl Down}v{Ctrl Up}
halt2 = halt
}
}
Sendinput, {Ctrl down}{home}{Ctrl Up}
Sleep, 50
Clipboard = %con%
Sleep, 150
Sendinput, {Ctrl Down}v{Ctrl Up}
Sleep, 100
{
Sendinput, {F2}
; 계속 동작 -- 준비
WinWait, ahk_class TTOTAL_CMD,
IfWinNotActive, ahk_class TTOTAL_CMD, , WinActivate, ahk_class TTOTAL_CMD,
WinWaitActive, ahk_class TTOTAL_CMD,
Sleep, 300
}
}
}
; 기존 주석 내용안에 무언가 일정한 내용을 첨가해 계속 붙일 때 사용할 수 있다.
; 동시에 이는 절대경로가 기재되었는지 여부를 확인하여 절대경로가 없으면 기재하는 용도로 사용한다.
; 기재된 경로가 있을 시 대조 확인 작업후 메세지도 출력한다.
; 이는 예를 들어 일정한 분류기호 ● ○ 등등을 선택한 각 파일들의 주석 맨 앞에 반복 수작업으로 첨가할 때 사용할 수 있다. - 파일 선택후 이 단축키를 눌러서 간단히 처리한다.
#3::
halt3 =
{
if Start3 =
{
mSGBOX, 0, 사용법안내, 토털커맨더 주석 연속 정리용 핫키`n`n어떤 내용을 미리 복사한 상태에서 그 내용을 커서가 위치한 해당 파일내 주석 안에 앞에 붙여 넣기 `n무언가 일정한 내용을 복사한 뒤 같은 내용을 기존 주석 내용안에 첨가해 계속 붙일 때 사용할 수 있다.`n실행방법`n`n복사할 문구를 복사한 후 재 실행하여 주십시오`n동시에 이는 절대경로가 기재되었는지 여부를 확인하여 절대경로가 없으면 기재하는 용도로 사용한다.`n 이는 예를 들어 일정한 분류기호 ● ○ 등등을 선택한 각 파일들의 주석 맨 앞에 반복 수작업으로 첨가할 때 사용할 수 있다.`n즉 파일 선택후 이 단축키를 눌러서 간단히 처리한다.`n 다른 기호로 바꾸어 재작업하거나`, 절대 경로 기재 등을 판단할 필요가 없을 때는 #1를 이용하십시오`n `n, 65
start3 = iknow3
return
}
{
if constart =
{
con2 = %clipboard%
constart=%clipboard%
}
if constart <>
{
con2 = %constart%
}
PostMessage, 1075, 2018
Sleep, 50
as = %Clipboard% ; 전체경로
Clipboard =
sleep, 150
Sendinput, {Home}
Sleep, 150
Sendinput, {Home}{Shift Down}{Ctrl Down}{end}{Ctrl Up}{Shift Up}
Sleep, 150
Sendinput, {LCtrl Down}c{LCtrl Up}
AAA = %Clipboard%
Clipboard=
;StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
StringSplit, wordarray, AAA, :
;전체 경로 기재해야 할 경우 기재함
if wordarray0 < 2
{
Clipboard = %as%
Sleep, 150
Sendinput, {end}
Sendinput, %A_Space%%A_Space%%A_Space%%A_Space%%A_Space%
Sendinput, {Ctrl Down}v{Ctrl Up}
}
; 기재된 경로와 대조 확인 작업
if wordarray0 > 1
{
StringRight, drrive, wordarray1, 1
if as <> %drrive%:%wordarray2%
{
MsgBox,0, 파일경로안내, 현재 파일위치가 이전에 기재된 내용과 다릅니다.`n확인후 한 부분을 삭제하십시오, 3
Clipboard = %as%
Sleep, 50
Sendinput, {end}
Sendinput, %A_Space%%A_Space%%A_Space%%A_Space%%A_Space%
Sendinput, {Ctrl Down}v{Ctrl Up}
halt3 = halt
Sleep, 100
}
}
Sendinput, {Ctrl down}{home}{Ctrl Up}
Sleep, 100
Sleep, 150
Sendinput, {Ctrl Down}v{Ctrl Up}
Sleep, 100
; 기재된 경로와 내용 대조 확인 이상시 중지 + 없으면 계속 진행
If halt3 <> halt
Sendinput, {F2}
sleep,50
Sendinput, {Down}
}
}
; ■ 토털커맨더 옆창의 참조 자료 폴더의 파일내용 열람하며 키워드 추출해 주석에 복사해 붙이기★
; 양 창 (내용을 복사해 옮길 다른 파일 폴더의 다른 창 또는 동일 폴더를 열어 놓은 두 양쪽 창)에서 다른 쪽 파일내용을 보면서 주석을 정리할 수 있다.
; 토털커맨더 주석 정리작업시 옆 창에서 참조 문서 내용을 열람하며 일정 내용을 복사한후 그 내용을 " 그 옆창과 같은 줄 위치에 있는" 다른 폴더의 파일 안에 넣는 작업이다.
; 이 기능은 파일 자신의 내용을 옆창에서 열람하면서 그 열람하는 파일의 주석 안에 복사해 넣는 작업이 아님을 주의해야 한다. 이를 위해서는 winkey +2 핫키를 사용하면 된다.
; 만일 양 창에 같은 폴더의 같은 파일들을 같은 순서로 배열하고 커서를 같은 위치에 놓은 상태에서 사용하면 결과적으로 윈도우 키 +2 와 같은 기능을 한다.
; 예를 들어 자료 파일 각각에 상응하는 빈문서를 만들어 놓고 여기에 기존 폴더 파일의 내용을 참조해 주석을 붙이고 새작업을 시작할 때 사용합니다.
; 그런 경우 다음 방법으로 작업합니다.
; 토털커맨더를 실행한다.
; 두 창을 열어 놓는다.
; 양쪽 창에 주석을 편집할 때 참조할 두 폴더를 위치하게 한다. 두 창에 동일한 폴더를 열어도 되고 참조할 다른 폴더를 두어도 된다.
; 우선 양 창에 파일 배열 순서를 같게 한다.( 이름 순이든 용량 순이든 )
; 동기화시키고자 하는 두 파일을 마우스 커서 아래에 같이 위치하게 한다.
; 문서 내용이 열린 파일 내용에서 - 열려 있지 않는 - 즉 지금 문서내용이 보이는 폴더의 같은 줄 위치의 파일의 주석안으로 내용을 붙일내용을 블록 설정한다.
; 이 상태에서 WINKEY + 5 를 누른다.
; 그러면 그 부분을 복사해서 옆 창 파일( 커서 아래에 있는 파일)의 주석에 그 내용을 복사해 넣게 된다.
; + v2: 절대경로가 기재가 안 되어 있으면 끝에 기재를 한다.
; 동일한 백업 파일이 있고 파일순서를 변경하였을 때- 기존 폴더안의 파일내용을 참조하면서 주석 내용을 만들거나 새로 정리할 때 사용하면 된다.
; * LISTER 플러그인 상태나 문서 상태에 따라 CTRL+q 에서 블록설정한 부분이 CTRL+ C로 복사가 잘 안되는 경우가 있습니다. 이런 경우는 복사가 되게 만든 후 사용하시거나 아니면 수작업으로 복사해 넣어야 합니다.
; cm_SrcQuickview=304;Source: Quick view panel
#6::
halt6 =
{
; MsgBox [, Options, Title, Text, Timeout] ; 처음 실행시 사용방법 안내......
{
mSGBOX, 0, 사용법안내, 참조폴더 참조후 주석 정리용 핫키`n`n다른 쪽 폴더의 파일내용을 보면서 주석을 정리할 때 사용합니다.`n`n실행방법`n`n토털커맨더를 실행한다.`n두 창을 열어 놓는다.`n 양쪽 창에 주석을 편집할 때 참조할 두 폴더를 위치하게 한다.`n 우선 양 창에 파일 배열 순서를 참조할 순서에 따라 조정한다. ( 이름 순이든 용량 순이든 )`n 참조될 순서에 맞게 두 폴더의 파일 위에 커서를 같이 위치하게 한다.`n ---`n그리고 내용을 참조할 폴더의 파일에서 CTRL+q 를 누른다. `n파일 내용을 열람하여 참조해 주석에 붙일 내용을 블록 설정한다. `n이 상태에서 WINKEY + 2 를 누른다. `n그러면 그 참조폴더 파일에서 블록설정한 내용이 옆 창의 커서에 위치한 파일 주석내용으로 들어가게 된다.`n + v2: 절대경로가 기재가 안 되어 있으면 끝에 기재를 한다.`n기존 폴더(백업 폴더`, 자료폴더 등) 내용을 참조하여 새 폴더에 새 파일을 만들 때 사용하면 된다. `n`n주의: LISTER 플러그인에 따라 CTRL+ C로 복사가 안되는 경우가 있습니다.`n이런 경우 수작업을 하시거나 복사가 되게 변경한 후 사용하십시오.`n작업 방법이 이해되시면 oK 버튼을 누르신 다음`, 실행 준비가 되시면 재실행해주십시오`n, 65
start6 = iknow6
return
}
{
;토탈커맨더 창 열리기를 기다리기
WinWait, ahk_class TTOTAL_CMD,
IfWinNotActive, ahk_class TTOTAL_CMD, , WinActivate, ahk_class TTOTAL_CMD,
WinWaitActive, ahk_class TTOTAL_CMD,
CLIPBOARD =
Sleep, 100
Sendinput, {Ctrl Down}C{Ctrl Up}
con = %Clipboard% ; 옆 패널에서 복사한 내용
Clipboard =
Sleep, 100
PostMessage, 1075, 304 ; 창패널 닫기
Sleep, 100
Sendinput, {TAB}
;cm_CopyFullNamesToClip=2018;Copy names with full path ; 전체경로복사
PostMessage, 1075, 2018
Sleep, 50
as = %Clipboard% ; 전체경로
Clipboard =
; 주석창 열기후 절대 경로 적혀있는지 확인 후 없으면 기재할 것.
PostMessage, 1075, 2700 ; 주석창 열기
/ *
;주석편집창 열리기를 기다리기
WinWait, ahk_class TCmtEditForm,
IfWinNotActive, ahk_class TCmtEditForm, ,
WinActivate, ahk_class TCmtEditForm,
WinWaitActive, ahk_class TCmtEditForm,
*/
Sendinput, {Home}
Sleep, 150
Sendinput, {Home}{Shift Down}{Ctrl Down}{end}{Ctrl Up}{Shift Up}
Sleep, 150
Sendinput, {LCtrl Down}c{LCtrl Up}
AAA = %Clipboard%
Clipboard=
;StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
StringSplit, wordarray, AAA, :
;전체 경로 기재해야 할 경우 기재함
if wordarray0 < 2
{
Clipboard = %as%
Sleep, 150
Sendinput, {end}
Sendinput, %A_Space%%A_Space%%A_Space%%A_Space%%A_Space%
Sendinput, {Ctrl Down}v{Ctrl Up}
}
if wordarray0 > 1
{
StringRight, drrive, wordarray1, 1
if as <> %drrive%:%wordarray2%
{
MsgBox,0, 파일경로안내, 현재 파일위치가 이전에 기재된 내용과 다릅니다.`n확인후 한 부분을 삭제하십시오, 3
Clipboard = %as%
Sleep, 50
Sendinput, {end}
Sendinput, %A_Space%%A_Space%%A_Space%%A_Space%%A_Space%
Sendinput, {Ctrl Down}v{Ctrl Up}
halt6 = halt
}
}
Sendinput, {Ctrl down}{home}{Ctrl Up}
Sleep, 100
Sleep, 150
Sendinput, {Ctrl Down}v{Ctrl Up}
{
Sendinput, {F2}
; 계속 동작 -- 준비
WinWait, ahk_class TTOTAL_CMD,
IfWinNotActive, ahk_class TTOTAL_CMD, , WinActivate, ahk_class TTOTAL_CMD,
WinWaitActive, ahk_class TTOTAL_CMD,
Sleep, 300
Sendinput, {TAB}{DOWN}
Sleep, 300
; 다음 작업을 위한 창 열기
PostMessage, 1075, 304
;창의 내용 블럭 설정할 것을 대기하기 ( 마우스 클릭 위치는 적당히 변경해서 사용할 것 )
; MouseClick, left, 85, 377
Sleep, 100
}
}
}
; 빈 파일 만들기 - 각 폴더에서 사용할 기본 포맷 문서를 정해 준비해두면 좋다. (예: c:\....\ basic.htm ) 또는 작업 중에, 작업중인 문서와 관련해 연관된 빈 파일이 다수 필요하면, 그ㅡ 파일위에 커서를 놓고 클릭하면 그 파일명 뒤에 -000 -009 의 일련번호가 붙은 10 개의 빈파일을 생성한다. 기본 포맷문서를 정하지 않은 경우는 단순히 복사할 파일형태를 정해 커서를 놓으면 그 파일 내용 그대로 복사해 만들게 된다. 빈파일을 만들 갯수는 10개 100개 단위이며 더 만들기 원하면 스크립트를 수정해 사용한다. 해당 파일 뒤에_0000 단위로 일련번호가 붙여져 생성되며, 파일번호나 이름은 뒤에 토탈커맨더에서 CTRL+M 키를 눌러 원하는 형태로 바꿔 수정할 수 있다.
; ★★
; 내용변경- 새 문서를 만들 때
; 어떤 기준 문서의 파일 이름에 _부가번호를 붙이고
; 문서 형식은 빈 기본 형식을 사용하고자 하게 되므로, 두 번 물어 만들게 함 ( 기존 문서가 어떤 내용이 있으면, 그 내용까지 복사해 만들게 되므로 복잡하므로..)
#IfWinActive, ahk_class TTOTAL_CMD,
#4::
;cm_CopyFullNamesToClip=2018;Copy names with full path ; 전체경로복사
clipboard =
PostMessage, 1075, 2018
sleep, 1000
Loop, parse, clipboard, `n, `r
{
; 다수 파일을 블록 선택할 때 잘못 선택한 것인가 여부를 확인 용,, 다수 파일에 대해 각기 일정한 수의 연계파일을 만들려면, 아래 매 파일마다 같은 질문을 반복하게 되는 항목을 삭제 후 실행하면 작업이 조금 수월해질 수 있습니다..
if a_index =2
{
MsgBox, 4, , 두 개 이상의 파일을 선택하셨습니다. 각 파일에 역시 동일한 형식으로 빈 파일을 만드시겠습니까?, 5 ; 5-second timeout.
IfMsgBox, No
break ; User pressed the "No" button.
IfMsgBox, Timeout
break ; i.e. Assume "No" if it timed out.
}
; InputBox , OutputVar [, Title, Prompt, HIDE, Width, Height, X, Y, Font, Timeout, Default]
;SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
; msgbox, A_LoopField, %OFN%, %OD%, %OE%, %ONNEt%, %ODr% ; 출력결과 정상 여부 확인용-
; %ODr%%ONNEt% ; 확장자만 삭제한 파일경로
InputBox, Countt, 안내, 현재 커서가 놓인 %A_LoopField%파일에 부가된 빈파일을 생성합니다. `n만들기 원하는 형태의 기본 형식 파일 위에 커서를 놓은 상태에서`n입력창에 만들기 원하는 파일갯수를 넣어주십시오.`n 파일명은 현재 커서에 놓인 파일명 %OD%\%ONNEt%_0000.%OE% 형태로 기초적으로 생성됩니다.`n다만 생성된 빈파일의 파일명은 작업이 완료된 후 생성된 파일들을 블록설정한 후 CTRL+M을 눌러 작업하면`n다시 원하는 형태로 변경 사용가능합니다.`n, , 800, 300, , , , 15, 10
if ErrorLevel = ERROR
{
break
}
InputBox, basicformat, 안내, %A_LoopField%파일에 부가된 빈파일을 생성할 때 사용할 기본 포맷문서[예: basic.htm]를 지정해 주십시오. `n특별히 지정하지 않으면`, %A_LoopField% 를 기본 포맷으로 하여 생성합니다.`n 이 파일에 내용이 들어 있을 때는 그 내용까지 함께 복사됩니다.`n`n, , 800, 300, , , , 15, %A_LoopField%
if ErrorLevel = ERROR
{
break
}
if ErrorLevel = 1
return
{
if a_index > 999
FileCopy, %basicformat%, %OD%\%ONNEt%_%a_index%.%OE%
if a_index < 1000
{
if a_index < 10
FileCopy, %basicformat%, %OD%\%ONNEt%_000%a_index%.%OE%
if a_index > 9
{
if a_index < 100
FileCopy, %basicformat%, %OD%\%ONNEt%_00%a_index%.%OE%
if a_index > 99
FileCopy, %basicformat%, %OD%\%ONNEt%_0%a_index%.%OE%
}
}
}
}
return
#IfWinActive, WizHtmlEditor
#4::
; ■ 기준 문서에 커서 올려 놓고 빈 파일 생성하기[Eidtplus용]
; ■ 작성 중 문서 백업파일 만들기 [Eidtplus용]
; 해당 줄에 있는 경로가 포터블환경에서 다른 드라이브, 다른 경로에 있는 경우, ● 목록 파일이 들어 있는 폴더 안에 만들 것인가 ● 또는 해당 폴더안에 만들 것인가를 선택함
; 기존 문서를 단순히 중간 작업단계에서 백업 보존하고자 할 때도 사용가능함.
#IfWinActive, EditPlus
#4::
Sleep, 500 ; 0.5 초 정도 여유를 두고 다음 명령을 실행한다.
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 500
Sendinput, {home}{home}
sleep, 50
Gosub search
StringSplit, nwordarray, rule, :
; 해당 줄이 경로가 기재되지 않은 순수한 주석줄인 경우 실행하지 않음
if nwordarray0 < 2
{
return
}
StringRight, httpr, nwordarray1, 4
if httpr = http
{
downfile = %pdrrive%:%pOD%\http-%nwordarray2%
StringReplace, downfile, downfile, ?, _, All
StringReplace, downfile, downfile, /, -, All
ifmsgbox, ok
UrlDownloadToFile, http:%nwordarray2%, %downfile%
return
}
StringRight, ftpr, nwordarray1, 3
if ftpr = ftp
{
downfile = %pdrrive%:%pOD%\ftp-%nwordarray2%
StringReplace, downfile, downfile, ?, _, All
StringReplace, downfile, downfile, /, -, All
ifmsgbox, ok
UrlDownloadToFile, http:%nwordarray2%, %downfile%
return
}
/ *
If fin = fin
{
fin =
Return
}
*/
; 그러나 목록 폴더 밖에 있는 경우도 있다.
; 포터블 환경에서는 드라이브 명도 달라질 수 있다.
; 이런 경우 빈파일을 만들어 사용하고자 할 때
; 크게 두 경우가 있다고 본다.
; ●1: 목록 외 해당 파일이 위치한 폴더 (포터블 드라이브 + 목록외의 다른 폴더 + 파일이 존재하지 않을 때는 직접 기재해 넣은 폴더 부분 )에 빈파일을 만들어 작업하고자 하는 경우가 있다.
; ●2: 목록이 있는 폴더 안에 빈파일을 만들어 작업하고자 하는 경우
; 이 두 경우를 모두 지원해 빈파일을 만들게 해준다
; 기본 옵션은 ●1:로 한다. ●2를 선택할 때는 now를 기재해 넣기로 한다.
StringRight, ndrrive, nwordarray1, 1
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, nwordarray2, nOFN, nOD, nOE, nONNEt, nODr
; 찾아낸 파일이 있는 폴더 안에 빈 파일을 만들때 - 사용할 포맷- 폴더는 해당 파일이 현재 존재하는 (포터블) 드라이브와 폴더
; 다만 존재하지 않는 폴더일 가능성이 있으므로, 먼저 폴더 생성시킬 필요가 있다. [ 확장자는 없는 상태 ]
; --- 파일이름은 선택한 파일 명 [ 확장자는 없는 상태 ] \%nONNEt%
; msgbox, rule=%rule% nnewfiledir = %ndrrive%:%nOD%
nnewfiledir = %ndrrive%:%nOD%
; 목록 파일을 열어보고 있고 목록파일이 위치한 드라이브명 + 폴더
WinGetActiveTitle, portpath
; msgbox, portpath = %portpath%
StringSplit, pwordarray, portpath, :
StringRight, pdrrive, pwordarray1, 1
; 목록 파일이 있는 폴더 안에 빈 파일을 만들때 - 사용할 포맷- 폴더는 목록파일의 드라이브와 폴더
; --- 파일이름은 앞과 같게 선택한 파일 명 [ 확장자는 없는 상태 ] \%nONNEt%
pnnewfiledir = %pdrrive%:%pOD%
; If pdrrive <> %ndrrive%
; driveinfo = 현재 목록파일이 위치한 드라이브와 기재된 파일의 드라이브가 일치하지 않습니다.`n이 경우 목록파일이 위치한 드라이브에 빈 파일을 생성합니다.`n
Report =
If tttr In 1,2,3,4
Report =`n%portable%`n%rule% %pppr%`n
; 경로가 다른 드라이브 인 경우 안내 메세지 출력 -예: portable = 파일이 기재된 경로에 없어서 "목록파일(경로가 기재된 파일)이 위치한" 드라이브 안에서 pppr =을 대신 찾아 놓았습니다.
;
If nnewfiledir <> %pnnewfiledir%
{
cataloginfo=만일 목록이 위치한 폴더 %pnnewfiledir% 안에 파일을 생성하기를 원할 경우에는`n만들 파일의 숫자 다음에 한 칸 떼고 now를 입력해주십시오`n[no=%nnewfiledir%\ 폴더에 생성]`n[now=%pnnewfiledir%\ 폴더에 생성]
now = no
}
*/
InputBox, Countt, [빈파일 생성 또는 중간백업문서생성], [빈파일 숫자]`n입력창에 만들기 원하는 파일갯수를 넣어주십시오.[default=10]`n`n[중간백업 문서생성]`n단순히 작업 도중에 파일을 임시 백업 보관하실 목적이라면`, 숫자 대신 back을 입력해 주십시오`n`n[파일을 만들 폴더옵션선택]`n%Report%`n생성할 파일들은 원칙적으로 "%ndrrive%":%nOD% \ 폴더에 생성합니다.`n이 폴더와 다른 폴더-또는 다른 하부 폴더에 생성하기를 원할 경우에는`n아래 기재 부분에서 숫자(또는 back)다음 부분에 해당 폴더내역을 변경해 기재하여 주십시오[끝 부분의 \ 생략]`n만일 파일이 위치한 폴더 "%pdrrive%":%pOD% 에 단순히 생성시키려면`, 폴더기재부분에 now를 대신 입력하셔도 됩니다.`n`n[생성되는 파일명]`n빈 파일을 만들 경우 현재 커서에 놓인 파일에 일련번호를 덧붙여 `n"%nONNEt%_0000.%OE%" 형태로 빈 파일을 생성합니다.`n중간백업문서는 "%nONNEt%_%A_YYYY%-%A_MM%-%A_DD%-%A_Hour%%A_Min%%A_Sec%_backuped.%nOE%" 형태로 생성합니다.`n생성된 다수 파일의 이름변경은 작업이 완료된 후 토털커맨더에서 생성된 파일들을 블록설정한 후 `nCTRL+M을 눌러 작업하면 다시 원하는 형태로 변경 사용가능합니다.`n`n[목록내용 변경기재안내]`nEditplus에서 각 파일에 대한 내역이 잘 기재되도록`n줄 삽입(insert)을 잠그시거나 아니면 새 파일 경로가 기재될 줄에 해당한 공간을 만들어주십시오`n, , 800, 550, , , , 155, 10%A_space%%ndrrive%:%nOD%
return
if ErrorLevel = ERROR
{
return
}
; 옵션이 now 일 때, 생성할 폴더 내용을 목록 폴더로 변경함
StringSplit, countoption, Countt, %A_space%
optioncount += 1
StringTrimLeft, nnewfiledir, Countt, %optioncount%
If countoption2 = now
{
nnewfiledir = %pnnewfiledir%
}
If countoption1 = back
{
; 기재해 넣은 임의의 폴더 파일이 없는 경우
ifnotexist, %nnewfiledir%
FileCreateDir, %nnewfiledir%
{
FileCopy, %ndrrive%:%nOD%\%nOFN%, %nnewfiledir%\%nONNEt%_%A_YYYY%-%A_MM%-%A_DD%-%A_Hour%%A_Min%%A_Sec%_backuped.%nOE%
Clipboard= %nONNEt%_%A_YYYY%-%A_MM%-%A_DD%-%A_Hour%%A_Min%%A_Sec%_backuped.%nOE% 중간 백업문서 %nnewfiledir%\%nONNEt%_%A_YYYY%-%A_MM%-%A_DD%-%A_Hour%%A_Min%%A_Sec%_backuped.%nOE%
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {down}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
}
Else,
msgbox, 0, [안내], 백업할 %ndrrive%:%nOD%\%nOFN% 이 존재하지 않습니다.,5
return
}
if ErrorLevel = 1
return
if ErrorLevel = ERROR
{
return
}
ifnotexist, %nnewfiledir%
{
FileCreateDir, %nnewfiledir%
}
{
Fileappend, `n, %ndrrive%:%nOD%\basic_temp.txt,UTF-8
; MsgBox, 0, 안내, 빈파일을 생성할 기본 포맷 문서 %basicformat%이 폴더 안에 없습니다.`n생성할 파일에 사용할 기본 포맷문서를 정하고 다시 실행해 주십시오, 10
sleep, 300
basicformat= %ndrrive%:%nOD%\basic_temp.txt
sleep, 300
}
ifexist, %basicformat%
{
Loop, %countoption1%
{
if a_index Between 1 And 9
{
Clipboard= %nONNEt%_000%a_index%.%nOE%%A_space%%A_space%[빈문서_000%a_index%]%A_tab%%A_tab%%A_tab%%nnewfiledir%\%nONNEt%_000%a_index%.%nOE%
FileCopy, %basicformat%, %nnewfiledir%\%nONNEt%_000%a_index%.%nOE%
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {down}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
}
if a_index Between 10 And 99
{
Clipboard= %nONNEt%_00%a_index%.%nOE%%A_space%%A_space%[빈문서_00%a_index%]%A_tab%%A_tab%%A_tab%%nnewfiledir%\%nONNEt%_00%a_index%.%nOE%
FileCopy, %basicformat%, %nnewfiledir%\%nONNEt%_00%a_index%.%nOE%
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {down}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
}
if a_index Between 100 And 999
{
Clipboard= %nONNEt%_0%a_index%.%nOE%%A_space%%A_space%[빈문서_0%a_index%]%A_tab%%A_tab%%A_tab%%nnewfiledir%\%nONNEt%_0%a_index%.%nOE%
FileCopy, %basicformat%, %nnewfiledir%\%nONNEt%_0%a_index%.%nOE%
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {down}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
}
if a_index > 999
{
Clipboard= %nONNEt%_%a_index%.%nOE%%A_space%%A_space%[빈문서_%a_index%]%A_tab%%A_tab%%A_tab%%nnewfiledir%\%nONNEt%_%a_index%.%nOE%
FileCopy, %basicformat%, %nnewfiledir%\%nONNEt%_%a_index%.%nOE%
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {down}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
}
sleep, 50
} ; loop
}
ifexist, %ndrrive%:%nOD%\basic_temp.txt
FileDelete, %ndrrive%:%nOD%\basic_temp.txt
#5::
; ■ 목록파일안에서 일기나, 간단한 메모용 파일 만들고 작성하기 + 해당 파일 내용 목록에 기재하기 [Eidtplus용]
#IfWinActive, EditPlus
#5::
WinGetActiveTitle, portpath
StringSplit, pwordarray, portpath, :
StringRight, pdrrive, pwordarray1, 1
;SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, pwordarray2, OFN1, OD1, OE1, ONNEt1, ODr1
newfilename=%A_YYYY%-%A_MM%-%A_DD%-%A_DDD%-%A_Hour%%A_Min%%A_Sec%
ifexist, %pdrrive%:%OD1%\basic.htm ; 기본 포맷
{
Clipboard= %newfilename%.htm%A_space%%A_space%[메모]%A_tab%%A_tab%%A_tab%%pdrrive%:%OD1%\%newfilename%.htm
Sendinput, {home}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
FileCopy, %pdrrive%:\%OD1%\basic.htm, %pdrrive%:%OD1%\%newfilename%.htm
sleep, 150
ifexist, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe
{
run, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe "%pdrrive%:%OD1%\%newfilename%.htm"
Clipboard= %A_YYYY%-%A_MM%-%A_DD%-%A_DDD%-%A_Hour%시 %A_Min% 분에 작성하는 메모입니다.`n파일명 %newfilename%.htm
sleep, 1500
sleep, 150
SendInput, ^v
Sendinput, {enter}
}
}
else
{
Clipboard= %newfilename%.htm%A_space%%A_space%[메모]%A_tab%%A_tab%%A_tab%%pdrrive%:%OD1%\%newfilename%.htm
Sendinput, {home}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
Fileappend, %A_YYYY%-%A_MM%-%A_DD%-%A_DDD%-%A_Hour%시 %A_Min% 분에 작성하는 글입니다.`n<br>파일명 %newfilename%.htm`n,%pdrrive%:%OD1%\%newfilename%.htm,UTF-8
sleep, 300
ifexist, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe
run, %out%:\totalcmd\Plugins\htmleditor\WizHtmlEditor.exe "%pdrrive%:%OD1%\%newfilename%.htm"
}
return
#IfWinActive, WizHtmlEditor
#6::
; ■ 자유로운 새 이름의 파일 생성 [Eidtplus용]
; 목록 파일에서 커서를 놓은 해당 줄 앞에 적은 파일이름으로 파일 만들기
; 목록파일이 위치한 곳을 기준으로 그 폴더 또는 그 부속폴더 기타 특별히 특정한 폴더에 만듦
; 빈 파일을 하나 만들고 다시 연속된 일련파일을 만들고자 할 때는 윈도우키 + 4 를 통해 실행하면 된다.
#6::
Clipboard =
Sleep, 500 ; 0.5 초 정도 여유를 두고 다음 명령을 실행한다.
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 500
Sendinput, {home}{home}
sleep, 50
; 해당 줄이 절대 경로가 기재되어 있는 경우 실행하지 않음
if wordarray0 > 1
{
MsgBox, 0, 안내, 빈파일을 생성할 경우는 되도록 빈줄에 커서를 놓으시거나`, 빈 줄에 새로 만들 파일의 이름과 확장자를 적어 놓으신 줄에 커서를 놓으시고 실행해주시기 바랍니다.`n생성할 파일에 사용할 기본 포맷문서도 미리 정하시고 사용하시는 것이 좋습니다.`n현재 다른 파일의 절대경로가 기재된 줄에서 실행하셨읍니다. 이 경우 기존 파일 이름_newfile 의 이름으로 일단 빈파일 생성을 합니다., 10
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, wordarray2, OFN, OD, OE, ONNEt, ODr
newfilename=%ONNEt%_newfile.%OE%
line = down
}
; 목록 파일을 열어보고 있고 목록파일이 위치한 드라이브명 + 폴더
WinGetActiveTitle, portpath
; msgbox, portpath = %portpath%
StringSplit, pwordarray, portpath, :
StringRight, pdrrive, pwordarray1, 1
; 목록 파일이 있는 폴더 안에 빈 파일을 만들때 - 사용할 포맷- 폴더는 목록파일의 드라이브와 폴더
; --- 파일이름은 앞과 같게 선택한 파일 명 [ 확장자는 없는 상태 ] \%nONNEt%
pnnewfiledir = %pdrrive%:%pOD%
newfilename =%A_YYYY%-%A_MM%-%A_DD%-%A_DDD%-%A_Hour%%A_Min%%A_Sec%.htm
InputBox, newfiledir, 안내, 현재 목록파일이 위치한 폴더 %pnnewfiledir%\ 폴더안에 빈파일을 생성하고 목록에 기재합니다.`n파일이름은 빈 줄에 적어 놓으신 이름이 있으면 그 이름으로 제시하고`, 없을 경우 시간으로 제시하게 됩니다. `n`n,만일 제시한 폴더나 이름과 다른 폴더 다른 파일이름으로 만들고 싶으면 변경하여 기재하여 주십시오`n, 800, 400, , , , 155,%pnnewfiledir%\%newfilename%
if ErrorLevel = 1
return
if ErrorLevel = ERROR
{
return
}
SplitPath, newfiledir, npOFN, npOD, npOE, npONNEt, npODr
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
InputBox, basicformat, 안내, %npOD%에 빈파일 %npOFN%을 생성할 때 사용할 `n기본 포맷문서[예: basic.htm]를 지정해 주십시오.[default=%npOD%\basic.htm] `n만일 지정하지 않거나`,지정하신 파일이 해당 폴더에서 발견되지 않으면`nutf-8 코드 텍스트파일로 %npOFN% 빈 파일을 생성합니다.`n, , 800, 300, , , , 185,%npOD%\basic.htm
if ErrorLevel = 1
return
if ErrorLevel = ERROR
{
return
}
ifnotexist, %npOD%
{
FileCreateDir, %npOD%
}
{
FileCopy, %basicformat%, %newfiledir%
}
{
;[FileAppend, Text, Filename, Encoding]
Fileappend, %A_YYYY%-%A_MM%-%A_DD%-%A_DDD%-%A_Hour%시 %A_Min% 분에 작성하는 글입니다.`n파일명 %npOFN%`n,%newfiledir%,UTF-8
; MsgBox, 0, 안내, 빈파일을 생성할 기본 포맷 문서 %basicformat%이 폴더 안에 없습니다.`n생성할 파일에 사용할 기본 포맷문서를 정하고 다시 실행해 주십시오, 10
}
Clipboard= %npOFN%%A_space%%A_space%[빈문서]%A_tab%%A_tab%%A_tab%%newfiledir%
If line = down
{
sleep, 50
Sendinput, {home}{home}
Sendinput, {down}{enter}
sleep, 50
Sendinput, {Up}
}
Sendinput, {home}{home}
sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
sleep, 50
sleep, 150
SendInput, ^v
sleep, 150
Sendinput, {home}{home}
sleep, 150
tttr = 0
Gosub execute1
return
; ■ 목록안의 파일을 rar 압축파일이 아닌 것을 압축하거나,,rar 압축파일을 압축해제하기 [Eidtplus용]
; 이는 주로 개인의 일기장이나, 보안이 필요하다고 보이는 문서를 압축하여 보관하고자 할 때 사용할 수 있는 방안이다.
; 스크립트가 실행되는 곳에 rar의 최신 도스 버전이 함께 있어야 한다. 오직 rar 확장자와 관련해서 압축하고 압축을 푼다.
; 다른 여러 압축방법과 해제는 토털커맨더에서 파일 경로를 찾아가 실행한다. [윈도우키 + P ]
#IfWinActive, WizHtmlEditor
#7::
#IfWinActive, EditPlus
#7::
IfNotExist %A_scriptdir%\rar.exe
{
Msgbox, 0, [보안압축안내], 보안압축은 본 스크립트가 실행되는 폴더 안에`nrar 최신도스용 버전 rar.exe 파일이 있어야 합니다. `n보안압축은 암호를 넣어 압축하며 기존 파일은 wipe삭제합니다.`n일반 압축이나 해제를 하시려면`n윈도우키 + P를 실행해 토털커맨더 창에서 alt+F5 및 alt+F9[해제]를 실행하십시오., 25
return
}
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 500
Sendinput, {home}{home}
sleep, 50
Gosub search
If fin = fin
{
fin =
Return
}
If tttr = 4
{
msgbox, 1, 안내[파일찾을 수 없음], 선생님!!`n%portable%`n%rule% %pppr%`n토털커맨더를 실행하여 실행하고자 하는 파일을 직접 찾으시겠습니까?, 10
IfMsgBox, ok
{
goto continue5
}
return
}
StringSplit, nwordarray, rule, :
StringRight, ndrrive, nwordarray1, 1
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, nwordarray2, nOFN, nOD, nOE, nONNEt, nODr
; 찾아낸 파일이 있는 폴더 안에 빈 파일을 만들때 - 사용할 포맷- 폴더는 해당 파일이 현재 존재하는 (포터블) 드라이브와 폴더
; --- 파일이름은 선택한 파일 명 [ 확장자는 없는 상태 ] \%nONNEt%
nnewfiledir = %ndrrive%:%nOD%
; 보통의 경우 목록에 기재된, 파일이 목록 파일이 있는 폴더 안에 있는 경우가 많다.
; 그러나 목록 폴더 밖에 있는 경우도 있다.
; 포터블 환경에서는 드라이브 명도 달라질 수 있다.
; 이런 경우 해당 파일의 압축파일을 만들어 사용하고자 할 때
; ●1: 목록 외 해당 파일이 위치한 폴더 (포터블 드라이브 + 목록외의 다른 폴더 + 파일이 존재하지 않을 때는 직접 기재해 넣은 폴더는 "제외" )에 압축 파일을 만들고, 해당 파일은 삭제하기를 원하는 경우가 대부분이다.
; 현재는 rar 만 지원하고, 이 압축을 사용할 때는 가장 보안이 좋은 옵션으로 실행하기로 한다. 암호도 항상 넣는 것으로 한다.
; 보통의 경우에는 압축관련사항은 토탈커맨더로 실행하는 것이 좋다고 본다.
If tttr = 0
Report =
If tttr = <> 0
Report =`n%portable%`n%rule% %pppr%`n
; 경로가 다른 드라이브 인 경우 안내 메세지 출력 -예: portable = 파일이 기재된 경로에 없어서 "목록파일(경로가 기재된 파일)이 위치한" 드라이브 안에서 pppr =을 대신 찾아 놓았습니다.
If nOE not in rar
{
Ifexist, %rule%.rar
{
msgbox, 1, [안내], 기존에 압축파일이 같은 이름의 압축파일이 있습니다.`n기존 파일을 보존하려면 Ok[확인] 버튼을 누르십시오.`n덮어쓰기 하려면 Cancel[취소] 버튼을 누르십시오.`nOK[확인] 버튼을 누르면 기존 파일은 %rule%.bac 파일로 보존후 실행합니다., 25
IfMsgBox, Cancel
{
MsgBox, 0, 안내, 기존파일을 덮어쓰기합니다.,3
FileSetAttrib, -R, %rule%.rar
FileDelete, %rule%.rar
}
IfMsgBox, Ok
{
ifexist, %rule%.bac
{
Filecopy, %rule%.bac, %rule%.b01, 1
backup2 = 1
sleep, 150
}
Filecopy, %rule%.rar, %rule%.bac, 1
backup1 = 1
sleep, 50
FileDelete, %rule%.rar
sleep, 150
}
}
; 압축 파일 생성 옵션
InputBox, pCountt, [보안압축안내], ●아래 빈 칸에 파일 압축시 사용할 비밀번호를 넣어주십시오.`n`n[안내]`n 본 압축은 보안목적의 압축으로서 기존 파일을 wipe형태로 삭제해 복구가 곤란합니다`n보안목적의 압축이 아닌 경우 윈도우키 + P를 통해 토털커맨더에서 파일을 찾아 토탈커맨더에서 alt+f5 키를 눌러 압축을 실행하십시오.`n실행하시면 현재 커서에 놓인 파일을 압축파일 %rule%.rar 형태로 압축이동합니다.`n%Report%`n실행하면 현재 파일이 위치한 부분의 기재를 삭제하고 해당 부분을 압축파일로 대체해 기재합니다.`n다만 생성된 빈파일의 파일명은 작업이 완료된 후 토털커맨더로 위치를 찾아가 개별적으로 이름 변경해 사용할 수 있습니다. `n`n`n입력창에 압축파일에 사용할 비밀번호를 15자 이상으로 만들어 넣어주십시오.`n압축비밀번호를 잊을 경우 해당 파일은 압축을 풀수 없습니다.`n압축파일에 사용할 비밀번호를 넣어주십시오., HIDE, 800, 400, , , , 155,
if ErrorLevel = 1
return
if ErrorLevel = ERROR
{
return
}
InputBox, p2Countt, 안내, 다시 한번 암호를 넣어 주십시오`n`n, HIDE, 800, 400, , , , 155,
if ErrorLevel = 1
return
if ErrorLevel = ERROR
{
return
}
If p2Countt <> %pCountt%
{
msgbox, 0, [안내], 입력한 암호가 서로 다릅니다. 다시 실행해 주십시오, 5
return
}
If p2Countt = %pCountt%
{
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {Shift down}{end}{Shift up}
sleep, 50
Sendinput, {del}
Clipboard= %nONNEt%.rar%A_space%%A_space%[압축문서_암호설정] %A_tab%%A_tab%%A_tab%%rule%.rar
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {down}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
sleep, 50
{
sleep, 50
Clipboard= %nONNEt%.bac%A_space%%A_space%[압축문서_암호설정_백업파일01]%A_tab%%A_tab%%A_tab%%rule%.bac
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {down}{enter}{up}
sleep, 100
sleep, 150
SendInput, ^v
sleep, 50
}
{
sleep, 50
Clipboard= %nONNEt%.b01%A_space%%A_space%[압축문서_암호설정_백업파일02]%A_tab%%A_tab%%A_tab%%rule%.b01
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {down}{enter}{up}
sleep, 50
sleep, 150
SendInput, ^v
sleep, 50
}
}
}
{
; 압축 파일 생성 옵션
InputBox, pCountt, [압축해제안내], ●아래 빈 칸에 파일 압축 해제에 사용할 비밀번호를 넣어주십시오.`n`n[안내]`n현재 커서에 놓인 압축파일 압축해제합니다.`n입력창에 압축파일에 사용할 비밀번호를 넣어주십시오.`n압축비밀번호를 잊은 경우 해당 파일은 압축을 풀수 없습니다.`n%Report%`n실행하면 압축을 푼 파일은 무조건 %nnewfiledir%\%nONNEt%로 변경합니다.`n또한 이 상태로 압축을 푼 파일을 목록에 추가 기재합니다.`n다만 생성된 빈파일의 파일명은 작업이 완료된 후 토털커맨더로 위치를 찾아가 개별적으로 이름 변경해 사용할 수 있습니다.`n, HIDE, 800, 400, , , , 155,
if ErrorLevel = 1
return
if ErrorLevel = ERROR
{
return
}
{
ifexist, %nnewfiledir%\%nONNEt%
{
msgbox, 1, [에러안내], 기존에 동일이름의 파일이 있습니다. 덮어쓰기를 실행한 경우는 열린 창에서 덮어쓰기 옵션[y]등을 선택해 실행하십시오`n, 5
ifmsgbox, Cancel
return
ifmsgbox, ok
overwrite = over
}
run, %A_scriptdir%\rar.exe e -hp%pCountt% "%rule%" "%nnewfiledir%\",%nnewfiledir%\
sleep, 500
ifnotexist, %nnewfiledir%\%nONNEt%
sleep, 1000
ifnotexist, %nnewfiledir%\%nONNEt%
sleep, 1000
ifnotexist, %nnewfiledir%\%nONNEt%
{
msgbox, 0, [에러안내], 압축해제가 정상적으로 이뤄지지 않았습니다.`n정확한 암호를 다시 넣어 다시 실행하십시오.`n,5
}
; 추가 여유시간
ifnotexist, %nnewfiledir%\%nONNEt%
sleep, 1000
ifnotexist, %nnewfiledir%\%nONNEt%
sleep, 2000
Clipboard=%nONNEt%%A_space%%A_space%[%nOFN%압축 푼 파일]%A_tab%%A_tab%%A_tab%%nnewfiledir%\%nONNEt%
ifexist, %nnewfiledir%\%nONNEt%
{
; 기존 파일이 있는 경우 선택옵션 실행 까지 기다림
If overwrite = over
{
IfWinnotActive, cmd
WinWaitNotActive, cmd
}
; WinWaitActive, EditPlus
; 기존 파일이 없는 경우- 생성된 경우 다음을 rar 실행 도스창과 관계없이 곧바로 실행함
; IfWinNotActive, EditPlus
; WinActivate, EditPlus
sleep, 250
Sendinput, {home}{home}
sleep, 150
Sendinput, {down}{enter}
sleep, 150
Sendinput, {up}
sleep, 150
sleep, 150
SendInput, ^v
sleep, 150
Goto execut00
}
}
}
; ■ 기존 파일 이름 변경하기(rename) + 폴더 이동 (move) + 해당 내용 목록에 기재하기 [Eidtplus용]
; 목록 파일에서 커서를 놓은 해당 줄 앞에 적은 파일이름으로 파일 이름 변경하기(rename) + 폴더 이동 (move)
; 목록파일이 위치한 곳을 기준으로 그 폴더 또는 그 부속폴더 기타 특별히 특정한 폴더에 만듦
; 빈 파일을 하나 만들고 다시 연속된 일련파일을 만들고자 할 때는 윈도우키 + 4 를 통해 실행하면 된다.
#8::
#8::
Sleep, 500 ; 0.5 초 정도 여유를 두고 다음 명령을 실행한다.
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 500
Sendinput, {home}{home}
sleep, 50
Gosub, search
If fin = fin
{
fin =
MsgBox, 0, 안내, 기존 파일의 이름을 변경하거나`, 폴더를 이동시킬 경우`,파일의 절대경로가 기재된 줄에서 실행하셔야 합니다.`n, 10
Return
}
; rule 변수의 내용에서 파일이름 및 확장자 추출
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, rule, OutFN, OD, OutExt2, OutNaNE, ODr
; 파일이 경로에 없는 경우 => 토탈커맨더를 실행시켜 해당 경로 가까운 곳에 찾아가게 하고 실행하지 않음
If tttr = 4
goto continue5
; 파일을 찾기는 찾았으나, 찾아 실행할 파일이 기재된 경로의 파일과 다른 경우 안내메세지 출력
If tttr In 1,2,3
{
if portrableuser =
MsgBox, 0, 보고, 선생님!!`n%portable%`n%rule% %pppr%`n이 파일을 실행합니다.`n계속 작업에 이 메세지 반복이 귀찮으시면 윈도우키+CTRL+P를 눌러주세용, 5
}
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
; SplitPath, rule, OutFN, OD, OutExt2, OutNaNE, ODr
InputBox, newfiledir, 안내, 현재 줄에 적힌 파일 %rule% 을 이름변경[ 또는 이동 ] 합니다. `n 이름변경 [ 또는 이동 ] 하고 싶은 내용을 기재하여 주십시오`n`n, , 800, 400, , , , 155,%rule%
if ErrorLevel = 1
return
if ErrorLevel = ERROR
{
return
}
; 기재해 넣은 파일이 이미 있는 경우
InputBox, newfiledir, 안내, %newfiledir%이 이미 있습니다. `n 덮어쓰기를 하지 않고 새 이름을 적으시려면 해당 경로를 변경해 기재하여 주십시오`n`n, , 800, 400, , , , 155,%newfiledir%
if ErrorLevel = 1
return
if ErrorLevel = ERROR
{
return
}
SplitPath, newfiledir, npOFN, npOD, npOE, npONNEt, npODr
ifnotexist, %npOD%
{
FileCreateDir, %npOD%
}
FileMove, %rule%, %newfiledir%, 1
Stringtrimright, before, wordarray1, 1
Sendinput, {home}{home}
sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
sleep, 50
sleep, 150
SendInput, ^v
sleep, 150
Sendinput, {home}{home}
return
#IfWinActive, WizHtmlEditor
#9::
#9::
WinGetActiveTitle, portpath
StringSplit, pwordarray, portpath, :
StringRight, pdrrive, pwordarray1, 1
StringSplit, ppath, pwordarray2, .
Stringleft, pext, ppath2, 3 ; 확장자는 3글자까지만 지원
Clipboard =%pdrrive%:%ppath1%.%pext%
sleep, 150
SendInput, ^v
return
; 핫키 윈도우키 +2
; 이는 Editplus로 목록을 열고 윈도우키 +Q, W 등을 통해 문서를 열어 작업을 한 경우에만 지원한다.
; 그렇게 목록창에서 문서를 열고 그 문서에서 작업 중 키워드를 찾고 그 키워드 위에 블록설정한 상태에서 이 핫키를 실행하는 것을 전제로 한다.
; 그러면 그 문서를 연 목록창 (Editplus) 창으로 옮겨가 그 키워드를 그 파일 경로에 붙여 넣게 된다. ( Editplus로 목록을 연 경우에 지원함 )
; 여기에는 표준 양식이 있지만,
; 편집상황에 따라 여러가지 다른 상황이 있어 여러가지 상황에 맞게 해당 부분을 편집해 사용하기 바란다.
#2::
#2::
#2::
SendInput, {Ctrl Down}c{Ctrl Up}
sleep, 50
newcomm = %Clipboard%
StringReplace, newcomm, newcomm, `r`n, , All
StringReplace, newcomm, newcomm, `r, , All
StringReplace, newcomm, newcomm, `n, , All
{
SendInput, {Ctrl Down}s{Ctrl Up}
sleep, 50
SendInput, {Alt Down}{F4}{Alt Up}
}
; - 그냥 기존의 내용을 덮어쓸 경우는 다음 부분을 대신 사용한다.
; Clipboard=%OutFN%%A_space%%A_space%[%newcomm%]%A_tab%%A_tab%%A_tab%%rule%
StringTrimRight, newcomment, wordarray1, 1
Clipboard = %newcomment%[%newcomm%]%A_tab%%A_tab%%A_tab%%rule%
; 위 어느 경우에나 만일 포터블 드라이브에서 파악된 드라이브명으로 바뀜
; 만일 편집창에서 파악되는 경로로 기존 내용을 대체하고 기존 내용을 보존하고 첨가해 넣을 경우는 다음 방법을 사용한다. --- ( 편집창에서 기존 경로와는 다른 새 경로로 바꿔 저장할 때 사용가능하다..)
{
WinGetActiveTitle, portpath
StringSplit, pwordarray, portpath, :
StringRight, pdrrive, pwordarray1, 1
StringSplit, ppath, pwordarray2, .
Stringleft, pext, ppath2, 3 ; 확장자는 3글자까지만 지원
newpath =%pdrrive%:%ppath1%.%pext%
StringTrimRight, newcomment, wordarray1, 1
Clipboard = %newcomment%[%newcomm%]%A_tab%%A_tab%%A_tab%%newpath%
}
*/
IfWinNotActive, EditPlus,
WinActivate, EditPlus,
WinWaitActive, EditPlus,
{
SendInput, {Home}
SendInput, {Shift Down}{end}{Shift Up}
sleep, 50
SendInput, {Ctrl Down}v{Ctrl Up}
sleep, 50
SendInput, {Down}{Home} ; 다음 줄로 내려가 준비함
}
; 만일 기존의 내용을 그대로 두고 새로 변경(추가)된 내용을 한 줄 아래에 두고, 서로 비교해 보고자 하는 경우,,,다음 { } 명령을 위 { } 명령 대신 선택해 사용한다. --기존 명령은 주석처리하고 ...다음을 살려 사용한다.
{
SendInput, {Home}{Down}{Enter} {Up}
sleep, 150
SendInput, {Ctrl Down}v{Ctrl Up}
SendInput, {up}{Home}{Shift Down}{end}{Shift Up} ;; 기존 내용을 블록 처리하여 삭제할지,,,여부를 확인시킴
}
*/
;[ FileCopy, SourcePattern, DestPattern]
; 보안문제
; 시스템에 가장 먼저 설치되고 운영되게 되는 OS는 되도록 신뢰할 수 있는 만한 경로를 통해 구입한 정품을 설치 사용하십시오.
; 그 시스템은 그 OS를 제작 배포한 이가 자신의 OS를 자신이 소유한 두 대 이상 컴에 설치한 상태와 비슷한 상태가 되기 쉽습니다.
; 또는 정상적인 시스템 파일과 프로그램 들을 통하여 원격조정이 가능한 상태로 변형 조작을 마친 상태에서 배포하기 쉽습니다.
; OS 자체에서 지원하는 정상 시스템 파일들( 바이러스 검사시 검사되지 않음)과 프로그램을 통해 타인의 시스템을 원격 조정 관리하기 쉽습니다.
; 따라서 불법 OS 제작자가 마치 자신의 OS 로 두대 이상 컴퓨터에 자신의 OS를 설치하여, 두 곳 이상의 장소에서 자신 소유의 컴퓨터들을 원격조정방법을 통해 사용하는 상태처럼 됩니다.
; 그런 상태에서는 해당 OS 배포자가 이후 타인의 시스템들에 대한 파일 관리권한- 레지스트리키 변경 등에 대하여 정상적인 사용 권한을 취득하여
; 이후 타인 시스템 ip 주소만 확보되면 쉽게 수시로 원격 침투하여 자신이 원하는 형태로 각종 시스템 변경을 가할 수 있게 됩니다.
; 시스템이 본래 구성되어 있기 때문에 발생하는 문제이기도 합니다.
; 그 시스템의 소유자가 누구인가에 그런 원격 이용이 불법이용인가 아닌가가 구별되는데
; 불법 OS 를 설치해 사용하는 경우 그 시스템의 소유자는 자신의 컴에 그 OS로 설치작업을 하는 이가 아니라, 그 OS를 제작 배포하는 자가 되는 경우가 많습니다.
; 처음 제작시부터 원천적으로 각국의 사용자들의 민감한 개인 정보를 수집할 수 있는 장치를 장착하여 제작하는 경우도 있으며,
; 또 그렇지는 않더라도 자국에 배포하는 OS와 타국에 배포하는 OS 별로 각기 다른 수준의 보안수준을 적용하여 제작배포하는 경우가 있어서,
; 이런 문제들이 사회문제로 제기된 경우가 많습니다.
; 처음 제작 배포 상태에서는 보안을 유지할 수 있었지만, 이후 시간이 감에 따라,
; 쉽게 해커의 침투가 이뤄지고 보안체계가 파괴되는 경우도 많습니다.
; 특히 인터넷을 통한 정보 교환에는 이런 해커의 침투 가능성이 높으므로 늘 업데이트문제에 신경을 기울이며
; 새로운 해킹 수단의 개발에 대응해 새로 개발된 보안 장치를 다운받아 보안체계의 업데이트 조치를 취하여야 합니다.
; 해커의 노력과 보안장치 개발자의 노력은 창과 방패의 노력처럼 끝없이 서로 상대하여 기술을 개발하여야
; 각기 자신의 뜻을 이루기 때문에, 과거의 보안 장치를 유지한 상태에서 보안을 계속 유지해 나가는 것은 쉽지 않습니다.
; 특별히 직업상 보안조치가 필요한 작업을 상시적으로 해야되는 경우에는
; 인터넷 이용과 업무를 할 시스템을 서로 분리시켜서
; 업무에 사용할 시스템은 인터넷이나 외부이용자의 이용과 분리된 독립적인 시스템으로 구축하여 운영할 필요도 있습니다.
; 특히 무선랜이 기본 장착된 시스템을 사용시에는 부지불식간 무선랜을 통해 해커가 침투할 가능성이 높아지게 됩니다.
; 수시로 랜선을 빼고 외부와 분리된 상태에서 작업하더라도 해당 작업내용들이 임시파일이나 다양한 형태로 저장된 후
; 작업결과가 이후 해커에게 노출될 수 있으니 주의하시기 바랍니다.
; 또한 저장매체에만 해킹툴이 침투해 가동되지 않고 내부 메모리 장치 등 다양한 형태에 해킹툴이나 바이러스가 침투되어 가동될 수 있으니,
; 하드 디스크만 보안을 유지하는 것으로 충분하지 않을 수 있습니다.
; 이후 해커에 의해
; 해당 컴퓨터 상에서 작업하는 모든 내용이 상시 쉽게 감시될 수 있게 되며,
; 자신의 암호 은행 증권 계좌 거래 내역 등등 보안에 민감한 개인자료가 유출될 가능성이 높습니다.
; 또한 해당 시스템들은 불법 OS를 제작 배포한 이가 다른 해킹 목적 (DDos 공격 등)에 좀비 피씨가 되어 이용되기 쉽습니다.
; 그리고 이렇게 타인 시스템에 불법적 이용을 마친 후에는
; 자신의 사용 흔적(증거)를 없애기 위하여 다시 그 시스템들을 완전 복구불능하거나 사용불능 상태로 파괴시킨 채 떠나가기 쉽습니다.
; 불법 다운로드 되고 여기저기 유통되는 OS나 프로그램들이 모두 이런 상태라고 볼 수는 없지만,
; 상당한 경우 불법 OS 최초 제작 배포자가 정상 시스템 파일들로만 ip 주소를 획득한 이후에는 해당 시스템에 대해 원격조정이 가능하도록
; 사전 제작하여 유포시키는 경우가 많습니다.
; 바이러스나 해킹 툴 감지 프로그램으로 검사를 한다해도 검사되지 않게 됩니다.
; 이들을 몇개 조합하여 사용하면 쉽게 해킹 목적으로 해킹툴로 사용할 수 있게 됩니다.
; 대부분 사용자는 설령 다른 이가 자신의 시스템을 해킹을 하더라도 이 사실을 쉽게 탐지해 낼 수 없는 상태가 됩니다.
; 따라서 OS 시스템은 되도록 정품을 사용하여 자신이 설치한 OS의 소유자 권한을 컴퓨터 보유자 및 설치자 자신이 획득한 상태에서 시스템을 사용하시기 바랍니다.
; 그 OS가 설치된 컴퓨터와 시스템은 자신의 것이 아니라 배포자 소유의 시스템이 된다는 점에 특히 유념하고 주의를 기울이시기 바랍니다.
; 자신이 정상적인 소유자 권한을 획득하려고 시도하면,
; 그런 시도 이후 해당 OS 시스템 자체가 파괴되고 곧이어 사용불능 상태가 되는 경우가 많습니다.
; 따라서 이런 상태에서는 이런 작업을 하기 전에 먼저 개인 자료 및 보안에 민감한 자료를 별도 하드디스크에 옮겨 저장을 마친 후 해당 시스템에 대해 수정 변경 작업을 시도하시거나,
; 아예 해당 시스템의 포맷을 하고, 정상 OS를 마련하여 정상적인 시스템의 재설치 작업을 하시기 바랍니다.
; 이들 내용을 기록한 파일들이 있는 경우, 다른 이가 침투하여 삭제한 파일들을 복구하여 재사용하지 못하도록 보안 삭제방법을 사용하여 삭제하십시오.
; 또한 보안에 민감한 자료를 취급한 하드는 폐기할 때는, 단순 포맷 처리로 끝나지 말고, 전체 디스크 내용을 보안 삭제한 후 폐기하십시오.
; 특히 보안에 민감한 자료를 보안 삭제할 때는 전문프로그램 Bcwipe 등과 같은 전문 wipe 삭제 프로그램을 이용하여, 여러번 덮어쓰기를 실행하여 복구가 불가능한 상태로 삭제하여야 합니다.
; 자신이 빈번히 사용하는 프로그램들을 정품 시리얼을 취득해 사용하기 위해 불법 다운로드 사이트 등을 통해 받아 설치하는 경우,
; 프로그램을 다운로드받는 과정이나 그 프로그램 설치과정, 또는 그 프로그램 자체 안에 해킹 툴이 포함되는 경우가 많습니다.
; 인터넷등을 이용하는 가운데 해킹 툴이나 바이러스가 침투될 가능성이 많으므로
; 기본적으로 신뢰할 만한 바이러스 해킹툴 검색 프로그램을 늘 가동시켜
; 외부에서 바이러스나 해킹 툴이 침투하는 것을 방지하고 수시로 탐지 치료를 하는 가운데 사용해야 합니다.
; 가능한, 이 상태를 유지시키면서 부팅시마다 계속 사용할 수 있도록,
; Deep freeze나 Shadow defender 등과 같이 재부팅을 하면 처음 원상상태로 회복되는 전문 시스템 복원프로그램을 사용하는 것이 좋습니다.
; 각종 프로그램 설치과정에서 시스템 파일이 손상되는 경우가 많으며,
; 이런 경우 쉽게 처음 원상태로 복구할 수단이 필요합니다.
; 또한 인터넷이나 각종 프로그램 설치시 바이러스나, 해킹툴이 침투하더라도
; 일시적으로만 피해를 입히고, 재부팅 이후에는 원상복구를 쉽게 할 수 있도록,
; 이런 전문 시스템 원상복구프로그램을 이용하여 예방조치를 취할 필요가 있습니다.
; 재부팅시 늘 그런 해킹툴이 작동되는 원상상태가 되어
; 오히려 늘 해킹에 노출되는 위험한 상태가 되니 이 점도 함께 주의하시기 바랍니다.
; 이 사실을 잘 탐지하지 못하면서 사용하게 됩니다.
; 그리고 설마 자신의 컴에 다른 해커가 해킹툴을 삽입 장착했겠는가 생각하며 사용하기 쉽지만,
; 해커가 그런 사용자의 시스템에 침투하는 것은 사실 해커도 그런 사실을 잘 모르기 때문이기도 하며,
; 사용자가 침투하는 목적은 해커에 따라서 수없이 다양하기 때문입니다.
; 따라서 자신이 보안이 필요한 자료를 취급하는 상태가 아니더라도,
; 해커는 침투하고, 해커의 목적에 따라 자신의 시스템이 다양한 목적으로 활용되는 상태에 노출되게 됩니다.
; 자신의 컴퓨터가 그 중에 하나에 포함되어 있을 수도 있다는점을 주의하고,
; 보안에 주의를 기울이는 가운데 사용하시기 바랍니다.
; 자신이 특별히 보안조치를 취할 필요가 없이 정상적으로 평범하게 사용하더라도
; 해커가 침투해 이용하고 이 이용흔적을 없애기 위하여
; 이용을 마친 후 해당 시스템을 파괴시키고 떠나는 경우가 많으니,
; 주의를 기울여야 할 필요가 있습니다.
; 세계의 수많은 해커들이 한국에 있는 컴퓨터를 해킹목적에 이용하기 위하여
; 한국사용자들의 컴퓨터를 공략 목표로 삼고 활동하므로,
; 특히 한국내 컴퓨터 사용자들은 이런 세계적 해커들로부터 피해를 받지 않도록
; 특히 보안유지에 주의를 기울이는 가운데 사용하여 주시기 바랍니다.
; 그 스크립트 소스가 공개되지 않거나,
; 소스가 일반에 공개되었더라도
; 오랜 기간 사용자들로부터 검증과정을 거쳐 신뢰를 받는 상태가 아니거나,
; 자신의 해당 내용을 잘 파악할 수 없는 상태라면 -- 매우 주의를 기울여 사용하셔야 한다고 봅니다.
; 한편 되도록 시스템 최초 사용 설치시
; 프로그램을 설치하여 운영할 파티션과, 자신이 작성하거나 관리하는 자료를 보관하는 파티션을 별도로 구성하여 설치하시는 것이 좋습니다.
; 그래서 해커의 침투로 시스템 파괴시 최소한 자신이 시간을 들여 작성한 자료들은 원상태로 쉽게 복구할 수 있도록 예방조치를 취할 필요가 있습니다.
; 자신이 작성한 자료는 파괴되면 복구 자체가 상당히 불가능하여 따라서 그로 인해 회복할 수 없는 피해를 받는 경우가 많습니다.
; 예를 들어 기념일에 특별히 기념촬영한 사진들,
; 또는 별도로 시간과 경비를 들여 촬영한 사진,
; 또는 자신이 오랜 기간 작성해온 문서 들의 경우 해당 자료가 파괴되면,
; 백업을 받아 관리하지 않은 자료들은 복구할 다른 수단이 별로 없는 상태가 되고,
; 일일히 재작업을 통해 복구하려면, 시간을 들여 비용과 노력을 재투자해야 하는 관계로, 손해가 매우 심하게 되기 때문입니다...
; 따라서 자신이 직접 작성한 자료들은 늘 백업을 하고, 비상시 쉽게 재복구를 할 수 있도록 관리를 하시기 바랍니다.
; Truecrypt 나 Bestcrypt .. 등의 보안용 디스크, 파티션, 파일 등을 생성할 수 있는 프로그램들을 통하여
; 자신의 자료에 대한 보안 별도의 보호조치를 취할 필요가 있습니다.
; 이 외에도 자료 보안을 위하여 보호조치를 할 수 있는 전문 프로그램 들이 대단히 많으니 이들을 적절이 이용하여,
; 해커들의 악의적 침투 공격에 대비하시기 바랍니다.
; 보안에 민감한 개인 자료나 금융기관 이용에 필요한 개인 파일, 암호등을 저장해 넣고 사용하는 경우가 많은데
; 이런 경우 특히 주의를 기울여야 합니다.
; 이런 경우 매번 이동사용시 좀 불편을 느끼게 되더라도,
; 이동 Usb 매체들에는 필수적으로 기본적 보안 장치를 갖춘 상태에서 사용하시기 바랍니다.
; 그래서 그런 Usb 매체를 분실하는 경우에도 타인이 취득하여 함부로 이용할 수 없도록 예방 조치를 취한 상태에서
; 늘 사용하시기 바랍니다.
; 보안이 필요한 파일들은 삭제시 전문적으로는 MFT 기록등 해당 파일명경로명 정보들까지도 함께 삭제해야 하므로 전문프로그램 Bcwipe 등을 사용해야 반복 덮어쓰기 방법을 통해 삭제해야하나,
; 간단한 방법으로 유사한 효과를 얻기 위해서는 삭제할 파일을 다른 파일로 덮어쓰기 하여 삭제하는 방법을 사용할 수도 있습니다.
; 덮어쓰기 할 파일로 %out%:\totalcmd\default_del.txt 가 있으면 이를 사용하지만, 없으면 윈도우 폰트에서 폰트를 사용하여 덮어쓰기 합니다. 폰트파일도 없으면 메세지를 출력함
; 파일용량은 삭제할 파일보다 용량이 더 큰 파일을 이용하는 것이 이상적이지만, 여기서는 자신의 필요에 따라 적당한 파일을 정해 사용하거나, 작은 윈도우 시스템 폰트를 사용합니다.
; 보다 자세한 컴퓨터상의 문서 보안과 시스템 보안 문제에 대해서는 http://blog.paran.com/story007/46942387
#IfWinActive, ahk_class TTOTAL_CMD,
#Del::
;cm_CopyFullNamesToClip=2018;Copy names with full path ; 전체경로복사
PostMessage, 1075, 2018
sleep, 500
; MsgBox [, Options, Title, Text, Timeout]
MsgBox, 1, 간략보안삭제, 블록선택한 파일들을 덮어쓰기 방법으로 삭제합니다.`n덮어쓰기에 사용할 파일은 %out%:\totalcmd\default_del.txt 또는 %windir%\Fonts\arial.ttf입니다.`n`n[삭제할 파일들]`n%clipboard%`n`n위 파일들을 삭제하시겠습니까?-폴더는 삭제되지 않습니다.`n삭제 실행 후에는 복구가 조금 곤란합니다.
IfMsgBox, ok
{
Loop, parse, clipboard, `n, `r
{
ifexist, %out%:\totalcmd\default_del.txt
{
FileCopy, %out%:\totalcmd\default_del.txt, %A_LoopField%, 1
FileDelete, %A_LoopField%
}
ifNOTexist, %out%:\totalcmd\default_del.txt
{
ifexist %windir%\Fonts\arial.ttf
{
FileCopy, %windir%\Fonts\arial.ttf, %A_LoopField%, 1
FileDelete, %A_LoopField%
}
ifNOTexist %windir%\Fonts\arial.ttf
{
MSGBOX, 덮어쓰기할 파일 %out%:\totalcmd\default_del.txt 와 %windir%\Fonts\arial.ttf가 없습니다. `n덮어쓰기용 파일로 적당한 파일을 선택해 %out%:\totalcmd\default_del.txt로 저장한 다음 사용하십시오.
result =error
BREAK
}
}
}
If result <> error
MsgBox, 0, 안내, %clipboard%`n의 삭제가 완료되었습니다., 1
}
return
#Del::
; ■ 보안 삭제 [Eidtplus용]
#IfWinActive, EditPlus
#Del::
IfNotExist %A_scriptdir%\rar.exe
{
Msgbox, 0, [보안압축안내], 본 보안삭제는 스크립트가 실행되는 폴더 안에`nrar 최신도스용 버전 rar.exe 파일이 있어야 합니다. `nrar 최신도스용 버전 rar.exe 파일을 구해 스크립트가 실행되는 폴더에 복사해 넣고 실행해 주십시오`n본 보안 삭제는 rar 의 삭제옵션을 통해 wipe삭제하며 삭제 후 복구가 곤란합니다.`n보안목적의 삭제가 아닌 경우 윈도우키 + P를 통해 토털커맨더에서 파일을 찾아 토탈커맨더에서 Del 키[휴지통삭제]나 Shift+Del 키를 눌러 삭제를 하십시오.`n, 25
return
}
Sendinput, {Home} ; {Home} 키를 문서창에 보낸다.
Sleep, 50
Sendinput, {Home}{Shift Down}{end}{Shift Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 500
Sendinput, {home}{home}
sleep, 50
Gosub search
If fin = fin
{
fin =
Return
}
If tttr = 4
{
MsgBox [, Options, Title, Text, Timeout]
msgbox, 1, 안내[파일찾을 수 없음], 선생님!!`n%portable%`n%rule% %pppr%`n토털커맨더를 실행하여 실행하고자 하는 파일을 직접 찾으시겠습니까?, 10
IfMsgBox, ok
{
goto continue5
}
return
}
StringSplit, nwordarray, rule, :
StringRight, ndrrive, nwordarray1, 1
; SplitPath, InputVar [, OutFileName, OutDir, OutExtension, OutNameNoExt, OutDrive]
SplitPath, nwordarray2, nOFN, nOD, nOE, nONNEt, nODr
; 찾아낸 파일이 있는 폴더 안에 빈 파일을 만들때 - 사용할 포맷- 폴더는 해당 파일이 현재 존재하는 (포터블) 드라이브와 폴더
; --- 파일이름은 선택한 파일 명 [ 확장자는 없는 상태 ] \%nONNEt%
nnewfiledir = %ndrrive%:%nOD%
; 보통의 경우 목록에 기재된, 파일이 목록 파일이 있는 폴더 안에 있는 경우가 많다.
; 그러나 목록 폴더 밖에 있는 경우도 있다.
; 포터블 환경에서는 드라이브 명도 달라질 수 있다.
; 이런 경우 해당 파일의 압축파일을 만들어 사용하고자 할 때
; ●1: 목록 외 해당 파일이 위치한 폴더 (포터블 드라이브 + 목록외의 다른 폴더 + 파일이 존재하지 않을 때는 직접 기재해 넣은 폴더는 "제외" )에 압축 파일을 만들고, 해당 파일은 삭제하기를 원하는 경우가 대부분이다.
; 현재는 rar 만 지원하고, 이 압축을 사용할 때는 가장 보안이 좋은 옵션으로 실행하기로 한다. 암호도 항상 넣는 것으로 한다.
; 보통의 경우에는 압축관련사항은 토탈커맨더로 실행하는 것이 좋다고 본다.
If tttr = 0
Report =
If tttr = <> 0
Report =`n%portable%`n%rule% %pppr%`n
; 경로가 다른 드라이브 인 경우 안내 메세지 출력 -예: portable = 파일이 기재된 경로에 없어서 "목록파일(경로가 기재된 파일)이 위치한" 드라이브 안에서 pppr =을 대신 찾아 놓았습니다.
; 압축 파일 생성 옵션
MsgBox, 1, 보안삭제안내, 본 삭제는 보안목적의 삭제로서 기존 파일을 wipe형태로 삭제해 복구가 곤란합니다`n보안목적의 삭제가 아닌 경우 윈도우키 + P를 통해 토털커맨더에서 파일을 찾아 토탈커맨더에서 Del 키[휴지통삭제]나 Shift+Del 키를 눌러 삭제를 하십시오.`n실행하시면 이후 해당 파일은 복구가 곤란합니다.`n%Report%`n`n, 25
ifMsgBox, Cancel
return
{
Random, one1, 1111111,
Random, one2, 1111111,
Random, one3, 1111111,
sleep, 50
Sendinput, {home}{home}
sleep, 50
Sendinput, {Shift down}{end}{Shift up}
sleep, 50
Sendinput, {del}
sleep, 50
run, %A_scriptdir%\rar.exe a -ep -dw -hp%one1%P%one2%#%one3%W "%rule%-delete.rar" "%rule%", %nOD%
Sleep, 500
IfnotExist, %rule%-delete.rar
Sleep, 1000
IfnotExist, %rule%-delete.rar
Sleep, 1000
IfnotExist, %rule%-delete.rar
Sleep, 1000
IfnotExist, %rule%-delete.rar
Sleep, 1000
IfnotExist, %rule%-delete.rar
Sleep, 1000
IfnotExist, %rule%-delete.rar
Sleep, 1000
ifexist %windir%\Fonts\arial.ttf
{
FileCopy, %windir%\Fonts\arial.ttf, %rule%-delete.rar, 1
FileDelete, %rule%-delete.rar
MsgBox, 0, 보안삭제완료안내, %rule%파일의 보안삭제가 완료되었습니다., 5
}
ifNOTexist %windir%\Fonts\arial.ttf
{
FileDelete, %rule%-delete.rar
MsgBox, 0, 보안삭제완료안내, %rule%파일의 보안삭제가 완료되었습니다., 5
}
}
return
; ■ hwp 문서작업자용 핫키
; //////////////////////////
#a::
#IfWinActive , ahk_class HwpApp : 7.0
#a::
{
Sleep, 10
SendInput {Alt down}{Home}{Alt Up}
Sleep, 10
SendInput {F3}
Sleep, 100
SendInput {Alt down}{End}{Alt Up}
Sleep, 100
Sendinput, {ctrl down}
Sleep, 100
Sendinput, c
Sendinput, {ctrl up}
Sendinput, {right}
Sendinput, {left}
SendInput ///
Sleep, 100
WinActivate, ahk_class IEFrame
return
}
#d::
#IfWinActive , ahk_class HwpApp : 7.0 ;한글7-> 윈도우창 [페북창]으로옮기기
#d::
{
WinActivate, ahk_class IEFrame
return
}
#q::
{
WinActivate, ahk_class HwpApp : 8.0
WinActivate, ahk_class HwpApp : 7.0
return
}
#IfWinActive, ahk_class IEFrame
{
Enter::
SendInput {shift down}{enter}{shift up}
return
}
#IfWinActive, ahk_class IEFrame
{
+Enter::
SendInput {enter}
return
}
; ■ 수시 문서내용 백업저장하기용 핫키
; CyberArticle이나 웹에디터에서 문서 작성시 enter 키만 넣으면 바로 저장하기..
; 작업중 파일 용량 문제등으로 잦은 오작동이나 실행정지 멈춤현상을 일으키는 프로그램 사용시 문서내용 작성과정시 엔터키로 줄 바꿀 때 곧바로 함께 저장되게 함
Enter::
#IfWinActive , NamoWebEditor,
Enter::
SendInput {enter}
sleep, 50
SendInput {ctrl down}s{ctrl up}
return
; 핫키 배당 Winkey + E ;
; Cyberarticle 에서 import를 하이퍼 링크형태로만 import할 때 링크를 통해 열람만 가능한 문서 편집하기
; 하이퍼 링크로 import 한 경우
; 하이퍼링크를 통해 열람만 가능한 형태로 열려진 문서에서는 그냥 실행하면 됨
; 하이퍼 링크로 다른 문서를 연결시키는 부분에서는 해당 파일의 완전한 절대경로가 기재된 부분 위에 블록을 설정한 상태에서 사용함. (v003 에서는 윈도우키 + L 사용 권장)
#IfWinActive, CyberArticle,
#e::
{
; 실행전 복사한 내용을 보전함
before = %clipboard%
Clipboard =
sleep, 500
; CyberArticle 문서창에 기재된 경로부분(정확히는 window visible text)에서 경로를 추출해 이용할 수 있는 경우-- CyberArticle 에서만 사용가능.
WinGettext, url
; msgbox, url=%url% ; 정상작동확인용 메세지 출력
StringSplit, word_array, url, `r, ?,
SplitPath, word_array1, , , OutExt,
StringLeft, realpath, word_array1, 2
StringRight, real, realpath, 1
{
Clipboard=
Clipboard = %word_array1%
; msgbox, Clipboard=%Clipboard% ; 정상작동확인용 메세지 출력
Gosub, search
Gosub, execute1
Return
}
if real <> :
{
Sleep, 500
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
Sleep, 50
Sendinput, {LCtrl Down}c{LCtrl Up}
;StringSplit, OutputArray, InputVar [, Delimiters, OmitChars]
StringSplit, wordarray, AAA, :
; 해당 줄이 경로가 기재되지 않은 순수한 주석줄인 경우 실행하지 않음
if wordarray0 < 2
{
msgbox, Cyberarticle 내부 파일에서는 실행할 파일의 완전한 경로를 복사하거나 최소한 블록 설정한 상태에서 다시 사용하십시오,
Clipboard=
return
}
Gosub, search
Clipboard= %before%
Gosub, execute1
Return
}
}
; 휴식시간 슬라이드 쇼 실행시 작업계속을 위하여 슬라이드 화면을 모니터 한 쪽으로 움직이는 핫키
#IfWinEXIST, ahk_class SlideClass
^i::
WinMove, ahk_class SlideClass, , 0, 0, 400, 300, ; Move the splash window to the top left corner.
goto end
return
; 핫키배당 변경 -ctrl 키 추가★
#IfWinEXIST, ahk_class SlideClass
^o::
WinMove, ahk_class SlideClass, , (A_ScreenWidth-400), 0, 400, 300
goto end
return
; 핫키배당 변경 -ctrl 키 추가★
#IfWinEXIST, ahk_class SlideClass
^k::
WinMove, ahk_class SlideClass, , 0, (A_ScreenHeight-300), 400, 300
return
^l::
WinMove, ahk_class SlideClass, , (A_ScreenWidth-400), (A_ScreenHeight-300), 400, 300
return
#IfWinEXIST, ahk_class SlideClass
^j::
WinMove, ahk_class SlideClass, , (A_ScreenWidth/2-200), (A_ScreenHeight/2-150), 400, 300
return
; 핫키배당 변경 -ctrl 키 추가★
#IfWinEXIST, ahk_class SlideClass
^u::
WinMove, ahk_class SlideClass, , 0, 0, (A_ScreenWidth), (A_ScreenHeight)
sleep, 1500
MouseClick, Left, 15, 15, 1, 1,
return
;MouseClick [, WhichButton , X, Y, ClickCount, Speed, D|U, R]
; (A_ScreenWidth/2)-(Width/2), (A_ScreenHeight/2)-(Height/2)
; ★ 핫키배당 변경 -ctrl 키 추가
^p::
; kmplayer 를 사용시, 목록 이전을 행할 수 있다...
^p::
{
SEND {Esc}
SLEEP, 50
Winkill, ahk_class SlideClass
sleep 100
if given =
given = 10
EnvAdd, given, 1
; 위 3 줄은 자신의 목록의 종류에 따라 Random, given, 10, 33 이런 식으로 변경사용할 수 있음
{
run, %out%:\totalcmd\Plugins\xnview\xnview.exe %out%:\totalcmd\Plugins\xnview\sld\%given%.sld
}
else
{
given:="10"
ifexist, %out%:\totalcmd\Plugins\xnview\sld\%given%.sld
run, %out%:\totalcmd\Plugins\xnview\xnview.exe %out%:\totalcmd\Plugins\xnview\sld\%given%.sld,
else
{
ifexist, %out%:\totalcmd\Plugins\xnview\sld\%given%.sld
run, %out%:\totalcmd\Plugins\xnview\xnview.exe %out%:\totalcmd\Plugins\xnview\sld\default.sld
}
}
return
}
; 핫키 사용 해제★
#IfWinEXIST, ahk_class SlideClass
#s::
Suspend, Toggle
MsgBox , ,Hot key 정지 또는 재시작, Hot key 를 정지시키거나 또는 정지후 다시 되살리려면 본 키를 다시 누르시면 됩니다. , 3
return
; 각 핫키에서 공통실행할 실행 부분이 있는 경우
end:
; 스크립트 내역을 잘 살피고 각 핫키버튼을 테스트 마친 후 해당 경로들을 잘 편집 수정해서 - 삭제할 것은 삭제하고 사용하십시오....
; 제 시스템에서는 거의 대부분 정상 작동을 확인을 마친 상태에서 올립니당...
/ *
현재 블러그 페이지 및 웹페이지에 스크립트내용을 복사해 붙여 올리면,
웹페이지상에서는 스크립트 내용만 검토하시고,
스크립트 테스트를 위해서는 첨부파일을 다운로드 받아 압축을 풀어 확장자를 변경 저장한 후 사용하시기 바랍니다.
사용자가 내용을 검토하고 테스트를 충분히 한 후
자신의 시스템에서 실행하시기 바랍니다.
개별 사용자의 시스템 환경으로 시스템 상에 문제가 발생하거나 오작동이 발생하는 등의 일체의 경우에
본인은 책임을 지지 않습니다. (^^)
=> http://blog.paran.com/story007/46867974
다만, 각 스크립트 내용은 사용자가 개별적으로 편집사용하셔야 하며 비록 약간의 오류가 있다고 해도 차후 업데이트는 없다고 보심이 옳은 듯 합니다.(^^)
● 문서 재편집과정에서 cyberarticle 사용하기=> http://blog.paran.com/story007/46794611
● 웹 저작에 도움되는 cyberarticle => http://blog.paran.com/story007/46782111
● 문서작업시 전문 저술용 프로그램 등을 사용해야 하는 이유 => http://blog.paran.com/story007/46808162
● 블로그 글 쓰기와 순서정리하기 => http://blog.paran.com/story007/46504492
● 논문 소설 등 작성시 토털커맨더와 오토핫키 이용해 편집하기 [ = 토털커맨더 주석파일로 목록관리하기 ] => http://blog.paran.com/story007/46867974
● 문서작성시 Cyberarticle 없이 Cyberarticle과 비슷한 효과를 내기 [ = 토털커맨더 이용해 목록 쉽게 만들기 + 오토핫키 사용하기] => http://blog.paran.com/story007/46824937
● 텍스트 htm파일들을 책처럼 보는 프로그램 => http://blog.paran.com/story007/46766004
● 글 작성에 도움되는 편집기 Scrivener => http://blog.paran.com/story007/46501307
● Editplus로 autohotkey스크립트 짜고 테스트 실행하기 => http://blog.paran.com/story007/46881014
*/
;------- 스크립트 끝 -----------------------------
/ *
⇔[ 관련문서]⇔
● 문서 재편집과정에서 cyberarticle 사용하기=> http://blog.paran.com/story007/46794611
● 웹 저작에 도움되는 cyberarticle => http://blog.paran.com/story007/46782111
● 문서작업시 전문 저술용 프로그램 등을 사용해야 하는 이유 => http://blog.paran.com/story007/46808162
● 블로그 글 쓰기와 순서정리하기 => http://blog.paran.com/story007/46504492
● 논문 소설 등 작성시 토털커맨더와 오토핫키 이용해 편집하기 [ = 토털커맨더 주석파일로 목록관리하기 ] => http://blog.paran.com/story007/46867974
● 문서작성시 Cyberarticle 없이 Cyberarticle과 비슷한 효과를 내기 [ = 토털커맨더 이용해 목록 쉽게 만들기 + 오토핫키 사용하기] => http://blog.paran.com/story007/46824937
● 텍스트 htm파일들을 책처럼 보는 프로그램 => http://blog.paran.com/story007/46766004
● 글 작성에 도움되는 편집기 Scrivener => http://blog.paran.com/story007/46501307
● Editplus로 autohotkey스크립트 짜고 테스트 실행하기 => http://blog.paran.com/story007/46881014
{!-- 관련 문서 링크--}
'올린글-게시판 > 사진과컴퓨터&story' 카테고리의 다른 글
과연 승급을 할 것인가.. (0) | 2012.03.17 |
---|---|
Editplus로 autohotkey스크립트 짜고 테스트 실행... (0) | 2012.03.16 |
문서작성시 Cyberarticle 없이 비슷한 효과를 얻기... (0) | 2012.03.09 |
cyberarticle 용 autohotkey 스크립트 파일 (0) | 2012.03.07 |
문서작업시 Cyberarticle을 사용해야 하는 이유 (0) | 2012.03.06 |