├── .gitattributes ├── jni ├── Android.mk ├── highlight │ ├── gui-qt │ │ ├── file.png │ │ ├── plugin.png │ │ ├── hl_icon2.png │ │ ├── hl_icon_exe.ico │ │ ├── precomp.h │ │ ├── highlight-gui.qrc │ │ ├── highlight.pro │ │ ├── showtextfile.h │ │ ├── io_report.h │ │ ├── io_report.cpp │ │ ├── showtextfile.cpp │ │ ├── main.cpp │ │ ├── showtextfile.ui │ │ └── io_report.ui │ ├── include │ │ ├── version.h │ │ ├── platform_fs.h │ │ ├── xhtmlgenerator.h │ │ ├── charcodes.h │ │ ├── astyle │ │ │ └── ASStreamIterator.h │ │ ├── enums.h │ │ ├── svggenerator.h │ │ ├── texgenerator.h │ │ ├── ansigenerator.h │ │ ├── bbcodegenerator.h │ │ ├── pangogenerator.h │ │ ├── odtgenerator.h │ │ ├── Diluculum │ │ │ ├── Types.hpp │ │ │ ├── CppObject.hpp │ │ │ └── LuaUtils.hpp │ │ ├── stringtools.h │ │ └── stylecolour.h │ ├── cli │ │ └── help.h │ ├── Android.mk │ └── core │ │ ├── Diluculum │ │ ├── LuaExceptions.cpp │ │ └── LuaWrappers.cpp │ │ ├── xhtmlgenerator.cpp │ │ ├── elementstyle.cpp │ │ └── ansigenerator.cpp ├── Application.mk └── lua │ ├── lua.hpp │ ├── lapi.h │ ├── Android.mk │ ├── linit.c │ ├── lstring.h │ ├── lundump.h │ ├── ldebug.h │ ├── ltm.h │ ├── lualib.h │ ├── lfunc.h │ ├── lvm.h │ ├── ltable.h │ ├── lmem.h │ ├── lzio.h │ ├── ltm.c │ ├── lzio.c │ ├── ldo.h │ ├── llex.h │ ├── lmem.c │ ├── lparser.h │ ├── llimits.h │ ├── lcode.h │ ├── lopcodes.c │ └── lstring.c ├── data ├── pad.jpg ├── Andes.jpg ├── Breeze.jpg ├── Candy.jpg ├── Matrix.jpg ├── Vampire.jpg ├── Fine-Blue.jpg └── Seashell.jpg ├── libs ├── w3c.jar ├── hotsax.jar ├── sac-1.3.jar ├── tagsoup-1.2.1.jar └── cssparser-0.9.17.jar ├── assets ├── plugins.zip ├── themes.zip ├── langDefs.zip ├── fib.py └── highlight.css ├── ic_launcher-web.png ├── res ├── drawable-hdpi │ ├── duck.png │ ├── emo_angel.png │ ├── emo_angry.png │ ├── emo_bored.png │ ├── emo_clown.png │ ├── emo_cool.png │ ├── emo_cry.png │ ├── emo_devil.png │ ├── emo_emo.png │ ├── emo_grin.png │ ├── emo_kiss.png │ ├── emo_laugh.png │ ├── emo_love.png │ ├── emo_nerd.png │ ├── emo_ninja.png │ ├── emo_party.png │ ├── emo_punk.png │ ├── emo_sad.png │ ├── emo_santa.png │ ├── emo_shy.png │ ├── emo_sick.png │ ├── emo_smile.png │ ├── emo_wacky.png │ ├── emo_wink.png │ ├── ic_film.png │ ├── emo_amazed.png │ ├── emo_beaten.png │ ├── emo_frozen.png │ ├── emo_indian.png │ ├── emo_karate.png │ ├── emo_pirate.png │ ├── emo_tongue.png │ ├── emo_vampire.png │ ├── ic_launcher.png │ ├── emo_confused.png │ ├── emo_doubtful.png │ ├── emo_speechless.png │ ├── emo_sweating.png │ └── emo_millionaire.png ├── drawable-ldpi │ ├── emo_angel.png │ ├── emo_angry.png │ ├── emo_bored.png │ ├── emo_clown.png │ ├── emo_cool.png │ ├── emo_cry.png │ ├── emo_devil.png │ ├── emo_emo.png │ ├── emo_grin.png │ ├── emo_kiss.png │ ├── emo_laugh.png │ ├── emo_love.png │ ├── emo_nerd.png │ ├── emo_ninja.png │ ├── emo_party.png │ ├── emo_punk.png │ ├── emo_sad.png │ ├── emo_santa.png │ ├── emo_shy.png │ ├── emo_sick.png │ ├── emo_smile.png │ ├── emo_wacky.png │ ├── emo_wink.png │ ├── emo_amazed.png │ ├── emo_beaten.png │ ├── emo_frozen.png │ ├── emo_indian.png │ ├── emo_karate.png │ ├── emo_pirate.png │ ├── emo_tongue.png │ ├── emo_vampire.png │ ├── emo_confused.png │ ├── emo_doubtful.png │ ├── emo_speechless.png │ ├── emo_sweating.png │ └── emo_millionaire.png ├── drawable-mdpi │ ├── emo_angel.png │ ├── emo_angry.png │ ├── emo_bored.png │ ├── emo_clown.png │ ├── emo_cool.png │ ├── emo_cry.png │ ├── emo_devil.png │ ├── emo_emo.png │ ├── emo_grin.png │ ├── emo_kiss.png │ ├── emo_laugh.png │ ├── emo_love.png │ ├── emo_nerd.png │ ├── emo_ninja.png │ ├── emo_party.png │ ├── emo_punk.png │ ├── emo_sad.png │ ├── emo_santa.png │ ├── emo_shy.png │ ├── emo_sick.png │ ├── emo_smile.png │ ├── emo_wacky.png │ ├── emo_wink.png │ ├── ic_film.png │ ├── emo_amazed.png │ ├── emo_beaten.png │ ├── emo_frozen.png │ ├── emo_indian.png │ ├── emo_karate.png │ ├── emo_pirate.png │ ├── emo_tongue.png │ ├── emo_vampire.png │ ├── ic_launcher.png │ ├── emo_confused.png │ ├── emo_doubtful.png │ ├── emo_speechless.png │ ├── emo_sweating.png │ ├── iconfont_theme.png │ ├── iconfont_yuyan.png │ ├── emo_millionaire.png │ └── iconfont_zitibianji.png ├── drawable-xhdpi │ ├── emo_cool.png │ ├── emo_cry.png │ ├── emo_emo.png │ ├── emo_grin.png │ ├── emo_kiss.png │ ├── emo_love.png │ ├── emo_nerd.png │ ├── emo_punk.png │ ├── emo_sad.png │ ├── emo_shy.png │ ├── emo_sick.png │ ├── emo_wink.png │ ├── ic_film.png │ ├── emo_amazed.png │ ├── emo_angel.png │ ├── emo_angry.png │ ├── emo_beaten.png │ ├── emo_bored.png │ ├── emo_clown.png │ ├── emo_devil.png │ ├── emo_frozen.png │ ├── emo_indian.png │ ├── emo_karate.png │ ├── emo_laugh.png │ ├── emo_ninja.png │ ├── emo_party.png │ ├── emo_pirate.png │ ├── emo_santa.png │ ├── emo_smile.png │ ├── emo_tongue.png │ ├── emo_wacky.png │ ├── emo_confused.png │ ├── emo_doubtful.png │ ├── emo_sweating.png │ ├── emo_vampire.png │ ├── ic_launcher.png │ ├── emo_millionaire.png │ └── emo_speechless.png ├── drawable-xxhdpi │ ├── emo_cry.png │ ├── emo_emo.png │ ├── emo_sad.png │ ├── emo_shy.png │ ├── emo_angel.png │ ├── emo_angry.png │ ├── emo_bored.png │ ├── emo_clown.png │ ├── emo_cool.png │ ├── emo_devil.png │ ├── emo_grin.png │ ├── emo_kiss.png │ ├── emo_laugh.png │ ├── emo_love.png │ ├── emo_nerd.png │ ├── emo_ninja.png │ ├── emo_party.png │ ├── emo_punk.png │ ├── emo_santa.png │ ├── emo_sick.png │ ├── emo_smile.png │ ├── emo_wacky.png │ ├── emo_wink.png │ ├── emo_amazed.png │ ├── emo_beaten.png │ ├── emo_confused.png │ ├── emo_doubtful.png │ ├── emo_frozen.png │ ├── emo_indian.png │ ├── emo_karate.png │ ├── emo_pirate.png │ ├── emo_sweating.png │ ├── emo_tongue.png │ ├── emo_vampire.png │ ├── ic_launcher.png │ ├── emo_speechless.png │ ├── iconfont_theme.png │ ├── iconfont_yuyan.png │ ├── emo_millionaire.png │ └── iconfont_zitibianji.png ├── values │ ├── dimens.xml │ ├── styles.xml │ └── strings.xml ├── values-v11 │ └── styles.xml ├── values-w820dp │ └── dimens.xml ├── values-v14 │ └── styles.xml ├── menu │ └── main.xml └── layout │ └── activity_main.xml ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── lint.xml ├── gen └── org │ └── evilbinary │ └── highliter │ └── BuildConfig.java ├── src └── org │ └── evilbinary │ ├── highliter │ ├── parsers │ │ ├── Token.java │ │ └── SyntaxHighlight.java │ └── spans │ │ ├── ImageClickableSpan.java │ │ ├── VideoClickableSpan.java │ │ ├── SafeURLSpan.java │ │ ├── SpanStyle.java │ │ └── VideoSpan.java │ ├── utils │ ├── PxAndDp.java │ ├── IoUtils.java │ ├── Logger.java │ ├── DirUtil.java │ └── RichTextUtils.java │ └── managers │ └── Configure.java ├── local.properties ├── project.properties ├── proguard-project.txt ├── AndroidManifest.xml └── gradlew.bat /.gitattributes: -------------------------------------------------------------------------------- 1 | * linguist-language=Java 2 | -------------------------------------------------------------------------------- /jni/Android.mk: -------------------------------------------------------------------------------- 1 | 2 | include $(call all-subdir-makefiles) 3 | 4 | -------------------------------------------------------------------------------- /data/pad.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/data/pad.jpg -------------------------------------------------------------------------------- /libs/w3c.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/libs/w3c.jar -------------------------------------------------------------------------------- /data/Andes.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/data/Andes.jpg -------------------------------------------------------------------------------- /data/Breeze.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/data/Breeze.jpg -------------------------------------------------------------------------------- /data/Candy.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/data/Candy.jpg -------------------------------------------------------------------------------- /data/Matrix.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/data/Matrix.jpg -------------------------------------------------------------------------------- /data/Vampire.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/data/Vampire.jpg -------------------------------------------------------------------------------- /libs/hotsax.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/libs/hotsax.jar -------------------------------------------------------------------------------- /libs/sac-1.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/libs/sac-1.3.jar -------------------------------------------------------------------------------- /assets/plugins.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/assets/plugins.zip -------------------------------------------------------------------------------- /assets/themes.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/assets/themes.zip -------------------------------------------------------------------------------- /data/Fine-Blue.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/data/Fine-Blue.jpg -------------------------------------------------------------------------------- /data/Seashell.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/data/Seashell.jpg -------------------------------------------------------------------------------- /assets/langDefs.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/assets/langDefs.zip -------------------------------------------------------------------------------- /ic_launcher-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/ic_launcher-web.png -------------------------------------------------------------------------------- /libs/tagsoup-1.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/libs/tagsoup-1.2.1.jar -------------------------------------------------------------------------------- /libs/cssparser-0.9.17.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/libs/cssparser-0.9.17.jar -------------------------------------------------------------------------------- /res/drawable-hdpi/duck.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/duck.png -------------------------------------------------------------------------------- /jni/highlight/gui-qt/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/jni/highlight/gui-qt/file.png -------------------------------------------------------------------------------- /jni/highlight/gui-qt/plugin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/jni/highlight/gui-qt/plugin.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_angel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_angel.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_angry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_angry.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_bored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_bored.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_clown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_clown.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_cool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_cool.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_cry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_cry.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_devil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_devil.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_emo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_emo.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_grin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_grin.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_kiss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_kiss.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_laugh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_laugh.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_love.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_love.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_nerd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_nerd.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_ninja.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_ninja.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_party.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_party.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_punk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_punk.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_sad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_sad.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_santa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_santa.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_shy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_shy.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_sick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_sick.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_smile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_smile.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_wacky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_wacky.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_wink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_wink.png -------------------------------------------------------------------------------- /res/drawable-hdpi/ic_film.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/ic_film.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_angel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_angel.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_angry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_angry.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_bored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_bored.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_clown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_clown.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_cool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_cool.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_cry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_cry.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_devil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_devil.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_emo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_emo.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_grin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_grin.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_kiss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_kiss.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_laugh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_laugh.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_love.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_love.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_nerd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_nerd.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_ninja.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_ninja.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_party.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_party.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_punk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_punk.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_sad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_sad.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_santa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_santa.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_shy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_shy.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_sick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_sick.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_smile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_smile.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_wacky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_wacky.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_wink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_wink.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_angel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_angel.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_angry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_angry.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_bored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_bored.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_clown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_clown.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_cool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_cool.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_cry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_cry.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_devil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_devil.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_emo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_emo.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_grin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_grin.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_kiss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_kiss.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_laugh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_laugh.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_love.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_love.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_nerd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_nerd.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_ninja.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_ninja.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_party.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_party.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_punk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_punk.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_sad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_sad.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_santa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_santa.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_shy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_shy.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_sick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_sick.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_smile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_smile.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_wacky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_wacky.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_wink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_wink.png -------------------------------------------------------------------------------- /res/drawable-mdpi/ic_film.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/ic_film.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_cool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_cool.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_cry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_cry.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_emo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_emo.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_grin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_grin.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_kiss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_kiss.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_love.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_love.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_nerd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_nerd.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_punk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_punk.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_sad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_sad.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_shy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_shy.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_sick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_sick.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_wink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_wink.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/ic_film.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/ic_film.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_cry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_cry.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_emo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_emo.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_sad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_sad.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_shy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_shy.png -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /jni/highlight/gui-qt/hl_icon2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/jni/highlight/gui-qt/hl_icon2.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_amazed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_amazed.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_beaten.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_beaten.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_frozen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_frozen.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_indian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_indian.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_karate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_karate.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_pirate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_pirate.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_tongue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_tongue.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_vampire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_vampire.png -------------------------------------------------------------------------------- /res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_amazed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_amazed.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_beaten.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_beaten.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_frozen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_frozen.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_indian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_indian.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_karate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_karate.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_pirate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_pirate.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_tongue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_tongue.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_vampire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_vampire.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_amazed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_amazed.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_beaten.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_beaten.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_frozen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_frozen.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_indian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_indian.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_karate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_karate.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_pirate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_pirate.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_tongue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_tongue.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_vampire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_vampire.png -------------------------------------------------------------------------------- /res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_amazed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_amazed.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_angel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_angel.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_angry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_angry.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_beaten.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_beaten.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_bored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_bored.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_clown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_clown.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_devil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_devil.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_frozen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_frozen.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_indian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_indian.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_karate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_karate.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_laugh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_laugh.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_ninja.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_ninja.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_party.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_party.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_pirate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_pirate.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_santa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_santa.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_smile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_smile.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_tongue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_tongue.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_wacky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_wacky.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_angel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_angel.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_angry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_angry.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_bored.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_bored.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_clown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_clown.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_cool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_cool.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_devil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_devil.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_grin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_grin.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_kiss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_kiss.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_laugh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_laugh.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_love.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_love.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_nerd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_nerd.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_ninja.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_ninja.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_party.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_party.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_punk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_punk.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_santa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_santa.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_sick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_sick.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_smile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_smile.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_wacky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_wacky.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_wink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_wink.png -------------------------------------------------------------------------------- /jni/highlight/gui-qt/hl_icon_exe.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/jni/highlight/gui-qt/hl_icon_exe.ico -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_confused.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_confused.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_doubtful.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_doubtful.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_speechless.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_speechless.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_sweating.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_sweating.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_confused.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_confused.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_doubtful.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_doubtful.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_speechless.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_speechless.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_sweating.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_sweating.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_confused.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_confused.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_doubtful.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_doubtful.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_speechless.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_speechless.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_sweating.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_sweating.png -------------------------------------------------------------------------------- /res/drawable-mdpi/iconfont_theme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/iconfont_theme.png -------------------------------------------------------------------------------- /res/drawable-mdpi/iconfont_yuyan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/iconfont_yuyan.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_confused.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_confused.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_doubtful.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_doubtful.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_sweating.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_sweating.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_vampire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_vampire.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_amazed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_amazed.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_beaten.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_beaten.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_confused.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_confused.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_doubtful.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_doubtful.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_frozen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_frozen.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_indian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_indian.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_karate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_karate.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_pirate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_pirate.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_sweating.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_sweating.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_tongue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_tongue.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_vampire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_vampire.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /res/drawable-hdpi/emo_millionaire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-hdpi/emo_millionaire.png -------------------------------------------------------------------------------- /res/drawable-ldpi/emo_millionaire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-ldpi/emo_millionaire.png -------------------------------------------------------------------------------- /res/drawable-mdpi/emo_millionaire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/emo_millionaire.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_millionaire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_millionaire.png -------------------------------------------------------------------------------- /res/drawable-xhdpi/emo_speechless.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xhdpi/emo_speechless.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_speechless.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_speechless.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/iconfont_theme.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/iconfont_theme.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/iconfont_yuyan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/iconfont_yuyan.png -------------------------------------------------------------------------------- /res/drawable-mdpi/iconfont_zitibianji.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-mdpi/iconfont_zitibianji.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/emo_millionaire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/emo_millionaire.png -------------------------------------------------------------------------------- /res/drawable-xxhdpi/iconfont_zitibianji.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evilbinary/HighlightTextEditor/HEAD/res/drawable-xxhdpi/iconfont_zitibianji.png -------------------------------------------------------------------------------- /jni/highlight/gui-qt/precomp.h: -------------------------------------------------------------------------------- 1 | #ifndef PRECOMP_H 2 | #define PRECOMP_H 3 | 4 | #if defined __cplusplus 5 | 6 | #endif 7 | 8 | #endif // PRECOMP_H 9 | -------------------------------------------------------------------------------- /jni/Application.mk: -------------------------------------------------------------------------------- 1 | #APP_ABI := armeabi-v7a 2 | 3 | #NDK_TOOLCHAIN_VERSION:=4.8 4 | APP_STL := stlport_static 5 | #APP_STL := stlport_shared 6 | APP_STL := gnustl_static 7 | APP_CPPFLAGS := -frtti -std=c++11 8 | -------------------------------------------------------------------------------- /lint.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gen/org/evilbinary/highliter/BuildConfig.java: -------------------------------------------------------------------------------- 1 | /** Automatically generated file. DO NOT MODIFY */ 2 | package org.evilbinary.highliter; 3 | 4 | public final class BuildConfig { 5 | public final static boolean DEBUG = true; 6 | } -------------------------------------------------------------------------------- /jni/highlight/gui-qt/highlight-gui.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | highlight.xpm 4 | hl_icon2.png 5 | file.png 6 | plugin.png 7 | 8 | 9 | -------------------------------------------------------------------------------- /jni/lua/lua.hpp: -------------------------------------------------------------------------------- 1 | // lua.hpp 2 | // Lua header files for C++ 3 | // <> not supplied automatically because Lua also compiles as C++ 4 | 5 | extern "C" { 6 | #include "lua.h" 7 | #include "lualib.h" 8 | #include "lauxlib.h" 9 | } 10 | -------------------------------------------------------------------------------- /res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 16dp 5 | 16dp 6 | 7 | 8 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Wed Oct 21 11:34:03 PDT 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip 7 | -------------------------------------------------------------------------------- /src/org/evilbinary/highliter/parsers/Token.java: -------------------------------------------------------------------------------- 1 | package org.evilbinary.highliter.parsers; 2 | 3 | /** 4 | * 作者:evilbinary on 3/7/16. 5 | * 邮箱:rootdebug@163.com 6 | */ 7 | public class Token { 8 | public String string; 9 | public String style; 10 | public int state; 11 | } 12 | -------------------------------------------------------------------------------- /jni/lua/lapi.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lapi.h,v 2.2.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Auxiliary functions from Lua API 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef lapi_h 8 | #define lapi_h 9 | 10 | 11 | #include "lobject.h" 12 | 13 | 14 | LUAI_FUNC void luaA_pushobject (lua_State *L, const TValue *o); 15 | 16 | #endif 17 | -------------------------------------------------------------------------------- /res/values-v11/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /assets/fib.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | fibs = {0: 0, 1: 1} 4 | def fib(n): 5 | if n in fibs: return fibs[n] 6 | if n % 2 == 0: 7 | fibs[n] = ((2 * fib((n / 2) - 1)) + fib(n / 2)) * fib(n / 2) 8 | return fibs[n] 9 | else: 10 | fibs[n] = (fib((n - 1) / 2) ** 2) + (fib((n+1) / 2) ** 2) 11 | return fibs[n] 12 | 13 | print ("fib(234) = %i" % fib(234)) -------------------------------------------------------------------------------- /res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 64dp 9 | 10 | 11 | -------------------------------------------------------------------------------- /res/values-v14/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /res/menu/main.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /jni/lua/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | include $(CLEAR_VARS) 4 | 5 | LOCAL_MODULE := lua 6 | LOCAL_SRC_FILES := lapi.c lauxlib.c lbaselib.c lcode.c ldblib.c ldebug.c ldo.c ldump.c lfunc.c lgc.c linit.c liolib.c llex.c lmathlib.c lmem.c loadlib.c lobject.c lopcodes.c loslib.c lparser.c lstate.c lstring.c lstrlib.c ltable.c ltablib.c ltm.c lundump.c lvm.c lzio.c 7 | LOCAL_LDLIBS := -lm 8 | 9 | #include $(BUILD_STATIC_LIBRARY) 10 | include $(BUILD_SHARED_LIBRARY) 11 | -------------------------------------------------------------------------------- /local.properties: -------------------------------------------------------------------------------- 1 | ## This file is automatically generated by Android Studio. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must *NOT* be checked into Version Control Systems, 5 | # as it contains information specific to your local configuration. 6 | # 7 | # Location of the SDK. This is only used by Gradle. 8 | # For customization when using a Version Control System, please read the 9 | # header note. 10 | #Sat Dec 05 23:50:46 CST 2015 11 | sdk.dir=/Users/evil/Applications/adt-bundle-mac-x86_64-20140702/sdk 12 | ndk.dir=/Users/evil/Applications/android-ndk-r10d 13 | -------------------------------------------------------------------------------- /project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system edit 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | # 10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): 11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 12 | 13 | # Project target. 14 | target=android-14 15 | android.library.reference.1=../appcompat_v7 16 | -------------------------------------------------------------------------------- /src/org/evilbinary/utils/PxAndDp.java: -------------------------------------------------------------------------------- 1 | package org.evilbinary.utils; 2 | 3 | import android.content.Context; 4 | 5 | public class PxAndDp { 6 | /** 7 | * 根据手机的分辨率从 dp 的单位 转成为 px(像素) 8 | */ 9 | public static int dip2px(Context context, float dpValue) { 10 | final float scale = context.getResources().getDisplayMetrics().density; 11 | return (int) (dpValue * scale + 0.5f); 12 | } 13 | 14 | /** 15 | * 根据手机的分辨率从 px(像素) 的单位 转成为 dp 16 | */ 17 | public static int px2dip(Context context, float pxValue) { 18 | final float scale = context.getResources().getDisplayMetrics().density; 19 | return (int) (pxValue / scale + 0.5f); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 10 | 11 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 14 | 15 | 16 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /assets/highlight.css: -------------------------------------------------------------------------------- 1 | /* Style definition file generated by highlight 3.23, http://www.andre-simon.de/ */ 2 | 3 | /* Highlighting theme: vim molokai */ 4 | 5 | body.hl { background-color:#272822; } 6 | pre.hl { color:#f8f8f2; background-color:#272822; font-size:10pt; font-family:'Courier New',monospace;} 7 | .hl.num { color:#ae81ff; } 8 | .hl.esc { color:#66d9ef; font-style:italic; } 9 | .hl.str { color:#e6db74; } 10 | .hl.pps { color:#e6db74; } 11 | .hl.slc { color:#75715e; } 12 | .hl.com { color:#75715e; } 13 | .hl.ppc { color:#defa25; } 14 | .hl.opt { color:#f8f8f2; } 15 | .hl.ipl { color:#66d9ef; font-style:italic; } 16 | .hl.lin { color:#75715e; } 17 | .hl.kwa { color:#f92672; font-weight:bold; } 18 | .hl.kwb { color:#66d9ef; } 19 | .hl.kwc { color:#95f067; } 20 | .hl.kwd { color:#25faac; } 21 | 22 | -------------------------------------------------------------------------------- /proguard-project.txt: -------------------------------------------------------------------------------- 1 | # To enable ProGuard in your project, edit project.properties 2 | # to define the proguard.config property as described in that file. 3 | # 4 | # Add project specific ProGuard rules here. 5 | # By default, the flags in this file are appended to flags specified 6 | # in ${sdk.dir}/tools/proguard/proguard-android.txt 7 | # You can edit the include path and order by changing the ProGuard 8 | # include property in project.properties. 9 | # 10 | # For more details, see 11 | # http://developer.android.com/guide/developing/tools/proguard.html 12 | 13 | # Add any project specific keep options here: 14 | 15 | # If your project uses WebView with JS, uncomment the following 16 | # and specify the fully qualified class name to the JavaScript interface 17 | # class: 18 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 19 | # public *; 20 | #} 21 | -------------------------------------------------------------------------------- /jni/lua/linit.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: linit.c,v 1.14.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Initialization of libraries for lua.c 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | 8 | #define linit_c 9 | #define LUA_LIB 10 | 11 | #include "lua.h" 12 | 13 | #include "lualib.h" 14 | #include "lauxlib.h" 15 | 16 | 17 | static const luaL_Reg lualibs[] = { 18 | {"", luaopen_base}, 19 | {LUA_LOADLIBNAME, luaopen_package}, 20 | {LUA_TABLIBNAME, luaopen_table}, 21 | {LUA_IOLIBNAME, luaopen_io}, 22 | {LUA_OSLIBNAME, luaopen_os}, 23 | {LUA_STRLIBNAME, luaopen_string}, 24 | {LUA_MATHLIBNAME, luaopen_math}, 25 | {LUA_DBLIBNAME, luaopen_debug}, 26 | {NULL, NULL} 27 | }; 28 | 29 | 30 | LUALIB_API void luaL_openlibs (lua_State *L) { 31 | const luaL_Reg *lib = lualibs; 32 | for (; lib->func; lib++) { 33 | lua_pushcfunction(L, lib->func); 34 | lua_pushstring(L, lib->name); 35 | lua_call(L, 1, 0); 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /jni/lua/lstring.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lstring.h,v 1.43.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** String table (keep all strings handled by Lua) 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef lstring_h 8 | #define lstring_h 9 | 10 | 11 | #include "lgc.h" 12 | #include "lobject.h" 13 | #include "lstate.h" 14 | 15 | 16 | #define sizestring(s) (sizeof(union TString)+((s)->len+1)*sizeof(char)) 17 | 18 | #define sizeudata(u) (sizeof(union Udata)+(u)->len) 19 | 20 | #define luaS_new(L, s) (luaS_newlstr(L, s, strlen(s))) 21 | #define luaS_newliteral(L, s) (luaS_newlstr(L, "" s, \ 22 | (sizeof(s)/sizeof(char))-1)) 23 | 24 | #define luaS_fix(s) l_setbit((s)->tsv.marked, FIXEDBIT) 25 | 26 | LUAI_FUNC void luaS_resize (lua_State *L, int newsize); 27 | LUAI_FUNC Udata *luaS_newudata (lua_State *L, size_t s, Table *e); 28 | LUAI_FUNC TString *luaS_newlstr (lua_State *L, const char *str, size_t l); 29 | 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 10 | 11 | 17 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /jni/lua/lundump.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lundump.h,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** load precompiled Lua chunks 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef lundump_h 8 | #define lundump_h 9 | 10 | #include "lobject.h" 11 | #include "lzio.h" 12 | 13 | /* load one chunk; from lundump.c */ 14 | LUAI_FUNC Proto* luaU_undump (lua_State* L, ZIO* Z, Mbuffer* buff, const char* name); 15 | 16 | /* make header; from lundump.c */ 17 | LUAI_FUNC void luaU_header (char* h); 18 | 19 | /* dump one chunk; from ldump.c */ 20 | LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip); 21 | 22 | #ifdef luac_c 23 | /* print one chunk; from print.c */ 24 | LUAI_FUNC void luaU_print (const Proto* f, int full); 25 | #endif 26 | 27 | /* for header of binary files -- this is Lua 5.1 */ 28 | #define LUAC_VERSION 0x51 29 | 30 | /* for header of binary files -- this is the official format */ 31 | #define LUAC_FORMAT 0 32 | 33 | /* size of header of binary files */ 34 | #define LUAC_HEADERSIZE 12 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /src/org/evilbinary/managers/Configure.java: -------------------------------------------------------------------------------- 1 | package org.evilbinary.managers; 2 | 3 | import org.evilbinary.utils.DirUtil; 4 | 5 | import android.content.Context; 6 | import android.graphics.Color; 7 | 8 | 9 | public class Configure { 10 | public Settings mSettings; 11 | public String mLineSeparator ; 12 | public String mDataPath; 13 | public String mHighlightCss; 14 | public String mLanguage; 15 | public String mTheme; 16 | public String mEncoding; 17 | public int mFontSize; 18 | public String mFont; 19 | public String mPlugin; 20 | public int mLineNumberColor; 21 | public int mLineHighlightColor; 22 | public int mLineHighlightAlpha; 23 | 24 | public Configure(Context context){ 25 | mSettings=new Settings(); 26 | mLineSeparator= System.getProperty("line.separator"); 27 | mDataPath=DirUtil.getFilesDir(context); 28 | mHighlightCss="highlight.css"; 29 | mLanguage="c"; 30 | mTheme="molokai"; 31 | mFontSize=mSettings.TEXT_SIZE; 32 | mLineHighlightColor=Color.BLACK; 33 | mLineNumberColor=Color.GRAY; 34 | mLineHighlightAlpha=48; 35 | 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /jni/lua/ldebug.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: ldebug.h,v 2.3.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Auxiliary functions from Debug Interface module 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef ldebug_h 8 | #define ldebug_h 9 | 10 | 11 | #include "lstate.h" 12 | 13 | 14 | #define pcRel(pc, p) (cast(int, (pc) - (p)->code) - 1) 15 | 16 | #define getline(f,pc) (((f)->lineinfo) ? (f)->lineinfo[pc] : 0) 17 | 18 | #define resethookcount(L) (L->hookcount = L->basehookcount) 19 | 20 | 21 | LUAI_FUNC void luaG_typeerror (lua_State *L, const TValue *o, 22 | const char *opname); 23 | LUAI_FUNC void luaG_concaterror (lua_State *L, StkId p1, StkId p2); 24 | LUAI_FUNC void luaG_aritherror (lua_State *L, const TValue *p1, 25 | const TValue *p2); 26 | LUAI_FUNC int luaG_ordererror (lua_State *L, const TValue *p1, 27 | const TValue *p2); 28 | LUAI_FUNC void luaG_runerror (lua_State *L, const char *fmt, ...); 29 | LUAI_FUNC void luaG_errormsg (lua_State *L); 30 | LUAI_FUNC int luaG_checkcode (const Proto *pt); 31 | LUAI_FUNC int luaG_checkopenop (Instruction i); 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /src/org/evilbinary/highliter/spans/ImageClickableSpan.java: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 evilbinary. 2 | * rootdebug@163.com 3 | This program is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation, either version 3 of the License, or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program. If not, see . 15 | */ 16 | 17 | package org.evilbinary.highliter.spans; 18 | 19 | import android.text.style.ClickableSpan; 20 | import android.view.View; 21 | 22 | public class ImageClickableSpan extends ClickableSpan { 23 | private String imageUrl; 24 | 25 | public void setImageUrl(String imageUrl) { 26 | this.imageUrl = imageUrl; 27 | } 28 | 29 | @Override 30 | public void onClick(View view) { 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/org/evilbinary/highliter/spans/VideoClickableSpan.java: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 evilbinary. 2 | * rootdebug@163.com 3 | This program is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation, either version 3 of the License, or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program. If not, see . 15 | */ 16 | 17 | package org.evilbinary.highliter.spans; 18 | import android.text.style.ClickableSpan; 19 | import android.view.View; 20 | 21 | 22 | public class VideoClickableSpan extends ClickableSpan { 23 | private String videoUrl; 24 | 25 | public void setVideoUrl(String videoUrl) { 26 | this.videoUrl = videoUrl; 27 | } 28 | 29 | @Override 30 | public void onClick(View widget) { 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /jni/highlight/gui-qt/highlight.pro: -------------------------------------------------------------------------------- 1 | # ------------------------------------------------- 2 | # Project created by QtCreator 2009-03-03T22:45:06 3 | # ------------------------------------------------- 4 | TARGET = highlight-gui 5 | TEMPLATE = app 6 | INCLUDEPATH += . \ 7 | ../include 8 | win32:CONFIG += static 9 | 10 | PRECOMPILED_HEADER = precomp.h 11 | DEFINES += O2 QT 12 | win32:DESTDIR = ../../ 13 | unix:DESTDIR = ../ 14 | SOURCES += main.cpp \ 15 | mainwindow.cpp \ 16 | io_report.cpp \ 17 | showtextfile.cpp 18 | HEADERS += mainwindow.h \ 19 | precomp.h \ 20 | io_report.h \ 21 | showtextfile.h 22 | FORMS += mainwindow.ui \ 23 | io_report.ui \ 24 | showtextfile.ui 25 | RESOURCES = highlight-gui.qrc 26 | TRANSLATIONS = highlight_de_DE.ts highlight_es_ES.ts highlight_cs_CZ.ts highlight_zh_CN.ts 27 | 28 | win32:RC_FILE = highlight-gui.rc 29 | win32:LIBS += -L../.. -lhighlight 30 | unix:LIBS += -L.. -lhighlight 31 | 32 | # If Lua 5.2 is not default on your system yet you have to omit 5.1 here: 33 | unix { 34 | LIBS += -llua 35 | CONFIG += link_pkgconfig 36 | PKGCONFIG += lua 37 | } 38 | 39 | win32:QMAKE_POST_LINK = f:/upx/upx.exe --best ../../highlight-gui.exe 40 | 41 | -------------------------------------------------------------------------------- /jni/lua/ltm.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: ltm.h,v 2.6.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Tag methods 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef ltm_h 8 | #define ltm_h 9 | 10 | 11 | #include "lobject.h" 12 | 13 | 14 | /* 15 | * WARNING: if you change the order of this enumeration, 16 | * grep "ORDER TM" 17 | */ 18 | typedef enum { 19 | TM_INDEX, 20 | TM_NEWINDEX, 21 | TM_GC, 22 | TM_MODE, 23 | TM_EQ, /* last tag method with `fast' access */ 24 | TM_ADD, 25 | TM_SUB, 26 | TM_MUL, 27 | TM_DIV, 28 | TM_MOD, 29 | TM_POW, 30 | TM_UNM, 31 | TM_LEN, 32 | TM_LT, 33 | TM_LE, 34 | TM_CONCAT, 35 | TM_CALL, 36 | TM_N /* number of elements in the enum */ 37 | } TMS; 38 | 39 | 40 | 41 | #define gfasttm(g,et,e) ((et) == NULL ? NULL : \ 42 | ((et)->flags & (1u<<(e))) ? NULL : luaT_gettm(et, e, (g)->tmname[e])) 43 | 44 | #define fasttm(l,et,e) gfasttm(G(l), et, e) 45 | 46 | LUAI_DATA const char *const luaT_typenames[]; 47 | 48 | 49 | LUAI_FUNC const TValue *luaT_gettm (Table *events, TMS event, TString *ename); 50 | LUAI_FUNC const TValue *luaT_gettmbyobj (lua_State *L, const TValue *o, 51 | TMS event); 52 | LUAI_FUNC void luaT_init (lua_State *L); 53 | 54 | #endif 55 | -------------------------------------------------------------------------------- /res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HighliterTextEditor 5 | Hello world! 6 | Settings 7 | 正在解压 8 | 解压结束 9 | 解压失败 10 | 11 | 版本 12 | 作者 13 | Email 14 | 主页 15 | 授权 16 | QQ群 17 | 版本所有 (C) 2015-2020 evilbinary\n 18 | CL编译器为自由软件;您可依据自由软件基金会所发表的GNU通用公共授权条款规定,就本程序再为散布与/或修改;无论您依据的是本授权的第三版或(您自行选择的)任一日后发行的版本。 19 | CL编译器是基于使用目的而加以散布,然而不负任何担保责任;亦无对适售性或特定目的适用性所为的默示性担保。详情请参照GNU通用公共授权 http://www.gnu.org/licenses。 20 | 关于 21 | BSD依依鸭 22 | Lisp兴趣小组 239401374 23 | rootntsd@gmail.com 24 | http://evilbinary.org/ 25 | 26 | -------------------------------------------------------------------------------- /jni/lua/lualib.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lualib.h,v 1.36.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Lua standard libraries 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | 8 | #ifndef lualib_h 9 | #define lualib_h 10 | 11 | #include "lua.h" 12 | 13 | 14 | /* Key to file-handle type */ 15 | #define LUA_FILEHANDLE "FILE*" 16 | 17 | 18 | #define LUA_COLIBNAME "coroutine" 19 | LUALIB_API int (luaopen_base) (lua_State *L); 20 | 21 | #define LUA_TABLIBNAME "table" 22 | LUALIB_API int (luaopen_table) (lua_State *L); 23 | 24 | #define LUA_IOLIBNAME "io" 25 | LUALIB_API int (luaopen_io) (lua_State *L); 26 | 27 | #define LUA_OSLIBNAME "os" 28 | LUALIB_API int (luaopen_os) (lua_State *L); 29 | 30 | #define LUA_STRLIBNAME "string" 31 | LUALIB_API int (luaopen_string) (lua_State *L); 32 | 33 | #define LUA_MATHLIBNAME "math" 34 | LUALIB_API int (luaopen_math) (lua_State *L); 35 | 36 | #define LUA_DBLIBNAME "debug" 37 | LUALIB_API int (luaopen_debug) (lua_State *L); 38 | 39 | #define LUA_LOADLIBNAME "package" 40 | LUALIB_API int (luaopen_package) (lua_State *L); 41 | 42 | 43 | /* open all previous libraries */ 44 | LUALIB_API void (luaL_openlibs) (lua_State *L); 45 | 46 | 47 | 48 | #ifndef lua_assert 49 | #define lua_assert(x) ((void)0) 50 | #endif 51 | 52 | 53 | #endif 54 | -------------------------------------------------------------------------------- /jni/lua/lfunc.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lfunc.h,v 2.4.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Auxiliary functions to manipulate prototypes and closures 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef lfunc_h 8 | #define lfunc_h 9 | 10 | 11 | #include "lobject.h" 12 | 13 | 14 | #define sizeCclosure(n) (cast(int, sizeof(CClosure)) + \ 15 | cast(int, sizeof(TValue)*((n)-1))) 16 | 17 | #define sizeLclosure(n) (cast(int, sizeof(LClosure)) + \ 18 | cast(int, sizeof(TValue *)*((n)-1))) 19 | 20 | 21 | LUAI_FUNC Proto *luaF_newproto (lua_State *L); 22 | LUAI_FUNC Closure *luaF_newCclosure (lua_State *L, int nelems, Table *e); 23 | LUAI_FUNC Closure *luaF_newLclosure (lua_State *L, int nelems, Table *e); 24 | LUAI_FUNC UpVal *luaF_newupval (lua_State *L); 25 | LUAI_FUNC UpVal *luaF_findupval (lua_State *L, StkId level); 26 | LUAI_FUNC void luaF_close (lua_State *L, StkId level); 27 | LUAI_FUNC void luaF_freeproto (lua_State *L, Proto *f); 28 | LUAI_FUNC void luaF_freeclosure (lua_State *L, Closure *c); 29 | LUAI_FUNC void luaF_freeupval (lua_State *L, UpVal *uv); 30 | LUAI_FUNC const char *luaF_getlocalname (const Proto *func, int local_number, 31 | int pc); 32 | 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /jni/lua/lvm.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lvm.h,v 2.5.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Lua virtual machine 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef lvm_h 8 | #define lvm_h 9 | 10 | 11 | #include "ldo.h" 12 | #include "lobject.h" 13 | #include "ltm.h" 14 | 15 | 16 | #define tostring(L,o) ((ttype(o) == LUA_TSTRING) || (luaV_tostring(L, o))) 17 | 18 | #define tonumber(o,n) (ttype(o) == LUA_TNUMBER || \ 19 | (((o) = luaV_tonumber(o,n)) != NULL)) 20 | 21 | #define equalobj(L,o1,o2) \ 22 | (ttype(o1) == ttype(o2) && luaV_equalval(L, o1, o2)) 23 | 24 | 25 | LUAI_FUNC int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r); 26 | LUAI_FUNC int luaV_equalval (lua_State *L, const TValue *t1, const TValue *t2); 27 | LUAI_FUNC const TValue *luaV_tonumber (const TValue *obj, TValue *n); 28 | LUAI_FUNC int luaV_tostring (lua_State *L, StkId obj); 29 | LUAI_FUNC void luaV_gettable (lua_State *L, const TValue *t, TValue *key, 30 | StkId val); 31 | LUAI_FUNC void luaV_settable (lua_State *L, const TValue *t, TValue *key, 32 | StkId val); 33 | LUAI_FUNC void luaV_execute (lua_State *L, int nexeccalls); 34 | LUAI_FUNC void luaV_concat (lua_State *L, int total, int last); 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /src/org/evilbinary/highliter/spans/SafeURLSpan.java: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 evilbinary. 2 | * rootdebug@163.com 3 | This program is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation, either version 3 of the License, or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program. If not, see . 15 | */ 16 | 17 | package org.evilbinary.highliter.spans; 18 | 19 | import android.content.ActivityNotFoundException; 20 | import android.text.style.URLSpan; 21 | import android.view.View; 22 | 23 | public class SafeURLSpan extends URLSpan { 24 | 25 | public SafeURLSpan(String url) { 26 | super(url); 27 | } 28 | 29 | @Override 30 | public void onClick(View widget) { 31 | try { 32 | super.onClick(widget); 33 | } catch (ActivityNotFoundException exc) { 34 | 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /jni/lua/ltable.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: ltable.h,v 2.10.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Lua tables (hash) 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef ltable_h 8 | #define ltable_h 9 | 10 | #include "lobject.h" 11 | 12 | 13 | #define gnode(t,i) (&(t)->node[i]) 14 | #define gkey(n) (&(n)->i_key.nk) 15 | #define gval(n) (&(n)->i_val) 16 | #define gnext(n) ((n)->i_key.nk.next) 17 | 18 | #define key2tval(n) (&(n)->i_key.tvk) 19 | 20 | 21 | LUAI_FUNC const TValue *luaH_getnum (Table *t, int key); 22 | LUAI_FUNC TValue *luaH_setnum (lua_State *L, Table *t, int key); 23 | LUAI_FUNC const TValue *luaH_getstr (Table *t, TString *key); 24 | LUAI_FUNC TValue *luaH_setstr (lua_State *L, Table *t, TString *key); 25 | LUAI_FUNC const TValue *luaH_get (Table *t, const TValue *key); 26 | LUAI_FUNC TValue *luaH_set (lua_State *L, Table *t, const TValue *key); 27 | LUAI_FUNC Table *luaH_new (lua_State *L, int narray, int lnhash); 28 | LUAI_FUNC void luaH_resizearray (lua_State *L, Table *t, int nasize); 29 | LUAI_FUNC void luaH_free (lua_State *L, Table *t); 30 | LUAI_FUNC int luaH_next (lua_State *L, Table *t, StkId key); 31 | LUAI_FUNC int luaH_getn (Table *t); 32 | 33 | 34 | #if defined(LUA_DEBUG) 35 | LUAI_FUNC Node *luaH_mainposition (const Table *t, const TValue *key); 36 | LUAI_FUNC int luaH_isdummy (Node *n); 37 | #endif 38 | 39 | 40 | #endif 41 | -------------------------------------------------------------------------------- /jni/highlight/include/version.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | version.h - description 3 | ------------------- 4 | begin : Mon March 3 2003 5 | copyright : (C) 2003-2015 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef VERSION_H 29 | #define VERSION_H 30 | 31 | #define HIGHLIGHT_VERSION "3.23" 32 | 33 | #define HIGHLIGHT_URL "http://www.andre-simon.de/" 34 | #define HIGHLIGHT_EMAIL "andre.simon1@gmx.de" 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /jni/highlight/cli/help.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | help.h - description 3 | ------------------- 4 | begin : Die Apr 23 2002 5 | copyright : (C) 2002-2007 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef HELP_H 29 | #define HELP_H 30 | 31 | #include 32 | 33 | ///Contains methods for printing help messages 34 | 35 | namespace Help 36 | { 37 | /** print help message to stdout 38 | */ 39 | void printHelp(); 40 | } 41 | 42 | #endif 43 | -------------------------------------------------------------------------------- /jni/highlight/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | include $(CLEAR_VARS) 4 | 5 | LOCAL_MODULE := highlight 6 | 7 | BOOST_VERSION :=1_53_0 8 | BOOST_VERSION2 :=1_53 9 | 10 | MY_LIB_PATH :=$(LOCAL_PATH)/../../../lib 11 | BOOST_INCLUDE_PATH :=$(MY_LIB_PATH)/boost_$(BOOST_VERSION)/include 12 | BOOST_LIB_PATH :=$(MY_LIB_PATH)/boost_$(BOOST_VERSION)/armeabi/lib 13 | 14 | LUA_INCLUDE_PATH :=$(LOCAL_PATH)/../lua 15 | 16 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/include \ 17 | $(BOOST_INCLUDE_PATH) \ 18 | $(LUA_INCLUDE_PATH) \ 19 | $(LOCAL_PATH)/android/ \ 20 | $(LOCAL_PATH)/cli/ \ 21 | 22 | LOCAL_SRC_FILES := $(subst $(LOCAL_PATH)/,, \ 23 | $(wildcard $(LOCAL_PATH)/core/*.cpp) \ 24 | $(wildcard $(LOCAL_PATH)/core/astyle/*.cpp) \ 25 | $(wildcard $(LOCAL_PATH)/core/Diluculum/*.cpp) \ 26 | $(wildcard $(LOCAL_PATH)/android/*.cpp) \ 27 | $(wildcard $(LOCAL_PATH)/cli/*.cpp) \ 28 | $(wildcard $(LOCAL_PATH)/cli/*.cc) \ 29 | $(wildcard $(LOCAL_PATH)/android/*.cc) ) \ 30 | 31 | LOCAL_LDLIBS += -L$(BOOST_LIB_PATH) \ 32 | -lboost_system-gcc-mt-$(BOOST_VERSION2) \ 33 | -lboost_thread-gcc-mt-$(BOOST_VERSION2) \ 34 | 35 | LOCAL_SHARED_LIBRARIES := lua 36 | #LOCAL_STATIC_LIBRARIES := lua 37 | 38 | LOCAL_LDLIBS := -llog 39 | LOCAL_CFLAGS += 40 | LOCAL_CPPFLAGS := -std=c++11 -fpermissive -fexceptions -g -DANDROID 41 | 42 | 43 | LOCAL_ARM_MODE := arm 44 | 45 | include $(BUILD_SHARED_LIBRARY) 46 | #include $(BUILD_EXECUTABLE) 47 | -------------------------------------------------------------------------------- /jni/highlight/include/platform_fs.h: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | This file is part of Highlight. 4 | 5 | Highlight is free software: you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation, either version 3 of the License, or 8 | (at your option) any later version. 9 | 10 | Highlight is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with Highlight. If not, see . 17 | */ 18 | 19 | #ifndef PLATFORM_FS__H__INCLUDED 20 | #define PLATFORM_FS__H__INCLUDED 21 | 22 | #include 23 | #include 24 | #include 25 | 26 | namespace Platform 27 | { 28 | extern const char pathSeparator; 29 | 30 | std::string getAppPath(); 31 | 32 | std::string getHomePath(); 33 | 34 | /** \param fileList Vector where found entries will be stored 35 | \param wildcard Directory path and wildcard 36 | \param recursiveSearch Test if directory should be searched recursively */ 37 | bool getDirectoryEntries ( std::vector &fileList, 38 | std::string wildcard, 39 | bool recursiveSearch=false ); 40 | 41 | void getFileNames ( const std::string &directory,const std::string &wildcard, 42 | std::vector &fileName ); 43 | 44 | int wildcmp ( const char *wild, const char *data ); 45 | 46 | bool fileExists(const std::string &fName); 47 | } 48 | #endif 49 | 50 | -------------------------------------------------------------------------------- /jni/lua/lmem.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lmem.h,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Interface to Memory Manager 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef lmem_h 8 | #define lmem_h 9 | 10 | 11 | #include 12 | 13 | #include "llimits.h" 14 | #include "lua.h" 15 | 16 | #define MEMERRMSG "not enough memory" 17 | 18 | 19 | #define luaM_reallocv(L,b,on,n,e) \ 20 | ((cast(size_t, (n)+1) <= MAX_SIZET/(e)) ? /* +1 to avoid warnings */ \ 21 | luaM_realloc_(L, (b), (on)*(e), (n)*(e)) : \ 22 | luaM_toobig(L)) 23 | 24 | #define luaM_freemem(L, b, s) luaM_realloc_(L, (b), (s), 0) 25 | #define luaM_free(L, b) luaM_realloc_(L, (b), sizeof(*(b)), 0) 26 | #define luaM_freearray(L, b, n, t) luaM_reallocv(L, (b), n, 0, sizeof(t)) 27 | 28 | #define luaM_malloc(L,t) luaM_realloc_(L, NULL, 0, (t)) 29 | #define luaM_new(L,t) cast(t *, luaM_malloc(L, sizeof(t))) 30 | #define luaM_newvector(L,n,t) \ 31 | cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t))) 32 | 33 | #define luaM_growvector(L,v,nelems,size,t,limit,e) \ 34 | if ((nelems)+1 > (size)) \ 35 | ((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e))) 36 | 37 | #define luaM_reallocvector(L, v,oldn,n,t) \ 38 | ((v)=cast(t *, luaM_reallocv(L, v, oldn, n, sizeof(t)))) 39 | 40 | 41 | LUAI_FUNC void *luaM_realloc_ (lua_State *L, void *block, size_t oldsize, 42 | size_t size); 43 | LUAI_FUNC void *luaM_toobig (lua_State *L); 44 | LUAI_FUNC void *luaM_growaux_ (lua_State *L, void *block, int *size, 45 | size_t size_elem, int limit, 46 | const char *errormsg); 47 | 48 | #endif 49 | 50 | -------------------------------------------------------------------------------- /jni/lua/lzio.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lzio.h,v 1.21.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Buffered streams 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | 8 | #ifndef lzio_h 9 | #define lzio_h 10 | 11 | #include "lua.h" 12 | 13 | #include "lmem.h" 14 | 15 | 16 | #define EOZ (-1) /* end of stream */ 17 | 18 | typedef struct Zio ZIO; 19 | 20 | #define char2int(c) cast(int, cast(unsigned char, (c))) 21 | 22 | #define zgetc(z) (((z)->n--)>0 ? char2int(*(z)->p++) : luaZ_fill(z)) 23 | 24 | typedef struct Mbuffer { 25 | char *buffer; 26 | size_t n; 27 | size_t buffsize; 28 | } Mbuffer; 29 | 30 | #define luaZ_initbuffer(L, buff) ((buff)->buffer = NULL, (buff)->buffsize = 0) 31 | 32 | #define luaZ_buffer(buff) ((buff)->buffer) 33 | #define luaZ_sizebuffer(buff) ((buff)->buffsize) 34 | #define luaZ_bufflen(buff) ((buff)->n) 35 | 36 | #define luaZ_resetbuffer(buff) ((buff)->n = 0) 37 | 38 | 39 | #define luaZ_resizebuffer(L, buff, size) \ 40 | (luaM_reallocvector(L, (buff)->buffer, (buff)->buffsize, size, char), \ 41 | (buff)->buffsize = size) 42 | 43 | #define luaZ_freebuffer(L, buff) luaZ_resizebuffer(L, buff, 0) 44 | 45 | 46 | LUAI_FUNC char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n); 47 | LUAI_FUNC void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader, 48 | void *data); 49 | LUAI_FUNC size_t luaZ_read (ZIO* z, void* b, size_t n); /* read next n bytes */ 50 | LUAI_FUNC int luaZ_lookahead (ZIO *z); 51 | 52 | 53 | 54 | /* --------- Private Part ------------------ */ 55 | 56 | struct Zio { 57 | size_t n; /* bytes still unread */ 58 | const char *p; /* current position in buffer */ 59 | lua_Reader reader; 60 | void* data; /* additional data */ 61 | lua_State *L; /* Lua state (for reader) */ 62 | }; 63 | 64 | 65 | LUAI_FUNC int luaZ_fill (ZIO *z); 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /src/org/evilbinary/utils/IoUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2010 Google Inc. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not 5 | * use this file except in compliance with the License. You may obtain a copy of 6 | * the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 12 | * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 13 | * License for the specific language governing permissions and limitations under 14 | * the License. 15 | */ 16 | 17 | package org.evilbinary.utils; 18 | 19 | import java.io.BufferedInputStream; 20 | import java.io.BufferedOutputStream; 21 | import java.io.IOException; 22 | import java.io.InputStream; 23 | import java.io.OutputStream; 24 | 25 | public class IoUtils { 26 | private static final int BUFFER_SIZE = 1024 * 8; 27 | 28 | private IoUtils() { 29 | // Utility class. 30 | } 31 | 32 | public static int copy(InputStream input, OutputStream output) throws Exception, IOException { 33 | byte[] buffer = new byte[BUFFER_SIZE]; 34 | 35 | BufferedInputStream in = new BufferedInputStream(input, BUFFER_SIZE); 36 | BufferedOutputStream out = new BufferedOutputStream(output, BUFFER_SIZE); 37 | int count = 0, n = 0; 38 | try { 39 | while ((n = in.read(buffer, 0, BUFFER_SIZE)) != -1) { 40 | out.write(buffer, 0, n); 41 | count += n; 42 | } 43 | out.flush(); 44 | } finally { 45 | try { 46 | out.close(); 47 | } catch (IOException e) { 48 | Logger.e(e); 49 | } 50 | try { 51 | in.close(); 52 | } catch (IOException e) { 53 | Logger.e( e); 54 | } 55 | } 56 | return count; 57 | } 58 | 59 | } 60 | -------------------------------------------------------------------------------- /jni/highlight/gui-qt/showtextfile.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | showtextfile.h 3 | ------------------- 4 | begin : Mo 16.03.2009 5 | copyright : (C) 2009 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | /* 10 | This file is part of Highlight. 11 | 12 | Highlight is free software: you can redistribute it and/or modify 13 | it under the terms of the GNU General Public License as published by 14 | the Free Software Foundation, either version 3 of the License, or 15 | (at your option) any later version. 16 | 17 | Highlight is distributed in the hope that it will be useful, 18 | but WITHOUT ANY WARRANTY; without even the implied warranty of 19 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 | GNU General Public License for more details. 21 | 22 | You should have received a copy of the GNU General Public License 23 | along with Highlight. If not, see . 24 | */ 25 | 26 | #ifndef SHOWTEXTFILE_H 27 | #define SHOWTEXTFILE_H 28 | 29 | #include 30 | 31 | #if (QT_VERSION < QT_VERSION_CHECK(5,0,0)) 32 | #include 33 | #else 34 | #include 35 | #endif 36 | 37 | namespace Ui { 38 | class ShowTextFile; 39 | } 40 | 41 | class ShowTextFile : public QDialog { 42 | Q_OBJECT 43 | Q_DISABLE_COPY(ShowTextFile) 44 | public: 45 | explicit ShowTextFile(QWidget *parent = 0); 46 | virtual ~ShowTextFile(); 47 | bool setFileName(const QString& fileName); 48 | 49 | protected: 50 | virtual void changeEvent(QEvent *e); 51 | 52 | private: 53 | Ui::ShowTextFile *m_ui; 54 | 55 | private slots: 56 | void on_pushButton_clicked(); 57 | }; 58 | 59 | #endif // SHOWTEXTFILE_H 60 | -------------------------------------------------------------------------------- /jni/highlight/include/xhtmlgenerator.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | xhtmlgenerator.h - description 3 | ------------------- 4 | begin : Mo Jun 21 2004 5 | copyright : (C) 2004 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | 29 | #ifndef XHTMLGENERATOR_H 30 | #define XHTMLGENERATOR_H 31 | 32 | #include "htmlgenerator.h" 33 | 34 | namespace highlight 35 | { 36 | 37 | /** 38 | \brief This class generates XHTML. 39 | 40 | It contains information about the resulting document structure (document 41 | header and footer), the colour system, white space handling and text 42 | formatting attributes. 43 | 44 | * @author Andre Simon 45 | */ 46 | 47 | 48 | class XHtmlGenerator : public highlight::HtmlGenerator 49 | { 50 | public: 51 | 52 | XHtmlGenerator(); 53 | 54 | ~XHtmlGenerator() {}; 55 | 56 | private: 57 | 58 | /** prints document header 59 | */ 60 | string getHeader(); 61 | 62 | string getHeaderStart ( const string &title ); 63 | 64 | }; 65 | 66 | } 67 | 68 | #endif 69 | -------------------------------------------------------------------------------- /jni/lua/ltm.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: ltm.c,v 2.8.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Tag methods 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | 8 | #include 9 | 10 | #define ltm_c 11 | #define LUA_CORE 12 | 13 | #include "lua.h" 14 | 15 | #include "lobject.h" 16 | #include "lstate.h" 17 | #include "lstring.h" 18 | #include "ltable.h" 19 | #include "ltm.h" 20 | 21 | 22 | 23 | const char *const luaT_typenames[] = { 24 | "nil", "boolean", "userdata", "number", 25 | "string", "table", "function", "userdata", "thread", 26 | "proto", "upval" 27 | }; 28 | 29 | 30 | void luaT_init (lua_State *L) { 31 | static const char *const luaT_eventname[] = { /* ORDER TM */ 32 | "__index", "__newindex", 33 | "__gc", "__mode", "__eq", 34 | "__add", "__sub", "__mul", "__div", "__mod", 35 | "__pow", "__unm", "__len", "__lt", "__le", 36 | "__concat", "__call" 37 | }; 38 | int i; 39 | for (i=0; itmname[i] = luaS_new(L, luaT_eventname[i]); 41 | luaS_fix(G(L)->tmname[i]); /* never collect these names */ 42 | } 43 | } 44 | 45 | 46 | /* 47 | ** function to be used with macro "fasttm": optimized for absence of 48 | ** tag methods 49 | */ 50 | const TValue *luaT_gettm (Table *events, TMS event, TString *ename) { 51 | const TValue *tm = luaH_getstr(events, ename); 52 | lua_assert(event <= TM_EQ); 53 | if (ttisnil(tm)) { /* no tag method? */ 54 | events->flags |= cast_byte(1u<metatable; 66 | break; 67 | case LUA_TUSERDATA: 68 | mt = uvalue(o)->metatable; 69 | break; 70 | default: 71 | mt = G(L)->mt[ttype(o)]; 72 | } 73 | return (mt ? luaH_getstr(mt, G(L)->tmname[event]) : luaO_nilobject); 74 | } 75 | 76 | -------------------------------------------------------------------------------- /jni/lua/lzio.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lzio.c,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** a generic input stream interface 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | 8 | #include 9 | 10 | #define lzio_c 11 | #define LUA_CORE 12 | 13 | #include "lua.h" 14 | 15 | #include "llimits.h" 16 | #include "lmem.h" 17 | #include "lstate.h" 18 | #include "lzio.h" 19 | 20 | 21 | int luaZ_fill (ZIO *z) { 22 | size_t size; 23 | lua_State *L = z->L; 24 | const char *buff; 25 | lua_unlock(L); 26 | buff = z->reader(L, z->data, &size); 27 | lua_lock(L); 28 | if (buff == NULL || size == 0) return EOZ; 29 | z->n = size - 1; 30 | z->p = buff; 31 | return char2int(*(z->p++)); 32 | } 33 | 34 | 35 | int luaZ_lookahead (ZIO *z) { 36 | if (z->n == 0) { 37 | if (luaZ_fill(z) == EOZ) 38 | return EOZ; 39 | else { 40 | z->n++; /* luaZ_fill removed first byte; put back it */ 41 | z->p--; 42 | } 43 | } 44 | return char2int(*z->p); 45 | } 46 | 47 | 48 | void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader, void *data) { 49 | z->L = L; 50 | z->reader = reader; 51 | z->data = data; 52 | z->n = 0; 53 | z->p = NULL; 54 | } 55 | 56 | 57 | /* --------------------------------------------------------------- read --- */ 58 | size_t luaZ_read (ZIO *z, void *b, size_t n) { 59 | while (n) { 60 | size_t m; 61 | if (luaZ_lookahead(z) == EOZ) 62 | return n; /* return number of missing bytes */ 63 | m = (n <= z->n) ? n : z->n; /* min. between n and z->n */ 64 | memcpy(b, z->p, m); 65 | z->n -= m; 66 | z->p += m; 67 | b = (char *)b + m; 68 | n -= m; 69 | } 70 | return 0; 71 | } 72 | 73 | /* ------------------------------------------------------------------------ */ 74 | char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n) { 75 | if (n > buff->buffsize) { 76 | if (n < LUA_MINBUFFER) n = LUA_MINBUFFER; 77 | luaZ_resizebuffer(L, buff, n); 78 | } 79 | return buff->buffer; 80 | } 81 | 82 | 83 | -------------------------------------------------------------------------------- /jni/highlight/gui-qt/io_report.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | io_report.h 3 | ------------------- 4 | begin : Mo 16.03.2009 5 | copyright : (C) 2009 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | /* 10 | This file is part of Highlight. 11 | 12 | Highlight is free software: you can redistribute it and/or modify 13 | it under the terms of the GNU General Public License as published by 14 | the Free Software Foundation, either version 3 of the License, or 15 | (at your option) any later version. 16 | 17 | Highlight is distributed in the hope that it will be useful, 18 | but WITHOUT ANY WARRANTY; without even the implied warranty of 19 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 | GNU General Public License for more details. 21 | 22 | You should have received a copy of the GNU General Public License 23 | along with Highlight. If not, see . 24 | */ 25 | 26 | #ifndef IO_REPORT_H 27 | #define IO_REPORT_H 28 | #include 29 | 30 | #if (QT_VERSION < QT_VERSION_CHECK(5,0,0)) 31 | #include 32 | #else 33 | #include 34 | #endif 35 | 36 | namespace Ui { 37 | class io_report; 38 | } 39 | 40 | class io_report : public QDialog { 41 | Q_OBJECT 42 | Q_DISABLE_COPY(io_report) 43 | public: 44 | explicit io_report(QWidget *parent = 0); 45 | virtual ~io_report(); 46 | 47 | void addInputErrors(QStringList & list); 48 | void addOutputErrors(QStringList & list); 49 | void addReformatErrors(QStringList & list); 50 | 51 | bool removeInputErrorFiles(); 52 | 53 | 54 | protected: 55 | virtual void changeEvent(QEvent *e); 56 | 57 | private: 58 | Ui::io_report *m_ui; 59 | }; 60 | 61 | #endif // IO_REPORT_H 62 | -------------------------------------------------------------------------------- /src/org/evilbinary/utils/Logger.java: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 evilbinary. 2 | * rootdebug@163.com 3 | This program is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation, either version 3 of the License, or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program. If not, see . 15 | */ 16 | 17 | package org.evilbinary.utils; 18 | 19 | import java.io.PrintWriter; 20 | import java.io.StringWriter; 21 | 22 | import android.util.*; 23 | 24 | public class Logger { 25 | public static String LOG_TAG="Highlight"; 26 | 27 | public static void v(String info){ 28 | Log.v(LOG_TAG,info); 29 | } 30 | public static void i(String info){ 31 | Log.i(LOG_TAG,info); 32 | } 33 | public static void d(String debug){ 34 | Log.d(LOG_TAG,debug); 35 | } 36 | 37 | public static void w(String warn){ 38 | Log.w(LOG_TAG, warn); 39 | } 40 | public static void e(String error){ 41 | Log.e(LOG_TAG, error); 42 | } 43 | public static void v(String tag,String info){ 44 | Log.v(tag,info); 45 | } 46 | public static void i(String tag,String info){ 47 | Log.i(tag,info); 48 | } 49 | public static void d(String tag,String debug){ 50 | Log.d(tag,debug); 51 | } 52 | public static void w(String tag,String warn){ 53 | Log.w(tag, warn); 54 | } 55 | public static void e(String tag,String error){ 56 | Log.e(tag, error); 57 | } 58 | 59 | public static void e(Throwable ex){ 60 | StringWriter sw = new StringWriter(); 61 | PrintWriter pw = new PrintWriter(sw); 62 | ex.printStackTrace(pw); 63 | pw.flush(); 64 | sw.flush(); 65 | Log.e(LOG_TAG, sw.toString()); 66 | } 67 | 68 | } 69 | -------------------------------------------------------------------------------- /jni/lua/ldo.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: ldo.h,v 2.7.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Stack and Call structure of Lua 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef ldo_h 8 | #define ldo_h 9 | 10 | 11 | #include "lobject.h" 12 | #include "lstate.h" 13 | #include "lzio.h" 14 | 15 | 16 | #define luaD_checkstack(L,n) \ 17 | if ((char *)L->stack_last - (char *)L->top <= (n)*(int)sizeof(TValue)) \ 18 | luaD_growstack(L, n); \ 19 | else condhardstacktests(luaD_reallocstack(L, L->stacksize - EXTRA_STACK - 1)); 20 | 21 | 22 | #define incr_top(L) {luaD_checkstack(L,1); L->top++;} 23 | 24 | #define savestack(L,p) ((char *)(p) - (char *)L->stack) 25 | #define restorestack(L,n) ((TValue *)((char *)L->stack + (n))) 26 | 27 | #define saveci(L,p) ((char *)(p) - (char *)L->base_ci) 28 | #define restoreci(L,n) ((CallInfo *)((char *)L->base_ci + (n))) 29 | 30 | 31 | /* results from luaD_precall */ 32 | #define PCRLUA 0 /* initiated a call to a Lua function */ 33 | #define PCRC 1 /* did a call to a C function */ 34 | #define PCRYIELD 2 /* C funtion yielded */ 35 | 36 | 37 | /* type of protected functions, to be ran by `runprotected' */ 38 | typedef void (*Pfunc) (lua_State *L, void *ud); 39 | 40 | LUAI_FUNC int luaD_protectedparser (lua_State *L, ZIO *z, const char *name); 41 | LUAI_FUNC void luaD_callhook (lua_State *L, int event, int line); 42 | LUAI_FUNC int luaD_precall (lua_State *L, StkId func, int nresults); 43 | LUAI_FUNC void luaD_call (lua_State *L, StkId func, int nResults); 44 | LUAI_FUNC int luaD_pcall (lua_State *L, Pfunc func, void *u, 45 | ptrdiff_t oldtop, ptrdiff_t ef); 46 | LUAI_FUNC int luaD_poscall (lua_State *L, StkId firstResult); 47 | LUAI_FUNC void luaD_reallocCI (lua_State *L, int newsize); 48 | LUAI_FUNC void luaD_reallocstack (lua_State *L, int newsize); 49 | LUAI_FUNC void luaD_growstack (lua_State *L, int n); 50 | 51 | LUAI_FUNC void luaD_throw (lua_State *L, int errcode); 52 | LUAI_FUNC int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud); 53 | 54 | LUAI_FUNC void luaD_seterrorobj (lua_State *L, int errcode, StkId oldtop); 55 | 56 | #endif 57 | 58 | -------------------------------------------------------------------------------- /src/org/evilbinary/highliter/spans/SpanStyle.java: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 evilbinary. 2 | * rootdebug@163.com 3 | This program is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation, either version 3 of the License, or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program. If not, see . 15 | */ 16 | 17 | package org.evilbinary.highliter.spans; 18 | 19 | import java.util.ArrayList; 20 | import java.util.List; 21 | 22 | import org.w3c.dom.css.CSSStyleDeclaration; 23 | 24 | import android.graphics.Color; 25 | import android.text.SpannableStringBuilder; 26 | import android.text.style.CharacterStyle; 27 | import android.text.style.ForegroundColorSpan; 28 | 29 | public class SpanStyle { 30 | private List styles; 31 | private String tag; 32 | private CSSStyleDeclaration cssStyle; 33 | 34 | public SpanStyle() { 35 | styles = new ArrayList(); 36 | } 37 | 38 | public void applyStyle(SpannableStringBuilder text, int start, int end, int flags) { 39 | // System.out.println("styles size:" + styles.size()); 40 | for (int i = 0; i < styles.size(); i++) { 41 | text.setSpan(CharacterStyle.wrap(styles.get(i)), start, end, flags); 42 | // text.setSpan(new ForegroundColorSpan(Color.GREEN), start, end, flags); 43 | } 44 | } 45 | 46 | public int getSize() { 47 | return styles.size(); 48 | } 49 | 50 | public void addStyle(CharacterStyle style) { 51 | styles.add(style); 52 | } 53 | 54 | public void addStyle(CharacterStyle style, String tag, CSSStyleDeclaration cssStyle) { 55 | styles.add(style); 56 | this.tag = tag; 57 | this.cssStyle = cssStyle; 58 | } 59 | 60 | public CSSStyleDeclaration getCssStyle() { 61 | return this.cssStyle; 62 | } 63 | 64 | } 65 | -------------------------------------------------------------------------------- /jni/highlight/gui-qt/io_report.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | io_report.cpp 3 | ------------------- 4 | begin : Mo 16.03.2009 5 | copyright : (C) 2009 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | /* 10 | This file is part of Highlight. 11 | 12 | Highlight is free software: you can redistribute it and/or modify 13 | it under the terms of the GNU General Public License as published by 14 | the Free Software Foundation, either version 3 of the License, or 15 | (at your option) any later version. 16 | 17 | Highlight is distributed in the hope that it will be useful, 18 | but WITHOUT ANY WARRANTY; without even the implied warranty of 19 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 | GNU General Public License for more details. 21 | 22 | You should have received a copy of the GNU General Public License 23 | along with Highlight. If not, see . 24 | */ 25 | 26 | #include "io_report.h" 27 | #include "ui_io_report.h" 28 | 29 | io_report::io_report(QWidget *parent) : 30 | QDialog(parent), 31 | m_ui(new Ui::io_report) 32 | { 33 | m_ui->setupUi(this); 34 | } 35 | 36 | io_report::~io_report() 37 | { 38 | delete m_ui; 39 | } 40 | 41 | void io_report::changeEvent(QEvent *e) 42 | { 43 | switch (e->type()) { 44 | case QEvent::LanguageChange: 45 | m_ui->retranslateUi(this); 46 | break; 47 | default: 48 | break; 49 | } 50 | } 51 | 52 | void io_report::addInputErrors(QStringList & list){ 53 | m_ui->listInputErrors->clear(); 54 | m_ui->listInputErrors->addItems(list); 55 | } 56 | 57 | void io_report::addOutputErrors(QStringList & list){ 58 | m_ui->listOutputErrors->clear(); 59 | m_ui->listOutputErrors->addItems(list); 60 | } 61 | void io_report::addReformatErrors(QStringList & list){ 62 | m_ui->listReformatErrors->clear(); 63 | m_ui->listReformatErrors->addItems(list); 64 | } 65 | 66 | bool io_report::removeInputErrorFiles() { 67 | return m_ui->cbRemoveFiles->isChecked(); 68 | } 69 | -------------------------------------------------------------------------------- /jni/highlight/gui-qt/showtextfile.cpp: -------------------------------------------------------------------------------- 1 | 2 | /*************************************************************************** 3 | showtestfile.cpp 4 | ------------------- 5 | begin : Mo 16.03.2009 6 | copyright : (C) 2009 by Andre Simon 7 | email : andre.simon1@gmx.de 8 | ***************************************************************************/ 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | #include "showtextfile.h" 28 | #include "ui_showtextfile.h" 29 | #include 30 | #include 31 | #include 32 | 33 | ShowTextFile::ShowTextFile(QWidget *parent) : 34 | QDialog(parent), 35 | m_ui(new Ui::ShowTextFile) 36 | { 37 | m_ui->setupUi(this); 38 | } 39 | 40 | ShowTextFile::~ShowTextFile() 41 | { 42 | delete m_ui; 43 | } 44 | 45 | void ShowTextFile::changeEvent(QEvent *e) 46 | { 47 | switch (e->type()) { 48 | case QEvent::LanguageChange: 49 | m_ui->retranslateUi(this); 50 | break; 51 | default: 52 | break; 53 | } 54 | } 55 | 56 | 57 | bool ShowTextFile::setFileName(const QString& fileName){ 58 | #ifndef HL_DOC_DIR 59 | QFile file( QString("%1/%2").arg(QDir::currentPath()).arg( fileName )); 60 | #else 61 | QFile file( QString("%1/%2").arg(HL_DOC_DIR).arg(fileName )); 62 | #endif 63 | if ( file.open( QIODevice::ReadOnly) ) { 64 | QTextStream stream( &file ); 65 | m_ui->textEdit->setText( stream.readAll() ); 66 | m_ui->lbTitle->setText(fileName); 67 | } 68 | return file.exists(); 69 | } 70 | 71 | void ShowTextFile::on_pushButton_clicked() 72 | { 73 | this->close(); 74 | } 75 | -------------------------------------------------------------------------------- /jni/highlight/gui-qt/main.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | main.cpp 3 | ------------------- 4 | begin : Mo 16.03.2009 5 | copyright : (C) 2009 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | //?? https://codereview.qt-project.org/#change,51048 29 | 30 | #include 31 | 32 | #if (QT_VERSION < QT_VERSION_CHECK(5,0,0)) 33 | #include 34 | #else 35 | #include 36 | #endif 37 | #include 38 | #include 39 | #include 40 | 41 | #include "mainwindow.h" 42 | 43 | int main(int argc, char *argv[]) 44 | { 45 | QApplication app(argc, argv); 46 | QTranslator translator; 47 | #ifdef DATA_DIR 48 | translator.load(QString("%1/gui_files/l10n/highlight_%2").arg(DATA_DIR).arg(QLocale::system().name())); 49 | #else 50 | translator.load(QString("%1/gui_files/l10n/highlight_%2").arg(QDir::currentPath()).arg(QLocale::system().name())); 51 | #endif 52 | app.installTranslator(&translator); 53 | 54 | if (QCoreApplication::arguments().contains("--portable")){ 55 | QSettings::setPath(QSettings::IniFormat, QSettings::UserScope, QDir::currentPath()); 56 | } 57 | 58 | MainWindow w; 59 | /* 60 | QStringList args=QCoreApplication::arguments(); 61 | if (args.count()>1){ 62 | args.removeFirst(); // drop highlight-gui.exe path 63 | w.addInputFiles(args); 64 | } 65 | */ 66 | w.show(); 67 | return app.exec(); 68 | } 69 | -------------------------------------------------------------------------------- /jni/highlight/gui-qt/showtextfile.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | ShowTextFile 4 | 5 | 6 | Qt::WindowModal 7 | 8 | 9 | 10 | 0 11 | 0 12 | 711 13 | 442 14 | 15 | 16 | 17 | Show text 18 | 19 | 20 | 21 | :/hl_icon2.png:/hl_icon2.png 22 | 23 | 24 | true 25 | 26 | 27 | 28 | 29 | 30 | 31 | 10 32 | 75 33 | true 34 | 35 | 36 | 37 | TextLabel 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | Courier New 46 | 8 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | Qt::Horizontal 57 | 58 | 59 | 60 | 40 61 | 20 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | OK 70 | 71 | 72 | true 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | -------------------------------------------------------------------------------- /src/org/evilbinary/highliter/spans/VideoSpan.java: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 evilbinary. 2 | * rootdebug@163.com 3 | This program is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation, either version 3 of the License, or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program. If not, see . 15 | */ 16 | 17 | package org.evilbinary.highliter.spans; 18 | 19 | import android.content.Context; 20 | import android.graphics.Bitmap; 21 | import android.graphics.drawable.Drawable; 22 | import android.net.Uri; 23 | import android.text.style.ImageSpan; 24 | 25 | public class VideoSpan extends ImageSpan { 26 | @Deprecated 27 | public VideoSpan(Bitmap b) { 28 | super(b); 29 | } 30 | 31 | @Deprecated 32 | public VideoSpan(Bitmap b, int verticalAlignment) { 33 | super(b, verticalAlignment); 34 | } 35 | 36 | public VideoSpan(Context context, Bitmap b) { 37 | super(context, b); 38 | } 39 | 40 | public VideoSpan(Context context, Bitmap b, int verticalAlignment) { 41 | super(context, b, verticalAlignment); 42 | } 43 | 44 | public VideoSpan(Drawable d) { 45 | super(d); 46 | } 47 | 48 | public VideoSpan(Drawable d, int verticalAlignment) { 49 | super(d, verticalAlignment); 50 | } 51 | 52 | public VideoSpan(Drawable d, String source) { 53 | super(d, source); 54 | } 55 | 56 | public VideoSpan(Drawable d, String source, int verticalAlignment) { 57 | super(d, source, verticalAlignment); 58 | } 59 | 60 | public VideoSpan(Context context, Uri uri) { 61 | super(context, uri); 62 | } 63 | 64 | public VideoSpan(Context context, Uri uri, int verticalAlignment) { 65 | super(context, uri, verticalAlignment); 66 | } 67 | 68 | public VideoSpan(Context context, int resourceId) { 69 | super(context, resourceId); 70 | } 71 | 72 | public VideoSpan(Context context, int resourceId, int verticalAlignment) { 73 | super(context, resourceId, verticalAlignment); 74 | } 75 | } -------------------------------------------------------------------------------- /jni/lua/llex.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: llex.h,v 1.58.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Lexical Analyzer 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef llex_h 8 | #define llex_h 9 | 10 | #include "lobject.h" 11 | #include "lzio.h" 12 | 13 | 14 | #define FIRST_RESERVED 257 15 | 16 | /* maximum length of a reserved word */ 17 | #define TOKEN_LEN (sizeof("function")/sizeof(char)) 18 | 19 | 20 | /* 21 | * WARNING: if you change the order of this enumeration, 22 | * grep "ORDER RESERVED" 23 | */ 24 | enum RESERVED { 25 | /* terminal symbols denoted by reserved words */ 26 | TK_AND = FIRST_RESERVED, TK_BREAK, 27 | TK_DO, TK_ELSE, TK_ELSEIF, TK_END, TK_FALSE, TK_FOR, TK_FUNCTION, 28 | TK_IF, TK_IN, TK_LOCAL, TK_NIL, TK_NOT, TK_OR, TK_REPEAT, 29 | TK_RETURN, TK_THEN, TK_TRUE, TK_UNTIL, TK_WHILE, 30 | /* other terminal symbols */ 31 | TK_CONCAT, TK_DOTS, TK_EQ, TK_GE, TK_LE, TK_NE, TK_NUMBER, 32 | TK_NAME, TK_STRING, TK_EOS 33 | }; 34 | 35 | /* number of reserved words */ 36 | #define NUM_RESERVED (cast(int, TK_WHILE-FIRST_RESERVED+1)) 37 | 38 | 39 | /* array with token `names' */ 40 | LUAI_DATA const char *const luaX_tokens []; 41 | 42 | 43 | typedef union { 44 | lua_Number r; 45 | TString *ts; 46 | } SemInfo; /* semantics information */ 47 | 48 | 49 | typedef struct Token { 50 | int token; 51 | SemInfo seminfo; 52 | } Token; 53 | 54 | 55 | typedef struct LexState { 56 | int current; /* current character (charint) */ 57 | int linenumber; /* input line counter */ 58 | int lastline; /* line of last token `consumed' */ 59 | Token t; /* current token */ 60 | Token lookahead; /* look ahead token */ 61 | struct FuncState *fs; /* `FuncState' is private to the parser */ 62 | struct lua_State *L; 63 | ZIO *z; /* input stream */ 64 | Mbuffer *buff; /* buffer for tokens */ 65 | TString *source; /* current source name */ 66 | char decpoint; /* locale decimal point */ 67 | } LexState; 68 | 69 | 70 | LUAI_FUNC void luaX_init (lua_State *L); 71 | LUAI_FUNC void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, 72 | TString *source); 73 | LUAI_FUNC TString *luaX_newstring (LexState *ls, const char *str, size_t l); 74 | LUAI_FUNC void luaX_next (LexState *ls); 75 | LUAI_FUNC void luaX_lookahead (LexState *ls); 76 | LUAI_FUNC void luaX_lexerror (LexState *ls, const char *msg, int token); 77 | LUAI_FUNC void luaX_syntaxerror (LexState *ls, const char *s); 78 | LUAI_FUNC const char *luaX_token2str (LexState *ls, int token); 79 | 80 | 81 | #endif 82 | -------------------------------------------------------------------------------- /jni/lua/lmem.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lmem.c,v 1.70.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Interface to Memory Manager 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | 8 | #include 9 | 10 | #define lmem_c 11 | #define LUA_CORE 12 | 13 | #include "lua.h" 14 | 15 | #include "ldebug.h" 16 | #include "ldo.h" 17 | #include "lmem.h" 18 | #include "lobject.h" 19 | #include "lstate.h" 20 | 21 | 22 | 23 | /* 24 | ** About the realloc function: 25 | ** void * frealloc (void *ud, void *ptr, size_t osize, size_t nsize); 26 | ** (`osize' is the old size, `nsize' is the new size) 27 | ** 28 | ** Lua ensures that (ptr == NULL) iff (osize == 0). 29 | ** 30 | ** * frealloc(ud, NULL, 0, x) creates a new block of size `x' 31 | ** 32 | ** * frealloc(ud, p, x, 0) frees the block `p' 33 | ** (in this specific case, frealloc must return NULL). 34 | ** particularly, frealloc(ud, NULL, 0, 0) does nothing 35 | ** (which is equivalent to free(NULL) in ANSI C) 36 | ** 37 | ** frealloc returns NULL if it cannot create or reallocate the area 38 | ** (any reallocation to an equal or smaller size cannot fail!) 39 | */ 40 | 41 | 42 | 43 | #define MINSIZEARRAY 4 44 | 45 | 46 | void *luaM_growaux_ (lua_State *L, void *block, int *size, size_t size_elems, 47 | int limit, const char *errormsg) { 48 | void *newblock; 49 | int newsize; 50 | if (*size >= limit/2) { /* cannot double it? */ 51 | if (*size >= limit) /* cannot grow even a little? */ 52 | luaG_runerror(L, errormsg); 53 | newsize = limit; /* still have at least one free place */ 54 | } 55 | else { 56 | newsize = (*size)*2; 57 | if (newsize < MINSIZEARRAY) 58 | newsize = MINSIZEARRAY; /* minimum size */ 59 | } 60 | newblock = luaM_reallocv(L, block, *size, newsize, size_elems); 61 | *size = newsize; /* update only when everything else is OK */ 62 | return newblock; 63 | } 64 | 65 | 66 | void *luaM_toobig (lua_State *L) { 67 | luaG_runerror(L, "memory allocation error: block too big"); 68 | return NULL; /* to avoid warnings */ 69 | } 70 | 71 | 72 | 73 | /* 74 | ** generic allocation routine. 75 | */ 76 | void *luaM_realloc_ (lua_State *L, void *block, size_t osize, size_t nsize) { 77 | global_State *g = G(L); 78 | lua_assert((osize == 0) == (block == NULL)); 79 | block = (*g->frealloc)(g->ud, block, osize, nsize); 80 | if (block == NULL && nsize > 0) 81 | luaD_throw(L, LUA_ERRMEM); 82 | lua_assert((nsize == 0) == (block == NULL)); 83 | g->totalbytes = (g->totalbytes - osize) + nsize; 84 | return block; 85 | } 86 | 87 | -------------------------------------------------------------------------------- /jni/lua/lparser.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lparser.h,v 1.57.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Lua Parser 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef lparser_h 8 | #define lparser_h 9 | 10 | #include "llimits.h" 11 | #include "lobject.h" 12 | #include "lzio.h" 13 | 14 | 15 | /* 16 | ** Expression descriptor 17 | */ 18 | 19 | typedef enum { 20 | VVOID, /* no value */ 21 | VNIL, 22 | VTRUE, 23 | VFALSE, 24 | VK, /* info = index of constant in `k' */ 25 | VKNUM, /* nval = numerical value */ 26 | VLOCAL, /* info = local register */ 27 | VUPVAL, /* info = index of upvalue in `upvalues' */ 28 | VGLOBAL, /* info = index of table; aux = index of global name in `k' */ 29 | VINDEXED, /* info = table register; aux = index register (or `k') */ 30 | VJMP, /* info = instruction pc */ 31 | VRELOCABLE, /* info = instruction pc */ 32 | VNONRELOC, /* info = result register */ 33 | VCALL, /* info = instruction pc */ 34 | VVARARG /* info = instruction pc */ 35 | } expkind; 36 | 37 | typedef struct expdesc { 38 | expkind k; 39 | union { 40 | struct { int info, aux; } s; 41 | lua_Number nval; 42 | } u; 43 | int t; /* patch list of `exit when true' */ 44 | int f; /* patch list of `exit when false' */ 45 | } expdesc; 46 | 47 | 48 | typedef struct upvaldesc { 49 | lu_byte k; 50 | lu_byte info; 51 | } upvaldesc; 52 | 53 | 54 | struct BlockCnt; /* defined in lparser.c */ 55 | 56 | 57 | /* state needed to generate code for a given function */ 58 | typedef struct FuncState { 59 | Proto *f; /* current function header */ 60 | Table *h; /* table to find (and reuse) elements in `k' */ 61 | struct FuncState *prev; /* enclosing function */ 62 | struct LexState *ls; /* lexical state */ 63 | struct lua_State *L; /* copy of the Lua state */ 64 | struct BlockCnt *bl; /* chain of current blocks */ 65 | int pc; /* next position to code (equivalent to `ncode') */ 66 | int lasttarget; /* `pc' of last `jump target' */ 67 | int jpc; /* list of pending jumps to `pc' */ 68 | int freereg; /* first free register */ 69 | int nk; /* number of elements in `k' */ 70 | int np; /* number of elements in `p' */ 71 | short nlocvars; /* number of elements in `locvars' */ 72 | lu_byte nactvar; /* number of active local variables */ 73 | upvaldesc upvalues[LUAI_MAXUPVALUES]; /* upvalues */ 74 | unsigned short actvar[LUAI_MAXVARS]; /* declared-variable stack */ 75 | } FuncState; 76 | 77 | 78 | LUAI_FUNC Proto *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, 79 | const char *name); 80 | 81 | 82 | #endif 83 | -------------------------------------------------------------------------------- /jni/highlight/include/charcodes.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | charcodes.cpp - description 3 | ------------------- 4 | begin : Wed Nov 24 2003 5 | copyright : (C) 2003 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef CHAR_CODES 29 | #define CHAR_CODES 30 | 31 | #ifdef _WIN32 32 | 33 | #define AUML_LC 228 34 | #define OUML_LC 246 35 | #define UUML_LC 252 36 | 37 | #define AUML_UC 196 38 | #define OUML_UC 214 39 | #define UUML_UC 220 40 | 41 | 42 | #define AACUTE_LC 225 43 | #define EACUTE_LC 233 44 | #define OACUTE_LC 243 45 | #define UACUTE_LC 250 46 | 47 | #define AACUTE_UC 193 48 | #define EACUTE_UC 201 49 | #define OACUTE_UC 211 50 | #define UACUTE_UC 218 51 | 52 | #define AGRAVE_LC 224 53 | #define EGRAVE_LC 232 54 | #define OGRAVE_LC 242 55 | #define UGRAVE_LC 249 56 | 57 | #define AGRAVE_UC 192 58 | #define EGRAVE_UC 200 59 | #define OGRAVE_UC 210 60 | #define UGRAVE_UC 217 61 | 62 | #define SZLIG 223 63 | 64 | #else 65 | 66 | #define AUML_LC 164 67 | #define OUML_LC 182 68 | #define UUML_LC 188 69 | 70 | #define AUML_UC 132 71 | #define OUML_UC 150 72 | #define UUML_UC 156 73 | 74 | 75 | #define AACUTE_LC 161 76 | #define EACUTE_LC 169 77 | #define OACUTE_LC 179 78 | #define UACUTE_LC 186 79 | 80 | #define AACUTE_UC 129 81 | #define EACUTE_UC 137 82 | #define OACUTE_UC 147 83 | #define UACUTE_UC 154 84 | 85 | #define AGRAVE_LC 160 86 | #define EGRAVE_LC 168 87 | #define OGRAVE_LC 178 88 | #define UGRAVE_LC 185 89 | 90 | #define AGRAVE_UC 128 91 | #define EGRAVE_UC 136 92 | #define OGRAVE_UC 146 93 | #define UGRAVE_UC 153 94 | 95 | #define SZLIG 159 96 | 97 | #endif 98 | 99 | #endif 100 | -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- 1 | @if "%DEBUG%" == "" @echo off 2 | @rem ########################################################################## 3 | @rem 4 | @rem Gradle startup script for Windows 5 | @rem 6 | @rem ########################################################################## 7 | 8 | @rem Set local scope for the variables with windows NT shell 9 | if "%OS%"=="Windows_NT" setlocal 10 | 11 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. 12 | set DEFAULT_JVM_OPTS= 13 | 14 | set DIRNAME=%~dp0 15 | if "%DIRNAME%" == "" set DIRNAME=. 16 | set APP_BASE_NAME=%~n0 17 | set APP_HOME=%DIRNAME% 18 | 19 | @rem Find java.exe 20 | if defined JAVA_HOME goto findJavaFromJavaHome 21 | 22 | set JAVA_EXE=java.exe 23 | %JAVA_EXE% -version >NUL 2>&1 24 | if "%ERRORLEVEL%" == "0" goto init 25 | 26 | echo. 27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 28 | echo. 29 | echo Please set the JAVA_HOME variable in your environment to match the 30 | echo location of your Java installation. 31 | 32 | goto fail 33 | 34 | :findJavaFromJavaHome 35 | set JAVA_HOME=%JAVA_HOME:"=% 36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe 37 | 38 | if exist "%JAVA_EXE%" goto init 39 | 40 | echo. 41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 42 | echo. 43 | echo Please set the JAVA_HOME variable in your environment to match the 44 | echo location of your Java installation. 45 | 46 | goto fail 47 | 48 | :init 49 | @rem Get command-line arguments, handling Windowz variants 50 | 51 | if not "%OS%" == "Windows_NT" goto win9xME_args 52 | if "%@eval[2+2]" == "4" goto 4NT_args 53 | 54 | :win9xME_args 55 | @rem Slurp the command line arguments. 56 | set CMD_LINE_ARGS= 57 | set _SKIP=2 58 | 59 | :win9xME_args_slurp 60 | if "x%~1" == "x" goto execute 61 | 62 | set CMD_LINE_ARGS=%* 63 | goto execute 64 | 65 | :4NT_args 66 | @rem Get arguments from the 4NT Shell from JP Software 67 | set CMD_LINE_ARGS=%$ 68 | 69 | :execute 70 | @rem Setup the command line 71 | 72 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar 73 | 74 | @rem Execute Gradle 75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% 76 | 77 | :end 78 | @rem End local scope for the variables with windows NT shell 79 | if "%ERRORLEVEL%"=="0" goto mainEnd 80 | 81 | :fail 82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of 83 | rem the _cmd.exe /c_ return code! 84 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 85 | exit /b 1 86 | 87 | :mainEnd 88 | if "%OS%"=="Windows_NT" endlocal 89 | 90 | :omega 91 | -------------------------------------------------------------------------------- /jni/highlight/core/Diluculum/LuaExceptions.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************\ 2 | * LuaExceptions.hpp * 3 | * Exceptions related to Lua errors. * 4 | * * 5 | * * 6 | * Copyright (C) 2005-2013 by Leandro Motta Barros. * 7 | * * 8 | * Permission is hereby granted, free of charge, to any person obtaining a copy * 9 | * of this software and associated documentation files (the "Software"), to * 10 | * deal in the Software without restriction, including without limitation the * 11 | * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or * 12 | * sell copies of the Software, and to permit persons to whom the Software is * 13 | * furnished to do so, subject to the following conditions: * 14 | * * 15 | * The above copyright notice and this permission notice shall be included in * 16 | * all copies or substantial portions of the Software. * 17 | * * 18 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * 19 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * 20 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * 21 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * 22 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * 23 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * 24 | * IN THE SOFTWARE. * 25 | \******************************************************************************/ 26 | 27 | #include 28 | 29 | namespace Diluculum 30 | { 31 | // - TypeMismatchError::TypeMismatchError ----------------------------------- 32 | TypeMismatchError::TypeMismatchError (const std::string& expectedType, 33 | const std::string& foundType) 34 | : LuaError (("Type mismatch: '" + expectedType 35 | + "' was expected but '" + foundType 36 | + "' was found.").c_str()), 37 | expectedType_ (expectedType), foundType_(foundType) 38 | { } 39 | 40 | } // namespace Diluculum 41 | -------------------------------------------------------------------------------- /jni/highlight/include/astyle/ASStreamIterator.h: -------------------------------------------------------------------------------- 1 | /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 2 | * 3 | * Copyright (C) 2006-2008 by Jim Pattee 4 | * Copyright (C) 1998-2002 by Tal Davidson 5 | * 6 | * 7 | * This file is a part of Artistic Style - an indentation and 8 | * reformatting tool for C, C++, C# and Java source files. 9 | * 10 | * 11 | * Artistic Style is free software: you can redistribute it and/or modify 12 | * it under the terms of the GNU Lesser General Public License as published 13 | * by the Free Software Foundation, either version 3 of the License, or 14 | * (at your option) any later version. 15 | * 16 | * Artistic Style is distributed in the hope that it will be useful, 17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 | * GNU Lesser General Public License for more details. 20 | * 21 | * You should have received a copy of the GNU Lesser General Public License 22 | * along with Artistic Style. If not, see . 23 | * 24 | * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 25 | */ 26 | 27 | 28 | #ifndef ASSTREAMITERATOR_H 29 | #define ASSTREAMITERATOR_H 30 | 31 | #include "astyle.h" 32 | #include 33 | 34 | namespace astyle 35 | { 36 | 37 | class ASStreamIterator : public ASSourceIterator 38 | { 39 | public: 40 | bool checkForEmptyLine; 41 | 42 | // function declarations 43 | ASStreamIterator(istream *in); 44 | virtual ~ASStreamIterator(); 45 | string nextLine(bool emptyLineWasDeleted); 46 | string peekNextLine(); 47 | void peekReset(); 48 | void saveLastInputLine(); 49 | 50 | // inline functions 51 | bool compareToInputBuffer(const string &nextLine) const { return nextLine == prevBuffer; } 52 | const char* getOutputEOL() const { return outputEOL; } 53 | bool hasMoreLines() const { return !inStream->eof(); } 54 | 55 | int getStreamLength() const { return 0; } 56 | streamoff tellg() { return 0; } 57 | 58 | private: 59 | istream * inStream; // pointer to the input stream 60 | string buffer; // current input line 61 | string prevBuffer; // previous input line 62 | int eolWindows; // number of Windows line endings (CRLF) 63 | int eolLinux; // number of Linux line endings (LF) 64 | int eolMacOld; // number of old Mac line endings (CR) 65 | int peekStart; // starting position for peekNextLine() 66 | char outputEOL[4]; // output end of line char 67 | bool prevLineDeleted; // the previous input line was deleted 68 | }; 69 | 70 | } 71 | 72 | #endif 73 | -------------------------------------------------------------------------------- /jni/highlight/include/enums.h: -------------------------------------------------------------------------------- 1 | /* 2 | This file is part of Highlight. 3 | 4 | Highlight is free software: you can redistribute it and/or modify 5 | it under the terms of the GNU General Public License as published by 6 | the Free Software Foundation, either version 3 of the License, or 7 | (at your option) any later version. 8 | 9 | Highlight is distributed in the hope that it will be useful, 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | GNU General Public License for more details. 13 | 14 | You should have received a copy of the GNU General Public License 15 | along with Highlight. If not, see . 16 | */ 17 | 18 | 19 | #ifndef ENUMS_H 20 | #define ENUMS_H 21 | 22 | namespace highlight { 23 | /** states which may occour during input file parsing 24 | TODO Clean up! 25 | */ 26 | enum State { 27 | STANDARD = 0, 28 | STRING, 29 | NUMBER, 30 | SL_COMMENT, 31 | ML_COMMENT, 32 | ESC_CHAR, 33 | DIRECTIVE, 34 | DIRECTIVE_STRING, 35 | LINENUMBER, 36 | SYMBOL, 37 | STRING_INTERPOLATION, 38 | 39 | // don't use constants > KEYWORD as array indices! 40 | KEYWORD, 41 | STRING_END, 42 | NUMBER_END, 43 | SL_COMMENT_END, 44 | ML_COMMENT_END, 45 | ESC_CHAR_END, 46 | DIRECTIVE_END, 47 | SYMBOL_END, 48 | STRING_INTERPOLATION_END, 49 | KEYWORD_END, 50 | IDENTIFIER_BEGIN, 51 | IDENTIFIER_END, 52 | EMBEDDED_CODE_BEGIN, 53 | EMBEDDED_CODE_END, 54 | 55 | _UNKNOWN = 100, 56 | _EOL, 57 | _EOF, 58 | _WS 59 | }; 60 | 61 | /** Parser return values*/ 62 | enum ParseError { 63 | PARSE_OK, 64 | BAD_INPUT = 1, 65 | BAD_OUTPUT = 2, 66 | BAD_STYLE = 4, 67 | BAD_BINARY = 8 68 | }; 69 | 70 | /** line wrapping modes*/ 71 | enum WrapMode { 72 | WRAP_DISABLED, 73 | WRAP_SIMPLE, 74 | WRAP_DEFAULT 75 | }; 76 | 77 | /** language definition loading results*/ 78 | enum LoadResult { 79 | LOAD_OK, 80 | LOAD_FAILED, 81 | LOAD_FAILED_REGEX, 82 | LOAD_FAILED_LUA 83 | }; 84 | 85 | /** output formats */ 86 | enum OutputType { 87 | OBJECT, 88 | HTML, 89 | XHTML, 90 | TEX, 91 | LATEX, 92 | RTF, 93 | ANSI, 94 | XTERM256, 95 | HTML32, 96 | SVG, 97 | BBCODE, 98 | PANGO, 99 | ODTFLAT 100 | }; 101 | 102 | } 103 | 104 | #endif 105 | -------------------------------------------------------------------------------- /jni/highlight/core/xhtmlgenerator.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | htmlcode.cpp - description 3 | ------------------- 4 | begin : Wed Nov 28 2001 5 | copyright : (C) 2001 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #include "xhtmlgenerator.h" 29 | 30 | using namespace std; 31 | 32 | namespace highlight 33 | { 34 | 35 | XHtmlGenerator::XHtmlGenerator () 36 | { 37 | fileSuffix=".xhtml"; 38 | brTag="
"; 39 | hrTag="
"; 40 | idAttr="id"; 41 | cssClassName="hl"; 42 | } 43 | 44 | string XHtmlGenerator::getHeaderStart ( const string &title ) 45 | { 46 | ostringstream header; 47 | header << "\n\n" 54 | << "\n" 55 | << "\n" << title << "\n"; 56 | 57 | return header.str(); 58 | } 59 | 60 | 61 | string XHtmlGenerator::getHeader() 62 | { 63 | ostringstream os; 64 | os << getHeaderStart ( docTitle ); 65 | 66 | if ( currentSyntax->highlightingEnabled() ) 67 | { 68 | if ( includeStyleDef ) 69 | { 70 | os << "\n"; 76 | } 77 | else 78 | { 79 | os << "\n"; 84 | } 85 | } 86 | os << "\n\n"; 90 | 91 | return os.str(); 92 | } 93 | 94 | } 95 | -------------------------------------------------------------------------------- /jni/highlight/include/svggenerator.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | xmlcode.h - description 3 | ------------------- 4 | begin : Mo 23.06.2008 5 | copyright : (C) 2008 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef SVGGenerator_H 29 | #define SVGGenerator_H 30 | 31 | #include "codegenerator.h" 32 | 33 | namespace highlight 34 | { 35 | 36 | /** 37 | \brief This class generates SVG. 38 | 39 | It contains information about the resulting document structure (document 40 | header and footer), the colour system, white space handling and text 41 | formatting attributes. 42 | 43 | * @author Andre Simon 44 | */ 45 | 46 | class SVGGenerator : public highlight::CodeGenerator 47 | { 48 | public: 49 | 50 | SVGGenerator(); 51 | ~SVGGenerator(); 52 | 53 | /** Set SVG dimensions 54 | \param w page width 55 | \param h page height 56 | */ 57 | void setSVGSize ( const string& w, const string& h ); 58 | 59 | private: 60 | 61 | /** prints document header 62 | */ 63 | string getHeader(); 64 | 65 | /** Prints document footer*/ 66 | string getFooter(); 67 | 68 | /** Prints document body*/ 69 | void printBody(); 70 | 71 | /** initialize tags in specific format according to colouring information provided in DucumentStyle */ 72 | void initOutputTags(); 73 | 74 | string styleDefinitionCache; 75 | string width, height; 76 | 77 | string getStyleDefinition(); 78 | 79 | string getAttributes ( const string &, const ElementStyle & ); 80 | 81 | /** \return escaped character*/ 82 | virtual string maskCharacter ( unsigned char ); 83 | 84 | string getOpenTag ( const string& ); 85 | 86 | string getKeywordOpenTag ( unsigned int styleID ); 87 | string getKeywordCloseTag ( unsigned int styleID ); 88 | 89 | /** @return Newline string */ 90 | string getNewLine(); 91 | }; 92 | 93 | } 94 | 95 | #endif 96 | -------------------------------------------------------------------------------- /jni/highlight/include/texgenerator.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | texcode.h - description 3 | ------------------- 4 | begin : Mit Jul 24 2002 5 | copyright : (C) 2002 by Andr�Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef TEXGENERATOR_H 29 | #define TEXGENERATOR_H 30 | 31 | #include 32 | 33 | #include "codegenerator.h" 34 | 35 | 36 | namespace highlight 37 | { 38 | 39 | /** 40 | \brief This class generates TeX. 41 | 42 | It contains information about the resulting document structure (document 43 | header and footer), the colour system, white space handling and text 44 | formatting attributes. 45 | 46 | * @author Andre Simon 47 | */ 48 | 49 | class TexGenerator : public highlight::CodeGenerator 50 | { 51 | public: 52 | 53 | TexGenerator(); 54 | ~TexGenerator(); 55 | 56 | private: 57 | 58 | /** prints document header 59 | */ 60 | string getHeader(); 61 | 62 | /** Prints document footer*/ 63 | string getFooter(); 64 | 65 | /** Prints document body*/ 66 | void printBody(); 67 | 68 | /** initialize tags in specific format according to colouring information provided in DucumentStyle */ 69 | void initOutputTags(); 70 | 71 | string styleDefinitionCache; 72 | 73 | string getStyleDefinition(); 74 | 75 | /** \return escaped character*/ 76 | virtual string maskCharacter ( unsigned char ); 77 | 78 | /**\return text formatting attributes in RTF format */ 79 | string getAttributes ( const string & elemName, const ElementStyle & elem ); 80 | 81 | /** @param styleID current style ID 82 | @return matching sequence to begin a new element formatting*/ 83 | string getKeywordOpenTag ( unsigned int styleID ); 84 | 85 | /** @param styleID current style ID 86 | @return matching sequence to stop element formatting*/ 87 | string getKeywordCloseTag ( unsigned int styleID ); 88 | 89 | }; 90 | 91 | } 92 | 93 | #endif 94 | -------------------------------------------------------------------------------- /jni/highlight/include/ansigenerator.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | ansicode.h - description 3 | ------------------- 4 | begin : Jul 5 2004 5 | copyright : (C) 2004-2007 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef ANSIGENERATOR_H 29 | #define ANSIGENERATOR_H 30 | 31 | #include 32 | 33 | #include "codegenerator.h" 34 | #include "charcodes.h" 35 | #include "version.h" 36 | 37 | namespace highlight 38 | { 39 | 40 | /** 41 | \brief This class generates ANSI escape sequences. 42 | 43 | It contains information about the resulting document structure (document 44 | header and footer), the colour system, white space handling and text 45 | formatting attributes. 46 | 47 | * @author Andre Simon 48 | */ 49 | 50 | class AnsiGenerator : public highlight::CodeGenerator 51 | { 52 | public: 53 | AnsiGenerator(); 54 | ~AnsiGenerator(); 55 | 56 | /** prints document header 57 | */ 58 | string getHeader(); 59 | 60 | /** Prints document footer*/ 61 | string getFooter(); 62 | 63 | /** Prints document body*/ 64 | void printBody(); 65 | 66 | private: 67 | 68 | /** \return escaped character*/ 69 | virtual string maskCharacter ( unsigned char ); 70 | 71 | 72 | /** gibt ANSI-"Tags" zurueck (Farbindex+bold+kursiv)*/ 73 | string getOpenTag ( const string&font, 74 | const string&fgCol, const string&bgCol="" ); 75 | 76 | /** initialize tags in specific format according to colouring information provided in DucumentStyle */ 77 | void initOutputTags(); 78 | 79 | /** @param styleID current style ID 80 | @return matching sequence to begin a new element formatting*/ 81 | string getKeywordOpenTag ( unsigned int styleID ); 82 | 83 | /** @param styleID current style ID 84 | @return matching sequence to stop element formatting*/ 85 | string getKeywordCloseTag ( unsigned int styleID ); 86 | }; 87 | 88 | } 89 | #endif 90 | -------------------------------------------------------------------------------- /jni/highlight/include/bbcodegenerator.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | bbcodegenerator.h - description 3 | ------------------- 4 | begin : Jul 20 2009 5 | copyright : (C) 2004-2007 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef BBCODEGENERATOR_H 29 | #define BBCODEGENERATOR_H 30 | 31 | #include 32 | 33 | #include "codegenerator.h" 34 | #include "charcodes.h" 35 | #include "version.h" 36 | 37 | namespace highlight 38 | { 39 | 40 | /** 41 | \brief This class generates BBCode. 42 | 43 | It contains information about the resulting document structure (document 44 | header and footer), the colour system, white space handling and text 45 | formatting attributes. 46 | 47 | * @author Andre Simon 48 | */ 49 | 50 | class BBCodeGenerator : public highlight::CodeGenerator 51 | { 52 | public: 53 | BBCodeGenerator(); 54 | ~BBCodeGenerator(); 55 | 56 | /** prints document header 57 | */ 58 | string getHeader(); 59 | 60 | /** Prints document footer*/ 61 | string getFooter(); 62 | 63 | /** Prints document body*/ 64 | void printBody(); 65 | 66 | private: 67 | 68 | /** \return escaped character*/ 69 | virtual string maskCharacter ( unsigned char ); 70 | 71 | /** @return BBcode open tags */ 72 | string getOpenTag (const ElementStyle & elem ); 73 | 74 | /** @return BBcode close tags */ 75 | string getCloseTag ( const ElementStyle &elem ); 76 | 77 | /** initialize tags in specific format according to colouring information provided in DucumentStyle */ 78 | void initOutputTags(); 79 | 80 | /** @param styleID current style ID 81 | @return matching sequence to begin a new element formatting*/ 82 | string getKeywordOpenTag ( unsigned int styleID ); 83 | 84 | /** @param styleID current style ID 85 | @return matching sequence to stop element formatting*/ 86 | string getKeywordCloseTag ( unsigned int styleID ); 87 | }; 88 | 89 | } 90 | #endif 91 | -------------------------------------------------------------------------------- /jni/highlight/include/pangogenerator.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | pangogenerator.h - description 3 | ------------------- 4 | begin : Sept 5 2014 5 | copyright : (C) 2014 by Dominik Schmidt 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef PANGOGENERATOR_H 29 | #define PANGOGENERATOR_H 30 | 31 | #include 32 | 33 | #include "codegenerator.h" 34 | #include "charcodes.h" 35 | #include "version.h" 36 | 37 | namespace highlight 38 | { 39 | 40 | /** 41 | \brief This class generates Pango markup. 42 | 43 | It contains information about the resulting document structure (document 44 | header and footer), the colour system, white space handling and text 45 | formatting attributes. 46 | 47 | * @author Dominik Schmidt 48 | */ 49 | 50 | class PangoGenerator : public highlight::CodeGenerator 51 | { 52 | public: 53 | PangoGenerator(); 54 | ~PangoGenerator(); 55 | 56 | /** prints document header 57 | */ 58 | string getHeader(); 59 | 60 | /** Prints document footer*/ 61 | string getFooter(); 62 | 63 | /** Prints document body*/ 64 | void printBody(); 65 | 66 | private: 67 | 68 | /** \return escaped character*/ 69 | virtual string maskCharacter ( unsigned char ); 70 | 71 | /**\return text formatting attributes in Pango markup */ 72 | string getAttributes ( const ElementStyle & elem ); 73 | 74 | /** gibt Pangotags zurück*/ 75 | string getOpenTag ( const ElementStyle & elem ); 76 | 77 | /** initialize tags in specific format according to colouring information provided in DucumentStyle */ 78 | void initOutputTags(); 79 | 80 | /** @param styleID current style ID 81 | @return matching sequence to begin a new element formatting*/ 82 | string getKeywordOpenTag ( unsigned int styleID ); 83 | 84 | /** @param styleID current style ID 85 | @return matching sequence to stop element formatting*/ 86 | string getKeywordCloseTag ( unsigned int styleID ); 87 | }; 88 | 89 | } 90 | #endif 91 | -------------------------------------------------------------------------------- /jni/highlight/include/odtgenerator.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | odtgenerator.h - description 3 | ------------------- 4 | begin : Jul 19 2012 5 | copyright : (C) 2004-2012 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef ODTGENERATOR_H 29 | #define ODTGENERATOR_H 30 | 31 | #include 32 | 33 | #include "codegenerator.h" 34 | #include "version.h" 35 | 36 | namespace highlight 37 | { 38 | 39 | /** 40 | \brief This class generates OpenDocument Textfiles (Flat XML). 41 | 42 | It contains information about the resulting document structure (document 43 | header and footer), the colour system, white space handling and text 44 | formatting attributes. 45 | 46 | * @author Andre Simon 47 | */ 48 | 49 | class ODTGenerator : public highlight::CodeGenerator 50 | { 51 | public: 52 | ODTGenerator(); 53 | ~ODTGenerator(); 54 | 55 | /** prints document header 56 | */ 57 | string getHeader(); 58 | 59 | /** Prints document footer*/ 60 | string getFooter(); 61 | 62 | /** Prints document body*/ 63 | void printBody(); 64 | 65 | private: 66 | 67 | /** \return escaped character*/ 68 | virtual string maskCharacter ( unsigned char ); 69 | 70 | /** @return ODT open tags */ 71 | string getOpenTag ( const string& styleName ); 72 | 73 | /** initialize tags in specific format according to colouring information provided in DucumentStyle */ 74 | void initOutputTags(); 75 | 76 | /** @param styleID current style ID 77 | @return matching sequence to begin a new element formatting*/ 78 | string getKeywordOpenTag ( unsigned int styleID ); 79 | 80 | /** @param styleID current style ID 81 | @return matching sequence to stop element formatting*/ 82 | string getKeywordCloseTag ( unsigned int styleID ); 83 | 84 | string styleDefinitionCache; 85 | 86 | string getStyleDefinition(); 87 | 88 | string getAttributes ( const string &, const ElementStyle & ); 89 | }; 90 | 91 | } 92 | #endif 93 | -------------------------------------------------------------------------------- /jni/highlight/include/Diluculum/Types.hpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************\ 2 | * Types.hpp * 3 | * The place for assorted types. * 4 | * * 5 | * * 6 | * Copyright (C) 2005-2013 by Leandro Motta Barros. * 7 | * * 8 | * Permission is hereby granted, free of charge, to any person obtaining a copy * 9 | * of this software and associated documentation files (the "Software"), to * 10 | * deal in the Software without restriction, including without limitation the * 11 | * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or * 12 | * sell copies of the Software, and to permit persons to whom the Software is * 13 | * furnished to do so, subject to the following conditions: * 14 | * * 15 | * The above copyright notice and this permission notice shall be included in * 16 | * all copies or substantial portions of the Software. * 17 | * * 18 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * 19 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * 20 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * 21 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * 22 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * 23 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * 24 | * IN THE SOFTWARE. * 25 | \******************************************************************************/ 26 | 27 | #ifndef _DILUCULUM_TYPES_HPP_ 28 | #define _DILUCULUM_TYPES_HPP_ 29 | 30 | #include 31 | #include 32 | 33 | 34 | namespace Diluculum 35 | { 36 | class LuaValue; 37 | 38 | /** A list of LuaValues. Used, for example, to represent the return 39 | * value of a Lua function call. In this case, the first return value is 40 | * stored at the 0th \c vector position, the second return value at the 1st 41 | * \c vector position and so on. 42 | */ 43 | typedef std::vector LuaValueList; 44 | 45 | /** Type mapping from LuaValues to LuaValues. Think of it 46 | * as a C++ approximation of a Lua table. 47 | */ 48 | typedef std::map LuaValueMap; 49 | 50 | } // namespace Diluculum 51 | 52 | #endif // _DILUCULUM_TYPES_HPP_ 53 | -------------------------------------------------------------------------------- /jni/highlight/include/Diluculum/CppObject.hpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************\ 2 | * CppObject.hpp * 3 | * A struct stored as Lua userdata when exporting or instantiating objects. * 4 | * * 5 | * * 6 | * Copyright (C) 2005-2013 by Leandro Motta Barros. * 7 | * * 8 | * Permission is hereby granted, free of charge, to any person obtaining a copy * 9 | * of this software and associated documentation files (the "Software"), to * 10 | * deal in the Software without restriction, including without limitation the * 11 | * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or * 12 | * sell copies of the Software, and to permit persons to whom the Software is * 13 | * furnished to do so, subject to the following conditions: * 14 | * * 15 | * The above copyright notice and this permission notice shall be included in * 16 | * all copies or substantial portions of the Software. * 17 | * * 18 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * 19 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * 20 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * 21 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * 22 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * 23 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * 24 | * IN THE SOFTWARE. * 25 | \******************************************************************************/ 26 | 27 | 28 | #ifndef _DILUCULUM_CPP_OBJECT_HPP_ 29 | #define _DILUCULUM_CPP_OBJECT_HPP_ 30 | 31 | namespace Diluculum 32 | { 33 | namespace Impl 34 | { 35 | /** The data that is stored as userdata when a C++ object is exported to 36 | * or instantiated in Lua. 37 | */ 38 | struct CppObject 39 | { 40 | public: 41 | /// Pointer to the actual object. 42 | void* ptr; 43 | 44 | /** Should the \c ptr be deleted when the userdata is 45 | * garbage-collected in Lua? Essentially, if the object is 46 | * instantiated in Lua, it should be; if it is instantiated in C++, 47 | * it doesn't. 48 | */ 49 | bool deleteMe; 50 | }; 51 | 52 | } // namespace Impl 53 | 54 | } // namespace Diluculum 55 | 56 | #endif // _DILUCULUM_CPP_OBJECT_HPP_ 57 | -------------------------------------------------------------------------------- /jni/lua/llimits.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: llimits.h,v 1.69.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Limits, basic types, and some other `installation-dependent' definitions 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef llimits_h 8 | #define llimits_h 9 | 10 | 11 | #include 12 | #include 13 | 14 | 15 | #include "lua.h" 16 | 17 | 18 | typedef LUAI_UINT32 lu_int32; 19 | 20 | typedef LUAI_UMEM lu_mem; 21 | 22 | typedef LUAI_MEM l_mem; 23 | 24 | 25 | 26 | /* chars used as small naturals (so that `char' is reserved for characters) */ 27 | typedef unsigned char lu_byte; 28 | 29 | 30 | #define MAX_SIZET ((size_t)(~(size_t)0)-2) 31 | 32 | #define MAX_LUMEM ((lu_mem)(~(lu_mem)0)-2) 33 | 34 | 35 | #define MAX_INT (INT_MAX-2) /* maximum value of an int (-2 for safety) */ 36 | 37 | /* 38 | ** conversion of pointer to integer 39 | ** this is for hashing only; there is no problem if the integer 40 | ** cannot hold the whole pointer value 41 | */ 42 | #define IntPoint(p) ((unsigned int)(lu_mem)(p)) 43 | 44 | 45 | 46 | /* type to ensure maximum alignment */ 47 | typedef LUAI_USER_ALIGNMENT_T L_Umaxalign; 48 | 49 | 50 | /* result of a `usual argument conversion' over lua_Number */ 51 | typedef LUAI_UACNUMBER l_uacNumber; 52 | 53 | 54 | /* internal assertions for in-house debugging */ 55 | #ifdef lua_assert 56 | 57 | #define check_exp(c,e) (lua_assert(c), (e)) 58 | #define api_check(l,e) lua_assert(e) 59 | 60 | #else 61 | 62 | #define lua_assert(c) ((void)0) 63 | #define check_exp(c,e) (e) 64 | #define api_check luai_apicheck 65 | 66 | #endif 67 | 68 | 69 | #ifndef UNUSED 70 | #define UNUSED(x) ((void)(x)) /* to avoid warnings */ 71 | #endif 72 | 73 | 74 | #ifndef cast 75 | #define cast(t, exp) ((t)(exp)) 76 | #endif 77 | 78 | #define cast_byte(i) cast(lu_byte, (i)) 79 | #define cast_num(i) cast(lua_Number, (i)) 80 | #define cast_int(i) cast(int, (i)) 81 | 82 | 83 | 84 | /* 85 | ** type for virtual-machine instructions 86 | ** must be an unsigned with (at least) 4 bytes (see details in lopcodes.h) 87 | */ 88 | typedef lu_int32 Instruction; 89 | 90 | 91 | 92 | /* maximum stack for a Lua function */ 93 | #define MAXSTACK 250 94 | 95 | 96 | 97 | /* minimum size for the string table (must be power of 2) */ 98 | #ifndef MINSTRTABSIZE 99 | #define MINSTRTABSIZE 32 100 | #endif 101 | 102 | 103 | /* minimum size for string buffer */ 104 | #ifndef LUA_MINBUFFER 105 | #define LUA_MINBUFFER 32 106 | #endif 107 | 108 | 109 | #ifndef lua_lock 110 | #define lua_lock(L) ((void) 0) 111 | #define lua_unlock(L) ((void) 0) 112 | #endif 113 | 114 | #ifndef luai_threadyield 115 | #define luai_threadyield(L) {lua_unlock(L); lua_lock(L);} 116 | #endif 117 | 118 | 119 | /* 120 | ** macro to control inclusion of some hard tests on stack reallocation 121 | */ 122 | #ifndef HARDSTACKTESTS 123 | #define condhardstacktests(x) ((void)0) 124 | #else 125 | #define condhardstacktests(x) x 126 | #endif 127 | 128 | #endif 129 | -------------------------------------------------------------------------------- /jni/lua/lcode.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lcode.h,v 1.48.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** Code generator for Lua 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | #ifndef lcode_h 8 | #define lcode_h 9 | 10 | #include "llex.h" 11 | #include "lobject.h" 12 | #include "lopcodes.h" 13 | #include "lparser.h" 14 | 15 | 16 | /* 17 | ** Marks the end of a patch list. It is an invalid value both as an absolute 18 | ** address, and as a list link (would link an element to itself). 19 | */ 20 | #define NO_JUMP (-1) 21 | 22 | 23 | /* 24 | ** grep "ORDER OPR" if you change these enums 25 | */ 26 | typedef enum BinOpr { 27 | OPR_ADD, OPR_SUB, OPR_MUL, OPR_DIV, OPR_MOD, OPR_POW, 28 | OPR_CONCAT, 29 | OPR_NE, OPR_EQ, 30 | OPR_LT, OPR_LE, OPR_GT, OPR_GE, 31 | OPR_AND, OPR_OR, 32 | OPR_NOBINOPR 33 | } BinOpr; 34 | 35 | 36 | typedef enum UnOpr { OPR_MINUS, OPR_NOT, OPR_LEN, OPR_NOUNOPR } UnOpr; 37 | 38 | 39 | #define getcode(fs,e) ((fs)->f->code[(e)->u.s.info]) 40 | 41 | #define luaK_codeAsBx(fs,o,A,sBx) luaK_codeABx(fs,o,A,(sBx)+MAXARG_sBx) 42 | 43 | #define luaK_setmultret(fs,e) luaK_setreturns(fs, e, LUA_MULTRET) 44 | 45 | LUAI_FUNC int luaK_codeABx (FuncState *fs, OpCode o, int A, unsigned int Bx); 46 | LUAI_FUNC int luaK_codeABC (FuncState *fs, OpCode o, int A, int B, int C); 47 | LUAI_FUNC void luaK_fixline (FuncState *fs, int line); 48 | LUAI_FUNC void luaK_nil (FuncState *fs, int from, int n); 49 | LUAI_FUNC void luaK_reserveregs (FuncState *fs, int n); 50 | LUAI_FUNC void luaK_checkstack (FuncState *fs, int n); 51 | LUAI_FUNC int luaK_stringK (FuncState *fs, TString *s); 52 | LUAI_FUNC int luaK_numberK (FuncState *fs, lua_Number r); 53 | LUAI_FUNC void luaK_dischargevars (FuncState *fs, expdesc *e); 54 | LUAI_FUNC int luaK_exp2anyreg (FuncState *fs, expdesc *e); 55 | LUAI_FUNC void luaK_exp2nextreg (FuncState *fs, expdesc *e); 56 | LUAI_FUNC void luaK_exp2val (FuncState *fs, expdesc *e); 57 | LUAI_FUNC int luaK_exp2RK (FuncState *fs, expdesc *e); 58 | LUAI_FUNC void luaK_self (FuncState *fs, expdesc *e, expdesc *key); 59 | LUAI_FUNC void luaK_indexed (FuncState *fs, expdesc *t, expdesc *k); 60 | LUAI_FUNC void luaK_goiftrue (FuncState *fs, expdesc *e); 61 | LUAI_FUNC void luaK_storevar (FuncState *fs, expdesc *var, expdesc *e); 62 | LUAI_FUNC void luaK_setreturns (FuncState *fs, expdesc *e, int nresults); 63 | LUAI_FUNC void luaK_setoneret (FuncState *fs, expdesc *e); 64 | LUAI_FUNC int luaK_jump (FuncState *fs); 65 | LUAI_FUNC void luaK_ret (FuncState *fs, int first, int nret); 66 | LUAI_FUNC void luaK_patchlist (FuncState *fs, int list, int target); 67 | LUAI_FUNC void luaK_patchtohere (FuncState *fs, int list); 68 | LUAI_FUNC void luaK_concat (FuncState *fs, int *l1, int l2); 69 | LUAI_FUNC int luaK_getlabel (FuncState *fs); 70 | LUAI_FUNC void luaK_prefix (FuncState *fs, UnOpr op, expdesc *v); 71 | LUAI_FUNC void luaK_infix (FuncState *fs, BinOpr op, expdesc *v); 72 | LUAI_FUNC void luaK_posfix (FuncState *fs, BinOpr op, expdesc *v1, expdesc *v2); 73 | LUAI_FUNC void luaK_setlist (FuncState *fs, int base, int nelems, int tostore); 74 | 75 | 76 | #endif 77 | -------------------------------------------------------------------------------- /src/org/evilbinary/highliter/parsers/SyntaxHighlight.java: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 evilbinary. 2 | * rootdebug@163.com 3 | This program is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation, either version 3 of the License, or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program. If not, see . 15 | */ 16 | 17 | package org.evilbinary.highliter.parsers; 18 | 19 | import org.evilbinary.managers.Configure; 20 | 21 | import java.util.ArrayList; 22 | import java.util.List; 23 | 24 | public class SyntaxHighlight { 25 | static { 26 | System.loadLibrary("lua"); 27 | System.loadLibrary("highlight"); 28 | } 29 | 30 | private String mArgs = "hilighlight"; 31 | private String mDelim = ":"; 32 | 33 | private List tokenList = new ArrayList(100); 34 | 35 | public SyntaxHighlight(Configure conf) { 36 | initArgs(conf); 37 | } 38 | 39 | private void initArgs(Configure conf) { 40 | addArg("-D" + conf.mDataPath); 41 | addArg("-d" + conf.mDataPath); 42 | if (conf.mLanguage != null && !conf.mLanguage.equals("")) 43 | addArg("--syntax=" + conf.mLanguage); 44 | addArg("-f"); 45 | addArg("--print-style");// first gencssfile 46 | if (conf.mTheme != null && !conf.mTheme.equals("")) 47 | addArg("-s" + conf.mTheme); 48 | if (conf.mHighlightCss != null && !conf.mHighlightCss.equals("")) 49 | addArg("-c" + conf.mHighlightCss); 50 | 51 | if (conf.mFont != null && !conf.mFont.equals("")) 52 | addArg("--font=" + conf.mFont); 53 | if (conf.mFontSize != 0) 54 | addArg("--font-size=" + conf.mFontSize); 55 | if (conf.mEncoding != null && !conf.mEncoding.equals("")) 56 | addArg("--encoding=" + conf.mEncoding); 57 | addArg("-Oobject"); 58 | init(mArgs); 59 | } 60 | 61 | public void loadConfigure(Configure conf) { 62 | initArgs(conf); 63 | } 64 | 65 | private void addArg(String arg) { 66 | mArgs += mDelim + arg; 67 | } 68 | 69 | public void addToken(int state, String string, String style) { 70 | //System.out.println("addToken:"+state+" "+string+" "+style ); 71 | Token token = new Token(); 72 | token.state = state; 73 | token.string = string; 74 | token.style = style; 75 | tokenList.add(token); 76 | } 77 | 78 | public List getTokenList() { 79 | return tokenList; 80 | } 81 | 82 | private native int init(String args); 83 | 84 | public native String pase(String codeBlock); 85 | 86 | public native String getTheme(String name); 87 | 88 | } 89 | -------------------------------------------------------------------------------- /jni/highlight/include/stringtools.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | stringtools.h - description 3 | ------------------- 4 | begin : Mon Dec 10 2001 5 | copyright : (C) 2001-2010 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef STRINGTOOLS_H 29 | #define STRINGTOOLS_H 30 | 31 | #include 32 | #include 33 | #include 34 | 35 | using namespace std; 36 | 37 | /// Contains methods for string manipulation 38 | 39 | namespace StringTools 40 | { 41 | 42 | /** Change Keyword case */ 43 | enum KeywordCase 44 | { 45 | CASE_UNCHANGED, ///< do not alter case 46 | CASE_LOWER, ///< convert to lower case 47 | CASE_UPPER, ///< convert to upper case 48 | CASE_CAPITALIZE ///< convert first character to upper case 49 | }; 50 | 51 | /** Change character case of strings 52 | \param s input string 53 | \param kcase case modification indicator 54 | \return modified string 55 | */ 56 | string change_case ( const string & s, 57 | const KeywordCase kcase = CASE_LOWER ) throw(); 58 | 59 | /** Trim string (remove whitespace) 60 | \param value String 61 | \return string trimmed on the right 62 | */ 63 | string trimRight ( const string &value ); 64 | 65 | string trim(const string& s); 66 | 67 | /** Split string and return items separated by a delimiter 68 | \param s string containing tokens 69 | \param delim Token delimiter 70 | \return vector containing found tokens */ 71 | vector splitString ( const string& s, unsigned char delim ); 72 | 73 | /** Convert string to a numeric value of the given type 74 | \param val variable of specified type which will contain the numeric value 75 | \param s string containing a number 76 | \param f format specifier function (IO manipulator) 77 | \return true if successfull */ 78 | template 79 | bool str2num ( T &val, const std::string& s, std::ios_base& ( *f ) ( std::ios_base& ) ) 80 | { 81 | std::istringstream iss ( s ); 82 | return ! ( iss >> f >> val ).fail(); 83 | } 84 | 85 | int calcWeight(const string&s); 86 | 87 | string getPathAcronym(const string&path, char delim); 88 | } 89 | 90 | #endif 91 | -------------------------------------------------------------------------------- /jni/highlight/core/elementstyle.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | elementstyle.cpp - description 3 | ------------------- 4 | begin : Son Nov 10 2002 5 | copyright : (C) 2002-2007 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | /* 10 | This file is part of Highlight. 11 | 12 | Highlight is free software: you can redistribute it and/or modify 13 | it under the terms of the GNU General Public License as published by 14 | the Free Software Foundation, either version 3 of the License, or 15 | (at your option) any later version. 16 | 17 | Highlight is distributed in the hope that it will be useful, 18 | but WITHOUT ANY WARRANTY; without even the implied warranty of 19 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 | GNU General Public License for more details. 21 | 22 | You should have received a copy of the GNU General Public License 23 | along with Highlight. If not, see . 24 | */ 25 | 26 | #include 27 | #include "elementstyle.h" 28 | 29 | namespace highlight 30 | { 31 | 32 | ElementStyle::ElementStyle (const Colour &col, bool b, bool i, bool u ) 33 | : colour ( col ) , bold ( b ), italic ( i ), underline ( u ) 34 | {} 35 | 36 | ElementStyle:: ElementStyle ( const string & elementStyleString ) 37 | : bold ( false ), italic ( false ), underline ( false ) 38 | { 39 | set ( elementStyleString ); 40 | } 41 | 42 | ElementStyle::ElementStyle() 43 | : bold ( false ), italic ( false ), underline ( false ) 44 | {} 45 | 46 | void ElementStyle::set ( const string & elementStyleString ) 47 | { 48 | istringstream valueStream ( elementStyleString ); 49 | string r, g, b, attr; 50 | 51 | char c='\0'; 52 | valueStream >> c; 53 | 54 | if ( c=='#' ) 55 | { 56 | string htmlNotation; 57 | valueStream >> htmlNotation; 58 | if ( htmlNotation.size() < 6 ) return; 59 | r = htmlNotation.substr ( 0, 2 ); 60 | g = htmlNotation.substr ( 2, 2 ); 61 | b = htmlNotation.substr ( 4, 2 ); 62 | } 63 | else 64 | { 65 | valueStream.putback ( c ); 66 | valueStream >> r; 67 | valueStream >> g; 68 | valueStream >> b; 69 | } 70 | 71 | colour.setRed ( r ); 72 | colour.setGreen ( g ); 73 | colour.setBlue ( b ); 74 | while ( valueStream >> attr ) 75 | { 76 | if ( attr=="italic" ) 77 | { 78 | italic = true; 79 | } 80 | else if ( attr=="bold" ) 81 | { 82 | bold = true; 83 | } 84 | else if ( attr=="underline" ) 85 | { 86 | underline = true; 87 | } 88 | } 89 | } 90 | 91 | ElementStyle::~ElementStyle() 92 | {} 93 | 94 | bool ElementStyle::isItalic() const 95 | { 96 | return italic; 97 | } 98 | bool ElementStyle::isBold() const 99 | { 100 | return bold; 101 | } 102 | bool ElementStyle::isUnderline() const 103 | { 104 | return underline; 105 | } 106 | Colour ElementStyle::getColour() const 107 | { 108 | return colour; 109 | } 110 | 111 | } 112 | -------------------------------------------------------------------------------- /jni/highlight/core/Diluculum/LuaWrappers.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************\ 2 | * LuaWrappers.cpp * 3 | * Making C++ stuff accessible from Lua. * 4 | * * 5 | * * 6 | * Copyright (C) 2005-2013 by Leandro Motta Barros. * 7 | * * 8 | * Permission is hereby granted, free of charge, to any person obtaining a copy * 9 | * of this software and associated documentation files (the "Software"), to * 10 | * deal in the Software without restriction, including without limitation the * 11 | * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or * 12 | * sell copies of the Software, and to permit persons to whom the Software is * 13 | * furnished to do so, subject to the following conditions: * 14 | * * 15 | * The above copyright notice and this permission notice shall be included in * 16 | * all copies or substantial portions of the Software. * 17 | * * 18 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * 19 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * 20 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * 21 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * 22 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * 23 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS * 24 | * IN THE SOFTWARE. * 25 | \******************************************************************************/ 26 | 27 | #include 28 | #include 29 | 30 | 31 | namespace Diluculum 32 | { 33 | namespace Impl 34 | { 35 | // - ReportErrorFromCFunction -------------------------------------------- 36 | void ReportErrorFromCFunction (lua_State* ls, const::std::string& what) 37 | { 38 | lua_Debug ar; 39 | int ret = lua_getstack (ls, 0, &ar); 40 | 41 | assert (ret != 0 && "'lua_getstack()' wasn't supposed to return '0' " 42 | "here. Possible error cause: 'ReportErrorFromCFunction()' " 43 | "wasn't called from a Lua function implemented in C."); 44 | 45 | ret = lua_getinfo (ls, "n", &ar); 46 | 47 | assert (ret != 0 && "'lua_getinfo()' wasn't supposed to return '1' " 48 | "here. *Nothing* could go wrong at this point! Oh, well..."); 49 | 50 | const std::string msg = std::string("Error found when calling '") 51 | + ar.name + "': " + what; 52 | 53 | lua_pushstring (ls, msg.c_str()); 54 | lua_error (ls); 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /src/org/evilbinary/utils/DirUtil.java: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 evilbinary. 2 | * rootdebug@163.com 3 | This program is free software: you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation, either version 3 of the License, or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program. If not, see . 15 | */ 16 | 17 | package org.evilbinary.utils; 18 | 19 | import java.io.File; 20 | 21 | import android.content.Context; 22 | import android.os.Environment; 23 | 24 | public class DirUtil { 25 | 26 | public static String filesDir; 27 | public static String systemDir; 28 | 29 | public static void getEnvironmentDirectories() { 30 | Logger.i("getRootDirectory(): " 31 | + Environment.getRootDirectory().toString()); 32 | Logger.i("getDataDirectory(): " 33 | + Environment.getDataDirectory().toString()); 34 | Logger.i("getDownloadCacheDirectory(): " 35 | + Environment.getDownloadCacheDirectory().toString()); 36 | Logger.i("getExternalStorageDirectory(): " 37 | + Environment.getExternalStorageDirectory().toString()); 38 | 39 | Logger.i("getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES): " 40 | + Environment.getExternalStoragePublicDirectory( 41 | Environment.DIRECTORY_PICTURES).toString()); 42 | // Logger.i( 43 | // "isExternalStorageEmulated(): " 44 | // + Environment.isExternalStorageEmulated()); 45 | // 46 | // Logger.i( 47 | // "isExternalStorageRemovable(): " 48 | // + Environment.isExternalStorageRemovable()); 49 | } 50 | 51 | public static void getApplicationDirectories(Context context) { 52 | 53 | Logger.i("context.getFilesDir(): " + context.getFilesDir().toString()); 54 | Logger.i("context.getCacheDir(): " + context.getCacheDir().toString()); 55 | 56 | // methods below will return null if the permissions denied 57 | Logger.i( 58 | 59 | "context.getExternalFilesDir(Environment.DIRECTORY_MOVIES): " 60 | + context.getExternalFilesDir(Environment.DIRECTORY_MOVIES)); 61 | 62 | Logger.i("context.getExternalCacheDir(): " 63 | + context.getExternalCacheDir()); 64 | } 65 | public static String getFilesDir(Context context){ 66 | return context.getFilesDir().toString(); 67 | } 68 | public static String getDir(Context context){ 69 | return context.getFilesDir().getParent().toString(); 70 | } 71 | public static String getCacheDir(Context context){ 72 | return context.getCacheDir().toString(); 73 | } 74 | public static String getExternalFilesDir(Context context){ 75 | return context.getExternalFilesDir(Environment.DIRECTORY_MOVIES).toString(); 76 | } 77 | public static String getExternalCacheDir(Context context){ 78 | return context.getExternalCacheDir().toString(); 79 | } 80 | public static File getExternalStorageDirectory(){ 81 | return Environment.getExternalStorageDirectory(); 82 | } 83 | 84 | 85 | 86 | } 87 | -------------------------------------------------------------------------------- /src/org/evilbinary/utils/RichTextUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2014 ChatWing 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | package org.evilbinary.utils; 18 | 19 | import android.text.Spannable; 20 | import android.text.SpannableString; 21 | import android.text.Spanned; 22 | import android.text.style.CharacterStyle; 23 | 24 | import java.net.MalformedURLException; 25 | import java.net.URL; 26 | public class RichTextUtils { 27 | public static Spannable replaceAll(Spanned original, 28 | Class sourceType, 29 | SpanConverter converter) { 30 | SpannableString result = new SpannableString(original); 31 | A[] spans = result.getSpans(0, result.length(), sourceType); 32 | 33 | for (A span : spans) { 34 | int start = result.getSpanStart(span); 35 | int end = result.getSpanEnd(span); 36 | int flags = result.getSpanFlags(span); 37 | 38 | result.removeSpan(span); 39 | result.setSpan(converter.convert(span), start, end, flags); 40 | } 41 | 42 | return (result); 43 | } 44 | 45 | public static boolean isUrl(String imageUrl) { 46 | try { 47 | new URL(imageUrl); 48 | return true; 49 | } catch (MalformedURLException e) { 50 | e.printStackTrace(); 51 | } 52 | return false; 53 | } 54 | 55 | public interface SpanConverter { 56 | B convert(A span); 57 | } 58 | 59 | public static String autoInsertBBCode(String message) { 60 | // Separate input by spaces ( URLs don't have spaces ) 61 | String[] parts = message.split("\\s"); 62 | StringBuilder builder = new StringBuilder(); 63 | // Attempt to convert each item into an URL. 64 | for (String item : parts) { 65 | try { 66 | URL url = new URL(item); 67 | // If possible then replace with anchor... 68 | builder.append("[url]" + url + "[/url] "); 69 | } catch (MalformedURLException e) { 70 | // If there was an URL that was not it!... 71 | builder.append(item + " "); 72 | } catch (StringIndexOutOfBoundsException e) { 73 | //Fix weird bug on android 2.3 and possibly honeycomb 74 | //https://code.google.com/p/android/issues/detail?id=15960 75 | builder.append(item + " "); 76 | } 77 | } 78 | return builder.toString().trim(); 79 | } 80 | } -------------------------------------------------------------------------------- /jni/lua/lopcodes.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lopcodes.c,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** See Copyright Notice in lua.h 4 | */ 5 | 6 | 7 | #define lopcodes_c 8 | #define LUA_CORE 9 | 10 | 11 | #include "lopcodes.h" 12 | 13 | 14 | /* ORDER OP */ 15 | 16 | const char *const luaP_opnames[NUM_OPCODES+1] = { 17 | "MOVE", 18 | "LOADK", 19 | "LOADBOOL", 20 | "LOADNIL", 21 | "GETUPVAL", 22 | "GETGLOBAL", 23 | "GETTABLE", 24 | "SETGLOBAL", 25 | "SETUPVAL", 26 | "SETTABLE", 27 | "NEWTABLE", 28 | "SELF", 29 | "ADD", 30 | "SUB", 31 | "MUL", 32 | "DIV", 33 | "MOD", 34 | "POW", 35 | "UNM", 36 | "NOT", 37 | "LEN", 38 | "CONCAT", 39 | "JMP", 40 | "EQ", 41 | "LT", 42 | "LE", 43 | "TEST", 44 | "TESTSET", 45 | "CALL", 46 | "TAILCALL", 47 | "RETURN", 48 | "FORLOOP", 49 | "FORPREP", 50 | "TFORLOOP", 51 | "SETLIST", 52 | "CLOSE", 53 | "CLOSURE", 54 | "VARARG", 55 | NULL 56 | }; 57 | 58 | 59 | #define opmode(t,a,b,c,m) (((t)<<7) | ((a)<<6) | ((b)<<4) | ((c)<<2) | (m)) 60 | 61 | const lu_byte luaP_opmodes[NUM_OPCODES] = { 62 | /* T A B C mode opcode */ 63 | opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_MOVE */ 64 | ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_LOADK */ 65 | ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_LOADBOOL */ 66 | ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_LOADNIL */ 67 | ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_GETUPVAL */ 68 | ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_GETGLOBAL */ 69 | ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_GETTABLE */ 70 | ,opmode(0, 0, OpArgK, OpArgN, iABx) /* OP_SETGLOBAL */ 71 | ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_SETUPVAL */ 72 | ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABLE */ 73 | ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_NEWTABLE */ 74 | ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_SELF */ 75 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_ADD */ 76 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_SUB */ 77 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MUL */ 78 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_DIV */ 79 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MOD */ 80 | ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_POW */ 81 | ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_UNM */ 82 | ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_NOT */ 83 | ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_LEN */ 84 | ,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_CONCAT */ 85 | ,opmode(0, 0, OpArgR, OpArgN, iAsBx) /* OP_JMP */ 86 | ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_EQ */ 87 | ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LT */ 88 | ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LE */ 89 | ,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TEST */ 90 | ,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TESTSET */ 91 | ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_CALL */ 92 | ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_TAILCALL */ 93 | ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_RETURN */ 94 | ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORLOOP */ 95 | ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORPREP */ 96 | ,opmode(1, 0, OpArgN, OpArgU, iABC) /* OP_TFORLOOP */ 97 | ,opmode(0, 0, OpArgU, OpArgU, iABC) /* OP_SETLIST */ 98 | ,opmode(0, 0, OpArgN, OpArgN, iABC) /* OP_CLOSE */ 99 | ,opmode(0, 1, OpArgU, OpArgN, iABx) /* OP_CLOSURE */ 100 | ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_VARARG */ 101 | }; 102 | 103 | -------------------------------------------------------------------------------- /jni/highlight/include/stylecolour.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | stylecolour.h - description 3 | ------------------- 4 | begin : Die Nov 5 2002 5 | copyright : (C) 2002 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #ifndef STYLECOLOUR_H 29 | #define STYLECOLOUR_H 30 | 31 | #include 32 | 33 | #include "enums.h" 34 | 35 | 36 | 37 | 38 | using namespace std; 39 | 40 | namespace highlight 41 | { 42 | 43 | /**\brief Stores colours and returns red, green and blue values in different formats 44 | * @author Andre Simon 45 | */ 46 | 47 | struct RGBVal 48 | { 49 | int iRed, ///< Red value 50 | iGreen, ///< Green value 51 | iBlue; ///< Blue value 52 | }; 53 | 54 | class Colour 55 | { 56 | public: 57 | /** Constructor 58 | \param red Red value in hex notation 59 | \param green Blue value in hex notation 60 | \param blue Green value in hex notation 61 | */ 62 | Colour ( const string & red, const string & green, const string & blue ); 63 | 64 | /** Constructor 65 | \param ColourString String with rgb values 66 | */ 67 | Colour ( const string & colourString ); 68 | 69 | Colour(); 70 | ~Colour() {}; 71 | 72 | /** Sets red, green and blue values 73 | \param ColourString String containing colour attributes 74 | */ 75 | void setRGB ( const string & colourString ); 76 | 77 | 78 | /** Sets red value 79 | \param red New red value */ 80 | void setRed ( const string & red ); 81 | 82 | /** Sets green value 83 | \param green New green value */ 84 | void setGreen ( const string & green ); 85 | 86 | /** Sets blue value 87 | \param blue New blue value */ 88 | void setBlue ( const string & blue ); 89 | 90 | /** @param type Output type 91 | @return Red value in color representation according to output type */ 92 | string getRed ( OutputType type ) const; 93 | /** @param type Output type 94 | @return Green value in color representation according to output type */ 95 | string getGreen ( OutputType type ) const; 96 | /** @param type Output type 97 | @return Blue value in color representation according to output type */ 98 | string getBlue ( OutputType type ) const; 99 | 100 | private: 101 | RGBVal rgb; 102 | string int2str ( int, std::ios_base& ( *f ) ( std::ios_base& ) ) const; 103 | string float2str ( double ) const; 104 | }; 105 | 106 | } 107 | 108 | #endif 109 | -------------------------------------------------------------------------------- /jni/highlight/core/ansigenerator.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | ansigenerator.cpp - description 3 | ------------------- 4 | begin : Jul 5 2004 5 | copyright : (C) 2004-2007 by Andre Simon 6 | email : andre.simon1@gmx.de 7 | ***************************************************************************/ 8 | 9 | 10 | /* 11 | This file is part of Highlight. 12 | 13 | Highlight is free software: you can redistribute it and/or modify 14 | it under the terms of the GNU General Public License as published by 15 | the Free Software Foundation, either version 3 of the License, or 16 | (at your option) any later version. 17 | 18 | Highlight is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 | GNU General Public License for more details. 22 | 23 | You should have received a copy of the GNU General Public License 24 | along with Highlight. If not, see . 25 | */ 26 | 27 | 28 | #include 29 | 30 | #include "ansigenerator.h" 31 | 32 | using namespace std; 33 | 34 | namespace highlight 35 | { 36 | 37 | string AnsiGenerator::getOpenTag ( const string&font, 38 | const string&fgCol, const string&bgCol ) 39 | { 40 | ostringstream s; 41 | s << "\033["< 31 | 32 | namespace Diluculum 33 | { 34 | 35 | /** Converts and returns the element at index \c index on the stack to a 36 | * \c LuaValue. This keeps the Lua stack untouched. Oh, yes, and it accepts 37 | * both positive and negative indices, just like the standard functions on 38 | * the Lua C API. 39 | * @throw LuaTypeError If the element at \c index cannot be converted to a 40 | * \c LuaValue. This can happen if the value at that position is, for 41 | * example, a "Lua Thread" that is not supported by \c LuaValue. 42 | */ 43 | LuaValue ToLuaValue (lua_State* state, int index); 44 | 45 | /** Pushes the value stored at \c value into the Lua stack of \c state. For 46 | * most types, this is equivalent to simply calling the appropriate 47 | * lua_push*() function. For other types, like tables and Lua 48 | * functions, the implementation is more complicated. 49 | * @note If \c value holds a table, then any entry that happens to have 50 | * \c Nil as key will be ignored. (Since Lua does not support \c nil 51 | * as a table index.) 52 | */ 53 | void PushLuaValue (lua_State* state, const LuaValue& value); 54 | 55 | } // namespace Diluculum 56 | 57 | #endif // _DILUCULUM_LUA_UTILS_HPP_ 58 | -------------------------------------------------------------------------------- /jni/highlight/gui-qt/io_report.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | io_report 4 | 5 | 6 | 7 | 0 8 | 0 9 | 436 10 | 372 11 | 12 | 13 | 14 | Error summary 15 | 16 | 17 | 18 | :/hl_icon2.png:/hl_icon2.png 19 | 20 | 21 | 22 | 23 | 24 | Input errors: 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | Remove files above from input file list 35 | 36 | 37 | 38 | 39 | 40 | 41 | Qt::Horizontal 42 | 43 | 44 | 45 | 46 | 47 | 48 | Output errors: 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | Qt::Horizontal 59 | 60 | 61 | 62 | 63 | 64 | 65 | Reformatting not possible: 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | Qt::Horizontal 76 | 77 | 78 | QDialogButtonBox::Ok 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | buttonBox 90 | accepted() 91 | io_report 92 | accept() 93 | 94 | 95 | 248 96 | 254 97 | 98 | 99 | 157 100 | 274 101 | 102 | 103 | 104 | 105 | buttonBox 106 | rejected() 107 | io_report 108 | reject() 109 | 110 | 111 | 316 112 | 260 113 | 114 | 115 | 286 116 | 274 117 | 118 | 119 | 120 | 121 | 122 | -------------------------------------------------------------------------------- /jni/lua/lstring.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lstring.c,v 2.8.1.1 2007/12/27 13:02:25 roberto Exp $ 3 | ** String table (keeps all strings handled by Lua) 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | 8 | #include 9 | 10 | #define lstring_c 11 | #define LUA_CORE 12 | 13 | #include "lua.h" 14 | 15 | #include "lmem.h" 16 | #include "lobject.h" 17 | #include "lstate.h" 18 | #include "lstring.h" 19 | 20 | 21 | 22 | void luaS_resize (lua_State *L, int newsize) { 23 | GCObject **newhash; 24 | stringtable *tb; 25 | int i; 26 | if (G(L)->gcstate == GCSsweepstring) 27 | return; /* cannot resize during GC traverse */ 28 | newhash = luaM_newvector(L, newsize, GCObject *); 29 | tb = &G(L)->strt; 30 | for (i=0; isize; i++) { 33 | GCObject *p = tb->hash[i]; 34 | while (p) { /* for each node in the list */ 35 | GCObject *next = p->gch.next; /* save next */ 36 | unsigned int h = gco2ts(p)->hash; 37 | int h1 = lmod(h, newsize); /* new position */ 38 | lua_assert(cast_int(h%newsize) == lmod(h, newsize)); 39 | p->gch.next = newhash[h1]; /* chain it */ 40 | newhash[h1] = p; 41 | p = next; 42 | } 43 | } 44 | luaM_freearray(L, tb->hash, tb->size, TString *); 45 | tb->size = newsize; 46 | tb->hash = newhash; 47 | } 48 | 49 | 50 | static TString *newlstr (lua_State *L, const char *str, size_t l, 51 | unsigned int h) { 52 | TString *ts; 53 | stringtable *tb; 54 | if (l+1 > (MAX_SIZET - sizeof(TString))/sizeof(char)) 55 | luaM_toobig(L); 56 | ts = cast(TString *, luaM_malloc(L, (l+1)*sizeof(char)+sizeof(TString))); 57 | ts->tsv.len = l; 58 | ts->tsv.hash = h; 59 | ts->tsv.marked = luaC_white(G(L)); 60 | ts->tsv.tt = LUA_TSTRING; 61 | ts->tsv.reserved = 0; 62 | memcpy(ts+1, str, l*sizeof(char)); 63 | ((char *)(ts+1))[l] = '\0'; /* ending 0 */ 64 | tb = &G(L)->strt; 65 | h = lmod(h, tb->size); 66 | ts->tsv.next = tb->hash[h]; /* chain new entry */ 67 | tb->hash[h] = obj2gco(ts); 68 | tb->nuse++; 69 | if (tb->nuse > cast(lu_int32, tb->size) && tb->size <= MAX_INT/2) 70 | luaS_resize(L, tb->size*2); /* too crowded */ 71 | return ts; 72 | } 73 | 74 | 75 | TString *luaS_newlstr (lua_State *L, const char *str, size_t l) { 76 | GCObject *o; 77 | unsigned int h = cast(unsigned int, l); /* seed */ 78 | size_t step = (l>>5)+1; /* if string is too long, don't hash all its chars */ 79 | size_t l1; 80 | for (l1=l; l1>=step; l1-=step) /* compute hash */ 81 | h = h ^ ((h<<5)+(h>>2)+cast(unsigned char, str[l1-1])); 82 | for (o = G(L)->strt.hash[lmod(h, G(L)->strt.size)]; 83 | o != NULL; 84 | o = o->gch.next) { 85 | TString *ts = rawgco2ts(o); 86 | if (ts->tsv.len == l && (memcmp(str, getstr(ts), l) == 0)) { 87 | /* string may be dead */ 88 | if (isdead(G(L), o)) changewhite(o); 89 | return ts; 90 | } 91 | } 92 | return newlstr(L, str, l, h); /* not found */ 93 | } 94 | 95 | 96 | Udata *luaS_newudata (lua_State *L, size_t s, Table *e) { 97 | Udata *u; 98 | if (s > MAX_SIZET - sizeof(Udata)) 99 | luaM_toobig(L); 100 | u = cast(Udata *, luaM_malloc(L, s + sizeof(Udata))); 101 | u->uv.marked = luaC_white(G(L)); /* is not finalized */ 102 | u->uv.tt = LUA_TUSERDATA; 103 | u->uv.len = s; 104 | u->uv.metatable = NULL; 105 | u->uv.env = e; 106 | /* chain it on udata list (after main thread) */ 107 | u->uv.next = G(L)->mainthread->next; 108 | G(L)->mainthread->next = obj2gco(u); 109 | return u; 110 | } 111 | 112 | --------------------------------------------------------------------------------