Skip to content

Commit

Permalink
v 60
Browse files Browse the repository at this point in the history
  • Loading branch information
psemiletov committed Apr 4, 2021
1 parent 6160208 commit 9e6615e
Show file tree
Hide file tree
Showing 32 changed files with 88 additions and 88 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ message("CMAKE_SYSTEM_NAME: ${CMAKE_SYSTEM_NAME}")
find_package(PkgConfig REQUIRED)
pkg_check_modules(QUIET hunspell hunspell)
pkg_check_modules(QUIET hunspell)
if(hunspell_FOUND)
add_definitions(-DHUNSPELL_ENABLE)
message("+ hunspell support")
Expand Down
5 changes: 2 additions & 3 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
//it's lazy updated file, so the real ChangeLog is the activity on github

* Spellscheker module rewrite
* Spellcheker module rewrite

+ lua is added for script intepritators (Fn - Script)
+ Fn::Script: bat, btm scripts support (Win)
+ Fn::Script: cmd //REXX

* old format for keywords (in syntax hl files) with ";" as the delimeter
is dropped, use current one (regexp) instead if you write own hl files
* old format for keywords (in syntax hl files) with ";" as the delimeter is dropped, use current one (regexp) instead if you write own hl files
see /hls dir for examples

+ Ctrl-mouse wheel to zoom text at current tab
Expand Down
24 changes: 16 additions & 8 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,14 +1,22 @@
=====NEWS ABOUT TEA====
TEA 60.0.0, march 2021
TEA 60.0.0, april 2021
---------------------------------------

For the centuries of the development, TEA gains a thousands of features. Some of them becomes rarely used, some needs more dependencies, so I've decide to make a some sort of clean-up without the actual removing of such functions. Now they are just disabled by default at the build level, when you compile TEA with cmake and meson. The qmake subsystem still loves all TEA non-mandatory deps.
So, by default, with meson and cmake, TEA does not searches and does not builds with: QML, Aspell, libpopplerqt5, ddjvuapi. You can enable all that stuff (see README) by yourself manually. I don't know the decisions of packagers, their choice of TEA features, now I'm speaking just about the build from the source.
TEA 50.1 also has a lot of fixes for Clang/Mac.
My study of Voynich manuscript (the dead end, it is impossible to read it) lead me to add some new functions:
+ Functions - Analysis - UNITAZ sorting length
+ Functions - Filter - Filter by repetitions
+ Functions - Sort - Sort by length
Why the version 60 after 51? To express the big changes of the code and compatibility with Qt 6. Yes, now TEA can be built against Qt 4 (for legacy systems), Qt 5 and Qt 6.
With TEA 60, the mature, 14-year old codebase was reviewed line by line and rewritten a lot. But I still don't use "modern C++" due to respect to old compilers.
So, what is new in TEA 60?
* Input-output subsystem (not touched from the beginning) was rewritten.
- QML support is dropped. No more plugins. But!
+ Added 2/Rexx, Lua, Windows batch files as scripts support (to the already supported Bash, Perl, Ruby, Python).
* TEA now uses some icons from the desktop theme.
* Spellchecker module has been rewritten.
* Syntax highlighting engine is almost new, and old syntax highlighting rule file format is not supported anymore - TEA uses the new one, although based on the old one.
+ Use Ctrl-mouse wheel to zoom text at current file.
+ TEA start time is shorter due to some improvements (spell checker now initialized on demand only).

NOTE FOR PACKAGERS

TEA 60 is stable with Qt6 as with Qt5. If built against Qt6, add to the deps the "Qt6-5compat" module.

Stay tuned.
Peter Semiletov
22 changes: 16 additions & 6 deletions NEWS-RU
Original file line number Diff line number Diff line change
@@ -1,14 +1,24 @@
=====НОВОСТИ ПРО ТИА====
ТИА 50.1.0, октябрь 2020
ТИА 60.0.0, апрель 2021
------------------------------------------------------
http://semiletov.org/tea/
======================

