【Vim Masterclass 笔记25】S10L45:Vim 多窗口的常用操作方法及相关注意事项
文章目录
- S10L45 Working with Multiple Windows
- 1 水平分割窗口
- 2 在水平分割的新窗口中显示其它文件内容
- 3 垂直分割窗口
- 4 窗口的关闭
- 5 在同一窗口水平拆分出多个窗口
- 6 关闭其余窗口
- 7 让四个文件呈田字形排列
- 8 光标在多窗口中的定位
- 9 调节子窗口的尺寸大小
- 10 变换子窗口的位置
- 11 将光标所在的子窗口分别靠进某一边
- 12 将所有缓冲区加载到当前窗口
- 13 对所有子窗口批量执行命令
- 14 关于窗口组合键的按键细节
写在前面
本篇为第十章的最后一节内容。继介绍完 Vim 缓冲区的相关知识后,本节进一步深入探讨了多窗口环境下的各类常见操作。想当年我就是直接先学了这一节内容,成功利用远程服务器的 Vim 界面完成了八个服务器节点的手动配置,要是没有多窗口这个功能,只靠缓冲区频繁切换,遇到需要同时监控某些性能指标时就傻眼了(当然这类问题有更专业的工具,这里只是举例)。今天将这些知识点完整梳理出来,以后就方便多了。
S10L45 Working with Multiple Windows
本节演示文件:vimclass/buf-{ant,bed,cat,dad}.txt
、vimclass/nav.txt
。
1 水平分割窗口
默认情况下,Vim
一个窗口只会加载一个编辑界面。即便在学习 Vim
缓冲区的概念时,也只涉及单一窗口下的各类操作;多窗口环境只在第四章介绍帮助系统时提到过,并可通过 Ctrl + WW 让光标在两个窗口间切换、用 :q
+ Enter 命令关闭某个窗口,仅此而已。
其实,Vim
还支持通过 :sp
或 :split
命令实现窗口的 水平分割。
例如,用 vim buf*
批量打开多个以 buf
开头的演示文件后,输入 :sp
+ Enter 将得到两个上下分布的相同窗口:
【图 45-1:用 sp 命令实现窗口的水平分割】
由于显示的是同一个缓冲区,在其中任一窗口修改内容都会同步影响到另一个窗口。
:sp
命令还可以等效替换为 CtrlW + S(即按住 Ctrl 的同时敲 W 键、然后放开 Ctrl 后再敲 S 键)
2 在水平分割的新窗口中显示其它文件内容
执行命令 :sp <file_name>
+ Enter 即可。
例如,让新开窗口加载 buf-bed.txt
中的内容,需输入::sp buf-bed.txt
+ Enter:
【图 45-2:在水平分割窗口时在新窗口显示指定的文件内容(buf-bed.txt)】
3 垂直分割窗口
使用 :vs
+ Enter 或 :vsplit
+ Enter。
同理,也可以使用组合键 CtrlW + V 作等效替换:
【图 45-3:使用 vs 命令实现窗口的垂直分割】
同理,执行命令 :vs <file_name>
+ Enter 可指定新窗口加载的文件内容。
4 窗口的关闭
使用命令 :q
+ Enter 或者组合键 CtrlW + Q。
5 在同一窗口水平拆分出多个窗口
多次执行 :sp <file_name>
命令即可:
【图 45-4:利用 “sp + 文件名” 的方式依次水平打开不同的文件内容】
6 关闭其余窗口
两种方式:
- 输入
:on
+ Enter 或:only
+ Enter; - 使用组合键 CtrlW + O
7 让四个文件呈田字形排列
即纵横分割窗口,先后使用水平、垂直分割(无关顺序):
- 先加载
buf-dad.txt
文件,然后执行水平分割::sp buf-bed.txt
+ Enter; - 再输入
:vs buf-ant.txt
+ Enter 垂直分割上半部分窗口; - 按两次【CtrlW + W】将光标切到下方窗口(即
buf-dad.txt
); - 输入
:vs buf-cat.txt
完成下半部分的垂直分割。
最终实测效果:
【图 45-5:用水平垂直分割实现四个文件呈田字形分布实测效果截图】
8 光标在多窗口中的定位
除了用 CtrlW + W 逐一切换光标位置,还可以使用导航键实现上下左右移动:
- CtrlW + H:光标左移;
- CtrlW + J:光标下移;
- CtrlW + K:光标上移;
- CtrlW + L:光标右移;
注意到涉及窗口操作的组合键都有相同的前缀 CtrlW。为方便后续操作,也可以使用 map
命令重新指定快捷键并写入 vimrc
配置文件:
map <C-h> <C-w>h
map <C-j> <C-w>j
map <C-k> <C-w>k
map <C-l> <C-w>l
或者利用 Leader
键重写快捷键:
map <leader>h <C-w>h
map <leader>j <C-w>j
map <leader>k <C-w>k
map <leader>l <C-w>l
如果是在图形界面下操作,还可以直接用鼠标单击快速定位。
9 调节子窗口的尺寸大小
两种方式:
- 图形界面:鼠标拖拽窗口边缘即可调整;
- 键盘操作:
- 增加高度:CtrlW + +
- 减少高度:CtrlW + -
- 增加宽度:CtrlW + >
- 减少宽度:CtrlW + <
- 高度最大化:CtrlW + _
- 宽度最大化:CtrlW + |
- 设置等宽等高:CtrlW + =
10 变换子窗口的位置
使用 CtrlW + R 可将当前水平排列的窗口依次 往右 挪动一格,最右边的窗口则挪到 最左边 位置;若子窗口均为垂直堆叠分布,则依次 往下 挪动一格,同时最下方窗口挪到 最上方 位置。
使用 CtrlW + ShiftR 则刚好反向操作:水平排列的子窗口 向左 移动、垂直堆叠的则 向上 移动。
注意:组合键中的 R 代表 Right,向右;ShiftR 则表示反向。
11 将光标所在的子窗口分别靠进某一边
通过组合键 CtrlW + 大写的导航键,还可以分别令光标所在的子窗口分别靠近大窗口的上、下、左、右侧。
例如,在刚才的田字形排列的多窗口界面,再使用 :vs nav.txt
垂直分割出第五个子窗口:
【图 45-6:在田字形多窗口界面引入第五个子窗口(左上角)】
按 CtrlW + ShiftH 实现靠左显示:
【图 45-7:让子窗口(nav.txt)靠左显示后的效果图】
按 CtrlW + ShiftL 实现靠右显示:
【图 45-8:让子窗口(nav.txt)靠右显示后的效果图】
按 CtrlW + ShiftK 实现靠上显示:
【图 45-9:让子窗口(nav.txt)靠上显示后的效果图】
按 CtrlW + ShiftJ 实现靠下显示:
【图 45-10:让子窗口(nav.txt)靠下显示后的效果图】
12 将所有缓冲区加载到当前窗口
使用命令 :ball
+ Enter 或 :ba
+ Enter。
此时 Vim
默认通过水平分割的方式加载每个子窗口:
【图 45-11:使用 ba 命令一次性加载所有缓冲区的实测效果图】
13 对所有子窗口批量执行命令
与缓冲区的 :bufdo
命令类似,多窗口也支持批量执行命令 :windo
。
例如,在垂直排列的子窗口 buf-ant.txt
和 buf-bed.txt
中,批量执行替换命令,将文件中的 #
全部替换为 @
,则相应的批量替换命令为::windo %s/#/@/g
+ Enter。
【图 45-12:对所有子窗口批量执行替换命令后的效果图】
注意
值得注意的是,
:windo
命令只对打开的子窗口生效,未打开的子窗口则不受影响 ;而:bufdo
命令则会对所有缓冲区生效,无论它是不是隐藏缓冲区都会执行命令。本例可以通过:ls
+ Enter 命令加以佐证:
【图 45-13:用 ls 命令查看缓冲区列表,可以看到本例中的批量替换命令 windo 只对打开的子窗口生效】
14 关于窗口组合键的按键细节
本课涉及大量组合键,对于 CtrlW + <KEY>
的操作,既可以放开 Ctrl 键后再按后面的 <KEY>
键,也可以一直按住 Ctrl 键不放、并依次按 W 键和 <KEY>
键。
查看帮助文档 :h ctrl-w
+ Enter 可以获得更多操作说明:
【图 45-14:查看 ctrl-w 帮助文档了解组合键的更多细节说明】
需要注意的是,按住 Ctrl + S 在某些命令行中可能会引发冲突(例如暂停屏幕刷新),此时使用 Ctrl + WS 来水平拆分窗口就会失效;同理,Ctrl + WQ 也可能因为 CtrlQ 被占用而导致窗口拆分失败。不过具体问题具体分析,遇到组合键冲突,最好通过帮助文档寻求解决方案。
想了解更多关于 Vim
窗口的用法细节,可以查看 Vim
内置的帮助文档::h windows
+ Enter。
后记
从本节课开始,讲师不再提供专门的同步练习环节。因为这些内容大部分在讲解过程中就能同步操练。想要真正用好 Vim,还得自己多花心思学以致用,方为上策。切莫过分依赖课程本身,丧失了自学的主观能动性。
相关文章:
【Vim Masterclass 笔记25】S10L45:Vim 多窗口的常用操作方法及相关注意事项
文章目录 S10L45 Working with Multiple Windows1 水平分割窗口2 在水平分割的新窗口中显示其它文件内容3 垂直分割窗口4 窗口的关闭5 在同一窗口水平拆分出多个窗口6 关闭其余窗口7 让四个文件呈田字形排列8 光标在多窗口中的定位9 调节子窗口的尺寸大小10 变换子窗口的位置11…...
C语言练习(16)
猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。到第10天早上想再吃时,见只剩一个桃子了…...
【0x0012】HCI_Delete_Stored_Link_Key命令详解
目录 一、命令参数 二、命令格式及参数 2.1. HCI_Delete_Stored_Link_Key 命令格式 2.2. BD_ADDR 2.3. Delete_All 三、生成事件及参数 3.1. HCI_Command_Complete事件 3.2. Status 3.3. Num_Keys_Deleted 四、命令执行流程 4.1. 命令发送阶段 4.2. 控制器处理阶段…...
学习ASP.NET Core的身份认证(基于JwtBearer的身份认证10)
基于Cookie传递token的主要思路是通过用户身份验证后,将生成的token保存到Response.Cookies返回客户端,后续客户端访问服务接口时会自动携带Cookie到服务端以便验证身份。之前一直搞不清楚的是服务端程序如何从Cookie读取token进行认证(一般都…...
应用层协议 HTTP 讲解实战:从0实现HTTP 服务器
🌈 个人主页:Zfox_ 🔥 系列专栏:Linux 目录 一:🔥 HTTP 协议 🦋 认识 URL🦋 urlencode 和 urldecode 二:🔥 HTTP 协议请求与响应格式 🦋 HTTP 请求…...
Linux权限管理:从用户切换到文件权限
在Linux系统中,权限管理是确保系统安全和资源合理分配的核心机制。它通过用户和用户组的管理、文件权限的设置以及特殊权限的使用,实现了对系统资源的精细控制。 一、用户切换:su 和 sudo 1. 用户切换命令 su su(switch user&a…...
PyQt5超详细教程终篇
PyQt5超详细教程 前言 接: [【Python篇】PyQt5 超详细教程——由入门到精通(序篇)](【Python篇】PyQt5 超详细教程——由入门到精通(序篇)-CSDN博客) 建议把代码复制到pycahrm等IDE上面看实际效果,方便理…...
Alibaba Spring Cloud 四 Seata 的核心组件:TC
Seata 的 Transaction Coordinator (TC) 是分布式事务架构中的核心组件之一,它负责管理全局事务的生命周期,包括事务的创建、状态维护以及协调各分支事务的提交和回滚。以下是有关 TC 的详细解析及其配置和使用方法: 1. TC 的核心功能 全局事…...
机器学习-线性回归(简单回归、多元回归)
这一篇文章,我们主要来理解一下,什么是线性回归中的简单回归和多元回归,顺便掌握一下特征向量的概念。 一、简单回归 简单回归是线性回归的一种最基本形式,它用于研究**一个自变量(输入)与一个因变量&…...
Java如何向http/https接口发出请求
用Java发送web请求所用到的包都在java.net下,在具体使用时可以用如下代码,你可以把它封装成一个工具类 import javax.net.ssl.*; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.Outpu…...
three.js+WebGL踩坑经验合集(1):THREE.Line无故消失的元凶
在项目开发过程中,笔者两次遇到同事的一个提问,我场景中的Line在相机旋转到某些角度或者移动到某些位置的时候会无故消失。由于业务场景复杂,所以这两位同事都是先花费了大量时间排查业务问题,然后才找我求助。这个问题抽象出来的…...
【ROS】RViz2源码分析(四):初始化、启动
【ROS】郭老二博文之:ROS目录 1、简述 RViz2在main函数中,首先注册日志处理函数; 将 RCLCPP_DEBUG 等日志记录函数,通过 rviz_common::set_logging_handlers() 注册到 rviz_common 中。然后,创建界面类 rviz_common::VisualizerApp,并执行初始化 vapp.init(argc, argv)…...
【MySQL】 库的操作
欢迎拜访:雾里看山-CSDN博客 本篇主题:【MySQL】 库的操作 发布时间:2025.1.23 隶属专栏:MySQL 目录 库的创建语法使用 编码规则认识编码集查看数据库默认的编码集和校验集查看数据库支持的编码集和校验集指定编码创建数据库验证不…...
豆包MarsCode 蛇年编程大作战 | 高效开发“蛇年运势预测系统”
🌟 嗨,我是LucianaiB! 🌍 总有人间一两风,填我十万八千梦。 🚀 路漫漫其修远兮,吾将上下而求索。 豆包MarsCode 蛇年编程大作战 | 🐍 蛇年运势预测 在线体验地址:蛇年…...
新能源汽车充电桩选型以及安装应用
摘要:随着当前经济的不断发展,国家的科技也有了飞速的进步,传统的燃油汽车已经不能适应当前社会的发展,不仅对能源造成巨大的消耗,还对环境造成了污染,当前一种新型的交通运输工具正在占领汽车市场。在环境问题和能源问题愈发严重的当今社会,节能减排已经成为全世界的共同课题,…...
docker Ubuntu实战
目录 Ubuntu系统环境说明 一、如何安装docker 二、发布.netcore应用到docker中 三、查看docker信息 Ubuntu系统环境说明 cat /etc/os-release PRETTY_NAME"Ubuntu 22.04.5 LTS" NAME"Ubuntu" VERSION_ID"22.04" VERSION"22.04.5 LTS (…...
w-form-select.vue(自定义下拉框组件)(与后端字段直接相关性)
文章目录 1、w-form-select.vue 组件中每个属性的含义2、实例3、源代码 1、w-form-select.vue 组件中每个属性的含义 好的,我们来详细解释 w-form-select.vue 组件中每个属性的含义,并用表格列出它们是否与后端字段直接相关: 属性解释表格&…...
深入探索 Nginx 的高级用法:解锁 Web 服务器的强大潜能
在当下互联网技术飞速发展的浪潮中,Nginx 凭借其轻量级、高性能的特性,在 Web 服务器和反向代理服务器领域脱颖而出,成为众多开发者和运维工程师的得力工具。它不仅能高效处理静态资源,在负载均衡、反向代理等方面也表现出色。然而…...
iOS开发设计模式篇第二篇MVVM设计模式
目录 一、什么是MVVM 二、MVVM 的主要特点 三、MVVM 的架构图 四、MVVM 与其他模式的对比 五、如何在iOS中实现MVVM 1.Model 2.ViewModel 3.View (ViewController) 4.双向绑定 5.文中完整的代码地址 六、MVVM 的优缺点 1.优点 2.缺点 七、MVVM 的应用场景 八、结…...
kettle与Springboot的集成方法,完整支持大数据组件
目录 概要整体架构流程技术名词解释技术细节小结 概要 在现代数据处理和ETL(提取、转换、加载)流程中,Kettle(Pentaho Data Integration, PDI)作为一种强大的开源ETL工具,被广泛应用于各种数据处理场景。…...
详解:TCP/IP五层(四层)协议模型
一.五层(四层)模型 1.概念 TCP/IP协议模型分为五层:物理层、数据链路层、网络层、传输层和应用层。这五层每一层都依赖于其下一层给它提供的网络去实现需求。 1)物理层:这是最基本的一层,也是最接近硬件…...
(七)Mapbox GL JS 表达式初识
以下是关于如何在 Mapbox GL JS 中使用表达式的详细讲解和代码示例。 文章目录 什么是 Mapbox GL JS 表达式?使用场景步骤1. 初始化地图2. 解释表达式 总结 什么是 Mapbox GL JS 表达式? Mapbox GL JS 表达式是一种灵活的样式语言,允许你在 …...
阿里巴巴开发规范手册MySQL
1、MySQL 数据库 1.1、建表规约 1) 表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint(1 表示是,0 表示否)。 说明:任何字段如果为非负数,必须是 unsigned。 注…...
SpringCloud微服务Gateway网关简单集成Sentinel
Sentinel是阿里巴巴开源的一款面向分布式服务架构的轻量级流量控制、熔断降级组件。Sentinel以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助保护服务的稳定性。 官方文档:https://sentinelguard.io/zh-cn/docs/introduction.html …...
Linux下Ubuntun系统报错find_package(BLAS REQUIRED)找不到
Linux下Ubuntun系统报错find_package(BLAS REQUIRED)找不到 这次在windows的WSL2中遇到了一个非常奇怪的错误,就是 CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message):Could NOT find BLAS (missing: BLAS_LIBRAR…...
私有IP、VLAN和VPC,分别适合哪些场景你知道吗?
当我们在云中构建应用程序,尤其是使用了第三方云服务商的服务并且我们无法完全掌控后端的每部分时,安全性可能是最需要关注的地方。但这是一项充满挑战的工作,因为保护应用程序的方法实在是太多了!为了改善安全性,开发…...
【学术会议论文投稿】深度解码:机器学习与深度学习的界限与交融
目录 一、定义与起源:历史长河中的两条轨迹 二、原理差异:从浅层到深层的跨越 三、代码解析:实战中的机器学习与深度学习 机器学习示例:线性回归 深度学习示例:卷积神经网络(CNN) 四、应用差异:各自领…...
一位前端小白的2024总结
目录 简要 一、迷茫点的解决 (1)前端领域该怎么学? (2)旧技术还需要学吗? (3)我该学些什么? 二、折磨点的解决 (1)学技术成果回报太慢怎么…...
状态模式——C++实现
目录 1. 状态模式简介 2. 代码示例 3. 单例状态对象 4. 状态模式与策略模式的辨析 1. 状态模式简介 状态模式是一种行为型模式。 状态模式的定义:状态模式允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。 通俗的说就是一个对象…...
C# 控制打印机:从入门到实践
在开发一些涉及打印功能的应用程序时,使用 C# 控制打印机是一项很实用的技能。这篇文章就来详细介绍下如何在 C# 中实现对打印机的控制。 一、准备工作 安装相关库:在 C# 中操作打印机,我们可以借助System.Drawing.Printing命名空间&#x…...
【一个按钮一个LED】用STM32F030单片机实现苹果充电器的定时装置
文章目录 前言一、要实现的功能1、循环定时2、倒计时3、指示灯提示4、使用场景二、实现方法1、使用方法2、电路设计三、程序代码和成品1.定时中断子程序2.键值处理3.主函数总结前言 笔者前几年买苹果手机、IPAD配的适配器是A1443型号,这种5V1A,USB-A口、小功率的适配器,苹果…...
ansible自动化运维实战--script、unarchive和shell模块(6)
文章目录 一、script模块1.1、功能1.2、常用参数1.3、举例 二、unarchive模块2.1、功能2.2、常用参数2.3、举例 三、shell模块3.1、功能3.2、常用参数3.3、举例 一、script模块 1.1、功能 Ansible 的 script 模块允许你在远程主机上运行本地的脚本文件,其提供了一…...
LLM大模型实践18-评估(上)——存在一个简单的正确答案
准备数据 products_and_category { "电脑和笔记本": [ "TechPro 超极本", "BlueWave 游戏本", "PowerLite Convertible", "TechPro Desktop", "BlueWave Chromebook" ], "智能手机和配件": [ "…...
力扣-数组-704 二分查找
解析 经典二分,重点在于左闭右闭区间约定好后,根据定义更新边界 代码 class Solution { public:int search(vector<int>& nums, int target) {int left 0, right nums.size() - 1;while(left < right){int mid (left right) / 2;if(…...
K8S 快速实战
K8S 核心架构原理: 我们已经知道了 K8S 的核心功能:自动化运维管理多个容器化程序。那么 K8S 怎么做到的呢?这里,我们从宏观架构上来学习 K8S 的设计思想。首先看下图: K8S 是属于主从设备模型(Master-Slave 架构),即有 Master 节点负责核心的调度、管理和运维,Slave…...
C#集合操作优化:高效实现批量添加与删除
在C#中,对集合进行批量操作(如批量添加或删除元素)通常涉及使用集合类型提供的方法和特性,以及可能的循环或LINQ查询来高效地处理大量数据。以下是一些常见的方法和技巧: 批量添加元素 使用集合的AddRange方法&#x…...
Unity|小游戏复刻|见缝插针1(C#)
准备 创建Scenes场景,Scripts脚本,Prefabs预制体文件夹 修改背景颜色 选中Main Camera 找到背景 选择颜色,一种白中透黄的颜色 创建小球 将文件夹里的Circle拖入层级里 选中Circle,位置为左右居中,偏上&…...
【Redis】持久化机制
目录 前言: RDB 触发RDB持久化方法有俩种: 1.手动触发 2.自动触发 RDB文件的优缺点: AOF: AOF工作机制:编辑 编辑重写机制: 前言: Redis是一个内存数据库,将数据存储在内存中&…...
AWScurl笔记
摘要 AWScurl是一款专为与AWS服务交互设计的命令行工具,它模拟了curl的功能并添加了AWS签名版本4的支持。这一特性使得用户能够安全有效地执行带有AWS签名的请求,极大地提升了与AWS服务交互时的安全性和有效性。 GitHub - okigan/awscurl: curl-like acc…...
5_高并发内存池项目内存优化、页号与Span映射关系使用基数树优化及测试性能与malloc、free比较
申请/释放 内存大小申请方式释放方式x≤256KB(32页)向ThreadCache申请释放给ThreadCache32页<x≤128页向PageCache申请释放给PageCachex>128页向堆申请释放给堆 一、解决大于256KB的大块内存申请 (一)申请大于256…...
深入剖析C++中cin的原理、应用与进阶实践
一、引言 1.1 研究背景与目的 在 C 编程领域,cin 作为标准输入流对象,扮演着举足轻重的角色,是实现程序与用户交互的关键工具。它允许程序从标准输入设备(通常是键盘)读取数据,并将其存储到程序变量中&am…...
我国的金融组织体系,还有各大金融机构的分类,金融行业的组织
中国金融组织体系介绍 中国金融组织体系是一个复杂而多层次的系统,涵盖了各种类型的金融机构和监管机构。以下是关于中国金融组织体系的详细介绍,包括一行三会等金融监管机构,各大金融机构的分类、涉及的银行以及行业组织。 (一…...
十三、数据的输入与输出(4)
数据的输出 write.table()函数 write.table()函数的基本格式如下所示。 write.table(x, file "", quote TRUE, sep "", eol "\n", na "NA", dec ".", row.names TRUE, c…...
基于Java Web的网上房屋租售网站
内容摘要 本毕业设计题目为《基于Java Web的网上房屋租售网站》,是在信息化时代下充分利用互联网对传统房屋租售方式进行创新,在互联网上进行房屋租售突破了传统方式的局限性。对于房屋租售的当事人都提供了极大的便利。本稳针对了实际用户需求…...
【MySQL — 数据库增删改查操作】深入解析MySQL的create insert 操作
数据库CRUD操作 1 CRUD简介 CURD是对数据库中的记录进行基本的增删改查操作: 2. Create 新增 语法 INSERT [INTO] table_name[(column [,column] ...)] VALUES(value_list)[,(value_list)] ... # value 后面的列的个数和类型,要和表结构匹配…...
问题修复记录:Linux docker 部署 dify,无法调用宿主机本地服务
使用docker compose启动Dify后,在其中配置本地xinfrence中的模型,报错: get xinference model extra parameter failed, url: http://127.0.0.1:9997/v1/models/bge-m3, error: HTTPConnectionPool(host=‘127.0.0.1’, port=9997): Max retries exceeded with url: /v1/mo…...
【橘子ES】Kibana的分析能力Analytics简易分析
一、kibana是啥,能干嘛 我们经常会用es来实现一些关于检索,关于分析的业务。但是es本身并没有UI,我们只能通过调用api来完成一些能力。而kibana就是他的一个外置UI,你完全可以这么理解。 当我们进入kibana的主页的时候你可以看到这样的布局。…...
如何理解json和json字符串
如何理解网络传输的json到底是什么数据 网络传输的其实是对应的 json字符串 对象,前端接收后会将 json字符串 解析成 json对象 json类型字符串和json对象或者json数组是不一样的,json类型字符串本质是字符串,而json对象是json类型的数据&…...
项目上线后,是否会进行复盘?
是的,定期复盘在软件测试项目里极为关键,我会按以下步骤开展复盘工作: 复盘周期确定 短期项目:针对周期较短(如 1 - 2 个月)的项目,会在项目结束后的一周内进行复盘,确保大家对项目…...
基于 WEB 开发的手机销售管理系统设计与实现内容
标题:基于 WEB 开发的手机销售管理系统设计与实现 内容:1.摘要 摘要:随着智能手机的普及和电子商务的快速发展,手机销售行业面临着越来越多的挑战和机遇。为了提高销售效率和管理水平,本文设计并实现了一个基于 WEB 的手机销售管理系统。该系…...