惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
爱范儿
爱范儿
人人都是产品经理
人人都是产品经理
博客园 - 司徒正美
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
量子位
罗磊的独立博客
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
小众软件
小众软件
C
Cybersecurity and Infrastructure Security Agency CISA
Cyberwarzone
Cyberwarzone
大猫的无限游戏
大猫的无限游戏
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
雷峰网
雷峰网
Simon Willison's Weblog
Simon Willison's Weblog
The Cloudflare Blog
博客园 - 三生石上(FineUI控件)
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
Cyber Attacks, Cyber Crime and Cyber Security
博客园_首页
博客园 - 叶小钗
V
Vulnerabilities – Threatpost
T
The Exploit Database - CXSecurity.com
T
Tailwind CSS Blog
IT之家
IT之家
博客园 - 聂微东
Spread Privacy
Spread Privacy
V2EX - 技术
V2EX - 技术
S
Security Affairs
宝玉的分享
宝玉的分享
V
V2EX
C
Cisco Blogs
博客园 - Franky
美团技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
月光博客
月光博客
S
Securelist
J
Java Code Geeks
Webroot Blog
Webroot Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
P
Proofpoint News Feed
Last Week in AI
Last Week in AI
L
LINUX DO - 热门话题
NISL@THU
NISL@THU
WordPress大学
WordPress大学
W
WeLiveSecurity
T
Threatpost
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
腾讯CDC
阮一峰的网络日志
阮一峰的网络日志

Vim

请问怎样在 GVim 中优雅地切换中英文输入法? - V2EX 有没有喜欢折腾 vim 的 - V2EX 请教一下 VIM 怎么做到类似 idea ide 一样识别函数,自动跳转,查看引用? - V2EX 现在 vim 为啥要默认进入鼠标那种模式 在 Vim 中优雅使用 Git:一种高效工作流 - V2EX [插件] step-search.nvim,一个更符合直觉的多关键词聚合搜索工具 - V2EX 请问是否能修改 GVim 标题栏的颜色 - V2EX 插件: nvim-dap-unity - V2EX IdeaVim 新插件推荐: 优化搜索/命令执行框 https://github.com/yelog/ideavim-cmdfloat - V2EX vscodevim 中英文切换异常 - V2EX 写了一个 Neovim 国际化插件 i18n.nvim - V2EX Lazyvim grep 搜索,弹出来的右侧窗口怎么设置内容自动换行? - V2EX 只会:q?关于 Vim 退出方式,不会还有人知道的比我还多吧? - V2EX 求问 VS Code 中使用 Vim 插件, Normal 模式下 Tab 被接管了(Insert 模式下可以),没办法接受 AI 的代码提示,有无解决方法? - V2EX 不知道为什么存在的 vim 快捷键 - V2EX 有无公司要求开发用 Vim 编辑器? - V2EX coc.nvim 近期的主要更新 - V2EX vim 执行外部 shell 命令时卡顿,求解决方式 - V2EX 十分尴尬,被导师推荐去使用 JetBrains - V2EX Nvim 输入法的自动切换 - V2EX 写了一个 flash.nvim on ideavim 的插件 vim-flash, 有兴趣的可以试试 - V2EX 请教 Debian 12.6 的 vi 和 vim.tiny 指向同一文件却执行效果不同疑问 - V2EX nvim 无法粘贴到转存到系统剪切板 - V2EX The ObjectSense Programming Language : An object-oriented reincarnation of VimL - V2EX nvim 复制改键 - V2EX 使用 Vim 的时候遇到了一点问题 - V2EX vim 无法设置无名寄存器作为系统剪切板 - V2EX awesome-nvim-conf:中文用户 nvim 配置仓库 - V2EX 请问有办法将 nvim 当成临时草稿本使用吗? - V2EX NeoVim 可以实现远程开发么? - V2EX Leaderf git: 在 vim 中优雅高效的使用 git - V2EX 想找一个好用的 vim 剪切板的快捷键 - V2EX 关于 vim 中一次复制粘贴的询问 - V2EX 配置 nvim-lsp 自动补全有点复杂 - V2EX 今天我去 neovim 官网找图标的时候, 顺手点了一点 donate 的 btc 地址 - V2EX 轮子更新: NeoVim 主题模板 - V2EX 用了一段时间 neovim,感觉良好 - V2EX 鼠标选中文字,输入字符时能直接覆盖掉选中的文字 - V2EX lunarvim 如何修改提示的位置 - V2EX vim 有没有插件像 nvim 那样每个 buffer 右上角都有关闭按钮 - V2EX vim 的字体配色是怎么设置的? - V2EX VSCode vim 插件在 o 换行后,退出插入模式会丢失所有缩进的问题 - V2EX 各位用 vim 键位的, 是怎么解决 esc 频繁按键的问题的呢? - V2EX 有用 nvim 写 protobuf 的吗,大家用哪个 lsp ? - V2EX 安利一下我的键盘修改按键,解决小拇指按 shift 的困境 - V2EX VIM & Python - V2EX Vim 上远程开发有什么方案? - V2EX 除了使用方向键 vim insert mode 下如何快速前进一个字符? - V2EX wincap.vim 让你的 gvim 标题栏应用 buffer 的背景色 - V2EX (补图) vim tab 和 buffers 问题 - V2EX
用 vim/nvim 写 Python 用什么插件? - V2EX
shuiguomayi · 2023-12-07 · via Vim
vituralfuture

