Skip to content

Commit 67322f1

Browse files
committed
Wrapper updated for highlight 4.8
1 parent ff72637 commit 67322f1

File tree

4 files changed

+100
-63
lines changed

4 files changed

+100
-63
lines changed

highlight-wrapper/highlight

Submodule highlight updated from eada643 to 2310c35

highlight-wrapper/highlight_custom/makefile2.makefile

Lines changed: 94 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -9,28 +9,52 @@ DESTDIR =
99
# Root directory for final installation
1010
PREFIX = /usr
1111

12+
# Data file directory
13+
data_dir = ${PREFIX}/share/
14+
1215
# Location of the highlight data files:
13-
data_dir = ${PREFIX}/share/highlight/
16+
hl_data_dir = ${data_dir}highlight/
1417

1518
# Location of the highlight binary:
1619
bin_dir = ${PREFIX}/bin/
1720

21+
# Location of the highlight library:
22+
lib_dir = ${PREFIX}/lib/
23+
1824
# Location of the highlight man pages:
19-
man_dir = ${PREFIX}/share/man/
25+
man_dir = ${data_dir}man/
26+
27+
# Documentation directory
28+
doc_dir = ${data_dir}doc/
2029

2130
# Location of the highlight documentation:
22-
doc_dir = ${PREFIX}/share/doc/highlight/
31+
hl_doc_dir = ${doc_dir}highlight/
2332

2433
# Location of the highlight extras:
25-
examples_dir = ${doc_dir}extras/
34+
examples_dir = ${hl_doc_dir}extras/
35+
36+
# Location of system-wide config files:
37+
ifeq (${PREFIX},/usr)
38+
conf_dir = /etc/
39+
else
40+
conf_dir = ${PREFIX}/etc/
41+
endif
2642

2743
# Location of the highlight config files:
28-
conf_dir = ${PREFIX}/etc/highlight/
29-
#conf_dir = ${PREFIX}/etc/highlight/
44+
hl_conf_dir = ${conf_dir}highlight/
45+
46+
# Location of bash completions:
47+
bash_comp_dir = ${data_dir}bash-completion/completions/
48+
49+
# Location of fish completions:
50+
fish_comp_dir = ${data_dir}fish/vendor_completions.d/
51+
52+
# Location of zsh completions:
53+
zsh_comp_dir = ${data_dir}zsh/site-functions/
3054

3155
# Location of additional gui files
32-
desktop_apps = ${PREFIX}/share/applications/
33-
desktop_icons = ${PREFIX}/share/icons/hicolor/256x256/apps/
56+
desktop_apps = ${data_dir}applications/
57+
desktop_icons = ${data_dir}icons/hicolor/256x256/apps/
3458

3559
# Commands:
3660
GZIP=gzip -9f
@@ -40,32 +64,35 @@ MKDIR=mkdir -p -m 755
4064
RMDIR=rm -r -f
4165

4266
all cli:
43-
${MAKE} -C ./src -f ./makefile2.makefile HL_DATA_DIR=${data_dir} HL_CONFIG_DIR=${conf_dir}
67+
${MAKE} -C ./src -f ./makefile2.makefile HL_DATA_DIR=${hl_data_dir} HL_CONFIG_DIR=${hl_conf_dir}
4468

4569
lib lib-static:
46-
${MAKE} -C ./src -f ./makefile2.makefile HL_DATA_DIR=${data_dir} HL_CONFIG_DIR=${conf_dir} lib-static
70+
${MAKE} -C ./src -f ./makefile2.makefile HL_DATA_DIR=${hl_data_dir} HL_CONFIG_DIR=${hl_conf_dir} lib-static
4771

4872
lib-shared:
49-
${MAKE} -C ./src -f ./makefile2.makefile HL_DATA_DIR=${data_dir} HL_CONFIG_DIR=${conf_dir} PIC=1 lib-shared
73+
${MAKE} -C ./src -f ./makefile2.makefile HL_DATA_DIR=${hl_data_dir} HL_CONFIG_DIR=${hl_conf_dir} PIC=1 lib-shared
5074

5175
gui:
52-
${MAKE} -C ./src -f ./makefile2.makefile HL_DATA_DIR=\"${data_dir}\" HL_CONFIG_DIR=\"${conf_dir}\" HL_DOC_DIR=\"${doc_dir}\" gui-qt
76+
${MAKE} -C ./src -f ./makefile2.makefile HL_DATA_DIR=\"${hl_data_dir}\" HL_CONFIG_DIR=\"${hl_conf_dir}\" HL_DOC_DIR=\"${hl_doc_dir}\" gui-qt
5377
@echo
5478
@echo "You need to run 'make install' AND 'make install-gui' now!"
5579

