ptsm

Plain Text Self Management Framework (rus)

View on GitHub

Plain Text Self Management (PTSM)

Система хранения информации, управления задачами и собой на основе простых текстовых файлов - списков, заметок, чек-листов - в формате Markdown (.md), обернутых рядом идей Максима Дорофеева из книги “Путь джедая” и моих мыслей (из книги, которой нет):

1) Plain text обеспечивает возможность быстро вносить новые задачи и менять старые, редактировать их в любом текстовом редакторе (VS Code, Sublime, Atom, Typora или даже Блокнот), удобно искать по содержимому всех файлов системы и манипулировать ими с помощью скриптов на python или консольных команд. Markdown используется ванильный или слегка обогащенный GitHub-flavored синтаксисом, а также привычным синтаксисом мессенджеров / систем управления задачами (например, @ для указания на персону).

2) Принципы и техники из “Пути джедая” помогают делать задачи, завершать проекты и меньше париться из-за ерунды.

3) Принципы и техники из моей головы склеивают части PTSM в одно целое и объясняют, в чем удобство этого добра.

Quick Start

  1. Скачать содержимое репозитория PTSM или выполнить в консоли:

     git clone https://github.com/medotkato/ptsm.git
    
  2. Установить Visual Studio Code
  3. Запустить VS Code, выбрать File-> Open Folder и указать папку с PTSM
  4. Когда VS Code после открытия папки предложит (в правом нижнем углу) установить расширения, нажать Install All
  5. Выбрать README.md слева в списке файлов и внимательно его прочитать (разделы “Содержимое” и “Рекомендации” ниже)
  6. Переделать все под себя и have fun

Еще можно добавить путь к папке /tools в PATH, тогда будут в любом каталоге работать скрипты сборки из .md в .docx и .pdf (надо настроить пути для складывания выходных файлов и для забора css стилей в tools/ptsm.ini)

Опциональный пункт: написать в Issues, что и как можно улучшить

Содержимое PTSM

Иногда содержимое PTSM в этом репозитории обновляется, меняется, дополняется.

Основные файлы и папки в репозитории:

В корень также имеет смысл класть файлы, применимые ко всему содержимому системы - например, файлы workspace для текстовых редакторов (VS Code).

Для примера в папках уже лежат какие-то файлы, например, каких-то условных проектов с каким-то условным содержимым, иллюстрирующим идею того или иного компонента системы.

Основные файлы в /notes

Основные папки в /notes

Рекомендации

По системе

  1. Не страдать перфекционизмом.

    Главное - просто вести систему, она не обязана быть идеальной в каждую секунду своего существования. Чтобы система приносила пользу, систематичность ее использования должна быть важнее качества ее заполнения. Качество можно подтягивать в свободное время.

    Лучше записать на скорую руку и потом когда-то разобрать, чем не записать вообще. Например, если появляется что-то для еженедельной проработки, запиши это как-то в чек-лист еженедельный и потом, когда до него дойдешь на ревью, тогда и подумаешь, поправишь и перенесешь в нужное место. Когда сделал невнесенную ранее в список задачу - запиши коротко, о чем это было. Подробное описание задачи (в формате “Команда: Проект: Задача”, который помогает думать после выполнения задачи) можно будет добить на ежедневном (еженедельном ревью).

  2. Использовать для оперативных заметок что-то мобильное с синхронизацией - например, Simplenote на телефоне. В этом случае на ходу в Simplenote пишется идея, а потом при доступе к ноуту открывается десктопный клиент Simplenote и оттуда заметки переезжают в Inbox.md

  3. Для записи проектов и задач использовать формат “Команда: Проект” и “Команда: Проект: Задача”. Здесь я когда-нибудь напишу об этом подробнее. Но мне так зашло лучше всего (от общего к частному). И сортировать потом удобнее: например, вешаем на кнопку команду Sort Lines Ascending, выделяем пачку задач за день или задач в списке “на потом”, жмем эту кнопку и получаем список задач, отсортированный по командам и проектам - сразу видно, над чем мы сегодня трудились больше всего или какие направления у нас наполнены (или недозаполнены) задачами. Скажем, если в списке Upcoming маловато строчек, начинающихся с “Me:” (я сам лично, что-то для меня, родного) или “Family:” (семья и семейные проекты), то это тревожный звоночек - похоже, нас переклинивает в работу (кончится это плохо).

По технике

  1. Использовать Visual Studio Code - он из коробки умеет в такие классные штуки, как быстрый нечеткий поиск по именам файлов (Ctrl+P), содержимому всех файлов проекта (Ctrl+Shift+F), подсветка для Markdown, переход по ссылкам на другие документы системы по Ctrl+click (что крайне удобно для обеспечения связи файлов системы между собой), отображение Outline (автосборка оглавления файла по заголовкам), работа с вкладками и консолью (не выходя из редактора) и кастомизация функционала плагинами. Sublime это тоже все вроде как может, но я его с PTSM не пробовал.

    Для VS Code (это по-умолчанию включено у меня в настройках проекта) советую:

    • включить автодополнение - так быстрее вводить заметки
    • использовать markdownlint - сначала он дико бесит (как и любой корректор), но потом помогает сделать текст чище (привыкаешь писать валидный md)
    • установить расширения, указанные в перечне рекомендованных расширений - при открытии VS Code сам предложит это сделать на основе данного списка (либо можно зайти в Extension и, нажав на кнопку “…”, выбрать ‘Show recommended extensions’)

    Плагины, которые я сам использую:

    • Markdown All in One (переходы по внутренним ссылкам, синтаксис жирного выделения по Ctrl+b и т.д.)
    • Markdownlint (линтер для корректного и красивого md)
    • Replace Rules (чтобы создавать правила замены на основе регулярных выражений и вешать их на сочетания клавиш (в моем случае - ctrl+d для смены минуса на плюс в начале строки у задачи (“не выполненная” на “выполненная”)).
    • Simple New File (для создания нового файла из command palette с автодополнением пути)
  2. Установить Pandoc - это консольная утилита, которая позволяет форматировать одни документы в другие, например, .md в .docx. На нее завязан скрипт /tools/md2docx.bat, который конвертирует заданный .md файл в вордовский документ со всем нужным форматированием (заголовками). Мне такое часто нужно - например, для оформления статей, документации и аналитических материалов (не все коллеги готовы потреблять чистый .md).

  3. Внести путь к папке /tools в системную переменную PATH (чтобы запускать лежащие там скрипты без указания полного пути к ним).

  4. Для обеспечения бэкапа и возможности работы с PTSM из разных мест синхронизировать папку системы с облачным хранилищем: OneDrive, Dropbox, Box, Яндекс.Диск, MEGA и т.д. Для обеспечения двойного резервирования, можно еще и на github коммитить изменения (например, скриптом)

May the Force be with you, друг.