Linkmarks.el leverages org-mode for bookmarks so you can:
- Keep your bookmarks in org-mode
- Organize them any way you want
- Use any supported link type as a bookmark!
- Use org-capture for new bookmarks.
- Easily edit bookmarks by hand
- Export to the web!
(el-get-bundle linkmarks
:url "https://github.com/dustinlacewell/linkmarks.git"
:features linkmarks)
(use-package linkmarks
:straight (linkmarks :type git :host github :repo "dustinlacewell/linkmarks"))
The only setting you need to configure is linkmarks-file
:
(setq linkmarks-file "~/org/bookmarks.org")
To create a new bookmark, execute M-x linkmarks-capture
or bind it to key of your
choice. It will ask for a title, and then allow you to enter in the link data. The
default template looks like this:
* Bookmark Title
[[link content goes here]]
added: [2018-08-30 Thu 03:53]
Use C-c C-w
to refile into your bookmarks!
To select and visit a bookmark, execute M-x linkmarks-select
or bind it to a key. It
will prompt you with completing-read
and visit your selection.
Your bookmark file is just a normal org-mode file. The way a bookmark is defined is simple enough: Any header followed by a link on the next line is a bookmark.
You can nest bookmarks, you can have headings that are purely organizational, you can have additional notes or anything else. The only thing that matters are headings followed by an org-mode link.
As usual, files can be linked to by simply specifying their path:
* My Emacs Config
[[~/.emacs.d/init.el]]
* First TODO
[[~/org/todo.org::TODO]]
* Foo Project
[[~/org/projects.org::*Foo]]
This is quite useful:
* XDG config home
[[elisp:(helm-find-files-1 "~/.config/")]]
You can have bookmarks that run arbitrary elisp!
* Start Playlist
[[elisp:(start-playlist (completing-read "playlist" '("rock" "hiphop" "bluegrass")))]]
There are many stock link types you can check out.
You can even make your own!