iovxw

近期的计划

懒啊………

又好久没写博客了

这次不是因为太忙

纯粹是懒

果然天一热就什么也不想干啊……

因为懒,所以也就有了一大堆代办事项

现在列出来备忘一下

  1. 学好js和css,然后修改一下博客的图片显示缩放等等
  2. 把上次写的那个梯子的坑填完,做一个网页管理系统和代理服务器群组的自动配置
  3. 填好2个Minecraft服务器的坑
  4. 攒钱租服务器
  5. 修改一下这个博客的生成器hugo,加强一下markdown解析什么的
  6. 攒钱给域名续费&&攒钱买游戏

一直想wine星际2,结果就是不成功,一直卡在检查更新中

看了一下应该是wine网络问题,如果始终不行的话还是去Steam买《Planetary Annihilation》吧,不过49刀太贵了(不知有没有土豪愿意送我 :D)

估计得慢慢等打折,上次打折后仅需5刀结果错过了,悲伤啊悲伤

感觉好懒……

[备用]Arch安装后的配置

个人备用笔记

个人备用笔记,以防下次玩脱了结果忘了怎么配置

当然要先安装图形界面了,这里我使用的是KDE

pacman -S xorg kde

设置KDM自动启动

systemctl enable kdm

开启KDM

systemctl start kdm

安装KDE中文语言包

pacman -S kde-l10n-zh_cn

安装文泉驿微米黑中文字体

pacman -S wqy-microhei wqy-microhei-lite

安装Yaourt

/etc/pacman.conf里添加

[archlinuxcn]
#The Chinese Arch Linux communities packages.
SigLevel = Optional TrustAll
Server = http://repo.archlinuxcn.org/$arch

然后pacman -Syu yaourt

安装字体渲染工具

yaourt -S freetype2-infinality lib32-freetype2-infinality fontconfig-infinality

设置字体渲染

infctl setstyle选择linux

安装网络管理器

yaourt -S networkmanager kdeplasma-applets-networkmanagement

安装KDE的GTK主题管理工具

yaourt -S kde-gtk-config

安装fcitx和中州韵输入法

yaourt -S fcitx fcitx-qt4 fcitx-rime

使fcitx成为默认输入法

nano ~/.xprofile

添加

export LANG=zh_CN.UTF8
export [email protected]=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx

安装Java JDK

yaourt -S jdk

安装WineQQ

yaourt -S wineqq

还有一大堆解码器和压缩格式支持就懒得写了

去翻Arch Wiki把

扔一张配置好的图,左边那个时钟的栏是可以自动隐藏的面板

图片

装上了Arch

生命不息,折腾不止

安装的原因是前几天捣鼓KDE5,虽然安装成功了

结果系统却是32位的,强迫症各种伤不起

于是乎还是果断重装了

ubuntu每日构建版下载2遍MD5依旧不正确,发现是迅雷离线下载的问题

于是用百度离线重下了

U盘刻录成功

结果安装程序缺失部件

验证了好几遍然后确定是ISO本身问题

然后已经到了夜里2点

遂不折腾了

早上起床想到可以试一下Arch,于是下载刻盘安装

安装基本顺利

除了刚开始忘了分EFI分区导致只能用BIOS启动

还有手滑习惯性的把/dev/sdb1输入成了/dev/sda1导致1T的数据盘被格以外

其他基本没啥问题(感谢我那良好的备份习惯啊……)

还有发现中州韵输入法Smartgithg挺不错的

图片 图片 图片 图片 图片 图片

用Golang写了一个梯子

梯子,当然是用来翻墙的

无聊的作品

其实就是一个通过tls的socks5代理

然后中间传输用了点Golang的gob而已

没啥好介绍的

直接扔github地址:https://github.com/Bluek404/Stepladder

在README里有详细使用教程

话说发现一个新东西:Coding

看起来不错

于是也上传了一份

https://coding.net/u/Bluek404/p/Stepladder/git

Neovim的Golang开发环境配置

强迫症强迫症强迫症强迫……

"No warp───┐
set nowrap"│
"──────────┘
"Line number─┐
set number  "│
"────────────┘
"Plugin Manager────────────────────┐
set rtp+=~/.nvim/bundle/Vundle.vim"│
"──────────────────────────────────┘
"Plugin load begin───────────────────┐
set nocompatible                    "│
filetype off                        "│
call vundle#begin()                 "│
                                    "│