2

vituralfuture      2023 年 12 月 7 日 via Android

先安装个 mason ,它能帮你解决 linter ,formator ,lsp server 的安装,lsp 可以用 pyright ,虽然功能没有 pylance 多,但是 pylance 闭源页用不了,lsp 提供了跳转到定义,到声明,查找引用这些功能

我并没有找到一个大统一的插件,我用 neovim 觉得最大的问题就是,缺少一个 code runner ,导致我每次运行都要手动输入命令
还有一个比较影响体验的就是 lsp 的补全提示太过简单粗暴,把太多无关的东西都显示出来了,而 jetbrain 的 IDE 自然是做过优化,比如结合上下文去掉不合理的,甚至还利用机器学习将候选补全选项排序

vituralfuture

3

vituralfuture      2023 年 12 月 7 日 via Android   ❤️ 1

另外说一下,如果想要把(n)vim 当做 IDE ,不建议使用 vim ,vim 体系已经很老了,比如 vim script 性能问题,异步支持太差,lsp 支持也没有。
neovim 使用纯 lua 配置不仅性能好,能干的事也更多了,neovim 内置 lsp 支持,还解决了 vim 一直以来存在的异步太弱的问题,倒逼 vim 也添加了异步功能

xxiaowangwang

6

xxiaowangwang      2023 年 12 月 7 日

use("williamboman/mason.nvim")
use("williamboman/mason-lspconfig.nvim")
use("neovim/nvim-lspconfig")
use("hrsh7th/cmp-nvim-lsp")
use({
"glepnir/lspsaga.nvim",
branch = "main",
requires = {
-- { "nvim-tree/nvim-web-devicons" },
{ "nvim-treesitter/nvim-treesitter" },
},
})
use("jose-elias-alvarez/null-ls.nvim")
use("jayp0521/mason-null-ls.nvim")
use({
"nvim-treesitter/nvim-treesitter",
run = function()
local ts_update = require("nvim-treesitter.install").update({ with_sync = true })
ts_update()
end,
})

仅供参考。。。漏了啥不确定

churchill

13

churchill      2023 年 12 月 7 日

我的配置, 如果要调试的话还得加上 dap ,个人体验并不好用
return {
{
"nvim-treesitter/nvim-treesitter",
opts = function(_, opts)
vim.list_extend(opts.ensure_installed, { "ninja", "python", "rst", "toml" })
end,
},
{
"jose-elias-alvarez/null-ls.nvim",
opts = function(_, opts)
local nls = require("null-ls")
table.insert(opts.sources, nls.builtins.formatting.black)
end,
},
{
"williamboman/mason.nvim",
opts = function(_, opts)
vim.list_extend(opts.ensure_installed, { "debugpy", "black", "ruff" })
end,
},
{
"neovim/nvim-lspconfig",
opts = {
servers = {
ruff_lsp = {},
pyright = {
settings = {
python = {
analysis = {
autoImportCompletions = true,
typeCheckingMode = "off",
autoSearchPaths = true,
useLibraryCodeForTypes = true,
diagnosticMode = "openFilesOnly",
stubPath = vim.fn.stdpath("data") .. "/lazy/python-type-stubs/stubs",
},
},
},
},
},
setup = {
ruff_lsp = function()
local lsp_utils = require("plugin.lsp.utils")
lsp_utils.on_attach(function(client, _)
if client.name == "ruff_lsp" then
client.server_capabilities.hoverProvider = false
end
end)
end,
pyright = function(_, _)
local lsp_utils = require("plugin.lsp.utils")
lsp_utils.on_attach(function(client, bufnr)
local map = function(mode, lhs, rhs, desc)
if desc then
desc = desc
end
vim.keymap.set(
mode,
lhs,
rhs,
{ silent = true, desc = desc, buffer = bufnr, noremap = true }
)
end
if client.name == "pyright" then
map("n", "<leader>lo", "<cmd>PyrightOrganizeImports<cr>", "Organize Imports" )
map("n", "<leader>lC", function() require("dap-python").test_class() end, "Debug Class" )
map("n", "<leader>lM", function() require("dap-python").test_method() end, "Debug Method" )
map("v", "<leader>lE", function() require("dap-python").debug_selection() end, "Debug Selection" )
end
end)
end,
},
},
},
{
"microsoft/python-type-stubs",
cond = false,
},
{
"linux-cultist/venv-selector.nvim",
cmd = "VenvSelect",
opts = {},
keys = { { "<leader>lv", "<cmd>:VenvSelect<cr>", desc = "Select VirtualEnv" } },
},
}