Re: [Therion] A wtherion update
Odesláno z iPhonu > 23. 4. 2024 v 8:25, Csongor Zih : > > Unfortunately, due to the way wtherion is designed, it's never > guaranteed that you can export the exact same .th2 file that you > imported. It is really pity, Wtherion does’t use base principles of Therion. There was a discussion about format of Therion one or two years ago. The result was to keep plain text format. Human readable and interpretable without Therion or other software. Just with pencil, protractor and ruler. Martin ___ Therion mailing list Therion@speleo.sk https://mailman.speleo.sk/listinfo/therion
Re: [Therion] A wtherion update
Hi there! Unfortunately, due to the way wtherion is designed, it's never guaranteed that you can export the exact same .th2 file that you imported. The information of which object was where in the original text file, or what each line in the file looked like is not retained. But this does not mean the entire .th2 file will be different each time you change something. When exporting, wtherion always uses the same format for the output, which you could say is its canonical format. If you have a repository where all .th2 files are already in canonical format, importing to wtherion, making a single change, and exporting *will* produce only one line of difference. This is probably still not ideal for people who have existing repositories, but this can't really be changed due to wtherion's overall design. Text-based files and small changes are not required for version control systems to work, but they do make it easier to read the history of changes. Git for example has Git attributes to work around this problem for binary files. It might interest you to learn that new versions of wtherion support saving projects to the filesystem, if you're using a browser that allows it (Chrome, Edge for example). With this, you can check in wtherion projects alongside (or instead of) .th2 files to version control. It still won't be as human-readable as .th2, it's just a JSON string. Also, individual settings for segments (line points in XTherion) are available now. If we were talking about an editor that completely hides Therion's complexities, I don't think the users of that would even use external version control, the versioning would be built into the application, like in Microsoft Office. Obviously, wtherion is not a project to do something this advanced, but maybe in the future there will be one. Thanks for the feedback, Csongor Bruce Mutton ezt írta (időpont: 2024. ápr. 22., H, 22:27): > > > I have an update to share regarding wtherion, which you hopefully remember > > is my project for a web-based Therion map editor to replace XTherion's map > > editing capabilities: > > > https://github.com/daem-on/wtherion > > > > > > > The scope of the project hasn't really changed, but I'd be interested to > > work on other projects that plan to replace the whole of XTherion, or even > > replace text based editing. > > > > Good to see that this project is continuing. It would be nice to have a more > capable editor for Therion drawings. > > Unfortunately I have not had time to look at this update, but hope to do so > at some stage. > > > > Just a comment regarding the value or otherwise of text-based data files in > relation to Therion. > > > > For me a super-power of Therion/XTherion is the ability to support multiple > simultaneous people editing a dataset at one time, and the ability to > interrogate every saved snapshot for the entire history of a project (for > error tracking and recovery, finding bugs). Of course these capabilities are > not built into Therion/XTherion, but my understanding is that they are, by > way of version control (Git, bzr, Hg) only possible because: > > of the text (ascii) based data (.th, .th2) files and > a single edit in the drawing editor results in ONLY a single line changed in > the data (.th2) file. > > > > The earlier implementation of WTherion had two characteristics that made it > unsuitable for the ecosystem that I have built up around my Therion usage: > > a .th2 file loaded into WTherion, saved without making any changes and > exported back to .th2 resulted in a file that had edits on every line. ie it > violated the above requirement that a single entity edit results in a single > line change in the data file, making it ‘unhelpful’ for version control > (particularly if some are using XTherion and some are using WTherion), and > the WTherion data files ‘live’ in a browser cache (I think something like > that) so that a project’s data is no longer stored as a package in a single > location version control. Therefore other users and version control cannot > identify when changes have been made to a project, unless all users are > always rigorous about carrying out the extra steps required to export > WTherion data back to the project folder. > > I think line point characteristics such as ‘altitude .’ and possibly others > that I have grwn fond of were not possible in WTherion. > > > > I appreciate WTherion is just starting out, and am hoping that if multi-user > editing and version control compatibility are front of mind during > development they can be accommodated. > > I think that retaining the paradigm where drawing is interactive and > compilation of outputs is a batch operation is optimal, so don’t see a > particular need to move to more efficient non-text data formats. This is > right outside of my expertise, and I’m an old dinosaur, so will no doubt > stand corrected. > > > > An editor where I could cut, paste, rotate and scale drawing enti
[Therion] A wtherion update
> I have an update to share regarding wtherion, which you hopefully remember is my project for a web-based Therion map editor to replace XTherion's map editing capabilities: > https://github.com/daem-on/wtherion > The scope of the project hasn't really changed, but I'd be interested to work on other projects that plan to replace the whole of XTherion, or even replace text based editing. Good to see that this project is continuing. It would be nice to have a more capable editor for Therion drawings. Unfortunately I have not had time to look at this update, but hope to do so at some stage. Just a comment regarding the value or otherwise of text-based data files in relation to Therion. For me a super-power of Therion/XTherion is the ability to support multiple simultaneous people editing a dataset at one time, and the ability to interrogate every saved snapshot for the entire history of a project (for error tracking and recovery, finding bugs). Of course these capabilities are not built into Therion/XTherion, but my understanding is that they are, by way of version control (Git, bzr, Hg) only possible because: * of the text (ascii) based data (.th, .th2) files and * a single edit in the drawing editor results in ONLY a single line changed in the data (.th2) file. The earlier implementation of WTherion had two characteristics that made it unsuitable for the ecosystem that I have built up around my Therion usage: * a .th2 file loaded into WTherion, saved without making any changes and exported back to .th2 resulted in a file that had edits on every line. ie it violated the above requirement that a single entity edit results in a single line change in the data file, making it 'unhelpful' for version control (particularly if some are using XTherion and some are using WTherion), and * the WTherion data files 'live' in a browser cache (I think something like that) so that a project's data is no longer stored as a package in a single location version control. Therefore other users and version control cannot identify when changes have been made to a project, unless all users are always rigorous about carrying out the extra steps required to export WTherion data back to the project folder. I think line point characteristics such as 'altitude .' and possibly others that I have grwn fond of were not possible in WTherion. I appreciate WTherion is just starting out, and am hoping that if multi-user editing and version control compatibility are front of mind during development they can be accommodated. I think that retaining the paradigm where drawing is interactive and compilation of outputs is a batch operation is optimal, so don't see a particular need to move to more efficient non-text data formats. This is right outside of my expertise, and I'm an old dinosaur, so will no doubt stand corrected. An editor where I could cut, paste, rotate and scale drawing entities would be a nice addition to the Therion ecosystem, so keep working on it! Thanks Bruce ___ Therion mailing list Therion@speleo.sk https://mailman.speleo.sk/listinfo/therion
Re: [Therion] A wtherion update
I am certain wtherion could be run as a VSCode extension, although implementing it would mean supporting another interface for saving, opening files, etc. I currently don't want to add that to the codebase, but in the future I would be interested in it. Csongor Matěj Plch ezt írta (időpont: 2024. ápr. 17., Sze, 12:24): > > Hello > > Nice work! I have an idea, how about replacing XTherion with a Visual > Studio Code extension? Let's skip the part where we develop a whole > new editor, we could just use an existing editor, and enhance it with > a capability to run Therion compilation and with an integrated > wtherion for scrap editing. Do you think it would be possible to run > wtherion in such a way? > > Matěj > > po 15. 4. 2024 v 22:26 odesílatel Csongor Zih > napsal: > > > > Hi everyone! > > > > I have an update to share regarding wtherion, which you hopefully > > remember is my project for a web-based Therion map editor to replace > > XTherion's map editing capabilities: > > https://github.com/daem-on/wtherion > > > > I just spent the last two weeks rewriting the UI of wtherion, which > > was originally a fork of a vector editing application, migrating the > > parts that used jQuery to Vue. The canvas library and most of the > > editing logic are the same, this change just means the editor UI can > > be even more dynamic, complex and useful than before. This eliminated > > a lot of unnecessary or overly complex code left from the vector > > editor, and I hope in the future this will make it easier to maintain > > and add new features to. > > > > Some of the more visible changes include: > > - New layout and new UI styles > > - Shortcuts icons for common actions > > - Keybinds can be configured (this is not persisted yet) > > - All select lists (including points/symbols) have preview images > > - UI language can be changed at runtime > > - New rendering capabilities > > > > This last one I'm especially happy about, it's a step towards actual > > WYSIWYG editing, although that is not planned for this project. > > Currently you can see, in real time, while editing, what your 'slope', > > 'pit' or 'overhang' lines might look like when compiled. The main > > limiting factor here is performance, since I don't know how capable > > the average user's hardware will be, I tried to keep it optimised, and > > I added a toggle for it in the toolbar. > > > > I'm planning on releasing a 1.0 version of wtherion in the future, but > > I would like to hear feedback on this development version, which can > > be reached at beta.wtherion.daemonw.com (this is also linked in the > > GitHub repo). If you have suggestions on how it should work > > differently, if it's not working well for your workflow, or if you > > find a bug, please let me know here, or create an issue on GitHub. > > > > I can't make any guarantee as to the timeline of development, or how > > quickly I'll respond. Admittedly, I haven't worked on this project > > very actively in the last two years, but right now I want to spend > > more time on it. > > > > The scope of the project hasn't really changed, but I'd be interested > > to work on other projects that plan to replace the whole of XTherion, > > or even replace text based editing. > > > > Csongor > > ___ > > Therion mailing list > > Therion@speleo.sk > > https://mailman.speleo.sk/listinfo/therion > ___ > Therion mailing list > Therion@speleo.sk > https://mailman.speleo.sk/listinfo/therion ___ Therion mailing list Therion@speleo.sk https://mailman.speleo.sk/listinfo/therion
Re: [Therion] A wtherion update
Thank you for the feedback! This is very helpful, and I think each one could be a new issue on GitHub, where it can be properly discussed. You actually can already unlink Bézier handles from each other, by pressing Alt (or Option) and dragging the handle. This is only available in the Detail select tool, because line editing features are supposed to be handled by Detail select, while you can draw lines with both Draw and Bézier tools. This might be confusing coming from XTherion, but I stand by this design decision. The Alt key is not very well documented, you can find it here: https://github.com/daem-on/wtherion/wiki/Tools%20reference#detail-select which is the partially outdated documentation. You can view all keybinds and edit them in the Keybind editor in the menu, but unfortunately Escape is a special case and cannot be bound. You can press Enter to end a Bézier line, or switch to another tool to do it automatically. (Keybinds are also not persisted yet) You are right that the undo snapshots do not happen often enough, I was concerned about performance because it's a very simple undo implementation, it stores a snapshot of the entire project in memory for each operation. In the future I might make optimisations, but right now I could just add more snapshots, and also a way to restore which object was being edited at that time. You can view the undo stack in the History panel, and see which operations are not being saved. Snapping is already a feature request from over a year ago, and it's harder to do than in XTherion, since here you can move multiple segments, entire objects, or multiple objects at the same time. I don't really know how that would work, I imagine this would only be implemented for single segment selection with Detail select. You can discuss this here: https://github.com/daem-on/wtherion/issues/22 There was a zoom indicator in the original vector editor and I didn't think it was worth the screen space, but it's easy to implement. I don't think the scale you draw at in wtherion is very important, since you can, at any point, select all objects and scale them together by an arbitrary factor (hold Shift for keeping proportions). But it is possible to add a scaling option somewhere, there's just no place to add it currently, since wtherion Configuration would affect every project and projects have no settings of their own. As for the symbol set, the previews in the type list and the "Custom rendering" feature are all purely informative, if you're working with a different symbol set you can just turn them off or ignore them. If I understand correctly, this is not a concern in XTherion because it doesn't tell you anything about the symbols, you can get basically the same experience in wtherion. Once again, thank you, I hope this will lead to many improvements. Csongor Tarquin Wilton-Jones via Therion ezt írta (időpont: 2024. ápr. 17., Sze, 11:14): > > Some great changes since I last saw it! The response is really fast. > > A few things that have thrown me off, all of which are because the work > is not finished, so please take them only as a "it would be nice to keep > this in mind for the future". > > Bézier curves are very limited. I cannot make an unbalanced curve point > with a long smoothing arm on one side and short on the other (something > I do all the time). I also cannot make the points have arms pointing in > different directions than opposite each other (something else I have had > to do a number of times, untick the "smooth" box for a line point in > XTherion). > > Ending Bézier curves is not obvious. Esc does nothing. Very few keyboard > shortcuts seem to exist. > > Undo is not helpful for points within a line. It just undoes the whole > line. I clicked on a control point in a Bézier curve thinking it might > give me a menu to alter the drag handles, but instead it deleted the > point. I did not expect that and definitely did not want it. No way to > get it back that I could find. XTherion may occasionally screw up its > undo stack, but the undo functionality there is superb, because it seems > to remember every little thing that you did (until it eventually screws > up and throws an error). > > Create a Bézier line, right click and use other-bezier.menu.finish to > end it. Click to start a new line. Ctrl+Z and *both* lines disappear. > > It doesn't seem to snap points to each other, or if it does, it doesn't > have any way to show that it did. In XTherion, you can make lines share > the same point, so they are guaranteed to be warped together, and not > produce tiny overlaps. You can also move individual points if you got > them wrong, and make them snap to each other. > > It is not obvious that you can zoom (Ctrl+mousewheel). Some kind of zoom > indicator would be good. > > Line thickness is preset. You cannot set what the rendering scale will > be, which means it looks more cluttered than it will be when rendered. > > In future, it would be nice to be able to set
Re: [Therion] A wtherion update
Hello Nice work! I have an idea, how about replacing XTherion with a Visual Studio Code extension? Let's skip the part where we develop a whole new editor, we could just use an existing editor, and enhance it with a capability to run Therion compilation and with an integrated wtherion for scrap editing. Do you think it would be possible to run wtherion in such a way? Matěj po 15. 4. 2024 v 22:26 odesílatel Csongor Zih napsal: > > Hi everyone! > > I have an update to share regarding wtherion, which you hopefully > remember is my project for a web-based Therion map editor to replace > XTherion's map editing capabilities: > https://github.com/daem-on/wtherion > > I just spent the last two weeks rewriting the UI of wtherion, which > was originally a fork of a vector editing application, migrating the > parts that used jQuery to Vue. The canvas library and most of the > editing logic are the same, this change just means the editor UI can > be even more dynamic, complex and useful than before. This eliminated > a lot of unnecessary or overly complex code left from the vector > editor, and I hope in the future this will make it easier to maintain > and add new features to. > > Some of the more visible changes include: > - New layout and new UI styles > - Shortcuts icons for common actions > - Keybinds can be configured (this is not persisted yet) > - All select lists (including points/symbols) have preview images > - UI language can be changed at runtime > - New rendering capabilities > > This last one I'm especially happy about, it's a step towards actual > WYSIWYG editing, although that is not planned for this project. > Currently you can see, in real time, while editing, what your 'slope', > 'pit' or 'overhang' lines might look like when compiled. The main > limiting factor here is performance, since I don't know how capable > the average user's hardware will be, I tried to keep it optimised, and > I added a toggle for it in the toolbar. > > I'm planning on releasing a 1.0 version of wtherion in the future, but > I would like to hear feedback on this development version, which can > be reached at beta.wtherion.daemonw.com (this is also linked in the > GitHub repo). If you have suggestions on how it should work > differently, if it's not working well for your workflow, or if you > find a bug, please let me know here, or create an issue on GitHub. > > I can't make any guarantee as to the timeline of development, or how > quickly I'll respond. Admittedly, I haven't worked on this project > very actively in the last two years, but right now I want to spend > more time on it. > > The scope of the project hasn't really changed, but I'd be interested > to work on other projects that plan to replace the whole of XTherion, > or even replace text based editing. > > Csongor > ___ > Therion mailing list > Therion@speleo.sk > https://mailman.speleo.sk/listinfo/therion ___ Therion mailing list Therion@speleo.sk https://mailman.speleo.sk/listinfo/therion
Re: [Therion] A wtherion update
Some great changes since I last saw it! The response is really fast. A few things that have thrown me off, all of which are because the work is not finished, so please take them only as a "it would be nice to keep this in mind for the future". Bézier curves are very limited. I cannot make an unbalanced curve point with a long smoothing arm on one side and short on the other (something I do all the time). I also cannot make the points have arms pointing in different directions than opposite each other (something else I have had to do a number of times, untick the "smooth" box for a line point in XTherion). Ending Bézier curves is not obvious. Esc does nothing. Very few keyboard shortcuts seem to exist. Undo is not helpful for points within a line. It just undoes the whole line. I clicked on a control point in a Bézier curve thinking it might give me a menu to alter the drag handles, but instead it deleted the point. I did not expect that and definitely did not want it. No way to get it back that I could find. XTherion may occasionally screw up its undo stack, but the undo functionality there is superb, because it seems to remember every little thing that you did (until it eventually screws up and throws an error). Create a Bézier line, right click and use other-bezier.menu.finish to end it. Click to start a new line. Ctrl+Z and *both* lines disappear. It doesn't seem to snap points to each other, or if it does, it doesn't have any way to show that it did. In XTherion, you can make lines share the same point, so they are guaranteed to be warped together, and not produce tiny overlaps. You can also move individual points if you got them wrong, and make them snap to each other. It is not obvious that you can zoom (Ctrl+mousewheel). Some kind of zoom indicator would be good. Line thickness is preset. You cannot set what the rendering scale will be, which means it looks more cluttered than it will be when rendered. In future, it would be nice to be able to set the symbol set, especially for things like ceiling steps which are reversed in some of them, which makes it very hard to know which direction they will end up facing in the final render. I assume that all of these are just because it's a work in progress, and the progress is good enough that you're getting this kind of report :) ___ Therion mailing list Therion@speleo.sk https://mailman.speleo.sk/listinfo/therion
Re: [Therion] A wtherion update
Hello I have not yet tested in depth or in real topographical drawing conditions, but it is really great to be able to see the visual result of the lines without generating a PDF, I will test in my next topo, thank you very much ! Yann Le lun. 15 avr. 2024 à 22:26, Csongor Zih a écrit : > Hi everyone! > > I have an update to share regarding wtherion, which you hopefully > remember is my project for a web-based Therion map editor to replace > XTherion's map editing capabilities: > https://github.com/daem-on/wtherion > > I just spent the last two weeks rewriting the UI of wtherion, which > was originally a fork of a vector editing application, migrating the > parts that used jQuery to Vue. The canvas library and most of the > editing logic are the same, this change just means the editor UI can > be even more dynamic, complex and useful than before. This eliminated > a lot of unnecessary or overly complex code left from the vector > editor, and I hope in the future this will make it easier to maintain > and add new features to. > > Some of the more visible changes include: > - New layout and new UI styles > - Shortcuts icons for common actions > - Keybinds can be configured (this is not persisted yet) > - All select lists (including points/symbols) have preview images > - UI language can be changed at runtime > - New rendering capabilities > > This last one I'm especially happy about, it's a step towards actual > WYSIWYG editing, although that is not planned for this project. > Currently you can see, in real time, while editing, what your 'slope', > 'pit' or 'overhang' lines might look like when compiled. The main > limiting factor here is performance, since I don't know how capable > the average user's hardware will be, I tried to keep it optimised, and > I added a toggle for it in the toolbar. > > I'm planning on releasing a 1.0 version of wtherion in the future, but > I would like to hear feedback on this development version, which can > be reached at beta.wtherion.daemonw.com (this is also linked in the > GitHub repo). If you have suggestions on how it should work > differently, if it's not working well for your workflow, or if you > find a bug, please let me know here, or create an issue on GitHub. > > I can't make any guarantee as to the timeline of development, or how > quickly I'll respond. Admittedly, I haven't worked on this project > very actively in the last two years, but right now I want to spend > more time on it. > > The scope of the project hasn't really changed, but I'd be interested > to work on other projects that plan to replace the whole of XTherion, > or even replace text based editing. > > Csongor > ___ > Therion mailing list > Therion@speleo.sk > https://mailman.speleo.sk/listinfo/therion > ___ Therion mailing list Therion@speleo.sk https://mailman.speleo.sk/listinfo/therion
[Therion] A wtherion update
Hi everyone! I have an update to share regarding wtherion, which you hopefully remember is my project for a web-based Therion map editor to replace XTherion's map editing capabilities: https://github.com/daem-on/wtherion I just spent the last two weeks rewriting the UI of wtherion, which was originally a fork of a vector editing application, migrating the parts that used jQuery to Vue. The canvas library and most of the editing logic are the same, this change just means the editor UI can be even more dynamic, complex and useful than before. This eliminated a lot of unnecessary or overly complex code left from the vector editor, and I hope in the future this will make it easier to maintain and add new features to. Some of the more visible changes include: - New layout and new UI styles - Shortcuts icons for common actions - Keybinds can be configured (this is not persisted yet) - All select lists (including points/symbols) have preview images - UI language can be changed at runtime - New rendering capabilities This last one I'm especially happy about, it's a step towards actual WYSIWYG editing, although that is not planned for this project. Currently you can see, in real time, while editing, what your 'slope', 'pit' or 'overhang' lines might look like when compiled. The main limiting factor here is performance, since I don't know how capable the average user's hardware will be, I tried to keep it optimised, and I added a toggle for it in the toolbar. I'm planning on releasing a 1.0 version of wtherion in the future, but I would like to hear feedback on this development version, which can be reached at beta.wtherion.daemonw.com (this is also linked in the GitHub repo). If you have suggestions on how it should work differently, if it's not working well for your workflow, or if you find a bug, please let me know here, or create an issue on GitHub. I can't make any guarantee as to the timeline of development, or how quickly I'll respond. Admittedly, I haven't worked on this project very actively in the last two years, but right now I want to spend more time on it. The scope of the project hasn't really changed, but I'd be interested to work on other projects that plan to replace the whole of XTherion, or even replace text based editing. Csongor ___ Therion mailing list Therion@speleo.sk https://mailman.speleo.sk/listinfo/therion