Ubuntu美化+安装软件

Ubuntu美化+安装软件

安装软件

g++

sudo apt install g++

curl

sudo apt install curl

git

sudo apt install git

Vim

sudo apt install vim

VSCode

https://code.visualstudio.com/Download
找到下载文件夹,有一个code***.deb文件
sudo dpkg -i code***.deb

一些小小的个人设置
  • 自动保存

搜索Auto Save设置为afterDelay

  • 更改VSCode顶部样式

搜索window.titlebarstyle, 修改为custom

WPS

https://www.wps.cn/product/wpslinux 选择deb的X64
找到下载文件夹,有一个wps***.deb文件
sudo dpkg -i wps***.deb

安装完之后WPS提示缺失字体"Symbol、Wingdings、Wingdings 2…"

解决办法

1. 下载缺少的字体:链接: https://pan.baidu.com/s/1i5dzB9r 密码: pwe1
2. sudo unzip wps_symbol_fonts.zip -d /usr/share/fonts/wps-office
3. 重启WPS

参考: https://www.cnblogs.com/EasonJim/p/7146587.html

firefox插件

  • 暴力猴

https://greasyfork.org/zh-CN
在这个网站上添加暴力猴的插件,如:
https://greasyfork.org/zh-CN/scripts/378351-csdngreener-csdn%E5%B9%BF%E5%91%8A%E5%AE%8C%E5%85%A8%E8%BF%87%E6%BB%A4-%E5%85%8D%E7%99%BB%E5%BD%95-%E4%B8%AA%E6%80%A7%E5%8C%96%E6%8E%92%E7%89%88-%E6%9C%80%E5%BC%BA%E8%80%81%E7%89%8C%E8%84%9A%E6%9C%AC-%E6%8C%81%E7%BB%AD%E6%9B%B4%E6%96%B0

https://greasyfork.org/zh-CN/scripts/460743-%E5%B1%8F%E8%94%BD%E5%B9%BF%E5%91%8A-%E5%B1%8F%E8%94%BD%E8%B0%B7%E6%AD%8C%E5%B9%BF%E5%91%8A-%E7%99%BE%E5%BA%A6%E5%B9%BF%E5%91%8A-%E7%9F%A5%E4%B9%8E%E5%B9%BF%E5%91%8A-%E9%9A%90%E8%97%8F%E8%B0%B7%E6%AD%8C%E5%92%8C%E7%99%BE%E5%BA%A6%E6%90%9C%E7%B4%A2%E5%A2%9E%E5%BC%BA%E7%99%BE%E5%BA%A6%E6%90%9C%E7%B4%A2%E7%BB%93%E6%9E%9C%E7%9A%84%E5%90%84%E7%A7%8D%E5%B9%BF%E5%91%8A%E7%AD%89%E7%AD%89-%E8%BF%87%E6%BB%A4%E6%89%80%E6%9C%89%E9%87%87%E7%94%A8%E8%B0%B7%E6%AD%8C%E8%81%94%E7%9B%9F%E5%92%8C%E7%99%BE%E5%BA%A6%E8%81%94%E7%9B%9F%E7%AD%89%E5%B9%BF%E5%91%8A%E8%81%94%E7%9B%9F%E7%9A%84%E5%B9%BF%E5%91%8A

https://greasyfork.org/zh-CN/scripts/419081-%E7%9F%A5%E4%B9%8E%E5%A2%9E%E5%BC%BA

美化终端

zsh

sudo apt install zsh

安装ohmyzsh

wget https://gitee.com/mirrors/oh-my-zsh/raw/master/tools/install.sh

sh install.sh

记得删除install.sh

安装ohmyzsh插件

语法高亮插件 zsh-syntax-highlighting

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting

自动补全插件 zsh-autosuggestions

git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

以上两个插件需要在.zshrc中添加zsh-syntax-highlightingzsh-autosuggestions

美化zsh终端

安装powerlevel10k主题

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k

安装powerlevel10k

git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k

编辑 ~/.zshrc 设置 ZSH_THEME="powerlevel10k/powerlevel10k"

再增加一行配置: POWERLEVEL9K_MODE="awesome-patched"

注意这里有一个问题:字体图标不显示,要解决这个问题需要安装nerd font

git clone https://github.com/ryanoasis/nerd-fonts.git --depth 1

cd nerd-fonts

./install.sh

配置字体:在终端中设置为nerd的字体:这里选择"OverpassM Nerd Font"来保证图标的对齐

想要更改成自己喜欢的样式,可以采用p10k configure来更改,也可以采用 https://github.com/romkatv/powerlevel10k 官网上提供的方式自己折腾

