Embed XCode(8) editor for Swift [closed] - objective-c

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I am creating an application which besides everything else must display Swift (and ObjectiveC) source code, with code highlighting, inspections, compiler warning and errors.
Is there a way to reuse the XCode functionality which does that? Any internal APIs which are stable enough?
Note that since XCode v8 there are no XCode plugins according to WWDC 2016.

Unfortunately, what you want doesn't exist — there are no system APIs (private or otherwise) that will let you embed Xcode functionality in the way that you want. However, you can take a look at tools like SourceKitten (a wrapper around the SourceKit service that does the syntax highlighting and semantic parsing for Xcode) to replicate some of that yourself.
Depending on what you're looking for and the type of IDE that you want to implement, there are embeddable versions of other editors (say, vim, via the embeddable frameworks that projects like vimr provide) which can provide syntax highlighting and some compilation, but then you're coupling yourself to those editors, how they work, and the features they provide.

Related

Is it ok to use a non-English, foreign language variable name? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
For me, English is too big a mountain. So whenever I use tools like Visual Studio 2017 (C ++), Unity 3D(C#), Visual Studio Code (html), Eclipse (java), and Android Studio, I've always assigned variables in my native language.
ex)
int get넓이(int 가로, int 세로)
{
int square = 가로 * 세로;
return square;
}
However, many people advised not to use non-English variable names because they can 'cause errors'. But I have not experienced any errors yet.
I also contacted the Unity Game Engine customer center on this issue.
And they answered me like this. "You can do this by going to [Visual Studio → File → Advanced Save Options], and then specify" Save as default encoding option "to UTF-8."
So, I wonder if there is an error when programming in a language other than English. because I have not experienced errors using non-English variable names. I have also contacted other community sites on this issue, but I have not seen anyone who experienced the issue.
It completely depends on what language you are programming in. For example, Python3 will support it (mostly, as long as it's Unicode), however, Python2 will not like it at all as it only supports ASCII.
As with any code, if it makes it easier for you then do it. Just try your best to make it readable to others if it is going to be deployed to others. Just make sure your language fully supports Unicode.
C++ has supported Unicode identifiers for a long time with some compiler caveats. So do Java and C#. So there should be no problem compiling it unless you use an old compiler or and old C or C++ standard
However code is for others to read later. Unless you don't want anybody to maintain your code you can use variables in another language.

Using Sphinx within a project using several programming languages [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
the project I am working on ship a package that contains API for different languages: Java, Python, C#, and others. All these APIs shared mostly the same documentation. The documentation should be available in PDF and HTML separately on our website. The user usually download/browse the one it is interested in.
Currently we use sdocml, but we are not that satisfied and so we want to move to a more up to date tool and we are considering Sphinx.
Looking at the Sphinx documentation I cannot clearly figure out how:
1- say to generate the docs for a certain API (for instance the Java one)
2- does autodoc works for any domain?
3- is there a c# extension?
Any help is most welcome!
The best way to combine different languages in one Sphinx project is to write docs without autodoc or other means of automatic generation. For the most part they are available only for Python and even if some extension out there does allow other languages, you will be buried under different workflows before you even notice.
Salvage your docs from the code and write them in concise manner in a separate docs folder of your project or even separate repository. You could use the generic Sphinx directories like class or method with no attachment to the code and for virtually any major programming language. I for myself did a project like that, where I needed to combine C, C++ and Python code in one API and it was done manually.
If you create this kind of detached project, the maintenance should be much of an issue. It's not much harder, than autodoc workflow. What for PDF and HTML - any Sphinx project allows that. See their docs for details on different builders like latexpdf or html.

What is the new Jetbrains web-based code-browsing tool (based on IntelliJ)? [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 9 years ago.
Improve this question
Recently, I was watching a presentation in which JetBrains demonstrated a new, web-based code-browsing tool.
It's based on the IntelliJ code base, which supports code navigation operations such as show implementations, find usages, and so forth.
Unfortunately, I'm unable to find the presentation again. Does anyone know the name of this tool?
Since the tool is in pre-release, it wasn't possible to google any information about it. So thanks for any info!
It's called JetBrains Upsource and you can see it in action at https://upsource.jetbrains.com/
Upsource (that's the name of the tool) developer here. We just published a new preview build, by the way - check it out.
Regarding your browser compatibility question - I'm assuming you're getting an outdated browser warning, is it true? It shouldn't be the case with Firefox 20, though we generally support the last two released versions of every major browser (which, in case of Firefox, means 22 and 23). Upsource makes heavy use of latest web technologies to do what it does, therefore - no old browsers.

How to organize information about program solution? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
Неllо. I develop system that works with stock exchange(system, below). And there is a lot of information my program need to interact with this system. This system has formal declared interface, but different details beside this declaration and requirements to my system is often changed. So how can I organize available information about this system and requirements to my program that it could be both easy to understand and easy to change.
Your first and foremost goal is to create documentation for the relevant APIs your program exposes and then add documentation for the configuration files, maybe even set up a validator for configuration that.
Automatically generated content from code annotations (depending on your solution, it might be .NET's XML docs or PHPdoc, etc.) is the first step – this will help you document classes and interfaces as you work on the code. The next step is documenting non-code assets. If you have XML configuration, you can write schemas to validate against, for example.
After that comes integration documentation – steps that need to be taken on the production server and/or workstations to install, upgrade and maintain the application, including support scripts.

Wysywig literate programming (or viewing generated documentation on-the-fly) [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I use a lot of illustrations, diagrams and equations to document C++ and python codes, and a way to do this is to inline them with doxygen. The problem is that, when coding, they are not directly available in the code (unless I use ascii-art for this purpose).
Is there an automatic, quick and fast way to, while coding, view the generated documentation? E.g., I could have a separate Eclipse tab with the rendered documented code (HTML), while coding in another tab... and the documentation rendering tab would be updating automatically as I change the code and the documentation.
Is this possible? Is there a tool, plug-in for Eclipse or add-on for Visual Studio enabling this?
Frankly, I use a second monitor (or second computer) to view such documentation just to keep them out of the way - I want to see them alongside my Visual Studio screen not taking up space that could be occupied by code.
I publish the generated Doxygen documentation to an internal web server so if you have an HTML viewer plugin you could just point it to that. (I usually have a browser open alongside).
You could setup your Doxygen project to be generating directly into the web server directory so there's no copying time to get it renewed.
One tip, if you have a large code base and Doxygen takes an annoyingly long time is to have a special setup file just pointing at the code you're working on, to quickly regenerate the relevant couple of pages. You could have a python script observing the directory and re-running Doxygen if files change.
Try my LP tool - http://code.google.com/p/nano-lp - it supports OpenOffice/LibreOffice, so you can write LP programs in WYSIWYG manner. By the way, if you decide to use markup language instead of OpenOffice, NanoLP supports several of them.