mirror of
https://github.com/magnars/multiple-cursors.el.git
synced 2025-10-13 21:03:05 +00:00
Merge pull request #160 from P-Seebauer/master
Added whitespace functionality.
This commit is contained in:
commit
533e1576e3
27
features/vertical-align.feature
Normal file
27
features/vertical-align.feature
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
Feature: Align cursors with whitespaces
|
||||||
|
|
||||||
|
Scenario: Vertical aligning with `x'
|
||||||
|
Given I have cursors at "word" in :
|
||||||
|
"""
|
||||||
|
One word
|
||||||
|
Another word
|
||||||
|
"""
|
||||||
|
And I press "<<mc/vertical-align>> \170"
|
||||||
|
Then I should see:
|
||||||
|
"""
|
||||||
|
One xxxxword
|
||||||
|
Another word
|
||||||
|
"""
|
||||||
|
|
||||||
|
Scenario: Vertical aligning with space
|
||||||
|
Given I have cursors at "word" in :
|
||||||
|
"""
|
||||||
|
One word
|
||||||
|
Another word
|
||||||
|
"""
|
||||||
|
And I press "<<mc/vertical-align-with-space>>"
|
||||||
|
Then I should see:
|
||||||
|
"""
|
||||||
|
One word
|
||||||
|
Another word
|
||||||
|
"""
|
@ -86,5 +86,36 @@
|
|||||||
(setq mc--strings-to-replace (sort (mc--ordered-region-strings) 'string<))
|
(setq mc--strings-to-replace (sort (mc--ordered-region-strings) 'string<))
|
||||||
(mc--replace-region-strings))
|
(mc--replace-region-strings))
|
||||||
|
|
||||||
|
|
||||||
|
;;;###autoload
|
||||||
|
(defun mc/vertical-align (character)
|
||||||
|
"Aligns all cursors vertically with a given CHARACTER to the one with the
|
||||||
|
highest colum number (the rightest).
|
||||||
|
Might not behave as intended if more than one cursors are on the same line."
|
||||||
|
(interactive "c")
|
||||||
|
(let ((rightest-column (current-column)))
|
||||||
|
(mc/execute-command-for-all-cursors
|
||||||
|
(lambda () "get the rightest cursor"
|
||||||
|
(interactive)
|
||||||
|
(setq rightest-column (max (current-column) rightest-column))
|
||||||
|
))
|
||||||
|
(mc/execute-command-for-all-cursors
|
||||||
|
(lambda ()
|
||||||
|
(interactive)
|
||||||
|
(let ((missing-spaces (- rightest-column (current-column))))
|
||||||
|
(save-excursion (insert (make-string missing-spaces character)))
|
||||||
|
(forward-char missing-spaces)
|
||||||
|
)
|
||||||
|
))
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
;;;###autoload
|
||||||
|
(defun mc/vertical-align-with-space ()
|
||||||
|
"Aligns all cursors with whitespace like `mc/vertical-align' does"
|
||||||
|
(interactive)
|
||||||
|
(mc/vertical-align 32)
|
||||||
|
)
|
||||||
|
|
||||||
(provide 'mc-separate-operations)
|
(provide 'mc-separate-operations)
|
||||||
;;; mc-separate-operations.el ends here
|
;;; mc-separate-operations.el ends here
|
||||||
|
Loading…
x
Reference in New Issue
Block a user