"Airline───────────────────┐         │
Plugin 'bling/vim-airline'"│         │
set laststatus=2          "│         │
"──────────────────────────┘         │
"TagBar─────────────────────────────┐│
Plugin 'majutsushi/tagbar'         "││
nmap <F8> :TagbarToggle<CR>        "││
let g:tagbar_type_go = {
    \ 'ctagstype' : 'go',
    \ 'kinds'     : [
        \ 'p:package',             
        \ 'i:imports:1',           
        \ 'c:constants',           
        \ 'v:variables',           
        \ 't:types',               
        \ 'n:interfaces',         
        \ 'w:fields',             
        \ 'e:embedded',           
        \ 'm:methods',             
        \ 'r:constructor',         
        \ 'f:functions'           
    \ ],
    \ 'sro' : '.',
    \ 'kind2scope' : {
        \ 't' : 'ctype',           
        \ 'n' : 'ntype'           
    \ },
    \ 'scope2kind' : {
        \ 'ctype' : 't',           
        \ 'ntype' : 'n'           
    \ },
    \ 'ctagsbin'  : 'gotags',
    \ 'ctagsargs' : '-sort -silent'
\ }                                "││
"───────────────────────────────────┘│
"NerdTree────────────────────┐       │
Plugin 'scrooloose/nerdtree'"│       │
map <C-n> :NERDTree<CR>     "│       │
"────────────────────────────┘       │
"Golang Plugin────────────────┐      │
Plugin 'dgryski/vim-godef'   "│      │
Plugin 'cespare/vim-golang'  "│      │
Plugin 'Blackrush/vim-gocode'"│      │
"─────────────────────────────┘      │
"Autocompletion─────────────────┐    │
Plugin 'Valloric/YouCompleteMe'"│    │
"───────────────────────────────┘    │
"Plugin load end──────────┐          │
call vundle#end()        "│          │
filetype plugin indent on"│          │
"─────────────────────────┘          │
"────────────────────────────────────┘
"Highlight─┐
syntax on "│
"──────────┘
"Golang compiler plugin─────────┐
autocmd FileType go compiler go"│
"───────────────────────────────┘
"Automatic format────────────────────────────────────┐
autocmd FileType go autocmd BufWritePre <buffer> Fmt"│
"────────────────────────────────────────────────────┘

好吧其实原版VIM也通用

只是需要把上面的.nvim文件夹改成.vim就行

这里面需要用到Golang的官方插件,把go源码里的misc/vim全部扔到相应的文件夹即可(或者做个链接)

别问我为什么写成这样……我有强迫症

不过因为\接上一行的问题,所以有些地方没法注释(逼死强迫症啊)

然后这个是适用于初学者的,因为我才开始用vim不到一周。有什么问题欢迎指出哈

