I am looking for additional functionality that seem unavailable for current version.
So is it possible for developer community to add functionality or modify existing libraries?
Related
I am building a documentation solution where I need to use some custom extensions. For a writer it is often important to see some preview of his work, therefore I am looking for an editor that would support preview generation with these custom extensions. Asciidoc is a very versatile, but it is sometimes difficult to navigate in the ecosystem, because different engines are available, which support different features in different languages.
Which editors support preview with custom extensions?
Asciidoc ecosystem has a lot of engines: Ruby-based, JS-based and Java-based. Different editors use different engines and support different subset of features.
AsciidocFX, asciidoc-vscode, Adobe Brackets and Atom make use of asciidocjs engine.
AsciidocFX can be hacked to include js-based plugins, according to its maintainers.
Asciidoc-vscode recently dropped functionality to use external processor (any of those mentioned), so now there is no official mean to use other extensions.
Atom and Brackets do not mention this kind of functionality.
Eclipse and IntelliJ use java-based processor.
Eclipse can use external processor to handle extensions. It is not possible with embedded engine.
IntelliJIdea can use compiled Java extensions or Ruby extensions if they do not require any other libraries. To enable an extension you should only place it into .asciidoctor/lib in the root of the project. In case your custom ruby-based extension has any dependencies, they should be placed under gempath, which is ~/.gems/jruby/2.5.0 for me. That can be done with gem install --install-dir <gempath> <gem> command.
Conclusions: Asciidoctor has a very versatile and easy to extend engine. Broad ecosystem exists. The downsides are:
A choice paradox
Only a few editors can support your homemade customizations, and it is not easy to figure out which do.
i am new to Unity and i am try to understand plugins. I have got the difference between a managed plugin and a native plugin, but what is not very clear to me is:
what is the difference between a plugin and a dll? what should i expect to find in an sdk to make it usable in my unity project?
Thanks a lot
To expand on #Everts comment instead of just copying it into an answer, I'll go a little into details here
What is a plugin?
It's a somewhat vague word for a third-party library that is somehow integrated with the rest of your game. It means that it neither is officialy supported by Unity, nor is it a part of your core code. It can be "plugged" in or out without altering its internals, so it must provide some kind of API that can be used by the game code.
For example, you'll find many plugins that handle external services like ads, notifications, analytics etc. You'll also find a couple of developer-tools that can also be called plugins, like tile-based map editors and such.
Plugins come in many forms - DLL files are one example but some plugins actually provide full source code for easier use. And of course, other plugins will provide native code for different platforms, like Objective-C for iOS or .jars for Android.
So to answer your first question:
DLL is simply a pre-compiled source file that can be a part of a plugin
A plugin is a whole library that can consist of multiple files with different formats (.cs, .dll, .jar, .m etc)
What do you need to use an sdk?
First of all - documentation. Like I said before, and like you noticed yourself, not all plugins give you access to the source code. And unfortunately, not many sdks have extensive and developer-friendly documentations so it can be a tough task to actually understand how to use a given sdk.
Secondly - the code. Many sdks give you some kind of "drag & drop" library, a single folder with all the neccessary files inside that you simply add to your Unity projects. I've also seen sdks that use Unity packages that you have to import via Assets > Import Package > Custom Package.
Once you have the code and documentation it's time to integrate it with your game. I strongly recommend using an abstract lyer in your game as, in my experience, you often have to change sdks for various reasons and you don't want to rewrite your game logic every time. So I suggest encapsulating sdk-related code in a single class so that you have to change only one class in your code when switching from, say, one ad provider to another (and keep the old class in case you need to switch back).
So you basically need three things:
Documentation (either a readme file or an online documentation)
The code (precompiled or source)
A versatile integration
I'm new to java and image processing. I want to develop a java application with functionalities like thresholding and hitorgrams related operations. I have considered about 2 image processing libraries; JAI and imageJ.
I have found that imajeJ is more suitable, but when i searched for it to download i only found a tool instead of a library. Can someone tell me where i can download imageJ api(/library) and install it, so i can use it in netbeans.
Download the latest ImageJ jar from here and add it as an external library for your project. You can then program to the API as described in the API documentation. The servlet example provided here may be of use.
I would like to build an iOS app that includes some basic Git functionality. I basically only need pull, commit, and push capabilities. I'm new to iOS development so I am not aware of any frameworks or libraries that could provide these capabilities. I'm not sure if GitHub has an API for these features but that would suffice too.
Let me answer this old question with libgit2 library and their ObjectiveGit wrapper.
libgit2 is a portable, pure C implementation of the Git core methods provided as a re-entrant linkable library with a solid API, allowing you to write native speed custom Git applications in any language which supports C bindings.
ObjectiveGit provides Cocoa bindings to the libgit2 library. Even their licenses allow you to build closed-source software.
Found a random guide to making a commit with the API, no clue how accurate/useful it is.
GitHub API is available, details here : http://developer.github.com/
I had a look at Appcelerator Titanium and I was wondering if it lets the developer interact with external accessories the way expected with traditional Apple's Objective-C External Accessory Framework.
Have somebody already explored the thing?
I had used appcelerator in past but moved back to cocoa/obj-c. Appcelerator does make implementation faster for javascript developers but to use anything not provided in the appcelerator package, one needs to create their own modules etc which is a headache.
Moreover, the support for appcelerator is good only if you are in the paid support. Community help is available for free but can't help you in complicated issues requiring modules etc.
Also, appcelerator nearly always lags behind cocoa releases in terms of features, stability etc.
If you're working on a large project then my suggestion would be to stick with cocoa. If you're new to cocoa then appcelerator might be an easy path to explore to see if it fits your needs.
There are several open sourced modules, these three are done by the titanium folks and walk you through how to create your own. I can't find anything about the "External Accessory Framework" already created in a TiModule.