emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Neil Jerram <neiljerram@gmail.com>
To: TEC <tecosaur@gmail.com>
Cc: org-mode-email <emacs-orgmode@gnu.org>
Subject: Re: Emacs as an Org LSP server
Date: Mon, 14 Dec 2020 17:57:27 +0000	[thread overview]
Message-ID: <CAKuG=vuqL6Gqe622br4Y5-G8=Lod-OjFwxZ+nHu=ezJCEf0fxQ@mail.gmail.com> (raw)
In-Reply-To: <871rfspa4y.fsf@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 5497 bytes --]

Yes, thanks, I'm seeing the picture now.  I guess that some of those things
would require extensions to the LSP standard/protocol, as well as just
implementation, wouldn't they?

On Mon, 14 Dec 2020 at 17:31, TEC <tecosaur@gmail.com> wrote:

> Hi Neil,
>
> Ah, I see what you’re getting at now. I’ll try to give you an idea of what
> I think could apply.
>
>    - Provide nice text manipulation actions, e.g. structural editing
>    - Completion, with company
>    - Org Export
>    - Run Babel blocks
>    - Org syntax highlighting (potentially)
>    - Folding (maybe)
>    - All the nice stuff like table alignment, checkbox state propagation…
>
> Does that help?
>
> All the best,
> *Timothy*
>
> * From*: Neil Jerram <%22Neil+Jerram%22+%3Cneiljerram@gmail.com%3E>
> * Subject*: Re: Emacs as an Org LSP server
> * To*: TEC <%22TEC%22+%3Ctecosaur@gmail.com%3E>
> * Cc*: "org-mode-email" <emacs-orgmode@gnu.org>
> * Date*: Tue, 15 Dec 2020 01:22:55 +0800
> I'm afraid things still aren't clear for me.  Is there a reason it's so
> hard to give a concrete example?
>
> If I try to analogise from how LSP works for golang, I believe the LSP
> server does things like
> - complete symbol beginning with "Xyz"
> - tell me where so-and-so function is defined (e.g. so that the client
> editor can jump to it).
> I'm not sure if operations like that make sense for Org.
>
> Another possibility might be interacting, from a 3rd party editor, with a
> body of Org content that has been primarily written and managed in Emacs.
> If so, what would those interactions be?  Marking a task as done?
> Something more complex than that?
>
> Or is it like: 3rd party editor opens an Org file and the user types some
> <random key sequence>.  Editor asks the LSP server (Emacs) "what does
> <random key sequence> mean?", and the server replies "it means the Org
> entry should now look like this: ..."
>
>
> On Mon, 14 Dec 2020 at 15:58, TEC <tecosaur@gmail.com> wrote:
>
>> Hi Neil,
>>
>> Good to hear that you did take a look at the readme 🙂.
>>
>> You can think of the LSP as a specification for cross-editor/IDE
>> extensions. The intent of this is to make some of Org’s functionality
>> accessible to the ~95% of people who don’t use Emacs, by hooking into Emacs
>> itself.
>>
>> Does that clear things up for you? You can also see
>> https://langserver.org/.
>>
>> All the best,
>> *Timothy*
>>
>> * From*: Neil Jerram <%22Neil+Jerram%22+%3Cneiljerram@gmail.com%3E>
>> * Subject*: Re: Emacs as an Org LSP server
>> * To*: TEC <%22TEC%22+%3Ctecosaur@gmail.com%3E>
>> * Cc*: "org-mode-email" <emacs-orgmode@gnu.org>
>> * Date*: Mon, 14 Dec 2020 23:46:12 +0800
>> Thanks Timothy.  I did read the README, but I'm afraid I still can't
>> quite picture a specific use.
>>
>>
>> On Mon, 14 Dec 2020 at 15:28, TEC <tecosaur@gmail.com> wrote:
>>
>>> Hi Neil,
>>>
>>> I’m going to quote you the readme from the linked github repo:
>>>
>>> Allow the unwashed masses to use Org, without using Emacs, using Emacs.
>>>
>>> Here’s the image from the readme [image: model.png]
>>>
>>> And here’s the first line from the first result of a google search for
>>> &ldquoLSP”:
>>>
>>> The Language Server Protocol (LSP) defines the protocol used between an
>>> editor or IDE and a language server that provides language features
>>> like auto complete, go to definition, find all references etc.
>>>
>>> That should give you an idea of the intent here.
>>>
>>> All the best,
>>> *Timothy*
>>>
>>> * From*: Neil Jerram <%22Neil+Jerram%22+%3Cneiljerram@gmail.com%3E>
>>> * Subject*: Re: Emacs as an Org LSP server
>>> * To*: TEC <%22TEC%22+%3Ctecosaur@gmail.com%3E>
>>> * Cc*: "org-mode-email" <emacs-orgmode@gnu.org>
>>> * Date*: Mon, 14 Dec 2020 19:41:05 +0800
>>> Could you describe a use case?  Apologies if I missed this in earlier
>>> threads.
>>>
>>>
>>> On Sun, 13 Dec 2020 at 10:44, TEC <tecosaur@gmail.com> wrote:
>>>
>>>>
>>>> A little progress update.
>>>>
>>>> https://github.com/tecosaur/org-lsp now exists.
>>>>
>>>> I have no idea what I'm doing, so if anyone has feedback on the current
>>>> idea, that would be much appreciated.
>>>>
>>>> TEC <tecosaur@gmail.com> writes:
>>>>
>>>> > Hi Everyone,
>>>> >
>>>> > From the Org standardisation effort the idea of using Emacs as the
>>>> basis
>>>> > of an LSP server for Org has been mentioned a few times.
>>>> >
>>>> > I thought this deserved it's own thread so here it is :)
>>>> >
>>>> > I'm quite keen to investigate the viability of this idea.
>>>> > Some key questions that I think need addressing are:
>>>> > 1. How can we 'package' Emacs into an LSP client?
>>>> > 2. Assuming we use some language as the basis for the host how do  we
>>>> >    want to pick it? LSP library? Lisp? Are there any outstanding
>>>> >    contenders.
>>>> > 3. How much effort is involved? Is it worth it to try to make Org
>>>> more
>>>> >    approachable* (without Emacs)?
>>>> >
>>>> > Lastly, but perhaps even more crucially --- who would be interested in
>>>> > working on this? I certainly am, but this feels like something that
>>>> > would be more viable with a small working group.
>>>> >
>>>> > Who's interested?
>>>> >
>>>> > Timothy.
>>>> >
>>>> >
>>>> > * I can't help but think that this hypothetical LSP server may
>>>>  serve as
>>>> >  a 'gateway drug' to Org in Emacs 😉
>>>>
>>>>
>>>>

