首页 > 其他分享 >初学 OI 可能需要的配置教程

初学 OI 可能需要的配置教程

时间:2024-07-30 16:21:11浏览次数:10  
标签:插件 name OI ++ cmd 教程 初学 file Sublime

Sublime Text 完整配置

编译文件

  1. 点击新建编译系统(Tools -> Build system -> New build system)

  2. 改为以下代码:
    Ubuntu :

    {
       "encoding": "utf-8",
       "working_dir": "$file_path",
       "shell_cmd": "g++ \"$file_name\" -std=c++14 -o \"$file_base_name\"",
       "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
       "selector": "source.c++",
       "variants": 
       [
           {    
               "name": "Run",
               "shell_cmd": "g++ '$file' -std=c++14 -o '$file_base_name' && gnome-terminal -x bash -c \"'${file_path}/${file_base_name}';read -p '\nPress any key to continue...'\""
           }
       ]
    }
    

    Windows :

    {
       "shell_cmd": "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" -Wall -std=c++11 -Wextra -g",
       "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
       "working_dir": "${file_path}",
       "selector": "source.c, source.c++",
    
       "variants":
       [
           {
               "name": "Run",
               "shell_cmd" : "start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""
           },
           {
               "name": "RunInCommand",
               "shell_cmd" : "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" -Wall -std=c++11 -Wextra -g && start cmd /c \"\"${file_path}/${file_base_name}\" & echo 程序运行结束 & pause\""
           },
           {
               "name": "Debug",
               "shell_cmd" : "start cmd /c \"gdb \"${file_path}/${file_base_name}\"\""
           }
       ]
    }
    

    保存为 "g++.sublime-build"

  3. 最后在编译系统中选择"g++"(Tools -> Build system -> g++)

注: windows 安装 g++

从以下链接安装 MinGW(内包含g++);

点击安装 MinGW-64 提取码ctgX

解压缩,将文件内 mingw64 目录移动到 C盘。

然后复制地址:C:\mingw64\bin

将这个地址复制到环境变量中:

设置:搜索环境变量:“编 辑系统环境变量”:

选中 Path,然后点击编辑

点击新建,输入之前复制的地址:C:\mingw64\bin。点击 确定

最后一路确定回去。

然后 Ctrl+R,输入 cmd

输入 g++ -v

如果出现以下结果则配置成功。

使用Vim模式(请先了解再配置,绝大多数人不需要)

  1. 在上方的首选项里点击 " 设置(preferences->settings) "

  2. 在右侧代码栏里加入这份代码:

    "ignored_packages": [],
    
  3. 保存,在首选项中打开 " 快捷键设置(preferences ->key bingdings) "

  4. 改为以下代码:

    [
     { "keys": ["k", "j"], "command": "exit_insert_mode",
     "context":
     [
         { "key": "setting.command_mode", "operand": false },
         { "key": "setting.is_widget", "operand": false }
     ]
     },
    ]
    

    保存,完工

大功告成!

Sublime Text 使用代码块

(Tools --> Developer --> New Snippet )

默认出现以下代码:

<snippet>
	<content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content>
	<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
	<!-- <tabTrigger>hello</tabTrigger> -->
	<!-- Optional: Set a scope to limit where the snippet will trigger -->
	<!-- <scope>source.python</scope> -->
</snippet>

然后备注一下意思:

<snippet>
	<content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.//这一行替换成你需要写成模板的代码块
]]></content>
	<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
	<!-- <tabTrigger>hello</tabTrigger> --> //将两个 “<!-- -->” 删掉,这是注释符,然后将 hello 替换成你想给代码块取的名字。
	<!-- Optional: Set a scope to limit where the snippet will trigger -->
	<!-- <scope>source.python</scope> -->
</snippet>

其他的我也不知道什么意思。。

杂项:

侧边栏文件目录

Sublime 支持侧边栏预览文件目录,(View -> Side Bar --> Show Side Bar),然后右侧就会出现侧边栏,将目录文件划入即可。

一些实用的油猴插件

