Author Topic: Beta 1.40 - 544: Column edit  (Read 2614 times)

Offline Stefan

  • Administrator
  • Hero Member
  • *****
  • Posts: 772
  • Karma: +6/-0
    • View Profile
Beta 1.40 - 544: Column edit
« on: November 30, 2008, 10:48:24 pm »
Hi alex, great new feature

Code: [Select]
Version 544:

    * Added Column Multi Editing mode. Now if you have block of text (or empty space) selected,
and start typing or deleting, change is applied to all marked lines in a block.

Two questions, i guess this is already planed:
1.) can we have a thin line while column select 0-char width?
   As now is it not easily visible where i have already select and where not.

2.) right now i can't delete char on the right over all lines, while column-selected.
Only the chars in current line are deleted.
« Last Edit: February 01, 2009, 11:32:19 pm by alex »
Stefan, HippoEDIT beta tester  (HippoEDIT News On Twitter: http://twitter.com/hippoedit/)

Offline JJK

  • Full Member
  • ***
  • Posts: 151
  • Karma: +2/-0
    • View Profile
Re: Beta 1.40 - 544: Column edit
« Reply #1 on: December 01, 2008, 12:14:57 pm »
Hi stefan

Here, while column-selected, I can delete all chars of selection in all lines selected.
Perhaps I did not understood what you mean by "on the right over all lines"...

Offline Stefan

  • Administrator
  • Hero Member
  • *****
  • Posts: 772
  • Karma: +6/-0
    • View Profile
Re: Beta 1.40 - 544: Column edit
« Reply #2 on: December 01, 2008, 12:43:17 pm »
Hi JJK, thank for response.


Perhaps I did not understood what you mean by "on the right over all lines"...
I mean "delete chars on the right side of my cursor" and that in all lines i had column-selected.

;D for all, here is what i have done to test this:


1.) have a few lines in your document
HippoEDIT great
HippoEDIT great
HippoEDIT great

2.) switch to column selection by pressing Alt+C



3.) make an vertically, zero-width selection just before 'great'
A) insert text by typing 'was ':
HippoEDIT was great
HippoEDIT was great
HippoEDIT was great
 that works



4.) make an vertically, zero-width selection just before 'great'
A) delete text on the left by use back-space 8 times:
HippoEDIT at
HippoEDIT at
HippoEDIT at
 that doesn't works ( but sometimes is works..?...other times this deletes an char on the left and an char from the right side)


5.) make an vertically, zero-width selection just after 'HippoEDIT
A) write some text by typing ' is great':
HippoEDIT is great at
HippoEDIT is great at
HippoEDIT is great at
 that works


6.) make an vertically, zero-width selection just after 'great'
A) delete some text on the right by using DEL three times:
HippoEDIT is great at
HippoEDIT is great at
HippoEDIT is great
 that works on the current line only


7.) make an vertically, zero-width selection just after the last 'at'
A) delete some text on the left by use back-space 3 times:
HippoEDIT is great
HippoEDIT is great
HippoEDIT is great
 that works

-
An another test: exchanging block-selected blocks of text over several lines works.

(testet on different PCs with XP SP2 and XP SP3, english/german)
« Last Edit: December 01, 2008, 12:51:10 pm by Stefan »

Offline JJK

  • Full Member
  • ***
  • Posts: 151
  • Karma: +2/-0
    • View Profile
Re: Beta 1.40 - 544: Column edit
« Reply #3 on: December 01, 2008, 01:32:13 pm »
To Stefan,
OK, here is same as you. But it seems to me that when column is not zero-width, all works fine.

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Beta 1.40 - 544: Column edit
« Reply #4 on: December 01, 2008, 04:23:00 pm »
Hello Stefan and JJK :),

1) Ok, I agree that it is a liitle bit difficult to see that you have something selected with 0 char widht :). I would add indicating line inplace of 0 selection to show this in next beta.

2) For now I have only implemented for multi editing :
 - insert (multi typing, typed character multiplied in every block line)
 - paste (pasted text multipled for every line, if multiline pasted - pasted text trimmed till first line feed)
 - back delete (backspace for all lines)

Delete would do normal block delete. So first delete selection then character in current line.
Also back space should work only in ranges of before selected block (that it works now it is probably bug).
But maybe current behavior is correct? To delete something on right side, just do block selection of what you want to delete and press Del (example 4). Or I miss some scenario which could not be solved with current functionality?
With example 6, dont know. Probably it would be better to do nothing after deleting of selected block and eat delete, but not delete characters on current line.

Offline Stefan

  • Administrator
  • Hero Member
  • *****
  • Posts: 772
  • Karma: +6/-0
    • View Profile
Re: Beta 1.40 - 544: Column edit
« Reply #5 on: December 01, 2008, 08:17:55 pm »
To make myself clear: in my tests i had never made an selection, only i did 0-selections.

I think that's the way it should work:
- make an zero width vertically block selection
- now "delete chars on the right", "delete chars on the left", insert chars by typing or copying.


And  making an non-zero width block selection
- pressing DEL or back space or start tipping delete the selected text

Right now it depends if you just have insert text by tipping, then back space deletes char by char on the left.
If you restore an selection by undo... then back space delete the whole selection.



Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Beta 1.40 - 544: Column edit
« Reply #6 on: December 03, 2008, 02:01:32 am »
With beta 1.40.546 fixed display of 0-char width selection and some problems mentioned (backspace after undo, backspace more then selection).
I have not changed logic for working with 0 width selection yet (delete left/right), I would check how this done in other editors, to see what is standard and works best.

Offline Stefan

  • Administrator
  • Hero Member
  • *****
  • Posts: 772
  • Karma: +6/-0
    • View Profile
