senkwich
senkwich
  • Видео 5
  • Просмотров 44 689
Wrapping your favorite CLI in neovim
An introduction to wrapping your favorite command-line programs as neovim plugins, diving into strategy and live examples.
Check out the presentation and all of the examples here:
github.com/chipsenkbeil/neovimconf-2024-talk
Просмотров: 6 119

Видео

Intro to org roam in neovim in 21 minutes
Просмотров 6 тыс.6 месяцев назад
Link to plugin: github.com/chipsenkbeil/org-roam.nvim Link to nvim-orgmode: github.com/nvim-orgmode/orgmode
Building an Alternative to VS Code Remote Development
Просмотров 4,9 тыс.3 года назад
Building an alternative to VSCode remote development for neovim. In this vimconf live 2021 talk, we explore the why and how behind developing the technology to work on projects remotely using neovim. Specifically, we dive into three topics: 1. Specialized buffers 2. Outsourcing to external programs 3. Writing Rust that interfaces directly with Lua in neovim Link to plugin: github.com/chipsenkbe...
distant.nvim v0.1.0: native ssh and editing remote files without a distant server
Просмотров 16 тыс.3 года назад
Demonstrates the new release of distant.nvim (v0.1.0) leveraging distant's new lua module (v0.15.0). Main highlights are integrated ssh authentication, ssh mode, refactored and simplified vim & Lua APIs, and complete help documentation. Neovim plugin: github.com/chipsenkbeil/distant.nvim Binary: github.com/chipsenkbeil/distant Previous video: ruclips.net/video/BuW2b1Ii0RI/видео.html 0:00 Intro ...
Editing files and running LSP servers on a remote machine
Просмотров 12 тыс.3 года назад
Demonstrates using distant.nvim to edit files and use a language server on a remote machine. Neovim plugin: github.com/chipsenkbeil/distant.nvim Binary: github.com/chipsenkbeil/distant 0:00 What is distant.nvim? 1:18 Discussing local machine 2:10 Showing remote machine using SSH 3:40 Using distant.nvim for file editing and LSPs 6:18 Configuring distant.nvim 7:20 Using distant.nvim for directory...

