0%

  1. 进入windows : /media/dgimo/系统/Windows/Fonts
  2. sudo cp *.ttf ~/桌面/WinFonts
  3. sudo cp *.TTF ~/桌面/WinFonts
  4. cd ~/桌面
  5. sudo mv WinFonts /usr/share/fonts/
  6. sudo chmod -R 755 /usr/share/fonts/WinFonts
  7. sudo mkfontscale && sudo mkfontdir && sudo fc-cache -fv
  8. 字体名称对照:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    arial.ttf               Arial
    couri.ttf Courier New
    times.ttf Times New Roman
    timesbd.ttf Times New Roman Bole
    FZSTK.TTF 方正舒体
    FZYTK.TTF 方正姚体
    msyh.ttf 微软雅黑
    msyhbd.ttf 微软雅黑Bold
    simfang.ttf 仿宋GB_2312
    simhei.ttf 黑体
    simkai.ttf 楷体GB_2312
    SIMLI.TTF 隶书
    simsun.ttc 宋体 宋体PUA 新宋体
    SIMYOU.TTF 幼圆
    STCAIYUN.TTF 华文彩云
    STFANGSO.TTF 华文仿宋
    STHUPO.TTF 华文琥珀
    STKAITI.TTF 华文楷体
    STLITI.TTF 华文隶书
    STSONG.TTF 华文宋体
    STXIHEI.TTF 华文细黑
    STXINGKA.TTF 华文行楷
    STXINWEI.TTF 华文新魏
    STZHONGS.TTF 华文中宋
    SURSONG.TTF 宋体-方正超大字符集

  1. Cupertino:图标 —— icons
  2. dash-to-dock-gnome:dash to dock
  3. grub2-themes-master:grub启动界面 —— sudo ./install.sh -v
  4. High_Ubunterra_CC : Ubuntu 锁屏启动界面(模糊的那个)
  5. Mojave-light: 主题 —— themes
  6. suadesplas: 启动动画
  7. 美化网址有去除启动时紫框的说明是:https://www.cnblogs.com/feipeng8848/p/8970556.html

    即:找到/boot/grub/grub.cfg文件,找到这样一行: if background_color 44,0,30,0;修改成 if background_color 0,0,0,0;就会去除grub在选中Ubuntu系统之后出现的短暂的紫色。

  8. 美化网址:
    1. https://www.cnblogs.com/feipeng8848/p/8970556.html
    2. https://blog.csdn.net/weixin_40389121/article/details/81703577
    3. https://www.cnblogs.com/lishanlei/p/9090404.html

  1. grub启动界面:直接使用 sudo ./install.sh -v,而不是sudo ./install.sh -v -2
  2. 安装微软字体库时,使用Tab健选择确定
  3. 搜狗输入法 如果调到第一门语言就会乱码(可能有的电脑没问题)
  4. 安装好anaconda后是没有图标的
  5. 安装anaocnda直接 bash anaconda.sh
  6. 安装anaconda之前应该先安装 vscode

代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm
from mpl_toolkits.mplot3d import Axes3D

# 解决中文乱码问题
# myfont = fm.FontProperties(fname='/home/zk/study/python_lessions/DataVisualiztion/Library/Fonts/simsun.ttc', size=14
myfont = 'kaiti'
matplotlib.rcParams["axes.unicode_minus"] = False

def simple_plot():
"""
simple plot
:return:
"""
#生成画布
plt.figure(figsize=(8,6), dpi=80)

#打开交互模式
plt.ion()

# 循环
for index in range(100):
#清除原有图像
plt.cla()
#设定标题等
plt.title("动态曲线图",fontproperties=myfont)
plt.grid(True)

#生成测试数据
x = np.linspace(-np.pi + index, np.pi+0.1*index, 256,endpoint=True)

y_cos, y_sin = np.cos(x),np.sin(x)

