Browse Source

Updated the README

Samuel W. Flint 7 years ago
parent
commit
08219c86ac
1 changed files with 23 additions and 5 deletions
  1. 23 5
      README.md

+ 23 - 5
README.md

@@ -11,11 +11,29 @@ It works by defining buffer layers using a fairly simple macro.  The following w
   :run-on-apply ((my/find-current-notes-file)))
 ```
 
-It can be loaded with `(load-buffer-layer "/path/to/org.layer" nil)`.  If the final `nil` is changed to true, it will load and apply the layer.
+It can be loaded with `(load-buffer-layer "/path/to/org.layer" nil)`.  If the final `nil` is changed to `t`, it will load and apply the layer.
+
+Buffer Layer Definitions take the following arguments:
+
+ - `:files`: A list.  This is the list of files that are loaded when the buffer layer is applied.
+ - `:buffer-to-select`: The buffer to select after files are loaded, and the given forms to run on application are executed.
+ - `:run-on-apply`: This is a list of forms to be executed in between finding files and selecting the given buffer.
+ - `:run-on-remove`: This is a list of forms to be executed after killing the buffers that have been loaded.
 
 To manipulate buffer layers, execute `buffer-layer-mode`, and then you can use the following keybindings:
 
- - `C-x L l` Load a buffer layer, if defined, otherwise, load from the given file.
- - `C-x L u` Unload a loaded buffer layer.
- - `C-x L U` Unload all loaded buffer layers.
- - `C-x L L` List defined buffer layers, noting if they've been applied.
+ - `C-x L l`: Load a buffer layer, if defined, otherwise, load from the given file.
+ - `C-x L u`: Unload a loaded buffer layer.
+ - `C-x L U`: Unload all loaded buffer layers.
+ - `C-x L L`: List defined buffer layers, noting if they've been applied.
+
+The following are the user-facing functions:
+
+ - `define-buffer-layer`
+ - `buffer-layer-load-buffer-layer`, also known as `load-buffer-layer`
+ - `buffer-layers-unload-buffer-layer`
+ - `buffer-layers-list`
+ - `buffer-layers-unload-all-buffer-layers`
+ - `buffer-layers-mode`
+
+On enabling `buffer-layer-mode`, the map is placed onto `C-x L`, and `buffer-layers-unload-all-buffer-layers` is added to the `kill-emacs-hook`, and on disabling the mode, they are removed.