Многие разработчики сталкиваются с ситуацией — нужно написать функцию, очень похожую на ту, что когда-то уже приходилось писать. Или вообще, повторно использовать ранее написанную функцию. Часто после этого начинаются танцы с саблями — где именно сохранился её код? Иногда — в файлах старого проекта (он не всегда доступен), иногда — в каком-нибудь внешнем файлике, который непонятно где лежит.
В принципе, неплохое решение — отдельный блокнот в Evernote. При правильной организации блокнотов и меток, полностью решает проблему.
Однако для MacOS есть более изящное решение под названием Quiver. Этакий «Эвернот для программиста». Выглядит так:
Организация заметок — блокноты и неограниченное количество тегов, есть полноценный поиск.
В заметке можно создавать области четырёх видов — просто текст, markdown, программный код и LaTeX. Выглядит так.
Текстовый фрагмент (при желании, можно добавить картинку):
Фрагмент кода (в моём случае это SQL, но поддерживается целое море языков):
Markdown в режиме конструктора (синтаксис стандартный):
Markdown в режиме просмотра:
LaTeX в режиме конструктора:
LaTeX в режиме просмотра:
Отображение областей каждого типа можно настроить при помощи CSS (есть встроенный редактор), в комплекте есть пачка тем для подсветки синтаксиса (я использую GitHub):
Приложение умеет показывать код в режиме презентации:
Библиотеку приложения можно положить в папку Dropbox для синхронизации, используются стандартный JSON формат.
Недостатки инструмента:
Если положить библиотеку в папку Dropbox, для создания нового блокнота придётся отключать синхронизацию, иначе просто не успеете задать ему имя. Надеюсь, этот баг разработчики в скором времени поправят.
Неудаляемый блокнот с туториалом. Хотя, может быть его и можно как-то удалить, чтобы не маячил.