Re: Beta 1.40 - 544: Column edit
« Reply #7 on: December 03, 2008, 03:39:07 pm »
...I have not changed logic ..., I would check....
Fine. If i can support you, just tell me.

Offline Stefan

  • Administrator
  • Hero Member
  • *****
  • Posts: 772
  • Karma: +6/-0
    • View Profile
Re: Beta 1.40 - 544: Column edit
« Reply #8 on: January 24, 2009, 09:02:56 pm »
I would check how this done in other editors, to see what is standard and works best.

zero-width column select >> insert new text (and delete them again)
old123 new old123
EmEditor and e are here on the same level as HippoEDIT

zero-width column select >> insert new text (and delete them again) AND also delete old text to the left and to the right
old1 new d123
TurboEditor     http://www.turboftp.com/turboeditor/turboeditor-features.htm
UltraEdit do the same.


or an step better, because you can also, as addition,
move the "vertical-cursor-line" (of the zero-width column selection) to the left and to the right to reach other columns too:
old1 new old12new3 new
Boxer Editor      http://www.boxersoftware.com/pgbwin.htm


So the habit of Boxer is my favorite.

« Last Edit: January 26, 2009, 08:33:47 am by Stefan »

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Beta 1.40 - 544: Column edit
« Reply #9 on: February 01, 2009, 11:32:06 pm »
Hello Stefan,

with 1.42.608 I think you would be satisfied. Now HE does mostly eveything that you want, except of moving of 0-width selection, which is not a really possible. As you see boxe uses special mode for such editing, but HE normal block selection, that from my opinion more handy.

So, hope, this topic solved.

P.S: There is some other function I want to implement: real multi editing. When you can have several indenpendent selection areas. And can edit or do some oeration on them all. Stefan, have you seen some example of such functionality? I know MS Word can do this keeping Ctrl when starting new selection, but there is some problem: HE uses Ctrl + Click for selecting word under cursor and Smart Highlight...
« Last Edit: February 01, 2009, 11:35:23 pm by alex »

Offline Stefan

  • Administrator
  • Hero Member
  • *****
  • Posts: 772
  • Karma: +6/-0
    • View Profile
Re: Beta 1.40 - 544: Column edit
« Reply #10 on: February 03, 2009, 10:04:05 pm »
... except of moving of 0-width selection, which is not a really possible.
It is a great pity. But thanks for your work. I know you really tried.


Quote
So, hope, this topic solved.
The current behaviour could be dangerous.
If you type your text first,
and then you want to delete chars on the right,
your typed text is destroyed.

http://www.youtube.com/watch?v=4rsckp2WoPg   
(at 0:14 i pressed the DEL-key to delete on the right, but the selection includet my typing is deleted)

If one know this, he can just change the order of his doing to avoid the destroying.
But it is still annoying if you do your editing in the wrong order and have to type it in two times.
I just mention this perhaps you can do something to make this better working.

EDIT: it seams to me that there should be no blue selection while column editing?!? Just modify the text?

Quote
Stefan, have you seen some example of such functionality?
I know only e-editor who do this:  ( see the  oXoo lines at the regex vid)
« Last Edit: February 03, 2009, 10:06:06 pm by Stefan »

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Beta 1.40 - 544: Column edit
« Reply #11 on: February 07, 2009, 02:46:47 pm »
Hi,

thanks afor so good explanation and video!
But I think the HE works as designed. The selection is deleted when you press Del, as in normal mode. And I have checked, the same logic is used in other editors (TurboEditor, EmEditor). In Boxer it is different because of the special editing mode, which is not a selection manipulation. And you always have an Undo ;)

Selection should be visible, because as I said, for HE it is just another mode of working with selection, not another editing mode.

About the multi selection, in addition to e-editor Word can do this. But they dont have selection of word on Ctrl + Click.

----------------------------------------------------------------------------------------------------------
And by the way: :)
TurboEditor have not checked it before. It has similar synatx rules as HE. And I have seen several ideas of syntax definition that HE still does not have. Regexp definition of course, and possibility to use leadwith and trailingwith markers... Thanks to pointing on it.
Video - which program have you used to create it? I often need somthing like this, but have not time to search for such software and analyze what is the best and easiest.


Offline Stefan

  • Administrator
  • Hero Member
  • *****
  • Posts: 772
  • Karma: +6/-0
    • View Profile
Re: Beta 1.40 - 544: Column edit
« Reply #12 on: February 22, 2009, 10:54:19 pm »
P.S: There is some other function I want to implement: real multi editing.
When you can have several indenpendent selection areas.
And can edit or do some oeration on them all. Stefan, have you seen some example of such functionality?

Just to show what we talking about,........ i found this vid
http://www.youtube.com/watch?v=jwF4-H8Ungo


This you can already do with HippoEDIT:
Select an block and overwrite all lines with the same contend:
http://www.youtube.com/watch?v=T6QR22bDQRY&feature=related
« Last Edit: February 22, 2009, 10:56:57 pm by Stefan »

Offline alex

  • Developer
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1666
  • Karma: +29/-2
    • View Profile
    • HippoEDIT
Re: Beta 1.40 - 544: Column edit
« Reply #13 on: February 23, 2009, 12:36:05 pm »
Cool, thanks a lot.
I have also seen them somewhen browsing intype blog, but forget about them. Need to check which keys they are using.

Another good usage of such multi editing functionality is SyncEdit by Borland (or not, dont remember).
With SyncEdit, you select some text, go to SyncEdit mode, and then got all variables in code some how govered in groups.. So when you edit variable (text) in selected sync edit area, all same variables (texts) are changed simultaneously.