diff options
-rw-r--r-- | .dir-locals.el | 1 | ||||
-rw-r--r-- | NEWS | 14 | ||||
-rw-r--r-- | README.org | 50 | ||||
-rw-r--r-- | bog-todo | 6 | ||||
-rw-r--r-- | bog.el | 56 |
5 files changed, 64 insertions, 63 deletions
diff --git a/.dir-locals.el b/.dir-locals.el new file mode 100644 index 0000000..db35973 --- /dev/null +++ b/.dir-locals.el @@ -0,0 +1 @@ +((nil . ((sentence-end-double-space . t)))) @@ -8,27 +8,27 @@ - In addition to =bog-find-citekey-file= and =bog-find-citekey-bib=, most functions will now prompt with set of citekeys when prefix - argument is given. What this list is depends on the function. + argument is given. What this list is depends on the function. - When locating a citekey from the notes fails, functions will now prompt with a list of citekeys instead of giving an error. - Bog commands are now available outside of Org buffers through - =bog-commander=. This is based off of =projectile-commander=. The - custom Bog commands for the Org agenda have been removed because this - functionality is now available through =bog-commander=. + =bog-commander=. This is based off of =projectile-commander=. The + custom Bog commands for the Org agenda have been removed because + this functionality is now available through =bog-commander=. - New command =bog-citekey-tree-to-indirect-buffer= opens the subtree - for a citekey in an indirect buffer. The citekey is either taken from + for a citekey in an indirect buffer. The citekey is either taken from at point or selected from all heading citekeys. - New command =bog-insert-heading-citekey= prompts with all heading citekeys and inserts the selected one at point. - New command =bog-open-first-citekey-link= opens the first link found - under the subtree of a citekey. This is particularly useful if you + under the subtree of a citekey. This is particularly useful if you place the main link for the study (usually a DOI link) as the first - link in the citekey's subtree. The citekey is either taken from at + link in the citekey's subtree. The citekey is either taken from at point or selected from all heading citekeys. ** Other changes @@ -5,7 +5,7 @@ [[https://travis-ci.org/kyleam/bog][https://travis-ci.org/kyleam/bog.svg]] [[http://melpa.org/#/bog][http://melpa.org/packages/bog-badge.svg]] -Bog is a system for taking research notes in [[http://orgmode.org/][Org mode]]. It adds a few +Bog is a system for taking research notes in [[http://orgmode.org/][Org mode]]. It adds a few research-specific features, nearly all of which are focused on managing and taking notes with Org, not on writing research articles with Org. @@ -22,13 +22,13 @@ To enable Bog in all Org buffers, add it to =org-mode-hook=. * Workflow The Bog workflow is focused around the citekey, which is the only study -information that must be included in the notes. This unique identifier +information that must be included in the notes. This unique identifier is used as a link to the BibTeX file and other associated files. -In the example below, the citekey "name2000word" is a study heading. A +In the example below, the citekey "name2000word" is a study heading. A study heading is defined as a heading the has a citekey as a title or as -the value of =bog-citekey-property=. When a citekey occurs anywhere else -(like "another1999study" below), they are taken as a reference to +the value of =bog-citekey-property=. When a citekey occurs anywhere +else (like "another1999study" below), they are taken as a reference to another study (which may or may not have a subtree in this or another Org file). @@ -44,7 +44,7 @@ Org file). #+end_example The default format for the citekey is the first author's last name, the -year, and then the first non-trivial word. To have BibTeX mode +year, and then the first non-trivial word. To have BibTeX mode automatically generate a key of this format, the =bibtex-autokey-*= settings can be modified. @@ -58,10 +58,10 @@ settings can be modified. * Main features -Many Bog functions take the citekey from the notes. If the point is on a -citekey (like "another1999study" above), then that citekey will be used. -If this fails, many functions will try to take the citekey from the -first parent heading that is a study heading. +Many Bog functions take the citekey from the notes. If the point is on +a citekey (like "another1999study" above), then that citekey will be +used. If this fails, many functions will try to take the citekey from +the first parent heading that is a study heading. - =bog-find-citekey-file= @@ -77,9 +77,9 @@ first parent heading that is a study heading. - =bog-search-citekey-on-web= - Search Google Scholar for a citekey. The default citekey format (first - author's last name, year, and first non-trivial word) usually contains - enough information to make this search successful. + Search Google Scholar for a citekey. The default citekey format + (first author's last name, year, and first non-trivial word) usually + contains enough information to make this search successful. - =bog-rename-staged-file-to-citekey= @@ -87,14 +87,14 @@ first parent heading that is a study heading. - =bog-clean-and-rename-staged-bibs= - Rename new BibTeX files. If a separate BibTeX file is used for each + Rename new BibTeX files. If a separate BibTeX file is used for each citekey, this function can be used to rename all new BibTeX files. =bibtex-clean-entry= is used to clean the entry and autogenerate the key. - =bog-create-combined-bib= - Generate a combined BibTeX file for all citekeys in buffer. This is + Generate a combined BibTeX file for all citekeys in buffer. This is useful if single-entry BibTeX files are used. Other useful functions include @@ -127,24 +127,24 @@ The variables below are important for specifying how Bog behaves. - =bog-find-citekey-bib-function= - A function to find a citekey in a BibTeX file. This determines whether - a directory of single-entry BibTeX files or a single BibTeX file is - used. + A function to find a citekey in a BibTeX file. This determines + whether a directory of single-entry BibTeX files or a single BibTeX + file is used. * Keybindings -A keymap is defined for Bog under the prefix =C-c "=. If you prefer +A keymap is defined for Bog under the prefix =C-c "=. If you prefer something else (like =C-c b=), set =bog-keymap-prefix=. Some Bog functions are useful outside of an Org buffer (e.g., -=bog-search-notes=). These functions are available through the -=bog-commander= interface (based of off =projectile-commander=). This +=bog-search-notes=). These functions are available through the +=bog-commander= interface (based of off =projectile-commander=). This can be bound to a global key for quick access. * Other approaches If Bog doesn't fit your workflow, there are a good number of other -approaches to explore. On the Org mode mailing list, there are some [[http://thread.gmane.org/gmane.emacs.orgmode/78983][nice]] -[[http://thread.gmane.org/gmane.emacs.orgmode/14756][descriptions]] of systems people have come up with for taking research -notes in Org. For a package that focuses on both taking research notes -and writing research articles, look into [[https://github.com/jkitchin/jmax/blob/master/org/org-ref.org][Org-ref]]. +approaches to explore. On the Org mode mailing list, there are some +[[http://thread.gmane.org/gmane.emacs.orgmode/78983][nice]] [[http://thread.gmane.org/gmane.emacs.orgmode/14756][descriptions]] of systems people have come up with for taking +research notes in Org. For a package that focuses on both taking +research notes and writing research articles, look into [[https://github.com/jkitchin/jmax/blob/master/org/org-ref.org][Org-ref]]. @@ -11,7 +11,7 @@ Some citekeys are not highlighed until the surrounding text is altered. ** DONE Function for getting all citekeys in notes -Perhaps use a cache file. This could be used in +Perhaps use a cache file. This could be used in `bog-search-citekey-on-web' and `bog-rename-staged-pdf-to-citekey'. ** DOC Mention useful tools @@ -46,8 +46,8 @@ Default could be "*.tex". ** DONE Generalize PDF functions in bog -Replace bog-find-citekey-pdf with bog-find-citekey-file. The extensions -that will be considered could be customized. Rebind this to "f". +Replace bog-find-citekey-pdf with bog-find-citekey-file. The extensions +that will be considered could be customized. Rebind this to "f". bog-rename-staged-pdf-to-citekey would be bog-rename-staged-file-to-citekey and could use the same customized extensions (or maybe just take the extension from the original file). @@ -24,8 +24,8 @@ ;;; Commentary: ;; ;; Bog provides a few convenience functions for taking research notes in -;; Org mode. Many of these commands center around a citekey, the unique -;; identifier for a study. See the README +;; Org mode. Many of these commands center around a citekey, the unique +;; identifier for a study. See the README ;; (https://github.com/kyleam/bog) for more information. ;;; Code: @@ -137,7 +137,7 @@ where <sep> is one of these characters.") (defcustom bog-file-renaming-func 'bog-file-ask-on-conflict "Function used to rename staged files. This function should accept a file name and a citekey as -arguments and return the name of the final file. Currently the +arguments and return the name of the final file. Currently the only built-in function is `bog-file-ask-on-conflict'.") (defcustom bog-file-secondary-name "-supplement" @@ -177,8 +177,8 @@ level to operate on." "Cache list of all citekeys. Depending on the number of citekeys present in notes, enabling this can make functions that prompt with a list of all -citekeys (or all heading citekeys) noticeably faster. However, no -attempt is made to update the list of citekeys. To see newly +citekeys (or all heading citekeys) noticeably faster. However, +no attempt is made to update the list of citekeys. To see newly added citekeys, clear the cache with `bog-clear-citekey-cache'." :group 'bog :type 'boolean) @@ -189,8 +189,8 @@ added citekeys, clear the cache with `bog-clear-citekey-cache'." (defmacro bog-selection-method (name context-method collection-method) "Create citekey selection function. Function will be named bog-citekey-from-NAME and will take one -argument (NO-CONTEXT). If NO-CONTEXT is nil, CONTEXT-METHOD will -be called with no arguments. If CONTEXT-METHOD returns nil or if +argument (NO-CONTEXT). If NO-CONTEXT is nil, CONTEXT-METHOD will +be called with no arguments. If CONTEXT-METHOD returns nil or if NO-CONTEXT is non-nil, the user will be prompted with citekeys gathered by COLLECTION-METHOD." `(defun ,(intern (concat "bog-citekey-from-" name)) (no-context) @@ -348,7 +348,7 @@ The citekey will be taken from the text under point if it matches `bog-citekey-format' or from the current tree. With prefix argument NO-CONTEXT, a prompt will open to select -from citekeys for all associated files. This same prompt will be +from citekeys for all associated files. This same prompt will be opened if locating a citekey from context fails." (interactive "P") (bog--find-citekey-file (bog-citekey-from-notes-or-files no-context))) @@ -386,7 +386,7 @@ The citekey will be taken from the text under point if it matches `bog-citekey-format' or from the current tree. With prefix argument NO-CONTEXT, a prompt will open to select -from all citekeys present in notes. This same prompt will be +from all citekeys present in notes. This same prompt will be opened if locating a citekey from context fails. If the citekey file prompt is slow to appear, consider enabling @@ -412,8 +412,8 @@ If the citekey file prompt is slow to appear, consider enabling (defun bog-file-ask-on-conflict (staged-file citekey) "Rename citekey file, prompting for a new name if it already exists. STAGED-FILE will be renamed to <citekey>.<ext> within -`bog-file-directory'. If this file already exists, the user will -be prompted for another name. `bog-file-secondary-name' can be +`bog-file-directory'. If this file already exists, the user will +be prompted for another name. `bog-file-secondary-name' can be used to control the default string used in the prompt." (let* ((ext (file-name-extension staged-file)) (citekey-file (bog-citekey-as-file citekey ext))) @@ -426,7 +426,7 @@ used to control the default string used in the prompt." ext)))) (setq new-file-name (read-string - (format "File %s already exists. Name to use instead: " + (format "File %s already exists. Name to use instead: " citekey-file) new-file-name nil nil '(new-file-name))) (setq citekey-file (expand-file-name new-file-name bog-file-directory)) @@ -473,7 +473,7 @@ The variable `bog-find-citekey-bib-func' determines how the citekey is found. With prefix argument NO-CONTEXT, a prompt will open to select -from citekeys for all BibTeX files. This same prompt will be +from citekeys for all BibTeX files. This same prompt will be opened if locating a citekey from context fails." (interactive "P") (funcall bog-find-citekey-bib-func @@ -592,7 +592,7 @@ The citekey will be taken from the text under point if it matches `bog-citekey-format' or from the current tree. With prefix argument NO-CONTEXT, a prompt will open to select -from all citekeys present in notes. This same prompt will be +from all citekeys present in notes. This same prompt will be opened if locating a citekey from context fails. If the citekey file prompt is slow to appear, consider enabling @@ -617,7 +617,7 @@ The citekey will be taken from the text under point if it matches `bog-citekey-format'. With prefix argument NO-CONTEXT, a prompt will open to select -from all citekeys for headings in the current buffer. This same +from all citekeys for headings in the current buffer. This same prompt will be opened if locating a citekey from context fails. This only works for headings that store the citekey as the @@ -647,8 +647,8 @@ The citekey will be taken from the text under point if it matches `bog-citekey-format'. With prefix argument NO-CONTEXT, a prompt will open to select -from all citekeys for headings in notes. This same prompt will be -opened if locating a citekey from context fails. +from all citekeys for headings in notes. This same prompt will +be opened if locating a citekey from context fails. If the citekey file prompt is slow to appear, consider enabling `bog-use-citekey-cache'. @@ -686,8 +686,8 @@ The citekey will be taken from the text under point if it matches `bog-citekey-format'. With prefix argument NO-CONTEXT, a prompt will open to select -from all citekeys for headings in notes. This same prompt will be -opened if locating a citekey from context fails. +from all citekeys for headings in notes. This same prompt will +be opened if locating a citekey from context fails. If the citekey file prompt is slow to appear, consider enabling `bog-use-citekey-cache'." @@ -734,7 +734,7 @@ term (instead of prompting the user for one)." With prefix argument TODO-ONLY, only TODO entries are searched. The citekey will be taken from the text under point if it matches -`bog-citekey-format' or from the current tree. If a citekey is +`bog-citekey-format' or from the current tree. If a citekey is not found, a prompt will open to select from all citekeys present in notes." (interactive "P") @@ -742,8 +742,8 @@ in notes." (defun bog-sort-topic-headings-in-buffer (&optional sorting-type) "Sort topic headings in this buffer. -SORTING-TYPE is a character passed to `org-sort-entries'. If nil, -?a is used. The level to sort is determined by +SORTING-TYPE is a character passed to `org-sort-entries'. If +nil, ?a is used. The level to sort is determined by `bog-topic-heading-level'." (interactive) (org-map-entries (lambda () (bog-sort-if-topic-header sorting-type)))) @@ -767,7 +767,7 @@ Sorting is only done if the heading's level matches (defun bog-insert-heading-citekey (&optional current-buffer) "Select a citekey to insert at point. -By default, offer heading citekeys from all files. With prefix +By default, offer heading citekeys from all files. With prefix argument CURRENT-BUFFER, limit to heading citekeys from the current buffer." (interactive "P") @@ -783,8 +783,8 @@ The citekey will be taken from the text under point if it matches `bog-citekey-format' or from the current tree. With prefix argument NO-CONTEXT, a prompt will open to select -from all citekeys for headings in notes. This same prompt will be -opened if locating a citekey from context fails." +from all citekeys for headings in notes. This same prompt will +be opened if locating a citekey from context fails." (interactive "P") (let* ((citekey (bog-citekey-from-point-or-all-headings no-context)) (marker (bog--find-exact-heading-in-notes citekey))) @@ -828,7 +828,7 @@ DESCRIPTION is a one-line description of what the key selects.") "Execute a Bog command with a single letter. The user is prompted for a single character indicating the action -to invoke. Press \"?\" to describe available actions. +to invoke. Press \"?\" to describe available actions. See `def-bog-commander-method' for defining new methods." (interactive) @@ -916,8 +916,8 @@ chosen." (define-minor-mode bog-mode "Toggle Bog in this buffer. With a prefix argument ARG, enable `bog-mode' if ARG is positive, -and disable it otherwise. If called from Lisp, enable the mode if -ARG is omitted or nil. +and disable it otherwise. If called from Lisp, enable the mode +if ARG is omitted or nil. \\{bog-mode-map}" :keymap bog-mode-map |