Cloud Atlas: Discovery

Contents:

  • Studio
  • Infrastructure
  • DevOps
  • KVM
  • Ceph
  • Gluster
  • oVirt
  • OpenStack
  • Docker
  • Container
  • Kubernetes
  • Kubernetes Develop
  • Rancher
  • OpenShift
  • SQL
  • SQLite
  • MySQL
  • PostgreSQL
  • NoSQL
  • Network
  • Infra-Service
  • Infra-Search
  • Web
  • Info-Service
  • Big Data
  • Machine Learning
  • Drone
  • Linux
    • 最佳Linux
    • Linux系统管理
    • RedHat Linux
    • Arch Linux
    • Alpine Linux
    • Gentoo Linux
    • Asahi Linux
    • NixOS
    • LFS(Linux from scratch)
    • BLFS(Beyond Linux from scratch)
    • ALFS(Automated Linux from scratch)
    • PiLFS(Automated Linux from scratch on the Raspberry Pi)
    • Yocto
    • Debian
    • Ubuntu Linux
    • SUSE Linux
    • Kali Linux
    • Tails Linux
    • Qubes OS
    • postmarketOS
    • 容器化操作系统(Container OS)
    • Fedora CoreOS容器操作系统
    • ChromeOS
    • Subgraph OS
    • KaiOS - 世界第三手机操作系统
    • Linux计算
    • Linux存储
    • Linux网络
    • Linux服务器
    • Linux安全
    • Linux桌面
      • X Window显示服务器协议
      • Linux中文环境
      • Linux远程桌面
      • X持久化远程应用Xpra
      • VNC
      • wayland显示服务器协议
      • sway - i3兼容Wayland compositor
      • Suckless极简桌面
      • xfce
      • LXQt
      • Enlightenment
      • KDE桌面
      • Vim
      • neovim
        • vim vs. neovim
        • Debian环境编译neovim
        • neovim起步
        • Gentoo neovim
        • Neovim和鼠标
        • Neovim使用Lua
        • coc.nvim
        • NeoVim IDE
        • 重新配置NeoVim IDE
        • nvim环境使用escpe实现代码导航
        • NeoVim clangd ARM版本
        • NeoVim Ansible
        • lazy.nvim
        • mason.nvim
        • 排查nvim异常退出方法
      • VS Code
      • Linux音频
      • Linux视频
      • 修正xorg显示dpi
      • i3窗口管理器
      • Oh My Zsh
      • tmux多会话终端管理
      • GPU加速终端模拟器alacritty
      • sakura
      • 在Linux环境阅读电子书
      • MuPDF
      • 远程访问Linux桌面
      • Linux轻量级浏览器
      • NetSurf轻量级浏览器
      • Synergy:主机间共享键盘鼠标
      • Linux主机转换成蓝牙键盘鼠标hdiclient
      • Linux终端模拟器
      • uxvrt中文字体设置
      • KeepassXC
    • Linux平板
  • Kernel
  • Performance
  • Distributed System
  • Shell
  • Python
  • Django
  • JavaScript
  • Node.js
  • C
  • Go
  • Swift
  • Rust
  • Ruby
  • Lua
  • ARM
  • Raspberry Pi
  • Android
  • BSD
  • FreeBSD
  • Apple
  • Windows
  • Real
  • Management
  • Life
  • Copyright
  • 关于作者
  • 捐赠
  • 感谢
  • Roadmap
  • 附录
Cloud Atlas: Discovery
  • Linux
  • Linux桌面
  • neovim
  • lazy.nvim
  • lazy.nvim 设置blink.cmp补全
  • 查看页面源码

lazy.nvim 设置blink.cmp补全

我在使用lazyvim时候有一个困扰,就是我在输入时候自动会出现提示词,但是有时候提示词并不是我需要的,这时候如果我换行回车,nvim会自动把当前内容替换为第一个匹配的提示词。这种“自作主张”的补全非常打断写代码的思路,尤其是当我想直接回车换行,它却偏偏塞进一个完全不需要的候选词。

在 LazyVim(以及 Neovim 生态)中,负责处理自动补全的插件默认是 nvim-cmp 或新版 LazyVim 默认迁移到的 blink.cmp。要达到“回车不自动补全(仅换行),只有主动选择(如通过 Tab 或上下键选定)时才触发补全”的效果,需要调整补全插件的按键映射(Keymaps)。

备注

看起来我这里解决的方法并不完美,但是接近于我的使用目标,所以记录如下

  • ~/.config/nvim/lua/plugins/blink.lua :

设置 ~/.config/nvim/lua/plugins/blink.lua 使得回车为换行
return {
	"saghen/blink.cmp",
	opts = {
		keymap = {
			preset = "enter", -- 保持默认的预设

			-- 关键配置:将回车键(Enter/CR)改为:如果选中了就确认,没选择就直接换行
			["<CR>"] = { "accept", "fallback" },

			-- 如果你希望回车完全不触发补全(只用来换行),彻底交给 Tab 键确认:
			-- ["<CR>"] = { "fallback" },
			-- ["<Tab>"] = { "select_next", "fallback" },
		},
		-- 另外,确保 preselect(预选中第一个)关闭,这样回车不会误吞
		completion = {
			list = {
				selection = { preselect = false, auto_insert = false },
			},
		},
	},
}

参考

  • gemini

上一页 下一页

© 版权所有 2018 - now, Huatai Huang。

利用 Sphinx 构建,使用的 主题 由 Read the Docs 开发.

留言和讨论|请我喝一杯咖啡 👈


网站采用 utterances 评论系统,所有评论存储在GitHub issues 中,如果你看不到下方的评论框,那么可能需要自备梯子 👈