emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [Announcement] lsp-mode integration with org-mode
@ 2020-06-07 19:20 Ivan Yonchovski
  2020-06-08  9:54 ` TEC
  2020-06-09  1:08 ` stardiviner
  0 siblings, 2 replies; 7+ messages in thread
From: Ivan Yonchovski @ 2020-06-07 19:20 UTC (permalink / raw)
  To: emacs-orgmode

Hi all,

lsp-mode -> org-mode integration allows using Language Server Protocol
features (e. g. completion, on-the-fly diagnostics, references,
refactoring, etc.) in org-mode source blocks. This was the most wanted
feature in our bug tracker and I think that it provides unique
functionality not avaiable in any other editor and it is great addition
to the org-mode ecosystem. In the future, we have also planned support
for debugging in source buffer.

Link to the docs and short demo:

https://github.com/emacs-lsp/lsp-mode/blob/master/docs/page/lsp-org.md


Thanks,
Ivan


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Announcement] lsp-mode integration with org-mode
  2020-06-07 19:20 [Announcement] lsp-mode integration with org-mode Ivan Yonchovski
@ 2020-06-08  9:54 ` TEC
  2020-06-08 11:30   ` Ivan Yonchovski
  2020-06-09  1:08 ` stardiviner
  1 sibling, 1 reply; 7+ messages in thread
From: TEC @ 2020-06-08  9:54 UTC (permalink / raw)
  To: Ivan Yonchovski; +Cc: emacs-orgmode

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


Ivan Yonchovski <yyoncho@gmail.com> writes:

> Hi all,
>
> lsp-mode -> org-mode integration allows using Language Server Protocol
> features (e. g. completion, on-the-fly diagnostics, references,
> refactoring, etc.) in org-mode source blocks.

That sounds great! Just to check, in the demo you have :tangle "demo2.cpp",
this would also work with :tangle yes, yes?

One question --- does this also work in the minibuffers? At the moment I have a
hack in my config
(https://tecosaur.github.io/emacs-config/config.html#lsp-support-src) to provide
this functionality, but it doesn't use the context of the entire file, which
would be a nice improvement.

Great to see this regardless! Thanks for implementing it :)

Timothy.

[-- Attachment #2.1: Type: text/html, Size: 995 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Announcement] lsp-mode integration with org-mode
  2020-06-08  9:54 ` TEC
@ 2020-06-08 11:30   ` Ivan Yonchovski
  2020-06-08 13:53     ` TEC
  0 siblings, 1 reply; 7+ messages in thread
From: Ivan Yonchovski @ 2020-06-08 11:30 UTC (permalink / raw)
  To: TEC; +Cc: emacs-orgmode

Hi TEC,


TEC writes:

> That sounds great! Just to check, in the demo you have :tangle "demo2.cpp",
> this would also work with :tangle yes, yes?

lsp-mode will need actual file path to work. I am not sure what "yes"
will mean in this context. Generaly, we could plug a mechanism to
interactively pick the file name (which is what we are going to do for
markdown-mode) but still lsp-mode will expect org-babel-tangle to export
to that file(or we should have replacement for that mechanism).

>
> One question --- does this also work in the minibuffers? At the moment I have a
> hack in my config
> (https://tecosaur.github.io/emacs-config/config.html#lsp-support-src) to provide
> this functionality, but it doesn't use the context of the entire file, which
> would be a nice improvement.

Can you give me an example of that usecase? Generally, we have
introduced "virtual-buffer" abstraction so technically we could
implement running language server over anything. E. g. one could select
random text block and run a language server over it.

Thanks,
Ivan


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Announcement] lsp-mode integration with org-mode
  2020-06-08 11:30   ` Ivan Yonchovski
@ 2020-06-08 13:53     ` TEC
  2020-06-08 14:20       ` Ivan Yonchovski
  0 siblings, 1 reply; 7+ messages in thread
From: TEC @ 2020-06-08 13:53 UTC (permalink / raw)
  To: Ivan Yonchovski; +Cc: emacs-orgmode

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

 
Ivan Yonchovski <yyoncho@gmail.com> writes: 
 
>> That sounds great! Just to check, in the demo you have :tangle 
>> "demo2.cpp", this would also work with :tangle yes, yes? 
> 
> lsp-mode will need actual file path to work. I am not sure what 
> "yes" will mean in this context.

This is fairly simple, it means inherit the file name, and apply 
the relevant extension. For example a python block in demo.org 
with :tangle yes exports to demo.py.
>> One question --- does this also work in the minibuffers? At the 
>> moment I have a hack in my config 
>> (https://tecosaur.github.io/emacs-config/config.html#lsp-support-src) 
>> to provide this functionality, but it doesn't use the context 
>> of the entire file, which would be a nice improvement. 
> 
> Can you give me an example of that usecase? Generally, we have 
> introduced "virtual-buffer" abstraction so technically we could 
> implement running language server over anything. E. g. one could 
> select random text block and run a language server over it. 

This is what pops up when you call org-edit-special (C-c '). It's 
nice because it changes the major mode, and has better font-lock 
performance.
 
Hopefully that helps,

Timothy.

[-- Attachment #2.1: Type: text/html, Size: 1585 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Announcement] lsp-mode integration with org-mode
  2020-06-08 13:53     ` TEC
