Oh, sorry! You either need to add 'nodetags.py' to your
@enabled-plugins node in myLeoSettings.leo, or set
'@scripting-at-plugin-nodes = True' in myLeoSettings.leo.
-->Jake
On 8/4/2014 1:11 PM, [email protected] wrote:
On Monday, 4 August 2014 16:53:11 UTC+1, Jacob Peck wrote:
Regarding tags, I hacked the nodetags.py plugin together,
available at
commit b9a764c59de263fbdb47969f1d318759b955c442.
Attached is a test leo file for playing with it.
This is only an API for tags, but I feel like it should simplify the
process and allow someone to focus on the important bits, i.e. UI
hooks,
rather than low-level details. Also, it's usable now for scripts.
Here is the docstring:
Leo.plugins.nodetags
Provides an API for manipulating and querying textual tags on nodes
By Jacob M. Peck
This plugin registers a controller object to c.theTagController,
which
provides the following API:
tc = c.theTagController
tc.get_all_tags() # return a list of all tags used in the current
outline, automatically updated to be consistent
tc.get_tagged_nodes('foo') # return a list of positions tagged 'foo'
tc.get_tags(p) # return a list of tags applied to the node at
position
p; returns [] if node has no tags
tc.add_tag(p, 'bar') # add the tag 'bar' to the node at position p
tc.remove_tag(p, 'baz') # remove the tag 'baz' from p if it is in the
tag list
Internally, tags are stored in
p.v.unknownAttributes[‘__node_tags’] as a
set.
-->Jake
Thanks a LOT, Jake, for your work.
I have tried it, but obviously I am missing something, because when I
clicked on the add-tage button to add a tag to a node, I get the
following error messages:
'@script-button-button-btn-bg' from style-sheet comment definition,
please use regular @string / @color type @settings.
Abbreviations off
reading: C:\Users\User01\Desktop\tagtest.leo
exception executing script
AttributeError: 'Commands' object has no attribute 'theTagController'
--------------------
line 9:
* line 10: tc = c.theTagController
line 11: tag = ''.join(random.choice(string.ascii_uppercase) for _
in range(8))
line 12:
BTW, I also tried the other buttons, and they all give error messages.
I am running Python 3.3 under Windows 8.1.
--
You received this message because you are subscribed to the Google
Groups "leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
To post to this group, send email to [email protected]
<mailto:[email protected]>.
Visit this group at http://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.