At FOSDEM yesterday I was demoing the Enlightenment IDE that I have been working on. My laptop is a touchscreen and I had it in tablet mode for the demo, so far so good. Until a couple of sharp attendees noted that there was no multi-touch. Huh, neither it does.
Enter rasterman – “Did you enable xinput2.2?”, erm no, no I didn’t…
Passing –enable-xinput22 to the efl ./configure fixed it! magic 🙂 The image above shows 2 taps simultaneously in the elementary_test Gesture Layer 2 demo.
Job done. Now to fix a couple of multi-touch gesture bugs I have found :(.
It’s been quite some time so I wanted to provide an update on the EDI project. The aim was to make getting into Linux development as easy as possible, and to help developers learn how to builds apps using the EFL. Clearly that’s a grand plan and along the way there was a lot of challenges to overcome.
The first major hurdle, beyond actually creating a vision, project definition and basic application, was to make an editor that was powerful but easy to use. None of the available components at this time met the challenge (the early pre-releases were built on existing editor components as best we could), so a new editor needed to be built.
Elm_Code is this new component – it’s been in development for around 6 months now (since early planning began at the E Dev Day alongside LinuxCon Europe 2014) and it’s shaping up nicely. We have highlighting support, inline error overlays and great performance (a few leaks aside…) – and it fits into EDI like this:
As it’s all under heavy development there aren’t many releases just now, but it’s moving forward really fast. We’re more tightly coupled to the EFL development at this time so our next exciting release will be alongside their 1.15 release in August.
In the meantime I’d love to leave you with this excellent snippet from an Enlightenment user who recently tried out EDI.
Lastly for this post I wanted to thank raster for the great new icon he made for the app earlier this week – it looks much better and fits well with the Enlightenment suite of apps. We also created a page on the main web site to give a more refined summary of the project.
The power of the APIs available to a linux developer is immense. To help illustrate I have a quote from wilsonk who is learning the EFL APIs:
It’s a good point – where do you even start?
EDI – that’s where. We are building a brand new IDE for linux development that aims to make getting into Linux development as easy as possible. It’s in early stages just now but please check it out and let us know what you think!
A video of my EDI (Enlightenment IDE) presentation in Düsseldorf last month – not bad for my first E related appearance I think…
Another year another E developer day right? Almost. This time was different – I was up to present… Showing the guys how my IDE project was going and why they should all get involved in helping me out. This fitted the theme of the event quite well – Raster started the day by showing how much faster the EFL is growing than GTK+ or Qt and calling to our attention that we needed more developers to support that growth.
I proposed that a great way to encourage more developers is to provide an integrated tooling environment that practically teaches you the EFL way of doing things. Linux has a great many text editors, some of which understand code. If what you want is just to create a project and get coding however there is a significant lack.
Step in EDI – it will be the complete development environment for EFL / Linux and hopefully match the style and polish we all love in Enlightenment too. Lots more exciting things to come on this topic but feel free to grab it now (from source) it’s got the basic functionality in already!
Shortly it will be moved to the main E apps development space and pick up the pace of development too 🙂
The presentation was recorded and should be online soon – I’ll link to it once it’s available.
“If you want to succeed then you need to immerse yourself in the problem” – wise advice from a business mentor of mine… My long serving Apple Macs run everything – work, media, side project coding and now VMs filled with Linux and Enlightenment. They are shiny and solid but have strange keyboard layouts, nonstandard hardware and a bad implementation of virtual desktops that get in the way of desktop virtualisation. So for the first time in nearly 10 years I bought not-a-mac.
This new PC laptop (note not a “windows PC”, I hate that term – it came with windows but that’s not a defining feature…) should be a great device for pushing the limits of modern display and input software. I wanted something light, thin and powerful with at least a 13″ screen. Essentially a competitor to the MacBook Air, but more modern and without the Mac downsides – also avoiding a lookalike, something that’s cool in its own right.
Let’s face it there aren’t a lot of devices in this class but I settled (after some time) on the Lenovo Yoga 2 Pro. This is a solid core i7 device with a decent amount of RAM and SSD storage. The screen is an impressive 13.3″ that has more pixels than my retina 15″ MacBook Pro – as well as being a touch screen too! Couple that with the fact that it inverts to become a tablet. All of those features are packed into a bright orange shell that is no heavier or larger (at the thickest point) than a MacBook Air. Impressive!
So after a short trial of windows 8.1 (yuck! What a confused system) I installed arch Linux (details in a different post – to follow) and it went very smoothly. Out of the box it was up and running with full res video and complete audio in & out. The keyboard (including all the special function keys), trackpad and touchscreen also worked perfectly. After installing the wpa_gui wi-fi was complete too (a little config juggling was required to connect to my secured wifi and download the packages but nothing too taxing). And most surprising when the keyboard is folded back on the screen it is disabled as you expect – though I think this may be a hardware feature. As of now all that is not working is automatic screen rotation (the gyroscope seems non-standard) and the windows icon/button on the screen which I had not realised was a button.
The only issue with the machine so far has been the insanely high pixel density. You can work around it by telling Xorg to scale 2x but you lose the quality so I didn’t want to do that. Thankfully Enlightenment has built-in support for output scaling so I went right ahead and installed the latest version from their source. As with any large compiling from source task it took a while to get all the dependencies but I put that in a script for future use. The compile and install went well – grab EFL, Elementary, Enlightenment and Entrance for a good base experience. Git master is really stable and I really enjoy being on the cutting edge but if you don’t have that thirst then you should probably grab release tarballs instead.
This new machine has given me a great platform to immerse myself in Linux and Enlightenment. Scaling and touch interfaces are things that need a little work still but I’m helping out with that. Next I’m going to be further developing the Enlightenment IDE (EDI) which is already a good place to be working on EFL based code. It’s a work heavily in progress but I’m hoping to get some more contributors soon and start pulling in cool new features to get more Software Engineers into creating apps for Enlightenment.
Want to know more about my E install or Linux on the Yoga 2 Pro? Drop a comment below or hit the contact page.
So I mentioned before a project called EDI and I’ve been posting some info online but I never really described it here. So – for my faithful followers – what am I up to?
In absence of other active projects (such as growing a company, establishing a software platform or maintaining apps) I decided to get back to some Enlightenment development. After around 8 years off the project a lot had changed – I was struck by how complete the EFL APIs had become but was also surprised that Linux still suffered from a lack of polished development environments.
And so I figured 3 birds with 1 stone –
- Learn the new EFL APIs and help with some bug fixing
- Create a slick new IDE for Linux
- Reduce the barriers for new developers looking to create apps for Enlightenment.
By creating a native IDE application using the Enlightenment libraries we can harness their APIs and render scripts to provide a powerful integrated environment. With any luck we’ll be able to bring in various other E projects to provide graphical editing or version control etc.
I also just completed the icon for the app – see above. I think it works quite well, I hope you guys like it too…
Please stop by the planning page which is kept up to date with progress. I’ll also be posting more updates here as and when there are things to report. Hopefully there will be a great app here for everyone to enjoy soon.