VSCode终端

当安装完所有的插件之后,终端会有乱码的情况,这时需要在VSCode中settings.json添加"terminal.integrated.fontFamily": "OverpassM Nerd Font",

为了保险起见,又将本地的.local/share/fonts中的字体全部都复制到了/usr/local/share/font

sudo cp -r .local/share/fonts/* /usr/local/share/fonts

美化VIM

  • 安装Vim-plug

$ curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

  • 更改vim的配置文件
set number
syntax on
let g:mapleader=";"
set ruler
set nocompatible
set mouse=a
set scrolloff=8"自动重加载
set autoread"设置折叠
set fdm=marker"设置TAB和缩进宽度
set tabstop=4
set shiftwidth=4"修改后自动加载vimrc
autocmd! bufwritepost .vimrc source %
autocmd! bufwritepost vimrc source %"命令补全与提示
set wildmenu
set wildmode=full"设置默认剪切板
set clipboard=unnamedplus
let g:clipboard = {\   'name': 'SystemClipboard',\   'copy': {\      '+': 'xclip -i -selection clipboard',\      '*': 'xclip -i -selection clipboard',\    },\   'paste': {\      '+': 'xclip -o -selection clipboard',\      '*': 'xclip -o -selection clipboard',\   },\   'cache_enabled': 1,\ }"设置退格功能
set backspace=2"设置编码
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
set fileencoding=utf-8
set termencoding=utf-8
set encoding=utf-8"光标形状
let &t_SI.="\e[5 q" "插入模式光标
let &t_SR.="\e[4 q" "替换模式光标
let &t_EI.="\e[1 q" "正常模式光标"安装的插件
call plug#begin('~/.vim/my_plugins/')"快速补全HTML
Plug 'mattn/emmet-vim'"NERD注释
Plug 'scrooloose/nerdcommenter'"Solarize主题
Plug 'altercation/vim-colors-solarized'"gruvbox主题
Plug 'morhetz/gruvbox'"NERDTree 文件管理
Plug 'scrooloose/nerdtree'"C/C++高亮增强
Plug 'octol/vim-cpp-enhanced-highlight'"自由编写
Plug 'junegunn/goyo.vim'
Plug 'amix/vim-zenroom2'"美化状态栏
Plug 'vim-airline/vim-airline'"大项目模糊查找
Plug 'kien/ctrlp.vim'"括号补全
Plug 'Raimondi/delimitMate'"显示缩进
Plug 'Yggdroot/indentLine'"单词下划线
"Plug 'itchyny/vim-cursorword'"快速符号包围
Plug 'tpope/vim-surround'"异步语法检查
Plug 'dense-analysis/ale'"代码大纲
Plug 'majutsushi/tagbar'"自动补全
Plug 'neoclide/coc.nvim', {'branch': 'release'}"MarkDown
Plug 'godlygeek/tabular'
Plug 'plasticboy/vim-markdown'
Plug 'iamcco/markdown-preview.nvim', { 'do': { -> mkdp#util#install() } }call plug#end()"多光标
nmap <silent> <C-c> <Plug>(coc-cursors-position)
nmap <silent> <C-d> <Plug>(coc-cursors-word)
xmap <silent> <C-d> <Plug>(coc-cursors-range)
" use normal command like `<leader>xi(`
nmap <leader>x  <Plug>(coc-cursors-operator)"设置主题
set background=dark
colorscheme gruvbox
hi Normal guibg=NONE ctermbg=NONE"MarkDown 设置
let g:vim_markdown_frontmatter = 1
let g:mkdp_auto_start = 1
let g:vim_markdown_folding_disabled = 1"自动补全设置
" function! s:check_back_space() abort
" let col = col('.') - 1
" return !col || getline('.')[col - 1]  =~# '\s'
" endfunction" inoremap <silent><expr> <TAB>
"       \ pumvisible() ? coc#_select_confirm() :
"       \ coc#expandableOrJumpable() ? "\<C-r>=coc#rpc#request('doKeymap', ['snippets-expand-jump',''])\<CR>" :
"       \ <SID>check_back_space() ? "\<TAB>" :
"       \ coc#refresh()" let g:coc_snippet_next = '<tab>'" nmap <leader>rn <Plug>(coc-rename)
set signcolumn=number " 在行号的位置提醒错误" 配置tab和shift tab对候选词进行选取" <TAB> to select candidate forward or
" pump completion candidate
" 使用tab键向下选择自动补全的候选词
inoremap <silent><expr> <TAB>\ coc#pum#visible() ? coc#pum#next(1) :\ CheckBackspace() ? "\<Tab>" :\ coc#refresh()
" <s-TAB> to select candidate backward
" 使用shift+tab向上选择自动补全的候选词
inoremap <expr><S-TAB> coc#pum#visible() ? coc#pum#prev(1) : "\<C-h>"" Make <CR> to accept selected completion item or notify coc.nvim to format
" <C-g>u breaks current undo, please make your own choice.
" 按回车键确认我们所选择的候选词
inoremap <silent><expr> <CR> coc#pum#visible() ? coc#pum#confirm()\: "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>"function! CheckBackspace() abortlet col = col('.') - 1return !col || getline('.')[col - 1]  =~# '\s'
endfunction"语法检查设置
let g:ale_fix_on_save = 1
let g:ale_lint_on_insert_leave = 1
let g:ale_linters = {
\   'c++': ['gcc'],
\   'c': ['gcc'],
\   'python': ['pylint'],
\}
let g:ale_sign_column_always = 1
let g:ale_set_highlights = 1
let g:ale_sign_error = 'E'
let g:ale_sign_warning = 'W'"C/C++函数/类高亮
let g:cpp_class_scope_highlight = 1
let g:cpp_member_variable_highlight = 1
let g:cpp_class_decl_highlight = 1
let g:cpp_experimental_simple_template_highlight = 1
let g:cpp_concepts_highlight = 1
let c_no_curly_error=1"缩进设置
set cindent"按键映射----------------------------------------------------------------------"取消高亮
nnoremap <Leader><CR> :noh<CR>"语法检查映射
nnoremap <C-n> :ALENextWrap<CR>
nnoremap <C-m> :ALEPreviousWrap<CR>
nnoremap <Leader>d :ALEDetail<CR>"函数跳转
nmap <silent> gd <Plug>(coc-definition)
nmap <silent> gy <Plug>(coc-type-definition)
nmap <silent> gi <Plug>(coc-implementation)
nmap <silent> gr <Plug>(coc-references)"重命名
nmap <leader>rn <Plug>(coc-rename)"挂起代码大纲
nnoremap <F8> :TagbarToggle<CR>"窗口切换
map <C-j> <C-W>j
map <C-k> <C-W>k
map <C-h> <C-W>h
map <C-l> <C-W>l"标签管理
map <leader>tn :tabnew<cr>
map <leader>h gT
map <leader>l gt"符号包围
vnoremap (( <esc>`>a)<esc>`<i(<esc>
vnoremap << <esc>`>a><esc>`<i<<esc>
vnoremap [[ <esc>`>a]<esc>`<i[<esc>
vnoremap {{ <esc>`>a}<esc>`<i{<esc>
vnoremap "" <esc>`>a"<esc>`<i"<esc>
vnoremap '' <esc>`>a'<esc>`<i'<esc>
vnoremap `` <esc>`>a"<esc>`<i"<esc>"可视化查找
vmap / y/<C-R>"<CR>
vmap ? y/<C-R>"<CR>
xnoremap * :<C-u>call <SID>VSetSearch('/')<CR>/<C-R>=@/<CR><CR> 
xnoremap # :<C-u>call <SID>VSetSearch('?')<CR>?<C-R>=@/<CR><CR>function! s:VSetSearch(cmdtype)let temp = @snorm! gv"sylet @/ = '\V' . substitute(escape(@s, a:cmdtype.'\'), '\n', '\\n', 'g') let @s = temp
endfunction"NERDTree
map <leader>nn :NERDTreeToggle<cr>
map <leader>nb :NERDTreeFromBookmark
map <leader>nf :NERDTreeFind<cr>"Zenroom
nnoremap <silent> <leader>z :Goyo<cr>"MarkDown
nmap <m-s> <Plug>MarkdownPreviewStop
nmap <m-p> <Plug>MarkdownPreview
nmap <m-t> <Plug>MarkdownPreviewToggle"ESC映射
inoremap jj <esc>
cnoremap jj <esc>"终端快速跳转
tnoremap <C-h> <C-w>h
tnoremap <C-j> <C-w>j
tnoremap <C-k> <C-w>k
tnoremap <C-l> <C-w>l"终端结束
tnoremap :q<CR> exit<CR>

但是这里需要nodejs的依赖才能使用coc插件

  • 安装NodeJs

参考: https://blog.csdn.net/darkwindzzh/article/details/82192704

  1. 找到官网: https://nodejs.cn/download/

  2. 下载长期支持版本: 20.14.0 ,并选择Linux 二进制文件 (x64)

  3. 解压

tar -xvf node-v20.14.0-linux-x64.tar.xz

  1. 重命名

mv node-v20.14.0-linux-x64 nodejs

  1. 移动至软件目录opt

sudo mv nodejs /opt

  1. 添加环境变量
    • 修改/etc/profile文件 增加以下内容:

#SET PATH FOR NODEJS
export NODE_HOME=/opt/nodejs
export PATH= N O D E H O M E / b i n : NODE_HOME/bin: NODEHOME/bin:PATH

修改开机启动项

进入/etc/default/grub文件

sudo vim /etc/default/grub

修改GRUB_DEFAULT的默认值,原来是0,表示Ubuntu系统,若需要修改为Windows,则需要将数字修改为开机时Windows所在的位置,修改完之后执行以下命令

sudo update-grup

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/34560.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

仿微信图片查看器`WPF`实现`ListBox` 鼠标滑动批量选中与反选效果

看到微信中&#xff0c;上传图片时的图片查看功能可以通过手指长按并滑动实现多选&#xff0c;于是为解析实现思路&#xff0c;也通过WPF 使用ListBox 实现了一版案例。 参考效果 微信效果如下&#xff0c;支持图片单选和鼠标长按滑动实现批量操作。 WPF模仿效果&#xff1a…

Mysql: SQL-DDL

一.SQL通用语法 1.SQL可以单行或者多行书写,以分号结尾。 2.SQL语句可以使用空格/缩进来增强语句的可读性。 3.MySQL数据库的SQL语句不区分大小写,关键字建议用大写。 4.注释: 单行注释:注释内容或#注释内容(Mysql特有) 多行注释&#xff1a;/*注释内容*/ 二.SQL分类 1.D…

