Hi Juergen, Elias and all, Some time ago we have been discussing the idea to move help from gnu-apl-mode in Emacs into the GNU APL itself.
Now since we have a help in GNU APL, I've implemented network command in emacs_mode part of GNU APL which will send requested help as a list of S-expressions ready to be parsed on a Emacs side. See patches and new files attached (to be applied/added into the src/emacs_mode directory) I've also implemented support for this command in emacs-mode, corresponding pull-request is here: https://github.com/lokedhs/gnu-apl-mode/pull/26 This combination has been tested locally. The changes are backwards-compatible.
HelpCommand.hh
Description: Binary data
HelpCommand.cc
Description: Binary data
Index: Makefile.am =================================================================== --- Makefile.am (revision 1032) +++ Makefile.am (working copy) @@ -28,7 +28,8 @@ UnixSocketListener.cc UnixSocketListener.hh \ util.cc util.hh \ VariablesCommand.cc VariablesCommand.hh \ - VersionCommand.cc VersionCommand.hh + VersionCommand.cc VersionCommand.hh \ + HelpCommand.cc HelpCommmand.hh .PHONY: git-pull git-pull:
Index: emacs.hh =================================================================== --- emacs.hh (revision 1032) +++ emacs.hh (working copy) @@ -34,7 +34,7 @@ void set_active( bool v ); -#define PROTOCOL_VERSION "1.5" +#define PROTOCOL_VERSION "1.6" #define END_TAG "APL_NATIVE_END_TAG" #define NOTIFICATION_START_TAG "APL_NATIVE_NOTIFICATION_START"
Index: NetworkConnection.cc
===================================================================
--- NetworkConnection.cc (revision 1032)
+++ NetworkConnection.cc (working copy)
@@ -36,6 +36,7 @@
#include "SystemFnCommand.hh"
#include "SystemVariableCommand.hh"
#include "SendCommand.hh"
+#include "HelpCommand.hh"
#include <iostream>
#include <sstream>
@@ -70,6 +71,7 @@
add_command( commands, new SystemFnCommand( "systemcommands" ) );
add_command( commands, new SystemVariableCommand( "systemvariables" ) );
add_command( commands, new SendCommand( "sendcontent" ) );
+ add_command( commands, new HelpCommand( "help" ) );
}
NetworkConnection::~NetworkConnection()
-- Br, /Alexey