使用方法:

  1. 有一个Neovim(原版vim请自行把.nvim脑补成.vim,Neovim编译安装可以看http://bluek404.net/post/neovim

  2. 安装Vundle插件管理器 git clone https://github.com/gmarik/Vundle.vim.git ~/.nvim/bundle/Vundle.vim 然后打开~/.nvim/bundle/Vundle.vim/autoload/vundle.vim,把里面的文件夹路径.vim替换成.nvim(原版vim无需此步骤,这是让插件管理器安装插件到Neovim的文件夹)

  3. 把上面的配置文件保存到用户目录的.nvimrc文件

  4. 终端输入nvim然后输入:BundleInstall安装插件

  5. 完成~

ubuntu编译安装Neovim

21世纪的VIM?

介绍:

巴西程序员Thiago de Arruda Padilha(aka tarruda)向Vim开源编辑器项目递交了两大补丁,对Vim的架构进行了大幅调整,结果遭到了Vim作者Bram Moolenaar的拒绝,因为对于Vim这样一个成熟的项目进行如此大的改变风险太高。于是tarruda发起了Vim fork项目Neovim,集资1万美元打造出21世纪的编辑器,提供更好的脚本、插件支持,整合现代的图形界面。

该项目超额完成集资,已筹集到3.25万美元。Moolenaar本人对该项目持有异议,认为需要大量工作,会引入新的bug,而终端用户获益不多。

主页:http://neovim.org

官方wiki里的安装方法:https://github.com/neovim/neovim/wiki/Installing

我用brew安装竟然提示需要pkgutil,我用的是ubuntu哪来的pkgutil?

于是乎还是果断手动编译安装了

先安装所需要的工具:sudo apt-get install libtool autoconf automake cmake libncurses5-dev g++ pkg-config

clone到本地git clone https://github.com/neovim/neovim.git然后cd neovim+make就编译完成了

这里主要是说一下编译过程中出现的error解决方法

libtoolize: not foundsudo apt-get install libtool

aclocal: not foundsudo apt-get install autoconf

安装过程中会下载几个包,网站都是国外的,所以比较慢,而且没有进度显示。耐心等待就行(如果相关网站被墙请手动设置代理)

安装:

cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/
make install

再次换回GNOME

换啊换,换啊换

桌面环境又换到了GNOME

发行版也顺便换了好几遍

当然最后的结果还是GNOME+Deepin

中间还顺便尝试了仿Chrome OS的Budgie Desktop和仿Windows的Zorn OS

发现貌似没什么特点

这次的GNOME的配置是:

GTK主题:Zukitwo Dark Shell
shell主题:Moskva
开启的扩展:
Alternatetab
Applications menu
User themes
使用:GNOME Next PPA

扔图:

Ubuntu 安装 Budgie Desktop

类似ChromeOS的桌面环境

介绍什么的就懒得重复了

自己百度吧

直接扔命令

        sudo add-apt-repository ppa:sukso96100/budgie-desktop
        sudo apt-get update
        sudo apt-get install budgie-desktop

Atom配置Golang开发环境

没有自动补全硬伤

先扔一个效果图

Atom我就不介绍了,自己去看WIKI吧

ubuntu快速安装:

sudo add-apt-repository ppa:webupd8team/atom
sudo apt-get update && sudo apt-get install atom

MAC可以直接从官网下载

其他系统就自己编译吧

因为和Github结合的很好,然后速度较快,比较适合项目的小修改&提交,和不喜欢大型IDE的人

未配置的界面很像Sublime Text,上图是我修改主题和配色后的

言归正传。Atom自带Golang插件,但是调试和格式化没有(自动补全就别想了)

然后我在官方Packages里找到了Go的插件,叫做Go Plus

Github地址:https://github.com/joefitzgerald/go-plus

作者的演示:

https://camo.githubusercontent.com/dfd447388f9d6506dcdd19e6c5c431bf4211e673/687474703a2f2f636c2e6c792f696d6167652f3339327a324c3066304534312f676f2d706c75732d6578616d706c652e676966

安装的方法也很简单,File -> Preferences... -> Packages

然后在搜索框内输入go plus回车等一会就会出现了

点击Install安装

有可能会出错,重试一遍就行了

然后点击Settings进行设置

勾选自己需要的功能

然后填入Go的安装目录和工作目录就行了

如果要使用LintVet的话

还需要

go get github.com/golang/lint/golint

go get code.google.com/p/go.tools/cmd/vet

主题和配色也都可以在Preferences里更换&下载

开始玩吧!

好久没更新了啊

顺便给博客添加搜索功能

谁说静态博客就不能用搜索的?

好吧其实就是用了下搜索引擎的site搜索功能

可以看见右边测栏里已经多出来了一个搜索框

不过貌似百度没有收录这个博客= =

所以没法用什么的很正常

在页面内添加

<form id="search" class="search" role="search">
        <input class="form-control" placeholder="搜索" name="q" type="text">
</form>

然后在js里添加

(function(){
	$(document).on('submit', '#search.search', function(){
		var q = $(this).find('[name=q]').val();
		if($.trim(q) !== ''){
			var host = window.location.hostname;
			var url = 'http://www.baidu.com/s?wd=' + 'site:' + host + " " + $.trim(q);
			window.open(url, "_blank");
		}
		return false;
	});
})();

http://www.baidu.com/s?wd=可以替换成任意支持site搜索的搜索引擎地址


PS: 这是 jQuery 版本,写成原生的也不难这里就不废话了