leonatan / lnpropertylisteditor Goto Github PK
View Code? Open in Web Editor NEWA property list editor for AppKit, similar to the editor in Xcode.
License: MIT License
A property list editor for AppKit, similar to the editor in Xcode.
License: MIT License
If I add, remove, copy and paste an object in an expanded item and then collapse, that object will be added or removed in a wrong location.
if update a key inside nested dictionaries or arrays and then collapse, on undo / redo function the app crashes.
Currently, there is no way to edit NSData
entries
Very great work! Are you thinking of implementing drag and drop feature?
Hi Leo, great job!.
I'm trying to integrate plist editor on prefPane to manage launchctl based on Postgres-prefPane. As I would like to manage nginx, mariadb, postgres, ... I'd like to replace current edit view by your editor and check changes later (it's like Launchrocket ). Drag&Drop project and include framework fails on compile.
May you help?
First of all, this is a great library! Nice work!
My only issue is that I'm not seeing a way to automatically expand all the arrays/dictionaries in a LNPropertyListEditor object. Some of the plists I show in my app have a great deal of nesting, and manually expanding each group is quite time consuming.
Any ideas?
Hi Leo
This is an amazing library i am using it in my current project.
I have a question, can you suggest a way to add a search functionality ?
Data type plist values are represented by a <data>
string. Is this behaviour normal? Is it related to issue #1 ?
Thanks for both the app and the framework.
Bug-report.zip
Hey Leo, great job on this library!
I am creating this issue to document some bugs we've discovered and fixed. We've been living with them for a few weeks now and so I feel comfortable contributing back to this project. An accompanying PR is forthcoming.
ℹ️ Note that resolving the issues below revealed a few other issues. I'll include details about those in the PR.
NSKeyedUnarchiver
fault logs are emitted.***** -[NSKeyedUnarchiver validateAllowedClass:forKey:] allowed unarchiving safe plist type ''NSString' (0x1e1780918) [/System/Library/Frameworks/Foundation.framework]' for key 'key', even though it was not explicitly included in the client allowed classes set: '{(
"'LNPropertyListNode' (0x104650df0) [~/Library/Developer/Xcode/DerivedData/LNPropertyListEditorExample-eoszcjiazyaglicebgfeoshkripr/Build/Products/Debug/LNPropertyListEditor.framework]"
)}'. This will be disallowed in the future.**
testDict
or test
array nodeAn exception occurs: ***** -[__NSArrayM insertObject:atIndex:]: object cannot be nil**
. For me the app doesn’t crash, but the state of the editor is inconsistent. For example, attempting to sort by the key
column results in a blank editor. 🙃 On my colleagues machine, it would crash.
This looks great!
I was wondering if there was any way to build it as a standalone app?
I can't figure out how to expand an item if a node have the same key name.
I can expand the first node "item1->object", but not the second "item2->object" if the first is already expanded.
This is my working code:
-(id)outlineView:(NSOutlineView *)outlineView itemForPersistentObject:(id)object {
LNPropertyListNode *node = [NSKeyedUnarchiver unarchiveObjectWithData:object];
return [self itemForNode:node inNodes:[self.rootPropertyListNode children]];
}
-(id)outlineView:(NSOutlineView *)outlineView persistentObjectForItem:(id)item {
return (LNPropertyListNode*)[NSKeyedArchiver archivedDataWithRootObject:item];
}
-(id)itemForNode:(LNPropertyListNode*)object inNodes:(NSArray*)nodes {
for (LNPropertyListNode *node in nodes) {
if ([node.key isEqualToString: object.key]) {
return node;
}
LNPropertyListNode *item = [self itemForNode:object inNodes:node.children];
if ([item.key isEqualToString:object.key] ) {
return item;
}
}
return nil;
}
Can you help me? Thanks in advance.
If drop an item at the end of the outline editor the app crashes.
Adding github "LeoNatan/LNPropertyListEditor"
to my Cartfile as per the README, followed by running carthage update
gives an error – No tagged versions found for github "LeoNatan/LNPropertyListEditor"
.
It might be worth either tagging a version of this repo, or noting in the README that adding github "LeoNatan/LNPropertyListEditor" "master"
to a Cartfile can be used to work around this error and use the latest master.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.