За тысячелетия разработки, ТИА вобрал в себя уйму функций, часть коих нынче устарела либо редко используется. Поэтому я решил отключить их по умолчанию, на этапе сборки, ежели таковая происходит с помощью cmake и meson. В случае с qmake по-прежнему ищутся все зависимости, включая необязательные, и если находятся, то ТИА собирается с ними. Как вернуть все зависимости при сборке с meson и cmake, подробно сказано на заморском аглицком языке в файле README - нагло подразумевается, что если вы собираете ТИА из исходников, а может еще и пакеты делаете, то сможете прочесть. Если нет, забейте, ТИА не станет хуже, если не будет тащить за собой: поддержку QML (я не знаю, кто пишет для ТИА плагины, кроме меня), Aspell (остался Hunspell), libpopplerqt5 и ddjvuapi.
Итак, по желанию сие можно вернуть при сборке.
Новый ТИА стал более лоялен к разным версиям Clang на Макинтошах. Любо дорого!
Наконец, мои исследования манускрипта Войнича (тоже забейте, его невозможно расшифровать, это алхимический трактат на выдуманном языке, записанный выдуманными для этого буквами) породили в ТИА несколько новых функций, относящихся к фильтрации, сортировке и статистике.
Могучий анализатор текста УНИТАЗ научился выводить итог, сортируя слова по длине. Появилась также просто сортировка списка слов по длине. В подменю Фильтр вы найдете странную штуку, "Фильтровать повторы" - она годится для изучения зашифрованных текстов, а как именно, нетрудно будет сообразить, если прочесть документацию, там и пример дан.
Почему сразу версия 60 после 51? Потому, что ТИА основательно переписан, а кроме того может быть собран теперь с Qt6 - хотя поддержка Qt5 и даже старинной Qt4 никуда не делась.
Приспосабливая ТИА к Qt6 я затронул весь код вообще, оптимизируя и переделывая всё, что накопилось за 14 лет разработки Qt-шной ипостаси ТИА (а ведь прежде была и GTK, а еще раньше вындовая версия на Delphi). Я однако поборол в себе искушение использовать "современный С++", дабы сохранить совместимость со старыми версиями компиляторов, присущими машинам, где до сир пор в ходу Qt4.
Что же нового в ТИА?
- Выкинута поддержка QML. Никаких больше плагинов. Вместе с тем, к уже имеющейся поддержке скриптов на Bash, Perl, Ruby, Python, добавлена поддержка скриптов на 2/Rexx, Lua и Windows batch.
* Подсистема ввода-вывода, святая святых, которую я не трогал со времен основания мира, переписана заново.
* Движок подсветки синтаксиса переписан, старый формат файлов с правилами подсветки - в топку, теперь используется новый формат, основанный впрочем на старом.
* Движок проверки правописания - тоже переписан, и эта подсистема загружается только по мере надобности, а не при запуске ТИА, что сокращает время запуска.
* ТИА использует теперь некоторые иконки из темы оформления рабочего стола, чтобы лучше в него вписываться.
+ Контрол + колесико мыши = масштабирует текст.
Это кратко и что на виду, основные изменения коснулись незримого, самого кода, включая архитектуру программы.

ПРИМЕЧАНИЯ ДЛЯ ВЕДУЩИХ ПАКЕТОВ

Для сборки ТИА с Qt6 надо добавить в зависимости модуль "Qt6-5compat". ТИА 60 столь же стабилен с Qt6, как и с Qt5.



С кирпичным пролетарским приветом, Петр Семилетов!
2 changes: 0 additions & 2 deletions TODO
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
*ОШИБКА!!! 1-30 лунные дни фаза НУЛЕВАЯ
*список алгоритмов фазы луны - разная последовательность элементов после каждого выбора и перезапуска

remove lout support

Expand Down
5 changes: 2 additions & 3 deletions hls/awk.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<document exts="awk" langs="awk" pattern="^.*\.(awk)$">
<document pattern="^.*\.(awk)$">

<item name="options" wrap="0" xml_format="1">
</item>
<item name="options" wrap="0"></item>

<item name="keywords" type="keywords" color="keywords" fontstyle="bold">\b(BEGIN|END|if|for|function|in|else|while|do|break|continue|exit)\b</item>

Expand Down
5 changes: 2 additions & 3 deletions hls/bash.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<document exts="sh" langs="Bash" pattern="^.*\.(sh)$">
<document pattern="^.*\.(sh)$">

<item name="options" wrap="0" xml_format="1">
</item>
<item name="options" wrap="0"></item>

<item name="keywords" type="keywords" color="keywords" fontstyle="bold">\b(break|builtin|caller|case|command|continue|coproc|declare|do|done|elif|else|enable|esac|exit|export|fi|for|getopts|if|let|local|logout|mapfile|return|select|set|shift|shopt|test|then|typeset|until|while)\b</item>

Expand Down
4 changes: 2 additions & 2 deletions hls/basic.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<document exts="bas;bi;vbs;vbe" langs="BASIC" pattern="^.*\.(bas|bi|vbs|vbe)$">
<document pattern="^.*\.(bas|bi|vbs|vbe)$">

<item name="options" casecare="0" wrap="0" xml_format="1"></item>
<item name="options" casecare="0" wrap="0"></item>

<item name="keywords" type="keywords" color="keywords" fontstyle="bold">\b(and|andalso|as|byref|call|cast|circle|cls|color|const|cptr|declare|defint|defsng|defstr|delete|dim|do|draw|dynamic|else|end|enum|eqv|erase|exit)|explicit|extern|for|function|get|getkey|if|imp|inkey|input|is|line|locate|loop|mod|new|next|not|option|or|orelse|peek|poke|printprivate|procptr|public|put|redim|return|scope|screen|screenres|shared|shl|shr|sleep|strptr|sub|then|type|union|until|var|varptr|wend|while|with|xor\b</item>

Expand Down
5 changes: 2 additions & 3 deletions hls/clike.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<document exts="cpp;c;h;hh;cxx;hpp;cc;m;mm" langs="c++;c;objective c" pattern="^.*\.(cpp|c|h|hh|cxx|hpp|cc|m|mm)$">
<document pattern="^.*\.(cpp|c|h|hh|cxx|hpp|cc|m|mm)$">

<item name="options" xml_format="1">
</item>
<item name="options" casecare="1"></item>

