Atom package for list-aware cut, copy & paste operations that automatically handle separators and whitespace.
CoffeeScript Shell
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
emulation
img
keymaps
lib
menus
script
spec
.gitignore
.travis.yml
CHANGELOG.md
LICENSE.md
README.md
exampleLists.txt
package.json

README.md

list-edit package Build Status

List-edit provides list-aware cut, copy, and paste operations that automatically handle separators and whitespace, while taking into account strings and comments. For example, to cut the first element from [Three, One, Two] and paste it at the end:

Single-line list edit

On list-cut the list element that contains the cursor is removed, together with its trailing separator and whitespace. After moving the cursor past the last element, list-paste inserts the cut element and puts a separator and whitespace in front of it. List-edit also works in a vertical layout and on multiple elements:

Multi-line list edit

And even between different lists (with yet another layout):

List-edit between lists edit

List-edit uses the grammar of the edited file to ignore strings and comments, but list detection takes place purely on a lexical level. Currently, {}, [], and () are brackets, and , and ; are separators.

For more information, including a small emulator, in which you can try out the package, visit list-edit.oblomov.com.

Key bindings

These are Mac key bindings, for Windows and Linux use ctrl-alt instead of alt-cmd.

Keys Command  
alt-cmd-s list-select Select element at cursor, or range of elements in selection
alt-cmd-x list-cut Cut elements (and separator+whitespace) at cursor/selection
alt-cmd-c list-copy Copy elements at cursor/selection to the clipboard
alt-cmd-v list-paste Paste elements (and separator+whitespace) at cursor/selection