5680
install:
5781
@echo "This script will install highlight in the following directories:"
58-
@echo "Data directory: ${DESTDIR}${data_dir}"
59-
@echo "Documentation directory: ${DESTDIR}${doc_dir}"
60-
@echo "Plugin directory: ${DESTDIR}${data_dir}/plugins"
61-
@echo "Examples directory: ${DESTDIR}${examples_dir}"
62-
@echo "Manual directory: ${DESTDIR}${man_dir}man1/"
63-
@echo "Binary directory: ${DESTDIR}${bin_dir}"
64-
@echo "Configuration directory: ${DESTDIR}${conf_dir}"
82+
@echo "Data directory: ${DESTDIR}${hl_data_dir}"
83+
@echo "Documentation directory: ${DESTDIR}${hl_doc_dir}"
84+
@echo "Plugin directory: ${DESTDIR}${hl_data_dir}plugins/"
85+
@echo "Examples directory: ${DESTDIR}${examples_dir}"
86+
@echo "Manual directory: ${DESTDIR}${man_dir}"
87+
@echo "Binary directory: ${DESTDIR}${bin_dir}"
88+
@echo "Configuration directory: ${DESTDIR}${hl_conf_dir}"
89+
@echo "Bash completions directory: ${DESTDIR}${bash_comp_dir}"
90+
@echo "Fish completions directory: ${DESTDIR}${fish_comp_dir}"
91+
@echo "Zsh completions directory: ${DESTDIR}${zsh_comp_dir}"
6592
@echo
6693

67-
${MKDIR} ${DESTDIR}${doc_dir}
68-
${MKDIR} ${DESTDIR}${conf_dir}
94+
${MKDIR} ${DESTDIR}${hl_doc_dir}
95+
${MKDIR} ${DESTDIR}${hl_conf_dir}
6996
${MKDIR} ${DESTDIR}${examples_dir} \
7097
${DESTDIR}${examples_dir}swig \
7198
${DESTDIR}${examples_dir}tcl \
@@ -77,30 +104,37 @@ install:
77104
${DESTDIR}${examples_dir}themes-resources/base16 \
78105
${DESTDIR}${examples_dir}themes-resources/css-themes
79106

80-
${MKDIR} ${DESTDIR}${data_dir} \
81-
${DESTDIR}${data_dir}themes \
82-
${DESTDIR}${data_dir}themes/base16 \
83-
${DESTDIR}${data_dir}langDefs \
84-
${DESTDIR}${data_dir}plugins
107+
${MKDIR} ${DESTDIR}${hl_data_dir} \
108+
${DESTDIR}${hl_data_dir}themes \
109+
${DESTDIR}${hl_data_dir}themes/base16 \
110+
${DESTDIR}${hl_data_dir}langDefs \
111+
${DESTDIR}${hl_data_dir}plugins
85112
${MKDIR} ${DESTDIR}${man_dir}man1/
86113
${MKDIR} ${DESTDIR}${man_dir}man5/
114+
${MKDIR} ${DESTDIR}${bash_comp_dir}
115+
${MKDIR} ${DESTDIR}${fish_comp_dir}
116+
${MKDIR} ${DESTDIR}${zsh_comp_dir}
87117
${MKDIR} ${DESTDIR}${bin_dir}
88118

