Ubuntu将大写锁定CapsLock更换成Esc并开机启动

2024-03-20 04:18

本文主要是介绍Ubuntu将大写锁定CapsLock更换成Esc并开机启动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景

vim不得不说是神器,但是由于历史原因导致现在的ESC按键回到命令模式显得不是那么方便,然后基本不用的CapsLock又处在黄金位置,所以就萌生了把CapsLock更换成Esc的想法。

操作

1.下载xmodmap
ubuntu@debian:~$ sudo apt update
ubuntu@debian:~$ sudo apt install xmodmap 
2.编写xmodmap配置文件
ubuntu@debian:~$ vim .xmodmaprc
ubuntu@debian:~$ cat .xmodmaprc
! Swap caps lock and escape
remove Lock = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock
ubuntu@debian:~$ xmodmap .xmodmaprc
3.将xmodmap设置开机启动

相信很多伙伴可能在~/.profile或者/etc/profile中设置了开机启动不生效的问题。原因如下:
xmodmap是一个基于X桌面的应用程序,我们在profile文件中设置的话在执行启动程序的语句时X桌面并没有加载完毕,所以我们要等X桌面完全加载完毕再执行这个脚本,可以自己写个程序来监控X桌面什么时候加载完成再执行激活xmodmap程序,但是我这里为了方便起见直接使用了干等法。
设置开机启动
其中命令如下:

/bin/bash -c "sleep 30; /usr/bin/xmodmap ~/.xmodmaprc"

我这里是用图形界面弄的开机启动,设置了30秒的延迟,理论上配置在profile文件中也是可以的。

总结

多使用Stackoverflow,多思考,多交流。

这篇关于Ubuntu将大写锁定CapsLock更换成Esc并开机启动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/828251

相关文章

在Ubuntu上打不开GitHub的完整解决方法

《在Ubuntu上打不开GitHub的完整解决方法》当你满心欢喜打开Ubuntu准备推送代码时,突然发现终端里的gitpush卡成狗,浏览器里的GitHub页面直接变成Whoathere!警告页面... 目录一、那些年我们遇到的"红色惊叹号"二、三大症状快速诊断症状1:浏览器直接无法访问症状2:终端操作异常

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

Python实现中文大写金额转阿拉伯数字

《Python实现中文大写金额转阿拉伯数字》在财务票据中,中文大写金额被广泛使用以防止篡改,但在数据处理时,我们需要将其转换为阿拉伯数字形式,下面我们就来看看如何使用Python实现这一转换吧... 目录一、核心思路拆解二、中文数字解析实现三、大单位分割策略四、元角分综合处理五、测试验证六、全部代码在财务票

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

Spring Boot项目如何使用外部application.yml配置文件启动JAR包

《SpringBoot项目如何使用外部application.yml配置文件启动JAR包》文章介绍了SpringBoot项目通过指定外部application.yml配置文件启动JAR包的方法,包括... 目录Spring Boot项目中使用外部application.yml配置文件启动JAR包一、基本原理

解决若依微服务框架启动报错的问题

《解决若依微服务框架启动报错的问题》Invalidboundstatement错误通常由MyBatis映射文件未正确加载或Nacos配置未读取导致,需检查XML的namespace与方法ID是否匹配,... 目录ruoyi-system模块报错报错详情nacos文件目录总结ruoyi-systnGLNYpe

解决hive启动时java.net.ConnectException:拒绝连接的问题

《解决hive启动时java.net.ConnectException:拒绝连接的问题》Hadoop集群连接被拒,需检查集群是否启动、关闭防火墙/SELinux、确认安全模式退出,若问题仍存,查看日志... 目录错误发生原因解决方式1.关闭防火墙2.关闭selinux3.启动集群4.检查集群是否正常启动5.

Springboot项目启动失败提示找不到dao类的解决

《Springboot项目启动失败提示找不到dao类的解决》SpringBoot启动失败,因ProductServiceImpl未正确注入ProductDao,原因:Dao未注册为Bean,解决:在启... 目录错误描述原因解决方法总结***************************APPLICA编