maestrith / AHK-Studio

Created with AHK Studio
http://www.maestrith.com
365 stars 68 forks source link

Feature Request: Bookmark support #8

Closed hoppfrosch closed 9 years ago

hoppfrosch commented 10 years ago

Would be nice to have same bookmark support as most other editors have

In a second step elaborated bookmark features would be nice:

maestrith commented 10 years ago

Added bookmark system.

maestrith commented 10 years ago

Please remove from the first post the things that I have added so I know what I need to work on.

hoppfrosch commented 10 years ago

I marked the done items with keyword DONE and strikethrough. To get easier overview I'm thinking about adding each point as separate github issue. Therefore it will be more clear what items are done and which are not ... What do you think?

maestrith commented 10 years ago

I have this set as a blue bookmark. If this is not good enough I am sorry, but it is the best way that I know how to show it.

I am not exactly sure what or how you would like to edit in regard to the bookmark

Currently if you Shift+Click the bookmark in the numbers line (blue bookmark) it will delete it. I can make a menu item if that would help.

This can be a bit tricky, but I am sure it can be done. Bookmarks can be set for separate includes within a project so do you think this functionality should be only within the current file, or within the project, or from all projects?

If it is anything other than all projects I will have to re-write the bookmarks system. All previous bookmarks will still be there, but they will not be organized by project. They will have to be re-created after I write the new storing format.

*Clear all bookmarks

Once again, bookmarks can be for multiple files, so do you want the ability to remove the bookmarks from the current project, or all bookmarks across all projects?

maestrith commented 10 years ago

*Functionality to set bookmarks on all functions, labels (anything the code explorer is able to detect to). This would allow a easy navigation from e.g. function to function within source by jumping to next next bookmark

I do not see this as being efficient. Using Omni-Search is a much more exact way of getting to functions, labels, classes...etc rather than having to jump between what could be hundreds of bookmarks in a larger script to find it when you could just type in {your_class or :your_label or (your_function. I intend on writing the next/previous bookmark functionality but it will go in order of when the bookmarks were created. So if you set a bookmark on line 100 first and then set a bookmark on line 50, then line 120, then line 1 it will go from 100, 50, 120, 1. The data is stored in xml and in order to sort it, it requires me to add extra functions. I am not too sure if I will find the time to figure this out, or be able to...as I do this for free my time is prioritized by what free time I have, and then by how I feel. Please do not think this is lazy but I make no money from this and I am not always motivated to do these things, and to be honest if I do not see a reason to do so I may not include it. I already had quite a bit of trouble with the bookmarks and keeping them in order and adding extra sorting functionality would make keeping them in order a monumental task.

Not to mention that the information that Code Explorer gets is based on position from the beginning of the document, and the line numbers are set from Scintilla. The data points are derived from separate places.

maestrith commented 10 years ago

Also if you press Shift+Click in the space where bookmarks appear it will also add a bookmark.

hoppfrosch commented 10 years ago

Hi Maestrith.

my feature request about Functionality to set bookmarks on all functions, labels was written before I even noticed/get the hint for OmniSearch. That's for sure an easy way to navigate to dedicated bookmarks, functions etc.

A few editors I used offered the feature ("Bookmark all functions" - but not for AutoHotkey). I found this feature useful in cases I did some reorganizaion/refactoring of my code when I wanted to be sure not to miss for example any function within my code. Doing this task using OmniSearch you have to remember, which function you alteady worked on - jumping from bookmark to next bookmark makes this task easier ...

As I wrote in an other issue, it's your decision what to implement and what not.If you think it's not worth or is too expensive (or any other reason) - omitt it. As long as I'm the only one who requests it, there's no real user base with this demands and therefore no real need to implement it.

Please do not think this is lazy but I make no money from this and I am not always motivated to do these things, and to be honest if I do not see a reason to do so I may not include it.

Feel free to do whatever you want - I'm the last one to critisize this (who am I to do this ...)

hoppfrosch commented 10 years ago
  • Clear bookmark

Currently if you Shift+Click the bookmark in the numbers line (blue bookmark) it will delete it. I can make a menu item if that would help.

In my eyes a command would be helpful - having this you don't need to use the mouse when deleting a bookmark

Bookmark explorer ... with possibility to edit bookmarks there also

I thought about a box, listing all bookmarks with the ability to delete bookmarks there via pressing "DEL"-Key for example. As there is a different implementation via OmniSearch (which is better) this will probably not be possible ("DEL"-key) and not be neccessary if there will be "Delete Bookmark" / "Delete all bookmarks" commands available

If it is anything other than all projects I will have to re-write the bookmarks system. All previous bookmarks will still be there, but they will not be organized by project. They will have to be re-created after I write the new storing format.

  • Clear all bookmarks

Once again, bookmarks can be for multiple files, so do you want the ability to remove the bookmarks from the current project, or all bookmarks across all projects?

For the moment the "all project" approach is sufficient in my eyes. Other features would be nice (for example: All bookmarks in current file / current project) - but I don's see a real use for it at the moment

maestrith commented 10 years ago

Added: -Jump to next/previous bookmark -Delete Bookmark I had no idea I could edit your issues :)

maestrith commented 10 years ago

I think I have this list done now....if so close it, otherwise let me know what I messed up.