8 #ifndef EASYVIM_CORE_HPP
9 #define EASYVIM_CORE_HPP
104 EVFileStatus deleteChar(
int row,
int col,
bool isFront);
106 EVFileStatus deleteLine(
int rowB,
int colB = 0,
int rowE = 0,
int colE = -1);
107 EVFileStatus copyLine (
int rowB,
int colB = 0,
int rowE = 0,
int colE = -1);
128 std::vector<std::pair<size_t, size_t>> searchRegex(
const std::string& regexPattern);
135 bool replaceRegex(
const std::pair<size_t,size_t> pos,
const std::string& replacePattern);
142 std::vector<std::pair<size_t, size_t>> search(
const std::string& content);
149 std::vector<std::pair<size_t, size_t>> search_case_ins(
const std::string& content);
156 std::vector<std::pair<size_t, size_t>> search_first(
const std::string& content);
163 std::vector<std::pair<size_t, size_t>> search_first_case_ins(
const std::string& content);
172 bool replace(
const std::pair<size_t,size_t> pos,
int len,
const std::string& replaceContent);
EVFileStatus searchInFile(const std::string content, bool caseSensitive)
在文件中查找匹配的内容,大小写不敏感
Definition: search_replace.cpp:124
EVFileStatus quitFile()
退出文件
Definition: loadsave.cpp:286
EVFileStatus
Definition: core.hpp:26
@ EVFILE_NOT_EXIST
文件不存在 -> 创建文件
Definition: core.hpp:28
@ EVFILE_READ_FAIL
文件读取失败
Definition: core.hpp:30
@ EVFILE_DIR_DOSE_NOT_EXIST
路径不存在 -> 创建路径
Definition: core.hpp:35
@ EVFILE_WRITE_FAIL
文件写入失败
Definition: core.hpp:31
@ EVFILE_OPEN_FAIL
文件打开失败
Definition: core.hpp:29
@ EVFILE_REPLACE_FAIL
替换失败
Definition: core.hpp:39
@ EVFILE_COPY_NOTEXIST
复制失败
Definition: core.hpp:41
@ EVFILE_PATTERN_MATCH
找不到匹配的内容
Definition: core.hpp:37
@ EVFILE_OUT_OF_BOUND
指针超出文本位置
Definition: core.hpp:33
@ EVFILE_NO_MATCH_PATTERN
找不到匹配的内容
Definition: core.hpp:36
@ EVFILE_OK
文件正常
Definition: core.hpp:27
@ EVFILE_REPLACE_SUCCESS
成功替换
Definition: core.hpp:38
@ EVFILE_CLOSE_FAIL
文件关闭失败
Definition: core.hpp:32
EVFileStatus saveFileAs(const std::string &newFilePath)
文件另存为,还没有实现创建文件夹得功能,如果目录不存在直接返回错误
Definition: loadsave.cpp:263
bool hasChange
文件是否有改动
Definition: core.hpp:114
std::vector< std::string > copiedFile
复制的文件内容
Definition: core.hpp:112
EVFileStatus searchReplace(const std::string searchContent, const std::string replaceContent, bool caseSensitive)
在文件中查找匹配的内容并替换,大小写敏感
Definition: search_replace.cpp:197
std::vector< std::pair< size_t, size_t > > searchPosition
查找结果在文件中的位置
Definition: core.hpp:118
EVFileStatus loadFile()
读取文件
Definition: loadsave.cpp:39
bool hasCopy
复制内容是否有效
Definition: core.hpp:113
EVFileStatus searchInFileRegex(const std::string regexPattern)
在文件中查找匹配正则表达式的内容
Definition: search_replace.cpp:47
size_t offset
文件偏移量(由于文件可能很大,不能一次性把所有文件内容都load进来)
Definition: core.hpp:117
EVFileStatus saveFile()
写入文件
Definition: loadsave.cpp:71
size_t start
文件起始行号(由于文件可能很大,不能一次性把所有文件内容都load进来)
Definition: core.hpp:116
int jumpTo
跳转行号
Definition: core.hpp:115
std::string fileName
文件名
Definition: core.hpp:110
EVFileStatus searchReplaceRegex(const std::string regexPattern, const std::string replacePattern)
在文件中查找匹配正则表达式的内容并替换
Definition: search_replace.cpp:59
std::vector< std::string > fileContent
文件内容
Definition: core.hpp:111