# 设置x轴
plt.xlabel("x轴", fontproperties= myfont)
plt.xlim(-4 + 0.1*index,4 + 0.1*index)
plt.xticks(np.linspace(-4 + 0.1 * index, 4 + 0.1 * index, 9, endpoint=True))
# 设置Y轴
plt.ylabel("Y轴", fontproperties=myfont)
plt.ylim(-1.0, 1.0)
plt.yticks(np.linspace(-1, 1, 9, endpoint=True))

# 画两条曲线
plt.plot(x, y_cos, "b--", linewidth=2.0, label="cos示例")
plt.plot(x, y_sin, "g-", linewidth=2.0, label="sin示例")


# 设置图例位置,loc可以为[upper, lower, left, right, center]
plt.legend(loc="upper left", prop={'family': "kaiti"}, shadow=True)

# 暂停
plt.pause(0.1)

# 关闭交互模式
plt.ioff()

# 图形显示
plt.show()
return


if __name__ == '__main__':
simple_plot()

注意:

  1. 如果没有交互模式 那么就不能动态绘图
  2. plt.figure是可以自己显示画板的

1. 申请 Gitalk 账号

  1. 右上角头像

  2. setting

  3. Developer settings

  4. OAuth Apps

    1. Application name : 随便取名字
    2. Homepage URL : 你的博客地址
    3. Application description : 随便写吧
    4. Authorization callback URL : 你的博客地址

    [注意]:

    1. 如果你申请了网址,进行映射,那么你的博客地址一定要填你申请的那个,比如我的是:dgimo.top,那么,我的Homepage URLAuthorization callback URL 都是 dgimo.top

    2. 如果github博客开启了force https功能,需要将OAuth Apps中的地址改为https。

2. 配置 _config.yml

1
2
3
4
5
6
7
8
9
gitalk:
# Gitalk
# enable: true
gitalk_clientID: 你的ID
gitalk_Secret: 你的Secret
gitalk_repo: '你存储评论的仓库地址' // 这里建议就是你的博客地址:如test.github.io
gitalk_owner: '你的用户名' // 如:test
gitalk_admin: '你的用户名' // test
distractionFreeMode: false

3. 配置 head.html

head.html 的下末尾添加:

1
2
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.css">
<script src="https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.min.js"></script>

如下图所示:

4. 添加 gitalk.html

在文件夹 _includes 下面创建 gitalk.html,内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<div id="gitalk-container"></div>

<script>
const gitalk = new Gitalk({
clientID: '你的ID',
clientSecret: '你的Secret',
repo: '你存储评论的仓库地址',
owner: '你的用户名',
admin: ['你的用户名'],
id: location.pathname, // Ensure uniqueness and length less than 50
distractionFreeMode: false // Facebook-like distraction free mode
})

gitalk.render('gitalk-container')
</script>

[注意]:和 _config.yml 中的保持一致

5. 初始化你的 Gitalk 即可

参考视频

参考文章

  • 全部命令

    1
    2
    3
    4
    5
    6
    ubuntu-drivers devices
    sudo apt install nvidia-440
    sudo apt install nvidia-driver-440
    reboot
    lshw -numeric -C display
    lspci -vnn | grep VGA
  • 具体步骤

    方法一

    1. 禁用显卡的方法这里在记一下:在/etc/modprobe.d/blacklist.conf里添加,如下内容,并执行 sudo update-initramfs -u,
      1
      2
      blacklist nouveau
      options nouveau modeset=0
    2. 重启后用lsmod | grep nouveau,如果没有任何输出说明禁用成功。

      但是我并没有禁用显卡

    3. 直接输入: sudo ubuntu-drivers autoinstall
    4. 验证是否安装成功:nvidia-smi