[-- Attachment #2: Type: text/html, Size: 14845 bytes --]

  reply	other threads:[~2020-12-14 17:58 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-02 15:05 Emacs as an Org LSP server TEC
2020-12-13 10:41 ` TEC
2020-12-13 11:05   ` Bill Burdick
2020-12-13 14:36   ` Jean Louis
2020-12-13 17:33     ` TEC
2020-12-13 20:23       ` Jean Louis
2020-12-14  0:54         ` Gerry Agbobada
2020-12-14  1:04           ` Tim Cross
2020-12-14  1:10         ` George Mauer
2020-12-14 11:41   ` Neil Jerram
2020-12-14 15:25     ` TEC
2020-12-14 15:46       ` Neil Jerram
2020-12-14 15:55         ` TEC
2020-12-14 17:02           ` Jean Louis
2020-12-14 17:08             ` TEC
2020-12-14 18:05               ` Russell Adams
2020-12-14 18:12                 ` TEC
2020-12-14 19:16                   ` Russell Adams
2020-12-14 20:18                     ` Jean Louis
2020-12-14 21:34                     ` Tim Cross
2020-12-14 20:20                 ` Tim Cross
2020-12-14 21:45                   ` Tom Gillespie
2020-12-14 18:39               ` LSP is Microsoft's patented protocol - " Jean Louis
2020-12-14 18:44                 ` TEC
2020-12-14 18:52                   ` Jean Louis
2020-12-15  5:47                     ` Richard Stallman
2020-12-15  5:50                       ` Jean Louis
2020-12-15  6:09                         ` Christopher Dimech
2020-12-15  6:25                           ` Jean Louis
2020-12-15  6:51                             ` Christopher Dimech
2020-12-16  5:38                           ` Richard Stallman
2020-12-14 17:27             ` Gerry Agbobada
2020-12-14 18:16               ` Jean Louis
2020-12-14 18:26                 ` TEC
2020-12-14 18:50                   ` Jean Louis
2020-12-14 19:41                   ` Russell Adams
2020-12-14 18:51                 ` Bastien
2020-12-15  8:51               ` Bill Burdick
2020-12-14 19:50             ` Tim Cross
2020-12-14 21:51               ` Jean Louis
2020-12-14 22:35                 ` Dominik Schrempf
2020-12-14 23:36                   ` Jean Louis
2020-12-14 17:22           ` Neil Jerram
2020-12-14 17:24             ` TEC
2020-12-14 17:57               ` Neil Jerram [this message]
2020-12-14 18:04                 ` TEC
2020-12-14 17:39             ` Russell Adams
2020-12-14 17:45               ` TEC
2020-12-16 11:49   ` Bastien

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAKuG=vuqL6Gqe622br4Y5-G8=Lod-OjFwxZ+nHu=ezJCEf0fxQ@mail.gmail.com' \
    --to=neiljerram@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=tecosaur@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).