CSP考场Emacs使用指南[原创]

CSP考场Emacs使用指南[原创]

前言: 据说,CSP考试,之后不再支持windows了呢。

CSP考场Emacs使用指南[原创]


windows用户真得劲!

那用什么系统?

Ubuntu上场了 Ubuntu编译指南

进入Ubuntu系统,在你想存的文件夹中新建一个空白文档,名称是可以随需要写,但是 名称一定要记得加.cpp后缀!

Just like "A+B_Problem.cpp"

即刻,右键点击文件,打开方式——选择 "GNU Emacs 25(GUI)" 。点进去后,直接开始写代码就好了。

比如:

#include<bits/stdc++.h> using namespace std; int a,b; int main(){ scanf("%d %d",&a,&b); printf("%lld",(long long)(a + b)); puts(""); return 0; }

一定记得,每次打完代码,都要按Ctrl+x+s保存文件

为什么?

Ans:我们之后会讲到,当你需要运行文件时,要在终端先编译源代码,然后运行类似于windows中的.exe文件的a.out。然而,当你不保存源文件,之后的编译操作都只会编译未修改前的代码,故不管怎么改,输出都不会改变。

· 首先,将代码保存(请先确保能编译),并确保是否需要开文件(freopen) · 然后,打开终端,输入文件所在路径,如当文件在桌面中的新建文件夹里面,则输入 "cd 桌面/新建文件夹" · 这时,输入"g++ 代码名称.cpp",如"g++ check.cpp",此乃编译文件。若终端提示错误时,请回到程序修改Bug,并将步骤从“首先”二字重新开始。 · 然后,你会发现文件夹中多了一个"a.out",这时,在终端输入"./a.out",并输入样例,按回车,就可以得到输出了。当你的代码有文件时,请确保有输入文件,输出也会在输出文件中。

CSP考场Emacs使用指南[原创]

是不是很激动?

GNU Emacs 25(GUI)编译器配置优化

在windows中用Dec-C++用顺手了,用这个四不像的编译器真TM想骂人。

CSP考场Emacs使用指南[原创]

那么我们不妨来修改修改配置,让编译器更加清爽。

怎么修改配置呢

首先,点击文件,进入主文件夹,按Ctrl+h显示所有文件,然后新建空白文档,文档名".emacs",在里面输入下面的东西,复制粘贴即可。

超级豪华顶级配置 (当你在家食用Ubuntu的时候,肯定希望配置越NB越好。)

(global-set-key [f9] 'compile-file) (global-set-key [f10] 'gud-gdb) (global-set-key (kbd "C-s") 'save-buffer) (global-set-key (kbd "C-z") 'undo) (global-set-key (kbd "RET") 'newline-and-indent) (global-linum-mode t) (show-paren-mode t) (define-key key-translation-map (kbd "C-d") (kbd "M-p M-y")) (global-set-key (kbd "M-p M-y") 'kill-whole-line) (define-key key-translation-map (kbd "C-a") (kbd "C-x h")) (setq c-default-style "awk") ;;;上面是考场必备 (ido-mode t) (setq default-frame-alist '((vertical-scroll-bars) (top . 25) (left . 45) (width . 120) (height . 40) (background-color . "grey15") (foreground-color . "grey") (cursor-color . "gold1") (mouse-color . "gold1") (tool-bar-lines . 0) (menu-bar-lines . 1) (scroll-bar-lines . 0) (right-fringe) (left-fringe))) (global-hl-line-mode 1) (set-face-background 'highlight "gray5") (set-face-foreground 'region "cyan") (set-face-background 'region "blue") (set-face-foreground 'secondary-selection "skyblue") (set-face-background 'secondary-selection "darkblue") ;;;;;设置org模式 (setq org-startup-indented t) ;(setq org-log-done 'time) ;(s.etq org-log-done 'note) ; ;;;无关紧要 (set-cursor-color "wheat") (set-mouse-color "wheat") (global-font-lock-mode t);;高亮 ;;;;;设置编译信息 (defun compile-file () (interactive) (compile (format "g++ -o %s %s -g -lm -Wall" (file-name-sans-extension (buffer-name))(buffer-name)))) ;;(global-set-key (kbd "<f9>") 'compile-file) ;;;;;设置F9一键调试 ;;;;;改变emacs标题栏的标题 (setq frame-title-format "CJY-Dragon") ;;;;;允许emacs和外部其他程序的粘贴 (setq x-select-enable-clipboard t) ;; 显示列号 (setq column-number-mode t) ;;设置tab的宽度 (setq default-tab-width 4) (setq c-basic-offset 4) ;;;;;启用时间显示设置(可能时间需要调整) (display-time-mode 1) ;;;;;时间使用24小时制 (setq display-time-24hr-format t) ;;;;;时间显示包括日期和具体时间 (setq display-time-day-and-date t) ;;;;;时间的变化频率 (setq display-time-interval 10) ;;;;;是用滚轴鼠标 (mouse-wheel-mode t) ;;;;;备份设置 ;;;;;emacs还有一个自动保存功能,默认在~/.emacs.d/auto-save-list里,这个非常有用,我这里没有改动,具体可以参见Sams teach yourself emacs in 24hours(我简称为sams24) ;;;;;备份设置方法,直接拷贝 (setq backup-by-copying t) ;; 自动存盘 (setq auto-save-mode t) ;;去警告铃声 (setq visible-bell nil) (setq ring-bell-function 'ignore) ;;;;;指针取消闪动,不然眼睛会花了 (blink-cursor-mode -1) ;;;;;滚动页面时比较舒服,不要整页的滚动 (setq scroll-step 1 scroll-margin 3 scroll-conservatively 10000) ;;;;;设定删除保存记录为200,可以方便以后无限恢复 (setq kill-ring-max 200) ;;;;;修改透明度 (set-frame-parameter (selected-frame) 'alpha (list 85 50)) (add-to-list 'default-frame-alist (cons 'alpha (list 85 50))) (setq-default cursor-type 'bar) (show-paren-mode 1);;括号匹配 (fset 'yes-or-no-p 'y-or-n-p);;酱油的 (setq make-backup-files nil) (global-auto-revert-mode t);自动reload文件 (global-set-key (kbd "<f8>") 'gdb-many-windows) (custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(blink-cursor-mode nil) '(column-number-mode t) '(cua-mode t nil (cua-base)) '(display-time-mode t) '(inhibit-startup-screen t) '(show-paren-mode t)) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(default ((t (:family "Ubuntu Mono" :foundry "unknown" :slant normal :weight normal :height 143 :width normal))))) (auto-insert-mode) ;;; Adds hook to find-files-hook (setq auto-insert-directory "~/.emacs.d/mytemplates/") ;;; Or use custom, *NOTE* Trailing slash important (setq auto-insert-query nil) ;;; If you don't want to be prompted before insertion (define-auto-insert "\." "moban.cpp")

但是这个配置在考场上又不能复制粘贴,这么一大段,也被不下来吧

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzxfsj.html