Комментарии

  • @mvaldes
    @mvaldes День назад

    amazing - best talk of the conf. already redoing some of my plugins using some of these pointers.

  • @catfan5618
    @catfan5618 День назад

    I didn’t know about the version parsing capabilities of vim, interesting!

  • @mouse11411
    @mouse11411 3 дня назад

    Great talk! Loved the overview of the new vim APIs

  • @farzadmf
    @farzadmf 3 дня назад

    This was (is) an AMAZING talk; watched in the conf. So glad that RUclips suggested to me. Please put out more videos; love how you explained things!

  • @imrongamidli5190
    @imrongamidli5190 4 дня назад

    One guy in neovimconf says neovim is just an editor and it should stay like that, other guy says wrap cli tools, i am in moral conundrum

    • @senkwich
      @senkwich 4 дня назад

      lol, do whichever makes you have fun and be more productive :D

  • @p10tube
    @p10tube 4 дня назад

    this is pure gold, thank you for sharing

  • @jimmlmao
    @jimmlmao 4 дня назад

    can u wrap the linux kernel in neovim

  • @cg219
    @cg219 5 дней назад

    This was pretty useful. Might actually make a few plugins for some cli tools I use with neovim next to it for practice

    • @senkwich
      @senkwich 4 дня назад

      Awesome! Looking forward to seeing them :)

  • @ooloth
    @ooloth 5 дней назад

    Great topic, great format. Novel, useful and clear. Would happily watch more like this.

    • @senkwich
      @senkwich 4 дня назад

      That's so nice of you to say! Glad you enjoyed the talk

  • @justmell0o
    @justmell0o 5 дней назад

    Hey! What terminal is this? Looks pretty cool

    • @rishabh5428
      @rishabh5428 5 дней назад

      thats wezterm

    • @senkwich
      @senkwich 4 дня назад

      Wezterm for the presentation and most examples. Kitty for the browser example since the image scrolling was too finicky on Wezterm. :)

  • @jimhrelb2135
    @jimhrelb2135 5 дней назад

    Thanks for the video, will finish it off during my work vimming. I'm actually working on a suite of CLI for internal tools, this will be helpful

  • @VioletJewel1729
    @VioletJewel1729 5 дней назад

    your videos should be more popular. this is very helpful as someone who has written a lot of vimL but is finding it difficult to find time to keep up with neovim's rapid divergence from vim.

  • @VioletJewel1729
    @VioletJewel1729 5 дней назад

    do not use sapling. it is created by meta. I do not care that it is FOSS. meta abuses user privacy and is a threat to the world.

    • @theherk
      @theherk 4 дня назад

      Those thoughts seem nonsequitur to me. It isn’t paying them in data or currency, so how are you benefitting them. It is just dogfood that they have it open. I’m all for down-with-meta and big corporations, but not using FOSS because it is created at a corporation would cut off a ton of useful software.

    • @catfan5618
      @catfan5618 День назад

      ⁠@@theherkYeah, just take the Language Server Protocol as an example. It was developed by Microsoft and therefore should not be used according to @VioletJewel1729.

  • @evakuator-q7d
    @evakuator-q7d 5 дней назад

    Great! One of the most high-quality videos on neovim I've seen

    • @senkwich
      @senkwich 5 дней назад

      That's so kind of you to say! Thanks :)

  • @RodrigoRiveraMartinez
    @RodrigoRiveraMartinez 12 дней назад

    Hi! Very interesting indeed. Can I use it with the same database created in Emacs? I’m particularly interested in using it with both Emacs and Neovim through a shared database. Will I be able to do that?

    • @senkwich
      @senkwich 6 дней назад

      Hi there! Unfortunately, it will not. Emacs uses sqlite and this neovim plugin stores data in either a JSON or msgpack file. Internally, their structures are also a bit different. So we'd have to write custom code to load and save between emacs and neovim.

  • @temie933
    @temie933 3 месяца назад

    Great video! I have a question tho. What did you do so that you will only see the name of the link and not the entire link? like in 7:56 I am really struggling with this.

    • @arisweedler4703
      @arisweedler4703 Месяц назад

      Check out help conceal

    • @senkwich
      @senkwich 6 дней назад

      Yep, you have to configure conceal properly. It's documented in nvim-orgmode's readme if you need help! :)

  • @cygn
    @cygn 3 месяца назад

    I wonder how you get shift-enter to work. There's many posts e.g. on stackoverflow showing that shift-enter is usually interpreted the same as enter in terminal programs.

    • @cygn
      @cygn 3 месяца назад

      apparently one workaround is to use ctrl-shift-enter. But even for that I also had to add a binding to alacritty to make it work.

    • @senkwich
      @senkwich 3 месяца назад

      ​ @cygn I'm using wezterm, and don't recall having to do anything to get shift-enter to work. Been awhile since I dabbled in my configurations, though.

  • @gazzarDev
    @gazzarDev 3 месяца назад

    I was wondering how you toggled the link display here 07:52 I have org roam and org mode and also headlines installed but I can't get this feature!

    • @senkwich
      @senkwich 3 месяца назад

      Do you mean showing the concealed link? This is something you need to configure via neovim conceal, which is mentioned in github.com/nvim-orgmode/orgmode?tab=readme-ov-file#links-are-not-concealed

    • @gazzarDev
      @gazzarDev 3 месяца назад

      ​@@senkwich Thank you very much, Now it works

  • @asahfikir
    @asahfikir 3 месяца назад

    Wonderful. I open emacs from time to time just to use org. Now, I just need to figure out how to install this in NixVim for NixOS

  • @deelinuno9785
    @deelinuno9785 4 месяца назад

    cool but how to render images?

    • @senkwich
      @senkwich 4 месяца назад

      You need github.com/3rd/image.nvim updated to support orgmode.nvim, which is the plugin that org-roam.nvim uses.

  • @darkarie
    @darkarie 5 месяцев назад

    I have a question, are the nodes (notes) associated to lines or words from other text/code? What I mean is, could I associate a note to a specific line of a file?

    • @senkwich
      @senkwich 5 месяцев назад

      Nodes link to the top of the file or the specific heading containing the id. You can use file links to specify a line number, but those aren't nodes. :) If you use the node buffer to see backlinks, you can use the backlink to jump to the specific line and column where you have the link.

  • @abursuk
    @abursuk 5 месяцев назад

    Cheers! thnx fr the video, I got one question: if I move the node(fle) o another director(inside root ofmode directory), will links from it and to it remains in tact? Should I use special function inside nvim to move nodes or can I do this by OS tools? thnx again!

    • @senkwich
      @senkwich 5 месяцев назад

      As long as the file is within the designated org roam directory, you can move and rename files and the links will not break. This is because the links created use IDs that map to those within the :PROPERTY: drawers of nodes. If you rename/move a file with neovim already open, you'll probably need to run either `RoamUpdate` or `RoamUpdate!` to refresh.

  • @stonedz
    @stonedz 6 месяцев назад

    This is what I was looking for, thank you !

    • @senkwich
      @senkwich 6 месяцев назад

      Fantastic! Hope it's helpful! :)

  • @Sub0x-x40
    @Sub0x-x40 6 месяцев назад

    wonder how this would synergies with obsidian.nvim

  • @user-eg6nq7qt8c
    @user-eg6nq7qt8c 6 месяцев назад

    Whoah, this is very interesting. I mostly use nvim but still fire up emacs in terminal mode as well just for org-roam. It's pretty seamless. Org in emacs just has so many good features.

    • @senkwich
      @senkwich 6 месяцев назад

      I installed and started configuring Emacs just so I could try out orgmode and org roam, but ended up wanting to stick with purely neovim due to familiarity with the tooling and Lua language integration. I've found that the nvim-orgmode plugin does the bulk of what I'd want - agenda, calendar, TODOs, folding, etc - and with this plugin I've got what I believe to be what I'd like in Roam functionality. Give it a try and let me know what you think!

  • @AntonyXavier-v9j
    @AntonyXavier-v9j 6 месяцев назад

    really love your nvim font , may i know the name of the font ?

    • @senkwich
      @senkwich 6 месяцев назад

      It's been awhile since I set it! I think it's JetBrains Mono, which comes as one of the fonts bundled with WezTerm. wezfurlong.org/wezterm/config/fonts.html

  • @areksaata6326
    @areksaata6326 6 месяцев назад

    It looks really cool. I was looking for Neorg plugin but this one is also super cool! Can't wait for an update!

    • @senkwich
      @senkwich 6 месяцев назад

      I think there was a different plugin to support roam functionality in neorg. So you may already have what you need! Glad you found this plugin interesting, though :D

  • @paulohl7370
    @paulohl7370 6 месяцев назад

    I'm super excited about this! I'll give it a try one of these days...

    • @senkwich
      @senkwich 6 месяцев назад

      When you do, I hope you find it useful! There's a discussion section on the github repo, so feel free to drop in thoughts there as well. :)

  • @EliasX962
    @EliasX962 6 месяцев назад

    hey nice video! btw which microphone are you using it sounds great!

    • @senkwich
      @senkwich 6 месяцев назад

      It's an EV RE20 :) I have it hooked up into some audio hardware to filter out a little bit of noise as well.

  • @Michael.Schwarz
    @Michael.Schwarz 10 месяцев назад

    Hey... silly question - what's that font you're using? I like the curviness soo much 😊

    • @senkwich
      @senkwich 6 месяцев назад

      Replying to an old comment here, but I think it was github.com/belluzj/fantasque-sans !

  • @eulersson
    @eulersson Год назад

    I'm so happy to see this! Thank you!

  • @HappyFatso
    @HappyFatso Год назад

    I really like your idea of making a VSCode-like remote development software! One thing I noticed is that the file explorer is something like netrw, is it possible to add support for something like nvim-tree?

    • @senkwich
      @senkwich 6 месяцев назад

      Replying to an old comment here, but supporting nvim-tree would need a way to override how nvim-tree looks up a directory and opens files. So depending on what its API looks like, this could be easy or hard!

  • @UselessBraincells
    @UselessBraincells Год назад

    Dayummm

  • @anasouardini
    @anasouardini Год назад

    Or you could just use sshfs :)

    • @senkwich
      @senkwich Год назад

      There are actually advantages and disadvantages to sshfs vs this approach, if you can believe it! :D Where your remote processes run, stability and automatic reconnections, etc. I've captured that exact comparison here if you want to read more: distant.dev/editors/neovim/faq/#how-does-this-plugin-differ-from-using-neovim-with-sshfs

    • @anasouardini
      @anasouardini Год назад

      @@senkwich Thanks, I'll check it out.

  • @NormTurtle
    @NormTurtle Год назад

    awesome i been lookign for something like this for so long , snice neovim had --remote , thing, i thought why don't the other vps can't be connected to my instance so i can use my current neovoim configin nice

    • @senkwich
      @senkwich 6 месяцев назад

      Thanks for the nice comment! :D

  • @艾曦-e4g
    @艾曦-e4g Год назад

    Cool! Can you demo how to use this in docker container? Maybe the container don't have ssh at all.

    • @senkwich
      @senkwich 6 месяцев назад

      Replying to an old comment, but today you'd have to run ssh or the distant server in the container. There's an open item to work with docker containers directly, but you could also check out one of the competing remote dev plugins to see if they support it these days!

  • @_idiot
    @_idiot Год назад

    This is awesome

    • @senkwich
      @senkwich 6 месяцев назад

      Just wanted to reply to an old comment to say thanks!

  • @ambuj.k
    @ambuj.k 2 года назад

    How do I connect using a private key?

    • @senkwich
      @senkwich 5 месяцев назад

      Very late reply :) The latest version of the plugin acts as an ssh client, so whatever you have configured should be picked up. If you're using key authentication, it should be leveraged by the plugin. There are limitations that are being refactored in later releases, so you may still hit problems, though!

  • @vext01
    @vext01 2 года назад

    Do plugins that use the filesystem see the remote transparently, or does the plugin have to be "distant-aware"?

    • @senkwich
      @senkwich 5 месяцев назад

      Late reply here :) Plugins need to be distant-aware at the moment. There's an open discussion about having distant overwrite Lua filesystem calls so distant can determine if they should be local or remote: github.com/chipsenkbeil/distant.nvim/discussions/119

  • @kartikeykushwah3926
    @kartikeykushwah3926 2 года назад

    Awesome plugin! Will try it for sure! <3

    • @senkwich
      @senkwich 6 месяцев назад

      Replying to old comment, but appreciate the nice words!

  • @kjlw99
    @kjlw99 2 года назад

    Query... Does this mean nvim does not have to be installed on the remote servers?

    • @senkwich
      @senkwich 2 года назад

      Yes, that's right. :)

  • @markus-sagen
    @markus-sagen 2 года назад

    This! Made me finally switch back home to nvim again from **code

    • @senkwich
      @senkwich 6 месяцев назад

      Replying to old comment, but appreciate the nice words!

  • @jpfmsantoz
    @jpfmsantoz 2 года назад

    Can you for example use distant to connect to Docker containers?

    • @senkwich
      @senkwich 2 года назад

      Yes. You would run the distant server (or ssh) within the container and expose the TCP port of the server. Then you would connect to it like anything else.

  • @arnoldwolfstein
    @arnoldwolfstein 2 года назад

    is it better to mount remote dir to local? I mean w/o using a plugin I can mount a remote partition to my dev host and use my local dotfiles.

    • @senkwich
      @senkwich 5 месяцев назад

      Very late reply :) The difference is where you want to run your programs. If you want language servers, compilers, formatters, and other tools to run on your local machine, mounting the remote directory is the way to go. If you want to run your tools on the remote machine, using this plugin is the way to go. It offloads CPU/GPU constraints and installation requirements to the remote machine. You can also use this to integration with docker by running a distant server or ssh server within a container, so you could bundle all of the dev software into a container instead of needing to install it on the local machine directly.

  • @jeanrodrigues6249
    @jeanrodrigues6249 2 года назад

    tcp

  • @jeanrodrigues6249
    @jeanrodrigues6249 2 года назад

    LSP

  • @__agou-ops2691
    @__agou-ops2691 2 года назад

    Hey senkwich, I want your nvim dotfile, thankx.

    • @senkwich
      @senkwich 2 года назад

      My dotfiles are not public. Sorry!

  • @0x007A
    @0x007A 3 года назад

    How is this any different than using sshfs to mount a directory on a remote server?

    • @senkwich
      @senkwich 3 года назад

      Hey there! You'll find that there are different reasons to use sshfs versus this approach. For my own work, sshfs isn't an option. Check out github.com/chipsenkbeil/distant.nvim/issues/33 for a comparison!

  • @098Prototype
    @098Prototype 3 года назад

    May I ask if that upper status bar is tmux or something like zsh?

    • @senkwich
      @senkwich 3 года назад

      It's from tmux.

  • @andrewTaylorCodes
    @andrewTaylorCodes 3 года назад

    In the past I have used sshfs for this. And on mac I would use FUSE + sshfs. On a mac sshfs was a bit slow unless you passed some ssh flags.

    • @senkwich
      @senkwich 5 месяцев назад

      Very late reply :) I'd used sshfs, but the programs I needed to run were on my server, which was maintained by my company. So sshfs is great if all of my tools are on my laptop. Distant is good if the programs outside of neovim reside on my server!