如何使NeoVim成为我的默认文本/代码编辑器?

y0u0uwnf  于 2022-11-11  发布在  其他
关注(0)|答案(4)|浏览(220)

是否有办法让NeoVim成为默认的文本/代码编辑器(没有任何不良副作用)

相信我,我看了很多StackOverflow的问题/答案,并尝试了一些事情,但没有为我工作。

注意:我使用的是macOS Big Sur(版本11.2.1)。我想要的是在NeoVim中点击打开的文件。

--〉例如,在**~/.zshrc**中(并且添加到~/.bash_profile中,以防万一)我有

注意:zsh是我的默认shell

alias nvim=$HOME/nvim-osx64/bin/nvim
export EDITOR="nvim"
export VISUAL="nvim"

当我在“终端”中执行set时,它显示:

EDITOR=nvim
VISUAL=nvim

是的,我退出并启动了终端(我使用的是iTerm 2)。我甚至重新启动。

--〉我将把my $PATH放在这里,以防万一它有什么要做的。当我执行echo $PATH时,它显示:

--〉还有,以防有人建议:
我不能Select a FileOpen With...并选择NeoVim作为默认的文本编辑器,因为该选项没有显示,我不能做Choose Other,因为我不能以这种方式选择NeoVim。

如果任何人需要更多信息,请说,我将编辑与该信息的问题。谢谢!

2o7dmzc5

2o7dmzc51#

在终端中设置变量不会影响GUI文件关联。为此,您必须更改操作系统的文件关联。
虽然这看起来是一个小项目,而且不受支持,但我在使用duti方面有很好的体验。它是一个围绕苹果文件扩展API的 Package 器。配置确实花了我一分钟的时间来弄清楚。如果我能找到它,我会发布它。

r3i60tvu

r3i60tvu2#

After a while I found the answer to my own question,here it is how you can set NeoVim in Mac as the default text editor. Now, you will be able click on files and opening them in NeoVim:

Some people recommended me to have a look at the follow links:

https://gist.github.com/Huluk/5117702
https://superuser.com/questions/139352/mac-os-x-how-to-open-vim-in-terminal-when-double-click-on-a-file

That didn't work for me but it served as a reference to look up related topics (automator + neovim).

After a while, I discover this blog:
https://blog.schembri.me/post/neovim-everywhere-on-macos/
Go and have a look at the blog, buthere it is how you do it:

  1. Launch Automator (Finder -> Applications -> Automator )
  2. New Document -> Choose a type for your document: Application
  3. In Actions search for Run AppleScript and drag that to where it says something like "Drag actions here..."
  4. Delete the default example of AppleScript
  5. Copy and Paste the code in the blog (where it says NeoVim.app) to where it previous had the default code
  6. Save the new Automator app (save as aplicattion format). Save it in the Applications folder
  7. Right-Click a file type you wish to open every time you click on them (e.g. .php file). Select Get Info or do cmd + i , it will open informations about that file. Scroll to wher it says Open With and select Other . Then just go to Aplicattions folder and select your new NeoVim "app".
  8. Do the same to other file types if you wish.
  9. You can now double click on your PHP files (or others if you did the same) and open them in NeoVim. Enjoy!

**Note:**You really need to do Right-Click , Get Info and look for Open With to change in all files with that extension. If you skip Get Info and just Right-Click + Open With, it will only work for that specific file...

This is the code from the blog:

on run {input, parameters}
  set cmd to "nvim"
  if input is not {} then
    set filePath to POSIX path of input
    set cmd to "nvim \"" & filePath & "\""
  end if

  tell application "iTerm"
    create window with default profile
    tell the current window
      tell the current session to write text cmd
    end tell
  end tell
end run

This would open a new window even if you already had one open.
I change it so that it would open in a tab:

on run {input, parameters}
    set cmd to "nvim"
    if input is not {} then
        set filePath to POSIX path of input
        set cmd to "nvim \"" & filePath & "\""
    end if

    tell application "iTerm"
        tell the current window
            create tab with default profile
            tell the current session to write text cmd
        end tell
    end tell
end run

**Note:**I'm using iTerm2. If you are using another Terminal Emulator, change where it says iTerm to the name of your terminal...

jhiyze9q

jhiyze9q3#

对于 任何 在 MacOS 上 使用 Kitty 的 人 来说 , 我 找到 了 一 个 非常 简单 的 方法 来 使用 远程 控制 功能 完成 这 一 点 。
首先 , 您 需要 在 kitty.conf 中 设置 以下 内容 :

allow_remote_control yes
listen_on unix:/tmp/mykitty

中 的 每 一 个
使用 Automator , 就 像 在@DGF 的 答案 中 一样 , 我 创建 了 一 个 带有 " 运行 Shell 脚本 " 操作 的 应用 程序 , 脚本 如下 :

if [ -z "$(pgrep kitty)" ]
then
    open /Applications/kitty.app
    sleep 3 # allow ample time to startup and start listening
fi

/usr/local/bin/kitty @ --to=unix:/tmp/mykitty-$(pgrep kitty) launch --type=os-window nvim "$@"

格式
将 其 保存 为 某 个 应用 程序 , 然后 从 " 打开 方式 " 中 选择 !
注 : 老实 说 , 如果 kitty 尚未 运行 , 则 处理 启动 kitty 的 逻辑 有点 古怪 。 但是 , 如果 kitty 已经 运行 , 则 该 逻辑 似乎 工作 得 很 好 , 当然 , 对 我 来说 , 大多 数 情况 下 都 是 这样 。 此外 , 如果 kitty 正在 运行 但 没有 窗口 , 则 该 逻辑 根本 不 起 作用 。

puruo6ea

puruo6ea4#

通过txt文件子菜单选择nvim作为默认应用程序,如下所示,带有PDF预览:

相关问题