89-
${INSTALL_DATA} ./langDefs/*.lang ${DESTDIR}${data_dir}langDefs/
90-
${INSTALL_DATA} ./*.conf ${DESTDIR}${conf_dir}
91-
${INSTALL_DATA} ./themes/*.theme ${DESTDIR}${data_dir}themes/
92-
${INSTALL_DATA} ./themes/base16/*.theme ${DESTDIR}${data_dir}themes/base16/
93-
${INSTALL_DATA} ./plugins/*.lua ${DESTDIR}${data_dir}plugins/
119+
${INSTALL_DATA} ./langDefs/*.lang ${DESTDIR}${hl_data_dir}langDefs/
120+
${INSTALL_DATA} ./*.conf ${DESTDIR}${hl_conf_dir}
121+
${INSTALL_DATA} ./themes/*.theme ${DESTDIR}${hl_data_dir}themes/
122+
${INSTALL_DATA} ./themes/base16/*.theme ${DESTDIR}${hl_data_dir}themes/base16/
123+
${INSTALL_DATA} ./plugins/*.lua ${DESTDIR}${hl_data_dir}plugins/
94124
${INSTALL_DATA} ./man/highlight.1 ${DESTDIR}${man_dir}man1/
95125
${GZIP} ${DESTDIR}${man_dir}man1/highlight.1
96126
${INSTALL_DATA} ./man/filetypes.conf.5 ${DESTDIR}${man_dir}man5/
97127
${GZIP} ${DESTDIR}${man_dir}man5/filetypes.conf.5
98128

99-
${INSTALL_DATA} ./AUTHORS ${DESTDIR}${doc_dir}
100-
${INSTALL_DATA} ./README* ${DESTDIR}${doc_dir}
101-
${INSTALL_DATA} ./ChangeLog.adoc ${DESTDIR}${doc_dir}
102-
${INSTALL_DATA} ./COPYING ${DESTDIR}${doc_dir}
103-
${INSTALL_DATA} ./INSTALL ${DESTDIR}${doc_dir}
129+
${INSTALL_DATA} ./sh-completion/highlight.bash ${DESTDIR}${bash_comp_dir}highlight
130+
${INSTALL_DATA} ./sh-completion/highlight.fish ${DESTDIR}${fish_comp_dir}
131+
${INSTALL_DATA} ./sh-completion/highlight.zsh ${DESTDIR}${zsh_comp_dir}_highlight
132+
133+
${INSTALL_DATA} ./AUTHORS ${DESTDIR}${hl_doc_dir}
134+
${INSTALL_DATA} ./README* ${DESTDIR}${hl_doc_dir}
135+
${INSTALL_DATA} ./ChangeLog.adoc ${DESTDIR}${hl_doc_dir}
136+
${INSTALL_DATA} ./COPYING ${DESTDIR}${hl_doc_dir}
137+
${INSTALL_DATA} ./INSTALL ${DESTDIR}${hl_doc_dir}
104138
${INSTALL_DATA} ./extras/swig/* ${DESTDIR}${examples_dir}swig
105139
${INSTALL_DATA} ./extras/tcl/* ${DESTDIR}${examples_dir}tcl
106140
${INSTALL_DATA} ./extras/pandoc/* ${DESTDIR}${examples_dir}pandoc
@@ -122,28 +156,33 @@ install:
122156

123157
install-gui:
124158
@echo "Installing files for the GUI..."
125-
${MKDIR} ${DESTDIR}${data_dir} \
126-
${DESTDIR}${data_dir}gui_files \
127-
${DESTDIR}${data_dir}gui_files/ext \
128-
${DESTDIR}${data_dir}gui_files/l10n \
159+
${MKDIR} ${DESTDIR}${hl_data_dir} \
160+
${DESTDIR}${hl_data_dir}gui_files \
161+
${DESTDIR}${hl_data_dir}gui_files/ext \
162+
${DESTDIR}${hl_data_dir}gui_files/l10n \
129163
${DESTDIR}${desktop_apps} \
130164
${DESTDIR}${desktop_icons}
131165

132-
${INSTALL_DATA} ./gui_files/l10n/* ${DESTDIR}${data_dir}gui_files/l10n/
133-
${INSTALL_DATA} ./gui_files/ext/* ${DESTDIR}${data_dir}gui_files/ext/
166+
${INSTALL_DATA} ./gui_files/l10n/* ${DESTDIR}${hl_data_dir}gui_files/l10n/
167+
${INSTALL_DATA} ./gui_files/ext/* ${DESTDIR}${hl_data_dir}gui_files/ext/
134168
${INSTALL_DATA} ./highlight.desktop ${DESTDIR}${desktop_apps}
135169
${INSTALL_DATA} ./src/gui-qt/highlight.png ${DESTDIR}${desktop_icons}
136170
${INSTALL_PROGRAM} ./src/highlight-gui ${DESTDIR}${bin_dir}
137171

172+
install-lib-shared:
173+
${INSTALL_DATA} ./src/libhighlight.so.4.0 ${DESTDIR}${lib_dir}
174+
138175
uninstall:
139176
@echo "Removing highlight files from system..."
140-
${RMDIR} ${DESTDIR}${data_dir}
141-
${RMDIR} ${DESTDIR}${doc_dir}
142-
${RMDIR} ${DESTDIR}${conf_dir}
177+
${RMDIR} ${DESTDIR}${hl_data_dir}
178+
${RMDIR} ${DESTDIR}${hl_doc_dir}
179+
${RMDIR} ${DESTDIR}${hl_conf_dir}
143180
${RMDIR} ${DESTDIR}${examples_dir}
144181
rm -rf ${DESTDIR}${man_dir}man1/highlight.1.gz
145182
rm -rf ${DESTDIR}${man_dir}man5/filetypes.conf.5.gz
146-
183+
rm -rf ${DESTDIR}${bash_comp_dir}highlight
184+
rm -rf ${DESTDIR}${fish_comp_dir}highlight.fish
185+
rm -rf ${DESTDIR}${zsh_comp_dir}_highlight
147186
rm -rf ${DESTDIR}${bin_dir}highlight
148187
rm -rf ${DESTDIR}${bin_dir}highlight-gui
149188
rm -rf ${DESTDIR}${desktop_apps}highlight.desktop
@@ -156,8 +195,10 @@ clean cleanall:
156195
clean-obj:
157196
$(MAKE) -C ./src -f ./makefile2.makefile clean-obj
158197

159-
apidocs:
160-
doxygen Doxyfile
198+
completions:
199+
sh-completion/gen-completions bash >sh-completion/highlight.bash
200+
sh-completion/gen-completions fish >sh-completion/highlight.fish
201+
sh-completion/gen-completions zsh >sh-completion/highlight.zsh
161202

162203
help:
163204
@echo "This makefile offers the following options:"
@@ -166,16 +207,15 @@ help:
166207
@echo "lib-static Compile only the static library."
167208
@echo "lib-shared Compile only the shared library."
168209
@echo "gui Compile the Qt (5.x) GUI."
169-
@echo "install* Copy all data files to ${data_dir}."
170-
@echo "install-gui* Copy GUI data files to ${data_dir}."
210+
@echo "install Copy all data files to ${hl_data_dir}."
211+
@echo "install-gui Copy GUI data files to ${hl_data_dir}."
171212
@echo "clean Remove object files and binaries."
172-
@echo "apidocs Generate HTML API documentation using doxygen."
173-
@echo "uninstall* Remove highlight files from system."
213+
@echo "completions Generate shell completion scripts."
214+
@echo "uninstall Remove highlight files from system."
174215
@echo
175-
@echo "* Command needs root privileges."
176216
@echo "See src/makefile for compilation and linking options."
177217

178218
# Target needed for redhat 9.0 rpmbuild
179219
install-strip:
180220

181-
.PHONY: clean all install apidocs help uninstall install-strip clean-obj
221+
.PHONY: clean all install help uninstall install-strip clean-obj

highlight-wrapper/highlight_custom/src/makefile2.makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ cli: $(BUILD_DIR) $(BUILD_DIR)/libhighlight.a ${CLI_OBJECTS}
113113
lib-static $(BUILD_DIR)/libhighlight.a: $(BUILD_DIR) ${CORE_OBJECTS}
114114
${AR} ${ARFLAGS} ${BUILD_DIR}/libhighlight.a ${CORE_OBJECTS} ${DILU_OBJECTS}
115115

116-
lib-shared ${BUILD_DIR}/libhighlight.dylib: $(BUILD_DIR) $(BUILD_DIR) ${CORE_OBJECTS}
116+
lib-shared ${BUILD_DIR}/libhighlight.dylib: $(BUILD_DIR) ${CORE_OBJECTS}
117117
${CXX} -dynamiclib -Wl,-install_name,@loader_path/libhighlight.dylib ${LUA_LIBS} -o ${BUILD_DIR}/libhighlight.dylib -lc ${CORE_OBJECTS} ${DILU_OBJECTS} ${LDFLAGS}
118118

119119
gui-qt: highlight-gui

highlight-wrapper/wrapper_highlight.cpp

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,11 @@ __unused char *get_highlight_email() {
5555
__unused char *get_highlight_about() {
5656
string about =
5757
"highlight version " + highlight::Info::getVersion() +
58-
"\n Copyright (C) 2002-2022 Andre Simon <a dot simon at mailbox.org>" +
58+
"\n Copyright (C) 2002-2023 Andre Simon <a dot simon at mailbox.org>" +
5959
"\n\n Argparser class" +
6060
"\n Copyright (C) 2006-2008 Antonio Diaz Diaz <ant_diaz at teleline.es>" +
61-
"\n\n Artistic Style Classes (3.1 rev. 672)" +
62-
"\n Copyright (C) 2006-2018 by Jim Pattee <jimp03 at email.com>" +
63-
"\n Copyright (C) 1998-2002 by Tal Davidson" +
61+
"\n\n Artistic Style Classes (3.4.6)" +
62+
"\n Copyright (C) 1998-2023 The Artistic Style Authors" +
6463
"\n\n Diluculum Lua wrapper (1.0)" +
6564
"\n Copyright (C) 2005-2013 by Leandro Motta Barros" +
6665
"\n\n xterm 256 color matching functions" +
@@ -69,9 +68,7 @@ __unused char *get_highlight_about() {
6968
"\n Copyright (C) 2009-2010 Cybozu Labs, Inc." +
7069
"\n Copyright (C) 2011-2014 Kazuho Oku" +
7170
"\n\n This software is released under the terms of the GNU General " +
72-
"Public License." +
73-
"\n For more information about these matters, see the file named " +
74-
"COPYING.\n\n";
71+
"Public License.";
7572
return strdup(about.c_str());
7673
}
7774

0 commit comments

Comments
 (0)