跳转至

学习信息学奥赛,使用苹果电脑,如何获得优于Dev-C++的编程体验

前置知识

学习信息学奥赛 使用的是苹果电脑(具体什么型号,没有任何影响)

目标

专业的使用苹果电脑,学习编程,不搞花里胡哨的。

What

在苹果电脑上,使用的macOS操作系统,没有Dev-C++(只有Windows版本)。在macOS上,也有很多编辑器可以使用,我认为,学习一下Linux基本操作,直接使用vim,是长期成本最低的方案。

g++无法编译

这个在terminal里,输入

xcode-select --install

自动下载,安装完成,即可。此环节,过。

安装MacVim

https://github.com/macvim-dev/macvim/releases/tag/release-176

安装MacVim可以解决,vim里的剪切板和外面的剪切板互通的问题。否则,你是无法方便的复制代码,提交到OJ上。

vim的常用命令

vim怎么开启,就是在终端李,输入 vim,回车

然后你就会发现,这是个啥,按键盘也没反应

几个常用的点,我罗列一下:

i进入编辑模式

:wq保存退出

:q直接退出

:q!强制退出

shift+g到最后一行

shift+a到本行的最后一位

dd删除本行

配置.vimrc

// .vimrc配置文件
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1

syntax on
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent

set clipboard=unnamed

"vmap "+y :w !pbcopy<CR><CR>  
"nmap "+p :r !pbpaste<CR><CR>  

"colorscheme morning

set nu

一个空白的文件,然后你输入,如下内容

img

syntax on是开关,几个缩进命令,set nu是显示行号,colorscheme morning是选择你的配色方案,se mouse+=a,是复制的时候不选择行号。注意这里,如果启用se mouse=r,vim可以使用鼠标进行复制,但是这样会把行号复制进来。如果启用se mouse+=a,是不会选择上行号了,但是复制不可用了。这点尚未解决。

https://www.v2ex.com/t/96300,这个帖子,留着试试,看看能不能解决复制的问题

配置.bash_profile

// .bash_profile自定义全局命令

alias ll='ls -l -rt'
alias vim='/Applications/MacVim.app/Contents/MacOS/Vim'
alias py='python3.8'
alias g++='g++ -std=c++14'

调试检查

写一遍Hello world,进行测试。

VIM遇到中文乱码

编辑了一下 .vimrc
添加如下内容 set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
wq退出保存
重启vi/vim/gvim/macVim会发现打开GBK文件正常显示.

总结

安装MacVim是非常重要的一环,因为使用原生的Vim,无法实现复制Vim里的内容,到剪贴板里,粘贴到浏览器,提交OJ,进行评测。网上也有博客介绍其他方法的,但我都没有测试成功,只有这种是成功的。 对于Linux命令行操作,对于vim的常用命令,这些百度简单学习一下,反复操练,就能掌握。 Vim 用熟练之后,学习体验,是优于 Dev-C++ 的。无论使用 Vim,还是使用 gVim,还是 Dev,这些都是身外之物。本质上,还要多加训练自己的代码能力,科学并且长期地训练。

TODO

小熊猫