
계층적 태깅 및 파일 링크를 지원하는 터미널 기반 노트 관리자
| 🇬🇧 영어 | 🇮🇹 이탈리아어 |
|---|

NotaMy는 장기 분석 작업(모의 침투, 리버스 엔지니어링, 워게임)을 수행하는 사람들을 위해 컨텍스트 전환의 정신적 비용을 줄이기 위해 설계된 계층적 터미널 기반 기술 노트 관리자입니다.
모의 침투 활동과 바이너리 분석을 시작했을 때, 나는 곧 한 가지를 깨달았습니다.
문제는 노트를 작성하는 것이 아니라, 시간이 지남에 따라 이를 관리하는 것입니다.
분석은 며칠 또는 몇 달 동안 지속될 수 있습니다. 그 동안 메모리 주소, 테스트 출력, 디스어셈블리, 의심스러운 동작, 실패한 시도, 확인해야 할 아이디어 등이 축적되며, 이 모든 것이 종종 파일과 폴더에 흩어져 끝나곤 합니다.
결과는 혼란입니다. 흩어진 파일들 사이에서 정보를 계속 찾는 것은 정신적 흐름을 방해하고 조사 속도를 늦춥니다.
NotaMy는 이러한 마찰을 제거하기 위해 만들어졌습니다: 컨텍스트 전환 비용을 줄이면서 모든 정보를 셸에서 접근 가능하고, 정리되어 있으며, 검색 가능하게 유지합니다.
NotaMy는 텍스트 편집기가 아닙니다. 마크다운 시스템도 아닙니다. 그래픽 애플리케이션도 아닙니다.
터미널 우선 환경에서 기술 지식을 노트 파일(컨텍스트)과 노드/태그의 계층적 트리 구조로 구성하기 위한 최소한의 시스템입니다.
각 노트 파일은 프로젝트 또는 조사를 나타냅니다. 파일을 전환하는 것은 정신적 공간을 전환하는 것을 의미합니다.
예:
ntm view file

다음과 같이 컨텍스트를 전환할 수 있습니다:
ntm setting 2
노트는 트리 구조의 노드로 구성됩니다. 각 노드는 다음을 포함할 수 있습니다:
포스트잇 하나부터 책 한 권까지 저장할 수 있습니다. 모두 같은 장소에.
예:
ntm view note

**#**는 노트에 확장 가능한 텍스트가 포함되어 있음을 나타냅니다.
각 노드를 펼쳐 내용을 볼 수 있습니다:
ntm view note -b

ntm add note -t "태그" -c "짧은 주석"
ntm add note -t "태그" -c "주석" -b
편집기가 열리면 저장하고 종료하면 본문이 노트에 삽입됩니다.
NotaMy는 다음에 해당하는 사람들을 위해 설계되었습니다:
다음과 같다면 아마 적합하지 않습니다:
NotaMy는 최소한에 집중합니다.
NotaMy는 개인적인 필요에서 탄생했습니다:
컨텍스트 전환의 정신적 비용을 줄이기 위해.
노트가 문제가 아닙니다. 복잡성이 문제입니다.
2020년에 "Note Management"라는 기본 버전으로 시작했습니다: 단순한 구조화된 텍스트. 이미 유용했습니다. 그 다음 MemoKeeper와 MemoKeeperX가 나왔으며, 별도의 파일과 태그를 제공했습니다. 시간이 지나면서 제 일상 워크플로우(모의 침투, 공부, 아이디어, 작은 프로젝트)의 일부가 되었습니다.
NotaMy는 그 워크플로우의 성숙한 버전입니다: 최소한, 신뢰할 수 있으며, 제 작업 방식에 맞게 조정되었습니다.
NotaMy가 왜 그리고 어떻게 탄생했는지 알고 싶으신가요? 프로젝트의 철학 문서를 읽어보세요.
git clone https://github.com/IMprojtech/NotaMy.git
cd NotaMy
make
./bin/ntm
NotaMy를 PATH에 추가ntm 컴파일 후, 전체 경로를 입력하지 않고 어디서든 실행하고 싶을 수 있습니다. 일반적인 방법은 다음과 같습니다:
sudo cp ./bin/ntm /usr/local/bin/
sudo cp ./bin/ntm_nc /usr/local/bin/
또는, sudo 없이 로컬 설치를 선호하는 경우:
mkdir -p "$HOME/.local/bin"
cp ./bin/ntm "$HOME/.local/bin/"
cp ./bin/ntm_nc "$HOME/.local/bin/"
해당 디렉토리가 PATH에 있는지 확인하세요. 대부분의 리눅스 배포판은 /usr/local/bin을 기본으로 포함합니다. ~/.local/bin을 사용한 경우, 셸 초기화 파일에 이를 PATH에 추가했는지 확인하세요. 예를 들어, ~/.bashrc 또는 ~/.zshrc에:
# 아직 없는 경우 추가:
export PATH="$HOME/.local/bin:$PATH"
또는, bin 디렉토리를 셸 초기화 파일에 직접 추가할 수도 있습니다:
export PATH="$HOME/path/to/NotaMy/bin:$PATH"
NotaMy는 핵심 C 프로그램을 수정하지 않고 사용자 경험을 향상시키는 선택적 Zsh 래퍼를 제공합니다.
래퍼는 다음을 추가합니다:
ntm 명령bat을 통한 자동 페이지 매김fview 함수 (fzf + bat)nocolor 함수래퍼를 사용하면 명령어 앞에 번호를 배치하여 활성 파일을 임시로 전환할 수 있습니다:
ntm 1 view note
플러그인 파일을 ~/.zshrc에 추가하세요:
source /path/to/NotaMy/shell/zsh/notamy.plugin.zsh
그런 다음 셸을 다시 로드하세요:
source ~/.zshrc
⚠️ Zsh 통합은 완전히 선택 사항입니다. 핵심 C 애플리케이션은 독립적으로 작동합니다.
설치 지침, 사용 예제 및 지원되는 모든 명령어가 포함된 완전한 사용자 매뉴얼을 이용할 수 있습니다:
이 프로그램은 GNU 일반 공중 라이선스(GPL) 조건에 따라 배포되며, 자유 소프트웨어 표준에 따라 소프트웨어를 재배포 및 수정할 수 있는 자유를 보장합니다.
작성자: Catoni Mirko (IMprojtech)