[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemacs-commit] qemacs latex-mode.c
From: |
Charlie Gordon |
Subject: |
[Qemacs-commit] qemacs latex-mode.c |
Date: |
Fri, 23 Dec 2016 04:51:40 -0500 (EST) |
CVSROOT: /sources/qemacs
Module name: qemacs
Changes by: Charlie Gordon <chqrlie> 16/12/23 04:51:40
Modified files:
. : latex-mode.c
Log message:
latex: simplified do_tex_insert_quote()
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qemacs/latex-mode.c?cvsroot=qemacs&r1=1.54&r2=1.55
Patches:
Index: latex-mode.c
===================================================================
RCS file: /sources/qemacs/qemacs/latex-mode.c,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -b -r1.54 -r1.55
--- latex-mode.c 26 Aug 2015 00:53:23 -0000 1.54
+++ latex-mode.c 23 Dec 2016 09:51:40 -0000 1.55
@@ -168,28 +168,22 @@
static void do_tex_insert_quote(EditState *s)
{
- int offset_bol, len, offset1;
- unsigned int buf[COLORED_MAX_LINE_SIZE];
- int pos;
-
- offset_bol = eb_goto_bol2(s->b, s->offset, &pos);
- offset1 = offset_bol;
- len = eb_get_line(s->b, buf, countof(buf), &offset1);
- if (pos > len)
- return;
- if (pos >= 1 && buf[pos-1] == '\"') {
- s->offset += eb_insert_uchar(s->b, s->offset, '\"');
+ EditBuffer *b = s->b;
+ int offset = s->offset;
+ int c1 = eb_prevc(b, offset, &offset);
+ int c2 = eb_prevc(b, offset, &offset);
+
+ if (c1 == '\"') {
+ s->offset += eb_insert_uchar(b, s->offset, '\"');
} else
- if (pos >= 2 && (buf[pos-1] == '`' || buf[pos-1] == '\'') &&
- buf[pos-1] == buf[pos-2])
- {
- eb_delete_chars(s->b, s->offset, -2);
- s->offset += eb_insert_uchar(s->b, s->offset, '\"');
+ if ((c1 == '`' || c1 == '\'') && c1 == c2) {
+ eb_delete_chars(b, s->offset, -2);
+ s->offset += eb_insert_uchar(b, s->offset, '\"');
} else {
- if (pos == 0 || buf[pos-1] == ' ') {
- s->offset += eb_insert_str(s->b, s->offset, "``");
+ if (c1 == '\n' || c1 == ' ') {
+ s->offset += eb_insert_str(b, s->offset, "``");
} else {
- s->offset += eb_insert_str(s->b, s->offset, "''");
+ s->offset += eb_insert_str(b, s->offset, "''");
}
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemacs-commit] qemacs latex-mode.c,
Charlie Gordon <=