Commit graph

88 commits

Author SHA1 Message Date
jazzpi
3c952ccbfe Fix mark addresses and add specs for addresses
Enables properly parsing marks as addresses. Also adds some specs for
addresses by checking how ex-mode behaves when used as a motion.

Fixes #70.
2016-08-16 00:36:05 +02:00
jazzpi
c6efc0d46c Add 'smartcase' option 2016-08-16 00:26:37 +02:00
jazzpi
1b8f6238c2 Add basic support for visual marks < and >
Only works with range '<,'>. If there are multiple selections, run the
command for each one.

Closes #31.
2016-08-15 21:13:32 +02:00
Jasper v. B
aca7d3b990 Merge pull request #159 from jazzpi/split-options-set
Add splitbelow and splitright options to `:set`
2016-08-14 21:52:32 +02:00
Jasper v. B
683a592979 Merge pull request #158 from jazzpi/update-new-file-save
Update editor when saving a new file with `:w` or `:saveas`
2016-08-14 21:52:22 +02:00
Jasper v. B
25ce6b59fd Merge pull request #155 from stuartquin/tab-autocomplete
Issue #29 Command and file autocomplete
2016-08-14 21:51:43 +02:00
Stuart Quin
d609005810 Get Ex commands from instance and prototype 2016-08-11 12:55:24 +01:00
Stuart Quin
70a1987cf7 Sort commands before autocomplete 2016-08-10 08:28:33 +01:00
jazzpi
7bec719a6f Add splitbelow and splitright options to :set 2016-08-10 02:01:01 +02:00
jazzpi
2b9b2f26e5 Update editor when saving a new file with :w or :saveas
Fixes #156
2016-08-10 01:29:21 +02:00
Stuart Quin
6f03cd8bc7 Add support for ~ expansion 2016-08-03 21:34:49 +01:00
Stuart Quin
7e1e03284a Issue #29 Command and file autocomplete 2016-08-03 18:41:13 +01:00
Asa Ayers
959ad08591 Stop using non-standard Promise.defer()
Fixes #147
2016-08-02 15:17:41 -07:00
Brendon Roberto
4424eec4cc Fix issue with tabnew forwarding args to tabedit 2016-06-16 15:21:20 -04:00
Xiaolong Wang
b763104cb2 adding support for splitright and splitbelow 2016-04-24 15:39:18 -05:00
Ryan Mitchell
2a5fe2c382 Feature/yanking (#138)
* Support yanking

* Remove unneeded code from yank spec
2016-04-24 13:56:22 -05:00
Ryan Mitchell
f8396fb4e4 Copy to text to clipboard on delete 2016-04-23 21:33:04 -04:00
jazzpi
e17a6e5533 Add specs for :wall, :quitall and :wqall 2016-01-03 13:15:14 +01:00
jazzpi
059719bee4 Fix :quitall 2015-12-28 14:04:19 +01:00
jazzpi
d6afe394ef Merge branch 'master' of https://github.com/caiocutrim/ex-mode into caiocutrim-master 2015-12-28 13:14:50 +01:00
jazzpi
31875cff79 Add specs for aliases 2015-12-28 13:01:56 +01:00
jazzpi
701f27130f Make Ex.registerAlias accessible from the outside 2015-12-28 12:46:26 +01:00
jazzpi
155ffcaa5a Merge branch 'master' of https://github.com/GertjanReynaert/ex-mode into GertjanReynaert-master 2015-12-28 12:39:47 +01:00
Jasper v. B
d2d66f5260 Merge pull request #109 from shamrin/issue108
backspace over empty `:` now cancels ex-mode
2015-12-22 12:46:30 +01:00
jazzpi
19f1a74812 Merge pull request #118 from jazzpi/rework-commands
Rework command calling, improve :substitute
2015-12-08 13:13:11 +01:00
Thomas David Baker
3c78f9c985 :saveas command and spec test. 2015-12-07 11:20:57 -08:00
Caio Cutrim
10fbdfe969 fixed saveAllThenQuit function 2015-11-26 17:16:24 -03:00
Caio Cutrim
4ec1c56077 I added :wa, :qa, :waq shortcuts commands 2015-11-26 12:20:32 -03:00
jazzpi
ddbdb861fb Improve :substitute
Rework the parsing algorithm so that it works (mostly)
without using RegEx's. This allows for replacing with an
empty string and escape sequences (\t, \n, \r).

Fixes #71, #93, #117
2015-11-21 15:51:42 +01:00
jazzpi
af0ba7c01c Improve format for calling commands
Commands (from the Ex class) are now called with an object
containing the range, arguments, vim state, ex state and
editor instead of a long list of arguments.
2015-11-21 14:48:13 +01:00
Gertjan Reynaert
14d234d182 Add option to register aliasses 2015-11-17 16:39:21 +01:00
Alexey Shamrin
e0ee339bf6 backspace over empty : now cancels ex-mode
fixes #108
2015-10-31 05:33:06 +03:00
Jacob Wahlgren
e2841dc26c Don't allow :s delimiters not allowed by vim
"Instead of the '/' which surrounds the pattern and replacement string,
you can use any other single-byte character, but not an alphanumeric
character, '\', '"'' or '|'."
- http://vimdoc.sourceforge.net/htmldoc/change.html#:substitute
2015-09-22 00:35:36 +02:00
jazzpi
42a44ee9e1 Add specs; minor changes to some commands
`:tabedit` now works as an alias to `:edit` with a path and
  as an alias to `:tabnew` without.
`:tabnew` is a new command that opens a new tab with a new file if used
 without a path and works as an alias to `:tabedit` with one.
`:tabclose` now works as a proper alias to `:quit` (i.e. passes the arguments)
`:edit` now works more like before - it opens a given path in a new tab.
 It also doesn't do anything if the file was modified since the last commit,
 unless forced by using `:edit!`
`:write` works properly again and doesn't overwrite files, unless forced by
 using `:write!`
`:xit` is now called `:xit` and not just `:x`
`:substitute` now properly replaces multiple groups (`:s/(a)b(c)/X\1\2X\0`)
2015-07-29 19:13:13 +02:00
1a117bddf9 Clean up save logic (fixes #75) 2015-07-29 16:36:55 +02:00
84c548a444 don't :e an unsaved file 2015-07-29 16:31:42 +02:00
8fd1fe14c8 Added ~ support
Thanks to @romgrk in PR #48
2015-07-28 12:02:03 +02:00
a187e68497 Merge pull request #74 from mleeds95/fix-write
Simplify how :write works and make it work when no projects are open.
2015-07-28 11:30:51 +02:00
e679604c21 Merge pull request #69 from nzyuzin/set_options
Add support for :set [option]
2015-07-28 11:30:35 +02:00
7450d05e64 Merge pull request #55 from jazzpi/fix-54
Replace `\#{delimiter}` with `#{delimiter}` in :s
2015-07-28 11:30:03 +02:00
Matthew Leeds
656ed90f7e Simplify how :write works and make it work when no projects are open. 2015-07-27 16:52:47 -05:00
Nikita Zyuzin
0f38fd195a Add support for :set [option] 2015-07-13 23:06:03 +04:00
jazzpi
7c202faefa Use TextEditor.transact
This fixes #57 and atom/atom#703
2015-06-18 18:52:24 +02:00
jazzpi
4cccef79a5 Replace \#{delimiter} with #{delimiter} in :s 2015-06-10 18:19:59 +02:00
jazzpi
5ee749cb0b Fix :write behaviour 2015-05-27 17:29:37 +02:00
c43b2658ef stop spurious cancels 2015-05-24 15:56:53 +02:00
3c17b6e670 history even bad commands (easing fixups) 2015-05-24 15:56:11 +02:00
cb2d79a1e3 get some fresh air 2015-05-24 15:55:24 +02:00
3f75ca3a30 comply with new Atom API 2015-05-24 11:49:29 +02:00
1c064ec13a debug logging removed 2015-05-24 11:47:46 +02:00