信息学奥赛初赛天天练-34-CSP-J2021完善程序-按位异或、模拟算法、数组模拟环、约瑟夫问题应用

PDF文档公众号回复关键字:20240624 2021 CSP-J 完善程序3 1 完善程序 (单选题 &#xff0c;每小题3分&#xff0c;共30分) &#xff08;Josephus问题&#xff09;有n个人围成一个圈&#xff0c;依次标号0至n-1。从0号开始&#xff0c;依次 0&#xff0c;1&#xff0c;0&#…

0801功率放大问题

3个学时讲一个电路&#xff08;两个共集共集并联&#xff09;&#xff0c;4个问题&#xff0c;发展线索 丙类放大电路用在高频通讯行业&#xff0c;低频功放是甲类&#xff0c;乙类&#xff0c;甲乙类 PT三极管的损耗 Pv电源提供的功率 现代模电通常使用方法b 只有交流…

React进阶(五):导航守卫_renderroutes

在《React进阶&#xff08;四&#xff09;&#xff1a;路由介绍》博文中&#xff0c;介绍了React路由相关知识&#xff0c;在实际项目开发过程中&#xff0c;路由之间的跳转必定涉及权限、用户是否登陆等限定条件的判定&#xff0c;故需要导航守卫来完成这一事项。 在实现reac…

大数据面试题之YARN

目录 1、介绍下YARN 2、YARN有几个模块 3、YARN工作机制 4、YARN有什么优势&#xff0c;能解决什么问题? 5、YARN容错机制 6、YARN高可用 7、YARN调度器 8、YARN中Container是如何启动的? 9、YARN的改进之处&#xff0c;Hadoop3.x相对于Hadoop 2.x? 10、YARN监控 1…

用Vue3打造一个交互式营养追踪仪表盘

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 使用 Vue.js 构建营养仪表盘卡片 应用场景介绍 营养仪表盘卡片是一个可视化工具&#xff0c;用于跟踪个人的营养摄入情况。它通常包含以下信息&#xff1a; 卡路里摄入目标和进度营养成分&#xff08;如脂肪…

2024中国·淮安高端人才精英赛北京分站赛首战告捷

“诚意满淮&#xff0c;创赢未来”&#xff01;6月20-21日&#xff0c;2024中国淮安高端人才精英赛首场分站赛在北京产业创新中心顺利举办。淮安市科技局党组书记、局长胡长青&#xff0c;淮安市委组织部人才处处长沈雪娇&#xff0c;淮安经开区党工委委员、管委会副主任、科技…

C++(part2、3-Linux系统编程+数据库项目):Linux网络云盘

文章目录 一、项目需求分析1.一期&#xff1a;命令行解析(1)cd(用栈管理)、ls、pwd(2)puts、gets(3)mkdir、touch、rmdir、rm 2.二期&#xff1a;密码验证、日志、断点续传、大文件传输(1)密码验证(2)日志(3)断点续传(4)大文件传输 3.三期&#xff1a;用户注册、用户登录、虚拟…

Centos9 安装VBox增强功能问题

安装步骤 更新gcc 首先手动更新gcc&#xff0c;防止无法兼容最新版本的内核&#xff0c;我这里将gcc 11更新到gcc 13 1.首先更新当前gcc和支持 yum install -y gcc gcc-c 2.下载新版本gcc压缩包 wget http://ftp.gnu.org/gnu/gcc/gcc-13.1.0/gcc-13.1.0.tar.gz 解压到usr ta…

springboot+vue+mybatis穷游管理系统+PPT+论文+讲解+售后

随着现在网络的快速发展&#xff0c;网上管理系统也逐渐快速发展起来&#xff0c;网上管理模式很快融入到了许多企业的之中&#xff0c;随之就产生了“基于vue的穷游管理系统”&#xff0c;这样就让基于vue的穷游管理系统更加方便简单。 对于本基于vue的穷游管理系统的设计来说…

理解静态单赋值SSA(Static Single Assignment)

理解静态单赋值SSA&#xff08;Static Single Assignment&#xff09; SSA-wiki 静态单赋值&#xff08;Static Single Assignment, SSA&#xff09;是一种中间表示形式&#xff0c;在编译器设计中广泛使用。SSA 的核心思想是程序中的每个变量在其整个生命周期内只被赋值一次。…

企业文件传输系统只能传输?分享功能同样重要!(下)

上篇我们讲述了企业大文件传输的重要性以及镭速在传输方面的优势&#xff0c;同时企业文件的快速共享显得尤为重要。镭速软件在这方面的表现一样尤为突出&#xff0c;它不仅提供了强大的文件传输功能&#xff0c;而且在文件分享方面也有其独到之处。本文将探讨镭速软件在文件分…

协程: Flow 异步流 /

以异步方式返回多个返回值的方案: 在 Kotlin 协程 Coroutine 中 , 使用 suspend 挂起函数 以异步的方式 返回单个返回值肯定可以实现 , 如果要 以异步的方式 返回多个元素的返回值 , 可以使用如下方案 : 集合序列Suspend 挂起函数Flow 异步流 同步调用返回多个值的弊端&…

江协科技51单片机学习- p17 定时器

&#x1f680;write in front&#x1f680; &#x1f50e;大家好&#xff0c;我是黄桃罐头&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流 &#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐️ 留言&#x1f4dd;​…

Unity面试题 UGUI调整UI与粒子特效的显示层级

首先&#xff0c;必须保证Canvas画布的渲染模式为了相机渲染 方法:一&#xff1a;将需要控制UI显示层级的Image换成Sprite 1.创建一个粒子系统&#xff0c;和两张Sprite. 2.设置Sprite1的Order in Layer为 -1&#xff0c;设置Sprite2的Order in Layer为 1&#xff0c;粒子的Ord…

LONGHEADS:无需训练的多头注意力长文本处理框架

大模型&#xff08;LLMs&#xff09;在处理海量文本数据时展现出了前所未有的能力。然而这些模型在面对超出其训练时所见序列长度的长文本时存在两个主要问题&#xff1a;一是模型对于超出预训练长度的文本难以有效泛化&#xff0c;二是注意力机制的二次方时间复杂度导致计算成…

策略模式与函数式编程应用

策略模式 | 单一职责原则&#xff08;Single Responsibility Principle, SRP&#xff09;&#xff1a;islenone和islentwo分别根据特定条件返回电话号码 函数式编程&#xff1a; ‘’ if pd.isna(self.note1) else len(re.findall(r’\d, self.note1)) 重复代码&#xff1a; 当…

活动预告|探索 LLM 大模型的小型化 —— 微软 Phi3在 NVIDIA Jetson 与 NIM 平台的最佳实践

在当前高速发展的人工智能领域&#xff0c;如何高效的部署和优化 SLM (小型的大模型) 成为关键。随着微软 Phi-3 系列模型的发布&#xff0c;让 SLM 在 NVIDIA Jetson 边缘计算平台上的部署成为可能。同时 Phi-3 系列模型已在 NVIDIA NIM 平台提供加速的推理服务。 NVIDIA NIM…

解决File协议导致的CORS限制,用Node.js搭建本地服务器

文章目录 一、前言二、分析报错原因三、如何解决四、具体步骤 你是否曾遇到这样的困境&#xff1a;在本地使用file://协议直接打开HTML文件时&#xff0c;由于现代浏览器的安全限制&#xff0c;无法跨源请求&#xff08;CORS&#xff09;本地资源&#xff1f;尤其是当你试图通过…