Commit Graph

47 Commits

Author SHA1 Message Date
Juergen Spitzmueller
611df441b6 Consider EuropeanNumberTerminator property when determining text direction
Also, use EuropeanNumberSeparator information rather than relying on an
own (incomplete) list of number separators.

Fixes: #4057
2018-07-22 12:38:22 +02:00
Juergen Spitzmueller
c0000cc405 Improve quotation mark opening/closing guess
Fixes: #8831

This introduces
* a new inset member isPartOfTextSequence() that returns
whether the inset produces something visible at the current position
in the text flow
* an isOpenPunctuation() test that returns whether a character is in the
'Punctuation, Open' unicode class. This is used instead of just checking
for two (Western, ASCII) opening brackets

It also fixes the isChar() and isLetter() value of InsetSpecialChar,
since some types have not been assigned correctly.
2016-12-27 12:06:54 +01:00
Georg Baum
6c54a081fa Make ASCII test more explicit.
I will need isASCII() in tex2lyx as well.
2012-12-30 20:52:49 +01:00
Pavel Sanda
c420c81ec2 Replay r36748
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36757 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-07 00:13:19 +00:00
Pavel Sanda
c68d754a74 Revert commits from 36745
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36749 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-07 00:05:40 +00:00
Stephan Witt
430d03811e #7026 substitute isDigit() by isDigitASCII() and ditch isDigit(); introduce isNumber() and use it in spell checker; change isdigit() to isDigitASCII() otherwise
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36748 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-06 22:35:15 +00:00
Richard Heck
0940cd77d4 Better way of doing these checks, suggested by Enrico.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36356 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-17 22:17:53 +00:00
Richard Heck
9d48ad4f74 Improvements to the parser that extracts the "family name". We now get
the last name, with the "von" part, even when commas are not used in the
BibTeX file.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27989 a592a061-630c-0410-9148-cb99ea01b6c8
2009-01-04 23:35:08 +00:00
André Pönitz
f1cba8ff64 more latin1..utf8 schanges. all of src/* should be utf8 now
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27425 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-14 15:58:50 +00:00
André Pönitz
a5263e0f92 introduce a header to forward declare std::string.
hope there are only conforming implementaions out there ;-}


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21312 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-31 22:40:34 +00:00
Bernhard Roider
4c9121df3b Fix bug 1826 + A more precise parser for bibtex files based on the description found on this web page: http://artis.imag.fr/~Xavier.Decoret/resources/xdkbibtex/bibtex_summary.html
Most important improvements:
- read file character by character and treat newline like space characters.
  Thus the @ does not need to be at the beginning of a line.
- it reads @string entries and replaces the strings in the field values
- it also handles @comment entries
- it recovers from syntax errors at the next entry starting with @
- it ignores everything between entries


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17723 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-04 20:06:34 +00:00
Georg Baum
329d50d90d Use new isAlphaASCII and isDigitASCII functions instead of isalpha and
isdigit from ctype.h, because the latter are locale dependant and do not
work with char_type.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17698 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-02 15:21:36 +00:00
Georg Baum
0418d14704 Fix character classification functions by using qt (bugs like 3270 and 1247)
* src/support/lstrings.C
	(uppercase): Use qt instead of non working libc/home grown solution
	(lowercase): ditto
	(local_lowercase): Use qt instead of libc tolower for ucs4 chars

	* src/support/qstring_helpers.C
	(qstring_to_ucs4): Use qchar_to_ucs4 because of the assertion

	* src/support/lstrings.h: Add some documentation

	* src/support/qstring_helpers.h
	(is_utf16): New function: Tests whether an ucs4 character is also a
	valid utf16 character
	(qchar_to_ucs4): Assert on is_utf16()
	(ucs4_to_qchar): Replace old assertion with better is_utf16()

	* src/support/textutils.h
	(isLetterChar): Delete non-working implementation
	(isPrintable): Ditto
	(isPrintableNonspace): Ditto
	(isDigit):

	* src/support/textutils.C: New file, contains new implementations
	using qt of the functions in textutils.h

	* src/support/Makefile.am: Add textutils.C

	* development/scons/scons_manifest.py: ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17354 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-26 09:03:21 +00:00
Georg Baum
a116e04b8b Use wctype character classification functions if possible
* src/buffer.C
	(Buffer::insertStringAsLines): Uncomment isPrintable test

	* src/support/lstrings.C
	(compare_no_case): Use char_type and not int for the docstring version
	(ascii_tolower): Convert to a template
	(compare_ascii_no_case): Do not use a template anymore, because we
	need int for the string version and char_type for the docstring
	version as intermediate type
	(lowercase): Use towlower if possible
	(uppercase): Use towupper if possible

	* src/support/textutils.h
	(isLetterChar): Use iswalpha if possible
	(isPrintable): Use iswprint if possible
	(isPrintableNonspace): Use iswprint and iswspace if possible
	(isDigit): Use iswdigit if possible

	* src/paragraph.C
	(Paragraph::asString): remove obsolete FIXME
	(Paragraph::transformChar): add FIXME

	* configure.ac: Add definition of LIBC_WCTYPE_USES_UCS4 to config.h

	* development/cmake/config.h.cmake: ditto

	* development/scons/SConstruct: ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15893 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 09:53:25 +00:00
Asger Ottar Alstrup
5c85bf0c64 - 5% speed-up by reserving space in the vector we build for drawing
- Simplify isPrintableNonspace


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15475 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 13:51:37 +00:00
André Pönitz
6c300f72a2 move everything into namespace lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15422 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 00:16:43 +00:00
Abdelrazak Younes
9e18b8e975 All methods: use char_type as argument instead of char.
isLetterChar(): verify also that this is a one-byte char (<256).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14877 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-03 12:12:53 +00:00
Georg Baum
e33bac93cd Fix clipboard/selection encoding
* src/frontends/qt[34]/qt_helpers.[Ch]
	(toqstr): add variant for docstring
	(qstring_to_ucs4): Use docstring and port from qt4 to qt3

	* Many other files: Many std::string -> lyx::docstring conversions

	* src/support/lstrings.[Ch]
	(subst): Add variant for docstring and char_type
	(externalLineEnding): std::string -> lyx::docstring
	(internalLineEnding): std::string -> lyx::docstring


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14871 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-03 07:02:38 +00:00
André Pönitz
1f5c5a06ee support/textutils.h:
support/filetools.h: rename IsDirWriteable IsFileReadable IsLyXFilename
IsSGMLFilename IsLineSeparatorChar IsLetterChar IsPrintable
IsPrintableNonspace IsDigit to lower case initial

lyxvc.C:
LaTeXFeatures.C:
lyx_cb.C:
insets/insetbibtex.C:
insets/insetexternal.C:
insets/insetgraphics.C:
insets/ExternalSupport.C:
insets/insetinclude.C:
BufferView_pimpl.C:
graphics/GraphicsCacheItem.C:
text2.C:
converter.C:
buffer.C:
lyxfunc.C:
frontends/gtk/ghelpers.C:
frontends/controllers/ControlGraphics.C:
frontends/controllers/ControlInclude.C:
frontends/controllers/ControlSpellchecker.C:
support/filetools.C:
support/filetools.h: adjust


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13595 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-08 09:09:57 +00:00
André Pönitz
7856f2c683 3 more percents...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10323 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-18 12:57:08 +00:00
Jean-Marc Lasgouttes
020972b7f9 get rid of Paragraph::isWord; ignore words with digits in spellchecker
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@9268 a592a061-630c-0410-9148-cb99ea01b6c8
2004-11-18 14:58:54 +00:00
Jean-Marc Lasgouttes
09b67226eb fix backwards search (bug 1666)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8988 a592a061-630c-0410-9148-cb99ea01b6c8
2004-09-17 16:28:47 +00:00
André Pönitz
4588bb075a lots of small stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7995 a592a061-630c-0410-9148-cb99ea01b6c8
2003-10-28 11:18:40 +00:00
Angus Leeming
e7e92ec660 Remove IsInsetChar and IsWordChar from textutils.h.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7771 a592a061-630c-0410-9148-cb99ea01b6c8
2003-09-16 12:12:33 +00:00
Angus Leeming
68a06b9c46 Consistent headers in support.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7682 a592a061-630c-0410-9148-cb99ea01b6c8
2003-09-05 15:34:37 +00:00
Angus Leeming
0be0fcfd59 If I ever see another licence blurb again, it'll be too soon...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7598 a592a061-630c-0410-9148-cb99ea01b6c8
2003-08-23 00:17:00 +00:00
John Levon
47432f0259 The inset newline patch I sent plus the requisite fixes. I couldn't reproduce a problem.
JMarc, I haven't moved those latex bits into the ::latex method yet though.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6471 a592a061-630c-0410-9148-cb99ea01b6c8
2003-03-12 19:16:42 +00:00
André Pönitz
ce3b1fa997 activate the new InsetHFill,
small ws


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6448 a592a061-630c-0410-9148-cb99ea01b6c8
2003-03-11 15:01:29 +00:00
Angus Leeming
25d9537fbd Clean up licence info and add Lars as the mysterious unknown author.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5341 a592a061-630c-0410-9148-cb99ea01b6c8
2002-09-25 10:03:41 +00:00
Lars Gullik Bjønnes
b3992b9a64 formatting
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4973 a592a061-630c-0410-9148-cb99ea01b6c8
2002-08-14 17:15:18 +00:00
John Levon
e0dc1a3ffb Documentation + file removals as sent to list
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4286 a592a061-630c-0410-9148-cb99ea01b6c8
2002-05-30 02:24:33 +00:00
Lars Gullik Bjønnes
a654de29ea ws cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3802 a592a061-630c-0410-9148-cb99ea01b6c8
2002-03-21 17:09:55 +00:00
Lars Gullik Bjønnes
7ea7dabed1 to much stuff for my liking...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3554 a592a061-630c-0410-9148-cb99ea01b6c8
2002-02-16 15:59:55 +00:00
Jean-Marc Lasgouttes
919b745fa6 fix insetert drupdate problems (bug #176); fix row breaking after protected chars
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3529 a592a061-630c-0410-9148-cb99ea01b6c8
2002-02-13 10:37:28 +00:00
Jürgen Vigna
9a5f7d1fe4 Fixed rowbreaking for "character"-insets and ignore all paragraph attributes
when the cell is not fixed lenght in a tabular on LaTeX output!


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3315 a592a061-630c-0410-9148-cb99ea01b6c8
2002-01-08 14:24:49 +00:00
Lars Gullik Bjønnes
d1182f17da LyX Drinkers Union: patch 1
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@2141 a592a061-630c-0410-9148-cb99ea01b6c8
2001-06-25 00:06:33 +00:00
Lars Gullik Bjønnes
83acbbd523 update copyright year
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@2072 a592a061-630c-0410-9148-cb99ea01b6c8
2001-05-30 13:53:44 +00:00
Lars Gullik Bjønnes
4c6091b63f remove !NEW_INSETS cruft
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1980 a592a061-630c-0410-9148-cb99ea01b6c8
2001-05-03 14:31:33 +00:00
Lars Gullik Bjønnes
45a03f4f67 use the new sstream return non-pods as const, use string instead of char * in a lot of places
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1019 a592a061-630c-0410-9148-cb99ea01b6c8
2000-09-14 17:53:12 +00:00
Lars Gullik Bjønnes
35cf7dcb2b NEW_INSETS changes, + some small things in insettabular.C
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@902 a592a061-630c-0410-9148-cb99ea01b6c8
2000-07-19 17:16:27 +00:00
Lars Gullik Bjønnes
8ed9dbabde read the Changelog
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@885 a592a061-630c-0410-9148-cb99ea01b6c8
2000-07-15 23:51:46 +00:00
Lars Gullik Bjønnes
b51e368b2b encoding patch and mousewheelpatch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@858 a592a061-630c-0410-9148-cb99ea01b6c8
2000-07-04 20:32:37 +00:00
Lars Gullik Bjønnes
7f1be334f1 make the graphics backround render ok + other stuff more changes than Id like at this stage, please test
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@677 a592a061-630c-0410-9148-cb99ea01b6c8
2000-04-16 22:27:30 +00:00
Lars Gullik Bjønnes
132fe5e132 the freespacing patch from Kayvan, draw the math empty delim with onoffdash, asure that the tables passed to lyxlex is sorted and sort them if not, use std::lower_bound to search in lyxlex tables, use binary search in stead of linear in math_delim::search_deco, we also sort the math_deco_table upon startup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@594 a592a061-630c-0410-9148-cb99ea01b6c8
2000-03-09 03:36:48 +00:00
Lars Gullik Bjønnes
ba5e47f1a9 read the ChangeLog... no huge changes .. but some might get reversed...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@576 a592a061-630c-0410-9148-cb99ea01b6c8
2000-02-29 02:19:17 +00:00
Lars Gullik Bjønnes
94a6d7ed67 some white-space changes, enum changes because of ridance of definitions.h, block.h added small change in lyxstring.C
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@311 a592a061-630c-0410-9148-cb99ea01b6c8
1999-11-15 10:54:16 +00:00
Lars Gullik Bjønnes
0eccdd1c36 merge from the string-switch branch and ready for a prelease.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@162 a592a061-630c-0410-9148-cb99ea01b6c8
1999-10-02 16:21:10 +00:00