<item name="keywords" type="keywords" color="keywords" fontstyle="bold">\b(asm|asm|auto|break|case|catch|catch|class|const|const_cast|const_cast|continue|default|delete|do|dynamic_cast|dynamic_cast|else|enum|explicit|export|extern|false|for|foreach|friend|goto|if|inline|mutable|namespace|namespace|new|noexcept|operator|private|protected|public|register|reinterpret_cast|reinterpret_cast|return|signals|sizeof|slots|static|static_cast|static_cast|struct|switch|template|this|throw|throw|true|try|typedef|typeid|typename|union|using|virtual|volatile|while)\b</item>

Expand Down
4 changes: 2 additions & 2 deletions hls/cs.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<document exts="cs" langs="C#" pattern="^.*\.(cs)$">
<document pattern="^.*\.(cs)$">

<item name="options" wrap="0" xml_format="1"></item>
<item name="options" wrap="0"></item>

<item name="keywords" type="keywords" color="keywords" fontstyle="bold">\b(as|base|break|case|catch|checked|class|const|continue|default|delegate|do|else|enum|event|explicit|extern|false|finally|fixed|for|foreach|goto|if|implicit|in|interface|internal|is|lock|namespace|new|null|operator|out|override|params|private|protected|public|readonly|ref|return|sealed|sizeof|stackalloc|static|struct|switch|this|throw|true|try|typeof|unchecked|unsafe|using|virtual|volatile|while)\b</item>

Expand Down
4 changes: 2 additions & 2 deletions hls/d.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<document exts="d" langs="D" pattern="^.*\.(d)$">
<document pattern="^.*\.(d)$">

<item name="options" wrap="0" xml_format="1"></item>
<item name="options" wrap="0"></item>

<item name="keywords" type="keywords" color="keywords" fontstyle="bold">\b(alias|align|assert|auto|body|break|case|cast|catch|class|const|continue|default|delegate|delete|do|else|enum|finally|for|foreach|function|if|import|in|is|module|new|out|private|private|public|return|scope|static|struct|super|switch|template|this|throw|try|typedef|typeof|union|version|volatile|while)\b</item>

Expand Down
5 changes: 2 additions & 3 deletions hls/fortran.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<document exts="f;for;f90;f95" langs="Fortran" pattern="^.*\.(f|for|f90|f95)$">
<document pattern="^.*\.(f|for|f90|f95)$">

<item name="options" casecare="0" xml_format="1">
</item>
<item name="options" casecare="0"></item>

<item name="keywords" type="keywords" color="keywords" fontstyle="bold">\b(.and.|.eq.|.eqv.|.ge.|.gt.|.le.|.lt.|.ne.|.neqv.|.not.|.or.|call|case|contains|continue|cycle|default|do|else|elsewhere|end|enddo|ednforall|endwhere|endif|exit|forall|function|if|implicit|include|interface|module|module|print|program|recursive|return|select|stop|subroutine|then|type|use|where|while|write)\b</item>

Expand Down
5 changes: 2 additions & 3 deletions hls/java.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
<document exts="java" langs="Java" pattern="^.*\.(java|js)$">
<document pattern="^.*\.(java|js)$">

<item name="options" wrap="0" xml_format="1"></item>
<item name="options" wrap="0"></item>

<item name="types" type="types" color="type" fontstyle="bold">\b(boolean|byte|char|double|float|int|long|short|void)\b</item>


<item name="keywords" type="keywords" color="keywords" fontstyle="bold">
\b(abstract|assert|break|byte|case|catch|class|const|continue|default|do|else|enum|extends|false|final|finally|for|goto|if|implements|import|instanceof|interface|native|new|package|private|protected|public|return|static|strictfp|super|switch|synchronized|this|throw|throws|transient|true|try|volatile|while)\b</item>

Expand Down
4 changes: 2 additions & 2 deletions hls/lilypond.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<document exts="ly" langs="LilyPond" pattern="^.*\.(ly)$">
<document pattern="^.*\.(ly)$">

<item name="options" wrap="0" xml_format="1"></item>
<item name="options" wrap="0"></item>

<item name="class" type="item" color="class" fontstyle="bold">\\[A-Za-z]+\b</item>

Expand Down
4 changes: 2 additions & 2 deletions hls/lout.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<document exts="lout" langs="Lout" pattern="^.*\.(lout)$">
<document pattern="^.*\.(lout)$">

<item name="options" wrap="1" xml_format="1"></item>
<item name="options" wrap="1"></item>

<item name="class" type="item" color="class" fontstyle="bold">@[A-Z,a-z]+</item>

Expand Down
5 changes: 2 additions & 3 deletions hls/lua.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<document exts="lua" langs="lua" pattern="^.*\.(lua)$">
<document pattern="^.*\.(lua)$">

<item name="options" wrap="0" xml_format="1">
</item>
<item name="options" wrap="0"></item>

<item name="keywords" type="keywords" color="keywords" fontstyle="bold">\b(and|break|do|else|elseif|end|false|for|function|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b</item>

Expand Down
Loading

0 comments on commit 9e6615e

Please sign in to comment.