[EGIT] [website/www-content] master 01/01: Wiki page start changed with summary [] by Raster
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=e259945c0ea20ecf8bbc8bf0b1dd90fab8396d68 commit e259945c0ea20ecf8bbc8bf0b1dd90fab8396d68 Author: Raster ras...@rasterman.com Date: Sat May 2 08:15:53 2015 -0700 Wiki page start changed with summary [] by Raster --- pages/docs/c/start.txt | 136 +++-- 1 file changed, 109 insertions(+), 27 deletions(-) diff --git a/pages/docs/c/start.txt b/pages/docs/c/start.txt index 8bdfd03..bc70b0c 100644 --- a/pages/docs/c/start.txt +++ b/pages/docs/c/start.txt @@ -3,35 +3,129 @@ Preface -//This is not a theoretical C language specifications document. It is a practical primer for the vast majority of real life cases of C usage that are relevant to EFL. It covers application executables and shared library concepts and is written from a Linux/UNIX perspective where you would have your code running with an OS doing memory mappings and probably protection for you. It really is fundamentally not much different on Android, iOS, OSX or even Windows.// +//This is not a theoretical C language specifications document. It is a practical primer for the vast majority of real life cases of C usage that are relevant to EFL on todays common architectures. It covers application executables and shared library concepts and is written from a Linux/UNIX perspective where you would have your code running with an OS doing memory mappings and probably protection for you. It really is fundamentally not much different on Android, iOS, OSX or even Windows.// -//It won't cover esoteric details of strange architectures which may, in theory exist, but in real life are long dead, never existed, or are so rare that you won't need to know. It pretty much thinks of C as a high level assembly language that is portable across a range of modern architectures.// +//It won't cover esoteric details of strange architectures. It pretty much covers C as a high level assembly language that is portable across a range of modern architectures.// -//Keep this in mind when reading, and know that some facets of C have been adapted to take this view of things. It simply makes everything easier and more practical to learn, along with actually being relevant day-to-day in usage of C.// + Your first program + +Let's start with the traditional Hello world C application. This is about as simple as it gets for an application that does something you can see. + +code c hello.c +#include stdio.h + +int +main(int argc, char **argv) +{ + printf(Hello world!\n); + return 0; +} +/code + +You would compile this on a command-line as follows: + + cc hello.c -o hello + +Run the application with: + + ./hello + +You should then see this output: + + Hello world! + +So what has happened here? Let's first look at the code itself. The first line: + +code c +#include stdio.h +/code + +This tells the compiler to literally include the **stdio.h** file into your application. The compiler will find this file in the standard locations to look for include files and literally paste it there where the include line is. This file provides some standard I/O features, such as ''printf()''. + +The next thing is something every application will have - a ''main()'' function. This function must exist only once in the application because this is the function that is run //AS// the application. When this function exits, the application does. + +code c +int +main(int argc, char **argv) +{ +} +/code + +The ''main()'' function always returns an ''integer'' value, and is given 2 parameters on start. Those are an integer ''argc'' and then an array of strings. In C an array is generally just a pointer to the first element. A String is generally a pointer to a series of bytes (chars) which ends in a byte value of 0 to indicate the end of the string. We'll come back to this later, but as we don't use these, just ignore this for now. + +The next thing that happens is for the code to call a function ''printf()'' with a string Hello world!\n. Why the \n at the end? This is an escape. A way of indicating a special character. In this case this is the //newline// character. Strings in C can contain some special characters like this, and \ is used to begin the escaped string. + +code c +printf(Hello world!\n); +/code + +Now finally we return from the main function with the value 0. The ''main()'' function of an application is special. It always returns an integer that indicates the success of the application. This is used by the shell executing the process to determine success. A return of ''0'' indicates the process ran successfully. + +code c +return 0; +/code + +You will notice a few things. First lines starting with ''#'' are commands, but don't have a '';''. This is normal because these lines are processed by the pre-processor. All code in C goes through the C
[EGIT] [website/www-content] master 01/01: Wiki page start changed with summary [] by Philippe Caseiro
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=0fcfdbf3948705a237e4a1a009c2467abeb9d5d6 commit 0fcfdbf3948705a237e4a1a009c2467abeb9d5d6 Author: Philippe Caseiro pcase...@cadoles.com Date: Sat May 2 08:39:06 2015 -0700 Wiki page start changed with summary [] by Philippe Caseiro --- pages/start.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pages/start.txt b/pages/start.txt index 33d2e64..6ac41f9 100644 --- a/pages/start.txt +++ b/pages/start.txt @@ -46,4 +46,6 @@ Even [[http://www.tizen.org|native Tizen applications]] use EFL for their develo This is by no means a complete list of applications, and we are not done making more. We may not have started the traditional way, but are building our library over time, and Tizen has another library brewing over there as well. -Crazy french was here :p +The Crazy french guys were here !! + +Go on Raster fix your Dokuwiki ! --
[EGIT] [core/enlightenment] master 01/01: e_ipc: fix creation of IPC server when $DISPLAY is a path
discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=385a06bd027f725937fa724210f0c7cb9f3c9a00 commit 385a06bd027f725937fa724210f0c7cb9f3c9a00 Author: Jean Guyomarc'h jean.guyoma...@gmail.com Date: Sat May 2 10:04:28 2015 -0400 e_ipc: fix creation of IPC server when $DISPLAY is a path Summary: Some implementations of the X server (e.g. Xquartz) define their $DISPLAY as a path. Since ecore_ipc_server_add() does not create non-existant directories, and since it may not worth to hide the socket in a complex path, this patch aims at reducing the $DISPLAY by only keeping its basename. Reviewers: zmike Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2465 --- src/bin/e_ipc.c | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/bin/e_ipc.c b/src/bin/e_ipc.c index 4cdf4ba..aca762c 100644 --- a/src/bin/e_ipc.c +++ b/src/bin/e_ipc.c @@ -17,7 +17,7 @@ EINTERN int e_ipc_init(void) { char buf[4096], buf2[128], buf3[4096]; - char *tmp, *user, *disp, *base; + char *tmp, *user, *disp, *disp2, *base; int pid, trynum = 0, id1 = 0; struct stat st; @@ -73,6 +73,12 @@ e_ipc_init(void) disp = getenv(DISPLAY); if (!disp) disp = :0; + else + { +/* $DISPLAY may be a path (e.g. Xquartz), keep the basename. */ +disp2 = strrchr(disp, '/'); +if (disp2) disp = disp2 + 1; + } e_util_env_set(E_IPC_SOCKET, ); --
[EGIT] [core/enlightenment] enlightenment-0.19 01/01: e_ipc: fix creation of IPC server when $DISPLAY is a path
discomfitor pushed a commit to branch enlightenment-0.19. http://git.enlightenment.org/core/enlightenment.git/commit/?id=35bba6b6c0f3afec9ddf8f6e53164ad9525027f7 commit 35bba6b6c0f3afec9ddf8f6e53164ad9525027f7 Author: Jean Guyomarc'h jean.guyoma...@gmail.com Date: Sat May 2 10:04:28 2015 -0400 e_ipc: fix creation of IPC server when $DISPLAY is a path Summary: Some implementations of the X server (e.g. Xquartz) define their $DISPLAY as a path. Since ecore_ipc_server_add() does not create non-existant directories, and since it may not worth to hide the socket in a complex path, this patch aims at reducing the $DISPLAY by only keeping its basename. Reviewers: zmike Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2465 --- src/bin/e_ipc.c | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/bin/e_ipc.c b/src/bin/e_ipc.c index 5af2f69..be97696 100644 --- a/src/bin/e_ipc.c +++ b/src/bin/e_ipc.c @@ -17,7 +17,7 @@ EINTERN int e_ipc_init(void) { char buf[4096], buf2[128], buf3[4096]; - char *tmp, *user, *disp, *base; + char *tmp, *user, *disp, *disp2, *base; int pid, trynum = 0, id1 = 0; struct stat st; @@ -73,6 +73,12 @@ e_ipc_init(void) disp = getenv(DISPLAY); if (!disp) disp = :0; + else + { +/* $DISPLAY may be a path (e.g. Xquartz), keep the basename. */ +disp2 = strrchr(disp, '/'); +if (disp2) disp = disp2 + 1; + } e_util_env_set(E_IPC_SOCKET, ); --
[EGIT] [tools/enventor] master 01/01: lib/main: minus initialization count when it's shutdown.
hermet pushed a commit to branch master. http://git.enlightenment.org/tools/enventor.git/commit/?id=5966093325e34f7bca27686cabd91945c198fba7 commit 5966093325e34f7bca27686cabd91945c198fba7 Author: ChunEon Park her...@hermet.pe.kr Date: Sun May 3 02:59:26 2015 +0900 lib/main: minus initialization count when it's shutdown. @fix --- src/lib/enventor_main.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/enventor_main.c b/src/lib/enventor_main.c index 646cb49..ab690a1 100644 --- a/src/lib/enventor_main.c +++ b/src/lib/enventor_main.c @@ -113,6 +113,8 @@ enventor_shutdown(void) return 0; } + if ((--_enventor_init_count) 0) return _enventor_init_count; + ecore_event_handler_del(_key_down_handler); _key_down_handler = NULL; --
[EGIT] [website/www-content] master 01/01: Add contribute page, explaining how to contribute to E project. We need now to add Flattr and Paypal button. One option is to install flattr and paypal plugi
captainigloo pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=ddd4f3e0822f16749306bad8f97c96d20fe83b9c commit ddd4f3e0822f16749306bad8f97c96d20fe83b9c Author: Nicolas Aguirre aguirre.nico...@gmail.com Date: Sun May 3 01:26:59 2015 +0200 Add contribute page, explaining how to contribute to E project. We need now to add Flattr and Paypal button. One option is to install flattr and paypal plugins here https://www.dokuwiki.org/plugin:flattr and here https://www.dokuwiki.org/plugin:paypal or let type html syntax inside markdown: https://www.dokuwiki.org/faq:html The page is still not yet linked with the topbar. --- pages/contribute.txt | 34 ++ 1 file changed, 34 insertions(+) diff --git a/pages/contribute.txt b/pages/contribute.txt new file mode 100644 index 000..bb9338c --- /dev/null +++ b/pages/contribute.txt @@ -0,0 +1,34 @@ +~~Title: Contribute~~ + + How to contribute to Enlightenment + +=== Give time === + +If you have free time, help is welcome in different areas: + + * Developers: See the [[docs|documentation]], subscribe to the +[[contact|mailing lists]], create a [[http://phab.enlightenment.org|phab +account]], have a look at the opened tasks, join [[contact|IRC channel]] to get +help on how to start coding + * Writers: to help improve the documentation + * Translators: to translate Enlightenment, Terminology, Edi, ... + * Designers: to help to get edje themes of all applications better + +=== Donate money === + +Enlightenment project needs money for different reasons : + + * Maintain servers, on which are running all the sevices : git, phab, mailing lists, ... + * Promote the project by organising or participating in events (FOSDEM, ELC, LinuxTag, ...) + * Buy hardware for developping and testing purpose. + +Enlightenment Association is a non-profit organisation, under French +law. Enlightenment association has its own bank account and is responsible for running and +maintaining the Enlightenment servers. + +Donate to Enlightenment via PayPal or Flattr you can donnate money to the +project through Enlightenment's PayPal account. There is no minimal amount for +your donation. If you click on one of the buttons below, you will be taken to +the secure PayPal Web site. You don't need to have a paypal account in order to +make a donation. + --
[EGIT] [website/www-content] master 02/02: Revert Wiki page start changed with summary [] by Philippe Caseiro
raster pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=8e53c79d9875f1e0b10fcf14acc28ba872fed8e9 commit 8e53c79d9875f1e0b10fcf14acc28ba872fed8e9 Author: Carsten Haitzler (Rasterman) ras...@rasterman.com Date: Sun May 3 09:00:30 2015 +0900 Revert Wiki page start changed with summary [] by Philippe Caseiro This reverts commit 4542be71e6369ab8d9014abcbe9a1750503e558a. --- pages/start.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/pages/start.txt b/pages/start.txt index 33d2e64..bd2caf3 100644 --- a/pages/start.txt +++ b/pages/start.txt @@ -45,5 +45,3 @@ Even [[http://www.tizen.org|native Tizen applications]] use EFL for their develo {{:shot-edi.png?nolink240 }} This is by no means a complete list of applications, and we are not done making more. We may not have started the traditional way, but are building our library over time, and Tizen has another library brewing over there as well. - -Crazy french was here :p --