The program is smart enough to detect whether some of your fan(s) blades are spinning, or the particular fan have been removed. Hold down some of your fan blades and you'll see that the program won't include this fan and it's RPM, release the blades and you'll see the fan and it's RPM in the statusbar. Try simulating real fan hardware failure by holding down all system fan blades and watch what the program will show you, just try not to slice your cheesy fingers open in the process.
-You can extend pinky-bar with your own crafted perl/python/ruby/lua/R/assembly/lisp/ocaml/rust/go script.
+You can extend pinky-bar with your own crafted perl/python/ruby/lua/R/assembly/lisp/ocaml/rust/go/c++ script.
If you compile your kernel from source code make sure to include your cpu and motherboard sensors as **modules** and not inlined.
| | --asm | Extend pinkybar with assembly, learn more from the Opt-in section. |
| | --lisp | Extend pinkybar with your scripts written in lisp, learn more from the Opt-in section. |
| | --ocaml | Extend pinkybar with your scripts written in ocaml, learn more from the Opt-in section. |
-| | --rust | Extend pinkybar with your scripts written in rust, learn more from the Opt-in section. |
-| | --go | Extend pinkybar with your scripts written in go, learn more from the Opt-in section. |
+| | --rust | Extend pinkybar with your scripts written in rust, learn more from the Opt-in section. |
+| | --go | Extend pinkybar with your scripts written in go, learn more from the Opt-in section. |
+| | --cpp | Extend pinkybar with your cpp, learn more from the Opt-in section. |
| -q | --weather | Show the temperature outside [argument - London,uk] |
| -U | --uptime | The system uptime |
| -w | --loadavg | The system average load for past 1, 5 and 15 minutes |
| --with-ocaml | --without-ocaml | Extend pinkybar with your own crafted scripts written in ocaml |
| --with-rust | --without-rust | Extend pinkybar with your own crafted scripts written in rust |
| --with-go | --without-go | Extend pinkybar with your own crafted scripts written in go |
+| --with-cpp | --without-cpp | Extend pinkybar with c++ program |
| --with-weather | --without-weather | The temperature outside (some details must be provided) |
| api\_key='123458976' | | API key obtained after registering yourself in the weather website, must be combined **--with-weather** |
| --with-smartemp | --without-smartemp | Read the drive temperature from S.M.A.R.T cross-platform available |
Copy the code from extra/scripts/drive-temperature.sh or `exec` it from **xinitrc** or the script used to start your DE/WM.
-To extend pinkybar with your own crafted perl/python/ruby/lua/assembly/R/ocaml/lisp/rust/go script:
+To extend pinkybar with your own crafted perl/python/ruby/lua/assembly/R/ocaml/lisp/rust/go/c++ script:
* perl
* python == 2.7 (--with-python2)
* rust
* go
-Have a look at extra/scripts/pinky.{py,pl,ruby,lua,R,s,lisp}, they serve as examples how to write the most basic scripts in order to extend pinkybar in python/perl/ruby/lua/R/assembly/lisp/ocaml/rust/go. You can use all languages simultaneously.
+Have a look at extra/scripts, the examples there will teach you how to write the most basic scripts in order to extend pinkybar in python/perl/ruby/lua/R/assembly/lisp/ocaml/rust/go/c++. You can use all languages simultaneously.
Please, please do **NOT** export or set PYTHONPATH on it's own line.
~/pinkbar --go
```
+**--with-cpp**
+
+The source code resides in the **src** folder under the name of **c++.cpp**
+
+```bash
+~/pinkbar --cpp
+```
+
-----
To get the sound volume level:
AM_INIT_AUTOMAKE([1.13 -Wall no-define foreign subdir-objects dist-xz no-dist-gzip std-options])
AM_SILENT_RULES([yes])
-{perl will replace this line}
+m4_define([cuRos],[GENTOO]) m4_define([LINUKS], [cryMeAriver])
# With the addition of more runtime compile and
# link tests, this option is no longer necessary.
AC_HEADER_STDC
AM_PROG_CC_C_O
AM_PROG_AS
+AC_PROG_CXX
# AM_EXTRA_RECURSIVE_TARGETS([ncurses])
TEST_OCAML
TEST_RUST
TEST_GO
+TEST_CPP
AC_CONFIG_FILES([
Makefile
echo
echo 'Now type \"make\" and \"make install\" afterwards'
-echo
+echo
\ No newline at end of file
your cheesy fingers open in the process.
.PP
You can extend pinky\-bar with your own crafted
-perl/python/ruby/lua/R/assembly/lisp/ocaml/rust/go script.
+perl/python/ruby/lua/R/assembly/lisp/ocaml/rust/go/c++ script.
.PP
If you compile your kernel from source code make sure to include your
cpu and motherboard sensors as \f[B]modules\f[] and not inlined.
Opt\-in section.
T}
T{
+T}@T{
+\[en]cpp
+T}@T{
+Extend pinkybar with your cpp, learn more from the Opt\-in section.
+T}
+T{
\-q
T}@T{
\[en]weather
Extend pinkybar with your own crafted scripts written in go
T}
T{
+\[en]with\-cpp
+T}@T{
+\[en]without\-cpp
+T}@T{
+Extend pinkybar with c++ program
+T}
+T{
\[en]with\-weather
T}@T{
\[en]without\-weather
it from \f[B]xinitrc\f[] or the script used to start your DE/WM.
.PP
To extend pinkybar with your own crafted
-perl/python/ruby/lua/assembly/R/ocaml/lisp/rust/go script:
+perl/python/ruby/lua/assembly/R/ocaml/lisp/rust/go/c++ script:
.IP \[bu] 2
perl
.IP \[bu] 2
.IP \[bu] 2
go
.PP
-Have a look at extra/scripts/pinky.{py,pl,ruby,lua,R,s,lisp}, they serve
-as examples how to write the most basic scripts in order to extend
-pinkybar in python/perl/ruby/lua/R/assembly/lisp/ocaml/rust/go.
+Have a look at extra/scripts, the examples there will teach you how to
+write the most basic scripts in order to extend pinkybar in
+python/perl/ruby/lua/R/assembly/lisp/ocaml/rust/go/c++.
You can use all languages simultaneously.
.PP
Please, please do \f[B]NOT\f[] export or set PYTHONPATH on it's own
\f[]
.fi
.PP
+\f[B]\[en]with\-cpp\f[]
+.PP
+The source code resides in the \f[B]src\f[] folder under the name of
+\f[B]c++.cpp\f[]
+.IP
+.nf
+\f[C]
+~/pinkbar\ \-\-cpp
+\f[]
+.fi
+.PP
* * * * *
.PP
To get the sound volume level:
not to slice your cheesy fingers open in the process.
You can extend pinky-bar with your own crafted
-perl/python/ruby/lua/R/assembly/lisp/ocaml/rust/go script.
+perl/python/ruby/lua/R/assembly/lisp/ocaml/rust/go/c++ script.
If you compile your kernel from source code make sure to include your
cpu and motherboard sensors as @strong{modules} and not inlined.
@tab Extend pinkybar with your scripts written in go, learn more from
the Opt-in section.
@item
+--cpp
+ @tab Extend pinkybar with your cpp, learn more from the Opt-in section.
+@item
-q
@tab --weather
@tab Show the temperature outside [argument - London,uk]
@tab --without-go
@tab Extend pinkybar with your own crafted scripts written in go
@item
+--with-cpp
+ @tab --without-cpp
+ @tab Extend pinkybar with c++ program
+@item
--with-weather
@tab --without-weather
@tab The temperature outside (some details must be provided)
from @strong{xinitrc} or the script used to start your DE/WM.
To extend pinkybar with your own crafted
-perl/python/ruby/lua/assembly/R/ocaml/lisp/rust/go script:
+perl/python/ruby/lua/assembly/R/ocaml/lisp/rust/go/c++ script:
@itemize
@item
go
@end itemize
-Have a look at extra/scripts/pinky.@{py,pl,ruby,lua,R,s,lisp@}, they
-serve as examples how to write the most basic scripts in order to extend
-pinkybar in python/perl/ruby/lua/R/assembly/lisp/ocaml/rust/go. You can
-use all languages simultaneously.
+Have a look at extra/scripts, the examples there will teach you how to
+write the most basic scripts in order to extend pinkybar in
+python/perl/ruby/lua/R/assembly/lisp/ocaml/rust/go/c++. You can use all
+languages simultaneously.
Please, please do @strong{NOT} export or set PYTHONPATH on it's own
line.
~/pinkbar --go
@end verbatim
+@strong{--with-cpp}
+
+The source code resides in the @strong{src} folder under the name of
+@strong{c++.cpp}
+
+@verbatim
+~/pinkbar --cpp
+@end verbatim
+
@iftex
@bigskip@hrule@bigskip
@end iftex
])
-dnl TEST_RUST() function in configure.ac
+dnl TEST_GO() function in configure.ac
dnl
dnl Substitute ECL related linker flags
dnl to the variable ECL_LIBS if
-dnl the user enabled the --with-rust switch
+dnl the user enabled the --with-go switch
AC_DEFUN([TEST_GO],[
GO_LIBS=""
WITH_GO=0
AS_HELP_STRING([--with-go],
[Extend the program via go scripts]),
[],
- [with_rust=no]
+ [with_go=no]
)
AS_IF([test "x$with_go" = "xyes"], [
AC_SUBST(GO_LIBS)
AC_DEFINE_UNQUOTED([WITH_GO],[$WITH_GO],[Extend the program via go scripts])
])
+
+
+dnl TEST_C++() function in configure.ac
+dnl
+dnl Substitute ECL related linker flags
+dnl to the variable ECL_LIBS if
+dnl the user enabled the --with-c++ switch
+AC_DEFUN([TEST_CPP],[
+ WITH_CPP=0
+
+ AC_ARG_WITH([cpp],
+ AS_HELP_STRING([--with-cpp],
+ [Extend the program via c++]),
+ [],
+ [with_cpp=no]
+ )
+
+ AS_IF([test "x$with_cpp" = "xyes"], [
+ WITH_CPP=1
+
+ ])
+
+ AC_DEFINE_UNQUOTED([WITH_CPP],[$WITH_CPP],[Extend the program via c++])
+])
python.c \
R.c \
go.c \
+ c++.cpp \
../extra/scripts/pinky.s \
prototypes/ecl.h \
prototypes/common.h \
prototypes/R.h \
prototypes/go.h \
prototypes/ocaml.h \
+ prototypes/cpp.hpp \
include/headers.h \
include/options_constants.h \
include/functions_constants.h \
--- /dev/null
+/*
+ 06/23/2017
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ MA 02110-1301, USA.
+*/
+
+#include <string>
+using std::string;
+
+#include "config.h" /* Auto-generated */
+
+#if WITH_CPP == 1
+#include "include/headers.h"
+#endif /* WITH_CPP */
+
+#include "prototypes/cpp.hpp"
+
+#if WITH_CPP == 1
+void get_cpp(char *str1) {
+ const string str("Hello World");
+ FILL_STR_ARR(1, str1, str.c_str());
+}
+#else
+char *cpp9;
+#endif /* WITH_CPP */
#include "prototypes/ocaml.h"
#include "prototypes/rust.h"
#include "prototypes/go.h"
+#include "prototypes/cpp.hpp"
/* Because we ran out of a-z A-Z options,
* only long ones will be supported from now on.
OCAML,
RUST,
GO,
+ CPP,
BULLSHIFT
};
const char *argp_program_version = PACKAGE_STRING;
{ .name = "go", .key = GO, .doc = "Extend the program with go, read README." },
#endif /* WITH_GO */
+#if WITH_CPP == 1
+ { .name = "cpp", .key = CPP, .doc = "Extend the program with c++, read README." },
+#endif /* WITH_CPP */
+
#if WITH_WEATHER == 1
{ .name = "weather", .key = 'q', .arg = "London,uk", .doc = "The temperature outside." },
#endif /* WITH_WEATHER */
#endif /* WITH_GO */
+#if WITH_CPP == 1
+ NEW_LABEL(CPP, char cpp[VLA], cpp, FMT_KERN);
+#endif /* WITH_CPP */
+
+
#if WITH_WEATHER == 1
NEW_ARG_LABEL('q', char weather[VLA], weather, OUT_STR YELLOW STR_SPEC" ");
#endif /* WITH_WEATHER */
--- /dev/null
+/*
+ 06/16/2017
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ MA 02110-1301, USA.
+*/
+
+#ifndef CPP_H_
+#define CPP_H_
+
+#if WITH_CPP == 1
+#ifdef __cplusplus
+ extern "C" {
+#endif /* __cplusplus */
+
+void get_cpp(char *);
+#ifdef __cplusplus
+ }
+#endif /* __cplusplus */
+
+#endif /* WITH_CPP */
+
+#endif /* CPP_H_ */