summaryrefslogtreecommitdiff
path: root/scite-fedora
diff options
context:
space:
mode:
Diffstat (limited to 'scite-fedora')
-rw-r--r--scite-fedora/README.md20
-rw-r--r--scite-fedora/SciTEGlobal.properties580
-rw-r--r--scite-fedora/scite.spec110
-rw-r--r--scite-fedora/stackrpms.lua278
-rw-r--r--scite-fedora/use-lua5.4.4.patch266
5 files changed, 1213 insertions, 41 deletions
diff --git a/scite-fedora/README.md b/scite-fedora/README.md
index 853489a..766ff41 100644
--- a/scite-fedora/README.md
+++ b/scite-fedora/README.md
@@ -4,21 +4,27 @@ https://src.fedoraproject.org/rpms/scite/tree/f29
# Reason for being in stackrpms
Fedora and CentOS do not package scite and I have use of them. CentOS 7 relies on version 3 of the application, but CentOS 8 and Fedora relies on version 5.
+Devuan Ceres already packages [scite](https://salsa.debian.org/debian/scite) but I want to add some customizations for myself.
+
# Reverse dependency matrix
-Distro | scite version
----------- | ---------------
-CentOS 6 | 3.7.6
-CentOS 7 | 3.7.6
-CentOS 8 | 5.1.3
-Fedora 33 | 5.1.3
+Distro | scite version
+------------ | ---------------
+CentOS 6 | 3.7.6
+CentOS 7 | 3.7.6
+CentOS 8 | 5.2.2
+Fedora 34 | 5.2.2
+Devuan Ceres | 5.2.2
# References
void linux [scite](https://github.com/void-linux/void-packages/blob/master/srcpkgs/scite/template) package guided me at version 5.0.1.
# Differences
-## From upstream
+## From upstream for Fedora
See file [stackrpms-scite.spec.diff](stackrpms-scite.spec.diff)
## Between scite-fedora and scite-el
Run file [fc-el-scite-diff.sh](fc-el-scite-diff.sh).
scite-fedora/fc-el-scite-diff.sh | vi -
+
+## From upstream for Devuan
+
diff --git a/scite-fedora/SciTEGlobal.properties b/scite-fedora/SciTEGlobal.properties
new file mode 100644
index 0000000..1dd5e11
--- /dev/null
+++ b/scite-fedora/SciTEGlobal.properties
@@ -0,0 +1,580 @@
+# SciTEGlobal.properties placed by scite package for stackrpms
+# Global initialisation file for SciTE
+# For Linux, place in $prefix/share/scite
+# For Windows, place in same directory as SciTE.EXE (or Sc1.EXE)
+# Documentation at http://www.scintilla.org/SciTEDoc.html
+
+# Globals
+
+# Window sizes and visibility
+if PLAT_WIN
+ position.left=0
+ position.top=0
+if PLAT_GTK
+ position.left=5
+ position.top=22
+position.width=$(scale 576)
+position.height=$(scale 740)
+#position.maximize=1
+#position.tile=1
+#full.screen.hides.menu=1
+#minimize.to.tray=1
+split.vertical=0
+#split.wide=1
+#output.horizontal.size=200
+#output.vertical.size=60
+#output.initial.hide=1
+#horizontal.scrollbar=0
+#horizontal.scroll.width=10000
+#horizontal.scroll.width.tracking=0
+#output.horizontal.scrollbar=0
+#output.horizontal.scroll.width=10000
+#output.horizontal.scroll.width.tracking=0
+#output.scroll=0
+#error.select.line=1
+#end.at.last.line=0
+tabbar.visible=1
+#tabbar.hide.one=1
+#tabbar.hide.index=1
+#tabbar.multiline=1
+#toolbar.visible=1
+#toolbar.usestockicons=1
+#toolbar.large=1
+#menubar.detachable=1
+#undo.redo.lazy=1
+statusbar.visible=1
+#fileselector.width=800
+#fileselector.height=600
+#fileselector.show.hidden=1
+#magnification=-1
+#output.magnification=-1
+
+# Sizes and visibility in edit pane
+line.margin.visible=1
+line.margin.width=4
+margin.width=$(scale 16)
+fold.margin.width=$(scale 14)
+#fold.margin.colour=#FF0000
+#fold.margin.highlight.colour=#0000FF
+#blank.margin.left=4
+#blank.margin.right=4
+#output.blank.margin.left=4
+buffered.draw=1
+#phases.draw=2
+if PLAT_WIN
+ technology=1
+#font.quality=3
+#font.locale=zh-Hans
+if PLAT_MAC
+ font.quality=3
+
+# Element styles
+#view.eol=1
+#control.char.symbol=.
+#representations=\x0D\x0A=\u20AA
+caret.period=500
+view.whitespace=0
+view.indentation.whitespace=1
+view.indentation.guides=1
+view.indentation.examine=3
+highlight.indentation.guides=1
+#caret.fore=#FF0000
+#caret.additional.fore=#FF00DF
+#caret.additional.blinks=0
+#caret.style=2
+#caret.width=2
+#caret.line.back=#FFFED83F
+#caret.line.layer=1
+#caret.line.frame=1
+edge.column=200
+edge.mode=0
+edge.colour=#C0DCC0
+braces.check=1
+braces.sloppy=1
+#selection.fore=#006000
+selection.layer=2
+if PLAT_WINNT
+ selection.back=#00000020
+if PLAT_GTK
+ selection.back=#0000001E
+ selection.secondary.back=#00800010
+if PLAT_MAC
+ selection.back=#00000020
+selection.additional.back=#00000010
+selection.inactive.back=#00000010
+#selection.additional.fore=#0000A0
+#selection.inactive.fore=#00A000
+#selection.secondary.fore=#A00000
+selection.always.visible=1
+#selection.rectangular.switch.mouse=1
+#selection.multiple=0
+#selection.additional.typing=0
+#selection.multipaste=0
+#virtual.space=3
+#rectangular.selection.modifier=8
+#whitespace.fore=#FF0000
+#whitespace.back=#FFF0F0
+#whitespace.size=2
+#error.marker.fore=#0000A0
+#error.marker.back=#DADAFF
+#error.inline=1
+bookmark.fore=#BE0000
+#bookmark.back=#FFFFA0
+#bookmark.alpha=
+#bookmark.stroke.width=200
+#bookmark.symbol=3
+#find.mark=#0000FF
+#find.mark.indicator=style:compositionthick,colour:#FFB700,under
+#highlight.current.word=1
+#highlight.current.word.by.style=1
+#highlight.current.word.colour=#00D040
+#highlight.current.word.indicator=style:roundbox,colour:#0080FF,under,outlinealpha:140,fillalpha:80
+filter.match.indicator=style:compositionthick,colour:#FFB700,under
+#filter.match.back=#FFB00030
+#filter.context=2
+#hidden.line.colour=2
+#indicators.alpha=63
+#indicators.under=1
+
+# Scripting
+ext.lua.startup.script=$(SciteUserHome)/SciTEStartup.lua
+ext.lua.auto.reload=1
+#ext.lua.reset=1
+
+# Checking
+are.you.sure=1
+#are.you.sure.for.build=1
+#save.all.for.build=1
+#quit.on.close.last=1
+#load.on.activate=1
+#save.on.deactivate=1
+#are.you.sure.on.reload=1
+#save.on.timer=20
+#reload.preserves.undo=1
+#check.if.already.open=1
+#temp.files.sync.load=1
+default.file.ext=.cxx
+#source.default.extensions=.h|.cxx|.bat
+title.full.path=1
+#title.show.buffers=1
+#pathbar.visible=1
+save.recent=1
+save.session=1
+#session.bookmarks=1
+#session.folds=1
+#save.position=1
+#save.find=1
+#open.dialog.in.file.directory=1
+#strip.trailing.spaces=1
+#ensure.final.line.end=1
+#ensure.consistent.line.ends=1
+#save.deletes.first=1
+#save.check.modified.time=1
+buffers=100
+#buffers.zorder.switching=1
+#api.*.cxx=d:\api\w.api
+#locale.properties=locale.de.properties
+#translation.missing=***
+#read.only=1
+#read.only.indicator=1
+#background.open.size=20000
+#background.save.size=20000
+if PLAT_GTK
+ background.save.size=10000000
+#max.file.size=1
+file.size.large=100000000
+file.size.no.styles=10000000
+#lexilla.path=.
+
+# Indentation
+tabsize=8
+indent.size=8
+use.tabs=1
+#indent.auto=1
+indent.automatic=1
+indent.opening=0
+indent.closing=0
+#tab.indents=0
+#backspace.unindents=0
+
+# Wrapping of long lines
+wrap=1
+wrap.style=
+#cache.layout=3
+#output.wrap=1
+#output.cache.layout=3
+threads.layout=16
+#wrap.visual.flags=3
+#wrap.visual.flags.location=3
+#wrap.indent.mode=1
+#wrap.visual.startindent=4
+
+#idle.styling=1
+#output.idle.styling=1
+
+# Folding
+# enable folding, and show lines below when collapsed.
+fold=1
+fold.compact=1
+fold.flags=16
+#fold.line.colour=#80800080
+fold.symbols=1
+#fold.fore=#000000
+#fold.back=#808080
+#fold.highlight=1
+#fold.highlight.colour=#00C0C0
+#fold.stroke.width=200
+#fold.on.open=1
+fold.comment=1
+fold.preprocessor=1
+
+# Find and Replace
+# Internal search always available with recursive capability so use in preference to external tool
+find.command=
+# findstr is available on recent versions of Windows including 2000
+#if PLAT_WIN
+# find.command=findstr /n /s $(find.what) $(find.files)
+#find.input=$(find.what)
+#if PLAT_GTK
+# find.command=grep --line-number "$(find.what)" $(find.files)
+find.files=*.c *.cxx *.h
+#find.in.files.close.on.find=0
+#find.in.dot=1
+#find.in.binary=1
+#find.in.directory=
+#find.close.on.find=0
+#find.replace.matchcase=1
+#find.replace.escapes=1
+#find.replace.regexp=1
+#find.replace.regexp.posix=1
+#find.replace.regexp.cpp11=1
+#find.replace.wrap=0
+#find.replacewith.focus=0
+#find.replace.advanced=1
+find.use.strip=1
+#find.strip.incremental=1
+#find.indicator.incremental=style:compositionthick,colour:#FFB700,under
+replace.use.strip=1
+#replace.strip.incremental=1
+#strip.button.height=24
+#strip.shortcuts.enable=0
+
+# Behaviour
+#eol.mode=LF
+eol.auto=1
+clear.before.execute=0
+#vc.home.key=1
+#wrap.aware.home.end.keys=1
+#autocompleteword.automatic=1
+#autocomplete.choose.single=1
+#autocomplete.*.fillups=([
+#autocomplete.*.start.characters=.:
+#autocomplete.*.typesep=!
+#autocomplete.fore=#80FFA0
+#autocomplete.back=#000000
+#autocomplete.selected.fore=#00FF40
+#autocomplete.selected.back=#006040
+#autocomplete.visible.item.count=15
+
+caret.policy.xslop=1
+caret.policy.width=20
+caret.policy.xstrict=0
+caret.policy.xeven=0
+caret.policy.xjumps=0
+caret.policy.yslop=1
+caret.policy.lines=1
+caret.policy.ystrict=1
+caret.policy.yeven=1
+caret.policy.yjumps=0
+#visible.policy.strict=1
+#visible.policy.slop=1
+#visible.policy.lines=4
+#time.commands=1
+#caret.sticky=1
+#properties.directory.enable=1
+#editor.config.enable=1
+#save.path.suggestion=$(SciteUserHome)\note_$(TimeStamp).txt
+
+# Status Bar
+statusbar.number=4
+statusbar.text.1=\
+li=$(LineNumber) co=$(ColumnNumber) $(OverType) ($(EOLMode)) $(FileAttr)
+statusbar.text.2=\
+$(BufferLength) chars in $(NbOfLines) lines. Sel: $(SelLength) chars.
+statusbar.text.3=\
+Now is: Date=$(CurrentDate) Time=$(CurrentTime)
+statusbar.text.4=\
+$(FileNameExt) : $(FileDate) - $(FileTime) | $(FileAttr)
+
+if PLAT_WIN
+ command.scite.help="file://$(SciteDefaultHome)\SciTEDoc.html"
+ command.scite.help.subsystem=2
+if PLAT_GTK
+ command.scite.help=xdg-open "file://$(SciteDefaultHome)/SciTEDoc.html"
+
+# Internationalisation
+# Japanese input code page 932 and ShiftJIS character set 128
+#code.page=932
+#character.set=128
+# Unicode
+code.page=65001
+#character.set=204
+#command.discover.properties=python /home/user/FileDetect.py "$(FilePath)"
+# Forward LC_CTYPE to setlocale which may affect language support.
+#LC_CTYPE=en_US.UTF-8
+if PLAT_GTK
+ output.code.page=65001
+if PLAT_MAC
+ output.code.page=65001
+#ime.interaction=1
+#ime.autocomplete=1
+#accessibility=0
+
+# Export
+#export.keep.ext=1
+export.html.wysiwyg=1
+#export.html.tabs=1
+#export.html.folding=1
+export.html.styleused=1
+#export.html.title.fullpath=1
+#export.rtf.tabs=1
+#export.rtf.font.face=Arial
+#export.rtf.font.size=9
+#export.rtf.tabsize=8
+#export.rtf.wysiwyg=0
+#export.tex.title.fullpath=1
+# Magnification (added to default screen font size)
+export.pdf.magnification=0
+# Font: Courier, Helvetica or Times (Courier line-wraps)
+export.pdf.font=Helvetica
+# Page size (in points): width, height
+# E.g. Letter 612,792; A4 595,842; maximum 14400,14400
+export.pdf.pagesize=595,842
+# Margins (in points): left, right, top, bottom
+export.pdf.margins=72,72,72,72
+export.xml.collapse.spaces=1
+export.xml.collapse.lines=1
+
+# Define values for use in the imported properties files
+chars.alpha=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
+chars.numeric=0123456789
+chars.accented=ŠšŒœŸÿÀàÁáÂâÃãÄäÅåÆæÇçÈèÉéÊêËëÌìÍíÎîÏïÐðÑñÒòÓóÔôÕõÖØøÙùÚúÛûÜüÝýÞþßö
+# This is a better set for Russian:
+#chars.accented=ÀàÁáÂâÃãÄäÅ娸ÆæÇçÈèÉéÊêËëÌìÍíÎîÏïÐðÑñÒòÓóÔôÕõÖö×÷ØøÙùÚúÛûÜüÝýÞþßÿ
+
+# The open.filter setting is used in the file selector which has a menu of filters to apply
+# to the types of files seen when opening.
+
+# Gather all settings with "*source.patterns." prefix from all active .properties files
+source.files=$(star *source.patterns.)
+source.all.filter=All Source|$(source.files)|
+
+# Each platform has a different idea of the most important filters
+if PLAT_WIN
+ all.files=All Files (*.*)|*.*|
+ top.filters=$(source.all.filter)$(all.files)
+if PLAT_GTK
+ all.files=All Files (*)|*|Hidden Files (.*)|.*|
+ top.filters=$(all.files)$(source.all.filter)
+# As macOS only greys out filtered files, show all as default
+if PLAT_MAC
+ all.files=All Files (*.*)|*.*|
+ top.filters=$(all.files)$(source.all.filter)
+
+# Gather all settings with "*filter." prefix from all active .properties files
+list.filters=$(star *filter.)
+
+open.filter=$(top.filters)$(list.filters)
+
+#save.filter=$(open.filter)
+
+# Give symbolic names to the set of fonts used in the standard styles.
+if PLAT_WIN
+ font.base=font:Verdana,size:9.4
+ font.small=font:Verdana,size:8
+ font.comment=font:Georgia,size:10.1
+ font.code.comment.box=$(font.comment)
+ font.code.comment.line=$(font.comment)
+ font.code.comment.doc=$(font.comment)
+ font.code.comment.nested=$(font.comment)
+ font.text=font:Times New Roman,size:11
+ font.text.comment=font:Verdana,size:9
+ font.embedded.base=font:Verdana,size:9
+ font.embedded.comment=font:Comic Sans MS,size:8
+ font.monospace=font:Consolas,size:8.9
+ font.monospace.small=font:Consolas,size:8
+ font.vbs=font:Candara,size:10
+if PLAT_GTK
+ font.base=font:DejaVu Sans,size:9
+ font.small=font:DejaVu Sans,size:8
+ font.comment=font:DejaVu Serif,size:9
+ font.code.comment.box=$(font.comment)
+ font.code.comment.line=$(font.comment)
+ font.code.comment.doc=$(font.comment)
+ font.code.comment.nested=$(font.comment)
+ font.text=font:DejaVu Serif,size:10
+ font.text.comment=font:Serif,size:9
+ font.embedded.base=font:Serif,size:9
+ font.embedded.comment=font:Serif,size:9
+ font.monospace=font:DejaVu Sans Mono,size:9
+ font.monospace.small=font:DejaVu Sans Mono,size:8
+ font.vbs=font:DejaVu Sans Mono,size:9
+if PLAT_MAC
+ font.base=font:Verdana,size:12
+ font.small=font:Verdana,size:10
+ font.comment=font:Georgia,size:13
+ font.code.comment.box=$(font.comment)
+ font.code.comment.line=$(font.comment)
+ font.code.comment.doc=$(font.comment)
+ font.code.comment.nested=$(font.comment)
+ font.text=font:Times New Roman,size:13
+ font.text.comment=font:Verdana,size:11
+ font.embedded.base=font:Verdana,size:11
+ font.embedded.comment=font:Comic Sans MS,size:10
+ font.monospace=font:Menlo,size:12
+ font.monospace.small=font:Menlo,size:10
+ font.vbs=font:Lucida Sans Unicode,size:12
+font.js=$(font.comment)
+font.monospaced.list=Consolas;Courier New;DejaVu Sans Mono;Menlo
+
+# Give symbolic names to the set of colours used in the standard styles.
+colour.code.comment.box=fore:#007F00
+colour.code.comment.line=fore:#007F00
+colour.code.comment.doc=fore:#3F703F
+colour.code.comment.nested=fore:#A0C0A0
+colour.text.comment=fore:#0000FF,back:#D0F0D0
+colour.other.comment=fore:#007F00
+colour.embedded.comment=back:#E0EEFF
+colour.embedded.js=back:#F0F0FF
+colour.notused=back:#FF0000
+
+colour.number=fore:#007F7F
+colour.keyword=fore:#00007F
+colour.string=fore:#7F007F
+colour.char=fore:#7F007F
+colour.operator=fore:#000000
+colour.preproc=fore:#7F7F00
+colour.error=fore:#FFFF00,back:#FF0000
+
+# To de-emphasize inactive code set traits.inactive
+#traits.inactive=,back:#F0F0F0,eolfilled
+traits.inactive=
+
+# Global default styles for all languages
+# Default
+style.*.32=$(font.base)
+# Line number
+style.*.33=back:#C0C0C0,$(font.base)
+# Brace highlight
+style.*.34=fore:#0000FF,bold
+# Brace incomplete highlight
+style.*.35=fore:#FF0000,bold
+# Control characters
+style.*.36=
+# Indentation guides
+style.*.37=fore:#C0C0C0,back:#FFFFFF
+
+# Printing
+#print.colour.mode=1
+print.magnification=-1
+# Windows-only setup: left, right, top, bottom margins, in local units:
+# hundredths of millimeters or thousandths of inches
+print.margins=1500,1000,1000,1500
+# Header/footer:
+print.header.format=$(FileNameExt) -- Printed on $(CurrentDate), $(CurrentTime) -- Page $(CurrentPage)
+print.footer.format=$(FilePath) -- File date: $(FileDate) -- File time: $(FileTime)
+# Header/footer style
+print.header.style=font:Arial,size:12,bold
+print.footer.style=font:Arial Narrow,size:10,italics
+
+# Experimental undocumented settings
+#bidirectional=1
+
+# Warnings - only works on Windows and needs to be pointed at files on machine
+#if PLAT_WIN
+# warning.findwrapped=100,E:\Windows\Media\SFX\Boing.wav
+# warning.notfound=0,Effect.wav
+# warning.wrongfile=0,Glass.wav
+# warning.executeok=0,Fanfare.wav
+# warning.executeko=100,GlassBreak.wav
+# warning.nootherbookmark=100,Boing2.wav
+
+#create.hidden.console=1
+
+# Define the Lexer menu,
+# Each item contains three parts: menu string | file extension | key
+# The only keys allowed currently are based on F-keys and alphabetic keys and look like
+# [Ctrl+][Shift+][Fn|a] such as F12 or Ctrl+Shift+D.
+# A '&' may be placed before a letter to be used as an accelerator. This does not work on GTK+.
+
+keyText=Shift+F11
+keyMake=Ctrl+Shift+F11
+keyHTML=F12
+keyXML=Shift+F12
+keyIndent=Ctrl+Shift+F12
+# On macOS, F11 is used by Expose, F12 by Dashbard
+if PLAT_MAC
+ os.x.home.end.keys=1
+ keyText=Shift+F13
+ keyMake=Ctrl+Shift+F13
+ keyHTML=Ctrl+Shift+F14
+ keyXML=Shift+F14
+ keyIndent=
+
+# Gather all settings with "*language." prefix from all active .properties files
+menu.language=$(star *language.)
+
+# User defined key commands
+user.shortcuts=\
+Ctrl+Shift+V|IDM_PASTEANDDOWN|\
+Ctrl+PageUp|IDM_PREVFILE|\
+Ctrl+PageDown|IDM_NEXTFILE|
+
+#KeypadPlus|IDM_EXPAND|\
+#KeypadMinus|IDM_BLOCK_COMMENT|
+
+#user.context.menu=\
+#||\
+#Next File|IDM_NEXTFILE|\
+#Prev File|IDM_PREVFILE|
+
+# To keep menus short, these .properties files are not loaded by default.
+imports.exclude=abaqus abbrev ada asl asn1 ave avs baan blitzbasic \
+bullant caml cil cmake cobol coffeescript csound d dataflex ecl eiffel \
+Embedded erlang escript flagship forth fortran freebasic fsharp gap \
+haskell hex kix latex lisp lot lout matlab maxima metapost mmixal \
+modula3 nim nimrod opal oscript pascal pov powerpro ps purebasic r raku \
+rebol ruby sas scriptol smalltalk sorcins specman spice tacl tal tex \
+txt2tags verilog vhdl visualprolog
+# The set of imports allowed can be set with
+#imports.include=ave
+
+ext.lua.startup.script=$(SciteDefaultHome)/stackrpms.lua
+command.name.8.*=Emit &UTF8 Unicode
+command.subsystem.8.*=3
+command.8.*=emitUnicode
+command.mode.8.*=savebefore:no
+command.shortcut.8.*=Ctrl+U
+command.name.9.*=Insert &Date AH
+command.subsystem.9.*=3
+command.9.*=InsertDateAH
+command.mode.9.*=savebefore:no
+command.shortcut.9.*=F5
+command.name.10.*=Insert Date iso8601
+command.subsystem.10.*=3
+command.10.*=InsertDateIso
+command.mode.10.*=savebefore:no
+command.shortcut.10.*=Shift+F5
+
+# Import all the language specific properties files in this directory
+import *
+
+# bgstack15 improvements, in addition to a few sprinkled above.
+font.base=$(font.monospace)
+font.small=$(font.monospace)
+font.comment=$(font.monospace)
+font.text=$(font.monospace)
+font.text.comment=$(font.monospace)
+font.embedded.base=$(font.monospace)
+font.embedded.comment=$(font.monospace)
+font.vbs=$(font.monospace)
diff --git a/scite-fedora/scite.spec b/scite-fedora/scite.spec
index 1b6a692..1cc96e7 100644
--- a/scite-fedora/scite.spec
+++ b/scite-fedora/scite.spec
@@ -1,14 +1,41 @@
-# el is on 3.x, fc is on 5.x
-%global pkgversion 5.2.1
+# Tunables
+# el7 is on 3.x, el8/fc is on 5.x
+%global pkgversion 5.2.2
+# Use lua
+%define with_lua 1
+# Use bundled lua. If 0, then use distro lua
+%define with_bundled_lua 0
+# Add my custom lua script
+%define with_custom_script 1
+# Choose GTK=2 or GTK=3. El6 is hardcoded to 2.
+%define gtk_ 3
+
+# Calculated or derived flags. Do not mess with these.
%define tarballversion %( echo %pkgversion | tr -d '.' )
+%define luaflag NO_LUA=1
+%if 0%{with_lua}
+%define luaflag %nil
+%endif
+%define gtkflag GTK3=1
+%if 0%{gtk_} == 2
+%define gtkflag %nil
+%endif
+# Turn off lto for local builds but leave them on for copr
+%if !0%{?copr_username:1}
+%global _lto_cflags %nil
+%endif
%global __brp_check_rpaths %{nil}
-
%define scl_env %{nil}
%define scl_buildreq coreutils
%if 0%{?el6}
%define scl_env devtoolset-7
%define scl_buildreq devtoolset-7-toolchain
+ %define gtk_ 2
%endif
+%global all_build_flags '%{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \
+ CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{gtkflag} DEBUG=1 %{luaflag} libdir=%{_libdir}'
+# Just for vim:
+#'
Name: scite
Version: %{pkgversion}
@@ -20,15 +47,26 @@ Url: http://www.scintilla.org/SciTE.html
Packager: B. Stack <bgstack15@gmail.com>
Source0: https://www.scintilla.org/scite%{tarballversion}.tgz
+%if 0%{with_custom_script}
+Source1: stackrpms.lua
+%endif
+Source2: SciTEGlobal.properties
Patch0: scite-utf8.patch
+%if 0%{with_lua} && !0%{with_bundled_lua}
+Patch2: use-lua5.4.4.patch
+%endif
BuildRequires: desktop-file-utils
BuildRequires: gcc-c++
BuildRequires: %{scl_buildreq}
-%if !0%{?el6}
+%if 0%{gtk_} == 3
BuildRequires: gtk3-devel
-%endif
+%else
BuildRequires: gtk2-devel
+%endif
+%if 0%{with_lua} && !0%{with_bundled_lua}
+BuildRequires: lua-devel
+%endif
Provides: bundled(scintilla) = %{version}
@@ -38,45 +76,40 @@ Scintilla, it has grown to be a generally useful editor with facilities for
building and running programs.
%prep
+echo "USING gtkflag=\"%{gtkflag}\""
%setup -q -c
%patch0
+%if !0%{with_lua}
#remove bundled lua
rm -rf scite/lua
+%else
+%if !0%{with_bundled_lua}
+# Use distro lua
+rm -rf scite/lua
+%patch2 -p1
+%endif
+%endif
%build
-
-%if 0%{?el6}
- %if "%{?scl_env}" != ""
- scl enable %{scl_env} /bin/bash <<'EOFSCL'
- %endif
- make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \
- CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" DEBUG=1 -C lexilla/src \
- libdir=%{_libdir}
- make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \
- CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" DEBUG=1 -C scintilla/gtk \
- libdir=%{_libdir}
- #Build without lua support
- make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags}" \
- CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" DEBUG=1 NO_LUA=1 -C scite/gtk \
- libdir=%{_libdir}
- %if "%{?scl_env}" != ""
+%if "%{?scl_env}" != ""
+ scl enable %{scl_env} /bin/bash <<'EOFSCL'
+%endif
+make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \
+ CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{gtkflag} DEBUG=1 %{luaflag} -C lexilla/src \
+ libdir=%{_libdir}
+make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \
+ CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{gtkflag} DEBUG=1 %{luaflag} -C scintilla/gtk \
+ libdir=%{_libdir}
+#Build without lua support
+make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags}" \
+ CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" %{gtkflag} DEBUG=1 %{luaflag} -C scite/gtk \
+ libdir=%{_libdir}
+%if "%{?scl_env}" != ""
EOFSCL
- %endif
-%else
- make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \
- CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" GTK3=1 DEBUG=1 -C lexilla/src \
- libdir=%{_libdir}
- make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags} -shared -dynamiclib" \
- CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" GTK3=1 DEBUG=1 -C scintilla/gtk \
- libdir=%{_libdir}
- #Build without lua support
- make %{?_smp_mflags} LDFLAGS="%{?__global_ldflags}" \
- CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" GTK3=1 DEBUG=1 NO_LUA=1 -C scite/gtk \
- libdir=%{_libdir}
%endif
%install
-make DESTDIR=%{buildroot} -C scite/gtk install libdir=%{_libdir}
+make DESTDIR=%{buildroot} %{gtkflag} -C scite/gtk install libdir=%{_libdir}
ln -s SciTE %{buildroot}%{_bindir}/scite
# include man-page
@@ -88,6 +121,10 @@ desktop-file-install --delete-original \
--remove-key Encoding \
%{buildroot}%{_datadir}/applications/SciTE.desktop
+%if 0%{with_custom_script}
+install -D -p -m 644 %{SOURCE1} %{buildroot}%{_datadir}/scite/stackrpms.lua
+%endif
+install -D -p -m 666 %{SOURCE2} %{buildroot}%{_datadir}/scite/SciTEGlobal.properties
%if 0%{?fedora}
%posttrans
/usr/bin/update-desktop-database &> /dev/null || :
@@ -110,6 +147,11 @@ desktop-file-install --delete-original \
%{_libdir}/*
%changelog
+* Mon Apr 04 2022 B. Stack <bgstack15@gmail.com> - 5.2.2-2/3.7.6-1
+- Update version
+- Add tunables: gtk, lua, bundled lua, add stackrpms.lua
+- Add customized SciTEGlobal.properties
+
* Thu Mar 24 2022 B. Stack <bgstack15@gmail.com> - 5.2.1-1/3.7.6-1
- Update version
diff --git a/scite-fedora/stackrpms.lua b/scite-fedora/stackrpms.lua
new file mode 100644
index 0000000..8423feb
--- /dev/null
+++ b/scite-fedora/stackrpms.lua
@@ -0,0 +1,278 @@
+-- DESCRIPTION:
+-- Unicode hexadecimal table: https://example.com/copied/unicode.html
+-- Source: http://lua-users.org/wiki/SciteUnicodeInput http://sourceforge.net/projects/emitunicodeinscite/
+-- Future reference: http://lua-users.org/wiki/SciteScripts
+--
+-- This lua script adds utf8 unicode input, to the scite text editor.
+--
+-- The scite text editor should be set to use the UTF-8 encoding
+-- , because this script adds utf8, into the text buffer of the
+-- scite editor. Select File->Encoding->UTF-8, from the
+-- menu bar of scite.
+--
+-- For example, it will be possible that you type 2200 CTRL+U
+-- , and 2200 is replaced to &#8704;; (U+2200), in the scite editor.
+--
+-- ______________________________________________________________________________
+--
+-- INSTALL:
+--
+-- To have scite running this script each time you press Ctrl+U, add next lines
+-- into your ~/SciTEUser.properties file, where ~ is your home directory.
+-- FILE ~/SciTEUser.properties:
+--[[
+ext.lua.startup.script=$(SciteUserHome)/emitUtf8UnicodeIntoTheSciteEditor.lua
+command.name.8.*=Emit UTF8 Unicode
+command.subsystem.8.*=3
+command.8.*=emitUtf8UnicodeIntoTheSciteEditor
+command.mode.8.*=savebefore:no
+command.shortcut.8.*=Ctrl+U
+--]]
+-- ______________________________________________________________________________
+-- THE LUA CODE:
+--
+-- Next is the definition of the lua function that is called by scite
+-- when CTRL+U is pressed, to replace unicode endpoint encoding, with
+-- utf8 encoding of the unicode endpoint.
+-- ______________________________________________________________________________
+
+
+-- Computes the utf8 encoding for a unicode codepoint u
+-- , when 0 <= u <= 0x7f
+--
+-- @param unicodeValue the unicode codepoint u
+--
+-- @return the utf8 encoding of the unicode codepoint u
+function case1UnicodeToUtf8(unicodeValue)
+ --print('case 1')
+ local u = unicodeValue
+ local byte0 = (u % 0x80)
+ local utf8 = string.char(byte0)
+ return utf8
+end
+
+-- ______________________________________________________________________________
+-- Computes the utf8 encoding for a unicode codepoint u
+-- , when 0x80 <= u <= 0x7ff
+--
+-- @param unicodeValue the unicode codepoint u
+--
+-- @return the utf8 encoding of the unicode codepoint u
+function case2UnicodeToUtf8(unicodeValue)
+ --print('case 2')
+ local u = unicodeValue
+ local byte1 = (0x80 + (u % 0x40) )
+ u = math.floor(u / 0x40)
+ local byte0 = (0xc0 + (u % 0x20) )
+ local utf8 = string.char(byte0, byte1)
+ return utf8
+end
+
+-- ______________________________________________________________________________
+-- Computes the utf8 encoding for a unicode codepoint u
+-- , when 0x800 <= u <= 0xffff.
+--
+-- @param unicodeValue the unicode codepoint u
+--
+-- @return the utf8 encoding of the unicode codepoint u
+function case3UnicodeToUtf8(unicodeValue)
+ local u = unicodeValue
+ local byte2 = (0x80 + (u % 0x40))
+ -- print('byte2: '..byte2)
+ u = math.floor(u / 0x40)
+ local byte1 = (0x80 + (u % 0x40))
+ -- print('byte1: '..byte1)
+ u = math.floor(u / 0x40)
+ local byte0 = (0xe0 + (u % 0x10))
+ -- print('byte0: '..byte0)
+ local utf8 = string.char(byte0, byte1, byte2)
+ return utf8
+end
+
+-- ______________________________________________________________________________
+-- Computes the utf8 encoding for a unicode codepoint u
+-- , when 0x10000 <= u <= 0x10ffff.
+--
+-- @param unicodeValue the unicode codepoint u
+--
+-- @return the utf8 encoding of the unicode codepoint u
+function case4UnicodeToUtf8(unicodeValue)
+ local u = unicodeValue
+ local byte3 = (0x80 + (u % 0x40))
+ u = math.floor(u / 0x40)
+ local byte2 = (0x80 + (u % 0x40))
+ u = math.floor(u / 0x40)
+ local byte1 = (0x80 + (u % 0x40))
+ u = math.floor(u / 0x40)
+ local byte0 = (0xf0 + (u % 0x8))
+ local utf8 = string.char(byte0, byte1, byte2, byte3)
+ return utf8
+end
+
+-- ______________________________________________________________________________
+-- Converts a unicode integer value, into a utf8 string value.
+--
+-- The unicode integer value is an integer that
+-- is greater than or equal to zero.
+--
+-- The utf8 string value is a string that is a sequence of
+-- 8 bits characters that give the utf8 encoding of the
+-- unicode codepoint given by the unicode integer value.
+--
+-- @param unicodeValue the unicode integer value;
+-- a unicode codepoint
+--
+-- @return the utf8 encoding of the unicode codepoint
+-- provided by the unicodeValue input argument
+function unicodeToUtf8(unicodeValue)
+ local u = unicodeValue
+ if ((0x800 <= u) and (0xffff >= u))
+ then
+ return case3UnicodeToUtf8(u)
+ end
+ if ((0x80 <= u) and (0x7fff >= u))
+ then
+ return case2UnicodeToUtf8(u)
+ end
+ if ((0x0 <= u) and (0x7f >= u))
+ then
+ return case1UnicodeToUtf8(u)
+ end
+ if( (0x10000 <= u) and (0x10ffff >= u) )
+ then
+ return case4UnicodeToUtf8(u)
+ end
+ return nil
+end
+
+-- ______________________________________________________________________________
+-- Peeks (reads) the character at position i, in the Scite Editor.
+-- If the character is the ascii name of a hex digit, it returns
+-- the corresponding hex digit, otherwise it returns nil.
+--
+-- @param i position in the Scite Editor
+-- @return hex digit at position i, or nil
+function peekHexdigit(i)
+ local e = editor
+ local asciiCode = e.CharAt[i]
+ if((0>asciiCode) or (0xff < asciiCode))
+ then
+ return nil
+ end
+ local charValue = string.char(asciiCode)
+ local hexDigit = tonumber(charValue,0x10)
+ return hexDigit -- may be nil
+end
+
+-- ______________________________________________________________________________
+-- Reads the sequence of maximum length at most 5, at the left of the cursor
+-- in the Scite Editor.
+-- Encodes the longest suffix of this sequence, that is a hex number, into
+-- the utf encoding of this hex number.
+-- Replaces this longest suffix, with the utf8 sequence.
+--
+-- @return true a suffix of length greater than zero, at most 5 existed
+-- and was replaced with the utf8 encoding of the number it
+-- represented
+--
+-- false , when no such suffix existed
+function emitUtf8Unicode()
+ local e = editor
+ local n = e.TextLength
+ local i = e.CurrentPos
+ local maxlen = 5
+ if ((0 == n) or (1 > i))
+ then
+ return nil -- Success. No request
+ end
+ local len = 1
+ local len2 = 0
+ local u = 0
+ local thePower = 1
+ while ( (len <= maxlen)
+ and (0 <= (i - len) )
+ )
+ do
+ local hexDigit = peekHexdigit(i-len,u)
+ if (nil == hexDigit)
+ then
+ break -- out of the while loop
+ end
+ u = ( u + (thePower * hexDigit) )
+ thePower = (0x10 * thePower )
+ len2 = len
+ --print("u: "..u)
+ len = len + 1
+ end
+ if (0 == len2)
+ then
+ return nil -- Failure. No unicode
+ end
+ utf8 = unicodeToUtf8(u)
+ if(nil == utf8)
+ then
+ return nil -- Failure. Unicode to utf8 conversion failed.
+ end
+ e:SetSel(i-len2,i)
+ e:ReplaceSel(utf8)
+ --print("utf8: "..utf8)
+ return true -- Success.
+end
+
+-- ______________________________________________________________________________
+-- Emits utf8 encoding in the place of the unicode codepoint
+-- in the editor, at the left of the cursor.
+--
+-- Writes a message to the Output pane, if no codepoint existed
+-- at the left of the cursor.
+--
+function emitUnicode()
+ local ok = emitUtf8Unicode()
+ if not ok
+ then
+ --print("Failed to encode unicode into text editor.")
+ end
+end
+
+-- ______________________________________________________________________________
+--
+-- Following web pages were useful in writing the lua scite script.
+--
+-- http://lua-users.org/wiki/UsingLuaWithScite
+-- http://www.scintilla.org/PaneAPI.html
+-- http://www.lua.org/manual/5.1/manual.html#pdf-tonumber
+-- https://en.wikipedia.org/wiki/UTF-8
+--
+-- http://lua-users.org/lists/lua-l/2007-08/msg00276.html
+-- http://keplerproject.github.io/luadoc/
+
+-- Reference: http://lua-users.org/wiki/SciteInsertDate
+-- Tags used by os.date:
+-- %a abbreviated weekday name (e.g., Wed)
+-- %A full weekday name (e.g., Wednesday)
+-- %b abbreviated month name (e.g., Sep)
+-- %B full month name (e.g., September)
+-- %c date and time (e.g., 09/16/98 23:48:10)
+-- %d day of the month (16) [01-31]
+-- %H hour, using a 24-hour clock (23) [00-23]
+-- %I hour, using a 12-hour clock (11) [01-12]
+-- %M minute (48) [00-59]
+-- %m month (09) [01-12]
+-- %p either "am" or "pm" (pm)
+-- %S second (10) [00-61]
+-- %w weekday (3) [0-6 = Sunday-Saturday]
+-- %x date (e.g., 09/16/98)
+-- %X time (e.g., 23:48:10)
+-- %Y full year (1998)
+-- %y two-digit year (98) [00-99]
+-- %% the character '%'
+function InsertDateAH()
+ local dow = tostring(os.date("%w") + 1)
+ local d1 = os.date("%Y-%m-%d-")
+ local d2 = os.date(" %H:%M")
+ editor:AddText(d1..dow..d2)
+end
+function InsertDateIso()
+ local date_string = os.date("%Y-%m-%dT%T")
+ editor:AddText(date_string)
+end
diff --git a/scite-fedora/use-lua5.4.4.patch b/scite-fedora/use-lua5.4.4.patch
new file mode 100644
index 0000000..d4c2903
--- /dev/null
+++ b/scite-fedora/use-lua5.4.4.patch
@@ -0,0 +1,266 @@
+Name: Patch scite to use distro package of lua
+Version: 5.2.2
+Lua Version: 5.4.4
+Author: bgstack15@gmail.com
+Date: 2022-04-04
+Includes almost exactly the debian 0007-Build-with-Debian-packaged-Lua.patch
+diff -aur scite/gtk/deps.mak scite/gtk/deps.mak
+--- a/scite/gtk/deps.mak 2022-03-30 20:48:24.000000000 -0400
++++ b/scite/gtk/deps.mak 2022-04-04 14:47:39.110529717 -0400
+@@ -469,13 +469,6 @@
+ ../lua/src/luaconf.h \
+ ../lua/src/lauxlib.h \
+ ../lua/src/lualib.h
+-lbitlib.o: \
+- ../lua/src/lbitlib.c \
+- ../lua/src/lprefix.h \
+- ../lua/src/lua.h \
+- ../lua/src/luaconf.h \
+- ../lua/src/lauxlib.h \
+- ../lua/src/lualib.h
+ lcode.o: \
+ ../lua/src/lcode.c \
+ ../lua/src/lprefix.h \
+diff -aur scite/src/LuaExtension.cxx scite/src/LuaExtension.cxx
+--- a/scite/src/LuaExtension.cxx 2022-03-30 20:48:24.000000000 -0400
++++ b/scite/src/LuaExtension.cxx 2022-04-04 14:46:35.097978533 -0400
+@@ -237,7 +237,7 @@
+
+ const int paneIndex = lua_upvalueindex(1);
+ check_pane_object(L, paneIndex);
+- const int message = luaL_checkint(L, 1);
++ const int message = luaL_checkinteger(L, 1);
+
+ lua_pushvalue(L, paneIndex);
+ lua_replace(L, 1);
+@@ -276,7 +276,7 @@
+ }
+
+ static int cf_scite_constname(lua_State *L) {
+- const int message = luaL_checkint(L, 1);
++ const int message = luaL_checkinteger(L, 1);
+ const char *prefix = luaL_optstring(L, 2, nullptr);
+ const std::string constName = IFaceTable::GetConstantName(message, prefix);
+ if (constName.length() > 0) {
+@@ -307,7 +307,7 @@
+ }
+
+ static int cf_scite_menu_command(lua_State *L) {
+- const int cmdID = luaL_checkint(L, 1);
++ const int cmdID = luaL_checkinteger(L, 1);
+ if (cmdID) {
+ host->DoMenuCommand(cmdID);
+ }
+@@ -329,7 +329,7 @@
+ }
+
+ static int cf_scite_strip_set(lua_State *L) {
+- const int control = luaL_checkint(L, 1);
++ const int control = luaL_checkinteger(L, 1);
+ const char *value = luaL_checkstring(L, 2);
+ if (value) {
+ host->UserStripSet(control, value);
+@@ -338,7 +338,7 @@
+ }
+
+ static int cf_scite_strip_set_list(lua_State *L) {
+- const int control = luaL_checkint(L, 1);
++ const int control = luaL_checkinteger(L, 1);
+ const char *value = luaL_checkstring(L, 2);
+ if (value) {
+ host->UserStripSetList(control, value);
+@@ -347,7 +347,7 @@
+ }
+
+ static int cf_scite_strip_value(lua_State *L) {
+- const int control = luaL_checkint(L, 1);
++ const int control = luaL_checkinteger(L, 1);
+ std::string value = host->UserStripValue(control);
+ push_string(L, value);
+ return 1;
+@@ -437,7 +437,7 @@
+ SA::Position rangeStart = 0;
+ SA::Position rangeEnd = 0;
+
+- const int flags = (nArgs > 2) ? luaL_checkint(L, 3) : 0;
++ const int flags = (nArgs > 2) ? luaL_checkinteger(L, 3) : 0;
+ hasError = (flags == 0 && lua_gettop(L) > nArgs);
+
+ if (!hasError) {
+@@ -514,7 +514,7 @@
+
+ SA::ScintillaCall &sc = host->PaneCaller(pmo->pane);
+ sc.SetTarget(pmo->range);
+- sc.ReplaceTarget(lua_strlen(L, 2), replacement);
++ sc.ReplaceTarget(lua_rawlen(L, 2), replacement);
+ pmo->range.end = sc.TargetEnd();
+ return 0;
+ }
+@@ -600,7 +600,7 @@
+ pmo->endPosOrig = 0;
+ pmo->flags = 0;
+ if (nargs >= 3) {
+- pmo->flags = luaL_checkint(L, 3);
++ pmo->flags = luaL_checkinteger(L, 3);
+ if (nargs >= 4) {
+ pmo->range.end = pmo->endPosOrig = luaL_checkinteger(L, 4);
+ if (pmo->range.end < 0) {
+@@ -765,7 +765,7 @@
+ const int nargs = lua_gettop(L);
+ const char *code = luaL_checkstring(L, 1);
+ const char *name = luaL_optstring(L, 2, code);
+- if (0 == luaL_loadbuffer(L, code, lua_strlen(L, 1), name)) {
++ if (0 == luaL_loadbuffer(L, code, lua_rawlen(L, 1), name)) {
+ lua_call(L, 0, LUA_MULTRET);
+ return lua_gettop(L) - nargs;
+ } else {
+@@ -896,7 +896,7 @@
+ int loopParamCount = 2;
+
+ if (func.paramType[0] == iface_length && func.paramType[1] == iface_string) {
+- params[0] = lua_strlen(L, arg);
++ params[0] = lua_rawlen(L, arg);
+ params[1] = SptrFromString(params[0] ? lua_tostring(L, arg) : "");
+ loopParamCount = 0;
+ } else if ((func.paramType[1] == iface_stringresult) || (func.returnType == iface_stringresult)) {
+@@ -915,8 +915,8 @@
+ const char *s = lua_tostring(L, arg++);
+ params[i] = SptrFromString(s ? s : "");
+ } else if (func.paramType[i] == iface_keymod) {
+- const int keycode = luaL_checkint(L, arg++) & 0xFFFF;
+- const int modifiers = luaL_checkint(L, arg++) &
++ const int keycode = luaL_checkinteger(L, arg++) & 0xFFFF;
++ const int modifiers = luaL_checkinteger(L, arg++) &
+ static_cast<int>(SA::KeyMod::Shift|SA::KeyMod::Ctrl|SA::KeyMod::Alt);
+ params[i] = keycode | (modifiers<<16);
+ } else if (func.paramType[i] == iface_bool) {
+@@ -1805,7 +1805,7 @@
+ static int SetLevelAt(lua_State *L) {
+ StylingContext *context = Context(L);
+ const SA::Line line = luaL_checkinteger(L, 2);
+- const int level = luaL_checkint(L, 3);
++ const int level = luaL_checkinteger(L, 3);
+ context->styler->SetLevel(line, static_cast<SA::FoldLevel>(level));
+ return 0;
+ }
+@@ -1820,7 +1820,7 @@
+ static int SetLineState(lua_State *L) {
+ StylingContext *context = Context(L);
+ const SA::Line line = luaL_checkinteger(L, 2);
+- const int stateOfLine = luaL_checkint(L, 3);
++ const int stateOfLine = luaL_checkinteger(L, 3);
+ context->styler->SetLineState(line, stateOfLine);
+ return 0;
+ }
+@@ -1898,7 +1898,7 @@
+ StylingContext *context = Context(L);
+ const SA::Position startPosStyle = luaL_checkinteger(L, 2);
+ const SA::Position lengthStyle = luaL_checkinteger(L, 3);
+- const int initialStyle = luaL_checkint(L, 4);
++ const int initialStyle = luaL_checkinteger(L, 4);
+ context->StartStyling(startPosStyle, lengthStyle, initialStyle);
+ return 0;
+ }
+@@ -1957,7 +1957,7 @@
+ static int SetState(lua_State *L) {
+ StylingContext *context = Context(L);
+ context->Colourize();
+- context->state = luaL_checkint(L, 2);
++ context->state = luaL_checkinteger(L, 2);
+ return 0;
+ }
+
+@@ -1965,13 +1965,13 @@
+ StylingContext *context = Context(L);
+ context->Forward();
+ context->Colourize();
+- context->state = luaL_checkint(L, 2);
++ context->state = luaL_checkinteger(L, 2);
+ return 0;
+ }
+
+ static int ChangeState(lua_State *L) {
+ StylingContext *context = Context(L);
+- context->state = luaL_checkint(L, 2);
++ context->state = luaL_checkinteger(L, 2);
+ return 0;
+ }
+
+From: =?utf-8?q?Andreas_R=C3=B6nnquist?= <gusnan@debian.org>
+Date: Tue, 19 Jun 2018 15:34:57 +0200
+Subject: Build with Debian packaged Lua
+Forwarded: not-needed
+
+---
+ scite/gtk/deps.mak | 6 +-----
+ scite/gtk/makefile | 30 ++++--------------------------
+ 2 files changed, 5 insertions(+), 31 deletions(-)
+
+--- a/scite/gtk/deps.mak
++++ b/scite/gtk/deps.mak
+@@ -265,11 +265,7 @@
+ ../src/Extender.h \
+ ../src/IFaceTable.h \
+ ../src/SciTEKeys.h \
+- ../src/LuaExtension.h \
+- ../lua/src/lua.h \
+- ../lua/src/luaconf.h \
+- ../lua/src/lualib.h \
+- ../lua/src/lauxlib.h
++ ../src/LuaExtension.h
+ MatchMarker.o: \
+ ../src/MatchMarker.cxx \
+ ../../scintilla/include/ScintillaTypes.h \
+--- a/scite/gtk/makefile
++++ b/scite/gtk/makefile
+@@ -33,9 +33,9 @@
+
+ PYTHON = $(if $(windir),pyw,python3)
+
+-# For the Gnome desktop stuff to work, prefix must point to where Gnome thinks it is.
+-CONFIGFLAGS:=$(shell $(PKG_CONFIG) --cflags $(GTK_VERSION))
+-CONFIGLIB:=$(shell $(PKG_CONFIG) --libs $(GTK_VERSION) gthread-2.0 gmodule-no-export-2.0)
++# For the Lua and Gnome desktop stuff to work, prefix must point to where Lua and Gnome thinks it is.
++CONFIGFLAGS:=$(shell $(PKG_CONFIG) --cflags $(GTK_VERSION)) $(shell $(PKG_CONFIG) --cflags lua)
++CONFIGLIB:=$(shell $(PKG_CONFIG) --libs $(GTK_VERSION) gthread-2.0 gmodule-no-export-2.0) $(shell $(PKG_CONFIG) --libs lua)
+ gnomeprefix:=$(shell $(PKG_CONFIG) --variable=prefix $(GTK_VERSION) 2>/dev/null)
+ ifndef prefix
+ ifdef gnomeprefix
+@@ -72,28 +72,6 @@
+ DEFINES += -D$(if $(DEBUG),DEBUG,NDEBUG)
+ BASE_FLAGS += $(if $(DEBUG),-g,-Os)
+
+-ifndef NO_LUA
+-LUA_CORE_OBJS = lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o \
+- lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o \
+- ltable.o ltm.o lundump.o lvm.o lzio.o
+-
+-LUA_LIB_OBJS = lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o lmathlib.o ltablib.o \
+- lstrlib.o loadlib.o loslib.o linit.o lutf8lib.o
+-
+-LUA_OBJS = LuaExtension.o $(LUA_CORE_OBJS) $(LUA_LIB_OBJS)
+-
+-vpath %.c $(srcdir)/../lua/src
+-
+-INCLUDES += -I$(srcdir)/../lua/src
+-LUA_DEFINES = -DLUA_USE_POSIX -DLUA_USE_DLOPEN
+-
+-%.o: %.c
+- $(CC) $(CPPFLAGS) $(DEFINES) $(INCLUDES) $(WARNINGS) $(LUA_DEFINES) $(BASE_FLAGS) $(CFLAGS) -c $< -o $@
+-
+-else
+-DEFINES += -DNO_LUA
+-endif
+-
+ LIBS += -lm -lstdc++
+
+ UNAME:=$(shell uname -s)
+@@ -154,7 +132,7 @@
+ StyleWriter.o \
+ Utf8_16.o
+
+-$(PROG): SciTEGTK.o Strips.o GUIGTK.o Widget.o DirectorExtension.o $(SRC_OBJS) $(LUA_OBJS)
++$(PROG): SciTEGTK.o Strips.o GUIGTK.o Widget.o DirectorExtension.o $(SRC_OBJS) LuaExtension.o
+ $(CXX) $(BASE_FLAGS) $(LDFLAGS) -rdynamic -Wl,--as-needed -Wl,-rpath,'$${ORIGIN}' -Wl,--version-script $(srcdir)/lua.vers -Wl,-rpath,$(libdir) $^ -o $@ $(CONFIGLIB) $(LIBS) -L ../../scintilla/bin -lscintilla $(LDLIBS)
+
+ # Automatically generate header dependencies with "make depend"
bgstack15