首先,你当然需要安装油猴,可以去 官网 安装,如果是 Chrome 浏览器,可以点击右侧的那个灰色打包按钮,下载一个 crx 文件。

然后在扩展程序里打开开发者模式,将 crx 文件导入即可。油猴插件可以从 greasyfork 内安装需要的脚本(注意开启搜索所有语言的结果,更加全)。

这里将我常用的文件打包,油猴 crx 文件也在内:

  • tampermonkey_stable.crx 这就是油猴插件本体

  • tampermonkey-backup.txt 这是一些插件的油猴备份文件,可以通过油猴面板的导入功能自动导入。里面包含以下插件

    • Atcoder Better: Atcoder 翻译美化脚本

    • CodeForces Better: CodeForces 翻译美化脚本

    • AtCoder predictor 预测分数变化脚本

      打包链接 提取码: iuMx

一些高级用法

这里不会讲的很详细,配不好基本上也不会用。。。

首先介绍一下, Sublime 的用户文件(插件,代码块等等),都在这个目录内。

通过 Sublime 窗口点击 (Preferences -> Browse Packages),自动打开文件目录。

自动获取 AtCoder/CodeForces/各OJ 题目样例

首先需要再浏览器上安装一个插件作为连接:competitive companion

这里是 打包链接

这里注意,Chrome 压缩包直接拖入即可,Edge 需要将后缀名更改为 crx 才能导入(直接改后缀)。

大概扩展程序选项,在 Custom ports 内输入 12345

然后就 OK 了。

然后我们需要在 Sublime Text 中安装两个插件。

Ctrl + shift + P

然后输入:Install Package Control,换行。

右下脚会有一个 = 在来回摆动,说明正在安装了,等待即可。

如果你没有安装成功:

首先需要将这个文件 Package Control 下载,解压缩,将目录名字改成 Package Control,然后移动到 Preferences -> Browse Packages 所在的目录内,重启 Sublime Text。

然后就安装好了 Package Control。

Ctrl + Shift + P,输入 Package Control: Install Package

换行,等待。出现的窗口就可以进行安装插件了。

如果很慢并且有条件可以尝试魔法上网。

然后我们在这个窗口输入一个插件名:CppFastOlympicCoding。换行安装。

如果还是不能安装请手动安装:CppFastOlympicCoding,将目录放在 sublime 目录下即可。

然后如果是 windows 系统,需要在 (Preferences --> Package Setting --> FastOlympicCoding) 文件中

修改成以下代码:

{
	"close_sidebar": false, //注意如果你想要使用目录功能,一定加入这一行,防止推出目录。
	"tests_file_suffix": "__tests"
}

这样就行了,Ctrl + Alt + B 就可以编译运行了,可以支持保存样例、AC折叠收缩,(这个对于从 OJ 提取样例有用)。

预览图:

接下来,我们需要安装一个与浏览器中 Competitive Companion 样例文件作连接的 Sublime 本地插件:FastOlympicCodingHook打包下载链接

然后我们重启 Sublime,在文档中右键,第一行出现 Listen to Competitive companion,这个就是和网页浏览器连接的按钮。

打开一个 cpp 文件,然后右键,点击 Listen,然后浏览器打开要做的题的网页,点击右上角的这个插件,等待上方出现一条蓝条闪过,样例就保存到本地了。

然后如果觉得用鼠标右键+点击过于愚蠢,可以在 (preferences ->key bingdings) 文件中添加以下这一行:

{
	{ "keys": ["ctrl+shift+l"],"command": "fast_olympic_coding_hook"},
}

