aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ex_cmds_defs.h2
-rw-r--r--src/fileio.c1
-rw-r--r--src/main.h4
-rw-r--r--src/mark.c1
-rw-r--r--src/message.c1
-rw-r--r--src/normal.h57
-rw-r--r--src/structs.h60
7 files changed, 64 insertions, 62 deletions
diff --git a/src/ex_cmds_defs.h b/src/ex_cmds_defs.h
index 7c1ac1bc1b..8b6c7c866e 100644
--- a/src/ex_cmds_defs.h
+++ b/src/ex_cmds_defs.h
@@ -6,6 +6,8 @@
* Do ":help credits" in Vim to see a list of people who contributed.
*/
+#include "normal.h"
+
/*
* This file defines the Ex commands.
* When DO_DECLARE_EXCMD is defined, the table with ex command names and
diff --git a/src/fileio.c b/src/fileio.c
index 0bfa3ebfb2..5062924d2d 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -34,6 +34,7 @@
#include "crypt.h"
#include "garray.h"
#include "move.h"
+#include "normal.h"
#include "option.h"
#include "os_unix.h"
#include "quickfix.h"
diff --git a/src/main.h b/src/main.h
index 481292e79d..c37965098d 100644
--- a/src/main.h
+++ b/src/main.h
@@ -1,6 +1,8 @@
#ifndef NEOVIM_MAIN_H
#define NEOVIM_MAIN_H
-/* main.c */
+
+#include "normal.h"
+
void main_loop(int cmdwin, int noexmode);
void getout_preserve_modified(int exitval);
void getout(int exitval);
diff --git a/src/mark.c b/src/mark.c
index d0b5366dd3..a43c3a352f 100644
--- a/src/mark.c
+++ b/src/mark.c
@@ -25,6 +25,7 @@
#include "message.h"
#include "misc1.h"
#include "misc2.h"
+#include "normal.h"
#include "option.h"
#include "quickfix.h"
#include "search.h"
diff --git a/src/message.c b/src/message.c
index 6948cefe12..c04fb246cc 100644
--- a/src/message.c
+++ b/src/message.c
@@ -27,6 +27,7 @@
#include "garray.h"
#include "ops.h"
#include "option.h"
+#include "normal.h"
#include "screen.h"
#include "term.h"
#include "ui.h"
diff --git a/src/normal.h b/src/normal.h
index 8f4dc71839..2d4b55138b 100644
--- a/src/normal.h
+++ b/src/normal.h
@@ -1,6 +1,61 @@
#ifndef NEOVIM_NORMAL_H
#define NEOVIM_NORMAL_H
-/* normal.c */
+
+#include "pos.h"
+
+/*
+ * Arguments for operators.
+ */
+typedef struct oparg_S {
+ int op_type; /* current pending operator type */
+ int regname; /* register to use for the operator */
+ int motion_type; /* type of the current cursor motion */
+ int motion_force; /* force motion type: 'v', 'V' or CTRL-V */
+ int use_reg_one; /* TRUE if delete uses reg 1 even when not
+ linewise */
+ int inclusive; /* TRUE if char motion is inclusive (only
+ valid when motion_type is MCHAR */
+ int end_adjusted; /* backuped b_op_end one char (only used by
+ do_format()) */
+ pos_T start; /* start of the operator */
+ pos_T end; /* end of the operator */
+ pos_T cursor_start; /* cursor position before motion for "gw" */
+
+ long line_count; /* number of lines from op_start to op_end
+ (inclusive) */
+ int empty; /* op_start and op_end the same (only used by
+ do_change()) */
+ int is_VIsual; /* operator on Visual area */
+ int block_mode; /* current operator is Visual block mode */
+ colnr_T start_vcol; /* start col for block mode operator */
+ colnr_T end_vcol; /* end col for block mode operator */
+ long prev_opcount; /* ca.opcount saved for K_CURSORHOLD */
+ long prev_count0; /* ca.count0 saved for K_CURSORHOLD */
+} oparg_T;
+
+/*
+ * Arguments for Normal mode commands.
+ */
+typedef struct cmdarg_S {
+ oparg_T *oap; /* Operator arguments */
+ int prechar; /* prefix character (optional, always 'g') */
+ int cmdchar; /* command character */
+ int nchar; /* next command character (optional) */
+ int ncharC1; /* first composing character (optional) */
+ int ncharC2; /* second composing character (optional) */
+ int extra_char; /* yet another character (optional) */
+ long opcount; /* count before an operator */
+ long count0; /* count before command, default 0 */
+ long count1; /* count before command, default 1 */
+ int arg; /* extra argument from nv_cmds[] */
+ int retval; /* return: CA_* values */
+ char_u *searchbuf; /* return: pointer to search pattern or NULL */
+} cmdarg_T;
+
+/* values for retval: */
+#define CA_COMMAND_BUSY 1 /* skip restarting edit() once */
+#define CA_NO_ADJ_OP_END 2 /* don't adjust operator end */
+
void init_normal_cmds(void);
void normal_cmd(oparg_T *oap, int toplevel);
void do_pending_operator(cmdarg_T *cap, int old_col, int gui_yank);
diff --git a/src/structs.h b/src/structs.h
index e52eb1c4aa..3168e7d799 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -1722,68 +1722,8 @@ struct window_S {
* In a non-location list window, w_llist_ref is NULL.
*/
qf_info_T *w_llist_ref;
-
-
-
-
-
-
-
};
-/*
- * Arguments for operators.
- */
-typedef struct oparg_S {
- int op_type; /* current pending operator type */
- int regname; /* register to use for the operator */
- int motion_type; /* type of the current cursor motion */
- int motion_force; /* force motion type: 'v', 'V' or CTRL-V */
- int use_reg_one; /* TRUE if delete uses reg 1 even when not
- linewise */
- int inclusive; /* TRUE if char motion is inclusive (only
- valid when motion_type is MCHAR */
- int end_adjusted; /* backuped b_op_end one char (only used by
- do_format()) */
- pos_T start; /* start of the operator */
- pos_T end; /* end of the operator */
- pos_T cursor_start; /* cursor position before motion for "gw" */
-
- long line_count; /* number of lines from op_start to op_end
- (inclusive) */
- int empty; /* op_start and op_end the same (only used by
- do_change()) */
- int is_VIsual; /* operator on Visual area */
- int block_mode; /* current operator is Visual block mode */
- colnr_T start_vcol; /* start col for block mode operator */
- colnr_T end_vcol; /* end col for block mode operator */
- long prev_opcount; /* ca.opcount saved for K_CURSORHOLD */
- long prev_count0; /* ca.count0 saved for K_CURSORHOLD */
-} oparg_T;
-
-/*
- * Arguments for Normal mode commands.
- */
-typedef struct cmdarg_S {
- oparg_T *oap; /* Operator arguments */
- int prechar; /* prefix character (optional, always 'g') */
- int cmdchar; /* command character */
- int nchar; /* next command character (optional) */
- int ncharC1; /* first composing character (optional) */
- int ncharC2; /* second composing character (optional) */
- int extra_char; /* yet another character (optional) */
- long opcount; /* count before an operator */
- long count0; /* count before command, default 0 */
- long count1; /* count before command, default 1 */
- int arg; /* extra argument from nv_cmds[] */
- int retval; /* return: CA_* values */
- char_u *searchbuf; /* return: pointer to search pattern or NULL */
-} cmdarg_T;
-
-/* values for retval: */
-#define CA_COMMAND_BUSY 1 /* skip restarting edit() once */
-#define CA_NO_ADJ_OP_END 2 /* don't adjust operator end */
-
#ifdef CURSOR_SHAPE
/*
* struct to store values from 'guicursor' and 'mouseshape'