方法二 (推荐)

  1. 如果需要安装新版本的驱动可以先添加源:
    1
    2
    sudo add-apt-repository ppa:graphics-drivers/ppa
    sudo apt update
  2. 执行 ubuntu-drivers devices,如下所示:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    == /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
    modalias : pci:v000010DEd00001C8Csv00001028sd00000798bc03sc00i00
    vendor : NVIDIA Corporation
    model : GP107M [GeForce GTX 1050 Ti Mobile]
    driver : nvidia-driver-390 - third-party free
    driver : nvidia-driver-430 - distro non-free
    driver : nvidia-driver-415 - third-party free
    driver : nvidia-driver-435 - distro non-free
    driver : nvidia-driver-440 - third-party free recommended
    driver : nvidia-driver-410 - third-party free
    driver : xserver-xorg-video-nouveau - distro free builtin
  3. 选择 recommended (推荐的) 安装: sudo apt install nvidia-driver-440
  4. 可使用下面命令,查看是否安装成功
    1
    2
    lshw -numeric -C display
    lspci -vnn | grep VGA
    显示结果:
    1. lshw -numeric -C display
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      WARNING: you should run this program as super-user.
      *-display
      description: VGA compatible controller
      product: GP107M [GeForce GTX 1050 Ti Mobile] [10DE:1C8C]
      vendor: NVIDIA Corporation [10DE]
      physical id: 0
      bus info: pci@0000:01:00.0
      version: a1
      width: 64 bits
      clock: 33MHz
      capabilities: vga_controller bus_master cap_list rom
      configuration: driver=nvidia latency=0
      resources: irq:128 memory:de000000-deffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:e000(size=128) memory:df000000-df07ffff
      *-display
      description: VGA compatible controller
      product: Intel Corporation [8086:591B]
      vendor: Intel Corporation [8086]
      physical id: 2
      bus info: pci@0000:00:02.0
      version: 04
      width: 64 bits
      clock: 33MHz
      capabilities: vga_controller bus_master cap_list rom
      configuration: driver=i915 latency=0
      resources: irq:127 memory:dd000000-ddffffff memory:b0000000-bfffffff ioport:f000(size=64) memory:c0000-dffff
      WARNING: output may be incomplete or inaccurate, you should run this program as super-user.
    2. lspci -vnn | grep VGA
      1
      2
      00:02.0 VGA compatible controller [0300]: Intel Corporation Device [8086:591b] (rev 04) (prog-if 00 [VGA controller])
      01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP107M [GeForce GTX 1050 Ti Mobile] [10de:1c8c] (rev a1) (prog-if 00 [VGA controller])
      参考网址

  • 配置

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    " ================================================================
    " Author: Dgimo
    " ================================================================

    " 关闭兼容模式, 默认情况下, Vim 会以兼容 Vi 的模式运行, 所以一定要关闭.
    set nocompatible


    " ================================================================
    " 环境判断
    " ================================================================
    " 判断是 Windows 还是 Linux.
    let g:isWindows=0
    let g:isLinux=0
    if (has("win32") || has("win64"))
    let g:isWindows=1
    else
    let g:isLinux=1
    endif
    " 判断是终端还是 gVim
    let g:isGUI=1
    if has("gui_running")
    let g:isGUI=1
    else
    let g:isGUI=0
    endif


    " ================================================================
    " gVim 原有配置
    " ================================================================
    if (g:isWindows)
    " 加载一些默认配置
    source $VIMRUNTIME/vimrc_example.vim
    " 模仿 Windows 快捷键, 例如 ctrl-s, ctrl-c, ctrl-v 等等
    source $VIMRUNTIME/mswin.vim
    " 模仿 Windows 的行为, 这一行很重要, 没有这行的话, 最大化经常出问题.
    behave mswin
    elseif (g:isLinux)
    if (g:isGUI)
    " Source a global configuration file if available
    if filereadable("/etc/vim/gvimrc.local")
    source /etc/vim/gvimrc.local
    endif
    else
    set mouse=a " 在任何模式下启用鼠标
    set t_Co=256 " 在终端启用256色
    set backspace=2 " 设置退格键可用
    " Source a global configuration file if available
    if filereadable("/etc/vim/vimrc.local")
    source /etc/vim/vimrc.local
    endif
    endif
    endif


    " ================================================================
    " UI和基本配置
    " ================================================================
    " 设置字体
    if (g:isWindows)
    set guifont=Consolas:h11
    elseif (g:isLinux)
    set guifont=Monospace\ Regular\ 14
    endif

    " GUI 的设置
    if (g:isGUI)
    " 关闭菜单
    set guioptions-=m
    " 关闭工具栏
    set guioptions-=T
    " 关闭左侧滚动条
    set guioptions-=L
    " 关闭右侧滚动条
    set guioptions-=r
    " 启动时最大化
    autocmd GUIEnter * simalt ~x
    endif

    set nocompatible " required
    filetype off " required

    " set the runtime path to include Vundle and initialize
    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()

    " alternatively, pass a path where Vundle should install plugins
    "call vundle#begin('~/some/path/here')

    " let Vundle manage Vundle, required
    " Plugin 'gmarik/Vundle.vim'
    Plugin 'VundleVim/Vundle.vim'
    Plugin 'Valloric/YouCompleteMe'
    let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'

    set runtimepath+=~/.vim/bundle/YouCompleteMe
    let g:ycm_collect_identifiers_from_tags_files = 1 " 开启 YCM 基于标签引擎
    let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释与字符串中的内容也用于补全
    let g:syntastic_ignore_files=[".*\.py$"]
    let g:ycm_seed_identifiers_with_syntax = 1 " 语法关键字补全
    let g:ycm_complete_in_comments = 1
    let g:ycm_confirm_extra_conf = 0
    let g:ycm_key_list_select_completion = ['<c-n>', '<Down>'] " 映射按键, 没有这个会拦截掉tab, 导致其他插件的tab不能用.
    let g:ycm_key_list_previous_completion = ['<c-p>', '<Up>']
    let g:ycm_complete_in_comments = 1 " 在注释输入中也能补全
    let g:ycm_complete_in_strings = 1 " 在字符串输入中也能补全
    let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释和字符串中的文字也会被收入补全
    let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'
    let g:ycm_show_diagnostics_ui = 0 " 禁用语法检查
    inoremap <expr> <CR> pumvisible() ? "\<C-y>" : "\<CR>" | " 回车即选中当前项
    nnoremap <c-j> :YcmCompleter GoToDefinitionElseDeclaration<CR>| " 跳转到定义处
    "let g:ycm_min_num_of_chars_for_completion=2 " 从第2个键入字符就开始罗列匹配项
    highlight PMenu ctermfg=0 ctermbg=242 guifg=black guibg=darkgrey
    highlight PMenuSel ctermfg=242 ctermbg=8 guifg=darkgrey guibg=black

    " Add all your plugins here (note older versions of Vundle used Bundle instead of Plugin)
    " All of your Plugins must be added before the following line
    call vundle#end() " required
    filetype plugin indent on " required


    " 只在需要的时候才重新绘制界面(例如宏执行过程中不需要重绘界面)
    set lazyredraw
    " 发生错误时不要响铃, 也不要闪烁
    set noerrorbells
    set belloff=all

    " 分割窗口时保持相等的宽/高
    set equalalways
    " 竖直split时,在右边开启
    set splitright
    " 水平split时,在下边开启
    set splitbelow
    " 全局复制粘贴
    set clipboard=unnamedplus

    " ================================================================
    " 编码
    " ================================================================
    " 设置vim内部编码
    set encoding=utf-8
    " 设置编辑文件时的编码
    set fileencoding=utf-8
    " 设置 Vim 能识别的编码
    set fileencodings=ucs-bom,utf-8,cp936,gb18030,gb2312,big5,cuc-jp,cuc-kr,latin
    " 设置终端模式(非 GUI 模式)下的编码
    set termencoding=utf-8
    " 防止特殊符号无法显示
    set ambiwidth=double
    " 解决 console 输出乱码
    language messages zh_CN.utf-8


    " ================================================================
    " 文件相关配置
    "
    " 关于备份文件的说明: 备份文件, 临时文件, undo 文件, 最好的做法是把
    " 他们配置到单独的文件夹里, 我这里暂时都不让生成了, 以后可以按需要修改.
    " 例如:
    " set directory=~/.vim/.swp//
    " set backupdir=~/.vim/.backup//
    " set undodir=~/.vim/.undo//
    " 注意最后要有两道//, 表示文件名使用绝对路径
    " ================================================================
    " 自动检测文件类型和缩进格式, 并根据文件类型加载插件
    filetype plugin indent on
    " 文件被外部改动后, 自动加载
    set autoread
    " 不生成备份文件
    set nobackup
    " 不生成临时文件
    set noswapfile
    " 不生成 undo 文件
    set noundofile


    " ================================================================
    " 编辑器配置
    " ================================================================
    " 显示行号
    set number
    " 显示语法高亮
    syntax enable
    syntax on
    " 显示 tab(>---), 空格(^), 换行(¬)
    set list
    set listchars=tab:>-,trail:^ ",eol:¬
    " 突出显示当前行
    set cursorline
    " 开启自动缩进
    set autoindent
    " 智能缩进
    set smartindent

    " 编辑时按一个 Tab 键相当于输入4个空格
    set tabstop=4
    " 格式化时缩进尺寸为4个空格
    set shiftwidth=4
    " 让 Vim 把连续的空格视为一个 Tab, 删除时可以一次删掉一个 Tab 的空格数量
    set softtabstop=4
    " 把制表符转换为多个空格, 具体空格数量参考 tabstop 和 shiftwidth
    set expandtab
    " 在行和段的开始出使用 Tab
    set smarttab

    " 合并两行中文时, 不在中间加空格
    set formatoptions+=B
    " 合并行时不添加多余空格
    set nojoinspaces


    " ================================================================
    " 搜索和匹配
    " ================================================================
    " 高亮显示匹配的括号
    set showmatch
    " 高亮显示搜索到的关键字
    set hlsearch
    " 即时搜索
    set incsearch
    " 智能大小写敏感, 只要有一个字母大写, 就大小写敏感, 否则不敏感
    set ignorecase smartcase


    " ================================================================
    " 操作习惯和快捷键
    " ================================================================
    " 将 kk 配置成 esc
    inoremap kk <esc>
    " ctrl-h 光标左移一格
    inoremap <c-h> <left>
    " ctrl-j 垂直下移一行
    " inoremap <c-j> <down>
    " 下面这个组合比较巧妙, ctrl-o 可以进入临时命令模式, 然后执行一次 gj
    inoremap <c-j> <c-o>gj
    " ctrl-k 垂直上移一行
    " inoremap <c-k> <up>
    inoremap <c-k> <c-o>gk
    " ctrl-l 光标右移一格
    inoremap <c-l> <right>
    " 按 U 执行 redo
    " noremap U <c-r>
    " shift 回车, 在下一行输入
    inoremap <s-cr> <end><cr>
    " ctrl 回车,行尾
    inoremap <c-cr> <esc>A
    " 在可视模式下使用p粘贴时不替换寄存器内容, 这里是利用了黑洞寄存器
    vnoremap p "_dP
    " 对于很长的行, vim会自动换行, 此时 j 或者 k 就会一下跳很多行,
    " 使用 gk,gj 可以避免跳过多行, 但是不方便, 所以做了如下映射.
    nnoremap k gk
    nnoremap j gj
    vnoremap k gk
    vnoremap j gj
    " 按 gb 跳转到前一个标签页, 默认 gT, 按起来不方便
    nnoremap gb gT


    " ================================================================
    " 主题
    " ================================================================
    colorscheme monokai " 设置主题为 molokai

    " 括号补全
    inoremap ( ()<ESC>i
    inoremap [ []<ESC>i
    inoremap { {}<ESC>i
    inoremap < <><ESC>i
    inoremap ' ''<ESC>i
    inoremap " ""<ESC>i
  • 特殊配置

  1. 括号补全
    1
    2
    3
    4
    5
    6
    7
    " 括号补全
    inoremap ( ()<ESC>i
    inoremap [ []<ESC>i
    inoremap { {}<ESC>i
    inoremap < <><ESC>i
    inoremap ' ''<ESC>i
    inoremap " ""<ESC>i
  2. YouCompleteMe
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    set nocompatible              " required
    filetype off " required

    " set the runtime path to include Vundle and initialize
    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()

    " alternatively, pass a path where Vundle should install plugins
    "call vundle#begin('~/some/path/here')

    " let Vundle manage Vundle, required
    " Plugin 'gmarik/Vundle.vim'
    Plugin 'VundleVim/Vundle.vim'
    Plugin 'Valloric/YouCompleteMe'
    let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'

    set runtimepath+=~/.vim/bundle/YouCompleteMe
    let g:ycm_collect_identifiers_from_tags_files = 1 " 开启 YCM 基于标签引擎
    let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释与字符串中的内容也用于补全
    let g:syntastic_ignore_files=[".*\.py$"]
    let g:ycm_seed_identifiers_with_syntax = 1 " 语法关键字补全
    let g:ycm_complete_in_comments = 1
    let g:ycm_confirm_extra_conf = 0
    let g:ycm_key_list_select_completion = ['<c-n>', '<Down>'] " 映射按键, 没有这个会拦截掉tab, 导致其他插件的tab不能用.
    let g:ycm_key_list_previous_completion = ['<c-p>', '<Up>']
    let g:ycm_complete_in_comments = 1 " 在注释输入中也能补全
    let g:ycm_complete_in_strings = 1 " 在字符串输入中也能补全
    let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释和字符串中的文字也会被收入补全
    let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'
    let g:ycm_show_diagnostics_ui = 0 " 禁用语法检查
    inoremap <expr> <CR> pumvisible() ? "\<C-y>" : "\<CR>" | " 回车即选中当前项
    nnoremap <c-j> :YcmCompleter GoToDefinitionElseDeclaration<CR>| " 跳转到定义处
    "let g:ycm_min_num_of_chars_for_completion=2 " 从第2个键入字符就开始罗列匹配项
    highlight PMenu ctermfg=0 ctermbg=242 guifg=black guibg=darkgrey
    highlight PMenuSel ctermfg=242 ctermbg=8 guifg=darkgrey guibg=black

    " Add all your plugins here (note older versions of Vundle used Bundle instead of Plugin)
    " All of your Plugins must be added before the following line
    call vundle#end() " required
    filetype plugin indent on " required

    【注意】:放到开头

  • 安装插件

  1. git
    1. git —version
    2. sudp apt-get install git
  2. cmake
    1. sudo apt-get install cmake
  3. Vundle
    1. git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
    2. cd ~
    3. sudo gedit /usr/share/vim/vimrc
    4. 编辑配置文件,在文件的开头添加如下代码:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      set nocompatible        "  必需
      filetype off            " 必需
      "  将运行时的路径设置为包括Vundle并初始化
      set rtp+=~/.vim/bundle/Vundle.vim
      call vundle#begin()
      " 使Vuldle管理自己
      Plugin ‘VundleVim/Vundle.vim’
      "最后要写入YouCompleteMe管理语句的位置
      " 你所有的插件必需在这一行之前添加
      call vundle#end()            “ required
      filetype plugin indent on    “ required
    5. 启动Vim,输入 :PluginInstall
    6. 如果显示 Done 则说明安装成功
  4. YouCompleteMe
    1. cd ~/.vim/bundle
    2. git clone https://github.com/Valloric/YouCompleteMe.git
    3. cd ~/.vim/bundle/YouCompleteMe
    4. ./install.py --clang-completer
    5. .vimrc中加入:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      " YouCompleteMe
      set runtimepath+=~/.vim/bundle/YouCompleteMe
      let g:ycm_collect_identifiers_from_tags_files = 1 " 开启 YCM 基于标签引擎
      let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释与字符串中的内容也用于补全
      let g:syntastic_ignore_files=[".*\.py$"]
      let g:ycm_seed_identifiers_with_syntax = 1 " 语法关键字补全
      let g:ycm_complete_in_comments = 1
      let g:ycm_confirm_extra_conf = 0
      let g:ycm_key_list_select_completion = ['<c-n>', '<Down>'] " 映射按键, 没有这个会拦截掉tab, 导致其他插件的tab不能用.
      let g:ycm_key_list_previous_completion = ['<c-p>', '<Up>']
      let g:ycm_complete_in_comments = 1 " 在注释输入中也能补全
      let g:ycm_complete_in_strings = 1 " 在字符串输入中也能补全
      let g:ycm_collect_identifiers_from_comments_and_strings = 1 " 注释和字符串中的文字也会被收入补全
      let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'
      let g:ycm_show_diagnostics_ui = 0 " 禁用语法检查
      inoremap <expr> <CR> pumvisible() ? "\<C-y>" : "\<CR>" | " 回车即选中当前项
      nnoremap <c-j> :YcmCompleter GoToDefinitionElseDeclaration<CR>| " 跳转到定义处
      "let g:ycm_min_num_of_chars_for_completion=2 " 从第2个键入字符就开始罗列匹配项
  • YouCompleteMe使用

  1. 快捷键
    1. ctrl + n:向下选择
    2. ctrl + p:向上选择

  • 小官大做
  • 闲官忙做
  • 男官女做
  • 俗官雅做
  • 热官冷做

  • 连接Github

  1. terminal 输入 ssh-keygen
  2. 进入 ~/.ssh
  3. id_rsa 是 私钥
  4. id_rsa.pub 是 公钥
  5. 将公钥复制到 Github
    1. 点击头像,选择 Setting
    2. 选择 SSH and GPG keys
    3. 选择 New SSH key
    4. TItle可以自己写

      Key 中复制你的公钥
    5. 选择 Add SSH key
    6. 下面就可以访问了
  • git 使用

  1. 将git下载到本地 git clone <你的仓库地址>
  2. cd 进入 对应的文件夹
  3. git pull 更新你的仓库
  4. git status 以查看在你上次提交之后是否有修改
    1. 该命令加了 -s 参数,以获得简短的结果输出。如果没加该参数会详细输出内容。
  5. git add 将该文件添加到缓存
    1. git add * 将所有更改的文件,添加进暂存
    2. git add <文件名> 将对应的文件添加进暂存
  6. git commit -m "备注" 使用 git add 命令将想要快照的内容写入缓存区, 而执行 git commit 将缓存区内容添加到仓库中。
  7. git push 将本地库中的最新信息发送给远程库。

【Notes】:

  1. 若已经有文件:
    1. 创建完git连接之后,先 git pull 一下。
  2. commitpush 的区别
    1. git作为支持分布式版本管理的工具,它管理的库(repository)分为本地库、远程库。
    2. git commit操作的是本地库,git push操作的是远程库。
    3. git commit是将本地修改过的文件提交到本地库中。
    4. git push是将本地库中的最新信息发送给远程库。
    5. 那有人就会问,为什么要分本地commit和服务器的push呢?

      因为如果本地不commit的话,修改的纪录可能会丢失。而有些修改当前是不需要同步至服务器的,所以什么时候同步过去由用户自己选择。什么时候需要同步再push到服务器

视频教程点击这里

更多请点击这里

  1. 在桌面 gedit spyder.desktop

  2. 输入下面文本

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    [Desktop Entry]
    Encoding=UTF-8
    Name=Spyder
    Comment=The Smarter Way to manage dadabase
    Exec=/home/dgimo/anaconda3/bin/python "/home/dgimo/anaconda3/bin/spyder"
    Icon=/home/dgimo/anaconda3/share/icons/spyder3.png
    Categories=Development;Science;IDE;Qt;
    Type=Application
    Terminal=0
    StartupNotify=true
    MimeType=text/x-python;
    X-AppStream-Ignore=True
  3. 将该文件移动到 /usr/share/applications

  4. 解决不能使用中文输入法的问题

    1. cd /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts 找到文件所在的文件夹
    2. ls 查看当前文件夹中的文件,其实这条可以省略
    3. sudo cp libfcitxplatforminputcontextplugin.so ~/anaconda3/plugins/platforminputcontexts 将其复制到anaconda插件相应的文件下
    4. 重启Spyder即可