然后如果觉得用鼠标点击浏览器上的插件过于愚蠢,其实 Competitive 有快捷键,是 Ctrl+Shift+U (可以根据自己习惯更改,我改成了 Ctrl+B


最后恭喜你,获得了一个简洁、大方、免费,好用、自动化,人性的编辑器了!

祝你 rp++。

标签:插件,name,OI,++,cmd,教程,初学,file,Sublime
From: https://www.cnblogs.com/weirdoX/p/18332681

相关文章

  • [POI2008] POC-Trains 题解
    前言题目链接:洛谷。时间复杂度和输入同阶的做法。题意简述有\(n\)(\(n\leq10^3\))个长\(m\)的字符串,\(q\)(\(q\leq10^5\))次操作,交换两个字符串的两个字符。问每个字符串在所有时刻,最多有几个和它相等。题目分析套路做法看到字符串相等,想到使用哈希。但是要支持修改,怎么......
  • flume使用教程
    1.启动端口  ncnode10155555监听端口  nc-l55555 job下配置文件#example.conf:Asingle-nodeFlumeconfiguration #Namethecomponentsonthisagenta1.sources=r1a1.sinks=k1a1.channels=c1 #Describe/configurethesourcea1.sources.......
  • Android9.0 Activity启动流程分析(三)
    文章目录   1、Android屏幕层级       1.1、Window和PhoneWindow的概念       1.2、View和ViewRootImpl的概念   2、ClientLiftCycleManager   3、handleLaunchActivity       3.1、CreatActivity       3.2、setContentView   4......
  • 从CNN到Transformer:基于PyTorch的遥感影像、无人机影像的地物分类、目标检测、语义分
    原文链接:从CNN到Transformer:基于PyTorch的遥感影像、无人机影像的地物分类、目标检测、语义分割和点云分类教程https://mp.weixin.qq.com/s?__biz=MzUzNTczMDMxMg==&mid=2247610610&idx=5&sn=f973c3e430c89d6123ca8f4892086c55&chksm=fa827115cdf5f8036ef8111c6f06cf592a8c0587......
  • Android 11 关于app的权限重置
    Android11Google针对权限系统又加了更多的限制,比如1.权限的单次授权;2.某个app长时间不使用,权限会被自动更新/重置!关于app的权限重置AndroidFramework权限篇四之AppOps机制Settings里面关于app权限重置的switch流程./packages/apps/Settings/src/com/android/settings/......
  • macOS Sequoia 15.1 beta (24B5009l) Boot ISO 原版可引导镜像下载
    macOSSequoia15.1beta(24B5009l)BootISO原版可引导镜像下载iPhone镜像、Safari浏览器重大更新、备受瞩目的游戏和AppleIntelligence等众多全新功能令Mac使用体验再升级请访问原文链接:https://sysin.org/blog/macOS-Sequoia-boot-iso/,查看最新版。原创作品,转载请保......
  • [OI] 珂朵莉树
    对于一个序列,它有较多重复元素,并且题目需要维护区间修改,维护区间信息,维护整块值域信息的,那么就可以考虑珂朵莉树解决.主要思想珂朵莉树将全部相同的颜色块压缩为一组,如对于下述序列:111234444珂朵莉树铺平后即可以变为这样:{1,3,1}{4,4,2}{5,5,3}{6,9,4}其中的三......
  • Android系统启动流程(4) —— 解析Launcher启动过程
    链接https://blog.csdn.net/lixiong0713/article/details/106762977相关文章Android系统启动流程(1) —— 解析init进程启动过程Android系统启动流程(2) —— 解析Zygote进程启动过程Android系统启动流程(3) —— 解析SystemServer进程启动过程Launcher启动过程  ......
  • Android开发 - setOnTouchListener 监听触控事件解析
    事件解析setOnTouchListener(newOnTouchListener(){});:事件分发解析MotionEvent.ACTION_DOWN:按下MotionEvent.ACTION_MOVE:滑动MotionEvent.ACTION_UP:抬起使用方法//部分区域调用需要对象:view.setOnTouchListener(newview.OnTouchListener(){})setOnTouchListe......
  • P9746 「KDOI-06-S」合并序列
    mx练习赛搬的,虽然数据不咋样,但是一步步的优化思路确实值得一记。P9746合并序列题目大意:给你\(n(1\len\le500)\)个数\(a_1,a_2,\ldotsa_n\)(\(a_i<512\))。每次可以选一个3元组\((i,j,k)\),满足\(i<j<k\),并且\(a_i\oplusa_j\oplusa_k=0\),则你可以将$a_i\dotsa_k$......