Насколько я могу судить, org-mode
вложения решают ту же проблему, что и файловые гиперссылки, но более неуклюже. В каких ситуациях приложения будут лучшим решением?
Насколько я могу судить, org-mode
вложения решают ту же проблему, что и файловые гиперссылки, но более неуклюже. В каких ситуациях приложения будут лучшим решением?
Ответы:
Иногда гиперссылка может быть чем-то эфемерным, например, файлом журнала или файлом, редактируемым другими. Вложения позволяют вам постоянно фиксировать текущее состояние файла более удобным способом, чем копирование файла в надежное место и привязку к нему вручную.
Это также может распространяться на доступ в Интернет. Если вы хотите получить доступ к файлу без доступа в Интернет, вы можете прикрепить его к файлу org.
Но, наоборот, вложения могут мягко ссылаться на местоположение, тогда как гиперссылки не могут хранить локальную копию. Когда вложения мягко ссылаются на документ ( C-c C-a y
), org-mode создает символическую ссылку на файл, если это возможно в вашей операционной системе (эквивалентно ln
системе * nix). Другие методы ( C-c C-a c/m/l
) обеспечивают другое поведение. По умолчанию ( C-c C-a a
) является одним из них, как установлено org-attach-method
.
Вы также можете указать каталог вложений и заполнить этот каталог. org-attach-sync
затем синхронизирует метаданные вложения, чтобы заголовок знал о новых файлах. Вы не можете сделать это с помощью гиперссылок, не используя глобализацию или скрипты.
Вы можете получить список всех вложенных файлов через org-attach-file-list
, что позволяет вам перебирать их все и делать полезные вещи, такие как копирование в папку Dropbox или сохранение в git. Перебор гиперссылок в разделе намного сложнее и подвержен ошибкам.
Еще одна причина для рассмотрения вложений поверх гиперссылок заключается в том, что они связывают ссылку с заголовком org без необходимости помещать ее в текст. Метаданные вложения хранятся в ящике свойств, который можно скрыть TAB
.
Гиперссылки должны существовать в тексте, как правило, в форме [[file:somefile.pdf][My file]]
. Вы можете также потенциально скрыть эту гиперссылку в свойстве, но тогда вы более или менее реплицируете org-attach
без простоты использования.
Короче говоря, хотя гиперссылки могут связывать другие документы с заголовком, они org-attach
делают эту связь более прочной, надежной и в некоторых отношениях более удобной в использовании.
Отредактировано: добавлено уточнение.
Одним из основных преимуществ использования вложений над ссылками является то, что они org-mode
могут позаботиться о внесении любых изменений во вложенный файл, если они находятся под контролем версий. Цитата из Руководства :
[...] Если вы инициализируете этот каталог [тот, в котором находится вложение] с помощью git init, Org автоматически сохранит изменения, когда увидит их.
(добавлен курсив для объяснения).
При правильном использовании функция прикрепления гарантирует, что прикрепленные файлы всегда обновляются и сопровождают .org
файл.
Я бы сказал, что использование ссылок - лучший выбор, если вы
.org
каждом изменении / когда-либоДля меня вложения являются своего рода dwim
подходом «делай, что я имею в виду» к файлам, которые должны быть включены или на которые есть ссылки в .org
файле.