Hello - I’ve been experimenting with Bike and plain text files (which I also like to read easily outside of Bike so often leave blank lines to separate sections). I’ve found that on opening a plain text file Bike sets the indents for lines with tabs only or tabs and spaces only to match the indent of the line above. Is this necessary due to the plain text format or could the lines be left as found?
If some form of reconciliation is required, might I suggest matching the row below instead of the row above. This would allow the empty row to be a visual buffer when the section above is folded. Understandably matching the row above gives a more consistent arrangement when folding, but this could be achieve by deleting the empty row. Is there a work around or setting I’ve overlooked? Thanks
Would you like to show a pair of minimal before and after examples between
```
code-fencing triple backticks
```
?
(As Bike is an outliner – with structure represented by tab-indentation in the case of plain text – I would guess that some degree of normalisation is to be expected, not least the elimination of any mixed tab+space indentation)
enhanced because I couldn’t get cursors in both windows
image because I wasn’t sure how to show tabs and spaces
black window is vs code with text file as saved.
white window is Bike with same file opened
I agree the current solution is a little weird, but I’m not quite sure what the right answer is. Bike does need to do some processing (auto-indent) of blank lines so that visual hierarchies in plain text match up with real hierarchies in Bike.
Right now these blank lines are “corrected” to match the level of the previous non-blank row. I could change to correct to the level of the next non-blakn row… not sure either of those choices makes more sense then the other. I sorta think that second option might be better now that I think about it.
On save Bike just writes out tabs for the indentation of each line. This is nice from in information preservation standpoint. You can set exactly what levels you want the blank lines at and that setup will be restored on next open in Bike. On the other hand this approach does result in whitespace lines with tabs in your text file.
Another option when saving would be to truncate all empty lines to have no tabs. That results in cleaner plain text files, but means each time you open the file in Bike whitespace line level will get recalculated using whatever method Bike decides to use.
I’m not really sure what answer is right. Open to suggestions.
I would vote for matching the row below, but I recognise my use case is probably limited and particular. Thanks for taking the time to respond to my comment.