From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Ergus via "Emacs development discussions." Newsgroups: gmane.emacs.devel Subject: Re: Lightweight, C-only implementation of Emacs Date: Sat, 21 Sep 2019 17:01:46 +0200 Message-ID: <20190921150146.3qojnldxpkuwx666@Ergus> References: Reply-To: Ergus Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="170287"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: NeoMutt/20180716 Cc: bobnewell@bobnewell.net, noloader@gmail.com, monnier@iro.umontreal.ca To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Sep 21 17:02:53 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iBguT-000hvb-1b for ged-emacs-devel@m.gmane.org; Sat, 21 Sep 2019 17:02:53 +0200 Original-Received: from localhost ([::1]:42256 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iBguH-0002oR-31 for ged-emacs-devel@m.gmane.org; Sat, 21 Sep 2019 11:02:41 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:39365) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iBgtd-0002o2-UR for emacs-devel@gnu.org; Sat, 21 Sep 2019 11:02:03 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iBgtc-0002QG-44 for emacs-devel@gnu.org; Sat, 21 Sep 2019 11:02:01 -0400 Original-Received: from sonic315-13.consmr.mail.bf2.yahoo.com ([74.6.134.123]:46819) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iBgtb-0002Q1-JY for emacs-devel@gnu.org; Sat, 21 Sep 2019 11:02:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1569078119; bh=UTWV2IwJ5y0s03r5OMmKYZ6pDY2XMbuN5DoEE1bvPs0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From:Subject; b=gzI16wSwkj1uo0704l168bWpUf8hDgNu5uSchJFdtoWpHKSnsR8SSw9+A370ozJF7f7rvwvnn6/I8TGdTEmINHAyDV0GZfaGLQ/g1BR3gFfwWVfwCdLIwndcrnP+sZqEFipQBdAt6+/SgwGYAs3QVz8aTYRL+7l6RmEYYqv2Vpg5G2S1yUOQYRxxhP5dQonoxkaBJz3xBu3HrzV4BlOrKXAZ23mo84/i52fj9wNjX5CutUfFgEUCjvSQIDCPxuq+Gqox96luHFp94it6UkqP3FnwTN2Y6CNj7VS4sUFKIzMKCCXfkyXFc2JVfMeTUKh6fp6t82ITkyrNdpOEFBPAYQ== X-YMail-OSG: 0hsv.VkVM1mkxN0n.vxXvYJviZwqkNS5y75Z4idgaMixd9aopabyheVSchVh65J XJf.SJtXLOQPTHNQyvz965OP5mDGwcsX1qReV8DHxK3dP5Cvs9gzeO9ppkqECSCD2.veQcIStoZ3 .RNTZlb4zKquz.o8PZlXBfs2252rJQzyInxd4uqeULBGyug3TMlImnjug15tDZT9K_jp_UazT.VC 170YyMPUwvAGZohcnPbY26qDwdy0vTtaFiQX55TtDHDFWlzxBnt.GkVQ5HuFCjoQbghAvk2Ep3r4 kcEFLcrW0FVJtZtJI0fXrsDttZnjodd96Mao5RmKXJX0aWbdKFVRt2s.OaTzsVQrF5Ey2IVE8gRZ tsJYmZIKNbg6xEoetlgCYdkkSIM5vrl73AE.q.P797j2TRU5_Zm4BgS4zLEgYRqOOuJPiEuyruVy c6MCMQQKPmIvpZcofG578xZ_57LLQQGDUtiKsJ7HGDF.XGP5zmsFd7LNEp7st7dEw2Q3eL3030UR FEG5amfPxTdF5gnksCTDQy4ZeVHyHINIVo16QY0CXQu6pZUIDhNX_Jx_5crXYRwvQtMRjpEJZYn6 f6DLI8x_7gFJgFQeYLATBgy3imAfHOYMnbkoRC6EYYaNQZklnQrKxPTvz6YEIgUvJWyzLCrr_npK xJMHSBNULwqqiUbKE6QfhsEN9Z9ftONBm4T8w7PRPgMAF4N7LgRLaea09PXa.lJoyz16DJ59R7UV yLlYgIQ4yRUIu4mfGyWbefnCYL5L9W0LyUMiv_snsCyBEtx4bh2VB1_UmUInSqaPE.Hwiassw2jp zazPj8Ix.VC2fsAyEbFi4kETF4t7MYqduTSkImNlv8 Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic315.consmr.mail.bf2.yahoo.com with HTTP; Sat, 21 Sep 2019 15:01:59 +0000 Original-Received: by smtp408.mail.ir2.yahoo.com (Oath Hermes SMTP Server) with ESMTPA ID 83e830cc43b0510e31907de5fcfbff5c; Sat, 21 Sep 2019 15:01:55 +0000 (UTC) Content-Disposition: inline In-Reply-To: X-Mailer: WebService/1.1.14303 hermes Apache-HttpAsyncClient/4.1.4 (Java/1.8.0_181) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 74.6.134.123 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:240220 Archived-At: Sorry for necrobumping this thread, but after some time I have discovered Qemacs and tried for a while (a week). https://savannah.nongnu.org/projects/qemacs I need to say that it is a more functional C-only alternative to emacs because unlike zile: - Does not depend of gnulib, gc, or external non-standard libraries or emacs itself. (zile needs emacs to run the tests) - Not even a complex autotools file is needed. (gnulib integration is very hard and for some reason they don't support anything else than autotools... which sometimes is too complex for small projects and limits integration with other tools like CMake and enforces the use and knowledge of autotools/autoconf and so on) - It have syntax-highlight for some of the common languages like C/Rust/swift/perl and others. - It has search candidates highlight. - It seems to be very modular to implement modules and languages modes (In C of course). - It has some simple support for org-mode - Allows vertical splits not only horizontal. - It has gui and tui interfaces (with -nw as usual, zile does not have - gui version) - Multiplatform support (win32 included, and specialization for some terminals like xterm and so on.) - Provides and API to create plugins in C without recompiling the editor, as it loads .so files. - No garbage collection is needed. - Line numbers functionality supported. - utf-8 support and bidirectional editing. I should say that I added some primitive support for linum, colors, fill column-indicator and mouse interaction to zile in my personal fork on github... but couldn't ever commit it as I never got a reply to join to the project. So I freely added some non-gnu changes like migrate it to CMake But if anyone is interested: https://github.com/Ergus/Zile Limitations: - No lisp machine at all (configuration is in a file with a C-like syntax) which from some points of view is not a limitation. ( performance, no gc, no C-to-lisp code api needed, no byte-compiler/lisp interpreter to maintain) - Extensibility is more complex as it requires compiling the plugin. - Have had only 2 contributors in it's history, which is good because all the code is very organized and standard. So there is not community there. (but actually is the same with Zile) - Still developed with CVS, I asket to move it to git... but who knows if I even get a reply. - It is in savannah but it is a nongnu project. - The documentation is very simple... maybe too short. Hope this helps. On Wed, Aug 21, 2019 at 03:58:27PM -0700, chad wrote: >Linus Torvalds supposedly uses a version of mg (formerly Micro GNU Emacs) >that is maintained along with the Linux kernel: > > https://git.kernel.org/pub/scm/editors/uemacs/uemacs.git > >Hope that helps, >~Chad > >On Sat, Aug 17, 2019 at 6:27 PM Jeffrey Walton wrote: > >> Hi Everyone, >> >> I'm trying to find a lightweight C-only implementation of Emacs for >> Linux. I need it for situations like this: >> https://redmine.pfsense.org/issues/9682 . >> >> Searching is pretty much useless due to irrelevant results. I found >> Zile at https://www.gnu.org/software/software.html#allgnupkgs , but it >> fails to build (it configures OK). >> >> I understand I will probably loose some functionality due to decoupling >> Lisp. >> >> Does anyone have a list of Emacs replacements? >> >> Thanks in advance. >> >> Jeff >> >>