aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ops.c
diff options
context:
space:
mode:
authorZyX <kp-pav@yandex.ru>2015-07-19 21:23:15 +0300
committerZyX <kp-pav@yandex.ru>2015-10-08 22:00:13 +0300
commit43fe98c9fb350b428d05021995c8892e080054b2 (patch)
treebeb6614b0c334de02f40ce5555eac57b691a2d93 /src/nvim/ops.c
parent4bc053facda4aee6cec2c6cbc9fbbe978e66503d (diff)
downloadrneovim-43fe98c9fb350b428d05021995c8892e080054b2.tar.gz
rneovim-43fe98c9fb350b428d05021995c8892e080054b2.tar.bz2
rneovim-43fe98c9fb350b428d05021995c8892e080054b2.zip
shada: Add support for merging everything like described in the doc
Diffstat (limited to 'src/nvim/ops.c')
-rw-r--r--src/nvim/ops.c45
1 files changed, 2 insertions, 43 deletions
diff --git a/src/nvim/ops.c b/src/nvim/ops.c
index 52064fae06..0d7c319fba 100644
--- a/src/nvim/ops.c
+++ b/src/nvim/ops.c
@@ -54,22 +54,6 @@
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h"
-/*
- * Registers:
- * 0 = register for latest (unnamed) yank
- * 1..9 = registers '1' to '9', for deletes
- * 10..35 = registers 'a' to 'z'
- * 36 = delete register '-'
- * 37 = selection register '*'
- * 38 = clipboard register '+'
- */
-#define DELETION_REGISTER 36
-#define NUM_SAVED_REGISTERS 37
-// The following registers should not be saved in ShaDa file:
-#define STAR_REGISTER 37
-#define PLUS_REGISTER 38
-#define NUM_REGISTERS 39
-
static yankreg_T y_regs[NUM_REGISTERS];
static yankreg_T *y_previous = NULL; /* ptr to last written yankreg */
@@ -749,31 +733,6 @@ typedef enum {
YREG_PUT,
} yreg_mode_t;
-/// Convert register name into register index
-///
-/// @param[in] regname Register name.
-///
-/// @return Index in y_regs array or -1 if register name was not recognized.
-static inline int reg_index(const int regname)
- FUNC_ATTR_CONST
-{
- if (ascii_isdigit(regname)) {
- return regname - '0';
- } else if (ASCII_ISLOWER(regname)) {
- return CharOrdLow(regname) + 10;
- } else if (ASCII_ISUPPER(regname)) {
- return CharOrdUp(regname) + 10;
- } else if (regname == '-') {
- return DELETION_REGISTER;
- } else if (regname == '*') {
- return STAR_REGISTER;
- } else if (regname == '+') {
- return PLUS_REGISTER;
- } else {
- return -1;
- }
-}
-
/// Return yankreg_T to use, according to the value of `regname`.
/// Cannot handle the '_' (black hole) register.
/// Must only be called with a valid register name!
@@ -806,7 +765,7 @@ yankreg_T *get_yank_register(int regname, int mode)
return y_previous;
}
- int i = reg_index(regname);
+ int i = op_reg_index(regname);
// when not 0-9, a-z, A-Z or '-'/'+'/'*': use register 0
if (i == -1) {
i = 0;
@@ -5417,7 +5376,7 @@ size_t op_register_amount(void)
/// Set register to a given value
void register_set(const char name, const yankreg_T reg)
{
- int i = reg_index(name);
+ int i = op_reg_index(name);
if (i == -1) {
return;
}