Recently Written · git

rectangle

Spacemacs layer for binding rectangle interaction commands.

git clone https://github.com/equwal/rectangle

Log | Files | Refs


commit fde133221b8cdeea8a96647cff09b9c67f8b661f
Spenser Truex <spensertruexonline@gmail.com>
2019-06-26 16:10:22 -0700

initial commit.

 README.org     | 46 +++++++++++++++++++++++++++++++++++++++++++
 keybindings.el | 23 ++++++++++++++++++++++
 packages.el    | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 131 insertions(+)
diff --git a/README.org b/README.org
new file mode 100644
index 0000000..bb98186
--- /dev/null
+++ b/README.org
@@ -0,0 +1,46 @@
+#+TITLE: rectangle layer
+
+# The maximum height of the logo should be 200 pixels.
+[[img/rectangle.png]]
+
+# TOC links should be GitHub style anchors.
+* Table of Contents                                        :TOC_4_gh:noexport:
+- [[#description][Description]]
+- [[#install][Install]]
+- [[#key-bindings][Key bindings]]
+
+* Description
+This layer does wonderful things:
+  - thing01
+
+* Install
+To use this configuration layer, add it to your =~/.spacemacs=. You will need to
+add =rectangle= to the existing =dotspacemacs-configuration-layers= list in this
+file.
+
+* Key bindings
+
+| Key Binding | Description                       |
+|-------------+-----------------------------------|
+| [i          | string-insert-rectangle           |
+| [s          | string-rectangle                  |
+| [m          | rectangle-mark-mode               |
+| [e          | rectangle-exchange-point-and-mark |
+| [n          | rectangle-next-line               |
+| [p          | rectangle-previous-line           |
+| [N          | rectangle-previous-line           |
+| [r          | rectangle-right-char              |
+| [l          | rectangle-left-char               |
+| [v          | rectangle-preview                 |
+| [c          | rectangle-number-lines            |
+| [k          | kill-rectangle                    |
+| [y          | yank-rectangle                    |
+| [o          | open-rectangle                    |
+| [!          | clear-rectangle                   |
+| [c          | close-rectangle                   |
+| [d          | delete-rectangle                  |
+# Use GitHub URLs if you wish to link a Spacemacs documentation file or its heading.
+# Examples:
+# [[https://github.com/syl20bnr/spacemacs/blob/master/doc/VIMUSERS.org#sessions]]
+# [[https://github.com/syl20bnr/spacemacs/blob/master/layers/%2Bfun/emoji/README.org][Link to Emoji layer README.org]]
+# If space-doc-mode is enabled, Spacemacs will open a local copy of the linked file.
diff --git a/keybindings.el b/keybindings.el
new file mode 100644
index 0000000..925e4a0
--- /dev/null
+++ b/keybindings.el
@@ -0,0 +1,23 @@
+(spacemacs/declare-prefix "[" "rectangle")
+(spacemacs/set-leader-keys
+  "[s" 'string-rectangle
+  "[m" 'rectangle-mark-mode
+  "[e"  'rectangle-exchange-point-and-mark
+  "[n"  'rectangle-next-line
+  "[p"  'rectangle-previous-line
+  "[i"  'copy-rectangle-to-register
+  "[N"  'rectangle-previous-line
+
+  "[r"  'rectangle-right-char
+  "[l"  'rectangle-left-char
+
+  "[v"  'rectangle-preview
+  "[c"  'rectangle-number-lines
+
+  "[t" 'transpose-regions
+  "[k"  'kill-rectangle
+  "[y"  'yank-rectangle
+  "[o"  'open-rectangle
+  "[!"  'clear-rectangle
+  "[d"  'delete-rectangle
+  "[c"  'close-rectangle)
diff --git a/packages.el b/packages.el
new file mode 100644
index 0000000..3ac6ce1
--- /dev/null
+++ b/packages.el
@@ -0,0 +1,62 @@
+;;; packages.el --- rectangle layer packages file for Spacemacs.
+;;
+;; Copyright (c) 2012-2017 Sylvain Benner & Contributors
+;;
+;; Author: Spenser Truex <web@spensertruex.com>
+;; URL: https://github.com/syl20bnr/spacemacs
+;;
+;; This file is not part of GNU Emacs.
+;;
+;;; License: GPLv3
+
+;;; Commentary:
+
+;; See the Spacemacs documentation and FAQs for instructions on how to implement
+;; a new layer:
+;;
+;;   SPC h SPC layers RET
+;;
+;;
+;; Briefly, each package to be installed or configured by this layer should be
+;; added to `rectangle-packages'. Then, for each package PACKAGE:
+;;
+;; - If PACKAGE is not referenced by any other Spacemacs layer, define a
+;;   function `rectangle/init-PACKAGE' to load and initialize the package.
+
+;; - Otherwise, PACKAGE is already referenced by another Spacemacs layer, so
+;;   define the functions `rectangle/pre-init-PACKAGE' and/or
+;;   `rectangle/post-init-PACKAGE' to customize the package as it is loaded.
+
+;;; Code:
+
+(defconst rectangle-packages
+  '()
+  "The list of Lisp packages required by the rectangle layer.
+
+Each entry is either:
+
+1. A symbol, which is interpreted as a package to be installed, or
+
+2. A list of the form (PACKAGE KEYS...), where PACKAGE is the
+    name of the package to be installed or loaded, and KEYS are
+    any number of keyword-value-pairs.
+
+    The following keys are accepted:
+
+    - :excluded (t or nil): Prevent the package from being loaded
+      if value is non-nil
+
+    - :location: Specify a custom installation location.
+      The following values are legal:
+
+      - The symbol `elpa' (default) means PACKAGE will be
+        installed using the Emacs package manager.
+
+      - The symbol `local' directs Spacemacs to load the file at
+        `./local/PACKAGE/PACKAGE.el'
+
+      - A list beginning with the symbol `recipe' is a melpa
+        recipe.  See: https://github.com/milkypostman/melpa#recipe-format")
+
+
+;;; packages.el ends here