@ 2020-06-08 14:20       ` Ivan Yonchovski
  0 siblings, 0 replies; 7+ messages in thread
From: Ivan Yonchovski @ 2020-06-08 14:20 UTC (permalink / raw)
  To: TEC; +Cc: emacs-orgmode

Hi,

TEC writes:

> This is fairly simple, it means inherit the file name, and apply the relevant
> extension. For example a python block in demo.org with :tangle yes exports to
> demo.py.

That would work you may open lsp-mode issue to track it. We are in a
middle of some huge refactoring so I will be able to handle it after we
are finished with it.

> This is what pops up when you call org-edit-special (C-c '). It's nice because
> it changes the major mode, and has better font-lock performance.

Got it. This part is not changed, for it you do not need the virtual
buffer thing - it is sufficient to use your hack. Once we settle down
the org-mode support we might move parts from the hack in lsp-mode.el.

Thanks,
Ivan


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Announcement] lsp-mode integration with org-mode
  2020-06-07 19:20 [Announcement] lsp-mode integration with org-mode Ivan Yonchovski
  2020-06-08  9:54 ` TEC
@ 2020-06-09  1:08 ` stardiviner
  2020-09-03 10:09   ` Bastien
  1 sibling, 1 reply; 7+ messages in thread
From: stardiviner @ 2020-06-09  1:08 UTC (permalink / raw)
  To: Ivan Yonchovski; +Cc: emacs-orgmode

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256


Ivan Yonchovski <yyoncho@gmail.com> writes:

> Hi all,
>
> lsp-mode -> org-mode integration allows using Language Server Protocol
> features (e. g. completion, on-the-fly diagnostics, references,
> refactoring, etc.) in org-mode source blocks. This was the most wanted
> feature in our bug tracker and I think that it provides unique
> functionality not avaiable in any other editor and it is great addition
> to the org-mode ecosystem. In the future, we have also planned support
> for debugging in source buffer.
>
> Link to the docs and short demo:
>
> https://github.com/emacs-lsp/lsp-mode/blob/master/docs/page/lsp-org.md
>
>
> Thanks,
> Ivan

This is really great to get official support for Org Mode. I have this idea for
long time, just try start an extension two days ago.
https://github.com/stardiviner/org-babel-lsp

Now, I will archive close this repository. :)

- -- 
[ stardiviner ]
       I try to make every word tell the meaning that I want to express.

       Blog: https://stardiviner.github.io/
       IRC(freenode): stardiviner, Matrix: stardiviner
       GPG: F09F650D7D674819892591401B5DF1C95AE89AC3
-----BEGIN PGP SIGNATURE-----

iQFIBAEBCAAyFiEE8J9lDX1nSBmJJZFAG13xyVromsMFAl7e4QQUHG51bWJjaGls
ZEBnbWFpbC5jb20ACgkQG13xyVromsPl5Af+MDEFKkQBYMN8j7OAixnfEoRuJvdQ
V15cnLl6GsqPgoMka4teN3uoV9p2jobJ0lk1Hx6NL4krydc8QAImxCNq/GbNWH/n
TBdC9AHUC68vcFjHRISMwfN8nqv3sMLT+pkw2/HPkNEeEaWF8nQl+q6kbdkdti/c
f1PE9QP1wcfrBNdaS3przH9g2mLfChwcFn92dKeFtIwTiAIsHowoxbcKyj5RN8Sj
pa9VxKdfAf2c3pNEzwZVQocxRNps2rGYMvyo9cw1WXrrdMDdfZD0CIzAAwIOthEO
UfmQfF9q0rnjKbBCKk16RBWc6j9LKNa16W39a5mdp9jdRhNTxhGwEE33aA==
=WDPq
-----END PGP SIGNATURE-----


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Announcement] lsp-mode integration with org-mode
  2020-06-09  1:08 ` stardiviner
@ 2020-09-03 10:09   ` Bastien
  0 siblings, 0 replies; 7+ messages in thread
From: Bastien @ 2020-09-03 10:09 UTC (permalink / raw)
  To: stardiviner; +Cc: emacs-orgmode, Ivan Yonchovski

stardiviner <numbchild@gmail.com> writes:

> This is really great to get official support for Org Mode.

+1!  Thanks Ivan.

-- 
 Bastien


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-09-03 10:10 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-07 19:20 [Announcement] lsp-mode integration with org-mode Ivan Yonchovski
2020-06-08  9:54 ` TEC
2020-06-08 11:30   ` Ivan Yonchovski
2020-06-08 13:53     ` TEC
2020-06-08 14:20       ` Ivan Yonchovski
2020-06-09  1:08 ` stardiviner
2020-09-03 10:09   ` Bastien

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).