aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--runtime/doc/change.txt3
-rw-r--r--runtime/doc/options.txt4
-rw-r--r--src/nvim/edit.c7
-rw-r--r--src/nvim/ops.c8
-rw-r--r--src/nvim/option_defs.h5
-rw-r--r--src/nvim/search.c6
6 files changed, 12 insertions, 21 deletions
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index 373431b481..122e76d0d3 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -147,8 +147,7 @@ These commands, except "gJ", insert one space in place of the <EOL> unless
there is trailing white space or the next line starts with a ')'. These
commands, except "gJ", delete any leading white space on the next line. If
the 'joinspaces' option is on, these commands insert two spaces after a '.',
-'!' or '?' (but if 'cpoptions' includes the 'j' flag, they insert two spaces
-only after a '.').
+'!' or '?'.
The 'B' and 'M' flags in 'formatoptions' change the behavior for inserting
spaces before and after a multi-byte character |fo-table|.
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 801e16d753..fadcbac9f1 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1779,9 +1779,6 @@ A jump table for the options with a short description can be found at |Q_op|.
*cpo-I*
I When moving the cursor up or down just after inserting
indent for 'autoindent', do not delete the indent.
- *cpo-j*
- j When joining lines, only add two spaces after a '.',
- not after '!' or '?'. Also see 'joinspaces'.
*cpo-J*
J A |sentence| has to be followed by two spaces after
the '.', '!' or '?'. A <Tab> is not recognized as
@@ -4024,7 +4021,6 @@ A jump table for the options with a short description can be found at |Q_op|.
'joinspaces' 'js' boolean (default on)
global
Insert two spaces after a '.', '?' and '!' with a join command.
- When 'cpoptions' includes the 'j' flag, only do this after a '.'.
Otherwise only one space is inserted.
*'key'*
diff --git a/src/nvim/edit.c b/src/nvim/edit.c
index 31a5c54c20..9704295aaa 100644
--- a/src/nvim/edit.c
+++ b/src/nvim/edit.c
@@ -3719,11 +3719,10 @@ static int ins_compl_get_exp(pos_T *ini)
/* IObuf =~ "\k.* ", thus len >= 2 */
if (p_js
&& (IObuff[len - 2] == '.'
- || (vim_strchr(p_cpo, CPO_JOINSP)
- == NULL
- && (IObuff[len - 2] == '?'
- || IObuff[len - 2] == '!'))))
+ || IObuff[len - 2] == '?'
+ || IObuff[len - 2] == '!')) {
IObuff[len++] = ' ';
+ }
}
/* copy as much as possible of the new word */
if (tmp_ptr - ptr >= IOSIZE - len)
diff --git a/src/nvim/ops.c b/src/nvim/ops.c
index dfc41d5685..0b95dd4642 100644
--- a/src/nvim/ops.c
+++ b/src/nvim/ops.c
@@ -3460,12 +3460,10 @@ int do_join(long count,
endcurr1 = endcurr2;
else
++spaces[t];
- /* extra space when 'joinspaces' set and line ends in '.' */
- if ( p_js
- && (endcurr1 == '.'
- || (vim_strchr(p_cpo, CPO_JOINSP) == NULL
- && (endcurr1 == '?' || endcurr1 == '!'))))
+ // Extra space when 'joinspaces' set and line ends in '.', '?', or '!'.
+ if (p_js && (endcurr1 == '.' || endcurr1 == '?' || endcurr1 == '!')) {
++spaces[t];
+ }
}
}
currsize = (int)STRLEN(curr);
diff --git a/src/nvim/option_defs.h b/src/nvim/option_defs.h
index de8816af0a..80f2373a85 100644
--- a/src/nvim/option_defs.h
+++ b/src/nvim/option_defs.h
@@ -97,7 +97,6 @@
#define CPO_FNAMEW 'F' /* set file name for ":w file" */
#define CPO_INTMOD 'i' /* interrupt a read makes buffer modified */
#define CPO_INDENT 'I' /* remove auto-indent more often */
-#define CPO_JOINSP 'j' /* only use two spaces for join after '.' */
#define CPO_ENDOFSENT 'J' /* need two spaces to detect end of sentence */
#define CPO_KEYCODE 'k' /* don't recognize raw key code in mappings */
#define CPO_KOFFSET 'K' /* don't wait for key code in mappings */
@@ -141,9 +140,9 @@
* cursor would not move */
/* default values for Vim, Vi and POSIX */
#define CPO_VIM "aABceFs"
-#define CPO_VI "aAbBcCdDeEfFiIjJkKlLmMnoOpPqrRsStuvWxXyZ$!%+<>;"
+#define CPO_VI "aAbBcCdDeEfFiIJkKlLmMnoOpPqrRsStuvWxXyZ$!%+<>;"
#define CPO_ALL \
- "aAbBcCdDeEfFiIjJkKlLmMnoOpPqrRsStuvWxXyZ$!%+<>#{|&/\\.;"
+ "aAbBcCdDeEfFiIJkKlLmMnoOpPqrRsStuvWxXyZ$!%+<>#{|&/\\.;"
/* characters for p_ww option: */
#define WW_ALL "bshl<>[],~"
diff --git a/src/nvim/search.c b/src/nvim/search.c
index 464e112900..e10504973b 100644
--- a/src/nvim/search.c
+++ b/src/nvim/search.c
@@ -4335,10 +4335,10 @@ search_line:
/* IObuf =~ "\(\k\|\i\).* ", thus i >= 2*/
if (p_js
&& (IObuff[i-2] == '.'
- || (vim_strchr(p_cpo, CPO_JOINSP) == NULL
- && (IObuff[i-2] == '?'
- || IObuff[i-2] == '!'))))
+ || IObuff[i-2] == '?'
+ || IObuff[i-2] == '!')) {
IObuff[i++] = ' ';
+ }
}
/* copy as much as possible of the new word */
if (p - aux >= IOSIZE - i)