Welcome!
This is the community forum for my apps Pythonista and Editorial.
For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.
Outliner with drag/drop reordering
-
@ihf ok, sorry, I was afraid you could be hurry.
I'll go on with these dedicated keys, so you can have it on iPhone where there is no tab key.
After your future tests , we would decide how you prefer to use the script.
But I'm not yet far enough for a second version. I've been very busy this week-end, first sunny days since 3 weeks. -
@ihf you will not have news before some days because we have our fist sunny days since a long time and I take some holidays.
-
@ihf I don't forget you. I'll send something testable, not perfect, end of next week, sorry for the delay.
-
@ihf Hello, I'm sorry but currently i can't concentrate well. Thus my script does not evolve a lot.
You will find in GitHub the last version but a lot of functionalities are still missing or buggy
You can already test the two additional keys but only at end of file because renumbering does not work correctly.
You can also test the Files sub-options new, open, save. This part of the script uses modules that you will also find in GitHub: File_Picker.py and Folder_Picker.py.
Thus here is outline.py.
The script uses any editable file (aaaa.bbb or aaaa) but creates a aaaa.content partner file with needed infos.
don't be angry if there are too many bugs, I try to find the motivation to go on... -
@cvp if this is what you can do when you can’t concentrate well I can only imagine what happens if you have a cup of coffee (LOL). Do you want me to tell you about each bug I fall across or should I wait until you have a chance to do more testing of your own? One small thing, I noticed that when you start a new file you must hit tab before the outline begins. Unless you can see a reason for that, you might as well start the outline in the selected format immediately. Also would be nice if it continued with the last used file just to simplify continuing to edit an outline. I realize that move and copy, much less drag and drop, are still in the future, but what you have already done is very impressive.
-
@ihf said:
Do you want me to tell you about each bug
Not yet please, I know there are a lot of bugs actually...
-
@ihf said:
when you start a new file you must hit tab before the outline begins
Yes, because I thought that you want to start with a title line without outline.
I'll change that -
-
-
@ihf For those times when I don't have the motivation to think about automatic renumbering, can you explain how you see the move / copy / drag and drop?
-
@ihf how do you force a line to have same (invisible?) outline level than previous line?
If this functionality is allowed, the outline should be invisible but actually, the script displays
It in gray, just to be sure there is an outline -
@cvp I created a new outline and enter a line (1.0), then a line under that (1.1), then CR which gave me (1.2), then a backtab made that 3.0 instead of 2.0
As far as move and copy, it was a pull down that said not implemented (in an earlier version). My hope is that you will somehow eventually be able to do drag and drop of parent and child nodes so that the outline can be reordered flexibly. -
@cvp I found a few anomalies that I thought were easiest to show you with a screen recording. Please let me know if this works.
https://vimeo.com/560665894 -
@ihf said:
few anomalies that I thought were easiest to show you with a screen recording
It is good idea, and yes it works.
About the bugs, I knew them, coming from my "automatic renumbering" part, really not ready.
-
@ihf said:
My hope is that you will somehow eventually be able to do drag and drop of parent and child nodes so that the outline can be reordered flexibly.
I understand that. But, I can't do that before he normal process which is buggy in its renumbering part.
Drop will need automatic renumbering.Could you explain me how you see this drag and drop?
How do you want to select what to drag?
How do you want the dragging operation?
How do you want to indicate where to drop?And I promise that I'll at least try to process this drag and drop
-
@ihf New Github available with
Version V00.04 - correction of (one) bug of automatic renumbering after line feed - correction of (one) bug of automatic renumbering after tab - correction of (one) bug of automatic renumbering after back tab - if outline is exactly the same as previous line, display it in gray nb: - actually, this should not be authorized but automatic renumbering sometimes generates such invalid cases - if this functionnality is allowed, the outline would become invisible - hide/show children supported (also saved for next run) nb: actually, for testing, not really hidden but small characters to check which lines would be hidden
I'm now open for bugs description and waiting for your move/drag explanation.
-
I envision drag/drop where I do a long press on a line which selects it together with any child nodes and then dragging it to another place in the outline where everything is then appropriately renumbered. Ideally, this paradigm would also work for promoting and demoting of parts of the outline. In other words, long press with drag to move elsewhere in the outline, and long press and slide to right to demote or slide to left to promote.
-
-
@ihf before end of the day (European time), you will get a version to test "my vision of" drag.
Not yet a drop, just only to ask if you like it (please, answer sincerely).
This initial post only to warn you that the version will import @mikael 's module gestures.py.
Thus, up to you to already install it in your site-packages -
@ihf New Github available with
Version V00.05 - remove the "move" option from the popup menu when tapping an outline - to start a drag operation, long press anywhere on a line - hold your finger on the screen - pressed line and its children lines are set in a little mobile label - this label is above your finger so it stays visible why moving your finger - move the mobile label so its top/left blue point falls on a line - drop process is still to be developped, wait and see nb: actual drop process drops the entire text (outlines included) at specified location