Відстежуйте елементи "TODO" під час написання коду


18

Чи існує простий спосіб створити список "завдань" під час написання коду? Наприклад, припустимо, що я пишу функцію, write-this-nowколи розумію, що мені також знадобиться написати функцію підтримки write-this-later.

(defun write-this-now ()
  (unless (write-this-later) ...

Замість того, щоб зупинятись на створенні write-this-later, я заздалегідь заряджаю так, ніби це вже існувало. Однак я також хочу зробити собі зауваження, що мені все-таки потрібно повернутися пізніше і створити його.

Одне рішення, яке я використовував у минулому, - це додати коментар до слова TODO

(defun write-this-now ()
  (unless (write-this-later) nil))  ; TODO create function `write-this-later`

Тепер я можу пізніше повернутися і пошукати файл у виникненні слова TODO, і знайду цю маленьку записку, яку я залишив для себе.

Чи є там якісь пакети чи розширення для полегшення створення та відстеження елементів TODO у файлі чи проекті?

Чи можу я об'єднати всі елементи TODO з поточного проекту в єдиний список справ? Чи можу я додати в свій список завдань закладки, які посилаються на місця, де я написав елементи TODO?


2
Простий, але ефективний спосіб зробити це - використовувати проект grep / awk / ack для снаряда для TODO. Це те, що я зазвичай роблю
J David Smith

Відповіді:


18

Ви можете спробувати скористатися захопленням org . Коли ви ініціюєте org-captureсвій вихідний файл, він вставить елемент TODO у файл режиму org із посиланням на відповідну область у вихідному коді. org-captureдостатньо розумний, щоб захоплювати контекстно-залежні посилання - наприклад, якщо ви посилаєтесь на нього в повідомленні в GNUS, він буде захоплювати посилання безпосередньо на це повідомлення.


1
Це виглядає надзвичайно схоже на те, що я описав. Можливо, я використовував захоплення орга в іншому житті.
nispio

16

fixmee-mode пропонує виділення таких приміток та навігацію.

Він легко встановлюється з MELPA та підтримує різні пріоритети елементів todo.


1
Це цікавий підхід. Дійсно немає ключових прив’язок для запам'ятовування, якщо ви цього не хочете. Основна перевага, яку я бачу над просто прив'язкою до елементів TODO, полягає в тому, що ви можете призначити їм пріоритет, додаючи символи.
nispio

2

Хоча це не зовсім тематичне значення для emacs, я використовую простий трюк, щоб створити заглушку методу / властивості / що завгодно, коли я потрапив у той момент "робити", що не містить нічого більше, ніж твердження, що говорить "Напиши мені!" або подібне.

Потім код збирається чисто і повідомляє мені під час виконання, де знаходяться мої елементи TODO.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.